TWI336444B - Efficient fixed-point approximations of forward and inverse discrete cosine transforms - Google Patents

Efficient fixed-point approximations of forward and inverse discrete cosine transforms Download PDF

Info

Publication number
TWI336444B
TWI336444B TW096123080A TW96123080A TWI336444B TW I336444 B TWI336444 B TW I336444B TW 096123080 A TW096123080 A TW 096123080A TW 96123080 A TW96123080 A TW 96123080A TW I336444 B TWI336444 B TW I336444B
Authority
TW
Taiwan
Prior art keywords
value
matrix
factor
coefficients
coefficient
Prior art date
Application number
TW096123080A
Other languages
English (en)
Other versions
TW200823694A (en
Inventor
Yuriy Reznik
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200823694A publication Critical patent/TW200823694A/zh
Application granted granted Critical
Publication of TWI336444B publication Critical patent/TWI336444B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • H04N19/45Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

1336444 九、發明說明: 【發明所屬之技術領域】 ., 本揭示案係關於電腦圖形及多媒體,且更明確而古係關 於圖形、影像及視訊資訊之壓縮。 【先前技術】 許多現存的影像及視訊編碼標準使用壓縮技術以便允許 將高解析度影像及視訊作為一相對緊密檔案或資料流加以 儲存或傳輸。該等編碼標準包括聯合照相專家組(jpeg)、 動畫專家組(MPEG)-l、MPEG-2、MPEG-4部分2、H 261、 Η.263及其他影像或視訊編碼標準。 根據許多此等標準,視訊圖框係使用"空間"編碼加以壓 縮。此等圊框可為原始圖框(亦即,i圖框)或可為藉由一使 用運動補償之時間編碼過程產生之剩餘圖框。在空間編碼 期間,圖框分裂成相等尺寸之像素區塊。舉例而言,一未 經壓縮之圖框可分裂成一組8x8像素區塊。對於每一像素 區塊,像素分量被分成像素分量值矩陣。舉例而言,每二 像素區塊可被劃分成一 γ像素分量值矩陣、一。像素分量 值矩陣,及一V像素分量值矩陣。在此實例中,Υ像素分 量值指示亮度值且U&V像素分量值表示色度值。 此外在工間編碼期間,對一正被編碼之圖框中的每一 像素分里值矩陣應用一前向離散餘弦轉換(fdct)。—理想 的一維FDCT:由下式定義: 、 /1=0 2Ν ^ 22239.doc /、中為iV個原始值之陣列,,為湖經轉換之值之陣列,且 係數C由下式給出 Φ)=ViT^,φ)=j2/n \<k<N-\。 一理想的二維FDCT由下式定義 / \ / "一】
n=1 ㈣ 2N 2N 其中^為#個原始值之陣列 C(zj·)由 c(zy)=c(z)c⑺給出 /為iV個經轉換之值之陣列,且 且將c(A〇定義為一維的狀況。 當使用FDCT轉換像夸八曰7士广& 士 1豕常分I值區塊時,產生一係數矩 車可接著使用(例如)霍夫曼碼或算術碼量化及編碼此係 車 視。扎位元流表示對一系列未經壓縮之視訊圖框
中之一系列視訊圖框中之戶斤古&必八θ Γ~上JtL V T <所有色杉分罝值區塊執行此過程 的組合結果。 可錯由反轉此過程而自—視訊位元流導出—未經麼縮之 視訊圖框。詳s之’解壓縮位元流中之每一係數矩陣且解 量化該等經解壓縮之值以便導出經轉換係數之矩陣。接著 對每一經轉換係數之矩陣應用一反向離散餘弦轉換 (IDCT )以便導出像素分量值矩陣。一理想的一維出下 式定義:
*=〇 2N 其中^為ΛΜ固原始值之陣列,f為#個經轉換之值之陣列,且 係數c由下式給出 Φ)=νΓ^5φ)=ν27ΐν 122239.doc 144 ^<k<N-\ 〇 一理想的二維IDCT由下式定義:. ZZ^y)4y)c〇s^^c〇s <2JL+lk
/=〇 >〇 2N 2N 接著將所得的像素分量值矩陣重組成像素區塊且重組此 等像素區塊以形成一經解碼之圖框。若該經解碼之圖框為 —1圖框,則該圖框現已完全解碼。然而,若未經壓縮之 圖框為一預測圖框或一雙預測圖框,則該經解碼之圖框僅 為一經解碼之剩餘圖框。藉由使用與經解碼之圖框相關聯 之運動向量建構一重建圖框且接著將該重建圖框加至經解 石馬之剩餘圖框來產生一完成的圖框。 在理想環境下,藉由使用FDCT編碼或使用IDCT解碼像 素分量值區塊而不會丟失資訊。因此,在此等理想環境 下,一視訊圖框之一解碼版本等同於該視訊圖框之原始版 本。然而,因為FDCT及IDCT之計算涉及乘法運算之實數 及有效數字之使用,所以計算FDCT& mCT在計算方面可 月b有困難。因此,常常使用有限精確度的數字來近似用於 FDCT及IDCT中之實數。由於使用有限精確度的數字表示 實數值而產生捨入誤差❶此外,量化及解量化可造成額外 誤差。 愿縮及解塵縮過程中之誤差可導致在未經Μ縮之原始圊 框與未經壓縮之最终圖框之間產生顯著差異。舉例而言, 未經壓縮之最終圖框中之色彩可不同於未經壓縮之原始圖 框中之色彩。此外’在預測圖框序列之編碼及解碼期間, 122239.doc 1336444 由於IDCT編碼器之實施與IDCT解碼器之實施之間的失配 而造成的誤差可累積。此等累積誤差通常被稱作"IDC丁漂 移丨,。 【發明内容】 ' 本發明描述使用定點計算來近似一反向離散餘弦轉換之 汁异的技術。根據此等技術,藉由將經編碼係數之矩陣中 之係數乘以按比例調整因數來產生經按比例調整係數之矩
陣接著’藉由將-中點偏差值加至該經按比例調整係數 之矩陣之一 DC係數來產生有偏係數矩陣。接著使用定點 算術對該等有偏係數矩陣應用一轉換。接著將該等所得矩 陣中之值右移以便導出像素分量值矩陣。接著組合像素分 量值矩陣以建立像素矩陣。藉由此等技術產生之該等像素 矩陣接近地類似使用該理想的反向離散餘弦轉換("IDct") 解壓縮所得之像素矩陣。 隹一態樣中 乃沄a含藉由一因數乂
數C、一因數£)、一因數五、一因數尸 —— 一因數(7、一因數 77、一因數/或—因數j中 4^ U数*7宁之一者按比例調整一 8x8經編碼係
數之矩陣中之每一#童f LV W由A L ”數便產生—經按比例調整係數之矩 陣。在此方法中,y = 1024,5 ^-Π38 ^ C=1730,£>=1609 > f,師22,㈣川,㈣23,片718,且邱28。 ^方法亦包含使用對-定點按比例調整—維轉換之重複應 用以將該經按比例調整係數 矩陸u 矩陣轉換成一經轉換係數之 矩陣。此外,該方法包含將該經 ^ ^ ^ ,轉換係數之矩陣中之經轉 換係數右移以便產生一經調 係數之矩陣。該經調整係數 122239.doc 1336444 之矩陣中之每一經調整係數近似為藉由對該經編鳴係 矩陣應用—理想的二維IDCT將·產生的值之—矩陣中之— ^值° Μ ’該方法包含顯示一8X8像素區塊。該像 一塊中之每—像素包括一基於該經調整係數之 一經調整係數的像素分量值。
在另.4樣中,_裝置包含一按比例調整模組,該 例5周整模組藉由-因數4、-因數五、-因數C、一因數 :、—因數£、-因數厂、-因數G、-因數打、—因數"戈 斤因數中之一者按比例調整_ 8χ8經編碼係數之矩陣中之 每-係數以便產生一經按比例調整係數之矩陣,其中 A 1024 - 5-1138 . C=1730 » £)=1609 > £=1264 . ^=1922 » G=1 788 ’㈣923 ’ 7=2718,且片528。該裝置亦包含一 反向轉換模組,6亥反向轉換模組使用對一定點按比例調整 一維轉換之重複應用以將該經按比例調整係數之矩陣轉換 成一經轉換係數之矩陣。此外,該裝置包含一右移模組,、 該右移模組將該經轉換係數之矩陣中之經轉換係數右移以 便產生-經調整係數之矩陣。該經調整係數之矩陣中之每 一經調整係數近似為藉由對該經編碼係數之矩陣應用一理 想的二維IDCT將產生的伯+ ,^ 生的值之一矩陣中之一對應值。該裝 置亦包含一輸出模組’該輸出模組輸出-8x8像素區塊。 該像素區塊中之每-像素包括一基於該經調整係數之矩陣 中之一經調整係數的像素分量值。 在另一態樣中,—裝置包含用於藉由一因數义、一因數 Β、-因數C、-因數ΰ、一因數£、一因0、一因數 I22239.doc -因數好、-因數/或一因I中之—者按比例調整一8㈣ 編碼係數之矩陣中之係數以便產生-經按比例調整係數之 矩陣之構件,其中和刪,㈣l38 c=⑽如⑽9, P1264,心1922 ’ G=1788,知2923,/=2718,且片似。 卜,—》玄裂置包含用於使用對_ ^點按比例調整—維轉換 之重複應用以將該經按比例調整係數之矩陣轉換成一經轉 換係數之矩陣之構件。此外,該裝置包含用於將該經轉換 :、矩陣中之經轉換係數右移以便產生-經調整係數之 矩陣之構件。該經調㈣數之矩陣巾之每―經調整係數近 似為藉由對該經編瑪係數之矩陣應用—理想的二維耽丁 將產生的值之—矩陣中之—對應值。此外,該裝置包含用 於輸出-8χ8像素區塊之構件。該像素區塊中之每一像素 包括-基於該經調㈣數之矩陣中之—經調整係數的像素 分量值。 另心樣中,本發明係針對—含有指令之電腦可讀媒 體。該等指令使-可程式化處理器藉由一因數乂、一因數 Β因數C、一因數乃、一因數五、-因數F、一因數G、 因數打、—因數7或—因數J中之一者按比例調整一8x8經 編碼係數之矩陣中之每―係數以便產生—㈣比例調整係 數之矩陣,其中 乂 = 1〇24,5=1138,c=i73〇,乃=⑽9, £=1264 ’ 卜1922 ’ G=1788,㈣923,/=2718,且 j=2528。 該等指令亦使該可程式化處理ϋ使用對-定點按比例調整 、·隹轉換之重複應用以將該經按比例調整係數之矩陣轉換 成-經轉換係數之矩陣。此外,該等指令使該可程式化處 122239.doc 1336444 =:Γ係數之矩陣中之經轉換係數右移以便產生 整㈣/ 矩陣。該經調整係數之轉中之每一經調 糸數近似為藉由對該經編碼係數之矩陣應用—理想的二 維IDCT將產生的值之一矩陣一 對應值。該等指令亦 使遠可程式化處理器輸出使一顯示器單元顯示一Μ像素 :塊之信號1像素區塊中之每一像素包括一基於該經調 整k數之矩陣中之一經調整係數的像素分量值。
在一些狀況了 ’該電腦可讀媒體可形成一彳出售給製造 商及/或可用於一視訊編碼裝置中之電腦程式產品之一部 分。該電腦程式產品可包括該電腦可讀媒體,且在一些狀 況下’其亦可包括包裝材料。 在下列附隨圖式及描述中闡明一或多個實例之細節。本 發明之其他特徵、目標及優點將自以下描述及圖式及自申 請專利範圍而變明顯。 【實施方式】 圖1為說明一編碼且解碼媒體槽案之例示性裝置2之方塊 圊裝置2可包含個人電腦、行動無線電話' 伺服器、網 路設備、整合於載具中之電腦、視訊遊戲平臺 '攜帶型視 訊遊戲裝置、電腦工作站、電腦資訊站、數位電子看板、 大型電腦、電視機頂盒'網路電話、個人數位助理、視訊 遊戲平臺、行動媒體播放機、家用媒體播放機、數位視訊 才又衫儀、個人媒體播放機(例如,i P 〇 d ),或另一類型之電 子裝置。 裝置2可包括一用於產生媒體資料之媒體源4。媒體源4 122239.doc -II - 1336444 可包含-用於俘獲影像資料之數位視訊或靜態照片昭相 機。媒體源4可建置於裝置2中或可作為—周邊裝置附著於 裝置2。媒體源4亦可包含一用於記錄音訊資料之麥克風。' 媒體源4可將媒體資料提供給一處理器6。處理器^可包含 數位信號處理器(DSP)、微處理器,或某一其他類型 體電路。 當處理器6接收來自媒體源4之媒體資料時,1碼模組 # 8可編碼媒體資料。編碼模組8可包含由處理器6執行之軟 體。或者,編碼模組8可包含在處理器6内編碼媒體資料之 專用硬體。在又一替代實施例中,編碼模組8可包含用於 編碼媒體資料之軟體與硬體之任何組合。 、 編碼模組8可將經編碼之媒體資料儲存於—媒體儲存庫 10中。媒體儲存庫1〇可包含快閃記憶體' 隨機存取記憶 體、硬碟機,或某-其他類型之揮發性或非揮發性資料儲 存單元。 . 解碼模、、且12可自媒體儲存庫】〇中擷取經編碼之媒體資 料。解碼模組12可包含由處理器6執行之軟體。或者,解 馬模、.且12可包含在處理器6内解碼經編碼之媒體資料之專 用硬體。在又-替代實施例中,解媽模組12可包含合作以 解碼經編碼之媒體資料的軟體與硬體之一組合。 裝置2中之媒體呈現單元14可呈現由解碼模組u解碼之 媒體資料。舉例而言’媒體呈現單元14可包含—呈現影像 ::視訊媒體資料之電腦監視器。在另一實例中,媒體呈現 〇〇 可已3主現音訊媒體.資料之音訊輸出裝置(例 122239.doc 1336444 如,一揚聲器)。媒體呈現單元14可整合於裝置2中或可作 為一周邊裝置經由一有線或無線鏈路連接至裝置2。 裝置2亦可包含-網路介面16。網路介面可促進經由 一有線或無線鏈路在裝置2與一電腦網路之間的通信。舉 例而言’網路介面16可促進在裝置2與-行動電話網路之 間的通信。裝置2可經由網路介面16接收媒體檔案。舉例 而言,裝置2可通過網路介面16接收照片 '視訊片段串 • 流視訊(例如’電視、視訊會議、電影)、音訊片段(例如, 龄聲、歌曲、MP3檔案)、串流音訊(例如,數位無線電 臺、語音呼叫等待,等)。當網路介面16接收一媒體檔案 或視訊位元流時,網路介面16可將媒體播案或視訊位元流 儲存於媒體儲存庫1〇中。
可根據-圖片序列描述一視訊信號,該圖片序列包括圖 框(整個圖片)、或圖片場(例如,包含一圊框之奇數列或偶 數列之圖片)。另外,每一圖框或圖片場可包括兩個或兩 個以上的片段,或圖框或圖片場之子部分。如本文中單獨 或組合其他詞語所使用的,術語"圖框”可指一圖片、一圖 框、一圖片場或其片段。 當編碼模組8編碼一系列視訊圖框時,編碼模組8可藉由 選擇視訊圖框中之圖框作為"i圖框,,而開始。舉例而言,編 碼模組8可選擇每一第八圖框作為一;圖框。工圖框為不參考 其他圖框之圖框。在選擇丨圖框之後,編碼模組8使用"空 間編碼,|編碼該等i圖框。此外,編碼模組8可使用"時間= 碼"編碼剩餘的圖框。 122239.doc -13- 為使用空間編碼編碼_ R ^ 分裂成像素區塊。舉例而 碼模組8可將圖框資料 裂為具有八個二編碼模組8可將圖框資料分 —後各 ,、寬及八個像素高之像素區塊(亦即,每 -像素區塊含有64個像素)。編 區塊中之像辛之s饱Μ ••按者將母像素 矩障…分量值分成單獨的像素分量值 —像素之像素分量值係特徵化該像素之外觀之值。 ::)而二每—像素可指定一 γ像素分量值'一 Cr像素分 2 4 —Cb像素分量值。該γ像素分量值指示像素之亮 ::亥Cr像素分量值指示像素之紅色色度,且該像素分 =指示像素之藍色色度。在此實例中,當編碼模組名分 一像素區塊之像素分量值時,編碼模組8可獲得一 γ像素 分量值矩陣、一心像素分量值矩陣,及一 cb像素分量值矩 陣〇 —在將像素分量值分成像素分量值矩陣之後,編碼模組^ 藉由將像素分量值矩陣中之像素分量值左移而產生經調整 係=之矩陣。對於每一經調整係數之矩陣,編碼模組8使 用定點算術對經調整係數之矩陣重複應用一維轉換,藉此 產生經轉換係數之矩陣。接著,編碼模組8藉由藉由一組 按比例調整因數按比例調整經轉換係數之矩陣而產生一經 按比例調整係數之矩陣。此等按比例調整因數中之每—者 為整數值。已以此種方式選擇按比例調整因數以致可使 用簡單有理數來近似該一維轉換内之因數。 I按比例調整係數之矩陣中之每一經按比例調整係數近 似為藉由對一對應的色彩分量值矩陣應用一理想的二維前 J22239.doc -14, 1336444 向離散餘弦轉換("FDCT")將產生的值之矩陣中之一對應 值。理想的一維FDCT由下式定義:· /⑻制e。〆2完糾
扣〇 27V 其中S為N個原始值之陣列,t為N個經轉換之值之陣列,且 係數c係由下式給出
c{〇) = ^/UN,c{k)=^i2/N lSk<N-l 〇
理想的二維FDCT係由下式定 咆加外,g 如,„)cos Ei2m+1> C0SiEfei±il/
n=l m=0 2N 2N 其中s為N個原始值之陣列,1為]^個經轉換之值之陣列,且 c(Uj)係由C(i,j)=c⑴c⑴給出,且c(k)經定義為—維狀況。
在導出一經按比例調整係數之矩陣之後,編碼模組8藉 由量化該經按比例調整係數之矩陣中之係數而產生一經量 化係數之矩陣。里化該經按比例調整之係'數可減少與經按 比例調整係數之矩陣中之高頻係數相關聯之資訊的量,。在 產生經量化儀數之拓陆β μ 货数之矩陣之後,編碼模組8可對經量化係數 之矩陣應用一熵編碼機 〇 丄 审J舉例而g ’編碼模組8可對係 數矩陣中之經量化伤金 _ ^ π ’、 里係數應用—霍夫曼編媽機制。當編 組8對經量化将對夕& # i ^ 數之矩陣中之每-者應用熵編碼機制時, 編碼模組8可輪出绍 J翰出、·“扁蝎之矩陣作為一視訊位元流之
分0 I 為使用時間編碼編碼_圖框,編碼模㈣可將圖框劃分 122239.doc ‘15· 1JJ0444 成巨集區塊"。此等巨隹p·抬I 4日α 寻巨集&塊了根據所使用之編碼桿 具有固定的或可變的尺寸 ▲ ^ ^ Τ且]马重豐或非重疊的。舉例而 。’母集^塊可為—16X16像素區塊1於圖框中之 母一巨集區塊,編碼模組8可試圖識別一或多個參考圖框 中之一源巨集區塊。該等參考圖框可根據編碼標準 圖框、預測圖框或等褚丨 飞又預測圖框。若編碼模組8能夠識別在 一參考圖框中之一源p隹 ’、集區塊,則編碼模組8記錄該巨隼
區=運動向量。該運動向量包括一指示該巨集區塊相對 、'丄屬別之源巨集區塊之水平移位的續及一指示該且集 區塊相對於經識另,丨夕:语κ & 哉⑴之源巨集區塊之垂直移位的少值。若編 碼模組8不能夠識別巨集區塊之源巨㈣塊,則編碼模組8 可此不需要記錄該巨集區塊之運動向量。接著,編碼模組 8產生一 ”重建"圖框。該重建圖框含有將根據所記錄之該 S如圖框之運動向晉!ώ A 1, 稭由自參考圖框移動巨集區塊所產 生的圖框。在產;ψ售· 3倉jgj 4 牡座生重建圖框之後,編碼模組8自該當前圖 框之對應像素中之對應像素分量值減去重建圖框之每一像 素中之像素刀里值,以產生一,,剩餘"圖框。編碼模組8可 接著使用-熵編碼機制壓縮用於該當前圖框之巨集區塊之 運動向里此外,編碼模組8使用以上所描述之空間編碼 技術壓縮剩餘圖框。 解碼模組12可執行一與編碼模組8類似之過程,但過程 為逆過程。舉例而言,& 了執行—空間解碼過程,解碼模 組12可對一經編碼之視訊位元流中的每一經編碼之經量化 係數矩陣應帛—滴解碼機制。解碼模組I2可接著解量化經 122239.doc -16- 1336444 量化係數之每-矩陣中之係數’藉此為經量化係數之每一 矩陣產生一經解量化係數之矩陣。對於每一經量化係數之 矩陣,解碼模組12藉由使用一組按比例調整因數按比例調 整該經量化係數之矩陣而產生一經按比例調整係數之矩 陣。此等按比例調整係數可為與以上所論述之空間編碼過 程中所用之按比例調整係數相同的按比例調整係數。在產 生一經按比例調整係數之矩陣之後,解碼模組以使用定點 算術對經量化係數之矩陣重複應用„維轉換,藉此產生一 經轉換係數之矩陣。舉例而言,解碼模組12可藉由對一經 按比例調整係數之矩陣中之每—列向量應用該—維轉換而 產生一中間係數矩陣。在此實例中,解碼模組12可接著藉 由對該中間係數矩陣中之每—行向量應用該—維轉換而^ 生經轉換係數之矩陣。在產生一經轉換係數之矩陣之後, 解碼模組12藉由將經轉換係數之矩陣中之經轉換係數右移 而產生一經調整係數之矩陣。經調整係數之矩陣中之經調 整係數近似為藉由對經解量化係數之矩陣應用—理想的二 維反向離散餘弦轉換("IDCT")將產生的值。理想的^一: IDCT係由下式定義: 心’ ㈣^(如¥ 其忪為關原始值之陣列,_個經轉換之值之陣列, 且係數c係由下式給出 c(°)= Vl/Λ^,φ) = ^2ΪΝ 1 <k<N- 理想的二維1DCT係由下式定 義 122239.doc 1336444 ‘《μ ^gc(/,y)4/)cos£^ii)icos£fei±^ ί=〇 y=o 2Ν 2Ν 7接著將此等像素分量值區塊重組成像素區塊且可重組此 等像素區塊以形成未經壓縮之視訊圖框。 在產生經調整係數之矩陣之後,解碼模組12可接著截割 該經調整係數之矩陣中之經調整係數以便確保該等經調整 之係數在一像素分量值之容許範圍内。解碼模組12可接著 將經截割係數之矩陣重組成像素區塊。在將像素分量值區 • 塊重組成像素區塊之後,解碼模組12可藉由重組像素區塊 而產生一影像。 為了解碼一預測圖框,解碼模組丨2可在該預測圖框之剩 餘影像中使用以上所描述之空間解碼技術來解碼經量化係 數之矩陣。此外,解碼模組12可使用熵解碼機制來解碼預 測圖框之運動向量。接著,解碼模組12可藉由根據運動向 量"移動”預測圖框之參考圖框之巨集區塊而產生一重建圖 祀·在產生重建圖框之後’解碼模組12將經解碼之剩餘圖 • 框之每一像素中的像素分量值加至重建圖框之對應像素中 之對應像素分量值。此加法之結果為所重建之預測圖框。 本揭示案中所描述之技術可提供若干優點。舉例而言, 因為此等技術應用定點算術,所以此等技術可應用於較 小、較不複雜之裝置中,諸如行動電話、個人數位助理及 個人媒體播放機。此外’此等技術可應用於包括國際電信 聯盟標準化部門(ITU_T)標準Η.261、Η.263、Η.264、 T.81(JPEG)以及國際標準組織(IS〇)/MEC動晝專家组 (MPEG)-l、MPEG-2及MPEG-4部分2媒體格式之格式。 122239.doc •18- 圖2為說明編碼模 可包含'組"模組"V此等::節之方塊圖。編碼模組8 令 萼模,,且可包含編碼模組8之軟體指 <于集。或者,此等模 之韋讀硬體。在另—兹諸如一或多個專用硬體 ^ ^ ^ 替代貫施例中,此等模組可包含軟體 才曰令及專用硬體或章刀體。 軟體 如圖2之實例中新# ^ 斤說明的,編碼模組8包括一圖框控制模 、'且20 ’圖框控制模 A 控制編碼模組8是將一視訊圖框作 二:1 ·框、一預測圖框還是-雙預測圖框來處理。舉例 可二二當編碼模組8接收-視訊圖框時,圖框控制模組20 I確疋一與該視訊圖框相關聯之位元流旗標是指示該圖框 為-丨圖框、-預測圖框,還是一雙預測圖框。若圖框控 制模組20確定位元流旗標指示該圖框為一 i圖框,則圖框 控制模組20可使立即對該視訊圖框執行空間編碼之一組模 組來處理該視訊圖框。另一方面,若圖框控制模組確定 该圖框為一預測圖框或一雙預測圖框,則圖框控制模組 可使執行時間編碼之—組模組來處理該視訊圖框。 編碼模組8包括對視訊圖框應用空間編碼之一系列模 組。此等模組包括一區塊分離器模組22、—分量提取模組 24' —前向轉換模組26、一量化模組28,及一熵編碼模組 3〇。區塊分離器模組22可接收來自媒體源4、網路介面16 或另一源之未經編碼之視訊圖框。當區塊分離器模組22接 收—未經編碼之視訊圖框時,區塊分離器模組22可將圖框 分成像素區塊。區塊分離器模組22可將像素區塊提供給一 分量提取模組24。 I22239.doc -19- 丄⑽444
田刀:提取模組24接收到—像素區塊時,分量提取模組 可將每像素之像素分量值轉·換成一不同的色彩格式。 舉例而5 ’分量提取模組24可將每―像素自紅 '綠·藍 (RGB)色彩格式轉換成web色彩格式。在將區塊中之像 素轉換成不同色彩格式之後,分量提取模組24可將區塊中 像素之像素分1值分成像素分量值矩陣。舉例而言,分 量提取模組24可自一像素區塊中提取一 γ值矩陣、一^值 矩陣及-Cb值矩陣。γ值指定像素之亮度,。值指定像素 之、色色度’且Cb值指定像素之藍色色度。當分量提取模 組24已提取I像素分量值矩料,分量提取模組24可將該 等矩陣中之每—者分別提供給—離散餘弦轉換(DCT)模組
:則向轉換模組26接收到一像素分量值矩陣時,前向轉 換模組26產生經按比例調整係數之矩陣。在經按比例調整 =數之此矩陣中之每—係數近似為—將藉由使用—理想的 =離散餘弦轉換來轉換像素分量值矩陣而產生的係數。 向轉換模組26使用定點算術對像素分量值矩 ㈣換 '使用定點算術在—些環境下可能有利。舉例而 二名如灯動電話之較小裝置可能不包括所需來執行浮點 ^ =點單元。前向轉換模組26可藉由左移像素分量值 。之母-者而開始一產生經按比例調整係數之矩陣之過 ί二舉例而言,前向轉換模組%可藉由將像素分量值中之 :^左移s應用—維轉換時前向轉換模組⑽使用之數 疋點表示之精確度位元數目(亦即,尾數位元之數目) I22239.doc 1336444 加上藉由按比例調整由應用該轉換所產生之經轉換係數而 移除的精確度位元數目,來產生經_整係數之矩陣。在左 移像素分量值中之每一者之後,前向轉換模組26可對經調 整係數之轉之列向量中之每—者執行轉換。對經調整係 數之矩陣之列向量中之每一者執行一離散餘弦轉換而產生 中間係數矩陣。接著,前向轉換模組26可對該中間係數 矩陣之行向量中之每一者執行轉換。對中間係數矩陣之行 • 向量中之每一者執行轉換而產生經轉換係數之矩陣。 在產生經轉換係數之矩陣之後,前向轉換模組26藉由不 同的按比例調整因數按比例調整經轉換係數之矩陣中之不 同位置處之經轉換係數。如以下所描述的,解碼模組12可 在一反向轉換之應用中使用此等按比例調整因數之倒數。 當前向轉換模組2 6已藉由按比例調整因數完成對經轉換係 數按比例調整時,前向轉換模組26可將所得的經按比例調 整係數之矩陣輸出至量化模組28。 瞻當量化模組28接收到來自前向轉換模組%之係數矩陣 時,量化模組28可量化該等經按比例調整之係數。量化模 組28可根據所使用之編碼標準而以多種方式量化經按比例 調整之係數《舉例而言,根據]^1>]5(3_4部分2標準,量化模 組28可使用以下量化矩陣量化一瀰框之經按比例調整係 數之矩陣中之係數: 122239.doc 1336444 此外,在此實例中,量化模組2 8可使用以下量化矩陣量化
一預測圖框或雙預測圖框之經按比例調整係數之矩陣中之 係數: 16 17 18 19 20 21 22 23 17 18 19 20 21 22 23 24 18 19 20 21 22 23 24 25 19 20 21 22 23 24 26 27 20 21 22 23 25 26 27 28 21 22 23 24 26 27 28 30 22 23 24 26 27 28 30 31 23 24 25 27 28 30 31 33
8 17 18 19 21 23 25 27 17 18 19 21 23 25 27 28 20 21 22 23 24 26 28 30 21 22 23 24 26 28 30 32 22 23 24 26 28 30 32 35 23 24 26 28 30 32 35 38 25 26 28 30 32 35 38 41 27 28 30 32 35 38 41 45 在量化模組28產生經量化係數之矩陣 ---,〜Ί夂,洲網,棋卿 〇可使用熵編碼機制壓縮該經量化係數之矩陣。為了使 :—熵編碼機制壓縮經量化係數之矩陣,熵編碼模組30可 =由知用係數之z字形型樣而將經量化之係數組織成一向 里/換。之’摘編碼模組30可以-可預測方式將二維經量 一,數^矩陣中之所有經量化之係數配置成經量化係數之 :::量。熵編碼模組3〇可接著對經量化係數之該向量應 編碼機制,諸如霍夫曼編碼或算術編碼。 J22239.doc •22- 夕編碼杈組8亦包括用於執行視訊圖框之時間編碼之一或 多個模組。如圖2之實例中所說明的,編碼模組8包括一運 動估計模組32、-重建圖框產生模組34,及一剩餘圖框產 ’、6運動估叶模組32試圖在一參考影像中為當前視 圖杧中之每一巨集區塊識別一源巨集區塊。運動估計模 、且3。2可4圖搜尋該參考影像中的含有與當前圖框中之一巨 集區塊類似之像素的巨集區塊而識別該當前圖框中之該巨 集區,的源巨集區塊。運動估計模組32可根據不同編碼標 準搜哥不同尺寸之區域以便識別當前圖框中之一巨集區塊 之源巨集區塊。舉例而言,運動估計模組32可搜尋在一為 32像素寬乘32像素高之區域内的—源巨集區塊,當前巨集 區塊在該搜尋區域之中央。當運動估計模組32識別當前圖 框中之-巨集區塊之源巨集區塊時,運動估 該當前圖框中之該巨集區塊之運動向量。該當前圖 该巨集區塊之運動向量指定一續’該罐指示在經識別之 源巨集區塊與當前圖框之該巨集區塊之間的水平位置差 異。在運動估計模組32已計算一運動向量或已無法為當前 圖框中之每-巨集區塊識別源巨集區塊時,運動估計模組 32可將所計算得的當前圖框之運動向量提供給重建圖框產 生模組34。 重建圖框產生模組34可使用運動向量及參考圖框來產生 -重建圖框。重建圖框產生模組34可藉由對參考圖框中之 源巨集區塊應用對於當前圖框中之每一巨集區塊之運動向 量而產生重建圖框。實際上,重建圖框產生模組Μ建立— 122239.doc -23· 1336444 已使參考圖框之巨集區塊"移動"至由當前圖框之對應運動 向量所指示之位置的圊框。 . ·
乘J餘圖框產生模組3 6可藉由自當前圖框中之對應像素分 1值減去重建圖框中之像素分量值而產生剩餘圖框。一般 而。剩餘圖框包括比重建圖框或當前圖框少之資訊。在 剩餘圖框產生模組36產生剩餘圖框之後,剩餘圖框產生模 組36將剩餘圖框提供給區塊分離器模組22以便開始空間編 碼剩餘圖框之過程。此外,運動估計模組32可將^ =框 之運動向量提供給熵編碼模組3 〇以便壓縮運動向量。在空 間編碼剩餘圖框且熵編碼模組3〇已編碼運動向量之後,流 輸出,組38可格式化經空間編碼之剩餘圖框及經編碼之運L 動向量以作為一視訊位元流之—部分。
圖3為說明解碼模組12之例示性細節之方塊圖。解碼模 組12可包含一熵解碣模組料、—解量化模組邨、—反向轉 換模組48、-像素重建模組50、-圖框緩衝器51、區塊組 合器模組52 —圖框控制模組53、—參考圖框儲存模組 54::重建圖框產生模組56,及一預測圖框產生模組… 等模..且中之些模組或所有模組可包含解碼模組12之軟 體指令之子集。或者’ &等模組中之-些模組或所有模組 可包含專用硬體或韋刃體。在另一替代例中,此等模组可包 含軟體指令及專用硬體或韌體。 當解碼模組12接收-含有-視訊圖框之位元流時,烟解 碼模組44可對視訊圖框中之經量化係數之矩陣應用一熵解 碼機制。該位元流可包括—指示熵解碼模組料對位元流中 I22239.doc -24 - 之經量化係數之矩陣應 解碼模組44可應用相同 框之運動向量。 用哪個熵解碼機制之值。此外,熵 或不同的熵耜碼機制以解碼視訊圖 摘解碼模組44對視訊檔案中之經量化係數之矩陣應用 熵解碼機制之後,解量化模組46可解量化經量化係數之矩 陣中母-矩陣之係數。解量化模組“可根據編碼標準而以 多種方式解量化係數。舉例而言,根據MPEG_4部分2標 2,解量化模組46可以兩種不同方式使用上述所列之兩: 罝化矩陣。第-’解量化模組46可使用此等量化矩陣執行 H.263-型解$化。在H 263_型解量化中,解量化模組μ自 經董化之值0Ρ[ν]1>]獲得重建係數/7,'[V][M]如下: 〇,若!2外|«]=〇, |F" [v!w] = ! (2 Φ外 I» j + l)x —油·ier -咖/e,若 2外1+。,押—e、ic〇/e 爲奇數 (2X|0F[vI“] + l)x 卯_沉也-1,若2尸[+]* 〇,分如加·5gr:ica/e爲偶數 F〃[v][m]·· F〃[v][w]= Sign(2尸[v][w])x|F"[v]I>]| 其僅涉及與相乘一次,且 第二,解量化模組46可使用此等量化矩陣執行MPEG-1/2-型解量化。在MPEG-1/2型解量化中,解量化模組46使 用額外加權矩陣酽[w][v][m],其中w指示所使用之加權矩 陣: nr 若以Μ«]=0 LVJLW_1- 1 ((2χ07[νΙΜ]+^:Χ>ι;Ιν][Μ]Χ9Ι«7«"·5·β,_5Τα/β)/16,若2F[vI«】关 0 其中: r o 區塊内 k = [Sign{gF[vlu])非區塊内 如以下詳細描述的’反向轉換模組48藉由特殊按比例調 122239.doc -25- 1336444
整因數按比例調整經解量化係數中之每一者且將—中點偏 差項加至所得的經按比例調整係數之矩陣之DC係數。該 DC係數為經按比例調整係數之矩陣之位置(〇,〇)處的係 數。接著’反向轉換模組48使用對定點一維轉換之重複應 用以將經按比例調整係數之矩陣轉換成一經轉換係數之矩 陣。在將經按比例調整係數之矩陣轉換成經轉換係數之矩 陣之後,反向轉換模組48將經轉換係數之矩陣中之每一經 轉換係數右移以便產生一經調整係數之矩陣。經調整係數 之矩陣中之每一經調整係數近似為藉由對經編碼係數之矩 陣應用一理想的二維IDCT將產生的值之矩陣中的一對應 值。此外,反向轉換模組48可截割經調整係數之矩陣中之 經調整係數之每-者以便產生―經截割係數之矩陣。該等 經截割之絲具有落在適合於所得的像素分量值格式之範 圍内之值。舉例而言’經截割之係數可具有落在範圍卜 256, 255]内之值。在反向轉換模組料截割該等經調整之係 數之後,所得的經截割值為像素分量值。 在反向轉換模組48輸 保京分置值矩陣之後,像素重 建模組50可藉由組合該像素分量值矩陣及與一視訊圖框内 之均等位置相關聯之像素分量值矩陣而產生—像素矩陣。 舉例而言’像素重建模_可接收來自反向轉換模組^之 ^像素分量值矩陣、-Cb像素分量值矩陣及 ^矩陣。此等三㈣陣中之每—者可包括單_象8^ 旦二之:素分置。《等像素中之每—者可包括一γ像素分 里、一 〇3像素分量值,及一 Cr像素分量值。在產生像素 122239.doc •26· 1336444 生模組58可自圖框儲存模組M中擷取當前圖框之一剩餘圖 框。在擷取剩餘圖框之後,預測圖框產生模組58可使剩餘 圖框與重建圖框之每一像素中之對應色彩分量值相加。重 建視訊圖框由此加法而產生。接著,預測圖框產生模組兄 可將此重建圖框輪出至圖框緩衝器51以待最後顯示於媒體 呈現單元14上。 圓4為說明編碼模組8之一實例操作之流程圖。雖然以連 鲁續方式描述圖4中所描述之操作,但應注意,該操作可以 流水線方式來執行。 取初,編碼模組8接收未經編碼之視訊圖框序列(60)。 舉例而言’編碼模組8可接收來自媒體源4之呈像素組形式 々未’至、扁馬之圖框序列。當編碼模組8接收未經編碼之圖 框序列時,編碼模組8中之圖框控制模組2〇可確定是將未 經編碼之圖框序列φ夕者i& . s月’j圖框、,爲碼為一丨圖框還是編碼 為—預測圖框或雙預測圓框(62)。 •若圖框控制模組20確定將當前圖框編瑪為一 i圖框,則 、·扁碼核組8中之區塊分離器模組2 2可將當前圖框分成像素 區塊(64)。舉例而言,編碼模組8可將當前圖框分成2巧、 4x4或8x8之像素區塊。 在將當前圖框分成像素區塊之後,分量提取模組24可分 離像素區塊中之每一者中之像素分量值(66)。因此,每一 像素區塊可能存在三個像素分量值區塊:表示像素之亮度 值區塊、表示像素之藍色色度之Cb值區塊,及表示像 素之紅色色度之Cr值區塊。 I22239.doc -28· 1336444 編碼模組8令之前向轉換模組26可接著為像素分量值矩 陣中之每一者產生-經按比例調整.係數之矩陣(68)。經按 比例調整係數之此等矩陣中之係數為藉由對像素分量值矩 陣中之各別者使用-理想的=維前向離散餘弦轉換將產生 的值之近似值。 在前向轉換模組26為像素分量矩陣中之每—者產生經按 比例調整係數之矩陣之後,編碼模組8令之量化模組以可 • 量化經按比例調整係數之矩陣中每一矩陣之係數(7〇)。一 旦量化模組28已量化經按比例調整係數之每一矩陣中之係 數,熵編碼模組30便可對經量化係數之矩陣中之每一者執 仃一熵編碼過程(72)。舉例而言,編碼模組8可對經量化係 數之每一矩陣應用一霍夫曼編碼機制或一算術編碼機制。 該熵編碼過程進一步壓縮資料。然而,熵編碼過程不會導 致貝訊彳貝失。在對經量化係數之每一矩陣執行熵編碼過程 之後,編碼模組8中之流輸出模組38可將經編碼之經量化 # 係數矩陣加至視訊圖才匡序列之一位元流(74)。在流輸出模 組38將經編碼之矩陣加至該位元流之後,圖框控制模組 可確定當前圊框是否為圖框序列之最後視訊圖框(76)。若 當前圖框係圖框序列之最後圖框(76之”是,,),則編碼模組8 已完成對圖框序列之編碼(78)。另一方面,若當前圖框不 是圖框序列之最後圖框(76之"否"),則編碼模組8可返回且 確定是否將一新的當前圖框編碼為一丨圖框(62)。 若不欲將當前圖框編碼為一i圖框(62之,,否,,),則編碼模 組8中之運動估計模組32可將當前圖框劃分成一組巨集區 122239.doc •29- jj〇444 龙(8〇)。接者,運動估計模組32可試圖在一或多個參考圖 框中為當前圖框中之巨集區塊中之每一者識別一源巨集區 塊(82)運動估計模組32可接著計算當前圖框中之巨集區 息中之母者的運動向量,運動估計模組32能夠為該當前 圖框中之巨集區塊中之每一者識別一源巨集區塊(84)。在 運動估模組32計算得運動向量之後,重建圖框產生模組 34使用運動向量藉由將參考圖框中之經識別之巨集區塊"
動至由運動向里指不之位置中而產生—重建圖框(Μ)。 =餘圖框產生模組36可接著藉由自當前圖財之對應像素 分量值減去重建圖框中之像素分量值而產生當前圖框之剩 餘圖框(88)。在剩餘圖框產生模組%產生剩餘圖框之後, 熵編碼模組3G可使用_熵編碼機制編碼當前圖框之運動向 里(90)此外’可藉由對剩餘圖框應用步驟⑽)至(7句而對 剩餘圖框應用空間編碼。 圖5為„兒明解碼模組丨2之一例示性操作之流程圖。雖然 以連續方式描述圓5中所描述之操作,但應注意,該操作 可以一流水線方式來執行。 最初解碼模組12接收一經編碼之視訊圖框(i 〇〇)。在 接收到經編碼之視訊_之後,解碼模組12巾之燏解石馬模 組44可對經編碼之圖框内之資料區塊執行―满解碼過程 (1 02)熵解碼模組44可執行__等效於用於編碼圖框之網編 碼過程之熵解碼過肖。舉例而言,若編碼模組8使用霍夫 又、·扁碼來編碼圖框,則熵解碼模組44使用霍夫曼解碼來解 碼圖框。由於對圖框中之每一資料區塊應用烟解碼過程, I22239.doc 1336444 圖6為說明反向轉換模組48之例示性細節之方塊圖。如 圖6之實例中所說明的,反向轉換模組判可包含一輸入模 組刚。輸人模組i4G可接收—來自解量化模組^係數矩 陣。舉例而言’輸入模組】40可接收一指標,其指示在裝 置2之一記憶體模組中的儲存該係數矩陣之位置。或者, 輸入模組140可包括儲存該係數矩陣之内部資料結構。
當輸入模組14〇接收到一係數矩陣時,輸入模組14〇可將 該係數矩陣提縣反向轉換模組4 8中《按比例調整模組 142。按比例調整模組142可執行以下運算·藉由一按比例 調整因數矩陣中之均等位置處之按比例調整因數而產生近 似為對該係數矩陣中之係數按比例調整所得的值。舉例而 言,按比例調整模組142可執行乘法運算以藉由―按比例 調整因數矩陣中之均等位置處之按比例調整因數而產生近 似為對該係數矩陣中之係數按比例調整所得的值。在另一 實例中,按比例調整模組142可執行一或多個加法及移位 運算。 此等按比例調整因數中 之每一者可為_8位元整數 值。當按比例調整因數中之每—者為一8位元整數時轉 換期間所產生的值之動態範圍得以減小。 在按比例調整模組丨42產生經按比例調整係數之矩陣之 後,係數加偏差模組i44可藉由將一中點偏差值加至經按 比例調整係數之矩陣之DC係數而產生一有偏係數矩陣。 如上所述,矩陣之DC係數通常為矩陣之左上部位置處之 係數。-般而IT,DC係數表示矩陣中之其他係數之平均 值0 122239.doc -32- 1336444 外的三個位元且按比例調整係數使得添加額外的十個位 兀,則右移模組108可將該等係數中之每一者右移十三 (3 + 1 0)個位置。 在右移模組148產生經調整係數之矩陣之後,一截割模 組150可藉由"截割"該經調整係數之矩陣中之係數而產生 一經截割係數之矩陣以便將該等係數限制在像素分量值之 最大可允許範圍。舉例而言,一典型的像素分量值可 • 在_256至255之範圍中。若經調整係數之矩陣包括一等於 270之係數,則截割模組15〇藉由將該係數減小至255而將 此係數限制在該最大可允許範圍。在截割模組15〇完成截 d /等係數之後,此等係數可表示像素分量值。當截割模 ' 凡成截°】矩陣中之係數之後,截割模組1 5 0可將經截 割係數之矩陣提供給輸出模組1 52。 T =出模組152接收到一經截割係數之矩陣(其現在為像 素分量值)時,輸出模組152可將像素分量值矩陣輸出至像 p 素重建模組5 〇。 ^為說月反向轉換模組34之—例示性操作之流程圖》 最初,輸入模組140接收一係數矩陣(17〇)。當輸入模組14〇 接收到該係數矩陣時’按比例調整模組142可按比例調整 該係數矩陣中之每一值〇72)。舉例而言按比例調整模組 142可執行以下運算:將係數矩陣中之每—係數乘以一按 比例調整因數矩陣中之均等定位之值。 在按比例㈣㈣數矩陣中之每—係數之後,係數加偏 差模組144可將—φ科伯¥ # 甲點偏差值加至該係數矩陣之DC係數 I22239.doc -34- 1336444 (174)。在係數加偏差模組144將偏差值加至該矩陣之〇匸係 數之後,反向向量轉換模組146可g定一列計數器是否小 於一最大列s十數器(1 76)。最初,可將列計數器設定為零。 最大列計數可為一等於該係數矩陣中之列之數目的靜態 值。舉例而言,若該係數矩陣包括八列,則最大列計數器 等於八。 若列計數器小於最大列計數器(176之"是,,),則反向向量 • 轉換模組146可對該係數矩陣中由列計數器指示之列向量 計算一定點按比例調整一維轉換(178)。當反向向量轉換模 組146對該係數矩陣之一列向量計算該轉換時,反向向量 轉換模組146可用一中間係數向量替代該列係數向量中之 原始係數β在反向向量轉換模組146對該係數矩陣之一列 向1計算該轉換之後,反向向量轉換模組146可使列計數 器遞增(180)。反向向量轉換模組146可接著返回且再次確 定列計數器是否小於最大列計數器(丨76)。 • 若列計數器不小於(亦即,大於或等於)最大列計數器 (176之”否”),則反向向量轉換模組146可確定一行計數器 是否小於一最大行計數器(182卜最初,可將行計數器設: 為零。最大行計數器可為一等於係數矩陣中之行之數目的 靜態值。舉例而言,若係數矩陣包括八行,則最大行計數 器等於八。 若行計數器小於最大行計數器(182之”是”),則反向向量 轉換模組146可對中間係數矩陣中由行計數器指示之行向 量計算—維轉換(184)。當反向轉換龍34對中間係數之一 122239.doc -35- 1336444 仃向量計算該轉換時,反向轉換模組34用經轉換係數之一 向量替代該行向量中之令間係數。. 在反向向量轉換模組146對該係數矩陣之一行向量計算 亥轉換之後,反向向量轉換模組146可使行計數器遞增 (186)。反向向量轉換模組〗46可接著返回且再次確定行計 數器是否小於最大行計數器(182)。 右仃计數器不小於(亦即,大於或等於)最大行計數器
(1=之”否”),則右移模組148可將矩陣中之經轉換係數十 之每者右移(188)。當右移模組148右移一係數時,右移 模組14 8可將s亥係數向右移位特定數目之位置。將矩陣中 之第二中間係數中之每一者右移的結果為一經調整值之矩 陣。在右移模組〗48已右移經轉換係數中之每一者之後, 截。'J換、组1 50可截割該等經調整之係數以便確保該等經調 整之係數在像素分量值之適當範圍内(19g)。舉例而言,截 “莫組1 5 0可截割該等經調整之係數以便確保該等經調整 上之係數在·256至255之範_。當❹】模組15❻成截割經 凋整之係數之後,冑出模組152可輸出所得的像素分量值 矩陣(192)。 圖8為說明前向轉換模組26之例示性細節之方塊圖。如 圓8之實例中所說明的,前向轉換模組26包含-輸入模組 210 ’其接收來自分量提取模組24之像素分量值矩陣。當 輸入模組210接收到一像素分量值矩陣時,輸入模組21〇可 將該像素分量值矩陣提供給—左移模組212。左移模組212 了將像素分S值矩陣巾之所有像素分量值向左移位當執行 I22239.doc •36· t㈣㈣向向量轉換模組214所使用的值中
兀數目減去鋅±^ ^1IL 例而丄 ^ 執行前向轉換而移除的尾數位元數目。舉 2。,右執行前向轉換時的值中使用十個尾數位元且藉 由執行前向離散铨 έ '轉換而移除三個尾數位元,則左移模 可將像素分量值向左移位七個位置。在另一實例 〜若執行前向轉換時的值中使用三個尾數位元且藉由執 仃別向轉換而移除=徊尸去A y _ 八θ '、—個尾數位元,則左移模組212可將像 ,、刀里值向左移位零個位置。 在左移模組212移位像素分量值之後,前向向量轉換模 組2 1 4可對像素分量值矩陣中之每-行向量應用-前向轉 換以便產生—中間值矩陣。接著,前向向量轉換模組214 可對》亥中間值矩陣中之每—列向量應用前向轉換以便產生 丄轉換係數之矩陣。當前向向量轉換模組214對一向量應 用前向轉換時’前向向量轉換模組214可應用以下圖U中 所描述之前向轉換。注意,以下圖η中所描述之轉換係圖 10Α中所描述之轉換之反向轉換。 在前向向量轉換模組214產生經轉換係數之矩陣之後, 按比例調整模組216可對經轉換係數之矩陣中之每一經轉 換係數應用按比例調整因數。按比例調整模組216可應用 由反向轉換模組48中之按比例調整模組142使用之按比例 調整因數的倒數。舉例而言’若按比例調整模組142藉由 將係數向左移位三個位置而按比例調整該等係數,則按比 例調整模組216可藉由將經轉換之值向右移位三個位置而 若按比例調 按比例調整該等經轉換之值。在另一實例中 J22239.doc -37- 1336444 整模組142藉由將係數乘以一按比例調整因數矩陣中之個 別按比例調整因數而按比例調整該奪係數,則按比例調整 模組216可藉由將經轉換之值乘以該按比例調整因數矩陣 中之知:比例調整因數且接著將所得的值向右移位一量值而 按比例s周整該等經轉換之值。為了減少捨入誤差,按比例 調整模組216可在將經轉換之值乘以按比例調整因數之後 將一中點偏差值加至經轉換之值中之每一者。舉例而言, • 按比例調整模組216可使用以下等式產生一經按比例調整 係數之矩陣: F[v][z/]=(^[v][M]^[v][M]+(l«19)-((FTv][w] >= 〇) ? 〇 ; 1} )>>2〇 其中v = 0.,7,m = 0..7,·其中列V][M]為按比例調整因數矩陣 中之元素,只為經按比例調整係數之矩陣,且厂為經轉 換係數之矩陣。 在按比例調整模組216產生經按比例調整係數之矩陣之 後,輸出模組218可將係數矩陣輸出至量化模組28。 _ 圖9為說明别向轉換模組26之一例示性操作之流程圖。 最初,輸入模組2 10接收一像素分量值矩陣(23〇)。當輸入 模組140接收到像素分量值矩陣時,左移模組212可藉由將 像素分量值矩陣中之每一值左移而產生一經調整係數之矩 陣(232)。舉例而言,左移模組212可將所有係數向左移位 十個位置。在此實例中,左移模組212可將所有係數向右 移位十個位置,因為前向向量轉換模組2 1 4可使用在小數 部分中使用十個位元來編碼數字之定點算術。因此,藉由 將該等係數向左移位十個位置,左移模組212將像素分量 122239.doc -38· 1336444 餘弦轉換(242)。因為前向向量轉換模組214已經對矩陣之 列向i §十具了前向轉換,所以係數矩陣現在含有中間係 數°當前向向量轉換模組214對中間係數之一列向量計算 則向轉換時,前向向量轉換模組214用經轉換之係數替代 該行向量中之中間係數。 在前向向量轉換模組214對係數矩陣之一列向量計算離 政餘弦轉換之後,前向向量轉換模組214可使列計數器遞 • 增(244)。前向向量轉換模組214可接著返回且再次確定列 計數器是否小於最大列計數器(24〇)。 若列計數器不小於(亦即,大於或等於)最大列計數器 (240之"否’’),則按比例調整模組216可按比例調整經轉換 係數之矩陣中之每一經轉換係數(246)。當按比例調整模組 2 16按比例調整一係數時,按比例調整模組216可將該係數 向右移位特定數目之位置。在按比例調整模組2丨6已按比 例調整經轉換係數中之每一者之後,輸出模組2丨8可輸出 鲁所得的經按比例調整係數之矩陣(248)。 圖10A為說明一例示性一維轉換26〇之流程圖。在圖1〇A 中’值、X】、X2、χ3、义4、义5、不及义7表示輸入係數且 值尤〇、Λ:丨、x2、JC3、文4、Χ5、〜及心表示轉換26〇之輸出值。 與一包含符號之圓之後的線相關聯之值為與指向該圓 之箭頭相關聯之值相加的結果。與一包含” χ"符號之圓之 後的線相關聯之值為將緊接該圓定位之係數與與通過該等 圓之線相關聯之值相乘的結果。緊接一箭頭之符號""表示 與該箭頭相關聯之值之求反。舉例而言,若值"10"與一,,·" 122239.doc • 40· 1336444 符號之前的一箭頭相關聯 頭相關聯。 ,則 符號之後的箭 轉換剔使用乘以七個唯—無理因數之十四個乘法。為 便利起見’本揭示案將此等唯一無理因數稱作α、卜丫' 。在轉換 260 中,η(3ίΓ/8),β=νϊ·/8), γ=〇〇3(π/16) > δ=δ1η(π/16) , e=cos(37t/16) , ζ.δίη(3π/16),
庄〜α 0、丫、§、£、(及11全部為無理數。因 為α' β、γ、δ、ε、為無理數,所以α、ρ、ρ δ、ε、ζ 及η之可接受準確表示可能需要相對較大數目之位元。因 此,當使用具有相對較小數目之尾數位元的定點數來計算 轉換260時,可能無法達成與典型编碼標準之要求的符合 度。此外,因為α、β、γ ' δ、ε、(及力為無理數,所以對 於移位運算、加法運算及/或減法運算之序列而言可能無 法減少與α、β、γ、δ、ε、ς及η相乘的次數。 圖1 0Β為說明一例示性一維經按比例調整轉換27〇之流程
圖。轉換270為轉換260之經按比例調整版本。在轉換27〇 中,已自轉換260因數分解出值η,已自轉換26〇之值γ' 5、ε及ζ因數分解出值(1/ψ),且已自轉換26〇之值α及β因數 分解出值(l/φ)。當(l/ψ)及(l/φ)自此等係數進行因數分解 而得出時,以下向量表示在轉換27〇之前與不)_為相乘的 值: < 1 ' (ΐ/ψ)' (ΐ/φ)' (V2/y) > 1 ' (V2/y)' (ΐ/φ)' (ΐ/ψ)> 當(1/ψ)及(1/φ)自(X、β、γ、δ、ε及ζ進行因數分解而得出 時’ α、β、γ、δ、ε、ζ及η之值可改變。出於便利之目 I22239.doc -41 . 1336444 的’將因數分解出(l/ψ)及(l/φ)之後的值α、β、γ、δ、ε及ζ 稱作 α'、β' ' γ'、δ’、ε1 及 ζ,。舉例而言,當 ψ=ι·352708058
且 /ϋϋϋ91 時 : :679/512,δ' = 135/512,ε'=46〇5/4096,且 ζ·=1539/2048 可以各種方式選擇值(λ'、βΙ、、δΙ、及ζΙ以使得其將 近似為ct、β、γ、δ、ε及ζ與對應因數^^或中之乘積。一般而 言,可在不改變轉換270之總設計之情況下選擇因數少及中 之值及值α’、β’、γ’、δ’、ε·、ζ,。尋找此等因數之優良值 表不可能會在不同複雜性/精確度考慮之情況下得出多個 解之複雜的最佳化問題。舉例而言,與αι、ρ,、、δ,、ε, 及ζ1中之一些值相乘可能比其他值更便於計算。此外,ψ 及φ之值可能是重要的,因為其充當按比例調整因數之基 礎’且-些按比例調整因數可能比其他值更便於計算。舉 例而言,與α'、Ρ,”'、〜及ζ,之第-組值相乘可藉由 系列加法運算及移位運算來近似,該系列加法運算及移 Ί 位運算短於用於α'、β,、γ, "及ζ’之一不同組值的一 Ή加法運算及移㈣算。舉例而言,#ψ=1 35270難且㈣.9597_91時1,可近似為679/512。近似與67削 之相乘可能需要三個移位運算及三個加法運算。此外,當 =_且φ,01251953時,γ,可近似為職^ 、似與18981/16384之相乘可能需尊加法運算。 此而要四個移位運算及四個 稭由將向量 …Ψ)、(l/φ)、(VJ/ ψ)、 (1/Φ)、(1/V) >之轉置乘以相同向量 ψ) 寸异裣比例調整因 122239.doc •42· 丄 336444 數矩陣《此導致產生一 8 χ 8之值矩陣:
A B C D A D C B B E F G B G F E C F H I C I H F D G I J D J I G A B C D A D C B D G I J D J I G C F H I C I H F B E F G B G F E
,,几—上上,, ㈣〜)2,卜⑽”㈣),晴)* (VJ/Ψ) ’ Η,/#,Ι=(1/φ)*(柄),且>㈤州狗)。 因為按比例調整因數在應用轉換之前與係、數相乘,所以 可將按比例調整因數A、B、C、D、E、F、G、Η、⑴左
移户個位置’其中Ρ為—常數’其表示-轉換中所使用的定 點尾數位元(亦即,小數點向右之位元)之數目。此將原始 係數有效地轉換成具有ρ個尾數位元之定點數。換言之, 矩陣令之係數之每—者乘以/。可接著藉由整數值來近似 所得的值。因此,上述矩陣中之a、b、c、d、e'f、 G二Η、⑷可用以下值來替代:A,:,…(狗)*,, /(P 2 D 〜(Λ^/ψ)*2ρ,Ε'=(1/ψ)2*2ρ,Ρ4(1/ψ)*(ι/φ)*2户, g,即,ΗΜι/φ)2〜叫ι/φ)* (狗以, 且 (柄”2' 舉例而士,人 _ 7 Ψ-1.352708058,令 φ = 〇·959700091,且令 = 1 0。 Φ及P之此等值,則可選擇按比例調整因數 122239.doc -43 · 1336444 A,: =1024 、 B1 = 757 ' C' =1067 、 G,: = 792 ' H'= = 1112' Γ = =1116 , 下按比例調整因數之矩陣: D,=1071、E' = 560、F' = 789、 且Γ = 1 120。因此,可產生以 1024 757 1067 1071 1024 1071 1067 757 757 560 789 792 757 792 789 560 1067 789 1112 1116 1067 1116 1112 789 1071 792 1116 1120 1071 1120 1116 792 1024 757 1067 1071 1024 1071 1067 757 1071 792 1116 1120 1071 1120 1116 792 1067 789 1112 1116 1067 1116 1112 789 757 560 789 792 757 792 789 560 以下表概括可供轉換270使用之例示性按比例調整因數 及 α'、β'、γ、δ'、ε'及 ζ'之值。 表1:用於演算法Α中之常數因數近似值。
因數 值 演算法: x=x*[A,...,J]»2; χ=χ*[α, γ,ε]; γ=χ*[β,δ,ζ]; 複雜性 所用之 時間 加法 移位 A, 2048 (χ*Α')=(χ«9)。 0 1 4 B, 1703 χ2=-χ+(χ«6), χ3=χ2+(χ2«3), χ4=(χ+χ3)«1 5 (χ*Β,)=(χ3+χ4)»2 ; 4 4 8 C' 2676 χ2=-χ+(χ<<3), χ3=-χ+(χ2«5) > (x*C')=x3+(x3«l); 3 3 8 D' 2408 χ2=χ+(χ«5), χ3=Γχ2«1 > χ4=χ+χ3, (x*D')=x3+(x4«3); 3 3 8 E' 1416 χ2=χ«4 > χ3=χ2«3, χ4=χ3-χ2, χ5==χ+χ4, (χ*Ε')=χ3+(χ5«1); 3 3 4 122239.doc -44- 1336444
F, 2225 x2=x«5 5 x3=x+(x2«2) > x4=x3«4, x5=x2+x3 , (χ*Ρ')=(χ4+χ5)»2 ; 3 4 8 G' 2003 x2=x«4 ' x3=x2-x, x4=-x3+(x2«5), (x*G')=(x3»2)+ x4 ; 3 3 8 H' 3496 x2=x«3, x3=x2-x, x4=x3«l > x5=x2+x4 > (x*H')=-x5+(x4«6); 3 3 4 Γ 3147 x2=x«9, x3=-x+(x«4) » x4=x2+x3 , x5=x2+x4 , (χ*Γ)=(χ5»2)+χ4 ; 4 3 8 J' 2832 x2=x«2 > x3=x2-x, x4=x3«6, x5=x2+x4 , (x*J')=x5+(x2«7); 3 3 4 a' β( 53/128 1 (χ*β')=χ, x2=x»2, x3==x+x2, x4=x2-x, (x*af)=(x3»5)-(x4»l); 3 3 2 γ' δ. 151/128 15/32 x2=x-(x»4) » x3=x2+(x»7) > (χ*δ')=χ2»2 ; (x*y')=y+x3 ; 3 3 2 ε' ζ' 1 171/256 (χ*ε!)=χ x2=(x»3)-x ; x3=x+(xc»3); (χ*ζ')=χ3-(χ3»2); 3 3 2 經按比例調整ID轉換之複雜性: 44 18 2D按比例調整之總複雜性: 196 200 完整的2D轉換之複雜性: 901 552 122239.doc 45- 1336444 表2 :用於演算法B中之常數因數近似值。
因數 值 演算法: x=x*[A,...5J, α, γ, ε]; y=x*[p, δ, ζ]; 複雜性 所用之 時間 加法 移位 A, 1024 (χ*Α')=χ«10 ; 0 1 4 B, 757 χ2=-χ+(χ«6), χ3=(χ2«2), χ4=(χ3«1), (χ*Β') =χ+χ3,χ=χ4+χ5 ; 3 3 8 C, 1067 χ2=-χ+(χ«6), χ3=,χ+(χ2«2), (x*C')=x3«2 » χ=χ2+χ4 ; 3 3 8 D' 1071 χ2=χ«6 » χ3=χ2-χ , (x*D!)=x3+(x3«4); 2 2 8 E, 560 χ2=χ«5 » χ3=χ+χ2 , χ4=χ3«4 5 (χ*Ε')=χ2+χ4 ; 2 2 4 F, 789 χ2=χ«3 > χ3=χ2,χ, χ4=χ3+(χ2«5), (x*F')=x4+(x4«l); 3 3 8 G, 792 χ2=χ+(χ«5) 1 χ3=χ2«1, χ4=χ2+χ3 , (x*G')=x4«3 ; 2 3 8 H' 1112 χ2=χ«4, χ3=χ2-χ, χ4=χ2+χ3 » χ5=χ3+(χ4«2), (χ*Η')=χ5«3 ; 3 3 4 Γ 1116 χ2=-χ+(χ«5), χ3=χ2«3, χ4=χ2+χ3 » (χ*Ι')=χ4«2 ; 2 3 8 J' 1120 χ2=-χ+(χ«3), χ3=χ2+(χ2«2), (x*Jf)=x3«5 ; 2 3 4 α' 133/256 χ2=χ»2 > χ3=χ+χ2 , χ4=χ+(χ3»5), (χ*α')=χ4»1 ; (χ*β')=χ3-(-χ2»6); 3 4 2 β· 321/256 122239.doc • 46 - 1336444
γ' 679/512 x2=x»4, x3=x»9, x4=x+x2 , (χ*δ')=-χ3+(χ4»2); (χ*γ')=χ4+(χ*δ'); 3 3 2 δ, 135/512 ε' 4605/4096 χ2=χ+(χ»1) > χ3=χ2+(χ2»9), -(χ*ζ')=-χ3»1 ; (x*e')=x2-(y»l); 3 4 2 ζ· 1539/2048 經按比例調整1D|I Μ 奥之複雜性: 44 22 2D按比例調整之總複雜性: 148 172 2D轉換w/o按比例調整之複雜性: 704 352 完整的2D轉換之複雜性: 852+1 524+64 表3 :用於演算法C中之常數因數近似值。 因數 值 演算法: x=x*[ Α,.-.Λ α, γ, ε]; y=x*[p, δ, ζ]; 複雜性 所用之 時間 加法 移位 A' 1024 (χ*Α')=χ«10 ; 0 1 4 B, 1138 χ2=χ1«1 > χ3=χ2«3 > χ4=χ2+χ3 > χ5=χ3-χ2 > (χ*Β')=(χ4«6)-χ5 ; 3 3 8 C' 1730 χ2=χ1«1 > χ3=χ1+χ2 , χ4=χ3«3, χ5=χ3+χ4 , (x*C!)=x2+(x5«6); 3 3 8 D, 1609 x2=xl«3 > χ3=χ2«1 » χ4=χ1+χ2 , χ5=χ3+χ4 , (x*D')=x4+(x5«6); 3 3 8 E, 1264 x2=xl«2, χ3=χ2«2, χ4=χ2+χ3 , χ5=χ4«6 > (χ*Ε')=χ5-χ3 ; 2 3 4 F' 1922 χ2=χ1«1 > χ3=:χ2«3 » χ4=-χ1+χ3, χ5=χ4«7 5 (x*F')=x2+x5 ; 2 3 8 G, 1788 x2=xl«2 ? 2 3 8 122239.doc -47- 1336444
χ3=χ2«1 > x4=x3-xl, χ5=χ4«8 > (x*G')=x5-x2 ; H, 2923 x2=xl«l 5 x3=xl+x2 , x4=(x3«3)-xl > x5=x4-x2, (x*H')=(x4«7)-x5 ; 4 3 4 Γ 2718 x2=xl«l, x3=x2«l, x4=xl+x3 5 x5=x4+(x4«4), (x*F)=(x5«5)-x2 ; 3 4 8 J’ 2528 x2=xl«2 » x3=xl+x2 , x4=x3«4 > x5=x4-xl > (x*J')=x5«5 ; 2 3 4 α' 41/128 x2=x+(x»5); x3=x2»2 ; (x*a')=x3+(x»4); (χ*β')=χ2-χ3 ; 3 3 2 β· 99/128 γ’ 113/128 x2=(x»3)-(x»7); x3=x2-(x»ll); (χ*δ’)=χ2+(χ3»1); (χ*γ!)=χ-χ2 ; 4 4 2 δ. 719/4096 ε. 1533/2048 x2=(x»9)-x ; (χ*ζ')=χ»1 ; (χ*ε’)=(χ2»2)-χ2 ; 2 3 2 ζ, 1/2 經按比例調整1D轉換之複雜性: 44 20 2D按比例調整之總複雜性: 160 192 完整的2D轉換之複雜性: 865 576 為說明IDCT模組48可如何使用上述表中所提供之按比 例調整因數、常數值及演算法,考慮上述表3。為使用表3 中之值而應用一反向離散餘弦轉換,IDCT模組48中之輸 入模組140可接收一 8x8係數矩陣。接著,按比例調整模組 142藉由一因數d按比例調整矩陣中位置[0,0]處之一係數; 藉由一因數5按比例調整矩陣中位置[0,1]處之一係數;藉 122239.doc -48- 1336444 由一因數c按比例調整矩陣中位置[〇,2]處之一係數;藉由 一因數乃按比例言周整矩陣中位4[〇,3]處之—係數;藉由曰該 因數d按比例調整矩陣中位置[0,4]處之一係數;藉由該因 數乃按比例調整矩陣中位置[0,5]處之一係數;藉由該因數 C按比例調整矩陣中位置[0,6]處之一係數;藉由該因數万 按比例調整矩陣中位置[〇,7]處之一係數;藉由該因數錄 比例調整矩陣中位置Π,0]處之一係數;藉由—因數£按比 鲁例調整矩陣中位置[U]處之一係數;#由一因數厂按比例 調整矩陣中位置Π,2]處之一係數;藉由一因數G按比例調 整矩陣中位置U,3]處之一係數;藉由該因數倾比例調整 矩陣中位置[1,4]處之一係數;藉由該因數G按比例調整矩 陣中位置[1,5]處之一係數;藉由該因數尸按比例調整矩陣 中位置Π,6]處之一係數;藉由該因數五按比例調整矩陣中 位置[1,7]處之—係數;藉由該因數c按比例調整矩陣中位 置[2,0]處之一係數;藉由該因數尸按比例調整矩陣中位置 ® [2,1]處之一係數;藉由一因數付按比例調整矩陣中位置 [2.2] 處之一係數;藉由一因數7按比例調整矩陣中位置 [2.3] 處之一係數;藉由該因數c按比例調整矩陣中位置 [2.4] 處之一係數;藉由該因數j按比例調整矩陣中位置 [2.5] 處之一係數;藉由該因數孖按比例調整矩陣中位置 [2’6]處之一係數;藉由該因數尸按比例調整矩陣中位置 [2,7]處之一係數;藉由該因數乃按比例調整矩陣中位置 [3’〇]處之一係數;藉由該因數G按比例調整矩陣中位置 [M]處之一係數;藉由該因數7按比例調整矩陣中位置 122239.doc -49- 1336444 [3,2]處之一係數;藉由該因數·/按比例調整矩陣 [3,3]處之一係數;藉由該因數0按比例調整矩陣 [3,4]處之一係數;藉由該因數/按比例調整矩陣 [3,5]處之一係數;藉由該因數/按比例調整矩陣 [3,6]處之一係數;藉由該因數G按比例調整矩陣 [3,7]處之一係數;藉由該因數J按比例調整矩陣 [4.0] 處之一係數;藉由該因數5按比例調整矩陣 [4.1] 處之一係數;藉由該因數C按比例調整矩陣 [4.2] 處之一係數;藉由該因數Z)按比例調整矩陣 [4.3] 處之一係數;藉由該因數d按比例調整矩陣 [4.4] 處之一係數;藉由該因數D按比例調整矩陣 [4.5] 處之一係數;藉由該因數C按比例調整矩陣 [4.6] 處之一係數;藉由該因數5按比例調整矩陣 [4.7] 處之一係數;藉由該因數D按比例調整矩陣 [5,0]處之一係數;藉由該因數G按比例調整矩陣 [5.1] 處之一係數;藉由該因數/按比例調整矩陣 [5.2] 處之一係數;藉由該因數·/按比例調整矩陣 [5,3]處之一係數;藉由該因數·〇按比例調整矩陣 [5,4]處之一係數;藉由該因數/按比例調整矩陣 [5,5]處之一係數;藉由該因數/按比例調整矩陣 [5,6]處之一係數;藉由該因數G按比例調整矩陣 [5.7] 處之一係數;藉由該因數C按比例調整矩陣 [6.0] 處之一係數;藉由該因數F按比例調整矩陣 [6.1] 處之一係數;藉由一因數尺按比例調整矩陣 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 中位置 122239.doc -50- 1336444 [6,2 ]處之一係數,藉由一因數/按比例調整矩陣中位置 [6,3 ]處之一係數,藉由該因數匚按比例調整矩陣中位置 [6.4] 處之一係數,藉由該因數/按比例調整矩陣中位置 [6.5] 處之一係數,藉由該因數//按比例調整矩陣中位置 [6.6] 處之一係數;藉由該因數厂按比例調整矩陣中位置 [6.7] 處之一係數;藉由該因數5按比例調整矩陣中位置 [7,〇]處之一係數;藉由一因數五按比例調整矩陣中位置 % [7,1]處之一係數;藉由一因數只按比例調整矩陣中位置 [7,2]處之一係數;藉由一因數6按比例調整矩陣之位置 [7 ’ 3 ]處之一係數,藉由該因數丑按比例調整矩陣中位置 [7.4] 處之一係數;藉由該因數(^按比例調整矩陣中位置 [7.5] 處之一係數;藉由該因數厂按比例調整矩陣中位置 [7’6]處之一係數,且藉由該因數五按比例調整矩陣中位置 [7.7] 處之一係數。當按比例調整模組142按比例調整此等 係數時,按比例調整模組142可使用如表6中所指定的值: Φ d = 1024,5=1 138,C=1730 ’ Z)=1609,五=1264,尸=1922 , G=1788 ’ //=2923,/=2718 ’ 及 >2528。此等經按比例調 整之係數構成一經按比例調整係數之矩陣。 在按比例調整模組142按比例調整該等係數之後,反向 轉換模組146可對該經按比例調整係數之矩陣之每—列向 量應用一轉換以產生一中間係數矩陣且對該中間係數矩陣 之每一行向量應用該轉換以產生一經轉換係數之矩陣。反 向轉換模組146可藉由以下方式對一列向量或一行向量應 用該轉換:藉由將X〇與A相加而計算值;藉由將&與 122239.doc 51 1336444 相加而計算值A藉由將,2乘以值α而計算值㈣);藉由 將又6乘以值β而計算值(曰 — Μ,精由將&乘以值Ρ而計算值 (又2 β),错由將X乘以值 i r _ 值α而6十异值㈨*α);藉由將(χ2*α) 相加而計算值,2,;藉由將__^ …,错由將V與V相加而計算值訂,;藉由將 相加而計算值文'1 ;藉ώ收 2 精由將々與·々,相加而計算值々,,;藉由 將與-尤6丨相加而計算值 ". it值〜,藉由將。與相加而計算值 坏;措由將Xl與X7相加而計算值V;藉由將一二之平方 根相乘而計算值Α藉由將々與二之平方根相乘而計算值 ',猎由將V與彳相加而計算值Y ;藉由將彳與 <相加 而“值V ;藉由將々與·々’相加而計算值藉由將々, 與々’相加而計算值藉由將&"與值ε相乘而計算值
;藉由將Χ7"與值以目乘而計算值㈨,,、”藉由將V 與值7相乘而計算值⑹、);藉由將心"與值δ相乘而計算值 (β’*δ),·藉由將Χ5"與值δ相乘而計算值(4,;藉由將彳, 與值Y相乘而計算值(W;藉由將V與值ζ相乘而計算一 值;藉由將^與值ε相乘而計算值(A、);藉由將 (工7"*ε)與-(ν'*ζ)相加而計算值w ;藉由將«^與一 (乂*5)相加而計算值Χ3…;藉由將(^〜)與(:c3"*s)相加而 計算值W,;藉由將(ν,*ε)與“7"%)相加而計算值;藉 由將…與V,相力口而計算值為;藉由將^"與〇目加而言; 算值不’·藉由將,2"與彳.,相加而計算值不;藉由將與 彳"相加而計算值不;藉由將v,與_彳"相加而計算值不; 藉由將欠2"與 <,,相加而計算值& ;藉由將^,,與<"相加 I22239.doc •52· 丄⑽444 而计算值不;藉由將V與-W相加而計算值γ,发 7 ^ T Xq ' m2、、A、x5 ' x6、x7為一列向量或一行向量中之係 數且不、不、不、厶、4、石及為為轉換之輪出值。當執 行此等計算時,反向轉換模組146使用分數值: α=41/128 ’ β=99/128 ’ γ=1533/2048 , S=l/2 , ε=ΐ13/128 , 及ζ=719/4096,與該等分數值之乘積係藉由如表3中所指 定的較少乘法之演算法來計算。
以下程式碼含有轉換270之一例示性c語言實施例: /*定義按比例調整因數值*/ #define A 1024 #define B 113 8 #define C 173 0 ^define D 1609 ^define E 1264 #define F 1922 弃define G 1 788 ^define H 2923 #define I 2718 #define J 2528 产定義按比例調整因數矩降*/ static int scale [8*8] = { A,B,C,D,A,D,C,B, B, E, F, G, B, G, F, E, C,F,H,I, C,I,H,F, D,G,I,J,D,J, I,G, A, B, C, D, A, D, C, B, D,G,I,J, D,J,I,〇, 122239.doc -53- 1336444
C,F,H,I,C,I,H,F, B,E,F,G,B,G, F, E void scaled_ 1 d_idct (int *, int *); void idct (short *P) {
int block[8*8], block2[8*8], i· /*按比例調整輸入係數中之每一者 for (i = 0; i<64; i++) block[i] = scale[i]*P[i]; /*將偏差加至DC係數V block[0] += 1<<12; /*對區塊之每一列及每一行應用向量反向離散
餘弦轉換^ for (i=0; i<8; i++) scaled—ld」dct (block+i*8, block2 + i); for (i = 0; i<8; i++) scaled_ld_idct (block2 + i*8, block+i); /*將經轉換係數中之每一者右移*/ for (i = 〇; i<64; i ++) P[i] = block[i]>>13; 122239.doc -54- 1336444 #define mul_l(y,z) { int y2, y3; y2 = (y>>3)-(y»7); y3=y2-(y>>l 1); z=y2 + (y3»l); y=y-y2; } #define mul_2(y,z) { int y2; y2 = (y>>9)-y; z=y>>l; y=(y2>>2)-y2;
#define mul_3(y,z) { int y2, y3; y2=y+(y>>5); y3=y2>>2; y=y3 + (y>>4); z=y2-y3; void scaled_ 1 d_idct (int *in, int *out) •55 - 122239.doc 1336444 int xO, xl, x2, x3, x4, x5, x6, x7, xa, xb; xl=in[l]; x3=in[3]; x5 = in[5]; x7 = in[7];
xa=x1+x7; xb=x 1 -x7; x1=xa+x3; x3=xa-x3; x7=xb+x5; x5=xb-x5;
mul_l(x3, xa); mul_l (x5, xb); x3=x3-xb; x5=x5+xa; mul_2(x 1, xa); mul_2(x7, xb); x1=x1+xb; x7 = x7-xa; xO = in[0]; x2 = in[2]; 122239.doc -56- 1336444 x4 = in[4]; x6 = in[6]; mul_3(x2, xa); mul_3(x6,xb); x2=x2-xb; x6 = x6+xa;
xa=xO+x4; xb=x0-x4; x0=xa+x6; x6 = xa-x6; x4=xb+x2; x2=xb-x2; out[0*8] = x0 + xl; out[ 1 * 8]=x4 + x5; • out[2* 8] = x2+x3; out[3 * 8]=x6+x7; out[4* 8] = x6-x7; out[5 * 8] = x2-x3; out[6 * 8] = x4-x5; out[7 * 8]=xO-x 1; void scaled_ 1 d_fdct (int *, int *); -57 - 122239.doc 1336444 void fdct (short *P) { int block[8*8], block2[8*8], i; for (i = 0; i<64; i++) block[i]=P[i]«7; for (i = 0; i<8; i++)
scaled ld_fdct (block+i, block2+i*8); for (i = 0; i<8; i++) scaled_ld fdct (block2 + i, block+i*8); for (i = 0; i<64; i++) P[i]=(block[i]*scale[i] + 0x7FFFF-(block[i]>>3 1))>>20; void scaled_ 1 d_fdct (int *in, int *out)
int xO, xl, x2, x3, x4, x5, x6, x7, xa3 xb; x0=in[0*8]+in[7*8]; x1=in[0* 8]-in[7* 8]; x4=in[l*8]+in[6*8]; x5 = in[l*8]-in[6*8]; x2 = in[2*8] + in[5*8]; x3 = in[2*8]-in[5*8]; x6 = in[3*8] + in[4*8]; -58- 122239.doc 1336444 x7 = in[3*8]-in[4*8]; mul_l (x3, xa); mul_ 1 (x5, xb); x3=x3+xb; x5=x5-xa;
mul_2(xl, xa); mul_2(x7, xb); x 1 =x 1 -xb; x7=x7+xa; xa=x1+x3; x3 = x 1 -x3; xb=x7+x5; x5 = x7-x5;
x1=xa+xb; x7 = xa-xb; xa=x0+x6; x6=x0-x6; xb=x4+x2; x2 = x4-x2; xO=xa+xb; x4=xa-xb; 122239.doc -59- 1336444 mul_3(x2, xa); mul_3(x6, xb); x2=xb+x2; x6=x6-xa;
out[0]=x〇 out[ 1 ]=x 1 out[2]=x2 out[3]=x3 out[4]=x4 out[5]=x5 out[6]=x6 out[7]=x7 圖 之一例示性經按比 11為說明由前向轉換模組214使用
例調整轉換280之流程圖。在圖^中,值心、不、& A、及X7表示輸出係數且值h、々 A、h、A及h表示輸入值。與—包含"+ "符號之圓之後的 線相關聯之值為與指向該圓之箭頭相關聯之值相加的結 果。與一包含,,χ,,符號之圓之後的線相關聯之值為將緊接 該圓定位之係數與與通過該等圓之線相關聯之值相乘的結 果。緊接一箭頭之符號"_,,表示與該箭頭相關聯之值之求 反。舉例而言,若值"10”與一,,_”符號之前的一箭頭相關 聯’則值"-10”與該,,_”符號之後的箭頭相關聯。此外,應 注意’可在演算法丨9〇中使用以上所描述的使用負係數及 122239.doc •60- UJ0444 減法來減少捨入誤差之技術。 、在广辦,將輸出值為至A分別乘以因數卜”” .Ψ,万少及V。注意’此等因數為自轉換270中之α·、 γ、δ、ε·及ζ·進行因數分解而得的值之倒數。
可以硬體、軟體、動體或其任何組合實施本文中所描述 ,技Ί在-積體邏輯裝置或分別作為離散的但能共同 :作之邏輯裝置中同時實施經描述為模組或分量之任何特 徵。右以軟體加以實施’則可至少部分藉由一包含指令之 電腦可讀媒體㈣用該等技術’該等指令當執行時執行以 亡所描述之方法中之一或多纟。該電腦可讀媒體可形成電 腦程式產品之一部分,該電腦程式產品可包括包裝材料。 電腦可讀媒體可包含諸如同步動態隨機存取記憶體 (SDRAM)之隨機存取記憶體(RAM)、唯讀記憶體(r〇m)、 非揮發性隨機存取記憶體(NVRAM)、電可擦可程式唯讀記 憶體(EEPR〇M)、&閃記憶體、磁性或光學資料儲存媒 體,及其類似物。可至少部分藉由一電腦可讀通信媒體來 額外地或另外地利用該等技術,該電腦可讀通信媒體載運 或傳遞呈指令或資料結構之形式的且可由電腦存取、讀取 及/或執行之程式碼。 可由一或多個處理器執行該程式碼,諸如一或多個數位 信號處理器(DSP)、通用微處理器、特殊應用積體電路 (ASIC)、場可程式邏輯陣列(fpga)或其他等效的積體或離 散邏輯電路。因此’如本文中所使用之術語"處理器"可指 適合於實施本文中所描述之該等技術的前述結構或任何其 122239.doc 61 1336444 構中之任一者。此外,在一些態樣中,可在經組態用 ;扁馬及解碼之專用軟體模組或硬體模組内提供本文中所 述之功此,或將本文中所描述之功能併入一組合式視訊 編碼器-解碼器(CODEC) t » 已描述本發明之各種實施例。此等及其他實施例在以下 申清專利範圍之範脅内。 【圖式簡單說明】 圖 圖1為說明一編碼及解碼媒體檔案之例示性裝置之方塊 圖2為說明一編碼模組之例示性細節之方塊圖。 圖3為說明一解碼模組之例示性細節之方塊圖。 圖4為說明編碼模組之一例示性操作之流程圖。 圖5為說明解碼模組之一例示性操作之流程圖。 圖6為說明一反向離散餘弦轉換("IDCT")模組之例示性 細節之方塊圖。 圖7為說明反向轉換模組之一例示性操作之流程圖。 圖8為說明一前向離散餘弦轉換(”FDCT")模組之例示性 細節之方塊圖。 圖9為說明前向向量轉換模組之一例示性操作之流程 圖。 圖10A為說明一例示性一維轉換之流程圖。 圖10B為說明一例示性經按比例調整一維轉換之流程 圖β 調 圖Π為說明由反向轉換模組使用之一例示性經按比例 122239.doc •62· 1336444 整一維轉換之流程圖。 【主要元件符號說明】
2 例示性裝置 4 媒體源 6 處理器 8 編碼模組 10 媒體儲存庫 12 解碼模組 14 媒體呈現單元 16 網路介面 20 圖框控制模組 22 區塊分離器模組 24 分量提取模組 26 前向轉換模組/離散餘弦轉換(DCT)模組 28 量化模組 30 網編碼模組 32 運動估計模組 34 重建圖框產生模組 36 剩餘圖框產生模組 38 流輸出模組 44 熵解碼模組 46 解量化模組 48 反向轉換模組/IDCT模組 50 像素重建模組 122239.doc •63- 1336444
51 52 53 54 56 58 140 142 144 146 148 150 152 210 212 214 216 218 260 270 280 圖框緩衝器 區塊組合器模組 圖框控制模組 參考圖框儲存模組 重建圖框產生模組 預測圖框產生模組 輸入模組 按比例調整模組 係數加偏差模組 反向向量轉換模組 右移模組 截割模組 輸出模組 輸入模組 左移模組 前向向量轉換模組 按比例調整模組 輸出模組 例示性一維轉換 例示性一維經按比例調整轉換 例示性經按比例調整轉換 122239.doc • 64-

Claims (1)

1336444 第096123080號專利申請案 中文申請專利範圍替換本(99年9月) 十、申請專利範圍: 定點近似法 1. 一種用於前向及反向離散餘弦轉換之有效率 的方法,其包含: 藉由一因數J 因 數五、-因數广一因數G、—因數"、—因數7或一因1 中之一者按比例調整一 8x8經編碼係數之矩陣中之每— 係數,以便產生一經按比例調整係數之矩陣, 其中 ^刪,,糾264, 厂=1922 ’ G=1788,/f=2923 ’ /=2718,且 J=2528 ; 使用對-定點按比例言周整一維轉換之重複應用,以將 該經按比例調整係數之矩陣轉換成—經轉換係數之矩 陣; 將該經轉換係數之矩陣中之經轉換係數右移以便產生 一經調整係數之矩陣;
一其中該經調整係數之矩陣中之每—經調整係數近似為 藉由對該經編碼係數之矩陣應帛—二維反向離散 餘弦轉換("IDCT,’)將產生的值之一矩陣中之一對應值; 顯示一8x8像素區塊,其中該8x8像素區塊中之每一像 素包括~基於㈣調整係數之料巾之一經調整係數的 像素分量值。 2·如吻求項丨之方法,其令重複應用該定點按比例調 維轉換包含: 對該經按比例調整係數之矩陣之每—列向量應用該定 點按比例調整一維轉換,以產生一中間係數矩陣; 122239-990930.doc 對該中間係數矩陣之 整— < 母—行向量應用該定點按比例調 3如 換以產生—經轉換係數之矩陣。 3·如凊求項1之方法 ▲ y、中顯示該8x8像素區塊包含:以— 素二列中之—視訊圖框之-部分的形式顯示該…像 月求項1之方法’其中顯示該㈣像素區塊包含:以— 靜態影像之一部分之形式顯示該8x8像素區塊。 5.如請求項丄之方法,其中按比例調整該係數矩陣 數包含: 藉由該因數轉比例調整該經編碼係數之矩 置[0,0]處之一係數; 位 藉由該因數万按比例調整該經編碼係數之矩陣中 置[〇,1]處之一係數; 立 藉由該因數C:按比例調整該經編碼係數之矩陣中 置[〇,2]處之一係數; 立 藉由該因數D按比例調整該經編碑係數 置[〇,3]處之一係數; 之矩陣中的位
中的位 藉由該因數/按比例調整該經編碼係數之矩陣 置[〇,4]處之一係數; 之矩陣中的位 藉由該因數乃按比例調整該經編碼係數 置[0,5]處之一係數; 藉由該因數C按比 置[0,6]處之一係數; 例調整該經編碼係數 之矩陣中的位 藉由該因數β按比例調整該經蝙碼係怒 、又矩陣中的位 122239-990930.doc 1336444 置[〇,7]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置π,〇]處之一係數; 藉由該因數£按比例調整該經編碼係數之矩陣中的位 置[M]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[1,2]處之一係數; 鲁藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[1,3]處之一係數; 藉由該因數B按比例調整該經編碼係數之矩陣中的位 置Π,4]處之一係數; 藉由該因數(7按比例調整該經編碼係數之矩陣中的位 置[1,5]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[1,6]處之一係數; • 藉由該因數五按比例調整該經編碼係數之矩陣中的位 置[1,7]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[2,0]處之一係數; 藉由該因數厂按比例調整該經編碼係數之矩陣中的位 置[2,1]處之一係數; 藉由該因數//按比例調整該經編碼係數之矩陣中的位 置[2,2]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 122239-990930.doc 1336444 [2,3]處之一係數; 藉由該因數C按t卜如〜1 牧比例調整該經編碼係數之矩陣 置[2,4]處之一係數; 猎由該因數/按比例調整該經編碼係數之 [2,5]處之一係數; ”的位置 猎由該因數//按比例調整該經編碼係數 置[2,6]處之一係數; 藉由該因數尸按比 置[2,7]處之一係數; 藉由該因數D按比 之矩陣中的位 例調整該經編碼係數之矩陣中 的位 置[3,0]處之一係數; 例調整該經編碼係數之矩陣中 的位 藉由該因數G按比例調整該經編碼係數 置[3,1]處之一係數; 藉由該因數J按比例調整該經編碼係數 [3.2] 處之一係數; 藉由該因數J按比例調整該經編碼係數 [3.3] 處之一係數; 之矩陣中的位 之矩陣中的位置 之矩陣中的位置 藉由該因數D按比例調整該經編碼係數 置[3,4]處之一係數; ’、 藉由該因數按比例調整該經編碼 [3.5] 處之一係數; ' 藉由該因數/按比例調整該經編碼係數 [3.6] 處之一係數; 之矩陣中的位 之矩陣中的位置 之矩陣中的位置 措 由該因數G按比例調整該經編碼係 數之矩陣中的位 122239-990930.doc 1336444 置[3,7]處之一係數; 藉由該因數d按比例調整該經編碼係數之矩陣 置[4,0]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣 置[4,1]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣 置[4,2]處之一係數; 藉由該因數d按比例調整該經編碼係數之矩陣 置[4,3]處之一係數; 藉由該因數d按比例調整該經編碼係數之矩陣 置[4,4]處之一係數; 藉由該因數D按比例調整該經編碼係數之矩陣 置[4,5]處之一係數; 藉由該因數c按比例調整該經編碼係數之矩陣 置[4,6]處之一係數; • 糟由該因數β按比例調整該經編碼係數之矩陣 置[4,7]處之一係數; 藉由該因數£>按比例調整該經編碼係數之矩陣 置[5,0]處之一係數; 錯由該因數G按比例調整該經編碼係數之矩陣 置[5,1 ]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中 [5,2]處之一係數; 猎由該因數按比例調整該經編碼係數之矩陣中 122239-990930.doc 中的位 中的位 中的位 中的位 中的位 中的位 中的位 中的位 中的位 中的位 的位置 的位置 1336444 [5,3]處之一係數; 位 藉由該因數D按比例調整該經編碼係數之 置[5,4]處之-係數; 車中的 中的位置 藉由該因數按比例調整該經編碼係數之矩睁 [5,5]處之一係數; 藉由該因數J按比例調整該經編碼係數之矩陣中的位置 [5,6]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[5,7]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[6,0]處之一係數·, 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[6,1]處之一係數; 藉由該因數//按比例調整該經編碼係數之矩陣中的位 置[6,2]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [6,3]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[6,4]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [6,5]處之一係數; 藉由該因數//按比例調整該經編碼係數之矩陣中的位 置[6,6]處之一係數; 藉由該因數厂按比例調整該經編碼係數之矩陣中的位 122239-990930.doc 1336444 置[6,7 ]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[7,0 ]處之一係數; 藉由該因數五按比例調整該經編碼係數之矩陣中的位 置[7,1 ]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[7,2]處之一係數; 藉由該因數σ按比例調整該經編碼係數之矩陣中的位 置(7,3]處之一係數; 藉由該因數忍按比例調整該經編碼係數之矩陣中 置[7,4]處之一係數; 藉由該因數C?按比例調整該經編碼係數之矩陣中 置[7,5]處之一係數; 位 藉由該因數F按比例調整該經編碼係數 里匕飞各 〜趣陣中的位 置[7,6]處之一係數; • 藉由該因數五按比例調整該經編碼係數之矩睡^ 置[7,7]處之一係數。 6·=求之方法,其中對一列向量或一行向 轉換包含: 藉由將Χ〇與X4相加而計算一值; 藉由將Χ〇與-X4相加而計算一值; 藉由將&乘以一值α而計算一值(χ2*α); 藉由將&乘以一值β而計算一值(以*β); 猎由將&乘以該值β而計算一值“/β); 122239-990930.doc 1336444 藉由將λ:6乘以一值α而計算一值(χ6*α); 藉由將〇2*〇0與- 〇6*β)相加而計算一值χ2' 藉由將〇6*α)與(χ2*β)相加而計算一值〜'; 藉由將χ〇'與χ6'相加而計算一值〇:〇''; 藉由將Χ4'與Χ2'相加而計算一值Χ4'1 ; 藉由將Χ4'與-尤2'相加而計算一值尤2"; 藉由將X〇'與-Χ6'相加而計算一值Χ6"; 藉由將Λ:!與-Χ7相加而計算一值Χ7·; 藉由將Xl與Χ7相加而計算一值A'; · 藉由將Λ:3與二之平方根相乘而計算一值义3·; 藉由將Χ5與二之平方根相乘而計算一值A'; 藉由將與义5'相加而計算一值A"; 藉由將X】'與-Χ3'相加而計算一值y ; 藉由將X7'與-X5'相加而計算一值X5M ; 藉由將λ:3'與a'相加而計算一值y ; 藉由將x7"與一值ε相乘而計算一值(·χ7"*ε); 藉由將χ7Μ與一值ζ相乘而計算一值〇7"*ζ) ; ® 藉由將λ:3μ與一值γ相乘而計算一值〇3"*γ); 藉由將Λ:3Μ與一值δ相乘而計算一值(χ3''*δ); 藉由將X5M與該值δ相乘而計算一值(χ5Μ*δ); 藉由將χ5"與該值γ相乘而計算一值〇5''*γ); 藉由將與該值ζ相乘而計算一值〇1"*ζ); 藉由將χΓ'與該值ε相乘而計算一值(1广*8); 藉由將〇7'·*ε)與-(Α'βζ)相加而計算一值χ7"·; 122239-990930.doc 1336444
藉由將(χ3’’*γ)與如相加而計算—值W". 藉由將相加而計算一值〜^,;’ 藉由將(Α’|*ε)與(Α,|*ζ)相加而計算一值/,";’ 藉由將λ:7與χ〇μ相加而計算—值為. 藉由將A ’與Λ:5'"相加而計算一值尤I . 藉由將V與V’相加而計算—值不; 藉由將w與w相加而計算—值不; 藉由將Λ:6"與相加而計算—值不; 藉由將X2'’與-W相加而計算一值; 藉由將與-w,相加而計算一值z6;及 藉由將與-^1’,'相加而計算—值尤7 ; 其中〜、X,、X2、h、A、h 行向量中之係數, A、X7為一列向量或一 其中不、為、&、厶、χ5 值;且 尤6及A為該轉換之輸出
其中㈣1/128,卜99/128 ”=113/128,§ = 71_6, ε=1533/2048 ,且ζ=1/2 。 如請求項6之方法,其中使用對該定點按比例調整一維 轉換之重複應用包含:在不使用乘法或除法運算之情、兄 下’對該等列向量中之一者或該等行向量中之一者中之 係數應用該轉換。 8. 如請求項7之方法, 其中藉由將&與該值化乘而計算—值^⑼及其中藉 ”玄值ζ汁异值(Χι*ζ)包含執行以下算術運算序列: 122239-990930.doc 计异一值少1,其中; 藉由將X3右移一個位置而計算該值(Α*ζ);及 藉由自(h>>2)減去少丨而計算該值(^*ε);且 其令藉由將Χ7與該值ε相乘計算一值(_ε)及其中藉由 々與該值ζ計算值(的)包含執行以下算術運算序列: 計算一值71,,其中少,,=“7>>9)17; 藉由將h右移一個位置而計算該值(Λ7*ζ);及 藉由自〇V>>2)減去h,而計算該值(々*ε);且 其中藉由將A,,與該值ε相乘計算一值(^,*£)及其中藉 1 ”孩值ς计算该值(Χι’’*ς)包含執行以下算術運算序 列: 計算一值;V,,其中%,,=(々,,>>9)_χι,,; 藉由將xr右移-個位置而計算該值(m ;及 藉由自(少1 >>2)減去W而計算該值(々,,*€);且 其中猎由將y與該值ε相乘計算一值及其中藉 由π與該值ς計算該值(Χ7"*ς)包含執行以下算術運算序 列: 計算一值3V,,,其中少丨,,,=^7">>9)〜,,; ?由將V右移一個位置而計算該值“广*。;及 藉由自0V,,》2)減去3V,,而計算該值(Χ7,·*ε)。 9.如請求項7之方法, 八中藉由將h與一值γ相乘計算一值^3*γ)及其中藉由 將&與—值δ相乘計算一值包含執行以下運算序 122239-990930.doc 計算一值少2,其中3;2=〇3>>3)_(JC3>>7); °十表—值少3,其中 ^3=72-(:^3^1 1); 5十异該值〇3*5)=少2 + (乃>>1);及 藉由自h減去少2而計算該值(Χ3*γ);且 :其中藉由將χ5與該值δ相乘計算—值(χ,及其中藉由 將々與該值γ相乘計算-值(Χ5*γ)&含執 日 列: r^序 叶异一值y2,,其中yXh»〗)—、》?); 叶算一值 y3,,其中 y3,=少2·_(Χ5>> i i ); 藉由將y?與〇V»i)相加而計算該值(χ5*δ);及 藉由自Λ:5減去少2’而計算該值(χ5*γ);且 其中藉由將與一值γ相乘計算一值(A,,、)及其中藉 由將心’’與-值S相乘計算—值(χ3’’*δ)包含執行以下運: 序列: 計算一值少广,其中乃,,=(尤3,,>>3)七3,,>>7); 計算一值乃,',其中",=少2i,_(JC3">>u); 计算該值 〇3··*δ) = );2Μ +(少;及 藉由自A”減去少2··而計算該值“3,,*γ);且 其中藉由將々,,與該值δ相乘計算—值(心,,^及其中藉 由將V與該值Y相㈣算一值(χ5"*γ)包含執行以下運算 序列: 计异一值 y2',,,其中 y2",= (X5'i>>3)_(々">>7); 計算一值y3…,其中y3',,=少2,M_(JC5,,>>n); 藉由將與加而計算該值 122239-990930.doc -11 - 10. 丄JJ0444 藉由自Λ5’’減去少广,而計算該值〇c5,,*Y)。 如請求項7之方法, 其中藉由將巧乘以一值α計算一值(χ2*α)及其中藉由將 2乘以值β计异一值(χ2* β)包含執行以下運算序列: 5十异一值少丨,其中3^x2+〇c2>>5); 計算一值少2 ’其中少2=少1>>2 ; 藉由將少2與(X2>:>4)相加而計算該值(Α*α);及 精由自h減去;;2而計算該值(Χ2*Ρ);且 其中藉由將Α乘以一值α計算一值^6*〇〇及其中藉由將 鲁 工6乘以值β计算一值(χ6* β)包含執行以下運算序列: 計算—值少〗,,其中>V=x2+(x6>>5); 計算一值少2,,其中y2,=>;i,>>2 ; 藉由將乃’與相加而計算該值;及 藉由自h,減去h,而計算該值(χ,ρ);且 其中藉由將X2’,乘以一值〇1計算—值^/化)及其中藉由 將h乘以一值β計算一值(χ2,,*β)包含執行以下運算序 列: _ 計算一值少广’其中 _yi"=x2" + 〇c2,,>:>5); 計算一值W,其中; 藉由將乃,,與W,>>4)相加而計算該值卜广、);及 藉由自3V’減去少2,,而計算該值(X2,,D ;且 其中藉由將W乘以一值〇1計算一值^广化)及其中藉由 將%乘以一值β計算一值“,,*。包含執行以下運算序 列: 122239-990930.doc -12- 1336444 計算一值少丨…,其申;V,,=;c2+〇6">>5); 計算一值少2",,其中乃…二少丨'">>2 ; 藉由將少2…與(々Μ»”相加而計算該值(Χ6Η*α);及 藉由自少Γ,'減去少2,',而計算該值(Χ6ι,*β)。 U·如請求項6之方法,其中使用定點數表示該等值々、&、 工2、Χ3、Χ4、χ5、%、々、χ〇ι、χ 丨,、々,、”,、々·、々I、 X6、X7’、X。"、尤丨"、χ2"、々"、々,·、a,、々Η、々Η、 、X3'"、X5",、々",、㈨*α)、(ι6*β)、(χ2*β)、(X6*a)、 (々 *ε)、(Χ7’’*ζ)、(Α"*γ)、(々’’*δ)、(χ5"*δ)、(JC5"*Y)、 _ Ο及(χΐ ε),5玄等定點數之尾數部分中包括尸個位 元0 12.如請求項η之方法,其中尸等於1〇。 13卞求項i之方法,其中該方法進一步包含接收一包括 该係數矩陣之位元流。 14·:::Γ之方法,其,該方法進-步包含將-中點偏 二矩陣之—Dc係數,以該中點偏差值彻 15·如請求項1之方法’其中該方法進-步包含: 以數之矩陣中之每-係數右移十三個位置 以產生一像素分量值矩陣;及 藉由將該像素分量值 區塊令之像素中而建素分量值併入該像素 16.:==’二=—8經料係數之 不使用乘法或除法運算之情 I22239-990930.doc -13. 1336444 況下按比例調整該經編碼係數之矩陣中之該等係數。 17. —種用於前向及反向離散餘弦轉換之有效率定點近似法 的裝置,其包含: 一按比例調整模組,該按比例調整模組藉由一因數 j、-因數5、-因數C、-因數β、—因數五一因數 F、一因數C?、一因數7/、一因數^或—因數,中之一者按 比例調整一 8x8經編碼係數之矩陣中之每—係數以便產 生一經按比例調整係數之矩陣;
其中 #1〇24,和 1138,C=173〇,〜16〇9,£=1264, 尸=1922 ’ G=1788 ’ //=2923,/=2718,且七之似· 一反向轉換模組,該反向轉換模組使用對一定點按比 例調整-維轉換之重複應用,以將該經按比㈣整係數 之矩陣轉換成一經轉換係數之矩P奉;
一右移模組,該右移模組將該經轉換係數之矩陣中之 經轉換係數右移,以便產生一經調整係數之矩陣;且 其中該經調整係數之矩陣中之每一經調整係數近似為 藉由對該經編碼係數之矩陣應用一理想的二維反向離散 餘弦轉換("IDCT")將產生的值之一矩陣中之一對應值. 一輸出模組,該輸出模組輸出一8χ8像素區塊盆中 該像素區塊中之每-像素包括—基於該經調整係數^矩 陣中之一經調整係數的像素分量值。 18·如請求項17之裝置’纟中該反向轉換模組對該經按比例 調整係數之矩陣之每—列向量應用該定點按比例調整一 維轉換以產生-中間係數矩陣,且對該中間係數矩陣之 122239-990930.doc •14· 每-行向量應用該定點按tb例調整—维 轉換係數之矩陣。 ,准轉換以產生-經 A如請求項17之裝置’其中該輸出模組以—視訊序列中之 視讯圖框之一部分的形式顯示該8x8像素區塊。 ^求項19之裝置’其中該輸出模組以—靜態影像之一 4为之形式顯示該8x8像素區塊。 21.如請求項17之裝置,其中該按比例調整模組: 藉由该因數讀比例調整該經編碼係數之矩陣 置[〇,〇]處之一係數; 藉由忒因數5按比例調签該經編石馬係 置⑽]處之-係數; 數之矩陣中的位 藉由該因數c按比例調整該經編碼係數之料 置[〇,2]處之一係數; 藉由該因數Z)按比例調整該經編碼係數之矩陣 置[0,3]處之一係數; 藉由該因數」按比例調整該經編碼係數之矩陣中 置[0,4]處之一係數; 藉由該因數D按比例調整該經編碼係數之矩陣中的位 置[〇,5]處之一係數; ’ 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[〇,6]處之一係數; ' 立 藉由該因數5按比例調整該經編碼 纸 < 跑暉中的位 置[〇,7]處之一係數; 藉由該因數5按比例調整該經編碼 取心矩暉中的位 122239-990930.doc 1336444 置[ι,ο]處之一係數; 藉由該因數五按比例調整該經編碼係數之矩陣中 置[1,1 ]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中 置[1,2]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中 置[1,3]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中 置[1,4]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中 置[1,5]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中 置[1,6]處之一係數; 藉由§亥因數£按比例調整該經編碼係數之矩陣中 置[1,7]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中 置[2,0]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中 置[2,1]處之一係數; 藉由該因數Η按比例調整該經編碼係數之矩陣中 置[2,2]處之一係數; 藉由該因數J按比例調整該經編碼係數之矩陣中纪 [2,3]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣y 122239-990930.doc 的位 的位 的位 的位 的位 的位 的位 的位 的位 的位 位置 ^的位 -16- 1336444 置[2,4]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [2,5]處之一係數; 藉由該因數丑按比例調整該經編碼係數之矩陣中的位 置[2,6]處之一係數; 藉由該因數/τ按比例調整該經編碼係數之矩陣中的位 置[2,7]處之一係數;
藉由該因數Z)按比例調整該經編碼係數之矩陣中的位 置[3,0 ]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[3,1]處之一係數; ^ 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [3.2] 處之一係數; 藉由該因數《/按比例調整該經編碼係數之矩 [3.3] 處之—係數; 的位置
藉由該因數Z)按比例調整該經編碼係數之矩 置[3,4]處之一係數; 的位 藉由該因數雄比例調整該經編碼係數之 [3,5]處之—係數; 丫的位置 的位置 藉由°亥因數7按比例調整該經編碼係數之矩陣中 [3,6]處之一係數; 藉由該因數G按 置[3,7]處之一係數 藉由該因數4按 比例調整該經編碼係數之矩陣中的位 ) 比例調整該經編碼係數之矩陣中的位 122239-990930.doc 1336444 置[4,0]處之一係數; 陣中的位 陣中的位 藉由忒因數5按比例調整該經編碼係數之矩 置[4,1]處之一係數; 藉由s亥因數C按比例調整該經編碼係數之矩 置[4,2]處之一係數; 藉由该因數D按比例調整該經編碼係數 m 〜祀丨早中的位 置[4,3]處之一係數; 藉由該因數J按比例調整該經編碼係數之矩陣中的位 置[4,4]處之一係數; 藉由該因數D按比例調整該經編碼係數之矩陣中的位 置[4,5]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[4,6]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[4,7]處之一係數; 藉由該因數Z)按比例調整該經編碼係數之矩陣中的位 置[5,0]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[5,1]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [5.2] 處之一係數; 藉由該因數J按比例調整該經編碼係數之矩陣中的位置 [5.3] 處之一係數; 藉由該因數Z)按比例調整該經編碼係數之矩陣中的位 122239-990930.doc •18- 1336444 置[5,4]處之一係數; 藉由該因數J按比例調整該經編碼係數之矩陣中的位置 [5.5] 處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [5.6] 處之一係數; 藉由該因數(7按比例調整該經編碼係數之矩陣中的位 置[5,7]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[6,0]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[6,1]處之一係數; 藉由該因數//按比例調整該經編碼係數之矩陣中的位 置[6,2]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [6,3 ]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[6,4]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [6,5]處之一係數; 藉由該因數//按比例調整該經編碼係數之矩陣中的位 置[6,6]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[6,7]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 122239-990930.doc •19· 置[7,0]處之—係數; 藉由該因數丑按比例調整該經編碼係 置[7,1]處之一係數; 數之矩卩車中 藉由該因數F按比例調整該經編碼係數 置[7,2]處之—係數; 藉由該因數G按比例調整該經編碼係數 置[7,3]處之—係數; 藉由該因數5按比例調整該經編碼係數 置[7,4]處之一係數; 藉由該因數G按比例調整該經編碼係數 置[7,5 ]處之—係數; 之矩陣中 之矩陣中 之矩陣中 之矩陣中 错由該因數F按比例調整該經編碼係數之矩陣中 置[7,6]處之一係數; 稭由該因數£按比例調整該經編碼係數之矩陣 置[7,7]處之一係數。 22.如請求項17之裝置,其中該反向轉換模組藉由以下 對一列向量或一行向量應用該轉換: 藉由將與A相加而計算一值〜,; 藉由將&與相加而計算一值JC4'; 藉由將h乘以一值α而計算一值; 藉由將〜乘以一值β而計算一值(心*…; 藉由將巧乘以該值β而計算一值“2*β); 藉由將4乘以一值α而計算一值(Χ6*α); 藉由將“2*α)與-(々邛)相加而計算一值心,; 的位 的位 的位 的位 的位 的位 的位 方式 122239-990930.doc -20. 1336444 藉由將(χ6*α)與〇2*β)相加而計算一值; 藉由將與χ6'相加而計算一值χ〇''; 藉由將Χ4'與12'相加而計算一值Λ:4Μ ; 藉由將Χ4'與-尤2'相加而計算一值A"; 藉由將Χ〇'與-Χ6'相加而計算一值〜''; 藉由將XI與-Χ7相加而計算一值Χ7'; 藉由將Λ:1與Χ7相加而計算一值Xl'; 藉由將X3與二之平方根相乘而計算一值; 藉由將X5與二之平方根相乘而計算一值X5'; 藉由將X7'與X5'相加而計算一值尤7·'; 藉由將Xl'與-X3'相加而計算一值尤3"; 藉由將X7'與-X5'相加而計算一值Λ:5''; 藉由將Χ3'與A'相加而計算一值尤1"; 藉由將x7M與一值ε相乘而計算一值〇7"*£); 藉由將Χ7"與一值ζ相乘而計算一值(χ7ι’*ζ); 藉由將χ3"與一值γ相乘而計算一值〇3Μ*γ); 藉由將y與一值δ相乘而計算一值(χ3"*δ); 藉由將Χ5''與該值δ相乘而計算一值(χ5"*δ); 藉由將;C5M與該值γ相乘而計算一值〇5"*γ); 藉由將χΓ’與該值ζ相乘而計算一值(χ!''*ζ); 藉由將χΓ'與該值ε相乘而計算一值(χ^’ + ε); 藉由將〇7''*ε)與- (χιη*ζ)相加而計算一值χ7'π ; 藉由將〇3"*γ)與_〇5''*δ)相加而計算一值:c3'''; 藉由將(χ5Μ*γ)與(χ3"*δ)相加而計算一值x5"’ ; 122239-990930.doc •21 - 糟由將(Χι'·*ε)與(々,、)相加而計算一值xr ; 藉由將々,,,與x〇M相加而計算一值X0 ; 藉由將V與々’Μ相加而計算一值尤1 ; 藉由將尤2’’與Α·||相加而計算一值為; 藉由將Χ6’’與Α,',相加而計算一值χ3 ; 藉由將々,,與-V相加而計算一值Ζ4; 藉由將Χ2’’與-w相加而計算一值;ir5 ; 藉由將與-W,相加而計算一值尤6 ;及 藉由將W與%,,,相加而計算一值& ; /、中Ο Λ:1 X2、尤3、尤4、尤5、文6、文7為〆列向量或一 行向量中之係數, 其中尤1、A、不、尤*、义5、不及&為該轉換之輸出 值;且 其中 α=41/128,β=99/128,γ =1 13/128,δ=719/4096, ε=1533/2048 ,且ζ=ι/2 。 23. 24. 如叫求項22之裝置,其中該反向轉換模组在不使用乘法 或除法運算之情況下對該係數矩陣應用該轉換。 如請求項23之裝置, 其中該反向轉換模組藉由執行以下算術運算序列而藉 由將A與該值ε相乘來計算一值(χι*ε)及其中藉由々與該 值ζ來計算值(Χι*ζ): 計算一值少!,其中; 藉由將h右移一個位置而計算該值;及 藉由自(少1>>2)減去少1而計算該值(χ〗*ε);且 122239-990930.doc -22· 其中該反向轉換模組藉由執行以下算術運算序列而藉 由將A與該值ε相乘來計算—值(W)及叾中藉由 值ζ來計算值〇7*ζ): 計算一值3V,其中; 藉由將h右移一個位置而計算該值(Χ7*ζ);及 藉由自〇V>>2)減去少丨,而計算該值(Λ:7*ε广且 其中該反向轉換模組藉由執行以下算術運算序列而藉 由將V與該值ε相乘來計算一值Ui"*e)及其中藉由m 該值ζ來計算該值(Χι"*ζ): 八 計算一值少!,,,其中;^,,气;^,,》9)_χι"; 藉由將X广右移一個位置而計算該值(&,,、);及 藉由自〇V'»2)減去少1,,而計算該值(Χι,,*ε广且 其中該反向轉換模組藉由執行以下算術運算序列而藉 由將X/,與該值ε相乘來計算一值(χ/,*ε)及其中藉由 該值ζ來計算該值〇7''*ζ): 〃 計算一值 W,其中 = ; 藉由將右移一個位置而計算該值(h,,、);及 藉由自(3V,’>>2)減去;V,,而計算該值(χ7·,*ε)。 25‘如請求項23之裝置, 其中該反向轉換模組藉由執行以下運算序列而藉由將 h與一值γ相乘來計算一值(Α*γ)及其中藉由將〜與一值谷 相乘來計算一值〇3*δ): 計算一值少2 ’其中少尸㈤〉^)·^»^ ; 計算一值少3 ’其中少3=j;2_(X3>>1 i); 122239-990930.doc -23- 計算該值(χ3*δ)=;;2+〇;3>>ΐ);及 藉由自h減去少2而計算該值(Χ3*γ);且 其中該反向轉換模組藉由執行以下運算序列而藉由將 h與該值δ相乘來計算一值(Χ5*δ)及其中藉由將&與該值丫 相乘來計算一值(Λ:5*γ): 汁算一值 y2’ ’ 其中 Υ2'=(Χ5>>3)_(Χ5>>7); 計算一值丫^其中乃,,/^^;»"); 藉由將y/與(少3·>〉ι)相加而計算該值〇5*δ);及 藉由自a減去少2,而計算該值(χ,γ);且 其中該反向轉換模組藉由執行以下運算序列而藉由將 .心"與一值γ相乘來計算一值^3"*γ)及其中藉由將Χ3"與一 值δ相乘來計算一值(χ3"*δ): 計算一值少广’其中 3;2,,= (;Χ3,,>>3)_(Χ3·,>>7); 計算一值;V,’其中少; 计异 S亥值(:χ:3’’*δ)=少2'' +(少3,'>>1);及 藉由自心’’減去少2,,而計算該值〇3,,*γ);且 其中該反向轉換模組藉由執行以下運算序列而藉由將 义5"與該值δ相乘來計算一值(Χ5,,*δ)及其中藉由將,,與該 值γ相乘來計算一值(JC5"*W : 計算一值y2,",其中 y2,,' = (:c5">>3)-(X5,,>>7); 計算一值y3…,其中 藉由將丫2…與〇3"'>>1)相加而計算該值(Χ5'’*δ);及 藉由自以’減去少广,而計算該值(Χ5ΐ1*γ)。 26.如請求項23之裝置, 122239-990930.doc •24- 其中該反向轉換模組藉由執行以下運算序列而藉由將 2乘以—值α來計算該值(Χ2*α)且藉由將h乘以該值P來計 异該值(χ2*β): 計算-值h,其中〜X2 + (:c2>>5); °十算值少2,其中少2=h>>2 ; 藉由將h與(I2»*)相加而計算該值(χ2*α);及 藉由自少1減去少2而計算該值(Λ:2*β);且 其中該反向轉換模組藉由執行以下運算序列而藉由將 〜乘以一值α來計算該值(χ6*α)且藉由將Α乘以該值β來計 舁該值(Λ:6*β): 計算一值;V,其中h,=JC6+(:C6>>5); 计算一值少2’,其中γ2,=>;ιΙ>>2 ; 藉由將少2’與〇6>>4)相加而計算該值(χ6*α);及 藉由自少1’減去3V而計算該值;且 其中該反向轉換模組藉由執行以下運算序列而藉由將 乘以一值α來計算一值(Χ2,,*α)及其中藉由將Χ2,,乘以一 值β來計算一值(Λ;2"*β): 計算一值’其中〜'。广+卜广〉“); 計算一值;V',其中3;2''=y丨||>>2 ; 藉由將乃·'與(尤2’’>>4)相加而計算該值(χ2,’*α);及 藉由自少丨1·減去少2"而計算該值(WD ;且 其中該反向轉換模組藉由執行以下運算序列而藉由將 W乘以一值α來計算一值“及其中藉由將χ6ι,乘以一 值β來計算一值〇6"*β): 122239-990930.doc -25- 1336444 計算一值3V",其中 yi",=JC2+(X6">>5); 計算一值少2’’’,其中少2·|,:=少】,,,>;>2 ; · 藉由將少2·’’與(Vi>>4)相加而計算該值(^,化);及 藉由自3V’,減去少2,,,而計算該值。 27. 28 29. 30. 31. 32. 如請求項22之裝置,其中該等值Χ〇、A、h、χ3、Χ4、 h、A、χ7、X。’、々,、Χ2.、、Χ4,、Χ5,、%,、Χ7,、、 、义2、Χ3"、々ι、y、Χ6"、Χ7"、久丨,"、h,"、h",、 χΊ ' (^2*α) > (^6*β) ' (χ2*β) ' (χ6*α) ^ (χ7,,5|ίε) > (々’’*0、(χ3"*γ)、(Χ3"*δ)、(Χ5"*δ)、(W、(Xi"*g 及籲 Οι *ε)係使用定點數來表示,該等定點數之尾數部分中 包括/Μ固位元。 •如請求項27之裝置,其中尸等於1〇。 人清求項17之裝置,其中該裝置包含—接收資料之網路 介面,該經編碼係數之矩陣係自該等資料中導出。 如請求項17之裝置,其中該裝置包含-將-中點偏差項
加至-DC係數之係數加偏差模組,其中該中點偏差項 於2之12次冪。 戈口蚺本項3 0之裝置 右移模組,該右移模組將該經轉換係數之矩陣 母一係數右移十三個位置以產生一像素分量值矩陣; 一像素重建模組,該像素重建模組藉由將該像素d 值矩陣令之像素分量值併入該像素區塊中之 ; 構該像素區塊。 〃 a 如請求項丨7之裝置’其中該裝置進—步包含—用於· 122239-990930.doc -26- ⑴6444 该像素區塊之媒體呈現單元。 如。月求項17之裝置,其中該按比例調整模組在不使用乘 =或除法運算之情況下按比例調整該等經編碼之係數。 •一種用於前向及反向離散餘弦轉換之有效率定點近似法 的裝置’其包含: 电 用於藉由一因數…因數…因數C、一因數D' -因㈣、一因數尸、一因數。、一因數"、一因數"戈— 因數/中之一者按比例調整一8X8經編碼係數之矩陣中之 係數以便產生-經按比例調整係數之矩陣之構件,盆中 和胸,5=1138,㈣30…609 …264, P=1922,G=1788,//=2923,/=2718,且>2528 ; 用於使用對-定點按比例調整一維轉換之重複應用以 將該經按比例調整係數之料轉換成—經轉換係數之矩 陣之構件; 用於將該經轉換係數之矩陣中之經轉換係數右移以便 產生一經調整係數之矩陣之構件; 其中該經調整係數之矩陣中之每一經調整係數近似為 藉由對該經編碼係數之矩陣應用一理想的二維反向離散 餘弦轉換(’,IDCT")將產生的值之_矩陣中之—對應值月 及 , 用於輸出一 8X8像素區塊之構件,其中該像素區塊中 之每一像素包括一基於該經調整係數之矩陣令之一經調 整係數的像素分量值。 如。月求項34之裝置’其中遠用於使用對該定點按比例調 122239-990930.doc •27- 1336444 整一維轉換之重複應用之構件包含: 之每一列向量應用 中間係數矩陣之構 用於對該經按比例調整係數之矩陣 該定點按比例調整一維轉換以產生— 件;及 用於對該中間係數矩陣之每— 母仃向1應用該定點按比 例調整—維轉換以產生—經轉換係數之料之構件。 36·如請求項μ之裝置,复φ呤 ,、中5亥用於輸出該8x8像素區塊之 構件以—視訊序列中之一視訊圖框之一邻八M a —。。 M 1心 #分的形式顯示 §玄8x8像素區塊。 37.如請求項34之裝置,发φ兮田认& , 八中》玄用於輸出該8χ8像素區塊之 構件以一靜態影像之—部分- I刀之开/式顯不該8x8像素區 塊0 38.如請求項34之裝置 包含: ’其中該用於按比例調整係數之構件 用於藉由該因數指比例調整該經編碼係數之矩陣中 的位置[0,0]處之一係數的構件; 用於藉由該因數方按比例調整該經編碼係數之矩陣中 的位置[0,1]處之一係數的構件; 用於藉由該因數C按比例調整該經編碼係數之矩陣中 的位置[0,2]處之一係數的構件; 用於藉由該因數Ζ)按比例調整該經編碼係數之矩陣中 的位置[0,3]處之一係數的構件; 用於藉由該因數J按比例調整該經編碼係數之矩陣中 的位置[0,4]處之一係數的構件; 122239_990930.doc -28- 用於藉由該因數D按比例調整該經編碼係數之矩陣中 的位置[0,5]處之一係數的構件; 用於藉由該因數C按比例調整該經編碼係數之矩陣中 的位置[0,6]處之一係數的構件; 用於藉由該因數5按比例調整該經編碼係數之矩陣中 的位置[0,7]處之一係數的構件; 用於藉由該因數5按比例調整該經編碼係數之矩陣中 的位置Π,〇]處之一係數的構件; 用於藉由該因數五按比例調整該經編碼係數之矩陣中 的位置[1,1]處之一係數的構件; 用於藉由該因數F按比例調整該經編碼係數之矩陣中 的位置Π,2]處之一係數的構件; 用於藉由該因數G按比例調整該經編碼係數之矩陣中 的位置[1,3]處之一係數的構件; 用於藉由該因數5按比例調整該經編碼係數之矩陣中 的位置[1,4]處之一係數的構件; 用於藉由该因數G按比例調整該經編碼係數之矩陣中 的位置[1,5]處之一係數的構件; 用於藉由該因數尸按比例調整該經編碼係數之矩陣中 的位置[1,6]處之一係數的構件; 用於藉由該因數五按比例調整該經編碼係數之矩陣中 的位置[1,7]處之一係數的構件; 用於稭由該因數C按比例調整該經編碼係數之矩陣中 的位置[2,0]處之一係數的構件; 122239-990930.doc -29· 1336444 用於藉由該因數尸按比例調整該經編碼係數之矩陣中 的位置[2,1 ]處之一係數的構件; 用於藉由該因數丑按比例調整該經編碼係數之矩陣中 的位置[2,2]處之一係數的構件; 用於藉由該因數/按比例調整該經編碼係數之矩陣中的 位置[2,3]處之一係數的構件; 用於藉由該因數C按比例調整該經編碼係數之矩陣中 的位置[2,4]處之一係數的構件; 用於藉由該因數/按比例調整該經編碼係數之矩陣中的 鲁 位置[2,5]處之一係數的構件; 用於藉由該因數//按比例調整該經編碼係數之矩陣中 的位置[2,6]處之一係數的構件; 用於藉由§玄因數F按比例調整該經編碼係數之矩陣中 的位置[2,7]處之一係數的構件·, 用於藉由该因數£>按比例調整該經編碼係數之矩陣中 的位置[3,0]處之一係數的構件; 用於藉由該因數G按比例調整該經編媽係數之矩陣中鲁 的位置[3,1 ]處之一係數的構件; 用於藉由該因數/按比例調整該經編碼係數之矩陣中的 位置[3,2]處之一係數的構件; 用於藉由該因數J按比例調整該經編碼係數之矩陣中的 位置[3,3]處之一係數的構件; 用於藉由該因數倾比例調整該經編碼係數之矩陣中 的位置[3,4]處之一係數的構件; 122239-990930.doc *30· 用於藉由該因數/按比例調整該經編碼係數之矩陣中的 位置[3,5]處之一係數的構件; 用於藉由該因數/按比例調整該經編碼係數之矩陣中的 位置[3,6]處之一係數的構件; 用於藉由該因數G按比例調整該經編碼係數之矩陣中 的位置[3,7]處之一係數的構件; 用於藉由該因數J按比例調整該經編碼係數之矩陣中 的位置[4,0]處之一係數的構件; 用於藉由該因數5按比例調整該經編碼係數之矩陣中 的位置[4,1]處之一係數的構件; 用於藉由該因數C按比例調整該經編碼係數之矩陣 的位置[4,2]處之一係數的構件; 用於藉由該因數Z)按比例調整該經編碼係數之矩 的位置[4,3]處之一係數的構件; 用於藉由該因數核比例調整該經編碼係數之 的位置[4,4]處之一係數的構件; 用於藉由該因數D按比例調整該經編碼係數之 的位置[4,5]處之一係數的構件; 平千 用於藉由該因數C按比例調整該經編碼係數之 的位置[4,6]處之一係數的構件; 用於藉由該因❹按比例調整該經編碼係數 的位置[4,7]處之一係數的構件; 矩陣中 用於藉由該因數Z)按比例調整該經編碼係數 的位置[5,0]處之一係數的構件; 矩陣中 122239-990930.doc • 31 · 用於藉由言亥因數C?按比例調整該經編碼係數之矩陣令 的位置[5,1]處之一係數的構件; 用於藉由该因數/按比例調整該經編碼係數之矩陣中的 位置[5,2]處之一係數的構件; 用於藉由該因數按比例調整該經編碼係數之矩陣中的 位置[5,3]處之一係數的構件; 用於藉由該因數£)按比例調整該經編碼係數之矩陣 的位置[5,4]處之一係數的構件; 用於藉由該因數按比例調整該經編碼係數之矩陣中 位置[5,5]處之一係數的構件; 、 用於藉由δ玄因數/按比例調整該經編碼係數之矩陣中 位置[5,6]處之一係數的構件; 、 用於藉由該因數G按比例調整該經編碼係數之矩 的位置[5,7]處之一係數的構件; 用於藉由該因數C按比例調整該經編碼係數之矩 的位置[6,0]處之一係數的構件; 用於藉由該因數,比例調整該經編碼係數之 的位置[6,1 ]處之一係數的構件; 用於藉由該因數开按比例調整該經編碼係數之矩 的位置[6,2]處之一係數的構件; 用於藉由該因數/按比例調整該經編碼係數之矩 位置[6,3]處之一係數的構件; 的 用於藉由該因數C按比例調整該經編碼 的位置[6,4]處之一係數的構件; 甲 122239-990930.doc •32· 用於藉由該因數/按比例調整該經編 位置[6,5]處之-係數的構件; 之矩陣中的 用於藉由該因數丑按比例調整 的位置[M]處之-絲㈣件; 峻之矩陣中 用於精由該因數•比例調整該經編碼 的位置_處之-絲的構件; 之矩陣中 用於藉由該因數續比例調整該經編碼 的位置[7,〇]處之-係數的構件; 數之矩陣中 用於藉由該因數£按比例調整該經編碼 的位置[7,丨]處之-係數的構件; Μ陣中 用於藉由該因數續比例調整該經編 的位置[7,2]處之-係數㈣件; 之矩陣中 用於藉由該因數G按比彳丨 調整該經編碼係數之矩陣中 的位置[7,3]處之一係數的構件; 平宁 用於错由該因數5按比例調整該經編碼係數之矩 的位置[7,4]處之一係數的構件; 中 用於藉由該因數G按比例調整該經編碼係數之 的位置[7,5]處之一係數的構件; 平〒 用於藉由該因數F按比例調整該經編碼係數之矩陣 的位置[7,6]處之一係數的構件;及 用於藉由該因數£按比例調整該經編碼係數之矩 的位置[7,7]處之一係數的構件。 39. :請求項38之裝置’其中該用於應用該轉換之構件包 含· 122239-990930.doc •33· 用於藉由將相加而計算一值^之構件; 用於藉由將與·々相加而計算一值^之構件; 用於藉由將域以—值α而計算_值(心)之構件; 用於藉由將x6乘以一值Ρ而計算—值(心)之構件;, 用於错由將域以該值β而計算―值^,之構件; 用於=由將x6乘以—值„而計算—值(V啦構件; 用於藉由將〇2*α)與*βΗ 件; (〜β)相加而計算一值χ2,之構 用於藉由將(χ6*α)與(νβ)相加而計算一值々,之構件; 用於藉由將Χ〇,與Λ:6,相加而計算一值灯,之構件;’ 用於藉由將々,與A'相加而計算一值a,,之構件; 用於藉由將々,與A,相加而計算—值h•,之構件; 用於藉由將Χ0’與-X6’相加而計算一值文6·,之構件; 用於藉由將〜與々7相加而計算一值&,之構件; 用於藉由將〜與:^相加而計算一值々,之構件; 用於藉由將々與二之平方根相乘而計算一值尤, 件; 3之構 用於藉由將Λ:5與二之平方根相乘而計算 件; 值 X5'之構 用於藉由將·Χ·7'與X5'相加而計算一值Λ:7"之構件; 用於藉由將XI’與-Λ:3’相加而計算一值Λ:3’1之構件; 用於藉由將X 71與-X 5 ’相加而計算一值;χ 5 · |之構件; 用於藉由將X3’與X!’相加而計算一值JC】,'之構件; 用於藉由將<7,,與一值ε相乘而計算一值&7,,*^之 122239-990930.doc -34- 用於藉由將Λ:7"與一值ζ相乘而計算一值(尤广%)之構 > 用於藉由將ΧΓ與一值γ相乘而計算一值(A·,*"之構 > 用於藉由將X3,,與一值δ相乘而計算一值(Χ3η*δ)之構 9
用於藉由將X5,,與該值§相乘而計算一值(&,,*〇之構 用於藉由將;:5,,與該值γ相乘而計算一值㈤,,*…之構 » 用於藉由將X广與該值ζ相乘而計算一值之構 » 用於藉由將々,,與該值£相乘而計算一值(々,,*ε)之構 9
件 件 件 件 件 件 件 件 件 件 用於藉由將(~Μ*ε)與-(χΓ*ζ)相加而計算一值々,,,之構 用於藉由將(Χ3,,*γ)與·(Χ5,,*δΗ0加而計算—值々,,之構 用於糟由將“5’»與…’,*5)相加而計算—值々…之構 用於猎由將(々"*£)盘上 此 、(7 〇相加而計算—估,,, 件; ^ 值A ’之構 用於藉由將x7…與 V,相加而計算—值為之構件; 122239-990930.doc -35· 1336444 用於藉由將^與β,,相加而計算一值不之構件; 用於藉由將彳,與々,,·相加而計算一值不之構件;’ 用於藉由將V與相加而計算一值不之構件;’ 川仍稽田肟々興-X丨· ••相加而計算一值&之構件 用於藉由將x2,,與%,,,相加而計算—值&之構件 用於藉由將",與%,"相加而計算一值&之構件 用於藉由將V’與-V’’相加而計算—值Α之構件 其中 Xl、 值;且 及
中文〇 Χΐ、Λ:2、Λ:3、Λ:4、Λ:5、X/;、JC-7 A , _ 5 Λ:7為一列向量或 仃向量中之係數, 不及Α為該轉換之輸出 γ =1 13/128, 其中 α=41/128,β = 99/128, ε=1533/2048 ,且ζ=ι/2 0 3=719/4096 中該用於使用對該轉換之重複應 或除法運算之情況下對該係數矩 40.如請求項39之裝置,其 用之構件在不使用乘法 陣應用該轉換。 41.
如請求項40之裝置, 其中该用於藉由將々與該值ε相乘來計算一值“^勾之 構件及其中用於藉由々與該值;來計算值(心之構件包 用於計算-值h之構件,其中少1=(^>>9)_々; 用於藉由將h右移一個位置而計算該值之構 件;及 用於藉由自(少1>>2)減去少1而計算該值(Χ^ε)之構件; 122239-990930.doc -36 * 且 其h亥用於藉由將h與該值ε相乘來計算一值㈣^之 ^件及其中該用於藉由h與該值ζ來計算值卜 包含: /仰IT 用於計算一值少1'之構件,其中3V=0c7»9)-x7; 用於藉由將x7右移—個位置而計算該值之構 件;及 • 用於藉由自(少1,>>2)減去少1,而計算該值之構 件;且 其中該用於藉由將彳,與該值£相乘來計算一值㈨ 之構件及其中該用於藉由彳,與該值;來計算該值(彳 之構件包含: 用於計算一值少丨,,之構件,其中唯I"»%%"; 用於藉由將h,,右移一個位置而計算該值之構 件;及 -37· 42. 如请求項40之裝置, 其中該用於藉由將免— 3〜 值γ相乘來計算一值 構件及其中該用於藉由將偽 + + ( 3 符田將Α與一值δ相乘來計皙 (Χ3*δ)之構件包含: 鼻〜值 用於計算—值之 少2心攝件’其中少2 = (Χ3>>3)·(^ 用於計算一值少3之 ); 傅1干其中少3=少2-〇3>:>1 1); 用於計算該值 ^ )~^2+〇3>>1)之構件;及 用於藉由自以去3^計算該值(Χ3*γ)之構件 /'中/用於藉由將々與該值§相乘來計算—值 構件及其中該用於益丄 3)之 ;3由將&與該值γ相乘來計曾〜 (χ5*γ)之構件包含: 斤〜值 用於計算-值y2,之構件,其中㈣州)令 用於指—值y3,之構件,其中yn(x5>>11);, 用於藉由將y2'盘Γν, -、(少3丨)相加而計算該值(Χ5*δ) 件;及 稱 用於藉由自々減去少2,而計算該值(A)之構件;且 其中該用於藉由將V與一值γ相乘來計算一值㈨、 之構件及其中制於m3ll與—偏相乘來計算—值 〇3"*δ)之構件包含: 用於計算-值少2"之構件,其中少2"= “ (xi"»7); 用於計算-值少3"之構件,其中乃"w>>n),· 用於計算值之構件丨及 l22239-990930.doc -38- 复y藉由自減去^而計算值(Α"*γ)之構件;且 之構==,,與_乘來計算-一) * 糟由將a與该值γ相乘來計算一值 (5 γ)之構件包含: 值 y2,M 之構件,其中 Υ2,·,= (Χ5··>>3)· 用於計算 (χ5"»7); 用於計算一值y3··,之構件,其令Π七〜. 構=由將,〜力-計算該值一 心藉由自V減去少2",而計算該 43.如請求項40之褒置, γ)之構件。 =用於藉由將,2乘以,來計算該值㈣)之構 構件包含: 由將X2乘以該值β來計算該值(⑽)之 用於計算-值少,之構件,其中^沖州广 用於計算一值h之構件,其中奶,》2; 用於藉由將少盥( 件;及 少h、(X2>>4)相加而計算該值(心)之構 用於糟由自h減去h而計算該值(χ2*β)之構件;且 其中該用於藉由膝 件及盆中今田 一值〇來計算該值(^)之構 什及其中该用於藓由 構件包含:藉由將々乘以該值β來計算該值…β)之 用於計算—值w之構件,其中心6+〇c6>>5); 用於指—值w之構件,其W=;V»2; 122239-990930.doc -39- 用於错由將少2,與(x6>>4)相加而計算該值^之 件;及 用於藉由自;V減切而計算該值卜,之構件;且 其中該用於藉由將V乘以一h來計算一值㈤,,*啦 構件及其中該用於藉 M 田將巧乘以一值β來計算一值 (χ2Μ*β)之構件包含: 用於計算一值之構件,其中W+(JC2">>5); 用於:算一值乃"之構件,其中w.»2; 件;及精由將72與(X2,,>>4)相加而計算該值卜2,,*α)之構 :藉由自h減去少2"而計算該值之構件;且 /、中該用於藉由將,,垂 _ 宋來計算一值(Χ6,,*α)之 構牛及其中該用於藉 ^ ㈢由將Χ6乘以一值β來計算一值 〇6 β)之構件包含: 用於計算一值之播彼 田认丄 少1之構件,其中W,+ (x6i,>>5); 於:十算-值h,"之構件,其中少〜">>2; 件用^由將3與(X6,,>>4)相加而計算該值(々,,〜)之構 用於错由自v I Μ、士、 44. 如^ "咸去乃而計算該值(VI)之構件。 如明求項39之裝置,其 χ、γ 八 τ °"值 A、A m、 χι"… 〇……〜〜、〜,、〜,,、 Λ1 Λ 2 \ ν 1» · · χ Μ, 3 々、々 ”6"、W、V、Χ3,"、χ5,,,、 7 、“’a)、(々*β)、(Χ2*β)、f .,*、 (ν,*ς)、(χ "*、 h")、(χ,*ε)、 (3 γ)、w,*s)、w,w、(w、㈤、)及 122239-990930.doc •40- u56444 (:〜)係、使用定點數來表示,該等定點數之尾數部分中 包括户個位元。 45·如請求項44之裝置,其中p等於心 r欠項34之裝置’其中該裝置包含用於接收一包括資 '之媒體㈣之構件’該經編碼係數之矩陣係自該等資 料中導出。 ' 47· =清求項34之裝置,其中該裝置包含用於將—t點偏差 、加至一DC係數之構件,其令該中點 次冪。 48·如請求項34之裝置,其中該裝置進-步包含. 用於將該經轉換係數之矩陣中之每—係數右移十三個 立置以產生一像素分量值矩陣之構件;及 ^藉由將該像素分量值矩陣中之像素分量值併入該 像素區塊中之像素中而建構該像素區塊之構件。 49·如請求項34之裝置, 像素區塊之構件。進一步包含用於顯示該 π:請求項34之裝置’其中該用於按比例調整經編碼之係 之構件在不使用乘法或除法運算之情、χ T p 、 該等經編石馬之係數。 清况下知比例調整 51 I種電腦可讀媒體,其包含指令’當執行時該等指令使 一可程式化處理器: 二由;因數^ 一因數…因數。、_因數乃、—因 —目數F、—因數〇'一因數开'—因數/或-因數^; 之者按比例調整一 8x8經編碼係數之矩陣中之每— 122239-990930.doc 係數以便產生-經按比例調整係數之矩陣, 其中乂-1024,5=1138,C=173〇,D=16〇9,五=1264, F=1922 ’ G=i788 ’ ㈣似,J=27i8,且片528 ·, 使用對-定點按比例調整一維轉換之重複應用以將該 經按比例調整係數之矩陣轉換成一經轉換係數之矩陣, 將該經轉換係數之矩p車中之經轉換係》右移以便產生 一經調整係數之矩陣; 其中該經調整係數之矩陣中之每一經調整係數近似為 藉由對該經編碼係數之矩陣應用一理想的二維反向離散 餘弦轉換("mcT”)將產生的值之一矩陣中之一對應值; 及 , 輸出使一顯不單元顯示一 8x8像素區塊之信號,其中 该像素區塊中之每一像素包括一基於該經調整係數之矩 陣中之一經調整係數的像素分量值。 52. 如請求項5 1之電腦可讀媒體,其中該等指令藉由使該可 程式化處理器執行以下步驟而使該可程式化處理器重複 應用遠疋點按比例調整一維轉換: 對該經按比例調整係數之矩陣之每一列向量應用該轉 換以產生一中間係數矩陣; 對該中間係數矩陣之每一行向量應用該轉換以產生— 經轉換係數之矩陣。 53. 如請求項51之電腦可讀媒體,其中使該可程式化處理器 輸出使該顯示單元顯示該8x8像素區塊之信號之該等指 令使該可程式化處理器輸出使該顯示單元以一視訊序列 122239-990930.doc • 42- • 中之一視訊圖框之-部分的形式顯示該8x8像素區塊的 信號。 54·如請求項51之電腦可讀媒體,其t使該可程式化處理器 輪出使該顯示單元顯示該8 x 8像素區塊之信號之該等指 令使該可程式化處理器輸出使該顯示單元以-靜態影像 之—部分之形式顯示該8x8像素區塊的信號。 如唄求項5 1之電腦可讀媒體,其中使該處理器按比例調 • I該係數矩陣中之該等係數之該等指令使該處理器: 猎由該因數3按比例調整該經編碼係數之矩陣中 置[〇,〇]處之—係數; 藉由β亥因數5按比例調整該經編碼係數之矩陣中的位 置[〇’1]處之一係數; 藉由6玄因數C按比例調整該經編碼係數之矩ρ車中的位 置[0,2 ]處之—係數; 藉由。亥因數£>按比例調整該經編碼係數之 • 置[〇,3]處之—係數; 皁中的位 藉由δ亥因數轉比例調整該經編碼係數 置[〇,4]處之一係數; 皁中的位 藉由6亥因數£>按比例調整該經編碼係數之 置[〇,5]處之一係數; 干甲的位 藉由遠因數C按比例調整該經編碼係數之矩 置[〇,6]處之一係數; 干甲的位 藉由該因數Β按比例調整該經編碼係數之矩 置暖之—係數; 陣中的位 122239-990930.doc •43· 1336444 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[1,0]處之一係數; 藉由該因數五按比例調整該經編碼係數之矩陣中的位 置[1,1]處之一係數; 藉由該因數厂按比例調整該經編碼係數之矩陣 的位 置[1,2]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[1,3]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[1,4]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[1,5]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[1,6]處之一係數; 藉由該因數五按比例調整該經編碼係數之矩陣中的位 置[1,7]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[2,0]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[2,1]處之一係數; 藉由該因數//按比例調整該經編碼係數之矩陣中的位 置[2,2]處之一係數; 藉由該因數/按比例調整該經編鴒係數之矩陣中的位置 [2,3]處之一係數; 122239-990930.doc -44- 1336444 藉由該因數c按比例調整該經編碼係數之矩陣中的位 置[2,4]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [2.5] 處之一係數; 藉由該因數开按比例調整該經編碼係數之矩陣中的位 置[2,6]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[2,7]處之一係數; 藉由該因數D按比例調整該經編碼係數之矩陣中的位 置[3,0]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[3,1]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [3.2] 處之一係數; 藉由該因數按比例調整該經編碼係數之矩陣中的位置 [3.3] 處之一係數; 藉由該因數D按比例冑整該經編碼係數之矩陣中的位 置[3,4]處之一係數; 精由該因數J按比例調整該經編碼係數之矩陣中的位置 [3.5] 處之一係數; 精由該因數/按比例調整該經編碼係數之矩陣中的位置 [3.6] 處之一係數; 藉由該因數G按比例难效兮 W调整遺經編碼係數之矩陣中的位 置[3,7]處之一係數; 122239-990930.doc -45- 1336444 藉由該因數j按比例調整該經編碼係數之矩陳由μ 干γ的位 置[4,0]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[4,1]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣 的位 置[4,2]處之一係數; 藉由該因數Ζ)按比例調整該經編碼係數之矩陣 的位 置[4,3]處之一係數;
藉由該因數乂按比例調整該經編碼係數之矩陣中的位 置[4,4]處之一係數; 藉由該因數D按比例調整該經編碼係數之矩陣中的位 置[4,5]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[4,6]處之一係數; 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[4,7]處之一係數; 、
藉由該因數D按比例調整該經編碼係數之矩陣中的位 置[5,0]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣 置[5,1 ]處之一係數; 藉由該因數/按比 [5,2]處之一係數; 例調整該經編碼係數之矩陣中的位置 中的位置 藉由該因數按比例調整該經編碼係數之矩陣 [5,3]處之一係數; 122239-990930.doc • 46 · 1336444 藉由該因數d按比例調整該經編碼係數之矩陣中的位 置[5,4]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [5,5]處之一係數; 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [5,6]處之一係數;
藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[5,7 ]處之一係數; 藉由該因數C按比例調整該經編碼係數之矩陣中的位 置[6,0]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[6,1]處之一係數; 藉由該因數丑按比例調整該經編碼係數之矩陣中的位 置[6,2]處之一係數;
藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [6,3 ]處之一係數; 精由該因數C按比例調整該經編碼係數之矩陣中的 置[6,4]處之一係數 藉由該因數/按比例調整該經編碼係數之矩陣中的位置 [6,5]處之一係數; 猎由該因數//按比例調整該經編碼係數之矩陣中的位 置t6,6]處之一係數; 稭由该因數F按比例調整該經編碼係數之矩 置[6,7 ]處之一係數·, 122239-990930.doc -47- 1336444 藉由該因數5按比例調整該經編碼係數之矩陣中的位 置[7,0]處之一係數; 藉由該因數五按比例調整該經編碼係數之矩陣中的位 置[7,1]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[7,2]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[7,3]處之一係數; 藉由該因數B按比例調整該經編碼係數之矩陣中的位 置[7,4]處之一係數; 藉由該因數G按比例調整該經編碼係數之矩陣中的位 置[7,5]處之一係數; 藉由該因數F按比例調整該經編碼係數之矩陣中的位 置[7,6 ]處之一係數;及 藉由該因數五按比例調整該經編碼係數 ® η呼中的位 置[7,7]處之一係數。 56. 如請求項55之電腦可讀媒體,其中使該處理器對—列。 量或一行向量應用該轉換之該等指令使該處理器:歹,向 藉由將與x4相加而計算一值〜,; 藉由將X〇與-Χ4相加而計算一值; 藉由將文2乘以一值α而計算一值(Χ2*α); 藉由將Λ:6乘以一值β而計算一值(_^6* β); 藉由將h乘以該值β而計算一值(χ/β); 藉由將Α乘以一值α而計算一值(χ6*α); 122239-990930.doc -48- 丄 ^6444 藉由將〇2*α)與-(〜邛)相加而計算一值。,; 藉由將“6*α)與〇2*β)相加而計算一值〜,; 藉由將a'與A’相加而計算一值々··; 藉由將W與Λ:2,相加而計算一值々,,; 藉由將V與-A'相加而計算一值巧,,; 藉由將χ〇'與-〜•相加而計算一值JC6,| ; 藉由將X丨與-X7相加而計算一值; 藉由將A與Λ;7相加而計算一值A,; 藉由將A與二之平方根相乘而計算一值h,; 藉由將A與二之平方根相乘而計算一值; 藉由將X/與:^5’相加而計算一值々,,; 藉由將Χ1·與-X3’相加而計算一值;c3"; 藉由將A'與-χ5'相加而計算一值心,,; 藉由將尤3’與相加而計算一值々"; 藉由將X7’'與一值8相乘而計算一值; 藉由將X/'與一值ζ相乘而計算一值(Χ7,,*ζ); 藉由將與一值γ相乘而計算一值(々,,、); 藉由將與一值δ相乘而計算一值(^广%); 藉由將X5''與該值δ相乘而計算一值(&,,*§); 藉由將與該值γ相乘而計算一值(Χ5,ι*γ); 藉由將X,"與該值ζ相乘而計算一值(Χι,,*ζ); 藉由將χΓ1與該值ε相乘而計算一值(Λ:ι,,*ε); 藉由將(Χ7"*ε)與-(Χι,·*ζ)相加而計算一值h",; 藉由將(χ3’’*γ)與- 相加而計算一值X3'm . 122239-990930.doc .49- 藉由將(χ5"*γ)與(χ3,,*δ)相加而計算一值X5,,,; 藉由將(Α"*ε)與(χ7,·*ς)相加而計算一值χι,,,; 错由將Λ:7與χ〇"相加而計算一值為; It由將與Λ:5'"相加而計算一值不; 藉由將A"與々·"相加而計算一值不; 藉由將Λ:6與Λ:7'·1相加而計算一值不; 藉由將A與-Λ:〗’ ’ ’相加而計算一值尤^ 藉由將A"與-y相加而計算一值心; 藉由將尤4"與-Λ:5’',相加而計算一值& ;及 _ 藉由將JC〇"與々广相加而計算一值而; 其中々、A、Χ2、χ3、〜、X5、A、&為一列向量或一 行向量中之係數, 其中Xl、A、A、A、尤5、义6及Χ7為該轉換之輸出 值; 其中 α-41/128,β=99/128,γ =ι ι3/128 ’ δ = 719/4096, ε=1533/2048 ,且ζ=1/2 。 57. 58. 月长項56之電腦可讀媒體,其中該等指令藉由使該處· 理益在不使用乘法或除法運算H兄下對該等列向量中 之-者或該等行向量中之—者中的係數應用該轉換而使 該處理器應用該轉換。 如請求項57之電腦可讀媒體, 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處理器藉由將々與該值响乘來計算一值 ㈣)且其中該等指令使該可程式化處理器藉由A與該值 122239-990930.doc •50- 1336444 ζ來計算值: 其^該等指令藉由使該可程式化處理器執行以下步驟 而使该可程式化處理器藉由將&與該值_乘來計算一值
其中該等指令使該可程式化處理器藉由巧與該值 ζ來什异值〇7*ζ): °Τ异一值少1’,其中少ι,=〇7»9)-χ7; 藉由將h右移一個位置而計算該值^7*〇 ;及 藉由自OV»2)減去少丨|而計算該值…ε);且 其^該等指令藉由使該可程式化處理器執行以下步驟 而使该可程式化處理器藉由將吖i與該值ε相乘來計算一 值(Α *ε)且其巾該#指令使該可程式化處判藉由々"盘 該值ζ來計算該值(Χι,,*ζ): ’、
計算一值少1,其中少1 = ; 藉由將h右移一個位置而計算該值(心*〇 ;及 藉由自(h>>2)減去少丨而計算該值(Λτ,ε);且 計算一值;V,,其中 猎由將右移-個位置而計算該值«·% ;及 藉由自(少1’,》2)減去而計算該值(Α,,*ε);且 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處理器藉由將χ7,,與該值ε相乘來計管一 值㈣似其中㈣指令使該可程式化處理_由^與 該值ζ來計算該值〇7"*ζ): 汁算值少,’其中少/"=(^">>9) ^"; 措由將V右移一個位置而計算該值(Λ:7"*ζ);及 122239-990930.doc -51· 1336444 藉由自〇V',>:>2)減去;V,,而計算該值(Λ:7Η*ε)。 59.如請求項58之電腦可讀媒體, 其中該等指令藉由使該可程式化處理器執行以下步驟 而使。亥可程式化處理器藉由將&與一值γ相乘來計瞀一值 (Α*γ)且其中該等指令使該可程式化處理器藉由將。與一 值δ相乘來計算一值(χ,δ): 計算一值少2,其中 >;2=(Χ3>>3)_(Χ3>>7); 計算一值少3 ’其中少i);
計算該值 〇3*δ)=>;2 + 〇3>>1);及 藉由自h減去72而計算該值“3*γ);且 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處㈣藉由“與該料目乘來計算一值 〇5 δ)且其中該等指令使該可^ ^ ^ ^ ^ t士丄^ 狂叭化慝理盗藉由將&與該 值γ相乘來计鼻一值(χ5 *γ): s十异一值y2·, 计鼻一值y3f, 其中 y2 =Cx5>>3)-(;c5>>7); 其中 Υ3,=>ν-(Χ5>>1υ ; 及
藉由將y2’與加而計算該值(心) 藉由自々減去少2,而計算該值·且 等指令藉由使該可程式化處理器執行以下 而使該可程式化處理器藉由〜,,與_心相 值(ΑΜ*γ)且其中該等指令使 〇t τ咒忒了私式化處理器 與一值δ相乘來計算一值( 計算-值3V.,其中少2、3,,>>3)七 . 計算-值少3",其中W仏11); 122239-990930.doc -52- 1336444 計算該值(13|'%)=3;2,,+〇;广>>1);及 藉由自^3’’減去少2"而計算該值〇3,,*γ);且 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處理器藉由將^"與該值§相冑來叶算一 值^^且其中該等指令使該可程式化處理器藉由^" 與該值γ相乘來計算一值(Χ5ι,*γ): 計算一值y2,",其中乃; 計算一值乃1',,其中73','=;;2,,,七51|>>11); 藉由將y2’·,與(乃,"》1)相加而計算該值(Χ5"*δ);及 藉由自h,,減去少2",而計算該值(以,、)。 60.如請求項58之電腦可讀媒體, 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處理器藉由將巧乘以一值^來計算一值 (X 2 * (X)且其中該等指令使該可程式化處理器藉由將域以 一值β來計算一值(Χ2*β):
汁异一值少】,其中3;1=χ2+(Χ2>>5); 計算一值少2,其中少2=少1>>2 ; 藉由將少2與〇2>>4)相加而計算該值b/勻;及 藉由自h減去;;2而計算該值(χ2*β);且 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處理器藉由將;^乘以一值α來計算一值 (χ,α)且其中該等指令使該可程式化處理器藉由將%乘以 一值β來計算一值〇6*β) ·· 計算一值3V,其中 >V=X6+(X6>>5); 122239-990930.doc -53- 計算一值h,,其中h,=JV>>2,· 藉由將少2與(X6>>4)相加而計算該值(〜*α);及 藉由自少1減去少2,而計算該值^6*㈨丨且 :中该等指令藉由使該可程式化處理器執行以下步驟 而使该可程式化處理器藉由料"乘以來計算一值 ,且其Μ等指令使該可程式化處理器藉由“"乘 以值β來叶异一值(JC2',*P): 計算一值少广,其中 計算一值少2',,其中少2" = ^,|>>2 ; 藉由將乃,,與卜2">>4)相加而計算該值(Χ2,,*α);及 藉由自>V’減去少广而計算該值(Χ2,,*|3”且 其中該等指令藉由使該可程式化處理器執行以下步驟 而使該可程式化處理器藉由將V,乘以一值《來計算一值 (々"*〇〇且其中該等指令使該可程式化處理器藉由將〜,,乘 以一值β來計算一值(Λ:6,,*β): 計算一值;V" ’其中少,,々"十^,》” ; 計算一值少2,,,,其中少2,|,=;;1||1>>2 ; 藉由將少广’與(Χόη>>4)相加而計算該值〇6,,*α);及 藉由自h,,,減去少2,,'而計算該值(χ6’,*β)。 61_如請求項56之電腦可讀媒體,其中該等值a、χι、χ2、 久3、A、、χ6、χ7、χ〇’、Xl’、Χ2'、χ3’、以,、尤5,、以,、 々’、W、X】"、χ2"、χ3"、Χ4"、欠5,丨、X6"、、々Η,、 々’’’、h’"、x7",、(x2*a)、(Χ6*β)、(χ2*β)、(JC6*a)、 〇7"*ε)、(Χ7'.*ζ)、(ι3’’*γ)、(Χ3.’*δ)、(X5,,*§)、(叉5,,*了)、 122239-990930.doc -54- 1336444 (χ,αζ)及(〜"*〇係使用定點數來表示,該等定點數之尾 數部分中包括個位元。 62. 如請求項61之電腦可讀媒體,其中尸等於1〇。 63. 如請求項51之電腦可讀媒體,其中該等指令進一步使該 處理器接收一包括該經編碼係數之矩陣之位元流。 64. 如請求項51之電腦可讀媒體,其中該等指令進一步使該 處理器將一中點偏差項加至該矩陣之一 DC係數,其中該 中點偏差值項等於2之12次冪。 65. 如請求項51之電腦可讀媒體,其中該等指令進一步使該 處理器·· 將該經轉換係數之矩陣中之每 置 以產生一像素分量值矩陣;及 藉由將該像素分量值矩陣中 區塊中之像素中而建構該像素 一係數右移十三個位 之像素分量值併入該像素 區塊。 66.
θ求項51之電&可5賣媒體’其中使該處理器按比例調 整該等經編碼係數之該等指令使該處理器在不使用乘法 或除法運异之情況下按比例㈣該經編碼係數之矩陣中 之該等係數 122239-990930.doc •55· 1336444 第096123080號專利申請案 ff年f肜。日修正替換頁 中文圖式替換頁(99年9月) -----
圖9 122239-fig-990930.doc
TW096123080A 2006-06-26 2007-06-26 Efficient fixed-point approximations of forward and inverse discrete cosine transforms TWI336444B (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US81669706P 2006-06-26 2006-06-26
US84136206P 2006-08-30 2006-08-30
US84719406P 2006-09-25 2006-09-25
US82966906P 2006-10-16 2006-10-16
US86953006P 2006-12-11 2006-12-11
US88393207P 2007-01-08 2007-01-08

Publications (2)

Publication Number Publication Date
TW200823694A TW200823694A (en) 2008-06-01
TWI336444B true TWI336444B (en) 2011-01-21

Family

ID=38828732

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096123080A TWI336444B (en) 2006-06-26 2007-06-26 Efficient fixed-point approximations of forward and inverse discrete cosine transforms

Country Status (8)

Country Link
EP (1) EP2089812A2 (zh)
JP (1) JP5129248B2 (zh)
KR (1) KR100963459B1 (zh)
CN (1) CN102037729B (zh)
BR (1) BRPI0713321B1 (zh)
CA (1) CA2654116C (zh)
TW (1) TWI336444B (zh)
WO (1) WO2008005757A2 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107493475B (zh) * 2011-12-15 2019-05-17 寰发股份有限公司 量化电平截取装置及方法
KR101395143B1 (ko) 2013-06-13 2014-05-21 이노뎁 주식회사 영상처리의 정수변환 방법 및 정수변환 장치
US10432952B2 (en) * 2015-11-19 2019-10-01 Qualcomm Incorporated System and methods for fixed-point approximations in display stream compression (DSC)
US9870341B2 (en) * 2016-03-18 2018-01-16 Qualcomm Incorporated Memory reduction method for fixed point matrix multiply

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754456A (en) * 1996-03-05 1998-05-19 Intel Corporation Computer system performing an inverse cosine transfer function for use with multimedia information
KR20000013653A (ko) * 1998-08-12 2000-03-06 이종하 정/역 최적화 정수형 여현변환장치 및 그 방법
DE10116204A1 (de) * 2000-08-12 2002-02-21 Bosch Gmbh Robert Verfahren zur ganzzahligen Approximation von Transformationskoeffizienten sowie Coder und Decoder
KR20060135613A (ko) * 2003-09-24 2006-12-29 텍사스 인스트루먼츠 인코포레이티드 8×8 변환 및 양자화

Also Published As

Publication number Publication date
BRPI0713321A2 (pt) 2012-03-13
CN102037729A (zh) 2011-04-27
CA2654116A1 (en) 2008-01-10
BRPI0713321B1 (pt) 2018-12-04
WO2008005757A2 (en) 2008-01-10
JP2010505287A (ja) 2010-02-18
TW200823694A (en) 2008-06-01
WO2008005757A3 (en) 2011-03-10
KR20090028736A (ko) 2009-03-19
EP2089812A2 (en) 2009-08-19
CN102037729B (zh) 2013-02-27
CA2654116C (en) 2013-04-02
JP5129248B2 (ja) 2013-01-30
KR100963459B1 (ko) 2010-06-17

Similar Documents

Publication Publication Date Title
US8699810B2 (en) Efficient fixed-point approximations of forward and inverse discrete cosine transforms
TW200814738A (en) Reduction of errors during computation of inverse discrete cosine transform
TW201108744A (en) 16-point transform for media data coding
TWI336444B (en) Efficient fixed-point approximations of forward and inverse discrete cosine transforms
RU2419855C2 (ru) Снижение ошибок в ходе вычисления обратного дискретного косинусного преобразования
JP2004289290A (ja) 画像処理装置
BRPI0712996A2 (pt) aproximações eficientes para ponto fixo de transformadas de co-seno discretas, diretas e inversas

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent