资源描述:
《图像分割部分源代码.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.图像反转MATLAB程序实现如下:I=imread('xian.bmp');J=double(I);J=-J+(256-1);%图像反转线性变换H=uint8(J);subplot(1,2,1),imshow(I);subplot(1,2,2),imshow(H);2.灰度线性变换MATLAB程序实现如下:I=imread('xian.bmp');subplot(2,2,1),imshow(I);title('原始图像');axis([50,250,50,200]);axison;%显示坐标系I1=rgb2gray(I);subp
2、lot(2,2,2),imshow(I1);title('灰度图像');axis([50,250,50,200]);axison;%显示坐标系J=imadjust(I1,[0.10.5],[]);%局部拉伸,把[0.10.5]内的灰度拉伸为[01]subplot(2,2,3),imshow(J);title('线性变换图像[0.10.5]');axis([50,250,50,200]);gridon;%显示网格线axison;%显示坐标系K=imadjust(I1,[0.30.7],[]);%局部拉伸,把[0.30.7]内的灰度拉伸为
3、[01]subplot(2,2,4),imshow(K);title('线性变换图像[0.30.7]');axis([50,250,50,200]);gridon;%显示网格线axison;%显示坐标系3.非线性变换MATLAB程序实现如下:I=imread('xian.bmp');I1=rgb2gray(I);subplot(1,2,1),imshow(I1);title('灰度图像');axis([50,250,50,200]);gridon;%显示网格线axison;%显示坐标系J=double(I1);J=40*(log(J+
4、1));H=uint8(J);subplot(1,2,2),imshow(H);title('对数变换图像');axis([50,250,50,200]);gridon;%显示网格线axison;%显示坐标系4.直方图均衡化MATLAB程序实现如下:I=imread('xian.bmp');I=rgb2gray(I);figure;subplot(2,2,1);imshow(I);subplot(2,2,2);imhist(I);I1=histeq(I);figure;subplot(2,2,1);imshow(I1);subplot
5、(2,2,2);imhist(I1);5.线性平滑滤波器用MATLAB实现领域平均法抑制噪声程序:I=imread('xian.bmp');subplot(231)imshow(I)title('原始图像')I=rgb2gray(I);I1=imnoise(I,'salt&pepper',0.02);subplot(232)imshow(I1)title('添加椒盐噪声的图像')k1=filter2(fspecial('average',3),I1)/255;%进行3*3模板平滑滤波k2=filter2(fspecial('avera
6、ge',5),I1)/255;%进行5*5模板平滑滤波k3=filter2(fspecial('average',7),I1)/255;%进行7*7模板平滑滤波k4=filter2(fspecial('average',9),I1)/255;%进行9*9模板平滑滤波subplot(233),imshow(k1);title('3*3模板平滑滤波');subplot(234),imshow(k2);title('5*5模板平滑滤波');subplot(235),imshow(k3);title('7*7模板平滑滤波');subplot(
7、236),imshow(k4);title('9*9模板平滑滤波');6.中值滤波器用MATLAB实现中值滤波程序如下:I=imread('xian.bmp');I=rgb2gray(I);J=imnoise(I,'salt&pepper',0.02);subplot(231),imshow(I);title('原图像');subplot(232),imshow(J);title('添加椒盐噪声图像');k1=medfilt2(J);%进行3*3模板中值滤波k2=medfilt2(J,[5,5]);%进行5*5模板中值滤波k3=med
8、filt2(J,[7,7]);%进行7*7模板中值滤波k4=medfilt2(J,[9,9]);%进行9*9模板中值滤波subplot(233),imshow(k1);title('3*3模板中值滤波');subplot