我在这里需要一些帮助.. 如何使用 matlab 创建此应用程序.. 使用自适应对比度增强的图像增强.. 这是我将遵循的建议方法..
这里提出的方法以受控和局部的方式使用 HE 来拉伸暗图像中的细节,同时提高更亮图像的整体对比度。由于在每一帧中产生的局部自适应效果,它被称为自适应对比度增强 (ACE)。所提出的算法首先将亮度水平的直方图划分为三个区域——暗、中和亮。这些区域大小相同。然后使用 HE 独立处理这三个区域中的每一个。
我仍然没有得到对每个区域使用直方图均衡的解决方案..我得到了正常直方图均衡的代码......这是我的代码..
K = handles.GRAY;
numofpixels=size(K,1)*size(K,2);
L=uint8(zeros(size(K,1),size(K,2)));
freq=zeros(256,1);
probf=zeros(256,1);
probc=zeros(256,1);
cum=zeros(256,1);
output=zeros(256,1);
%freq counts the occurrence of each pixel value.
%The probability of each occurrence is calculated by probf.
for i=1:size(K,1)
for j=1:size(K,2)
value=K(i,j);
freq(value+1)=freq(value+1)+1;
probf(value+1)=freq(value+1)/numofpixels;
end
end
sum=0;
no_bins=255;
%The cumulative distribution probability is calculated.
for i=1:size(probf)
sum=sum+freq(i);
cum(i)=sum;
probc(i)=cum(i)/numofpixels;
output(i)=round(probc(i)*no_bins);
end
for i=1:size(K,1)
for j=1:size(K,2)
L(i,j)=output(K(i,j)+1);
end
end
axes(handles.axes3);
imshow(L);
axes(handles.axes4);
imhist(L);