研究生数字图像处理作业
数字图像处理作业2

数字图像处理作业2数字图像处理作业学院:语法如下:imshow(I, n)或imshow(I_BW);imshow(X, MAP);imshow(I_RGB) 其中imshow(I, n)用于显示灰度图像,I是图像数据矩阵,n为灰度级数目(n可缺省,缺省值为256)。
其它的分别用于显示二值图像、索引色图像和RGB真彩色图像。
另外,对RGB彩色图像,还可以用imshow( RGB(:, :, 1) )、imshow( RGB(:, :, 2) )、imshow( RGB(:, :, 3) )分别显示RGB图像的R、G、B三个分量(注意:这样显示出的图像是以各分量值为对应的灰度值所显示的灰度图像)。
需要显示多幅图像时,可以使用figure语句,它的功能就是打开一个新的图像显示窗口。
也可以使用subplot函数将多幅图像显示在同一个图像显示窗口的不同区域位置。
四、图像的旋转在工具箱中的函数imrotate可用上述三种方法对图像进行插值旋转,默认的插值方法也是最邻近插值法。
imrotate的语法格式为:B = imrotate(A, angle, ‘method’)函数imrotate对图像进行旋转,参数’method’用于指定插值的方法,可选用的值为'nearest'(最邻近法),'bilinear'(双线性插值),'bicubic'(双三次插值),默认为'nearest'。
一般说来旋转后的图像会比原图大,超出原图部分值为0。
五、对比度调整如果原图像f (x , y )的灰度范围是[m , M ],我们希望对图像的灰度范围进行线性调整,调整后的图像g (x , y )的灰度范围是[n , N ],那么下述变换:[]n m y x f mM n N y x g +---=),(),( 就可以实现这一要求。
MATLAB 图像处理工具箱中提供的imadjust 函数,可以实现上述的线性变换对比度调整。
《数字图像处理》期末大作业(1)

《数字图像处理》期末大作业大作业题目及要求:一、题目:本门课程的考核以作品形式进行。
作品必须用Matlab完成。
并提交相关文档。
二、作品要求:1、用Matlab设计实现图形化界面,调用后台函数完成设计,函数可以调用Matlab工具箱中的函数,也可以自己编写函数。
设计完成后,点击GUI图形界面上的菜单或者按钮,进行必要的交互式操作后,最终能显示运行结果。
2、要求实现以下功能:每个功能的演示窗口标题必须体现完成该功能的小组成员的学号和姓名。
1)对于打开的图像可以显示其灰度直方图,实现直方图均衡化。
2)实现灰度图像的对比度增强,要求实现线性变换和非线性变换(包括对数变换和指数变换)。
3)实现图像的缩放变换、旋转变换等。
4)图像加噪(用输入参数控制不同噪声),然后使用空域和频域进行滤波处理。
5)采用robert算子,prewitt算子,sobel算子,拉普拉斯算子对图像进行边缘提取。
6)读入两幅图像,一幅为背景图像,一幅为含有目标的图像,应用所学的知识提取出目标。
3、认真完成期末大作业报告的撰写,对各个算法的原理和实验结果务必进行仔细分析讨论。
报告采用A4纸打印并装订成册。
附录:报告模板《数字图像处理》期末大作业班级:计算机小组编号:第9组组长:王迪小组成员:吴佳达浙江万里学院计算机与信息学院2014年12月目录(自动生成)1 绘制灰度直方图,实现直方图均衡化 (5)1.1 算法原理 (5)1.2 算法设计 (5)1.3 实验结果及对比分析 (5)2 灰度图像的对比度增强 (5)2.1 算法原理 (5)2.2 算法设计 (5)2.3 实验结果及分析 (5)3 图像的几何变换 (5)3.1 算法原理 (5)3.2 算法设计 (5)3.3 实验结果及分析 (5)4 图像加噪(用输入参数控制不同噪声),然后使用空域和频域进行滤波处理 (5)4.1 算法原理 (5)4.2 算法设计 (6)4.3 实验结果及分析 (6)5 采用robert,prewitt,sobel,拉普拉斯算子对图像进行边缘提取 (6)5.1 算法原理 (6)5.2 算法设计 (6)5.3 实验结果及分析 (6)6 读入两幅图像,一幅为背景图像,一幅为含有目标的图像,应用所学的知识提取出目标 (6)6.1 算法原理 (6)6.2 算法设计 (6)6.3 实验结果及分析 (6)7 小结(感受和体会) (6)1 绘制灰度直方图,实现直方图均衡化1.1 算法原理图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。
数字图像处理大作业报告

