2019年6月6日 星期四

s1051447的作業5


1072 CS362 影像處理概論Digital Image Processing Assignment #5
1051447 梁雅錡
作業題目: 
請撰寫一個程式,利用數學型態學影像處理運算,計算出所附圖像(共三張)每張圖像中圍棋個數。

撰寫過程:
(1)   作業系統環境:Windows
(2)   程式語言:Python
(3)   程式開發軟體:Pycharm
(4)   開發環境:
開發環境名稱
使用情形
Python 3.6
採用Python 3.6編寫程式。
OpenCV.4.0.0.21
利用OpenCV 4.0.0.21的套件讀取讀片、對圖片進行各式轉換、以及存取圖片檔。
Numpy 1.15.4
使用Numpy 1.15.4調整圖片的各個像素變動。
Matplotlib2.1.2
Matplotlib2.1.2共同畫出原圖與經衰減、膨脹的處理過程,也可存取所有輸出內容。

(5)   程式內容:
1.首先使用cv2.imread(img,0)將讀取圖轉灰階後,使用cv2.threshold()的域值設定來達到二值化灰階圖的作用;再用cv2.GaussianBlur()來去除雜質。

2.透過腐蝕和膨脹的處理來偵測棋子個數,只需設置好結構元素,然後分別調用cv2.erode(...)cv2.dilate(...)函數即可,其中第一個參數是需要處理的圖像,第二個是結構元素,就可以得到處理好的圖像。

3.其中,cv2.erode()cv2.dilate()均需要設定kernel參數來定義結構元素,我是透過cv2.getStructuringElement()函示來定義,並進行實作。

4.最後用cv2.imshow()來展示每個步驟的處理圖片。

5.使用cv2.imwrite()存取每一個對圖像進行處理後的圖片。




(6)展示結果
圖片 IMG_5702 測試結果:
(偵測結果21)





圖片 IMG_5703 測試結果:
(偵測結果32)



圖片 IMG_5704 測試結果:
(偵測結果32)









沒有留言:

張貼留言