Apr 30, 2014 at 8:13 AM
Edited Apr 30, 2014 at 9:33 AM
“Your comments made me dig into the code and figure out what is happening”
Yeah, I didn’t want to push this topic because it would be nice from me to read the source code and give you some C code examples. But the fact is I’m not a real programmer and I don’t understand it.
But in theory, I think, ImageMagick should behave just the opposite way:
C:\> magick bigFatSadImage.tif -tryReduceTheNumberOfChannels smallHealthyHappyImage.tif
In other way, if the users want to create a single black pixel on the center of a big white background and store this as a 64-bit transparent HDR image (and load into ImageMagick without the need to set any property), give them the tools to do it (we have the
rights to be stupid!:) ).Of course this can be used really for testing purposes. Then if they want to reduce the size of their images:
- Check if the 64-bit image contains unnecessary channels and try to remove all of it and so on…
-tryPackPixelBits (maybe similar function already exists)
- Check if the 16-bit channels contain such information that can be represented as 8-bit without loss of information
- Check if the 8-bit channels can be represented as indexed
But this is just theory and that’s easy. The implementation is much harder.
“If you want some more information on how ImageMagick interprets color spaces you should visit the following page:”
Yeah, I read that page before. Do I understand it? Well, that’s a different question.:)
I think the following words have many different meanings depending on where I read them and who uses them: ColorModel, ColorSpace, sRGB, linear RGB, RGB ColorSpace, RGB ColorSpaces.
I tried to translate them for myself, I only tried it :)
RGB ColorSpaces : ColorSpaces based on the RGB ColorModel
RGB ColorSpace 1: linear RGB (mostly converted but unprocessed camera raw images are in this form, I think ImageMagick uses this term too)
RGB ColorSpace 2: RGB ColorModel (often found on the wiki pages)
sRGB : ColorSpace based on the RGB ColorModel (most of the images and monitors(or at least they claim that) use this colorSpace)
If you want you can correct this.