一種鐵路油罐車車輛編號(hào)的識(shí)別方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于機(jī)器視覺識(shí)別領(lǐng)域,尤其設(shè)計(jì)一種能夠自動(dòng)完成識(shí)別的,鐵路油罐車車輛編號(hào)的識(shí)別方法。
【背景技術(shù)】
[0002]目前我國的成品油運(yùn)輸主要以大型鐵路油罐車為主,每輛鐵路油罐車都有各自的車型和編號(hào)。我國鐵路油罐車的主流車型為“660”,“670”以及“GQ70”等,分別表示載重為60噸和70噸的油罐車,而編號(hào)作為油罐車的一個(gè)標(biāo)示用以記錄和區(qū)分車輛,其通常印刷于罐體側(cè)面及車輛后車輪位置車架上。在字符位數(shù)上,車型號(hào)通常為3位或4位字母與數(shù)字,編號(hào)為7位數(shù)字。在字符排布方式上為單行排布,其中車輛類型在前,車號(hào)在后,有利于機(jī)器視覺識(shí)別。
[0003]目前煉油企業(yè)在記錄油罐車車輛編號(hào)時(shí)有人工識(shí)別和射頻識(shí)別兩種方式。人工抄記方式工作量大,易產(chǎn)生記錄錯(cuò)誤;射頻識(shí)別方式需要在每輛車上安裝射頻芯片,加大了成本,不易于推廣。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的是提供一種能夠節(jié)約時(shí)間和成本的,鐵路油罐車車輛編號(hào)的識(shí)別方法。
[0005]本發(fā)明是通過以下技術(shù)方案實(shí)現(xiàn)的:
[0006]一種鐵路油罐車車輛編號(hào)的識(shí)別方法,包括以下幾個(gè)步驟:
[0007]步驟一:利用攝像機(jī)拍攝油罐車車體局部側(cè)面灰度圖像;
[0008]步驟二:利用Canny邊緣檢測算子對車體局部側(cè)面灰度圖像進(jìn)行邊緣檢測,得到邊緣圖像;
[0009]步驟三:對邊緣圖像的字符區(qū)域進(jìn)行定位;
[0010]步驟四:對車體局部側(cè)面灰度圖像二值化,得到二值圖像;
[0011]步驟五:對二值圖像的字符區(qū)域進(jìn)行形態(tài)學(xué)處理,去除孤立點(diǎn),連接斷裂字符;
[0012]步驟六:對字符進(jìn)行分割處理,確定單個(gè)字符區(qū)域的位置和范圍,得到單個(gè)字符的最小外接矩形;
[0013]步驟七:對字符進(jìn)行二次分割,設(shè)定字符閾值T,如果字符寬度大于字符閾值T,利用字符閾值T對字符進(jìn)行分割,否則進(jìn)行下一步;
[0014]步驟八:將分割后的字符輸入通用字符識(shí)別引擎,輸出結(jié)果。
[0015]本發(fā)明一種鐵路油罐車車輛編號(hào)的識(shí)別方法還可以包括:
[0016]1、對邊緣圖像的字符區(qū)域進(jìn)行定位的方法為:
[0017]a:對邊緣圖像進(jìn)行垂直投影,從垂直投影圖的左邊向右搜索,找到第一個(gè)投影高度值變化最大的列作為左邊界,然后從垂直投影圖的右邊向左搜索,找到第一個(gè)投影高度值變化最大的列作為右邊界;
[0018]b:對邊緣圖像進(jìn)行水平投影,從水平投影的下邊向上搜索,找到第一個(gè)投影高度值最大的行作為下邊界,從水平投影的上邊向下搜索,找到第一個(gè)投影高度值最大的行作為上邊界,得到初步確定字符區(qū)域;
[0019]c:設(shè)定一個(gè)矩形窗口,利用矩形窗口對初步確定字符區(qū)域進(jìn)行掃描,如果當(dāng)前矩形窗口的水平灰度跳變次數(shù)與閾值K匹配,得到最終字符區(qū)域,如果不匹配,調(diào)整閾值K大小,重復(fù)步驟C,直到得到最終字符區(qū)域。
[0020]有益效果:
[0021]本發(fā)明能夠?qū)崿F(xiàn)油罐車車輛編號(hào)的自主識(shí)別,節(jié)約時(shí)間和成本,提高了生產(chǎn)率。本發(fā)明使用攝像機(jī)拍攝鐵路油罐車車體局部側(cè)面灰度圖像,對灰度圖像計(jì)算邊緣,基于投影法和寬高比特征定位邊緣圖像的字符區(qū)域,對局部車體側(cè)面灰度圖像二值化,對二值圖像的字符區(qū)域進(jìn)行形態(tài)學(xué)處理去除孤立點(diǎn),連接斷裂字符,再進(jìn)行字符分割,最后將單個(gè)字符輸入通用字符識(shí)別引擎進(jìn)行識(shí)別。本發(fā)明既可以判斷鐵路油罐車車型,又可識(shí)別其編號(hào),具有實(shí)施成本低,自動(dòng)化程度高的特點(diǎn)。
【附圖說明】
[0022]圖1:油罐車車輛編號(hào)識(shí)別的流程圖。
[0023]圖2:包含車輛編號(hào)的油罐車局部側(cè)面灰度圖像。
[0024]圖3:油罐車局部側(cè)面灰度圖像的邊緣檢測。
[0025]圖4:字符區(qū)域的二值化。
[0026]圖5:字符的識(shí)別結(jié)果。
【具體實(shí)施方式】
[0027]下面將結(jié)合附圖對本發(fā)明做進(jìn)一步詳細(xì)說明。
[0028]一種鐵路油罐車車型號(hào)識(shí)別的方法,對鐵路油罐車車型號(hào)進(jìn)行識(shí)別,其處理流程圖如圖1所示,包括以下步驟:
[0029]S1.利用攝像機(jī)拍攝油罐車車體局部側(cè)面灰度圖像:
[0030]攝像機(jī)架設(shè)在油罐車側(cè)面,其位置和油罐車距離固定,當(dāng)油罐車通過時(shí),產(chǎn)生觸發(fā)信號(hào)進(jìn)行拍攝,多節(jié)油罐車順序通過時(shí),可以為每節(jié)油罐車拍攝一副油罐車局部側(cè)面圖像,通過調(diào)節(jié)攝像機(jī)安裝位置使得圖像中僅包含車號(hào)區(qū)域,如圖2所示。
[0031]S2.對局部側(cè)面灰度圖像計(jì)算邊緣:
[0032]利用Canny邊緣檢測算子對車體局部側(cè)面灰度圖像進(jìn)行邊緣檢測。首先用高斯濾波器平滑圖像,再用一階偏導(dǎo)的有限差分來計(jì)算梯度的幅值和方向,對梯度幅值進(jìn)行非極大值抑制,檢測并擬合邊緣點(diǎn),如圖3所示。
[0033]S3.基于投影法和寬高比特征定位邊緣圖像的字符區(qū)域:
[0034]定義水平(垂直)投影特征值為每一行(列)白像素點(diǎn)個(gè)數(shù)的總和,首先對邊緣圖像進(jìn)行垂直投影,從垂直投影圖的左邊向右搜索,找到第一個(gè)投影高度值變化最大的列作為左邊界,同理從垂直投影圖的右邊向左搜索,找到第一個(gè)投影高度值變化最大的列作為右邊界。
[0035]其次邊緣圖像進(jìn)行水平投影,從水平投影圖的下邊向上搜索,以第一個(gè)投影高度值變化最大的行作為下邊界,從水平投影圖的上邊向下搜索,以第一個(gè)投影高度值變化最大的行作為上邊界。以此初步確定字符區(qū)域。
[0036]基于寬高比特征,根據(jù)字符區(qū)域先驗(yàn)知識(shí)確定一個(gè)寬高比一定的矩形窗口對初步確定的字符區(qū)域進(jìn)行掃描,若當(dāng)前窗口的水平灰度跳變次數(shù)與先驗(yàn)知識(shí)匹配,則認(rèn)為字符區(qū)域,若不匹配,適當(dāng)擴(kuò)大字符區(qū)域直至匹配,最終實(shí)現(xiàn)準(zhǔn)確定位。
[0037]S4.對車體局部側(cè)面灰度圖像二值化:
[0038]利用OTSU方法對油罐車局部側(cè)面圖像進(jìn)行二值化。首先計(jì)算油罐車局部側(cè)面灰度圖像的灰度直方圖概率函數(shù),其次根據(jù)閾值t將灰度級(jí)分為兩類Ctl和C 1并計(jì)算兩類出現(xiàn)的概率和均值,最后計(jì)算兩類的類內(nèi)方差、類間方差和總體方差并以類間方差和總體方差的比值n (t)為判決準(zhǔn)則反推出最佳閾值t,如圖4所示。
[0039]S5.對二值圖像字符區(qū)域進(jìn)行形態(tài)學(xué)處理,去除孤立點(diǎn),連接斷裂字符:
[0040]采用形態(tài)學(xué)開、閉運(yùn)算對字符區(qū)域進(jìn)行處理,去除孤立點(diǎn),連接斷裂字符。
[0041]S6.對字符進(jìn)行分割處理,確定單個(gè)字符區(qū)域的位置和范圍并產(chǎn)生單個(gè)字符的最小外接矩形:
[0042]利用連通域分析,確定每個(gè)字符的中心位置和上下左右距離中心最遠(yuǎn)的像素點(diǎn)以此產(chǎn)生矩形邊界將單個(gè)字符包括其中,此為單個(gè)字符的最小外接矩形。
[0043]S7.根據(jù)油罐車字符先驗(yàn)知識(shí)對字符做進(jìn)一步分割:
[0044]為判斷字符之間是否存在像素粘連,根據(jù)油罐車字符先驗(yàn)知識(shí),設(shè)定字幅寬度閾值T,若字幅寬度大于閾值T,則該字符與其他字符存在粘連,利用閾值T對字符做強(qiáng)制分割。
[0045]S8.將分割后的字符輸入通用字符識(shí)別引擎,識(shí)別并存儲(chǔ)輸出結(jié)果:
[0046]將單個(gè)字符輸入通用字符識(shí)別引擎中識(shí)別并記錄輸出結(jié)果,如圖5所示。
【主權(quán)項(xiàng)】
1.一種鐵路油罐車車輛編號(hào)的識(shí)別方法,其特征在于,包括以下幾個(gè)步驟: 步驟一:利用攝像機(jī)拍攝油罐車車體局部側(cè)面灰度圖像; 步驟二:利用Canny邊緣檢測算子對車體局部側(cè)面灰度圖像進(jìn)行邊緣檢測,得到邊緣圖像; 步驟三:對邊緣圖像的字符區(qū)域進(jìn)行定位; 步驟四:對車體局部側(cè)面灰度圖像二值化,得到二值圖像; 步驟五:對二值圖像的字符區(qū)域進(jìn)行形態(tài)學(xué)處理,去除孤立點(diǎn),連接斷裂字符; 步驟六:對字符進(jìn)行分割處理,確定單個(gè)字符區(qū)域的位置和范圍,得到單個(gè)字符的最小外接矩形; 步驟七:對字符進(jìn)行二次分割,設(shè)定字符閾值T,如果字符寬度大于字符閾值T,利用字符閾值T對字符進(jìn)行分割,否則進(jìn)行下一步; 步驟八:將分割后的字符輸入通用字符識(shí)別引擎,輸出結(jié)果。
2.根據(jù)權(quán)利要求1所述的一種鐵路油罐車車輛編號(hào)的識(shí)別方法,其特征在于:所述的對邊緣圖像的字符區(qū)域進(jìn)行定位的方法為: a:對邊緣圖像進(jìn)行垂直投影,從垂直投影圖的左邊向右搜索,找到第一個(gè)投影高度值變化最大的列作為左邊界,然后從垂直投影圖的右邊向左搜索,找到第一個(gè)投影高度值變化最大的列作為右邊界; b:對邊緣圖像進(jìn)行水平投影,從水平投影的下邊向上搜索,找到第一個(gè)投影高度值最大的行作為下邊界,從水平投影的上邊向下搜索,找到第一個(gè)投影高度值最大的行作為上邊界,得到初步確定字符區(qū)域; c:設(shè)定一個(gè)矩形窗口,利用矩形窗口對初步確定字符區(qū)域進(jìn)行掃描,如果當(dāng)前矩形窗口的水平灰度跳變次數(shù)與閾值K匹配,得到最終字符區(qū)域,如果不匹配,調(diào)整閾值K大小,重復(fù)步驟C,直到得到最終字符區(qū)域。
【專利摘要】本發(fā)明公開了一種鐵路油罐車車輛編號(hào)的識(shí)別方法。包括以下步驟:利用攝像機(jī)拍攝油罐車車體局部側(cè)面灰度圖像;對灰度圖像計(jì)算邊緣;對邊緣圖像的字符區(qū)域進(jìn)行定位;對車體局部側(cè)面灰度圖像二值化;對二值圖像的字符區(qū)域進(jìn)行形態(tài)學(xué)處理,去除孤立點(diǎn),連接斷裂字符;對字符進(jìn)行分割處理,確定單個(gè)字符區(qū)域的位置和范圍;將分割后的字符輸入通用字符識(shí)別引擎,輸出結(jié)果。本發(fā)明具有實(shí)施成本低,自動(dòng)化程度高的特點(diǎn)。
【IPC分類】G06K9-54, G06K9-00
【公開號(hào)】CN104657726
【申請?zhí)枴緾N201510117537
【發(fā)明人】項(xiàng)學(xué)智, 包文龍, 王猛, 徐旺旺, 白二偉, 葛長赟, 張磊, 喬玉龍
【申請人】哈爾濱工程大學(xué)
【公開日】2015年5月27日
【申請日】2015年3月18日