数字图像处理实验报告实验选题:选题二组员:学号:班级:指导老师:实验日期:2019年5月22日一、实验目的及原理1.识别出芯片的引脚2.熟悉并掌握opencv的某些函数的功能和使用方法原理:通过滤波、形态学操作得到二值图,再在二值图中设置条件识别引脚部分。
二、实现方案对图片滤波、调节阈值做边缘检测过滤掉一部分图片中干扰元素;然后通过膨胀、腐蚀操作来减少引脚的空心部分;再通过findContours()函数找到引脚的边缘并得到轮廓的点集,设置特定的长宽比和矩形面积识别引脚部分。
三、实验结果四、源码#include<iostream>#include<cmath>#include"opencv2/highgui/highgui.hpp"#include"opencv2/imgproc/imgproc.hpp"using namespace std;using namespace cv;int main(int argv, char **argc){//载入图片Mat srtImag = imread("2.jpg");Mat G_blur = srtImag.clone();//降噪blur(G_blur, G_blur, Size(5, 5));//imshow("降噪", G_blur);//Canny边缘检测Mat Canny_Imag = G_blur;Canny_Imag = Canny_Imag > 176;Canny(G_blur, Canny_Imag, 300, 50, 3);//imshow("边缘检测", Canny_Imag);//膨胀Mat element = getStructuringElement(MORPH_RECT, Size(10, 10));dilate(Canny_Imag, Canny_Imag, element);//imshow("膨胀", Canny_Imag);//腐蚀Mat element_1 = getStructuringElement(MORPH_RECT, Size(11, 11));erode(Canny_Imag, Canny_Imag, element_1);//imshow("腐蚀", Canny_Imag);//查找轮廓vector<vector<Point>>contours;vector<Vec4i>hierarchy;findContours(Canny_Imag, contours, hierarchy, RETR_CCOMP, CHAIN_APPROX_SIMPLE);vector<vector<Point>> contour_s(contours.size());//该数组共有contours.size()个轮廓的点集vector<Rect> Rec_s(contours.size());//逼近多边形的点集数组//获得每个轮廓点集的逼近多边形的点集for (size_t i = 0; i < contours.size(); i++) {approxPolyDP(Mat(contours[i]), contour_s[i], 3,false);//contour_s存储逼近多边形的点集Rec_s[i]= boundingRect(contour_s[i]); //Rec_s存储最小包围矩形的点集}//筛选合适长宽比的矩形并将其画出来Mat result_Imag = srtImag.clone();for (size_t j = 0; j < contours.size(); j++) {double as_ra;//长宽比as_ra = Rec_s[j].height / Rec_s[j].width;if (as_ra > 3.3 && as_ra < 9.3 && Rec_s[j].area() > 20) { rectangle(result_Imag, Rec_s[j], Scalar(0, 255, 255), 2, 7);}}imshow("result", result_Imag);waitKey(0);return 0;}五、总结经过这次实验,我熟悉了对blur()、Canny()、dilate()、erode()、findContours()、approxPolyDP()等函数的使用,了解了Rect类的构成等。
数字图像处理实验作业

实验一读取一幅图像,完成如下操作,并存储变换后的图像(1)把图像翻转90度,并显示(2)缩小图像为原图像的1/2(3)镜像图像原图像:clc;clf;clear;f=imread('D:\matlab\picture.jpg'); %读取D盘中matlab文件夹中名字为picture的格式为jpg的图片figure,imshow(f)k=imrotate(f,90); %正数表示逆时针旋转,负数表示顺时针旋转figure,imshow(k)imwrite(k,'D:\matlab\k.jpg'); %保存逆时针旋转90度后的图像逆时针旋转90度后图像:x=0.5; %横向放2倍。
如果想缩2倍就把x改为0.5即可,即变为0.5倍y=0.5; %纵向放2倍。
如果想缩2倍就把y改为0.5即可,即变为0.5倍T1 = maketform('affine',[x 0 0; 0 1 0; 0 0 1]);T2 = maketform('affine',[1 0 0; 0 y 0; 0 0 1]);I1 = imtransform(k,T1);I2 = imtransform(I1,T2);figure, imshow(I2)imwrite(I2,'D:\matlab\I2.jpg'); %保存缩小为原来1/2的图像缩小图像为原图像的1/2img=rgb2gray(I2) %取图像I2的灰度图像subplot(1,2,1),imshow(img); %水平镜像[m,n]=size(img);p=1:m;q=1:n;z(p,n-q+1)=img(p,q);subplot(1,2,2),imshow(z);imwrite(z,'D:\matlab\z.jpg'); %保存镜像后的图像镜像后的图像:实验二读取一幅彩色图像,并将图像转化为二值图像,在一张图表上,显示原始图像,灰度图像,二值图像。
研究生 数字图像处理 习题解答参考

