|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
图像边缘检测算法体验步骤
' O6 l4 k7 ]) d9 f/ d# }7 G1 L+ \8 Q# W% }6 A+ D9 Z* u
1. 确定你的电脑上已经安装了Photoshop和Matlab% ^8 Y# j2 i/ s; D# c+ V
2. 使用手机或其他任何方式,获得一张彩色图像(任何格式),建议图像颜色丰富,分辨率比较高,具有比较明显的图像边界(卡通图像,风景图像,桌面图像)
/ N; n4 o' m! q+ n/ U: z3. 将图像保存到一个能够找到的目录中,例如img文件夹(路径上没有汉字)
# }3 u) h% W/ A2 a3 p0 s {4. 启动Photoshop,打开img文件夹中的图像
1 C: h* Y$ d0 S' b5. 在工具箱中选择“矩形选择”工具,到图面上选择一个区域(如果分辨率比较高,建议不要太大,否则计算过程比较长)
2 L; ]# Z* {& {- F6. 点击下拉菜单【文件】-【新建】,新建一个与矩形选择框同样尺寸的Photoshop图像,不要求保存该图像
( T$ t' a. M8 w9 _% o: P. f# z7. 将该彩色图像转换为亮度图像,即点击下拉菜单【图像】-【模式】-【灰度】,如提示是否合并,选择“Yes”
0 q) T2 n0 V2 D$ r3 @8. 将该单色的亮度图像另存为Windows的BMP文件,点击下拉菜单【文件】-【存储为】,在“存储为”窗口中,为该文件起一个名字,例如test1(保存为test1.bmp)
; g/ u2 P* w. s: c" E' [ H) N9. 启动Matlab,将当期路径(Current Directory)定位到图像文件夹,例如这里的img文件夹
# @0 o/ y( g- Z# G, V10. 使用imread命令读入该图像,在命令行输入:>> f = imread('test1.bmp');. M1 w4 [. `+ ~3 P' v4 I* I. Y
11. 在Matlab中显示该图像,在命令行输入:>> figure, imshow(f)8 j$ H& v! @+ a4 U
12. 然后,分别使用Matlab图像工具箱中的Edge函数,分别使用Sobel算法,高斯-拉普拉斯(Log)算法和Canny算法得到的边缘图像:2 a3 O0 S7 m; T' |; q
在命令行输入:>> g_sobel = edge(f, 'sobel', 0.05);! H J" \* I& {6 Z8 W5 Q
>> g_log = edge(f, 'log', 0.003, 2.25);$ i3 {9 _( N9 u
>> g_canny = edge(f, 'canny', [0.04 0.10], 1.5);
3 V5 e/ m- V$ { c8 I5 O; n0 y& s13 得到边缘图像计算结果后,显示这些边缘图像:7 I. w' k* T$ J7 @4 [8 M' k( y1 G
>> figure, imshow(g_sobel)/ n4 j8 }9 E" K
>> figure, imshow(g_log)4 t- \0 N$ ~4 I
>> figure, imshow(g_canny)
- l+ ^3 q8 Y1 H; }. S2 V ~5 ? Z; }" ?
14 可以用不同的图像做对比,后续课程解释算法后,可以变换不同的阈值,得到不同的边缘图像0 e" t- Z" w; v
3 F7 I0 c- M. z5 c; g$ ^ |
|