s1091523 Homework #2

 1122 Digital Image Processing Assignment #2 報告

學號 s1091523          姓名:郭芳妤

 

主題: 邊緣偵測與圖像二值化

專案目標:

        寫一個Opencv程式,利用邊緣偵測與圖像二值化等影像處理技術,將彩色圖片轉換成黑白線條輪廓圖片,並且避免過多的複雜邊緣,可以作為製作繪本的素材。

 

開發平台:

Microsoft Windows 11, Visual Studio Code, OpenCV 4.9.0, Python 3.11.0

 

程式說明:

        主要流程為將彩色圖片轉灰階圖片後,使用Gaussian Blur來模糊影像,再利用Canny偵測邊緣,輸出二值化影像。

        為了避免過多的複雜邊緣,我先做一次邊緣偵測,在第一次做完邊緣偵測後,將得到的二值化圖切分成好幾個矩形區域進行遍歷,針對每個區域計算(白色像素點數/黑色像素點數)的比例,若大於35%,則強化模糊該區域,以此方式嘗試減少複雜度。

 

功能:

1.     Trackbar調整影像。

blur: 影像模糊程度(數值小模糊程度較小)

low: Canny函式的low_threshold (低於此數值不會視為邊緣)

high: Canny函式的high_threshold (高於此數值會視為強邊緣保留)

介於門檻值之間則視邊緣連接情況決定是否保留。

invert: 將圖片黑白反轉。

2.     按下S鍵可存檔。

3.     考量繪本繪圖需求,可將圖片轉為白底黑色線條。

4.     按下Esc或關閉視窗可結束程式。

 

成果:













 

 









留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1061637 作業6