JP2002519956A - 逆量子化及びi走査中にブロック統計を採取する方法及び装置 - Google Patents

逆量子化及びi走査中にブロック統計を採取する方法及び装置

Info

Publication number
JP2002519956A
JP2002519956A JP2000557622A JP2000557622A JP2002519956A JP 2002519956 A JP2002519956 A JP 2002519956A JP 2000557622 A JP2000557622 A JP 2000557622A JP 2000557622 A JP2000557622 A JP 2000557622A JP 2002519956 A JP2002519956 A JP 2002519956A
Authority
JP
Japan
Prior art keywords
block
blocks
zero
idct
algorithm
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.)
Abandoned
Application number
JP2000557622A
Other languages
English (en)
Inventor
エス シン ケネス
フィス エベルハルト
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.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
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 Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2002519956A publication Critical patent/JP2002519956A/ja
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/127Prioritisation of hardware or computational resources
    • 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
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/17Methods 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/176Methods 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

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

Abstract

(57)【要約】 逆量子化及び逆走査中にブロック統計を採取することによって逆離散余弦変換に要求される平均の演算数を減少させる方法及び装置である。これら統計は、零でないDC係数を有するサブブロックのロケーション及び周波数、零でないDCT係数を有する行及び列のロケーション、ブロックのダイナミックレンジ等を有する。

Description

