本發(fā)明屬于數(shù)字視頻圖像處理與顯示技術(shù)領(lǐng)域,涉及一種OSD(OnScreen Display,屏幕顯示)的實現(xiàn)方法及系統(tǒng)。
背景技術(shù):
在多媒體數(shù)字圖像處理技術(shù)的運用中,視頻檢測系統(tǒng)常常是關(guān)注的重點。常用的視頻圖像疊加方法有兩種:
1)使用疊加芯片進(jìn)行疊加
2)使用計數(shù)器計算像素點進(jìn)行疊加
這兩種方法只能適用于疊加簡單字符,很難支持復(fù)雜圖形,故OSD所包含的信息量少。而且在進(jìn)行圖像疊加時字符會完全覆蓋原視頻圖像的信息,并不支持透明度的調(diào)節(jié),不能根據(jù)視頻疊加融合場景的變化進(jìn)行適應(yīng)。另外這兩種方法在使用時需要配置復(fù)雜的外圍電路,如字符字模點陣存儲器等。硬件電路設(shè)計比較復(fù)雜、使用不方便、穩(wěn)定性差,且多數(shù)OSD不能編輯。OSD所用到的每一個字符也需要事前進(jìn)行點陣描述和額外的空間進(jìn)行存儲,維護(hù)管理成本高。
本發(fā)明采用ARGB顏色空間的像素級圖像數(shù)據(jù)疊加融合,可以解決以上問題。格式為ARGB的視頻圖像單一像素點的顏色為32位值:alpha、紅色、綠色和藍(lán)色各8位。存儲在Alpha通道內(nèi)的alpha值指示顏色的透明度,表示顏色與背景色的混合程度。即一個像素點的透明度可被視為區(qū)間[0,255]的隨機變量,其中0表示完全透明的顏色,255表示完全不透明的顏色。直接對圖像中的像素點進(jìn)行數(shù)據(jù)運算,實現(xiàn)像素級的圖像疊加融合。給定源顏色的三個分量(紅色、綠色和藍(lán)色)都按照以下公式與背景顏色的相應(yīng)分量混合:
顯示顏色=源顏色×alpha/255+背景顏色×(255-alpha)/255
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種基于OMAP芯片的透明度可調(diào)的視頻圖像疊加方法及系統(tǒng),旨在解決現(xiàn)有OSD實現(xiàn)方法編輯靈活性差和開發(fā)成本高的問題,其包括以下:
用戶操作模塊,采集模塊,存儲模塊,ARM控制模塊,DSP運算模塊和顯示模塊。用戶通過用戶操作模塊的交互界面選擇想要疊加顯示的圖片及其透明度值,將OSD圖片預(yù)處理后寫入存儲模塊的緩沖區(qū),OMAP芯片ARM控制模塊采集模塊獲取特定格式的實時視頻數(shù)據(jù),OMAP芯片DSP運算模塊根據(jù)設(shè)定的透明度值將實時視頻數(shù)據(jù)和圖片數(shù)據(jù)進(jìn)行像素級的加權(quán)計算,顯示模塊通過LCD屏顯示最終疊加融合效果。其中混合透明度值支持0~255共256級的調(diào)節(jié)。
具體的,采集模塊使用CCD攝像頭和TVP5146M2解碼芯片,采用幀緩沖隊列的形式獲取YUV格式的視頻數(shù)據(jù)。
具體的,ARM控制模塊和DSP運算模塊通過DSPlink通信,共享SDRAM數(shù)據(jù)緩沖區(qū)。
本發(fā)明通過DSP的運算能力,它充分利用了空間域處理計算簡單的特點,避免了頻域處理的復(fù)雜處理過程,在實時視頻上疊加透明OSD的整個疊加過程與用戶所選擇圖片的復(fù)雜度無關(guān),支持混合透明度的實時修改,提高了OSD的靈活性和便捷性。
附圖說明
圖1為本發(fā)明處理流程框圖;
圖2為測試OSD圖片omap.rgb;
圖3為一幀實時采集的視頻圖像;
圖4為視頻圖像與測試圖片疊加融合的效果1;
圖5為視頻圖像與測試圖片疊加融合的效果2;
圖6為視頻圖像與測試圖片疊加融合的效果3;
具體實施方式
下面結(jié)合附圖和實例對本發(fā)明進(jìn)一步說明
用戶通過交互界面從程序的當(dāng)前目錄下選擇所需疊加的OSD圖片,并設(shè)置整體混合透明度值參數(shù)alpha,其中數(shù)值范圍為(0~255),共256級。所選取的OSD圖片數(shù)據(jù)會被加載到OSD窗口,并記錄圖片的寬度參數(shù)i和高度參數(shù)j。
其中實時視頻數(shù)據(jù)透明度值為alpha,OSD圖片透明度為255-alpha。可參見圖2,一張大小為400x272的測試圖片,用于和實時視頻圖像疊加融合,從中能看出OSD測試圖片為完全非透明圖片,透明度值默認(rèn)為255。
獲取攝像頭設(shè)備的性能參數(shù),讀取采集視頻圖像的制式并記錄采集的YUV視頻圖像的具體存儲格式,圖像寬度參數(shù)m和圖像高度參數(shù)n。通過CCD攝像頭和TVP5146M2解碼芯片獲取實時視頻數(shù)據(jù),可參見圖3為不進(jìn)行疊加融合時,通過攝像頭采取的一幀視頻圖像,其大小為720x576,該圖像的透明度值默認(rèn)為255,即非透明。
OMAP芯片ARM控制模塊控制實時視頻數(shù)據(jù)采集的幀緩沖隊列,采集到的YUV格式實時視頻數(shù)據(jù)會傳輸?shù)紻SP運算模塊。
DSO運算模塊根據(jù)YUV視頻數(shù)據(jù)的具體存儲格式(如4:4:4或4:2:2等),選擇不同的DSP算法將單幀視頻數(shù)據(jù)轉(zhuǎn)換到ARGB顏色空間,將視頻數(shù)據(jù)加載到視頻窗口。其中單一顏色通道的計算結(jié)果值若大于255時則設(shè)置為255,若計算結(jié)果值小于0則設(shè)置為0。其中根據(jù)程序啟動時輸入的alpha值,對單幀視頻圖像的所有像素點進(jìn)行透明度值設(shè)置。
以YUV422轉(zhuǎn)換為ARGB為例:
ARGB(m,n)=alpha(m,n)+R(m,n)+G(m,n)+B(m,n)
其中ARGB(m,n)為一幀ARGB圖像中第m行,第n列的像素值
alpha(m,n)為一幀ARGB圖像中第m行,第n列的透明度值
1)R顏色通道的轉(zhuǎn)換
R(m,n)=[1192*[YUV(m,n)-16]+1634*[YUV(m,n+3)-128]]>>10
2)G顏色通道的轉(zhuǎn)換
G(m,n)=[1192*[YUV(m,n)-16]-833*[YUV(m,n+3)-128]-400*[YUV(m,n+1)-128]>>10
3)B顏色通道的轉(zhuǎn)換
B(m,n)=[1192*[YUV(m,n)-16]+2066*[YUV(m,n+1)-128]]>>10
最后OSD窗口和視頻窗口進(jìn)行疊加顯示,通過DVI輸出接口與LCD屏連接,可以直接觀察疊加融合效果,顯示完一幀視頻圖像后,將當(dāng)前幀緩沖重新放入隊列尾,并從隊列頭取出新的幀緩沖,進(jìn)行下一幀視頻圖像的疊加顯示,直至停止采集圖像。其中疊加區(qū)域的像素點值會根據(jù)視頻圖像和圖片圖像各自的透明度值進(jìn)行加權(quán)混合,非疊加區(qū)域則直接顯示原視頻圖像。對疊加融合后的單一像素點計算如下:
顯示數(shù)據(jù)=視頻數(shù)據(jù)×alpha/255+OSD圖片×(255-alpha)/255
疊加融合區(qū)域:
非疊加融合區(qū)域:
圖4,圖5,圖6是在不同的alpha輸入值下本算法的處理效果,可以看出融合疊加后的圖像很好的同時保留了視頻圖像和測試圖片的圖像信息,沒有造成圖像失真或模糊。
本發(fā)明未經(jīng)描述的技術(shù)特征可以通過或采用現(xiàn)有技術(shù)實現(xiàn),在此不再贅述。當(dāng)然上述說明并非是對本發(fā)明的限制,本發(fā)明也并不限于上述舉例,本技術(shù)領(lǐng)域的普通技術(shù)人員在本發(fā)明的實質(zhì)范圍內(nèi)所做出的變化、添加,也應(yīng)屬于本發(fā)明的保護(hù)范圍。