專利名稱:影像譯碼方法與使用該方法的圖形處理設備的制作方法
技術領域:
本發明涉及ー種圖形處理設備,且尤其涉及ー種使用三維(3D)硬件加速器實現反量化(Dequantization)運算的圖形處理設備。
背景技術:
圖1顯示現有靜態影像壓縮標準(Joint Photographic Experts Group,以下簡稱為JPEG)譯碼器之影像解壓縮流程的示意圖。如圖所示,JPEG譯碼器10包括熵譯碼器(Entropy Decoder) 120、反量化器(Dequantizer) 130 與反離散余弦變換器(Inverse Discrete Cosine Transformer,IDC T) 140。需注意到,JPEG譯碼器為以離散余弦變換為基礎(Discrete CosineTransform-based)的譯碼器,JPEG影像數據是8X8像素矩陣為基本単位。輸入影像數據110為經過壓縮的MXN像素數組。當執行JPEG影像譯碼操作吋,熵譯碼器120接收輸入影像數據110,并且根據標頭量化表(Table Specification) 115將輸入影像數據110處理成為ニ維(2D)量化的格式影像數據(未顯示)。反量化器130根據標頭量化表125對輸入影像數據110執行反量化操作,即根據標頭量化表125對由MXN像素數組組成之輸入影像數據110中的各個像素數組執行純量乘法運算。反離散余弦變換器140對反量化后的輸入影像數據110執行反離散余弦變換操作,然后色彩空間轉換器(Color Space Converter) 150對反離散余弦變換后之輸入影像數據110執行色彩模式變換操作,以將輸入影像數據110變換為RGB格式的輸出影像數據
160。當所述JPEG譯碼器以軟件方式實現時,例如,JPEG影像譯碼模塊,其中包含的各個硬件組件亦以軟件模塊實作,并且嵌入在中央處理器(Central Processing Unit, CPU)內部。因此,中央處理器可通過軟件模塊提供JPEG影像處理功能吋,是以軟件方式實現所述JPEG譯碼器的JPEG影像譯碼流程,例如,嵌入在中央處理器中的JPEG影像譯碼模塊。然而,由于JPEG譯碼流程的運算較一般影像處理復雜,故JPEG影像譯碼模塊的運算效能完全倚賴中央處理器的運算能力。因此,中央處理器的運算能力愈差,JPEG影像譯碼模塊的效能愈差。
發明內容
有鑒于此,需提供ー種影像解碼方法。同時,還需提供ー種使用所述影像解碼方法的圖形處理設備。ー種影像譯碼方法,應用于具有中央處理器的設備,所述中央處理器具有熵譯碼模塊、反離散余弦變換模塊、色彩空間變換模塊、第一標頭量化表與第二標頭量化表。所述設備還包括圖形處理器。所述影像譯碼方法包括經由所述中央處理器取得輸入影像數據;經由所述熵譯碼模塊井根據所述第一標頭量化表將所述輸入影像數據處理成為ニ維量化影像;經由所述圖形處理器井根據所述第二標頭量化表對所述輸入影像數據執行反量化操作;經由所述反離散余弦變換模塊對所述輸入影像數據執行反離散余弦變換操作;以及經由所述色彩空間變換模塊對所述輸入影像數據執行色彩模式變換操作,以將所述輸入影像數據變換為輸出影像數據。所述影像譯碼方法的反量化操作還包括自所述熵譯碼模塊取得所述ニ維量化影像;自所述第二標頭量化表取得標頭量化影像;產生空白影像;對所述空白影像執行變換與打光操作以及光柵化操作;對所述ニ維量化影像與所述空白影像執行映像操作;展開所述標頭量化影像以 成為MXN像素數組;對所述ニ維量化影像與所述標頭量化影像執行調制操作以產生離散余弦系數;以及根據所述離散余弦系數將所述ニ維量化影像渲染至幀緩存對象以產生所述反量化影像。ー種圖形處理設備,包括中央處理器與圖形處理器。所述中央處理器還包括第一標頭量化表、第二標頭量化表、熵譯碼模塊、反離散余弦變換模塊與色彩空間變換模塊對。所述熵譯碼模塊取得輸入影像數據,并且根據所述第一標頭量化表將所述輸入影像數據處理成ニ維量化影像。圖形處理器根據所述第二標頭量化表對所述輸入影像數據執行反量化操作。所述反離散余弦變換模塊對所述輸入影像數據執行反離散余弦變換操作。所述色彩空間變換模塊對所述輸入影像數據執行色彩模式變換操作,以將所述輸入影像數據變換為輸出影像數據。所述圖形處理器實現原本由中央處理器執行的反量化運算可分散所述中央處理器的負載,可達到效能提升的目的。所述圖形處理器自所述熵譯碼模塊取得所述ニ維量化影像,自所述第二標頭量化表取得標頭量化影像,并且自動產生空白影像。所述圖形處理器還包括變換與打光模塊、光柵化模塊、映像模塊、調制模塊與渲染模塊。所述變換與打光模塊對所述空白影像執行變換與打光操作。所述光柵化模塊對所述空白影像執行光柵化操作。所述映像模塊對所述ニ維量化影像與所述空白影像執行映像操作。所述調制模塊展開自所述標頭量化影像成為M X N像素數組,并且對所述ニ維量化影像與所述標頭量化影像執行調制操作以產生離散余弦系數。所述渲染模塊根據所述離散余弦系數將所述ニ維量化影像渲染至幀緩存對象以產生反量化影像。本發明之一種實施方式利用獨立的圖形處理器來實現圖形的反量化運算,可以提高圖形處理設備的系統效能與降低成本。
圖I為現有JPEG譯碼器之影像解壓縮流程的示意圖。圖2為本發明之一種實施方式之圖形處理設備的架構示意圖。圖3為本發明之一種實施方式之圖形處理器執行反量化操作的流程示意圖。圖4為本發明之一種實施方式之影像數據的純量乘法的示意圖。圖5為本發明之一種實施方式之JPEG影像譯碼方法的步驟流程圖。圖6為本發明之一種實施方式之反量化操作的步驟流程圖。主要元件符號說明JPEG 譯碼器10JPEG影像譯碼模塊 20圖形處理器30
中央處理器40圖形處理設備50輸入影像數據110、210標頭量化表115、125、215、 225熵譯碼器120反量化器130反離散余弦變換器140色彩空間轉換器150輸出影像數據160、260熵譯碼模塊220反量化模塊230反離散余弦變換模塊 240色彩空間轉換模塊250二維量化影像301標頭量化影像302空白影像303變換與打光模塊304光柵化模塊305映像模塊306調制模塊307離散余弦系數308渲染模塊309反量化影像310
具體實施例方式本發明一種實施方式之影像譯碼方法是利用獨立于中央處理器外之圖形處理器(Graphics Processing Unit,GPU) (3D硬件加速器),來取代原先中央處理器中的反量化功能,如此可減輕JPEG影像譯碼模塊對中央處理器的負載。此外,不需要額外的JPEG譯碼器執行JPEG譯碼操作,可以降低硬件成本。圖2為本發明一種實施方式之圖形處理設備的架構示意圖。如圖所示,本發明一種實施方式之圖形處理設備50包括圖形處理器30與中央處理器40。中央處理器40包括JPEG影像譯碼模塊20與色彩空間轉換模塊250。JPEG影像譯碼模塊20還包括熵譯碼模塊220、反量化模塊230與反離散余弦變換模塊240。本發明一種實施方式之JPEG影像譯碼流程是利用圖形處理設備50中的圖形處理器30來完成原本由中央處理器40之反量化器230執行的反量化操作,其中圖形處理器30為3D硬件加速器。需注意到,JPEG影像數據是以個8X8像素矩陣為基本單位。輸入影像數據210為經過壓縮的MXN像素數組。當執行JPEG影像譯碼操作時,熵譯碼模塊220接收輸入影像數據210,并且根據標頭量化表215將輸入影像數據210處理成為二維量化格式的影像數據(未顯示)。圖形處理器30根據標頭量化表225對輸入影像數據210執行反量化操 作,即根據標頭量化表225對由MXN像素數組組成之輸入影像數據210中的各個像素數組執行純量乘法運算。反離散余弦變換模塊240對反量化后的輸入影像數據210執行反離散余弦變換操作,色彩空間轉換模塊250對反離散余弦變換的輸入影像數據210執行色彩模式變換操作,以將輸入影像數據210變換為RGB格式的輸出影像數據260。需注意到,本發明一種實施方式之反量化操作是以3D管線(Pipelines)實現,其實現方法如下所述。圖3為本發明一種實施方式之圖形處理器30執行反量化操作的流程示意圖。圖形處理器30包括變換與打光模塊304、光柵化模塊305、映像模塊306、調制模塊307與渲染模塊309。圖形處理器30自熵譯碼模塊220取得的JPEG影像數據是二維量化影像301 (即,輸入影像數據210),其包含MXN個像素數組,每一個像素數組為8X8像素矩陣。圖形處理器30產生空白影像303,其影像大小為MXN像素數組的范圍,且所述范圍由頂點V0、VI、V2、V3組成。變換與打光模塊304對空白影像303執行變換與打光操作。光柵化模塊305對空白影像303執行光柵化操作。映像模塊306對二維量化影像301與空白影像303執行映像操作(Mapping),使得二維量化影像301映像至空白影像303的范圍內。二維量化影像301可視為紋理0 (Texture 0)的影像數據,標頭量化表中的標頭量化影像302為紋理I (Texture I)的影像數據。調制模塊307對二維量化影像301與標頭量化影像302執行調制操作(Modulate),即令影像相乘以使兩個紋理數據相混合,如圖4所
/Jn o由于兩個紋理數據的維度(Dimension)并不相同(通常二維量化影像的維度大于標頭量化表的維度),于是在進行調制前必須將標頭量化影像302 (紋理I)的紋理包裝(Texture Wrapping)設定為重復模式(Repeat Mode),以展開紋理I的影像數據,以使紋理I的影像數據維度與紋理0的影像數據維度相同,即MXN個像素數組。所述調制操作是令紋理0的影像數據與紋理I的影像數據相乘(如圖4所示),可得純量乘法的運算結果(TO,iXTl,i = Ci),也就是輸入影像數據210的離散余弦系數308 (Ci) o前述流程即為以多紋理映像(Multi-Texture Mapping)實現反量化過程的步驟。渲染模塊309根據離散余弦系數Ci,并利用3D管線中「渲染到紋理(Render toTexture) J的技術,將二維量化影像301渲染至巾貞緩存對象(Frame Buffer Object, FB0)(S309)以產生反量化影像310。需注意到,將渲染的結果輸出至幀緩存對象309而非顯示裝置(未顯示)上,可讓另一紋理的影像數據用于紋理映像。中央處理器40對反量化影像310執行反離散余弦變換(IDCT)操作,以獲得輸入影像數據210在RGB空間域表示之數字影像,即輸出影像數據260。圖5為本發明一種實施方式之JPEG影像譯碼方法的步驟流程圖。首先,通過中央處理器中40之熵譯碼模塊220取得輸入影像數據210(步驟S510),其為一個經過壓縮的MXN像素數組,并且根據第一標頭量化表215將所述輸入影像數據210處理成為二維量化格式的影像數據(步驟S520)。根據第二標頭量化表225,通過獨立于所述中央處理器40外之圖形處理器30對所述輸入影像數210據執行反量化操作(步驟S530),即根據所述第二標頭量化表225對由MXN像素數組組成之所述輸入影像數據中的各個像素數組執行純量乘法運算。通過所述中央處理器40中之反離散余弦變換模塊240對反量化后之所述輸入影像數據210執行反離散余弦變換操作(步驟S540)。通過所述中央處理器40中之色彩空間轉換模塊250對反離散余弦變換后之所述輸入影像數據210執行色彩模式變換操作,以將所述輸入影像數據變210換為RGB格式的輸出影像數據260 (步驟S550)。圖6為本發明一種實施方式之反量化操作的步驟流程圖。首先,自圖5中的熵譯碼模塊220取得二維量化影像301,自圖5中的標頭量化表225取得標頭量化影像302,并且產生空白影像303 (S610)。所述空白影像303的大小為MXN像素數組的范圍,且所述范圍由頂點V0、V1、V2、V3組成。對所述空白影像303執行變換與打光操作以及光柵化操作(S620),并且對所述二維量化影像301與所述空白影像303執行映像操作(Mapping),使得所述二維量化影像301映像至所述空白影像303的范圍內(S630)。將所述標頭量化影像302 (紋理I)的紋理包裝設定為重復模式,以展開所述標頭量化影像302成為MXN的像素數組(S640)。對所述二維量化影像301與所述標頭量化影像302執行調制操作,意即令影像相乘使兩個紋理數據相混合以產生所述二維量化影像301之離散余弦系數308(S650),如圖4所示。根據所述離散余弦系數308,并利用3D管線中「渲染到紋理」的技術,將所述二維量化影像301渲染至幀緩存對象(未顯示)以產生反量化影像310(S660)。本發明一種實施方式之JPEG影像譯碼流程利用3D硬件加速器,并通過固有函式3D 繪圖管線(Fixed-Function 3D Pipeline)與多紋理映像(Multi-Texture Mapping)來實現反量化運算。本發明一種實施方式之JPEG影像譯碼流程以3D硬件加速器實現部份JPEG譯碼器的功能,使其效能不再倚賴中央處理器的運算能力,同時可分散中央處理器在運行JPEG 譯碼器時之負載,達到平行處理之效果。因此,在不增加硬件成本下,可達到效能提升的目的。
權利要求
1.一種影像譯碼方法,應用于具有中央處理器的設備,其特征在于,所述中央處理器具有熵譯碼模塊、反離散余弦變換模塊、色彩空間變換模塊、第一標頭量化表與第二標頭量化表,所述設備還包括圖形處理器,所述影像譯碼方法包括 經由所述中央處理器取得輸入影像數據; 經由所述熵譯碼模塊并根據所述第一標頭量化表將所述輸入影像數據處理成為二維量化影像; 經由所述圖形處理器并根據所述第二標頭量化表對所述輸入影像數據執行反量化操作; 經由所述反離散余弦變換模塊對所述反量化后的輸入影像數據執行反離散余弦變換操作;以及 經由所述色彩空間變換模塊對所述反離散余弦變換后的輸入影像數據執行色彩模式變換并輸出。
2.如權利要求I所述的影像譯碼方法,其特征在于,所述反量化操作還包括 自所述熵譯碼模塊取得所述二維量化影像; 自所述第二標頭量化表取得標頭量化影像; 廣生空白影像; 對所述空白影像執行變換與打光操作以及光柵化操作; 對所述二維量化影像與所述空白影像執行映像操作; 展開所述標頭量化影像以成為MXN像素數組; 對所述二維量化影像與所述標頭量化影像執行調制操作以產生離散余弦系數;以及 根據所述離散余弦系數將所述二維量化影像渲染至幀緩存對象以產生所述反量化影像。
3.如權利要求2所述的影像譯碼方法,其特征在于,所述映像操作還包括將所述二維量化影像映像至所述空白影像內。
4.如權利要求2所述的影像譯碼方法,其特征在于,所述反量化操作還包括將所述標頭量化影像的紋理包裝設定為重復模式,以展開所述標頭量化影像以成為MXN像素數組。
5.一種圖形處理設備,其特征在于,包括 中央處理器,包括第一標頭量化表、第二標頭量化表、反離散余弦變換模塊、色彩空間變換模塊以及熵譯碼模塊,所述熵譯碼模塊用于取得輸入影像數據,并且根據所述第一標頭量化表將所述輸入影像數據處理成二維量化影像;以及 圖形處理器,用于根據所述第二標頭量化表對所述輸入影像數據執行反量化操作;其中,所述反離散余弦變換模塊對所述反量化后的輸入影像數據執行反離散余弦變換操作,然后所述色彩空間變換模塊對所述反離散余弦變換后的輸入影像數據執行色彩模式變換操作并輸出。
6.如權利要求5所述的圖形處理設備,其特征在于,所述圖形處理器自所述熵譯碼模塊取得所述二維量化影像,自所述第二標頭量化表取得標頭量化影像,并且自動產生空白影像,所述圖形處理器還包括 變換與打光模塊,用于對所述空白影像執行變換與打光操作; 光柵化模塊,用于對所述空白影像執行光柵化操作;映像模塊,用于對所述二維量化影像與所述空白影像執行映像操作; 調制模塊,用于展開所述標頭量化影像成為MXN像素數組,并且對所述二維量化影像與所述標頭量化影像執行調制操作以產生離散余弦系數;以及 渲染模塊,用于根據所述離散余弦系數將所述二維量化影像渲染至幀緩存對象以產生反量化影像。
7.如權利要求6所述的圖形處理設備,其特征在于,所述映像模塊還將所述二維量化影像映像至所述空白影像內。
8.如權利要求6所述的圖形處理設備,其特征在于,所述映像模塊還將所述標頭量化影像的紋理包裝設定為重復模式,以展開所述標頭量化影像以成為MXN像素數組。
全文摘要
一種使用影像譯碼方法的圖形處理設備,包括中央處理器與圖形處理器。所述中央處理器還包括第一標頭量化表、第二標頭量化表、熵譯碼模塊、反離散余弦變換模塊與色彩空間變換模塊對。所述熵譯碼模塊取得輸入影像數據,并且根據所述第一標頭量化表將所述輸入影像數據處理成二維量化影像。圖形處理器根據所述第二標頭量化表對所述輸入影像數據執行反量化操作。所述反離散余弦變換模塊對所述輸入影像數據執行反離散余弦變換操作。所述色彩空間變換模塊對所述輸入影像數據執行色彩模式變換操作,以將所述輸入影像數據變換為輸出影像數據。所述圖形處理器與影像譯碼方法實現原本由中央處理器執行的反量化運算可分散所述中央處理器的負載,可達到效能提升的目的。
文檔編號H04N7/30GK102625090SQ20111002863
公開日2012年8月1日 申請日期2011年1月26日 優先權日2011年1月26日
發明者吳巧穎, 李梓煜, 郭柏廷 申請人:鴻富錦精密工業(深圳)有限公司, 鴻海精密工業股份有限公司