s1101412 Homework #2
1122
Digital Image Processing Assignment #2 報告
學號:s1101412 姓名:李東樺
主題:
邊緣偵測與圖像二值化
專案目標:
利用opencv撰寫一個程式,讓使用者先輸入要編輯的檔案名稱,撰寫程式使其移除除了邊線的細節, 快速生成黑白輪廓的線條圖案,並輸出修改後的檔案。
開發平台:Microsoft Windows 10,
Visual Studio 2022, OpenCV 4.90, C++
程式架構與功能說明:
使用者在console輸入圖片的檔案名稱,首先先將彩色的圖片處理為灰階的圖片,之後再利用高斯模糊來減少噪點,最後使用Canny找到圖片的邊緣線條儲存這張圖片並取名為result.jpg。預設的canny threshold分別為lower = 100、upper = 200,若使用者不喜歡第一次產生出的圖片可以手動利用上方的trackbar調整canny threshold的數值
使用到的function:
l cvtColor(image,
gray_image, COLOR_BGR2GRAY) : 將彩色的圖片轉為灰階
l GaussianBlur(gray_image,
gaussian_image, Size(3, 3), 0) : 利用高斯模糊來減少噪點
l Canny(gaussian_image,
edges, lower_threshold, upper_threshold) : 利用canny找到圖片的邊緣線條
成果展示與討論:
執行範例1:
執行範例2:
執行範例3:
執行範例4:
執行範例5:
留言
張貼留言