Usage of ippiLUT_Linear

Usage of ippiLUT_Linear

Hi everyone, i want to implement adaptive histogram equalization on one channel image. I fill lookuptable(pValues) at every subwindow and use 

ippiLUT_Linear_8u_C1R(srcImage->DataPtr(subwindow),srcImage->Step(),dstImage->DataPtr(subwindow),dstImage->Step(),subwindow->size,pValues,pLevels,histSize)

but i didnt remove blocking effect such that ippiLUT_8u_C1R gives the same result. Than firstly i generated whole image with ippiLUT_8u_C1R

then at the end use

ippiLUT_Linear_8u_C1R(dstImage->DataPtr(),dstImage->Step(),dstImage->DataPtr(),dstImage->Step(),dstImage->size,pValues,pLevels,histSize);

but it didnt worked too. The usage of ippiLUT_Linear is not like this? What is the point that i am missing?

Thanks.

6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Three sets of ippiLUT_xxx functions perform intensity transformation of some source image using the lookup table (LUT) and have internal differences. Take a look at a demo:

and it shows the differences.

Attachments: 

AttachmentSize
Downloadimage/jpeg ippilutdemo.jpg40.7 KB

Ok after reading the documentation i understood the reason. It interpolates lut values not image intensity values.

>>...It interpolates lut values not image intensity values...

Here are a couple of more details:

1. ippiLUT_xxx functions perform intensity transformation of the source image using the LUT with Exact Mapping.

2. ippiLUT_Linear_xxx functions perform intensity transformation of the source image using the LUT with Linear Interpolation.

3. ippiLUT_Cubic_xxx functions perform intensity transformation of the source image using the LUT with Cubic Interpolation.

Here is an example:

If a value for some pixel in an 8-bit depth source image is 225 then, depending on a transforming method, the pixel value in the output image could be:

~178 for ippiLUT_xxx

or

~207 for ippiLUT_Linear_xxx

or

~195 for ippiLUT_Cubic_xxx

Attachments: 

AttachmentSize
Downloadimage/jpeg ippilutdemo.jpg43.96 KB

Thanks for your interest Sergey :) what i want is smoothing the blocking artifacts on boundaries so lut with interpolation is not suitable for my purpose, i have to look for something else

Leave a Comment

Please sign in to add a comment. Not a member? Join today