【発明の詳細な説明】
【0001】
【技術の分野】
本発明は、一般にビデオ復号化に関するものであり、特に、逆量子化及び逆走
査中にブロック統計を採取することによって逆離散余弦変換に要求される平均の
演算数を減少させるものである。
【0002】
【背景技術】
MPEGデコーダにおいて、圧縮ビデオデータは、復号化プロセスの一部とし
て一連の変換が行われる。典型的なMPEGビデオデコーダは、ビデオストリー
ムを圧縮解除するために以下の動作:固定長復号化(FLD)、可変長復号化(
VLD)、実行長復号化(RLD)、逆差分パルスコード変調及び逆量子化(I
DPCM,IQ)、逆離散余弦変換(IDCT)並びに移動補償(MC)を実行
する(ここで使用する用語MPEGは、MPEG1,MPEG2及びMPEG4
を言及する。)。
【0003】 VLD及び移動補償とともに、IDCTは、復号化チェーンにおいて最も演算
量の多いブロックの一つである。30個よりも多い高速IDCTアルゴリズムが
あり、典型的には、一つのIDCTアルゴリズムを選択して、ビデオストリーム
内のDCT係数の8×8ブロックの全てを復号化する。このアルゴリズムの選択
は通常、ビデオストリーム全体の演算的な複雑さに基づく。IDCTが隘路とな
っているので、この変換中の平均の演算数を減少させる価値がある。
【0004】
【発明の開示】
本発明の目的は、IDCTの演算数を減少させるために、演算の複雑さを減少
させるとともに、IDCT段によって使用することができるブロック統計を採取
することによって、MPEG復号化アルゴリズムの効率を向上させることである
。逆量子化(IQ)段では一度に1ブロックのビデオフレームを処理するととも
に、零でない係数の各々を観察して零でない係数をスケール化(スケールアップ
)し、かつ、IDCTの準備のためにそれを再配列する必要があるので、ブロッ
クについての統計を採取するには十分な時間がある。零でない係数を有する象限
や、零でない係数を有する行及び列や、ブロック内のダイナミックレンジのよう
な複数のタイプのブロック統計を、IDCTの効率を向上させるのに使用するこ
とができるIQ/ISCAN中に採取することができる。
【0005】 MPEGデコーダは、ビデオデータから取り出されたDCT係数の量子化ブロ
ックを処理する。ビデオソースにおいて、画素は、水平寸法、垂直寸法及び時間
の目安に非常に相関される傾向にある。実際には、これは、MPEG2規格がそ
のような高圧縮レートを達成する重大な理由である。この相関の利点を得るため
に、本発明の第1例は、零でない値のDCT係数を有するサブブロックのロケー
ション及び周波数に基づいて、入力データブロックを少数の分類に分ける。各デ
ータブロックは、これら分類のうちの一つに入る。各分類に対して、その分類の
零でないサブブロックのパターンを最も利用する特定の高速アルゴリズムが選択
される。
【0006】 本発明の第1例の他の態様において、各分類の発生する可能性は経験的に見積
もられ、最も発生しうる分類に対する最適アルゴリズムの選択群が、使用のため
に格納される。最も発生しにくい分類に対して、省略時解釈が格納される。この
省略時解釈アルゴリズムは、任意の1個の分類に対して最適化されない。
【0007】 この第1例の他の態様において、アルゴリズムを更に変更して、分類のDCT
係数ブロックの構造に基づいて不要な演算を除去する。本発明のこの態様では、
加算、減算及び乗算が、零の値のDCT係数のみを有するサブブロックに対して
除去される。
【0008】 本発明は、ブロック内の零でない係数のロケーションしか必要としないので、
ブロックは、ランレベルフォーマットで符号化したDCT係数を直接用いること
によって分類される。本発明の好適列において、8×8ブロックを4個の4×4
サブブロックに分割する。ブロックの分類は、8×8ブロック内にある零でない
DCT係数を有するサブブロックのロケーションに基づく。
【0009】 本発明の第2例において、ブロック中の零でない係数の各々の行及び列ロケー
ションを、IQ/ISCAN中に決定する。零でない係数を有する逆走査行列の
各行又は列は、8ビットのビットベクトルのセットビットによって表される。二
つのベクトルを発生させ、一方のベクトルを行ヒストグラムとし、もう一方のベ
クトルを列ヒストグラムとする。最も希薄であるヒストグラム(行又は列)が、
IDCTフェーズに送られる。このヒストグラム情報は、どの行が零でない係数
を有するか(行ヒストグラムが最も希薄である場合。列ヒストグラムが最も希薄
である場合には列。)を表すとともに、その行(列)でIDCTを実行すること
によってIDCTの演算効率を向上させる。特定のヒストグラムに対して最も演
算効率の高い最適なIDCTアルゴリズムを選択することができる。
【0010】 本発明の第3の実施の形態において、ダイナミックレンジ、すなわち、ブロッ
ク中の最小係数と最大係数との差を、IQ/ISCAN中に決定する。また、こ
の情報をIDCT段に送り、特定のダイナミックレンジに対して最も有効なID
CTアルゴリズムを選択することによってIDCTの効率を向上させる。
【0011】 したがって、本発明の目的は、IQ/ISCAN中にブロック統計を取り出し
てIDCTの効率を向上させることである。
【0012】 本発明の他の目的は、ブロック内の零の値のDCT係数のロケーション及び周
波数に基づいてデータブロックを分類するとともに、特定のブロックの分類に基
づいて高速IDCTアルゴリズムを選択することである。
【0013】 本発明の他の目的は、ブロック分類を用いて不要な演算を除去することである
【0014】 本発明の他の目的は、キャッシュメモリに最も発生しうるブロック分類に対す
るIDCTアルゴリズムを格納するとともに、通常のメモリで最も発生しにくい
ブロック分類に対するアルゴリズムを格納することである。
【0015】 本発明の他の目的は、特定の分類の発生の可能性を決定するとともに、発生の
可能性が最も高い分類に対する少数の最適な差分高速IDCTアルゴリズムを選
択し、かつ、残りの分類に対する省略時解釈アルゴリズムを選択することである
【0016】 本発明の他の目的は、入力するビデオストリームに基づいてブロック分類の発
生の可能性を決定するとともに、キャッシュメモリを、最も使用されうるIDC
Tアルゴリズムに更新することである。
【0017】 本発明の他の目的は、零でないDCT係数を有するブロックの行及び列を表す
行ヒストグラム及び列ヒストグラムを形成することである。
【0018】 本発明の他の目的は、ブロックのダイナミックレンジを決定することである。
【0019】 したがって、本発明は、複数のステップ及び互いに関連するこれらステップの
1個以上の関係と、構造の特徴を実施する装置と、これらステップを行うのに適
合した素子の組合わせ及びパーツの配置とを具え、本発明の範囲を請求項に示す
【0020】
【発明を実施するための最良の形態】
IQ/ISCAN中、零でない係数の各々を観察して、それをスケール化する
とともに再配列する。したがって、復号化プロセスにおいて、複数の可変統計を
、DCT係数の発生のロケーション及び周波数並びにその値について採取するこ
とができる。この情報を、典型的には演算的に最も複雑なIDCTブロックによ
って使用して、IQ/ISCAN中に得られる統計に最適な高速IDCTアルゴ
リズムを選択し、又はIDCTプロセス中の不要な演算を簡単に除去する。以下
の実施の形態は、IQ/ISCAN中に採取することができるブロック統計の一
部を説明する。IQ/ISCAN中に採集することもでき、かつ、当業者には明
らかなIDCT段によって使用することができる他の複数のタイプの統計がある
。本発明の最も重要な態様の一つは、これらブロック統計をIQ/ISCAN中
に採取することである。本発明の第1の実施の形態を、ブロック統計を採取する
方法及びIDCTアルゴリズムをこれら統計に基づいて選択する方法を参照して
説明する。残りの実施の形態を、IDCTアルゴリズムセレクタの使用に適合さ
せることもできる。
【0021】 ブロック分類統計 本発明の第1の実施の形態において、IQ/ISCAN中に零でない係数を有
するサブブロックのロケーション及び周波数に基づいてブロックの分類を行うD
CTブロック分類装置を説明する。入力データブロックを分類するのに用いられ
る基準は、DCT係数のランレングス復号化され及び逆走査された8×8ブロッ
クに関して表現される。DCT係数ブロックを種類別に分類する複数の方法があ
る。以下の表現は、8×8の大ブロック内の零の値のDCT係数の4×4サブブ
ロックの存在及びロケーションに基づく簡単な分類形態を用いる。そのような4
×4の零サブブロックを
【0022】
【外1】 によって表す。
【0023】
【数1】
【0024】 DCT係数の8×8ブロックを、以下示すような4×4サイズの4サブブロッ
クに分割することができる。
【0025】
【数2】
【0026】 各サブブロックBを、8×8の大ブロックの4個のあり得る象限の一つとす
る。自然のシーンのビデオ画像を、重複しないN×Nブロックに分割する場合、
典型的には複数のこれらブロックは、垂直寸法及び水平寸法に非常に相関した画
素を有する。これは、そのような高速圧縮がMPEG2圧縮形態で可能な理由の
一つである。ブロック中の画素が、垂直寸法又は水平寸法に非常に相関される場
合、量子化後、サブブロックB,B,Bのうちの1個以上は、零の値のみ
のDCT係数を有する。この結果、大ブロック内に零サブブロックの8個のあり
得る形態となる。全ての分類0,1,...,7を以下の形態で左から右に列挙
する。
【0027】
【数3】
【0028】 非常に相関した画素を有するビデオソースにおいて、DCT係数の多くの割合
の量子化ブロックは、高周波情報に対応する零に等しい高次の係数を有する。説
明のために、50%のブロックが分類0に対応する構造を有し、10%が分類1
内にあり、1.5%が分類2内にあり、残りのブロックタイプが時間の30%発
生すると仮定する。また、分類0のアルゴリズムが標準的な高速アルゴリズムの
演算の1/2しか必要とせず、分類2及び3がその演算の3/4しか必要とせず
、残りの全てのブロックが標準的な高速アルゴリズムによって処理されると仮定
する。上記仮定の下では、装置に対して予測される演算数は、
【0029】
【数4】 となる。
【0030】 上記ケースにおいて、平均して30%未満の演算がブロック分類形態に対して
要求される。以下の行列は、4個の提案したブロック分類タイプの演算を示す。
【0031】
【数5】 4分類の各々に対して、零ブロック形態構造に有利な高速IDCTアルゴリズム
を選択する。一度、各分類に対してそのような高速アルゴリズムを選択すると、
装置は、零ブロック内にデータ係数を有する加算、減算及び乗算を除去すること
によって、各アルゴリズムを更に最適化することができる。4×4ブロックの各
々の構造を決定する方法の実際の詳細は以下の通りである。
【0032】 参照することによってここに組み込む継属出願番号08/996,670号で
説明されているように、ラン/レベル拡張処理ステップを実行することなく、逆
量子化処理ステップを実行することができる。結果的に得られるラン/レベル表
示は、記憶に関してデータの希薄な8×8ブロックを表すのに有効なデータ構造
となる。米国出願番号08/996,670号において、零でないDCT係数の
実際の行の主要な計数は、各ラン/レベル対において表される(行の主要な計数
装置を以下説明する。)。本実施の形態の他の態様において、デカルト座標系を
用いて、零でないDCT係数のロケーションを決定する。このデカルト座標系は
次のように表現される。
【0033】 DCT係数の特定のブロックにおいて、0<L<63の零でないAC係数が存
在し、所定のブロックに対するデータの構造は以下のようになる。
【0034】
【数6】 ここで、Rは、符号ビットSを有する大きさLの係数に先行する一連の零
の長さを表し、dcは、常に(0,0)に位置するdc係数を表す。ラン/レベ
ルデータのシーケンスを、MPEG2規格で表現されるような8×8ブロックの
ジグザグ又は交互の走査を適用することによって得られる2次元ブロックの1次
元表示とする。1次元アレイの零でないI番目の係数の線形位置又は索引ロケー
ション(index location)を、上記ランレベル表示のI番目の零でないレベル値ま
での一連の零及び零でない係数の総和を求めることによって演算することができ
る。
【0035】
【数7】
【0036】 交互の走査又はジグザグ走査の逆を演算するMPEG2逆走査関数iscan[]及
び上記式のindex[]の規定を用いると、零でない係数[R,L,S]の元の
2次元座標を次のように算出することができる。
【0037】
【数8】
【0038】 例えば、DCT係数の8×8ブロックに2個の零でないac係数が存在し、ブロ
ックが以下の構造を有すると仮定する。
【0039】
【数9】 説明したようなジグザグ走査を用いて、ブロックを、シーケンスとしてランレベ
ルフォーマットに符号化する。
【0040】
【数10】 (m,n)を計算する式を用いると、2次元座標を見つけることができる。
dc係数は当然座標(0,0)を有する。値5を有する零でない係数の算出した
座標は(2,1)であり、−3に対する座標は(3,4)である。一度、全ての
零でない係数の2次元座標を演算すると、以下の式を用いることによって、4個
のサブブロックのうちのいずれにおいて各係数が以下の式に属するかを決定する
【0041】
【数11】
【0042】 上記式の関数は、サブブロックB,B,B,Bに対応する値0,1,
2,3をとる。ガウス座標に基づく上記式又は以下示す行の主要な係数の式を用
いて、IDCT分類関係関数class[]を規定する。ガウス座標(0,0),(2
,1)及び(3,4)で零でない係数を有するブロックに対して、このブロック
はIDCT分類1にある。その理由は、零でない係数が左上象限及び右上象限の
みにあるからである。この際、分類1に最適な高速IDCTアルゴリズムを選択
することができる。この装置は、これら係数が全て零であるためにブロックの下
の1/2を有する全ての加算、減算及び乗算を除去することもできる。本発明の
他の実施の形態において、選択した最適のアルゴリズムを変更し及び格納して、
分類中に零サブブロックを有する演算を除去する。
【0043】 行の主要な計数装置に対して、各サブブロック内の係数の分布を、以下の行の
主要な計数式を用いて算出することができる。
【0044】
【数12】
【0045】 この場合、sub-block[][]を2×2配列とし、rmcを、ISCAN後のN×N行
列の係数の行の主要位置とし、Nを、列又は行ごとの要素の数とし、/を、整数
除算演算子とし、=+1は、1増分したことを意味する。
【0046】 このようにして、各サブブロック内にある係数の個数を表す4の計数を発生さ
せる。
【0047】 図1は、全体に亘るブロック分類装置10のブロック図を示す。DCT係数の
ブロックBは、サブブロック分類器(sub-block classifier)12に入力される。
サブブロックパターン分類器12は、特定のサブブロックがどの分類(0,1,
2又は3)に属するかを決定する。サブブロック分類器12の出力は、ブロック
が属する分類索引番号Iとなる。図1において、ブロックBを分類3に属するも
のとして示し、それに対して、省略時解釈高速IDCTアルゴリズムが用いられ
る。省略時解釈高速アルゴリズムは、入力データの構造についての仮定を行わな
い。そうでない場合、ブロックが分類1に属すると、スイッチ14は、分類1に
対して最適な特定の高速IDCTアルゴリズムを通じてブロックにルートを形成
する。
【0048】 キャッシュメモリを使用する装置において、新たな実行可能なコードを外部記
憶装置からこのキャッシュにロードする際に被る重大な不利益がしばしば生じる
。このキャッシュのサイズは制限され、少数の最適化したIDCTアルゴリズム
に対してのみ、十分なコードを任意のときにロードすることができる。プラット
ホームに基づくそのようなキャッシュにおいて、IDCT装置に基づくブロック
分類は、少数の分類に対してのみ実用的である。平均演算時間を更に減少させる
ために、更に多くの分類及び分類最適化IDCTアルゴリズムの更に幅広い選択
を有することが望ましい。制限されたキャッシュメモリ及び多数のブロック分類
がある場合の問題を処理するために、最も生じうるブロック分類に対応するアル
ゴリズムのみキャッシュメモリに格納される。そのような装置において、分類の
各々に対する発生の可能性は、複数のMPEG2ビデオソースシーケンスを用い
て統計を演算することによってオフラインで見積もられる。以後、これを「オフ
ラインプロファイリング」と称する。発生したプロファイルは、可能性を見積も
るヒストグラムであり、ブロックは特定の分類に属する。
【0049】 処理すべき現在のデータブロックが、最適アルゴリズムがキャッシュにロード
されない分類に属する場合、要求されるアルゴリズムは、キャッシュにロードさ
れるとともに関連の不利益を生じ、又は常にキャッシュに存在しうる一般的な高
速IDCTアルゴリズムを実行する。図2は、図1の基本装置の変形であり、そ
れは、「オフラインプロファイリング」統計を利用するキャッシュメモリの可能
性を考慮する。キャッシュ16に適合するコードの実際の量は、ハードウェアプ
ラットホームに依存する。説明のために、高速IDCTアルゴリズムの4形態を
維持することができるキャッシュを示す。先ず、キャッシュ16は、最も頻繁に
発生する4個のブロック分類に対応するアルゴリズムによってロードされる。現
在入力するブロックBは、分類Iに属することがわかる。分類Iに対する最適化
したアルゴリズムがキャッシュ16に存在しないので、それは通常のメモリ18
から取り出され、最低の可能性(分類2)を有するアルゴリズムを置換する。更
に洗練されたリソース割当て形態を用いて、キャッシュ16の使用を管理するこ
とかできる。
【0050】 対応するアルゴリズムがキャッシュにロードされない可能性の低いデータタイ
プが発生する場合、最適のアルゴリズムを、全てのアルゴリズムの記憶を有する
低速メモリ18から取り出すことができ、又は、入力データの全ての分類に作用
する一般目的の高速変換アルゴリズムを実行することができる。消失したアルゴ
リズムがキャッシュ16にロードされるか否かは、更新するキャッシュ16に関
連したコストに依存する。汎用のアルゴリズムは常に、キャッシュ16に格納さ
れ、かつ、実行のために利用される。
【0051】 図2の装置のパフォーマンスを、実行時にブロック分類統計をモニタし及び更
新するために「ランタイムプロファイリング」を用いることによって、更に向上
させることができる。このようにして、オフラインで採取した統計と実際のブロ
ック分類統計との間に不整合がある場合、プロファイル情報をキャッシュ中で更
新し及び変更して、その情報が、実行の際に最も頻繁に必要とされるアルゴリズ
ムを実際に有するようになる。
【0052】 図3は、キャッシュが実行時間中に更新される装置のブロック図である。キャ
ッシュ16は、多数のビデオソースに亘って演算した分布とは非常に異なるブロ
ック分類の分布を特定のビデオソースが有することができることを考慮する。キ
ャッシュ更新モジュール20は、常に最近のブロック分類統計を有するランタイ
ム統計データベース22を周期的に検査する機能を有する。その統計を用いて、
キャッシュ更新モジュール20は、いずれが最もあり得る4個のブロック分類で
あるかを決定し、現在のキャッシュ形態を検査する。必要な場合には、キャッシ
ュ16を通常のメモリ18から更新し、キャッシュ16が、実行すべき最もあり
得る4個のアルゴリズムを有し、キャッシュ形態情報記憶装置24を変更して、
新たなキャッシュ形態を反映させる。
【0053】 行及び列ヒストグラム 本発明の第2の実施の形態(図4)において、符号化ブロックの零でない係数
の各々の行及び列ロケーションは、IQ/ISCAN中にブロック間に基づいて
決定される。零でない係数を有する逆走査行列の各行又は列を、8ビットのビッ
トベクトルのセットビットによって表される(図4)。ベクトルの最上位ビット
(ビット7)は列零(又は行零)を表し、最下位ビットは列7(又は行7)を表
す。2個のビットベクトルを発生させ、その一方を行ヒストグラム40とし、他
方を列ヒストグラム41とする。IQ/ISCAN中にヒストグラムを発生させ
る手順は次のとおりである。
【0054】 i.各係数に関連した実行値を累算し、累算した実行値を用いて、各係数の行
の主要なマトリックス位置を見る。 ii.マトリックス中の各係数の行の主要な位置を使用して、列ヒストグラム中
のビット位置を次のように決定する。 列位置=BIT7>>(rmc MODULO N) この場合、Nを、行ごとの要素の数すなわち列数とし、>>を、2値の右シフト
演算子とし、BIT7を、零に設定した最上位ビットセット以外の全てを有する
一定のビットベクトルとし、rmcを、ISCAN後の係数の行の主要な係数と
する。 iii.ベクトル中のビットの状態が0から1に変化する度に、カウンタを増分
する。ブロックの列の希薄さの程度はこのようにして追跡される。 iv.各係数の行の主要な位置を用いて、行ヒストグラムのビット位置を次のよ
うに決定する。 行位置=BIT7>>(rmc/N) この場合、Nを、行ごとの要素の数すなわち列数とし、>>を、2値の右シフト
演算子とし、BIT7を、零に設定した最上位ビットセット以外の全てを有する
一定のビットベクトルとし、rmcを、ISCAN後の係数の行の主要な計数と
する。 v.ベクトル中のビットの状態が0から1に変化する度に、カウンタを増分す
る。ブロックの列の希薄さの程度はこのようにして追跡される。 vi.列ヒストグラムに対する行ヒストグラムの比較を行う。各計数によって表
された、最低のセットビットの数(すなわち、2の希薄さ)を有するヒストグラ
ムを、ストリームに送って、IDCTの最初の供給中に列/行スキップに影響を
及ぼす。
【0055】 IQ/SCAN中にブロック統計を採取する目的の一つは、この情報をIDC
T段に送ることである。このために、IQ/ISCANプロセスの出力における
計数データに沿って既に送られたヘッダデータに関連させることができるデータ
構造を形成する。ブロック統計データを係数データに組み込むことができる。こ
れを、ブロックの第1符号化係数のハイワード(high-word)のブロック統計を符
号化することによって達成する。イントラブロックに対して、このハイワードは
、DC係数のdc精度(dc-precision)を表す。非イントラブロックに対して、こ
のハイワードは、最初の零でない係数のRUN値となり、その結果、Bit−0
5より上のビットを用いて、ブロック統計結果を符号化する。一つのあり得る表
示は次のとおりである。
【0056】 Bit 15 0=列/行ベクトル0空き;0=not Bit 14 0=列/行ベクトル1空き;1=not Bit 13 0=列/行ベクトル0空き;2=not Bit 12 0=列/行ベクトル1空き;3=not Bit 11 0=列/行ベクトル0空き;4=not Bit 10 0=列/行ベクトル1空き;5=not Bit 09 0=列/行ベクトル0空き;6=not Bit 08 0=列/行ベクトル1空き;7=not Bit 07 1=ビット15−8のヒストグラムを列ヒストグラムとする。 0=ビット15−8のヒストグラムを行ヒストグラムとする。 Bit06 1 F{[7][7]^=1;すなわち、不整合制御の適用 0 動作なし Bit 05−Bit 00は、係数の行の主要位置を有する。
【0057】 このアプローチの欠点は、このように送ることができるパラメータの個数が制
限されることである。
【0058】 最も希薄であるヒストグラム40をIDCT段に送る。その後、IDCT段は
、ブロックの第1、第2及び第6行においてのみ逆離散(図4)余弦変換を行う
。IDCTのプロセスによって、列の値は、全ての列にIDCTが課されるよう
に変化する。
【0059】 ダイナミックレンジ統計 本発明の他の実施の形態において、ブロックのダイナミックレンジが演算され
る。ブロックは、DCT変換した係数の一部の配置すなわち分布を有する。ブロ
ック中の係数の配置は、ブロックを符号化する方法に依存する。符号化ブロック
は、1個から64個までの係数を有する(符号化されないブロックは全て零であ
る。)。符号化ブロックは、−2048から+2047までの値の範囲の係数を
有する。ブロックがイントラに符号化されるか非イントラに符号化されるかに応
じて、係数は、ブロック(イントラ)の左上象限に集合する傾向にあり、したが
って、ブロック分類装置を使用する必要があり、又はブロック(非イントラ)内
に任意に散乱させる。しかしながら、多数の良質なブロックは、非常に少ない個
数の係数を有する傾向にあり、その係数のダイナミックレンジが小さくなる(−
100対−100)傾向にある。
【0060】 各ブロックのDCT係数のダイナミックレンジを知ることは有効であり、した
がって、参照することによってここに組み込まれた米国出願番号09/000,
667号で説明されている基本行列拡張IDCT(Basic Matrix Expansion IDCT
)のような技術を適用して、デコーダの効率を向上させる。ブロックのダイナミ
ックレンジを、次のようにして演算する(図5)。
【0061】
【数13】 MAX(level)−MIN(level) この場合、levelを、各ラン/レベル対の量子化解除レベル値とし、MAX
()は、ブロックの以前の最大値に対する新たなレベル値を比較し、かつ、二者
のうちの大きい方を保持し、MIN()は、ブロックの以前の最小値に対する新
たなレベル値を比較し、かつ、二者のうちの小さい方を保持する。
【0062】 その後、ダイナミックレンジはIDCT段に送られる。
【0063】 既に説明したように、IQ/ISCAN中に採取することができる複数のタイ
プのブロック統計があり、当業者に明らかなIDCT段によるこれら統計に対す
る複数の使用がある。
【0064】 本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が
画嚢である。
【図面の簡単な説明】
【図1】 ブロック分類装置のブロック図である。
【図2】 最も発生する可能性の高い分類に対する最適IDCTアルゴリズムを
格納するキャッシュメモリを有する本発明の他の実施の形態によるブロック分類
装置を示し、そのキャッシュは、最も発生する可能性が低い分類に対する通常の
メモリから新たなIDCTアルゴリズムを更新する。
【図3】 入力するデータストリームに基づいて実行すべき最もあり得るアルゴ
リズムを実行時間中に更新するキャッシュメモリを有する本発明によるブロック
分類装置を示す。
【図4】 本発明によるヒストグラム装置を示す。
【図5】 本発明によるブロックのダイナミックレンジを演算するフローチャー
トを示す。
───────────────────────────────────────────────────── フロントページの続き (71)出願人 Groenewoudseweg 1, 5621 BA Eindhoven, Th e Netherlands Fターム(参考) 5C059 KK15 MA00 MA23 MC11 ME01 PP04 SS02 TA41 TB08 TC04 TC06 TD13 UA05 UA39

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 逆離散余弦変換(IDCT)アルゴリズムを選択する方法であっ
    て、 ビデオデータのブロック内のDCT係数の構成についての逆量子化/走査(I
    Q/ISCAN)中にブロック統計を採取するステップと、 前記ブロック統計をビデオデコーダのIDCT段に供給するステップと、 全ての零の値のDCT係数を有するサブブロックを有する演算の少なくとも一
    部を除去するブロック統計に依存して、ブロックに対するIDCTアルゴリズム
    を選択するステップとを具えることを特徴とする方法。
  2. 【請求項2】 複数のサブブロックを有するDCTデータの各ブロックを分割す
    るステップと、 どのサブブロックが零でないDCT係数を有するかを、IQ/ISCAN中に
    決定するステップと、 前記ブロック内に零でないDCT係数を有するサブブロックのパターンに依存
    して、前記ブロックに対するIDCTアルゴリズムを選択するステップとを更に
    具えることを特徴とする請求項1記載の方法。
  3. 【請求項3】 零でないDCT係数を有するサブブロックの特定のパターンを有
    するブロックの発生の確率を決定するステップと、 高い発生確率の零でないサブブロックのパターンを有するブロックに対する最
    適なIDCTアルゴリズムを選択し及び格納するとともに、残りのブロックに対
    する省略時解釈IDCTアルゴリズムを選択するステップとを更に有することを
    特徴とする請求項2記載の方法。
  4. 【請求項4】 前記発生の確率を決定するステップが、複数のMPEG2ビデオ
    ソースシーケンスに基づくことを特徴とする請求項3記載の方法。
  5. 【請求項5】 前記発生の確率を決定するステップが入力ビデオデータに基づき
    、最適IDCTアルゴリズムを、実行時間に基づく、高い発生確率の零でないサ
    ブブロックパターンに基づく新たなIDCTアルゴリズムに更新することを特徴
    とする請求項3記載の方法。
  6. 【請求項6】 DCTデータのブロックが8×8次元を有し、前記サブブロック
    を4×4サブブロックとする請求項2記載の方法。
  7. 【請求項7】 前記採取ステップが、零でないDCT係数を有するブロックの行
    を検出するステップを有することを特徴とする請求項1記載の方法。
  8. 【請求項8】 前記ブロック統計を採取するステップが、零でない係数を有する
    ブロックの列を検出するステップを有することを特徴とする請求項1記載の方法
  9. 【請求項9】 前記ブロック統計を、i)零でないDCT係数を有するブロック
    の行の表示と、ii)零でないDCT係数を有するブロックの列の表示のうちの
    少ない方とすることを特徴とする請求項1記載の方法。
  10. 【請求項10】 前記ブロック統計を採取するステップが、前記ブロックのダイ
    ナミックレンジを決定するステップを有することを特徴とする請求項1記載の方
    法。
  11. 【請求項11】 離散余弦変換(DCT)データのブロックを受信する入力装置
    と、 零でないDCT係数を有する零でないサブブロックを、逆量子化/走査(IQ
    /ISCAN)中に検出し、前記ブロック内の零でないサブブロックの個数及び
    ロケーションに基づいて各ブロックを1セットの分類のうちの一つに分類し、か
    つ、特定のブロックの分類を表す分類表示信号を発生させるサブブロックパター
    ン分類器と、 前記分類表示信号を受信し、前記分類表示信号によって表された分類に対応す
    る最適な逆DCT(IDCT)アルゴリズムを選択するアルゴリズムセレクタと
    、 発生する可能性が高い分類に対する最適IDCTアルゴリズムを格納し、かつ
    、発生する可能性が低い分類に対する省略時解釈アルゴリズムを格納するメモリ
    とを具えることを特徴とする電子装置。
  12. 【請求項12】 DCTデータの入力ブロックに基づく分類の発生の可能性を決
    定する可能性決定器と、前記メモリを、実行時間に基づいて、発生の可能性の高
    い分類の最適IDCTアルゴリズムに更新するメモリ更新装置とを更に有するこ
    とを特徴とする請求項11記載の電子装置。
  13. 【請求項13】 前記可能性決定器が、複数のビデオソースシーケンスを用いて
    オフラインで各分類の発生の可能性を演算し、発生の可能性が最も高い分類に対
    する最適IDCTアルゴリズムを、前記メモリに予め格納したことを特徴とする
    請求項11記載の電子装置。
  14. 【請求項14】 格納された前記最適IDCTアルゴリズムを変更して、全て零
    の値のDCT係数を有するサブブロックを有する不要な演算を除去するようにし
    たことを特徴とする請求項11記載の電子装置。
  15. 【請求項15】 前記メモリをキャッシュメモリとし、前記IDCTアルゴリズ
    ムを通常のメモリから検索して、前記キャッシュを、発生の確率が最も高い分類
    に対する最適なIDCTアルゴリズムに更新するようにしたことを特徴とする請
    求項12記載の電子装置。
  16. 【請求項16】 IDCTの効率を向上させる電子装置であって、 構成に関連するIQ/ISCAN中のDCT係数のブロックについてのブロッ
    ク統計を採取し、そのブロック統計が、全体的に前記DCT係数のブロックに関
    連する統計に適切であるブロック統計採取器と、 前記ブロック統計をビデオデコーダのIDCT段に供給するブロック統計供給
    器とを具えることを特徴とする電子装置。
  17. 【請求項17】 前記ブロック統計が、零でないDCT係数を有するブロックの
    行を表すことを特徴とする請求項16記載の電子装置。
  18. 【請求項18】 前記ブロック統計が、零でないDCT係数を有するブロックの
    列を表すことを特徴とする請求項16記載の電子装置。
  19. 【請求項19】 前記ブロック統計を、前記ブロック内のDCT係数のダイナミ
    ックレンジとしたことを特徴とする請求項16記載の電子装置。
  20. 【請求項20】 コンピュータで実行できるブロック統計採取処理工程を格納す
    るメモリと、 DCT係数のブロック上で逆量子化及び逆走査を実行することができる逆量子
    化器及び逆走査器と、 逆量子化及び逆走査を行う前記逆量子化器及び逆走査器と共同して、前記メモ
    リに格納された処理工程を実行し、かつ、前記ブロック内のDCT係数の構成に
    関連するブロックについてのブロック統計を採取するコントローラとを具えるこ
    とを特徴とするデジタルテレビジョン受像機。