习题 第 第 第 第 5 6 7 8 章 章 章 章 章 4 2 3 1 2 第 12 第 14 第 16 第 18 第 21 章 章 章 章 章
习题 10 补充题 7 3 1
第 11
习题解答参考
1. 有一幅在灰色背景下的黑白足球的图像,直方图如下所示。足球的直径为 230mm,其像素间距 为多少?(第 5 章 习题 4) [0 520 920 490 30 40 5910 240 40 60 50 80 20 80 440 960 420 0 ]
255 DB
0 = a ⋅ 32 + b 255 = a ⋅ 200 + b
解得:a=1.52 b=-48.57
0 32 -48.57 200 DA
GST 函数为: DB = 1.52DA − 48.57
DB ∈[0,255]
3. 下面是两幅大小为 100×100,灰度极为 16 的图像的直方图。求它们相加后所得图像的直方图? [0 [600 0 1000 0 10000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] 0] 1800 2500 1900 1100 800 200 0
t
可验证:
1 1 1 1 1 1 1 1 1 1 1 ∗ 1 1 1 = 1 1 1 1 1 1 1 0 0
1 1 1 0 0
1 1 1 0 0
0 0 0 0 0
0 1 0 1 0 ∗ 1 0 0 0 0
⇒ ⇒ ⇒
a r = +1.23 br = −61.84 a g = +1.03 bg = −15.85 ab = +1 bb = +4
(完整版)数字图像处理大作业

数字图像处理1.图像工程的三个层次是指哪三个层次?各个层次对应的输入、输出对象分别是什么?①图像处理特点:输入是图像,输出也是图像,即图像之间进行的变换。
②图像分割特点:输入是图像,输出是数据。
③图像识别特点:以客观世界为中心,借助知识、经验等来把握整个客观世界。
“输入是数据,输出是理解。
2.常用的颜色模型有哪些(列举三种以上)?并分别说明颜色模型各分量代表的意义。
①RGB(红、绿、蓝)模型②CMY(青、品红、黄)模型③HSI(色调、饱和度、亮度)模型3.什么是图像的采样?什么是图像的量化?1.采样采样的实质就是要用多少点来描述一幅图像,采样结果质量的高低就是用前面所说的图像分辨率来衡量。
简单来讲,对二维空间上连续的图像在水平和垂直方向上等间距地分割成矩形网状结构,所形成的微小方格称为像素点。
一副图像就被采样成有限个像素点构成的集合。
例如:一副640*480分辨率的图像,表示这幅图像是由640*480=307200个像素点组成。
2.量化量化是指要使用多大范围的数值来表示图像采样之后的每一个点。
量化的结果是图像能够容纳的颜色总数,它反映了采样的质量。
针对数字图像而言:采样决定了图像的空间分辨率,换句话说,空间分辨率是图像中可分辨的最小细节。
量化决定了图像的灰度级,即指在灰度级别中可分辨的最小变化。
数字图像处理(第三次课)调用图像格式转换函数实现彩色图像、灰度图像、二值图像、索引图像之间的转换。
图像的类型转换:对于索引图像进行滤波时,必须把它转换为RGB图像,否则对图像的下标进行滤波,得到的结果是毫无意义的;2.用MATLAB完成灰度图像直方图统计代码设计。
6789101112131415161718192021222324252627282930title('lady-lenna');if isrgb(a);b=rgb2gray(a);%RGB转换为灰度图像endsubplot(2,2,2);imshow(b);%显示图像title('ladygaga-lenna');[m,n]=size(a);%返回图像大小e=zeros(1,256);for k=0:255for i=1:mfor j=1:nif a(i,j)==ke(k+1)=e(k+1)+1;%灰度值相同的进行累加endendendendsubplot(2,2,4);bar(e);%画图像的灰度直方图title('灰度直方图');c=imrotate(a,20);%图像的旋转subplot(2,2,3);imshow(c);数字图像处理(第四次课)编写matlab函数,实现在医学图像中数字减影血管造影。
数字图像处理作业题

