matlab数字图像处理 入门基础

源图片:Lenna

matlab数字图像处理 入门基础

一、基础操作

 1 A = imread (\'Lenna.jpg\');    %读入图像lena.jpg,赋给变量A
 2 
 3 %imwrite(A,\'Lenna.jpeg\');    %将图片A另生成jpeg格式 
 4 
 5 % size (A);                 %显示图片A尺寸
 6 % whos A;                   %显示图片A变量信息
 7  
 8 % imfinfo (\'Lenna.jpg\');    %查看图片A属性信息,如修改日期,大小,存储方式等
 9  
10 % imshow(A)                 %显示图片A
11 
12 % zoom on                   %打开图像放缩功能
13 % zoom off                  %关闭图像放缩功能
14 
15 % %不同窗口显示多幅图像
16 % figure;                   %创建一个新的窗口
17 % imshow(A);                %该窗口显示图片A
18 % figure;                   %又创建一个新的窗口
19 % imshow(B);                %该窗口显示图片B
20 
21 % %相同窗口显示多幅图像
22 % figure;                   %创建一个新的窗口
23 % subplot(1,2,1);           %打开一个有1行2列图像位置的窗口,并将焦点位于第1个位置上
24 % imshow(A);                %显示图片A
25 % subplot(1,2,2);           %打开一个有1行2列图像位置的窗口,并将焦点位于第2个位置上
26 % imshow(B);                %显示图片B
27 
28 
29 % %多帧图像显示全部图片
30 % load mri;                 %载入matlab自带的核磁共振图像
31 % figure;                   %创建一个新的窗口
32 % montage(D,map);           %显示图片D
33 
34 % %多帧图像只显示一幅
35 % load mri                  %载入matlab自带的核磁共振图像
36 % figure;                   %创建一个新的窗口
37 % imshow (D(:,:,26),map);   %显示图片D的第26帧
38 
39 % %转化为电影
40 % load mri;                 %载入matlab自带的核磁共振图像
41 % figure;                   %创建一个新的窗口
42 % mov=immovie(D,map);       %多帧图片输入
43 % colormap(map);            %设定颜色表
44 % movie(mov);               %播放电影
45 
46 % %转化为电影
47 % load mri;                 %载入matlab自带的核磁共振图像
48 % figure;                   %创建一个新的窗口
49 % I=immovie(D,map);         %多帧图片以电影模式输入变量I
50 % colormap(map);            %设定颜色表,可以省略
51 % movie(I);                 %播放电影I

傻瓜式操作,代码都被我注释掉了,想看哪段效果,把该段的注释符号%去掉即可。

二、调用函数实现边缘检测

 1 %对同一副图像分别使用6种边缘检测算法进行处理
 2 
 3 % A = imread(\'circuit.tif\');
 4 A = imread (\'cxk.jpg\');      %读入图像cxk.jpg,赋给变量A
 5 A = rgb2gray(A);
 6 
 7 bw1 = edge(A,\'sobel\');
 8 bw2 = edge(A,\'prewitt\');
 9 bw3 = edge(A,\'roberts\');
10 bw4 = edge(A,\'log\');
11 bw5 = edge(A,\'canny\');
12 
13  subplot(2,3,1);imshow(A);  title(\'原图\');
14  subplot(2,3,2);imshow(bw3);title(\'roberts\');
15  subplot(2,3,3);imshow(bw1);title(\'sobel\');
16  subplot(2,3,4);imshow(bw2);title(\'prewitt\');
17  subplot(2,3,5);imshow(bw4);title(\'log\');
18  subplot(2,3,6);imshow(bw5);title(\'canny\');

参考资料:

[1]张铮, 王艳平, 薛桂香. 数字图像处理与机器视觉[M]. 人民邮电出版社, 2010.