Re: [boost] [GIL] image rescale algorithms

Nicolas, One last, small thing. I would rename bicubic_filter in filters.hpp to mitchell_filter. Bicubic filter is a common name for bspline or photoshop style filters and mitchell is different. I think rgba32f_pixel_t is a good model for hdr pixels. I don't see the 0..1 range in floating point channels as limits. And GIL does not enforce them in any way. They only define a mapping between integer and floating point channels. In this case (rescale), clamping is an "artifact" of using integer channels and filters with possibly negative weights. I did some informal profiling, on a dual core machine, using the bicubic filter, I got this Big images: rescale serial took 9167.86 milliseconds (9.16786 sec) rescale parallel took 5055.94 milliseconds (5.05594 sec) Small images: rescale serial took 1923.46 milliseconds (1.92346 sec) rescale parallel took 1104.4 milliseconds (1.1044 sec) Est.

Est, in filters.hpp to mitchell_filter. Bicubic filter is a
common name for bspline or photoshop style filters and mitchell is different.
OK, I'll take a look at this - I still need to get some proper filtering culture.
I think rgba32f_pixel_t is a good model for hdr pixels. I don't see the 0..1 range in floating point channels as limits. And GIL does not enforce them in any way. They only define a mapping between integer and floating point channels. In this case (rescale), clamping is an "artifact" of using integer channels and filters with possibly negative weights.
That's effectively a point of view of the current state of things. I'm still not at ease with it. I believe I had problems with some algorithms that relied on channel::max_value (being 1 for bits32f channels) and values > 1 - but I need to look at all this before being more definitive :) Does anyone else out there have experience manipulating HDR images using GIL ?
I did some informal profiling, on a dual core machine, using the bicubic filter, I got this
Thanks for the information, 75-80% performance gain is not so bad for this simple code transform ! :) Cheers, Nicolas.
participants (2)
-
Est
-
Nicolas Lelong