2022年6月8日 星期三

s1083334 作業7

- 作業說明

利用數學型態學影像處理運算(erode(), dilate()等函式),計算出所附圖每張圖像中圍棋個數。請呈現經由數學型態學影像處理運算後的圖像,同時要呈現你程式輸出棋子數量的螢幕截圖。

 - 開發環境

Windows 10

Visual Studio 2017

OpenCV - 4.5.0

- 實作方式

用灰階讀入圖像,因為此次的照片較大,先用resize()調整到適當大小。

用threshold()二值化影像,並將圖像黑白值改成相反,才可以做後續運算。

用erode()達到腐蝕的效果,可以去除影像裡的噪音,避免圖案相連的情形。

再用dilate()填滿一些圖案的凹洞處,使更平滑,邊緣變圓順。

HoughCircles()可以偵測到圖像中的圓形,利用它來判斷並記錄下來,輸出圓形總數。

最後用circle()在原圖中畫出所有的圓形。

- 結果


圖一,20/24


圖二,28/31


圖三,30/31



沒有留言:

張貼留言