|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
图像边缘检测算法体验步骤6 s( _6 t. ^( t) ? S8 x+ {9 p
5 ~+ G) u+ s0 |$ g, H! J1. 确定你的电脑上已经安装了Photoshop和Matlab
! n8 ^: @4 ~" c$ X- J2. 使用手机或其他任何方式,获得一张彩色图像(任何格式),建议图像颜色丰富,分辨率比较高,具有比较明显的图像边界(卡通图像,风景图像,桌面图像)! Z$ m: F8 C$ p+ {' p
3. 将图像保存到一个能够找到的目录中,例如img文件夹(路径上没有汉字)5 l5 N( o6 c7 a1 ?
4. 启动Photoshop,打开img文件夹中的图像
* e+ d5 e9 B* k' Y, k5. 在工具箱中选择“矩形选择”工具,到图面上选择一个区域(如果分辨率比较高,建议不要太大,否则计算过程比较长)
7 J) u) [& n* e O# u$ X6. 点击下拉菜单【文件】-【新建】,新建一个与矩形选择框同样尺寸的Photoshop图像,不要求保存该图像
$ r2 @1 T& e+ O7. 将该彩色图像转换为亮度图像,即点击下拉菜单【图像】-【模式】-【灰度】,如提示是否合并,选择“Yes”
* t9 z8 ?0 C. l5 [; O8. 将该单色的亮度图像另存为Windows的BMP文件,点击下拉菜单【文件】-【存储为】,在“存储为”窗口中,为该文件起一个名字,例如test1(保存为test1.bmp)
! z& q' Q7 I( f# ~5 M: K; z9. 启动Matlab,将当期路径(Current Directory)定位到图像文件夹,例如这里的img文件夹1 M- n7 D( |/ b' P# \+ }( N
10. 使用imread命令读入该图像,在命令行输入:>> f = imread('test1.bmp');# S* F% b0 q, c0 w# T, s$ ?
11. 在Matlab中显示该图像,在命令行输入:>> figure, imshow(f)
0 z8 r* U; W1 A# u9 F9 a& R6 ?12. 然后,分别使用Matlab图像工具箱中的Edge函数,分别使用Sobel算法,高斯-拉普拉斯(Log)算法和Canny算法得到的边缘图像:
& ~+ a4 ?: `' R3 r" ~* R' H8 d 在命令行输入:>> g_sobel = edge(f, 'sobel', 0.05);9 I5 h4 \$ B& D9 I4 R
>> g_log = edge(f, 'log', 0.003, 2.25);
+ A) {% U. w/ \. |' X >> g_canny = edge(f, 'canny', [0.04 0.10], 1.5);
+ j. s. I* P+ k A: n" c4 S13 得到边缘图像计算结果后,显示这些边缘图像:& x$ m9 q+ ]$ u0 q! {
>> figure, imshow(g_sobel)! _& c- h* d+ U9 v# k: x d
>> figure, imshow(g_log)' [# J- i' u7 \
>> figure, imshow(g_canny)0 u, M9 L& Q2 e, F! a
9 s6 A3 H* A. e6 `* }" |, |9 q8 H4 n; Q& k14 可以用不同的图像做对比,后续课程解释算法后,可以变换不同的阈值,得到不同的边缘图像
8 a1 Z7 i0 G: w: O, s7 r! I" F4 _! J8 y' [6 d) V4 Q
|
|