肖銘涵,鄧定南,林厚健,陳俊波,黃勇源
(嘉應學院 物理與電子工程學院 ,廣東梅州,514015)
近年來,我國電子商務的快速發展,促進了國內快遞業務量的持續增長。國家郵政局公布了2022年上半年郵政行業運行情況,指出上半年全國快遞服務企業業務量累計完成512.2億件,業務收入累計完成4982.2億元。快遞行業的穩健發展離不開智慧物流系統的建設。快遞自動分揀系統是智慧物流系統中重要一部分,一般由輸入、智能識別、智能分流、輸出等模塊組成。智能識別模塊可通過機器視覺技術和深度學習技術識別快遞公司信息、快遞條形碼和三段碼、客戶地址和電話等信息。將識別的快遞信息傳輸給計算機,通過智能硬件將快遞分類,實現智能分流。因此,快遞信息的準確識別是實現智能分流的關鍵。
基于機器視覺的快遞信息識別方法主要是利用各種圖像處理算法或軟件,實現快遞信息的自動定位和識別。邵妍等人提出一種概率統計模型,通過計算最小地址要素與收貨點的對應概率分布,判斷出對應快遞的收貨點地址,實現了快遞地址的自動分類,自動分類準確率可達99%以上,分類耗時為0.43ms[1]。李毅榮等人基于Tesseract-OCR開發了安卓手機識別應用系統,實現了快遞單手機號碼數字的準確識別和快速撥號,可提高快遞派送效率[2]。孫川等人通過手機號碼區域定位、二值化、數字分割、數字結構特征識別等步驟,實現了快遞單手機號碼數字識別,準確率為98%,耗時為5.52ms[3]。曾志鴻等人提出一種基于HALCON的快遞地址識別方法,利用HALCON軟件對快遞照片進行灰度化、圖像增強、仿射變換、圖像分割等預處理操作,并創建了字符識別分類器,實現了快遞地址信息的準確識別[4]。朱賀開發了一種基于LabVIEW的快遞單地址自動識別系統,實現了條形碼和手寫地址信息的準確識別,識別率分別為99.4%和92.7%[5]。王敏等人提出了一種基于數字圖像處理的物流分揀方法,通過面單分割、區域定位、字符識別等步驟,實現了快遞地址信息的識別,并開發了MATLAB數據處理系統,耗時在350ms左右[6]。王寧等人提出一種基于HSV空間的MSRCR增強算法,實現了高噪聲環境下快遞單條形碼的快速定位識別[7]。
深度學習技術的發展,也廣泛應用于快遞目標信息檢測。基于深度學習的快遞信息識別方法主要是通過大量樣本數據,搭建深度學習模型進行參數訓練,最終實現快遞信息的定位和識別。韓貴金等人利用YOLOv4算法建立快遞面單Logo檢測模型,實現快遞面單三段碼信息的檢測,準確率可達96.1%以上,提高了快遞分揀效率[8]。孫東通過引入多尺度檢測結構和特征合并網絡,優化了YOLOv3算法,并基于QT軟件開發了快遞包裝信息采集識別系統,實現了不同程度遮擋、污染條形碼的準確識別[9]。白文杰搭建了ResNet神經網絡,實現了快遞面單三段碼信息的識別,三段碼定位準確率為76%,定位準確的三段碼信息識別準確率為99.13%[10]。周為鵬等人利用Yolov5深度學習目標檢測模型實現快遞條形碼的定位,檢測精度為93.6%[11]。
為了提高快遞分揀效率,本文提出一種基于OpenCV和Tesseract-OCR的快遞地址信息識別系統。搭建了快遞單圖像硬件采集系統。利用OpenCV對采集的快遞單圖像進行預處理,包括顏色識別、灰度化處理、閾值化處理、形態學處理等操作。將預處理后的快遞單圖像傳入Tesseract-OCR識別引擎,實現了準確的快遞地址信息識別。對簡單快遞地址信息和復雜快遞地址信息進行了識別實驗。實驗結果表明,所提方法可實現準確的快遞地址信息識別,可應用于快遞分類,提高快遞分揀效率。
快遞地址信息識別系統由硬件采集系統和軟件處理系統組成。硬件采集系統示意圖如圖1所示。硬件采集系統包括相機、支架、傳送帶等。相機采用300萬寬動態攝像頭(KS3A244),分辨率為 2048*1536,像素大小為 2.2μm,鏡頭對焦方式為手動調焦,焦距為6mm。

圖1 快遞地址信息識別硬件采集系統示意圖
軟件處理系統主要包括預處理模塊和識別模塊。預處理模塊主要對相機采集的快遞照片進行預處理,提高后續地址信息識別的準確性。預處理模塊利用OpenCV進行處理。OpenCV是一個基于Apache2.0許可(開源)發行的跨平臺計算機視覺和機器學習軟件庫,廣泛應用于數字圖像處理、機器學習、模式識別等領域。OpenCV用C++語言編寫,它具有C++,Python,Java和MATLAB接口,并支持 Windows,Linux,Android和Mac OS,主要傾向于實時視覺應用。預處理模塊流程示意圖如圖2所示。預處理模塊包括顏色識別、灰度化處理、閾值化處理、形態學處理。顏色識別主要是將采集的快遞單照片彩色RGB圖像轉為HSV圖像,便于標記和分割快遞單中目標區域。灰度化處理是將快遞單彩色圖像轉化為灰度圖像,可采用平均值法、加權平均法、最大值法等方法進行處理。閾值化處理的目的是區域分割,提取出快遞單中的目標區域,可采用一般閾值法、全局閾值法、自適應閾值法等方法進行處理。形態學處理的目的是提取快遞單中有用的圖像分量,如邊界、骨架等,可采用膨脹、腐蝕、開運算、閉運算等操作進行處理。