1.设一幅图像大小为M×N,灰度级为256,试求图像的数据量。
解:灰度级为256,则每个像素点占8位则图像总共有8×M×N bit,即M×N字节2.什么是直方图?直方图有哪些基本性质?直方图阈值的含义是什么?从图像直方图能够获得图像的哪些信息?答:直方图是灰度级的函数,描述的是图像中具有该灰度级的像素的个数,其横坐标是灰度级,纵坐标是该灰度出现的频率,即等于该灰度的像素的个数与总像素之比。
直方图的性质:(1)直方图只包含一幅图像中某一灰度值的像素出现的概率,而丢失了其所在位置的信息。
(2)图像与直方图之间是多对一的映射关系。
(3)如果一幅图像由多个不连续的区域组成,并且每个区域的直方图已知,则整幅图的直方图是这些区域的直方图之和。
直方图阈值是指直方图中像素数目相对较少,可以用于分割图像中背景与目标的灰度级对应的数值。
直方图反映了一幅图像中的灰度级与出现这种灰度的概率之间的关系,展现了图像最基本的统计特征,同时,通过直方图可以获得图像的灰度阈值和综合光密度等信息。
3.用Laplacian-4算子求出课本P54 3.5中图像的边缘图像,并确定图像二值化的阈值(边缘点数不超过总像素数的10%)解题思路:(1)根据Laplacian-4算子模板求出原图像的边缘图像,即图像中的每个像素点对应的边缘图像的灰度值为原图像中上、下、左、右四个方向的像素点的灰度值之和减去该像素点的灰度值的4倍再取绝对值。
(2)原图像矩阵中位于边缘的像素点在边缘图像矩阵中直接置为1(因为利用Laplacian-4算子计算时,这些点四个方向不齐)(3)画出边缘图像的灰度直方图,得出边缘图像中概率小于等于10%的灰度值即为二值化的阈值T4.课本P67 4.7参考课本P60-61例题4.15.一幅图像共有8个灰度级,每一灰度级概率分布如下表所示,要求对其进行直方图均衡化处理,并画出均衡化后的图像的直方图。
数字图像处理作业题

