【发布时间】:2018-04-28 07:49:53
【问题描述】:
我正在尝试为没有像“histeq”这样的 MATLAB 内置函数的标准化图像制作直方图均衡代码
我已标准化灰度图像,其值在 [0,1] 之间
input_img = mat2gray(img);
我找到了一个没有 histeq 函数的示例代码
for i=1:size(GIm,1)
for j=1:size(GIm,2)
value=GIm(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(GIm,1)
for j=1:size(GIm,2)
HIm(i,j)=output(GIm(i,j)+1);
end
end
figure,imshow(HIm);
title('Histogram equalization');
但此代码应用于灰度为 [0,255] 的图像
我应该如何将此代码应用于我的灰度标准化图像?
我的图片尺寸 450x450
【问题讨论】:
标签: matlab histogram normalization