Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

Auto Contrast in Grey Images

SharathKum_D_Intel
3,234 Views

Hello All, 

I just implemented the histogram equalization technique using intel ipp functions. Since Histogram equalization equalizes within the two extreem values, I was thinking of implementing other methods for auto contrast. 

Is there any way that I can perform auto contrast and not histogram equlaiztion? 

Thanks, 
Sharath 

0 Kudos
29 Replies
SergeyKostrov
Valued Contributor II
560 Views
Attached is a screenshot with four corrected images using different Windowing Functions ( WF ). At the top is the original image and from left to right are images processed by: 1. 2-D IIR ( 32x32 kernel ) High-Pass Butterworth filter with Hanning WF 2. 2-D IIR ( 32x32 kernel ) High-Pass Butterworth filter with Hamming WF 3. 2-D IIR ( 32x32 kernel ) High-Pass Butterworth filter with Blackman WF 4. 2-D IIR ( 32x32 kernel ) High-Pass Butterworth filter with Kaiser WF Alpha 7 correctedimages.jpg
0 Kudos
Thomas_Jensen1
Beginner
560 Views

The corrected images all seems to be Negative?

And what would be the purpose of this exercise?

0 Kudos
SergeyKostrov
Valued Contributor II
560 Views
>>The corrected images all seems to be Negative?.. No, they simply dark because it was a really quick set of tests. >>And what would be the purpose of this exercise? That wasn't a manual processing ( or editing in some Image Editor ). All corrections are done in a frequency domain with a DSP software subsystem and it supports FIR, IIR, FFT/IFFT, lots of WFs ( Window Functions ), etc, processing of 1-D / 2-D data sets.
0 Kudos
Thomas_Jensen1
Beginner
560 Views

I still think the images are "Negative", or "Inverted". Simply look at a few spots:
1- The ears: original has light ears on darker background, and filtered has the reverse.
2- The head: original is dark, filtered is bright.
3- The corners: original has lighter graqy corners, filter has darker gray corners.

I undestand your filters, however, in this discussion, we are talking about "fixing" the problem that parts are very bright and other parts are very dark, and how can you display both types properly at the same time. In my opinion, filtering is more about enhancing the edges, or structure, to better see detail, but that is an altogether different topic.

0 Kudos
Thomas_Jensen1
Beginner
560 Views

Anyway, I'm happy to see that you are looking at all this :)

0 Kudos
SergeyKostrov
Valued Contributor II
560 Views
>>...I still think the images are "Negative", or "Inverted"... IIR processing did not make that. Another thing is, your uncorrected and corrected images have 32-bit depth. I've completed quick IIR tests on image with 8-bit depth ( converted to a raw 8-bit format ), that is, a significantly reduced dynamic range. However, after IIR processing some bones are visible in the middle of the head.
0 Kudos
Thomas_Jensen1
Beginner
560 Views

If IIR processing did not make that, then what did?
I think that, for this histogram/contract/brightness discussion, we should work images that are proper.

I was not aware that my sample images were 32 bit, I intended them to be 8 bit grayscale, but I could redo them if required.

That bone structure is more visible is simply because its edges are enhanced by the filtering. However, in this discussion, we are actually talking about contract/brightness and histograms...

0 Kudos
SergeyKostrov
Valued Contributor II
560 Views
In essence, Negation is a mapping process. That is, in case of an image with dynamic range from 0 to 255 a pixel with value 0 is changed to a value 255, a pixel with value 1 is changed to a value 254, and so on. Once again, IIR is a more complex processing and it is done in a Frequency Domain and lots of different input parameters are used. If you consider these images as negatives that is OK with me.
0 Kudos
Thomas_Jensen1
Beginner
560 Views

I agree to your definition of Negative.

Its just that I want to ensure we talk about the same thing, since automatic optimalisation is a complex matter.

0 Kudos
Reply