黑白图像的图像增强
2014-10-20 17:10
197 查看
黑白图像的图像增强
这里会出现过度增强的问题(天空部分)。
function ret = HE_for_BW(Image)
if size(Image,3) ~= 1
fprintf('ERROR Imput-Image must be three channel image\n');
return;
end
Height_Image = size(Image,1);
Width_Image = size(Image,2);
Img_Output = zeros(Height_Image,Width_Image);
Histgram = zeros(1,255);
for row = 1: Height_Image
for col = 1: Width_Image
if Image(row,col) == 0
Image(row,col) = 1;
end
Histgram(uint8(Image(row,col))) = Histgram(uint8(Image(row,col))) + 1;
end
end
Probability_density = Histgram./(Height_Image*Width_Image);
max_value = max(max(Image));
min_value = min(min(Image));
Probability = zeros(1,255);
for temp = 1: size(Probability_density,2)
if temp == 1
Probability(temp) = Probability_density(temp);
else
Probability(temp) = Probability(temp - 1) + Probability_density(temp);
end
end
for row = 1: Height_Image
for col = 1: Width_Image
Img_Output(row,col) = min_value + (max_value - min_value)*Probability(uint8(Image(row,col)));
end
end
ret = Img_Output;
end
这里会出现过度增强的问题(天空部分)。
function ret = HE_for_BW(Image)
if size(Image,3) ~= 1
fprintf('ERROR Imput-Image must be three channel image\n');
return;
end
Height_Image = size(Image,1);
Width_Image = size(Image,2);
Img_Output = zeros(Height_Image,Width_Image);
Histgram = zeros(1,255);
for row = 1: Height_Image
for col = 1: Width_Image
if Image(row,col) == 0
Image(row,col) = 1;
end
Histgram(uint8(Image(row,col))) = Histgram(uint8(Image(row,col))) + 1;
end
end
Probability_density = Histgram./(Height_Image*Width_Image);
max_value = max(max(Image));
min_value = min(min(Image));
Probability = zeros(1,255);
for temp = 1: size(Probability_density,2)
if temp == 1
Probability(temp) = Probability_density(temp);
else
Probability(temp) = Probability(temp - 1) + Probability_density(temp);
end
end
for row = 1: Height_Image
for col = 1: Width_Image
Img_Output(row,col) = min_value + (max_value - min_value)*Probability(uint8(Image(row,col)));
end
end
ret = Img_Output;
end
相关文章推荐
- C++图像处理 -- 图像黑白调整应用
- 图像滤镜处理算法:灰度、黑白、底片、浮雕
- C# (GDI+相关) 图像处理(各种旋转、改变大小、柔化、锐化、雾化、底片、浮雕、黑白、滤镜效果)
- CT图像增强
- 基于色彩恒常( color constancy)特性的Frankle-McCann Retinex图像增强。
- 【算法学习】【图像增强】【Retinex】White Patch Retinex
- 基本图像增强方法——直方图均衡
- 常用图像算法(图像增强)
- 图像滤镜处理算法:灰度、黑白、底片、浮雕
- Matlab图像增强——空间域图像增强之基础
- 【算法学习】【图像增强】基于拉普拉斯算子的图像锐化
- 增强图像对比度
- 【20160924】GOCVHelper 图像增强部分(2)
- 图像增强
- 图像处理(黑白,模糊,浮雕,圆角,镜像,底片,油画,灰白,加旧,哈哈镜,放大镜)
- 图像增强方法总结
- 转 频率域图像增强
- X光图像增强
- 灰度图像--图像增强 直方图匹配(规定化)Histogram Specification
- 图像增强算法之 限制对比度自适应直方图均衡化算法原理