JP5180220B2 - スケーラブルビデオコーデックにおける効率的な重要係数のコーディング - Google Patents
スケーラブルビデオコーデックにおける効率的な重要係数のコーディング Download PDFInfo
- Publication number
- JP5180220B2 JP5180220B2 JP2009532580A JP2009532580A JP5180220B2 JP 5180220 B2 JP5180220 B2 JP 5180220B2 JP 2009532580 A JP2009532580 A JP 2009532580A JP 2009532580 A JP2009532580 A JP 2009532580A JP 5180220 B2 JP5180220 B2 JP 5180220B2
- Authority
- JP
- Japan
- Prior art keywords
- index
- block
- slice
- initialization
- initialization table
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 9
- 230000001413 cellular effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 24
- 230000005540 biological transmission Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 235000019800 disodium phosphate Nutrition 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004321 preservation Methods 0.000 description 3
- 101000574648 Homo sapiens Retinoid-inducible serine carboxypeptidase Proteins 0.000 description 2
- 102100025483 Retinoid-inducible serine carboxypeptidase Human genes 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000011423 initialization method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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/174—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 slice, e.g. a line of blocks or a group of blocks
-
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/34—Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
-
- 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/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】
本発明は、以下に十分に説明されているように、参照によって本明細書に引用されている2006年10月13日に出願された仮特許出願第60/829,490号の優先権を主張する。
【0002】
本開示は、一般に、コーデックの分野に関し、より具体的には、スケーラブルビデオコーデック(scalable video codecs)における効率的な重要係数(significant coefficients)のコーディングについての技術に関する。
【背景技術】
【0003】
MPEG−1,H.261/263/264などのような従来のビデオコーディング標準は、よく「固定QP符号化(fixed QP encoding)」と呼ばれる所定の品質の設計、または、レート制御メカニズムの使用を介して相対的に一定のビットレートのいずれかでビデオを符号化する。ある理由に関して、ビデオが異なる品質で送信または復号化される必要がある場合、そのときデータは最初に復号化され、そして適切な設計を使用して再び復号化されなくてはならない。ある筋書きにおいて、例えば低遅延リアルタイムアプリケーションにおいて、そのような「トランスコーディング(transcoding)」が実現化されないことがある。同様に、従来のビデオコーディング標準は、特定の空間的解像度でビデオを符号化する。ビデオが低い解像度で送信または復号化される必要がある場合、そのときデータは最初に復号化され、空間的にスケールされ、そして再び符号化されなければならない。また、このようなトランスコーディングは、ある筋書きにおいて、実現化しない。
【0004】
すなわち、スケーラブルビデオコーデックにおける効率的な重要係数のコーディングについての技術の必要性がある。
【非特許文献】
「Joint Draft 7: Scalable Video Coding [06/09/08] 」JOINT VIDEO TEAM (JVT) OF ISO/IEC MPEG & ITU-T VCEG (ISO/IEC JTC1/SC29/WG11 AND ITU-T SG16 Q6), XX, XX, No. JVT-T201, 16 September 2006 (2006-09-16)
【0005】
スケーラブルビデオコーデックにおける効率的な重要係数のコーディングについての技術が提供される。1つの構成において、現在のフレームまたはスライスについて初期化テーブルを生成するための命令のセットを有する処理回路を含む装置と、スケーラブルビデオコーディングを使用して、前にフレームまたはスライスについて重要係数パスの統計量を有する初期化テーブルと、が提供される。装置は、現在のフレームまたはスライスとともに初期化テーブル(initialization table)を復号器に送信するための送信機をさらに含む。
【0006】
他の構成において、現在のフレームまたはスライスについて初期化テーブルを生成することを生じさせる命令を有するコンピュータ可読媒体を含むコンピュータプログラムプロダクトと、スケーラブルビデオコーディングを使用して、前に符号化されたフレームまたはスライスについて重要係数パス(significant coefficient pass)の統計量(statistics)を有する初期化テーブルが提供される。
【0007】
そのうえ、さらなる構成において、スケーラブルビデオコーディングを使用して現在のフレームまたはスライスを符号化する方法が提供される。方法は、現在のフレームまたはスライスについて初期化テーブルを生成することと、スケーラブルビデオコーディングを使用して、前に符号化されたフレームまたはスライスについて重要係数パスの統計量を有する初期化テーブルと、をさらに含む。方法は、現在のフレームおよびスライスとともに初期化テーブルを復号器に送信することと、送信された初期化テーブルを使用して現在のフレームまたはスライスを復号器によって復号することと、をさらに含む。
【0008】
さらなる態様は、詳細な説明から、特に添付された図面と共に用いられるときに、より直ちに明らかになる。
【図面の簡単な説明】
【0009】
本開示の態様および構成は、以下の詳細な説明から、全体に通して対応する要素の参考特徴を示すような図と共に用いられるときに、より直ちに明らかになる。
【図1】図1は、細粒度スケーラビリティ(Fine Granularity Scalability)(FGS)使用する従来のスケーラブルビデオコーディング(scalable video coding)(SVC)についての一般的なフローチャートを示す。
【図2】図2は、FGSとともにSVCコードを示す。
【図3A】図3Aは、すべての係数が重要パス係数として分類されたブロックの一例を示す。
【図3B】図3Bは、すべての係数が重要パス係数として分類されたブロックの一例を示す。
【図3C】図3Cは、すべての係数が重要パス係数として分類されたブロックの一例を示す。
【図4A】図4Aは、重要パスおよびリファインメントパス(refinement pass)の係数の一例を示す。
【図4B】図4Bは、重要パスおよびリファインメントパスの係数の一例を示す。
【図4C】図4Cは、重要パスおよびリファインメントパスの係数の一例を示す。
【図5】図5は、従来のSVCコーデックを示す。
【図6】図6は、SVCを使用してマクロブロックを符号化するための従来のSVCの符号化処理の一般的なフローチャートを示す。
【図7】図7は、SVCの省略時初期化テーブルの一例を示す。
【図8】図8は、indexSを再び定義する処理の一般的なフローチャートを示す。
【図9】図9は、SVCおよび再び定義されたindexSを使用して、マクロブロックを符号化するための従来のSVCの符号化処理の一般的なフローチャートを示す。
【図10】図10は、SVCおよび再び定義されたindexSを使用して、マクロブロックを符号化するためのSVCの簡略化された符号化処理の一般的なフローチャートを示す。
【図11】図11は、効率的なSVCコーデックのビット保存の第1レベルとともにSVCフレーム送信についての一般的なブロック図を示す。
【図12】図12は、効率的なSVCコーデックのビット保存の第2レベルとともにSVCフレーム送信についての一般的なブロック図を示す。
【図13】図13は、効率的なSVCコーデックのビット保存の第3レベルとともにSVCフレーム送信についての一般的なブロック図を示す。
【図14】図14は、無線装置の構成のブロック図を示す。
【0010】
図におけるイメージは、説明目的で簡略化されており、縮尺について描写していない。理解を容易にするために、なるべく、図に共通な同一要素を示すために、適切なときに要素を識別化するために接尾語が付加されることを除き、同一参考数字が使用されている。
【0011】
添付された図面は、発明の模範的な構成を説明し、それ自体で、他の同様の効果的な構成を認めることができる発明の範囲を限定すると考慮されるべきではない。これは、1つの構成の特徴またはステップがさらなる詳説なしで他の構成に有利に組み込まれることが考慮されている。
【発明を実施するための形態】
【0012】
本明細書で「模範的」の用語は、「見本、例、または実例としてサーブされる」を意味するために使用される。本明細書で「模範的」として説明されている任意の構成または設計は、他の構成または設計に対して好まれる、または、有利であると解釈される必要はなく、また、「コア(core)」、「エンジン」、「機械」、「プロセッサ」および「処理ユニット」の語は、互換性があるようにして使用される。
【0013】
図1は、細粒度スケーラビリティ(Fine Granularity Scalability)(FGS)を使用する従来のスケーラブルビデオコーディング(Scalable video coding)(SVC)10の一般的なフローチャートを示す。スケーラブルビデオコーディング(SVC)10は、トランスコーディング(transcoding)の問題を克服する。SVC10についての処理は、図2と併用して説明される。図2は、FGSとともに従来のSVCコードを示す。SVC10についての一般的な処理は、最小空間的解像度300および品質320、ここで0は基底層を示す、で「基底層(base layer)」(図2)を符号化することによってブロック12から開始する。ブロック12は、空間的解像度301−30mおよび/または品質321−32mを最大レベルまで増加させるコーディング増加情報(enhancement information)が用意されるブロック14によって後続される。したがって、空間的解像度の低減は、トランスコードする必要性なく、空間的増加情報を単純に処分することによって、達成することができる。
【0014】
品質増加について、情報は、よく不連続(密接な間隔)な点で切り捨てられ、達成すべき「基底」および「最大」との間の中間品質を可能にすることによってさらなる柔軟性を提供する。品質のスケーラビリティを達成することを可能にするFGS増加層1−mは、FGS(細粒度スケーラビリティ)(Fine Granularity Scalability)と称される。各FGS層0−mは、量子化変換係数340−34m、おそらく無制限の運動ベクトルなどの他のシンタックス要素361−36mを含む。
【0015】
第mのFGS増加層における変換係数のコーディングは、通常、2つのパスで行われる−ブロック18におけるリファインメント、および、ブロック16における重要なパス。ブロック16における重要なパスにおいて、全てのより低いFGS層の再構成されたゼロに等しい値である全ての係数はコードされる。残りの係数は、ブロック18におけるリファインメントパスでコードされる。そして、FGS増加層情報は、ブロック20において送信されることがある。
【0016】
図3A、3Bおよび3Cは、全ての係数が重要なパス係数として分類されたブロックの例を示す。図3Aに示すようなジグザグパターンは、全ての4×4ブロック40A、40Bおよび40Cについて使用される。図3A、3Bおよび3Cの模範的なブロック40A、40Bおよび40Cは、係数が重要なパスとして分類された場合をそれぞれ示す。図3A、3Bおよび3Cの各4×4ブロック40A、40Bおよび40Cにおいて、係数は、ラン値(run-value)ペアに分割される。図3Aのブロック40Aにおいて、係数は、{1}、{0-1}、{1}、{0-0-1}に分割される。図3Bのブロック40Bにおいて、係数は、{0-1}、{1}、{0-1}に分割される。図3Cのブロック40Cにおいて、係数は、{000000001}である。
【0017】
重要ランは、開始スキャンインデックス、0に等しい係数の数および終了値(terminating value)、または(p,r,v)トリプレット(triplet)によって十分に説明される。したがって、図3Aのブロック40Aにおけるランは、(0,0,1)0、(1,1,1)0、(3,0,1)0および(4,2,1)0であり、図3Bのブロック40Bについては、(0,1,1)1、(2,0,1)1および(3,1,1)1である。下付き文字は、ブロックインデックスを示し、明確にさせるために加えられた。第iのコーディング「cycle」において、p ≦ iである全てのランは、全てのブロックからからコードされる。この例において、各cycleのコードされたランは、
Cycle 0: (0,0,1)0, (0,1,1)1, (0,8,1)2
Cycle 1: (1,1,1)0
Cycle 2: (2,0,1)1
Cycle 3: (3,0,1)0, (3,1,1)1;and
Cycle 4: (4,2,1)0.
である。
【0018】
図4A、4Bおよび4Cは、重要パスおよびリファインメントパスの係数の例を示す。図4Aに示すようなジグザグパターンは、全ての4×4ブロック50A、50Bおよび50Cに使用される。ブロック50A,50Bおよび50Cにおいて、シェーディングされた係数は、リファインメントパスに属する。リファインメントパス係数は、ランレングスを算出しているときスキップされる。それゆえ、この例において、第1のブロック50Aの重要ランは、(0,1,1)0、(1,2,1)0および(5,2,1)0である。第2のブロック50Bについて重要ランは、(0,2,1)1および(2,1,1)1である。第3のブロック50Cについて重要ランは、(0,6,1)2である。指定のスキャンインデックスでリファインメント係数を示すために、特殊なランレングス「X」を使用することは、各cycleにおいて、コードされた係数は、
Cycle 0: (0,0,1)0, (0,1,1)1, (0,5,1)2
Cycle 1: (1,1,1)0
Cycle 2: (2,0,1)1, (2,X,0)2
Cycle 3: (3,X,1)0, EOB1, (3,X,0)2
Cycle 4: (4,X,0)0, (4,X,1)1, (4,X,0)2;and
Cycle 5: (5,1,1)0
である。
【0019】
シンボル「EOBn」は、nがブロックについてのカウンタであるブロックnにおいて、コートされるべきゼロでない重要パス係数がもう残っていないことを意味する。ブロック終結(end-of-block)(EOB)の他に、特殊(special)EOB(sEOB)は、送信されることができる。これは、ブロックnで、コードされるべきゼロでない重要パス係数がもう残っていないが、重要係数レベル絶対値のいくつかは1より大きいことを意味する。これらのブロックについて、さらなる情報は、送信される。
【0020】
EOBおよびsEOBシンボルが現れる確率は、フレーム間で、フレームコンテントに依存する1つのシーケンスから他へと、変化する。(p, r, v)トリプレットによってランレングスを説明しているとき、rの値は、0と等しくなるようにコードされた係数の数に等しい。例えば、ラン{0, 0, 0, 1}は、トリプレット(0, 3, 1)を割り当てる。r=Cおよびr=Dの値は、EOBおよびsEOBシンボルについて許可するために確保されている。
【0021】
コードの効率性は、可変長コード(variable length coded)(VLC)テーブルがcycle数または開始スキャン位置に依存するEOBおよびsEOBについて重要なランおよび値CおよびDを符号化するために使用された場合、かなり改良される。
【0022】
図5は、従来のSVCコーデック60を示す。スケーラブルビデオコーディング(SVC)コーダ(corder)60について1つの解決は、EOB決定モジュール62を用いて決定されるブロック終結(EOB)を動的に決定すること、sEOBがsEOBシフト決定モジュール64をシフトすることを含み、コーディングがコーディングモジュール74によって実行されている間、VLCテーブル1, 2, …, T、利用可能なVLCテーブル70の範囲外のセットは、統計量収集モジュール72を介して収集された統計量に基づいて、重要ランをコードするために用いられるべきできる。VLCテーブル1、2、…、T、EOBおよびsEOBシフトは、以下の、
indexS = 0;
ただし、
( i=0; i<scanIndex; i++ ){if (!coeffBase[i] && coeff[i]){indexS = i + 1;}} (1)
ここでiは、重要係数パスのジグザグスキャンにおいて位置を示すためのカウンタであり、scanIndexは、重要係数パスの間のcycleについての開始スキャンインデックスであり、coeffBase[i]は、スキャン位置iで0からn-1のFGS層についての情報を使用して再構成された変換係数の値であり、現在のコードされた第nのFGS層についての係数のcoeff[i]レベル、「!」は、ビットフリップ(bit flip)を意味し、また&&は論理AND関数を表す、仮のcode(1)に応じて、indexSが計算されたindexSに依存する。本明細書で説明する方程式(equation)および表現式(expression)の多くは、CまたはC++のコンピュータプログラミング言語と同様のシンタックスを使用することを注意すべきである。表現式は、説明目的のためであり、異なるシンタックスについて他のコンピュータプログラミング言語において表すことができる。
【0023】
SVCコーダ60は、scanIndex78A、coeffBase[i]78B、 coeff[i]78CおよびindexS78DをトラックするindexS計算機76をさらに含む。符号器および復号器の両方において、および累算器80は、異なるindexS値0、1、…、Max、ここでMaxは使用されたジグザグパターンにおけるスキャン位置の合計数の関数である、についてのシンボルの累算カウントを別々に記憶するために提供される。
【0024】
図6は、SVCを使用してマクロブロックを符号化するための従来のSVCの符号化処理90についての一般的なフローチャートを示す。処理は、マクロブロックを符号化することをともなうブロック91で開始される。ブロック91で各マクロブロックが符号化された後、VLCテーブル、EOBおよびsEOBシフトは、各indexSの値について、93A、93Bおよび93Cでそれぞれ更新される。それゆえ、ブロック91は、indexSが取得されるブロック92によって後続される。ブロック92は、VLCテーブル、EOBおよびsEOBシフトが更新されるブロック93A、93Bおよび93Cによって後続される。ブロック93A、93Bおよび93Cは、並列に示されている。ただし、説明図は、説明目的のためである。したがって、フローチャートブロックは、描写された順番で実行されることがあり、または、これらのブロックまたはそれらの部分は、並列に、または異なる順番に、同時に実行されることもある。ある例において、任意の1つのループ反復について、更新が要求されていない場合、ブロックは省略される。
【0025】
ブロック93A、93Bおよび93Cは、indexSが増加されるブロック94によって後続される。ブロック94は、最後のindexSの値について、全てのVLCテーブル、EOBおよびsEOBシフトが更新されたどうかの決定が行われるどうかのブロック95によって後続される。決定が「いいえ」の場合、処理90は、最後のindexSまで93A、93B、93C、94および95のループを繰り返すためにループバックする。ブロック95で決定が「はい」の場合、処理90は終了する。
【0026】
上記の解決に関して不利点の1つは、適合の複雑性である。例えばcycle Xが符号化/復号化されたとき、indexSは、0からMaxまでの任意の値を取ることができる。それゆえ、各マクロブロック終結EOB、sEOBシフトおよびVLCテーブル、indexS=0、1、…、Maxについて見つからなくてはならない。
【0027】
低ビットレートで、および/またはスライスコーディング(例えばクォータ共通中間形式(Quarter Common Intermediate Format)QCIFスライス)に関連して、シンボル統計量に適合するために必要であるビットレートは、フレーム/スライスビットレートの実質的な量を表す。したがって、レートひずみ(rate-distortion)の性能は、不適切なVLCテーブルまたはEOB/sEOBシフト初期化が小さいスライスおよび/または低ビットレートについて使用される場合、落ちることがある。
【0028】
図7は、SVCについて従来の省略時初期化テーブル99の一例を示す。省略時初期化テーブル99は、SVCについて従来のVLCテーブルおよびEOBシフト初期化方法を使用して生成される。SVCについて考慮された従来のVLCテーブルインデックスおよびEOBシフト初期化方法は、省略時初期化テーブルEOBshiftInit[D]、sEOBshiftInit[D]およびVLCtableSelectInit[D]、ここでDは省略値を意味する、の単一セットのみサポートする。容易に見られるように、indexS=0について示されるEOBshiftInit[D]の値、EOBシフトは16と等しくなるべきである(現在のSVCシンタックスEOBは、indexS=0について決して信号を送られるべきでなく、これゆえ、EOBシフトの最大値が使用される)。indexS=0についてEOBシフトは、2などと等しくなるべきである。VLCtableSelectInit[D]の値は、indexS=0、1および2について、VLCテーブルが使用されるべきであると指示し、indexS 3-15についてVLCテーブル0が使用される。sEOBshiftInit[D]の値は、indexS=0についてsEOBシフトが16と、indexS=1-10について6と等しく、その後単調に減少すべきであると指示する。省略時テーブルは、SVCコーデック60の復号器側で利用可能である。
【0029】
図7の初期化テーブルは、輝度について使用され、他の初期化テーブル(図示しない)は、クロミナンスについて使用される。しかしながら、初期化テーブルの単一のセットを使用することは、広く変化するコンテントをともなうビデオ素材の符号化が本質的に変化するシンボル統計量をもたらすため、(そして、したがって、各indexSの値について実質的な変化するVLCテーブル、EOBおよびsEOBシフトが選択される)十分でない。
【0030】
図8は、indexSを再び定義する処理100の一般的なフローチャートを示す。テーブルの適応の複雑性を減少させるため、以下の、
if(indexS>0){indexS=scanIndex;} (2)
ここで、scanIndexはcycleについて初期スキャン位置インデックスである、模範的な仮のcode(2)に応じてindexSは、再び定義される。
【0031】
一般的に、indexSを再び定義する処理100は、indexSが0より大きいかどうかの決定が行われるブロック102で開始する。決定が「はい」である場合、そのとき、ブロック102は、indexSがscanIndexと等しいブロック14によって後続される。しかしながら、決定が「いいえ」である場合、そのときブロック102は、indexSが0と等しいブロック106によって後続される。ブロック106は、追加的なステップを表すために点線で示されている。これは、indexSは0またはscanIndexとすることができることが仮コードから意味される。ブロック104および106が処理100を終了する。
【0032】
したがって、indexSは、scanIndexまたは0として意味される初期スキャンインデックスのみを等しくなるように再び定義される。これは、各cycleについてVLCテーブルインデックス、EOBおよびsEOBシフトのindexSの2つの値のみについて計算されることを意味する。
【0033】
図9は、SVCおよび再び定義されたindexSを使用してマクロブロックを符号化するためのSVCの符号化処理120の一般的なフローチャートを示す。SVCの符号化処理120は、マクロブロックを符号化することをともなうブロック122で開始する。ブロック122で各マクロブロックが符号化された後、ブロック124で現在のcycleが0と等しくなるように設定される。ブロック124は、現在のcycleについての第1indexSが取得されるブロック126によって後続される。これは、0でもよく、初期スキャンインデックスまたはcycleにおいてある他の数が上記のcode(1)に応じて計算される。ブロック126は、図8の処理100に応じてindexSが再び定義されるブロック128によって後続される。ブロック128は、indexSの現在の値、VLCテーブル、EOBおよびsEOBシフトが更新されるブロック130、132および134によって後続される。ブロック130、132および134は並列に示されているが、必要ならば異なる順番に構成され、および/または、スキップされることがある。ブロック130、132および134は、cycleの終わりかどうか判断する決定が行われるブロック136によって後続される。決定が「いいえ」の場合、そのときブロック138で第2のindexSが取得される。ブロック138は、図8の処理100に応じて現在のcycleについてindexSが計算されるブロック140によって後続される。ブロック140は、idexSの現在の値についてVLCテーブル、EOBおよびsEOBシフトがまた更新されるようにブロック130、132および134に前にループバックする。
【0034】
またブロック136に戻り、cycleの終わりは、いくつかの条件に基づいて決定されることがある。それでもなお、cycleの終わりは、indexSが2つの値0またはscanIndexのみを取るように決定されることがある。したがって、indexS=0およびscanIndexについて2つのループの繰り返しが完了した後、現在のcycleは、更新され、終了することがある。しかしながら、indexS=Oなしのcycleについて、cycleは、indexS=scanIndexについて1つの繰り返しのみの後に終わることがある。それに応じて、ブロック136での決定が「いいえ」の場合、そのときブロック136は、図11に関連してさらに詳しく説明されるように、VLCテーブル、更新されたEONシフト、および更新されたsEOBシフトが送信のために集計されるブロック142によって後続される。
【0035】
ブロック142は、最後のcycleに達したかどうかの決定が行われるブロック144によって後続される。ブロック144での決定が「はい」の場合、そのときブロック144は処理120を終了する。しかしながら、ブロック144での決定がさらなるcycleを意味する「いいえ」の場合、現在のcycleはブロック146で増加する。ブロック146は、indexS=0およびscanIndexについてVLCテーブル、EOBおよびsEOBの更新の処理を繰り返すようにブロック126に戻る。
【0036】
図10は、SVCおよび再び定義されたindexSを使用してマクロブロックを符号化するためのSVCの簡略化された符号化処理150の一般的なフローチャートを示す。さらに符号化処理120を簡略にするために、Cycle0の後、VLCテーブルは、0に等しいindexSについて適応されてない(EOBおよびsEOBは、現在のSVCシンタックスの制約内においてCycle=0またはindexS=0について決して信号を送るべきではない)。したがって、ブロック132’および134’は、これらはcycle0について、すなわちindexS=0のとき、省略されることがあるため、幻想のように示されている。Cycle0について選択されたVLCテーブルは、任意の他のCycleについてindexSが0に等しいとき、使用される。異なるCycleの並列にされた復号化が望まれる場合、indexS=0についてのVLCテーブルインデックスは、復号器に送信されるべきである。
図10において、SVCの簡略的な符号化処理150は、ブロック129での条件が加えられたこと、および、VLCテーブル、EOBおよびsEOBが少し異なる順番で更新されることを除いては、図9における処理120と本質的に同じである。したがって、改良された、または、加えられたブロックのみが説明される。処理150の他のブロックは、図9において前に上記で説明された。図10において、両方の現在のcycleが0より多く、indexSが=0でるかどうかを決定するためにブロック128の後に決定が行われる。決定が「いいえ」の場合、そのとき、VLCテーブルはブロック130’で更新される。VLCテーブルは、indexSが0に等しいとき、0より大きい任意のcycleについて、更新されない、または、変化されない。したがって、ブロック129での決定が「はい」である場合、このとき、EOBシフトおよびsEOBシフトのみがそれぞれブロック132’および134’で更新される。ブロック130は、ブロック132’および134’によって後続される。ブロック132’および134’は、ブロック136によって後続される。
【0037】
さらなる別の構成において、indexSは、初期スキャン位置インデックスの値を割り当てることをいつもできる。このような構成において、indexS>0、EOBおよびsEOBが許されないときにおける係数について、重要ランについてのVLCコードインデックスの割り当ては、適宜に改良されなくてはならない。例えば、indexS=4のとき、EOBおよびsEOBについて確保されるrの値は、(p,r,v)トリプレットにおいて、それぞれ0および5にそれぞれ等しい、また表1に応じて次のVLCテーブルは選択される。
【表1】
【0038】
EOBおよびsEOBが許可されないときにおける係数について、VLCコードインデックスへのシンボルの割り当て(重要ラン)は、表2に応じて割り当てられる。
【表2】
【0039】
図11は、効率的なSVCコーテック200のビット保存の第1レベルとともにSVCフレーム送信についての一般的なブロック図を示す。効率的なSVCコーデック200は、
符号器220および復号器240を含む。本明細書で説明された適応のコーディング効率を増加させるために、効率的なSVCコーデック200は、フレーム/スライス[i]として意味される、各フレームまたはスライスについて初期化テーブル[i-1]204Aを復号器240に送信する。初期化テーブル[i-1]204Aは、1つ以上のシンタックス要素を含むことができる。例えば、初期化テーブル[i-1]204Aは、輝度についての初期化テーブル[i-1]204AL、クロミナンスについての初期化テーブル[i-1]204Cを少なくとも含んでいる。初期化テーブル[i-1]204ALのみが示されている。初期化テーブル[i-1]204ALは、輝度についてのテーブルEOBshiftInit[i-1]、EOBshiftInit[i-1]およびEOBshiftInit[i-1]を含む。初期化テーブル[i-1]204Cも、クロミナンスについてのテーブルEOBshiftInit[i-1]、sEOBshiftInit[i-1]およびVLCtableSelectInit[i-1]を含むことができる。これらのテーブルは、例えば、省略時テーブルよりもよい現在のフレームの統計量を示すと保障するであろう前に符号化されたフレームまたはスライスについての統計量収集を使用することによって復号器220によって取得することができる。このような構成において、インディケータiは、現在のフレームまたはスライスを意味し、i-1は、前のフレームまたはスライスを意味する。インディケータMaxは、最後のindexSを意味する。
【0040】
図11において、符号器220から復号器240への送信は、初期化テーブル[i-1]204Aによって後続される現在のフレーム/スライス[i]204Aの代表的なビットストリームを含むであろう。ブロック206は、必要であればビットストリームにおいて他のデータが含まれることがあることを表すためのみに示されている。第2フレーム/スライス[i+1]202Bは、ブロック206または204Aに続くであろう。第2フレーム/スライス[i+1]202Bに続くと、初期化テーブル[(i-1)+1]204Bは、復号器240と通信される。ビットストリームは、残りのフレームまたはスライスについてブロック206ありまたはなしのパターンを含む。この例において、情報は、単一のビットストリームにおいて示されている。しかしながら、フレーム/スライス情報は、初期化テーブルから分離されたストリームに送信されることがある。このような構成において、復号器240は、初期化テーブル[i-1]204A、初期化テーブル[(i-1)+1]240Bなどにおいて送信された場合、輝度およびクロミナンスまたは他のシンタックス要素について省略時テーブルを使用することを必要とされないであろう。
【0041】
図12は、効率的なSVCコーデック200’のビット保存の第2レベルとともにSVCのフレーム送信についての一般的なブロック図を示す。効率的なSVCコーデック200’において、初期化テーブル[i-1]204’は、輝度のみについて、テーブルEOBshiftInit[i-1]、sEOBshiftInit[i-1]およびVLCtableSelectInit[i-1]を含む。したがって、あるフレーム/スライス202A’および202B’については、輝度のみについて初期化テーブル[i-1]204A’および初期化テーブル[(i-1) +1]204’が送信される。このような構成において、復号器240は、フレーム/スライスを復号するために、復号器240に常駐する省略時初期化クロミナンステーブル244を使用するであろう。
【0042】
図13は、効率的なSVCコーデック300のビット保存の第3レベルともにSVCフレーム送信の一般的なブロック図を示す。コーデック300は、符号器320および復号器340を含む。初期化テーブル[i-1]304Aを送信するために必要なビットの量を減らすために、EOBshiftInit[i-1]、sEOBshiftInit[i-1]およびVLCtableSelectInit[i-1]についてのテーブルは、あるindexS値についてのみ送信されることができる。例えば、indexS<Max1についてである。例えば、Max1は8であることがある。残りのindexSの値については、M+1, M+2, …Max2 として意味されるindexS > Max1 (M)について、省略時の値EOBshiftInit[D]、sEOBshiftInit[D]およびVLCtableSelectInit[D]をもつ省略時初期化テーブル344は、復号器340によって使用される。EOBshiftInit[i-1]、EOBshiftInit[i-1]およびVLCtableSelectInit[i-1]についてindexS値は、復号器340に送信され、符号器320において適応性のある決定することができ、フレームからフレームへ、または、スライスからスライスへと変動する。
【0043】
図13において、符号器320から復号器340までの送信は、初期化テーブル[i-1]304Aによって後続される現在のフレーム/スライス[i]302Aの代表的なビットストリームを含む。ブロック306は、ビットストリームにおいて他のデータが含まれることがあることを表すためのみに示されている。第2のフレーム/スライス[i+1]302Bは、ブロック306または304Aに続くだろう。第2のフレーム/スライス[i+1]302Bに続くと、初期化テーブル[(i-1)+1]304Bは、復号器340と通信される。ストリームは、残りのフレームまたはスライスについてブロック306ありまたはなしのパターンを含む。このような構成において、情報は、単一のビットストリームとして示される。しかしながら、フレーム/スライス情報は、初期化テーブルから分離されたストリームにおいて送信されることがある。
【0044】
さらに、フレーム/スライス内容に依存して、初期化テーブルは、あるシンタックス要素についてのみ、送信されることができ、残りのものについて、省略時初期化テーブルが使用されるべきである。例えば、図12に示すように、あるスライス/フレームについて、EOBについての初期化テーブル、および、輝度についてのVLCテーブルは送信されることができる。
【0045】
これは、cycleの数またはindexSが増加しているとき、EOBシフトおよびsEOB値がいつも単調に減少することが観察される。それゆえ、EOBシフトテーブルは、indexS=1について、EOBシフトの値がすべてのありうる値(例えば、0から15まで)の1つを取得することを許可するによって通信されることがある。indexS>1について、EOBシフト値は、indexS-1についてのEOBシフト値と同じ、または、より小さくなるように制限される。したがって、indexS>1について、EOBシフト値を送信するためにはindexSにつき1つのビットのみが必要とされる(例えば、0−EOBシフト値は同じのままである、1−EOBシフト値は1まで減少すべきである)。indexS=Maxについて、シフト値が0に達成するとき、Maxより大きいindexSについて、更なる情報が送信される必要はない。
【0046】
記載された初期化テーブルを送信する方法は、適合あり、または、なしで使用することができる。後者の場合において、初期化テーブルにおいての任意の値は、全部のフレーム/スライスについて使用される。
【0047】
上述の本明細書で説明された技術は、無線通信、コンピューティング(computing)、個人用エレクトロニクス(personal electronics)、などについて使用することができる。無線通信についての技術の模範的な使用は、以下に説明される。
【0048】
図14は、無線通信システムにおいて無線装置400の構成のブロック図を示す。無線装置400は、ハンドセット(handset)であってもよい。ハンドセットは、セルラー(cellular)またはカメラ電話、端末、無線搭載(wirelessly-equipped)個人用携帯型情報端末(personal digital assistant)(PDA)、無線通信装置、ビデオゲームコンソール(video game console)、ラップトップコンピュータ、ビデオ使用可能装置(video-enabled device)またはある他の無線搭載装置であってもよい。無線通信システムは、符号分割多重アクセス(Code Division Multiple Access)(CDMA)システム、移動通信用グローバルシステム(Global System for Mobile Communications)(GSM)システムまたはある他のシステムであってもよい。
【0049】
無線装置400は、受信パスおよび送信パスを介して両方向通信を提供することが可能である。受信パスでは、基地局によって送信された信号は、アンテナ412によって受信され、受信機(RCVR)414に提供される。受信機414は、受信された信号を調整およびデジタル化し、さらなる処理のためにサンプルをデジタルセクション420に提供する。送信パスで、送信機(TMTR)416は、デジタルセクション420から送信されるべきデータを受信し、データを処理および調整し、またアンテナ412を介して基地局に送信された変調信号を生成する。
【0050】
デジタルセクション420は、例えばモデムプロセッサ422、ビデオプロセッサ424、コントローラ/プロセッサ426、ディスプレイプロセッサ428、ARM/DSP432、グラフィック処理ユニット(graphics processing unit)(GPU)434、内部メモリ436、外部バスインタフェース(external bus interface)(EBI)438などのさまざまな処理、インタフェースおよびメモリユニットを含む。モデムプロセッサ422は、データ送信および受信についての処理(例えば、符号化、変調、復調および復号)を実行する。ビデオプロセッサ424は、カムコーダ(camcorder)、ビデオプレイバック(video playback)およびビデオ協議(video conferencing)などのビデオアプリケーション(video applications)について、ビデオ内容(video content)(例えば、静止画像、ビデオ動画、テキスト動画)の処理を実行する。コントローラ/プロセッサ426は、さまざまな処理の動作、デジタルセクション420内におけるインタフェースユニットに導くことが可能である。ディスプレイプロセッサ428は、ビデオのディスプレイ、グラフィックおよびディスプレイユニット430のテキストを容易にする処理を実行する。ARM/DSP432は、無線装置400について処理のさまざまなタイプを実行することができる。グラフィック処理装置434は、グラフィック処理を実行する。
【0051】
本明細書で説明された技術は、デジタルセクション420において任意のプロセッサ、例えば、ビデオプロセッサ242について使用することができる。内部メモリ436は、デジタルセクション420内においてさまざまなユニットについてのデータおよび/または命令を記憶する。EBI438は、デジタルセクション420(例えば、内部メモリ436)と、バスまたはデータラインDLに沿ったメインメモリ440との間のデータの送信を容易にする。
【0052】
デジタルセクション420は、1つ以上のDSP、マイクロプロセッサ、RISC、などとともに実装されることがある。デジタルセクション420は、1つ以上の特定用途向け集積回路(application specific integrated circuits)(ASIC)またはある他の集積回路(integrated circuits)ICに製造されることがある。
【0053】
本明細書で説明された技術は、さまざまなハードウェアユニットに実装されることがある。例えば、技術は、ASIC、DSP、RISC、ARM、デジタル信号処理装置(digital signal processing devices)(DSPD)、プログラム可能論理装置(programmable logic devices)(PLD)、フィールドプログラム可能ゲートアレイ(field programmable gate arrays)(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、および他のエレクトロユニットなどに実装されることがある。
【0054】
1つ以上の模範的な構造において、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせに実装されていることがある。ソフトウェアに実装されている場合、機能は、1つ以上の命令またはコードのように、コンピュータ可読媒体に記憶または送信されることがある。コンピュータ可読媒体は、一方から他方へコンピュータの転送を容易にする任意の媒体を含むコンピュータ記憶媒体および通信メディアの両方を含む。記憶媒体は、コンピュータによってアクセスされることができる任意の利用可能な媒体であってもよい。例として、また限定でなく、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD−ROMまたは他の光ディスク記憶装置(optical disk storage)、磁気ディスク記憶装置(magnetic disk storage)または他の磁気記憶装置(magnetic storage device)、または命令の形成またはデータ構成およびコンピュータによってアクセスされることができる望ましいプログラムコードを搬送または記憶するために使用することができる任意の他の媒体を備えることができる。また、任意の接続は、コンピュータ可読媒体と正確には呼ばれる。例えば、ソフトウェアがウェブサイト、サーバー、または同軸のケーブル(coaxial cable)を使用している他のリモートソース(remote source)、光ファイバケーブル(fiber optic cable)、ツイストペア線(twisted pair)、デジタル加入者線(digital subscriber line)(DSL)または赤外線(infrared)、電波(radio)、マイクロ波(microwave)などの無線技術から転送された場合、そのとき、同軸ケーブル、光ファイバケーブル、ツイストペア線、または赤外線、電波、マイクロ波などの無線技術は、媒体の定義に含まれる。本明細書で使用されているように、ディスク(Disk)とディスク(Disc)は、データを磁気的に再生するディスク(Disk)であり、一方、ディスク(Disc)はレーザーを用いて光学的に再生する、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル汎用ディスク(digital versatile disc)DVD,フロッピー(登録商標)ディスクおよびブルーレイディスクを含む。上記の組み合わせは、コンピュータ可読媒体の範囲にも含まれるべきである。
【0055】
含まれた構成の前の説明は、当業者が開示を築き、または、使用することを可能にするために提供される。これらの構成のさまざまな変形例は、当業者にとっては明らかであり、本明細書で定められた一般的な原理は、開示の意図または範囲からはずれることなく他の構成に適用されることがでる。したがって、この開示は、本明細書に示された構造に限定されることを意図しないが、本明細書に含まれた原理および斬新な特徴と矛盾しない最も幅広い範囲が与えられる。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
[1]現在のフレームまたはスライスについての初期化テーブルを生成するために機能する命令のセットを有する処理回路と、前記初期化テーブルはスケーラブルビデオコーディングを使用して、前に符号化されたフレームまたはスライスについての重要係数パスの統計量を有し、前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信する送信機と、を含む装置。
[2]前記初期化テーブルは、スキャンインデックスを有し、前記処理回路は、さらにスキャンインデックスを2つの値に制限するために機能する命令の第2セットを有し、ここで前記2つの値は0およびscanIndexを含む、前記scanIndexは、前記重要係数パスのジグザグパターンの初期スキャン位置インデックスである[1]に記載の装置。
[3]前記初期化テーブルは、可変長コーディング(VLC)テーブル、ブロック終結(EOB)シフトテーブルおよび特殊ブロック終結(sEOB)シフトテーブルを含む[2]に記載の装置。
[4]前記処理回路は、cycle0の後に、0に等しいスキャンインデックスについて前記VLCテーブルが更新されていない場合、さらに命令の第3セットを含む[3]に記載の装置。
[5]前記初期化テーブルは、輝度についてである[1]に記載の装置。
[6]前記初期化テーブルは、輝度およびクロミナンスについてである[1]に記載の装置。
[7]前記装置は、セルラー電話、無線装置、ハンドセット、無線通信装置、ビデオゲームコンソール、無線搭載個人用携帯型情報端末、ラップトップコンピュータ、または、使用可能装置である[1]に記載の装置。
[8]現在のフレームまたはスライスについての初期化テーブルを生成するために機能する命命令のセットを有する処理回路と、前記初期化テーブルはスケーラブルビデオコーディングを使用して、前に符号化されたフレームおよびスライスについての重要係数パスの統計量を有し、前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信する送信機と、を含む集積回路。
[9]前記初期化テーブルは、スキャンインデックスを有し、前記処理回路は、さらにスキャンインデックスを2つの値に制限するために機能する命令の第2セットを有し、ここで前記2つの値は0およびscanIndexを含む、前記scanIndexは、前記重要係数パスのジグザグパターンの初期スキャン位置インデックスである[8]に記載の集積回路。
[10]前記初期化テーブルは、可変長コーディング(VLC)テーブル、ブロック終結(EOB)シフトテーブルおよび特殊ブロック終結(sEOB)シフトテーブルを含む[9]に記載の集積回路。
[11]前記処理回路は、cycle0の後に、0に等しいスキャンインデックスについて前記VLCテーブルが更新されていない場合、さらに命令の第3セットを含む[10]に記載の集積回路。
[12]前記初期化テーブルは、輝度、クロミナンスまたは前記輝度および前記クロミナンスの両方についてである[10]に記載の集積回路。
[13]現在のフレームまたはスライスについての初期化テーブルを生成するための生成手段と、前記初期化テーブルはスケーラブルビデオコーディングを使用して、前に符号化されたフレームおよびスライスについての重要係数パスの統計量を有し、前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信する送信手段と、を含む装置。
[14]前記初期化テーブルは、スキャンインデックスを有し、前記生成手段は、スキャンインデックスを2つの値に制限するための制限手段を含み、ここで前記2つの値は0およびscanIndexを含む、前記scanIndexは、前記重要係数パスのジグザグパターンの初期スキャン位置インデックスである[13]に記載の装置。
[15]前記初期化テーブルは、可変長コーディング(VLC)テーブル、ブロック終結(EOB)シフトテーブルおよび特殊ブロック終結(sEOB)シフトテーブルを含む[14]に記載の装置。
[16]前記初期化テーブルは、輝度、クロミナンスまたは前記輝度および前記クロミナンスの両方についてである[15]に記載の装置。
[17]現在のフレームまたはスライスについての初期化テーブルを生成することと、前記初期化テーブルは、スケーラブルビデオコーディングを使用して、前に符号化されたフレームまたはスライスについての重要係数パスの統計量を有し、前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信することと、を生じさせる命令を有するコンピュータ可読媒体を含むコンピュータプログラムプロダクト。
[18]前記初期化テーブルは、スキャンインデックスを有し、前記生成させるための命令は、スキャンインデックスを2つの値に限定すること、ここで前記2つの値は0およびscanIndexを含む、前記scanIndexは、前記重要係数パスのジグザグパターンの初期スキャン位置インデックスである、をコンピュータに生じさせる命令を含む[17]のコンピュータプログラムプロダクト。
[19]前記初期化テーブルは、可変長コーディング(VLC)テーブル、ブロック終結(EOB)シフトテーブルおよび特殊EOB(sEOB)シフトテーブルを含む[18]のコンピュータプログラムプロダクト。
[20]前記初期化テーブルは、輝度、クロミナンス、または、前記輝度および前記クロミナンスの両方についてである[19]のコンピュータプログラムプロダクト。
[21]スケーラブルビデオコーディングを使用して現在のフレームまたはスライスを符号化することと、前記現在のフレームまたはスライスについて初期化テーブルを生成することと、前記初期化テーブルは前記スケーラブルビデオコーディングを使用して、前に符号化されたフレームまたはスライスについての重要係数パスの統計量を有し、前記現在のフレームおよびスライスとともに前記初期化テーブルを復号器に送信することと、前記送信された初期化テーブルを使用して前記現在のフレームまたはスライスを前記復号器によって復号することと、を含む方法。
[22]前記初期化テーブルは、スキャンインデックスを有し、前記生成することは、スキャンインデックスを2つの値に限定すること、ここで前記2つの値は0およびscanIndexを含み、前記scanIndexは、前記重要係数パスのジグザグパターンの初期スキャン位
置インデックスである、を含む[21]の方法。
[23]前記送信することは、前記初期化テーブルにおいて、可変長コーディング(VLC)テーブル、ブロック終結(EOB)シフトテーブルおよび特殊EOB(sEOB)シフトテーブルを送信することを含む[21]の方法。
[24]前記送信することは、輝度、クロミナンスまたは前記輝度および前記クロミナンスの両方についての前記初期化テーブルにおいて、可変コーディング(VLC)テーブル、ブロック終結(EOB)シフトテーブルおよび特殊EOB(sEOB)シフトテーブルを送信することを含む[23]の方法。
[25]前記復号することは、復号器における常駐の省略時テーブルを使用して、現在のフレームまたはスライスを復号器によって復号することを含む[24]の方法。
Claims (14)
- スケーラブルビデオコーディングを使用している以前の符号化されたフレームまたはスライスについての重要パス係数の符号化に基づいて、ブロック終結(EOB)シフトテーブル、特殊ブロック終結(sEOB)シフトテーブルおよび可変長コーディング(VLC)テーブルを含む初期化テーブルを現在のフレームまたはスライスについて生成するように機能する命令のセットを有する処理回路であって、前記初期化テーブルはインデックスにより確定され、前記処理回路が、前記インデックスを2つの値に制限するために機能する命令の第2セットをさらに有し、前記2つの値は0およびスキャンインデックス(scanIndex)を含み、前記スキャンインデックスは前記重要パス係数の符号化開始スキャン位置インデックスを確定する、処理回路と、
前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信する送信機と、
を含む装置。 - 前記初期化テーブルは、輝度についてである請求項1に記載の装置。
- 前記初期化テーブルは、輝度およびクロミナンスについてである請求項1に記載の装置。
- 前記装置は、セルラー電話、無線装置、ハンドセット、無線通信装置、ビデオゲームコンソール、無線搭載個人用携帯型情報端末、ラップトップコンピュータ、または、ビデオ使用可能装置である請求項1に記載の装置。
- スケーラブルビデオコーディングを使用している以前の符号化されたフレームまたはスライスについての重要パス係数の符号化に基づいて、ブロック終結(EOB)シフトテーブル、特殊ブロック終結(sEOB)シフトテーブルおよび可変長コーディング(VLC)テーブルを含む初期化テーブルを現在のフレームまたはスライスについて生成するように機能する命令のセットを有する処理回路であって、前記初期化テーブルはインデックスにより確定され、前記処理回路が、前記インデックスを2つの値に制限するために機能する命令の第2セットをさらに有していて、前記2つの値は0およびスキャンインデックス(scanIndex)を含み、前記スキャンインデックスは前記重要パス係数の符号化開始スキャン位置インデックスを確定する処理回路と、
前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信する送信機と、
を含む集積回路。 - 前記初期化テーブルは、輝度、クロミナンスまたは前記輝度および前記クロミナンスの両方についてである請求項5に記載の集積回路。
- スケーラブルビデオコーディングを使用している以前の符号化されたフレームまたはスライスについての重要パス係数の符号化に基づいて、ブロック終結(EOB)シフトテーブル、特殊ブロック終結(sEOB)シフトテーブルおよび可変長コーディング(VLC)テーブルを含む初期化テーブルを現在のフレームまたはスライスについて生成する生成手段であって、前記初期化テーブルはインデックスにより確定され、前記生成手段が、前記インデックスを2つの値に制限するようにさらに構成されていて、前記2つの値は0およびスキャンインデックス(scanIndex)を含み、前記スキャンインデックスは前記重要パス係数の符号化開始スキャン位置インデックスを確定する生成手段と、
前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信する送信手段と、
を含む装置。 - 前記初期化テーブルは、輝度、クロミナンスまたは前記輝度および前記クロミナンスの両方についてである請求項7に記載の装置。
- スケーラブルビデオコーディングを使用している以前の符号化されたフレームまたはスライスについての重要パス係数の符号化に基づいて、ブロック終結(EOB)シフトテーブル、特殊ブロック終結(sEOB)シフトテーブルおよび可変長コーディング(VLC)テーブルを含む初期化テーブルを現在のフレームまたはスライスについて生成することであって、前記初期化テーブルはインデックスにより確定される、生成することと、
前記インデックスを2つの値に制限することであって、前記2つの値は0およびスキャンインデックス(scanIndex)を含み、前記スキャンインデックスは前記重要パス係数の符号化開始スキャン位置インデックスを確定する、制限することと
前記現在のフレームまたはスライスとともに前記初期化テーブルを復号器に送信することと
をコンピュータに行わせる命令を記憶しているコンピュータ可読記憶媒体。 - 前記初期化テーブルは、輝度またはクロミナンスあるいは前記輝度および前記クロミナンスの両方のためのものである請求項9のコンピュータ可読記憶媒体。
- スケーラブルビデオコーディングを使用して現在のフレームまたはスライスを符号化することと、
前記スケーラブルビデオコーディングを使用している以前の符号化されたフレームまたはスライスについての重要パス係数の符号化に基づいて、ブロック終結(EOB)シフトテーブル、特殊ブロック終結(sEOB)シフトテーブルおよび可変長コーディング(VLC)テーブルを含む初期化テーブルを現在のフレームまたはスライスについて生成することであって、前記初期化テーブルはインデックスにより確定され、前記インデックスを2つの値に制限し、前記2つの値は0およびスキャンインデックス(scanIndex)を含み、前記スキャンインデックスは前記重要パス係数の符号化開始スキャン位置インデックスを確定する、生成することと、
前記現在のフレームおよびスライスとともに前記初期化テーブルを復号器に送信すること、
を含む方法。 - 前記送信することは、輝度またはクロミナンスあるいは前記輝度および前記クロミナンスの両方についてVLCテーブル、EOBシフトテーブルおよびsEOBシフトテーブルを送信することを含む請求項11の方法。
- 前記送信された初期化テーブルを用いて前記復号器により復号することをさらに含む請求項11の方法。
- 前記復号することは、復号器における常駐の省略時テーブルを使用して、現在のフレームまたはスライスを復号器によって復号することを含む請求項13の方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US82949006P | 2006-10-13 | 2006-10-13 | |
US60/829,490 | 2006-10-13 | ||
US11/868,179 | 2007-10-05 | ||
US11/868,179 US8942292B2 (en) | 2006-10-13 | 2007-10-05 | Efficient significant coefficients coding in scalable video codecs |
PCT/US2007/081119 WO2008048855A2 (en) | 2006-10-13 | 2007-10-11 | Efficient significant coefficients coding in scalable video codecs |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010528492A JP2010528492A (ja) | 2010-08-19 |
JP5180220B2 true JP5180220B2 (ja) | 2013-04-10 |
Family
ID=39286551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009532580A Expired - Fee Related JP5180220B2 (ja) | 2006-10-13 | 2007-10-11 | スケーラブルビデオコーデックにおける効率的な重要係数のコーディング |
Country Status (8)
Country | Link |
---|---|
US (1) | US8942292B2 (ja) |
EP (1) | EP2074828B1 (ja) |
JP (1) | JP5180220B2 (ja) |
KR (1) | KR101032277B1 (ja) |
CN (1) | CN101682757B (ja) |
BR (1) | BRPI0717831A2 (ja) |
TW (1) | TWI387343B (ja) |
WO (1) | WO2008048855A2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8233544B2 (en) * | 2006-07-13 | 2012-07-31 | Qualcomm Incorporated | Video coding with fine granularity scalability using cycle-aligned fragments |
US8565314B2 (en) | 2006-10-12 | 2013-10-22 | Qualcomm Incorporated | Variable length coding table selection based on block type statistics for refinement coefficient coding |
US8599926B2 (en) | 2006-10-12 | 2013-12-03 | Qualcomm Incorporated | Combined run-length coding of refinement and significant coefficients in scalable video coding enhancement layers |
US8325819B2 (en) | 2006-10-12 | 2012-12-04 | Qualcomm Incorporated | Variable length coding table selection based on video block type for refinement coefficient coding |
US9319700B2 (en) | 2006-10-12 | 2016-04-19 | Qualcomm Incorporated | Refinement coefficient coding based on history of corresponding transform coefficient values |
US8363579B2 (en) * | 2008-12-08 | 2013-01-29 | Intel Corporation | Apparatus and method of communication in a wireless network |
TWI399093B (zh) * | 2009-12-30 | 2013-06-11 | Univ Feng Chia | 用於高效能細緻可調性編碼器之快速重新量化方法及快速重新量化器 |
US8976861B2 (en) | 2010-12-03 | 2015-03-10 | Qualcomm Incorporated | Separately coding the position of a last significant coefficient of a video block in video coding |
US9042440B2 (en) | 2010-12-03 | 2015-05-26 | Qualcomm Incorporated | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding |
US20120163456A1 (en) | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
US9338449B2 (en) | 2011-03-08 | 2016-05-10 | Qualcomm Incorporated | Harmonized scan order for coding transform coefficients in video coding |
US9106913B2 (en) | 2011-03-08 | 2015-08-11 | Qualcomm Incorporated | Coding of transform coefficients for video coding |
US9167253B2 (en) | 2011-06-28 | 2015-10-20 | Qualcomm Incorporated | Derivation of the position in scan order of the last significant transform coefficient in video coding |
JP6763664B2 (ja) * | 2012-10-01 | 2020-09-30 | ジーイー ビデオ コンプレッション エルエルシー | エンハンスメント層作動パラメータのためのベース層ヒントを使用するスケーラブルビデオ符号化 |
US20230035118A1 (en) * | 2021-07-23 | 2023-02-02 | Tencent America LLC | Cross component end of block flag coding |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792044B2 (en) * | 2001-05-16 | 2004-09-14 | Koninklijke Philips Electronics N.V. | Method of and system for activity-based frequency weighting for FGS enhancement layers |
US6959116B2 (en) * | 2001-09-18 | 2005-10-25 | Emc Corporation | Largest magnitude indices selection for (run, level) encoding of a block coded picture |
US6909753B2 (en) * | 2001-12-05 | 2005-06-21 | Koninklijke Philips Electronics, N.V. | Combined MPEG-4 FGS and modulation algorithm for wireless video transmission |
WO2003079692A1 (en) * | 2002-03-19 | 2003-09-25 | Fujitsu Limited | Hierarchical encoder and decoder |
CN101692610B (zh) * | 2002-03-27 | 2014-06-25 | 松下电器产业株式会社 | 可变长度译码方法,可变长度译码设备 |
US7136532B2 (en) * | 2002-06-27 | 2006-11-14 | Koninklijke Philips Electronics N.V. | FGS decoder based on quality estimated at the decoder |
US6894628B2 (en) * | 2003-07-17 | 2005-05-17 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Apparatus and methods for entropy-encoding or entropy-decoding using an initialization of context variables |
US7286710B2 (en) * | 2003-10-01 | 2007-10-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Coding of a syntax element contained in a pre-coded video signal |
US7227894B2 (en) * | 2004-02-24 | 2007-06-05 | Industrial Technology Research Institute | Method and apparatus for MPEG-4 FGS performance enhancement |
US7519229B2 (en) * | 2004-03-30 | 2009-04-14 | Apple, Inc. | Video coding system providing separate coding chains for dynamically selected small-size or full-size playback |
US20060008009A1 (en) * | 2004-07-09 | 2006-01-12 | Nokia Corporation | Method and system for entropy coding for scalable video codec |
TWI243615B (en) * | 2004-10-11 | 2005-11-11 | Ind Tech Res Inst | System for enhancing compression ratio of scalable video coding and method thereof |
US20070223826A1 (en) * | 2006-03-21 | 2007-09-27 | Nokia Corporation | Fine grained scalability ordering for scalable video coding |
US8275045B2 (en) | 2006-07-12 | 2012-09-25 | Qualcomm Incorporated | Video compression using adaptive variable length codes |
KR100809301B1 (ko) * | 2006-07-20 | 2008-03-04 | 삼성전자주식회사 | 엔트로피 부호화/복호화 방법 및 장치 |
-
2007
- 2007-10-05 US US11/868,179 patent/US8942292B2/en not_active Expired - Fee Related
- 2007-10-11 CN CN200780038049.4A patent/CN101682757B/zh not_active Expired - Fee Related
- 2007-10-11 JP JP2009532580A patent/JP5180220B2/ja not_active Expired - Fee Related
- 2007-10-11 EP EP07853960.8A patent/EP2074828B1/en not_active Not-in-force
- 2007-10-11 WO PCT/US2007/081119 patent/WO2008048855A2/en active Search and Examination
- 2007-10-11 KR KR1020097009489A patent/KR101032277B1/ko not_active IP Right Cessation
- 2007-10-11 BR BRPI0717831-0A2A patent/BRPI0717831A2/pt not_active IP Right Cessation
- 2007-10-12 TW TW096138335A patent/TWI387343B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20090095564A (ko) | 2009-09-09 |
TWI387343B (zh) | 2013-02-21 |
EP2074828B1 (en) | 2016-11-16 |
CN101682757B (zh) | 2014-08-27 |
US20080089425A1 (en) | 2008-04-17 |
WO2008048855A2 (en) | 2008-04-24 |
WO2008048855A3 (en) | 2009-12-17 |
JP2010528492A (ja) | 2010-08-19 |
US8942292B2 (en) | 2015-01-27 |
TW200835337A (en) | 2008-08-16 |
KR101032277B1 (ko) | 2011-05-06 |
EP2074828A2 (en) | 2009-07-01 |
BRPI0717831A2 (pt) | 2014-06-10 |
CN101682757A (zh) | 2010-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5180220B2 (ja) | スケーラブルビデオコーデックにおける効率的な重要係数のコーディング | |
US7924917B2 (en) | Method for encoding and decoding video signals | |
KR101132386B1 (ko) | 비디오 코더 | |
CN115174900B (zh) | 视频编码器和相关编码方法 | |
EP2834970B1 (en) | Level signaling for layered video coding | |
RU2720975C2 (ru) | Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы | |
CA2590705A1 (en) | Methods of and apparatuses for adaptive entropy encoding and adaptive entropy decoding for scalable video encoding | |
WO2008127536A2 (en) | Methods and apparatus for video usability information (vui) for scalable video coding (svc) | |
WO2006082690A1 (ja) | 画像符号化方法および画像符号化装置 | |
EP2196029A1 (en) | Method, medium, and apparatus for encoding and/or decoding video | |
WO2006112642A1 (en) | Method and apparatus for adaptively selecting context model for entropy coding | |
KR20100015611A (ko) | 다운샘플링된 기준 화상을 이용한 인터-뷰 예측 | |
US20120183060A1 (en) | Techniques for describing temporal coding structure | |
US20060133491A1 (en) | Video codec | |
WO2023272533A1 (zh) | 编解码方法、编码器、解码器以及存储介质 | |
US20030123538A1 (en) | Video recording and encoding in devices with limited processing capabilities | |
TW202341734A (zh) | 編解碼方法及電子設備 | |
CN115866297A (zh) | 视频处理方法、装置、设备及存储介质 | |
US20030118099A1 (en) | Fine-grain scalable video encoder with conditional replacement | |
US20060133488A1 (en) | Method for encoding and decoding video signal | |
US20240348816A1 (en) | Method and non-transitory computer readable storage medium for video generative compression | |
WO2023173025A2 (en) | Adaptive context initialization for entropy coding in video coding | |
AU2008201768A1 (en) | Method and apparatus for adaptively selecting context model for entropy coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111012 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111220 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120315 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120321 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120323 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120420 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120807 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121101 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130110 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5180220 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |