s1083520 作業2

 

1112 Digital Image Processing Assignment #2

主題: 線條自畫像 (二值化與邊緣偵測 Image Thresholding and Edge Detection)

題目敘述

撰寫一個程式,以灰階模式讀取一張圖像 imread(path, IMREAD_GRAYSCALE)
(a)利用Sobel Operators 偵測並輸出邊緣成分圖
(b)設計一個類似素描線條的自畫像圖案。
(想想:如何使用邊緣偵測所得到的點,結合成看似素描筆畫出的線條?)

開發環境

OS: Windows 10
Editor: Visual Studio Code
Compiler: GCC - 12.2.0(MinGW-W64)
Language: C++
Package: OpenCV - 4.7.0

實作方法

(a)
1. 先使用 Guassian Blur 過濾原圖像雜訊
2. 使用 Sobel 運算子對原圖像的x方向及y方向分別處理後得到gradient_x,  gradient_y
3. 將兩個分量結合得到梯度G( sqrt(gradient_x^2 + gradient_y^2) ),
    通常為了加快運算,會使用abs(gradient_x) + abs(gradient_y)求得G
4. 使用addWeighted將abs_gradient_x及abs_gradient_y給定權重求和得到最終結果

(b)
將(a)得到的edge map做bitwise_not

實作結果

(a) Edge map



(b) Sketch-like



留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6