摘 要:介紹了一種水表號碼圖像讀取系統(tǒng)的設(shè)計方案并詳細分析了各功能模塊的實現(xiàn)。使用CMOS圖像傳感器采集水表號碼圖像,在DSP中進行識別處理,并將識別結(jié)果在液晶模塊上直觀顯示,在硬件采集器" title="采集器">采集器中實現(xiàn)號碼圖像的識別。
關(guān)鍵詞:圖像傳感器? DSP 水表號碼? 液晶模塊
?
?
??? 對于大多數(shù)自來水公司來說,人工抄表" title="抄表">抄表是一項工作量巨大的工作,而且在抄表過程中由于抄表不到位,私自調(diào)表改讀數(shù)等人為因素造成的水損是全部水損的主要部分。市場上目前有兩種水表遠傳系統(tǒng)投入使用:一種是IC卡式水表[1],它采用的是先付費后使用的原則,避免了水費糾紛現(xiàn)象;另一種是三表(水電煤氣)遠傳抄表系統(tǒng)[2-3],這種自動抄表系統(tǒng)采用電信號將水表讀數(shù)傳到戶外查表間或物業(yè)管理辦公室。這兩種產(chǎn)品由于價格較高,維護量較大,且需帶電工作,易造成停電漏記,推廣有一定難度。國外的全電子式流量表雖然計量精度高,使用方便,但價格昂貴,不適合我國國情。而針對水表盤字輪號碼識別的硬件裝置目前國內(nèi)還未見報道。水表號碼識別關(guān)鍵在于有準確的數(shù)據(jù)采集和可靠的通訊條件。本文進行了基于DSP硬件電路的水表盤字輪號碼讀取研究,即在硬件采集器中完成對水表盤字輪號碼的采集與識別。
1 系統(tǒng)總體設(shè)計
??? 系統(tǒng)采用Omnivision公司的CMOS數(shù)字圖像傳感器OV7620采集水表盤字輪號碼圖像, 并選用TI公司的TMS320VC5416芯片對采集到的水表號碼進行識別處理,最終將識別后的水表號碼圖像在LCD上顯示,即在硬件采集器中完成圖像識別。
?水表盤字輪號碼讀取的研究分為三大部分:水表盤號碼采集模塊、水表盤號碼圖像處理識別模塊及水表盤號碼顯示模塊。本系統(tǒng)工作過程是圖像傳感器經(jīng)過DSP初始化之后,將輸入的模擬視頻信號經(jīng)過必要的預處理,輸出標準的數(shù)字視頻信號,同時產(chǎn)生場同步信號" title="同步信號">同步信號、行同步信號和像素時鐘信號等。系統(tǒng)初始化后,采用查詢同步信號的方式將數(shù)字圖像保存到數(shù)據(jù)存儲器中。通過數(shù)字圖像傳感器OV7620采集[4]水表盤字輪號碼,然后在以DSP芯片為主的硬件電路中進行識別處理。最終通過LCD直觀地顯示出水表號碼。同時可采用并口方式將原始圖像傳到計算機中,作為識別后的圖像的參考。圖1為水表盤字輪號碼讀取系統(tǒng)的原理框圖。
?
?
2 系統(tǒng)實現(xiàn)
??? 首先將數(shù)字傳感器OV7620的攝像頭安裝在字輪盤垂直上方(采集鏡頭朝下),將采集到的號碼圖像存儲在DSP內(nèi)部的RAM中,然后利用DSP的BOOTLOAD功能將號碼識別程序下載到DSP內(nèi)部高速的RAM中,并利用采集圖像的回掃時間識別水表號碼,最終在LCD上顯示識別后的號碼圖像。
2.1 圖像采集模塊
OV7620屬于電平觸發(fā),當DSP上電時設(shè)置為高,BOOTLOADER結(jié)束時/OVCE有效(它是通過隔離芯片菲利普公司的74ALVCH16245來實現(xiàn)的)。系統(tǒng)加電復位后,先由DSP的HPI口產(chǎn)生IIC總線[5]信號來對OV7620工作寄存器進行初始化,然后OV7620即可開始按要求輸出圖像信號,包括行同步信號HREF、場同步信號VSYNC、像素時鐘信號PCLK和數(shù)字圖像信號。本系統(tǒng)數(shù)據(jù)輸出只采集OV7620低8位(Y7—Y0)亮度數(shù)據(jù),目的是減少數(shù)據(jù)的處理量。
本系統(tǒng)采用SCCB編程模式完成對OV7620的初始化,即將DSP的HPI口設(shè)置為GPIO口來模擬SCCB總線協(xié)議,將HPI中的HD2連接SIO_D,HD3連接SIO_C,通過軟件編程模擬SCCB總線協(xié)議。配置的具體方法是在寫寄存器過程中先發(fā)送OV7620的ID地址,然后發(fā)送寫數(shù)據(jù)的目地寄存器地址,接著是要寫的數(shù)據(jù),從而實現(xiàn)采集過程起始點的精確控制。
兩線SCCB功能框圖如圖2所示。
?
本系統(tǒng)采用VSYNC的上升沿" title="上升沿">上升沿表示一幀新的圖像的到來,水平同步信號HREF高時開始有效數(shù)據(jù)采集,用PCLK上升沿的到來表明數(shù)據(jù)的產(chǎn)生,且每來一個上升沿系統(tǒng)就傳輸一位數(shù)據(jù),在HREF為高期間系統(tǒng)共傳輸640位數(shù)據(jù)。也就是說:在一幀圖像中,即VSYNC為高電平期間,HREF會出現(xiàn)480次高電平。而下一個VSYNC信號上升沿到來則表明分辨率640×480的圖像采集過程的結(jié)束。各個同步信號的極性選擇通過設(shè)置OV7620對應的寄存器完成。
2.2 圖像處理模塊
2.2.1 硬件
映射存儲器的配置受到5416外部管腳MP/MC以及處理器模式狀態(tài)寄存器PMST的控制,因此本文所采用的方案是MP/MC=0且OVLY=1的情況。其中OVLY為16位寄存器PMST的第5位,當5416上電硬復位且MP/MC=0時,片上物理ROM會映射程序存儲器的FF00~FFFF地址范圍內(nèi),芯片自動調(diào)用片上ROM中固化的Boot loader程序。在MP/MC=0,OVLY=1模式下,實際能訪問的存儲區(qū)是很有限的,5416的ROM區(qū)基本上保留給DSP芯片本身,DARAM區(qū)同時被映射到程序映射存儲區(qū)(PROGRAM區(qū))和數(shù)據(jù)映射存儲區(qū)(DATA區(qū))上相同的地址范圍上。本系統(tǒng)在軟件方面所需的存儲空間中水表號碼圖大約占8KB,程序約4KB(并利用了OV7620的開窗處理功能)。鑒于5416的片上資源和本系統(tǒng)的需要,外擴了一個FLASH(利用DSP5416的BOOTLOAD功能)。
FLASH39VF400的16位數(shù)據(jù)線與DSP5416的16位數(shù)據(jù)線對應相連,并將它的片選(/DS)和讀寫信號(R/W)與DSP的對應信號相連,以此實現(xiàn)BOOTLOADER功能。根據(jù)DSP系統(tǒng)程序加載的特點,將FLASH地址為0X8000~0XFFFF的存儲區(qū)在程序下載的過程中映射到DSP的數(shù)據(jù)空間。
2.2.2 硬件電路中的軟件設(shè)計
?本系統(tǒng)將采用DSP所兼容的C語言進行系統(tǒng)的軟件開發(fā),包括對信號處理芯片DSP及數(shù)字傳感器OV7620的初始化等設(shè)計,并用TI公司的開發(fā)工具CCStudio完成系統(tǒng)的軟件調(diào)試工作。本系統(tǒng)在調(diào)試過程中將根據(jù)采集到圖像的實際情況來調(diào)整軟件程序。水表號碼識別的難點在于字輪進位不完整時的識別處理,與平面識別數(shù)字的區(qū)別在于字輪上數(shù)字是在翻動的,因此幾個碼盤進位一半時容易出錯。在識別過程中,有時在視窗中出現(xiàn)的數(shù)字可能是半個或是三分之一等情況,這種狀態(tài)下,識別原則為:一個視窗中出現(xiàn)兩個數(shù)字,如出現(xiàn)的數(shù)字平面大于二分之一,則識別為該數(shù)字;如兩數(shù)字均為二分之一時要根據(jù)用戶的具體要求來確定以上面的還是以下面的數(shù)字為準。由于實際采集到的圖像與傳統(tǒng)的攝像機拍到的號碼圖像在清晰度上又有差別,增加了識別的難度,因此在識別前的預處理很重要,如去掉白色噪聲點。由于本文采集的圖像是針對灰度圖的,所以在二值化處理中根據(jù)灰度直方圖選取閾值,有利于提高水表號碼的識別率[6]。
2.3號碼顯示模塊
??? VC5416只有兩個通用I/O" title="I/O">I/O口,即BIO和XF。本系統(tǒng)對主機通信并行接口HPI和多路緩沖串行接口McBSP進行配置用作通用I/O,即本系統(tǒng)的數(shù)據(jù)采集和數(shù)據(jù)輸出都是利用I/O口實現(xiàn)的。在顯示部分,將DSP的多路緩沖串口改為通用I/O口,設(shè)計了一種低功耗的液晶顯示電路,并編輯了液晶驅(qū)動程序。
??? 本系統(tǒng)采用金鵬電子公司生產(chǎn)的3.3V電源的OCM12232-4點陣型液晶顯示模塊,橫向有122個點,縱向有32點。它可以顯示兩行16×16的點陣字符,可同時顯示中文字符和英文字母。
由于該點陣型液晶不帶字庫,故先編寫0~9的字庫實現(xiàn)了字符的顯示。且對OCM12232內(nèi)部兩個控制器SED1520進行寫命令或數(shù)據(jù)的操作,在驅(qū)動程序部分設(shè)定了顯示起始位置、上下行、字符寬度等參量。
3 試驗結(jié)果
采集圖像的條件:OV7620的開窗為200×40mm,光源為普通的白熾燈。
??? 圖3的結(jié)果發(fā)現(xiàn)在5cm左右的物距下采集到的號碼圖像很模糊且只能采集到2~3個號碼,同時發(fā)現(xiàn)OV7620采集圖像不是沿垂直方向采集,而是傾斜一定角度采集的。
?
圖4根據(jù)圖3的情況,適當調(diào)整了鏡頭焦距及水表和鏡頭之間的物距,并調(diào)整了光源的亮度。這樣采集到的圖像較前次清晰且可采集到3~4個號碼。
?
圖5所采集到的圖像有光斑,其原因是水表盤表面的突起引起的,因此光源的照射位置對采集到圖像的質(zhì)量有很大的影響。
?
以上試驗結(jié)果表明,明亮、穩(wěn)定、均勻的光源很重要,這樣才能將被測物與背景明顯地區(qū)分開來。更重要的是適當調(diào)整焦距,圖5是在適當?shù)慕咕嗪凸庠戳炼认碌玫降慕Y(jié)果。
本文成功地完成了用CMOS圖像傳感器OV7620采集水表盤字輪號碼。實驗結(jié)果表明采集到的號碼圖像達到了預期的效果。本系統(tǒng)將進一步完善識別顯示程序并完成系統(tǒng)的最終目標——在硬件采集器中完成號碼圖像的識別顯示。該設(shè)計將加快自動抄表的進程,從而克服手工抄表的種種弊端。本設(shè)計也適用于其他號碼圖像的采集識別。
參考文獻
[1]?智能IC卡水表在住宅中的應用.智高電子,2006.1
[2]?蔡娜,王學俊. 遠程網(wǎng)絡(luò)式水表管理系統(tǒng).大連輕工學院學報,2000,(12).
[3] ?胡慶紅, 陳亞杰, 邢罡.遠傳水表系統(tǒng)在現(xiàn)代化樓宇中的應用.控制工程,2005,(5).
[4] ?李紹民.圖像傳感器OV7620在自主足球機器人中的應用.國外電子元器件,2004,(10).
[5] ?王金濤,王雨. 利用IIC總線實現(xiàn)DSP對CMOS圖像傳感器的控制.國外電子測量技術(shù),2001,(4).
[6] ?王三武, 黃豐云. CCD電子抄表系統(tǒng)及圖像的采集.武漢汽車工業(yè)大學學報,2000,(12).