s1093522 作業2
作業說明
主題: 線條自畫像 (二值化與邊緣偵測 Image Thresholding and Edge Detection) 撰寫一個程式,以灰階模式讀取一張圖像 imread(path, IMREAD_GRAYSCALE) (a)利用 Sobel Operators 偵測並輸出邊緣成分圖 (b)設計一個類似素描線條的自畫像圖案。(想想:如何使用邊緣偵測所得到的點,結合 成看似素描筆畫出的線條?)
開發環境
Windows 11 21H2
Visual Studio 2019 16.11.24
OpenCV 4.5.1
程式說明
-
將圖像轉換為灰階
cvtColor(img, gray_img, COLOR_BGR2GRAY) -
進行高斯模糊
GaussianBlur(gray_img, blur, Size(5,5), 0)抑制圖片的高頻噪聲,保留低頻特徵(邊緣和物體的輪廓)。
- kernel size: 5 * 5
- σ: 0
-
Sobel Operator 進行邊緣檢測
Sobel(blur, sobelx, CV_64F, 1, 0, 3) -
混合水平和垂直方向的邊緣檢測結果
- 使用
addWeighted()將水平和垂直方向的邊緣檢測結果混合在一起,並將結果存在edge
- 使用
-
使用邊緣偵測所得到的點結合成素描筆畫出的線條
留言
張貼留言