How to apply Cumulative Density Function Formula?

Hi,
I am trying to implement a research paper using MATLAB. i have to to apply this three formula, respectively.
son.pngPDa = zeros(1,256);
for i=1:256
PDa(i) = hCL(i) / (width*height); % width*height = total number of pixels
end
CDa = zeros(1,256); %create CDa in formula
CDa(1) = PDa(1) ;
for i=2:256
CDa(i) = PDa(i) + CDa(i-1);
end
value_after_enhancement = zeros(1,256);
for i=1:256
value_after_enhancement(i) = 255 * CDa(i);
end
But maximum value of CDa is 0.109. So, i see a dark image (maximum pixel value is 3) as a result. I couldn't understand where the problem is in my code. Can you help me, please?

댓글 수: 4

If CDa is a cumulative density, then CDa(end) should equal 1 (i.e., the PDa values should sum to 1).
Since that is not happening, maybe the problem is with how hCL is computed. What is hCL?
Thanks for answer, here is my previous steps
1.png
modified_histogram = zeros(1,256); %apply formula
for i=1:256
modified_histogram(i) = (((log( histogram_of_image(i)+alfa))^beta));
end
2.png
for i=1:256
if(modified_histogram(i)~=0)
sum = sum + modified_histogram(i);
cnt=cnt+1;
end
end
tcl = sum/cnt;
hCL = zeros(1,256);
for i=1:256
if((modified_histogram(i))>=tcl)
hCL(i) = tcl;
else
hCL(i) = (modified_histogram(i));
end
end
Sorry, I cannot understand what you are trying to compute.
Thank you for reply.
I am trying to implement an contrast enhancement algorithm using this paper: Research Paper

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

질문:

2019년 10월 30일

댓글:

2019년 11월 1일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by