JP2006191628A - 適応係数スキャン順序付け - Google Patents

適応係数スキャン順序付け Download PDF

Info

Publication number
JP2006191628A
JP2006191628A JP2005379861A JP2005379861A JP2006191628A JP 2006191628 A JP2006191628 A JP 2006191628A JP 2005379861 A JP2005379861 A JP 2005379861A JP 2005379861 A JP2005379861 A JP 2005379861A JP 2006191628 A JP2006191628 A JP 2006191628A
Authority
JP
Japan
Prior art keywords
scan order
digital media
coefficients
location
order
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.)
Granted
Application number
JP2005379861A
Other languages
English (en)
Other versions
JP4700491B2 (ja
Inventor
Sridhar Srinivasan
スリニバサン スリダール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006191628A publication Critical patent/JP2006191628A/ja
Application granted granted Critical
Publication of JP4700491B2 publication Critical patent/JP4700491B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/18Methods 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 a set of transform coefficients

Abstract

【課題】適応係数スキャン順序付けを提供する。
【解決手段】デジタルメディアコーデックは、デジタルメディアのローカル統計情報に従って変換係数の係数スキャン順序を適応的に並べ替えて、エントロピー符号化によって係数がより効率的に符号化されるようにする。圧縮デジタルメディアストリーム内でスキャン順序を復号器に明示的に伝達しなくて済むように、符号化および復号において、適応スキャン順序付けを因果的に適用する。適応スキャン順序付けでは、計算が効率的になるように統計分析情報が更新されるたびにスキャン順序を1回トラバースし、隣接する順番の係数の場所に対して条件付き交換操作を適用することによってスキャン順序を並べ替える。
【選択図】図6

Description

本発明は、主に、ブロック変換ベースのデジタルメディア(たとえば、ビデオや画像)圧縮に関する。
ブロック変換ベースの符号化の概要
変換符号化は、オーディオ、画像、およびビデオの多くの圧縮システムで用いられている圧縮手法である。非圧縮のデジタル画像やデジタルビデオは、一般に、2次元(2D)グリッドに並べられた、画像フレームまたはビデオフレーム内の各場所における画素または色のサンプルとして表されたり、キャプチャされたりする。これを、画像またはビデオの空間領域表現と呼ぶ。たとえば、一般的な画像フォーマットは、グリッドとして並べられた、24ビットの色画素サンプルのストリームによって構成される。各サンプルは、グリッド内の画素の場所における色成分を表す色空間(特にRGBやYIQなど)内の数値である。画像やビデオの様々なシステムで、様々に異なる色解像度、空間解像度、および時間解像度のサンプリングを行うことが可能である。同様に、一般に、オーディオは時間サンプリングされたオーディオ信号ストリームによって表される。たとえば、一般的なオーディオフォーマットは、一定の時間間隔で取得されたオーディオ信号の16ビット振幅サンプルのストリームによって構成される。
非圧縮デジタルのオーディオ、画像、およびビデオの各信号は、相当な記憶容量および伝送容量を消費し得る。変換符号化では、デジタルのオーディオ、画像、およびビデオのサイズを減らすために、信号の空間領域表現を周波数領域(または他の同様の変換領域)表現に変換し、その変換領域表現のうちの、一般に知覚されにくい特定の周波数成分の解像度を下げる。これによって発生するデジタル信号の知覚可能な劣化は、空間領域において画像またはビデオの色解像度または空間解像度を下げた場合や、時間領域においてオーディオの解像度を下げた場合と比較して、概して非常に小さい。
より具体的には、図1に示された一般的なブロック変換ベースのコーデック100は、非圧縮デジタル画像の画素を、固定サイズの2次元ブロック(X1,...,Xn)に分割する(各ブロックは他のブロックと部分的に重なっている可能性がある)。各ブロックには、空間周波数分析を行う線形変換120−121が適用され、これによって、ブロック内の空間サンプルが、周波数(または変換)係数の集合に変換される。これらの係数は、そのブロック間隔にわたる、対応する周波数帯におけるデジタル信号の強度をおおまかに表したものである。圧縮に関しては、変換係数は選択的に量子化される(130)(すなわち、係数値の最下位ビットをドロップするか、あるいは、より高い解像度数の集合にある値をより低い解像度にマッピングするなどして、解像度を下げられる)ことが可能であり、さらに、エントロピー符号化または可変長符号化されて(130)圧縮データストリームになることが可能である。復号では、変換係数が逆変換170−171されて、元の色/空間サンプリングされた画像/ビデオ信号がほぼ再構築される(再構築されたブロック
Figure 2006191628
になる)。
ブロック変換120−121は、サイズNのベクトルxに対する数学的演算として定義され得る。ほとんどの場合、この演算は線形乗算であり、変換領域出力y=Mxが生成される(Mは変換行列である)。入力データが任意に長い場合はサイズNのベクトルにセグメント化され、各セグメントにブロック変換が適用される。データ圧縮を行う場合は、可逆ブロック変換が選択される。言い換えると、行列Mは反転可能である。複数次元の場合(たとえば、画像やビデオの場合)、ブロック変換は、一般に、分離可能な(separable)演算として実装される。行列乗算は、データの各次元(すなわち、行と列の両方)に沿って別々に適用される。
圧縮に関しては、変換係数(ベクトルyの成分)は選択的に量子化される(すなわち、係数値の最下位ビットをドロップするか、あるいは、より高い解像度数の集合にある値をより低い解像度にマッピングするなどして、解像度を下げられる)ことが可能であり、さらに、エントロピー符号化または可変長符号化されて圧縮データストリームになることが可能である。
復号器150における復号においては、図1に示すように、以上の演算の逆(逆量子化/エントロピー復号160および逆ブロック変換170−171)が、復号器150の側に適用される。データが再構築される間、逆行列M-1(逆変換170−171)が乗算子として、変換領域データに適用される。逆変換は、変換領域データに対して適用されると、元の時間領域または空間領域のデジタルメディアをほぼ再構築する。
用いられる変換としては、シンプルなDPCMタイプの予測子/修正子や、より複雑な構成のもの(ウェーブレットやDCT(離散コサイン変換)など)が可能である。一般に用いられている標準規格であるJPEG/MPEG2/MPEG4、JPEG2000、Windows(登録商標) Media Video(WMV)では、それぞれ、DCT、ウェーブレット、整数化DCT(integerized−DCT)を用いている。さらに、WMVでは、イントラブロックおよびイントラフレームの、見て分かる歪みやレート歪みに効果のある重複平滑化演算子(lapped smoothing operator)を用いている。重複平滑化演算子は、ブロック変換との組み合わせで、非特許文献1において示されているタイプの重複変換を模擬しようとする。
係数のスキャンパターン
JPEG、MPEG2、MPEG4、およびWMVを含む、多くのブロック変換ベースの符号器では、ランレングス符号化手法を用いて、特定ブロックに対応する量子化係数を符号化する(たとえば、特許文献2を参照)。ランレングス符号化は、所定のパターンに従って量子化変換係数のブロックをスキャンすることによって行われる。その一例が、図3に示した連続「ジグザグ」スキャンパターンである。スキャンパターンが連続であることについての本質的な要件はないが、同様の連続ジグザグスキャンパターンがJPEGやMPEG2/4でも広く用いられている。
ランレングス符号化手法では、ベースとなる変換の統計情報を利用する。一般に、大きな係数ほど「DC」値寄りに発生し(DC値は慣例的に左上隅に表される)、頻出しない係数ほど、また、小さな係数ほど、DCから距離をおいて発生する。たとえば、変換ブロックのほとんどの変換係数は、量子化後に値がゼロになるのが普通である。多くのスキャンパターンでは、値が非ゼロである可能性が高い係数ほど優先される。言い換えると、そのような係数は、スキャンパターンにおいて、より早くスキャンされる。このようにして、非ゼロの係数がひとかたまりになりやすく、その後に、値がゼロである係数の、1つまたは複数の長いグループが続く。このことは特に、より効率的なラン/レベル/ラスト符号化(run/level/last coding)につながるが、他の形式のエントロピー符号化でも、並べ替えの恩恵が得られる。
たとえば、ブロック次元や、画像の形式がインタレースかプログレッシブかに応じて、所定のスキャンパターンまたは静的なスキャンパターンの限定されたセットから選択するビデオ圧縮システムについて、特許文献1および特許文献2において説明されている。
米国特許出願第10/989844号明細書(Lin他、「Scan Patterns For Interlaced Video Content」、2004年11月15日出願) 米国特許出願第10/989594号明細書(Liang他、「Scan Patterns For Progressive Video Content」、2004年11月15日出願) Srinivasan他、「Improved Reversible Transform For Lossy And Lossless 2-D Data Compression」(米国特許出願明細書、2004年12月17日出願) Tu他、「Reversible Overlap Operator For Efficient Lossless Data Compression」(米国特許出願明細書、2004年12月17日出願) H. S. Malvar, Signal Processing with Lapped Transforms, Artech House, Boston, MA, 1992 W. B. Pennebaker and J. L. Mitchell, JPEG: Still Image Compression Standard, Van Nostrand Reinhold, New York, 1993
既存のコーデックの所定の係数スキャンパターンの問題
しかしながら、本願発明者らの観察によれば、変換ブロック内の起こりうる係数のパターンには、ある種のローカルデータ依存性がある。たとえば、画像の水平次元と垂直次元のいくつかのブロックにまたがる場合もある、ざらつきのある領域においては、係数は予想どおりに発生する。一方、画像の垂直方向または水平方向に強い特徴がある領域では、その対応する軸に沿って係数が発生する可能性がより高い。したがって、ざらつきのある領域についての使用ビット数を減らすという意味で理想的なスキャンパターンが、直線的な特徴を有する領域についても理想的であるとは限らない。
また、重複変換を用いることが、スキャンパターンの最適性にさらに悪影響を及ぼす。ブロック変換の前のプリフィルタとして重複変換を実装した場合は、元の画像にある不連続部分がプリフィルタによって強調される。したがって、変換係数の分散がより大きくなり、さらに、最高周波数の強度がより高くなる。実際、(多くの変換の係数ブロックの右下にある変換係数である)最高2D周波数が、最も可能性が低いとは言えなくなることがしばしば観察されている。
一連の画像ブロックに対する所与のスキャン順序が最適でないことには、第3の理由がある。それは、「DCAC予測」の効率が変動することに基づいている。DCAC予測は、X次元またはY次元においてDCであって、その他においてACである「DCAC」係数の発生および/または大きさを最小にするために用いられる符号化ツールである。これらは、軸に沿う係数である強く直線的である領域についてのDCAC係数は、ランダムにざらつきのある領域についてのDCAC係数より確実に予測可能である。したがって、最適なスキャン順序は、ベースとなるデータに依存するだけでなく、ベースとなるデータがそのDCAC係数によっていかによく予測できるかにも影響される。
適応係数スキャン順序付け
上記の問題は、本明細書において説明する適応係数スキャン順序付け手法によって対処される。この手法では、ブロック係数のスキャン順序と画像のローカル統計情報とを効率的に照合する。説明するこの手法の実施態様は、計算が非常に効率的であり、遅延が最小限である。このことは、時間的条件がクリティカルな画像やビデオのコーデックにおいて重要な有利点である。さらに、説明する適応係数スキャン順序付けの実施態様では、符号器および復号器が因果的に遭遇する物事から統計情報を「学習」する。したがって、圧縮ビットストリーム内でシグナリングやビット使用を追加しなくても、付加情報が復号器に送信される。
本発明のその他の機能や有利点は、この後の添付図面を参照しながら、実施形態の詳細な説明から明らかになるであろう。
以下の説明は、適応係数スキャン順序付け手法を利用するデジタルメディア圧縮システム(コーデック)に関する。例示のために、この適応係数スキャン順序付け手法を組み込んだ圧縮システムの実施形態を、画像またはビデオの圧縮システムとする。代わりに、他のデジタルメディアや2Dデータのための圧縮システム(コーデック)には、可逆オーバーラップ演算子を組み込むことも可能である。適応係数スキャン順序付け手法では、デジタルメディア圧縮システムが圧縮デジタルメディアデータを特定の符号化フォーマットによって符号化することは必須ではない。
1.符号器/復号器
図4および図5は、重複変換に基づき、後に詳述する適応係数スキャン順序付けを用いる代表的な2次元(2D)データ符号器400および復号器500で行われる処理を、一般化した図である。これらの図は、この適応係数スキャン順序付け手法の、2Dデータ符号器および復号器を組み込んだ圧縮システムでの使用および用途を一般化あるいは簡略化した図である。適応係数スキャン順序付け手法が組み込まれた別の符号器では、この代表的な符号器および復号器で示されているより多くの、あるいは少ない処理で2Dデータ圧縮を行うことも可能である。たとえば、符号器/復号器によっては、色変換、色フォーマット、スケーラブル符号化、可逆的符号化、マクロブロックモードなどを含むことも可能である。圧縮システム(符号器および復号器)は、可逆的から不可逆的までの幅がある量子化パラメータに基づくことが可能な量子化に応じて、2Dデータの可逆的圧縮および/または不可逆的圧縮を提供することが可能である。
2Dデータ符号器400は、符号器への入力として提供された2Dデータ410の(標準的な入力に対して)よりコンパクトな表現である圧縮ビットストリーム420を生成する。たとえば、2Dデータ入力として、画像、ビデオシーケンスのうちの1フレーム、他の2次元データなどが可能である。2Dデータ符号器は、入力データを(この代表的符号器では16×16画素のサイズ)のマクロブロックに分割してタイリングする(430)。さらに、2Dデータ符号器は、各マクロブロックを4×4ブロックに分割してタイリングする(432)。ブロック間の各エッジに「順方向オーバーラップ」演算子440を適用し、その後に、各4×4ブロックをブロック変換450によって変換する。このブロック変換450は、特許文献3で説明されている可逆性スケールフリー2D変換であることが可能である。オーバーラップ演算子は、特許文献4で説明されている可逆性オーバーラップ演算子であることが可能である。代替として、離散コサイン変換または他のブロック変換、重複変換、およびオーバーラップ演算子を用いることが可能である。この変換に続き、各4×4変換ブロックのDC係数460が、同様の処理連鎖(タイリング、順方向オーバーラップ、その後に4×4ブロック変換)の対象になる。結果として得られるDC変換係数およびAC変換係数を、量子化し(470)、エントロピー符号化し(480)、パケット化する(490)。
復号器は、逆の処理を実行する。復号器側では、各パケットから変換係数ビットを抽出し(510)、そこから係数自体を復号(520)および逆量子化(530)する。逆変換を適用してDC係数540を再生成し、好適な平滑化演算子をDCブロックエッジ全体にわたって適用して、DC係数の平面を「逆オーバーラップ」する。続いて、DC係数に4×4逆変換550を適用してデータ全体を再生成し、ビットストリームからAC係数542を復号する。最後に、得られた画素平面内のブロックエッジを逆方向オーバーラップフィルタリングする(560)。これによって、再構築された2Dデータ出力が生成される。
2.適応係数スキャン順序付け
例示的なデジタルメディア圧縮システムの符号器400(図4)および復号器500(図5)は、適応係数スキャン順序付け手法を利用して、変換係数をエントロピー符号化する際の圧縮効率をさらに高める。この適応係数スキャン順序付けでは、エントロピー符号化480(図4)によって、より効率的に係数を符号化できるように、デジタルメディアデータのローカル統計情報に従って、ブロック係数のスキャン順序を効率的に調整する。適応係数スキャン順序付け手法の例示的実施態様では、符号器側と復号器側とで同じ決定処理を行って、符号器および復号器でメディアデータが処理される際に因果的に発生する物事からローカル統計情報を学習することにより、復号器に付加情報を送信するためにシグナリングまたはビット使用が追加されないようにする。さらにこの手法の例示的実施態様は、デジタルメディアストリームの符号化/復号における遅延を最小限にするために、計算が非常に効率的である(この点は、ライブ通信や同様の用途において有利となりうる)。
この適応係数スキャン順序付け手法の例示的実施態様は、以下の特性を有する。
1.スキャン順序は、デジタルメディアデータ(たとえば、画像)全体にわたって変更可能である。ただし、スキャン順序の変更または更新は、1つのブロック内でそのスキャン順序を用いた後のみに限定される。
2.スキャン順序適応化のアルゴリズムは、連続する2つのスキャンインデックスが特定の条件下で反転する条件付きの交換ステップに基づいている。
図6は、符号器400および復号器500における適応係数スキャン順序付け手法の一実施態様による手順600を示す。手順600は、操作610から始まる。操作610では、係数スキャン順序(または、複数のスキャン順序が(たとえば、水平係数および垂直係数に対して)適応的に変化する場合の順序)を、標準的な範囲のデータ全体にわたって良好にスキャンすると予想される既知の順序付けに初期化する。適応係数スキャン順序付け手法の実施態様によっては、この初期順序付けは、(たとえば、マクロブロックの係数スキャン順序付けであれば、「垂直」方向性に対して優勢な「水平」方向性が示されるように)スキャン順序の状況が異なれば異なる可能性がある。適応係数スキャン順序付け手順の実施態様によっては、方向性またはスキャン状況が、符号器から復号器に明示的に伝達されることが可能である。他の実施態様では、この方向性は、AC係数に先立って送信されるDCサブバンドの方向から推論されることが可能である。たとえば、図7は、水平方向性を有する4×4ブロックの初期スキャン順序700の例である。図8は、垂直方向性を有する4×4ブロックの初期スキャン順序800の例である。この例では、水平方向性のスキャン順序700は、特定の方向性を示さないブロックについても使用される初期スキャン順序である。
図9に示すように、例示的手順600では、2つの1次元配列(Order(順序)配列910とTotals(総計)配列920)を用いてブロック係数のローカル統計情報を追跡する。各スキャン順序状況に対して別々の配列セットが保持される。例示的実施態様では、この配列(「Order」とラベルづけされている)は、逆スキャン、すなわち、昇順のスキャン順序で係数のインデックスを、エントリとして含む。手順600では、この配列を、初期化操作610で初期スキャン順序として初期化する。図9は、図8に示した初期垂直方向性スキャン順序の例800の、初期化時にOrder配列910に記憶されている値を示す。この図では、DC係数がAC係数の前に送信されるので、DC係数は配列には現れない。
各逆スキャンのOrder配列910について、手順600では、(この図では)「Totals」とラベルづけされた配列を保管する。手順600では、この配列の中で、それぞれの係数の発生率を総計する。次の操作620で、Totals配列を、任意の降順の値で初期化する。たとえば、ある値kに対して、この配列は値{k*N,k*(N−1),k*(N−1),...,k}で埋められる。これを、図9の表の下側の行に示す。この例での値kは、小さな整数(一般に2と4の間)であるように選択される。適応係数スキャン順序付け手順の実施態様によっては、kの選択は、量子化470(図4)で用いられる量子化パラメータに基づくことが可能である。
符号化処理の間に、手順600では、Order配列910の要素に反映されたスキャン順序に従って現在のブロックの係数をトラバースする(「for」ループ630、680で示されている)。このトラバースでは、Totals配列920で反映されている、係数の発生率の統計情報を更新する。より具体的には、この例示的な実施態様の操作610で、それぞれの係数における非ゼロ値の発生率に従ってTotals配列を更新する。スキャンのn番目の要素が非ゼロの場合(すなわち、インデックスがOrder[n]である変換係数が非ゼロの場合)は、操作640および操作650で示されるように、Totalsのn番目の要素を1だけ増加させる(すなわち、Totals[n]:=Totals[n]+1)。
増加の後にTotals[n]>Totals[n−1]であることが判明した場合は、この時点で、前の非ゼロ値の係数より高い周波数の、現在の係数で非ゼロ値が発生したことになる。そのようなイベント(操作660)の場合は、交換操作670がスキャン順序に適用される。交換操作670では、以下の擬似コードに示すように、スキャン順序および対応するTotalsのnとn−1とを交換する。
Figure 2006191628
交換操作670の結果として、交換前のインデックスがOrder[n]であった係数が、交換前のインデックスがOrder[n−1]であった係数より先にスキャンされるようになる。これは、実質的には、係数の非ゼロ値の発生率に基づく、係数のバブルソートである。
たとえば、図10は、Totals[n]>Totals[n−1]である状況を示している。矢印は、交換が必要な要素を示している。図11は、交換後のOrder配列とTotals配列とを示しており、図12は、対応する、4×4ブロックに対するスキャン順序インデックスを示している。
例示的適応係数スキャン順序付け手順600では、Totals[n−1]とTotals[n−2]などの条件付き交換をさらに行うことはない。これは、1つの非ゼロ係数についてのスキャン順序配列の移動がせいぜい1つしかないことを意味しており、したがって、例示的な手順600は、非ゼロ係数の数の複雑さが線形順序になっている。ループ630〜680内では、1つのブロックトラバースに対し係数を移動できるのは、スキャン順序のせいぜい1つの場所だけである。
例示的な手順600では、各段階での最適性は保証されないが、長期的には、スキャン配列が、順序付けアルゴリズムの論理に基づいて、定常分布のための全体的な最適性に近づくことが可能である。
適応化処理には、(ループ630〜680内の)現在の係数と、(非ゼロであったかどうかにかかわらず)前のスキャン要素だけが必要であることと、さらに、係数が変換行列から符号化されたときか、係数が変換行列に復号された後に条件付き切り換えが発生することから、適応化は因果的である。すなわち、現在のスキャン順序を用いてブロック全体を符号化することが可能である。その後で、符号化された非ゼロ係数とTotals配列とに基づいてスキャン順序を変更することが可能である。したがって、符号化または復号の処理に新たに遅延が発生することはない。
現在のブロックのすべての係数をトラバースした後、操作690で、符号化/復号すべきブロックがデジタルメディアデータ(たとえば、符号化中の画像)にまだあるかどうかを確認する。すべてのブロックが処理されたら、手順600が終了する。
手順600では、定期的に、Totals配列を初期化状態にリセットする。これは、計算のオーバーフローを防ぐためと、適応化を容易にするためである。画像圧縮符号における適応係数スキャン順序付け手順の一実施態様では、8マクロブロックの一塊りを開始するたびにTotals配列をリセットする(マクロブロックは、輝度画素の16×16配列であり、対応するクロミナンス画素を含む)。Totals配列の各要素の最大値は、8(マクロブロック数)×16(マクロブロック内の特定周波数の係数の数)×3(マクロブロック内の色平面の数)=384に最大初期化値(511未満であれば安全)を加えた数に制限されている。このケースでは、Totals配列には9ビットあれば十分である。適応化をより早くしたり遅くしたりするために他のリセット間隔を選択することも可能であり、リセット間隔は、量子化パラメータに依存する可能性がある。したがって、手順600では、操作692で示された、Totals配列のリセット間隔において、次のブロックの係数の処理に進む前に、操作620にループバックしてTotals配列を初期化することが可能である。
他の(より頻繁でない)周期的な間隔で、Totals配列とOrder配列の両方を初期化状態にリセットして、それらの場所でのランダムアクセスを容易にする。操作693において、そのような間隔でTotals配列およびOrder配列の初期化操作610にループバックする。たとえば、コーデックの実施態様に応じて、画像ビットストリームの独立に符号化された部分へのエントリポイントで初期化状態にリセットしたり、ビデオシーケンスの各画像の開始時に初期状態にリセットしたりすることが可能である。
3.バブルソートとの比較
バブルソートは、データの配列をソートするための、従来のコンピュータ手順である。バブルソート手順は、以下のように示すことができる。(一般性を失うことなく、数値であると仮定できる)N個の要素の配列をXで表す。X[i]はi番目の要素であり、インデックスiは、1からNまでの値をとる。
バブルソートは、配列をN−1回トラバースすることによって行われ、各トラバースは、N−1回の条件付き交換操作からなる。ソート順序が昇順の場合の条件付き交換操作は、以下のように定義される。
2とNとの間のiについては、X[i−1]>X[i]の場合に配列要素のX[i−1]とX[i]とを交換する。
各トラバースの間に、2で始まり、Nまで順に続く各インデックスiに対して条件付き交換操作を適用する。
N−1回のトラバースの最後に、配列Xがソートされる。降順またはアルファベット順にソートする場合や、ランク順序インデックスを生成する場合も、同じ手順を、わずかな変更で用いることが可能である。実際には、バブルソートは、実行時間がかかることから、あまり用いられない。
本明細書で説明した適応係数スキャン順序付け手順600は、同様の条件付き交換操作(すなわち、条件付き交換操作660、670)に基づいている。適応係数スキャン順序付け手順600の例示的な実施態様は、図示された手順600がより緩やかな更新スケジュールに従う点でバブルソートと異なる。より具体的には、以下の2つの点がバブルソートと異なる。
1.符号化/復号されたブロックごとに、配列のトラバースは1回だけである。
2.各トラバースの間に、非ゼロ係数に対応する配列要素に対してのみ条件付き交換操作を適用する。
これらの違いは、手順600の計算の複雑さを、任意の画像/ビデオコーデックの性能の範囲に収めて、その範囲で十分なものにするために役立つ。同時に、手順600において条件付き交換操作660、670を行うことは、バブルソートの場合と同様に、(Totals配列に反映される)統計情報が安定している場合に漸近的な意味で最適性が保持されるという恩恵がある。
例示的な適応係数スキャン順序付け手順600は、固定スキャンテーブルを用いるエントロピー符号化方式と比較して、2%もビットレートを節約できることがわかっている。あるいは、この手法を他の高度な状況モデルと併用して、いくつかの適応テーブルのうちのいずれかを選択することや、さらに、Huffman符号化、ビットプレーン符号化、または算術符号化などの手法と併用して、データをランレングス符号化することが可能である。たとえば、ハイパスバンドとローパスバンドとで異なる適応スキャンモデルを用いることが可能である。
この適応係数スキャン順序付け手法を用いて、より大きな変換サイズを符号化したり、複数の変換形状で(たとえば、4x8サイズブロックと8x4サイズブロックとで)符号化したりすることが可能である。同様に、任意の所定の様式で、画面全体にわたってブロックまたはマクロブロックをスキャンすることが可能である。条件付き交換ステップは、性能的に有利になるように、あるいは、著作権管理のために性能を落としたり、不明瞭にしたりするために、ヒステリシスまたは別のルールを用いることが可能である。
4.コンピューティング環境
適応係数スキャン順序付け手法を利用する、前述のコーデックは、デジタルメディア信号処理を実施できる任意の様々な装置で実現されることが可能であり、様々な例の中でも特に、コンピュータ、画像およびビデオの記録/送信/受信装置、ポータブルビデオプレーヤ、ビデオ会議システムなどで実現されることが可能である。デジタルメディア符号化手法は、ハードウェア回路で実施可能であるほか、図13に示すようなコンピュータまたは他のコンピューティング環境で実行されるデジタルメディア処理ソフトウェアでも実施可能である。
図13は、本明細書に記載の実施形態の実施に好適なコンピューティング環境(1300)の一般的な例を示す。本発明は、様々な汎用または専用コンピューティング環境で実施可能なので、コンピューティング環境(1300)は、本発明の使用または機能性の範囲を何ら限定するものではない。
図13に示すように、コンピューティング環境(1300)は、少なくとも1つの処理ユニット(1310)とメモリ(1320)とを含む。図13では、この最も基本的な構成(1330)を破線で囲んでいる。処理ユニット(1310)は、コンピュータで実行可能な命令を実行し、実際のプロセッサであっても仮想のプロセッサであってもよい。マルチプロセッサシステムでは、処理能力を高めるために、複数の処理ユニットが、コンピュータで実行可能な命令を実行する。メモリ(1320)は、揮発性メモリ(たとえば、レジスタ、キャッシュ、RAMなど)、不揮発性メモリ(たとえば、ROM、EEPROM、フラッシュメモリなど)、またはこれらの組み合わせであることが可能である。メモリ(1320)は、本明細書に記載の符号器/復号器および適応係数スキャン順序付け手法を実現するソフトウェア(1380)を格納する。
コンピューティング環境は、その他の機能を有することが可能である。たとえば、コンピューティング環境(1300)は、記憶装置(1340)、1つまたは複数の入力装置(1350)、1つまたは複数の出力装置(1360)、および1つまたは複数の通信接続(1370)を含む。バス、コントローラ、ネットワークなどの相互接続メカニズム(図示せず)は、コンピューティング環境(1300)のコンポーネント同士を相互接続する。一般に、オペレーティングシステムソフトウェア(図示せず)は、コンピューティング環境(1300)内で実行される他のソフトウェアの動作環境を提供し、コンピューティング環境(1300)の各コンポーネントのアクティビティをコーディネートする。
記憶装置(1340)は、リムーバブルであっても非リムーバブルであってもよく、磁気ディスク、磁気テープまたはカセット、CD−ROM、CD−RW、DVD、または他の任意の情報を格納するために用いられることが可能であってコンピューティング環境(1300)内でアクセスされることが可能な媒体を含む。記憶装置(1340)は、コーデックおよび適応係数スキャン順序付け手法を実現するソフトウェア(1380)のための命令を格納する。
入力装置(1350)は、キーボード、マウス、ペン、トラックボールなどのタッチ入力装置、音声入力装置、スキャン装置、または他の、コンピューティング環境(1300)への入力を提供する装置であることが可能である。オーディオの場合、入力装置(1350)は、オーディオ入力をアナログまたはデジタル形式で受け入れるサウンドカードまたは同様の装置か、オーディオサンプルをコンピューティング環境に提供するCD−ROMリーダであることが可能である。出力装置(1360)は、ディスプレイ、プリンタ、スピーカ、CDライタ、または他の、コンピューティング環境(1300)からの出力を提供する装置であることが可能である。
通信接続(1370)は、通信媒体を介しての、別のコンピューティングエンティティとの通信を可能にする。通信媒体は、コンピュータで実行可能な命令のような情報、圧縮されたオーディオまたはビデオの情報、または他のデータを、変調データ信号で搬送する。変調データ信号は、信号内の情報を符号化するように、その1つまたは複数の特性を設定したり変化させたりする信号である。限定ではなく例として、通信媒体は、電気、光、RF、赤外線、音響、またはその他の搬送波によって実施される、有線または無線の技術を含む。
本明細書で説明したデジタルメディア処理手法は、コンピュータ読取り可能媒体の一般的な文脈で記述されることが可能である。コンピュータ読取り可能媒体は、コンピュータ環境内でのアクセスが可能な、任意の市販媒体である。限定ではなく例として、コンピューティング環境(1300)では、コンピュータ読取り可能媒体は、メモリ(1320)、記憶装置(1340)、通信媒体、およびこれらの任意の組み合わせを含む。
本明細書で説明したデジタルメディア処理手法は、たとえば、プログラムモジュールに含まれ、コンピューティング環境において、ターゲットの実際または仮想のプロセッサに対して実行される、コンピュータで実行可能な命令のように、コンピュータで実行可能な命令の一般的な文脈で記述されることが可能である。一般に、プログラムモジュールは、特定のタスクを実行したり、特定の抽象データ型を実装したりするルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造体などを含む。プログラムモジュールの機能性は、様々な実施形態において、必要に応じて、プログラムモジュール間で結合されたり、分割されたりすることが可能である。プログラムモジュールに対する、コンピュータで実行可能な命令は、ローカルコンピューティング環境または分散コンピューティング環境内で実行されることが可能である。
本明細書の詳細説明では、説明のために、「決定する(determine)」、「生成する(generate)」、「調整する(adjust)」、「適用する(apply)」などの用語を用いて、コンピューティング環境におけるコンピュータ動作を記述した。これらの用語は、コンピュータによって実行される動作の高レベル抽象化であって、人間が実施する行動と混同されてはならない。これらの用語に対応する実際のコンピュータ動作は、実施態様によって異なる。
本発明の原理を適用することが可能な実施形態が多く存在しうることに鑑み、添付の特許請求項およびその等価物の範囲および趣旨に入りうる、そのような実施形態のすべてを本発明として権利請求するものである。
従来のブロック変換ベースのコーデックのブロック図である。 同じく先行技術における、図1のブロック変換ベースのコーデックと併せて、前処理操作および後処理操作として実装される空間領域重複変換のブロック図である。 先行技術の、連続ジグザグスキャンパターンを用いる係数スキャン順序を示す図である。 可逆オーバーラップ演算子を利用する重複変換に基づく符号器のフロー図である。 重複変換に基づく復号器のフロー図である。 図4の符号器と図5の復号器とにおける係数スキャン順序の適応化手順のフロー図である。 図6の適応係数スキャン順序付け手順のための、水平方向係数の初期スキャン順序を示す図である。 図6の適応係数スキャン順序付け手順のための、垂直方向係数の初期スキャン順序を示す図である。 係数の非ゼロ値の発生頻度と、対応するスキャン順序とを追跡するために、図6の適応係数スキャン順序付け手順で用いられる、初期化された順序(Order)の配列と総計(Totals)の配列の例を示す図である。 係数のスキャン順序を並べ替えるために、図6の手順によって図9の配列の要素を交換するケースの例を示す図である。 図10に示した要素交換操作の結果の、図9の配列の要素の並びを示す図である。 図10に示した要素交換操作の結果としての、図9の配列の要素の、図11に示した並びに対応するスキャン順序を示す図である。 図4および図5の、空間領域重複変換が改善されたブロック変換ベースのコーデックの実装に好適なコンピューティング環境のブロック図である。
符号の説明
100 コーデック
110、400 符号器
150、500 復号器

Claims (20)

  1. デジタルメディアデータを符号化および復号するブロック変換ベースの方法であって、
    ブロック配列全体にわたる各場所における係数値の統計的発生率を分析するステップと、
    前記統計情報に従って前記係数のスキャン順序を適応化するステップと、
    前記適応化されたスキャン順序によって前記係数をエントロピー符号化/復号するステップと、
    を備えることを特徴とする方法。
  2. 前記デジタルメディアデータの符号化および復号の両方において、前記スキャン順序の、決定論的であって因果的な基準による適応化を実行するステップであって、符号化されたデジタルメディアデータ内における前記係数スキャン順序を明示的に伝達せずに済むことをさらに備えることを特徴とする請求項1に記載の方法。
  3. 前記スキャン順序を適応化する前記ステップは、
    前記ブロック配列内の前記各場所における係数値の前記統計的発生率に従って前記各場所をソートするステップと、
    前記ソート結果に従って前記スキャン順序を並べ替えるステップと、
    を含むことを特徴とする請求項1に記載の方法。
  4. 係数の前記スキャン順序を初期順序に初期化するステップと、
    前記デジタルメディアデータの現在のブロック内の係数に対して、前記ブロック配列内の各場所における係数値の前記統計的発生率を表す値のセットを更新するステップと、
    前記スキャン順序に従った前記各場所のトラバースにおいて、そのような各場所における係数値の前記統計的発生率を表す値の比較に基づいて、前記順序内において隣接する各場所の順番を条件付きで交換するステップと、
    をさらに備えることを特徴とする請求項1に記載の方法。
  5. 前記デジタルメディアデータのブロックごとに1回ずつ前記トラバースを実行するステップをさらに含むことを特徴とする請求項4に記載の方法。
  6. 前記デジタルメディアデータのブロックを符号化および復号する間に、前記各場所における係数値の発生率の前記統計情報を定期的にリセットするステップをさらに備えることを特徴とする請求項1に記載の方法。
  7. 前記スキャン順序を初期順序に初期化するステップと、
    前記スキャン順序を定期的に前記初期順序に再初期化するステップと、
    をさらに備えることを特徴とする請求項1に記載の方法。
  8. 前記分析は、前記ブロック配列前記にわたる前記各場所での非ゼロ値係数の統計的発生率の分析であることを特徴とする請求項1に記載の方法。
  9. 変換係数のブロック配列内の各場所のスキャン順序を表すスキャン順序表現データ構造体と、前記各場所における係数値の統計的発生率を表す統計情報表現データ構造体とを格納するメモリと、
    プロセッサであって、前記プロセッサは、
    前記スキャン順序表現データ構造体を、初期スキャン順序を表すように初期化し、
    前記統計情報表現データ構造体を初期化し、
    デジタルメディアデータのそのようなブロックのシーケンスにおける変換係数の現在のブロックに対して、前記現在のブロックにある係数に関する前記統計情報表現データ構造体を更新し、
    前記更新された前記統計情報表現データ構造体に基づいて前記各場所の前記スキャン順序を適応化し、
    前記適応化されたスキャン順序を表すように前記スキャン順序表現データ構造体を更新するようにプログラムされていることと、
    を備えることを特徴とするデジタルメディア符号器および/または復号器。
  10. 前記スキャン順序を適応化する前記プロセッサは、前記更新された統計情報表現データ構造体で表される統計的発生率に従って前記各場所をソートするようにプログラムされたプロセッサを含むことを特徴とする請求項9に記載のデジタルメディア符号器および/または復号器。
  11. 前記スキャン順序を適応化する前記プロセッサは、前記スキャン順序において隣接した順番の場所における係数値の前記統計的発生率を比較し、前記比較に基づいて、前記スキャン順序において隣接した順番の前記場所を条件付きで交換するようにプログラムされたプロセッサを含むことを特徴とする請求項10に記載のデジタルメディア符号器および/または復号器。
  12. 前記スキャン順序を適応化する前記プロセッサは、前記スキャン順序における各場所の前記比較および条件付き交換を、前記デジタルメディアデータの変換係数ブロックごとの、前記スキャン順序に対する1回のトラバースとして実行するようにプログラムされたプロセッサを含むことを特徴とする請求項11に記載のデジタルメディア符号器および/または復号器。
  13. 前記統計情報表現データ構造体は、前記各場所における非ゼロ係数値の統計的発生率を表すことを特徴とする請求項10に記載のデジタルメディア符号器および/または復号器。
  14. デジタルメディアデータを符号化および復号するブロック変換ベースの方法を実施するための、コンピュータで実行可能なデジタルメディア処理プログラムを搬送する、少なくとも1つのコンピュータ読取り可能記録媒体であって、前記方法は、
    ブロック配列全体にわたる各場所における係数値の統計的発生率を分析するステップと、
    前記統計情報に従って前記係数のスキャン順序を適応化するステップと、
    前記適応化されたスキャン順序によって前記係数をエントロピー符号化/復号化するステップと、
    を含むことを特徴とする少なくとも1つのコンピュータ読取り可能記録媒体。
  15. 前記方法は、
    前記デジタルメディアデータの符号化および復号の両方において、前記スキャン順序の、決定論的であって因果的な基準による適応化を実行するステップであって、符号化されたデジタルメディアデータ内で前記係数スキャン順序を明示的に伝達せずに済むことをさらに含むことを特徴とする請求項14に記載の少なくとも1つのコンピュータ読取り可能記録媒体。
  16. 前記方法は、
    前記ブロック配列内の前記各場所における係数値の前記統計的発生率に従って前記各場所をソートするステップと、
    前記ソート結果に従って前記スキャン順序を並べ替えるステップと、
    をさらに含むことを特徴とする請求項14に記載の少なくとも1つのコンピュータ読取り可能記録媒体。
  17. 前記方法は、
    係数の前記スキャン順序を初期順序に初期化するステップと、
    前記デジタルメディアデータの現在のブロック内の係数について、前記ブロック配列内の各場所における係数値の前記統計的発生率を表す値のセットを更新するステップと、
    前記スキャン順序に従った前記各場所のトラバースにおいて、そのような各場所での係数値の前記統計的発生率を表す値の比較に基づいて、前記順序内で隣接する各場所の順番を条件付きで交換するステップと、
    をさらに含むことを特徴とする請求項14に記載の少なくとも1つのコンピュータ読取り可能記録媒体。
  18. 前記方法は、前記デジタルメディアデータのブロックごとに1回ずつ前記トラバースを実行するステップをさらに含むことを特徴とする請求項17に記載の少なくとも1つのコンピュータ読取り可能記録媒体。
  19. 前記方法は、前記デジタルメディアデータのブロックを符号化および復号する間に、前記各場所における係数値の発生率の前記統計情報を定期的にリセットするステップをさらに含むことを特徴とする請求項14に記載の少なくとも1つのコンピュータ読取り可能記録媒体。
  20. 前記方法は、
    前記スキャン順序を初期順序に初期化するステップと、
    前記スキャン順序を定期的に前記初期順序に再初期化するステップと、
    をさらに含むことを特徴とする請求項14に記載の少なくとも1つのコンピュータ読取り可能記録媒体。
JP2005379861A 2004-12-31 2005-12-28 適応係数スキャン順序付け Active JP4700491B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/026,650 US8311119B2 (en) 2004-12-31 2004-12-31 Adaptive coefficient scan order
US11/026,650 2004-12-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011000889A Division JP5027936B2 (ja) 2004-12-31 2011-01-06 適応スキャン順序付けのための方法、記録媒体、プログラム、及び処理装置。

Publications (2)

Publication Number Publication Date
JP2006191628A true JP2006191628A (ja) 2006-07-20
JP4700491B2 JP4700491B2 (ja) 2011-06-15

Family

ID=36390237

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2005379861A Active JP4700491B2 (ja) 2004-12-31 2005-12-28 適応係数スキャン順序付け
JP2011000889A Active JP5027936B2 (ja) 2004-12-31 2011-01-06 適応スキャン順序付けのための方法、記録媒体、プログラム、及び処理装置。

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2011000889A Active JP5027936B2 (ja) 2004-12-31 2011-01-06 適応スキャン順序付けのための方法、記録媒体、プログラム、及び処理装置。

Country Status (10)

Country Link
US (2) US8311119B2 (ja)
EP (1) EP1679903B1 (ja)
JP (2) JP4700491B2 (ja)
KR (1) KR101260073B1 (ja)
CN (1) CN1798341B (ja)
AU (1) AU2005234613B2 (ja)
BR (1) BRPI0504835B1 (ja)
CA (1) CA2527654C (ja)
MX (1) MXPA05012973A (ja)
RU (1) RU2404534C2 (ja)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009027541A (ja) * 2007-07-20 2009-02-05 Ntt Docomo Inc 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
JP2009239884A (ja) * 2008-03-25 2009-10-15 Renei Kagi Kofun Yugenkoshi 符号化回路方法およびエントロピー符号化
JP2009267668A (ja) * 2008-04-24 2009-11-12 Mega Chips Corp エンコーダ
JP2009273106A (ja) * 2008-05-02 2009-11-19 Renei Kagi Kofun Yugenkoshi エントロピー復号化回路、エントロピー復号化方法、およびパイプライン方式を利用したエントロピー復号化方法
WO2010048055A3 (en) * 2008-10-20 2010-07-15 Motorola, Inc. Out-of-order coding
WO2010095528A1 (en) * 2009-02-17 2010-08-26 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and methods of controlling the same
JP2010530188A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド 分離可能方向性変換
JP2010530183A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド ビデオコーディングでの適応係数スキャン
WO2010106931A1 (en) * 2009-03-19 2010-09-23 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and methods of controlling them
WO2010131546A1 (en) * 2009-05-14 2010-11-18 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and control method therefor
JP2010268160A (ja) * 2009-05-13 2010-11-25 Mega Chips Corp 画像処理装置
WO2012005195A1 (ja) * 2010-07-09 2012-01-12 ソニー株式会社 画像処理装置および方法
JP2012129888A (ja) * 2010-12-16 2012-07-05 Samsung Electronics Co Ltd 画像符号化装置及び画像符号化方法
JP2012170140A (ja) * 2012-05-11 2012-09-06 Ntt Docomo Inc 画像符号化装置及び画像復号装置
JP2014014163A (ja) * 2013-09-13 2014-01-23 Ntt Docomo Inc 画像符号化装置及び画像復号装置
JP2015046930A (ja) * 2014-11-04 2015-03-12 株式会社Nttドコモ 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
JP2016103852A (ja) * 2016-01-20 2016-06-02 株式会社Nttドコモ 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8208540B2 (en) 2005-08-05 2012-06-26 Lsi Corporation Video bitstream transcoding method and apparatus
US7903739B2 (en) * 2005-08-05 2011-03-08 Lsi Corporation Method and apparatus for VC-1 to MPEG-2 video transcoding
US8155194B2 (en) * 2005-08-05 2012-04-10 Lsi Corporation Method and apparatus for MPEG-2 to H.264 video transcoding
US8045618B2 (en) * 2005-08-05 2011-10-25 Lsi Corporation Method and apparatus for MPEG-2 to VC-1 video transcoding
US7912127B2 (en) * 2005-08-05 2011-03-22 Lsi Corporation H.264 to VC-1 and VC-1 to H.264 transcoding
US7881384B2 (en) * 2005-08-05 2011-02-01 Lsi Corporation Method and apparatus for H.264 to MPEG-2 video transcoding
US7933337B2 (en) * 2005-08-12 2011-04-26 Microsoft Corporation Prediction of transform coefficients for image compression
EP2733950A1 (en) * 2005-10-21 2014-05-21 Electronics and Telecommunications Research Institute Apparatus for encoding moving picture using adaptive scanning
MX2009004121A (es) 2006-10-20 2009-06-08 Nokia Corp Indicacion generica de trayectos de adaptacion para multimedia escalable.
US8184710B2 (en) 2007-02-21 2012-05-22 Microsoft Corporation Adaptive truncation of transform coefficient data in a transform-based digital media codec
KR20090097013A (ko) * 2008-03-10 2009-09-15 삼성전자주식회사 영상 부호화장치 및 영상 복호화장치
US8000546B2 (en) * 2008-08-01 2011-08-16 National Cheng Kung University Adaptive scan method for image/video coding
EP2182732A1 (en) 2008-10-28 2010-05-05 Panasonic Corporation Switching between scans in image coding
US8737613B2 (en) * 2008-11-20 2014-05-27 Mediatek Inc. Scanning methods of transform-based digital data processing that conditionally adjust scan order according to characteristics information and related apparatus thereof
WO2010091505A1 (en) * 2009-02-13 2010-08-19 Research In Motion Limited Modified entropy encoding for images and videos
CA2751785C (en) 2009-02-13 2016-04-05 Research In Motion Limited Adaptive quantization with balanced pixel-domain distortion distribution in image processing
JP5303659B2 (ja) 2009-02-13 2013-10-02 リサーチ イン モーション リミテッド イントラコード化された画像またはフレームのインループ非ブロック化
EP2271102A1 (en) 2009-06-29 2011-01-05 Thomson Licensing Adaptive residual image coding
US9094691B2 (en) * 2010-03-15 2015-07-28 Mediatek Singapore Pte. Ltd. Methods of utilizing tables adaptively updated for coding/decoding and related processing circuits thereof
KR20110112168A (ko) * 2010-04-05 2011-10-12 삼성전자주식회사 내부 비트뎁스 확장에 기반한 비디오 부호화 방법 및 그 장치, 내부 비트뎁스 확장에 기반한 비디오 복호화 방법 및 그 장치
US20110243220A1 (en) * 2010-04-05 2011-10-06 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image and method and apparatus for decoding image using adaptive coefficient scan order
WO2011126282A2 (en) 2010-04-05 2011-10-13 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by using transformation index, and method and apparatus for decoding video by using transformation index
US9369736B2 (en) 2010-04-05 2016-06-14 Samsung Electronics Co., Ltd. Low complexity entropy-encoding/decoding method and apparatus
US9049450B2 (en) 2010-04-05 2015-06-02 Samsung Electronics Co., Ltd. Method and apparatus for encoding video based on internal bit depth increment, and method and apparatus for decoding video based on internal bit depth increment
US8929440B2 (en) * 2010-04-09 2015-01-06 Sony Corporation QP adaptive coefficients scanning and application
RS56512B1 (sr) * 2010-04-13 2018-02-28 Ge Video Compression Llc Kodiranje mapa značaja i blokova koeficijenata transformacije
US8559741B2 (en) * 2010-06-02 2013-10-15 Altek Corporation Lossless image compression method
US9661338B2 (en) 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
CN102447895B (zh) 2010-09-30 2013-10-02 华为技术有限公司 扫描方法及装置、反扫描方法及装置
CA2810899C (en) 2010-10-05 2016-08-09 General Instrument Corporation Coding and decoding utilizing adaptive context model selection with zigzag scan
US9641846B2 (en) 2010-10-22 2017-05-02 Qualcomm Incorporated Adaptive scanning of transform coefficients for video coding
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
US20120163472A1 (en) * 2010-12-22 2012-06-28 Qualcomm Incorporated Efficiently coding scanning order information for a video 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
US20120236931A1 (en) * 2010-12-23 2012-09-20 Qualcomm Incorporated Transform coefficient scan
US10992958B2 (en) 2010-12-29 2021-04-27 Qualcomm Incorporated Video coding using mapped transforms and scanning modes
US9490839B2 (en) 2011-01-03 2016-11-08 Qualcomm Incorporated Variable length coding of video block coefficients
US20120230418A1 (en) 2011-03-08 2012-09-13 Qualcomm Incorporated Coding of transform coefficients for video coding
US9106913B2 (en) * 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
CN102685503B (zh) * 2011-03-10 2014-06-25 华为技术有限公司 变换系数的编码方法、变换系数的解码方法,和装置
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
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
US9756360B2 (en) * 2011-07-19 2017-09-05 Qualcomm Incorporated Coefficient scanning in video coding
US8891616B1 (en) 2011-07-27 2014-11-18 Google Inc. Method and apparatus for entropy encoding based on encoding cost
KR102107644B1 (ko) * 2011-11-07 2020-05-08 타지반 투 엘엘씨 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치, 및 화상 부호화 복호 장치
US8660374B1 (en) * 2011-12-23 2014-02-25 Massachusetts Institute Of Technology Selecting transform paths for compressing visual data
US10129548B2 (en) * 2011-12-28 2018-11-13 Sharp Kabushiki Kaisha Arithmetic decoding device, image decoding device, and arithmetic coding device
US9363510B2 (en) * 2012-03-02 2016-06-07 Qualcomm Incorporated Scan-based sliding window in context derivation for transform coefficient coding
US9774856B1 (en) 2012-07-02 2017-09-26 Google Inc. Adaptive stochastic entropy coding
US9509998B1 (en) 2013-04-04 2016-11-29 Google Inc. Conditional predictive multi-symbol run-length coding
CN104104958B (zh) * 2013-04-08 2017-08-25 联发科技(新加坡)私人有限公司 图像解码方法及其图像解码装置
MX368246B (es) 2013-07-24 2019-09-25 Microsoft Technology Licensing Llc Ordenes de escaneo para codificacion sin transformacion.
US9392288B2 (en) 2013-10-17 2016-07-12 Google Inc. Video coding using scatter-based scan tables
US9179151B2 (en) 2013-10-18 2015-11-03 Google Inc. Spatial proximity context entropy coding
KR102218196B1 (ko) 2013-10-28 2021-02-23 삼성전자주식회사 인코더, 이의 동작 방법과, 상기 인코더를 포함하는 장치들
US10261832B2 (en) * 2015-12-02 2019-04-16 At&T Mobility Ii Llc Sorting apparatus
KR102159252B1 (ko) 2016-02-12 2020-10-14 후아웨이 테크놀러지 컴퍼니 리미티드 스캔 순서 선택을 위한 방법 및 장치
EP3412028B1 (en) 2016-02-12 2024-04-03 Huawei Technologies Co., Ltd. Method and apparatus for scan order selection
CN107545011B (zh) * 2016-06-29 2020-04-10 高德信息技术有限公司 一种数据读取方法及装置
US10440394B2 (en) 2016-09-08 2019-10-08 Google Llc Context adaptive scan order for entropy coding
US11477492B2 (en) 2017-08-04 2022-10-18 Google Inc. Adaptation for entropy coding of blocks of image data
EP3484148A1 (en) 2017-11-09 2019-05-15 Thomson Licensing Automated scanning order for sub-divided blocks
US10382758B2 (en) 2017-12-15 2019-08-13 Google Llc Transform block-level scan order selection for video coding
CN111090048B (zh) * 2019-12-19 2021-09-24 重庆大学 一种新能源汽车车载数据自适应时间间隔传输方法
CN112903613B (zh) * 2021-02-24 2022-11-08 南昌大学 一种基于Labview的瞬态吸收光谱控制系统设计方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003250157A (ja) * 2002-01-07 2003-09-05 Samsung Electronics Co Ltd 静止映像及び動映像を符号化/復号化するための変換係数の最適走査方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5714950A (en) * 1992-07-23 1998-02-03 Samsung Electronics Co., Ltd. System for variable-length-coding and variable-length-decoding digitaldata
JPH06177774A (ja) 1992-12-04 1994-06-24 Asahi Chem Ind Co Ltd 画像再生方法および画像再生装置
TW224553B (en) 1993-03-01 1994-06-01 Sony Co Ltd Method and apparatus for inverse discrete consine transform and coding/decoding of moving picture
JPH0750836A (ja) 1993-08-06 1995-02-21 Sharp Corp 画像符号化装置
JP3292221B2 (ja) 1993-09-14 2002-06-17 ソニー株式会社 画像圧縮符号化方法
US5729484A (en) 1994-02-28 1998-03-17 Intel Corporation Processes, apparatuses, and systems of encoding and decoding signals using transforms
US5748244A (en) 1995-03-28 1998-05-05 Daewoo Electronics Co., Ltd. Adaptive runlength coding based on zero and non-zero subblocks
KR0178198B1 (ko) * 1995-03-28 1999-05-01 배순훈 영상 신호 부호화 장치
JPH0974562A (ja) 1995-09-04 1997-03-18 Nippon Telegr & Teleph Corp <Ntt> 画像信号符号化方法
JP3967405B2 (ja) 1996-10-09 2007-08-29 テキサス インスツルメンツ インコーポレイテツド 画像信号の符号化方法
RU2202826C2 (ru) 1997-01-31 2003-04-20 Сименс Акциенгезелльшафт Способ и устройство для кодирования и декодирования оцифрованного изображения
JPH11275582A (ja) 1998-03-22 1999-10-08 Sony Corp 画像符号化装置及び画像復号装置並びにそれらの方法
KR100323692B1 (ko) 1999-05-13 2002-02-07 구자홍 허프만 테이블의 재배열에 의한 영상 부호화 방법 및 영상 부호화기 및 복호화기
US6947874B2 (en) 2000-11-16 2005-09-20 Canon Kabushiki Kaisha Entropy coding
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
JP2003333339A (ja) 2002-05-13 2003-11-21 Sony Corp 画像符号化装置及び画像符号化方法
US7463782B2 (en) 2002-11-05 2008-12-09 Canon Kabushiki Kaisha Data encoding with an amplitude model and path between the data and corresponding decoding
US7688894B2 (en) 2003-09-07 2010-03-30 Microsoft Corporation Scan patterns for interlaced video content
US7782954B2 (en) 2003-09-07 2010-08-24 Microsoft Corporation Scan patterns for progressive video content

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003250157A (ja) * 2002-01-07 2003-09-05 Samsung Electronics Co Ltd 静止映像及び動映像を符号化/復号化するための変換係数の最適走査方法

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8571104B2 (en) 2007-06-15 2013-10-29 Qualcomm, Incorporated Adaptive coefficient scanning in video coding
US8520732B2 (en) 2007-06-15 2013-08-27 Qualcomm Incorporated Adaptive coding of video block prediction mode
JP2010530190A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド 映像コーディングに関する適応型係数走査
US8428133B2 (en) 2007-06-15 2013-04-23 Qualcomm Incorporated Adaptive coding of video block prediction mode
US8488668B2 (en) 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
US9578331B2 (en) 2007-06-15 2017-02-21 Qualcomm Incorporated Separable directional transforms
JP2010530188A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド 分離可能方向性変換
US8619853B2 (en) 2007-06-15 2013-12-31 Qualcomm Incorporated Separable directional transforms
JP2010530183A (ja) * 2007-06-15 2010-09-02 クゥアルコム・インコーポレイテッド ビデオコーディングでの適応係数スキャン
JP2009027541A (ja) * 2007-07-20 2009-02-05 Ntt Docomo Inc 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
JP2009239884A (ja) * 2008-03-25 2009-10-15 Renei Kagi Kofun Yugenkoshi 符号化回路方法およびエントロピー符号化
JP2009267668A (ja) * 2008-04-24 2009-11-12 Mega Chips Corp エンコーダ
JP2009273106A (ja) * 2008-05-02 2009-11-19 Renei Kagi Kofun Yugenkoshi エントロピー復号化回路、エントロピー復号化方法、およびパイプライン方式を利用したエントロピー復号化方法
WO2010048055A3 (en) * 2008-10-20 2010-07-15 Motorola, Inc. Out-of-order coding
US8194991B2 (en) 2008-10-20 2012-06-05 Motorola Mobililty, Inc. Out-of-order coding
JP2010193097A (ja) * 2009-02-17 2010-09-02 Canon Inc スキャン変換装置及び画像符号化装置、並びにそれらの制御方法
US8478079B2 (en) 2009-02-17 2013-07-02 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and methods of controlling the same
WO2010095528A1 (en) * 2009-02-17 2010-08-26 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and methods of controlling the same
US8644633B2 (en) 2009-03-19 2014-02-04 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and methods of controlling them
JP2010226253A (ja) * 2009-03-19 2010-10-07 Canon Inc スキャン変換装置及び画像符号化装置、並びにそれらの制御方法
WO2010106931A1 (en) * 2009-03-19 2010-09-23 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and methods of controlling them
JP2010268160A (ja) * 2009-05-13 2010-11-25 Mega Chips Corp 画像処理装置
JP2010268243A (ja) * 2009-05-14 2010-11-25 Canon Inc スキャン変換装置及び画像符号化装置及びそれらの制御方法
WO2010131546A1 (en) * 2009-05-14 2010-11-18 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and control method therefor
US8509547B2 (en) 2009-05-14 2013-08-13 Canon Kabushiki Kaisha Scan conversion apparatus, image encoding apparatus, and control method therefor
WO2012005195A1 (ja) * 2010-07-09 2012-01-12 ソニー株式会社 画像処理装置および方法
JP2012129888A (ja) * 2010-12-16 2012-07-05 Samsung Electronics Co Ltd 画像符号化装置及び画像符号化方法
JP2012170140A (ja) * 2012-05-11 2012-09-06 Ntt Docomo Inc 画像符号化装置及び画像復号装置
JP2014014163A (ja) * 2013-09-13 2014-01-23 Ntt Docomo Inc 画像符号化装置及び画像復号装置
JP2015046930A (ja) * 2014-11-04 2015-03-12 株式会社Nttドコモ 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
JP2016103852A (ja) * 2016-01-20 2016-06-02 株式会社Nttドコモ 画像符号化装置、方法及びプログラム、並びに、画像復号装置、方法及びプログラム
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding

Also Published As

Publication number Publication date
JP2011125038A (ja) 2011-06-23
AU2005234613A1 (en) 2006-07-20
EP1679903B1 (en) 2014-10-01
US20130070843A1 (en) 2013-03-21
US8311119B2 (en) 2012-11-13
MXPA05012973A (es) 2006-06-29
KR20060079087A (ko) 2006-07-05
EP1679903A3 (en) 2006-07-26
JP4700491B2 (ja) 2011-06-15
CA2527654C (en) 2015-01-06
BRPI0504835A (pt) 2006-09-12
BRPI0504835B1 (pt) 2018-12-26
CA2527654A1 (en) 2006-06-30
JP5027936B2 (ja) 2012-09-19
KR101260073B1 (ko) 2013-05-02
US20060146936A1 (en) 2006-07-06
RU2005137246A (ru) 2007-06-10
CN1798341B (zh) 2012-07-18
AU2005234613B2 (en) 2010-02-25
US8824557B2 (en) 2014-09-02
RU2404534C2 (ru) 2010-11-20
CN1798341A (zh) 2006-07-05
BRPI0504835A8 (pt) 2016-10-04
EP1679903A2 (en) 2006-07-12

Similar Documents

Publication Publication Date Title
JP4700491B2 (ja) 適応係数スキャン順序付け
US10841614B2 (en) Low-complexity intra prediction for video coding
JP5957560B2 (ja) 大きいサイズの変換単位を用いた映像符号化、復号化方法及び装置
JP5819347B2 (ja) スキップマクロブロックコード化
JP5620641B2 (ja) 適応型走査を用いる動画の符号化/復号化装置及びその方法
KR101426272B1 (ko) 영상 부호화장치 및 영상 복호화장치
US9077960B2 (en) Non-zero coefficient block pattern coding
JP2013524679A (ja) 適応的係数スキャン順序を利用した映像の符号化方法、復号化方法及びその装置
US20160021396A1 (en) Systems and methods for digital media compression and recompression
US10652541B2 (en) Method and device for encoding video data
CN105453567A (zh) 用于非变换编码的扫描次序
US20190191162A1 (en) Method and device for encoding video data
CN114025166A (zh) 视频压缩方法、电子设备及计算机可读存储介质
WO2021197158A1 (zh) 一种图像处理方法和图像处理装置
JP5298082B2 (ja) 適応的に直交変換係数の走査順序を決定する符号化装置及び復号装置
Parfieniuk A directional extension of the JPEG image codec
JP2003018014A (ja) 符号化方法,復号方法,符号化装置,復号装置,符号化プログラム,復号プログラムおよびそれらのプログラム記録媒体
JP2004080682A (ja) 動画像データ符号化装置および動画像データ復号装置ならびにそれらの方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081210

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090902

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20091008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100520

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100820

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110106

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110118

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: 20110204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110304

R150 Certificate of patent or registration of utility model

Ref document number: 4700491

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

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

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