基於統計方法定位二維碼

laoki發表於2018-12-03

二維碼定位方法很多,比較常見的是 基於 連通域分析,形狀結構分析方法。

不過這些方法不太穩定,很依賴邊緣的準確性,依賴二值化的效果。

影象二值化是一個比較複雜的議題,並沒有特別優秀的通用方法。

比較靠譜的是基於統計的方法,經過實踐我設計了二維碼搜尋演算法:

1. 膨脹,然後統計灰度極大的灰度塊

2.粗定位 二維碼可能位置,然後使用 區域性 x方向的線密度, y方向線密度 搜尋 最佳邊界。

效果如下:

 

中間結果圖:

紅色的框是 粗定位的 矩形區域,然後根據 區域的 密度,進行四周生長,變成 精定位的 二維碼。

(所有的 姓名和身份證,都已經塗抹)

這種定位演算法主要的準則是 統計方式,能夠對干擾很重的邊界進行精定位,有效的避開了 二值化的連通域分析演算法。

 

相關文章