TWI419567B - 使用大的巨區塊之視訊編碼 - Google Patents
使用大的巨區塊之視訊編碼 Download PDFInfo
- Publication number
- TWI419567B TWI419567B TW098133632A TW98133632A TWI419567B TW I419567 B TWI419567 B TW I419567B TW 098133632 A TW098133632 A TW 098133632A TW 98133632 A TW98133632 A TW 98133632A TW I419567 B TWI419567 B TW I419567B
- Authority
- TW
- Taiwan
- Prior art keywords
- block
- zero coefficient
- partition
- encoded
- partitions
- Prior art date
Links
- 238000005192 partition Methods 0.000 claims description 601
- 238000000034 method Methods 0.000 claims description 152
- 238000013139 quantization Methods 0.000 claims description 41
- 238000004891 communication Methods 0.000 claims description 27
- 230000011218 segmentation Effects 0.000 claims description 20
- 238000000638 solvent extraction Methods 0.000 claims description 15
- 241000023320 Luma <angiosperm> Species 0.000 claims description 14
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 14
- 238000012986 modification Methods 0.000 claims description 7
- 230000004048 modification Effects 0.000 claims description 7
- 239000000463 material Substances 0.000 claims description 4
- 239000013598 vector Substances 0.000 description 27
- 238000010586 diagram Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 16
- 230000002123 temporal effect Effects 0.000 description 13
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 11
- 230000006835 compression Effects 0.000 description 11
- 238000007906 compression Methods 0.000 description 11
- 238000013500 data storage Methods 0.000 description 10
- 238000013459 approach Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 230000002349 favourable effect Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007728 cost analysis Methods 0.000 description 1
- 238000009940 knitting Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- JLGLQAWTXXGVEM-UHFFFAOYSA-N triethylene glycol monomethyl ether Chemical compound COCCOCCOCCO JLGLQAWTXXGVEM-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本發明係關於數位視訊編碼,且更特定言之,係關於基於區塊之視訊編碼。
本申請案主張2008年10月3日申請之美國臨時申請案第61/102,787號、2009年1月13日申請之美國臨時申請案第61/144,357號及2009年4月3日申請之美國臨時申請案第61/166,631號的權利,該等申請案中之每一者之全文以引用的方式併入本文中。
本申請案關於均與本申請案同一天申請、均具有相同標題「使用大的巨區塊之視訊編碼(VIDEO CODING WITH LARGE MACROBLOCKS)」之美國專利申請案(暫時由代理人案號090033U2、090033U3、090033U4來引用),該等申請案均已讓與給本受讓人且其全文在此以引用的方式明確地併入本文中以用於所有目的。
可將數位視訊能力併入寬廣範圍之器件中,包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、數位相機、數位記錄器件、視訊遊戲器件、視訊遊戲機、蜂巢式或衛星無線電電話及其類似者。數位視訊器件實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分進階視訊編碼(AVC)定義之標準及該等標準之擴展中所描述的彼等視訊壓縮技術,以更有效地傳輸及接收
數位視訊資訊。
視訊壓縮技術執行空間預測及/或時間預測以減少或移除視訊序列中所固有的冗餘。對於基於區塊之視訊編碼,可將一視訊圖框或片分割成巨區塊。可進一步分割每一巨區塊。使用關於相鄰巨區塊之空間預測編碼一框內編碼之(I)圖框或片中之巨區塊。一框間編碼之(P或B)圖框或片中之巨區塊可使用關於同一圖框或片中之相鄰巨區塊之空間預測或關於其他參考圖框之時間預測。
大體而言,本發明描述用於使用大的巨區塊編碼數位視訊資料之技術。大的巨區塊大於一般由現有視訊編碼標準規定之巨區塊。大多數視訊編碼標準規定使用16×16像素陣列之形式的巨區塊。根據本發明,編碼器及解碼器可利用大小大於16×16像素之大的巨區塊。作為實例,大的巨區塊可具有32×32、64×64或更大之像素陣列。
視訊編碼依賴於空間及/或時間冗餘來支援視訊資料之壓縮。以較高空間解析度及/或較高圖框率產生之視訊圖框可支援較多冗餘。如本發明中所描述,使用大的巨區塊可准許視訊編碼技術利用隨著空間解析度及/或圖框率增加而產生的較大冗餘度。根據本發明,視訊編碼技術可利用多種特徵來支援大的巨區塊之編碼。
如本發明中所描述,大的巨區塊編碼技術可將大的巨區塊分割成分割區,且針對選定分割區使用不同分割區大小及不同編碼模式(例如,不同之空間(I)模式或時間(P或B)
模式)。作為另一實例,一編碼技術可利用階層式編碼區塊型樣(coded block pattern,CBP)值來有效地識別一大的巨區塊內的具有非零係數之經編碼之巨區塊及分割區。作為另一實例,一編碼技術可比較藉由使用大的巨區塊與小的巨區塊進行編碼而產生之速率-失真量度以選擇一產生更有利之結果的巨區塊大小。
在一實例中,本發明提供一種方法,其包含用一視訊編碼器編碼一具有大於16×16像素之大小之視訊區塊,產生指示該區塊之該大小之區塊類型語法資訊,及產生一用於該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數。
在另一實例中,本發明提供一種裝置,其包含一視訊編碼器,該視訊編碼器經組態以編碼一具有大於16×16像素之大小之視訊區塊,產生指示該區塊之該大小之區塊類型語法資訊,且產生一用於該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數。
在另一實例中,本發明提供一種電腦可讀媒體,其經編碼有用於引起一視訊編碼裝置執行以下操作之指令:用一視訊編碼器編碼一具有大於16×16像素之大小之視訊區塊,產生指示該區塊之該大小之區塊類型語法資訊,及產生一用於該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數。
在一額外實例中,本發明提供一種方法,其包含用一視訊解碼器接收一具有大於16×16像素之大小的經編碼之視訊區塊,接收指示該經編碼之區塊之該大小的區塊類型語法資訊,接收一用於該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數,及基於該區塊類型語法資訊及用於該經編碼之區塊之該編碼區塊型樣值解碼該經編碼之區塊。
在另一實例中,本發明提供一種裝置,其包含一視訊解碼器,該視訊解碼器經組態以接收一具有大於16×16像素之大小的經編碼之視訊區塊,接收指示該經編碼之區塊之該大小的區塊類型語法資訊,接收一用於該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數,且基於該區塊類型語法資訊及用於該經編碼之區塊之該編碼區塊型樣值解碼該經編碼之區塊。
在另一實例中,本發明提供一種電腦可讀媒體,其包含用以引起一視訊解碼器執行以下操作之指令:接收一具有大於16×16像素之大小的經編碼之視訊區塊,接收指示該經編碼之區塊之該大小的區塊類型語法資訊,接收一用於該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數,及基於該區塊類型語法資訊及用於該經編碼之區塊之該編碼區塊型樣值解碼該經編碼之區塊。
在另一實例中,本發明提供一種方法,其包含用一視訊
編碼器接收一具有大於16×16像素之大小之視訊區塊,將該區塊分割成分割區,使用一第一編碼模式編碼該等分割區中之一者,使用一不同於該第一編碼模式之第二編碼模式編碼該等分割區中之另一者,及產生指示該區塊之該大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊。
在一額外實例中,本發明提供一種裝置,其包含一視訊編碼器,該視訊編碼器經組態以接收一具有大於16×16像素之大小之視訊區塊,將該區塊分割成分割區,使用一第一編碼模式編碼該等分割區中之一者,使用一不同於該第一編碼模式之第二編碼模式編碼該等分割區中之另一者,產生指示該區塊之該大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊。
在另一實例中,本發明提供一種電腦可讀媒體,其經編碼有用以引起一視訊編碼器執行以下操作之指令:接收一具有大於16×16像素之大小之視訊區塊,將該區塊分割成分割區,使用一第一編碼模式編碼該等分割區中之一者,使用一不同於該第一編碼模式之第二編碼模式編碼該等分割區中之另一者,及產生指示該區塊之該大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊。
在另一實例中,本發明提供一種方法,其包含用一視訊解碼器接收一具有大於16×16像素之大小之視訊區塊,其中該區塊經分割成分割區,該等分割區中之一者係使用一
第一編碼模式編碼且該等分割區中之另一者係使用一不同於該第一編碼模式之第二編碼模式編碼,接收指示該區塊之該大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊,及基於該區塊類型語法資訊解碼該視訊區塊。
在另一實例中,本發明提供一種裝置,其包含一視訊解碼器,該視訊解碼器經組態以接收一具有大於16×16像素之大小之視訊區塊,其中該區塊經分割成分割區,該等分割區中之一者係使用一第一編碼模式編碼且該等分割區中之另一者係使用一不同於該第一編碼模式之第二編碼模式編碼,接收指示該區塊之該大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊,且基於該區塊類型語法資訊解碼該視訊區塊。
在一額外實例中,本發明提供一種電腦可讀媒體,其經編碼有用以引起一視訊解碼器執行以下操作之指令:用一視訊解碼器接收一具有大於16×16像素之大小之視訊區塊,其中該區塊經分割成分割區,該等分割區中之一者係使用一第一編碼模式編碼且該等分割區中之另一者係使用一不同於該第一編碼模式之第二編碼模式編碼,接收指示該區塊之該大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊,及基於該區塊類型語法資訊解碼該視訊區塊。
在另一實例中,本發明提供一種方法,其包含用一數位視訊編碼器接收一視訊編碼單元,判定使用具有16×16像
素之大小之第一視訊區塊編碼該視訊編碼單元的第一速率-失真量度,判定使用具有大於16×16像素之大小之第二視訊區塊編碼該視訊編碼單元的第二速率-失真量度,在該第一速率-失真量度小於第二速率-失真量度時使用該等第一視訊區塊編碼該視訊編碼單元,及在該第二速率-失真量度小於該第一速率-失真量度時使用該等第二視訊區塊編碼該視訊編碼單元。
在一額外實例中,本發明提供一種裝置,其包含一視訊編碼器,該視訊編碼器經組態以接收一視訊編碼單元,判定使用具有16×16像素之大小之第一視訊區塊編碼該視訊編碼單元的第一速率-失真量度,判定使用具有大於16×16像素之大小之第二視訊區塊編碼該視訊編碼單元的第二速率-失真量度,在該第一速率-失真量度小於第二速率-失真量度時使用該等第一視訊區塊編碼該視訊編碼單元,在該第二速率-失真量度小於該第一速率-失真量度時使用該等第二視訊區塊編碼該視訊編碼單元。
在另一實例中,本發明提供一種電腦可讀媒體,其經編碼有用以引起一視訊編碼器執行以下操作之指令:接收一視訊編碼單元,判定使用具有16×16像素之大小之第一視訊區塊編碼該視訊編碼單元的第一速率-失真量度,判定使用具有大於16×16像素之大小之第二視訊區塊編碼該視訊編碼單元的第二速率-失真量度,在該第一速率-失真量度小於第二速率-失真量度時使用該等第一視訊區塊編碼該視訊編碼單元,及在該第二速率-失真量度小於該第一
速率-失真量度時使用該等第二視訊區塊編碼該視訊編碼單元。
在另一實例中,本發明提供一種方法,其包含用一視訊編碼器編碼一包含複數個視訊區塊之經編碼單元,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小,及產生用於該經編碼單元的包括一最大大小值之語法資訊,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小。
在另一實例中,本發明提供一種裝置,其包含一視訊編碼器,該視訊編碼器經組態以編碼一包含複數個視訊區塊之經編碼單元,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小,且產生用於該經編碼單元的包括一最大大小值之語法資訊,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小。
在另一實例中,本發明提供一種裝置,其包含包含以下構件之裝置:用於編碼一包含複數個視訊區塊之經編碼單元的構件,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小,及用於產生用於該經編碼單元的包括一最大大小值之語法資訊的構件,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小。
在另一實例中,本發明提供一種電腦可讀儲存媒體,其經編碼有用以引起一可程式化處理器執行以下操作之指令:編碼一包含複數個視訊區塊之經編碼單元,其中該複
數個視訊區塊中之至少一者包含大於16×16像素之大小,及產生用於該經編碼單元的包括一最大大小值之語法資訊,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小。
在另一實例中,本發明提供一種方法,其包含用一視訊解碼器接收一包含複數個視訊區塊之經編碼單元,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小,接收用於該經編碼單元的包括一最大大小值之語法資訊,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小,根據該最大大小值選擇一區塊類型語法解碼器,及使用該選定區塊類型語法解碼器解碼該經編碼單元中的該複數個視訊區塊中之每一者。
在另一實例中,本發明提供一種裝置,其包含一視訊解碼器,該視訊解碼器經組態以接收一包含複數個視訊區塊之經編碼單元,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小,接收用於該經編碼單元的包括一最大大小值之語法資訊,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小,根據該最大大小值選擇一區塊類型語法解碼器,且使用該選定區塊類型語法解碼器解碼該經編碼單元中的該複數個視訊區塊中之每一者。
在另一實例中,本發明提供用於接收一包含複數個視訊區塊之經編碼單元的構件,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小;用於接收用於該經編
碼單元的包括一最大大小值之語法資訊的構件,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小;用於根據該最大大小值選擇一區塊類型語法解碼器的構件;及用於使用該選定區塊類型語法解碼器解碼該經編碼單元中的該複數個視訊區塊中之每一者的構件。
在另一實例中,本發明提供一種電腦可讀儲存媒體,其經編碼有用於引起一可程式化處理器執行以下操作之指令:接收一包含複數個視訊區塊之經編碼單元,其中該複數個視訊區塊中之至少一者包含大於16×16像素之大小,接收用於該經編碼單元的包括一最大大小值之語法資訊,其中該最大大小值指示該經編碼單元中的該複數個視訊區塊中之一最大者的大小,根據該最大大小值選擇一區塊類型語法解碼器,及使用該選定區塊類型語法解碼器解碼該經編碼單元中的該複數個視訊區塊中之每一者。
在下文之附圖及描述中闡述一或多個實例之細節。其他特徵、目標及優點將自該描述及圖式及自申請專利範圍而顯而易見。
本發明描述用於使用大的巨區塊編碼及解碼數位視訊資料之技術。大的巨區塊大於一般由現有視訊編碼標準規定之巨區塊。大多數視訊編碼標準規定使用一16×16像素陣列之形式的巨區塊。根據本發明,一編碼器及/或一解碼器可利用大小大於16×16像素之大的巨區塊。作為實例,
一大的巨區塊可具有32×32、64×64或可能更大之像素陣列。
大體而言,「巨區塊」這一術語當在本發明中使用時可指代包含表達為N×N像素之經定義大小之像素陣列的資料結構,其中N為正整數值。巨區塊可定義四個照度區塊,每一照度區塊包含(N/2)×(N/2)像素之陣列;兩個色度區塊,每一色度區塊包含N×N像素之陣列;及一標頭,其包含巨區塊類型資訊及編碼區塊型樣(CBP)資訊,如下文更詳細論述。
習知視訊編碼標準通常規定經定義之巨區塊大小為16×16像素陣列。根據本發明中所描述之各種技術,巨區塊可包含N×N像素陣列,其中N可大於16。同樣地,習知視訊編碼標準規定一框間編碼之巨區塊通常經指派一單一運動向量。根據本發明中所描述之各種技術,複數個運動向量可經指派用於N×N巨區塊之框間編碼之分割區,如下文更詳細描述。對「大的巨區塊」或類似片語之引用大體指代具有大於16×16之像素陣列之巨區塊。
在一些狀況下,大的巨區塊可支援編碼效率之改良及/或資料傳輸耗用之減少,同時維持或可能改良影像品質。舉例而言,使用大的巨區塊可准許一視訊編碼器及/或解碼器利用以增加之空間解析度(例如,每一圖框1280×720或1920×1080像素)及/或增加之圖框率(例如,每秒30圖框或60圖框)產生視訊資料所提供的增加之冗餘。
作為一說明,具有每一圖框1280×720像素之空間解析度
及每秒60圖框之圖框率的數位視訊序列在空間上比具有每一圖框176×144像素之空間解析度及每秒15圖框之圖框率的數位視訊序列大36倍且在時間上比具有每一圖框176×144像素之空間解析度及每秒15圖框之圖框率的數位視訊序列快4倍。藉由增加之巨區塊大小,視訊編碼器及/或解碼器可更好地利用增加之空間及/或時間冗餘來支援視訊資料之壓縮。
又,藉由使用較大巨區塊,針對一給定圖框或片,可編碼較小數目個區塊,從而減少需要傳輸之耗用資訊之量。換言之,較大巨區塊可准許針對每一圖框或片編碼之巨區塊之總數目的減少。若(例如)圖框之空間解析度增加4倍,則對於該圖框中之像素,將需要4倍的16×16巨區塊。在此實例中,藉由64×64巨區塊,減少了處置增加之空間解析度所需之巨區塊的數目。藉由每一圖框或片之減少數目個巨區塊,例如,可減少諸如語法資訊、運動向量資料及其類似者之編碼資訊之累積量。
在本發明中,巨區塊之大小大體上指代巨區塊中所含有之像素之數目,例如,64×64、32×32、16×16或其類似者。因此,大的巨區塊(例如,64×64或32×32)可能在其含有比16×16巨區塊之像素數目大的數目個像素之意義上而言為大的。然而,由大的巨區塊之垂直及水平尺寸定義之空間區域(亦即,作為由視訊圖框之垂直及水平尺寸定義之區域的部分)可或可不大於習知16×16巨區塊之區域。在一些實例中,大的巨區塊之區域可與習知16×16巨區塊相
同或類似。然而,大的巨區塊具有以巨區塊內之像素之較高數目及較高空間密度為特徵的較高空間解析度。
可至少部分基於圖框中之像素之數目(亦即,圖框中之空間解析度)來組態巨區塊之大小。若圖框具有較高數目個像素,則可將大的巨區塊組態為具有較高數目個像素。作為一說明,一視訊編碼器可經組態以針對以每秒30圖框顯示之1280×720像素圖框利用32×32像素巨區塊。作為另一說明,一視訊編碼器可經組態以針對以每秒60圖框顯示之1280×720像素圖框利用64×64像素巨區塊。
由編碼器編碼之每一巨區塊可能需要描述巨區塊之一或多個特性之資料。該資料可指示(例如)用於表示巨區塊之大小、巨區塊經分割之方式,及應用於巨區塊及/或其分割區之編碼模式(空間或時間)的巨區塊類型資料。另外,該資料可包括運動向量差異(mvd)資料以及其他語法元素以表示巨區塊及/或其分割區之運動向量資訊。又,該資料可包括編碼區塊型樣(CBP)值以及其他語法元素以表示預測之後之殘餘資訊。巨區塊類型資料可提供於大的巨區塊之單一巨區塊標頭中。
如上文所提及,藉由利用大的巨區塊,編碼器可減少每一圖框或片之巨區塊之數目,且藉此減少對於每一圖框或片需要傳輸之淨耗用(net overhead)的量。又,藉由利用大的巨區塊,針對一特定圖框或片,巨區塊之總數目可減小,此可減少顯示給使用者之視訊中之塊狀假影(blocky artifact)。
本發,明中所描述之視訊編碼技術可利用一或多個特徵來支援大的巨區塊之編碼。舉例而言,可將一大的巨區塊分割成較小分割區。可將不同編碼模式(例如,不同之空間(I)或時間(P或B)編碼模式)應用於一大的巨區塊內之選定分割區。又,可利用階層式編碼區塊型樣(CBP)值來有效地識別具有表示殘餘資料之非零變換係數的經編碼之巨區塊及分割區。另外,可比較使用大的巨區塊大小與小的巨區塊大小進行編碼之速率-失真量度以選擇一產生有利結果之巨區塊大小。此外,一包含變化大小之巨區塊的經編碼單元(例如,一圖框、片、序列,或圖片群)可包括指示該經編碼單元中的最大巨區塊之大小的語法元素。如下文更詳細描述,大的巨區塊包含不同於標準16×16像素區塊之區塊層級語法。因此,藉由指示經編碼單元中的最大巨區塊之大小,編碼器可將一將應用於該經編碼單元之巨區塊的區塊層級語法解碼器傳信至解碼器。
針對大的巨區塊中之不同分割區使用不同編碼模式可被稱作大的巨區塊之混合模式編碼。代替均勻地編碼大的巨區塊以使得所有分割區具有相同的框內或框間編碼模式,可編碼大的巨區塊以使得一些分割區具有不同編碼模式,諸如不同的框內編碼模式(例如,I_16×16、I_8×8、I_4×4)或框內及框間編碼模式。
若將一大的巨區塊劃分成兩個或兩個以上分割區,則(例如)可用一第一模式編碼至少一分割區且可用一不同於該第一模式之第二模式編碼另一分割區。在一些狀況下,
第一模式可為第一I模式且第二模式可為不同於該第一I模式之第二I模式。在其他狀況下,第一模式可為I模式且第二模式可為P或B模式。因此,在一些實例中,一大的巨區塊可包括一或多個在時間上(P或B)編碼之分割區及一或多個在空間上(I)編碼之分割區,或一或多個具有不同I模式的在空間上編碼之分割區。
一或多個階層式編碼區塊型樣(CBP)值可用於有效地描述一大的巨區塊中之任何分割區是否具有至少一非零變換係數,且若如此,則描述哪些分割區具有至少一非零變換係數。變換係數編碼大的巨區塊之殘餘資料。一大的巨區塊層級CBP位元指示大的巨區塊中之任何分割區是否包括一非零的、經量化之係數。若大的巨區塊中之任何分割區不包括一非零、經量化之係數,則不需要考慮該等分割區中之任一者是否具有一非零係數,因為已知整個大的巨區塊不具有非零係數。在此狀況下,可使用預測巨區塊來解碼不具有殘餘資料之巨區塊。
或者,若巨區塊層級CBP值指示大的巨區塊中之至少一分割區具有一非零係數,則可分析分割區層級CBP值以識別該等分割區中之哪一者包括至少一非零係數。解碼器接著可擷取具有至少一非零係數之分割區之適當殘餘資料,且使用該殘餘資料及預測區塊資料解碼該等分割區。在一些狀況下,一或多個分割區可具有非零係數,且因此包括具有適當指示之分割區層級CBP值。大的巨區塊與該等分割區中之至少一些分割區均可大於16×16像素。
為了選擇產生有利速率-失真量度之巨區塊大小,可針對大的巨區塊(例如,32×32或64×64)與小的巨區塊(例如,16×16)兩者分析速率-失真量度。舉例而言,一編碼器可比較一經編碼單元(諸如,一圖框或片)的16×16巨區塊、32×32巨區塊與64×64巨區塊之間的速率-失真量度。編碼器可接著選擇產生最優速率-失真之巨區塊大小,且使用該選定巨區塊大小(亦即,具有最優速率-失真之巨區塊大小)編碼該經編碼單元。
該選擇可係基於在三個或三個以上遍次(例如,使用16×16像素巨區塊之第一遍次、使用32×32像素巨區塊之第二遍次,及使用64×64像素巨區塊之第三遍次)中編碼圖框或片,及比較每一遍次之速率-失真量度。以此方式,編碼器可藉由變化巨區塊大小且選擇產生一給定編碼單元(諸如,一片或圖框)之最優或最佳速率-失真之巨區塊大小來最佳化速率-失真。編碼器可進一步將用於經編碼單元的識別在經編碼單元中所使用的巨區塊之大小的語法資訊(例如)作為一圖框標頭或一片標頭之一部分加以傳輸。如下文更詳細論述,用於經編碼單元之語法資訊可包含一最大大小指示符,其指示經編碼單元中所使用的巨區塊之最大大小。以此方式,編碼器可向解碼器通知預期將哪些語法用於經編碼單元之巨區塊。當巨區塊之最大大小包含16×16像素時,解碼器可預期標準H.264語法且根據H.264-指定語法剖析巨區塊。然而,當巨區塊之最大大小大於16×16(例如,包含64×64像素)時,解碼器可預期與較大巨
區塊之處理有關的修改之語法元素及/或額外語法元素(如本發明描述),且根據該修改之語法或額外語法剖析巨區塊。
對於一些視訊圖框或片,在給定相對低之失真之情況下,大的巨區塊可提供實質位元率節省且藉此產生最優速率-失真結果。然而,對於其他視訊圖框或片,較小巨區塊可提供較少失真,從而在速率-失真成本分析中重要性超過位元率。因此,在不同狀況下,(例如)視視訊內容及複雜性而定,64×64、32×32或16×16可適合於不同視訊圖框或片。
圖1為說明一實例視訊編碼及解碼系統10之方塊圖,視訊編碼及解碼系統10可利用用於使用大的巨區塊(亦即,含有比16×16巨區塊多之像素之巨區塊)編碼/解碼數位視訊資料之技術。如圖1中所展示,系統10包括經由通信頻道16將經編碼之視訊傳輸至目的地器件14的源器件12。源器件12及目的地器件14可包含寬廣範圍之器件中之任一者。在一些狀況下,源器件12及目的地器件14可包含無線通信器件,諸如無線手機、所謂之蜂巢式或衛星無線電電話,或可在通信頻道16上(在此狀況下,通信頻道16為無線的)傳達視訊資訊之任何無線器件。然而,本發明之關注包含比由習知視訊編碼標準規定之巨區塊多的像素之大的巨區塊之使用的技術未必限於無線應用或設定。舉例而言,此等技術可適用於空中電視廣播、有線電視傳輸、衛星電視傳輸、網際網路視訊傳輸、經編碼至儲存媒體上之經編碼
之數位視訊,或其他情況。因此,通信頻道16可包含適合於傳輸經編碼之視訊資料的無線媒體或有線媒體之任何組合。
在圖1之實例中,源器件12可包括視訊源18、視訊編碼器20、調變器/解調變器(數據機)22及傳輸器24。目的地器件14可包括接收器26、數據機28、視訊解碼器30,及顯示器件32。根據本發明,源器件12之視訊編碼器20可經組態以應用用於在一視訊編碼過程中使用具有大於由習知視訊編碼標準規定之巨區塊大小之大小的大的巨區塊的技術中之一或多者。類似地,目的地器件14之視訊解碼器30可經組態以應用用於在一視訊解碼過程中使用大於由習知視訊編碼標準規定之巨區塊大小之巨區塊大小的技術中之一或多者。
圖1之所說明之系統10僅為一實例。如本發明中所描述之用於使用大的巨區塊之技術可由任何數位視訊編碼及/或解碼器件來執行。源器件12及目的地器件14僅為該等編碼器件(在該等編碼器件中,源器件12產生用於傳輸至目的地器件14之經編碼之視訊資料)之實例。在一些實例中,器件12、14可以一大體上對稱之方式操作以使得器件12、14中之每一者包括視訊編碼及解碼組件。因此,系統10可支援視訊器件12、14之間的單向或雙向視訊傳輸(例如)用於視訊串流、視訊播放、視訊廣播或視訊電話。
源器件12之視訊源18可包括視訊捕獲器件,諸如攝影機、含有先前所捕獲之視訊之視訊存檔,及/或來自視訊
內容提供者之視訊饋入(video feed)。作為另一替代,視訊源18可產生基於電腦圖形之資料作為源視訊,或產生實況視訊、經保存之視訊與電腦產生之視訊的組合。在一些狀況下,若視訊源18為攝影機,則源器件12與目的地器件14可形成所謂的相機電話或視訊電話。然而,如上文所提及,大體而言,本發明中所描述之技術可適用於視訊編碼,且可適用於無線或有線應用。在每一狀況下,可由視訊編碼器20來編碼經捕獲之、經預先捕獲之或電腦產生之視訊。經編碼之視訊資訊可接著由數據機22根據一通信標準來調變,且經由傳輸器24而傳輸至目的地器件14。數據機22可包括各種混頻器、濾波器、放大器或經設計以用於信號調變之其他組件。傳輸器24可包括經設計以用於傳輸資料之電路,包括放大器、濾波器,及一或多個天線。
目的地器件14之接收器26在頻道16上接收資訊,且數據機28解調變該資訊。再一次,視訊編碼過程可實施本文中所描述的技術中的一或多者以將大的巨區塊(例如,大於16×16)用於視訊資料之框間(亦即,時間)編碼及/或框內(亦即,空間)編碼。由視訊解碼器30執行之視訊解碼過程亦可在解碼過程期間使用該等技術。在頻道16上傳遞之資訊可包括由視訊編碼器20定義之語法資訊,該語法資訊亦由視訊解碼器30使用,該語法資訊包括描述大的巨區塊之特性及/或處理之語法元素,如下文更詳細論述。可將語法資訊包括於一圖框標頭、一片標頭、一序列標頭(例如,關於H.264,藉由使用經編碼之視訊序列所符合之設
定檔及層級)或一巨區塊標頭中之任一者或全部中。顯示器件32將經解碼之視訊資料顯示給使用者,且可包含諸如陰極射線管(CRT)、液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件之多種顯示器件中的任一者。
在圖1之實例中,通信頻道16可包含任何無線或有線通信媒體(諸如,射頻(RF)頻譜或一或多個實體傳輸線),或無線與有線媒體之任何組合。通信頻道16可形成基於封包之網路(諸如,區域網路、廣域網路,或諸如網際網路之全球網路)之一部分。通信頻道16大體上表示用於將視訊資料自源器件12傳輸至目的地器件14的任何合適之通信媒體或不同通信媒體之集合,包括有線或無線媒體之任何合適組合。通信頻道16可包括路由器、開關、基地台,或可用於促進自源器件12至目的地器件14之通信之任何其他設備。
視訊編碼器20及視訊解碼器30可根據一諸如ITU-T H.264標準(或者經描述為MPEG-4第10部分,進階視訊編碼(AVC))之視訊壓縮標準操作。然而,本發明之技術不限於任何特定編碼標準。其他實例包括MPEG-2及ITU-T H.263。雖然圖1中未展示,但在一些態樣中,視訊編碼器20及視訊解碼器30可各自與音訊編碼器及解碼器整合,且可包括適當MUX-DEMUX單元或其他硬體及軟體,以處置共同資料流或單獨資料流中之音訊與視訊兩者的編碼。若可適用,則MUX-DEMUX單元可符合ITU H.223多工器協
定,或諸如使用者資料報協定(UDP)之其他協定。
ITU-T H.264/MPEG-4(AVC)標準由ITU-T視訊編碼專家組(VCEG)連同ISO/IEC動畫專家組(MPEG)一起製定,作為稱為聯合視訊小組(JVT)之集體夥伴關係的產物。在一些態樣中,本發明中所描述之技術可適用於大體符合H.264標準之器件。H.264標準描述於ITU-T研究組的2005年3月公布之ITU-T推薦H.264,Advanced Video Coding for generic audiovisual services(用於一般視聽服務之進階視訊編碼)中,其在本文中可稱作H.264標準或H.264規範,或H.264/AVC標準或規範。聯合視訊小組(JVT)繼續致力於H.264/MPEG-4 AVC之擴展。
視訊編碼器20及視訊解碼器30各自可經實施為諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合之多種合適編碼器電路中的任一者。視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編碼器或解碼器中,視訊編碼器20及視訊解碼器30中之任一者可作為組合編碼器/解碼器(CODEC)之一部分而整合於各別相機、電腦、行動器件、用戶器件、廣播器件、機上盒、伺服器或其類似者中。
一視訊序列通常包括一系列視訊圖框。視訊編碼器20對個別視訊圖框內之視訊區塊操作以便編碼視訊資料。一視訊區塊可對應於一巨區塊或一巨區塊之一分割區。一視訊區塊可進一步對應於一分割區之一分割區。視訊區塊可具
有固定或變化之大小,且大小可根據指定編碼標準或根據本發明之技術而不同。每一視訊圖框可包括複數個片。每一片可包括複數個巨區塊,該複數個巨區塊可排列成亦稱作子區塊之分割區。
作為一實例,ITU-T H.264標準支援各種區塊大小(諸如,用於明度分量之16乘16、8乘8或4乘4,及用於色度分量之8×8)之框內預測,以及各種區塊大小(諸如,用於明度分量之16×16、16×8、8×16、8×8、8×4、4×8及4×4,及用於色度分量之對應按比例調整之大小)之框間預測。在本發明中,「×」與「乘」可互換地使用以指代根據垂直及水平尺寸的區塊之像素尺寸,例如,16×16像素或16乘16像素。大體而言,16×16區塊將具有在垂直方向上之16個像素及在水平方向上之16個像素。同樣地,N×N區塊大體上具有在垂直方向上之N個像素及在水平方向上之N個像素,其中N表示一可大於16之正整數值。一區塊中之像素可排列成多列及多行。
小於16乘16之區塊大小可稱作16乘16巨區塊之分割區。同樣地,對於N×N區塊,小於N×N之區塊大小可稱作N×N區塊之分割區。本發明之技術描述大於習知16×16像素巨區塊之巨區塊(諸如,32×32像素巨區塊、64×64像素巨區塊,或更大的巨區塊)的框內編碼及框間編碼。視訊區塊可包含像素域中的像素資料之區塊,或(例如)在對表示經編碼之視訊區塊與預測視訊區塊之間的像素差異之殘餘視訊區塊資料應用諸如離散餘弦變換(DCT)、整數變換、小
波變換或概念上類似之變換的變換之後的在變換域中之變換係數之區塊。在一些狀況下,一視訊區塊可包含變換域中的經量化之變換係數之區塊。
較小視訊區塊可提供較好解析度,且可用於視訊圖框之包括高細節度的位置。大體而言,可將巨區塊及有時稱作子區塊之各種分割區視為視訊區塊。另外,可將片視為複數個視訊區塊,諸如巨區塊及/或子區塊。每一片可為視訊圖框之一可獨立解碼之單元。或者,圖框本身可為可解碼之單元,或可將圖框之其他部分定義為可解碼之單元。術語「經編碼單元」或「編碼單元」可指代一視訊圖框之任何可獨立解碼之單元,諸如一完整圖框、一圖框之一片、亦稱作序列之圖片群(GOP),或根據可適用之編碼技術定義的另一可獨立解碼之單元。
在用於產生預測資料及殘餘資料之框內預測或框間預測編碼之後,且在用於產生變換係數之任何變換(諸如,H.264/AVC中所使用之4×4或8×8整數變換或離散餘弦變換DCT)之後,可執行變換係數之量化。量化大體指代一將變換係數量化以可能地減少用於表示係數之資料量的過程。量化過程可減少與一些係數或全部係數相關聯之位元深度。舉例而言,在量化期間,可將n-位元值向下捨入至m-位元值,其中n大於m。
在量化之後,可(例如)根據內容適應性可變長度編碼(CAVLC)、上下文適應性二進位算術編碼(CABAC)或另一熵編碼方法執行經量化資料之熵編碼。一經組態以用於熵
編碼之處理單元或另一處理單元可執行其他處理功能,諸如經量化係數之零游程長度編碼及/或諸如CBP值、巨區塊類型、編碼模式、經編碼單元(諸如,圖框、片、巨區塊,或序列)之最大巨區塊大小或其類似者的語法資訊之產生。
根據本發明之各種技術,視訊編碼器20可使用一大於由習知視訊編碼標準規定之巨區塊之巨區塊來編碼數位視訊資料。在一實例中,視訊編碼器20可用一視訊編碼器編碼一具有大於16×16像素之大小之視訊區塊,產生指示該區塊之大小之區塊類型語法資訊,且產生該經編碼區塊之CBP值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數。巨區塊區塊類型語法資訊可提供於大的巨區塊之巨區塊標頭中。巨區塊區塊類型語法資訊可指示巨區塊在圖框或片中之位址或位置,或識別巨區塊之位置之巨區塊編號、應用於巨區塊之編碼模式之類型、巨區塊之量化值、巨區塊之任何運動向量資訊,及巨區塊之CBP值。
在另一實例中,視訊編碼器20可接收一具有大於16×16像素之大小之視訊區塊,將該區塊分割成分割區,使用一第一編碼模式編碼該等分割區中之一者,使用一不同於該第一編碼模式之第二編碼模式編碼該等分割區中之另一者,且產生指示該區塊之大小且識別該等分割區及用於編碼該等分割區之編碼模式的區塊類型語法資訊。
在一額外實例中,視訊編碼器20可接收一視訊編碼單元
(諸如,一圖框或片),判定使用具有16×16像素之大小之第一視訊區塊編碼該視訊編碼單元的第一速率-失真量度,判定使用具有大於16×16像素之大小之第二視訊區塊編碼該視訊編碼單元的第二速率-失真量度,在該第一速率-失真量度小於第二速率-失真量度時使用該等第一視訊區塊編碼該視訊編碼單元,且在該第二速率-失真量度小於該第一速率-失真量度時使用該等第二視訊區塊編碼該視訊編碼單元。
在一實例中,視訊解碼器30可接收一具有大於16×16像素之大小的經編碼之視訊區塊,接收指示該經編碼之區塊之大小的區塊類型語法資訊,接收該經編碼之區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼之區塊是否包括至少一非零係數,且基於該區塊類型語法資訊及該經編碼區塊之該編碼區塊型樣值解碼該經編碼之區塊。
在另一實例中,視訊解碼器30可接收一具有大於16×16像素之大小之視訊區塊,其中該區塊經分割成分割區,該等分割區中之一者經框內編碼且該等分割區中之另一者經框內編碼,接收指示該區塊之大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊,且基於該區塊類型語法資訊解碼該視訊區塊。
圖2為說明視訊編碼器50之一實例的方塊圖,視訊編碼器50可實施與本發明一致的用於使用大的巨區塊之技術。視訊編碼器50可對應於源器件12之視訊編碼器20或一不同器件之視訊編碼器。視訊編碼器50可執行視訊圖框內之區
塊(包括大的巨區塊,或大的巨區塊之分割區或子分割區)之框內編碼及框間編碼。框內編碼依賴於空間預測來減少或移除給定視訊圖框內之視訊的空間冗餘。框間編碼依賴於時間預測來減少或移除視訊序列之鄰近圖框內之視訊的時間冗餘。
框內模式(I-模式)可指代若干基於空間之壓縮模式中之任一者,且諸如預測(P-模式)或雙向(B-模式)之框間模式可指代若干基於時間之壓縮模式中之任一者。本發明之技術可在框間編碼與框內編碼兩者期間應用。在一些狀況下,本發明之技術亦可適用於編碼非視訊數位圖片。亦即,數位靜態圖片編碼器可利用本發明之技術來以類似於編碼一視訊序列中之視訊圖框中的框內編碼之巨區塊的方式使用大的巨區塊對一數位靜態圖片進行框內編碼。
如圖2中所展示,視訊編碼器50接收待編碼之視訊圖框內之當前視訊區塊。在圖2之實例中,視訊編碼器50包括運動補償單元35、運動估計單元36、框內預測單元37、模式選擇單元39、參考圖框儲存器34、求和器48、變換單元38、量化單元40,及熵編碼單元46。對於視訊區塊重建,視訊編碼器50亦包括反量化單元42、逆變換單元44,及求和器51。亦可包括解塊濾波器(圖2中未展示)以將區塊邊界濾波以自經重建之視訊移除塊狀物假影(blockiness artifact)。在需要時,解塊濾波器通常將求和器51之輸出濾波。
在編碼過程期間,視訊編碼器50接收一待編碼之視訊圖
框或片。可將該圖框或片劃分成多個視訊區塊,包括大的巨區塊。運動估計單元36及運動補償單元35相對於一或多個參考圖框中之一或多個區塊執行所接收之視訊區塊的框間預測編碼以提供時間壓縮。框內預測單元37相對於與待編碼之區塊相同之圖框或片中的一或多個相鄰區塊執行所接收之視訊區塊之框內預測編碼以提供空間壓縮。
模式選擇單元39可(例如)基於誤差結果選擇編碼模式(框內或框間)中之一者,且將所得之框內編碼或框間編碼之區塊提供至求和器48以產生殘餘區塊資料,且提供至求和器51以重建經編碼之區塊以用作一參考圖框。根據本發明之技術,待編碼之視訊區塊可包含一大於由習知編碼標準規定之巨區塊(亦即,大於16×16像素巨區塊)之巨區塊。舉例而言,大的視訊區塊可包含一64×64像素巨區塊或一32×32像素巨區塊。
運動估計單元36與運動補償單元35可高度整合,但出於概念目的而單獨加以說明。運動估計為產生估計視訊區塊之運動之運動向量的過程。運動向量(例如)可指示預測參考圖框(或其他經編碼單元)內之預測區塊相對於當前圖框(或其他經編碼單元)內正被編碼之當前區塊的位移。預測區塊為經發現在像素差異方面密切地匹配待編碼之區塊之區塊,其可藉由絕對差總和(SAD)、平方差總和(SSD)或其他差異量度來判定。
運動向量亦可指示一大的巨區塊之一分割區之位移。在一關於具有一個32×64分割區及兩個32×32分割區之64×64
像素巨區塊之實例中,第一運動向量可指示32×64分割區之位移,第二運動向量可指示32×32分割區中之一第一者之位移,且第三運動向量可指示32×32分割區中之一第二者之位移,所有位移均相對於參考圖框中之對應分割區。亦可將該等分割區視為視訊區塊(在彼等術語用於本發明中時)。運動補償可涉及基於藉由運動估計判定之運動向量提取或產生預測區塊。再一次,運動估計單元36與運動補償單元35可在功能上整合。
運動估計單元36藉由比較一框間編碼之圖框之視訊區塊與參考圖框儲存器34中之一參考圖框之視訊區塊來計算框間編碼之圖框之視訊區塊之運動向量。運動補償單元35亦可內插參考圖框(例如,I-圖框或P-圖框)之次整數(sub-integer)像素。ITU H.264標準將參考圖框稱作「清單」。因此,亦可將儲存於參考圖框儲存器34中之資料視為清單。運動估計單元36比較來自參考圖框儲存器34之一或多個參考圖框(或清單)之區塊與當前圖框(例如,P-圖框或B-圖框)之待編碼之區塊。當參考圖框儲存器34中之參考圖框包括用於次整數像素之值時,由運動估計單元36計算之運動向量可指代參考圖框之次整數像素位置。運動估計單元36將經計算之運動向量發送至熵編碼單元46及運動補償單元35。由運動向量識別之參考圖框區塊可稱作預測區塊。運動補償單元35計算參考圖框之預測區塊之誤差值。
運動補償單元35可基於預測區塊計算預測資料。視訊編碼器50藉由自經編碼之原始視訊區塊減去來自運動補償單
元35之預測資料而形成殘餘視訊區塊。求和器48表示執行此減法運算之一或多個組件。變換單元38對殘餘區塊應用諸如離散餘弦變換(DCT)或概念上類似之變換之變換,從而產生包含殘餘變換係數值之視訊區塊。變換單元38可執行概念上類似於DCT之其他變換,諸如由H.264標準定義之彼等變換。亦可使用小波變換、整數變換、次頻帶變換或其他類型之變換。在任何狀況下,變換單元38對殘餘區塊應用變換,從而產生殘餘變換係數之區塊。該變換可將殘餘資訊自像素值域轉換至變換域(諸如,頻域)。
量化單元40使殘餘變換係數量化以進一步減小位元率。量化過程可減少與一些係數或全部係數相關聯之位元深度。在一實例中,量化單元40可根據照度量化參數(在本發明中稱作QPY)建立用於每一64×64像素巨區塊之不同程度之量化。量化單元40可基於量化參數修改因子(modifier)(其在本文中稱作「MB64_delta_QP」)及先前經編碼之64×64像素巨區塊進一步修改在64×64巨區塊之量化期間所使用之照度量化參數。
每一64×64像素的大的巨區塊可包含一在-26與+25之間(包括-26與+25)之範圍內的個別MB64_delta_QP值。大體而言,視訊編碼器50可基於用於傳輸一特定區塊之經編碼版本的所要位元率建立用於該特定區塊之MB64_delta_QP值。第一64×64像素巨區塊之MB64_delta_QP值可等於一包括第一64×64像素巨區塊之圖框或片之QP值(例如,在圖框/片標頭中)。可根據下式來計算用於當前64×64像素巨區
塊之QPY:QP Y =(QP Y,PREV +MB64_delta_QP+52)%52其中QPY,PREV指代在當前片/圖框之解碼次序中的前一64×64像素巨區塊之QPY值,且其中「%」指代模數運算符,使得N%52傳回一在0與51之間(包括0與51)的結果,對應於N除以52之餘數值。對於一圖框/片中之第一巨區塊,可將QPY,PREV設定為等於在圖框/片標頭中發送之圖框/片QP。
在一實例中,量化單元40假定:當未針對特定64×64像素巨區塊(包括「跳躍」型巨區塊,諸如,P_Skip及B_Skip巨區塊類型)定義MB64_delta_QP值時,MB64_delta_QP值等於零。在一些實例中,可定義額外delta_QP值(大體稱作量化參數修改值)以用於64×64像素巨區塊內之分割區之較細粒度量化控制,諸如用於64×64像素巨區塊之每一32×32像素分割區之MB32_delta_QP值。在一些實例中,64×64巨區塊之每一分割區可經指派一個別量化參數。代替對於一64×64巨區塊使用單一QP,對於每一分割區使用個別化之量化參數可導致巨區塊之更有效量化,(例如)以便更好地調整對於非均勻區域之量化。可將每一量化參數修改值作為語法資訊與對應經編碼區塊包括在一起,且一解碼器可藉由根據量化參數修改值解除量化(亦即,反量化)經編碼之區塊來解碼經編碼之區塊。
在量化之後,熵編碼單元46將經量化之變換係數進行熵編碼。舉例而言,熵編碼單元46可執行內容適應性可變長
度編碼(CAVLC)、上下文適應性二進位算術編碼(CABAC),或另一熵編碼技術。在由熵編碼單元46進行熵編碼之後,可將經編碼之視訊傳輸至另一器件或將其保存以用於稍後傳輸或擷取。經編碼之位元流可包括經熵編碼之殘餘變換係數區塊、該等區塊之運動向量、每一64×64像素巨區塊之MB64_delta_QP值,及包括(例如)巨區塊類型識別符值、指示經編碼單元中之巨區塊的最大大小的經編碼單元標頭、QPY值、編碼區塊型樣(CBP)值、識別巨區塊或子區塊之分割方法之值,及變換大小旗標值的其他語法元素,如下文更詳細論述。在上下文適應性二進位算術編碼之狀況下,上下文可係基於相鄰巨區塊。
在一些狀況下,除熵編碼之外,視訊編碼器50之熵編碼單元46或另一單元可經組態以執行其他編碼功能。舉例而言,熵編碼單元46可經組態以判定大的巨區塊及分割區之CBP值。熵編碼單元46可應用階層式CBP方案以提供大的巨區塊之指示巨區塊中之任何分割區是否包括非零變換係數值的CBP值,且若如此,則提供用於指示大的巨區塊內之特定分割區是否具有非零變換係數值之其他CBP值。又,在一些狀況下,熵編碼單元46可執行大的巨區塊或子分割區中之係數之游程長度編碼。詳言之,熵編碼單元46可應用曲折掃描或其他掃描型樣以掃描巨區塊或分割區中之變換係數,且編碼零的游程以用於進一步壓縮。熵編碼單元46亦可用適當語法元素建構標頭資訊以用於在經編碼之視訊位元流中傳輸。
反量化單元42及逆變換單元44分別應用反量化及逆變換,以重建像素域中之殘餘區塊,(例如)以用於稍後用作參考區塊。運動補償單元35可藉由將殘餘區塊加至參考圖框儲存器34之圖框中之一者的預測區塊來計算參考區塊。運動補償單元35亦可對經重建之殘餘區塊應用一或多個內插濾波器以計算次整數像素值。求和器51將經重建之殘餘區塊加至由運動補償單元35產生的經運動補償之預測區塊以產生用於儲存於參考圖框儲存器34中的經重建之視訊區塊。經重建之視訊區塊可由運動估計單元36及運動補償單元35用作一用於對後續視訊圖框中之區塊進行框間編碼的參考區塊。大的巨區塊可包含64×64像素巨區塊、32×32像素巨區塊,或大於由習知視訊編碼標準規定之大小的其他巨區塊。
圖3為說明視訊解碼器60之一實例的方塊圖,視訊解碼器60解碼以本發明中所描述之方式編碼之視訊序列。經編碼之視訊序列可包括大於由習知視訊編碼標準規定之大小的經編碼之巨區塊。舉例而言,經編碼之巨區塊可為32×32像素或64×64像素巨區塊。在圖3之實例中,視訊解碼器60包括熵解碼單元52、運動補償單元54、框內預測單元55、反量化單元56、逆變換單元58、參考圖框儲存器62及求和器64。視訊解碼器60在一些實例中可執行一大體與關於視訊編碼器50(圖2)所描述之編碼遍次互逆之解碼遍次。運動補償單元54可基於自熵解碼單元52接收之運動向量產生預測資料。
熵解碼單元52對所接收之位元流進行熵解碼以產生經量化之係數及語法元素(例如,運動向量、CBP值、QPY值、變換大小旗標值、MB64_delta_QP值)。熵解碼單元52可剖析位元流以識別經編碼單元(諸如,圖框、片及/或巨區塊標頭)中之語法資訊。一包含複數個巨區塊之經編碼單元的語法資訊可指示經編碼單元中的巨區塊(例如,16×16像素、32×32像素、64×64像素,或其他較大大小之巨區塊)之最大大小。(例如)視區塊之編碼模式而定,將一區塊之語法資訊自熵編碼單元52轉遞至運動補償單元54或框內預測單元55。解碼器可使用經編碼單元之語法中的最大大小指示符來選擇用於該經編碼單元之語法解碼器。使用針對該最大大小指定之語法解碼器,解碼器可接著適當地解譯及處理包括於該經編碼單元中的大的巨區塊。
運動補償單元54可使用在位元流中所接收之運動向量來識別參考圖框儲存器62中之參考圖框中之預測區塊。框內預測單元55可使用在位元流中所接收之框內預測模式來自空間上鄰近之區塊形成預測區塊。反量化單元56將提供於位元流中且由熵解碼單元52解碼的經量化之區塊係數反量化(亦即,解除量化)。反量化過程可包括一(例如)如藉由H.264解碼標準定義之習知過程。反量化過程亦可包括使用由編碼器50針對每一64×64巨區塊計算的用於判定量化之程度且同樣地應該應用之反量化之程度的量化參數QPY。
逆變換單元58對變換係數應用逆變換(例如,逆向
DCT、逆整數變換,或概念上類似之逆變換過程),以便產生像素域中之殘餘區塊。運動補償單元54產生經運動補償之區塊,可能執行基於內插濾波器之內插。待用於具有次像素精度的運動估計之內插濾波器之識別符可包括在語法元素中。運動補償單元54可使用如由視訊編碼器50在視訊區塊之編碼期間使用之內插濾波器來計算參考區塊之次整數像素的內插值。運動補償單元54可根據所接收之語法資訊判定由視訊編碼器50使用之內插濾波器且使用內插濾波器來產生預測區塊。
運動補償單元54使用一些語法資訊來判定用於編碼經編碼視訊區塊之(多個)圖框的巨區塊之大小、描述經編碼視訊序列之圖框的每一巨區塊經分割之方式的分割資訊、指示每一分割區經編碼之方式之模式、用於每一框間編碼之巨區塊或分割區之一或多個參考圖框(或清單),及用於解碼經編碼視訊序列之其他資訊。
求和器64將殘餘區塊與由運動補償單元54或框內預測單元產生之對應預測區塊求和以形成經解碼之區塊。在需要時,亦可應用解塊濾波器以濾波經解碼之區塊以便移除塊狀物假影。接著將經解碼之視訊區塊儲存於參考圖框儲存器62中,參考圖框儲存器62提供用於後續運動補償之參考區塊且亦產生用於在一顯示器件(諸如,圖1之器件32)上呈現之經解碼視訊。經解碼視訊區塊可各自包含64×64像素巨區塊、32×32像素巨區塊,或其他大於標準之巨區塊。一些巨區塊可包括具有多種不同分割區大小之分割區。
圖4A為說明一大的巨區塊之各種分割區層級中的實例分割的概念圖。每一分割區層級之區塊包括對應於特定層級之若干像素。對於每一層級亦展示四個分割型樣,其中第一分割型樣包括整個區塊,第二分割型樣包括相等大小之兩個水平分割區,第三分割型樣包括相等大小之兩個垂直分割區,且第四分割型樣包括四個相等大小之分割區。可針對每一分割區層級之每一分割區選擇該等分割型樣中之一者。
在圖4A之實例中,層級0對應於明度樣本及相關聯之色度樣本之64×64像素巨區塊分割區。層級1對應於明度樣本及相關聯之色度樣本之32×32像素區塊。層級2對應於明度樣本及相關聯之色度樣本之16×16像素區塊,且層級3對應於明度樣本及相關聯之色度樣本之8×8像素區塊。
在其他實例中,可引入額外層級以利用更大或更小數目個像素。舉例而言,層級0可自128×128像素巨區塊、256×256像素巨區塊或其他較大大小之巨區塊開始。最高編號之層級在一些實例中可精細到單一像素(亦即,1×1區塊)。因此,自最低層級至最高層級,可將分割愈來愈子分割,使得巨區塊被分割,分割區被進一步分割,所得分割區被再進一步分割,等等。在一些情況中,低於層級0之分割區(亦即,分割區之分割區)可稱作子分割區。
當使用四個相等大小之子區塊分割一層級之區塊時,可根據下一個層級之分割型樣分割子區塊中之任一者或全部。亦即,對於在層級x經分割成四個相等大小之子區塊
(N/2)×(N/2)之N×N區塊,可根據層級x+1之分割型樣中之任一者進一步分割(N/2)×(N/2)子區塊中之任一者。因此,可根據圖4A中所展示的層級1之型樣(例如,32×32、32×16與32×16、16×32與16×32,或16×16、16×16、16×16與16×16)中之任一者進一步分割層級0之64×64像素巨區塊之32×32像素子區塊。同樣地,在由經分割之32×32像素子區塊產生四個16×16像素子區塊之情況下,可根據圖4A中所展示的層級2之型樣中之任一者進一步分割16×16像素子區塊中之每一者。在由經分割之16×16像素子區塊產生四個8×8像素子區塊之情況下,可根據圖4A中所展示的層級3之型樣中之任一者進一步分割8×8像素子區塊中之每一者。
使用圖4A中所展示之分割區之實例性的四個層級,可藉由實施本發明之架構及技術之編碼器適應性地表示大的均勻區域及精細偶發性改變。舉例而言,視訊編碼器50可(例如)基於速率-失真分析判定不同巨區塊之不同分割層級,以及對該等分割區應用之編碼模式。又,如下文更詳細描述,視訊編碼器50可(例如)基於速率-失真量度結果或其他考慮事項而使用空間(P-編碼或B-編碼)或時間(I-編碼)預測不同地編碼最終分割區中之至少一些分割區。
並非均勻地編碼一大的巨區塊而使得所有分割區具有相同的框內編碼模式或框間編碼模式,可編碼一大的巨區塊以使得一些分割區具有不同編碼模式。舉例而言,可用相對於同一巨區塊中之其他(至少一個)分割區而言不同之框內編碼模式(例如,I_16×16、I_8×8、I_4×4)編碼一些(至
少一個)分割區。又,可對一些(至少一個)分割區進行框內編碼而對同一巨區塊中之其他(至少一個)分割區進行框間編碼。
舉例而言,對於具有四個16×16分割區之32×32區塊,視訊編碼器50可使用空間預測編碼16×16分割區中之一些分割區,且使用時間預測編碼其他16×16分割區。作為另一實例,對於具有四個16×16分割區之32×32區塊,視訊編碼器50可使用第一預測模式(例如,I_16×16、I_8×8、I_4×4中之一者)編碼16×16分割區中之一或多者,且使用一不同之空間預測模式(例如,I_16×16、I_8×8、I_4×4中之一者)編碼一或多個其他16×16分割區。
圖4B為說明將不同編碼模式指派至一大的巨區塊之不同分割區的概念圖。詳言之,圖4B說明將I_16×16框內編碼模式指派至大的32×32巨區塊之左上部16×16區塊、將I8×8框內編碼模式指派至大的32×32巨區塊之右上部及左下部16×16區塊及將I_4×4框內編碼模式指派至大的32×32巨區塊之右下部16×16區塊。在一些狀況下,圖4B中所說明之編碼模式可為用於明度編碼之H.264框內編碼模式。
以所描述之方式,可有選擇地進一步分割每一分割區,且可使用時間預測或空間預測且使用選定之時間編碼模式或空間編碼模式選擇性地編碼每一最終分割區。因此,有可能用混合模式編碼大的巨區塊,以使得巨區塊中之一些分割區經框內編碼且同一巨區塊中之其他分割區經框間編碼,或同一巨區塊中之一些分割區係用不同之框內編碼模
式或不同之框間編碼模式進行編碼。
視訊編碼器50可根據巨區塊類型進一步定義每一分割區。可將巨區塊類型作為語法元素包括於經編碼之位元流中,例如作為巨區塊標頭中之語法元素。大體而言,巨區塊類型可用於識別巨區塊經分割之方式,及用於編碼巨區塊之分割區中之每一者的各別方法或模式,如上文所論述。用於編碼分割區之方法可不僅包括框內編碼及框間編碼,而且包括特定模式之框內編碼(例如,I_16×16、I_8×8、I_4×4)或框間編碼(例如,P_或B_16×16、16×8、8×16、8×8、8×4、4×8及4×4)。
如下文更詳細地針對P-區塊關於表1之實例及針對B-區塊關於表2之實例所論述,可根據表示具有64×64像素之巨區塊之MB64_type語法元素定義分割區層級0區塊。可針對任何MB[N]_type(其中,[N]指代具有N×N像素之區塊,其中N為可大於16之正整數)形成類似類型定義。當N×N區塊具有大小為(N/2)×(N/2)之四個分割區時(如圖4A上之最後行中所展示),該四個分割區中之每一者可接收其自身之類型定義(例如,MB[N/2]_type)。舉例而言,對於具有四個32×32像素分割區之64×64像素區塊(MB64_type之類型),視訊編碼器50可針對四個32×32像素分割區中之每一者引入MB32_type。此等巨區塊類型語法元素可輔助解碼器60解碼大的巨區塊及大的巨區塊之各種分割區,如本發明中所描述。每一N×N像素巨區塊(其中N大於16)大體對應於唯一類型定義。因此,編碼器可產生適合於特定巨區
塊之語法,且向解碼器指示經編碼單元(諸如,圖框、片,或巨區塊之序列)中的巨區塊之最大大小。以此方式,解碼器可接收將應用於經編碼單元之巨區塊的語法解碼器之指示。此亦確保解碼器可與現有編碼標準(諸如,H.264)回溯相容,因為編碼器可指示將應用於巨區塊之語法解碼器之類型(例如,標準的H.264或根據本發明之技術針對較大巨區塊之處理指定之彼等類型)。
大體而言,對於一對應類型,每一MB[N]_type定義可表示對應類型(例如,64×64)之區塊中之像素的數目、區塊之參考圖框(或參考清單)、區塊之分割區之數目、區塊之每一分割區之大小、每一分割區經編碼之方式(例如,框內或框間及特定模式),及當分割區經框間編碼時區塊之每一分割區之參考圖框(或參考清單)。對於16×16及更小之區塊,視訊編碼器50在一些實例中可使用習知類型定義作為區塊之類型(諸如,由H.264標準指定之類型)。在其他實例中,視訊編碼器50可對16×16及更小之區塊應用新定義之區塊類型。
視訊編碼器50可評估使用正常巨區塊大小及分割區之習知框間或框內編碼方法(諸如,由ITU H.264規定之方法)及由本發明描述的使用較大巨區塊及分割區之框間或框內編碼方法,且比較每一途徑之速率-失真特性以判定哪種方法產生最優速率-失真效能。視訊編碼器50接著可基於編碼途徑之最佳或可接受之速率-失真結果選擇最優編碼途徑(包括框間或框內模式、巨區塊大小(大的、較大或正
常),及分割),且將之應用於待編碼之區塊。作為一說明,視訊編碼器50可基於當視訊編碼器使用64×64巨區塊、32×32巨區塊或16×16巨區塊大小時所產生之速率-失真結果來選擇使用64×64巨區塊、32×32巨區塊或16×16巨區塊編碼特定圖框或片。
大體而言,可使用兩種不同途徑來設計使用大的巨區塊之框內模式。作為一實例,在框內編碼期間,可直接基於相鄰區塊對區塊執行空間預測。根據本發明之技術,視訊編碼器50可直接基於區塊之相鄰像素產生空間預測32×32區塊,且直接基於區塊之相鄰像素產生空間預測64×64區塊。與16×16框內區塊相比較,以此方式,可以較大規模執行空間預測。因此,此等技術在一些實例中可導致一些位元率節省,例如,每一圖框或片使用較小數目個區塊或分割區。
作為另一實例,視訊編碼器50可將四個N×N區塊分組在一起以產生(N*2)×(N*2)區塊,且接著編碼該(N*2)×(N*2)區塊。使用現有H.264框內編碼模式,視訊編碼器50可將四個框內編碼之區塊分組在一起,藉此形成大的框內編碼之巨區塊。舉例而言,可將四個框內編碼之區塊(每一者具有16×16之大小)分組在一起以形成大的32×32之框內編碼之區塊。視訊編碼器50可使用一不同編碼模式(例如,根據H.264之I_16×16、I_8×8或I_4×4)編碼四個對應N×N區塊中之每一者。以此方式,每一16×16區塊可由視訊編碼器50指派其自身之空間預測模式,(例如)以促進有利的編
碼結果。
視訊編碼器50可根據上文所論述之兩種不同方法中之任一者設計框內模式,且分析該等不同方法以判定哪種途徑提供更好之編碼結果。舉例而言,視訊編碼器50可應用不同之框內模式途徑,且將其置於單一候選集區中以允許其彼此競爭以達到最優速率-失真效能。使用不同途徑之間的速率-失真比較,視訊編碼器50可判定如何編碼每一分割區及/或巨區塊。詳言之,視訊編碼器50可選擇針對給定巨區塊產生最優速率-失真效能之編碼模式,且應用彼等編碼模式來編碼該巨區塊。
圖5為說明一大的巨區塊之各種分割區層級之階層視圖的概念圖。圖5亦表示如關於圖4A所描述的大的巨區塊之各種分割區層級之間的關係。如圖5之實例中所說明,一分割區層級之每一區塊可具有一對應編碼區塊型樣(CBP)值。該等CBP值形成描述一區塊或巨區塊之語法資訊之一部分。在一實例中,CBP值各自為指示在變換及量化運算之後在一給定區塊中是否存在任何非零變換係數值的一位元語法值。
在一些狀況下,一預測區塊可能在像素內容上非常接近於一待編碼之區塊,使得全部殘餘變換係數量化成零,在該狀況下,可能不需要傳輸用於該經編碼區塊之變換係數。相反地,可將用於區塊之CBP值設定為0以指示經編碼區塊不包括非零係數。或者,若區塊包括至少一非零係數,則可將CBP值設定為1。解碼器60可使用CBP值來識別
經編碼之殘餘區塊(亦即,具有一或多個非零變換係數)與未經編碼之區塊(亦即,不包括非零變換係數)。
根據本發明中所描述之技術中之一些,一編碼器可基於大的巨區塊(包括其分割區)是否具有至少一非零係數而按階層將CBP值指派至彼等巨區塊,且將CBP值指派至該等分割區以指示哪些分割區具有非零係數。大的巨區塊之階層式CBP可促進對大的巨區塊之處理以迅速地識別經編碼之大的巨區塊及未經編碼之大的巨區塊,且准許識別大的巨區塊之每一分割區層級的經編碼分割區以判定是否有必要使用殘餘資料解碼該等區塊。
在一實例中,層級零之64×64像素巨區塊可包括包含CBP64值(例如,一位元值)的語法資訊,該CBP64值用以指示完整64×64像素巨區塊(包括任何分割區)是否具有非零係數。在一實例中,視訊編碼器50將CBP64位元「設定」(例如)至值「1」,以表示64×64像素巨區塊包括至少一非零係數。因此,當將CBP64值設定(例如)至值「1」時,64×64像素巨區塊在其中某處包括至少一非零係數。在另一實例中,視訊編碼器50將CBP64值「清除」(例如)至值「0」,以表示64×64像素巨區塊具有全零係數。因此,當將CBP64值清除(例如)至值「0」時,指示64×64像素巨區塊為具有全零係數。具有為「0」之CBP64值之巨區塊大體不需要在位元流中傳輸殘餘資料,而具有為「1」之CBP64值之巨區塊大體需要在位元流中傳輸殘餘資料以用於解碼該等巨區塊。
具有全零係數之64×64像素巨區塊不需要包括用於其分割區或子區塊之CBP值。亦即,因為64×64像素巨區塊具有全零係數,所以該等分割區中之每一者亦必定具有全零係數。相反地,包括至少一非零係數之64×64像素巨區塊可進一步包括用於下一分割區層級之分割區之CBP值。舉例而言,具有值1之CBP64可包括用於64×64區塊之每一32×32分割區的呈一位元值CBP32之形式的額外語法資訊。亦即,在一實例中,64×64像素巨區塊之每一32×32像素分割區(諸如,圖5中之層級1之四個分割區區塊)經指派一CBP32值作為64×64像素巨區塊之語法資訊之一部分。如同CBP64值一樣,每一CBP32值可包含一位元,該位元在對應32×32像素區塊具有至少一非零係數時經設定至值1,且在對應32×32像素區塊具有全零係數時經清除至值0。編碼器可進一步在包含複數個巨區塊之經編碼單元(諸如,圖框、片或序列)的語法中指示經編碼單元中之巨區塊的最大大小,以向解碼器指示如何解譯每一巨區塊之語法資訊(例如,將哪個語法解碼器用於處理經編碼單元中之巨區塊)。
以此方式,具有全零係數之64×64像素巨區塊可使用一單一位元來表示巨區塊具有全零係數之事實,而具有至少一非零係數之64×64像素巨區塊可包括包含至少五個位元之CBP語法資訊:用於表示64×64像素巨區塊具有一非零係數之第一位元,及各自表示巨區塊之四個32×32像素分割區中之一對應者是否包括至少一非零係數的四個額外位
元。在一些實例中,當四個額外位元中之前三者為零時,可不包括第四額外位元,解碼器可將其解譯為最後分割區為一。亦即,當前三個位元為零時且當表示較高層級階層之位元具有值1時,編碼器可判定最後位元具有值1。舉例而言,可將CBP64首碼值「10001」縮短至「1000」,因為第一位元指示四個分割區中之至少一者具有非零係數,且接著的三個零指示前三個分割區具有全零係數。因此,解碼器可(例如)自位元串「1000」推論:最後分割區包括一非零係數,而不必明確用位元向解碼器通知該事實。亦即,解碼器可將CBP64首碼「1000」解譯為「10001」。
同樣地,當32×32像素分割區包括至少一非零係數時,可將一位元CBP32設定至值「1」,且當全部係數具有零值時,將一位元CBP32設定至值「0」。若32×32像素分割區具有為「1」之CBP值,則彼32×32分割區的在下一個分割區層級之分割區可經指派CBP值以指示各別分割區是否包括任何非零係數。因此,可在每一分割區層級處以階層式方式指派CBP值,直至不存在其他分割區層級或不存在包括非零係數之分割區為止。
以上述方式,編碼器及/或解碼器可利用階層式CBP值來表示大的巨區塊(例如,64×64或32×32)及其分割區是否包括至少一非零係數或全零係數。因此,一編碼器可編碼一數位視訊流之一經編碼單元的一大的巨區塊,以使得該大的巨區塊包含大於16×16像素;產生識別該區塊之大小之區塊類型語法資訊;產生用於該區塊之CBP值,以使得該
CBP值識別該區塊是否包括至少一非零係數;且在可適用時產生用於該區塊之各種分割區層級之額外CBP值。
在一實例中,階層式CBP值可包含位元陣列(例如,位元向量),該位元陣列之長度視首碼之值而定。該陣列可進一步表示CBP值之階層(諸如,樹結構),如圖5中所展示。該陣列可以寬度優先(breadth-first)方式表示樹之節點,其中每一節點對應於陣列中之一位元。在一實例中,當樹之一節點具有經設定至「1」之位元時,該節點具有四個分枝(對應於四個分割區),且當位元經清除至「0」時,該節點不具有分枝。
在此實例中,為了識別自一特定節點X分枝之節點之值,一編碼器及/或一解碼器可藉由計算下式來判定表示自節點x分枝之節點的自節點Y開始的四個連續位元:
其中tree[]對應於具有為0之開始索引之位元陣列,i為至陣列tree[]中之整數索引,x對應於tree[]中之節點X之索引,且y對應於為節點X之第一分枝節點之節點Y的索引。三個後續陣列位置(亦即,y+1、y+2,及y+3)對應於節點X之其他分枝節點。
一編碼器(諸如,視訊編碼器50(圖2))可使用現有方法(諸如,由ITU H.264規定的用於設定16×16區塊之CBP值之方法)指派具有至少一非零係數之32×32像素分割區之16×16像素分割區的CBP值,作為64×64像素巨區塊之語法
之一部分。編碼器亦可基於分割區之大小、對應於分割區之區塊之類型(例如,色度區塊或明度區塊),或分割區之其他特性選擇具有至少一非零係數之32×32像素分割區之分割區的CBP值。參看圖8及圖9進一步詳細論述用於設定32×32像素分割區之分割區之CBP值的實例方法。
圖6至圖9為說明根據本發明之技術的用於設定各種編碼區塊型樣(CBP)值之實例方法的流程圖。雖然圖6至圖9之實例方法係關於64×64像素巨區塊進行論述,但應理解,類似技術可適用於指派其他大小之巨區塊之階層式CBP值。雖然圖6至圖9之實例係關於視訊編碼器50(圖2)進行論述,但應理解,其他編碼器可使用類似方法來將CBP值指派至大於標準之巨區塊。同樣地,解碼器可利用類似的、但互逆之方法來解譯巨區塊之特定CBP值之意義。舉例而言,若在位元流中所接收之框間編碼之巨區塊具有為「0」之CBP值,則解碼器可不接收該巨區塊之殘餘資料,且可僅產生一由運動向量識別之預測區塊作為經解碼之巨區塊,或由關於該巨區塊之分割區之運動向量識別的預測區塊群組。
圖6為說明一用於設定一實例64×64像素巨區塊之CBP64值之實例方法的流程圖。可對大於64×64之巨區塊應用類似方法。最初,視訊編碼器50接收64×64像素巨區塊(100)。運動估計單元36及運動補償單元35可接著分別產生用於編碼該巨區塊之一或多個運動向量及一或多個殘餘區塊。變換單元38之輸出大體上包含用於一框內編碼之區塊
或一框間編碼之區塊之一殘餘區塊的殘餘變換係數值陣列,該陣列由量化單元40量化以產生一系列經量化之變換係數。
熵編碼單元46可提供熵編碼及與熵編碼分離之其他編碼功能。舉例而言,除CAVLC、CABAC或其他熵編碼功能之外,視訊編碼器50之熵編碼單元46或另一單元可判定用於大的巨區塊及分割區之CBP值。詳言之,熵編碼單元46可藉由首先判定一64×64像素巨區塊是否具有至少一非零的、經量化之變換係數來判定該巨區塊之CBP64值(102)。當熵編碼單元46判定所有變換係數具有零值時(102之「否」分枝),熵編碼單元46清除64×64巨區塊之CBP64值(例如,將用於CBP64值之位元重設至「0」)(104)。當熵編碼單元46識別出64×64巨區塊之至少一非零係數時(102之「是」分枝),熵編碼單元46設定CBP64值(例如,將用於CBP64值之位元設定至「1」)(106)。
當巨區塊具有全零係數時,熵編碼單元46不需要建立用於巨區塊之分割區之任何額外CBP值,此可減少耗用。然而,在一實例中,當巨區塊具有至少一非零係數時,熵編碼單元46進行至判定用於64×64像素巨區塊之四個32×32像素分割區中之每一者的CBP值(108)。熵編碼單元46可將參看圖7所描述之方法利用四次,每次針對該四個分割區中之一者,以建立四個CBP32值,每一CBP32值對應於64×64巨區塊之四個32×32像素分割區中之一不同者。以此方式,當巨區塊具有全零係數時,熵編碼單元46可傳輸具有
值「0」之單一位元以指示巨區塊具有全零係數,而當巨區塊具有至少一非零係數時,熵編碼單元46可傳輸五個位元:用於巨區塊之一位元,及各自對應於巨區塊之四個分割區中之一者的四個位元。另外,當分割區包括至少一非零係數時,可在經編碼之位元流中發送用於分割區之殘餘資料。如同上文所論述之CBP64之實例一樣,當四個額外位元中之前三者為零時,第四額外位元可能不必要,因為解碼器可判定其具有值1。因此,在一些實例中,編碼器可僅發送三個0(亦即,「000」)而不是三個0及一個1(亦即,「0001」)。
圖7為說明一用於設定一64×64像素巨區塊之一32×32像素分割區之一CBP32值的實例方法的流程圖。最初,對於下一個分割區層級,熵編碼單元46接收巨區塊之32×32像素分割區(例如,參看圖6引用之四個分割區中之一者)(110)。熵編碼單元46接著藉由首先判定32×32像素分割區是否包括至少一非零係數來判定用於該分割區之CBP32值(112)。當熵編碼單元46判定用於分割區之所有係數具有零值時(112之「否」分枝),熵編碼單元46清除CBP32值(例如,將用於CBP32值之位元重設至「0」)(114)。當熵編碼單元46識別出分割區之至少一非零係數時(112之「是」分枝),熵編碼單元46設定CBP32值(例如,將用於CBP32值之位元設定至值「1」)(116)。
在一實例中,當分割區具有全零係數時,熵編碼單元46不會建立用於該分割區之任何額外CBP值。然而,當分割
區包括至少一非零係數時,熵編碼單元46判定用於巨區塊之32×32像素分割區之四個16×16像素分割區中的每一者之CBP值。熵編碼單元46可利用參看圖8所描述之方法來建立各自對應於四個16×16像素分割區中之一者之四個CBP16值。
以此方式,當分割區具有全零係數時,熵編碼單元46可設定一具有值「0」之位元以指示分割區具有全零係數,而當分割區具有至少一非零係數時,熵編碼單元46可包括五個位元:用於分割區之一位元,及各自對應於巨區塊之分割區之四個子分割區中的一不同者之四個位元。因此,當前一分割區層級中之分割區具有至少一非零變換係數值時,每一額外分割區層級可呈現四個額外CBP位元。作為一實例,若64×64巨區塊具有為1之CBP值,且四個32×32分割區具有分別為1、0、1及1之CBP值,則直至彼點之總的CBP值為11011。可添加用於32×32分割區之額外分割區(例如,16×16分割區)之額外CBP位元。
圖8為說明一用於設定64×64像素巨區塊之一32×32像素分割區之一16×16像素分割區的CBP16值之實例方法的流程圖。對於特定16×16像素分割區,視訊編碼器50可利用如由視訊編碼標準(諸如,ITU H.264)規定之CBP值,如下文所論述。對於其他16×16分割區,視訊編碼器50可利用根據本發明之其他技術之CBP值。最初,如圖8中所展示,熵編碼單元46接收16×16分割區(例如,參看圖7所描述之32×32分割區之16×16分割區中之一者)(120)。
熵編碼單元46可接著判定16×16像素分割區之運動分割區(motion partition)是否大於8×8像素區塊(122)。大體而言,一運動分割區描述一其中運動較為集中之分割區。舉例而言,可將僅具有一運動向量之16×16像素分割區視為一16×16運動分割區。類似地,對於具有各自具有一運動向量之兩個8×16分割區之16×16像素分割區,可將兩個8×16分割區中之每一者視為一8×16運動分割區。在任何狀況下,在圖8之實例中,當運動分割區不大於8×8像素區塊時(122之「否」分枝),熵編碼單元46以與由ITU H.264規定之方式相同之方式將CBP值指派至16×16像素分割區(124)。
當存在16×16像素分割區之大於8×8像素區塊之運動分割區時(122之「是」分枝),熵編碼單元46使用步驟125之後的步驟建構及發送lumacbp16值(125)。在圖8之實例中,為了建構lumacbp16值,熵編碼單元46判定分割區之16×16像素明度分量是否具有至少一非零係數(126)。在圖8之實例中,當16×16像素明度分量具有全零係數時(126之「否」分枝),熵編碼單元46指派根據ITU H.264之編碼區塊型樣色度部分之CBP16值(128)。
當熵編碼單元46判定16×16像素明度分量具有至少一非零係數時(126之「是」分枝),熵編碼單元46判定16×16像素分割區之變換大小旗標(130)。變換大小旗標大體上指示對於該分割區使用變換。藉由變換大小旗標表示之變換可包括4×4變換、8×8變換、16×16變換、16×8變換或8×16變
換中之一者。變換大小旗標可包含一整數值,其對應於一識別可能變換中之一者的列舉型值。熵編碼單元46可接著判定變換大小旗標是否表示變換大小大於或等於16×8(或8×16)(132)。
在圖8之實例中,當變換大小旗標不指示變換大小大於或等於16×8(或8×16)時(132之「否」分枝),熵編碼單元46指派一值至根據ITU H.264之CBP16(134)。當變換大小旗標指示變換大小大於或等於16×8(或8×16)時(132之「是」分枝),熵編碼單元46接著判定16×16像素分割區之類型是否為兩個16×8像素分割區或兩個8×16像素分割區(136)。
在圖8之實例中,當16×16像素分割區之類型不是兩個16×8像素分割區且不是兩個8×16像素分割區時(138之「否」分枝),熵編碼單元46指派根據由ITU H.264規定之色度編碼區塊分割區之CBP16值(140)。當16×16像素分割區之類型為兩個16×8或兩個8×16像素分割區時(138之「是」分枝),熵編碼單元46亦使用由ITU H.264規定之色度編碼區塊型樣,但另外向CBP16值指派之兩位元luma16×8_CBP值(例如,根據參看圖9所描述之方法)(142)。
圖9為說明一用於判定兩位元luma16×8_CBP值之實例方法的流程圖。熵編碼單元46接收經進一步分割成兩個16×8或兩個8×16像素分割區之16×16像素分割區(150)。熵編碼單元46大體根據16×16像素分割區之一對應子區塊是否包括至少一非零係數來指派luma16×8_CBP之每一位元。
熵編碼單元46判定16×16像素分割區之第一子區塊是否具有至少一非零係數,以判定第一子區塊是否具有至少一非零係數(152)。當第一子區塊具有全零係數時(152之「否」分枝),熵編碼單元46清除luma16×8_CBP之第一位元(例如,將luma16×8_CBP[0]指派為值「0」)(154)。當第一子區塊具有至少一非零係數時(152之「是」分枝),熵編碼單元46設定luma16×8_CBP之第一位元(例如,將luma16×8_CBP[0]指派為值「1」)(156)。
熵編碼單元46亦判定16×16像素分割區之第二子分割區是否具有至少一非零係數(158)。當第二子分割區具有全零係數時(158之「否」分枝),熵編碼單元46清除luma16×8_CBP之第二位元(例如,將luma16×8_CBP[1]指派為值「0」)(160)。當第二子區塊具有至少一非零係數時(158之「是」分枝),熵編碼單元46接著設定luma16×8_CBP之第二位元(例如,將luma16×8_CBP[1]指派為值「1」)(162)。
以下偽碼提供參看圖8及圖9所描述之方法之一實例實施:
在該偽碼中,「lumacbp16」對應於附加一指示整個16×16明度區塊是否具有非零係數之一位元旗標之運算。當「lumacbp16」等於1時,存在至少一非零係數。函式「Transform_size_flag」指代具有一指示所使用之變換(例如,4×4變換、8×8變換、16×16變換(用於等於或大於
16×16之運動分割區)、16×8變換(用於P_16×8)或8×16變換(用於P_8×16)中之一者)之結果的所執行之計算。TRANSFORM_SIZE_GREATER_THAN_16×8為用於指示變換大小大於或等於16×8或8×16之列舉型值(例如,「2」)。將transform_size_flag之結果併入64×64像素巨區塊之語法資訊中。
「Luma16×8_cbp」指代一產生兩位元數的計算,其中每一位元指示兩個分割區P_16×8或P_8×16中之一者是否具有非零係數。將由luma16×8_cbp產生之兩位元數併入64×64像素巨區塊之語法中。可以與如由ITU H.264規定之編碼區塊型樣色度(CodedBlockPatternChroma)相同之方式計算值「chroma_cbp」。將所計算之chroma_cbp值併入64×64像素巨區塊之語法資訊中。可以與ITU H.264中所定義之CBP相同之方式計算函式h264_cbp。將所計算之H264_cbp值併入64×64像素巨區塊之語法資訊中。
大體而言,根據圖6至圖9之方法可包括用視訊編碼器編碼具有大於16×16像素之大小之視訊區塊,產生指示該區塊之大小之區塊類型語法資訊,及產生一用於該經編碼區塊之編碼區塊型樣值,其中該編碼區塊型樣值指示該經編碼區塊是否包括至少一非零係數。
圖10為說明一64×64像素巨區塊之一實例排列的方塊圖。圖10之巨區塊包含在圖10中經標記為A、B、C及D之四個32×32分割區。如參看圖4A所論述,在一實例中,可以以下四種方式中之任一者分割一區塊:不具有子分割區
之整個區塊(64×64)、兩個相等大小之水平分割區(32×64及32×64)、兩個相等大小之垂直分割區(64×32及64×32),或四個相等大小之正方形分割區(32×32、32×32、32×32及32×32)。
在圖10之實例中,完整的區塊分割區包含區塊A、B、C及D中之每一者;兩個相等大小之水平分割區中之一第一者包含A及B,而兩個相等大小之水平分割區中之一第二者包含C及D;兩個相等大小之垂直分割區中之一第一者包含A及C,而兩個相等大小之垂直分割區中之一第二者包含B及D;且四個相等大小之正方形分割區對應於A、B、C及D中之每一者中之一者。類似分割區方案可用於任何大小之區塊,例如,大於64×64像素、32×32像素、16×16像素、8×8像素,或其他大小之視訊區塊。
當對一視訊區塊進行框內編碼時,各種方法可用於分割該視訊區塊。此外,可對分割區中之每一者進行不同地框內編碼(亦即,用不同模式,諸如不同之框內模式)。舉例而言,可將32×32分割區(諸如,圖10之分割區A)進一步分割成大小為16×16像素之四個相等大小之區塊。作為一實例,ITU H.264描述用於對16×16巨區塊進行框內編碼之三種不同方法,包括在16×16層級之框內編碼、在8×8層級之框內編碼,及在4×4層級之框內編碼。然而,ITU H.264規定使用相同框內編碼模式編碼16×16巨區塊之每一分割區。因此,根據ITU H.264,若16×16巨區塊之一子區塊要在4×4層級進行框內編碼,則16×16巨區塊之每個子區塊都
必須在4×4層級進行框內編碼。
另一方面,根據本發明之技術組態之編碼器可應用一混合模式途徑。對於框內編碼,例如,一大的巨區塊可具有用不同編碼模式編碼之各種分割區。作為一說明,(例如,如圖4B中所展示)在32×32分割區中,一16×16分割區可在4×4像素層級進行框內編碼,而其他16×16分割區可在8×8像素層級進行框內編碼,且一16×16分割區可在16×16層級進行框內編碼。
當要將一視訊區塊分割成用於框內編碼之四個相等大小之子區塊時,待進行框內編碼之第一區塊可為左上部區塊,隨後是緊接在第一區塊右方之區塊,隨後是緊接在第一區塊下方之區塊,且最後是第一區塊之右下方之區塊。參考圖10之實例區塊,框內編碼之次序將自A進行至B至C且最後至D。雖然圖10描繪一64×64像素巨區塊,但不同大小之經分割區塊的框內編碼可遵循此相同排序。
當一視訊區塊將作為P-圖框或P-片之一部分進行框間編碼時,可將該區塊分割成四個上文所描述之分割區中之任一者,該四個分割區中之每一者可經單獨編碼。亦即,可根據一不同編碼模式(框內編碼(I-編碼)或參考單一參考圖框/片/清單之框間編碼(P-編碼))編碼該區塊之每一分割區。下文之表1概述用於大小為N×N之區塊之每一潛在可能分割區的框間編碼資訊。在表1引用「M」之位置,M=N/2。在下文之表1中,L0指代「清單0」(亦即,參考圖框/片/清單)。當決定如何最優地分割N×N區塊時,一編碼
器(諸如,視訊編碼器50)可基於拉格朗日乘數(Lagrange multiplier)分析每一MB_N_type(亦即,每一分割區類型)之速率-失真成本資訊(如參看圖11更詳細論述),選擇最低成本者作為最優分割方法。
在上述表1中,「MB_N_type」欄之元素為N×N區塊之每一分割區類型之關鍵。「MB_N_type之名稱」欄之元素為N×N區塊之不同分割類型之名稱。名稱中之「P」指代使用P-編碼(亦即,參考單一圖框/片/清單)框間編碼區塊。名稱中之「L0」指代用作P編碼之參考圖框或片之參考圖框/片/清單(例如,「清單0」)。「N×N」指代分割區為完整的區塊,「N×M」指代分割區為寬度N及高度M之兩個分割區,「M×N」指代分割區為寬度M及高度N之兩個分割區,「M×M」指代分割區為各自具有寬度M及高度M之四個相等大小之分割區。
在表1中,PN_Skip暗示「跳過」該區塊,(例如)因為由編碼產生之區塊具有全零係數。「預測模式部分1」欄之元素指代用於分割區之子分割區1之參考圖框/片/清單,而
「預測模式部分2」欄之元素指代用於分割區之子分割區2之參考圖框/片/清單。因為P_L0_N×N僅具有單一分割區,所以「預測模式部分2」之對應元素為「N/A」,因為不存在第二子分割區。對於PN_M×M,存在可經單獨編碼之四個分割區區塊。因此,用於PN_M×M之兩個預測模式欄包括「N/A」。如同P_L0_N×N一樣,PN_Skip僅具有單一部分,因此「預測模式部分2」欄之對應元素為「N/A」。
下文之表2包括類似於表1之彼等欄及元素之欄及元素。然而,表2對應於使用雙向預測(B-編碼)的框間編碼之區塊之各種編碼模式。因此,可藉由第一圖框/片/清單(L0)與第二圖框/片/清單(L1)中之任一者或兩者來編碼每一分割區。「BiPred」指代自L0與L1兩者預測之對應分割區。在表2中,欄標籤及值之意義類似於表1中所使用之彼等欄標籤及值之意義。
圖11為說明一用於計算N×N像素視訊區塊之最佳分割及編碼方法之實例方法的流程圖。大體而言,圖11之方法包含計算如應用於(例如)圖4A中所展示之每一不同分割方法之每一不同編碼方法(例如,各種空間或時間模式)的成本,及選擇對於N×N像素視訊區塊而言具有最優速率-失真成本之編碼模式與分割方法之組合。大體上可使用拉格朗日乘數與速率及失真值計算成本,以使得速率-失真成本=失真+λ*速率,其中失真表示原始區塊與經編碼區塊之間的誤差,且速率表示支援該編碼模式所必要之位元率。
在一些狀況下,可在巨區塊、分割區、片或圖框層級上判定速率及失真。
最初,視訊編碼器50接收待編碼之N×N視訊區塊(170)。舉例而言,視訊編碼器50可接收64×64的大的巨區塊或其分割區(諸如,32×32或16×16分割區),視訊編碼器50將針對該巨區塊或其分割區選擇編碼及分割方法。視訊編碼器50接著計算使用多種不同編碼模式(諸如,不同之框內編碼模式及框間編碼模式)編碼N×N區塊之成本(172)。為了計算在空間上編碼N×N區塊之成本,視訊編碼器50可計算失真及用一給定編碼模式編碼N×N區塊所需之位元率,且接著計算成本=失真(Mode,N×N)+λ*速率(Mode,N×N)。視訊編碼器50可使用指定編碼技術編碼巨區塊,且判定所得位元率成本及失真。可基於經編碼之巨區塊中之像素與原始巨區塊中之像素之間的像素差異(例如,基於絕對差總和(SAD)量度、平方差總和(SSD)量度或其他像素差異量度)來判定失真。
視訊編碼器50可接著將N×N區塊分割成兩個相等大小之非重疊的水平N×(N/2)分割區。視訊編碼器50可計算使用各種編碼模式編碼該等分割區中之每一者之成本(176)。舉例而言,為了計算編碼第一N×(N/2)分割區之成本,視訊編碼器50可計算編碼第一N×(N/2)分割區之失真及位元率,且接著計算成本=失真(Mode,FIRST PARTITION,N×(N/2))+λ*速率(Mode,FIRST PARTITION,N×(N/2))。
視訊編碼器50可接著將N×N區塊分割成兩個相等大小之
非重疊的垂直(N/2)×N分割區。視訊編碼器50可計算使用各種編碼模式編碼該等分割區中之每一者之成本(178)。舉例而言,為了計算編碼該等(N/2)×N分割區中之第一者之成本,視訊編碼器50可計算編碼第一(N/2)×N分割區之失真及位元率,且接著計算成本=失真(Mode,FIRST PARTITION,(N/2)×N)+λ*速率(Mode,FIRST PARTITION,(N/2)×N)。對於編碼該等(N/2)×N巨區塊分割區中之第二者之成本,視訊編碼器50可執行一類似計算。
視訊編碼器50可接著將N×N區塊分割成四個相等大小之非重疊的(N/2)×(N/2)分割區。視訊編碼器50可計算使用各種編碼模式編碼該等分割區之成本(180)。為了計算編碼該等(N/2)×(N/2)分割區之成本,視訊編碼器50可首先計算編碼左上部(N/2)×(N/2)分割區之失真及位元率,且按照成本(Mode,UPPER-LEFT,(N/2)×(N/2))=失真(Mode,UPPER-LEFT,(N/2)×(N/2))+λ*速率(Mode,UPPER-LEFT,(N/2)×(N/2))得到其成本。視訊編碼器50可按以下次序類似地計算每一(N/2)×(N/2)區塊之成本:(1)左上部分割區,(2)右上部分割區,(3)左下部分割區,(4)右下部分割區。視訊編碼器50在一些實例中可對於該等(N/2)×(N/2)分割區中之一或多者遞歸呼叫此方法以計算進一步分割及單獨編碼該等(N/2)×(N/2)分割區中之每一者(例如,作為(N/2)×(N/4)分割區、(N/4)×(N/2)分割區,及(N/4)×(N/4)分割區)之成本。
接著,視訊編碼器50可判定分割與編碼模式之哪個組合產生根據速率及失真的最優(亦即,最低)成本(182)。舉例
而言,視訊編碼器50可比較編碼兩個鄰近(N/2)×(N/2)分割區之最優成本與編碼包含該兩個鄰近(N/2)×(N/2)分割區之N×(N/2)分割區之最優成本。當編碼該兩個鄰近(N/2)×(N/2)分割區之累計成本超過編碼包含該兩個鄰近(N/2)×(N/2)分割區之N×(N/2)分割區之成本時,視訊編碼器50可選擇編碼N×(N/2)分割區之較低成本選項。大體而言,視訊編碼器50可針對每一分割區應用分割方法與編碼模式之每個組合以識別一最低成本分割及編碼方法。在一些狀況下,視訊編碼器50可經組態以評估分割與編碼模式組合之一更有限集合。
在判定最優(例如,最低成本)之分割及編碼方法後,視訊編碼器50可使用該藉由最優-成本判定的方法編碼N×N巨區塊(184)。在一些狀況下,結果可為一大的巨區塊具有使用不同編碼模式編碼之分割區。對大的巨區塊應用混合模式編碼以使得對大的巨區塊中之不同分割區應用不同編碼模式之能力可准許以減少之成本編碼巨區塊。
在一些實例中,用混合模式編碼之方法可包括用視訊編碼器50接收一具有大於16×16像素之大小之視訊區塊,將該區塊分割成分割區,用一第一編碼模式編碼該等分割區中之一者,用一不同於該第一編碼模式之第二編碼模式編碼該等分割區中之另一者,及產生指示該區塊之大小且識別該等分割區及用於編碼該等分割區之該等編碼模式的區塊類型語法資訊。
圖12為說明一具有各種分割區之實例64×64像素的大的
巨區塊及用於每一分割區之不同選定編碼方法的方塊圖。在圖12之實例中,每一分割區經標記有「I」、「P」或「B」中之一者。經標記「I」之分割區為編碼器已(例如)基於速率-失真評估而選擇利用框內編碼之分割區。經標記「P」之分割區為編碼器已(例如)基於速率-失真評估而選擇利用單一參考框間編碼之分割區。經標記「B」之分割區為編碼器已(例如)基於速率-失真評估而選擇利用雙向預測框間編碼之分割區。在圖12之實例中,同一大的巨區塊內之不同分割區具有不同之編碼模式,包括不同分割區或子分割區大小及不同之框內編碼模式或框間編碼模式。
大的巨區塊為由巨區塊語法元素識別之巨區塊,該巨區塊語法元素識別用於諸如H.264編碼標準之擴展之給定編碼標準的巨區塊類型(例如,mb64_type或mb32_type)。巨區塊類型語法元素可作為巨區塊標頭語法元素提供於經編碼之視訊位元流中。圖12中所說明的I-編碼、P-編碼及B-編碼之分割區可根據不同之編碼模式(例如,具有各種區塊大小之框內預測模式或框間預測模式,包括用於大小大於16×16之大分割區之大區塊大小模式或用於大小小於或等於16×16之分割區之H.264模式)來編碼。
在一實例中,一編碼器(諸如,視訊編碼器50)可使用參看圖11所描述之實例方法來選擇用於圖12之實例性的大的巨區塊之不同分割區及子分割區之各種編碼模式及分割區大小。舉例而言,視訊編碼器50可接收64×64巨區塊,執行圖11之方法,且因此產生具有各種分割區大小及編碼模
式之圖12之實例巨區塊。然而,應理解,分割及編碼模式之選擇可由應用圖11之方法而產生,例如,基於巨區塊所選自之圖框之類型,且基於該方法所執行於的輸入之巨區塊。舉例而言,當圖框包含I-圖框時,每一分割區將經框內編碼。作為另一實例,當圖框包含P-圖框時,每一分割區可經框內編碼或基於單一參考圖框(亦即,無雙向預測)而經框間編碼。
出於說明之目的,假定圖12之實例巨區塊係選自一雙向預測圖框(B-圖框)。在其他實例中,在巨區塊係選自P-圖框之情況下,視訊編碼器50將不使用雙向預測來編碼分割區。同樣地,在巨區塊係選自I-圖框之情況下,視訊編碼器50將不使用框間編碼(P-編碼或B-編碼)編碼分割區。然而,在任何狀況下,視訊編碼器50可針對巨區塊之不同部分選擇各種分割區大小,且選擇使用任何可用之編碼模式編碼每一分割區。
在圖12之實例中,假定基於速率-失真分析之分割區與模式選擇之組合產生一32×32經B-編碼之分割區、一32×32經P-編碼之分割區、一16×32經I-編碼之分割區、一32×16經B-編碼之分割區、一16×16經P編碼之分割區、一16×8經P-編碼之分割區、一8×16經P-編碼之分割區、一8×8經P-編碼之分割區、一8×8經B-編碼之分割區、一8×8經I-編碼之分割區,及具有各種編碼模式之眾多較小子分割區。圖12之實例係出於概念性說明一大的巨區塊中之分割區之混合模式編碼之目的而提供,且不應必定被視為表示特定的
大的64×64巨區塊之實際編碼結果。
圖13為說明一用於判定用於編碼一視訊序列之一圖框或片之巨區塊的最佳大小的實例方法的流程圖。雖然關於選擇圖框之巨區塊之最佳大小進行描述,但類似於參看圖13所描述之彼方法之方法可用於選擇一片之巨區塊之最佳大小。同樣地,雖然圖13之方法係關於視訊編碼器50進行描述,但應理解,任何編碼器可利用圖13之實例方法來判定編碼一視訊序列之一圖框之巨區塊的最佳(例如,最低成本)大小。大體而言,圖13之方法包含將一編碼遍次執行三次,針對16×16巨區塊、32×32巨區塊及64×64巨區塊中之每一者各執行一次,且一視訊編碼器可計算每一遍次之速率-失真量度以判定哪個巨區塊大小提供最優速率-失真。
視訊編碼器50可首先在第一編碼遍次期間使用16×16像素巨區塊編碼圖框(例如,使用函式編碼(圖框,MB16_type))(190),以產生經編碼之圖框F16。在第一編碼遍次之後,視訊編碼器50可基於16×16像素巨區塊之使用而分別計算位元率及失真作為R16及D16(192)。視訊編碼器50可接著使用拉格朗日乘數C16=D16+λ*R16計算使用16×16像素巨區塊之成本C16之形式的速率-失真量度(194)。可(例如)根據H.264標準選擇用於16×16像素巨區塊之編碼模式及分割區大小。
視訊編碼器50可接著在第二編碼遍次期間使用32×32像素巨區塊編碼圖框(例如,使用函式encode(frame,
MB32_type))(196),以產生經編碼之圖框F32。在第二編碼編次之後,視訊編碼器50可基於32×32像素巨區塊之使用而分別計算位元率及失真作為R32及D32(198)。視訊編碼器50可接著使用拉格朗日乘數C32=D32+λ*R32計算使用32×32像素巨區塊之成本C32之形式的速率-失真量度(200)。可(例如)使用如參考圖11及圖12所描述之速率及失真評估技術來選擇用於32×32像素巨區塊之編碼模式及分割區大小。
視訊編碼器50可接著在第三編碼遍次期間使用64×64像素巨區塊編碼圖框(例如,使用函式encode(frame,MB64_type))(202),以產生經編碼之圖框F64。在第三編碼遍次之後,視訊編碼器50可基於64×64像素巨區塊之使用分別計算位元率及失真作為R64及D64(204)。視訊編碼器50可接著使用拉格朗日乘數C64=D64+λ*R64計算使用64×64像素巨區塊之成本C64之形式的速率-失真量度(206)。可(例如)使用如參考圖11及圖12所描述之速率及失真評估技術來選擇用於64×64像素巨區塊之編碼模式及分割區大小。
接著,視訊編碼器50可判定對於該圖框而言量度C16、C32及C64中之哪一者最低(208)。視訊編碼器50可選擇使用用產生最低成本之巨區塊大小編碼之圖框(210)。因此,例如,當C16最低時,視訊編碼器50可在位元流中轉遞用16×16巨區塊編碼之圖框F16作為經編碼之圖框以用於儲存或傳輸至一解碼器。當C32最低時,視訊編碼器50可轉遞用32×32巨區塊編碼之F32。當C64最低時,視訊編碼器50可
轉遞用64×64巨區塊編碼之F64。
在其他實例中,視訊編碼器50可以任何次序執行編碼遍次。舉例而言,視訊編碼器50可自64×64巨區塊編碼遍次開始,其次執行32×32巨區塊編碼遍次,且以16×16巨區塊編碼遍次結束。又,類似方法可用於編碼包含複數個巨區塊之其他經編碼單元(諸如,具有不同大小之巨區塊之片)。舉例而言,視訊編碼器50可應用類似於圖13之彼方法之方法來選擇用於編碼一圖框之片(而不是完整圖框)之最佳巨區塊大小。
視訊編碼器50亦可在一特定經編碼單元(例如,一圖框或一片)之標頭中傳輸該經編碼單元之巨區塊的大小之識別符以供解碼器使用。根據圖13之方法,一方法可包括用一數位視訊編碼器接收一數位視訊流之一經編碼單元,計算一對應於使用各自包含16×16像素之第一複數個區塊編碼該經編碼單元的速率-失真之第一速率-失真量度,計算一對應於使用各自包含大於16×16像素之第二複數個區塊編碼該經編碼單元的速率-失真之第二速率-失真量度,及判定對於該經編碼單元而言該第一速率-失真量度及該第二速率-失真量度中之哪一者最低。該方法可進一步包括:當判定第一速率-失真量度最低時,使用第一複數個區塊編碼該經編碼單元,且當判定第二速率-失真量度最低時,使用第二複數個區塊編碼該經編碼單元。
圖14為說明包括視訊編碼器/解碼器CODEC 234之實例無線通信器件230之方塊圖,視訊編碼器/解碼器CODEC
234可使用本發明中所描述之多種技術中之任一者、使用大於標準之巨區塊編碼及/或解碼數位視訊資料。在圖14之實例中,無線通信器件230包括攝影機232、視訊編碼器-解碼器(CODEC)234、調變器/解調變器(數據機)236、收發器238、處理器240、使用者介面242、記憶體244、資料儲存器件246、天線248,及匯流排250。
圖14中所說明的包括於無線通信器件230中之組件可藉由硬體、軟體及/或韌體之任何合適之組合來實現。在所說明之實例中,該等組件經描繪為單獨單元。然而,在其他實例中,該等各種組件可整合於共同硬體及/或軟體內之組合單元中。作為一實例,記憶體244可儲存可由處理器240執行之對應於視訊CODEC 234之各種功能的指令。作為另一實例,攝影機232可包括執行視訊CODEC 234之功能(例如,編碼及/或解碼視訊資料)之視訊CODEC。
在一實例中,攝影機232可對應於視訊源18(圖1)。大體而言,攝影機232可記錄由感測器陣列捕獲之視訊資料以產生數位視訊資料。攝影機232可經由匯流排250將原始的、所記錄之數位視訊資料發送至視訊CODEC 234以用於編碼且接著發送至資料儲存器件246以用於資料儲存。處理器240可經由匯流排250將關於記錄視訊之模式、記錄視訊之圖框率、結束記錄或改變圖框率模式之時間、將視訊資料發送至視訊CODEC 234之時間或指示其他模式或參數之信號的信號發送至攝影機232。
使用者介面242可包含一或多個介面(諸如,輸入及輸出
介面)。舉例而言,使用者介面242可包括觸控式螢幕、小鍵盤、按鈕、可充當取景鏡(viewfinder)之螢幕、麥克風、揚聲器,或其他介面。當攝影機232接收視訊資料時,處理器240可向攝影機232傳信以使其將視訊資料發送至使用者介面242以顯示在取景鏡上。
視訊CODEC 234可編碼來自攝影機232之視訊資料且解碼經由天線248、收發器238及數據機236接收之視訊資料。視訊CODEC 234額外或替代性地可解碼自資料儲存器件246接收的先前編碼之資料以用於播放。視訊CODEC 234可使用大於由習知視訊編碼標準規定之巨區塊之大小的巨區塊編碼及/或解碼數位視訊資料。舉例而言,視訊CODEC 234可使用包含64×64像素或32×32像素之大的巨區塊編碼及/或解碼數位視訊資料。可用根據諸如H.264標準之擴展之視訊標準的巨區塊類型語法元素來識別大的巨區塊。
視訊CODEC 234可執行視訊編碼器50(圖2)及/或視訊解碼器60(圖3)中之任一者或兩者之功能,以及如本發明中所描述之任何其他編碼/解碼功能或技術。舉例而言,CODEC 234可將大的巨區塊分割成多種不同大小之較小分割區,且針對選定分割區使用不同之編碼模式(例如,空間(I)或時間(P或B))。分割區大小及編碼模式之選擇可係基於該等分割區大小及編碼模式之速率-失真結果。CODEC 234亦可利用階層式編碼區塊型樣(CBP)值來識別大的巨區塊內的具有非零係數之經編碼巨區塊及分割區。
另外,在一些實例中,CODEC 234可比較大的巨區塊與小的巨區塊之速率-失真量度以選擇針對一圖框、片或其他編碼單元產生較有利之結果的巨區塊大小。
使用者可與使用者介面242互動以經由數據機236、收發器238及天線248將資料儲存器件246中的所記錄之視訊序列傳輸至另一器件(諸如,另一無線通信器件)。可根據諸如MPEG-2、MPEG-3、MPEG-4、H.263、H.264或經受本發明中所描述之擴展或修改之其他視訊編碼標準的編碼標準來編碼該視訊序列。舉例而言,亦可使用大於標準之巨區塊編碼該視訊序列,如本發明中所描述。無線通信器件230亦可接收經編碼之視訊片段且將所接收之視訊序列儲存於資料儲存器件246中。
所接收的經編碼之視訊序列之巨區塊可大於由習知視訊編碼標準指定之巨區塊。為了顯示資料儲存器件246中之經編碼視訊片段(諸如,所記錄之視訊序列或所接收之視訊片段),視訊CODEC 234可解碼視訊序列且將視訊片段之經解碼圖框發送至使用者介面242。當視訊序列包括音訊資料時,視訊CODEC 234可解碼音訊,或者無線通信器件230可進一步包括用以解碼音訊之音訊編解碼器(未展示)。以此方式,視訊CODEC 234可執行編碼器之功能與解碼器之功能兩者。
圖14之無線通信器件230之記憶體244可經編碼有電腦可讀指令,該等電腦可讀指令引起處理器240及/或視訊CODEC 234執行各種任務(除儲存經編碼之視訊資料之
外)。可將該等指令自諸如資料儲存器件246之資料儲存器件載入記憶體244中。舉例而言,該等指令可引起處理器240執行關於視訊CODEC 234所描述之功能。
圖15為說明實例階層式編碼區塊型樣(CBP)260之方塊圖。CBP 260之實例大體對應於用於64×64像素巨區塊之語法資訊之一部分。在圖15之實例中,CBP 260包含CBP64值262、四個CBP32值264、266、268、270,及四個CBP16值272、274、276、278。CBP 260之每一區塊可包括一或多個位元。在一實例中,當CBP64值262為具有值「1」(其指示大的巨區塊中存在至少一非零係數)之位元時,CBP 260包括用於大的64×64巨區塊之四個32×32分割區之四個CBP32值264、266、268、270,如圖15之實例中所展示。
在另一實例中,當CBP64值262為具有值「0」之位元時,CBP 260可僅由CBP64組成,因為值「0」可指示對應於CBP 260之區塊具有全零值係數。因此,彼區塊之所有分割區同樣將含有全零值係數。在一實例中,當CBP64為具有值「1」之位元,且CBP32值中之用於特定32×32分割區之CBP32值為具有值「1」之位元時,用於該32×32分割區之CBP32值具有表示CBP16值之四個分枝,(例如)如關於CBP32值266所展示。在一實例中,當CBP32值為具有值「0」之位元時,CBP32不具有任何分枝。在圖15之實例中,CBP 260可具有五位元首碼「10100」,其指示:CBP64值為1,且32×32分割區中之一者具有為「1」之CBP32值,後續位元對應於四個CBP16值272、274、276、
278(對應於具有為「1」之CBP32值之32×32分割區的16×16分割區)。雖然在圖15之實例中僅將單一CBP32值展示為具有值「1」,但在其他實例中,兩個32×32分割區、三個32×32分割區或全部四個32×32分割區可具有為「1」之CBP32值,在該狀況下,將需要具有對應CBP16值之四個16×16分割區之多個例項。
在圖15之實例中,可根據各種方法(例如,根據圖8及圖9之方法)來計算用於四個16×16分割區之四個CBP16值272、274、276、278。CBP16值272、274、276、278中之任一者或全部可包括「lumacbp16」值、transform_size_flag,及/或luma16×8_cbp。亦可根據如ITU H.264中所定義之CBP值或如ITU H.264中之編碼區塊型樣色度(CodedBlockPatternChroma)、如關於圖8及圖9所論述來計算CBP16值272、274、276、278。在圖15之實例中,假定CBP16 278具有值「1」且其他CBP 16值272、274、276具有值「0」,則用於64×64巨區塊之九位元CBP值將為「101000001」,其中每一位元對應於CBP/分割區階層中之各別層級處之分割區中的一者。
圖16為說明一對應於CBP 260(圖15)之實例樹結構280的方塊圖。CBP64節點282對應於CBP64值262,CBP32節點284、286、288、290各自對應於CBP32值264、266、268、270中之各別者,且CBP16節點292、294、296、298各自對應於CBP16值272、274、276、278中之各別者。以此方式,如本發明中所定義之編碼區塊型樣值可對應於階
層式CBP。樹中產生另一分枝之每一節點對應於為「1」之各別CBP值。在圖15及圖16之實例中,CBP64 282與CBP32 286均具有值「1」且產生具有可能為「1」之CBP值之進一步分割區,亦即,在該處下一個分割區層級處之至少一分割區包括至少一非零變換係數值。
圖17為說明一用於使用一經編碼單元之語法資訊來指示及選擇用於該經編碼單元之視訊區塊的基於區塊之語法編碼器及解碼器的實例方法的流程圖。大體而言,除編碼經編碼單元之複數個視訊區塊之外且結合編碼經編碼單元之複數個視訊區塊,諸如視訊編碼器20(圖1)之視訊編碼器可執行圖17之步驟300至310。一經編碼單元可包含一視訊圖框、一片,或一圖片群(亦稱作一「序列」)。除解碼該經編碼單元之該複數個視訊區塊之外且結合解碼該經編碼單元之該複數個視訊區塊,諸如視訊解碼器30(圖1)之視訊解碼器可執行圖17之步驟312至316。
最初,視訊編碼器20可接收一經編碼單元(諸如,一圖框、片,或圖片群)的各種大小之區塊的集合(300)。根據本發明之技術,該等區塊中之一或多者可包含大於16×16像素(例如,32×32像素、64×64像素等)。然而,該等區塊不需要各自包括相同數目個像素。大體而言,視訊編碼器20可使用相同的基於區塊之語法來編碼該等區塊中之每一者。舉例而言,視訊編碼器20可使用階層式編碼區塊型樣來編碼該等區塊中之每一者,如上文所描述。
視訊編碼器20可基於該經編碼單元之該區塊集合中的最
大區塊(亦即,最大區塊大小)選擇要使用的基於區塊之語法。最大區塊大小可對應於該經編碼單元中所包括的最大巨區塊之大小。因此,視訊編碼器20可判定該集合中之最大大小的區塊(302)。在圖17之實例中,視訊編碼器20亦可判定該集合中之最小大小的區塊(304)。如上文所論述,一區塊之階層式編碼區塊型樣具有對應於該區塊之分割區是否具有一非零的、經量化係數的長度。在一些實例中,視訊編碼器20可將最小大小值包括於用於一經編碼單元之語法資訊中。在一些實例中,最小大小值指示該經編碼單元中之最小分割區大小。以此方式,最小分割區大小(例如,一經編碼單元中之最小區塊)可用於判定階層式編碼區塊型樣之最大長度。
視訊編碼器20可接著根據對應於最大區塊之語法來編碼該經編碼單元之集合的每一區塊(306)。舉例而言,假定最大區塊包含64×64像素區塊,則視訊編碼器20可使用諸如上文針對MB64_type定義之彼語法之語法。作為另一實例,假定最大區塊包含32×32像素區塊,則視訊編碼器20可使用諸如上文針對MB32_type定義之彼語法之語法。
視訊編碼器20亦產生經編碼單元語法資訊,其包括對應於經編碼單元中之最大區塊及經編碼單元中之最小區塊的值(308)。視訊編碼器20可接著將經編碼單元(包括用於經編碼單元及經編碼單元之區塊中的每一者的語法資訊)傳輸至視訊解碼器30。
視訊解碼器30可自視訊編碼器20接收經編碼單元及用於
經編碼單元之語法資訊(312)。視訊解碼器30可基於經編碼單元中之最大區塊的經編碼單元語法資訊中之指示而選擇基於區塊之語法解碼器(314)。舉例而言,假定經編碼單元語法資訊指示經編碼單元中之最大區塊包含64×64像素,則視訊解碼器30可選擇用於MB64_type區塊之語法解碼器。視訊解碼器30可接著將選定語法解碼器應用至經編碼單元之區塊以解碼經編碼單元之區塊(316)。視訊解碼器30亦可基於最小的經編碼之分割區的經編碼單元語法資訊中之指示而判定一區塊何時不具有進一步單獨編碼之子分割區。舉例而言,若最大區塊為64×64像素且最小區塊亦為64×64像素,則可判定64×64區塊未劃分成小於64×64大小之子分割區。作為另一實例,若最大區塊為64×64像素且最小區塊為32×32像素,則可判定將64×64區塊劃分成不小於32×32之子分割區。
以此方式,視訊解碼器30可保持與現有編碼標準(諸如,H.264)回溯相容。舉例而言,當經編碼單元中之最大區塊包含16×16像素時,視訊編碼器20可在經編碼單元語法資訊中指示此資訊,且視訊解碼器30可應用標準H.264基於區塊之語法解碼器。然而,當經編碼單元中之最大區塊包含大於16×16像素時,視訊編碼器20可在經編碼單元語法資訊中指示此資訊,且視訊解碼器30可根據本發明之技術選擇性地應用基於區塊之語法解碼器以解碼經編碼單元之區塊。
在一或多個實例中,可以硬體、軟體、韌體或其任何組
合來實施所描述之功能。若以軟體來實施,則可將該等功能作為一或多個指令或程式碼儲存於電腦可讀媒體上或在電腦可讀媒體上傳輸。電腦可讀媒體包括電腦儲存媒體與通信媒體(包括促進電腦程式自一處至另一處之傳送的任何媒體)兩者。儲存媒體可為可由電腦存取之任何可用媒體。作為實例且非限制,該電腦可讀媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存器件,或可用於載運或儲存呈指令或資料結構之形式的所要之程式碼且可由電腦存取的任何其他媒體。又,將任何連接適當地稱為電腦可讀媒體。舉例而言,若使用同軸電纜、光纖電纜、雙絞線、數位用戶線(DSL)或諸如紅外線、無線電及微波之無線技術而自網站、伺服器或其他遠端源傳輸軟體,則同軸電纜、光纖電纜、雙絞線、DSL或諸如紅外線、無線電及微波之無線技術包括在媒體之定義中。如本文中所使用之磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位多功能光碟(DVD)、軟性磁碟及藍光(blu-ray)光碟,其中磁碟通常磁性地再生資料,而光碟藉由雷射光學地再生資料。上述之組合亦應包括在電腦可讀媒體之範疇內。
已描述各種實例。此等及其他實例在以下申請專利範圍之範疇內。
10‧‧‧視訊編碼及解碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧通信頻道
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧調變器/解調變器(數據機)
24‧‧‧傳輸器
26‧‧‧接收器
28‧‧‧數據機
30‧‧‧視訊解碼器
32‧‧‧顯示器件
34‧‧‧參考圖框儲存器
35‧‧‧運動補償單元
36‧‧‧運動估計單元
37‧‧‧框內預測單元
38‧‧‧變換單元
39‧‧‧模式選擇單元
40‧‧‧量化單元
42‧‧‧反量化單元
44‧‧‧逆變換單元
46‧‧‧熵編碼單元
48‧‧‧求和器
50‧‧‧視訊編碼器
51‧‧‧求和器
52‧‧‧熵解碼單元
54‧‧‧運動補償單元
55‧‧‧框內預測單元
56‧‧‧反量化單元
58‧‧‧逆變換單元
60‧‧‧視訊解碼器
62‧‧‧參考圖框儲存器
64‧‧‧求和器
230‧‧‧無線通信器件
232‧‧‧攝影機
234‧‧‧視訊編碼器/解碼器CODEC
236‧‧‧調變器/解調變器(數據機)
238‧‧‧收發器
240‧‧‧處理器
242‧‧‧使用者介面
244‧‧‧記憶體
246‧‧‧資料儲存器件
248‧‧‧天線
250‧‧‧匯流排
260‧‧‧階層式編碼區塊型樣(CBP)
262‧‧‧CBP64值
264‧‧‧CBP32值
266‧‧‧CBP32值
268‧‧‧CBP32值
270‧‧‧CBP32值
272‧‧‧CBP16值
274‧‧‧CBP16值
276‧‧‧CBP16值
278‧‧‧CBP16值
280‧‧‧樹結構
282‧‧‧CBP64節點
284‧‧‧CBP32節點
286‧‧‧CBP32節點
288‧‧‧CBP32節點
290‧‧‧CBP32節點
292‧‧‧CBP16節點
294‧‧‧CBP16節點
296‧‧‧CBP16節點
298‧‧‧CBP16節點
圖1為說明一使用大的巨區塊編碼及解碼數位視訊資料之實例視訊編碼及解碼系統的方塊圖;
圖2為說明一實施用於編碼大的巨區塊之技術之視訊編碼器的一實例的方塊圖;圖3為說明一實施用於編碼大的巨區塊之技術之視訊解碼器的一實例的方塊圖;圖4A為說明一大的巨區塊之各種層級中的分割的概念圖;圖4B為說明將不同編碼模式指派至一大的巨區塊之不同分割區的概念圖;圖5為說明一大的巨區塊之各種層級之階層視圖的概念圖;圖6為說明一用於設定64×64像素的大的巨區塊之編碼區塊型樣(CBP)值之實例方法的流程圖;圖7為說明一用於設定64×64像素的大的巨區塊之一32×32像素分割區之CBP值的實例方法的流程圖;圖8為說明一用於設定64×64像素的大的巨區塊之一32×32像素分割區之一16×16像素分割區的CBP值之實例方法的流程圖;圖9為說明一用於判定兩位元luma16×8_CBP值之實例方法的流程圖;圖10為說明一64×64像素的大的巨區塊之一實例排列的方塊圖;圖11為說明一用於計算一N×N像素的大的視訊區塊之最佳分割及編碼方法之實例方法的流程圖;圖12為說明一具有各種分割區之實例64×64像素巨區塊
及用於每一分割區之選定編碼方法的方塊圖;圖13為說明一用於判定一用於編碼一視訊序列之一圖框之巨區塊的最佳大小的實例方法的流程圖;圖14為說明一實例無線通信器件的方塊圖,該無線通信器件包括一使用大的巨區塊編碼數位視訊資料之視訊編碼器/解碼器(CODEC);圖15為說明一大的巨區塊之階層式CBP表示之一實例陣列表示的方塊圖;圖16為說明對應於圖15之階層式CBP表示之實例樹結構的方塊圖;及圖17為說明一用於使用一經編碼單元之語法資訊來指示及選擇用於該經編碼單元之視訊區塊的基於區塊之語法編碼器及解碼器的實例方法的流程圖。
34‧‧‧參考圖框儲存器
35‧‧‧運動補償單元
36‧‧‧運動估計單元
37‧‧‧框內預測單元
38‧‧‧變換單元
39‧‧‧模式選擇單元
40‧‧‧量化單元
42‧‧‧反量化單元
44‧‧‧逆變換單元
46‧‧‧熵編碼單元
48‧‧‧求和器
50‧‧‧視訊編碼器
51‧‧‧求和器
Claims (48)
- 一種用於數位視訊寫碼之方法,其包含:用一視訊編碼器編碼一具有一大於16×16像素之大小之視訊區塊;產生指示該區塊之該大小之區塊類型語法資訊;及產生用於該經編碼之區塊之寫碼區塊指示符資料,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,其中產生該寫碼區塊指示符資料包含:當該經編碼之區塊不包括至少一非零係數時,產生一用於該寫碼區塊指示符資料之單一位元;當該經編碼之區塊包括至少一非零係數時,產生該寫碼區塊指示符資料之一第一位元,產生用於該編碼區塊指示符資料之四個分割區位元,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,將該四個分割區位元設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,且當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分,其中產生該分割區寫碼區塊指示符資料進一步包括在該16×16像素分割區包含子分割區時,產生該寫碼區塊指示符資料以包括表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數 之資料。
- 如請求項1之方法,其進一步包含:當該經編碼之區塊不包括至少一非零係數時,將用於該寫碼區塊指示符資料之該單一位元設定為0;當該經編碼之區塊包括至少一非零係數時,將用於該寫碼區塊指示符資料之該第一位元設定為1;及當該寫碼區塊指示符資料之該第一位元為1時,產生一包含該經編碼之區塊的經編碼視訊資料、該區塊類型語法資訊及該寫碼區塊指示符資料的經編碼之視訊位元流。
- 如請求項1之方法,其進一步包含:當該經編碼之區塊包括至少一非零係數時,識別該經編碼之區塊之一16×16像素分割區,產生一用於該16×16像素分割區之分割區編碼區塊指示符資料作為該所產生之編碼區塊指示符資料之一部分,且在該四個分割區位元之後將該分割區編碼區塊型樣值附加至該編碼區塊指示符資料。
- 如請求項3之方法,其進一步包含:當該經編碼之區塊包括至少一非零係數時,產生寫碼區塊指示符資料包含產生一第一luma_16×8位元及一第二luma_16×8位元,該第一luma_16×8位元表示該區塊之該16×16分割區之一16×8分割區是否包括至少一非零係數,且該第二luma_16×8位元表示該區塊之該16×16分割區之一第二16×8分割區是否包括至少一非零係數。
- 如請求項3之方法,其中該視訊區塊具有一至少64×64像 素之大小。
- 如請求項1之方法,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 如請求項1之方法,其進一步包含:產生一用於該經編碼之區塊之量化參數修改值,其中編碼該視訊區塊包含根據該量化參數修改值量化該視訊區塊;及包括該量化參數修改值作為用於該經編碼之區塊之語法資訊。
- 一種用於數位視訊寫碼之裝置,其包含一視訊編碼器,該視訊編碼器經組態以編碼一具有一大於16×16像素之大小之視訊區塊,產生指示該區塊之該大小之區塊類型語法資訊,且產生用於該經編碼之區塊之寫碼區塊指示符資料,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,以及其中為產生該寫碼區塊指示符資料,該視訊編碼器經組態以在該經編碼之區 塊不包括至少一非零係數時,產生一用於該寫碼區塊指示符資料之單一位元;當該經編碼之區塊包括至少一非零係數時,產生該寫碼區塊指示符資料之一第一位元,產生用於該編碼區塊指示符資料之四個分割區位元,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,將該四個分割區位元設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,且當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分,使得該寫碼區塊指示符資料包括在該16×16像素分割區包含子分割區時,包括表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料。
- 如請求項8之裝置,其中視訊編碼器經組態以在該經編碼之區塊不包括至少一非零係數時將用於該寫碼區塊指示符資料之該單一位元設定為0,在該經編碼之區塊包括至少一非零係數時將用於該寫碼區塊指示符資料之該第一位元設定為1,且在該寫碼區塊指示符資料之該第一位元為1時產生一包含該經編碼之區塊的經編碼視訊資料、該區塊類型語法資訊及該寫碼區塊型樣值的經編碼之視訊位元流。
- 如請求項8之裝置,其中該視訊編碼器經組態以在該經編碼之區塊包括至少一非零係數時,識別該經編碼之區 塊之該16×16像素分割區,產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分,且在該四個分割區位元之後將該分割區寫碼區塊指示符資料附加至該寫碼區塊指示符資料。
- 如請求項10之裝置,其中該視訊編碼器經組態以在該經編碼之區塊包括至少一非零係數時,產生寫碼區塊指示符資料包含產生一第一luma_16×8位元及一第二luma_16×8位元,該第一luma_16×8位元表示該區塊之該16×16分割區之一16×8分割區是否包括至少一非零係數,且該第二luma_16×8位元表示該區塊之該16×16分割區之一第二16×8分割區是否包括至少一非零係數。
- 如請求項8之裝置,其中該視訊區塊具有一至少64×64像素之大小。
- 如請求項8之裝置,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 如請求項8之裝置,其中該裝置包含一無線通信器件。
- 一種用於數位視訊寫碼之裝置,其包含:用於編碼一具有一大於16×16像素之大小之視訊區塊的構件;用於產生指示該區塊之該大小之區塊類型語法資訊的構件;及用於產生一用於該經編碼之區塊之寫碼區塊指示符資料的構件,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,其中該用於產生該寫碼區塊指示符資料的構件包含:在該經編碼之區塊不包括至少一非零係數時,用於產生一用於該寫碼區塊指示符資料之單一位元的構件;在該經編碼之區塊包括至少一非零係數時,用於產生該寫碼區塊指示符資料之一第一位元的構件,用於產生用於該編碼區塊指示符資料之四個分割區位元的構件,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,及用於將該四個分割區位元設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值的構件,以及在該經編碼之區塊包括至少一非零係數及一16×16像素分割區時用於產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分的構件,其中該用於產生該分割區寫碼區塊指示符資料的構件進一步包括在該16×16像素分割區包含 子分割區時,用於產生該寫碼區塊指示符資料以包括表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料的構件。
- 如請求項15之裝置,其進一步包含:用於在該經編碼之區塊不包括至少一非零係數時將用於該寫碼區塊指示符資料之該單一位元設定為0的構件;用於在該經編碼之區塊包括至少一非零係數時將用於該寫碼區塊指示符資料之該第一位元設定為1的構件;及用於在該寫碼區塊指示符資料為1時產生一包含該經編碼之區塊的經編碼視訊資料、該區塊類型語法資訊及該寫碼區塊指示符資料的經編碼之視訊位元流的構件。
- 如請求項15之裝置,其進一步包含:當該經編碼之區塊包括至少一非零係數時,用於識別該經編碼之區塊之該16×16像素分割區的構件;用於產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分的構件;及用於在該四個分割區位元之後將該分割區寫碼區塊指示符資料附加至該寫碼區塊指示符資料的構件。
- 如請求項17之裝置,其進一步包含:當該經編碼之區塊包括至少一非零係數時,用於產生寫碼區塊指示符資料之構件包含產生一第一luma_16×8位元及一第二luma_16×8位元,該第一luma_16×8位元表示該區塊之該 16×16分割區之一16×8分割區是否包括至少一非零係數,且該第二luma_16×8位元表示該區塊之該16×16分割區之一第二16×8分割區是否包括至少一非零係數。
- 如請求項15之裝置,其中該視訊區塊具有一至少64×64像素之大小。
- 如請求項15之裝置,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 一種非暫態電腦可讀儲存媒體,其具有儲存於其上之用於引起一視訊編碼裝置執行以下步驟之指令:用一視訊編碼器編碼一具有一大於16×16像素之大小之視訊區塊;產生指示該區塊之該大小之區塊類型語法資訊;及產生用於該經編碼之區塊之寫碼區塊指示符資料,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,其中引起該視訊編碼裝置產生該寫碼區塊指示符資料之該等指令包含引起該視訊編碼裝置之 下述指令:當該經編碼之區塊不包括至少一非零係數時,產生一用於該寫碼區塊指示符資料之單一位元;當該經編碼之區塊包括至少一非零係數時,產生該寫碼區塊指示符資料之一第一位元,產生用於該編碼區塊指示符資料之四個分割區位元,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,將該四個分割區位元設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,且當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分,其中產生該分割區寫碼區塊指示符資料進一步包括在該16×16像素分割區包含子分割區時,產生該寫碼區塊指示符資料以包括表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料。
- 如請求項21之非暫態電腦可讀儲存媒體,其進一步包含用於引起該視訊編碼裝置執行以下步驟之指令:當該經編碼之區塊不包括至少一非零係數時,將用於該寫碼區塊指示符資料之該單一位元設定為0;當該經編碼之區塊包括至少一非零係數時,將用於該寫碼區塊指示符資料之該第一位元設定為1;及當該寫碼區塊指示符資料之該第一位元為1時,產生 一包含該經編碼之區塊的經編碼視訊資料、該區塊類型語法資訊及該寫碼區塊指示符資料的經編碼之視訊位元流。
- 如請求項21之非暫態電腦可讀儲存媒體,其進一步包含用於引起該視訊編碼裝置執行以下步驟之指令:當該經編碼之區塊包括至少一非零係數時,識別該經編碼之區塊之該16×16像素分割區,產生用於該16×16像素分割區之分割區寫碼區塊指示符資料作為該所產生之寫碼區塊指示符資料之一部分,且在該四個分割區位元之後將該分割區寫碼區塊指示符資料附加至該寫碼區塊指示符資料。
- 如請求項23之非暫態電腦可讀儲存媒體,其進一步包含用於引起該視訊編碼裝置執行以下步驟之指令:當該經編碼之區塊包括至少一非零係數時,產生用於該寫碼區塊指示符資料之一第一luma_16×8位元及一第二luma_16×8位元,該第一luma_16×8位元表示該區塊之該16×16分割區之一16×8分割區是否包括至少一非零係數,且該第二luma_16×8位元表示該區塊之該16×16分割區之一第二16×8分割區是否包括至少一非零係數。
- 如請求項21之非暫態電腦可讀儲存媒體,其中該視訊區塊具有一至少64×64像素之大小。
- 如請求項21之非暫態電腦可讀儲存媒體,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指 示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 一種用於數位視訊寫碼之方法,其包含:用一視訊解碼器接收一具有一大於16×16像素之大小的經編碼之視訊區塊;接收指示該經編碼之區塊之該大小的區塊類型語法資訊;接收用於該經編碼之區塊之寫碼區塊指示符資料,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,及其中當該經編碼之區塊不包括至少一非零係數時,該寫碼區塊指示符資料為一單一位元;且當該經編碼之區塊包括至少一非零係數時,該寫碼區塊指示符資料包括一第一位元及四個分割區位元,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,其中該四個分割區位元被設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,其中當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,該 寫碼區塊指示符資料包括用於該16×16像素分割區之分割區寫碼區塊指示符資料,及其中該寫碼區塊指示符資料包括在該16×16像素分割區包含子分割區時,表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料;及基於該區塊類型語法資訊及用於該經編碼之區塊之該寫碼區塊指示符資料解碼該經編碼之區塊。
- 如請求項27之方法,其中當該經編碼之區塊不包括至少一非零係數時,用於該寫碼區塊指示符資料之該單一位元為0,且當該經編碼之區塊包括至少一非零係數時,用於該寫碼區塊指示符資料之該第一位元為1,該方法進一步包含在該寫碼區塊指示符資料之該第一位元為1時接收該經編碼之區塊的經編碼視訊資料。
- 如請求項27之方法,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 如請求項27之方法,其中該視訊區塊具有一至少64×64 像素之大小。
- 如請求項27之方法,其進一步包含:接收一量化參數修改值,其中解碼該經編碼之區塊包含根據該量化參數修改值將該經編碼之區塊解除量化。
- 如請求項27之方法,其中解碼該經編碼之區塊包含:如該寫碼區塊指示符資料所指示,擷取具有至少一非零係數之分割區之殘餘資料;使用該經擷取之殘餘資料及預測區塊來解碼具有至少一非零係數之該等分割區;及使用預測區塊且不使用殘餘資料來解碼不具有至少一非零係數之該等分割區。
- 一種用於數位視訊寫碼之裝置,其包含一視訊解碼器,該視訊解碼器經組態以:接收一具有一大於16×16像素之大小的經編碼之視訊區塊;接收指示該經編碼之區塊之該大小的區塊類型語法資訊;接收用於該經編碼之區塊之寫碼區塊指示符資料,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,及其中當該經編碼之區塊不包括至少一非零係數時,該寫碼區塊指示符資料為一單一位元;且當該經編碼之區塊包括至少一非零係數時,該寫碼區塊指示符資料包括一第一位元及四個分割區位元,該四 個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,其中該四個分割區位元被設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,其中當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,該寫碼區塊指示符資料包括用於該16×16像素分割區之分割區寫碼區塊指示符資料,及其中該寫碼區塊指示符資料包括在該16×16像素分割區包含子分割區時,表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料;且基於該區塊類型語法資訊及用於該經編碼之區塊之該寫碼區塊指示符資料解碼該經編碼之區塊。
- 如請求項33之裝置,其中當該經編碼之區塊不包括至少一非零係數時,用於該寫碼區塊指示符資料之該單一位元為0,且當該經編碼之區塊包括至少一非零係數時,用於該寫碼區塊指示符資料之該第一位元為1,該視訊解碼器經組態以在該寫碼區塊指示符資料之該第一位元為1時接收用於該經編碼之區塊的經編碼視訊資料。
- 如請求項33之裝置,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何 第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 如請求項33之裝置,其中該視訊區塊具有一至少64×64像素之大小。
- 如請求項33之裝置,其中該裝置包含一無線通信器件。
- 如請求項33之裝置,其中解碼該經編碼之區塊,該視頻解碼器經組態以:如該寫碼區塊指示符資料所指示,擷取具有至少一非零係數之分割區之殘餘資料;使用該經擷取之殘餘資料及預測區塊來解碼具有至少一非零係數之該等分割區;及使用預測區塊且不使用殘餘資料來解碼不具有至少一非零係數之該等分割區。
- 一種用於數位視訊寫碼之裝置,其包含:用於接收一具有一大於16×16像素之大小的經編碼之視訊區塊的構件;用於接收指示該經編碼之區塊之該大小的區塊類型語法資訊的構件;用於接收一用於該經編碼之區塊之寫碼區塊指示符資料的構件,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,及其中當該經編碼之區塊不包括至少一非零係數時,該寫碼區塊指示符資料為 一單一位元;且當該經編碼之區塊包括至少一非零係數時,該寫碼區塊指示符資料包括一第一位元及四個分割區位元,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,其中該四個分割區位元被設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,其中當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,該寫碼區塊指示符資料包括用於該16×16像素分割區之分割區寫碼區塊指示符資料,及其中該寫碼區塊指示符資料包括在該16×16像素分割區包含子分割區時,表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料;及用於基於該區塊類型語法資訊及用於該經編碼之區塊之該寫碼區塊指示符資料解碼該經編碼之區塊的構件。
- 如請求項39之裝置,其中當該經編碼之區塊不包括至少一非零係數時,用於該寫碼區塊指示符資料之該單一位元為0,且當該經編碼之區塊包括至少一非零係數時,用於該寫碼區塊指示符資料之該第一位元為1,該裝置進一步包含用於在該寫碼區塊指示符資料之該第一位元為1時接收用於該經編碼之區塊的經編碼視訊資料的構件。
- 如請求項39之裝置,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之 任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 如請求項39之裝置,其中該視訊區塊具有一至少64×64像素之大小。
- 如請求項39之裝置,其中該用於解碼該經編碼之區塊的構件包含:如該寫碼區塊指示符資料所指示,用於擷取具有至少一非零係數之分割區之殘餘資料的構件;用於使用該經擷取之殘餘資料及預測區塊來解碼具有至少一非零係數之該等分割區的構件;及用於使用預測區塊且不使用殘餘資料來解碼不具有至少一非零係數之該等分割區的構件。
- 一種非暫態電腦可讀儲存媒體,其具有儲存於其上用於引起一視訊解碼器執行以下步驟之指令:用一視訊編碼器接收一具有一大於16×16像素之大小的經編碼之視訊區塊;接收指示該經編碼之區塊之該大小的區塊類型語法資訊;接收一用於該經編碼之區塊之寫碼區塊指示符資料, 其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,及其中當該經編碼之區塊不包括至少一非零係數時,該寫碼區塊指示符資料為一單一位元;且當該經編碼之區塊包括至少一非零係數時,該寫碼區塊指示符資料包括一第一位元及四個分割區位元,該四個分割區位元中之每一者對應於該經編碼之區塊的四個相等大小之分割區中之一不同者,其中該四個分割區位元被設定至表示該四個相等大小之分割區中之該對應者是否包括至少一非零係數之各別值,其中當該經編碼之區塊包括至少一非零係數及一16×16像素分割區時,該寫碼區塊指示符資料包括用於該16×16像素分割區之分割區寫碼區塊指示符資料,及其中該寫碼區塊指示符資料包括在該16×16像素分割區包含子分割區時,表示該16×16像素分割區之該等子分割區是否分別包括至少一非零係數之資料;及基於該區塊類型語法資訊及用於該經編碼之區塊之該寫碼區塊指示符資料解碼該經編碼之區塊。
- 如請求項44之非暫態電腦可讀儲存媒體,其中當該經編碼之區塊不包括至少一非零係數時,用於該寫碼區塊指示符資料之該單一位元為0,且當該經編碼之區塊包括至少一非零係數時,用於該寫碼區塊指示符資料之該第一位元為1,該方法進一步包含在該寫碼區塊指示符資料之該第一位元為1時接收用於該經編碼之區塊的經編碼視訊資料。
- 如請求項44之非暫態電腦可讀儲存媒體,其中該寫碼區塊指示符資料指示該經編碼之區塊是否包括至少一非零係數,且當該經編碼之區塊包括至少一非零係數時,指示該經編碼之區塊之任何第一層級分割區是否包括至少一非零係數,且,當該經編碼之區塊之該等第一層級分割區中的至少一者包括至少一非零係數時,指示該等第一層級分割區之任何第二層級分割區是否包括至少一非零係數,且其中該寫碼區塊指示符資料包括一對應於該經編碼之區塊、該經編碼之區塊之該等第一層級分割區,及該等第一層級分割區之該等第二層級分割區的位元型樣。
- 如請求項44之非暫態電腦可讀儲存媒體,其中該視訊區塊具有一至少64×64像素之大小。
- 如請求項44之非暫態電腦可讀儲存媒體,其中引起該視訊解碼器以解碼該經編碼之區塊的該等指令包含引起該視訊解碼器執行下述動作之指令:如該寫碼區塊指示符資料所指示,擷取具有至少一非零係數之分割區之殘餘資料;使用該經擷取之殘餘資料及預測區塊來解碼具有至少一非零係數之該等分割區;及使用預測區塊且不使用殘餘資料來解碼不具有至少一非零係數之該等分割區。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10278708P | 2008-10-03 | 2008-10-03 | |
US14435709P | 2009-01-13 | 2009-01-13 | |
US16663109P | 2009-04-03 | 2009-04-03 | |
US12/562,412 US8634456B2 (en) | 2008-10-03 | 2009-09-18 | Video coding with large macroblocks |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201028010A TW201028010A (en) | 2010-07-16 |
TWI419567B true TWI419567B (zh) | 2013-12-11 |
Family
ID=41667500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098133632A TWI419567B (zh) | 2008-10-03 | 2009-10-02 | 使用大的巨區塊之視訊編碼 |
Country Status (15)
Country | Link |
---|---|
US (1) | US8634456B2 (zh) |
EP (1) | EP2347593A2 (zh) |
JP (1) | JP5384652B2 (zh) |
KR (1) | KR101344115B1 (zh) |
CN (1) | CN102172025B (zh) |
AU (1) | AU2009298648B2 (zh) |
BR (1) | BRPI0919839B1 (zh) |
CA (1) | CA2738037C (zh) |
HK (1) | HK1161464A1 (zh) |
IL (1) | IL211766A (zh) |
MY (1) | MY165997A (zh) |
RU (1) | RU2502218C2 (zh) |
TW (1) | TWI419567B (zh) |
WO (1) | WO2010039733A2 (zh) |
ZA (1) | ZA201102426B (zh) |
Families Citing this family (98)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101456279B1 (ko) * | 2008-01-03 | 2014-11-04 | 한국전자통신연구원 | 참조 블록 파형 정보에 기반하여 인트라 영상을 부호화하는 장치 및 복호화 하는 장치 |
US8483285B2 (en) * | 2008-10-03 | 2013-07-09 | Qualcomm Incorporated | Video coding using transforms bigger than 4×4 and 8×8 |
US8503527B2 (en) | 2008-10-03 | 2013-08-06 | Qualcomm Incorporated | Video coding with large macroblocks |
US8619856B2 (en) * | 2008-10-03 | 2013-12-31 | Qualcomm Incorporated | Video coding with large macroblocks |
US10455248B2 (en) | 2008-10-06 | 2019-10-22 | Lg Electronics Inc. | Method and an apparatus for processing a video signal |
EP2207356A1 (en) * | 2008-10-06 | 2010-07-14 | Lg Electronics Inc. | Method and apparatus for video coding using large macroblocks |
US8699562B2 (en) | 2008-10-06 | 2014-04-15 | Lg Electronics Inc. | Method and an apparatus for processing a video signal with blocks in direct or skip mode |
WO2010131903A2 (en) | 2009-05-12 | 2010-11-18 | Lg Electronics Inc. | Method and apparatus for processing a video signal |
JP5326828B2 (ja) * | 2009-06-03 | 2013-10-30 | 富士通株式会社 | 動画像符号化装置及び動画像符号化方法 |
KR101712351B1 (ko) * | 2009-06-26 | 2017-03-06 | 에스케이 텔레콤주식회사 | 다차원 정수 변환을 이용한 영상 부호화/복호화 장치 및 방법 |
KR101527085B1 (ko) * | 2009-06-30 | 2015-06-10 | 한국전자통신연구원 | 인트라 부호화/복호화 방법 및 장치 |
JP5918128B2 (ja) | 2009-07-01 | 2016-05-18 | トムソン ライセンシングThomson Licensing | ビデオエンコーダおよびデコーダについての大きなブロックにつきイントラ予測を信号伝達する方法および装置 |
KR20210063483A (ko) | 2009-07-02 | 2021-06-01 | 인터디지털 브이씨 홀딩스 인코포레이티드 | 적응적 트리 선택을 사용한 이진 집합의 비디오 인코딩 및 디코딩을 위한 방법 및 장치 |
JP5359657B2 (ja) * | 2009-07-31 | 2013-12-04 | ソニー株式会社 | 画像符号化装置および方法、記録媒体、並びにプログラム |
KR101456498B1 (ko) * | 2009-08-14 | 2014-10-31 | 삼성전자주식회사 | 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
KR101487686B1 (ko) * | 2009-08-14 | 2015-01-30 | 삼성전자주식회사 | 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
KR101624649B1 (ko) * | 2009-08-14 | 2016-05-26 | 삼성전자주식회사 | 계층적인 부호화 블록 패턴 정보를 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
CN104661026B (zh) * | 2009-10-21 | 2018-03-27 | Sk电信有限公司 | 图像编码和解码装置和方法 |
KR101504887B1 (ko) | 2009-10-23 | 2015-03-24 | 삼성전자 주식회사 | 데이터 단위 레벨의 독립적 파싱 또는 복호화에 따른 비디오 복호화 방법 및 그 장치, 그리고 데이터 단위 레벨의 독립적 파싱 또는 복호화를 위한 비디오 부호화 방법 및 그 장치 |
KR101457894B1 (ko) * | 2009-10-28 | 2014-11-05 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 복호화 방법 및 장치 |
US20110274162A1 (en) | 2010-05-04 | 2011-11-10 | Minhua Zhou | Coding Unit Quantization Parameters in Video Coding |
KR101675118B1 (ko) | 2010-01-14 | 2016-11-10 | 삼성전자 주식회사 | 스킵 및 분할 순서를 고려한 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 |
KR101703327B1 (ko) * | 2010-01-14 | 2017-02-06 | 삼성전자 주식회사 | 계층적 데이터 단위의 패턴 정보를 이용하는 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 |
AU2015203387B2 (en) * | 2010-01-14 | 2016-06-30 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video and method and apparatus for decoding video by considering skip and split order |
KR101495724B1 (ko) | 2010-02-02 | 2015-02-25 | 삼성전자주식회사 | 계층적 데이터 단위의 스캔 순서에 기반한 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 |
WO2011121715A1 (ja) * | 2010-03-30 | 2011-10-06 | 株式会社 東芝 | 画像復号化方法 |
US8942282B2 (en) | 2010-04-12 | 2015-01-27 | Qualcomm Incorporated | Variable length coding of coded block pattern (CBP) in video compression |
ES2746182T3 (es) | 2010-04-13 | 2020-03-05 | Ge Video Compression Llc | Predicción entre planos |
KR101626688B1 (ko) | 2010-04-13 | 2016-06-01 | 지이 비디오 컴프레션, 엘엘씨 | 샘플 영역 병합 |
CN105915919B (zh) * | 2010-04-13 | 2019-12-06 | Ge视频压缩有限责任公司 | 用于解码、生成及存储数据流的方法 |
DK2559245T3 (en) | 2010-04-13 | 2015-08-24 | Ge Video Compression Llc | Video Coding using multitræsunderinddeling Images |
EP2559005B1 (en) | 2010-04-13 | 2015-11-04 | GE Video Compression, LLC | Inheritance in sample array multitree subdivision |
JP2012019447A (ja) * | 2010-07-09 | 2012-01-26 | Sony Corp | 画像処理装置および方法 |
US8848779B2 (en) * | 2010-07-15 | 2014-09-30 | Sharp Laboratories Of America, Inc. | Method of parallel video coding based on block size |
US8873617B2 (en) * | 2010-07-15 | 2014-10-28 | Sharp Laboratories Of America, Inc. | Method of parallel video coding based on same sized blocks |
US8855188B2 (en) * | 2010-07-15 | 2014-10-07 | Sharp Laboratories Of America, Inc. | Method of parallel video coding based on mapping |
DK2596640T3 (en) * | 2010-07-21 | 2016-12-05 | ERICSSON TELEFON AB L M (publ) | PICTURE encoding and decoding |
US9357229B2 (en) | 2010-07-28 | 2016-05-31 | Qualcomm Incorporated | Coding motion vectors in video coding |
KR20120016980A (ko) | 2010-08-17 | 2012-02-27 | 한국전자통신연구원 | 영상 부호화 방법 및 장치, 그리고 복호화 방법 및 장치 |
LT2950532T (lt) * | 2010-08-17 | 2018-12-10 | Samsung Electronics Co., Ltd. | Vaizdo dekodavimo aparato naudojimas, naudojant kintamos medžio struktūros transformacijos vienetą |
KR20120035096A (ko) * | 2010-10-04 | 2012-04-13 | 한국전자통신연구원 | 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치 |
KR101479130B1 (ko) * | 2010-10-18 | 2015-01-07 | 에스케이 텔레콤주식회사 | 차분 움직임벡터 부호화/복호화 장치 및 방법, 및 그것을 이용한 영상 부호화/복호화 장치 및 방법 |
US9172963B2 (en) * | 2010-11-01 | 2015-10-27 | Qualcomm Incorporated | Joint coding of syntax elements for video coding |
US9066102B2 (en) | 2010-11-17 | 2015-06-23 | Qualcomm Incorporated | Reference picture list construction for generalized P/B frames in video coding |
US10045046B2 (en) | 2010-12-10 | 2018-08-07 | Qualcomm Incorporated | Adaptive support for interpolating values of sub-pixels for video coding |
US20120163460A1 (en) * | 2010-12-23 | 2012-06-28 | Qualcomm Incorporated | Sub-pixel interpolation for video coding |
US9490839B2 (en) | 2011-01-03 | 2016-11-08 | Qualcomm Incorporated | Variable length coding of video block coefficients |
JP5850214B2 (ja) | 2011-01-11 | 2016-02-03 | ソニー株式会社 | 画像処理装置および方法、プログラム、並びに記録媒体 |
CN102595116B (zh) | 2011-01-14 | 2014-03-12 | 华为技术有限公司 | 多图像块划分的编解码方法和装置 |
US10171813B2 (en) | 2011-02-24 | 2019-01-01 | Qualcomm Incorporated | Hierarchy of motion prediction video blocks |
CN107071439B (zh) * | 2011-03-10 | 2021-12-28 | 夏普株式会社 | 图像解码装置及方法、以及记录介质 |
WO2012169952A2 (en) * | 2011-06-10 | 2012-12-13 | Telefonaktiebolaget L M Ericsson (Publ) | Signaling of end of slices |
US8989270B2 (en) * | 2011-06-23 | 2015-03-24 | Apple Inc. | Optimized search for reference frames in predictive video coding system |
MX368350B (es) * | 2011-06-28 | 2019-09-30 | Samsung Electronics Co Ltd | Metodo y aparato para codificar y decodificar imagenes utilizando intra-prediccion. |
WO2013002587A2 (ko) * | 2011-06-28 | 2013-01-03 | 삼성전자 주식회사 | 적응적인 양자화 파라미터 차분값을 이용한 영상의 부호화 및 복호화 방법과 장치 |
AU2012276410A1 (en) * | 2011-06-28 | 2014-02-06 | Samsung Electronics Co., Ltd. | Prediction method and apparatus for chroma component of image using luma component of image |
US9516316B2 (en) | 2011-06-29 | 2016-12-06 | Qualcomm Incorporated | VLC coefficient coding for large chroma block |
US9338456B2 (en) | 2011-07-11 | 2016-05-10 | Qualcomm Incorporated | Coding syntax elements using VLC codewords |
US20130016769A1 (en) | 2011-07-17 | 2013-01-17 | Qualcomm Incorporated | Signaling picture size in video coding |
CN103828366B (zh) * | 2011-07-21 | 2017-10-20 | 黑莓有限公司 | 一种编码和解码方法、编码和解码设备 |
US9451271B2 (en) | 2011-07-21 | 2016-09-20 | Blackberry Limited | Adaptive filtering based on pattern information |
US9584819B2 (en) * | 2011-10-24 | 2017-02-28 | Qualcomm Incorporated | Grouping of tiles for video coding |
KR20130049525A (ko) | 2011-11-04 | 2013-05-14 | 오수미 | 잔차 블록 복원을 위한 역변환 방법 |
US9014265B1 (en) | 2011-12-29 | 2015-04-21 | Google Inc. | Video coding using edge detection and block partitioning for intra prediction |
CN108449602A (zh) * | 2012-01-19 | 2018-08-24 | 寰发股份有限公司 | 编码块旗标的编码及视频比特流的解码方法与装置 |
WO2013107027A1 (en) | 2012-01-19 | 2013-07-25 | Mediatek Singapore Pte. Ltd. | Methods and apparatuses of cbf coding in hevc |
AU2012200319B2 (en) * | 2012-01-19 | 2015-11-26 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit |
AU2012200345B2 (en) | 2012-01-20 | 2014-05-01 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit |
US9106918B2 (en) | 2012-01-20 | 2015-08-11 | Sony Corporation | Coefficient coding harmonization in HEVC |
US9462275B2 (en) * | 2012-01-30 | 2016-10-04 | Qualcomm Incorporated | Residual quad tree (RQT) coding for video coding |
US9106932B2 (en) * | 2012-02-29 | 2015-08-11 | Broadcom Corporation | Parallel pyramid entropy coding for video and image compression |
US9749645B2 (en) | 2012-06-22 | 2017-08-29 | Microsoft Technology Licensing, Llc | Coded-block-flag coding and derivation |
CN104488270B (zh) * | 2012-06-29 | 2018-05-18 | 韩国电子通信研究院 | 一种利用解码设备的视频解码方法 |
CN107911699B (zh) * | 2012-07-02 | 2021-08-10 | 三星电子株式会社 | 视频的编码方法和设备以及非暂时性计算机可读介质 |
US11284133B2 (en) * | 2012-07-10 | 2022-03-22 | Avago Technologies International Sales Pte. Limited | Real-time video coding system of multiple temporally scaled video and of multiple profile and standards based on shared video coding information |
US20140056347A1 (en) | 2012-08-23 | 2014-02-27 | Microsoft Corporation | Non-Transform Coding |
JP6301932B2 (ja) | 2012-10-01 | 2018-03-28 | ジーイー ビデオ コンプレッション エルエルシー | エンハンスメント層の中の変換係数ブロックの副ブロックに基づいた符号化を使用するスケーラブルビデオ符号化 |
US9210424B1 (en) | 2013-02-28 | 2015-12-08 | Google Inc. | Adaptive prediction block size in video coding |
CN104159106B (zh) * | 2013-05-14 | 2017-12-01 | 联发科技股份有限公司 | 视频编码方法和视频解码方法及其装置 |
US9832478B2 (en) | 2013-05-14 | 2017-11-28 | Mediatek Inc. | Video encoding method and apparatus for determining size of parallel motion estimation region based on encoding related information and related video decoding method and apparatus |
US9313493B1 (en) | 2013-06-27 | 2016-04-12 | Google Inc. | Advanced motion estimation |
CN103491369B (zh) * | 2013-09-18 | 2016-09-28 | 华为技术有限公司 | 一种帧间预测编码方法和编码器 |
US10362336B2 (en) * | 2014-03-25 | 2019-07-23 | Qualcomm Incorporated | Palette predictor signaling with run length code for video coding |
FR3029333A1 (fr) * | 2014-11-27 | 2016-06-03 | Orange | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
CN105992000B (zh) * | 2015-03-06 | 2019-03-22 | 扬智科技股份有限公司 | 影像流的处理方法及其影像处理装置 |
US10025796B2 (en) | 2015-04-29 | 2018-07-17 | Box, Inc. | Operation mapping in a virtual file system for cloud-based shared content |
US9807416B2 (en) | 2015-09-21 | 2017-10-31 | Google Inc. | Low-latency two-pass video coding |
US10805607B2 (en) | 2016-04-29 | 2020-10-13 | Industry Academy Cooperation Foundation Of Sejong University | Video signal encoding/decoding method and apparatus |
CN116915999A (zh) | 2016-04-29 | 2023-10-20 | 世宗大学校产学协力团 | 视频信号编码/解码方法和设备 |
CN109076222B9 (zh) | 2016-05-13 | 2021-10-15 | 索尼公司 | 图像处理装置和方法 |
CN116866557A (zh) | 2017-01-16 | 2023-10-10 | 世宗大学校产学协力团 | 影像解码/编码方法以及传送比特流的方法 |
US10999576B2 (en) * | 2017-05-03 | 2021-05-04 | Novatek Microelectronics Corp. | Video processing method |
US11470131B2 (en) | 2017-07-07 | 2022-10-11 | Box, Inc. | User device processing of information from a network-accessible collaboration system |
KR102476204B1 (ko) * | 2017-10-19 | 2022-12-08 | 삼성전자주식회사 | 멀티 코덱 인코더 및 이를 포함하는 멀티 코덱 인코딩 시스템 |
WO2019111012A1 (en) * | 2017-12-06 | 2019-06-13 | V-Nova International Ltd | Method and apparatus for decoding a received set of encoded data |
KR102659354B1 (ko) * | 2018-06-03 | 2024-04-18 | 엘지전자 주식회사 | 축소된 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치 |
US11272198B2 (en) * | 2019-01-30 | 2022-03-08 | Tencent America LLC | Method and apparatus for improved sub-block partitioning intra sub-partitions coding mode |
CN111683258B (zh) * | 2020-06-12 | 2022-04-22 | 上海集成电路研发中心有限公司 | 一种图像数据的压缩方法以及接口电路 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003075579A2 (en) * | 2002-03-05 | 2003-09-12 | Koninklijke Philips Electronics N.V. | Method and system for layered video encoding |
WO2008027192A2 (en) * | 2006-08-25 | 2008-03-06 | Thomson Licensing | Methods and apparatus for reduced resolution partitioning |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH082106B2 (ja) | 1986-11-10 | 1996-01-10 | 国際電信電話株式会社 | 動画像信号のハイブリツド符号化方式 |
US5107345A (en) * | 1990-02-27 | 1992-04-21 | Qualcomm Incorporated | Adaptive block size image compression method and system |
US6633611B2 (en) | 1997-04-24 | 2003-10-14 | Mitsubishi Denki Kabushiki Kaisha | Method and apparatus for region-based moving image encoding and decoding |
US6600836B1 (en) * | 2000-01-28 | 2003-07-29 | Qualcomm, Incorporated | Quality based image compression |
DE10022331A1 (de) | 2000-05-10 | 2001-11-15 | Bosch Gmbh Robert | Verfahren zur Transformationscodierung von Bewegtbildsequenzen |
US7474699B2 (en) | 2001-08-28 | 2009-01-06 | Ntt Docomo, Inc. | Moving picture encoding/transmission system, moving picture encoding/transmission method, and encoding apparatus, decoding apparatus, encoding method decoding method and program usable for the same |
US6980596B2 (en) | 2001-11-27 | 2005-12-27 | General Instrument Corporation | Macroblock level adaptive frame/field coding for digital video content |
US6795584B2 (en) * | 2002-10-03 | 2004-09-21 | Nokia Corporation | Context-based adaptive variable length coding for adaptive block transforms |
MY139467A (en) | 2003-01-07 | 2009-10-30 | Thomson Licensing Sa | Mixed inter/intra video coding of macroblock partitions |
DE602004026580D1 (de) | 2003-06-25 | 2010-05-27 | Thomson Licensing | Schnelle modusentscheidung-codierung für interframes |
US7830963B2 (en) * | 2003-07-18 | 2010-11-09 | Microsoft Corporation | Decoding jointly coded transform type and subblock pattern information |
US8064520B2 (en) * | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
US7366462B2 (en) | 2003-10-24 | 2008-04-29 | Qualcomm Incorporated | Method and apparatus for seamlessly switching reception between multimedia streams in a wireless communication system |
US8116374B2 (en) | 2004-05-07 | 2012-02-14 | Broadcom Corporation | Method and system for generating a transform size syntax element for video decoding |
CN100568974C (zh) | 2004-09-08 | 2009-12-09 | 松下电器产业株式会社 | 动态图像编码方法及动态图像解码方法 |
DE102004056446A1 (de) | 2004-11-23 | 2006-06-29 | Siemens Ag | Verfahren zur Transcodierung sowie Transcodiervorrichtung |
US20060133495A1 (en) | 2004-12-22 | 2006-06-22 | Yan Ye | Temporal error concealment for video communications |
US20060203905A1 (en) | 2005-03-14 | 2006-09-14 | Shih-Chang Hsia | Video coding system |
US8169953B2 (en) | 2005-05-17 | 2012-05-01 | Qualcomm Incorporated | Method and apparatus for wireless multi-carrier communications |
US7881384B2 (en) | 2005-08-05 | 2011-02-01 | Lsi Corporation | Method and apparatus for H.264 to MPEG-2 video transcoding |
EP2720468B1 (en) | 2005-09-26 | 2017-03-29 | Mitsubishi Electric Corporation | Moving image decoding method |
JP2007243427A (ja) | 2006-03-07 | 2007-09-20 | Nippon Hoso Kyokai <Nhk> | 符号化装置及び復号化装置 |
US8750387B2 (en) | 2006-04-04 | 2014-06-10 | Qualcomm Incorporated | Adaptive encoder-assisted frame rate up conversion |
CN101175210B (zh) * | 2006-10-30 | 2010-08-11 | 中国科学院计算技术研究所 | 用于视频预测残差系数解码的熵解码方法及熵解码装置 |
TWI392368B (zh) | 2006-11-17 | 2013-04-01 | Lg Electronics Inc | 視訊訊號之解碼方法、解碼裝置及其電腦可讀取媒介 |
US8335261B2 (en) | 2007-01-08 | 2012-12-18 | Qualcomm Incorporated | Variable length coding techniques for coded block patterns |
JP4901772B2 (ja) | 2007-02-09 | 2012-03-21 | パナソニック株式会社 | 動画像符号化方法及び動画像符号化装置 |
US8428133B2 (en) | 2007-06-15 | 2013-04-23 | Qualcomm Incorporated | Adaptive coding of video block prediction mode |
US8503527B2 (en) | 2008-10-03 | 2013-08-06 | Qualcomm Incorporated | Video coding with large macroblocks |
US20100086031A1 (en) | 2008-10-03 | 2010-04-08 | Qualcomm Incorporated | Video coding with large macroblocks |
US8619856B2 (en) | 2008-10-03 | 2013-12-31 | Qualcomm Incorporated | Video coding with large macroblocks |
US8483285B2 (en) | 2008-10-03 | 2013-07-09 | Qualcomm Incorporated | Video coding using transforms bigger than 4×4 and 8×8 |
-
2009
- 2009-09-18 US US12/562,412 patent/US8634456B2/en active Active
- 2009-09-29 RU RU2011117582/07A patent/RU2502218C2/ru active
- 2009-09-29 CA CA2738037A patent/CA2738037C/en active Active
- 2009-09-29 KR KR1020117010121A patent/KR101344115B1/ko active IP Right Grant
- 2009-09-29 JP JP2011530145A patent/JP5384652B2/ja active Active
- 2009-09-29 MY MYPI2011001203A patent/MY165997A/en unknown
- 2009-09-29 AU AU2009298648A patent/AU2009298648B2/en active Active
- 2009-09-29 CN CN200980139258.7A patent/CN102172025B/zh active Active
- 2009-09-29 BR BRPI0919839-3A patent/BRPI0919839B1/pt active IP Right Grant
- 2009-09-29 EP EP09793133A patent/EP2347593A2/en not_active Withdrawn
- 2009-09-29 WO PCT/US2009/058844 patent/WO2010039733A2/en active Application Filing
- 2009-10-02 TW TW098133632A patent/TWI419567B/zh active
-
2011
- 2011-03-16 IL IL211766A patent/IL211766A/en active IP Right Grant
- 2011-03-31 ZA ZA2011/02426A patent/ZA201102426B/en unknown
- 2011-12-08 HK HK11113282.7A patent/HK1161464A1/zh unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003075579A2 (en) * | 2002-03-05 | 2003-09-12 | Koninklijke Philips Electronics N.V. | Method and system for layered video encoding |
WO2008027192A2 (en) * | 2006-08-25 | 2008-03-06 | Thomson Licensing | Methods and apparatus for reduced resolution partitioning |
Non-Patent Citations (3)
Title |
---|
Bo-Yuan Chen; Shih-Hsuan Yang, "Using H.264 coded block patterns for fast inter-mode selection", 2008 IEEE International Conference on Multimedia and Expo, 23-26 June, 2008, Page: 721-724 * |
Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6), 8th Meeting: Geneva, Switzerland, 23-27 May, 2003 * |
Siwei Ma; C.-C. Jay Kuo, "High-definition video coding with super-macroblocks", Proc. SPIE 6508, Visual Communications and Image Processing 2007, Jan. 29, 2007 * |
Also Published As
Publication number | Publication date |
---|---|
BRPI0919839B1 (pt) | 2021-10-05 |
CN102172025A (zh) | 2011-08-31 |
JP2012504910A (ja) | 2012-02-23 |
AU2009298648A1 (en) | 2010-04-08 |
WO2010039733A2 (en) | 2010-04-08 |
JP5384652B2 (ja) | 2014-01-08 |
CA2738037C (en) | 2014-07-08 |
RU2011117582A (ru) | 2012-11-10 |
ZA201102426B (en) | 2011-12-28 |
US8634456B2 (en) | 2014-01-21 |
US20100086029A1 (en) | 2010-04-08 |
TW201028010A (en) | 2010-07-16 |
AU2009298648B2 (en) | 2014-05-15 |
WO2010039733A3 (en) | 2010-06-10 |
IL211766A (en) | 2015-04-30 |
IL211766A0 (en) | 2011-06-30 |
CN102172025B (zh) | 2015-01-07 |
KR20110063858A (ko) | 2011-06-14 |
KR101344115B1 (ko) | 2013-12-20 |
BRPI0919839A2 (pt) | 2015-12-15 |
HK1161464A1 (zh) | 2012-08-24 |
RU2502218C2 (ru) | 2013-12-20 |
EP2347593A2 (en) | 2011-07-27 |
CA2738037A1 (en) | 2010-04-08 |
MY165997A (en) | 2018-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI419567B (zh) | 使用大的巨區塊之視訊編碼 | |
JP6896903B2 (ja) | 大型マクロ・ブロックを用いたビデオ・コーディング | |
TWI392370B (zh) | 使用大的巨區塊之視訊編碼 | |
US20110194613A1 (en) | Video coding with large macroblocks | |
US20100086031A1 (en) | Video coding with large macroblocks |