s1093307 Homework #2
1122 Digital Image Processing Assignment #2
學號:s1093307 姓名:蔡芷妍
主題: 邊緣偵測與圖像二值化
專案目標:
靜香帶領一群幼稚園小朋友進行認識線條的活動,為了讓小朋友實際觀察元智大 學校園環境並將主要景物輪廓線條描繪出,她規劃利用影像處理課程所學習的邊緣偵 測(edge detection)與二值化演算法(thresholding)等技術,寫一個程式將所拍攝一些元智 建築物與風景照片,處理後列印成一個繪本提供小朋友物件線條學習與臨摹。 由於成本考量,靜香將以黑白圖案列印繪本。另一方面,考量到小朋友的年紀及本 次活動主題為認識線條圖案,希望輸出的結果包括明顯的景物線條如建築物或裝置藝 術外觀輪廓,而避免過多複雜邊緣如樹葉,草地的細節呈現等。
撰寫一個程式提供靜香將彩色照片快速生成黑白輪廓線條圖案,協助她順利設 計此次活動所需的繪本。
開發平台:Microsoft Windows 11, Visual Studio 2019, C++, OpenCV
程式架構與功能說明:
編寫回調函數onTrackbar(),以響應滑動條數值的變化,該函數對圖像進行高斯模糊、邊緣檢測和二值化處理,並顯示處理後的圖像。
在main()函數中,獲取用戶輸入的圖像路徑,並讀取原始彩色圖像,如果讀取失敗,則輸出錯誤訊息並退出。
將原始彩色圖像轉換為灰度圖像。
創建兩個滑動條,分別用於調整邊緣檢測的下限閾值和上限閾值,並設置回調函數為onTrackbar()。
調用onTrackbar()函數進行一次初始的邊緣檢測和二值化處理。
輸出結果:
留言
張貼留言