提取身份證資訊-階段1 影象處理
目標
為了實現pc端,提取一張拍攝的身份證照片中人物的資訊,照片背景單一且為淺色,初步使用影象處理知識進行處理。
由淺入深,第一步,使用簡單的圖片,並且有針對性的對某幅圖片進行針對性處理,得到大部分黑色字型的位置框,為後期利用tesseract技術進行文字識別提供區域位置提取。
示例效果
從效果圖可以看出3個問題:
1.不是所有的黑色字型都識別了出來 -->解決:藍色框相近的合併,並且取邊界的最大覆蓋面,只要兩端有字識別出來,中間就沒有問題,也正好適用於tesseract進行連串識別 。
2.人物影象上也有藍色識別框 -->解決:因為是針對身份證的識別,後期可以進行有針對性的校調。
3.身份證擺放不正 -->解決:一開始考慮只要能識別出黑色就好了,而且tesseract一連串識別最佳並且避免了很多單個框識別的調整問題,所以下一階段要加上傾斜校正。
識別步驟
1.提取rgb影象的r通道得到灰度圖(透過對比了rgb聯合灰度、r通道、g通道和b通道影象得出的最合適結果)。
2.影象二值化並且反色,使得背景為黑前景為白(findCountours作用物件為白色),針對這幅圖選擇閾值90,程式碼中設定了調節條,可以檢視不同閾值的處理效果。
3.opencv中findCountours和boundingRect函式進行邊框提取,並進行大小過濾,這裡選擇面積在(30,800)內的矩形框。
4.將邊框畫在原圖,進行顯示(經過初步測試,和二值化後毛糙的圖片相比,tesseract對原圖的提取更加準確)
提取身份證資訊-階段1 影象處理
目標
為了實現pc端,提取一張拍攝的身份證照片中人物的資訊,照片背景單一且為淺色,初步使用影象處理知識進行處理。
由淺入深,第一步,使用簡單的圖片,並且有針對性的對某幅圖片進行針對性處理,得到大部分黑色字型的位置框,為後期利用tesseract技術進行文字識別提供區域位置提取。
示例效果
從效果圖可以看出3個問題:
1.不是所有的黑色字型都識別了出來 -->解決:藍色框相近的合併,並且取邊界的最大覆蓋面,只要兩端有字識別出來,中間就沒有問題,也正好適用於tesseract進行連串識別 。
2.人物影象上也有藍色識別框 -->解決:因為是針對身份證的識別,後期可以進行有針對性的校調。
3.身份證擺放不正 -->解決:一開始考慮只要能識別出黑色就好了,而且tesseract一連串識別最佳並且避免了很多單個框識別的調整問題,所以下一階段要加上傾斜校正。
識別步驟
1.提取rgb影象的r通道得到灰度圖(透過對比了rgb聯合灰度、r通道、g通道和b通道影象得出的最合適結果)。
2.影象二值化並且反色,使得背景為黑前景為白(findCountours作用物件為白色),針對這幅圖選擇閾值90,程式碼中設定了調節條,可以檢視不同閾值的處理效果。
3.opencv中findCountours和boundingRect函式進行邊框提取,並進行大小過濾,這裡選擇面積在(30,800)內的矩形框。
4.將邊框畫在原圖,進行顯示(經過初步測試,和二值化後毛糙的圖片相比,tesseract對原圖的提取更加準確)