新四季網

基於2d圖像加速器實現像素疊加的方法

2023-10-20 00:19:27

專利名稱:基於2d圖像加速器實現像素疊加的方法
基於2D圖像加速器實現像素疊加的方法
技術領域:
本發明涉及視頻處理技術,尤其涉及一種基於2D圖像加速器實現像素疊加的方法。
背景技術:
現在的遊戲,不管是2D還是3D的,為了追求透明光影效果,通常都會使用到Alpha-Blending技術。所謂Alpha-Blending技術,是按照「Alpha」混合向量的值來混合源像素和目標像素的一種圖像處理技術。Alpha混合向量一般表示了圖片的透明度。兩個像素的a混合首先,把源像素和目標像素的RGB的紅、綠、藍三個顏色分量分離。然後把源像素的三個顏色分量分別乘上Alpha的值,並把目標像素的三個顏色分量分別乘上Alpha的反值。接下來把結果按對應顏色分量相加,再對最後求得的每個分量結果除以Alpha的最大值;最後把三個顏色分量重新合成為一個像素輸出。TV BOX (智能電視盒)內置android (安卓)作業系統,視頻播放採用Overlay (覆蓋)模式進行顯示,用戶界面n對應的緩存數據最終顯示在幀緩存(Frame Buffer,簡稱FB)上,FB覆蓋在Overlay上方,即用戶界面數據在視頻數據的上方(如帶有前進、後退和暫停鍵的對話框用戶界面在視頻的數據上方);一般智能電視盒的顯示屏LCD像素點的關鍵色(Color Key)是設置為黑色,即黑色(0x0000)作為過濾色,這樣FB上除了用戶界面UI區域外的其他像素點都為黑色,這樣最後的顯示效果就是能透過FB的黑色區域看到視頻的圖像。但是當用戶界面n區域中也有像素點為黑色時,也會被過濾掉,這樣用戶界面的數據就顯示不出來,為了使黑色的用戶界面n區域不被當做過濾色,也能顯示出來,那麼需要用電視盒的CPU對格式是ARGB的n進行逐點處理,判斷每個像素點的A分量,如果A分量值不等於0x00,則對像素點的B分量進行處理,A分量等於0x00的像素點是不需要顯示出來的,故不作處理。這樣用CPU對n進行逐點判斷和運算帶來的問題是CPU耗時較多,特別在n較大(1280*720)用CPU來處理,耗時很長需要120ms左右,相當於n刷新只有
8.3fps,這樣導致TV BOX的滑鼠滑動非常卡頓,滑動不順暢,用戶體驗非常差。現有技術中提供了一種「進行圖像混合的處理方法和處理裝置」,公開號為CN102281381A ;
公開日為2011. 12. 14的中國專利,其處理方法包括通過用戶接口選定第一圖像格式的預定顏色的色值作為關鍵色色值;通過所述關鍵色色值計算所述預定顏色在第二圖像格式中的色值,作為關鍵色轉換值;根據所述關鍵色轉換值,獲得第二圖像格式的圖層中的關鍵色區域和非關鍵色區域,對所述關鍵色區域進行預設的圖像混合運算,獲得所述關鍵色區域的處理結果,並將所述處理結果和所述非關鍵色區域疊加在第一圖像格式的圖層上,獲得圖像混合結果。該發明在對不同格式的同一種顏色進行處理時,能夠避免換算色值的麻煩,提高處理效率。但該發明只是針對兩種不同格式的同一種顏色進行處理,不能對同種格式的不同種顏色進行處理。

