OSD技術在ATM數(shù)字視頻監(jiān)控系統(tǒng)中的應用 作者: 時間:2007-03-09 來源:網(wǎng)絡 加入技術交流群 掃碼加入和技術大咖面對面交流海量資料庫查詢 收藏 摘要:介紹了一種用于ATM自動提款機的數(shù)字視頻監(jiān)控系統(tǒng),從經(jīng)濟實用的角度出發(fā),在系統(tǒng)的前、后端分別實現(xiàn)了OSD功能。前端疊加的OSD信息作為圖像的說明和補充,并且隨視頻流傳輸和存儲;后端疊加的OSD提供了友好的用戶界面,不影響圖像的完整性。 關鍵詞:在屏顯示(OSD) 數(shù)字視頻監(jiān)控圖像和字符疊加 隨著銀行客戶終端ATM自動提未機的推廣使用,其安全防范工作顯得越來越重要,難度也越來越大。因此,針對ATM的數(shù)字視頻監(jiān)控系統(tǒng)便應運而生。數(shù)字視頻監(jiān)控系統(tǒng)常常采用在屏顯示(On Screen Display,OSD)技術實現(xiàn)人機界面。在屏顯示技術就是在圖像上疊加文字,使顯示屏幕為用戶提供更多的附加信息。在ATM監(jiān)控中,銀行對OSD功能有著特殊的要求: (1)將ATM機號、時間、日期、卡號、數(shù)據(jù)疊加在所錄視頻圖像上,并且要在每個畫面上疊加上鏡頭的地信息。這些信息疊加以后就成為圖像的一部分,作為視頻圖像的說明,便于進行監(jiān)控和查詢。 (2)在回放或者監(jiān)控時要提供友好的用戶菜單,用來進行系統(tǒng)的設置和查詢等操作。這些菜單信息只是給用戶提供交互的信息,不破壞圖像的完整性,并且不隨圖像數(shù)據(jù)傳輸和存儲。 本文針對ATM監(jiān)控系統(tǒng)對OSD功能的要求,在自行設計的一款ATM監(jiān)控設備中用不同的方法實現(xiàn)了兩種OSD功能。所采用的方法經(jīng)濟、實用,具有普遍意義,也可以推廣到其它的數(shù)字視頻監(jiān)控系統(tǒng)中。 1 系統(tǒng)簡介 本監(jiān)控系統(tǒng)是一個基于嵌入式CPU和新型MPEC-4硬件編、解碼芯片的系統(tǒng),提供兩路視頻輸入。為了節(jié)約成本,兩路視頻信號復合成畫中畫進行壓縮編碼,由嵌入式CPU從PCI接口對壓縮數(shù)據(jù)進行存儲和傳輸。其輸出端提供實時的視頻輸出和畫中畫回放數(shù)據(jù)輸出。系統(tǒng)硬件結構圖如圖1所示。 視頻A/D轉(zhuǎn)換器選用PHILIPS公司的SAA7113H,通過I2C總線進行寄存器管理,輸出標準ITU656接口數(shù)據(jù)。 畫面分割芯片選用A.LOGICS公司的AM-204M五畫面分割器,通過對其寄存器的編程實現(xiàn)兩路視頻信號的畫中畫疊加。在實際應用中,主畫面監(jiān)控整個提款機終端,子畫面監(jiān)控出鈔口。這款芯片還具有OSD功能,用它可實現(xiàn)圖像附加信息的疊加。 模擬開關用來選擇視頻是輸出壓縮前的實時視頻還是回放錄像文件的視頻,用兩片F(xiàn)AIRCHILD公司的74LVT16245總線驅(qū)動芯片來實現(xiàn)這部分功能。一片接壓縮編碼前的數(shù)據(jù),另一片接回放的視頻數(shù)據(jù),兩片芯片的輸出接在一起送到D/A芯片去實現(xiàn)視頻的顯示。單片機控制74LVT16245的使能端,根據(jù)需要讓其中一片74LT16245輸出視頻數(shù)據(jù),實現(xiàn)輸出視頻的選擇。這樣,通過對單片機編程,就可以控制在監(jiān)視器上輸出實時視頻還是回放錄像文件的視頻。 視頻D/A轉(zhuǎn)換器選用PHILIPS公司的SAA7121,通過I2C總線進行寄存器管理、輸入ITU656接口數(shù)據(jù)、輸出模擬視頻。 要想使OSD疊加的信息能作為圖像的一部分,即圖像的附加信息(如日期等)存儲到文件中,必須將信息疊是模擬視頻輸入端,將信息直接和模擬視頻疊加后再進行A/D視頻轉(zhuǎn)換。另一個是在畫面分割器后端的數(shù)字視頻上疊加信息。這兩種方法要用到不同的OSD芯片,雖然效果較好,但增加了設備的成本和電路板的尺寸。在實際的設計中,選用了一款帶有OSD功能的畫面分割芯片AM-204M,直接在畫面分割芯片中疊加字符信息,較好地解決了這個問題。 要實現(xiàn)作為用戶操作界面信息的OSD信息的疊加,這里把這部分OSD功能加在視頻D/A芯片的復合視頻廣播信號(CVBS)的輸出上。這部分OSD功能提供信息給用戶,不破壞圖像數(shù)據(jù)的完整性。由于菜單所需要的信息較多,并且本系統(tǒng)主要是針對國內(nèi)用戶,要求用漢字菜單,所以選用的OSD芯但要提供漢字信息,而且要有足夠的漢字庫。事實上目前市場上大多數(shù)的OSD芯片都只能提供簡單的字符信息疊加。通過綜合的比較,最終選用了FUJISU公司的MB90092芯片。 這里采用單片機AT89C55WD控制畫面分割芯片和MB90092芯片實現(xiàn)OSD疊加。所需要的時間信息由單片機通過時鐘芯片獲得,ATM的機號和卡號從單片機的串行口獲得。用戶通過接口菜單的一些設置信息,完成單片機與嵌入式CPU的通信。單片機和兩個用作OSD的芯片的連接如圖2所示。2 用畫面分割芯片實現(xiàn)OSD字符的疊加 OSD字符的疊加由A.LOGIC公司的畫面分割芯片AM-204M實現(xiàn)。AM-204M有較強的OSD功能,可實現(xiàn)字符OSD和位圖OSD功能。實際上它的OSD功能通過其內(nèi)部的只讀存儲器和隨機存儲器兩部分完成。只讀存儲器存儲了128個常用的字符,包括字母和標點符號等,在出廠前一般都已經(jīng)設定好了。隨機存儲器中可以存儲64個字節(jié),用戶可以編程設定這部分字符,靈活運用這部分存儲器的內(nèi)容可以實現(xiàn)多種格式的OSD信息。每屏顯示的字符容量最大是34列%26;#215;22行。字符采用彩色顯示,在一個屏幕內(nèi)最多可同時顯示三種顏色。在625線的系統(tǒng)中,字符大小為20%26;#215;24點陣時就可以有較好的效果。 2.1 畫面分割芯片主要控制管腳說明 單片機通過操作畫面分割的HOST接口就可以對寄存器進行管理,以此來實現(xiàn)OSD功能。面畫分割芯片AM204M主要接口管腳如下: ADEN:芯片地址使能輸入,下降沿取地址數(shù)據(jù)。 WREN:芯片寫使能輸入,上升沿有效。 RDEN:芯片讀使能輸入,低電平有效。 MDATA[7:0]:并行數(shù)據(jù)口,是單牒同對AM-204M進行讀寫操作的數(shù)據(jù)口。2.2 芯片OSD的寫RAM接口時序 AM-204M有幾個專用的寄存器,用于對OSD功能(包括OSD開關、位置、背景等)進行管理。設計人員可以自定義一些字符或者漢字放在RAM內(nèi)用于顯示,芯片的RAM可一次寫入64個字符。圖3是通過HOST接口往RAM存儲器中寫一個字符的時序。圖中D0-D7是一個字符的二進制點陣信息。 ROM存儲的128個字符占用的CODE(oram_data[7:0])的地址范圍為00~7F。而RAM寫入的64個字節(jié)占用的CODE地址從80開始,為一個連續(xù)的地址空間。在系統(tǒng)工作時,AT89C55單片機首先要得到疊加的信息,然后從字符存儲區(qū)中取出相應的字符,疊加到屏幕上的適當?shù)膮^(qū)域。字符的RAM表如表1所示。表1 字符在RAM中的位置與編碼的對應關系 字 符代 碼地 址第1字符80h00第2字符81h01………第64字符BFh633 用OSD芯片實現(xiàn)用戶菜單的疊加 MB90092是用CMOS工藝制成的OSD可編程大規(guī)模集成電路芯片,可用于計算機控制的錄像機、VCD等的屏幕字符顯示。該芯片有視頻信號輸入輸出功能,可作為一種通用的OSD芯片,完成視頻信號與字符的疊加顯示。芯片可外接2M字節(jié)的ROM,支持24%26;#215;32點陣顯示方式,可在屏幕上疊加一個主屏幕和一個子屏幕,主屏上疊加12%26;#215;24個漢字。它有視頻信號輸入腳,在其內(nèi)部可完成視頻信號與漢字信號的疊加,直接輸出復合視頻信號。MB90092內(nèi)部可自行產(chǎn)生同步信號,無需外加視頻信號和同步信號;可直接輸出漢字信號至監(jiān)視器,在監(jiān)視器上顯示不同背景顏色、不同漢字顏色的文本,利用此特點可設計系統(tǒng)的設置菜單。字庫芯片采用AT27C080,該芯片的存儲容量為1M字節(jié),可存儲8K漢字。國標所規(guī)定的一、二級漢字均可包含,每個字占用128字節(jié)。漢字點陣為24%26;#215;24。為適應MB90092,每個漢字的24~31字節(jié)、56~63字節(jié)、88~127字節(jié)應為空白。 3.1 芯片主要管腳功能說明和接口時序 IC:當TEST腳輸入低電平時,這個管腳能被用作芯片的RESET端。 CS:芯片的片選端,低電平有效。也可以用它來釋放power-on reset。 SCLK:時鐘輸入端,輸入讀數(shù)據(jù)時鐘。 SDA:串行數(shù)據(jù)輸入端。 EXHSYN:外部行同步信號輸入端,當對芯片內(nèi)部寄存器進行適當設置時,這個管腳也可以作為復合同步信號輸入端。 VOUT:復合視頻輸出端(輸出信號的峰-峰值為2V)。 VIN:復合視頻信號輸入端,用于疊加顯示,要求信號的峰-峰值為2V. EXS和XS:外接晶體端,為芯片內(nèi)部的圖像提供振蕩時鐘,選用NTSC制式時,外接14.31818MHz的晶體;選用PAL制式時,外接17.734475MHz的晶體。 EXD和XD:連接外部的LC時鐘振蕩電路,為字符的產(chǎn)生提供打點時鐘,一般為6MHz或7MHz,據(jù)此確定電感、電容數(shù)值。 MB90092采用指令方式控制,外部單片機可以通過串行接口向MB90092發(fā)送指令,每個指令由兩個字節(jié)組成。第一個字節(jié)的前5位為命令碼,其余位和第二個字節(jié)為數(shù)據(jù)。指令能實現(xiàn)對字符顯示的各種控制,MB90092共有13種指令和兩種保留指令,具體功能見表2。表2 MB90092指令集 命令號功 能0VRAM地址設置1-1主屏字符控制12-1主屏字節(jié)控制21-2了屏線控12-2子屏線控21-3主屏線控12-3主屏線控23VRAM寫控制4屏幕控制15屏幕控制26主屏線控37主屏垂直位置控制8主屏水平位置控制9漢字顯示控制10顏色控制11子屏幕控制12子屏垂直位置控制13子屏水平位置控制MB90092與外部單片機的接口有自己獨特的時序,如圖4所示。首先,CS片選有效,在每個時鐘的上升沿,DATA數(shù)據(jù)1的bit進入MB90092內(nèi)部的串行移位寄存器,8bit為一個字節(jié);然后CS和SCLK分別為高,作為一個字節(jié)的結束;接著發(fā)送下個字節(jié)。在串行傳輸中,時鐘用來對收到的bit計數(shù),通過強制CS為高,可以復位串行傳輸。通過強制CS從高到低,清除復位,使得隨后的8bit數(shù)據(jù)是一個字節(jié)數(shù)據(jù)。如果在8bit數(shù)據(jù)中間CS變高,則這個數(shù)據(jù)是無效的。 如圖4所示,數(shù)據(jù)A被寫入內(nèi)部寄存器,數(shù)據(jù)B被忽略。接口時序應注意以下幾點: (1)為了保持字節(jié)同步,在串行數(shù)據(jù)傳輸之前,CS管腳應當先設成高,然后設成低。 (2)除了剛上電時,在串行傳輸之前,都應當強制SCLK管腳為高電平。 用匯編語言實現(xiàn)的寫一個字節(jié)程序如下: WRITE_1BYTE: SETB _CS NOP CLR _CS MOV R6,#8 WR1: NOP CLR SCLK RRC A MOV SIN,C NOP NOP SETB SCLK DJNZ R6,WR1 NOP SETB _CS RET 程序中加入NOP指令是為了滿足MB90092對時序時間的要求。3.2 漢字疊加與緩沖放大模塊 在視頻監(jiān)控中,視頻流過解碼,使視頻D/A轉(zhuǎn)換模塊輸出的模擬視頻信號疊加上菜單漢字信息,然后經(jīng)緩沖放大后輸出到監(jiān)視器上。圖5為視頻漢字疊加與緩沖放大原理圖。 對圖5進行如下說明: (1)圖5中同步分離由LM1881完成,分離出復合同信號送到字符疊加芯片供字符疊加使用。 (2)輸出緩沖放大采用OPA2354芯片。它的INA-管上的調(diào)節(jié)電阻分別為620Ω和330Ω。 3 使用MB90092應注意的問題 (1)程序開始時,要輸入CS四次去清除上電復位,然后所作的設置才是有效的。 (2)如果選擇外同步方式,只有當外同步信號存在時,MB90092才能接收控制命令。為了防止當視頻信號由"無"切換到"有"時監(jiān)視器上產(chǎn)生字符丟失的情況,屏幕上疊加的所有字符每隔0.2秒要更新一次。這樣就不會發(fā)生字符丟失的現(xiàn)象。 (3)改動屏幕上的字符時,必須先清理內(nèi)存區(qū)域,否則屏幕會出現(xiàn)亂碼及一些預料不到的顯示。清屏包括子屏清除和主屏清除。如果沒有用到子屏,只要在開始時清一次子屏就可以了(所謂清屏,就是在屏幕上相應位置寫空格字符)。 (4)上電復位后,為了有效設置屏幕及字體的各種民屬性、行距、顯示位置等,先選擇內(nèi)異步方式,待設置完成后,再設定為外同步方式;否則,設置時如無外同步信號,所有的設置均為無效設置。 (5)由于視頻信號頻率較高、頻帶較寬,因而當兩路視頻信號相距較近時,容易產(chǎn)生串擾。為了盡量減少串擾,制板時需做到以下幾點: *各種視頻信號間用較粗的地線隔開,視頻走線盡量石頭則粗; *模擬地和數(shù)字地分開,只在電源處單點相連; *開關電源時,應使交流電與直流低壓之間相距較遠,且用地線隔開;直流低壓與開關管的調(diào)整電路之間要用光耦隔開。 本文給出了兩種實現(xiàn)OSD的方法,分別用于ATM監(jiān)控設備的不同模塊中。設計中考慮了實用和經(jīng)濟兩個因素,從實際的產(chǎn)品來自,性能穩(wěn)定可靠,具有很普遍的應用價值。
評論