资源描述:
《matlab_图像分割算法源码.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、matlab图像分割算法源码图像读取及灰度变换I=imread('cameraman.tif');%读取图像subplot(1,2,1),imshow(I)%输出图像title('原始图像')%在原始图像中加标题subplot(1,2,2),imhist(I)%输出原图直方图title('原始图像直方图')%在原图直方图上加标题图像旋转I=imread('cameraman.tif');figure,imshow(I);theta=30;K=imrotate(I,theta);%Tryvaryingtheangle,thet
2、a.figure,imshow(K)边缘检测I=imread('cameraman.tif');J1=edge(I,'sobel');J2=edge(I,'prewitt');J3=edge(I,'log');subplot(1,4,1),imshow(I);subplot(1,4,2),imshow(J1);subplot(1,4,3),imshow(J2);subplot(1,4,4),imshow(J3);1.图像反转MATLAB程序实现如下:I=imread('xian.bmp');J=double(I);J=-J+
3、(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);subplot(2,2,2),imshow(I
4、1);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(I
5、1,[0.30.7],[]);%局部拉伸,把[0.30.7]内的灰度拉伸为[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('灰度图像
6、');axis([50,250,50,200]);gridon; %显示网格线axison; %显示坐标系J=double(I1);J=40*(log(J+1));H=uint8(J);subplot(1,2,2),imshow(H);title('对数变换图像');axis([50,250,50,200]);gridon; %显示网格线axison; %显示坐标系4.直方图均衡化MATLAB程序实
7、现如下: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(2,2,2);imhist(I1);5.线性平滑滤波器用MATLAB实现领域平均法抑制噪声程序:I=imread('xian.bmp');subplot(231)imshow(I)title('原始图像')I=rgb2gray(I
8、);I1=imnoise(I,'salt&pepper',0.02);subplot(232)imshow(I1)title('添加椒盐噪声的图像')k1=filter2(fspecial('average',3),I1)/255; %进行3*3模板平滑滤波k2=filte