圖2 預處理模塊流程示意圖
識別模塊主要是提取預處理后快遞單的文字、數字等信息,實現快遞地址信息的識別。識別模塊利用Tesseract-OCR 來實現。OCR(Optical Character Recognition)為光學字符識別,最早由德國科學家Tausheck于1929年提出。Tesseract早期由惠普實驗室開發,現由谷歌維護,可支持漢字識別,是一種高精度和高靈活度的開源OCR識別引擎。Tesseract-OCR引擎使用了卷積神經網絡(Convolutional Neural Networks,CNN)來獲得文字圖像中的特征,再以長短期記憶人工神經網絡(Long Short-Term Memory,LSTM)來訓練學習目標圖像中的樣本數據,并進而得到具有內在規律和表示層次的樣本訓練集,以用于文字識別。本實驗訓練庫采用谷歌公司的漢字訓練數據文件,Tesseract-OCR訓練流程示意圖如圖3所示。識別的基本思路是引用訓練好的深度學習文件,并輸入已經處理好的圖像,再建立一個存儲空間來臨時保存識別到的文字,并給予顯示,最后釋放內存,以空出資源,方便接下來的使用。

圖3 識別模塊訓練流程示意圖
首先我們進行簡單快遞信息識別驗證實驗。圖4是灰度化處理結果分析。圖4(a)是相機采集到的原始快遞單彩色照片,快遞信息較為簡單,只有“廣東廣州”四個漢字。在本實驗中,因為快遞信息較為簡單,所以感興趣目標區域就是采集區域,可省略顏色識別這一步驟。圖4(b)是采用平均值法處理后的灰度圖像。圖4(c)采用加權平均值處理后的灰度圖像,加權值分別取ωR=0.299、ωG=0.587、ωB=0.149。從圖4(b)和 4(c)可看出,平均值法和加權平均值法效果相當。最大值法是將Red、Green、Blue三種顏色通道中最大像素值作為灰度化后的像素值。圖4(d)是最大值法處理后的灰度圖像,可看出最大值法處理后的圖像亮度較高,便于后期的閾值化處理。因此,灰度化處理可采用最大值法。

圖4 灰度化處理結果分析
對灰度化處理后的快遞單圖像進行閾值化處理,可以過濾字體多余的色彩,提高文字識別的準確性。圖5為閾值化處理結果分析。圖5(a)為采用自適應閾值法處理后的圖像。雖然自適應閾值化處理去除了不需要的圖像信息,但也有部分感興趣區域沒有分離出來。圖5(b)是采用一般閾值法處理后的圖像,人為設定的閾值為T=220。可看出,一般閾值法通過調整確定最優閾值,去除了噪聲點,將文字信息成功分離出來。因此,閾值化處理可采用一般閾值法。

圖5 閾值化處理結果分析
經過灰度化和閾值化處理后的圖像字符所占像素點數量較多,相對來說字體較粗,可以考慮先以腐蝕操作除去細小噪聲點,再以膨脹操作修復字體中因腐蝕操作而產生的斷點。所以可選擇先執行一次開運算操作,然后再進行一次膨脹操作,保證字體不會過于纖細,處理后圖像如圖6(a)所示。光學字符識別部分使用Tesseract-OCR庫編寫,識別庫采用谷歌公司的漢字訓練數據文件。輸入預處理后的圖像,引用訓練好的深度學習文件,文字識別結果如圖6(b)所示。實驗結果表明,本文所提方法可實現快遞地址信息的準確識別。

圖6 (a)形態學處理結果 (b)文字識別處理結果
為了進一步驗證所提方法的可行性和有效性,我們進行了復雜快遞地址信息識別驗證實驗。圖7(a)為日常生活中使用的快遞單照片,具有較復雜的快遞信息,包括姓名、電話、單號、地址等。為了獲取藍色框目標區域信息,需要將彩色RGB圖像轉換成HSV圖像。顏色識別處理后的圖像如圖7(b)所示,可看出通過色彩空間變換后,不同顏色的區域明顯不同。只需要對原圖中藍色框區域進行識別并定位,就能得到需要分割的坐標點,進而對原圖進行區域分割處理,提取出感興趣的藍色框區域。

圖7 (a)快遞單RGB圖像(b)HSV圖像
對區域分割后的彩色圖像執行灰度化處理、閾值化處理、形態學處理等操作,得到的圖像如圖8(a)所示。預處理后的圖像信息比原圖少了部分噪聲,提高了光學字符識別的準確性。利用Tesseract-OCR進行光學字符識別后的結果如圖 8(b)所示。圖 8(b)的處理結果中也給出了圖 7(a)中分割藍色框目標區域的四個坐標,分別為(5,910)、(5,650)、(994,650)、(994,910)。實 驗 結 果 表 明,利 用 OpevCV和Tesseract可實現準確的快遞地址信息識別。

圖8 (a)預處理后圖像 (b)文字識別處理結果
本文提出了一種基于OpenCV和Tesseract-OCR的快遞地址信息識別方法。為實現快遞地址信息的自動識別,使用開源計算機視覺庫OpenCV對采集的快遞單圖像進行預處理,通過顏色識別定位識別區域,通過灰度化處理、閾值化處理、形態學處理等操作得到待識別區域圖像信息。然后利用Google開源光學字符識別引擎Tesseract-OCR識別快遞地址信息。驗證實驗結果表明,所提方法可以有效和準確識別快遞地址信息,有利于提高快遞分揀效率。下一步將繼續優化算法,避免快遞位置和光照變化造成的錯誤識別。