Click here to Skip to main content
15,891,828 members
Please Sign up or sign in to vote.
1.00/5 (5 votes)
See more:
hello all,

I need a code help in (Image Enhancment by Histogram Equalization) in C#
Posted
Updated 20-Mar-11 21:26pm
v2
Comments
Albin Abel 21-Mar-11 3:23am    
I think there is more that 60 years passed after this algorithm invented. Wondering google didn't helped you. May be if your question is about Enhancements on Histogram Equalization then it would be interesting topic. So first make google your friend. If you have any specific issue then you can post here.
Sergey Alexandrovich Kryukov 21-Mar-11 3:25am    
Now, you won't receive the code in this way.
This is not how CodeProject works. Look, you are lazy enough to use right spelling (please spell check and fix it) and you probably did not Google yet. Still you need someone to do this job for your. Just think logically, who would be interested and why?
Sorry,
--SA
Albin Abel 21-Mar-11 3:38am    
There is a question here "Updating records in multiple tables using web application". Seems like your favorite area. Multi threading. May be your answer helps OP
Sergey Alexandrovich Kryukov 21-Mar-11 3:57am    
Favorite? Multithreading, yes, but not those tables. I don't do database development at all, always thought this is not my job. I've developed software for data modeling (so it includes relational stuff but not touching data bases, practically). I don't even try to vote on this topic (except some rare cases, I'm still familiar with relationship algebra, and design).
--SA
Sergey Alexandrovich Kryukov 21-Mar-11 3:59am    
May be you mix up. I did not answer on the topic, someone else did.
OP could search for it (after using spell check :-)
--SA

1 solution

OP's question. can you tell me what is the modern and alternative methods to this algorithm

Contrast stretch is a generalized word where as if you add advanced then it is a specific word related to your filed of interest. Here a few links

http://www.ece.udel.edu/~barner/courses/eleg675/papers/Enhancement%20in%20the%20Spatial%20Domain/An%20Advanced%20Contrast%20Enhancement.pdf


http://www.eyemaginary.com/Rendering/AutomaticHistogramWarping.pdf

http://portal.acm.org/citation.cfm?id=1851096


http://www.sciencedirect.com/science?_ob=ArticleURL&_udi=B6WDJ-499706H-3&_user=10&_coverDate=03%2F31%2F2004&_rdoc=1&_fmt=high&_orig=gateway&_origin=gateway&_sort=d&_docanchor=&view=c&_searchStrId=1688010778&_rerunOrigin=google&_acct=C000050221&_version=1&_urlVersion=0&_userid=10&md5=5d29ebedfebe0b1e4254898d681493b4&searchtype=a


You may need to think out of box that contrast enhancement is not just playing with histograms. How about a decorrelation stretch?. Let me try to give a brief introduction. If you plot the spectral i.e the reflectance in the red, green and blue bands of light (RGB) it forms a irregular shaped, but resemble to an ellipsoid, unless the image is already in good contrast. If it is an ideal ellipsoid then theoretically all the bands has same patterns of information and highly correlated. So what if you change your viewings. Rotate the axis to the major axis of the ellipsoid, then the axis is scaled to maximum contrast. Then second axis perpendicular to it. So you will be getting information which are not in the first axis. So if you assign RGB colors to these transformed values each color will represent different information and you get a good contrast. Mathematically this transformation is called principal component analysis.

There is another rotational technique called "Optimal rotational transformation" presented by Mattikalli in 2001. He is NASA employee. This is an iterative technique used in a specialized field. However you can use this mathematical transformation and in each iterative step calculate your image's entropy. The rotation which converges to no entropy changes would be the maximum information obtained. But need to be care here may be you will be enhancing the noises. So precautionary noise removal is ideal before doing these techniques for noisy images.

Even you can play with color spaces. You know 10 years back our satellite don't have the capacity of transfer large volume of data. It takes multispectral in a low resolutions (more bands, more volume), but the gray scale in high resolution i.e single band. So how about getting a colorful but high resolution data? We transfer the the multispectral in RGB to an IHS (intensity, Hue and saturation). Then we remove the intensity which is on grey scale and put our high resolution gray scale image in the place of intensity and transform back to RGB. It results what we want.

So contrast enhancement is vast topic. You may go through recent developments and experiment with different methods. That will result in a good research thesis for you. I hope I given a useful brief introduction.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900