图像课设实验报告.docx
- 文档编号:28132520
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:11
- 大小:404.77KB
图像课设实验报告.docx
《图像课设实验报告.docx》由会员分享,可在线阅读,更多相关《图像课设实验报告.docx(11页珍藏版)》请在冰豆网上搜索。
图像课设实验报告
医学工程学院课程设计
课程名称
医学图像处理课程设计
课题名称
彩色图像处理
专业班级
生物医学工程2011级
姓名(学号)
指导教师
陈强
提交日期
2014年6月27日
摘要:
本次我课程设计的题目是“彩色图像处理”,其目的是利用图像处理技术,将所给的图像进行去蓝色琼脂背景的处理,同时计算出肌肉、骨骼与脂肪的相对比例,但因为骨骼和脂肪不好分辨,所以最终只是将肌肉部分与其他部分分开。
彩色图像所蕴含的的图像信息相对于纯灰度图像是更直观全面的,本实验通过将其从RGB模式转换为HSV模型,然后直方图测试分析,最终确定目的成分的信息,最终达到图像处理的目的。
关键字:
彩色图像,RGB,HSV分量
1.原理叙述:
首先对图片进行读取,目的是去除图像中的蓝色琼脂背景。
这次图像处理的核心是通过直方图确定成分对应的范围,然后将其重新赋值,进而将背景进行去除。
在读取完图像之后,对其进行模型转换,将RGB模型转变为HSV模型,然后求其行直方图,通过测试一步步确定成分所对应的分量范围,即肌肉、骨骼、脂肪以及蓝色背景所对应的H分量范围以及V分量范围,将蓝色琼脂背景的范围所对应的值均赋值为零,则达到了去除背景的目的。
在加分项中,对处理后的图像再进行成分分离,然后利用find函数进行非零像素点统计,再利用求出其像素点长度个数,就可以求出其面积。
2.设计方案及与运行结果:
2.1.流程图:
2.2.关键程序段:
i=imread('h:
\image\image\slice.jpg');
i=double(i)/255;
I=rgb2hsv(i);%读取原图像并转换模型
H=I(:
:
1);
S=I(:
:
2);
V=I(:
:
3);
subplot(3,2,1);imshow(H);title('H分量');
subplot(3,2,2);imhist(H);title('H直方图');
subplot(3,2,3);imshow(S);title('S分量');
subplot(3,2,4);imhist(S);title('S直方图');
subplot(3,2,5);imshow(V);title('V分量');
subplot(3,2,6);imhist(V);title('V直方图');
V(H>0.15)=0;V(V<0.18)=0;%试出蓝色背景成分并使其为零
I(:
:
1)=H;
I(:
:
2)=S;
I(:
:
3)=V;
figure;
i1=hsv2rgb(I);%将HSV模型逆变换为RGB模型
subplot(1,2,1);imshow(i);title('原图');
subplot(1,2,2);imshow(i1);title('去蓝');
I=rgb2hsv(i1);
H=I(:
:
1);
S=I(:
:
2);
V=I(:
:
3);figure;
subplot(3,2,1);imshow(H);title('H分量');
subplot(3,2,2);imhist(H);title('H直方图');
subplot(3,2,3);imshow(S);title('S分量');
subplot(3,2,4);imhist(S);title('S直方图');
subplot(3,2,5);imshow(V);title('V分量');
subplot(3,2,6);imhist(V);title('V直方图');
V(H>0&H<0.08)=0;%试出肌肉部分的范围,并使其为零
I(:
:
1)=H;
I(:
:
2)=S;
I(:
:
3)=V;
figure;
i2=hsv2rgb(I);
M=find(i2);
x=length(M);
N=find(i1);
y=length(N);
a=x/y;
subplot(1,2,1)
imshow(i2);title(['骨骼和脂肪',num2str(a)]);
i3=i1-i2;
M=find(i3);%利用find函数找出非零的像素点
x=length(M);%利用length函数求出非零像素点的个数
N=find(i1);
y=length(N);
2.3.运行结果
图2-1原图像的HSV分量直方图
图2-2去除蓝色背景前后
图2-3处理后的图像的直方图
图2-4处理后的肌肉,脂肪和骨骼部分分布图
3.总结
本次实验所用到的MATLAB软件是一款很强大的软件,在进行矩阵运算时非常方便和有效。
本次利用它进行图像处理,将图像处理成符合要求的图像。
我选的课题是彩色图像处理,基本思路是将彩色图像转换为HSV模型,在三个分量上进行调试,依次得出其范围,再对其进行重新赋值。
在实验的过程中,首先遇到的困难是不熟悉这款选件,所以见了几本书并且做了很多练习,在熟悉到一定程度后,开始进行图像处理。
之后遇到的问题是关于算法的一些问题。
在网上查找了一些方法之后,发现虽然整个思路是清晰的,但编成算法之后却无法运行,这样的打击还是蛮大的,后来经过与同学的交流,逐渐明确了算法的编写。
最后在做加分项时,发现骨骼和脂肪根本是无法分开,他们颜色上的接近导致无法在HSV分量上直接将其进行区分,所以最后这个问题也没有得到解决。
最后,在算法语句中,要利用常见的算法格式,在用不常见的算法语句时,可以先对随机矩阵进行试验,确定正确之后再使用。
4.参考文献
【1】《MATLAB应用实例精讲:
图像处理与GUI设计篇》电子工业出版社陈超等编著.2011.02
【2】《数字图像处理及MATLAB实验:
学习与实验指导》杨杰主编,李庆副主编北京电子工业出版社2010.
【3】《MATLAB函数速查手册》李玉莉等编著北京化学工业出版社2010.
附录完整程序
i=imread('h:
\image\image\slice.jpg');
i=double(i)/255;
I=rgb2hsv(i);
H=I(:
:
1);
S=I(:
:
2);
V=I(:
:
3);
subplot(3,2,1);imshow(H);title('H分量');
subplot(3,2,2);imhist(H);title('H直方图');
subplot(3,2,3);imshow(S);title('S分量');
subplot(3,2,4);imhist(S);title('S直方图');
subplot(3,2,5);imshow(V);title('V分量');
subplot(3,2,6);imhist(V);title('V直方图');
V(H>0.15)=0;V(V<0.18)=0;
I(:
:
1)=H;
I(:
:
2)=S;
I(:
:
3)=V;
figure;
i1=hsv2rgb(I);
subplot(1,2,1);imshow(i);title('原图');
subplot(1,2,2);imshow(i1);title('去蓝');
I=rgb2hsv(i1);
H=I(:
:
1);
S=I(:
:
2);
V=I(:
:
3);figure;
subplot(3,2,1);imshow(H);title('H分量');
subplot(3,2,2);imhist(H);title('H直方图');
subplot(3,2,3);imshow(S);title('S分量');
subplot(3,2,4);imhist(S);title('S直方图');
subplot(3,2,5);imshow(V);title('V分量');
subplot(3,2,6);imhist(V);title('V直方图');
V(H>0&H<0.08)=0;
I(:
:
1)=H;
I(:
:
2)=S;
I(:
:
3)=V;
figure;
i2=hsv2rgb(I);
M=find(i2);
x=length(M);
N=find(i1);
y=length(N);
a=x/y;
subplot(1,2,1)
imshow(i2);title(['骨骼和脂肪',num2str(a)]);
i3=i1-i2;
M=find(i3);
x=length(M);
N=find(i1);
y=length(N);
a=x/y;
subplot(1,2,2)
imshow(i3);title(['肌肉',num2str(a)]);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 实验 报告