一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法
【專利摘要】一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法,所述方法包括如下步驟:1)需要根據(jù)疊加的字符的位置及字體大小信息,計(jì)算出該字符所在位置的背景圖像的亮度平均值,該亮度平均值需要和設(shè)定值做比較,以決定是顯示設(shè)定的字符顯示顏色還是與設(shè)定值相反的字符顯示顏色;2)根據(jù)上面亮度值的判斷結(jié)果,動(dòng)態(tài)去修改freetype產(chǎn)生的字模信息,如果用本色顯示,不做任何處理,如果用反色顯示,修改字模相應(yīng)值為相反顏色的顏色索引值;3)對(duì)顏色查找表進(jìn)行處理及更新,如果是單色,顏色查找表中填充相同的yuv值即可;如果需要實(shí)現(xiàn)正反兩種顏色,在同一張表中交替填充兩種顏色的yuv值。
【專利說明】—種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于安防領(lǐng)域,特別涉及在數(shù)字前端設(shè)備,如攝像機(jī)、半球、快球、云臺(tái)等設(shè)備上進(jìn)行字符疊加。
【背景技術(shù)】
[0002]字符疊加功能,是數(shù)字前端設(shè)備必備的一項(xiàng)功能。疊加的信息一般可以動(dòng)態(tài)設(shè)置,包括時(shí)間,地點(diǎn),狀態(tài)等等內(nèi)容。但是,通常的設(shè)備疊加的信息,要么顯示白色,要么顯示黑色,或者是白字加黑邊的顯示效果。這些顯示方式受背景亮度的影響很大,如果背景很亮或者很暗,往往會(huì)導(dǎo)致疊加的信息無法看清,如圖1所示。
[0003]傳統(tǒng)的字符疊加方式有兩種,一種是產(chǎn)生一個(gè)靜態(tài)的字模信息,需要疊加字符的時(shí)候,去字模信息表中查找要疊加的字符的點(diǎn)陣信息,將該字模點(diǎn)陣信息替換到圖像的Y分量上。該方法可以實(shí)現(xiàn)簡(jiǎn)單的黑色或者白色字體顯示。該方法的缺點(diǎn)是,字庫(kù)信息的生成過程較麻煩,而且字庫(kù)信息中的字體大小固定,如果要支持多種大小的字體,需要做多份字庫(kù)信息,浪費(fèi)寶貴的嵌入式設(shè)備存儲(chǔ)空間。
[0004]另一種方式是,通過開源的freetype庫(kù),動(dòng)態(tài)生成字模信息。Freetype功能較強(qiáng)大,支持字體大小設(shè)置,輪廓,斜體等特性,同時(shí)支持透明度的設(shè)置,字體的顯示效果更美觀。Freetype庫(kù)雖然能動(dòng)態(tài)生成字模信息,但是需配合顏色查找表使用,才能顯示出不同的顏色。通常的做法是,設(shè)置單色的顏色查找表,這種方法必然會(huì)造成在某些場(chǎng)景下,疊加的
字符看不清。
[0005]YUV,是一種顏色編碼方法。
[0006]YUV 是編譯 true-color 顏色空間(color space)的種類,Y’ UV, YUV, YCbCr, YPbPr等專有名詞都可以稱為YUV,彼此有重疊。“Y”表示明亮度(Luminance、Luma),“U”和“V”則是色度、濃度(Chrominance、Chroma), Y’ UV, YUV, YCbCr, YPbPr常常有些混用的情況,其中YUV和Y’ UV通常用來描述模擬信號(hào),而相反的YCbCr與YPbPr則是用來描述數(shù)位的影像信號(hào),例如在一些壓縮格式內(nèi)MPEG、JPEG中,但在現(xiàn)今,YUV通常已經(jīng)在電腦系統(tǒng)上廣泛使用。YUV Formats分成兩個(gè)格式:
[0007]緊縮格式(packed formats):將Y、U、V值儲(chǔ)存成Macro Pixels陣列,和RGB的存放方式類似。
[0008]平面格式(planar formats):將Y、U、V的三個(gè)份量分別存放在不同的矩陣中。
[0009]緊縮格式(packed format)中的YUV是混合在一起的,對(duì)于YUV4:4:4格式而言,用緊縮格式很合適的,因此就有了 UYVY、YUYV等。平面格式(planar formats)是指每Y份量,U份量和V份量都是以獨(dú)立的平面組織的,也就是說所有的U份量必須在Y分量后面,而V份量在所有的U份量后面,此一格式適用于采樣(subsample)。平面格式(planar format)有 1420 (4:2:0)、YV12、IYUV 等。
【發(fā)明內(nèi)容】
[0010]本發(fā)明的目的是:在任何場(chǎng)景,都能清晰地看到疊加的信息,同時(shí)字體的顯示顏色
可以設(shè)置。
[0011]本發(fā)明提供一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法,所述方法包括如下步驟:
[0012]I)需要根據(jù)疊加的字符的位置及字體大小信息,計(jì)算出該字符所在位置的背景圖像的亮度平均值,該亮度平均值需要和某個(gè)設(shè)定值做比較,以決定是顯示設(shè)定的字符顯示顏色還是與設(shè)定值相反的字符顯示顏色;
[0013]2)根據(jù)上面亮度值的判斷結(jié)果,需要?jiǎng)討B(tài)去修改freetype產(chǎn)生的字模信息,如果用本色顯示,不做任何處理,如果用反色顯示,需要修改字模相應(yīng)值為相反顏色的顏色索引值;
[0014]3)需要對(duì)顏色查找表進(jìn)行處理及更新。一般顏色查找表支持8位256種顏色,如果是單色,顏色查找表中填充相同的yuv值即可,例如,如果要顯示白色字體,顏色表中可以填充{.y=235,.11=128,.v=128,.a=i},其中.a表示透明度。其它顏色填充的原理相同。如果需要實(shí)現(xiàn)正反兩種顏色,可以在同一張表中交替填充兩種顏色的yuv值。
【專利附圖】
【附圖說明】
[0015]通過參照附圖更詳細(xì)地描述本發(fā)明的示例性實(shí)施例,本發(fā)明的以上和其它方面優(yōu)點(diǎn)將變得更加清楚,在附圖中:
[0016]圖1為現(xiàn)有技術(shù)中純白色字體,高亮的地方看不清的情況示意圖;
[0017]圖2為本發(fā)明的黑白對(duì)比的效果圖;
[0018]圖3為本發(fā)明的彩色字體的效果(左邊藍(lán)色,右邊黃色)圖;
[0019]圖4為本發(fā)明的方法流程圖。
【具體實(shí)施方式】
[0020]在下文中,現(xiàn)在將參照附圖更充分地描述本發(fā)明,在附圖中示出了各種實(shí)施例。然而,本發(fā)明可以以許多不同的形式來實(shí)施,且不應(yīng)該解釋為局限于在此闡述的實(shí)施例。相反,提供這些實(shí)施例使得本公開將是徹底和完全的,并將本發(fā)明的范圍充分地傳達(dá)給本領(lǐng)域技術(shù)人員。
[0021]在下文中,將參照?qǐng)D1至圖4更詳細(xì)地描述本發(fā)明的示例性實(shí)施例。
[0022]在啟動(dòng)字符疊加的時(shí)候,在疊加信息解析部分需要先對(duì)設(shè)置的參數(shù)進(jìn)行解析,包括字符疊加的使能,疊加的位置信息,字體大小,顏色以及信息長(zhǎng)度。
[0023]如果字符疊加的使能開關(guān)打開,則需要進(jìn)行到下一步,即更新相應(yīng)的字符疊加信息,否則,通知字符置加1?塊關(guān)閉OSD功能。
[0024]更新字符疊加信息包括兩部分,更新顏色查找表及字模信息。更新顏色查找表信息依據(jù)設(shè)置的顏色參數(shù),如果只需要實(shí)現(xiàn)單色的效果,可以將顏色查找表中的256種顏色填充成固定的色彩,透明度依次為O到255。如果要實(shí)現(xiàn)正反色,可以交替存儲(chǔ)兩種顏色值,透明度也依次設(shè)置成O到255,即正色用偶數(shù)透明度值,反色用奇數(shù)透明度值。
[0025]如果是設(shè)置單色的顯示效果,不需要更新字模信息,直接將freetype產(chǎn)生的字模傳遞給字符疊加模塊即可。如果是設(shè)置雙色的顯示效果,需創(chuàng)建一個(gè)線程,該線程的作用是,根據(jù)設(shè)置的字符疊加信息,動(dòng)態(tài)計(jì)算要疊加字符所在區(qū)域的亮度平均值,如果該平均值大于設(shè)定的亮度值,需要對(duì)相應(yīng)的字符做反色處理,即將freetype產(chǎn)生的字模信息轉(zhuǎn)換成相反顏色的顏色索引值。
[0026]字符疊加模塊的作用是,根據(jù)得到的顏色查找表和字模信息,完成字符信息疊加到圖像的功能。
[0027]以上所述僅為本發(fā)明的實(shí)施例而已,并不用于限制本發(fā)明。本發(fā)明可以有各種合適的更改和變化。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法,其特征在于: 所述方法包括如下步驟: 1)根據(jù)疊加的字符的位置及字體大小信息,計(jì)算出該字符所在位置的背景圖像的亮度平均值,該亮度平均值需要和設(shè)定值做比較,以決定是顯示設(shè)定的字符顯示顏色還是與設(shè)定值相反的字符顯示顏色; 2)根據(jù)上面亮度值的判斷結(jié)果,動(dòng)態(tài)去修改freetype產(chǎn)生的字模信息,如果用本色顯示,不做任何處理,如果用反色顯示,修改字模相應(yīng)值為相反顏色的顏色索引值; 3)對(duì)顏色查找表進(jìn)行處理及更新,如果是單色,顏色查找表中填充相同的yuv值即可;如果需要實(shí)現(xiàn)正反兩種顏色,在同一張表中交替填充兩種顏色的yuv值。
2.根據(jù)權(quán)利要求1所述的一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法,其特征在于: 在啟動(dòng)字符疊加的時(shí)候,在疊加信息解析部分先對(duì)設(shè)置的參數(shù)進(jìn)行解析,包括字符疊加的使能,疊加的位置信息,字體大小,顏色以及信息長(zhǎng)度; 如果字符疊加的使能開關(guān)打開,則進(jìn)行到下一步,即更新相應(yīng)的字符疊加信息,否則,通知字符疊加模塊關(guān)閉OSD功能。
3.根據(jù)權(quán)利要求1或2所述的一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法,其特征在于: 所述更新字符疊加信息包括兩部分,更新顏色查找表及字模信息;更新顏色查找表信息依據(jù)設(shè)置的顏色參數(shù),如果只需要實(shí)現(xiàn)單色的效果,可以將顏色查找表中的256種顏色填充成固定的色彩,透明度依次為O到255 ;如果要實(shí)現(xiàn)正反色,可以交替存儲(chǔ)兩種顏色值,透明度也依次設(shè)置成O到255,即正色用偶數(shù)透明度值,反色用奇數(shù)透明度值; 如果是設(shè)置單色的顯示效果,不需要更新字模信息,直接將freetype產(chǎn)生的字模傳遞給字符疊加模塊即可;如果是設(shè)置雙色的顯示效果,創(chuàng)建一個(gè)線程,該線程的作用是,根據(jù)設(shè)置的字符疊加信息,動(dòng)態(tài)計(jì)算要疊加字符所在區(qū)域的亮度平均值,如果該平均值大于設(shè)定的亮度值,對(duì)相應(yīng)的字符做反色處理,即將freetype產(chǎn)生的字模信息轉(zhuǎn)換成相反顏色的顏色索引值。
4.根據(jù)權(quán)利要求3所述的一種能支持多種顏色及自動(dòng)反色的字符疊加顯示方法,其特征在于: 所述字符疊加模塊,根據(jù)得到的顏色查找表和字模信息,完成字符信息疊加到圖像的功能。
【文檔編號(hào)】H04N5/262GK103731608SQ201310739553
【公開日】2014年4月16日 申請(qǐng)日期:2013年12月27日 優(yōu)先權(quán)日:2013年12月27日
【發(fā)明者】肖仁偉 申請(qǐng)人:深圳英飛拓科技股份有限公司