资源描述:
《图像处理与分析-报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、中国地质大学研究生课程论文封面课程名称图像处理与分析教师姓名研究生姓名研究生学号研究生专业所在院类别:日期:目录1Matlab图像处理操作11.1图像文件读取11.2图像变换21.2.1图像旋转21.2.2图像平移31.2.3图像缩放41.3图像增强61.3.1均值滤波和中值滤波61.4边缘提取91.4.1各种边缘提取方法92VC图像处理操作122.1直方图规定化的单映射与组映射122.2Sobel算子检测边缘172.3Susan算子检测边缘202.4Snake算子边缘检测231Matlab图像处理操作1.1图像文件读取%图像读取a=imread('cameraman.tif');
2、subplot(1,3,1),imshow(a);title('tif图像');a=imread('ImgTrans.bmp');subplot(1,3,2),imshow(a);title('bmp图像');a=imread('greens.jpg');subplot(1,3,3),imshow(a);title('jpg图像');读取三种不同格式的图像281.1图像变换1.1.1图像旋转主程序代码:%图像旋转clear;%读取图像Image=imread('ImgTrans.bmp');%angle=30;im1=rgb2gray(Image);subplot(1,2,1),i
3、mshow(im1);title('原始图像');%根据角度旋转图像im2=FunRotate(im1,angle);%绘制新图subplot(1,2,2),imshow(im2);title('旋转图像');图像旋转函数代码:%旋转函数functionim2=FunRotate(im1,angle)pai=3.14;roteang=angle/180*pai;[im1X,im1Y]=size(im1);%计算旋转矩阵rotmatrix=[cos(roteang),-sin(roteang);sin(roteang),cos(roteang)];%计算反旋转矩阵rrotmatrix
4、=[cos(-roteang),-sin(-roteang);sin(-roteang),cos(-roteang)];%计算旋转后的图像大小im2XY1=[im1X,im1Y]*rotmatrix;im2XY2=[im1X,1]*rotmatrix;im2XY3=[1,1]*rotmatrix;im2XY4=[1,im1Y]*rotmatrix;im2p11=[min([im2XY1(1),im2XY2(1),im2XY3(1),im2XY4(1)]),min([im2XY1(2),im2XY2(2),im2XY3(2),im2XY4(2)])];%图像框架im2X=round(
5、max([im2XY1(1),im2XY2(1),im2XY3(1),im2XY4(1)])-im2p11(1));im2Y=round(max([im2XY1(2),im2XY2(2),im2XY3(2),im2XY4(2)])-im2p11(2));%建立新图像im2=uint8(zeros(im2X,im2Y))+255;%对于每个像素点,进行上文所述的计算。fori=1:im2X28forj=1:im2Ypij=round([i+im2p11(1)-1,j+im2p11(2)-1]*rrotmatrix);if(pij(1)>=1)&&(pij(2)>=1)&&(pij(1
6、)<=im1X)&&(pij(2)<=im1Y)im2(i,j)=im1(pij(1),pij(2));endendend;旋转图像1.1.1图像平移%图像平移ImgOrg=imread('ImgTrans.bmp');J=double(ImgOrg);H=size(ImgOrg);I_moveresult=zeros(H);x_move=50;y_move=50;%移动参数设置28I_moveresult(x_move+1:H(1),y_move+1:H(2),1:H(3))=J(1:H(1)-x_move,1:H(2)-x_move,1:H(3));subplot(1,2,1)
7、,imshow(ImgOrg);title('原始图像');subplot(1,2,2),imshow(mat2gray(I_moveresult));title('平移后图像');图像平移1.1.1图像缩放ImgOrg=imread('ImgTrans.bmp');figure,imshow(ImgOrg),title('原始图像');%缩放倍数为0.5ImgTrans0_5_1=imresize(ImgOrg,0.5);%最近邻插值figure,imshow(Im