本文主要介紹基于Actel FPGA實現的高清OSD方案。OSD(On Screen Display)即在屏顯示系統,通過在信號流上加入特定內容,最終在顯示終端上獲得文字信息或圖形界面,讓使用者得到更多訊息,實現便捷的人機交互。
安防行業的攝像頭都可以由用戶控制攝像頭的方位、角度、攝像機輸出的視頻模式等功能。而用戶需要獲取當前攝像頭的設置信息以便進行控制操作,OSD的作用就通過顯示終端給用戶反饋這些信息。如今網絡攝像機或者數字攝像機輸出的視頻已經達到比較高的清晰度,普通的OSDE,經無法滿足高清視頻的要求,因此高清OSD便應運而生。高清OSD的應用如圖1所示。
1.概述
(1)方案比較
目前市場上能夠實現數字OSD疊加功能的Ic可以分成兩類,一類是高集成度的通用視頻處理器,例如達芬奇系列的DSP芯片就具有OSD疊加功能。由于OSD只是這類微處理器的附加功能,其主要作用還是應用于偏向視頻處理方向,所以實現的OSD功能單一,無法實現全屏疊加、字符效果調整等要求,同時過于繁雜的OSD控制會影響視頻處理上的運算速度。另一類為專用集成電路,但目前市場上只有處理XGA以下小分辨率視頻的專用Ic,還沒有處理高清數字視頻的OSD專用IC。
采用Actel FPG麒現的高清OSD具有以下優勢:
·Actel FPGA的高性能內核能夠實現對1920×1080以下分辨率視頻的支持;
·實現方式靈活多樣,接口可以定制為BT.601或BT.1120;
·Actel FPGA的固件錯誤免疫使得系統可以工作于較惡劣的環境中,可靠性高。
(2)功能概述
在視頻監控領域,隨著網絡技術的發展,操作便捷、清晰度高的網絡攝像機已經被廣泛地應用在各種場合。網絡攝像機對OSD提出了更高的要求,首先是網絡攝像機機芯輸出的是數字分量的視頻信號,這就要求OSD能在數字域中進行字符疊加,并且不改變視頻格式;其次,視頻分辨率高,即像素時鐘頻率高,要求OSD處理速度要足夠快,視頻輸出不能有延時,同時也要求疊加的字符達到美觀細膩的效果。


OSD系統主要完成在視頻信號中插入字符或圖片信息。本OSD系統嵌入在高清網絡攝像頭的機芯與系統控制板之間,完成將字符信息插入到視頻信號中,并且不改變輸入與輸出視頻的格式,在接收端無需額外硬件即可在任何顯示終端上實現字符信息顯示功能。本文實現的高清OSD主要具有以下功能:
·支持GB2312字符集和AsCI字符集。共包含漢字6763個;
·支持目文平假名與片假名,支持自定義的LOGO顯示;
·顯示字符為白色,帶描邊功能,在任何視頻背景下都能清晰顯示字符:
·所有字符均通過內碼方式索引,操作快速便捷;
·預留SPI接口與MCU進行通信;
·支持全屏幕動態疊加;
·不改變視頻格式,視頻輸出無延時;
·支持字符閃爍功能,支持多點閃爍;
·支持1920×1080、1280×960、1280×720分辯率的ITU-RBT,601格式視頻。
(3)系統框圖
OSD系統主要完成在視頻信號中插入字符或圖片信息。支持視頻格式為為ITU-R BT.601 YUV422格式的視頻流。OSD的系統框圖如圖2所示。
2.備功能模塊介紹
OSD應用系統主要由FPGA,SPI Flash及SRAM組成,MCU只是用于控制OSD系統進行字符疊加的外部電路。OsD系統與外部電路的接口有兩個接口,一個是視頻輸入/輸出接口,這部份接口對于ITu—RBT.601視頻流來說主要包含行場同步信號(HsYNc/VSYNc)、像素時鐘信號(PCLK)、亮度信號(Y)及色差信號(c)。另一個接口為SPI接口,用于與外部MCU進行通信,MCU作為主機控制OSD系統實現字符疊加功能。
(1)SPI Flash
SPI Flash主要用于存儲字庫。OSD系統支持GB2312字符集及ASCII字符集。其中,GB2312標準共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個;同時收錄了包括拉丁字母、希臘字母、日文平假名及片假名字母、俄語西里爾字母在內的682個字符。GB2312字庫,基本滿足了漢字的計算機處理需要,它所收錄的漢字已經覆蓋中國大陸99,75%的使用頻率。無論是是GB23 12字符集中的字符或是ASCII字符集中的字符,OSD都是按照字符的機內碼方式進行索引的。實現機內碼方式進行字庫的調用對于MCU編程及程序維護來說是非常方便的,用戶無需知道相應字符在Flash中的地址信息,當然必要時也可以引用Flash的絕對地址。
(2)SRAM
SRAM在OSD系統中的作用是存儲需要顯示的字符信息。在進行字符疊加時不需要緩存視頻數據,因此對于OSD來說輸出視頻流與輸入視頻流沒有延時,同時也大大降低了SRAM的存儲空間要求。
(3)MCU接口
OSD系統與外部MCU的通信接口采用SPI接口方式。OSD模塊與外部MCU的時序比較簡單,SPI通信方式采用模式0方式,與MCU的接口時序如圖3所示。
外部MCU與OSD模塊通信是通過ss、SCK、MOSI以及MISO進行的,當片選信號有效時FPGA在每個SCK的上升沿對MCu輸出的MOSI信號進行采樣。MISO是OSD輸出數據線。這個信號主要用于針對有的攝像頭機芯可以輸出多種模式視頻流而預留的,用于供MCU查詢當前機芯的視頻模式。
外部Mcu對OSD模塊的操作通過發送命令的方式執行。向OSD模塊提供簡單指令就可以執行包括顯示、清屏、閃爍在內的所有操作,用戶無需了解底層結構和字庫的組成情況就能熟練地進行編程操作,方便MCu程序的開發。
(4)視頻接口
視頻接口指的是輸入到OSD的視頻格式,而不包含水量時序信息。因為時序細節可以通過調節OSD內部寄存器來實現。本文實現的OSD系統所支持的視頻格式為IU-R BT.601YUV422格式。不同的數字攝像頭機芯可能輸出的行場同步與Y/c信號在時序上有差別,因此在OSD內部有相應寄存器用于調整字符顯示區域。視頻接口時序如圖4所示。
3.市場應用
OSD主要用于在視頻流中加入字符信息,并提供接口給外部MCU操作,達到通過簡單設備就能進行人機交互的目的。高清OSD的應用實例如圖5所示。隨著網絡攝像頭的發展,清晰度越來越高的攝像機正在應用于越來越多場合,對OSD的要求也越來越高。Actel FPGA單芯片、上電即行以及固件錯誤免疫的特性可以為OSD高清視頻字符疊加提供最佳的解決方案。
4.小結
本文主要介紹了基q:hctel FPGA的高清OSD系統的功能和應用。敬請關注周立功公司的網站www.zlgmcu.com以獲得更多的信息。我們有著一個接近30人的FPGA團隊提供強有力的售后服務和技術支持,解決用戶在產品使用和研發過程中遇到的困難。若有更多的需求可以與我們聯系,我們將會竭誠為您服務,并請關注下期的FPGA專題技術講座。