JP2000557622A 1998-06-30 1999-06-14 逆量子化及びi走査中にブロック統計を採取する方法及び装置 Abandoned JP2002519956A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/107,522 1998-06-30
US09/107,522 US20020027954A1 (en) 1998-06-30 1998-06-30 Method and device for gathering block statistics during inverse quantization and iscan
PCT/IB1999/001102 WO2000001156A2 (en) 1998-06-30 1999-06-14 Method and device for gathering block statistics during inverse quantization and iscan

Publications (1)

Publication Number Publication Date
JP2002519956A true JP2002519956A (ja) 2002-07-02

Family

ID=22317043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000557622A Abandoned JP2002519956A (ja) 1998-06-30 1999-06-14 逆量子化及びi走査中にブロック統計を採取する方法及び装置

Country Status (5)

Country Link
US (1) US20020027954A1 (ja)
EP (1) EP1040667A2 (ja)
JP (1) JP2002519956A (ja)
KR (1) KR100648391B1 (ja)
WO (1) WO2000001156A2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1325638A1 (en) * 2000-09-27 2003-07-09 Koninklijke Philips Electronics N.V. Decoding of data
US7366236B1 (en) * 2001-06-04 2008-04-29 Cisco Sytems Canada Co. Source adaptive system and method for 2D iDCT
US7656949B1 (en) 2001-06-27 2010-02-02 Cisco Technology, Inc. Methods and apparatus for performing efficient inverse transform operations
EP1442392A2 (en) * 2001-10-29 2004-08-04 Parthusceva Ltd. Method and apparatus for performing spatial-to-frequency domain transform
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
US7190724B2 (en) * 2002-04-12 2007-03-13 Seiko Epson Corporation Method and apparatus for transform domain video processing
KR20040026767A (ko) * 2002-09-26 2004-04-01 (주)씨앤에스 테크놀로지 역이산여현변환 방법과 이를 이용한 영상복원방법
KR100561392B1 (ko) * 2002-11-20 2006-03-16 삼성전자주식회사 고속 역 이산 여현 변환 방법 및 장치
KR100539777B1 (ko) * 2002-11-22 2006-01-11 엘지전자 주식회사 비디오 디코더의 역이산여현변환 연산량 저감 방법
US10554985B2 (en) 2003-07-18 2020-02-04 Microsoft Technology Licensing, Llc DC coefficient signaling at small quantization step sizes
US7830963B2 (en) * 2003-07-18 2010-11-09 Microsoft Corporation Decoding jointly coded transform type and subblock pattern information
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
GB0323038D0 (en) * 2003-10-02 2003-11-05 Koninkl Philips Electronics Nv Method and apparatus for improved inverse transform calculation
GB0324369D0 (en) * 2003-10-18 2003-11-19 Koninkl Philips Electronics Nv Method and apparatus for calculating an inverse DCT
KR100667809B1 (ko) * 2005-08-30 2007-01-11 삼성전자주식회사 영상 디코딩 방법 및 그 기록매체
CN100403802C (zh) * 2006-04-30 2008-07-16 西安交通大学 一种基于寄存器组的行程解码与反扫描实现方法
KR20120009618A (ko) * 2010-07-19 2012-02-02 에스케이 텔레콤주식회사 주파수변환단위 분할부호화 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
KR101199861B1 (ko) 2010-10-21 2012-11-09 한양대학교 산학협력단 부호화/복호화 장치 및 그 방법과 이를 구현하기 위한 프로그램이 기록된 기록매체
KR101252043B1 (ko) * 2011-08-03 2013-04-12 한양대학교 산학협력단 통합 모듈을 구비한 복호화 장치 및 복호화 처리 방법
JP6089878B2 (ja) * 2013-03-28 2017-03-08 富士通株式会社 直交変換装置、直交変換方法及び直交変換用コンピュータプログラムならびにオーディオ復号装置
KR102250088B1 (ko) * 2013-10-24 2021-05-10 삼성전자주식회사 비디오 스트림을 복호화하는 방법 및 장치
US11662719B2 (en) * 2017-09-29 2023-05-30 Rockwell Automation Technologies, Inc. Classification modeling for monitoring, diagnostics optimization and control

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0443114A3 (en) * 1990-02-23 1993-12-15 Ibm Methods and apparatus for image-data decompression
JP2950682B2 (ja) * 1992-08-04 1999-09-20 シャープ株式会社 逆離散余弦変換演算装置
US5467131A (en) * 1993-12-30 1995-11-14 Hewlett-Packard Company Method and apparatus for fast digital signal decoding
JPH07262175A (ja) * 1994-03-18 1995-10-13 Fujitsu Ltd 関数変換演算装置
JPH11510989A (ja) * 1996-06-05 1999-09-21 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ 符号化ディジタルビデオ信号を復号化する方法および装置

