How can i do BI-HISTOGRAM EQUALIZATION in MATLAB
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Tuhin Sheikh
il 5 Mag 2013
Commentato: Image Analyst
il 18 Ott 2015
The folling program i tried but it didn't work properly.
I=imread('tire.tif');
%performing bi-histogram equalization
L=256;
[m,n]=size(I);
len=m*n;
x=reshape(I,len,1);
xm=round(mean(x));
xl=x([x<=xm]);
xu=x([x>xm]);
%%%%%%%%%%%%%%%%%%%%%%%%%%
xlpdf=hist(xl,[0:xm]);
xlnpdf=xlpdf/length(xl);
xupdf=hist(xu,[xm+1:255]);
xunpdf=xupdf/length(xu);
%%%%%%%%%%%%%%%%%%%%%%%%%
skl=xm*xlnpdf*triu(ones(55));
sku=(xm+1)+((L-1-(xm+1))*xunpdf*triu(ones(201)));
sk=[skl,sku];
y0=zeros(m,n);
for k=0:L-1
list=find(I==k); %find locates the non-zero values
y0(list)=sk(k+1);
end
y0=uint8(y0);
imwrite(y0,'biHE.tif','TIFF');
j=imread('biHE.tif');
0 Commenti
Risposta accettata
Image Analyst
il 5 Mag 2013
Use intlut() instead of that for loop. You create a look up table of output values for each input value.
8 Commenti
afrin sulthana
il 18 Ott 2015
can i use this program for contrast enhancement and brightness preserving using bi histogram equalisation
Image Analyst
il 18 Ott 2015
Who are you asking? All I know is the opinions and guesses I gave in my last comment. I don't have any code for bi-histogram equalization.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Convert Image Type in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!