
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.