發明內容
本發明要解決的技術問題,在於提供一種基於2D圖像加速器實現像素疊加的方法。本發明是這樣實現的基於電視盒的2D圖像加速器實現像素疊加的方法,包括如下步驟步驟10、配置 2D 圖像加速器的 Alpha-Blending 公式為 Cd』 =Cs+Cd*As/0xff ;其中Cd』表示最後計算出新的顏色值,Cs表示源的顏色值,Cd表示目標的顏色值,As表示源的alpha值;步驟20、配置2D圖像加速器的Alpha-Blending的自動飽和功能,所述自動飽和功能為所述公式Cs+Cd*As計算出新的顏色值Cd』 >0xff時,將計算出新的顏色值Cd』置為Oxff ;步驟30、電視盒的用戶界面播放一幀圖像時,該播放的幀圖像為視頻源畫布;在 電視盒中分配一塊緩衝區buffer,所述緩衝區大小與視頻源畫布大小一致,在所述緩衝區中存儲顏色值為0xff000008的數據,該顏色值即為目標的顏色值;步驟40、所述視頻源畫布與所述分配的緩衝區buffer中顏色值為0xff000008的數據進行Alpha-Blending處理,將視頻源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值,從而完成像素的疊加過程。進一步地,所述步驟40將視頻源畫布中的每個像素與顏色值為OxffOOOOOS的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值具體為將視頻源畫布中的每個像素的RGB的紅、綠、藍三個顏色進行分量分離,將顏色值為0Xff000008的數據RGB也進行分量分離,將視頻源畫布的各顏色分量和對應的顏色值為0xff000008的數據RGB的顏色分量根據公式Cd』 =Cs+Cd*As/0xff計算得到對應新的顏色分量,如果新的顏色分量值>0xff時,將新的顏色分量值置為Oxff,最後將三個新的顏色分量重新合成一個疊加後的像素的顏色值。進一步地,所述緩衝區buffer支持的圖像格式為ARGB8888。本發明具有如下優點本發明在電視盒的播放視頻時,視頻以幀為單位,一幀可以認為是一張畫布,該播放的一幀圖像為源畫布,在電視盒中分配一塊緩衝區buffer,在所述緩衝區中存儲顏色值為OxfTOOOOOS的數據,所述視頻源畫布與所述分配的緩衝區buffer中顏色值為0xff000008的數據進行Alpha-Blending處理,將視頻源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值,從而完成像素的疊加過程。本發明用2D圖像加速器取代CPU對ARGB格式的用戶界面UI畫布逐點處理,解決了 CPU開銷大、滑鼠滑動不順暢的問題;且實現了無需CPU處理,即可使用戶界面區域的像素點為黑色部分不會被過濾掉,能在視頻上顯示出來。

