JP2003348598A - メモリ効率のいい圧縮領域ビデオ処理のための且つ因数分解及び整数近似法を用いる高速逆動き補償のための方法並びに装置 - Google Patents
メモリ効率のいい圧縮領域ビデオ処理のための且つ因数分解及び整数近似法を用いる高速逆動き補償のための方法並びに装置Info
- Publication number
- JP2003348598A JP2003348598A JP2003107352A JP2003107352A JP2003348598A JP 2003348598 A JP2003348598 A JP 2003348598A JP 2003107352 A JP2003107352 A JP 2003107352A JP 2003107352 A JP2003107352 A JP 2003107352A JP 2003348598 A JP2003348598 A JP 2003348598A
- Authority
- JP
- Japan
- Prior art keywords
- video
- block
- matrix
- bit stream
- hybrid
- 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.)
- Withdrawn
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
(57)【要約】
【課題】 メモリ効率のいい圧縮領域映像処理のための
且つ因数分解及び整数近似法を用いる高速逆動き補償の
ための方法並びに装置 【解決手段】 ビットストリームを復号化するのに要す
るメモリ所要量を減らすための方法。この方法はビデオ
ビットストリームを受け取り、ビットストリームのフレ
ームが離散コサイン変換(DCT)領域表現に復号化され
る。次に、そのDCT領域表現の非零係数が識別され、ハ
イブリッドデータ構造がアセンブルされ、DCT領域表現
の非零係数がハイブリッドデータ構造に挿入される。ま
た、逆動き補償を実行するための方法では、ビデオビッ
トストリームを受け取け、変換行列タイプが識別され
る。変換行列タイプは、半画素行列か完全画素行列かの
どちらかで、変換行列タイプが半画素行列ならば、その
半画素行列に対応するビットストリームを復号化する因
数分解技法を適用し、変換行列タイプが完全画素行列な
らば、完全画素行列に対応するビットストリームを復号
化する整数近似技法を適用する。
且つ因数分解及び整数近似法を用いる高速逆動き補償の
ための方法並びに装置 【解決手段】 ビットストリームを復号化するのに要す
るメモリ所要量を減らすための方法。この方法はビデオ
ビットストリームを受け取り、ビットストリームのフレ
ームが離散コサイン変換(DCT)領域表現に復号化され
る。次に、そのDCT領域表現の非零係数が識別され、ハ
イブリッドデータ構造がアセンブルされ、DCT領域表現
の非零係数がハイブリッドデータ構造に挿入される。ま
た、逆動き補償を実行するための方法では、ビデオビッ
トストリームを受け取け、変換行列タイプが識別され
る。変換行列タイプは、半画素行列か完全画素行列かの
どちらかで、変換行列タイプが半画素行列ならば、その
半画素行列に対応するビットストリームを復号化する因
数分解技法を適用し、変換行列タイプが完全画素行列な
らば、完全画素行列に対応するビットストリームを復号
化する整数近似技法を適用する。
Description
【0001】
【発明の属する技術分野】本発明は、一般的には、ディ
ジタルビデオ技術に関し、より具体的には、効率的なメ
モリ圧縮法を実現するための方法及び装置に関すると共
に、圧縮領域ビデオデコーダのための効率的な逆動き補
償法を実現するための方法及び装置に関する。
ジタルビデオ技術に関し、より具体的には、効率的なメ
モリ圧縮法を実現するための方法及び装置に関すると共
に、圧縮領域ビデオデコーダのための効率的な逆動き補
償法を実現するための方法及び装置に関する。
【0002】
【従来の技術】セルラー電話やパーソナルディジタルア
シスタントといったモバイル端末でのビデオアクセスで
は、モバイルシステムの性質上の限界があるために、数
多くの難しい課題に出くわす。例えば、低消費電力型の
ハンドヘルド機器は、バンド幅、電力、メモリ、及びコ
スト上の必要条件により制約を受ける。こうしたハンド
ヘルド機器で受信されるビデオデータはビデオデコーダ
により復号化される。そうした端末と関連付けられるビ
デオデコーダは、空間領域、つまり、解凍領域で動き補
償を実行する。H.263、H261、MPEG1/2/4といったビデオ
圧縮規格は、低ビットレートでビデオを符号化するのに
動き補償型離散コサイン変換(DCT)スキームを用い
る。ここで採用している低ビットレートとは、秒毎約6
4キロビット未満のビットレートのことである。DCTス
キームでは、時間的な冗長度を削除するために動き予測
(ME)及び動き補償(MC)を用いる一方、それ以外の空
間的冗長度を削除するためにDCTを用いる。
シスタントといったモバイル端末でのビデオアクセスで
は、モバイルシステムの性質上の限界があるために、数
多くの難しい課題に出くわす。例えば、低消費電力型の
ハンドヘルド機器は、バンド幅、電力、メモリ、及びコ
スト上の必要条件により制約を受ける。こうしたハンド
ヘルド機器で受信されるビデオデータはビデオデコーダ
により復号化される。そうした端末と関連付けられるビ
デオデコーダは、空間領域、つまり、解凍領域で動き補
償を実行する。H.263、H261、MPEG1/2/4といったビデオ
圧縮規格は、低ビットレートでビデオを符号化するのに
動き補償型離散コサイン変換(DCT)スキームを用い
る。ここで採用している低ビットレートとは、秒毎約6
4キロビット未満のビットレートのことである。DCTス
キームでは、時間的な冗長度を削除するために動き予測
(ME)及び動き補償(MC)を用いる一方、それ以外の空
間的冗長度を削除するためにDCTを用いる。
【0003】図1は、ビデオデータを復号化すると共
に、空間領域で動き補償を実行するためのビデオデコー
ダの概略図である。ビットストリーム102がデコーダ
100によって受け取られる。デコーダ100には、可
変デコーダ(VLD)ステージ104と、ランレングスデ
コーダ(RLD)ステージ106、反量子化(DQ)ステー
ジ108、逆離散コサイン変換(IDCT)ステージ11
0、動き補償(MC)ステージ112、及びフレームバッ
ファとも呼ばれるメモリ(MEM)114とがある。最初
の4ステージ(VLD104、RLD106、DQ108、IDCT
110)は、圧縮されているビットストリームを復号化
して画素領域に戻す。イントラコード化された(intrac
oded)ブロックでは、現フレームの中でブロックを再構
築するために最初の4ステージ、つまり、104、106、10
8、110の出力が直接用いられる。インターコード化され
た(intercoded)ブロックでは、出力が予測誤差を表わ
しており、現フレームの中でブロックを再構築するため
にその前のフレームから作られた予測に出力が付加され
る。よって、現フレームはブロック単位で再構築され
る。最終的に、現フレームがデコーダ、つまり、ディス
プレイ116の出力に送られると共に、フレームバッフ
ァ(MEM)114にも保持される。
に、空間領域で動き補償を実行するためのビデオデコー
ダの概略図である。ビットストリーム102がデコーダ
100によって受け取られる。デコーダ100には、可
変デコーダ(VLD)ステージ104と、ランレングスデ
コーダ(RLD)ステージ106、反量子化(DQ)ステー
ジ108、逆離散コサイン変換(IDCT)ステージ11
0、動き補償(MC)ステージ112、及びフレームバッ
ファとも呼ばれるメモリ(MEM)114とがある。最初
の4ステージ(VLD104、RLD106、DQ108、IDCT
110)は、圧縮されているビットストリームを復号化
して画素領域に戻す。イントラコード化された(intrac
oded)ブロックでは、現フレームの中でブロックを再構
築するために最初の4ステージ、つまり、104、106、10
8、110の出力が直接用いられる。インターコード化され
た(intercoded)ブロックでは、出力が予測誤差を表わ
しており、現フレームの中でブロックを再構築するため
にその前のフレームから作られた予測に出力が付加され
る。よって、現フレームはブロック単位で再構築され
る。最終的に、現フレームがデコーダ、つまり、ディス
プレイ116の出力に送られると共に、フレームバッフ
ァ(MEM)114にも保持される。
【0004】MEM114は、動き補償112に必要な既
に復号化されている画像(picture)を保持している。M
EM114のサイズは、入ってくる画像フォーマットに応
じてスケーリングしなければならない。例えば、H.263
は5つの規格化された画像フォーマット、すなわち、
(1)1/4以下(sub-quarter)共通中間フォーマット
(サブQCIF)、(2)1/4共通中間フォーマット(QCI
F)、(3)共通中間フォーマット(CIF)、(4)4CI
F、及び(5)16CIF、をサポートしている。各フォーマ
ットは、画像の幅及び高さだけでなく、アスペクト比も
定義する。広く知られているように、画像は1つの輝度
成分及び2つの色差成分(Y, Cr, Cb)としてコード化
される。それらの成分は4:2:0の構成でサンプリングさ
れ、各成分は画素あたり8ビット分解能を有する。例え
ば、図1のビデオデコーダは、CIFフォーマットのH.263
ビットストリームを復号化しながら、MEM114のため
に約200キロバイトのメモリを割り当てなければなら
ない。さらに、ビデオ会議システムで欠かせないよう
に、複数のビットストリームが一度に復号化される場
合、メモリ需要が大きくなりすぎる。
に復号化されている画像(picture)を保持している。M
EM114のサイズは、入ってくる画像フォーマットに応
じてスケーリングしなければならない。例えば、H.263
は5つの規格化された画像フォーマット、すなわち、
(1)1/4以下(sub-quarter)共通中間フォーマット
(サブQCIF)、(2)1/4共通中間フォーマット(QCI
F)、(3)共通中間フォーマット(CIF)、(4)4CI
F、及び(5)16CIF、をサポートしている。各フォーマ
ットは、画像の幅及び高さだけでなく、アスペクト比も
定義する。広く知られているように、画像は1つの輝度
成分及び2つの色差成分(Y, Cr, Cb)としてコード化
される。それらの成分は4:2:0の構成でサンプリングさ
れ、各成分は画素あたり8ビット分解能を有する。例え
ば、図1のビデオデコーダは、CIFフォーマットのH.263
ビットストリームを復号化しながら、MEM114のため
に約200キロバイトのメモリを割り当てなければなら
ない。さらに、ビデオ会議システムで欠かせないよう
に、複数のビットストリームが一度に復号化される場
合、メモリ需要が大きくなりすぎる。
【0005】MEM114は、ビデオデコーダ100の中
で唯一最大のメモリ使用源である。メモリ使用を軽減す
るために、入ってくるビットストリームの色成分の分解
能を低下させることが一つのアプローチとして考えられ
る。例えば、モバイル端末上のカラー表示の濃度が65,5
36色しか表示できないとしたら、色成分(Y, Cr, Cb)
の分解能を画素につき24ビットから16ビットに低下させ
ることができる。この技法は、可能性としては、メモリ
使用度を30%減らすことができるけれども、ビデオデコ
ーダで回路的に対応しなければならないディスプレイ依
存型ソリューションである。また、この技法は、ピーク
信号対雑音比(PSNR)要件を変えて簡単にスケーリング
することができないので、自由度がない。
で唯一最大のメモリ使用源である。メモリ使用を軽減す
るために、入ってくるビットストリームの色成分の分解
能を低下させることが一つのアプローチとして考えられ
る。例えば、モバイル端末上のカラー表示の濃度が65,5
36色しか表示できないとしたら、色成分(Y, Cr, Cb)
の分解能を画素につき24ビットから16ビットに低下させ
ることができる。この技法は、可能性としては、メモリ
使用度を30%減らすことができるけれども、ビデオデコ
ーダで回路的に対応しなければならないディスプレイ依
存型ソリューションである。また、この技法は、ピーク
信号対雑音比(PSNR)要件を変えて簡単にスケーリング
することができないので、自由度がない。
【0006】空間領域でデータに操作を行なうには、圧
縮領域処理と比べ、より大きなメモリ容量が要る。空間
領域では、動き補償を算出すると共に連続フレームの画
像に動き補償をかけることが容易である。しかしなが
ら、圧縮領域で操作している場合、動き補償は、誤差値
がもはや空間値ではなくなるから、つまり、圧縮領域で
操作している時の誤差値は画素値ではないから、動きベ
クトルが前のフレームを示すのと比べてそれほど明快で
はない。その上に、圧縮領域データを効率的に処理する
能力を有する方法がない。先行技術のアプローチは主
に、圧縮領域をトランスコード化し、スケーリングし、
鮮鋭化する各アプリケーションを中心にしている。さら
に、圧縮領域対応の逆補償用アプリケーションは、ピー
ク信号対雑音比(PSNR)の性能が貧弱になる傾向がある
と同時に、1秒あたりに表示可能なフレーム量の点か
ら、応答時間が受容れ難いほど遅い。
縮領域処理と比べ、より大きなメモリ容量が要る。空間
領域では、動き補償を算出すると共に連続フレームの画
像に動き補償をかけることが容易である。しかしなが
ら、圧縮領域で操作している場合、動き補償は、誤差値
がもはや空間値ではなくなるから、つまり、圧縮領域で
操作している時の誤差値は画素値ではないから、動きベ
クトルが前のフレームを示すのと比べてそれほど明快で
はない。その上に、圧縮領域データを効率的に処理する
能力を有する方法がない。先行技術のアプローチは主
に、圧縮領域をトランスコード化し、スケーリングし、
鮮鋭化する各アプリケーションを中心にしている。さら
に、圧縮領域対応の逆補償用アプリケーションは、ピー
ク信号対雑音比(PSNR)の性能が貧弱になる傾向がある
と同時に、1秒あたりに表示可能なフレーム量の点か
ら、応答時間が受容れ難いほど遅い。
【0007】
【特許文献1】米国再発行特許発明第6,240,210号明細
書
書
【特許文献2】米国特許第6,157,740号明細書
【0008】
【発明が解決しようとする課題】そこで、低ビットレー
トのビデオデータを復号化するのに要するメモリ所要量
を最小限にする方法並びに装置を提供すると共に、圧縮
領域ビデオレコーダの高速且つ効率的な逆動き補償を可
能にする方法並びに装置を提供するべく、先行技術が抱
える問題を解決する必要がある。
トのビデオデータを復号化するのに要するメモリ所要量
を最小限にする方法並びに装置を提供すると共に、圧縮
領域ビデオレコーダの高速且つ効率的な逆動き補償を可
能にする方法並びに装置を提供するべく、先行技術が抱
える問題を解決する必要がある。
【0009】
【課題を解決するための手段】おおまかに言えば、本発
明は、ハイブリッドデータ構造を採用することによりメ
モリ所要量を最小限にするように構成されたビデオデコ
ーダを提供することで、こうしたニーズの少なくとも一
つの局面を満たすものである。なお、本発明のこの態様
は、方法、システム、コンピュータ可読媒体、又はデバ
イスなど、いろいろな方法で実現することができる。本
発明のこの態様の実施例を以下にいくつか説明する。
明は、ハイブリッドデータ構造を採用することによりメ
モリ所要量を最小限にするように構成されたビデオデコ
ーダを提供することで、こうしたニーズの少なくとも一
つの局面を満たすものである。なお、本発明のこの態様
は、方法、システム、コンピュータ可読媒体、又はデバ
イスなど、いろいろな方法で実現することができる。本
発明のこの態様の実施例を以下にいくつか説明する。
【0010】1実施例において、ビットストリームを復
号化するのに要するメモリ所要量を低減するための方法
を提供する。この方法は、ビデオビットストリームを受
け取ることから始まる。次に、そのビットストリームの
フレームが変換(例えば、離散コサイン変換(DCT))
領域表現に復号化される。次に、その変換領域表現の非
零係数が識別される。次に、ハイブリッドデータ構造が
アセンブルされる。このハイブリッドデータ構造は、固
定サイズのアレイ及び可変サイズのオーバーフローベク
トルを含んでいる。次に、変換領域表現の非零係数がハ
イブリッドデータ構造の中に挿入される。
号化するのに要するメモリ所要量を低減するための方法
を提供する。この方法は、ビデオビットストリームを受
け取ることから始まる。次に、そのビットストリームの
フレームが変換(例えば、離散コサイン変換(DCT))
領域表現に復号化される。次に、その変換領域表現の非
零係数が識別される。次に、ハイブリッドデータ構造が
アセンブルされる。このハイブリッドデータ構造は、固
定サイズのアレイ及び可変サイズのオーバーフローベク
トルを含んでいる。次に、変換領域表現の非零係数がハ
イブリッドデータ構造の中に挿入される。
【0011】別の実施例において、ビデオデータを復号
化するための方法を提供する。この方法は、圧縮された
ビットストリーム内のビデオデータのフレームを受け取
ることから始まる。次に、そのフレームのブロックが、
圧縮領域で変換(例えば、DCT)領域表現に復号化され
る。次に、ハイブリッドデータ構造が定義される。次
に、その変換領域表現と関連付けられるデータがハイブ
リッドデータ構造で保持される。次に、圧縮領域で変換
領域表現と関連付けられるデータに対して逆動き補償が
実行される。データに逆動き補償を行なった後、表示す
るためにデータが解凍される。
化するための方法を提供する。この方法は、圧縮された
ビットストリーム内のビデオデータのフレームを受け取
ることから始まる。次に、そのフレームのブロックが、
圧縮領域で変換(例えば、DCT)領域表現に復号化され
る。次に、ハイブリッドデータ構造が定義される。次
に、その変換領域表現と関連付けられるデータがハイブ
リッドデータ構造で保持される。次に、圧縮領域で変換
領域表現と関連付けられるデータに対して逆動き補償が
実行される。データに逆動き補償を行なった後、表示す
るためにデータが解凍される。
【0012】また別の実施例において、低レートのビッ
トストリームデータをハイブリッドデータ構造で保持す
るべく並べ替えるためのプログラム命令を有するコンピ
ュータ可読媒体を提供する。このコンピュータ可読媒体
には、データフレームの符号化されたブロックと関連付
けられる非零変換(例えば、DCT)係数を識別するため
のプログラム命令が入っている。その非零変換係数を固
定サイズアレイに配列するためのプログラム命令が入っ
ている。非零変換係数の数量が固定サイズアレイの容量
を超えたかどうか判定するためのプログラム命令を提供
する。固定サイズアレイの容量を超える非零変換係数を
可変サイズオーバーフローベクトルで保持するためのプ
ログラム命令、及び非零変換係数を圧縮領域から空間領
域に平行移動させる(translate)ためのプログラム命
令を含んでいる。
トストリームデータをハイブリッドデータ構造で保持す
るべく並べ替えるためのプログラム命令を有するコンピ
ュータ可読媒体を提供する。このコンピュータ可読媒体
には、データフレームの符号化されたブロックと関連付
けられる非零変換(例えば、DCT)係数を識別するため
のプログラム命令が入っている。その非零変換係数を固
定サイズアレイに配列するためのプログラム命令が入っ
ている。非零変換係数の数量が固定サイズアレイの容量
を超えたかどうか判定するためのプログラム命令を提供
する。固定サイズアレイの容量を超える非零変換係数を
可変サイズオーバーフローベクトルで保持するためのプ
ログラム命令、及び非零変換係数を圧縮領域から空間領
域に平行移動させる(translate)ためのプログラム命
令を含んでいる。
【0013】さらに別の実施例において、回路を提供す
る。この回路は、ビデオデコーダ集積回路チップを有す
る。このビデオデコーダ集積回路チップは、ビデオデー
タのフレームと関連付けられるデータのビットストリー
ムを受け取るための回路構成を含む。ビデオデコーダに
は、データのビットストリームを変換(例えば、DCT)
領域表現に復号化するための回路構成が入っている。変
換領域表現の非零変換係数を、ビデオデコーダと関連付
けられるメモリの中のハイブリッドデータ構造で配列す
るための回路構成を提供する。表示するために、変換領
域表現の非零変換係数を解凍するための回路構成も提供
する。
る。この回路は、ビデオデコーダ集積回路チップを有す
る。このビデオデコーダ集積回路チップは、ビデオデー
タのフレームと関連付けられるデータのビットストリー
ムを受け取るための回路構成を含む。ビデオデコーダに
は、データのビットストリームを変換(例えば、DCT)
領域表現に復号化するための回路構成が入っている。変
換領域表現の非零変換係数を、ビデオデコーダと関連付
けられるメモリの中のハイブリッドデータ構造で配列す
るための回路構成を提供する。表示するために、変換領
域表現の非零変換係数を解凍するための回路構成も提供
する。
【0014】別の実施例において、画像を表示するよう
に構成された機器を提供する。この機器は、中央処理機
構(CPU)、ランダムアクセスメモリ(RAM)、及び画像
を表示するように構成されたディスプレイ画面とを含
む。ビデオビットストリームを変換(例えば、DCT)領
域表現に変換するように構成されたデコーダ回路構成を
含む。このデコーダ回路は、変換領域表現の非零変換係
数を、デコーダ回路と関連付けられるメモリの中にハイ
ブリッドデータ構造で配列する能力を有する。デコーダ
回路には、逆動き補償時に、ハイブリッド因数分解/整
数近似の技法を選択的に適用するための回路構成が入っ
ている。CPU、RAM、表示画面、及びデコーダ回路と通信
しているバスも有する。
に構成された機器を提供する。この機器は、中央処理機
構(CPU)、ランダムアクセスメモリ(RAM)、及び画像
を表示するように構成されたディスプレイ画面とを含
む。ビデオビットストリームを変換(例えば、DCT)領
域表現に変換するように構成されたデコーダ回路構成を
含む。このデコーダ回路は、変換領域表現の非零変換係
数を、デコーダ回路と関連付けられるメモリの中にハイ
ブリッドデータ構造で配列する能力を有する。デコーダ
回路には、逆動き補償時に、ハイブリッド因数分解/整
数近似の技法を選択的に適用するための回路構成が入っ
ている。CPU、RAM、表示画面、及びデコーダ回路と通信
しているバスも有する。
【0015】大まかに言えば、本発明は、メモリ所要量
を低減すると同時に一応満足できるビデオ画質を提供
し、それと同時に、圧縮領域で逆動き補償を実行する能
力を有するビデオデコーダを提供することにより、こう
したニーズの少なくとも別の局面を満たすものである。
なお、本発明のこの態様は、方法、システム、コンピュ
ータ可読媒体、又は機器など、いろいろな方法で実現す
ることができる。本発明のこの態様の実施例についてい
くつか以下に説明する。
を低減すると同時に一応満足できるビデオ画質を提供
し、それと同時に、圧縮領域で逆動き補償を実行する能
力を有するビデオデコーダを提供することにより、こう
したニーズの少なくとも別の局面を満たすものである。
なお、本発明のこの態様は、方法、システム、コンピュ
ータ可読媒体、又は機器など、いろいろな方法で実現す
ることができる。本発明のこの態様の実施例についてい
くつか以下に説明する。
【0016】一つの実施例において、逆メモリ補償を実
行するための方法を提供する。この方法は、ビデオビッ
トストリームを受け取ることから始まる。次に、変換行
列タイプが識別される。この変換行列タイプは、半画素
行列か完全画素行列かのどちらかである。この方法は、
変換行列タイプが半画素行列ならば、その半画素行列に
対応するビットストリームを復号化する因数分解技法を
適用することを含む。変換行列タイプが完全画素行列な
らば、その完全画素行列に対応するビットストリームを
復号化する整数近似技法を適用することを含む。
行するための方法を提供する。この方法は、ビデオビッ
トストリームを受け取ることから始まる。次に、変換行
列タイプが識別される。この変換行列タイプは、半画素
行列か完全画素行列かのどちらかである。この方法は、
変換行列タイプが半画素行列ならば、その半画素行列に
対応するビットストリームを復号化する因数分解技法を
適用することを含む。変換行列タイプが完全画素行列な
らば、その完全画素行列に対応するビットストリームを
復号化する整数近似技法を適用することを含む。
【0017】別の実施例において、ビデオデータを復号
化するための方法を提供する。この方法は、圧縮された
ビットストリーム内のビデオデータのフレームを受け取
ることから始まる。次に、そのフレームのブロックが変
換(例えば、離散コサイン変換(DCT))領域表現に圧
縮領域で復号化される。次に、その変換領域表現と関連
付けられるデータがハイブリッドデータ構造で保持され
る。次に、その圧縮領域で変換領域表現と関連付けられ
るデータに逆動き補償が実行される。逆動き補償の実行
には、ビデオデータのフレームの一部と関連付けられる
変換行列のタイプを決めることと、逆動き補償を向上さ
せるためにハイブリッド因数分解及び整数近似技法を適
用することが含まれる。
化するための方法を提供する。この方法は、圧縮された
ビットストリーム内のビデオデータのフレームを受け取
ることから始まる。次に、そのフレームのブロックが変
換(例えば、離散コサイン変換(DCT))領域表現に圧
縮領域で復号化される。次に、その変換領域表現と関連
付けられるデータがハイブリッドデータ構造で保持され
る。次に、その圧縮領域で変換領域表現と関連付けられ
るデータに逆動き補償が実行される。逆動き補償の実行
には、ビデオデータのフレームの一部と関連付けられる
変換行列のタイプを決めることと、逆動き補償を向上さ
せるためにハイブリッド因数分解及び整数近似技法を適
用することが含まれる。
【0018】また別の実施例において、圧縮領域で逆動
き補償を実行するためのプログラム命令を有するコンピ
ュータ可読メディアを提供する。このコンピュータ可読
メディアには変換行列を識別するためのプログラム命令
が入っている。変換行列が半画素行列か或いは完全画素
行列かを判定するためのプログラム命令が入っている。
半画素行列に対応するビットストリームのブロックを復
号化する因数分解技法を適用するためのプログラム命令
並びに完全画素行列に対応するビットストリームのブロ
ックを復号化する整数近似技法を適用するためのプログ
ラム命令を含んでいる。
き補償を実行するためのプログラム命令を有するコンピ
ュータ可読メディアを提供する。このコンピュータ可読
メディアには変換行列を識別するためのプログラム命令
が入っている。変換行列が半画素行列か或いは完全画素
行列かを判定するためのプログラム命令が入っている。
半画素行列に対応するビットストリームのブロックを復
号化する因数分解技法を適用するためのプログラム命令
並びに完全画素行列に対応するビットストリームのブロ
ックを復号化する整数近似技法を適用するためのプログ
ラム命令を含んでいる。
【0019】さらに別の実施例において、回路を提供す
る。この回路には、ビデオデータを復号化するように構
成された集積回路チップがある。この集積回路チップ
は、ビデオデータのフレームと関連付けられるデータの
ビットストリームを受け取るための回路構成を含んでい
る。集積回路チップには、データのビットストリームを
変換(例えば、DCT)領域表現に復号化するための回路
構成が搭載されている。変換行列のタイプを識別するた
めの回路構成並びにハイブリッド因数分解及び整数近似
技法によって逆動き補償を実行するための回路構成が集
積回路チップに搭載されている。
る。この回路には、ビデオデータを復号化するように構
成された集積回路チップがある。この集積回路チップ
は、ビデオデータのフレームと関連付けられるデータの
ビットストリームを受け取るための回路構成を含んでい
る。集積回路チップには、データのビットストリームを
変換(例えば、DCT)領域表現に復号化するための回路
構成が搭載されている。変換行列のタイプを識別するた
めの回路構成並びにハイブリッド因数分解及び整数近似
技法によって逆動き補償を実行するための回路構成が集
積回路チップに搭載されている。
【0020】別の実施例において、ビデオデコーダを提
供する。このビデオデコーダは、入ってくるビットスト
リームから係数値及び動きベクトルデータを抽出するよ
うに構成された可変長デコーダ(VLD)を含んでいる。V
LDと通信している反量子化ブロックを有する。この反量
子化ブロックは、係数値をスケーリングし直すように構
成されている。その反量子化ブロックと通信している下
流のブランチが設けられている。この下流ブランチは誤
差係数を空間領域に復号化するように構成されている。
反量子化ブロックと通信している上流のブランチを含ん
でいる。この上流ブランチは、内部変換(例えば、DC
T)領域変換を維持するように構成されている。上流ブ
ランチはさらに、現ブロックを再構築するために復号化
された誤差係数に加算されることが可能な空間領域出力
を生成するように構成されている。
供する。このビデオデコーダは、入ってくるビットスト
リームから係数値及び動きベクトルデータを抽出するよ
うに構成された可変長デコーダ(VLD)を含んでいる。V
LDと通信している反量子化ブロックを有する。この反量
子化ブロックは、係数値をスケーリングし直すように構
成されている。その反量子化ブロックと通信している下
流のブランチが設けられている。この下流ブランチは誤
差係数を空間領域に復号化するように構成されている。
反量子化ブロックと通信している上流のブランチを含ん
でいる。この上流ブランチは、内部変換(例えば、DC
T)領域変換を維持するように構成されている。上流ブ
ランチはさらに、現ブロックを再構築するために復号化
された誤差係数に加算されることが可能な空間領域出力
を生成するように構成されている。
【0021】本発明のその他の態様並びに効果は、発明
の原理を例を挙げて示した添付の図面と共に、以下に述
べる詳細な説明から明白になる。
の原理を例を挙げて示した添付の図面と共に、以下に述
べる詳細な説明から明白になる。
【0022】
【発明の実施の形態】本発明を、圧縮領域ビデオ復号化
に要するメモリ容量を最小限にするためのシステム、装
置、及び方法として説明する。しかしながら、当業者な
らば、以下の説明に鑑みて、以下に説明する詳細を部分
的に又は全く知らなくても本発明を実施できることが分
かる。また、本発明を不要に不明瞭なものにしないため
に、既によく知られているプロセスオペレーションにつ
いては詳細に説明しない。図1については、「従来の技
術」の項で説明した。本明細書で使用している「約」と
いう言葉は、基準値の+/−10%のことである。
に要するメモリ容量を最小限にするためのシステム、装
置、及び方法として説明する。しかしながら、当業者な
らば、以下の説明に鑑みて、以下に説明する詳細を部分
的に又は全く知らなくても本発明を実施できることが分
かる。また、本発明を不要に不明瞭なものにしないため
に、既によく知られているプロセスオペレーションにつ
いては詳細に説明しない。図1については、「従来の技
術」の項で説明した。本明細書で使用している「約」と
いう言葉は、基準値の+/−10%のことである。
【0023】ここで説明する実施例は、圧縮領域でビデ
オデータを復号化する際に使用されるメモリの低減を可
能にするデータ構造を提供する。1実施例では、周波数
領域、つまり、圧縮領域で、現フレームが保持され、逆
動き補償が実行されるように、ビデオ復号化パイプライ
ンが並べ替えられている。ハイブリッドデータ構造は、
計算コストやデータの有意な損失なしに、圧縮領域での
データの操作を可能にする。1実施例において、ハイブ
リッドデータ構造は符号化されたブロックの中に非零離
散コサイン変換(DCT)係数はほんのわずかしかないと
いう事実を利用している。従って、フレーム全体の非零
DCT係数だけが保持されるので、メモリ所要量を低減す
ることができる。以下により詳細に説明するように、ハ
イブリッドデータ構造は固定サイズのアレイと可変サイ
ズのオーバーフローベクトルとを含んでいる。可変サイ
ズオーバーフローベクトルは、固定サイズアレイの容量
を超える符号化されたブロックの非零DCT係数を保持す
る。
オデータを復号化する際に使用されるメモリの低減を可
能にするデータ構造を提供する。1実施例では、周波数
領域、つまり、圧縮領域で、現フレームが保持され、逆
動き補償が実行されるように、ビデオ復号化パイプライ
ンが並べ替えられている。ハイブリッドデータ構造は、
計算コストやデータの有意な損失なしに、圧縮領域での
データの操作を可能にする。1実施例において、ハイブ
リッドデータ構造は符号化されたブロックの中に非零離
散コサイン変換(DCT)係数はほんのわずかしかないと
いう事実を利用している。従って、フレーム全体の非零
DCT係数だけが保持されるので、メモリ所要量を低減す
ることができる。以下により詳細に説明するように、ハ
イブリッドデータ構造は固定サイズのアレイと可変サイ
ズのオーバーフローベクトルとを含んでいる。可変サイ
ズオーバーフローベクトルは、固定サイズアレイの容量
を超える符号化されたブロックの非零DCT係数を保持す
る。
【0024】図2は、本発明の1実施例による、逆動き
補償が実行されるように配置構成されたビデオデコーダ
の概略図である。ここで、ビデオデコーダ120によっ
てビットストリーム122が受け取られる。最初の2ス
テージ、つまり、可変長デコーダ(VLD)ステージ12
4及び反量子化(DQ)ステージ126は圧縮されたビッ
トストリームをDCT領域表現に復号化する。DCT領域表現
は、動き補償(MC)ステージ134で使用するために、
フレームバッファとも呼ばれるメモリ(MEM)130に
保持される。MC128及びMEM134を含んだ動き補償
フィードバックループの後に、ランレングスデコーダ
(RLD)ステージ132及び逆DCT(IDCT)ステージ13
4が実行される。従って、復号化されたブロックの内部
表現は圧縮領域のままである。符号化されたブロック内
に非零DCT係数はほんの小数しかないので、この特徴
を、フレーム内の各ブロックの非零DCT係数しか保持し
ないMEM130のデータ構造を開発することによって、
利用することができる。以下により詳細に明らかにして
いるように、ハイブリッドデータ構造により可能になる
メモリ圧縮は、ビデオ画質の損失なしにメモリ使用を5
0%減らすことができる。人間の視覚系は、高位のDCT
係数よりも低位DCT係数に対して敏感だから、以下に説
明するように、高位DCTをフィルタ処理して取り除くと
共にメモリ使用対変動電力又はピークの信号対雑音比の
要件をトレードオフするしきい値化スキームを開発し
た。
補償が実行されるように配置構成されたビデオデコーダ
の概略図である。ここで、ビデオデコーダ120によっ
てビットストリーム122が受け取られる。最初の2ス
テージ、つまり、可変長デコーダ(VLD)ステージ12
4及び反量子化(DQ)ステージ126は圧縮されたビッ
トストリームをDCT領域表現に復号化する。DCT領域表現
は、動き補償(MC)ステージ134で使用するために、
フレームバッファとも呼ばれるメモリ(MEM)130に
保持される。MC128及びMEM134を含んだ動き補償
フィードバックループの後に、ランレングスデコーダ
(RLD)ステージ132及び逆DCT(IDCT)ステージ13
4が実行される。従って、復号化されたブロックの内部
表現は圧縮領域のままである。符号化されたブロック内
に非零DCT係数はほんの小数しかないので、この特徴
を、フレーム内の各ブロックの非零DCT係数しか保持し
ないMEM130のデータ構造を開発することによって、
利用することができる。以下により詳細に明らかにして
いるように、ハイブリッドデータ構造により可能になる
メモリ圧縮は、ビデオ画質の損失なしにメモリ使用を5
0%減らすことができる。人間の視覚系は、高位のDCT
係数よりも低位DCT係数に対して敏感だから、以下に説
明するように、高位DCTをフィルタ処理して取り除くと
共にメモリ使用対変動電力又はピークの信号対雑音比の
要件をトレードオフするしきい値化スキームを開発し
た。
【0025】そこで、高速でしかもメモリ効率のいい復
号化ができるように最適化される完全圧縮領域ビデオ復
号化について説明する。1実施例で、本書で言及してい
るテストのために、パブリックドメインH.263に準拠し
ているデコーダであるTELENORのビデオデコーダを使用
した。なお、以下に説明する実施例の中にはH.263ビッ
トストリームと呼んでいるものがあるが、実施例はH.26
3ビットストリームに対する操作だけに限らない。すな
わち、Motion Picture Expert Group(MPEG)1/2/4、H.
261など、ビデオデータを有するどんなDCTベースの圧縮
ビットストリームでも採用することができる。圧縮領域
での効率的な処理を可能にする離散コサイン変換(DC
T)領域表現のための高速逆動き補償アルゴリズムは数
多い。なお、符号化されたブロック内に非零DCT係数を
保持するメモリ圧縮法は、圧縮領域での処理だから、メ
モリ所要量を低減することが可能になる。さらに、スピ
ード及びメモリの最適化における様々な性能のトレード
オフを実証するために、本書で説明している逆動き補償
技術及びメモリ圧縮を用いた圧縮領域処理を採用するビ
デオデコーダの性能を3つの次元で、つまり、計算量、
メモリ効率、PSNRの観点から評価する。
号化ができるように最適化される完全圧縮領域ビデオ復
号化について説明する。1実施例で、本書で言及してい
るテストのために、パブリックドメインH.263に準拠し
ているデコーダであるTELENORのビデオデコーダを使用
した。なお、以下に説明する実施例の中にはH.263ビッ
トストリームと呼んでいるものがあるが、実施例はH.26
3ビットストリームに対する操作だけに限らない。すな
わち、Motion Picture Expert Group(MPEG)1/2/4、H.
261など、ビデオデータを有するどんなDCTベースの圧縮
ビットストリームでも採用することができる。圧縮領域
での効率的な処理を可能にする離散コサイン変換(DC
T)領域表現のための高速逆動き補償アルゴリズムは数
多い。なお、符号化されたブロック内に非零DCT係数を
保持するメモリ圧縮法は、圧縮領域での処理だから、メ
モリ所要量を低減することが可能になる。さらに、スピ
ード及びメモリの最適化における様々な性能のトレード
オフを実証するために、本書で説明している逆動き補償
技術及びメモリ圧縮を用いた圧縮領域処理を採用するビ
デオデコーダの性能を3つの次元で、つまり、計算量、
メモリ効率、PSNRの観点から評価する。
【0026】
【数1】
【0027】
【数2】
【0028】
【数3】
【0029】
【数4】
【数5】
【0030】低ビットレートビデオ、つまり、毎秒約6
4キロビット未満のビットレートを有するビデオデータ
は、ビデオ会議のアプリケーションに使用されると共
に、セルラー電話、パーソナルディジタルアシスタント
(PDA)や、その他のハンドヘルド機器や電池で動く機
器のワイヤレスビデオといったアプリケーション向けで
ある。H.263規格は、低ビットレートのビデオ復号化用
のビットストリームシンタックス及びアルゴリズムを指
定している模式的規格である。アルゴリズムは、変換符
号化、動き推定/補償、係数量子化、ランレングス符号
化を含む。ベースライン指定とは別に、この規格のバー
ジョン2は、符号化性能を向上させると共にエラー差回
復力を提供する16の交渉可能なオプションもサポート
している。
4キロビット未満のビットレートを有するビデオデータ
は、ビデオ会議のアプリケーションに使用されると共
に、セルラー電話、パーソナルディジタルアシスタント
(PDA)や、その他のハンドヘルド機器や電池で動く機
器のワイヤレスビデオといったアプリケーション向けで
ある。H.263規格は、低ビットレートのビデオ復号化用
のビットストリームシンタックス及びアルゴリズムを指
定している模式的規格である。アルゴリズムは、変換符
号化、動き推定/補償、係数量子化、ランレングス符号
化を含む。ベースライン指定とは別に、この規格のバー
ジョン2は、符号化性能を向上させると共にエラー差回
復力を提供する16の交渉可能なオプションもサポート
している。
【0031】低ビットレートで符号化されたビデオは、
目に見える歪みが発生する可能性がある。特に、アクシ
ョンの多い分類になっているビデオ、つまり、活動的な
動きのブロックはそうである。先に触れたように、本書
で説明している実施例では、H.263規格のことを指して
いるが、適していればどんなビデオコーデック規格でも
実施例と共に使用することができる。参考までに、H.26
3規格の機能特徴のいくつかを以下に説明するが、これ
により本発明をH.263規格と共に使用することに限定し
ようとしているわけではない。H.263規格の一つの特徴
は、この規格の中に画像群(GOP)及び高位レイヤーが
存在していない点である。ベースライン符号化された列
が、単一イントラフレーム(Iフレーム)とそれに続く
長いインターフレーム(Pフレーム)列とだけからなる
場合、時間的冗長が連続フレーム間で取り除かれるの
で、長いPフレーム列がより高い圧縮比を実現する。し
かしながら、動き推定/動き補償(ME/MC)は時間依存
性を生じさせるので、損失性符号化プロセス時に発生し
た誤差が復号化プロセス時に集積する。Iフレームが足
りないと、デコーダはこの誤差集積を崩すことができな
い。H.263規格は強制更新メカニズムを有するので、符
号化プロセス時に少なくとも132回に一回エンコーダ
がマクロブロックをイントラブロックとして符号化しな
ければならない。図4は、強制更新メカニズムの効果を
説明している図である。図4に示すように、ビデオのPS
NRは無作為に変動するが、列の後半にあるフレームでは
どんな方向にもドリフトしない。
目に見える歪みが発生する可能性がある。特に、アクシ
ョンの多い分類になっているビデオ、つまり、活動的な
動きのブロックはそうである。先に触れたように、本書
で説明している実施例では、H.263規格のことを指して
いるが、適していればどんなビデオコーデック規格でも
実施例と共に使用することができる。参考までに、H.26
3規格の機能特徴のいくつかを以下に説明するが、これ
により本発明をH.263規格と共に使用することに限定し
ようとしているわけではない。H.263規格の一つの特徴
は、この規格の中に画像群(GOP)及び高位レイヤーが
存在していない点である。ベースライン符号化された列
が、単一イントラフレーム(Iフレーム)とそれに続く
長いインターフレーム(Pフレーム)列とだけからなる
場合、時間的冗長が連続フレーム間で取り除かれるの
で、長いPフレーム列がより高い圧縮比を実現する。し
かしながら、動き推定/動き補償(ME/MC)は時間依存
性を生じさせるので、損失性符号化プロセス時に発生し
た誤差が復号化プロセス時に集積する。Iフレームが足
りないと、デコーダはこの誤差集積を崩すことができな
い。H.263規格は強制更新メカニズムを有するので、符
号化プロセス時に少なくとも132回に一回エンコーダ
がマクロブロックをイントラブロックとして符号化しな
ければならない。図4は、強制更新メカニズムの効果を
説明している図である。図4に示すように、ビデオのPS
NRは無作為に変動するが、列の後半にあるフレームでは
どんな方向にもドリフトしない。
【0032】図5は、H.263規格で半画素の値の判定を
説明している概略図である。よく知られているように、
H.263規格は動き補償に半画素補間を採用している。こ
の規格では、半画素補間が0.5分解能(つまり、<7.
5, 4.5>)を有する動きベクトルによって示される。エ
ンコーダは、水平方向だけ、垂直方向だけ、或いは水平
垂直両方向で、補間を指定することができる。図5に示
されているように、半画素値は、半画素の位置を取り巻
く整数画素位置の双線形補間によって見出される。画素
位置A 150-1、画素位置B 150-2、画素位置C 150-3、画
素位置D 150-4は、整数画素位置を表わしているのに対
し、画素位置e 152-1、画素位置f 152-2、画素位置g 15
2-3は、半画素位置を表わしている。水平方向の補間をe
=(A+B+1)>>1と表わし、垂直方向の補間をf=(A+C+1)>>1
と表わすことができる。水平垂直両方向の補間をg=(A+B
+C+D+2)>>2と表わすことができる。
説明している概略図である。よく知られているように、
H.263規格は動き補償に半画素補間を採用している。こ
の規格では、半画素補間が0.5分解能(つまり、<7.
5, 4.5>)を有する動きベクトルによって示される。エ
ンコーダは、水平方向だけ、垂直方向だけ、或いは水平
垂直両方向で、補間を指定することができる。図5に示
されているように、半画素値は、半画素の位置を取り巻
く整数画素位置の双線形補間によって見出される。画素
位置A 150-1、画素位置B 150-2、画素位置C 150-3、画
素位置D 150-4は、整数画素位置を表わしているのに対
し、画素位置e 152-1、画素位置f 152-2、画素位置g 15
2-3は、半画素位置を表わしている。水平方向の補間をe
=(A+B+1)>>1と表わし、垂直方向の補間をf=(A+C+1)>>1
と表わすことができる。水平垂直両方向の補間をg=(A+B
+C+D+2)>>2と表わすことができる。
【0033】図6A及び6Bはそれぞれ、ベースライン空
間ビデオデコーダ及び圧縮領域ビデオデコーダの概略図
である。図6Bのブロック図は、図6Aの空間領域ビデオ
デコーダの機能ブロックを部分的に並べ替えたものであ
る。特に、RLD132とIDCT134がMC28フィードバ
ックループの後に移動している。この配列により、圧縮
領域でビデオの内部表現を保つことができる。図6Bの
配列では、圧縮領域後処理モジュールをMC128フィー
ドバックループのすぐ後に挿入可能である。なお、複合
化(compositing)、スケーリング、非ブロック化な
ど、特定のビデオ操作は、空間領域での操作と比べ、圧
縮領域のほうが高速である。しかしながら、ビデオコー
デックの観点から言えば、空間的エンコーダは圧縮領域
デコーダに完全にマッチしない。図6Bに表示されてい
るように、圧縮領域ビデオデコーダは、復号化パイプラ
イン沿いのいくつかの点で図6Aの空間領域ビデオデコ
ーダとは異なる。単なるブロックの並べ替えだけという
のではなく、相違点は、クリッピングや丸めなど非線形
操作を表わしている。これらの非線形性を有する点が、
2つの領域間でPSNR測定値が異なるビデオを生成する。
間ビデオデコーダ及び圧縮領域ビデオデコーダの概略図
である。図6Bのブロック図は、図6Aの空間領域ビデオ
デコーダの機能ブロックを部分的に並べ替えたものであ
る。特に、RLD132とIDCT134がMC28フィードバ
ックループの後に移動している。この配列により、圧縮
領域でビデオの内部表現を保つことができる。図6Bの
配列では、圧縮領域後処理モジュールをMC128フィー
ドバックループのすぐ後に挿入可能である。なお、複合
化(compositing)、スケーリング、非ブロック化な
ど、特定のビデオ操作は、空間領域での操作と比べ、圧
縮領域のほうが高速である。しかしながら、ビデオコー
デックの観点から言えば、空間的エンコーダは圧縮領域
デコーダに完全にマッチしない。図6Bに表示されてい
るように、圧縮領域ビデオデコーダは、復号化パイプラ
イン沿いのいくつかの点で図6Aの空間領域ビデオデコ
ーダとは異なる。単なるブロックの並べ替えだけという
のではなく、相違点は、クリッピングや丸めなど非線形
操作を表わしている。これらの非線形性を有する点が、
2つの領域間でPSNR測定値が異なるビデオを生成する。
【0034】
【0035】当業者ならば、MEM130は、動き補償の
前のフレームを保持するフレームバッファであることが
分かる。空間領域デコーダでは、フレームバッファが、
(Y,Cr, Cb)値を保持するために、入ってくるフレーム
サイズに十分対応できるメモリを割り当てる。例えば、
4:2:0でサンプリングされたCIFビデオには約20
0キロバイトのメモリがなければならない。MEM130
はビデオデコーダで唯一の最大メモリ使用源だから、こ
こで定義しているハイブリッドデータ構造及び逆動き補
償により、圧縮領域復号化パイプラインのメモリ使用の
軽減が可能になる。1実施例では、復号化されたビデオ
で有意な画質の損失なく、2倍から3倍のメモリ圧縮を
達成している。
前のフレームを保持するフレームバッファであることが
分かる。空間領域デコーダでは、フレームバッファが、
(Y,Cr, Cb)値を保持するために、入ってくるフレーム
サイズに十分対応できるメモリを割り当てる。例えば、
4:2:0でサンプリングされたCIFビデオには約20
0キロバイトのメモリがなければならない。MEM130
はビデオデコーダで唯一の最大メモリ使用源だから、こ
こで定義しているハイブリッドデータ構造及び逆動き補
償により、圧縮領域復号化パイプラインのメモリ使用の
軽減が可能になる。1実施例では、復号化されたビデオ
で有意な画質の損失なく、2倍から3倍のメモリ圧縮を
達成している。
【0036】図7は、本発明の1実施例による、ビデオ
符号化及び復号化プロセス時のブロック変換を説明して
いるブロック図である。点線170より上の変換のシー
ケンスは、動き補償/動き推定後に、Iフレームの中の
ブロック又はPフレームの中のブロックに対してビデオ
エンコーダが用いる空間圧縮法を説明している。画素ブ
ロック172は完全8x8行列である。この時点で、空
間領域での圧縮又は打ち切りはどんなものでも、再構築
されたブロックの目に見える画質に直接影響する。しか
しながら、DCT変換後、変換された行列174はコンパ
クトで、低周波数で項が大きくなっている。量子化のス
テップが、ブロック176の中の高周波数の小さめの項
を零にすることにより、ブロックをさらにコンパクトに
する。ブロック176で強調されているジグザグ走査
が、低周波数から高周波数にDCT係数に順番を付ける。
ランレングス符号化は、2値をもつ要素(element)、
例えば、ラン及びレベルのコンパクトなリストの中の、
零係数を無視し、非零DCT係数だけをランレングス表現
178で表わす。従って、非零DCT係数のランレングス
表現を保持及びアクセスする効率的なデータ構造及び方
法を開発することにより、DCT領域でメモリ圧縮を達成
することができる。
符号化及び復号化プロセス時のブロック変換を説明して
いるブロック図である。点線170より上の変換のシー
ケンスは、動き補償/動き推定後に、Iフレームの中の
ブロック又はPフレームの中のブロックに対してビデオ
エンコーダが用いる空間圧縮法を説明している。画素ブ
ロック172は完全8x8行列である。この時点で、空
間領域での圧縮又は打ち切りはどんなものでも、再構築
されたブロックの目に見える画質に直接影響する。しか
しながら、DCT変換後、変換された行列174はコンパ
クトで、低周波数で項が大きくなっている。量子化のス
テップが、ブロック176の中の高周波数の小さめの項
を零にすることにより、ブロックをさらにコンパクトに
する。ブロック176で強調されているジグザグ走査
が、低周波数から高周波数にDCT係数に順番を付ける。
ランレングス符号化は、2値をもつ要素(element)、
例えば、ラン及びレベルのコンパクトなリストの中の、
零係数を無視し、非零DCT係数だけをランレングス表現
178で表わす。従って、非零DCT係数のランレングス
表現を保持及びアクセスする効率的なデータ構造及び方
法を開発することにより、DCT領域でメモリ圧縮を達成
することができる。
【0037】1実施例において、半圧縮(SC)表現が、
一つのそうしたメモリ効率のいいランレングス表現であ
る。非零DCT係数のランレングス表現は、図7のランレ
ングス表現178及び180に類似している。しかしな
がら、2つの変形がある。各2値をもつ要素(ラン、レ
ベル)をその形の複合16ビット値によって記述する。
一つのそうしたメモリ効率のいいランレングス表現であ
る。非零DCT係数のランレングス表現は、図7のランレ
ングス表現178及び180に類似している。しかしな
がら、2つの変形がある。各2値をもつ要素(ラン、レ
ベル)をその形の複合16ビット値によって記述する。
【0038】
RL = binary rrrrllllllllllll' (9)
最下位の12ビット(llllllllllll')は、ブロック1
84から反量子化されたDCT係数の値を定義している。
ブロック184は、量子化されたブロック182から導
出されたものである。なお、ブロック184は、DCT領
域表現の一例である。当業者ならば、DCT係数の値は2
048から2047の範囲であることが明らかである。
図7のブロック186は、ブロック184にIDCT操作を
行なった後のブロック172の再構築ブロックである。
最上位の4ビット(rrrr')はランの値を定義してい
る。ランは、8x8ブロック内のジグザグ走査に基づ
く、終わりの非零DCT係数の位置に対する非零DCT係数の
相対位置を表わしている。非零係数のランが15を超え
る可能性があるので、ランをより小さな単位に分かるた
めにエスケープシーケンスが定義される。15の零係数
の後に零振幅(zero amplitude)の係数が続くランを表
わすために、エスケープシーケンスRL='F0'が定義され
ている。
84から反量子化されたDCT係数の値を定義している。
ブロック184は、量子化されたブロック182から導
出されたものである。なお、ブロック184は、DCT領
域表現の一例である。当業者ならば、DCT係数の値は2
048から2047の範囲であることが明らかである。
図7のブロック186は、ブロック184にIDCT操作を
行なった後のブロック172の再構築ブロックである。
最上位の4ビット(rrrr')はランの値を定義してい
る。ランは、8x8ブロック内のジグザグ走査に基づ
く、終わりの非零DCT係数の位置に対する非零DCT係数の
相対位置を表わしている。非零係数のランが15を超え
る可能性があるので、ランをより小さな単位に分かるた
めにエスケープシーケンスが定義される。15の零係数
の後に零振幅(zero amplitude)の係数が続くランを表
わすために、エスケープシーケンスRL='F0'が定義され
ている。
【0039】メモリ所要量を減らすために、SC表現を保
持及びアクセスするためのデータ構造を開発しなければ
ならない。次のデータ構造、つまり、アレイ、連結リス
ト、ベクトル、ハイブリッドを考察した。これらの構造
を開発する際、メモリ圧縮の必要性と、計算量を低く維
持する必要性とのバランスを考慮に入れた。以下に、表
1を参照してさらに説明する。SC表現は狙ったメモリ圧
縮を実現するが、特定のデータ構造によっては3つの分
野でデコーダの計算量が大きく増大する。第1に、2バ
イト表現を採用することにより、(ラン、レベル)の値
を直ちに使用することができなくなる。これらの値にア
クセス及び変更を加えるには毎回、ビットをパック及び
アンパックするための関数が必要である。第2に、コン
パクトランレングス表現により動き補償が複雑になる。
第3に、予測に予測誤差を加算するには分類及び併合
(sort and merge)操作が必要である。
持及びアクセスするためのデータ構造を開発しなければ
ならない。次のデータ構造、つまり、アレイ、連結リス
ト、ベクトル、ハイブリッドを考察した。これらの構造
を開発する際、メモリ圧縮の必要性と、計算量を低く維
持する必要性とのバランスを考慮に入れた。以下に、表
1を参照してさらに説明する。SC表現は狙ったメモリ圧
縮を実現するが、特定のデータ構造によっては3つの分
野でデコーダの計算量が大きく増大する。第1に、2バ
イト表現を採用することにより、(ラン、レベル)の値
を直ちに使用することができなくなる。これらの値にア
クセス及び変更を加えるには毎回、ビットをパック及び
アンパックするための関数が必要である。第2に、コン
パクトランレングス表現により動き補償が複雑になる。
第3に、予測に予測誤差を加算するには分類及び併合
(sort and merge)操作が必要である。
【0040】図8は、ランレングス表現の各8x8ブロ
ックの開始位置を見出すために、別のインデックスを使
用することを説明している概略図である。フレームの中
の全ての8x8ブロック192−1から192−4のラ
ンレングス表現を保持するためにベクトルとも呼ばれる
単一リスト190を用いる場合、動き補償時に或る特定
のDCTブロックにアクセスするにはその開始位置を調べ
るために別のインデックスが必要になる。それは、動き
補償を複雑にしてしまう。
ックの開始位置を見出すために、別のインデックスを使
用することを説明している概略図である。フレームの中
の全ての8x8ブロック192−1から192−4のラ
ンレングス表現を保持するためにベクトルとも呼ばれる
単一リスト190を用いる場合、動き補償時に或る特定
のDCTブロックにアクセスするにはその開始位置を調べ
るために別のインデックスが必要になる。それは、動き
補償を複雑にしてしまう。
【0041】図9A及び9Bは、アレイベースのデータ構
造及びリストデータ構造それぞれに関して、予測に予測
誤差を加算するのに必要な分類及び併合操作を説明して
いる。図9Aで、アレイベースのデータ構造は、対応す
るアレイインデックスにおける値の加算しか必要としな
い。しかしながら、アレイベースのデータ構造にはメモ
リ圧縮効果がない。図9Bで、リスト(もしくは、ベク
トル)データ構造にはさらに分類及び併合操作が必要で
ある。すなわち、併合のアルゴリズムには挿入及び削除
の機能がなければならない。それは、ベクトルなどデー
タ構造にとって計算量の観点から非常に高価になる。よ
り具体的に言えば、インデックスが等しければ、DCT係
数を加算又は除算することができる。例えば、(0,20) +
(0,620)=(0,640)。間違ったインデックスが予測で先行
している場合には、DCT係数が挿入される。例えば、(0,
-3)を挿入。DCT値の加算により0になる場合には、DCT
係数は削除される。例えば、(1,13) + (4,-13)=(1,0)。
造及びリストデータ構造それぞれに関して、予測に予測
誤差を加算するのに必要な分類及び併合操作を説明して
いる。図9Aで、アレイベースのデータ構造は、対応す
るアレイインデックスにおける値の加算しか必要としな
い。しかしながら、アレイベースのデータ構造にはメモ
リ圧縮効果がない。図9Bで、リスト(もしくは、ベク
トル)データ構造にはさらに分類及び併合操作が必要で
ある。すなわち、併合のアルゴリズムには挿入及び削除
の機能がなければならない。それは、ベクトルなどデー
タ構造にとって計算量の観点から非常に高価になる。よ
り具体的に言えば、インデックスが等しければ、DCT係
数を加算又は除算することができる。例えば、(0,20) +
(0,620)=(0,640)。間違ったインデックスが予測で先行
している場合には、DCT係数が挿入される。例えば、(0,
-3)を挿入。DCT値の加算により0になる場合には、DCT
係数は削除される。例えば、(1,13) + (4,-13)=(1,0)。
【0042】表1は、いろいろなデータ構造のメモリ圧
縮比及び計算費用を比較したものである。アレイベース
のデータ構造は、予測の更新に必要な64の加算以外に
追加の計算費用は発生しないが、DCT係数のアレイは、
各DCT係数が保持のために1バイトではなく2バイトを
必要とするので、画素のアレイと比べメモリ圧縮を実現
することはできない。連結リスト又は半圧縮(SC)表現
のベクトルは、画素のアレイと比べ、上限で2.5倍の
メモリ圧縮が可能である。しかしながら、ベクトルの挿
入/削除費用は高価だから、いずれの解法とも最適とは
いえない。特に、ベクトルの真ん中の挿入及び削除は高
価である。また、リストの要素毎に内部ポインタが作成
されるので連結リストのメモリオーバーヘッドは高価で
ある。
縮比及び計算費用を比較したものである。アレイベース
のデータ構造は、予測の更新に必要な64の加算以外に
追加の計算費用は発生しないが、DCT係数のアレイは、
各DCT係数が保持のために1バイトではなく2バイトを
必要とするので、画素のアレイと比べメモリ圧縮を実現
することはできない。連結リスト又は半圧縮(SC)表現
のベクトルは、画素のアレイと比べ、上限で2.5倍の
メモリ圧縮が可能である。しかしながら、ベクトルの挿
入/削除費用は高価だから、いずれの解法とも最適とは
いえない。特に、ベクトルの真ん中の挿入及び削除は高
価である。また、リストの要素毎に内部ポインタが作成
されるので連結リストのメモリオーバーヘッドは高価で
ある。
【表1】
【0043】SC表現のハイブリッドデータ構造により、
表1で競合している利害関係を最適なバランスをするこ
とができる。図9Aのアレイ構造の低計算費用及び図9B
のベクトル構造の高圧縮比をうまく利用するために、ハ
イブリッドデータ構造が開発された。ハイブリッドデー
タ構造は、ブロック毎に固定数のDCT係数を保持する固
定サイズアレイと、これらのブロックで固定サイズアレ
イ割り当てを超えたDCT係数を保持する可変サイズのオ
ーバーフローベクトルとで構成されている。なお、固定
サイズアレイは、ブロック毎に適した任意数のDCT係数
を保持するように構成することができる。ここで、DCT
係数の数は64未満である。言うまでもなく、固定サイ
ズアレイが大きくなると、それに比例してメモリ圧縮量
が減る。1実施例で、固定サイズアレイは、ブロックあ
たり8つのDCT係数を保持するように構成されている。
表1で競合している利害関係を最適なバランスをするこ
とができる。図9Aのアレイ構造の低計算費用及び図9B
のベクトル構造の高圧縮比をうまく利用するために、ハ
イブリッドデータ構造が開発された。ハイブリッドデー
タ構造は、ブロック毎に固定数のDCT係数を保持する固
定サイズアレイと、これらのブロックで固定サイズアレ
イ割り当てを超えたDCT係数を保持する可変サイズのオ
ーバーフローベクトルとで構成されている。なお、固定
サイズアレイは、ブロック毎に適した任意数のDCT係数
を保持するように構成することができる。ここで、DCT
係数の数は64未満である。言うまでもなく、固定サイ
ズアレイが大きくなると、それに比例してメモリ圧縮量
が減る。1実施例で、固定サイズアレイは、ブロックあ
たり8つのDCT係数を保持するように構成されている。
【0044】図10は、本発明の1実施例による、メモ
リ圧縮及び計算効率性を可能にするアレイ構造及びベク
トル構造を含むハイブリッドデータ構造の概略図であ
る。DCTブロック200−1、200−2、200−n
には、零DCT係数及び非零DCT係数が入っている。なお、
DCTブロック200−1から200−nは、図2におい
て先に説明したようにDCT領域表現を表わす。さらに、
ブロック200−1から200−nは、ビデオデータの
フレームのブロック、例えば、図7のブロック184、
と関連付けられる。ブロック200−1から200−n
の各ブロックの非零係数が識別され、固定サイズアレイ
202データ構造の中に挿入される。固定サイズアレイ
202には、固定サイズブロック204−1から204
−nがある。1実施例で、各ブロック204−1から2
04−nは、8x8データ構造の中に8つのDCT係数を
保持できる大きさになっている。なお、本発明は、8つ
のDCT係数を保持する構成になったブロックに限定され
るものではなく、適した任意のサイズを採用することが
できる。先に述べたように、ブロックの容量が増大する
と、それに比例してメモリ圧縮量は低下する。
リ圧縮及び計算効率性を可能にするアレイ構造及びベク
トル構造を含むハイブリッドデータ構造の概略図であ
る。DCTブロック200−1、200−2、200−n
には、零DCT係数及び非零DCT係数が入っている。なお、
DCTブロック200−1から200−nは、図2におい
て先に説明したようにDCT領域表現を表わす。さらに、
ブロック200−1から200−nは、ビデオデータの
フレームのブロック、例えば、図7のブロック184、
と関連付けられる。ブロック200−1から200−n
の各ブロックの非零係数が識別され、固定サイズアレイ
202データ構造の中に挿入される。固定サイズアレイ
202には、固定サイズブロック204−1から204
−nがある。1実施例で、各ブロック204−1から2
04−nは、8x8データ構造の中に8つのDCT係数を
保持できる大きさになっている。なお、本発明は、8つ
のDCT係数を保持する構成になったブロックに限定され
るものではなく、適した任意のサイズを採用することが
できる。先に述べたように、ブロックの容量が増大する
と、それに比例してメモリ圧縮量は低下する。
【0045】引き続き、図10において、DCTブロック
200−1から200−nのどれかに8個を超える非零
係数が入っている場合、それぞれ固定サイズブロック2
04−1から204−nの容量を超える非零DCT係数は
オーバーフローベクトル206の中に入れられる。オー
バーフローベクトル206は、可変サイズオーバーフロ
ーベクトルとして構成されている。つまり、オーバーフ
ローベクトルは動的である。例えば、ブロック200−
1は、9つの非零DCT係数A1〜A9を含んでいる。ここ
で、DCT係数A1〜A8は固定サイズブロック204−1
にコピーされるが、DCT係数A9はオーバーフローベクト
ル206にコピーされる。ブロック200−2は、10
個の非零DCT係数B1〜B10を含んでいる。ここで、DCT
係数B1〜B8は固定サイズブロック204−2にコピー
されるが、DCT係数B9及びB10は、フレームのブロッ
ク毎に、オーバーフローベクトル206、その他に、コ
ピーされる。インデックス表208には、オーバーフロ
ーベクトル206のエントリに関して、対応する固定サ
イズブロック204−1から204−nを識別するエン
トリが入っている。各エントリは1バイトだから、イン
デックス表のサイズは無視することができる。従って、
DCTブロック200−1から200−nに対応するデー
タのフレームでは、イメージ210を生み出すために、
固定サイズアレイ202及びオーバーフローベクトル2
06からのデータが組み合わされる。相当なメモリの節
約ができる。すなわち、DCTブロック200−1から2
00−nは、ほとんどの場合、64個の零及び非零係数
から、固定サイズブロック204−1から204−nに
保持された8個以下の非零係数まで減少する。言うまで
もなく、多少の非零係数が提供される可能性はあり、非
零係数が8を超えるとオーバーフローベクトル206に
保持される。
200−1から200−nのどれかに8個を超える非零
係数が入っている場合、それぞれ固定サイズブロック2
04−1から204−nの容量を超える非零DCT係数は
オーバーフローベクトル206の中に入れられる。オー
バーフローベクトル206は、可変サイズオーバーフロ
ーベクトルとして構成されている。つまり、オーバーフ
ローベクトルは動的である。例えば、ブロック200−
1は、9つの非零DCT係数A1〜A9を含んでいる。ここ
で、DCT係数A1〜A8は固定サイズブロック204−1
にコピーされるが、DCT係数A9はオーバーフローベクト
ル206にコピーされる。ブロック200−2は、10
個の非零DCT係数B1〜B10を含んでいる。ここで、DCT
係数B1〜B8は固定サイズブロック204−2にコピー
されるが、DCT係数B9及びB10は、フレームのブロッ
ク毎に、オーバーフローベクトル206、その他に、コ
ピーされる。インデックス表208には、オーバーフロ
ーベクトル206のエントリに関して、対応する固定サ
イズブロック204−1から204−nを識別するエン
トリが入っている。各エントリは1バイトだから、イン
デックス表のサイズは無視することができる。従って、
DCTブロック200−1から200−nに対応するデー
タのフレームでは、イメージ210を生み出すために、
固定サイズアレイ202及びオーバーフローベクトル2
06からのデータが組み合わされる。相当なメモリの節
約ができる。すなわち、DCTブロック200−1から2
00−nは、ほとんどの場合、64個の零及び非零係数
から、固定サイズブロック204−1から204−nに
保持された8個以下の非零係数まで減少する。言うまで
もなく、多少の非零係数が提供される可能性はあり、非
零係数が8を超えるとオーバーフローベクトル206に
保持される。
【0046】図11A〜11Cは、本発明の1実施例によ
る、ハイブリッドデータ構造の固定サイズアレイの固定
サイズブロックの容量及びオーバーフローベクトルを判
定する際に評価される因子を説明しているグラフであ
る。図11Aで、2つの典型的なCIFシーケンスの輝度ブ
ロックあたりの非零DCT係数の平均数が、線220及び
222で描かれている。ブロックあたりの非零係数の数
は3から7の範囲である。すなわち、64個の係数のう
ち、平均して2から7個の係数だけが非零係数である。
図11Bは、固定サイズアレイが増加すると、オーバー
フローベクトルのサイズが減少するので、ベクトルの挿
入及び削除費用を最小限にすることができることを、図
11Aの情報を指針として用いて、説明している。ここ
で、線220−1は図11Aの線220のCIFシーケンス
に対応しているのに対し、線222−1は図11Aの線
222のCIFシーケンスに対応している。当業者なら
ば、固定サイズアレイは容量が増えるにつれて、メモリ
圧縮は低下することが分かる。さらに、図11Cは、ア
レイの負荷因子(load factor)も減少して、アレイは
ほとんど空のままであることを示している。1実施例で
は、ブロックあたり8つのDCT係数を保持する固定サイ
ズアレイを選んだ。ここでも、線220ー2は図11A
の線220のCIFシーケンスに対応し、線222−2は
図11Aの線222のCIFシーケンスに対応している。こ
の選択が、オーバーフローベクトルのサイズに最小にし
てDCT係数を約200に抑え、負荷因子を約9%と約1
5%の間に維持する。当業者ならば、固定サイズアレイ
はブロックあたり8係数に限定されるものではなく、ブ
ロックあたりの係数の数は適した任意の数を選んでいい
ことが明らかである。さらに、固定サイズアレイの個々
のブロックは適した任意の構成にすることができる。例
えば、8つの係数を保持する能力を有するブロックを、
例えば、8x1のブロック、4x2のブロックとして配
列することができる一方、9つの係数を保持する能力を
有するブロックを、例えば、9x1のブロック、3x3
のブロックとして配列することができる。
る、ハイブリッドデータ構造の固定サイズアレイの固定
サイズブロックの容量及びオーバーフローベクトルを判
定する際に評価される因子を説明しているグラフであ
る。図11Aで、2つの典型的なCIFシーケンスの輝度ブ
ロックあたりの非零DCT係数の平均数が、線220及び
222で描かれている。ブロックあたりの非零係数の数
は3から7の範囲である。すなわち、64個の係数のう
ち、平均して2から7個の係数だけが非零係数である。
図11Bは、固定サイズアレイが増加すると、オーバー
フローベクトルのサイズが減少するので、ベクトルの挿
入及び削除費用を最小限にすることができることを、図
11Aの情報を指針として用いて、説明している。ここ
で、線220−1は図11Aの線220のCIFシーケンス
に対応しているのに対し、線222−1は図11Aの線
222のCIFシーケンスに対応している。当業者なら
ば、固定サイズアレイは容量が増えるにつれて、メモリ
圧縮は低下することが分かる。さらに、図11Cは、ア
レイの負荷因子(load factor)も減少して、アレイは
ほとんど空のままであることを示している。1実施例で
は、ブロックあたり8つのDCT係数を保持する固定サイ
ズアレイを選んだ。ここでも、線220ー2は図11A
の線220のCIFシーケンスに対応し、線222−2は
図11Aの線222のCIFシーケンスに対応している。こ
の選択が、オーバーフローベクトルのサイズに最小にし
てDCT係数を約200に抑え、負荷因子を約9%と約1
5%の間に維持する。当業者ならば、固定サイズアレイ
はブロックあたり8係数に限定されるものではなく、ブ
ロックあたりの係数の数は適した任意の数を選んでいい
ことが明らかである。さらに、固定サイズアレイの個々
のブロックは適した任意の構成にすることができる。例
えば、8つの係数を保持する能力を有するブロックを、
例えば、8x1のブロック、4x2のブロックとして配
列することができる一方、9つの係数を保持する能力を
有するブロックを、例えば、9x1のブロック、3x3
のブロックとして配列することができる。
【0047】図12は、本発明の1実施例による、ビッ
トストリームを復号化するのに要するメモリ所要量を減
らすための方法のオペレーションのフローチャートであ
る。この方法は、ビデオビットストリームを受け取るオ
ペレーション230から始まる。1実施例で、ビットス
トリームは低レートビットストリームである。例えば、
ビデオストリームを、H.263、Motion Pictures Expert
Group(MPEG-1/2/4)、H.261、Joint Photographic Exp
ert Group(JPEG)など、ビデオ符号化規格と関連付け
ることができる。この方法は次に、オペレーション23
2に進み、そこでビットストリームのフレームが、その
フレームと関連付けられるデータの各ブロックの離散コ
サイン変換(DCT)領域表現に復号化される。ここで、
ビデオは、図2、6B、15に示したデコーダなど、デ
コーダの初めの2ステージで処理される。すなわち、ビ
デオデータは、圧縮されたビットストリームをDCT領域
表現に復号化するために、可変長デコーダステージ及び
反量子化ステージで処理される。なお、DCT領域表現は
圧縮状態フォーマットになっている。フレームは一度に
1ブロックずつ復号化される。この方法は次に、オペレ
ーション234に進み、そこでDCT領域表現の非零係数
が識別される。ここで、データブロックのDCT領域表現
と関連付けられる64のDCT係数のうち、64中の比較
的少数のDCT係数が概して非零係数である。
トストリームを復号化するのに要するメモリ所要量を減
らすための方法のオペレーションのフローチャートであ
る。この方法は、ビデオビットストリームを受け取るオ
ペレーション230から始まる。1実施例で、ビットス
トリームは低レートビットストリームである。例えば、
ビデオストリームを、H.263、Motion Pictures Expert
Group(MPEG-1/2/4)、H.261、Joint Photographic Exp
ert Group(JPEG)など、ビデオ符号化規格と関連付け
ることができる。この方法は次に、オペレーション23
2に進み、そこでビットストリームのフレームが、その
フレームと関連付けられるデータの各ブロックの離散コ
サイン変換(DCT)領域表現に復号化される。ここで、
ビデオは、図2、6B、15に示したデコーダなど、デ
コーダの初めの2ステージで処理される。すなわち、ビ
デオデータは、圧縮されたビットストリームをDCT領域
表現に復号化するために、可変長デコーダステージ及び
反量子化ステージで処理される。なお、DCT領域表現は
圧縮状態フォーマットになっている。フレームは一度に
1ブロックずつ復号化される。この方法は次に、オペレ
ーション234に進み、そこでDCT領域表現の非零係数
が識別される。ここで、データブロックのDCT領域表現
と関連付けられる64のDCT係数のうち、64中の比較
的少数のDCT係数が概して非零係数である。
【0048】引き続き、図12において、この方法は次
に、ハイブリッドデータ構造をアセンブルするオペレー
ション236に進む。ハイブリッドデータ構造は、固定
サイズアレイと可変サイズオーバーフローベクトルとを
含んでいる。模式的な一つのハイブリッドデータ構造
は、図10に示した複数の固定サイズブロック及び可変
サイズオーバーフローベクトルを含む固定サイズアレイ
である。この方法は次に、オペレーション238に進
み、そこでDCT領域表現の非零係数がハイブリッドデー
タ構造の中に挿入される。図10において説明したよう
に、ビデオデータブロックのDCT領域表現の非零係数
は、固定サイズアレイ内の固定サイズブロックと関連付
けられる。非零係数の数が、ビデオデータブロックと関
連付けられる固定サイズブロックの容量を超えると、残
りの非零係数は可変サイズオーバーフローベクトルに保
持される。1実施例で、インデックス表は、オーバーフ
ローベクトル内のデータを固定サイズアレイ内のしかる
べき固定サイズブロックに写像する。従って、ハイブリ
ッドデータ構造と非零係数の保持により、メモリ所要量
が低減される。より具体的に言えば、ビデオ画質の損失
なしにメモリ所要量を50%低減することができる。
に、ハイブリッドデータ構造をアセンブルするオペレー
ション236に進む。ハイブリッドデータ構造は、固定
サイズアレイと可変サイズオーバーフローベクトルとを
含んでいる。模式的な一つのハイブリッドデータ構造
は、図10に示した複数の固定サイズブロック及び可変
サイズオーバーフローベクトルを含む固定サイズアレイ
である。この方法は次に、オペレーション238に進
み、そこでDCT領域表現の非零係数がハイブリッドデー
タ構造の中に挿入される。図10において説明したよう
に、ビデオデータブロックのDCT領域表現の非零係数
は、固定サイズアレイ内の固定サイズブロックと関連付
けられる。非零係数の数が、ビデオデータブロックと関
連付けられる固定サイズブロックの容量を超えると、残
りの非零係数は可変サイズオーバーフローベクトルに保
持される。1実施例で、インデックス表は、オーバーフ
ローベクトル内のデータを固定サイズアレイ内のしかる
べき固定サイズブロックに写像する。従って、ハイブリ
ッドデータ構造と非零係数の保持により、メモリ所要量
が低減される。より具体的に言えば、ビデオ画質の損失
なしにメモリ所要量を50%低減することができる。
【0049】なお、データフレームと関連付けられる各
DCT領域表現の非零係数はハイブリッドデータ構造に保
持される。保持されたフレームのデータは次に、表示す
るために組み合わされ、解凍される。1実施例では、そ
の次のフレームがハイブリッドデータ構造に保持される
べくDCT領域表現に復号化されてしまえば、ハイブリッ
ドデータ構造内で前のフレームと関連付けられたデータ
がフラッシュされる。以下にさらに説明するように、逆
動き補償は圧縮領域の保持されたデータに対して行なわ
れる。逆動き補償は、完全画素逆動き補償には整数近似
を用い、半画素逆動き補償には因数分解を用いる。
DCT領域表現の非零係数はハイブリッドデータ構造に保
持される。保持されたフレームのデータは次に、表示す
るために組み合わされ、解凍される。1実施例では、そ
の次のフレームがハイブリッドデータ構造に保持される
べくDCT領域表現に復号化されてしまえば、ハイブリッ
ドデータ構造内で前のフレームと関連付けられたデータ
がフラッシュされる。以下にさらに説明するように、逆
動き補償は圧縮領域の保持されたデータに対して行なわ
れる。逆動き補償は、完全画素逆動き補償には整数近似
を用い、半画素逆動き補償には因数分解を用いる。
【0050】空間H.263ビデオデコーダの主な構成要素
には、ランレングス復号化、逆DCT、及び逆動き補償が
ある。タイミングプロファイラを用いて、1.1 GHzペン
ティアム(Pentium;登録商標)4プロセッサで走行し
ているTELENORのH.263ビデオデコーダの性能をベースラ
インデータで測定する。ベースラインデータを復号化
し、システム呼び出しを無視して、プロファイラは、1
44のフレームを復号化するのに要する総体的な時間を
測定すると共に、各構成要素のタイミング特性を詳細に
記述する。表2は、空間的H. 263ビデオデコーダのタイ
ミングプロファイルで、特に、選ばれた機能のタイミン
グ結果を示すものである。
には、ランレングス復号化、逆DCT、及び逆動き補償が
ある。タイミングプロファイラを用いて、1.1 GHzペン
ティアム(Pentium;登録商標)4プロセッサで走行し
ているTELENORのH.263ビデオデコーダの性能をベースラ
インデータで測定する。ベースラインデータを復号化
し、システム呼び出しを無視して、プロファイラは、1
44のフレームを復号化するのに要する総体的な時間を
測定すると共に、各構成要素のタイミング特性を詳細に
記述する。表2は、空間的H. 263ビデオデコーダのタイ
ミングプロファイルで、特に、選ばれた機能のタイミン
グ結果を示すものである。
【表2】
【0051】表3は、最適化されていない圧縮領域H.26
3ビデオデコーダのタイミングプロファイルである。一
つの模式的デコーダのパイプライン構成は図2に示した
デコーダである。
3ビデオデコーダのタイミングプロファイルである。一
つの模式的デコーダのパイプライン構成は図2に示した
デコーダである。
【表3】
【0052】表2に示すように、空間領域ビデオデコー
ダは、144のフレームを復号化するのに約1.2秒か
かる。この時間のほとんどが、例えば、WINDOWTMなど、
適したオペレーティングシステムで表示するために、各
フレームのカラー値をYUVからRGBに変換する画像表示機
能にとられている。ランレングス復号化、逆DCT、逆動
き補償といった機能が、ビデオを復号化するのに要する
時間全体のうちの約25%をとっている。逆動き補償は
空間領域で特に高速である。ここで、完全画素の動き補
償は単にポインタをメモリもしくはフレームバッファ内
の位置に設定してデータブロックをコピーするだけなの
に対し、半画素の動き補償はメモリにポインタを設定し
且つシフトオペレータを用いて値を補間する。対照し
て、表3は、最適化されていない圧縮領域ビデオデコー
ダのタイミング結果のいくつかを示したものである。最
適化されていない圧縮領域デコーダは、同じ144のフ
レームを復号化するのに約13.67秒かかっている。
ダは、144のフレームを復号化するのに約1.2秒か
かる。この時間のほとんどが、例えば、WINDOWTMなど、
適したオペレーティングシステムで表示するために、各
フレームのカラー値をYUVからRGBに変換する画像表示機
能にとられている。ランレングス復号化、逆DCT、逆動
き補償といった機能が、ビデオを復号化するのに要する
時間全体のうちの約25%をとっている。逆動き補償は
空間領域で特に高速である。ここで、完全画素の動き補
償は単にポインタをメモリもしくはフレームバッファ内
の位置に設定してデータブロックをコピーするだけなの
に対し、半画素の動き補償はメモリにポインタを設定し
且つシフトオペレータを用いて値を補間する。対照し
て、表3は、最適化されていない圧縮領域ビデオデコー
ダのタイミング結果のいくつかを示したものである。最
適化されていない圧縮領域デコーダは、同じ144のフ
レームを復号化するのに約13.67秒かかっている。
【0053】
【数6】
【0054】
【表4】
【0055】8x8行列の乗算には各々、512の掛け
算と448の加算が必要である。知られているように、
行列乗算は計算的に高価である。表5は、マクロブロッ
クの行列乗算、行列因数分解、共用ブロックなど最適化
スキームと、図2、6B、15に示したパイプラインな
ど圧縮領域ビデオパイプラインのハイブリッドスキーム
との比較を示している。各データフレームが352本の
ラインを含み、ラインあたり288個の画素を有する共
通中間フォーマットといったビデオフォーマットをサポ
ートしているハンドヘルド機器で容認できる画質を提供
するために、圧縮領域ビデオ復号化パイプラインは毎秒
約15〜25フレーム(fps)というレートで復号化す
べきである。
算と448の加算が必要である。知られているように、
行列乗算は計算的に高価である。表5は、マクロブロッ
クの行列乗算、行列因数分解、共用ブロックなど最適化
スキームと、図2、6B、15に示したパイプラインな
ど圧縮領域ビデオパイプラインのハイブリッドスキーム
との比較を示している。各データフレームが352本の
ラインを含み、ラインあたり288個の画素を有する共
通中間フォーマットといったビデオフォーマットをサポ
ートしているハンドヘルド機器で容認できる画質を提供
するために、圧縮領域ビデオ復号化パイプラインは毎秒
約15〜25フレーム(fps)というレートで復号化す
べきである。
【表5】
【0056】圧縮領域ビデオ復号化パイプラインのエン
ハンスメントの一つは、ブロックアライメントにより、
方程式(10)のTMi演算数を減らすことである。ブロ
ックアライメントを、例えば、次のように行なう:1列
の144フレームを復号化して、ブロックアライメント
率を全ブロックの36.7%で測定する。図13は、行
列乗算を減らすブロックアライメントの3つの例を説明
している概略図である。ブロックアライメント240
((w=8, h=4))、ブロックアライメント242((w=
4, h=8))、及びブロックアライメント244((w=8,
h=8))の各ケースが描かれている。これらの例24
0、242、244では各々、対応するブロックとのオ
ーバーラップがゼロになると、TMi演算はなくなる。但
し、DCT領域(圧縮領域)で、ブロックアライメント
は、半画素補間を指定している場合には、節約にはなら
ない。圧縮領域における半画素動き補償の方程式は以下
の通り。(w=8, h=8)の例で、半画素補間には、方程式
12及び13に示されているように、4つのTMi演算が
依然として必要である。表6は、半画素変換行列Chpij
を定義するにあたり、参考までに提供しているものであ
る。
ハンスメントの一つは、ブロックアライメントにより、
方程式(10)のTMi演算数を減らすことである。ブロ
ックアライメントを、例えば、次のように行なう:1列
の144フレームを復号化して、ブロックアライメント
率を全ブロックの36.7%で測定する。図13は、行
列乗算を減らすブロックアライメントの3つの例を説明
している概略図である。ブロックアライメント240
((w=8, h=4))、ブロックアライメント242((w=
4, h=8))、及びブロックアライメント244((w=8,
h=8))の各ケースが描かれている。これらの例24
0、242、244では各々、対応するブロックとのオ
ーバーラップがゼロになると、TMi演算はなくなる。但
し、DCT領域(圧縮領域)で、ブロックアライメント
は、半画素補間を指定している場合には、節約にはなら
ない。圧縮領域における半画素動き補償の方程式は以下
の通り。(w=8, h=8)の例で、半画素補間には、方程式
12及び13に示されているように、4つのTMi演算が
依然として必要である。表6は、半画素変換行列Chpij
を定義するにあたり、参考までに提供しているものであ
る。
【数7】
【表6】
【0057】完璧にアライメントされたブロックでも、
半画素補間により近傍の画素とのオーバーラップが生じ
る。図14は、完璧にアライメントされたDCTブロック
の半画素補間の概略図である。半画素補間により、1画
素幅及び1画素高だけ近傍ブロックへのオーバーラップ
が生じる。
半画素補間により近傍の画素とのオーバーラップが生じ
る。図14は、完璧にアライメントされたDCTブロック
の半画素補間の概略図である。半画素補間により、1画
素幅及び1画素高だけ近傍ブロックへのオーバーラップ
が生じる。
【0058】図2のデコーダの機能ブロックの並べ替え
により圧縮領域復号化パイプラインの処理スピードを上
げることができる。表2及び3で、逆DCTブロックの処
理時間は、圧縮領域(632 ms)と比べ、空間領域のほう
がはるかに短い(3 ms)。空間領域で、逆DCTは、フィ
ードバックループの前にイントラブロック及び誤差係数
に対して用いられる。具体的に言えば、イントラブロッ
ク及び誤差係数は、ビデオの全ブロックの15%未満に
あたる。その他の85%では、単に逆DCT機能は省かれ
る。圧縮領域では、逆DCTが、パイプラインの最終ステ
ージで、ビデオの各フレームのブロック100%に用い
られる。
により圧縮領域復号化パイプラインの処理スピードを上
げることができる。表2及び3で、逆DCTブロックの処
理時間は、圧縮領域(632 ms)と比べ、空間領域のほう
がはるかに短い(3 ms)。空間領域で、逆DCTは、フィ
ードバックループの前にイントラブロック及び誤差係数
に対して用いられる。具体的に言えば、イントラブロッ
ク及び誤差係数は、ビデオの全ブロックの15%未満に
あたる。その他の85%では、単に逆DCT機能は省かれ
る。圧縮領域では、逆DCTが、パイプラインの最終ステ
ージで、ビデオの各フレームのブロック100%に用い
られる。
【0059】図15は、本発明の1実施例による、ビデ
オデータの処理を向上させる圧縮領域ビデオデコーダの
機能ブロックの並べ替えを説明している概略図である。
ここで、機能ブロックは並べ替えられ、圧縮領域パイプ
ラインは2ヶ所で分けられる。最初のスプリットはVLD
124及びDQ126の後に点(i)252で起きる。上
流のブランチで、パイプラインはメモリ圧縮128の内
部DCT領域表現を保っている。下流のブランチで、パイ
プラインは、誤差係数を空間領域に復号化するために、
RLD及びIDCTを前方に移動する。2番目のスプリット
は、動き補償(MC)時に点(ii)254で発生する。動
き補償時に、方程式(7)によると、空間領域出力が生
成される可能性がある。ディスプレイ136に表示する
ために点(iii)256で現ブロックを再構築するべ
く、出力を誤差係数に直に加算することができる。内部
DCT表現を維持するためにDCTブロック250がフィード
バックループに挿入される。点(i)252でのRLD13
2とIDCT134との組合せ及び点(ii)254でのDCT
は、図2のパイプラインの最終ステージでのIDCTブロッ
クと比べ、必要な計算が少ない。表7は、本書で説明し
ている他の最適化スキームに加えて組合せ可能な図15
に示した並べ替えにより20%のスピードアップを図れ
ることを実証している。
オデータの処理を向上させる圧縮領域ビデオデコーダの
機能ブロックの並べ替えを説明している概略図である。
ここで、機能ブロックは並べ替えられ、圧縮領域パイプ
ラインは2ヶ所で分けられる。最初のスプリットはVLD
124及びDQ126の後に点(i)252で起きる。上
流のブランチで、パイプラインはメモリ圧縮128の内
部DCT領域表現を保っている。下流のブランチで、パイ
プラインは、誤差係数を空間領域に復号化するために、
RLD及びIDCTを前方に移動する。2番目のスプリット
は、動き補償(MC)時に点(ii)254で発生する。動
き補償時に、方程式(7)によると、空間領域出力が生
成される可能性がある。ディスプレイ136に表示する
ために点(iii)256で現ブロックを再構築するべ
く、出力を誤差係数に直に加算することができる。内部
DCT表現を維持するためにDCTブロック250がフィード
バックループに挿入される。点(i)252でのRLD13
2とIDCT134との組合せ及び点(ii)254でのDCT
は、図2のパイプラインの最終ステージでのIDCTブロッ
クと比べ、必要な計算が少ない。表7は、本書で説明し
ている他の最適化スキームに加えて組合せ可能な図15
に示した並べ替えにより20%のスピードアップを図れ
ることを実証している。
【表7】
【0060】1実施例で、方程式(11、13)の基本
的TM演算に必要な掛け算の数を減らすことにより逆動き
補償が加速される。完全8x8行列乗算を計算する代わ
りに、方程式14に示すように、DCT行列Sが疎行列の列
に因数分解される。方程式(17)の疎行列は、順序行
列(A1,A2,A3,A4,A5,A6)及び対角行列(D,M)を含む。この
因数分解を方程式(15)の中に代入すると、方程式
(16)のTMiの完全に因数分解された方程式を導き出
すことができる。これは、方程式(11、13)よりも
掛け算の数が少ない。
的TM演算に必要な掛け算の数を減らすことにより逆動き
補償が加速される。完全8x8行列乗算を計算する代わ
りに、方程式14に示すように、DCT行列Sが疎行列の列
に因数分解される。方程式(17)の疎行列は、順序行
列(A1,A2,A3,A4,A5,A6)及び対角行列(D,M)を含む。この
因数分解を方程式(15)の中に代入すると、方程式
(16)のTMiの完全に因数分解された方程式を導き出
すことができる。これは、方程式(11、13)よりも
掛け算の数が少ない。
【数8】
【0061】従って、行列乗算は、行列順列で置き換え
られる。但し、方程式(16)に示すように、項TMi,の
完全に因数分解された式は必ずしも逆動き補償をスピー
ドアップするとは限らない。基本的に、掛け算がメモリ
アクセスとトレードされたので、メモリアクセスが多す
ぎると、実のところ復号化プロセスを遅くする。従っ
て、これらの競合する機能間のバランスをとるべく行列
の再グループ化が行なわれる。行列S (= G0G1)は2つの
項、G0=DA1A2A3(順列と乗算の混合)と、G1=MA4A5A
6(順列と加算の混合)とに因数分解される。方程式
(24)で逆動き補償に因数分解された式を形成するた
めに、固定行列Ji, Kiが定義され、方程式(10及び1
2)の中に代入される。
られる。但し、方程式(16)に示すように、項TMi,の
完全に因数分解された式は必ずしも逆動き補償をスピー
ドアップするとは限らない。基本的に、掛け算がメモリ
アクセスとトレードされたので、メモリアクセスが多す
ぎると、実のところ復号化プロセスを遅くする。従っ
て、これらの競合する機能間のバランスをとるべく行列
の再グループ化が行なわれる。行列S (= G0G1)は2つの
項、G0=DA1A2A3(順列と乗算の混合)と、G1=MA4A5A
6(順列と加算の混合)とに因数分解される。方程式
(24)で逆動き補償に因数分解された式を形成するた
めに、固定行列Ji, Kiが定義され、方程式(10及び1
2)の中に代入される。
【数9】
半画素補間でも同様に、
【数10】
【0062】固定行列Ji, Kiによる高速乗算を実現する
ことにより、スピードをさらに向上させることができ
る。固定行列には構造の繰り返しが入っている。例え
ば、行列J6は次のように定義される。
ことにより、スピードをさらに向上させることができ
る。固定行列には構造の繰り返しが入っている。例え
ば、行列J6は次のように定義される。
【数11】
【0063】ここでは、a=0.7071、b=0.9239、c=0.3827
とする。u= {u1,…,u8}及びv={v1,…,v8}と仮定する
と、u = J6vを計算するには、方程式の列を次のステッ
プに従って計算する:
とする。u= {u1,…,u8}及びv={v1,…,v8}と仮定する
と、u = J6vを計算するには、方程式の列を次のステッ
プに従って計算する:
【数12】
【0064】
【0065】逆動き補償の更なるスピードアップを図る
ために、方程式(11、13)の基本的なTM演算に必
要な掛け算を削除する。完全画素及び半画素の行列、C
ij及びChpijが、2-5のベキに一番近い2進数に近似され
る。これらの行列を2進数に近似すると、方程式(1
0、12)の逆動き補償を解くために、右シフトや加算
など基本的な整数演算を用いることによって行列乗算を
行なうことができる。例えば、h=1の場合、完全画素行
列C11を以下のように調べる。なお、その他の行列は同
じように近似されている。
ために、方程式(11、13)の基本的なTM演算に必
要な掛け算を削除する。完全画素及び半画素の行列、C
ij及びChpijが、2-5のベキに一番近い2進数に近似され
る。これらの行列を2進数に近似すると、方程式(1
0、12)の逆動き補償を解くために、右シフトや加算
など基本的な整数演算を用いることによって行列乗算を
行なうことができる。例えば、h=1の場合、完全画素行
列C11を以下のように調べる。なお、その他の行列は同
じように近似されている。
【数13】
行列の各要素を2のベキに一番近い値に丸めると、行列
(47)が生まれる。
(47)が生まれる。
【数14】
【0066】DCT要素は[-2048 to 2047]の範囲内に入っ
ているから、DCT係数を直接シフトすることでほとんど
の値がゼロに駆動される。中間結果の精度を維持するた
めに、復号化パイプライン全体で各DCT係数を28でスケ
ーリングする。この倍率は、量子化及び反量子化のステ
ップで導入されるから、余分な演算は発生しない。
ているから、DCT係数を直接シフトすることでほとんど
の値がゼロに駆動される。中間結果の精度を維持するた
めに、復号化パイプライン全体で各DCT係数を28でスケ
ーリングする。この倍率は、量子化及び反量子化のステ
ップで導入されるから、余分な演算は発生しない。
【0067】さらに、積和のルールに従って項をグルー
プ化することにより高速行列乗算を実現する(方程式
(48〜50)を参照)。
プ化することにより高速行列乗算を実現する(方程式
(48〜50)を参照)。
【数15】
【0068】
【数16】
【0069】
【0070】ビデオの動きに基づいて選択的に適用され
る変換行列TMのハイブリッド因数分解/整数近似は、容
認できる画質を維持しながら、同時に、好ましい約15
〜25fpsのフレームレートを実現する。先に触れたよ
うに、整数近似技法は、デコーダの計算量を低減するだ
けでなく、復号化されたビデオのPSNRも低下させる。同
時に、因数分解技法では、良好なPSNRは維持できるけれ
ども、好ましいフレームレートを満たすにはデコーダの
計算量は低下しない。整数近似技法の計算量に低さと因
数分解技法の精度の高さとを統合することで、低レート
ビデオビットストリームをサポートするための圧縮領域
ビデオ復号化パイプラインを得ることができる。
る変換行列TMのハイブリッド因数分解/整数近似は、容
認できる画質を維持しながら、同時に、好ましい約15
〜25fpsのフレームレートを実現する。先に触れたよ
うに、整数近似技法は、デコーダの計算量を低減するだ
けでなく、復号化されたビデオのPSNRも低下させる。同
時に、因数分解技法では、良好なPSNRは維持できるけれ
ども、好ましいフレームレートを満たすにはデコーダの
計算量は低下しない。整数近似技法の計算量に低さと因
数分解技法の精度の高さとを統合することで、低レート
ビデオビットストリームをサポートするための圧縮領域
ビデオ復号化パイプラインを得ることができる。
【0071】2つのタイプの変換行列、つまり、方程式
(11)に示した完全画素動き補償TMiと、方程式(1
3)に示した半画素動き補償TMhpiについて説明してき
た。TM iに近似行列を用いると、完全画素動き補償は、
8x8浮動小数点行列を用いた場合と比べ、計算量が2
8%ですむ。しかしながら、半画素変換行列TMhpiに近
似技法を直接用いる場合、TMhpiの近似行列を用いる
と、半画素動き補償はPSNRを低下させる(表8)と
共に復号化されたビデオに目に見える歪みを発生させる
ことが観察された。誤差源は2つある。その一つは、半
画素変換行列TMhpiが近似技法により敏感に反応するこ
とである。表8で、TMhpiはTMi以外にも数多くの項から
なる複合行列である。2つ目は、先に図6A及び6Bに
おいて説明したように、半画素補間時の非線形処理が、
近似技法によって発生した誤差と組み合わされて、中程
度から高度の動き領域で目に見える誤差の累積を生じさ
せる。
(11)に示した完全画素動き補償TMiと、方程式(1
3)に示した半画素動き補償TMhpiについて説明してき
た。TM iに近似行列を用いると、完全画素動き補償は、
8x8浮動小数点行列を用いた場合と比べ、計算量が2
8%ですむ。しかしながら、半画素変換行列TMhpiに近
似技法を直接用いる場合、TMhpiの近似行列を用いる
と、半画素動き補償はPSNRを低下させる(表8)と
共に復号化されたビデオに目に見える歪みを発生させる
ことが観察された。誤差源は2つある。その一つは、半
画素変換行列TMhpiが近似技法により敏感に反応するこ
とである。表8で、TMhpiはTMi以外にも数多くの項から
なる複合行列である。2つ目は、先に図6A及び6Bに
おいて説明したように、半画素補間時の非線形処理が、
近似技法によって発生した誤差と組み合わされて、中程
度から高度の動き領域で目に見える誤差の累積を生じさ
せる。
【0072】半画素行列に因数分解技法を選択的に適用
することでこうした誤差の問題を解決することができ
る。先に説明したように、因数分解技法は浮動小数点の
精度を維持するので、上に説明した誤差を最小限にする
ことができる。例えば、因数分解技法は、TMhpiを有す
る行列乗算を、方程式(25〜45)に示したのと同じ
ような方程式の列に還元する。これらの方程式は32ビ
ット浮動小数点の精度を維持するので、近似誤差が生ま
れない。さらに、因数分解技法は動き補償時にDCTブロ
ックを空間領域に復号化するので、図15において説明
した最適化をいま説明した最適化と組み合わせることが
できる。表5はハイブリッド法で15fpsの目標フレー
ムレートを達成できることを実証しているのに対し、表
8はハイブリッド法のPNSRは容認できるPSNRを実現
することを示している。
することでこうした誤差の問題を解決することができ
る。先に説明したように、因数分解技法は浮動小数点の
精度を維持するので、上に説明した誤差を最小限にする
ことができる。例えば、因数分解技法は、TMhpiを有す
る行列乗算を、方程式(25〜45)に示したのと同じ
ような方程式の列に還元する。これらの方程式は32ビ
ット浮動小数点の精度を維持するので、近似誤差が生ま
れない。さらに、因数分解技法は動き補償時にDCTブロ
ックを空間領域に復号化するので、図15において説明
した最適化をいま説明した最適化と組み合わせることが
できる。表5はハイブリッド法で15fpsの目標フレー
ムレートを達成できることを実証しているのに対し、表
8はハイブリッド法のPNSRは容認できるPSNRを実現
することを示している。
【表8】
【0073】図16は、本発明の1実施例による、圧縮
領域で逆動き補償を行なうための方法のオペレーション
のフローチャート図である。この方法は、圧縮されたビ
ットストリーム内のビデオデータフレームを受け取るオ
ペレーション260から始まる。1実施例で、ビットス
トリームは低レートビットストリームである。例えば、
ビットストリームは、MPEG 4、H.263、H.261など、公知
のビデオ符号化規格と関連付けられていて構わない。こ
の方法は次にオペレーション262に進み、そこでビッ
トストリームのフレームのブロックが離散コサイン変換
(DCT)領域表現に復号化される。ここで、ビデオは、
図2、6B、15に示したデコーダなど、デコーダの最
初の2ステージで処理される。すなわち、ビデオデータ
は、圧縮ビットストリームをDCT領域表現に復号化する
ために、可変長デコーダのステージ及び反量子化のステ
ージで処理される。なお、DCT領域表現は圧縮状態のフ
ォーマットになっている。この方法は次にオペレーショ
ン264に進み、そこでDCT領域表現と関連付けられる
データがハイブリッドデータ構造に保持される。適した
ハイブリッドデータ構造は、図10及び12において説
明したハイブリッドデータ構造である。1実施例で、ハ
イブリッドデータ構造は、例えば、セルラー電話、PD
A、ウェブタブレット、ポケットパソコンなど、ビデオ
データを表示するためのディスプレイ画面を有する携帯
用電子機器のメモリ所要量を低減する。
領域で逆動き補償を行なうための方法のオペレーション
のフローチャート図である。この方法は、圧縮されたビ
ットストリーム内のビデオデータフレームを受け取るオ
ペレーション260から始まる。1実施例で、ビットス
トリームは低レートビットストリームである。例えば、
ビットストリームは、MPEG 4、H.263、H.261など、公知
のビデオ符号化規格と関連付けられていて構わない。こ
の方法は次にオペレーション262に進み、そこでビッ
トストリームのフレームのブロックが離散コサイン変換
(DCT)領域表現に復号化される。ここで、ビデオは、
図2、6B、15に示したデコーダなど、デコーダの最
初の2ステージで処理される。すなわち、ビデオデータ
は、圧縮ビットストリームをDCT領域表現に復号化する
ために、可変長デコーダのステージ及び反量子化のステ
ージで処理される。なお、DCT領域表現は圧縮状態のフ
ォーマットになっている。この方法は次にオペレーショ
ン264に進み、そこでDCT領域表現と関連付けられる
データがハイブリッドデータ構造に保持される。適した
ハイブリッドデータ構造は、図10及び12において説
明したハイブリッドデータ構造である。1実施例で、ハ
イブリッドデータ構造は、例えば、セルラー電話、PD
A、ウェブタブレット、ポケットパソコンなど、ビデオ
データを表示するためのディスプレイ画面を有する携帯
用電子機器のメモリ所要量を低減する。
【0074】引き続き、図16において、この方法はオ
ペレーション266に進み、そこでDCT領域表現と関連
付けられるデータに圧縮領域で逆動き補償が実行され
る。ここで、逆動き補償には、表5及び9において説明
したハイブリッド因数分解/整数近似技法が選択的に適
用される。この方法は次にオペレーション268に進
み、そこでハイブリッド因数分解/整数近似技法が、処
理中のビデオデータのブロックと関連付けられる変換行
列のタイプを識別する。1実施例では、いま復号化され
ているビットストリームのビットセットの中の情報によ
り変換行列のタイプが検出される。変換行列が半画素行
列の場合には、この方法はオペレーション270に進
み、そこでビットストリームを復号化するために因数分
解技法が用いられる。1実施例では、先に方程式25〜
45において説明したように、因数分解技法により行列
乗算が一連の方程式に還元される。すなわち、行列乗算
が行列順列で置き換えられる。決定のオペレーション2
68で変換行列が完全画素行列であると判定された場合
には、この方法はオペレーション272に進み、そこで
ビットストリームを復号化するために整数近似技法が用
いられる。ここでは、方程式46〜58において先に説
明したように、逆動き補償を解くために、基本的な整数
演算を用いて行列乗算を実行することができる。従っ
て、容認できる画質を有しながら先に説明したハイブリ
ッドデータ構造により達成できたメモリの低減を可能に
する程度のフレームレートを実現するために、ハイブリ
ッド因数分解/整数近似技法を選択的に適用することに
より、圧縮領域での処理が実行される。
ペレーション266に進み、そこでDCT領域表現と関連
付けられるデータに圧縮領域で逆動き補償が実行され
る。ここで、逆動き補償には、表5及び9において説明
したハイブリッド因数分解/整数近似技法が選択的に適
用される。この方法は次にオペレーション268に進
み、そこでハイブリッド因数分解/整数近似技法が、処
理中のビデオデータのブロックと関連付けられる変換行
列のタイプを識別する。1実施例では、いま復号化され
ているビットストリームのビットセットの中の情報によ
り変換行列のタイプが検出される。変換行列が半画素行
列の場合には、この方法はオペレーション270に進
み、そこでビットストリームを復号化するために因数分
解技法が用いられる。1実施例では、先に方程式25〜
45において説明したように、因数分解技法により行列
乗算が一連の方程式に還元される。すなわち、行列乗算
が行列順列で置き換えられる。決定のオペレーション2
68で変換行列が完全画素行列であると判定された場合
には、この方法はオペレーション272に進み、そこで
ビットストリームを復号化するために整数近似技法が用
いられる。ここでは、方程式46〜58において先に説
明したように、逆動き補償を解くために、基本的な整数
演算を用いて行列乗算を実行することができる。従っ
て、容認できる画質を有しながら先に説明したハイブリ
ッドデータ構造により達成できたメモリの低減を可能に
する程度のフレームレートを実現するために、ハイブリ
ッド因数分解/整数近似技法を選択的に適用することに
より、圧縮領域での処理が実行される。
【0075】図17は、本発明の1実施例による、ハイ
ブリッド因数分解/整数近似技法の選択的適用の概略図
である。ディスプレイ画面280は低ビットレートビデ
オによって定義された画像を表示するように構成されて
いる。例えば、ディスプレイ画面280を、PDA、セル
ラー電話、ポケットパソコン、ウェブタブレットなど、
携帯用電子機器と関連付けることができる。ボール28
2はビデオで垂直方向に移動している。ブロック284
は移動するオブジェクトの周囲に位置し、高度又は中程
度の動き領域と考えられ、フレームからフレームで変わ
る。ブロック286はバックグラウンドを表わし、フレ
ームからフレームで実質的に同じままである。従って、
圧縮ビットストリームの復号化時に、データフレームの
ブロック284は、フレームからフレームで、高度な動
き領域と関連付けられるのに対し、ブロック286はフ
レームからフレームで実質的に同じままである。高度動
き領域と関連付けられるブロック284は、複合化の技
法、つまり、因数分解時には、より高度な精度を必要と
するが、ブロック286は実質的に変わらないので計算
量の低い補間法、つまり、整数近似で許される。従っ
て、因数分解技法を高度から中程度の動き領域ブロック
284に適用し、整数近似法をバックグラウンドブロッ
ク286に適用する。先に説明したように、ブロックが
高度の動きと関連付けられるかどうか、つまり、因数分
解による半画素動き補償を適用するかどうか、もしくは
ブロックがバックグラウンドデータかどうか、つまり、
整数近似による完全画素動き補償を適用するかどうかを
判定するために、ビットストリームに埋め込まれた情報
が検出される。1実施例では、図2、6B、15に示し
た動きベクトルが、動き補償が半画素か又は完全画素の
動き補償かどうかを指定している。
ブリッド因数分解/整数近似技法の選択的適用の概略図
である。ディスプレイ画面280は低ビットレートビデ
オによって定義された画像を表示するように構成されて
いる。例えば、ディスプレイ画面280を、PDA、セル
ラー電話、ポケットパソコン、ウェブタブレットなど、
携帯用電子機器と関連付けることができる。ボール28
2はビデオで垂直方向に移動している。ブロック284
は移動するオブジェクトの周囲に位置し、高度又は中程
度の動き領域と考えられ、フレームからフレームで変わ
る。ブロック286はバックグラウンドを表わし、フレ
ームからフレームで実質的に同じままである。従って、
圧縮ビットストリームの復号化時に、データフレームの
ブロック284は、フレームからフレームで、高度な動
き領域と関連付けられるのに対し、ブロック286はフ
レームからフレームで実質的に同じままである。高度動
き領域と関連付けられるブロック284は、複合化の技
法、つまり、因数分解時には、より高度な精度を必要と
するが、ブロック286は実質的に変わらないので計算
量の低い補間法、つまり、整数近似で許される。従っ
て、因数分解技法を高度から中程度の動き領域ブロック
284に適用し、整数近似法をバックグラウンドブロッ
ク286に適用する。先に説明したように、ブロックが
高度の動きと関連付けられるかどうか、つまり、因数分
解による半画素動き補償を適用するかどうか、もしくは
ブロックがバックグラウンドデータかどうか、つまり、
整数近似による完全画素動き補償を適用するかどうかを
判定するために、ビットストリームに埋め込まれた情報
が検出される。1実施例では、図2、6B、15に示し
た動きベクトルが、動き補償が半画素か又は完全画素の
動き補償かどうかを指定している。
【0076】なお、先に説明した実施例はソフトウェア
で実行しても、ハードウェアで実行しても構わない。当
業者ならば、デコーダを、先に説明した機能を実現でき
るように構成された論理ゲートを含む半導体チップとし
て実施できることが分かる。例えば、ビデオデコーダを
ハードウェアで実現するには、本書で説明した必要な機
能を実現するための論理ゲートのレイアウト及びファー
ムウェアを合成するために、例えば、VERILOGなど、ハ
ードウェア記述言語(HDL)を採用することができる。
で実行しても、ハードウェアで実行しても構わない。当
業者ならば、デコーダを、先に説明した機能を実現でき
るように構成された論理ゲートを含む半導体チップとし
て実施できることが分かる。例えば、ビデオデコーダを
ハードウェアで実現するには、本書で説明した必要な機
能を実現するための論理ゲートのレイアウト及びファー
ムウェアを合成するために、例えば、VERILOGなど、ハ
ードウェア記述言語(HDL)を採用することができる。
【0077】図18は、本発明の1実施例による、メモ
リ所要量を最小限にするためのハイブリッドデータ構造
を活用すると共に、ビットストリームデータを効率よく
復号化するためのハイブリッド因数分解/整数近似技法
を適用するように構成されたデコーダ回路構成を有する
携帯用電子機器の簡約概略図である。携帯用電子機器2
90は、中央処理機構(CPU)294、メモリ292、
ディスプレイ画面136、デコーダ回路構成298を含
み、これらは全てバス296で互いに通信し合ってい
る。デコーダ回路構成298は、先に説明したビデオ処
理並びに圧縮領域で逆動き補償を実行するのに要するメ
モリ所要量を低減する機能を提供できるように構成され
た論理ゲートを含む。当業者ならば、デコーダ回路構成
298はデコーダ回路構成が入っているチップ上にメモ
リを有していても、或いはメモリはチップの外に配置さ
れていても構わないことが明らかである。
リ所要量を最小限にするためのハイブリッドデータ構造
を活用すると共に、ビットストリームデータを効率よく
復号化するためのハイブリッド因数分解/整数近似技法
を適用するように構成されたデコーダ回路構成を有する
携帯用電子機器の簡約概略図である。携帯用電子機器2
90は、中央処理機構(CPU)294、メモリ292、
ディスプレイ画面136、デコーダ回路構成298を含
み、これらは全てバス296で互いに通信し合ってい
る。デコーダ回路構成298は、先に説明したビデオ処
理並びに圧縮領域で逆動き補償を実行するのに要するメ
モリ所要量を低減する機能を提供できるように構成され
た論理ゲートを含む。当業者ならば、デコーダ回路構成
298はデコーダ回路構成が入っているチップ上にメモ
リを有していても、或いはメモリはチップの外に配置さ
れていても構わないことが明らかである。
【0078】図19は、本発明の1実施例による、図1
8のデコーダ回路構成のより詳細な概略図である。入っ
てくるビットストリーム122は、デコーダ298の可
変長デコーダ(VLD)回路構成300によって受け取ら
れる。当業者ならば、デコーダ回路構成298をプリン
ト配線板上に配置された半導体チップ上に設置して構わ
ないことが分かる。VLD回路構成300は、動き補償
回路構成306に動きベクトル信号を供給する。ビデオ
処理メモリ308は、圧縮領域で反量子化回路構成30
2からのビデオの内部表現を保持する。DCT回路構成3
04は動き補償回路構成306からのビデオの内部DC
T表現を維持する。ランレングス復号(RLD)回路31
0及び逆離散コサイン変換(IDCT)回路構成312は、
ディスプレイ画面136に表示できるようにビデオデー
タを解凍する。なお、ここで説明している回路構成のブ
ロックは、図2、6B、15において説明したブロック
/ステージと同じような機能を提供する。
8のデコーダ回路構成のより詳細な概略図である。入っ
てくるビットストリーム122は、デコーダ298の可
変長デコーダ(VLD)回路構成300によって受け取ら
れる。当業者ならば、デコーダ回路構成298をプリン
ト配線板上に配置された半導体チップ上に設置して構わ
ないことが分かる。VLD回路構成300は、動き補償
回路構成306に動きベクトル信号を供給する。ビデオ
処理メモリ308は、圧縮領域で反量子化回路構成30
2からのビデオの内部表現を保持する。DCT回路構成3
04は動き補償回路構成306からのビデオの内部DC
T表現を維持する。ランレングス復号(RLD)回路31
0及び逆離散コサイン変換(IDCT)回路構成312は、
ディスプレイ画面136に表示できるようにビデオデー
タを解凍する。なお、ここで説明している回路構成のブ
ロックは、図2、6B、15において説明したブロック
/ステージと同じような機能を提供する。
【0079】
【発明の効果】要約すると、今まで説明してきた発明
は、ビデオメモリ量を減らし、圧縮領域で逆動き補償を
実行する圧縮領域ビデオデコーダを提供するものであ
る。現フレームを定義するために基準フレームの非零DC
T係数を保持及び操作するように構成されたハイブリッ
ドデータ構造によりメモリ低減を実現する。ハイブリッ
ドデータ構成は、ビデオデータフレームの各ブロックと
関連付けられる固定サイズブロックを有する固定サイズ
アレイを含んでいる。固定サイズブロックの容量を超え
る非零係数を収容できるように、ハイブリッドデータ構
造には可変サイズオーバーフローベクトルが備わってい
る。圧縮領域ビデオデコーダにより達成されたメモリ圧
縮量は、空間領域ビデオデコーダと比べ、上限で2倍で
ある。圧縮領域ビデオデコーダの逆動き補償は、容認で
きる画質のビデオで毎秒約15〜25フレームを実現で
きるように最適化される。復号中のブロックにハイブリ
ッド因数分解/整数近似が選択的にかけられる。因数分
解/整数近似技法のうちのどの補間を適用するかを判定
する基準は、変換行列に基づく。つまり、半画素行列に
は因数分解が適用されるのに対し、完全画素行列には整
数近似が適用される。なお、1実施例では、本書で説明
した圧縮領域パイプラインをMPEG−4のシンプルプ
ロファイルビデオデコーダに取り入れることができる。
さらに、実施例により、例えば、電池で動く(CPU制約
型)機器のパワースケーラブル復号化やビデオ会議シス
テムの複合化など、多種多様なアプリケーションを追求
できるようになる。
は、ビデオメモリ量を減らし、圧縮領域で逆動き補償を
実行する圧縮領域ビデオデコーダを提供するものであ
る。現フレームを定義するために基準フレームの非零DC
T係数を保持及び操作するように構成されたハイブリッ
ドデータ構造によりメモリ低減を実現する。ハイブリッ
ドデータ構成は、ビデオデータフレームの各ブロックと
関連付けられる固定サイズブロックを有する固定サイズ
アレイを含んでいる。固定サイズブロックの容量を超え
る非零係数を収容できるように、ハイブリッドデータ構
造には可変サイズオーバーフローベクトルが備わってい
る。圧縮領域ビデオデコーダにより達成されたメモリ圧
縮量は、空間領域ビデオデコーダと比べ、上限で2倍で
ある。圧縮領域ビデオデコーダの逆動き補償は、容認で
きる画質のビデオで毎秒約15〜25フレームを実現で
きるように最適化される。復号中のブロックにハイブリ
ッド因数分解/整数近似が選択的にかけられる。因数分
解/整数近似技法のうちのどの補間を適用するかを判定
する基準は、変換行列に基づく。つまり、半画素行列に
は因数分解が適用されるのに対し、完全画素行列には整
数近似が適用される。なお、1実施例では、本書で説明
した圧縮領域パイプラインをMPEG−4のシンプルプ
ロファイルビデオデコーダに取り入れることができる。
さらに、実施例により、例えば、電池で動く(CPU制約
型)機器のパワースケーラブル復号化やビデオ会議シス
テムの複合化など、多種多様なアプリケーションを追求
できるようになる。
【0080】上述の実施例を考慮すれば、本発明は、コ
ンピュータシステムに保持されたデータを必要とするい
ろいろなコンピュータで実行されるオペレーションを採
用することができることが分かる。こうしたオペレーシ
ョンには、物理的数量の物理的操作が含まれる。必ずし
もそうとは限らないが、普通、こうした数量は、保持、
変換、結合、比較、さもなければ操作の対象となり得る
電気信号又は磁気信号の形をとる。さらに、実行される
操作は、生成、識別、判定、又は比較といったような言
葉で示されることが多い。
ンピュータシステムに保持されたデータを必要とするい
ろいろなコンピュータで実行されるオペレーションを採
用することができることが分かる。こうしたオペレーシ
ョンには、物理的数量の物理的操作が含まれる。必ずし
もそうとは限らないが、普通、こうした数量は、保持、
変換、結合、比較、さもなければ操作の対象となり得る
電気信号又は磁気信号の形をとる。さらに、実行される
操作は、生成、識別、判定、又は比較といったような言
葉で示されることが多い。
【0081】以上説明した本発明は、ハンドヘルド機
器、マイクロプロセッサシステム、マイクロプロセッサ
ベースの或いはプログラマブル消費者向けエレクトロニ
クス、ミニコンピュータ、メインフレームコンピュータ
など、その他のコンピュータシステム構成と共に実施す
ることができる。本発明は、通信ネットワークを経由し
てリンクされている遠隔処理装置によってタスクが実行
される分散型コンピューティング環境において実施する
ことができる。
器、マイクロプロセッサシステム、マイクロプロセッサ
ベースの或いはプログラマブル消費者向けエレクトロニ
クス、ミニコンピュータ、メインフレームコンピュータ
など、その他のコンピュータシステム構成と共に実施す
ることができる。本発明は、通信ネットワークを経由し
てリンクされている遠隔処理装置によってタスクが実行
される分散型コンピューティング環境において実施する
ことができる。
【0082】本発明は、コンピュータ可読媒体上のコン
ピュータ可読コードとして実施することもできる。コン
ピュータ可読媒体は、データを保持し、後からそのデー
タをコンピュータシステムが判読できればどんなデータ
記憶装置でも構わない。コンピュータ可読媒体の例とし
ては、ハードドライブ、ネットワーク接続記憶装置(NA
S)、読み取り専用メモリ、ランダムアクセスメモリ、C
D-ROM、CD-R、CD-RW、磁気テープや、その他の光学式お
よび非光学式データ記憶装置がある。分散してコンピュ
ータ可読コードを保持及び実行されるように、コンピュ
ータ可読媒体をネットワークでつながったコンピュータ
システムで分散することもできる。コンピュータ可読媒
体は、コンピュータコードを含んだ電磁搬送波でも構わ
ない。
ピュータ可読コードとして実施することもできる。コン
ピュータ可読媒体は、データを保持し、後からそのデー
タをコンピュータシステムが判読できればどんなデータ
記憶装置でも構わない。コンピュータ可読媒体の例とし
ては、ハードドライブ、ネットワーク接続記憶装置(NA
S)、読み取り専用メモリ、ランダムアクセスメモリ、C
D-ROM、CD-R、CD-RW、磁気テープや、その他の光学式お
よび非光学式データ記憶装置がある。分散してコンピュ
ータ可読コードを保持及び実行されるように、コンピュ
ータ可読媒体をネットワークでつながったコンピュータ
システムで分散することもできる。コンピュータ可読媒
体は、コンピュータコードを含んだ電磁搬送波でも構わ
ない。
【0083】以上、本発明を、はっきり理解できるよう
に、より詳細に説明してきたが、添付した特許請求の範
囲内で変更、修正が可能なことは明らかである。従っ
て、本願の実施例は説明のためで、制約するためのもの
ではない。また、本発明は、本書で説明した詳細に限定
されるものではないけれども、特許請求の範囲内及び特
許請求と同等の範囲内で修正可能である。請求項におい
て、要素及び/又は工程は、請求項にはっきりと明記さ
れていない限り、何らオペレーションの特定の順序を暗
に示しているものではない。
に、より詳細に説明してきたが、添付した特許請求の範
囲内で変更、修正が可能なことは明らかである。従っ
て、本願の実施例は説明のためで、制約するためのもの
ではない。また、本発明は、本書で説明した詳細に限定
されるものではないけれども、特許請求の範囲内及び特
許請求と同等の範囲内で修正可能である。請求項におい
て、要素及び/又は工程は、請求項にはっきりと明記さ
れていない限り、何らオペレーションの特定の順序を暗
に示しているものではない。
本発明は、添付の図面と共に以下に述べる詳細な説明に
より容易に理解できるだろう。類似した構造上の要素を
類似の参照番号で示している。
より容易に理解できるだろう。類似した構造上の要素を
類似の参照番号で示している。
【図1】 ビデオデータを復号化すると共に空間領域で
動き補償を実行するためのビデオデコーダの概略図。
動き補償を実行するためのビデオデコーダの概略図。
【図2】 本発明の1実施例による、逆動き補償が圧縮
領域で実行されるように構成されたビデオデコーダの概
略図。
領域で実行されるように構成されたビデオデコーダの概
略図。
【図3】 空間領域で実行される逆動き補償を説明して
いる概略図。
いる概略図。
【図4】 H.263規格と関連付けられる強制更新メカニ
ズムの有効性を実証するために、複数のフレームのピー
クの信号対雑音比(PSNR)を説明しているグラフ。
ズムの有効性を実証するために、複数のフレームのピー
クの信号対雑音比(PSNR)を説明しているグラフ。
【図5】 H.263規格における半画素値の判定を説明し
ている概略図。
ている概略図。
【図6】 A:ベースライン空間ビデオデコーダの概略
図。B:本発明の1実施例による、圧縮領域ビデオデコ
ーダの概略図。
図。B:本発明の1実施例による、圧縮領域ビデオデコ
ーダの概略図。
【図7】 本発明の1実施例による、ビデオ符号化及び
復号化プロセス時のブロック変換を説明しているブロッ
ク図。
復号化プロセス時のブロック変換を説明しているブロッ
ク図。
【図8】 ランレングス表現における各8x8ブロック
の開始位置を見出すために個別のインデックスの使用を
説明している概略図。
の開始位置を見出すために個別のインデックスの使用を
説明している概略図。
【図9】 A、B:それぞれ、アレイベースのデータ構
造及びリストデータ構造で、予測に予測誤差を加算する
ために必要な類別及び併合操作を説明する図。
造及びリストデータ構造で、予測に予測誤差を加算する
ために必要な類別及び併合操作を説明する図。
【図10】 本発明の1実施例による、メモリ圧縮及び
計算効率性を可能にするアレイ構造及びベクトル構造を
含むハイブリッドデータ構造の概略図。
計算効率性を可能にするアレイ構造及びベクトル構造を
含むハイブリッドデータ構造の概略図。
【図11】 A、B、C:本発明の1実施例による、ハ
イブリッドデータ構造の固定サイズアレイの固定サイズ
ブロックの容量及びオーバーフローベクトルを判定する
際に評価される因子を説明しているグラフ。
イブリッドデータ構造の固定サイズアレイの固定サイズ
ブロックの容量及びオーバーフローベクトルを判定する
際に評価される因子を説明しているグラフ。
【図12】 本発明の1実施例による、ビットストリー
ムを復号化するためのメモリ所要量を低減する方法のオ
ペレーションを説明しているフローチャート。
ムを復号化するためのメモリ所要量を低減する方法のオ
ペレーションを説明しているフローチャート。
【図13】 行列乗算を減らすためのブロックアライメ
ントの3つの例を説明している概略図。
ントの3つの例を説明している概略図。
【図14】 完璧にアライメントされたDCTブロックの
半画素補間の概略図。
半画素補間の概略図。
【図15】 本発明の1実施例による、ビデオデータの
処理を向上させる圧縮領域ビデオデコーダの機能ブロッ
クの並べ替えを説明する概略図。
処理を向上させる圧縮領域ビデオデコーダの機能ブロッ
クの並べ替えを説明する概略図。
【図16】 本発明の1実施例による、圧縮領域で逆動
き補償を実行するための方法のオペレーションを示すフ
ローチャート。
き補償を実行するための方法のオペレーションを示すフ
ローチャート。
【図17】 本発明の1実施例による、ハイブリッド因
数分解/整数近似技法の選択的な適用の概略図。
数分解/整数近似技法の選択的な適用の概略図。
【図18】 本発明の1実施例による、メモリ所要量を
最小限にするためにハイブリッドデータ構造を活用する
と共にビットデータストリームを効率的に復号化するた
めにハイブリッド因数分解/整数近似技法を適用するよ
うに構成されたデコーダ回路構成を有する携帯用電子機
器の簡約概略図。
最小限にするためにハイブリッドデータ構造を活用する
と共にビットデータストリームを効率的に復号化するた
めにハイブリッド因数分解/整数近似技法を適用するよ
うに構成されたデコーダ回路構成を有する携帯用電子機
器の簡約概略図。
【図19】 本発明の1実施例による、図18のデコー
ダ回路構成のより詳細な概略図。
ダ回路構成のより詳細な概略図。
100,120 デコーダ
102,122 ビットストリーム
104,124 可変デコーダ
106,132 ランレングスデコーダ
108,126 反量子化
110,134 逆離散コサイン変換
112,128 動き補償
114,130 メモリ
116,136 ディスプレイ
160 半画素補間
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 ヴァスデヴ バスカラン
アメリカ合衆国 カリフォルニア州 サニ
ーベール ノース マーフイ アベニュ
190
Fターム(参考) 5C059 KK08 MA00 MA05 MA23 MC11
MC38 ME05 NN15 NN21 PP04
SS10 SS20 TA61 TC00 UA05
UA33
5J064 AA03 BA09 BB05 BC01 BC02
BC08 BC09 BC14 BC23 BD03
Claims (65)
- 【請求項1】 ビットストリームを復号化するのに要す
るメモリ所要量を低減するための方法であって、 ビデオビットストリームを受け取り、 前記ビットストリームのフレームを変換領域表現に復号
化し、 前記変換領域表現の非零係数を識別し、 固定サイズアレイ及び可変サイズオーバーフローベクト
ルを含むハイブリッドデータ構造をアセンブルし、 前記変換領域表現の非零係数を前記ハイブリッドデータ
構造の中に挿入することからなることを特徴とする方
法。 - 【請求項2】 前記ビデオビットストリームは、低レー
トビデオビットストリームであることを特徴とする請求
項1に記載の方法。 - 【請求項3】 前記ビットストリームのフレームをを変
換領域表現に復号化するオペレーションは、 可変長デコーダ及び反量子化ブロックを通る前記ビット
ストリームを処理することを含むことを特徴とする請求
項1に記載の方法。 - 【請求項4】 前記固定サイズアレイは固定サイズブロ
ックを含むことを特徴とする請求項1に記載の方法。 - 【請求項5】 前記固定サイズブロックは、前記変換領
域表現の8つの非零係数を保持するように構成されてい
ることを特徴とする請求項4に記載の方法。 - 【請求項6】 前記変換領域表現の非零係数をハイブリ
ッドデータ構造に挿入するオペレーションは、 フレームのブロック毎に、固定サイズアレイの中の係数
を可変サイズオーバーフローベクトルの中の対応する係
数に写像することを含むことを特徴とする請求項1に記
載の方法。 - 【請求項7】 ビデオデータを復号化するための方法で
あって、 圧縮ビットストリーム内のビデオデータのフレームを受
け取り、 前記フレームのブロックを圧縮領域で変換領域表現に復
号化し、 ハイブリッドデータ構造を定義し、 前記変換領域表現と関連付けられるデータを前記ハイブ
リッドデータ構造に保持し、 前記変換領域表現と関連付けられるデータに逆動き補償
を前記圧縮領域で実行し、 前記データに逆動き補償を実行した後、表示するために
データを解凍することからなることを特徴とする方法。 - 【請求項8】 前記ハイブリッドデータ構造は、固定サ
イズブロックからなる固定サイズアレイ及び可変サイズ
オーバーフローベクトルを含んでいることを特徴とする
請求項7に記載の方法。 - 【請求項9】 前記変換領域表現と関連付けられるデー
タをハイブリッドデータ構造に保持するオペレーション
は、 前記変換領域表現の非零係数を識別し、 前記固定サイズブロックの容量に達するまで、前記非零
係数を前記ハイブリッドデータ構造の固定サイズアレイ
の固定サイズブロックの中に保持し、 前記固定サイズブロックの容量に達した後は、固定サイ
ズブロックの容量を超える非零係数をオーバーフローベ
クトルに保持することを含むことを特徴とする請求項7
に記載の方法。 - 【請求項10】 前記圧縮ビットストリームは、低レー
トビットストリームであることを特徴とする請求項7に
記載の方法。 - 【請求項11】 前記変換領域表現と関連付けられるた
データに逆動き補償を圧縮領域で実行するオペレーショ
ンは、 前記変換領域表現と関連付けられるデータに、ハイブリ
ッド因数分解及び整数近似技法を適用することを含むこ
とを特徴とする請求項7に記載の方法。 - 【請求項12】 ハイブリッドデータ構造に保持するた
めに低レートビットストリームを並べ替えるためのプロ
グラム命令を有するコンピュータ可読メディアであっ
て、 データフレームの符号化されたブロックと関連付けられ
る非零変換係数を識別するためのプログラム命令と、 前記非零変換係数を固定サイズアレイに配列するための
プログラム命令と、 前記非零変換係数の数量が前記固定サイズアレイの容量
を超えているかどうかを判定するためのプログラム命令
と、 前記固定サイズアレイの容量を超える非零変換係数を可
変サイズオーバーフローベクトルに保持するためのプロ
グラム命令と、 前記非零変換係数を圧縮領域から空間領域に平行移動さ
せる(translate)するためのプログラム命令とを含む
ことを特徴とするコンピュータ可読メディア。 - 【請求項13】 前記固定サイズアレイは、複数の固定
サイズブロックを含むことを特徴とする請求項12に記
載のコンピュータ可読メディア。 - 【請求項14】 前記固定サイズブロックは各々、8つ
の非零変換係数を保持するように構成されていることを
特徴とする請求項13に記載のコンピュータ可読メディ
ア。 - 【請求項15】 データフレームのブロック毎に、前記
固定サイズアレイの係数を、可変サイズオーバーフロー
ベクトルの対応する係数に写像するためのプログラム命
令をさらに含むことを特徴とする請求項12に記載のコ
ンピュータ可読メディア。 - 【請求項16】 ハイブリッド因数分解及び整数近似技
法を用いて前記非零変換係数に逆動き補償を実行するた
めのプログラム命令をさらに含むことを特徴とする請求
項12に記載のコンピュータ可読メディア。 - 【請求項17】 回路であって、 ビデオデコーダ集積回路チップからなり、当該ビデオデ
コーダ集積回路チップは、 ビデオデータのフレームと関連付けられるデータのビッ
トストリームを受け取るための回路構成(circuitry)
と、 前記データのビットストリームを変換領域表現に復号化
するための回路構成と、 前記ビデオデコーダと関連付けられるメモリの中に前記
変換領域表現の非零変換係数をハイブリッドデータ構造
配列にするための回路構成と、 表示するために前記変換領域表現の非零変換係数を解凍
するための回路構成とを含むことを特徴とする回路。 - 【請求項18】 前記ビットストリームは、H.263ビッ
トストリームであることを特徴とする請求項17に記載
の回路。 - 【請求項19】 前記メモリは、前記ビデオデコーダ集
積回路チップとは別になっていることを特徴とする請求
項17に記載の回路。 - 【請求項20】 ハイブリッド因数分解及び整数近似技
法により逆動き補償を実行するための回路構成をさらに
備えることを特徴とする請求項17に記載の回路。 - 【請求項21】 前記メモリは、スタティックランダム
アクセスメモリであることを特徴とする請求項17に記
載の回路。 - 【請求項22】 ビデオ画像を表示するように構成され
た機器であって、 中央処理機構(CPU)と、 ランダムアクセスメモリ(RAM)と、 画像を表示するように構成されたディスプレイ画面と、 ビデオビットストリームを変換領域表現に変換するよう
に構成されたデコーダ回路構成とからなり、当該デコー
ダ回路構成は、変換領域表現の非零変換係数を、デコー
ダ回路構成と関連付けられたメモリの中にハイブリッド
データ構造配列にする能力を有し、前記デコーダ回路構
成は逆動き補償時にハイブリッド因数分解/整数近似技
法を選択的に適用するための回路構成を含み、さらに、 前記CPU、前記RAM、前記ディスプレイ画面、及び前記デ
コーダ回路構成と通信しているバスとからなることを特
徴とする機器。 - 【請求項23】 前記機器は、携帯用電子機器であるこ
とを特徴とする請求項22に記載の機器。 - 【請求項24】 前記携帯用電子機器は、パーソナルデ
ィジタルアシスタント、セルラー電話、ウェブタブレッ
ト、及びポケットパソコンから構成されるグループから
選択されることを特徴とする請求項23に記載の機器。 - 【請求項25】 前記ハイブリッドデータ構造は、複数
の固定サイズブロックを有する固定サイズアレイと、可
変サイズオーバーフローベクトルとを含むことを特徴と
する請求項22に記載の機器。 - 【請求項26】 前記複数の固定サイズブロックは各
々、8つの非零変換係数を保持するように構成されてい
ることを特徴とする請求項25に記載の機器。 - 【請求項27】 8を超える非零変換係数は、前記可変
サイズオーバーフローベクトルの中に保持されることを
特徴とする請求項26に記載の機器。 - 【請求項28】 前記デコーダ回路構成は、前記ハイブ
リッドデータ構造と関連付けられるデータを保持するよ
うに構成されたオンチップメモリを含むことを特徴とす
る請求項22に記載の機器。 - 【請求項29】 前記逆動き補償時にハイブリッド因数
分解/整数近似技法を選択的に適用するための回路構成
は、 ビデオ画像のフレームのブロックを、活動中の動き及び
非活動中の動きのうちの一つと関連付けられると、識別
するための回路構成と、 活動中の動きエリアと関連付けられたブロックには因数
分解技法を適用する一方、非活動中の動きエリアと関連
付けれらたブロックには整数近似技法を適用することに
よって、逆動き補償を実行するための回路構成とを含む
ことを特徴とする請求項22に記載の機器。 - 【請求項30】 前記ビデオビットストリームは、低レ
ートビデオビットストリームであることを特徴とする請
求項22に記載の機器。 - 【請求項31】 逆メモリ補償を実行するための方法で
あって、 ビデオビットストリームを受け取り、 半画素行列及び完全画素行列から構成されるグループか
ら選択された変換行列タイプを識別し、 前記変換行列タイプが半画素行列ならば、 前記半画素行列に対応するビットストリームを復号化す
るために因数分解技法を適用し、 前記変換行列タイプが完全画素行列ならば、 前記完全画素行列に対応するビットストリームを復号化
するために整数近似技法を適用することからなることを
特徴とする方法。 - 【請求項32】 前記ビデオビットストリームは、低レ
ートビデオビットストリームであることを特徴とする請
求項31に記載の方法。 - 【請求項33】 前記半画素行列に対応するビットスト
リームを復号化するために因数分解技法を適用するオペ
レーションは、 前記半画素行列を疎行列の列に因数分解することを含
み、当該疎行列は順序行列及び対角行列を含むことを特
徴とする請求項31に記載の方法。 - 【請求項34】 前記完全画素行列に対応するビットス
トリームを復号化するために整数近似技法を適用するオ
ペレーションは、 前記完全画素行列の各要素を2進数と近似することを含
むことを特徴とする請求項31に記載の方法。 - 【請求項35】 各要素は、一番近い2乗に丸められる
ことを特徴とする請求項34に記載の方法。 - 【請求項36】 ビデオデータを復号化するための方法
であって、 圧縮ビットストリーム内のビデオデータのフレームを受
け取り、 前記フレームのブロックを圧縮領域で変換領域表現に復
号化し、 前記変換領域表現と関連付けられるデータをハイブリッ
ドデータ構造に保持し、 前記圧縮領域で前記変換領域表現と関連付けられるデー
タに逆動き補償を実行することからなり、当該逆動き補
償を実行することは、 前記ビデオデータフレームの一部分と関連付けられる変
換行列のタイプを判定し、 逆動き補償を向上させるためにハイブリッド因数分解及
び整数近似技法を適用することを含むことを特徴とする
方法。 - 【請求項37】 前記圧縮ビットストリームは、H.26
3、H.261、Motion Picture Expert Groupから構成され
るグループから選択された規格と関連付けられることを
特徴とする請求項36に記載の方法。 - 【請求項38】 前記ハイブリッドデータ構造は、固定
サイズアレイと、可変サイズオーバーフローベクトルと
を含むことを特徴とする請求項36に記載の方法。 - 【請求項39】 前記変換行列のタイプは、半画素行列
及び完全画素行列からなるグループから選択されること
を特徴とする請求項36に記載の方法。 - 【請求項40】 前記半画素行列は画像の高度の動き領
域と関連付けられる一方、前記完全画素行列は画像の最
小動き領域と関連付けられることを特徴とする請求項3
9に記載の方法。 - 【請求項41】 前記逆動き補償を向上させるためにハ
イブリッド因数分解及び整数近似技法を適用するオペレ
ーションは、 フレームの高動き領域に対応するブロックと関連付けら
れる行列に因数分解技法を適用し、 フレームの残りのブロックに整数近似技法を適用するこ
とを含むことを特徴とする請求項36に記載の方法。 - 【請求項42】 前記圧縮ビットストリームは低レート
ビットストリームであることを特徴とする請求項36に
記載の方法。 - 【請求項43】 圧縮領域で逆動き補償を実行するため
のプログラム命令を有するコンピュータ可読メディアで
あって、 変換行列を識別するためのプログラム命令と、 前記変換行列が半画素行列及び完全画素行列のうちの一
つであるかどうかを判定するためのプログラム命令と、 半画素行列に対応するビットストリームのブロックを復
号化する因数分解技法を適用するためのプログラム命令
と、 完全画素行列に対応するビットストリームのブロックを
復号化する整数近似技法を適用するためのプログラム命
令とからなることを特徴とするコンピュータ可読メディ
ア。 - 【請求項44】 前記逆動き補償を実行するためのプロ
グラム命令は、圧縮領域で実行されることを特徴とする
請求項43に記載のコンピュータ可読メディア。 - 【請求項45】 動きベクトルデータを抽出するための
プログラム命令をさらに含み、当該動きベクトルデータ
は変換行列を半画素行列及び完全画素行列のうちの一つ
として識別することを特徴とする請求項43に記載のコ
ンピュータ可読メディア。 - 【請求項46】 符号化されたデータフレームブロック
と関連付けられる非零変換係数をハイブリッドデータ構
造に配列するためのプログラム命令をさらに含むことを
特徴とする請求項43に記載のコンピュータ可読メディ
ア。 - 【請求項47】 前記完全画素行列に対応するビットス
トリームのブロックを復号化する整数近似技法を適用す
るためのプログラム命令は、 完全画素行列の各要素を2進数と近似するためのプログ
ラム命令を含むことを特徴とする請求項43に記載のコ
ンピュータ可読メディア。 - 【請求項48】 前記半画素行列に対応するビットスト
リームのブロックを復号化する因数分解技法を適用する
ためのプログラム命令は、 半画素行列を疎行列の列に因数分解するためのプログラ
ム命令を含み、当該疎行列は順序行列及び対角行列を含
むことを特徴とする請求項43に記載のコンピュータ可
読メディア。 - 【請求項49】 回路であって、 ビデオデータを復号化するように構成された集積回路チ
ップからなり、当該集積回路チップは、 ビデオデータのフレームと関連付けられるデータのビッ
トストリームを受け取るための回路構成と、 前記データのビットストリームを変換領域表現に復号化
するための回路構成と、 変換行列のタイプを識別するための回路構成と、 ハイブリッド因数分解及び整数近似技法により逆動き補
償を実行するための回路構成とを含むことを特徴とする
回路。 - 【請求項50】 前記集積回路チップはさらに、 前記変換領域表現の非零変換係数をハイブリッドデータ
構造に配列するための回路構成を有することを特徴とす
る請求項49に記載の回路。 - 【請求項51】 前記ビットストリームは低レートビッ
トストリームであることを特徴とする請求項49に記載
の回路。 - 【請求項52】 前記ハイブリッド因数分解及び整数近
似技法により逆動き補償を実行するための回路構成は、
半画素変換行列には因数分解技法を適用し、完全画素変
換行列には整数近似技法を適用するように構成されてい
ることを特徴とする請求項49に記載の回路。 - 【請求項53】 さらに、前記集積回路チップと通信し
ているメモリを含むことを特徴とする請求項49に記載
の回路。 - 【請求項54】 前記因数分解及び整数近似技法はデー
タに対して圧縮領域で用いられることを特徴とする請求
項49に記載の回路。 - 【請求項55】 ビデオデコーダであって、 入ってくるビットストリームから係数値及び動きベクト
ルデータを抽出するように構成された可変長デコーダ
(VLD)を有し、 前記可変長デコーダと通信している反量子化ブロックを
有し、当該反量子化ブロックは前記係数値をスケーリン
グし直すように構成されており、 前記反量子化ブロックと通信している下流のブランチを
有し、当該下流ブランチは誤差係数を空間領域に復号化
するように構成されており、 前記反量子化ブロックと通信している上流ブランチを有
し、当該上位ブランチは内部変換領域表現を維持するよ
うに構成され、前記上流ブランチは、現ブロックを再構
築するために、前記復号化された誤差係数に加算される
ことができる空間領域出力を生成するように構成されて
いることを特徴とするビデオデコーダ。 - 【請求項56】 前記ビデオデコーダはソフトウェアと
して実行されていることを特徴とする請求項55に記載
のビデオデコーダ。 - 【請求項57】 前記ビデオデコーダはハードウェアと
して実行されていることを特徴とする請求項55に記載
のビデオデコーダ。 - 【請求項58】 前記入ってくるビットストリームは低
レートビットストリームであることを特徴とする請求項
55に記載のビデオデコーダ。 - 【請求項59】 前記上流ブランチはフィードバックル
ープを含み、当該フィードバックループは、フレームバ
ッファ、動き補償ブロック、離散コサイン変換ブロック
を含むことを特徴とする請求項55に記載のビデオデコ
ーダ。 - 【請求項60】 前記下流ブランチは、ランレングス復
号ブロック及び逆補償ブロックを含むことを特徴とする
請求項55に記載のビデオデコーダ。 - 【請求項61】 逆動き補償のオペレーションは圧縮領
域で実行されることを特徴とする請求項55に記載のビ
デオデコーダ。 - 【請求項62】 前記変換領域表現の非零係数は、メモ
リ所要量を減らすために、ビデオデコーダと関連付けら
れるメモリの中にハイブリッドデータ構造で配列される
ことを特徴とする請求項55に記載のビデオデコーダ。 - 【請求項63】 前記ハイブリッドデータ構造は、固定
サイズアレイ及び可変サイズオーバーフローベクトルを
含むことを特徴とする請求項62に記載のビデオデコー
ダ。 - 【請求項64】 前記逆動き補償は、ハイブリッド因数
分解及び整数近似技法を含むことを特徴とする請求項6
1に記載のビデオデコーダ。 - 【請求項65】 前記ハイブリッド因数分解及び整数近
似技法は、半画素変換行列には因数分解技法を適用し、
完全画素変換行列には整数近似技法を適用するように構
成されていることを特徴とする請求項64に記載のビデ
オデコーダ。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37220702P | 2002-04-12 | 2002-04-12 | |
US60/372207 | 2002-04-12 | ||
US10/319747 | 2002-12-13 | ||
US10/319775 | 2002-12-13 | ||
US10/319,747 US20030202603A1 (en) | 2002-04-12 | 2002-12-13 | Method and apparatus for fast inverse motion compensation using factorization and integer approximation |
US10/319,775 US7190724B2 (en) | 2002-04-12 | 2002-12-13 | Method and apparatus for transform domain video processing |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003348598A true JP2003348598A (ja) | 2003-12-05 |
Family
ID=29255295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003107352A Withdrawn JP2003348598A (ja) | 2002-04-12 | 2003-04-11 | メモリ効率のいい圧縮領域ビデオ処理のための且つ因数分解及び整数近似法を用いる高速逆動き補償のための方法並びに装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2003348598A (ja) |
CN (1) | CN1225904C (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006166285A (ja) * | 2004-12-10 | 2006-06-22 | Matsushita Electric Ind Co Ltd | 映像再生装置 |
US7106797B2 (en) | 2001-09-18 | 2006-09-12 | Microsoft Corporation | Block transform and quantization for image and video coding |
US7242713B2 (en) | 2002-05-02 | 2007-07-10 | Microsoft Corporation | 2-D transforms for image and video coding |
US7460993B2 (en) | 2001-12-14 | 2008-12-02 | Microsoft Corporation | Adaptive window-size selection in transform coding |
US7546240B2 (en) | 2005-07-15 | 2009-06-09 | Microsoft Corporation | Coding with improved time resolution for selected segments via adaptive block transformation of a group of samples from a subband decomposition |
US7689052B2 (en) | 2005-10-07 | 2010-03-30 | Microsoft Corporation | Multimedia signal processing using fixed-point approximations of linear transforms |
US7761290B2 (en) | 2007-06-15 | 2010-07-20 | Microsoft Corporation | Flexible frequency and time partitioning in perceptual transform coding of audio |
JP2012505607A (ja) * | 2008-10-08 | 2012-03-01 | クゥアルコム・インコーポレイテッド | ビデオデコーダ中のテクスチャ逆符号化モジュールのバストラフィックを縮小するための方法と装置 |
US8942289B2 (en) | 2007-02-21 | 2015-01-27 | Microsoft Corporation | Computational complexity and precision control in transform-based digital media codec |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7487193B2 (en) | 2004-05-14 | 2009-02-03 | Microsoft Corporation | Fast video codec transform implementations |
KR100580194B1 (ko) * | 2004-06-11 | 2006-05-16 | 삼성전자주식회사 | 비트 정밀도를 낮춘 부화소 움직임 추정방법 및 장치 |
US20070041457A1 (en) * | 2005-08-22 | 2007-02-22 | Tamer Kadous | Method and apparatus for providing antenna diversity in a wireless communication system |
CN107046644B (zh) * | 2010-04-09 | 2020-03-24 | 三菱电机株式会社 | 运动图像编码装置以及运动图像解码装置 |
ES2906869T3 (es) * | 2011-06-16 | 2022-04-20 | Ge Video Compression Llc | Inicialización de contexto en codificación entrópica |
US11449577B2 (en) * | 2019-11-20 | 2022-09-20 | Micron Technology, Inc. | Methods and apparatus for performing video processing matrix operations within a memory array |
-
2003
- 2003-04-11 CN CNB031105912A patent/CN1225904C/zh not_active Expired - Fee Related
- 2003-04-11 JP JP2003107352A patent/JP2003348598A/ja not_active Withdrawn
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7773671B2 (en) | 2001-09-18 | 2010-08-10 | Microsoft Corporation | Block transform and quantization for image and video coding |
US7106797B2 (en) | 2001-09-18 | 2006-09-12 | Microsoft Corporation | Block transform and quantization for image and video coding |
US7881371B2 (en) | 2001-09-18 | 2011-02-01 | Microsoft Corporation | Block transform and quantization for image and video coding |
US7839928B2 (en) | 2001-09-18 | 2010-11-23 | Microsoft Corporation | Block transform and quantization for image and video coding |
US7460993B2 (en) | 2001-12-14 | 2008-12-02 | Microsoft Corporation | Adaptive window-size selection in transform coding |
US7242713B2 (en) | 2002-05-02 | 2007-07-10 | Microsoft Corporation | 2-D transforms for image and video coding |
JP4589709B2 (ja) * | 2004-12-10 | 2010-12-01 | パナソニック株式会社 | 映像再生装置 |
JP2006166285A (ja) * | 2004-12-10 | 2006-06-22 | Matsushita Electric Ind Co Ltd | 映像再生装置 |
US7546240B2 (en) | 2005-07-15 | 2009-06-09 | Microsoft Corporation | Coding with improved time resolution for selected segments via adaptive block transformation of a group of samples from a subband decomposition |
US7689052B2 (en) | 2005-10-07 | 2010-03-30 | Microsoft Corporation | Multimedia signal processing using fixed-point approximations of linear transforms |
US8942289B2 (en) | 2007-02-21 | 2015-01-27 | Microsoft Corporation | Computational complexity and precision control in transform-based digital media codec |
US7761290B2 (en) | 2007-06-15 | 2010-07-20 | Microsoft Corporation | Flexible frequency and time partitioning in perceptual transform coding of audio |
JP2012505607A (ja) * | 2008-10-08 | 2012-03-01 | クゥアルコム・インコーポレイテッド | ビデオデコーダ中のテクスチャ逆符号化モジュールのバストラフィックを縮小するための方法と装置 |
US8576916B2 (en) | 2008-10-08 | 2013-11-05 | Qualcomm Incorporated | Method and apparatus for reducing bus traffic of a texture decoding module in a video decoder |
Also Published As
Publication number | Publication date |
---|---|
CN1225904C (zh) | 2005-11-02 |
CN1452396A (zh) | 2003-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7606304B2 (en) | Method and apparatus for memory efficient compressed domain video processing | |
US10567753B2 (en) | Skip macroblock coding | |
KR100982156B1 (ko) | 역이산 코사인 변환의 계산 중의 에러 감소 | |
KR100578049B1 (ko) | 인터레이스드디지털비디오를위한인트라-매크로블록디씨및에이씨계수예측방법및장치 | |
US6301304B1 (en) | Architecture and method for inverse quantization of discrete cosine transform coefficients in MPEG decoders | |
US20090141808A1 (en) | System and methods for improved video decoding | |
KR19980041898A (ko) | 디지탈 비디오 데이타 스트림의 일시적인 압축 방법 및 탐색 프로세서 | |
JPH1175186A (ja) | スケーリングされた順方向および逆方向の離散コサイン変換と、これを使用するビデオ圧縮伸長システム | |
JP2003348598A (ja) | メモリ効率のいい圧縮領域ビデオ処理のための且つ因数分解及び整数近似法を用いる高速逆動き補償のための方法並びに装置 | |
KR100450939B1 (ko) | 이미지 축소를 위한 스케일-다운 기능을 가지는 압축비디오 복호화기 및 방법 | |
RU2419855C2 (ru) | Снижение ошибок в ходе вычисления обратного дискретного косинусного преобразования | |
US6999511B1 (en) | Dynamically switching quant matrix tables within an MPEG-2 encoder | |
KR100246169B1 (ko) | 다위상 fir 수평 필터를 포함하는 비디오 디코더 | |
KR20010083718A (ko) | 영상 압축 부호화를 위한 변환 및 역변환 방법 및 장치 | |
KR100598093B1 (ko) | 낮은 메모리 대역폭을 갖는 동영상 압축 장치와 그 방법 | |
US20030202603A1 (en) | Method and apparatus for fast inverse motion compensation using factorization and integer approximation | |
US7103102B2 (en) | Bit stream code lookup table for an MPEG-4 code word | |
US7813569B2 (en) | MPEG video decoding method and MPEG video decoder using results from analysis of motion-vector data and DCT coefficients | |
JP2001045493A (ja) | 動画像符号化装置、動画像出力装置、及び記憶媒体 | |
JP3862479B2 (ja) | ビデオダウンコンバージョンにおけるドリフトエラーを防ぐ方法 | |
Molloy et al. | System and architecture optimizations for low power MPEG-1 video decoding | |
KR20040073095A (ko) | Mpeg/jpeg 인코딩 및 디코딩 장치 | |
JPH09261661A (ja) | 2つの基準ピクチャから双方向コード化ピクチャを形成するための方法 | |
Shoham et al. | Introduction to video compression | |
Zuair | Computational analysis of real-time MPEG-2 video compression and its hardware implementation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060704 |