|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
图像边缘检测算法体验步骤% [0 ?3 S' x" F2 G" ]
9 v9 Y3 A9 u& S3 f. k1. 确定你的电脑上已经安装了Photoshop和Matlab
: a, [; Z* J" ?. x' j/ g2. 使用手机或其他任何方式,获得一张彩色图像(任何格式),建议图像颜色丰富,分辨率比较高,具有比较明显的图像边界(卡通图像,风景图像,桌面图像), G# z/ w% j# l3 g3 g# {! I
3. 将图像保存到一个能够找到的目录中,例如img文件夹(路径上没有汉字)
% h" w/ E! e/ V+ _7 W3 @" b4. 启动Photoshop,打开img文件夹中的图像, a& r6 ^- d! n6 m0 l( k1 s
5. 在工具箱中选择“矩形选择”工具,到图面上选择一个区域(如果分辨率比较高,建议不要太大,否则计算过程比较长)" \) G& g' j; ^8 R3 t: [; Z+ W
6. 点击下拉菜单【文件】-【新建】,新建一个与矩形选择框同样尺寸的Photoshop图像,不要求保存该图像3 w% @8 ~5 W4 \. p6 M' @$ _9 N
7. 将该彩色图像转换为亮度图像,即点击下拉菜单【图像】-【模式】-【灰度】,如提示是否合并,选择“Yes”5 o5 ^. v& l h" z; p
8. 将该单色的亮度图像另存为Windows的BMP文件,点击下拉菜单【文件】-【存储为】,在“存储为”窗口中,为该文件起一个名字,例如test1(保存为test1.bmp) M0 L; ^" \) H0 m( `+ Y& U
9. 启动Matlab,将当期路径(Current Directory)定位到图像文件夹,例如这里的img文件夹
) ^7 {/ Q; g7 O* l: I% p* Q10. 使用imread命令读入该图像,在命令行输入:>> f = imread('test1.bmp');
& l. i/ N+ x$ R11. 在Matlab中显示该图像,在命令行输入:>> figure, imshow(f): H$ r, {1 b1 q2 C M, M f6 x# z% t
12. 然后,分别使用Matlab图像工具箱中的Edge函数,分别使用Sobel算法,高斯-拉普拉斯(Log)算法和Canny算法得到的边缘图像:! q1 D Z% _. b/ Y3 ~
在命令行输入:>> g_sobel = edge(f, 'sobel', 0.05);
0 G- y# T1 u2 a, Y >> g_log = edge(f, 'log', 0.003, 2.25);
; ]4 e0 B+ S. r6 a1 Q6 { O% L/ w7 \ >> g_canny = edge(f, 'canny', [0.04 0.10], 1.5);
4 w; w& p& v" Y; m/ L; N6 y13 得到边缘图像计算结果后,显示这些边缘图像:
: n3 G& o# r7 n. G$ Y >> figure, imshow(g_sobel)
* E" f/ `+ ?/ S! X3 ^) ~ >> figure, imshow(g_log). R6 i5 j7 J. e- E5 I/ x
>> figure, imshow(g_canny)
B2 }6 ]9 B) v
8 f; _5 m. w6 ]2 A Z+ |14 可以用不同的图像做对比,后续课程解释算法后,可以变换不同的阈值,得到不同的边缘图像
, S1 t8 E( a3 O- D% V( J5 K
" ?: {) D# H4 o$ x% r7 ~* A) ^( q |
|