圖I為本發明方法流程示意圖。圖2為本發明電視盒的用戶界面播放的視頻源畫布的示意圖。圖3為本發明電視盒中分配一塊緩衝區buffer的示意圖。
圖4為本發明疊加後的畫布的示意圖。
具體實施方式請參閱圖I所示,基於電視盒的2D圖像加速器實現像素疊加的方法,包括如下步驟步驟10、配置 2D 圖像加速器的 Alpha-Blending 公式為 Cd』 =Cs+Cd*As/0xff ;其中Cd』表示最後計算出新的顏色值,Cs表示源的顏色值,Cd表示目標的顏色值,As表示源的alpha值;步驟20、配置2D圖像加速器的Alpha-Blending的自動飽和功能,所述自動飽和功能為所述公式Cs+Cd*As計算出新的顏色值Cd』 >0xff時,將計算出新的顏色值Cd』置為Oxff,這樣避免新的顏色值溢出帶來的顏色跳變的問題(如當B分量的顏色值是Oxfe, 加上8後B分量的顏色值直接設置為Oxff,而不是0x06);步驟30、電視盒的用戶界面播放一幀圖像時,該播放的幀圖像為源畫布;(電視盒播放視頻時,視頻以幀為單位,一幀可以認為是一張畫布,該播放的一幀圖像為源畫布)在電視盒中分配一塊緩衝區buffer,所述緩衝區大小與視頻源畫布大小一致,支持圖像格式為ARGB8888,在所述緩衝區中存儲顏色值為Oxff000008的數據,該顏色值即為目標的顏色值(Alpha-Blending 公式中的 Cd);步驟40、所述視頻源畫布與所述分配的緩衝區buffer中顏色值為0xff000008的數據進行Alpha-Blending處理,將源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值,從而完成像素的疊加過程。其中將源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值具體為將源畫布中的每個像素的RGB的紅、綠、藍三個顏色進行分量分離,將顏色值為0XfT000008的數據RGB也進行分量分離,將源畫布的各顏色分量和對應的顏色值為0xff000008的數據RGB的顏色分量根據公式Cd』 =Cs+Cd*As/0xff計算得到對應新的顏色分量,如果新的顏色分量值>0xff時,將新的顏色分量值置為Oxff,最後將三個新的顏色分量重新合成一個疊加後的像素的顏色值。下面結合一具體實施例對本發明作進一步說明。I、配置電視盒的2D圖像加速器的Alpha-Blending公式為Cd』 =Cs+Cd*As/0xff ;其中Cd』表示最後計算出新的顏色值,Cs表示源的顏色值,Cd表示目標的顏色值,As表示源的alpha值;2、配置2D圖像加速器的Alpha-Blending的自動飽和功能,所述自動飽和功能為所述公式Cs+Cd*As計算出新的顏色值Cd』 >0xff時,將計算出新的顏色值Cd』置為OxfT ;3、如圖2所示,電視盒的用戶界面播放播放一幀圖像時,該播放的一幀圖像為源畫布;該源畫布的前4個像素點的ARGB顏色值分別為第一點ARGB=OxfTOOOOOO,第二點ARGB=Oxff7dl9fa,第三點 ARGB=Oxff000000,第四點 ARGB=Oxfff4f 168 ;如圖 3 所示,在電視盒中分配一塊緩衝區buffer,所述緩衝區大小與源畫布大小一致,並支持ARGB格式,在所述緩衝區中存儲顏色值為OxffOOOOOS的數據,該顏色值即為目標的顏色值;4、將所述源畫布與所述分配的緩衝區buffer中顏色值為0xff000008的數據進行Alpha-Blending處理,將源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/Oxff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值,從而完成像素的疊加過程。其中將源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/Oxff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值具體為將源畫布中的第一像素點ARGB=OxffOOOOOO的RGB的紅、綠、藍三個顏色進行分量分離,即 ARGB=OxffOOOOOO 進行隔位分離 A=Oxff、R=OxOO、G=OxOO、B=OxOO ;將顏色值為Oxff000008的數據RGB也進行分量分離,即R』 =0x00、G,=0x00、B,=0x08 ;則根據公式 Cd』 =Cs+Cd*As/0xff,即紅的分量 Cd』 =0x00 (即為 R)+0x00 (即為 R』)*0xff(即為 A) /Oxff=OxOO ;綠的分量 Cd,=0x00 (即為 G) +0x00 (即為 G,) *0xff (即為 A)/Oxff=OxOO ;藍的分量 Cd』 =0x00 (即為 B)+0x08 (即為 B』)*0xff (即為 A)/0xff=0x08 ;將新的紅的分量0x00,綠的分量0x00,藍的分量0x08重新合成一個疊加後的像素的顏色值0xff000008 ;將源畫布中的第二像素點ARGB=0xff7dl9fa的RGB的紅、綠、藍三個顏色進行分量分離,即ARGB=0xff7dl9fa進行隔位分離A=Oxff、R=0x7d、G=0xl9、B=Oxfa ;將顏色值為0xff000008的數據RGB也進行分量分離,即R,=0x00、G,=0x00、B,=0x08 ;則根據公式 Cd』 =Cs+Cd*As/0xff,即紅的分量 Cd』 =0x7d (即為 R)+0x00 (即為 R』)*0xff (即為 A)/0xff=0x7d ;綠的分量 Cd』=0xl9 (即為 G)+0x00 (即為 G』)*0xff (即為 A)/0xff=0xl9 ;藍 的分量Cd』 =Oxfa (即為B)+0x08 (即為B』)*0xff (即為A)/Oxff=Oxff ;將新的紅的分量0x7d,綠的分量0x19,藍的分量Oxff重新合成一個疊加後的像素的顏色值0xff7dl9ff ;同理將源畫布中的第三像素點ARGB=OxffOOOOOO,第四像素點ARGB=0xfff4f 168 ;經過處理後得到疊加後的像素的顏色值對應為0xff000008、0xfff4fl70 ;從而完成像素的疊加過程。以上所述僅為本發明的較佳實施例,凡依本發明申請專利範圍所做的均等變化與修飾,皆應屬本發明的涵蓋範圍。
權利要求
1.基於電視盒的2D圖像加速器實現像素疊加的方法,其特徵在於包括如下步驟 步驟10、配置2D圖像加速器的Alpha-Blending公式為Cd』=Cs+Cd*As/0xff ;其中Cd』表示最後計算出新的顏色值,Cs表示源的顏色值,Cd表示目標的顏色值,As表示源的alpha值; 步驟20、配置2D圖像加速器的Alpha-Blending的自動飽和功能,所述自動飽和功能為所述公式Cs+Cd*As計算出新的顏色值Cd』 >0xff時,將計算出新的顏色值Cd』置為Oxff ; 步驟30、電視盒的用戶界面播放一幀圖像時,該播放的幀圖像為視頻源畫布;在電視盒中分配一塊緩衝區buffer,所述緩衝區大小與視頻源畫布大小一致,在所述緩衝區中存儲顏色值為0Xff000008的數據,該顏色值即為目標的顏色值; 步驟40、所述視頻源畫布與所述分配的緩衝區buffer中顏色值為0xff000008的數據進行Alpha-Blending處理,將視頻源畫布中的每個像素與顏色值為0xff000008的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值,從而完成像素的疊加過程。
2.根據權利要求I所述的基於電視盒的2D圖像加速器實現像素疊加的方法,其特徵在於所述步驟40將視頻源畫布中的每個像素與顏色值為OxfTOOOOOS的數據根據公式Cd』 =Cs+Cd*As/0xff和Alpha-Blending的自動飽和功能計算出疊加後像素的顏色值具體為將視頻源畫布中的每個像素的RGB的紅、綠、藍三個顏色進行分量分離,將顏色值為0xff000008的數據RGB也進行分量分離,將視頻源畫布的各顏色分量和對應的顏色值為0xff000008的數據RGB的顏色分量根據公式Cd』 =Cs+Cd*As/0xff計算得到對應新的顏色分量,如果新的顏色分量值>0xff時,將新的顏色分量值置為Oxff,最後將三個新的顏色分量重新合成一個疊加後的像素的顏色值。
3.根據權利要求I所述的基於電視盒的2D圖像加速器實現像素疊加的方法,其特徵在於所述緩衝區buffer支持的圖像格式為ARGB8888。
全文摘要
本發明提供一種基於電視盒的2D圖像加速器實現像素疊加的方法,1、配置2D圖像加速器的Alpha-Blending公式Cd』=Cs+Cd*As/0xff;2、配置2D圖像加速器的自動飽和功能3、電視盒播放視頻,一幀是一張畫布,處理視頻圖像時,在電視盒中分配一存儲顏色值為0xff000008的數據的緩衝區buffer;4、將視頻源畫布與分配的緩衝區buffer中顏色值為0xff000008的數據進行Alpha-Blending處理,來完成像素的疊加過程。本發明無需CPU處理,可使用戶界面區域的像素點為黑色部分不會被過濾掉,能顯示出來。TV BOX出現用戶界面時,用戶通過滑鼠操作比較流暢不會卡。
文檔編號G06T1/00GK102724581SQ201210175958
公開日2012年10月10日 申請日期2012年5月31日 優先權日2012年5月31日
發明者黃德勝 申請人:福州瑞芯微電子有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