屏幕菜單式調節方式信息的疊加方法及裝置制造方法
【專利摘要】本發明公開了一種屏幕菜單式調節方式信息的疊加方法及裝置,在上述方法中,處理器經由HAL接收來自于應用層的待顯示的OSD信息,其中,OSD信息包括:OSD參數和OSD顯示內容,OSD參數用于控制OSD顯示內容在視頻圖像上的顯示方式;處理器獲取視頻圖像,并采用OSD參數將OSD顯示內容疊加至視頻圖像。根據本發明提供的技術方案,進而在處理器平臺上實現OSD功能、結構簡單、使用方便。
【專利說明】屏幕菜單式調節方式信息的疊加方法及裝置【技術領域】
[0001]本發明涉及通信領域,具體而言,涉及一種屏幕菜單式調節方式信息的疊加方法及裝置。
【背景技術】
[0002]屏幕菜單式調節方式(on-screen display,簡稱為OSD)通常是在按菜單(Menu)鍵之后,屏幕彈出的顯示器各項調節項目信息的矩形菜單,可以通過該菜單對顯示器各項工作指標包括色彩、模式、幾何形狀等進行調整,從而達到最佳的使用狀態。OSD主要應用在陰極射線管(CRT)/液晶顯示器(IXD)上,在顯示器的熒幕中產生一些特殊的字形或圖形,讓使用者得到一些通訊信息。常見于家用電視機或個人計算機(PC)的顯示熒幕上,當使用者操作電視機換臺或調整音量、畫質等,電視熒幕就會顯示目前狀態讓使用者知道,此控制集成電路(IC)可在熒幕上的任何位置顯示一些特殊字形與圖形,成為人機界面上重要的通訊信息產生裝 置。OSD核心是利用字符發生芯片在顯示器的屏幕上顯示需要的字符。常用的OSD芯片有MAX4455、0SD7556、UPD6465、MB90092等,其技術方式在于:與圖像實時同步附加或改變圖像中某些像素的顏色,使之組合成人類可以在圖像中辨識的數據。以固定或不固定的方式,改變某個特定的OSD控制暫存器,即可達到動態的效果。例如:在熒幕上產生由左向右移動的OSD字形,只要將控制左右位置的OSD控制暫存器依序填入由小變大或由大變小的數值,OSD輸出字形自然隨更改的數值而進行左右移動。
[0003]OSD比較典型的動態應用是處理、疊加銀行柜員工作數據的“點鈔機字符疊加器”;電梯監控的“電梯樓層字符疊加器”;高速公路、普通公路收費站的“收費系統字符疊加器”;還有公眾場所,在播放視頻節目的同時可使用字符疊加各種通知等信息的“信息發布疊加器。”除此之外,還有常用的溫濕度字符疊加器等。OSD比較典型的靜態應用是指不需要接收外部數據,即可在視頻信號上顯示相對固定形式字符信息的設備,其多用于在視頻信號上疊加攝像頭位置、日期、時間等固定信息,例如:矩陣字符疊加器等。
[0004]開放式多媒體應用平臺(OpenMultimediaApplication Platform,簡稱為 0ΜΑΡ)是一種為滿足移動多媒體信息處理及無線通信應用開發出來的高性能、高集成度嵌入式處理器。
[0005]目前,在視頻監控領域,OSD功能的使用較為普遍,但是視頻監控領域在使用OSD功能時沒有使用運行安卓(Android)系統的處理器平臺(例如:0ΜΑΡ平臺);而通信廠商雖然使用運行Android系統的處理器平臺,但是他們卻未使用OSD功能。
【發明內容】
[0006]本發明提供了一種屏幕菜單式調節方式信息的疊加方法及裝置,以至少解決相關技術中無法實現在處理器平臺上使用OSD功能的問題。
[0007]根據本發明的一個方面,提供了一種屏幕菜單式調節方式信息的疊加方法。
[0008]根據本發明的屏幕菜單式調節方式信息的疊加方法包括:處理器經由硬件抽象層(Hardware Abstraction Layer,簡稱為HAL)接收來自于應用層的待顯示的OSD信息,其中,OSD信息包括:0SD參數和OSD顯示內容,OSD參數用于控制OSD顯示內容在視頻圖像上的顯示方式;處理器獲取視頻圖像,并采用OSD參數將OSD顯示內容疊加至視頻圖像。
[0009]優選地,在處理器經由HAL接收來自于應用層的OSD信息之前,還包括:HAL根據指針指示的位置獲取OSD信息,其中,應用層將OSD信息傳遞至HAL與應用層之間的預設接口,預設接口調用第一預設類函數對OSD信息進行保存,并將指示OSD信息保存的位置的指針傳遞至HAL ;HAL按照預設結構體格式對獲取到的OSD信息進行組裝,并調用第二預設類函數將組裝后的OSD信息傳遞至處理器。
[0010]優選地,在采用OSD參數將OSD顯示內容疊加至視頻圖像之前,還包括:處理器對視頻圖像進行去抖處理,其中,去抖處理包括:按照預設長度對視頻圖像的邊沿進行裁剪,重新計算出經過裁剪處理后的視頻圖像的坐標原點,采用計算出的坐標原點確定OSD顯示內容在視頻圖像上的顯示位置。
[0011]優選地,在采用OSD參數將OSD顯示內容疊加至視頻圖像之前,還包括:處理器根據視頻圖像的分辨率調整OSD顯示內容中初始字體的大小。
[0012]優選地,處理器根據分辨率調整初始字體的大小包括:處理器根據視頻圖像的分辨率將字體的大小劃分為N個等級,其中,在1-N個等級中與每個等級對應的字體的大小為初始字體大小的N2倍,N為正整數;處理器從第I個等級開始依次調整初始字體的大小,直至OSD顯示內容中文字個數最多的一行的長度值與分辨率中的長度值的比值達到預設閾值。
[0013]優選地,處理器獲取視頻圖像,并采用OSD參數將OSD顯示內容疊加至視頻圖像包括:處理器采集視頻數據,并按照YUV422格式將視頻數據轉化為視頻圖像;處理器在采用OSD參數將OSD顯示內容疊加至視頻圖像時,調整與OSD顯示內容對應的像素點集合中每個像素點當前的亮度分量,而保持每個像素點當前的色度分量。
[0014]根據本發明的另一方面,提供了 一種屏幕菜單式調節方式信息的疊加裝置。
[0015]根據本發明的屏幕菜單式調節方式信息的疊加裝置包括:接收模塊,用于經由硬件抽象層HAL接收來自于應用層的待顯示的屏幕菜單式調節方式OSD信息,其中,OSD信息包括:0SD參數和OSD顯示內容,OSD參數用于控制OSD顯示內容在視頻圖像上的顯示方式;疊加模塊,用于獲取視頻圖像,并采用OSD參數將OSD顯示內容疊加至視頻圖像。
[0016]優選地,上述裝置還包括:去抖處理模塊,用于對視頻圖像進行去抖處理,其中,去抖處理包括:按照預設長度對視頻圖像的邊沿進行裁剪,重新計算出經過裁剪處理后的視頻圖像的坐標原點,采用計算出的坐標原點確定OSD顯示內容在視頻圖像上的顯示位置。
[0017]優選地,上述裝置還包括:調整模塊,用于根據視頻圖像的分辨率調整OSD顯示內容中初始字體的大小。
[0018]優選地,調整模塊包括:劃分單元,用于根據視頻圖像的分辨率將字體的大小劃分為N個等級,其中,在1-N個等級中與每個等級對應的字體的大小為初始字體大小的N2倍,N為正整數;調整單元,用于從第I個等級開始依次調整初始字體的大小,直至OSD顯示內容中文字個數最多的一行的長度值與分辨率中的長度值的比值達到預設閾值。
[0019]通過本發明,采用應用層將待顯示的OSD信息傳遞至HAL層,然后HAL層將接收到的OSD信息再傳遞至處理器,在處理器獲取到視頻圖像之后,采用OSD信息中的OSD參數將OSD信息中的OSD顯示內容疊加至視頻圖像,解決了相關技術中無法實現在處理器平臺上使用OSD功能的問題,進而在處理器平臺上實現OSD功能、結構簡單、使用方便。
【專利附圖】
【附圖說明】
[0020]此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
[0021]圖1是根據本發明實施例的屏幕菜單式調節方式信息的疊加方法的流程圖;
[0022]圖2是根據相關技術的OSD顯示內容字庫中的像素點的示意圖;
[0023]圖3是根據相關技術的在OSD顯示內容的字體為等級I時疊加至YUV420視頻格式的視頻數據的示意圖;
[0024]圖4是根據相關技術的在OSD顯示內容的字體為等級2時疊加至YUV420視頻格式的視頻數據的示意圖;
[0025]圖5是根據本發明優選實施例的在OSD顯示內容的字體為等級I時疊加至YUV422視頻格式的視頻數據的示意圖;
[0026]圖6是根據本發明優選實施例的在OSD顯示內容的字體為等級2時疊加至YUV422視頻格式的視頻數據的示意圖;
[0027]圖7是根據本發明實施例的屏幕菜單式調節方式信息的疊加裝置的結構框圖;
[0028]圖8是根據本發明優選實施例的屏幕菜單式調節方式信息的疊加裝置的結構框圖。
【具體實施方式】
[0029]下文中將參考附圖并結合實施例來詳細說明本發明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
[0030]圖1是根據本發明實施例的屏幕菜單式調節方式信息的疊加方法的流程圖。如圖1所示,該方法可以包括以下處理步驟:
[0031]步驟S102:處理器經由HAL接收來自于應用層的待顯示的OSD信息,其中,OSD信息包括:0SD參數和OSD顯示內容,OSD參數用于控制OSD顯示內容在視頻圖像上的顯示方式;
[0032]步驟S104:處理器獲取視頻圖像,并采用OSD參數將OSD顯示內容疊加至視頻圖像。
[0033]相關技術中,無法實現在處理器平臺上使用OSD功能。采用如圖1所示的方法,應用層將待顯示的OSD信息(包括:0SD參數和OSD顯示內容)傳遞至HAL層,然后HAL層將接收到的OSD信息再傳遞至處理器(例如:0ΜΑΡ平臺),在處理器獲取到視頻圖像之后,采用OSD信息中的OSD參數將OSD信息中的OSD顯示內容疊加至視頻圖像,解決了相關技術中無法實現在處理器平臺上使用OSD功能的問題,進而在處理器平臺上實現OSD功能、結構簡單、使用方便。
[0034]優選地,在步驟S102,處理器經由HAL接收來自于應用層的OSD信息之前,還可以包括以下步驟:
[0035]步驟SI =HAL根據指針指示的位置獲取OSD信息,其中,應用層將OSD信息傳遞至HAL與應用層之間的預設接口,預設接口調用第一預設類函數對OSD信息進行保存,并將指示OSD信息保存的位置的指針傳遞至HAL ;
[0036]步驟S2:HAL按照預設結構體格式對獲取到的OSD信息進行組裝,并調用第二預設類函數將組裝后的OSD信息傳遞至處理器。
[0037]下面首先對本發明優選實施例中主要用到的技術術語進行解釋。
[0038](I)OMAP:TI公司推出的適用于移動市場的高性能處理器;
[0039](2) Ducati =OMAP芯片上負責視頻采集和編解碼等功能的硬核,可以包括:兩個M3核,一個ISP模塊,用于進行圖像信號處理,一個HDVICP模塊,用于進行高性能視頻編解碼;
[0040](3) OMAX:BP Open-ΜΑΧ,是一個多媒體應用程序的標準;
[0041](4) Key:CameraParameters類中表示某一操作的靜態字符數組。
[0042]在該優選實施例中,Android系統架構中的HAL層,隔絕了 Android上層與底下Iinux內核之間硬件的聯系。Android應用層通過調用services中的庫來實現其與HAL層之間的交互,而Camera HAL通過Open-MAX來實現其與底層的Ducati之間的交互。為了操作 camera硬件,Android系統提供了命名為 libcameraservices.so, camera.0mpX.so 的庫,其中,libcameraservices.so為應用層提供設置參數的接口,camera.0mapX.so讀取設置的參數并發送至Ducati模塊,此處的參數是指Ducati模塊可以與上層交互的所有參數(包括:ISP的效果參數、編解碼的格式參數等。通過上述參數,Android應用層可以操作Ducati實現所有需要的功能);libcameraservices.so的參數設置操作和camera.0mapX.so的參數讀取操作方法是在libcamera_client.so中實現的。本發明在libcamera_client.so中增加了 OSD信息設置讀取的key和操作方法(即操作函數),在優選實施例中,可以設計的OSD信息是包含30個int型變量的數組,用來表示年、月、日、星期、時、分、秒、經度、緯度、速度、重量、24個任意的英文字符或者12個任意的漢字字符以及是否顯示和是否刷新OSD信息的控制標志位;在另外兩個so文件中新增了 OSD參數設置和讀取的接口 ;在camera.0mapX.so和Ducati中增加了 Open-MAX操作的索引號、對應數據結構以及操作函數。通過上述一系列新增的修改可以實現從Android應用層將需要的OSD參數傳遞到Ducati上面,以控制OSD信息的顯示。
[0043]向libcamera_client.so增加OSD信息設置的key和操作方法(即操作函數)是在cameraparameters.h,牙口 c已merapar已meters, cpp 中 5?]? 的。I1-T1C (? ^CameraParameters類的cameraparameters.h文件中新增一個key:
[0044]static const char KEY_VIDE0_0SD_PARAMS[];
[0045]作為CameraParameters類的一個成員,同時加入成員函數作為新key的操作方法:
[0046]void setOsdTime(int*pParam);
[0047]void getOsdTime(int*pParam);
[0048]然后在cameraparameters.cpp初始化新加入的key和定義新key的操作方法(即操作函數), [0049]初始化新key:
[0050]const char CameraParameters:: KEY_VIDE0_0SD_PARAMS [] =" osd-params";[0051]定義的執行新key操作方法的成員函數:
[0052]
【權利要求】
1.一種屏幕菜單式調節方式信息的疊加方法,其特征在于,包括: 處理器經由硬件抽象層HAL接收來自于應用層的待顯示的屏幕菜單式調節方式OSD信息,其中,所述OSD信息包括:0SD參數和OSD顯示內容,所述OSD參數用于控制所述OSD顯示內容在視頻圖像上的顯示方式; 所述處理器獲取所述視頻圖像,并采用所述OSD參數將所述OSD顯示內容疊加至所述視頻圖像。
2.根據權利要求1所述的方法,其特征在于,在所述處理器經由所述HAL接收來自于所述應用層的所述OSD信息之前,還包括: 所述HAL根據指針指示的位置獲取所述OSD信息,其中,所述應用層將所述OSD信息傳遞至所述HAL與所述應用層之間的預設接口,所述預設接口調用第一預設類函數對所述OSD信息進行保存,并將指示所述OSD信息保存的位置的指針傳遞至所述HAL ; 所述HAL按照預設結構體格式對獲取到的所述OSD信息進行組裝,并調用第二預設類函數將組裝后的所述OSD信息傳遞至所述處理器。
3.根據權利要求1所述的方法,其特征在于,在采用所述OSD參數將所述OSD顯示內容疊加至所述視頻圖像之前,還包括: 所述處理器對所述視頻圖像進行去抖處理,其中,所述去抖處理包括:按照預設長度對所述視頻圖像的邊沿進行裁剪,重新計算出經過裁剪處理后的視頻圖像的坐標原點,采用計算出的所述坐標原點確定所述OSD顯示內容在所述視頻圖像上的顯示位置。
4.根據權利要求1所述的方法,其特征在于,在采用所述OSD參數將所述OSD顯示內容疊加至所述視頻圖像之前,還包括: 所述處理器根據所述視頻圖像的分辨率調整所述OSD顯示內容中初始字體的大小。
5.根據權利要求4所述的方法,其特征在于,所述處理器根據所述分辨率調整所述初始字體的大小包括: 所述處理器根據所述視頻圖像的分辨率將字體的大小劃分為N個等級,其中,在1-N個等級中與每個等級對應的字體的大小為所述初始字體大小的N2倍,N為正整數; 所述處理器從第I個等級開始依次調整所述初始字體的大小,直至所述OSD顯示內容中文字個數最多的一行的長度值與所述分辨率中的長度值的比值達到預設閾值。
6.根據權利要求1至5中任一項所述的方法,其特征在于,所述處理器獲取所述視頻圖像,并采用所述OSD參數將所述OSD顯示內容疊加至所述視頻圖像包括: 所述處理器采集視頻數據,并按照YUV422格式將所述視頻數據轉化為所述視頻圖像; 所述處理器在采用所述OSD參數將所述OSD顯示內容疊加至所述視頻圖像時,調整與所述OSD顯示內容對應的像素點集合中每個像素點當前的亮度分量,而保持所述每個像素點當前的色度分量。
7.一種屏幕菜單式調節方式信息的疊加裝置,其特征在于,包括: 接收模塊,用于經由硬件抽象層HAL接收來自于應用層的待顯示的屏幕菜單式調節方式OSD信息,其中,所述OSD信息包括:0SD參數和OSD顯示內容,所述OSD參數用于控制所述OSD顯示內容在視頻圖像上的顯示方式; 疊加模塊,用于獲取所述視頻圖像,并采用所述OSD參數將所述OSD顯示內容疊加至所述視頻圖像。
8.根據權利要求7所述的裝置,其特征在于,所述裝置還包括: 去抖處理模塊,用于對所述視頻圖像進行去抖處理,其中,所述去抖處理包括:按照預設長度對所述視頻圖像的邊沿進行裁剪,重新計算出經過裁剪處理后的視頻圖像的坐標原點,采用計算出的所述坐標原點確定所述OSD顯示內容在所述視頻圖像上的顯示位置。
9.根據權利要求7所述的裝置,其特征在于,所述裝置還包括: 調整模塊,用于根據所述視頻圖像的分辨率調整所述OSD顯示內容中初始字體的大小。
10.根據權利要求9所述的裝置,其特征在于,所述調整模塊包括: 劃分單元,用于根據所述視頻圖像的分辨率將字體的大小劃分為N個等級,其中,在1-N個等級中與每個等級對應的字體的大小為所述初始字體大小的N2倍,N為正整數; 調整單元,用于從第I個等級開始依次調整所述初始字體的大小,直至所述OSD顯示內容中文字個數最多的一行的長度值與所述分辨率中的長度值的比值達到預設閾值。
【文檔編號】H04N5/445GK103974007SQ201310034906
【公開日】2014年8月6日 申請日期:2013年1月28日 優先權日:2013年1月28日
【發明者】魏凱, 殷冬平, 陳仙超, 張國柱 申請人:杭州海康威視數字技術股份有限公司