2019年4月3日 星期三

s1051670的作业2

一.作业题目
主題: 邊緣偵測與製作線條自畫像 Edge Detection and Contour Drawing
撰寫一個程式,讀取一張 256 色灰階圖像或 RGB 全彩圖像(.bmp 或.jpg 圖像格式都可) ,利用 Sobel Operators 偵測圖像邊緣,並以邊緣偵測為基礎(如彩色圖像針可先將圖片 由 RGB 轉換至 HIS 或 YUV, YCbCr 等色彩空間,只需對亮度 Channel I 或 Y 處理,再 轉回 RGB 即可),設計一個類似素描線條自畫像程式。(如果可以分析邊緣偵測所得到 的點,結合成線條方式呈現更佳!)

二.作业环境
1.ubuntu 18.04
2.pycharm 2019
3.opencv 4.0.0

三.作业说明
sobel算子其实是一种过滤器,是带有方向的,其函数大致是这样
dst = cv2.Sobel(src, ddepth, dx, dy[, dst[, ksize[, scale[, delta[, borderType]]]]])

参数一:处理的图像
参数二:图像的深度
dx,dy是求导的阶数,一般是0,1,2

sobel函数求完导数后会有负值,还有会大于255.而原图像是unit8,所以sobel建立的图像位数不够,会有截断。
因此要用16位有符号的数据类型,cv2.CV_16S。再用convertScaleAbs()转回unit8。

四.作业结果



沒有留言:

張貼留言