JPH1196138A - 逆コサイン変換方法及び逆コサイン変換器 - Google Patents
逆コサイン変換方法及び逆コサイン変換器Info
- Publication number
- JPH1196138A JPH1196138A JP25384297A JP25384297A JPH1196138A JP H1196138 A JPH1196138 A JP H1196138A JP 25384297 A JP25384297 A JP 25384297A JP 25384297 A JP25384297 A JP 25384297A JP H1196138 A JPH1196138 A JP H1196138A
- Authority
- JP
- Japan
- Prior art keywords
- zero
- cosine transform
- data
- inverse cosine
- inverse
- 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.)
- Pending
Links
Landscapes
- Complex Calculations (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
(57)【要約】
【課題】 逆コサイン変換演算において、その総演算量
の削減を可能とし、高画素数化においても動作周波数の
大幅な増大や処理ブロックの並列化を必要とすることな
く、逆コサイン変換の演算を実現する。 【解決手段】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換演算に際し、係数データの2次元ブロック
内のゼロデータ(空欄)及び非ゼロデータ(★)の位置
を検出し、その位置検出結果に基づいて、2次元ブロッ
クの全ての行(R:Row)或いは列(C:Column)の係
数データがゼロ(空欄)である行或いは列の演算を省略
する。
の削減を可能とし、高画素数化においても動作周波数の
大幅な増大や処理ブロックの並列化を必要とすることな
く、逆コサイン変換の演算を実現する。 【解決手段】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換演算に際し、係数データの2次元ブロック
内のゼロデータ(空欄)及び非ゼロデータ(★)の位置
を検出し、その位置検出結果に基づいて、2次元ブロッ
クの全ての行(R:Row)或いは列(C:Column)の係
数データがゼロ(空欄)である行或いは列の演算を省略
する。
Description
【0001】
【発明の属する技術分野】本発明は、例えばコサイン変
換を利用した画像圧縮伸張システム等のデコーダにて使
用される逆コサイン変換方法及び逆コサイン変換器に関
する。
換を利用した画像圧縮伸張システム等のデコーダにて使
用される逆コサイン変換方法及び逆コサイン変換器に関
する。
【0002】
【従来の技術】画像圧縮などを行うシステムにおいて
は、コサイン変換などの算術演算と可変長符号による圧
縮などの技術が用いられる。これらの算術演算は、必要
な演算をパイプライン的に繋げて処理を行うハードワイ
ヤード方式によって実現するか、或いはディジタルシグ
ナルプロセッサなどによりソフトウエア(プログラム)
での処理により実現される。ハードワイヤード方式は、
種々の演算ブロックを設計するという手間はあるが、各
演算を並列に処理できるため、その動作周波数としては
データのレートと同等でよいというメリットがある。一
方、プログラム方式では単一の演算コアでさまざまな処
理が行えるというメリットがある反面、通常はその動作
周波数はデータのレートより高くなる。なお、画像圧縮
としては国際標準であるMPEG(Moving Picture Ima
ge Coding Experts Group)が知られている。MPEG
とは、国際標準化機構/国際電機標準会議 合同技術委
員会1/専門部会 29(ISO/IEC JTC1/SC29(Internati
onal Organization for Stan-dardization/Internation
al Electrotechnical Commission, Joint Technical Co
mmitee 1/Sub Commitee 29:)の蓄積用動画像符号化の
検討組織の略称であり、MPEG1標準としてISO1
1172が、MPEG2標準としてISO13818が
ある。これらの国際標準において、システム多重化の項
目でISO11172−1及びISO13818−1
が、映像符号化の項目でISO11172−2及びIS
O13818−2が、音声符号化の項目でISO111
72−3及びISO13818−3が、それぞれ標準化
されている。
は、コサイン変換などの算術演算と可変長符号による圧
縮などの技術が用いられる。これらの算術演算は、必要
な演算をパイプライン的に繋げて処理を行うハードワイ
ヤード方式によって実現するか、或いはディジタルシグ
ナルプロセッサなどによりソフトウエア(プログラム)
での処理により実現される。ハードワイヤード方式は、
種々の演算ブロックを設計するという手間はあるが、各
演算を並列に処理できるため、その動作周波数としては
データのレートと同等でよいというメリットがある。一
方、プログラム方式では単一の演算コアでさまざまな処
理が行えるというメリットがある反面、通常はその動作
周波数はデータのレートより高くなる。なお、画像圧縮
としては国際標準であるMPEG(Moving Picture Ima
ge Coding Experts Group)が知られている。MPEG
とは、国際標準化機構/国際電機標準会議 合同技術委
員会1/専門部会 29(ISO/IEC JTC1/SC29(Internati
onal Organization for Stan-dardization/Internation
al Electrotechnical Commission, Joint Technical Co
mmitee 1/Sub Commitee 29:)の蓄積用動画像符号化の
検討組織の略称であり、MPEG1標準としてISO1
1172が、MPEG2標準としてISO13818が
ある。これらの国際標準において、システム多重化の項
目でISO11172−1及びISO13818−1
が、映像符号化の項目でISO11172−2及びIS
O13818−2が、音声符号化の項目でISO111
72−3及びISO13818−3が、それぞれ標準化
されている。
【0003】
【発明が解決しようとする課題】ところで、上記画像圧
縮の国際標準であるMPEGのビデオデコーダにおい
て、例えば処理画像のサイズが増大すると、上述したハ
ードワイヤード方式,プログラム方式の何れの方式にお
いても上記の算術演算の処理能力の増加が必要となる。
例えば、MPEGのメインレベル(Main Level:ML)
からハイレベル(High Level)への変更では4倍から6
倍の演算能力が必要であり、動作周波数の飛躍的向上や
処理ブロックの並列化などが必要となる。特に、MPE
G等の画像圧縮システムで用いられるコサイン変換は、
圧縮処理、伸張処理の中においても最も計算量が多く、
この計算量の削減のため様々な方式が提案されてきてい
る。
縮の国際標準であるMPEGのビデオデコーダにおい
て、例えば処理画像のサイズが増大すると、上述したハ
ードワイヤード方式,プログラム方式の何れの方式にお
いても上記の算術演算の処理能力の増加が必要となる。
例えば、MPEGのメインレベル(Main Level:ML)
からハイレベル(High Level)への変更では4倍から6
倍の演算能力が必要であり、動作周波数の飛躍的向上や
処理ブロックの並列化などが必要となる。特に、MPE
G等の画像圧縮システムで用いられるコサイン変換は、
圧縮処理、伸張処理の中においても最も計算量が多く、
この計算量の削減のため様々な方式が提案されてきてい
る。
【0004】画像圧縮で使用されるコサイン変換は、8
×8画素サイズのブロックでの2次元の変換であり、そ
の逆コサイン変換は行列式によって下記式(1)のよう
に表される。
×8画素サイズのブロックでの2次元の変換であり、そ
の逆コサイン変換は行列式によって下記式(1)のよう
に表される。
【0005】 D=Ft×C×F ・・・(1) この式(1)においてCは8×8サイズのコサイン係数
のマトリックスで、Dは逆コサイン変換された8×8の
画像データのマトリックスである。Fはコサイン変換の
係数マトリックスで、Ftはその転地マトリックスを表
す。また、マトリックスFの右からの掛け算は行の方向
(水平方向)の1次元の逆コサイン変換の演算で、マト
リックスFtの左からの掛け算は列の方向(垂直方向)
の1次元の逆コサイン変換の演算である。
のマトリックスで、Dは逆コサイン変換された8×8の
画像データのマトリックスである。Fはコサイン変換の
係数マトリックスで、Ftはその転地マトリックスを表
す。また、マトリックスFの右からの掛け算は行の方向
(水平方向)の1次元の逆コサイン変換の演算で、マト
リックスFtの左からの掛け算は列の方向(垂直方向)
の1次元の逆コサイン変換の演算である。
【0006】この2次元の逆コサイン変換として上記の
マトリックス演算をそのまま計算すると、8×8のブロ
ック(64画素)当たり、1024回の乗算と896回
の加算が必要となり、1画素当たり16回の乗算+加算
演算が必要となる。このためこの演算を単一の演算コア
を持つディジタルシグナルプロセッサで実現する際には
非常に高速な動作が要求される。
マトリックス演算をそのまま計算すると、8×8のブロ
ック(64画素)当たり、1024回の乗算と896回
の加算が必要となり、1画素当たり16回の乗算+加算
演算が必要となる。このためこの演算を単一の演算コア
を持つディジタルシグナルプロセッサで実現する際には
非常に高速な動作が要求される。
【0007】このようなことから、多くのMPEGのビ
デオデコーダにおいては、逆コサイン変換のブロックを
パイプライン演算処理を行うハードワイヤードロジック
のブロックとして実現している。しかしながらこのよう
な実現方法であっても必要とされる回路は依然大きく、
また動作周波数は画素の周波数と同等のものが必要とな
る。
デオデコーダにおいては、逆コサイン変換のブロックを
パイプライン演算処理を行うハードワイヤードロジック
のブロックとして実現している。しかしながらこのよう
な実現方法であっても必要とされる回路は依然大きく、
また動作周波数は画素の周波数と同等のものが必要とな
る。
【0008】今後の高画素数化においても同様の手法を
適用するとすると、動作周波数の格段の向上や、複数ブ
ロックによる並列処理が必要となる。
適用するとすると、動作周波数の格段の向上や、複数ブ
ロックによる並列処理が必要となる。
【0009】そこで、本発明はこのような状況に鑑みて
なされたものであり、逆コサイン変換演算において、そ
の総演算量の削減を可能とし、今後の高画素数化におい
ても動作周波数の大幅な増大や処理ブロックの並列化を
必要とすることなく、逆コサイン変換の演算を実現する
逆コサイン変換方法及び逆コサイン変換器を提供するこ
とを目的とする。
なされたものであり、逆コサイン変換演算において、そ
の総演算量の削減を可能とし、今後の高画素数化におい
ても動作周波数の大幅な増大や処理ブロックの並列化を
必要とすることなく、逆コサイン変換の演算を実現する
逆コサイン変換方法及び逆コサイン変換器を提供するこ
とを目的とする。
【0010】
【課題を解決するための手段】本発明は、2次元のコサ
イン変換が施された2次元ブロックの係数データに対し
て逆コサイン変換を行う逆コサイン変換方法及び逆コサ
イン変換器であり、係数データの2次元ブロック内のゼ
ロデータ及び非ゼロデータの位置を検出し、その位置検
出結果に基づいて、2次元ブロックの全ての行或いは列
の係数データがゼロである行或いは列の演算をスキップ
(省略)することにより、上述した課題を解決する。
イン変換が施された2次元ブロックの係数データに対し
て逆コサイン変換を行う逆コサイン変換方法及び逆コサ
イン変換器であり、係数データの2次元ブロック内のゼ
ロデータ及び非ゼロデータの位置を検出し、その位置検
出結果に基づいて、2次元ブロックの全ての行或いは列
の係数データがゼロである行或いは列の演算をスキップ
(省略)することにより、上述した課題を解決する。
【0011】また、本発明は、上記2次元ブロック内の
ゼロデータ及び非ゼロデータの位置検出結果に基づい
て、2次元ブロックの各行或いは各列においてその値が
ゼロである係数データに係わる演算をスキップ(省略)
することにより、上述した課題を解決する。
ゼロデータ及び非ゼロデータの位置検出結果に基づい
て、2次元ブロックの各行或いは各列においてその値が
ゼロである係数データに係わる演算をスキップ(省略)
することにより、上述した課題を解決する。
【0012】更に、本発明は、上記2次元ブロック内の
ゼロデータ及び非ゼロデータの位置検出結果に基づい
て、非ゼロデータの位置パターンに依存して、行に係わ
る変換或いは列に係わる変換の何れかを選択的に先に行
うことにより、上述した課題を解決する。
ゼロデータ及び非ゼロデータの位置検出結果に基づい
て、非ゼロデータの位置パターンに依存して、行に係わ
る変換或いは列に係わる変換の何れかを選択的に先に行
うことにより、上述した課題を解決する。
【0013】すなわち、画像圧縮においてコサイン変換
が有効であるというのは、画像データにおいて隣接画像
同士の相関が強く、コサイン変換後のデータにおいて低
周波数領域に値が集中し、高周波数量域では値とし
て、”0”が多いということによる。コサイン変換の
後、量子化によりさらに高周波数成分を”0”として省
き、ゼロランレングス、可変長符号により圧縮を実現す
る。これに対して、逆コサイン変換においても、”0”
の出現頻度は高くなっている。したがって、本発明はこ
の性質を利用して、第1には逆コサイン変換演算におい
て”0”データによって構成される行或いは列の演算を
省くことにより、逆コサイン変換器での総演算量を削減
する。第2には”0”の値を持つデータに係わる演算を
省いてこのブロックでの総演算量を削減する。すなわち
本発明は、データ依存型の処理を基本思想としており、
必要のない演算は極力省くことにより、演算量を削減す
る。このように、データ依存の方式であるため、データ
の内容(”0”か否か)についての判定を行う付加機能
が必要となる。
が有効であるというのは、画像データにおいて隣接画像
同士の相関が強く、コサイン変換後のデータにおいて低
周波数領域に値が集中し、高周波数量域では値とし
て、”0”が多いということによる。コサイン変換の
後、量子化によりさらに高周波数成分を”0”として省
き、ゼロランレングス、可変長符号により圧縮を実現す
る。これに対して、逆コサイン変換においても、”0”
の出現頻度は高くなっている。したがって、本発明はこ
の性質を利用して、第1には逆コサイン変換演算におい
て”0”データによって構成される行或いは列の演算を
省くことにより、逆コサイン変換器での総演算量を削減
する。第2には”0”の値を持つデータに係わる演算を
省いてこのブロックでの総演算量を削減する。すなわち
本発明は、データ依存型の処理を基本思想としており、
必要のない演算は極力省くことにより、演算量を削減す
る。このように、データ依存の方式であるため、データ
の内容(”0”か否か)についての判定を行う付加機能
が必要となる。
【0014】上述のようなことから、本発明によれば、
例えばMPEGデコーダの中で大きな領域を占める逆コ
サイン変換器において、動作周波数を大幅に上げること
もなく、また回路を複数個用意して並列に処理を行うな
どの必要性がなく、高画素数化が可能となる。
例えばMPEGデコーダの中で大きな領域を占める逆コ
サイン変換器において、動作周波数を大幅に上げること
もなく、また回路を複数個用意して並列に処理を行うな
どの必要性がなく、高画素数化が可能となる。
【0015】
【発明の実施の形態】以下、本発明の好ましい実施の形
態について、図面を参照しながら説明する。
態について、図面を参照しながら説明する。
【0016】本発明実施の形態に係る逆コサイン変換方
法及び逆コサイン変換器は、コサイン変換を利用した画
像圧縮伸張システムのデコーダにて使用されるものであ
る。なお、本実施の形態の説明ではMPEGのビデオデ
コーダを例に挙げて説明を行っていくが、本発明の適応
はMPEGに限ることなく、コサイン変換を用いる他の
圧縮方式(例えばいわゆるJPEG(Joint Photograph
ic Coding Experts Group)など)にも使用できる。ま
た同様に音声圧縮処理などへの適応も可能である。
法及び逆コサイン変換器は、コサイン変換を利用した画
像圧縮伸張システムのデコーダにて使用されるものであ
る。なお、本実施の形態の説明ではMPEGのビデオデ
コーダを例に挙げて説明を行っていくが、本発明の適応
はMPEGに限ることなく、コサイン変換を用いる他の
圧縮方式(例えばいわゆるJPEG(Joint Photograph
ic Coding Experts Group)など)にも使用できる。ま
た同様に音声圧縮処理などへの適応も可能である。
【0017】図1〜図3には、逆コサイン変換器に入力
される8×8画素のブロックのデータ(係数若しくは成
分データ)のパターン例を示す。これらの図に示す8×
8のマトリックスにおいて、各図中”★”はデータが非
ゼロ、空欄はそのデータが”0”であることを示す。ま
た、左上端がDC成分で、右へ行くほど及び下へ行くほ
ど高周波数の成分となる。さらに各図中”C”は縦の列
(Column)を示し、”R”は横の列(すなわち行:Ro
w)を示し、これら”C”及び”R”に付随する番号は
行および列の番号(”0”が低周波数側、”7”が高周
波数側)を示す。
される8×8画素のブロックのデータ(係数若しくは成
分データ)のパターン例を示す。これらの図に示す8×
8のマトリックスにおいて、各図中”★”はデータが非
ゼロ、空欄はそのデータが”0”であることを示す。ま
た、左上端がDC成分で、右へ行くほど及び下へ行くほ
ど高周波数の成分となる。さらに各図中”C”は縦の列
(Column)を示し、”R”は横の列(すなわち行:Ro
w)を示し、これら”C”及び”R”に付随する番号は
行および列の番号(”0”が低周波数側、”7”が高周
波数側)を示す。
【0018】図1は1個のDC成分のみをもつ場合で、
C0/R0のみが非ゼロ値でそれ以外のすべての成分に
おいて値はゼロ(図では空欄となっている)となってい
る。このようなブロックでは逆量子化演算を行うまでも
なくブロック全体において同一の値となる。
C0/R0のみが非ゼロ値でそれ以外のすべての成分に
おいて値はゼロ(図では空欄となっている)となってい
る。このようなブロックでは逆量子化演算を行うまでも
なくブロック全体において同一の値となる。
【0019】図2の(a)には、低周波数成分の6個が
非ゼロでこれ以外の成分はすべてゼロとなっている場合
を示している。前記式(1)でこのような入力データに
対する計算を行う場合において、先ず水平方向(Row)
の計算を実行するときには、R0からR2の3列につい
ての計算のみを実行すれば良い。R3からR7では全係
数がゼロとなっており、計算するまでもなく結果が得ら
れる。この結果、一般には図2の(b)に示すように上
3列の全データが非ゼロとなる。この水平方向に引き続
き、垂直方向の逆コサイン変換を行う。この場合には行
と列の総計算数(本数)は、 (3+8)/(8+8)=11/16 =0.6875 に削減される。図2の(a)のR0においては3つの要
素のみが非ゼロであるため,マトリクス計算における掛
け算数は実際には3/8にすることができる。同様にR
1では2/8、R2では1/8の削減となる。一方、垂
直方向の計算では、上側の3つのデータのみが非ゼロと
なるため、各C0〜C7において3/8の乗算回数で計
算が終了する。これらすべての効果を考慮すると総計算
量(乗算数で考えて)は、本発明を適用しない場合の約
0.23倍となり式(1)をそのまま計算した場合に比
較して1/4以下への削減となる。
非ゼロでこれ以外の成分はすべてゼロとなっている場合
を示している。前記式(1)でこのような入力データに
対する計算を行う場合において、先ず水平方向(Row)
の計算を実行するときには、R0からR2の3列につい
ての計算のみを実行すれば良い。R3からR7では全係
数がゼロとなっており、計算するまでもなく結果が得ら
れる。この結果、一般には図2の(b)に示すように上
3列の全データが非ゼロとなる。この水平方向に引き続
き、垂直方向の逆コサイン変換を行う。この場合には行
と列の総計算数(本数)は、 (3+8)/(8+8)=11/16 =0.6875 に削減される。図2の(a)のR0においては3つの要
素のみが非ゼロであるため,マトリクス計算における掛
け算数は実際には3/8にすることができる。同様にR
1では2/8、R2では1/8の削減となる。一方、垂
直方向の計算では、上側の3つのデータのみが非ゼロと
なるため、各C0〜C7において3/8の乗算回数で計
算が終了する。これらすべての効果を考慮すると総計算
量(乗算数で考えて)は、本発明を適用しない場合の約
0.23倍となり式(1)をそのまま計算した場合に比
較して1/4以下への削減となる。
【0020】図3の(a)は他の例で、垂直方向の成分
が高く、係数がC0において多く存在する場合の例であ
る。非ゼロのデータの総数は11である。この場合、図
2で説明した場合と同様に、先ず水平方向の逆コサイン
変換を行うと図3の(b)のように8×8の全ブロック
にデータが展開され、次の垂直方向の演算では全演算を
行う必要がある。式(1)をそのまま計算した場合に対
する、当該方法による演算量の削減は、上記と同様の計
算を行うと本発明を適用しない場合の0.59倍とな
る。一方、図3の(a)の入力に対して、先ず始めに垂
直方向の逆コサイン変換を行うと、図3の(c)のよう
にC0〜C2の3つの列にのみデータが展開され、それ
以外はゼロとなる。この後、水平方向の逆コサイン変換
を行う場合の総演算(乗算)量は本発明を適用しない場
合の0.27倍となり、約1/4に削減される。このよ
うに入力マトリックスの非ゼロデータの位置のパターン
によって水平或いは垂直方向の演算のどちらかを選択的
に先行して行うことで、さらに総計算量が削減される。
が高く、係数がC0において多く存在する場合の例であ
る。非ゼロのデータの総数は11である。この場合、図
2で説明した場合と同様に、先ず水平方向の逆コサイン
変換を行うと図3の(b)のように8×8の全ブロック
にデータが展開され、次の垂直方向の演算では全演算を
行う必要がある。式(1)をそのまま計算した場合に対
する、当該方法による演算量の削減は、上記と同様の計
算を行うと本発明を適用しない場合の0.59倍とな
る。一方、図3の(a)の入力に対して、先ず始めに垂
直方向の逆コサイン変換を行うと、図3の(c)のよう
にC0〜C2の3つの列にのみデータが展開され、それ
以外はゼロとなる。この後、水平方向の逆コサイン変換
を行う場合の総演算(乗算)量は本発明を適用しない場
合の0.27倍となり、約1/4に削減される。このよ
うに入力マトリックスの非ゼロデータの位置のパターン
によって水平或いは垂直方向の演算のどちらかを選択的
に先行して行うことで、さらに総計算量が削減される。
【0021】上述したように、本発明の実施の形態のア
ルゴリズムでは、入力されたマトリックスの非ゼロのデ
ータ数が増加するに従って、総計算量も増大していく。
また、本発明の実施の形態を適用するシステムにおいて
は、コサイン変換器への入力マトリックス(コサイン係
数マトリックスと呼ぶ)の統計的性質を利用している。
有効な画像圧縮が行われている際には、このコサイン係
数での”0”の出現頻度が十分高く、本発明実施の形態
による削減が有効である。
ルゴリズムでは、入力されたマトリックスの非ゼロのデ
ータ数が増加するに従って、総計算量も増大していく。
また、本発明の実施の形態を適用するシステムにおいて
は、コサイン変換器への入力マトリックス(コサイン係
数マトリックスと呼ぶ)の統計的性質を利用している。
有効な画像圧縮が行われている際には、このコサイン係
数での”0”の出現頻度が十分高く、本発明実施の形態
による削減が有効である。
【0022】また、本発明実施の形態では、ある決めら
れた時間内に必要なすべての計算が終了すれば良く、短
時間での処理能力より上記期間内の平均としての処理能
力が重量という考えに基づいている。例えば、MPEG
のビデオのデコーディングにおいては、1フレーム期間
内に1フレーム乃至2フィールドのデコーディングに係
わる演算が終了すれば良く、瞬間的な、短時間内での処
理能力(単位時間当たりの処理ブロック数)が揺らぎを
持っていても、本発明は問題なく実現することが可能で
ある。ただし、瞬間的な処理能力の高さは、MPEGの
Bピクチャでのオンザフライ処理などでは有効であり、
これらの観点からも最大の演算能力は決定されるべきで
ある。本発明を適用する際、どの程度の最大演算能力を
持つかは適用するシステムでの動作品質、信頼性をもと
に決定され、より高い品質が要求する場合には演算能力
の増加によるマージンの確保や、万一の演算能力不足に
対するコンシールメント機能などが付加される。
れた時間内に必要なすべての計算が終了すれば良く、短
時間での処理能力より上記期間内の平均としての処理能
力が重量という考えに基づいている。例えば、MPEG
のビデオのデコーディングにおいては、1フレーム期間
内に1フレーム乃至2フィールドのデコーディングに係
わる演算が終了すれば良く、瞬間的な、短時間内での処
理能力(単位時間当たりの処理ブロック数)が揺らぎを
持っていても、本発明は問題なく実現することが可能で
ある。ただし、瞬間的な処理能力の高さは、MPEGの
Bピクチャでのオンザフライ処理などでは有効であり、
これらの観点からも最大の演算能力は決定されるべきで
ある。本発明を適用する際、どの程度の最大演算能力を
持つかは適用するシステムでの動作品質、信頼性をもと
に決定され、より高い品質が要求する場合には演算能力
の増加によるマージンの確保や、万一の演算能力不足に
対するコンシールメント機能などが付加される。
【0023】上記の説明では、式(1)の計算での演算
量の削減の場合について述べたが、本発明はいかなる逆
コサイン変換の演算アルゴリズムにおいても適用できる
もので、上記のマトリックス演算に限るものではない。
量の削減の場合について述べたが、本発明はいかなる逆
コサイン変換の演算アルゴリズムにおいても適用できる
もので、上記のマトリックス演算に限るものではない。
【0024】次に、図4には、本発明の実施の形態の具
体的な構成例を示す。なお、この図4の例では、逆コサ
イン変換の演算ブロック11を一つ或いは複数個もつデ
ィジタルシグナルプロセッサによって実現した例を示し
ている。
体的な構成例を示す。なお、この図4の例では、逆コサ
イン変換の演算ブロック11を一つ或いは複数個もつデ
ィジタルシグナルプロセッサによって実現した例を示し
ている。
【0025】この図4において、図示しない前段の構成
(逆量子化器)から供給されたデータ1は、ダブルバッ
ファとなっているブロックバッファ2によって一旦バッ
ファリングされる。このブロックバッファ2からの出力
であるコサイン係数4は、逆コサイン変換器3のレジス
タファイル10に送られる。
(逆量子化器)から供給されたデータ1は、ダブルバッ
ファとなっているブロックバッファ2によって一旦バッ
ファリングされる。このブロックバッファ2からの出力
であるコサイン係数4は、逆コサイン変換器3のレジス
タファイル10に送られる。
【0026】また、ブロックバッファ2にはゼロデータ
検出回路5が付随しており、このゼロデータ検出回路5
では、ブロックバッファ2内のゼロデータ、非ゼロデー
タの値の位置を検出する。すなわち例えば8×8ブロッ
クの場合、当該ゼロデータ検出回路5では、上記ブロッ
クバッファ2内のゼロデータ、非ゼロデータの値の位置
が64ビット(1ビット/1コサイン係数)のデータと
して検出され、逆コサイン変換器3内のパターン変換回
路6に送られる。
検出回路5が付随しており、このゼロデータ検出回路5
では、ブロックバッファ2内のゼロデータ、非ゼロデー
タの値の位置を検出する。すなわち例えば8×8ブロッ
クの場合、当該ゼロデータ検出回路5では、上記ブロッ
クバッファ2内のゼロデータ、非ゼロデータの値の位置
が64ビット(1ビット/1コサイン係数)のデータと
して検出され、逆コサイン変換器3内のパターン変換回
路6に送られる。
【0027】パターン変換回路6では、ゼロデータ検出
回路5にて検出されたゼロデータ、非ゼロデータの分布
に依存して演算を変化できるようにパターンが変換され
る。すなわち、逆コサイン変換器3の動作のフローコン
トロールに使用するコードに変換される。
回路5にて検出されたゼロデータ、非ゼロデータの分布
に依存して演算を変化できるようにパターンが変換され
る。すなわち、逆コサイン変換器3の動作のフローコン
トロールに使用するコードに変換される。
【0028】制御回路9では、このコードをみて、演算
する行/列の選択、水平、垂直演算の順番、ゼロデータ
に係わる演算のスキップ(省略)などの制御が行われ
る。その他、図示しないプログラムメモリからの命令7
が命令デコーダ8にてデコードされた結果が入力され、
これらによって逆コサイン変換器3の動作シーケンスが
コントロールされる。
する行/列の選択、水平、垂直演算の順番、ゼロデータ
に係わる演算のスキップ(省略)などの制御が行われ
る。その他、図示しないプログラムメモリからの命令7
が命令デコーダ8にてデコードされた結果が入力され、
これらによって逆コサイン変換器3の動作シーケンスが
コントロールされる。
【0029】上記レジスタファイル10は多ポートに構
成されており、このため当該レジスタファイル10から
演算ブロック11への読み出し/書き込みは並列に動作
する。
成されており、このため当該レジスタファイル10から
演算ブロック11への読み出し/書き込みは並列に動作
する。
【0030】演算ブロック11は、乗算器や加算器など
からなる演算コア12を有しており、前記逆コサイン変
換のための演算を行う。
からなる演算コア12を有しており、前記逆コサイン変
換のための演算を行う。
【0031】上記演算により得られたデータ13が復元
された8×8の画素データとなり、後段の構成に送られ
ることになる。
された8×8の画素データとなり、後段の構成に送られ
ることになる。
【0032】上述したように、本発明の実施の形態によ
れば、演算量の多い逆コサイン変換器において総演算量
の削減を実現することができ、演算ブロックの動作周波
数の低減や、他の処理とのハードウェア共用化が実現で
きる。また、MPEGのハイレベル(HL)など高画素
数への適用においては、メインレベル(ML)のシステ
ムに比較してその動作周波数を格段に高くする必要がな
くシステムを実現することが可能である。
れば、演算量の多い逆コサイン変換器において総演算量
の削減を実現することができ、演算ブロックの動作周波
数の低減や、他の処理とのハードウェア共用化が実現で
きる。また、MPEGのハイレベル(HL)など高画素
数への適用においては、メインレベル(ML)のシステ
ムに比較してその動作周波数を格段に高くする必要がな
くシステムを実現することが可能である。
【0033】
【発明の効果】以上の説明で明らかなように、本発明に
おいては、係数データの2次元ブロック内のゼロデータ
及び非ゼロデータの位置を検出し、その位置検出結果に
基づいて、2次元ブロックの全ての行或いは列の係数デ
ータがゼロである行或いは列の演算をスキップすること
により、逆コサイン変換演算時に、その総演算量の削減
を可能とし、今後の高画素数化においても動作周波数の
大幅な増大や処理ブロックの並列化を必要とすることな
く、逆コサイン変換の演算を実現できる。
おいては、係数データの2次元ブロック内のゼロデータ
及び非ゼロデータの位置を検出し、その位置検出結果に
基づいて、2次元ブロックの全ての行或いは列の係数デ
ータがゼロである行或いは列の演算をスキップすること
により、逆コサイン変換演算時に、その総演算量の削減
を可能とし、今後の高画素数化においても動作周波数の
大幅な増大や処理ブロックの並列化を必要とすることな
く、逆コサイン変換の演算を実現できる。
【0034】また、本発明においては、ゼロデータ及び
非ゼロデータの位置検出結果に基づいて、2次元ブロッ
クの各行或いは各列においてその値がゼロである係数デ
ータに係わる演算をスキップすることにより、逆コサイ
ン変換演算時に、その総演算量の削減を可能とし、今後
の高画素数化においても動作周波数の大幅な増大や処理
ブロックの並列化を必要とすることなく、逆コサイン変
換の演算を実現できる。
非ゼロデータの位置検出結果に基づいて、2次元ブロッ
クの各行或いは各列においてその値がゼロである係数デ
ータに係わる演算をスキップすることにより、逆コサイ
ン変換演算時に、その総演算量の削減を可能とし、今後
の高画素数化においても動作周波数の大幅な増大や処理
ブロックの並列化を必要とすることなく、逆コサイン変
換の演算を実現できる。
【0035】さらに、本発明においては、ゼロデータ及
び非ゼロデータの位置検出結果に基づいて、非ゼロデー
タの位置パターンに依存して、行に係わる変換或いは列
に係わる変換の何れかを選択的に先に行うことにより、
逆コサイン変換演算時に、その総演算量の削減を可能と
し、今後の高画素数化においても動作周波数の大幅な増
大や処理ブロックの並列化を必要とすることなく、逆コ
サイン変換の演算を実現できる。
び非ゼロデータの位置検出結果に基づいて、非ゼロデー
タの位置パターンに依存して、行に係わる変換或いは列
に係わる変換の何れかを選択的に先に行うことにより、
逆コサイン変換演算時に、その総演算量の削減を可能と
し、今後の高画素数化においても動作周波数の大幅な増
大や処理ブロックの並列化を必要とすることなく、逆コ
サイン変換の演算を実現できる。
【0036】すなわち本発明によれば、演算量の多い逆
コサイン変換器において総演算量の削減を実現すること
ができ、演算ブロックの動作周波数の低減や、他の処理
とのハードウェア共用化が実現できる。また、MPEG
のハイレベル(HL)など高画素数への適用において
は、メインレベル(ML)のシステムに比較してその動
作周波数を格段に高くする必要がなくシステムを実現す
ることが可能である。
コサイン変換器において総演算量の削減を実現すること
ができ、演算ブロックの動作周波数の低減や、他の処理
とのハードウェア共用化が実現できる。また、MPEG
のハイレベル(HL)など高画素数への適用において
は、メインレベル(ML)のシステムに比較してその動
作周波数を格段に高くする必要がなくシステムを実現す
ることが可能である。
【図1】8×8のコサイン係数のマトリックス例であ
り、DC成分のみが非ゼロである場合を示す図である。
り、DC成分のみが非ゼロである場合を示す図である。
【図2】6個の成分が非ゼロである8×8のコサイン係
数のマトリックス例と、水平方向の逆コサイン変換の計
算を行った場合の非ゼロ係数の分布例を示す図である。
数のマトリックス例と、水平方向の逆コサイン変換の計
算を行った場合の非ゼロ係数の分布例を示す図である。
【図3】垂直方向に高周波数成分が広がっている8×8
のコサイン係数のマトリックス例と、水平方向の逆コサ
イン変換を行った場合のコサイン変換の中間結果での非
ゼロ係数の分布例、及び垂直方向の逆コサイン変換を行
った場合の非ゼロ係数の分布例を示す図である。
のコサイン係数のマトリックス例と、水平方向の逆コサ
イン変換を行った場合のコサイン変換の中間結果での非
ゼロ係数の分布例、及び垂直方向の逆コサイン変換を行
った場合の非ゼロ係数の分布例を示す図である。
【図4】本発明の実施の形態の構成例を示すブロック回
路図である。
路図である。
2 ブロックバッファ、 3 逆コサイン変換器、 5
ゼロデータ検出回路、 6 パターン変換回路、 8
命令デコーダ、 9 制御回路、 10 レジスタフ
ァイル、 11 演算ブロック、 12 演算コア
ゼロデータ検出回路、 6 パターン変換回路、 8
命令デコーダ、 9 制御回路、 10 レジスタフ
ァイル、 11 演算ブロック、 12 演算コア
Claims (6)
- 【請求項1】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換方法において、 上記係数データの2次元ブロック内のゼロデータ及び非
ゼロデータの位置を検出し、 上記ゼロデータ及び非ゼロデータの位置検出結果に基づ
いて、上記2次元ブロックの全ての行或いは列の係数デ
ータがゼロである行或いは列の演算をスキップすること
を特徴とする逆コサイン変換方法。 - 【請求項2】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換方法において、 上記係数データの2次元ブロック内のゼロデータ及び非
ゼロデータの位置を検出し、 上記ゼロデータ及び非ゼロデータの位置検出結果に基づ
いて、上記2次元ブロックの各行或いは各列においてそ
の値がゼロである係数データに係わる演算をスキップす
ることを特徴とする逆コサイン変換方法。 - 【請求項3】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換方法において、 上記係数データの2次元ブロック内のゼロデータ及び非
ゼロデータの位置を検出し、 上記ゼロデータ及び非ゼロデータの位置検出結果に基づ
いて、非ゼロデータの位置パターンに依存して、行に係
わる変換或いは列に係わる変換の何れかを選択的に先に
行うことを特徴とする逆コサイン変換方法。 - 【請求項4】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換器において、 上記係数データの2次元ブロック内のゼロデータ及び非
ゼロデータの位置を検出するゼロ/非ゼロ検出手段と、 上記ゼロ/非ゼロ検出器からの位置検出結果に基づい
て、上記2次元ブロックの全ての行或いは列の係数デー
タがゼロである行或いは列の演算をスキップする演算手
段とを有することを特徴とする逆コサイン変換器。 - 【請求項5】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換器において、 上記係数データの2次元ブロック内のゼロデータ及び非
ゼロデータの位置を検出するゼロ/非ゼロ検出手段と、 上記ゼロ/非ゼロ検出器からの位置検出結果に基づい
て、上記2次元ブロックの各行或いは各列においてその
値がゼロである係数データに係わる演算をスキップする
演算手段とを有することを特徴とする逆コサイン変換
器。 - 【請求項6】 2次元のコサイン変換が施された2次元
ブロックの係数データに対して逆コサイン変換を行う逆
コサイン変換器において、 上記係数データの2次元ブロック内のゼロデータ及び非
ゼロデータの位置を検出するゼロ/非ゼロ検出手段と、 上記ゼロ/非ゼロ検出器からの位置検出結果に基づい
て、非ゼロデータの位置パターンに依存して、行に係わ
る変換或いは列に係わる変換の何れかを選択的に先に行
う演算手段とを有することを特徴とする逆コサイン変換
器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25384297A JPH1196138A (ja) | 1997-09-18 | 1997-09-18 | 逆コサイン変換方法及び逆コサイン変換器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25384297A JPH1196138A (ja) | 1997-09-18 | 1997-09-18 | 逆コサイン変換方法及び逆コサイン変換器 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1196138A true JPH1196138A (ja) | 1999-04-09 |
Family
ID=17256900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25384297A Pending JPH1196138A (ja) | 1997-09-18 | 1997-09-18 | 逆コサイン変換方法及び逆コサイン変換器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1196138A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005062622A1 (ja) * | 2003-12-15 | 2005-07-07 | Sony Corporation | 画像復号装置及び画像復号方法並びに画像復号プログラム |
US6987811B2 (en) | 2000-06-02 | 2006-01-17 | Matsushita Electric Industrial Co., Ltd. | Image processor and image processing method |
US20080285875A1 (en) * | 2007-05-18 | 2008-11-20 | Sony Corporation | Image processing apparatus, method thereof, and program |
US7884742B2 (en) | 2006-06-08 | 2011-02-08 | Nvidia Corporation | System and method for efficient compression of digital data |
US8599841B1 (en) | 2006-03-28 | 2013-12-03 | Nvidia Corporation | Multi-format bitstream decoding engine |
US8873625B2 (en) | 2007-07-18 | 2014-10-28 | Nvidia Corporation | Enhanced compression in representing non-frame-edge blocks of image frames |
US9118927B2 (en) | 2007-06-13 | 2015-08-25 | Nvidia Corporation | Sub-pixel interpolation and its application in motion compensated encoding of a video signal |
US9330060B1 (en) | 2003-04-15 | 2016-05-03 | Nvidia Corporation | Method and device for encoding and decoding video image data |
-
1997
- 1997-09-18 JP JP25384297A patent/JPH1196138A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6987811B2 (en) | 2000-06-02 | 2006-01-17 | Matsushita Electric Industrial Co., Ltd. | Image processor and image processing method |
US9330060B1 (en) | 2003-04-15 | 2016-05-03 | Nvidia Corporation | Method and device for encoding and decoding video image data |
WO2005062622A1 (ja) * | 2003-12-15 | 2005-07-07 | Sony Corporation | 画像復号装置及び画像復号方法並びに画像復号プログラム |
US20060291556A1 (en) * | 2003-12-15 | 2006-12-28 | Shinji Watanabe | Image decoding device, image decoding method, and image decoding program |
US8249147B2 (en) | 2003-12-15 | 2012-08-21 | Sony Corporation | Image decoding device, image decoding method, and image decoding program |
US8599841B1 (en) | 2006-03-28 | 2013-12-03 | Nvidia Corporation | Multi-format bitstream decoding engine |
US7884742B2 (en) | 2006-06-08 | 2011-02-08 | Nvidia Corporation | System and method for efficient compression of digital data |
US20080285875A1 (en) * | 2007-05-18 | 2008-11-20 | Sony Corporation | Image processing apparatus, method thereof, and program |
US9118927B2 (en) | 2007-06-13 | 2015-08-25 | Nvidia Corporation | Sub-pixel interpolation and its application in motion compensated encoding of a video signal |
US8873625B2 (en) | 2007-07-18 | 2014-10-28 | Nvidia Corporation | Enhanced compression in representing non-frame-edge blocks of image frames |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5818532A (en) | Micro architecture of video core for MPEG-2 decoder | |
JP4554600B2 (ja) | グラフィックス処理ユニットを使用してビデオ復号化を加速すること | |
US6385248B1 (en) | Methods and apparatus for processing luminance and chrominance image data | |
US20090110077A1 (en) | Image coding device, image coding method, and image coding integrated circuit | |
JPH08275160A (ja) | 離散余弦変換方法 | |
JPH08280007A (ja) | プロセッサ及び転送方法 | |
JPH05268590A (ja) | 動画像符号化復号化回路 | |
US20100321579A1 (en) | Front End Processor with Extendable Data Path | |
JP2004521572A (ja) | 拡張可能なmpeg−2復号器 | |
JP2002515705A (ja) | ビデオデコーダのコストを低減させる方法および装置 | |
CA2192532C (en) | Hybrid software/hardware video decoder for personal computer | |
JPH08275149A (ja) | データ符号化方法 | |
JP2888288B2 (ja) | 画像符号化装置 | |
US7076105B2 (en) | Circuit and method for performing a two-dimensional transform during the processing of an image | |
JPH1196138A (ja) | 逆コサイン変換方法及び逆コサイン変換器 | |
JP3123496B2 (ja) | 動き補償処理方法及びシステム並びにその処理プログラムを記録した記録媒体 | |
Araki et al. | Video DSP architecture for MPEG2 codec | |
US5748514A (en) | Forward and inverse discrete cosine transform circuits | |
US7330595B2 (en) | System and method for video data compression | |
JP2888292B2 (ja) | 2次元逆離散コサイン変換(idct)装置 | |
JP2001145107A (ja) | Dctを用いた信号処理装置及画像圧縮装置 | |
JP2000165861A (ja) | 動画像復号装置 | |
JPH10234036A (ja) | バッファに記憶するデジタル画像データ圧縮のためのツリー検索ベクトル量子化方法、及びメモリ必要量を減少させたmpegデコーダ及びsqtv処理装置 | |
US5978033A (en) | Motion picture encoder | |
JPH08307868A (ja) | 動画像復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040831 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041029 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050614 |