- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字图像滤波处理
数字图像处理报告
学生姓名: 饶 燎
学 号: 20101004121
指导老师: 李 杏 梅
中国地质大学(武汉)机械与电子信息学院
2013 年 4 月
报告代码及误代码解决方案
1题
f=imread(map.jpg);%读取rgb彩色图片
n=rgb2gray(f);%将彩图转换成灰度图
figure,imshow(n)%显示灰度图
结果
无错误
2题
f=imread(map.jpg);
figure,imshow(f),whitebg(white),title(原图);%显示原图像
n=rgb2gray(f);%彩图到灰度图像变换
r=f;g=f;b=f;
figure
subplot(2,2,1),imshow(n),title(灰度图);
r(:,:,2)=0;r(:,:,3)=0;%将非r分量行填零
g(:,:,1)=0,g(:,:,3)=0;%将非g分量行填零
b(:,:,1)=0,b(:,:,2)=0;%将非b分量行填零
subplot(2,2,2),imshow(r,8),whitebg(white),title(提取r分量);
subplot(2,2,3),imshow(g,8),title(提取g分量);
subplot(2,2,4),imshow(b,8),title(提取b分量);
[hsi]=rgb2hsi(f);%根据rgb与hsi的映射关系提取hsi分量
H=hsi(:,:,1);
S=hsi(:,:,2);
I=hsi(:,:,3);
figure
subplot 311,imshow(H);
subplot 312,imshow(S);
subplot 313,imshow(I)
HSI函数
unction [hsi] = rgb2hsi(f)
% hsi = rgb2hsi(rgb)把一幅RGB图像转换为HSI图像,
% 输入图像是一个彩色像素的M×N×3的数组,
% 其中每一个彩色像素都在特定空间位置的彩色图像中对应红、绿、蓝三个分量。
% 假如所有的RGB分量是均衡的,那么HSI转换就是未定义的。
% 输入图像可能是double(取值范围是[0, 1]),uint8或 uint16。
%
% 输出HSI图像是double,
% 其中hsi(:, :, 1)是色度分量,它的范围是除以2*pi后的[0, 1];
% hsi(:, :, 2)是饱和度分量,范围是[0, 1];
% hsi(:, :, 3)是亮度分量,范围是[0, 1]。
% 抽取图像分量
f= im2double(f);
r = f(:, :, 1);
g = f(:, :, 2);
b = f(:, :, 3);
% 执行转换方程
num = 0.5*((r - g) + (r - b));
den = sqrt((r - g).^2 + (r - b).*(g - b));
theta = acos(num./(den + eps)); %防止除数为0
H = theta;
H(b g) = 2*pi - H(b g);
H = H/(2*pi);
num = min(min(r, g), b);
den = r + g + b;
den(den == 0) = eps; %防止除数为0
S = 1 - 3.* num./den;
H(S == 0) = 0;
I = (r + g + b)/3;
% 将3个分量联合成为一个HSI图像
hsi = cat(3, H, S, I);
部分正确代码
r=f;g=f;
文档评论(0)