ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 ICC does not work with 16bit Images, and PNG 16bit

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

View 
UserName:
Password:
Format  Bold Italicized Underline  Align Left Centered Align Right  Horizontal Rule  Insert Hyperlink   Browse for an image to attach to your post Browse for a zip to attach to your post Insert Code  Insert Quote Insert List
   
Message 

 

Emoji
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Black Eye [B)]
Frown [:(] Shocked [:0] Angry [:(!] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
Check here to subscribe to this topic.
   

T O P I C    R E V I E W
Scally Posted - Apr 04 2018 : 09:29:45
The profile conversion for 16 bit images does not work.
The result is a black screen.
Works if ie48RGB is replaced with ie24RGB, but this is not allowed.

Also, when loading 16-bit PNG images, they are automatically converted to 8-bit images. So it should not be.


 IM1.LegacyBitmap:=False;
 IM1.IO.NativePixelFormat:=True;
 IM1.IO.LoadFromFileTIFF('D:\IMProf\16.TIF');

 ICC:=TIEICC.Create;
 try
  ICC.Assign_AdobeRGB1998;
  ICC.ConvertBitmap(IM1.IO.IEBitmap, ie48RGB {ie24RGB}, ICC);
 finally
  ICC.Free;
 end;
20   L A T E S T    R E P L I E S    (Newest First)
xequte Posted - Apr 22 2018 : 19:58:56
Hi

I've added wider ie48RGB support to our to-do list. To raise its priority please add and vote for it on our uservoice page:

https://imageen.uservoice.com


Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 21 2018 : 20:18:19
Yes, that would be awesome. And curves with 16 bit support.
Scally Posted - Apr 21 2018 : 11:57:40
I need the functions of a RAW converter. To do this, i need a full work with the image in the mode ie48RGB. Color correction, histograms. Exposure, Contrast, Lighting, Shadow, White, Black, Saturation ... Applyng ICC. Saving as a TIFF RGB 16Bit / Channel.
pierrotsc Posted - Apr 13 2018 : 20:21:34
Yes, this is what i found out. looks like everything is good now.
Appreciate the troubleshooting
xequte Posted - Apr 13 2018 : 17:29:13
Hi Pierre

As you have EnableCMS = true, ensure you load the profile after you have loaded the image.

Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 13 2018 : 09:06:49
Nigel, indeed it does work. So something somewhere is removing the profile before i save it.
Let me troubleshoot.

Thank you very much
Best
Pierre
xequte Posted - Apr 12 2018 : 23:04:50
Hi

This code successfully wrote the profile in my testing:

IEGlobalSettings().EnableCMS := True;
IEGlobalSettings().ApplyColorProfileOnRendering := True;
ImageEnView1.IO.NativePixelFormat := True; // this says "convert to RGB"
ImageEnView1.IO.LoadFromFile( 'D:\201849018_A1.jpg' );
ImageEnView1.IO.params.InputICCProfile.LoadFromFile('D:\sRGB2014.icc');
ImageEnView1.IO.SaveToFile( 'D:\Test_SRGB.jpg' );


Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 12 2018 : 08:46:41
Nigel, i have aemailed the file. Best
xequte Posted - Apr 11 2018 : 19:29:05
Please email me sRGB2014.icc

Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 11 2018 : 19:08:58
It strips the profile like before. Giveme the error message above but saying that the image has no profile attached.
Best
xequte Posted - Apr 11 2018 : 17:24:28
OK, cool. Now use the following:

IERegisterFormats;
IEGlobalSettings.AutoFragmentBitmap := False;
// Apply color profile before rendering
IEGlobalSettings().EnableCMS := True;
IEGlobalSettings().ApplyColorProfileOnRendering := True;
ImageEnVect.IO.NativePixelFormat := True; // this says "convert to RGB"
ImageEnVect.IO.params.BMP_HandleTransparency := True;
ImageEnVect.IO.params.InputICCProfile.LoadFromFile(EmbeddedDM.helppath + '\sRGB2014.icc');


Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 11 2018 : 09:13:29
Interesting. It will keep the embedded profile then. I load an image with the adobe profile but want imageen to convert it to srgb. So i use the convertbitmap command. I save the file back and open it in Photoshop. It does not strip the profile anymore but keeps the original profile that was loaded. see attached.

xequte Posted - Apr 10 2018 : 19:41:15
Hi

If EnableCMS = False, does Photoshop still report no profile?


Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 10 2018 : 09:50:45
The InputICC profile docs says that the profile is removed after being applied. This is my code in the oncreate event
IERegisterFormats;
IEGlobalSettings.AutoFragmentBitmap := False;
// Apply color profile before rendering
IEGlobalSettings().EnableCMS := True;
IEGlobalSettings().ApplyColorProfileOnRendering := True;
ImageEnVect.IO.NativePixelFormat := True; // this says "convert to RGB"
ImageEnVect.IO.params.BMP_HandleTransparency := True;
ImageEnVect.IO.params.DefaultICCProfile.LoadFromFile
(EmbeddedDM.helppath + '\sRGB2014.icc');

If i load an image with any profiles attached to it and save them back, load them in photoshop, it will tell me that this document has no profile attached.
You can download a trial of photoshop. Under edit-->color settings, be sure to check the 2 boxes that say "Let me know about profile mismatched"

Best
xequte Posted - Apr 09 2018 : 19:50:04
Hi

I don't know much about Photoshop, but ImageEn will save the profile associated with the image.

A profile can be either be included in the file, which is the InputColorProfile property (this is the color profile set by the image source, such as a scanner, camera, etc) or loading into InputColorProfile.
Note: if EnableCMS = True, the input profile will be automatically applied to the image and then discarded.

You can also specify a DefaultICCProfile, which is used for files without an input profile (but not saved to file).

If either the input or default profiles are valid, and have not been applied to the image (i.e. check IsApplied = False) then a profile will be saved with the image.


References:
https://www.imageen.com/help/TIOParams.InputICCProfile.html
https://www.imageen.com/help/TIOParams.DefaultICCProfile.html
https://www.imageen.com/help/TIEImageEnGlobalSettings.EnableCMS.html


Nigel
Xequte Software
www.imageen.com
pierrotsc Posted - Apr 09 2018 : 09:25:01
Thanks Nigel, but i have not find a way to save an ICC profile with the image. When I open any images in photoshop, i always get the message that no profiles are attached with the document. Is that something that can be implemented in the future ?
Thanks
xequte Posted - Apr 08 2018 : 21:22:28
Hi

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.

Nigel
Xequte Software
www.imageen.com
Scally Posted - Apr 08 2018 : 13:35:33
I have a task, full color correction of 16 bit images, but so far I can not even do minimal actions, downloading and converting to the ICC I chose. I have a demonstration set of files, only DCU files. There is a desire to buy a component, but what I need is not implemented. I hope the full support of 16 bit images will appear soon.
pierrotsc Posted - Apr 06 2018 : 14:24:15
When you assign the profile to the bitmap and save the image back, does your resulting image still has the profile attached ?
A way to tell it is to open it in photoshop and see if it tells you that there are no profile attached to the image.
Pierre
xequte Posted - Apr 05 2018 : 06:40:01
Hi

ie48RGB conversion was not supported, but we have added it now. Please email me for a pre-release of the next version.



Nigel
Xequte Software
www.imageen.com