数字图像处理作业题1. 以下是一个32级灰度图像(0表示黑色),其中包含了在灰色开始背景上的,带有一个白色标记的,直径是12英寸的黑色留声机唱片。
下面给出了图像的直方图。
试问象素间的间距是多大标记的尺寸是多大[0 0 0 0 100 200 2000 6000 2000 200 100 0 0 200 3000 9000 3000 200 0 0 50 100 400 100 50 0 0 0 0 0 0 0]解:像素数乘以像素间距的平方等于物体的面积(S )。
表示唱片的像素总数:100+200+2000+6000+2000+200+100+200+50+100+400+100 +50=11300 S=22611300⨯=⨯πd d=(英寸) 表示白色标记的像素数为:50+100+400+100+50=700 S=22700r d ⨯=⨯π r=(英寸)2. 下面给出了在黑色背景上的白色台球的20级灰度图像的直方图0表示黑色),这个球是用每立方厘米克的材料制成的。
象素间距是1mm 。
试问球的重量是多少[0 100 500 3000 9000 3000 500 200 100 200 300 500 627 500 300 200 100 0 0 0]解:由直方图可知,表示台球的像素数为:100+200+300+500+627+500+300+200+100=2827S=222827r d ⨯=⨯π r=3cm 球的质量为: )(6.1695.1343g r M =⨯=π 原题:下面给出了在黑色背景上的白色台球的20级灰度图像的直方图0表示黑色),这个球是用每立方厘米克的材料制成的。
象素间距是1mm 。
试问球的重量是多少[0 200 500 3000 9000 3000 500 200 100 200 300 500 627 500 300 200 100 0 0 0]3.图像平滑的直观依据是什么不同的平滑方法是如何看待噪音并使用了何种改进以尽量降低其对边缘的模糊对于平滑的快速性和边缘保持,你有何见解解:图像在生成和传输过程中常受到各种噪声源的干扰和影响而使图像处理效果变差,反映在图像上,噪声使原本均匀和连续变化的灰度突然变大或减小,形成一些虚假的物体边缘或轮廓。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、编写程序完成不同滤波器的图像频域降噪和边缘增强的算法并进行比较,得出结论。
频域降噪。
对图像而言,噪声一般分布在高频区域,而图像真是信息主要集中在低频区,所以,图像降噪一般是利用低通滤波的方法来降噪。
边缘增强。
图像的边缘信息属于细节信息,主要由图像的高频部分决定,所以,边缘增强一般采取高通滤波,分离出高频部分后,再和原频谱进行融合操作,达到边缘增强,改善视觉效果,或者为进一步处理奠定基础的目的。
1频域降噪,主程序如下:I=imread('lena.bmp'); %读入原图像文件J=imnoise(I,'gaussian',0,0.02);%加入高斯白噪声A=ilpf(J,0.4);%理想低通滤波figure,subplot(222);imshow(J);title('加噪声后的图像');subplot(222);imshow(A);title('理想低通滤波');B=blpf(J,0.4,4);%巴特沃斯低通滤波subplot(223);imshow(B);title('巴特沃斯低通滤波');C=glpf(J,0.4);%高斯低通滤波subplot(224);imshow(C);title('高斯低通滤波');用到的滤波器函数的程序代码如下:function O=ilpf(J,p) %理想低通滤波,p是截止频率[f1,f2]=freqspace(size(J),'meshgrid');hd=ones(size(J));r=sqrt(f1.^2+f2.^2);hd(r>p)=0;y=fft2(double(J));y=fftshift(y);ya=y.*hd;ya=ifftshift(ya);ia=ifft2(ya);O=uint8(real(ia));function O=blpf(J,d,n) %巴特沃斯低通滤波器,d是截止频率,n是阶数[f1,f2]=freqspace(size(J),'meshgrid');hd=ones(size(J));r=f1.^2+f2.^2;for i=1:size(J,1)for j=1:size(J,2)t=r(i,j)/(d*d);hd(i,j)=1/(t^n+1);endendy=fft2(double(J));y=fftshift(y);ya=y.*hd;ya=ifftshift(ya);ia=ifft2(ya);O=uint8(real(ia));function O=glpf(J,D) %高斯滤波器,D是截止频率[f1,f2]=freqspace(size(J),'meshgrid');r=f1.^2+f2.^2;Hd=ones(size(J));for i=1:size(J,1)for j=1:size(J,2)t=r(i,j)/(D*D);Hd(i,j)=exp(-t);endendY=fft2(double(J));Y=fftshift(Y);Ya=Y.*Hd;Ya=ifftshift(Ya);ia=ifft2(Ya);O=uint8(real(ia));运行结果如图1所示。
从结果可以看出,三种滤波器都可以对图像进行降噪,经滤波器滤波后,图像更噪声部分得到抑制,但是细节部分变得模糊。
这是因为,细节信息分布在高频部分,降噪会对图像起到平滑作用,细节部分减弱。
2 边缘增强,程序如下:J=imread('moon.tif');figuresubplot(121),imshow(J);title('原始图像');[f1,f2]=freqspace(size(J),'meshgrid');r=f1.^2+f2.^2;D=0.3;Hd=ones(size(J));for i=1:size(J,1)for j=1:size(J,2)t=r(i,j)/(D*D);Hd(i,j)=1-exp(-t); %高斯高通滤波endendY=fft2(double(J));Y=fftshift(Y);Ya=Y.*Hd; %高斯高通滤波%Ya=ifftshift(Ya);ia=Y+1.4*Ya; %原始图像频谱加上1.4倍的高频频谱Ya=ifftshift(ia);ia=ifft2(Ya);O=uint8(real(ia));subplot(122),imshow(O);title('边缘增强后的图像');运行结果如下图示:边缘增强采用高斯高通滤波器将高频频谱过滤出来然后乘以 1.4倍以后与原图像频谱详加,然后对所得频谱进行反变换得到增强后的图像。
也可以采用其他滤波器,比如巴特沃斯滤波器或者理想高通滤波器等。
从结果可以看出高频加强后图像细节增强,边缘部分更容易分辨。
二、编写程序完成不同锐化方法的图像锐化的算法并进行比较,得出结论。
图像锐化可以分为空域和频域锐化两大类,在此着重讨论空域。
频域锐化可以参考上题中边缘增强部分。
1.拉普拉斯变换锐化。
f=imread('lena.bmp');w=fspecial('laplacian',0);%生成模版f2=im2double(f);g2=imfilter(f2,w,'replicate');g=f2-g2;g1=1.3*f2-g2;%高频提升figure,subplot(131);imshow(f);title('原始图片');subplot(132);imshow(g);title('标准拉普拉斯锐化');subplot(133);imshow(g1);title('高频提升锐化');运行结果如下图所示:2.梯度算子锐化。
程序如下:f=imread('coins.png');h1=fspecial('prewitt');h2=fspecial('sobel');h3=fspecial('log');f2=im2double(f);g1=imfilter(f2,h1,'replicate');g2=imfilter(f2,h2,'replicate');g3=imfilter(f2,h3,'replicate');figure,subplot(221);imshow(f);title('原始图片');subplot(222);imshow(g1);title('prewitt算子梯度锐化');subplot(223);imshow(g2);title('sobel算子梯度锐化');subplot(224);imshow(g2);title('log算子梯度锐化');运行结果如下如所示:从运行结果可以看出,拉普拉斯变换锐化效果明显,高频提升后边缘信息更加清晰,但是也同时可以看出,拉普拉斯锐化会产生很多噪声。
相比较一下,梯度算子没有引入噪声,边缘信息明显,很适合计算机自动检测和识别。
三、编写程序完成同态滤波的算法,得出结论。
同态滤波是把频率过滤和灰度变换结合起来的一种图像处理方法,它依靠图像的照度/ 反射率模型作为频域处理的基础,利用压缩亮度范围和增强对比度来改善图像的质量。
同态滤波的maitlab实现如下:clear;img0 = imread('tun.jpg');%img0=rgb2gray(I);%彩色图像转化为灰度图像[M,N]=size(img0);img=double(img0);img = log(1+img); %取对数img = fft2(img); %傅立叶变换img = fftshift(img); %将频域原点移到图像中心for i=1:Mfor j=1:ND(i,j)=sqrt(((i-floor(M/2))^2+(j-floor(N/2))^2));%求距离endendc=4; %锐化参数,可调Do=150 ; %一般是方差 (滤波器的高通截止频率)H=(2.0-0.5)*(1-exp(-c*(D.^2/(Do^2))))+0.5; %滤波器函数whos;himg=img.*H;himg=ifftshift(himg);gimg=ifft2(himg); %逆傅立叶变换gimg=exp(gimg); %取指数G=real(gimg);img=G;img_min=min(img(:));img_max=max(img(:));img=(img-img_min)/(img_max-img_min);img=imadjust(img,[0 1],[0 1],0.3);w1=fspecial('gaussian',[5,5],2.3);img_new=imfilter(img,w1); %高斯滤波J=histeq(img_new);%直方图均衡化处理im2=histeq(img);figure,subplot(121),imshow(img0);title('原始图像');%显示原始图像subplot(122); imshow(J);title('同态滤波后的图像'); %滤波处理过的图像运行结果如下图示:程序中为了得到更好的视觉效果,同态滤波后,有进行了空域高斯滤波和直方图均衡化处理。
通过运行结果我们可以看出,经同态滤波后,图像中原本很暗的岩壁更加清晰,图像的亮度范围减小,对比对增强,细节信息增强,视觉效果更好。
四、编写程序完成不同分割方法的图像分割的算法并进行比较,得出结论。
图像分割是图像处理的重要领域,是计算机进一步处理的基础。
笔者完成了两个比较有代表性的图像分割算法,一个是基于灰度的阈值分割,一个是基于边缘信息的分割,分水岭算法进行的图像分割。
1. Otsu法阈值分割图像clear allI=imread('coins.png');subplot(1,2,1),imshow(I);title('原始图像')level=graythresh(I); %确定灰度阈值BW=im2bw(I,level);subplot(1,2,2),imshow(BW);title('Otsu法阈值分割图像');运行结果如下图示:从运行结果可以看出,Otsu法阈值分割图像对于前景目标和背景灰度差别较大、目标灰度范围较小,的情况下可以实现较为理想的分割。