Author |
Topic |
|
tlsi2000
USA
2 Posts |
Posted - Mar 05 2023 : 11:39:46
|
I am attempting to load a BMP and display to screen.
The BMP is 48rgb ( 16 bits per color, 48 bits total )
Images were originally scanned using an Epson v550
the TIEBitmap loads but the pfPixelFormat is set to ie24rgb
Of course, the image displayed is the 'mostly-red with some-green', as it is only using half of the image data
The work is being done in Delphi XE10.1 The test program is using the trial v10.3.5 trial from the download page
in the forum, there is a post concerning ICC that states:
"There are some areas of ImageEn where ie48RGB is not yet supported, but we are implementing support as demand calls for it." "We have implemented it for profile conversion now. If there are other areas where you need ie48RGB support, let us know."
Is this BMP ie48rgb capability supported ?
----
form component imgScannerImage: TImageEn;
code: imgScannerImage.Blank; io := TImageEnIO.Create(nil); io.ParamsFromFile('c:\Temp\PhotoAlbumTest.bmp'); bmp := TIEBitmap.Create; bmp.Read('c:\Temp\PhotoAlbumTest.bmp', io.Params); imgScannerImage.IEBitmap.Assign(bmp);
----
BMP header Information
000000 BITMAPFILEHEADER WORD bfType = 0x4d42 ("BM") // Signature DWORD bfSize = 0x000fba12 (1030674) // File size WORD bfReserved1 = 0x0000 WORD bfReserved2 = 0x0000 DWORD bfOffBits = 0x00000042 (66) // offset to bitmap data 000014 BITMAPINFOHEADER DWORD biSize = 40 // size of this header LONG biWidth = 612 // image width in pixels LONG biHeight = 842 // image height in pixels WORD biPlanes = 1 // number of planes WORD biBitCount = 16 // bits per pixel DWORD biCompression = 3 (BI_BITFIELDS) // compression method DWORD biSizeImage = 1030608 // number of bytes in bitmap LONG biXPelsPerMeter = 0 // horizontal resolution LONG biYPelsPerMeter = 0 // vertical resolution DWORD biClrUsed = 0 // colors used in the image DWORD biClrImportant = 0 // important colors Pixel Format 16-bit color depth |
|
xequte
38607 Posts |
|
tlsi2000
USA
2 Posts |
Posted - Mar 08 2023 : 08:50:24
|
This is the test scan that I used for the information above. I have attached the BMP and a TIFF of the same image.
it is a simple blank-and-white image I use to see what I could get from the scanner.
On the suggestion of using the IO.NativePixelFormat I had that set, but missed the LegacyBitmap item. Setting it to False did not change much, but it did show a somewhat diluted and dithered black-and-wihite image. Still not the conversion to a displayable image.
The effort is two-fold.
First, to first make sure the scanner can still do scanning in the 48bit format and save. Then the display of i can be reduced as necessary, as a representation of the exact image.
Second, there is to build a library of several thousands of images saved in this 48bit format that need to be loadable and displayable. There is a good set of these already saved this format, which is the crux of the issue, as most of those original images no longer exist to scan again.
Glenn H Gresham |
|
|
xequte
38607 Posts |
Posted - Mar 08 2023 : 19:01:42
|
Hi Glenn
Is the above the original image, as it is only 16 bits per pixel (not per color).
I cannot get them to load correctly in ImageEn or any of my comparison viewers.
Nigel Xequte Software www.imageen.com
|
|
|
|
Topic |
|
|
|