HDRI and Q32 tif-image processing under Vista64

Questions and postings pertaining to the development of ImageMagick, feature enhancements, and ImageMagick internals. ImageMagick source code and algorithms are discussed here. Usage questions which are too arcane for the normal user list should also be posted here.
Post Reply
Hasek1984

HDRI and Q32 tif-image processing under Vista64

Post by Hasek1984 »

Hello friends of imagemagick,

For a scientific program, i'd like to set some calculated pixel in a 32-bit-tif image (pixel intensity represent current flow).
These values are floating point and need more range than 16-bit.
Only grayscales are needed, so I work with only one channel.
I work with ImageMagick-6.4.2-4 with the common Q16 depth (magick-config.h) under Visual Studio 2008 (Vista64).

Image my_image(Geometry(800,600), Color(MaxRGB,MaxRGB,MaxRGB,0));
my_image.pixelColor(posX,posY,Color((Quantum)70000.123,(Quantum)70000.123,(Quantum)70000.123));
//..do write_Image

Afterwards I check the Image due to correct pixel values.
The experience is: 1. no floating point and 2. no number>16Bit in the image.

But I can not change the #define MAGICKCORE_QUANTUM_DEPTH 16 to 32 or #define/#undef MAGICKCORE_HDRI_SUPPORT because afterwards Visual Studio does not compile.
error LNK2019: unresolved external symbol ""public: __thiscall Magick::Color::Color(float,float,float)" (??0Color@Magick@@QAE@MMM@Z)".
error LNK2001: unresolved external symbol ""public: __thiscall Magick::Color::Color(float,float,float,float)" (??0Color@Magick@@QAE@MMMM@Z)".

I copied some *.dll's from a Q16 windows binaries folder into the VisualMagick workspace and since now (now I need more than 16 bit and float) everything worked well.
But now I stuck in the end of my scientific calculations.

Are there Q32 binaries?..or other functions to set pixel bigger than 16-bit?
I have no idea where exactly the problem is.

I am happy about every idea!
Thanks in advance.
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: HDRI and Q32 tif-image processing under Vista64

Post by fmw42 »

I think you may have to special compile the tiff delegate library for that to work. I had similar problems with the FFT development under HDRI Q16. We ended up using either MIFF or PFM. The latter is part of NetPBM so is portable.
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: HDRI and Q32 tif-image processing under Vista64

Post by magick »

Try the latest release of ImageMagick, 6.4.6-8. If that fails to build at a quantum depth of 32, let us know.
Hasek1984

Re: HDRI and Q32 tif-image processing under Vista64

Post by Hasek1984 »

Q32 seems to be working with newest ImageMagick!
But is it possible to set double values into a image?
I guess ImageMagick scales the float values.

Values like 1.0; 50.0; 123456.0; are retrievable in the image,
but values like 0.1; 0.2; 1.2; are represented as 2,33E-11; 4,66E-11; 2,79E-03;


I am sure that there is easy solution.
Thanks for every idea!

Greetings
Hasek1984

Re: HDRI and Q32 tif-image processing under Vista64

Post by Hasek1984 »

Sorry for that mistake.....I can handle it with value*2^Quantum Depth.
Thanks anyway.
Post Reply