2021年6月9日 星期三

s1073345 影像處理作業7

 一、 作業說明: 

請撰寫一個程式,利用數學型態學影像處理運算(erode(), dilate()等函式),計算出所附圖像(共三張)每張圖像中圍棋個數。

  • 請在部落格呈現經由數學型態學影像處理運算後的圖像,同時要呈現你程式輸出棋子數量的螢幕截圖。 
  • 程式不一定可以算出正確棋子數量,越接近正確答案越好!

二、 使用環境: 
    Window10
    Visual Studio 2019
    Python3.8
    OpenCV 4.5.1

三、 實作方法:
1. 使用cv2.imread()讀取圖片
2. 使用cv2.threshold()對影像作二值化
3. 使用cv2getStructuringElement()產生用來作侵蝕與膨脹的Structure Element
4. 使用cv2.erode()和cv2.dilate()對影像進行侵蝕與膨脹
5. 使用cv2.findContours()偵測輪廓找出圖片中棋子的各數
6. 使用cv2.drawContours()於原圖中畫出輪廓
7. 顯示出偵測的棋子數目,且使用imshow()顯示出原圖與二值化和侵蝕與膨脹及畫出輪廓的結果

四、 實作結果:
1. "IMG_5702.JPG":實際24個,偵測到21個棋子


2. "IMG_5703.JPG":實際31個,偵測到29個棋子


3. "IMG_5704.JPG":實際31個,偵測到31個棋子



沒有留言:

張貼留言