Also Published As

Publication number Publication date
KR20010023440A (ko) 2001-03-26
US20020027954A1 (en) 2002-03-07
KR100648391B1 (ko) 2006-11-24
EP1040667A2 (en) 2000-10-04
WO2000001156A3 (en) 2000-04-13
WO2000001156A2 (en) 2000-01-06

Similar Documents

Publication Publication Date Title
JP2002519956A (ja) 逆量子化及びi走査中にブロック統計を採取する方法及び装置
KR100234316B1 (ko) 링잉노이즈 감소를 위한 신호적응 필터링 방법 및 신호적응필터
CN1270543C (zh) 用于以固定的计算复杂度编码活动图象的方法
US8121427B2 (en) Breakpoint determining for hybrid variable length coding and encoding the determined breakpoint
RU2330325C2 (ru) Основанное на контексте адаптивное неравномерное кодирование для адаптивных преобразований блоков
US6567562B1 (en) Encoding apparatus and method
US8086052B2 (en) Hybrid video compression method
JP3967405B2 (ja) 画像信号の符号化方法
US20020009143A1 (en) Bandwidth scaling of a compressed video stream
US6985529B1 (en) Generation and use of masks in MPEG video encoding to indicate non-zero entries in transformed macroblocks
JP3655651B2 (ja) データ処理装置
JPH0955945A (ja) 動きベクトル特定方法及び装置
JP4804342B2 (ja) オーバーコンプリート基底変換ベースの、動き残差フレーム符号化方法およびビデオ圧縮用装置
WO2005001760A2 (en) Fast loss less image compression system based on neighborhood comparisons
EP1755341A1 (en) Method of quantization of transform coefficients
WO2011005105A1 (en) Computer implemented early skip
EP1389875A2 (en) Method for motion estimation adaptive to DCT block content
US8023756B2 (en) Image encoding apparatus and method of controlling same
EP0974932A2 (en) Adaptive video compression
Philips et al. State-of-the-art techniques for lossless compression of 3D medical image sets
JP4336789B2 (ja) 2次元直交変換と量子化方法及びその装置並びにプログラム
JP2005124001A (ja) 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法、及び動画像復号プログラム
KR20040099759A (ko) 다층 레벨 연속 제거 알고리즘을 이용한 동영상 움직임추정 방법
KR100987581B1 (ko) 고속 움직임 추정을 위한 부분 블록정합 방법
JP2004312693A (ja) 画像符号化装置及び画像符号化方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060612

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20061207