用Python 實現答題卡識別 [影像處理/圖像識別SOP]
用Python 實現答題卡識別 [影像處理/圖像識別SOP]
資料來源: https://mp.weixin.qq.com/s/MacFACYV6_It1s1ZMCC20A
https://github.com/inuyasha2012/answer-sheet-scan
思路
讀入圖片,做一些預處理工作。
進行輪廓檢測,然後找到該圖片最大的輪廓,就是答題卡部分。
進行透視變換,以去除除答題卡外的多餘部分,並且可以對答題卡進行校正。
再次檢測輪廓,定位每個選項。
對選項圓圈先按照豎坐標排序,再按照行坐標排序,這樣就從左到右從上到下的獲得了每個選項輪廓。
對每個選項輪廓進行檢查,如果某個選項輪廓中的白色點多,說明該選項被選中,否則就是沒被選上。
細節部分看過程:
1、預處理(去噪,灰度,二值化)
2、輪廓檢測
3、透視變換 [圖像/影像 投影變形校正]
4、輪廓檢測,檢測每個選項
5、畫輪廓的外接圓,排序,定位每個選項
6、選項檢測