What should be most efficient way to implement normalizing vector data images 
(normals) using ImageBuffAlgo?

For this moment I only see the way to do this in four steps. 
ImageBuffAlgo::madd for [0.0,1.0] -> [-1.0,1.0]
ImageBuffAlgo::pow for power of 2
ImageBuffAlgo::sum_channels for vector magnitude
ImageBuffAlgo::div (sec and magnitude) to normalize vector length 
ImageBuffAlgo::madd for normalize to [0.0, 1.0] range.

This not only required to make so many steps but also required a lot of 
temporary buffers, that for huge textures can required lot of memory. When all 
steps can be done per pixel and perfectly parallelized (shaders, cuda).

Maybe I missed some OIIO functions? 🤔

Best regards:
Vlad

PS: btw, looks like Google completely filter out all Larry messages if Gmail 
used for subscription to this mailing list. They even not in spam folder, where 
mail list messages quite often can be moved 😒
_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to