s1091447 作業2

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

作業說明 :

    撰寫一個程式,以灰階模式讀取一張圖像 imread(path, IMREAD_GRAYSCALE)

(a)利用 Sobel Operators 偵測並輸出邊緣成分圖

(b)設計一個類似素描線條的自畫像圖案。(想想:如何使用邊緣偵測所得到的點,結合成看似素描筆畫出的線條?)

開發環境: 

   Windows 11+ Visual Studio 2022 + OpenCV 4.7.0

程式碼說明:

(a)   edge

使用cv2.Sobel(圖片, 圖像深度, x方向, y方向, 卷積核),分別對水平方向和垂直方向的梯度進行計算,再使用cv2.addWeighted()進行加權,得到edge

(b)  sketch

首先創造一個和灰階圖案相同大小的但元素全部為0的矩陣,並且設定一個閾值,之後檢查edge的每一個pixel,若此值大於閾值則代表其為邊緣,因此對應到剛才的全0矩陣並去做修改,最後全0矩陣就會變成sketch,但由於目前是黑色背景白色線條,所以最後還要將圖片進行黑白反轉。


 

留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1