JP2004134889A - 画像信号変換装置及び画像信号変換方法 - Google Patents
画像信号変換装置及び画像信号変換方法 Download PDFInfo
- Publication number
- JP2004134889A JP2004134889A JP2002295291A JP2002295291A JP2004134889A JP 2004134889 A JP2004134889 A JP 2004134889A JP 2002295291 A JP2002295291 A JP 2002295291A JP 2002295291 A JP2002295291 A JP 2002295291A JP 2004134889 A JP2004134889 A JP 2004134889A
- Authority
- JP
- Japan
- Prior art keywords
- block
- prediction
- reference data
- macroblock
- data
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【課題】予測処理時に画像データのDCT係数を保持するためのメモリ領域を減らす。
【解決手段】画像信号変換装置1における予測演算制御回路43で、予測対象ブロック(ブロックX)に隣接するブロックのDCT係数のDC成分及びAC成分を参照データとして、この予測対象であるブロックXのDC成分及びAC成分の予測値を算出する際、参照データがこの予測マクロブロック内にある参照データを用いて予測値算出できる予測対象ブロックから優先的に、具体的には、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)の順番で予測値を算出する。
【選択図】 図4
【解決手段】画像信号変換装置1における予測演算制御回路43で、予測対象ブロック(ブロックX)に隣接するブロックのDCT係数のDC成分及びAC成分を参照データとして、この予測対象であるブロックXのDC成分及びAC成分の予測値を算出する際、参照データがこの予測マクロブロック内にある参照データを用いて予測値算出できる予測対象ブロックから優先的に、具体的には、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)の順番で予測値を算出する。
【選択図】 図4
Description
【0001】
【発明の属する技術分野】
本発明は、画像信号変換方法及び画像信号変換装置に関し、特に、動画像データを光磁気ディスクや磁気テープ等の記録媒体に記録し、これを再生してディスプレイ等に表示したり、テレビ会議システム、テレビ電話システム、放送用機器、マルチメディアデータベース検索システム等のように伝送路を介して送信側から受信側に動画像データを伝送し受信された動画像データを受信側で表示する場合や、これを編集して記録する場合等に用いて好適な画像信号変換方法及び画像信号変換装置に関する。
【0002】
【従来の技術】
例えば、テレビ会議システム、テレビ電話システム等のように動画像データを伝送するシステムでは、伝送路を効率よく利用するために、画像のライン相関やフレーム間相関を利用して画像データを圧縮符号化している。
【0003】
動画像の高能率符号化方式には、代表的なものとしてMPEG(Moving Picture Experts Group)方式がある。MPEG方式は、蓄積用動画像符号化方式である。これは、ISO−IEC/JTC1/SC2/WG11において議論され、標準案として提案されたものであり、動き補償予測符号化とDCT(Discrete Cosine Transform)符号化を組み合わせたハイブリッド方式が採用されている。MPEGでは、様々なアプリケーションや機能に対応するために、幾つかのプロファイル及びレベルが定義されている。最も基本的なものがメインプロファイルレベル(MP@ML:Main Profile at Main Level)である。
【0004】
図7は、MPEG方式におけるMP@MLのエンコーダ100の一般的な構成例を示している。符号化すべき入力画像データは、フレームメモリ101に入力され、一時記憶される。
【0005】
動きベクトル検出器102は、フレームメモリ101に記憶された画像データを、例えば16画素×16ラインで構成されるマクロブロック単位で読み出し、その動きベクトルを検出する。ここで、動きベクトル検出器102では、各フレームの画像データを、Iピクチャ(フレーム内符号化)、Pピクチャ(前方向予測符号化)、又はBピクチャ(両方向予測符号化)のうち何れかとして処理する。
【0006】
MPEG方式における画像の予測モードには、イントラ符号化(フレーム内符号化)、前方予測符号化、後方予測符号化、両方向予測符号化の4種類があり、Iピクチャはイントラ符号化され、Pピクチャはイントラ符号化又は前方予測符号化の何れかで符号化され、Bピクチャは、イントラ符号化、前方予測符号化、後方予測符号化、両方向予測符号化の何れかで符号化される。
【0007】
動き補償器103は、動きベクトル検出器102から予想モードと動きベクトルの両方を受信すると、その予測モード及び動きベクトルにしたがって、フレームメモリ101に記憶されている符号化され、且つ既に局所復号された画像データを読み出し、この読み出された画像データを予測画像データとして演算器104及び111に供給する。
【0008】
演算器104は、動きベクトル検出器102がフレームメモリ101から読み出した画像データと同一のマクロブロックをフレームメモリ101から読み出し、そのマクロブロックと、動き補償器103からの予測画像との差分を演算する。この差分値は、DCT器105に供給される。
【0009】
DCT器105では、演算器104の出力データに対してDCT処理を施し、その結果得られるDCT係数を量子化器106に供給する。量子化器106では、バッファ108のデータ蓄積量(バッファ108に記憶されているデータの量:バッファフィードバック)に対応して量子化ステップ(量子化スケール)が設定され、この量子化ステップでDCT器105からのDCT係数を量子化する。この量子化されたDCT係数(以下、適宜、量子化係数という)は、設定された量子化ステップとともにVLC器107に供給される。
【0010】
VLC器107では、量子化器106より供給される量子化係数を、例えば、ハフマン符号等の可変長符号に変換しバッファ108に出力する。更に、VLC器107は、量子化器106からの量子化ステップ、動きベクトル検出器102からの予測モード(イントラ符号化(画像内予測符号化)、前方予測符号化、後方予測符号化、又は両方向予測符号化のうち、何れが設定されたかを示すモード)及び動きベクトルも可変長符号化し、その結果得られる符号化データをバッファ108に出力する。
【0011】
バッファ108は、VLC器107からの符号化データを一時蓄積することにより、このデータ量を平滑化し、符号化ビットストリームとして、例えば伝送路に出力、又は記録媒体に記録する。
【0012】
量子化器106によって出力される量子化係数と量子化ステップは、VLC器107だけでなく、逆量子化器109にも供給される。逆量子化器109では、量子化器106からの量子化係数を同じく量子化器106からの量子化ステップにしたがって逆量子化する。これにより、量子化係数は、DCT係数に変換される。このDCT係数は、IDCT器(逆DCT器)110に供給される。IDCT器110では、DCT係数を逆DCT処理し、この処理の結果得られるデータを演算器111に供給する。
【0013】
演算器111には、IDCT器110の出力データのほか、動き補償器103から演算器104に供給されている予測画像と同一のデータが供給されている。演算器111は、IDCT器110の出力データ(予測残差(差分データ))と、動き補償器103からの予測画像データとを加算することで、もとの画像データを局所復号し、この局所復号された画像データ(局所復号画像データ)を出力する。演算器111において得られた復号画像データ(局所復号画像データ)は、フレームメモリ112に供給されて記憶され、その後、インター符号化(前方予測符号化、後方予測符号化、両方向予測符号化)される画像に対する参照画像データ(参照フレーム)として用いられる。
【0014】
現在では、画像を構成する物体(オブジェクト)毎のシーケンスであるビデオオブジェクト(VO:Video Object)単位で符号化を行うMPEG4方式がISO−IEC/JTC1/SC29/WG11において標準化されている。
【0015】
MPEG4方式は、従来の映像/オーディオ信号の圧縮符号化に加え、静止画、CG(コンピュータグラフィクス)画像、分析合成系の音声符号化、MIDI(Musical Instrument Data Interface)等による合成オーディオやテキストも含めた総合マルチメディアの符号化規格を目指したものである。
【0016】
MPEG4方式では、基本的に符号化/復号化できる画像として、4:2:0フォーマットとよばれる画像フォーマットのみが規定されている。
【0017】
この4:2:0フォーマットは、輝度Yの走査2本、水平方向の2画素に対して、色差Cr、Cbがそれぞれ1画素ずつで割り当てられる画像フォーマット(すなわち、輝度Yの4画素に対して色差Cr、Cbがそれぞれ1画素ずつ割り当てられる。)であり、その色差Cr、Cbの位置は、輝度Yに対して同位置に存在する。
【0018】
4:2:0フォーマットは、上述したように、輝度Yの4画素に対して色差Cr、Cbがそれぞれ1画素割り当てられているため、輝度Yに対して色差Cr、Cbの解像度が低くなる。そこで、MPEG4方式は、使用用途に応じて用いられ、例えば放送局等で求められる高画質高品位の画像では、4:2:0フォーマットではなく、4:2:2フォーマットや4:4:4フォーマットが用いられる。また、MPEG4方式では、画像の符号化だけではなく形状情報も符号化できるように規格化されている。逆に、4:2:2フォーマット、4:4:4フォーマットでは、形状情報をもった画像を符号化する方法には対応していない。
【0019】
4:2:0フォーマットのブロックは、輝度又は色差毎の隣り合った、例えば8ライン×8画素から構成される。DCT(離散コサイン変換)は、この単位で実行される。マクロブロックは、例えば、画像フォーマットがいわゆる4:2:0コンポーネントディジタル信号である場合、上下左右に隣り合った4つの輝度Yのブロックと、画像上では同じ位置に当たる色差Cb、Crそれぞれのブロック全部で6つのブロックで構成される。すなわち、MPEG4方式では、従来、4:2:0フォーマットのマクロブロックが符号化復号画像として定義されている。
【0020】
MPEG4方式の画像符号化におけるDCT係数の差分値の算出の仕方には、既存の手法を用いることができる(例えば、特許文献1参照。)。図8に、特開2000−023193号公報に開示されているDCT係数差分化器120の例を示す。DCT係数差分化器120は、VLC器107の前段に設けられている。
【0021】
DCT係数差分化器120には、量子化されたDCT係数及び量子化スケール、形状情報、色差用形状情報、予測モードが入力される。予測モードは、イントラフラグ発生器121に入力される。イントラフラグ発生器121は、イントラ符号化を示す予測モードである場合のみイントラフラグ“1”を立てる。一方、量子化された64個のDCT係数は、スイッチ122に供給される。スイッチ122は、イントラフラグが0の場合、被切換端子A側を選択し、イントラフラグが1の場合、被切換端子B側を選択する。
【0022】
したがって、予測モードがイントラ符号化(画像内予測)モードでない場合、DCT係数は、スイッチ122の被切換端子A側を介して図7のVLC器107へ供給される。
【0023】
DCT係数予測器123は、スイッチ122より供給されたDCT係数の予測値との差分をとり、その差分値を図7に示すVLC器107へと供給する。また、逆量子化器124では、後のDCT係数の予測に使用されるDC成分及び一部のAC成分を、図7の逆量子化器109と同様の手段で逆量子化し、その結果をDCT係数予測モード蓄積メモリ125に供給する。
【0024】
DCT係数予測モード蓄積メモリ125は、上述したように、DCT係数の予測に用いるDC成分及び一部のAC成分、更に予測モードを蓄積する。ここで蓄積された情報は、次の段のDCT係数予測値選択器126において使用される。
【0025】
DCT係数予測値選択器126では、DC成分とDCT係数予測蓄積メモリ125に保存された情報を用いて、DCT係数の予測値及び予測ブロックの位置を出力し、その値をDCT係数予測器123に供給する。
【0026】
ここでDCT係数予測値選択器126の動作を説明する。図9は、予測値を求めるために注目したある8×8ブロック(ブロックX)において、この予測対象ブロックXとこの予測演算を実行する上で必要となる参照データ(離散コサイン変換係数の直流係数及び/又は交流係数)を含むブロックとを示している。
【0027】
ここでは、いま予測値を算出しようとする予測対象ブロックを一般的にブロックXとし、ブロックXの左側に位置するブロックをブロックA、ブロックXの上に位置するブロックをブロックC、ブロックCの左上に位置するブロックをブロックBとして説明する。ただし、図9では、上述したように、ブロックX、ブロックA、ブロックB、ブロックCによって構成される1マクロブロックを説明するものではなく、ブロックXと、このブロックXの予測演算を実行する上で必要となる参照データを含んだブロックとの位置関係を一般的に説明するものである。また、ブロックAのDC成分をFA[0][0]、ブロックBのDC成分をFB[0][0]、ブロックCのDC成分をFC[0][0]とする。これらの値は、逆量子化されたDCT係数のDC成分であり、量子化されたブロックA、B、CのDC成分に量子化スケールを用いて求められたDC量子化ステップの値を積算して求められたものである。
【0028】
ここで、ブロックXのDC成分の差分値を求めるのに使用するブロックを決定するための予測演算方法の一例を示す。DCT成分予測値選択器126は、まず注目マクロブロック内のブロックXに対して、DC成分の参照データPA[0][0]、PB[0][0]、PC[0][0]を取得する。続いて、以下に示す式(1)により、参照値を比較する。
【0029】
【0030】
式(1)は、FA[0][0]とFB[0][0]の差の絶対値(ΔVS)と、FB[0][0]とFC[0][0]の差の絶対値(ΔHS)とを比較し、ΔVS(垂直方向の相関)がΔHS(水平方向の相関)よりも小さい場合には、ブロックCを予測ブロックX′として用い、ΔHS(水平方向の相関)がΔVS(垂直方向の相関)よりも小さい場合には、ブロックAを予測ブロックX′として用いることを意味している。
【0031】
以上説明したように、ブロックXのDCT係数の予測ブロックがブロックAであった場合、予測には、ブロックAのDC成分及びAC成分が用いられ、ブロックCが予測ブロックとされた場合、ブロックCのDC成分及びAC成分が予測に用いられる。
【特許文献1】
特開2000−023193号公報
【0032】
【発明が解決しようとする課題】
ところが、上述のアルゴリズムを実現しようとすると、予測演算処理の前に注目している予測マクロブロックを保存するための機能、特に、大容量のメモリが必要となる。例えば、特開2002−118853号公報には、予測の際の参照値を確保するためのメモリ管理方法が開示されているが、上記公報には、予測演算時の予測マクロブロック内にある参照ブロックの確保に関しては記載されていない。
【0033】
例えば、図9をマクロブロックを構成するブロックY0、ブロックY1、ブロックY2、ブロックY3に対応して考えると、ブロックY0(ブロックB)、ブロックY1(ブロックC)、ブロックY2(ブロックA)、ブロックY3(ブロックX)の順で順次予測演算する場合、ブロックY3の予測を行う際に用いる参照データの一部は、同じ予測マクロブロック内にある。このように、注目している予測マクロブロックにおける予測対象ブロックの予測値算出に用いる参照データがこのマクロブロック内にある場合、この参照データは、予測値算出より前の予測値算出処理で変更されることがある。
【0034】
そこで従来では、注目する予測マクロブロックを記憶しておくためのメモリ等を用意して、ここに更新以前の参照データを保存していた。すなわち、少なくとも注目している予測マクロブロック分、或いは注目している予測マクロブロックとこの予測に必要な参照データを含む周囲ブロック分の領域を含むメモリを用意し、このメモリの領域に、ここで注目する予測マクロブロックの各ブロックを保存し、予測演算の際に、各ブロック毎に変更前の参照データを書き戻す構成を設ける必要があった。
【0035】
しかし、実際は、要求される装置サイズの制約の中で無制限にメモリを設けることはできないし、また、搭載メモリが増加すれば、画像処理プロセッサの消費電力が増大するだけでなく、回路規模の増加及び動作周波数の低下に繋がる。また、メモリに記録する際のアドレス制御やメモリに保存された情報を読み出すためのメモリアクセス制御等が複雑であり、CPUへの負担になっていた。
【0036】
そこで本発明は、このような従来の実情に鑑みて提案されたものであり、予測処理時に画像データのDCT係数を保持するためのメモリ領域を少なくできる画像信号変換方法及び画像信号変換装置を提供することを目的とする。
【0037】
【課題を解決するための手段】
上述した目的を達成するために、本発明に係る画像信号変換装置は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換装置において、画像データの1フレーム分のデータを記憶する記憶手段と、画像内予測符号化の際、記憶手段に記憶されたデータの中から予測マクロブロック内の予測対象とするブロックに隣接するブロックの離散コサイン変換係数を抽出するデータ抽出手段と、データ抽出手段において抽出された予測対象ブロックに隣接するブロックの離散コサイン変換係数の直流係数及び/又は交流係数を参照データとしてこの予測対象ブロックの離散コサイン変換係数の直流係数及び/又は交流係数の予測値を算出する予測演算手段と、予測演算手段における予測対象ブロックの予測値算出を、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に実行する予測演算制御手段とを備えることを特徴としている。
【0038】
ここで、予測演算制御手段は、予測マクロブロック内にあって予測対象ブロックの直上に隣接する第1のブロックの参照データと予測マクロブロック内にあって予測対象ブロックの左側に隣接する第2のブロックの参照データとから予測対象ブロックの予測値を算出し、第2のブロックを予測対象ブロックとして、予測マクロブロック内にあってこの第2のブロックの直上に隣接する第3のブロックの参照データと予測マクロブロック外にあってこの第2のブロックの左側に隣接する第4のブロックの参照データとから第2のブロックの予測値を算出し、第1のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第1のブロックの直上に隣接する第5のブロックの参照データと予測マクロブロック内にあってこの第1のブロックの左側に隣接する第3のブロックの参照データとから第1のブロックの予測値を算出し、第3のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第3のブロックの直上に隣接する第6のブロックの参照データと予測マクロブロック外にあってこの第3のブロックの左側に隣接する第7のブロックの参照データとから第3のブロックの予測値を算出する。
【0039】
また、上述した目的を達成するために、本発明に係る画像信号変換方法は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換方法において、画像内予測符号化の際、画像データの1フレーム分のデータの中から予測マクロブロック内の予測対象とするブロックに隣接するブロックの離散コサイン変換係数を抽出するデータ抽出工程と、データ抽出工程において抽出された予測対象ブロックに隣接するブロックの離散コサイン変換係数の直流係数及び/又は交流係数を参照データとしてこの予測対象ブロックの離散コサイン変換係数の直流係数及び/又は交流係数の予測値を算出する予測演算工程とを有し、予測演算工程では、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に予測値算出を実行することを特徴としている。
【0040】
ここで、予測演算工程は、予測マクロブロック内にあって予測対象ブロックの直上に隣接する第1のブロックの参照データと予測マクロブロック内にあって予測対象ブロックの左側に隣接する第2のブロックの参照データとから予測対象ブロックの予測値を算出する工程と、第2のブロックを予測対象ブロックとして、予測マクロブロック内にあってこの第2のブロックの直上に隣接する第3のブロックの参照データと予測マクロブロック外にあってこの第2のブロックの左側に隣接する第4のブロックの参照データとから第2のブロックの予測値を算出する工程と、第1のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第1のブロックの直上に隣接する第5のブロックの参照データと予測マクロブロック内にあってこの第1のブロックの左側に隣接する第3のブロックの参照データとから第1のブロックの予測値を算出する工程と、第3のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第3のブロックの直上に隣接する第6のブロックの参照データと予測マクロブロック外にあってこの第3のブロックの左側に隣接する第7のブロックの参照データとから第3のブロックの予測値を算出する工程とを含む。
【0041】
また、本発明に係る画像信号変換装置及び方法では、画像圧縮情報は、MPEG(Moving Picture Experts Group)規格に準拠していることが好ましい。
【0042】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。本発明は、離散コサイン変換係数の直流係数(DC成分)及び交流係数(AC成分)を予測する際のメモリアクセス制御を減少するような回路構成とし、画像信号の符号化の際のメモリへの記憶及び読み出し順を工夫することによって、回路規模の削減を実現した画像信号変換装置及び画像信号変換方法である。
【0043】
図1に、本発明を適用した画像信号変換装置1を示す。画像信号変換装置1は、入力した画像データをMPEG(特にMPEG4方式)、H.263等の規格に準拠した方式で符号化できるエンコーダである。
【0044】
画像信号変換装置1で符号化して得られたビットストリームは、多重化されて、例えば、地上波や衛星回線、CATV網等の伝送路を介して伝送される。或いは、磁気ディスク、光磁気ディスク、光ディスク、磁気テープ、その他の記録媒体に記録される。
【0045】
符号化すべき入力画像信号(動画像データ)は、まず、前画像処理部11に入力される。前画像処理部11は、図示しないが、VO(Video Object)構成部とVOP(Video Object Plane)構成部とを有し、入力される画像を構成するオブジェクト毎に、このシーケンスであるVOを構成し、VOPを構成している。
【0046】
具体的には、例えば、符号化すべき画像データが独立した背景のシーケンスと前景のシーケンスとから構成されている場合、VO構成部は、例えば、背景のシーケンスをVO1としてVOP構成部に出力するとともに前景のシーケンスをVO2としてVOP構成部に出力する。
【0047】
VO構成部は、符号化すべき画像データが、例えば背景と前景とが既に合成されたものである場合、所定のアルゴリズムにしたがって、この画像を領域分割することにより、背景と前景とを取り出し、それぞれのシーケンスとしてのVOを対応するVOP構成部に出力する。
【0048】
VOP構成部は、VO構成部で出力された各フレームからオブジェクトを抽出し、この抽出されたオブジェクト(物体)を囲む最小の長方形をVOPとする。このとき、VOP構成部では、横及び縦の画素数が16の倍数になるようにVOPを構成する。VOP構成部は、このVOPを後段の動き検出、動き補償、DCT回路等に供給する。また、VOP構成部は、VOPの大きさ(例えば、横及び縦の長さ)を表すサイズデータ(VOP_size)と、フレームにおけるVOPの位置(例えば、フレームの最も左上を原点とするときの座標)を表すオフセットデータ(VOP_offset)とを検出し、これらのデータも後段の各回路に供給する。
【0049】
入力画像信号(動画像データ)は、フレームメモリ12に供給されて、VOPとして記憶される。
【0050】
動き検出及び動き補償部13では、フレームメモリ12に記憶されたVOPに対してマクロブロック単位で動きベクトルを検出する。すなわち、上述したように、VOPは時刻(フレーム)によって大きさや位置が変化するため、この動きベクトルの検出に当たっては、検出のための基準となる座標系を設定し、座標系における動きを検出する必要がある。そこで、動き検出及び動き補償部13では、上述の絶対座標系を基準座標系とし、サイズデータ(FSZ_B)及びオフセットデータ(FPOS_B)にしたがって、この絶対座標系に符号化対象のVOP及び参照画像とするVOPを配置して動きベクトルを検出する。
【0051】
なお、検出された動きベクトル(MV)は、予測モードとともに後段のVLC器22、量子化器16、逆量子化器18、DCT係数差分化器17等に供給される。
【0052】
演算器14には、動き検出及び動き補償部13によってフレームメモリ12から読み出された画像データと同一のマクロブロックデータが供給される。演算器14では、マクロブロックと動き検出及び動き補償部13での予測画像との差分を演算する。この差分値は、DCT器15に送られる。動き検出及び動き補償部13は、予測モードがイントラ符号化モードである場合には予測画像を出力しない。この場合、演算器14(演算器111も同様)は、特に処理を行わず、フレームメモリ12から読み出したマクロブロックデータをそのままDCT器15に出力する。
【0053】
DCT器15は、演算器14の出力データに対して、8画素×8ラインからなるブロック(以下、8×8ブロック、又は単にブロックと記す。)単位でDCT処理を施し、このDCT処理の結果得られるDCT係数を量子化器16に供給する。
【0054】
量子化器16は、入力されたDCT係数を量子化し、この量子化データをDCT係数差分化器17及び逆量子化器18に送る。
【0055】
逆量子化器18は、量子化器16から入力された8画素×8ラインの量子化されたDCT係数を量子化し、IDCT器19に送る。
【0056】
IDCT器19は、逆量子化器18より逆量子化されたDCT係数を受け取り、IDCT処理して演算器20に出力する。
【0057】
演算器20には、IDCT器19の出力データのほか、動き検出及び動き補償部13から演算器14に供給されている予測画像と同一のデータが供給されている。演算器20は、IDCT器19から出力される予測残差(差分データ)と、動き検出及び動き補償部13からの予測画像データとを加算することで、もとの画像データを局所復号し、この局所復号した画像データ(以下、局所復号画像データと記す。)を出力する。ただし、予測モードがイントラ符号化である場合、IDCT器19の出力データは、演算器20をスルーして、そのまま局所復号画像データとしてフレームメモリ21に供給される。この復号画像データは、受信側で得られる復号画像データと同一である。
【0058】
なお、この画像信号変換装置1では、MPEG4方式の場合、演算器20において得られた局所復号画像データは、テキスチャ(texture)情報としてパディング処理される。一方、形状情報(キー信号)、入力されたサイズデータ(FSZ_B)、オフセットデータ(FPOS_B)、VOPのサイズデータ(VOP_size)、OPのオフセットデータ(VOP_offset)及び(動きベクトル検出器102)より出力された動きベクトルと予測モードは、MPEG4方式のビジュアルコミッティドラフト(Visual Committe draft)にある記述にしたがって、この形状情報の符号化に用いられる。符号化された形状情報は、局所復号化され、局所復号化されたデータは、色差情報作成及びパディング処理に用いられるほか、DCT係数差分化器17、VLC器22へ送られる。
【0059】
上述したように、入力された画像データは、フレームメモリ12に格納され、基本単位である16画素×16ラインからなるマクロブロック(以下、単にマクロブロックと記す。)に分割され処理される。特に、MPEG4方式では、4:2:0フォーマットのみが規定されている。この4:2:0フォーマットでは、1マクロブロックは、4つのブロックの輝度成分と2つの色差成分Cb、Crで構成されている。これらのマクロブロックに対し、離散コサイン変換を施して量子化する。量子化されたDCT係数にVLC(Variable Length Code)とよばれる可変長符号化を施す。これがイントラ符号化である。
【0060】
一方、符号化の対象となるピクチャに対して、時間的に隣接する別のピクチャから動き検出とよばれる方法でブロックマッチングが最も小さい予測ブロックを取得し、この予測ブロックと参照マクロブロック(カレントマクロブロック)との差分を求め、この差分値に対してDCT、量子化、可変長符号化を行う。これがインター符号化である。
【0061】
特に、MPEG4方式では、DCT係数差分化器17でイントラ符号化を行う際、DCT係数のDC成分及び一部のAC成分に対して予測を行い、そのDCT係数の差分値を符号化し効率の改善を図っている。
【0062】
図2にDCT係数差分化器17の構成例を示す。DCT係数差分化器17には、量子化されたDCT係数及び量子化スケール、形状情報、色差用形状情報、予測モードが入力される。予測モードは、イントラフラグ発生器31に入力される。イントラフラグ発生器31は、予測モードからイントラ符号化を示す予測モード、すなわちイントラ符号化モード或いは画像内予測モードの場合のみイントラフラグを立てる。このイントラフラグは、通常0となっているものであり、イントラ符号化の予測モードのときに1にされる。
【0063】
一方、量子化されたDCT係数、すなわち64個のDCT係数は、スイッチ32に供給される。スイッチ32は、イントラフラグが0の場合、被切換端子A側を選択し、イントラフラグが1の場合、被切換端子B側を選択するようになっている。したがって、予測モードがイントラ符号化(画像内予測)モードでない場合、DCT係数は、スイッチ32の被切換端子A側を介して図1に示すVLC器22へ送られる。
【0064】
差分器34は、スイッチ32より供給されたDCT係数の予測値とDCT係数予測値選択器35からの予測値との差分を算出し、その差分値をVLC器22へと供給する。逆量子化器33では、後のDCT係数の予測に使用されるDC成分及び一部のAC成分を図1の逆量子化器18と同様の手段で逆量子化し、その結果や予測モードを内蔵のDCT係数予測モード蓄積メモリに蓄積する。ここで蓄積された情報は、DCT係数予測値選択器35で使用される。DCT係数予測値選択器35では、DC成分とDCT係数予測蓄積メモリに蓄積された情報とを用いて、DCT係数の予測値及び予測ブロックの位置を出力し、その値を差分器34に供給する。
【0065】
ここで、DCT係数予測選択器35を図3を用いて説明する。DCT係数予測選択器35は、1フレーム分の画像データのDCT係数を記憶するフレームメモリブロック41と、予測演算処理を行う予測演算回路42と、メモリブロック41からのデータの読み出しと予測演算とを制御する予測演算制御回路43とを備えている。
【0066】
メモリブロック41は、逆量子化器33からの逆量子化された1フレーム分のDCT係数のDC成分及びAC成分を格納する。DC成分には、参照データであるブロックXのDC成分、また、ブロックXを取り巻くブロックAのDC成分、ブロックBのDC成分、ブロックCのDC成分がある。これらのDC成分が予測演算回路42での予測演算処理に応じて、予測演算制御回路43によってフレームメモリブロック41からタイミングよく供給される。
【0067】
予測演算回路42における予測値選択の手法としては、従来と同様、図9に模式的に示すように、マクロブロックにおいて、イントラ符号化で差分値を選択する際に用いられる8画素×8ラインの予測対象ブロックXに対して、左隣のブロック、左隣の直上のブロック、ブロックXの直上のブロックの各DC成分を使用して、上述した式(1)を適用する。
【0068】
図4に、あるマクロブロックMのDCT係数のACDC予測演算処理を示す。図4には、1フレーム分の画像データのDCT係数の一部が示されており、各マクロブロック毎に上式(1)に基づいて予測ブロック選択が実行される。例えば、マクロブロックMにおけるブロックY0の予測演算時の参照データ(離散コサイン変換係数の直流係数及び/又は交流係数)は、この予測マクロブロックM外のブロックYdとブロックYcのDC成分及びAC成分であり、マクロブロックMにおけるブロックY1の予測演算時の参照データは、この予測マクロブロックM外のブロックYbとブロックY0のDC成分及びAC成分であり、ブロックY2の参照データは、ブロックY0とマクロブロックM外のブロックYaのDC成分及びAC成分であり、ブロックY3の参照データは、ブロックY1とブロックY2のDC成分及びAC成分である。
【0069】
そのため、ブロックY0、ブロックY1、ブロックY2、ブロックY3の順番で予測値演算を実行する場合、注目している予測マクロブロックMにおける予測対象ブロックの予測値算出に用いる参照データがこのマクロブロックM内にある場合、この参照データは、予測値算出より前の予測値算出処理で変更されている場合がある。
【0070】
そこで、予測演算制御回路43は、予測対象ブロック(ここでは、ブロックX)に隣接するブロックのDCT係数のDC成分及びAC成分を参照データとしてこの予測対象であるブロックXのDC成分及びAC成分の予測値を算出する際に、参照データがこの予測マクロブロック内にある参照データを用いて予測値算出できる予測対象ブロックから優先的に実行する。
【0071】
すなわち、予測演算制御回路43は、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)の順番で予測値を算出する。
【0072】
図4を用いて具体的に説明するように、予測演算制御回路43は、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)から構成されるマクロブロックのうち、最初に予測対象とするブロックY3の直上に隣接するブロックY1の参照データ(Bc[j][0])とこの予測対象ブロックの左側に隣接するブロックY2の参照データ(Ba[0][i])とから予測値を算出する。
【0073】
続いて、ブロックY2を次の予測対象ブロックとして、このブロックY2の直上に隣接するブロックY0の参照データとここで注目している予測マクロブロック外にあってブロックY2の左側に隣接するブロックYaの参照データとからブロックの予測値を算出する。
【0074】
続いて、ブロックY1を次なる予測対象ブロックとして、予測マクロブロック外にあってブロックY1の直上に隣接するブロックYbの参照データとブロックY1の左側に隣接するブロックY0の参照データとからブロックY1の予測値を算出する。
【0075】
最後に、ブロックY0を予測対象ブロックとして、この予測マクロブロック外にあってブロックY0の直上に隣接するブロックYcの参照データと予測マクロブロック外にあってブロックY0の左側に隣接するブロックYdの参照データとからブロックY0の予測値を算出する。
【0076】
図5に、予測対象ブロックのACDC成分の差分値を求めるのに使用するブロックを決定するための本具体例における予測演算方法の一例を示す。ここでは、図4に示すマクロブロックMを用いて説明する。そのため、図9に一般的に示す手法と比較すると、ここでは、図9におけるブロックXがブロックY3に対応し、ブロックAがブロックY2に対応し、ブロックBがブロックY0に対応し、ブロックCがブロックY1に対応している。
【0077】
ステップS1において、予測演算回路42では、まず、フレームメモリブロック41から、注目している予測マクロブロック内のブロックY3の参照データBa[0][0]、Bb[0][0]、Bc[0][0](図4参照)を取得する。
【0078】
続くステップS2では、式(1)により参照データを比較する。ステップS2では、Ba[0][0]とBb[0][0]の差の絶対値と、Bb[0][0]とBc[0][0]の差の絶対値とを比較し、Ba[0][0]とBb[0][0]の差の絶対値がBb[0][0]とBc[0][0]の差の絶対値よりも小さい場合には、ステップS3に進み、ブロックAをその予測ブロックとしてこの予測に用いる。
【0079】
また、ステップS3では、以下の式(2)に基づいて、垂直方向直流係数(DC成分)予測を行う。
【0080】
Bx[0][0]=Bx[0][0]−(Bc[0][0]*QuantBc)//Quant_Bx ・・・(2)
【0081】
続いて、ステップS4において、参照ラインBc[j][0](ただし、j=1,2,3,4,5,6,7)が取得され、ステップS5において、以下の式(3)に基づいて、垂直方向交流係数(AC成分)予測を行ってACDC予測演算を終了する。
【0082】
Bx[j][0]=Bx[j][0]−(Bc[j][0]*QuantBc)//Quant_Bx ・・・(3)
(ただし、j=1,2,3,4,5,6,7)
【0083】
一方、ステップS2において、Bb[0][0]とBc[0][0]の差の絶対値がBa[0][0]とBb[0][0]の差の絶対値よりも小さい場合には、ステップS6に進み、ブロックY1をその予測ブロックとしてこの予測に用いる。
【0084】
ステップS6では、以下の式(4)に基づいて、水平方向直流係数(DC成分)予測を行う。
【0085】
Bx[0][0]=Bx[0][0]−(Ba[0][0]*QuantBa)//Quant_Bx ・・・(4)
【0086】
続いて、ステップS7において、参照ラインBa[0][i](ただし、i=1,2,3,4,5,6,7)が取得され、ステップS8において、以下の式(5)に基づいて、水平方向交流係数(AC成分)予測を行ってACDC予測演算を終了する。
【0087】
Bx[0][i]=Bx[0][i]−(Ba[0][i]*QuantBa)//Quant_Bx ・・・(5)
(ただし、i=1,2,3,4,5,6,7)
【0088】
このように、ブロックXのDCT係数の予測ブロックがブロックY2であった場合、予測には、ブロックY2のAC成分とブロックY2のDC成分が用いられる。また、ブロックY1が予測ブロックとされた場合、ブロックY1のAC成分とブロックCのDC成分が予測に用いられる。
【0089】
このようにしてDCT係数予測選択器35によって求められたDCT係数の予測値は、差分器34に供給される。差分器34では、DCT係数の予測値とこれに対応する位置の差分が求められ、最終的にこの値を図1に示したVLC器22に出力している。
【0090】
以上説明したように、予測演算制御回路43において、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)の順番で予測値を算出することによって、予測マクロブロックのDCT係数を格納するためのメモリ領域を設ける必要がなくなり、回路規模の縮小できる。また、予測演算処理時のメモリアクセス制御及びこの予測演算処理自体が簡略化できる。
【0091】
なお、本発明は、上述した具体例のみに限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の変更が可能であることは勿論である。
【0092】
また以下に、上述した画像信号変換装置1によってエンコード(ビットストリーム化)された画像の符号化データを復号するための画像信号復号装置を説明しておく。画像信号復号装置としては、MPEG方式に対応したMP@MLのデコーダ70が適用できる。図6にデコーダの一例を示す。
【0093】
このデコーダ70において、伝送路を介して伝送された符号化ビットストリームを図示しない受信部にて受信する。又は記録媒体に記録された符号化ビットストリームを図示しない再生装置で再生する。このバッファ71には、このようにして得られた符号化ビットストリームが一時記憶される。
【0094】
IVLC器(逆VLC器(可変長復号器))72は、バッファ71に記憶された符号化データを読み出して可変長復号し、この符号化データをマクロブロック単位で動きベクトル、予測モード、量子化ステップ、及び量子化係数に分離する。これらのデータのうち、動きベクトル及び予測モードは、動き補償器77に供給される。量子化ステップ及びマクロブロックの量子化係数は、逆量子化器73に供給される。
【0095】
逆量子化器73は、IVLC器72より供給されたマクロブロックの量子化係数を同じくIVLC器72より供給された量子化ステップにしたがって量子化し、この結果得られるDCT係数をIDCT器74に出力する。IDCT器74は、逆量子化器73からのマクロブロックのDCT係数を逆DCTし、演算器75に供給する。
【0096】
演算器75には、IDCT器74の出力データのほか動き補償器77の出力データも供給されている。すなわち動き補償器77は、フレームメモリ76に記憶されている。既に復号された画像データを図1の動き検出及び動き補償器13における場合と同様に、IVLC器72からの動きベクトル及び予測モードにしたがって読み出し、予測画像データとして演算器75に供給する。演算器75は、IDCT器74の出力データ(予測残差(差分値))と、動き補償器77からの予測画像データとを加算することで、もとの画像データを復号する。この復号画像データは、再生画像データとして出力されるとともにフレームメモリ76に供給されて記憶される。
【0097】
IDCT器74の出力データがイントラ符号化されたものである場合、この出力データは、演算器75をスルーして、復号画像データとしてこのままフレームメモリ76に供給されて記憶される。フレームメモリ76に記憶された復号画像データは、その後に復号される画像データの参照画像データとして用いられる。更に、復号画像データは、出力再生画像として、例えば、図示しないディスプレイ等に供給されて表示される。
【0098】
【発明の効果】
以上詳細に説明したように、本発明に係る画像信号変換装置は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換装置において、予測演算手段における予測対象ブロックの予測値算出を、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に実行することによって、搭載メモリを縮小でき、予測演算処理時のメモリアクセス制御が簡略化できる。またこれにより、装置自体の回路規模が縮小できるだけでなく、画像処理プロセッサの電力消費が抑制できる。
【0099】
また、本発明に係る画像信号変換方法は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換方法において、予測演算工程では、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に予測値算出することによって、メモリ領域を縮小でき、予測演算処理時のメモリアクセス制御が簡略化できる。またこれにより、装置自体の回路規模が縮小できるだけでなく、画像処理プロセッサの電力消費が抑制できる。
【図面の簡単な説明】
【図1】本発明の具体例として示す画像信号変換装置を説明する構成図である。
【図2】上記画像信号変換装置のDCT係数差分化器を説明する構成図である。
【図3】上記画像信号変換装置のDCT係数予測選択器の一例を説明する構成図である。
【図4】あるマクロブロックMのDCT係数のACDC予測演算処理を説明する模式図である。
【図5】ブロックXのAC成分及びDC成分の差分値を求めるのに使用する予測ブロックを決定するため予測演算方法の一例を説明するフローチャートである。
【図6】上述した画像信号変換装置1によってエンコードされた画像の符号化データを復号するための画像信号復号装置を説明する構成図である。
【図7】従来のMPEG方式におけるMP@MLのエンコーダ100の一般的な構成説明する図である。
【図8】特開2000−023193号公報に開示されているDCT係数差分化器の例を示す図である。
【図9】予測値を求めるために注目したあるブロックにおいて、このブロックXと、この予測演算を実行する上で必要となるDCT係数(参照データ)を含む周囲ブロックを説明する図である。
【符号の説明】
1 画像信号変換装置、11 前画像処理部、12 フレームメモリ、13 動き検出及び動き補償部、14 演算器、15 DCT器、16 量子化器、17 DCT係数差分化器、18 逆量子化器、19 IDCT器、20 演算器、21 フレームメモリ、22 VLC器、31 イントラフラグ発生器、32スイッチ、33 逆量子化器、34 差分器、35 DCT係数予測値選択器、41 フレームメモリブロック、42 予測値演算回路、43 予測演算制御回路
【発明の属する技術分野】
本発明は、画像信号変換方法及び画像信号変換装置に関し、特に、動画像データを光磁気ディスクや磁気テープ等の記録媒体に記録し、これを再生してディスプレイ等に表示したり、テレビ会議システム、テレビ電話システム、放送用機器、マルチメディアデータベース検索システム等のように伝送路を介して送信側から受信側に動画像データを伝送し受信された動画像データを受信側で表示する場合や、これを編集して記録する場合等に用いて好適な画像信号変換方法及び画像信号変換装置に関する。
【0002】
【従来の技術】
例えば、テレビ会議システム、テレビ電話システム等のように動画像データを伝送するシステムでは、伝送路を効率よく利用するために、画像のライン相関やフレーム間相関を利用して画像データを圧縮符号化している。
【0003】
動画像の高能率符号化方式には、代表的なものとしてMPEG(Moving Picture Experts Group)方式がある。MPEG方式は、蓄積用動画像符号化方式である。これは、ISO−IEC/JTC1/SC2/WG11において議論され、標準案として提案されたものであり、動き補償予測符号化とDCT(Discrete Cosine Transform)符号化を組み合わせたハイブリッド方式が採用されている。MPEGでは、様々なアプリケーションや機能に対応するために、幾つかのプロファイル及びレベルが定義されている。最も基本的なものがメインプロファイルレベル(MP@ML:Main Profile at Main Level)である。
【0004】
図7は、MPEG方式におけるMP@MLのエンコーダ100の一般的な構成例を示している。符号化すべき入力画像データは、フレームメモリ101に入力され、一時記憶される。
【0005】
動きベクトル検出器102は、フレームメモリ101に記憶された画像データを、例えば16画素×16ラインで構成されるマクロブロック単位で読み出し、その動きベクトルを検出する。ここで、動きベクトル検出器102では、各フレームの画像データを、Iピクチャ(フレーム内符号化)、Pピクチャ(前方向予測符号化)、又はBピクチャ(両方向予測符号化)のうち何れかとして処理する。
【0006】
MPEG方式における画像の予測モードには、イントラ符号化(フレーム内符号化)、前方予測符号化、後方予測符号化、両方向予測符号化の4種類があり、Iピクチャはイントラ符号化され、Pピクチャはイントラ符号化又は前方予測符号化の何れかで符号化され、Bピクチャは、イントラ符号化、前方予測符号化、後方予測符号化、両方向予測符号化の何れかで符号化される。
【0007】
動き補償器103は、動きベクトル検出器102から予想モードと動きベクトルの両方を受信すると、その予測モード及び動きベクトルにしたがって、フレームメモリ101に記憶されている符号化され、且つ既に局所復号された画像データを読み出し、この読み出された画像データを予測画像データとして演算器104及び111に供給する。
【0008】
演算器104は、動きベクトル検出器102がフレームメモリ101から読み出した画像データと同一のマクロブロックをフレームメモリ101から読み出し、そのマクロブロックと、動き補償器103からの予測画像との差分を演算する。この差分値は、DCT器105に供給される。
【0009】
DCT器105では、演算器104の出力データに対してDCT処理を施し、その結果得られるDCT係数を量子化器106に供給する。量子化器106では、バッファ108のデータ蓄積量(バッファ108に記憶されているデータの量:バッファフィードバック)に対応して量子化ステップ(量子化スケール)が設定され、この量子化ステップでDCT器105からのDCT係数を量子化する。この量子化されたDCT係数(以下、適宜、量子化係数という)は、設定された量子化ステップとともにVLC器107に供給される。
【0010】
VLC器107では、量子化器106より供給される量子化係数を、例えば、ハフマン符号等の可変長符号に変換しバッファ108に出力する。更に、VLC器107は、量子化器106からの量子化ステップ、動きベクトル検出器102からの予測モード(イントラ符号化(画像内予測符号化)、前方予測符号化、後方予測符号化、又は両方向予測符号化のうち、何れが設定されたかを示すモード)及び動きベクトルも可変長符号化し、その結果得られる符号化データをバッファ108に出力する。
【0011】
バッファ108は、VLC器107からの符号化データを一時蓄積することにより、このデータ量を平滑化し、符号化ビットストリームとして、例えば伝送路に出力、又は記録媒体に記録する。
【0012】
量子化器106によって出力される量子化係数と量子化ステップは、VLC器107だけでなく、逆量子化器109にも供給される。逆量子化器109では、量子化器106からの量子化係数を同じく量子化器106からの量子化ステップにしたがって逆量子化する。これにより、量子化係数は、DCT係数に変換される。このDCT係数は、IDCT器(逆DCT器)110に供給される。IDCT器110では、DCT係数を逆DCT処理し、この処理の結果得られるデータを演算器111に供給する。
【0013】
演算器111には、IDCT器110の出力データのほか、動き補償器103から演算器104に供給されている予測画像と同一のデータが供給されている。演算器111は、IDCT器110の出力データ(予測残差(差分データ))と、動き補償器103からの予測画像データとを加算することで、もとの画像データを局所復号し、この局所復号された画像データ(局所復号画像データ)を出力する。演算器111において得られた復号画像データ(局所復号画像データ)は、フレームメモリ112に供給されて記憶され、その後、インター符号化(前方予測符号化、後方予測符号化、両方向予測符号化)される画像に対する参照画像データ(参照フレーム)として用いられる。
【0014】
現在では、画像を構成する物体(オブジェクト)毎のシーケンスであるビデオオブジェクト(VO:Video Object)単位で符号化を行うMPEG4方式がISO−IEC/JTC1/SC29/WG11において標準化されている。
【0015】
MPEG4方式は、従来の映像/オーディオ信号の圧縮符号化に加え、静止画、CG(コンピュータグラフィクス)画像、分析合成系の音声符号化、MIDI(Musical Instrument Data Interface)等による合成オーディオやテキストも含めた総合マルチメディアの符号化規格を目指したものである。
【0016】
MPEG4方式では、基本的に符号化/復号化できる画像として、4:2:0フォーマットとよばれる画像フォーマットのみが規定されている。
【0017】
この4:2:0フォーマットは、輝度Yの走査2本、水平方向の2画素に対して、色差Cr、Cbがそれぞれ1画素ずつで割り当てられる画像フォーマット(すなわち、輝度Yの4画素に対して色差Cr、Cbがそれぞれ1画素ずつ割り当てられる。)であり、その色差Cr、Cbの位置は、輝度Yに対して同位置に存在する。
【0018】
4:2:0フォーマットは、上述したように、輝度Yの4画素に対して色差Cr、Cbがそれぞれ1画素割り当てられているため、輝度Yに対して色差Cr、Cbの解像度が低くなる。そこで、MPEG4方式は、使用用途に応じて用いられ、例えば放送局等で求められる高画質高品位の画像では、4:2:0フォーマットではなく、4:2:2フォーマットや4:4:4フォーマットが用いられる。また、MPEG4方式では、画像の符号化だけではなく形状情報も符号化できるように規格化されている。逆に、4:2:2フォーマット、4:4:4フォーマットでは、形状情報をもった画像を符号化する方法には対応していない。
【0019】
4:2:0フォーマットのブロックは、輝度又は色差毎の隣り合った、例えば8ライン×8画素から構成される。DCT(離散コサイン変換)は、この単位で実行される。マクロブロックは、例えば、画像フォーマットがいわゆる4:2:0コンポーネントディジタル信号である場合、上下左右に隣り合った4つの輝度Yのブロックと、画像上では同じ位置に当たる色差Cb、Crそれぞれのブロック全部で6つのブロックで構成される。すなわち、MPEG4方式では、従来、4:2:0フォーマットのマクロブロックが符号化復号画像として定義されている。
【0020】
MPEG4方式の画像符号化におけるDCT係数の差分値の算出の仕方には、既存の手法を用いることができる(例えば、特許文献1参照。)。図8に、特開2000−023193号公報に開示されているDCT係数差分化器120の例を示す。DCT係数差分化器120は、VLC器107の前段に設けられている。
【0021】
DCT係数差分化器120には、量子化されたDCT係数及び量子化スケール、形状情報、色差用形状情報、予測モードが入力される。予測モードは、イントラフラグ発生器121に入力される。イントラフラグ発生器121は、イントラ符号化を示す予測モードである場合のみイントラフラグ“1”を立てる。一方、量子化された64個のDCT係数は、スイッチ122に供給される。スイッチ122は、イントラフラグが0の場合、被切換端子A側を選択し、イントラフラグが1の場合、被切換端子B側を選択する。
【0022】
したがって、予測モードがイントラ符号化(画像内予測)モードでない場合、DCT係数は、スイッチ122の被切換端子A側を介して図7のVLC器107へ供給される。
【0023】
DCT係数予測器123は、スイッチ122より供給されたDCT係数の予測値との差分をとり、その差分値を図7に示すVLC器107へと供給する。また、逆量子化器124では、後のDCT係数の予測に使用されるDC成分及び一部のAC成分を、図7の逆量子化器109と同様の手段で逆量子化し、その結果をDCT係数予測モード蓄積メモリ125に供給する。
【0024】
DCT係数予測モード蓄積メモリ125は、上述したように、DCT係数の予測に用いるDC成分及び一部のAC成分、更に予測モードを蓄積する。ここで蓄積された情報は、次の段のDCT係数予測値選択器126において使用される。
【0025】
DCT係数予測値選択器126では、DC成分とDCT係数予測蓄積メモリ125に保存された情報を用いて、DCT係数の予測値及び予測ブロックの位置を出力し、その値をDCT係数予測器123に供給する。
【0026】
ここでDCT係数予測値選択器126の動作を説明する。図9は、予測値を求めるために注目したある8×8ブロック(ブロックX)において、この予測対象ブロックXとこの予測演算を実行する上で必要となる参照データ(離散コサイン変換係数の直流係数及び/又は交流係数)を含むブロックとを示している。
【0027】
ここでは、いま予測値を算出しようとする予測対象ブロックを一般的にブロックXとし、ブロックXの左側に位置するブロックをブロックA、ブロックXの上に位置するブロックをブロックC、ブロックCの左上に位置するブロックをブロックBとして説明する。ただし、図9では、上述したように、ブロックX、ブロックA、ブロックB、ブロックCによって構成される1マクロブロックを説明するものではなく、ブロックXと、このブロックXの予測演算を実行する上で必要となる参照データを含んだブロックとの位置関係を一般的に説明するものである。また、ブロックAのDC成分をFA[0][0]、ブロックBのDC成分をFB[0][0]、ブロックCのDC成分をFC[0][0]とする。これらの値は、逆量子化されたDCT係数のDC成分であり、量子化されたブロックA、B、CのDC成分に量子化スケールを用いて求められたDC量子化ステップの値を積算して求められたものである。
【0028】
ここで、ブロックXのDC成分の差分値を求めるのに使用するブロックを決定するための予測演算方法の一例を示す。DCT成分予測値選択器126は、まず注目マクロブロック内のブロックXに対して、DC成分の参照データPA[0][0]、PB[0][0]、PC[0][0]を取得する。続いて、以下に示す式(1)により、参照値を比較する。
【0029】
【0030】
式(1)は、FA[0][0]とFB[0][0]の差の絶対値(ΔVS)と、FB[0][0]とFC[0][0]の差の絶対値(ΔHS)とを比較し、ΔVS(垂直方向の相関)がΔHS(水平方向の相関)よりも小さい場合には、ブロックCを予測ブロックX′として用い、ΔHS(水平方向の相関)がΔVS(垂直方向の相関)よりも小さい場合には、ブロックAを予測ブロックX′として用いることを意味している。
【0031】
以上説明したように、ブロックXのDCT係数の予測ブロックがブロックAであった場合、予測には、ブロックAのDC成分及びAC成分が用いられ、ブロックCが予測ブロックとされた場合、ブロックCのDC成分及びAC成分が予測に用いられる。
【特許文献1】
特開2000−023193号公報
【0032】
【発明が解決しようとする課題】
ところが、上述のアルゴリズムを実現しようとすると、予測演算処理の前に注目している予測マクロブロックを保存するための機能、特に、大容量のメモリが必要となる。例えば、特開2002−118853号公報には、予測の際の参照値を確保するためのメモリ管理方法が開示されているが、上記公報には、予測演算時の予測マクロブロック内にある参照ブロックの確保に関しては記載されていない。
【0033】
例えば、図9をマクロブロックを構成するブロックY0、ブロックY1、ブロックY2、ブロックY3に対応して考えると、ブロックY0(ブロックB)、ブロックY1(ブロックC)、ブロックY2(ブロックA)、ブロックY3(ブロックX)の順で順次予測演算する場合、ブロックY3の予測を行う際に用いる参照データの一部は、同じ予測マクロブロック内にある。このように、注目している予測マクロブロックにおける予測対象ブロックの予測値算出に用いる参照データがこのマクロブロック内にある場合、この参照データは、予測値算出より前の予測値算出処理で変更されることがある。
【0034】
そこで従来では、注目する予測マクロブロックを記憶しておくためのメモリ等を用意して、ここに更新以前の参照データを保存していた。すなわち、少なくとも注目している予測マクロブロック分、或いは注目している予測マクロブロックとこの予測に必要な参照データを含む周囲ブロック分の領域を含むメモリを用意し、このメモリの領域に、ここで注目する予測マクロブロックの各ブロックを保存し、予測演算の際に、各ブロック毎に変更前の参照データを書き戻す構成を設ける必要があった。
【0035】
しかし、実際は、要求される装置サイズの制約の中で無制限にメモリを設けることはできないし、また、搭載メモリが増加すれば、画像処理プロセッサの消費電力が増大するだけでなく、回路規模の増加及び動作周波数の低下に繋がる。また、メモリに記録する際のアドレス制御やメモリに保存された情報を読み出すためのメモリアクセス制御等が複雑であり、CPUへの負担になっていた。
【0036】
そこで本発明は、このような従来の実情に鑑みて提案されたものであり、予測処理時に画像データのDCT係数を保持するためのメモリ領域を少なくできる画像信号変換方法及び画像信号変換装置を提供することを目的とする。
【0037】
【課題を解決するための手段】
上述した目的を達成するために、本発明に係る画像信号変換装置は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換装置において、画像データの1フレーム分のデータを記憶する記憶手段と、画像内予測符号化の際、記憶手段に記憶されたデータの中から予測マクロブロック内の予測対象とするブロックに隣接するブロックの離散コサイン変換係数を抽出するデータ抽出手段と、データ抽出手段において抽出された予測対象ブロックに隣接するブロックの離散コサイン変換係数の直流係数及び/又は交流係数を参照データとしてこの予測対象ブロックの離散コサイン変換係数の直流係数及び/又は交流係数の予測値を算出する予測演算手段と、予測演算手段における予測対象ブロックの予測値算出を、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に実行する予測演算制御手段とを備えることを特徴としている。
【0038】
ここで、予測演算制御手段は、予測マクロブロック内にあって予測対象ブロックの直上に隣接する第1のブロックの参照データと予測マクロブロック内にあって予測対象ブロックの左側に隣接する第2のブロックの参照データとから予測対象ブロックの予測値を算出し、第2のブロックを予測対象ブロックとして、予測マクロブロック内にあってこの第2のブロックの直上に隣接する第3のブロックの参照データと予測マクロブロック外にあってこの第2のブロックの左側に隣接する第4のブロックの参照データとから第2のブロックの予測値を算出し、第1のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第1のブロックの直上に隣接する第5のブロックの参照データと予測マクロブロック内にあってこの第1のブロックの左側に隣接する第3のブロックの参照データとから第1のブロックの予測値を算出し、第3のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第3のブロックの直上に隣接する第6のブロックの参照データと予測マクロブロック外にあってこの第3のブロックの左側に隣接する第7のブロックの参照データとから第3のブロックの予測値を算出する。
【0039】
また、上述した目的を達成するために、本発明に係る画像信号変換方法は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換方法において、画像内予測符号化の際、画像データの1フレーム分のデータの中から予測マクロブロック内の予測対象とするブロックに隣接するブロックの離散コサイン変換係数を抽出するデータ抽出工程と、データ抽出工程において抽出された予測対象ブロックに隣接するブロックの離散コサイン変換係数の直流係数及び/又は交流係数を参照データとしてこの予測対象ブロックの離散コサイン変換係数の直流係数及び/又は交流係数の予測値を算出する予測演算工程とを有し、予測演算工程では、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に予測値算出を実行することを特徴としている。
【0040】
ここで、予測演算工程は、予測マクロブロック内にあって予測対象ブロックの直上に隣接する第1のブロックの参照データと予測マクロブロック内にあって予測対象ブロックの左側に隣接する第2のブロックの参照データとから予測対象ブロックの予測値を算出する工程と、第2のブロックを予測対象ブロックとして、予測マクロブロック内にあってこの第2のブロックの直上に隣接する第3のブロックの参照データと予測マクロブロック外にあってこの第2のブロックの左側に隣接する第4のブロックの参照データとから第2のブロックの予測値を算出する工程と、第1のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第1のブロックの直上に隣接する第5のブロックの参照データと予測マクロブロック内にあってこの第1のブロックの左側に隣接する第3のブロックの参照データとから第1のブロックの予測値を算出する工程と、第3のブロックを予測対象ブロックとして、予測マクロブロック外にあってこの第3のブロックの直上に隣接する第6のブロックの参照データと予測マクロブロック外にあってこの第3のブロックの左側に隣接する第7のブロックの参照データとから第3のブロックの予測値を算出する工程とを含む。
【0041】
また、本発明に係る画像信号変換装置及び方法では、画像圧縮情報は、MPEG(Moving Picture Experts Group)規格に準拠していることが好ましい。
【0042】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。本発明は、離散コサイン変換係数の直流係数(DC成分)及び交流係数(AC成分)を予測する際のメモリアクセス制御を減少するような回路構成とし、画像信号の符号化の際のメモリへの記憶及び読み出し順を工夫することによって、回路規模の削減を実現した画像信号変換装置及び画像信号変換方法である。
【0043】
図1に、本発明を適用した画像信号変換装置1を示す。画像信号変換装置1は、入力した画像データをMPEG(特にMPEG4方式)、H.263等の規格に準拠した方式で符号化できるエンコーダである。
【0044】
画像信号変換装置1で符号化して得られたビットストリームは、多重化されて、例えば、地上波や衛星回線、CATV網等の伝送路を介して伝送される。或いは、磁気ディスク、光磁気ディスク、光ディスク、磁気テープ、その他の記録媒体に記録される。
【0045】
符号化すべき入力画像信号(動画像データ)は、まず、前画像処理部11に入力される。前画像処理部11は、図示しないが、VO(Video Object)構成部とVOP(Video Object Plane)構成部とを有し、入力される画像を構成するオブジェクト毎に、このシーケンスであるVOを構成し、VOPを構成している。
【0046】
具体的には、例えば、符号化すべき画像データが独立した背景のシーケンスと前景のシーケンスとから構成されている場合、VO構成部は、例えば、背景のシーケンスをVO1としてVOP構成部に出力するとともに前景のシーケンスをVO2としてVOP構成部に出力する。
【0047】
VO構成部は、符号化すべき画像データが、例えば背景と前景とが既に合成されたものである場合、所定のアルゴリズムにしたがって、この画像を領域分割することにより、背景と前景とを取り出し、それぞれのシーケンスとしてのVOを対応するVOP構成部に出力する。
【0048】
VOP構成部は、VO構成部で出力された各フレームからオブジェクトを抽出し、この抽出されたオブジェクト(物体)を囲む最小の長方形をVOPとする。このとき、VOP構成部では、横及び縦の画素数が16の倍数になるようにVOPを構成する。VOP構成部は、このVOPを後段の動き検出、動き補償、DCT回路等に供給する。また、VOP構成部は、VOPの大きさ(例えば、横及び縦の長さ)を表すサイズデータ(VOP_size)と、フレームにおけるVOPの位置(例えば、フレームの最も左上を原点とするときの座標)を表すオフセットデータ(VOP_offset)とを検出し、これらのデータも後段の各回路に供給する。
【0049】
入力画像信号(動画像データ)は、フレームメモリ12に供給されて、VOPとして記憶される。
【0050】
動き検出及び動き補償部13では、フレームメモリ12に記憶されたVOPに対してマクロブロック単位で動きベクトルを検出する。すなわち、上述したように、VOPは時刻(フレーム)によって大きさや位置が変化するため、この動きベクトルの検出に当たっては、検出のための基準となる座標系を設定し、座標系における動きを検出する必要がある。そこで、動き検出及び動き補償部13では、上述の絶対座標系を基準座標系とし、サイズデータ(FSZ_B)及びオフセットデータ(FPOS_B)にしたがって、この絶対座標系に符号化対象のVOP及び参照画像とするVOPを配置して動きベクトルを検出する。
【0051】
なお、検出された動きベクトル(MV)は、予測モードとともに後段のVLC器22、量子化器16、逆量子化器18、DCT係数差分化器17等に供給される。
【0052】
演算器14には、動き検出及び動き補償部13によってフレームメモリ12から読み出された画像データと同一のマクロブロックデータが供給される。演算器14では、マクロブロックと動き検出及び動き補償部13での予測画像との差分を演算する。この差分値は、DCT器15に送られる。動き検出及び動き補償部13は、予測モードがイントラ符号化モードである場合には予測画像を出力しない。この場合、演算器14(演算器111も同様)は、特に処理を行わず、フレームメモリ12から読み出したマクロブロックデータをそのままDCT器15に出力する。
【0053】
DCT器15は、演算器14の出力データに対して、8画素×8ラインからなるブロック(以下、8×8ブロック、又は単にブロックと記す。)単位でDCT処理を施し、このDCT処理の結果得られるDCT係数を量子化器16に供給する。
【0054】
量子化器16は、入力されたDCT係数を量子化し、この量子化データをDCT係数差分化器17及び逆量子化器18に送る。
【0055】
逆量子化器18は、量子化器16から入力された8画素×8ラインの量子化されたDCT係数を量子化し、IDCT器19に送る。
【0056】
IDCT器19は、逆量子化器18より逆量子化されたDCT係数を受け取り、IDCT処理して演算器20に出力する。
【0057】
演算器20には、IDCT器19の出力データのほか、動き検出及び動き補償部13から演算器14に供給されている予測画像と同一のデータが供給されている。演算器20は、IDCT器19から出力される予測残差(差分データ)と、動き検出及び動き補償部13からの予測画像データとを加算することで、もとの画像データを局所復号し、この局所復号した画像データ(以下、局所復号画像データと記す。)を出力する。ただし、予測モードがイントラ符号化である場合、IDCT器19の出力データは、演算器20をスルーして、そのまま局所復号画像データとしてフレームメモリ21に供給される。この復号画像データは、受信側で得られる復号画像データと同一である。
【0058】
なお、この画像信号変換装置1では、MPEG4方式の場合、演算器20において得られた局所復号画像データは、テキスチャ(texture)情報としてパディング処理される。一方、形状情報(キー信号)、入力されたサイズデータ(FSZ_B)、オフセットデータ(FPOS_B)、VOPのサイズデータ(VOP_size)、OPのオフセットデータ(VOP_offset)及び(動きベクトル検出器102)より出力された動きベクトルと予測モードは、MPEG4方式のビジュアルコミッティドラフト(Visual Committe draft)にある記述にしたがって、この形状情報の符号化に用いられる。符号化された形状情報は、局所復号化され、局所復号化されたデータは、色差情報作成及びパディング処理に用いられるほか、DCT係数差分化器17、VLC器22へ送られる。
【0059】
上述したように、入力された画像データは、フレームメモリ12に格納され、基本単位である16画素×16ラインからなるマクロブロック(以下、単にマクロブロックと記す。)に分割され処理される。特に、MPEG4方式では、4:2:0フォーマットのみが規定されている。この4:2:0フォーマットでは、1マクロブロックは、4つのブロックの輝度成分と2つの色差成分Cb、Crで構成されている。これらのマクロブロックに対し、離散コサイン変換を施して量子化する。量子化されたDCT係数にVLC(Variable Length Code)とよばれる可変長符号化を施す。これがイントラ符号化である。
【0060】
一方、符号化の対象となるピクチャに対して、時間的に隣接する別のピクチャから動き検出とよばれる方法でブロックマッチングが最も小さい予測ブロックを取得し、この予測ブロックと参照マクロブロック(カレントマクロブロック)との差分を求め、この差分値に対してDCT、量子化、可変長符号化を行う。これがインター符号化である。
【0061】
特に、MPEG4方式では、DCT係数差分化器17でイントラ符号化を行う際、DCT係数のDC成分及び一部のAC成分に対して予測を行い、そのDCT係数の差分値を符号化し効率の改善を図っている。
【0062】
図2にDCT係数差分化器17の構成例を示す。DCT係数差分化器17には、量子化されたDCT係数及び量子化スケール、形状情報、色差用形状情報、予測モードが入力される。予測モードは、イントラフラグ発生器31に入力される。イントラフラグ発生器31は、予測モードからイントラ符号化を示す予測モード、すなわちイントラ符号化モード或いは画像内予測モードの場合のみイントラフラグを立てる。このイントラフラグは、通常0となっているものであり、イントラ符号化の予測モードのときに1にされる。
【0063】
一方、量子化されたDCT係数、すなわち64個のDCT係数は、スイッチ32に供給される。スイッチ32は、イントラフラグが0の場合、被切換端子A側を選択し、イントラフラグが1の場合、被切換端子B側を選択するようになっている。したがって、予測モードがイントラ符号化(画像内予測)モードでない場合、DCT係数は、スイッチ32の被切換端子A側を介して図1に示すVLC器22へ送られる。
【0064】
差分器34は、スイッチ32より供給されたDCT係数の予測値とDCT係数予測値選択器35からの予測値との差分を算出し、その差分値をVLC器22へと供給する。逆量子化器33では、後のDCT係数の予測に使用されるDC成分及び一部のAC成分を図1の逆量子化器18と同様の手段で逆量子化し、その結果や予測モードを内蔵のDCT係数予測モード蓄積メモリに蓄積する。ここで蓄積された情報は、DCT係数予測値選択器35で使用される。DCT係数予測値選択器35では、DC成分とDCT係数予測蓄積メモリに蓄積された情報とを用いて、DCT係数の予測値及び予測ブロックの位置を出力し、その値を差分器34に供給する。
【0065】
ここで、DCT係数予測選択器35を図3を用いて説明する。DCT係数予測選択器35は、1フレーム分の画像データのDCT係数を記憶するフレームメモリブロック41と、予測演算処理を行う予測演算回路42と、メモリブロック41からのデータの読み出しと予測演算とを制御する予測演算制御回路43とを備えている。
【0066】
メモリブロック41は、逆量子化器33からの逆量子化された1フレーム分のDCT係数のDC成分及びAC成分を格納する。DC成分には、参照データであるブロックXのDC成分、また、ブロックXを取り巻くブロックAのDC成分、ブロックBのDC成分、ブロックCのDC成分がある。これらのDC成分が予測演算回路42での予測演算処理に応じて、予測演算制御回路43によってフレームメモリブロック41からタイミングよく供給される。
【0067】
予測演算回路42における予測値選択の手法としては、従来と同様、図9に模式的に示すように、マクロブロックにおいて、イントラ符号化で差分値を選択する際に用いられる8画素×8ラインの予測対象ブロックXに対して、左隣のブロック、左隣の直上のブロック、ブロックXの直上のブロックの各DC成分を使用して、上述した式(1)を適用する。
【0068】
図4に、あるマクロブロックMのDCT係数のACDC予測演算処理を示す。図4には、1フレーム分の画像データのDCT係数の一部が示されており、各マクロブロック毎に上式(1)に基づいて予測ブロック選択が実行される。例えば、マクロブロックMにおけるブロックY0の予測演算時の参照データ(離散コサイン変換係数の直流係数及び/又は交流係数)は、この予測マクロブロックM外のブロックYdとブロックYcのDC成分及びAC成分であり、マクロブロックMにおけるブロックY1の予測演算時の参照データは、この予測マクロブロックM外のブロックYbとブロックY0のDC成分及びAC成分であり、ブロックY2の参照データは、ブロックY0とマクロブロックM外のブロックYaのDC成分及びAC成分であり、ブロックY3の参照データは、ブロックY1とブロックY2のDC成分及びAC成分である。
【0069】
そのため、ブロックY0、ブロックY1、ブロックY2、ブロックY3の順番で予測値演算を実行する場合、注目している予測マクロブロックMにおける予測対象ブロックの予測値算出に用いる参照データがこのマクロブロックM内にある場合、この参照データは、予測値算出より前の予測値算出処理で変更されている場合がある。
【0070】
そこで、予測演算制御回路43は、予測対象ブロック(ここでは、ブロックX)に隣接するブロックのDCT係数のDC成分及びAC成分を参照データとしてこの予測対象であるブロックXのDC成分及びAC成分の予測値を算出する際に、参照データがこの予測マクロブロック内にある参照データを用いて予測値算出できる予測対象ブロックから優先的に実行する。
【0071】
すなわち、予測演算制御回路43は、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)の順番で予測値を算出する。
【0072】
図4を用いて具体的に説明するように、予測演算制御回路43は、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)から構成されるマクロブロックのうち、最初に予測対象とするブロックY3の直上に隣接するブロックY1の参照データ(Bc[j][0])とこの予測対象ブロックの左側に隣接するブロックY2の参照データ(Ba[0][i])とから予測値を算出する。
【0073】
続いて、ブロックY2を次の予測対象ブロックとして、このブロックY2の直上に隣接するブロックY0の参照データとここで注目している予測マクロブロック外にあってブロックY2の左側に隣接するブロックYaの参照データとからブロックの予測値を算出する。
【0074】
続いて、ブロックY1を次なる予測対象ブロックとして、予測マクロブロック外にあってブロックY1の直上に隣接するブロックYbの参照データとブロックY1の左側に隣接するブロックY0の参照データとからブロックY1の予測値を算出する。
【0075】
最後に、ブロックY0を予測対象ブロックとして、この予測マクロブロック外にあってブロックY0の直上に隣接するブロックYcの参照データと予測マクロブロック外にあってブロックY0の左側に隣接するブロックYdの参照データとからブロックY0の予測値を算出する。
【0076】
図5に、予測対象ブロックのACDC成分の差分値を求めるのに使用するブロックを決定するための本具体例における予測演算方法の一例を示す。ここでは、図4に示すマクロブロックMを用いて説明する。そのため、図9に一般的に示す手法と比較すると、ここでは、図9におけるブロックXがブロックY3に対応し、ブロックAがブロックY2に対応し、ブロックBがブロックY0に対応し、ブロックCがブロックY1に対応している。
【0077】
ステップS1において、予測演算回路42では、まず、フレームメモリブロック41から、注目している予測マクロブロック内のブロックY3の参照データBa[0][0]、Bb[0][0]、Bc[0][0](図4参照)を取得する。
【0078】
続くステップS2では、式(1)により参照データを比較する。ステップS2では、Ba[0][0]とBb[0][0]の差の絶対値と、Bb[0][0]とBc[0][0]の差の絶対値とを比較し、Ba[0][0]とBb[0][0]の差の絶対値がBb[0][0]とBc[0][0]の差の絶対値よりも小さい場合には、ステップS3に進み、ブロックAをその予測ブロックとしてこの予測に用いる。
【0079】
また、ステップS3では、以下の式(2)に基づいて、垂直方向直流係数(DC成分)予測を行う。
【0080】
Bx[0][0]=Bx[0][0]−(Bc[0][0]*QuantBc)//Quant_Bx ・・・(2)
【0081】
続いて、ステップS4において、参照ラインBc[j][0](ただし、j=1,2,3,4,5,6,7)が取得され、ステップS5において、以下の式(3)に基づいて、垂直方向交流係数(AC成分)予測を行ってACDC予測演算を終了する。
【0082】
Bx[j][0]=Bx[j][0]−(Bc[j][0]*QuantBc)//Quant_Bx ・・・(3)
(ただし、j=1,2,3,4,5,6,7)
【0083】
一方、ステップS2において、Bb[0][0]とBc[0][0]の差の絶対値がBa[0][0]とBb[0][0]の差の絶対値よりも小さい場合には、ステップS6に進み、ブロックY1をその予測ブロックとしてこの予測に用いる。
【0084】
ステップS6では、以下の式(4)に基づいて、水平方向直流係数(DC成分)予測を行う。
【0085】
Bx[0][0]=Bx[0][0]−(Ba[0][0]*QuantBa)//Quant_Bx ・・・(4)
【0086】
続いて、ステップS7において、参照ラインBa[0][i](ただし、i=1,2,3,4,5,6,7)が取得され、ステップS8において、以下の式(5)に基づいて、水平方向交流係数(AC成分)予測を行ってACDC予測演算を終了する。
【0087】
Bx[0][i]=Bx[0][i]−(Ba[0][i]*QuantBa)//Quant_Bx ・・・(5)
(ただし、i=1,2,3,4,5,6,7)
【0088】
このように、ブロックXのDCT係数の予測ブロックがブロックY2であった場合、予測には、ブロックY2のAC成分とブロックY2のDC成分が用いられる。また、ブロックY1が予測ブロックとされた場合、ブロックY1のAC成分とブロックCのDC成分が予測に用いられる。
【0089】
このようにしてDCT係数予測選択器35によって求められたDCT係数の予測値は、差分器34に供給される。差分器34では、DCT係数の予測値とこれに対応する位置の差分が求められ、最終的にこの値を図1に示したVLC器22に出力している。
【0090】
以上説明したように、予測演算制御回路43において、ブロックY3(ブロックX)、ブロックY2(ブロックA)、ブロックY1(ブロックC)、ブロックY0(ブロックB)の順番で予測値を算出することによって、予測マクロブロックのDCT係数を格納するためのメモリ領域を設ける必要がなくなり、回路規模の縮小できる。また、予測演算処理時のメモリアクセス制御及びこの予測演算処理自体が簡略化できる。
【0091】
なお、本発明は、上述した具体例のみに限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の変更が可能であることは勿論である。
【0092】
また以下に、上述した画像信号変換装置1によってエンコード(ビットストリーム化)された画像の符号化データを復号するための画像信号復号装置を説明しておく。画像信号復号装置としては、MPEG方式に対応したMP@MLのデコーダ70が適用できる。図6にデコーダの一例を示す。
【0093】
このデコーダ70において、伝送路を介して伝送された符号化ビットストリームを図示しない受信部にて受信する。又は記録媒体に記録された符号化ビットストリームを図示しない再生装置で再生する。このバッファ71には、このようにして得られた符号化ビットストリームが一時記憶される。
【0094】
IVLC器(逆VLC器(可変長復号器))72は、バッファ71に記憶された符号化データを読み出して可変長復号し、この符号化データをマクロブロック単位で動きベクトル、予測モード、量子化ステップ、及び量子化係数に分離する。これらのデータのうち、動きベクトル及び予測モードは、動き補償器77に供給される。量子化ステップ及びマクロブロックの量子化係数は、逆量子化器73に供給される。
【0095】
逆量子化器73は、IVLC器72より供給されたマクロブロックの量子化係数を同じくIVLC器72より供給された量子化ステップにしたがって量子化し、この結果得られるDCT係数をIDCT器74に出力する。IDCT器74は、逆量子化器73からのマクロブロックのDCT係数を逆DCTし、演算器75に供給する。
【0096】
演算器75には、IDCT器74の出力データのほか動き補償器77の出力データも供給されている。すなわち動き補償器77は、フレームメモリ76に記憶されている。既に復号された画像データを図1の動き検出及び動き補償器13における場合と同様に、IVLC器72からの動きベクトル及び予測モードにしたがって読み出し、予測画像データとして演算器75に供給する。演算器75は、IDCT器74の出力データ(予測残差(差分値))と、動き補償器77からの予測画像データとを加算することで、もとの画像データを復号する。この復号画像データは、再生画像データとして出力されるとともにフレームメモリ76に供給されて記憶される。
【0097】
IDCT器74の出力データがイントラ符号化されたものである場合、この出力データは、演算器75をスルーして、復号画像データとしてこのままフレームメモリ76に供給されて記憶される。フレームメモリ76に記憶された復号画像データは、その後に復号される画像データの参照画像データとして用いられる。更に、復号画像データは、出力再生画像として、例えば、図示しないディスプレイ等に供給されて表示される。
【0098】
【発明の効果】
以上詳細に説明したように、本発明に係る画像信号変換装置は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換装置において、予測演算手段における予測対象ブロックの予測値算出を、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に実行することによって、搭載メモリを縮小でき、予測演算処理時のメモリアクセス制御が簡略化できる。またこれにより、装置自体の回路規模が縮小できるだけでなく、画像処理プロセッサの電力消費が抑制できる。
【0099】
また、本発明に係る画像信号変換方法は、離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換方法において、予測演算工程では、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に予測値算出することによって、メモリ領域を縮小でき、予測演算処理時のメモリアクセス制御が簡略化できる。またこれにより、装置自体の回路規模が縮小できるだけでなく、画像処理プロセッサの電力消費が抑制できる。
【図面の簡単な説明】
【図1】本発明の具体例として示す画像信号変換装置を説明する構成図である。
【図2】上記画像信号変換装置のDCT係数差分化器を説明する構成図である。
【図3】上記画像信号変換装置のDCT係数予測選択器の一例を説明する構成図である。
【図4】あるマクロブロックMのDCT係数のACDC予測演算処理を説明する模式図である。
【図5】ブロックXのAC成分及びDC成分の差分値を求めるのに使用する予測ブロックを決定するため予測演算方法の一例を説明するフローチャートである。
【図6】上述した画像信号変換装置1によってエンコードされた画像の符号化データを復号するための画像信号復号装置を説明する構成図である。
【図7】従来のMPEG方式におけるMP@MLのエンコーダ100の一般的な構成説明する図である。
【図8】特開2000−023193号公報に開示されているDCT係数差分化器の例を示す図である。
【図9】予測値を求めるために注目したあるブロックにおいて、このブロックXと、この予測演算を実行する上で必要となるDCT係数(参照データ)を含む周囲ブロックを説明する図である。
【符号の説明】
1 画像信号変換装置、11 前画像処理部、12 フレームメモリ、13 動き検出及び動き補償部、14 演算器、15 DCT器、16 量子化器、17 DCT係数差分化器、18 逆量子化器、19 IDCT器、20 演算器、21 フレームメモリ、22 VLC器、31 イントラフラグ発生器、32スイッチ、33 逆量子化器、34 差分器、35 DCT係数予測値選択器、41 フレームメモリブロック、42 予測値演算回路、43 予測演算制御回路
Claims (6)
- 離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換装置において、
上記画像データの1フレーム分のデータを記憶する記憶手段と、
画像内予測符号化の際、上記記憶手段に記憶されたデータの中から予測マクロブロック内の予測対象とするブロックに隣接するブロックの離散コサイン変換係数を抽出するデータ抽出手段と、
上記データ抽出手段において抽出された上記予測対象ブロックに隣接するブロックの離散コサイン変換係数の直流係数及び/又は交流係数を参照データとして該予測対象ブロックの離散コサイン変換係数の直流係数及び/又は交流係数の予測値を算出する予測演算手段と、
上記予測演算手段における予測対象ブロックの予測値算出を、予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に実行する予測演算制御手段と
を備えることを特徴とする画像信号変換装置。 - 上記予測演算制御手段は、
上記予測マクロブロック内にあって予測対象ブロックの直上に隣接する第1のブロックの参照データと上記予測マクロブロック内にあって上記予測対象ブロックの左側に隣接する第2のブロックの参照データとから上記予測対象ブロックの予測値を算出し、
上記第2のブロックを予測対象ブロックとして、上記予測マクロブロック内にあって該第2のブロックの直上に隣接する第3のブロックの参照データと上記予測マクロブロック外にあって該第2のブロックの左側に隣接する第4のブロックの参照データとから該第2のブロックの予測値を算出し、
上記第1のブロックを予測対象ブロックとして、上記予測マクロブロック外にあって該第1のブロックの直上に隣接する第5のブロックの参照データと上記予測マクロブロック内にあって該第1のブロックの左側に隣接する上記第3のブロックの参照データとから該第1のブロックの予測値を算出し、
上記第3のブロックを予測対象ブロックとして、上記予測マクロブロック外にあって該第3のブロックの直上に隣接する第6のブロックの参照データと上記予測マクロブロック外にあって該第3のブロックの左側に隣接する第7のブロックの参照データとから該第3のブロックの予測値を算出する
ことを特徴とする請求項1記載の画像信号変換装置。 - 上記画像圧縮情報は、MPEG(Moving Picture Experts Group)規格に準拠していることを特徴とする請求項1記載の画像信号変換装置。
- 離散コサイン変換と動き補償を適用して画像データを圧縮して画像圧縮情報を得る画像信号変換方法において、
画像内予測符号化の際、上記画像データの1フレーム分のデータの中から予測マクロブロック内の予測対象とするブロックに隣接するブロックの離散コサイン変換係数を抽出するデータ抽出工程と、
上記データ抽出工程において抽出された上記予測対象ブロックに隣接するブロックの離散コサイン変換係数の直流係数及び/又は交流係数を参照データとして該予測対象ブロックの離散コサイン変換係数の直流係数及び/又は交流係数の予測値を算出する予測演算工程とを有し、
上記予測演算工程では、上記予測マクロブロック内にある参照データを用いて予測値が算出できる予測対象ブロックから優先的に予測値算出を実行することを特徴とする画像信号変換方法。 - 上記予測演算工程には、
上記予測マクロブロック内にあって予測対象ブロックの直上に隣接する第1のブロックの参照データと上記予測マクロブロック内にあって上記予測対象ブロックの左側に隣接する第2のブロックの参照データとから上記予測対象ブロックの予測値を算出する工程と、
上記第2のブロックを予測対象ブロックとして、上記予測マクロブロック内にあって該第2のブロックの直上に隣接する第3のブロックの参照データと上記予測マクロブロック外にあって該第2のブロックの左側に隣接する第4のブロックの参照データとから該第2のブロックの予測値を算出する工程と、
上記第1のブロックを予測対象ブロックとして、上記予測マクロブロック外にあって該第1のブロックの直上に隣接する第5のブロックの参照データと上記予測マクロブロック内にあって該第1のブロックの左側に隣接する上記第3のブロックの参照データとから該第1のブロックの予測値を算出する工程と、
上記第3のブロックを予測対象ブロックとして、上記予測マクロブロック外にあって該第3のブロックの直上に隣接する第6のブロックの参照データと上記予測マクロブロック外にあって該第3のブロックの左側に隣接する第7のブロックの参照データとから該第3のブロックの予測値を算出する工程と
が含まれることを特徴とする請求項4記載の画像信号変換方法。 - 上記画像圧縮情報は、MPEG(Moving Picture Experts Group)規格に準拠していることを特徴とする請求項4記載の画像信号変換方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002295291A JP2004134889A (ja) | 2002-10-08 | 2002-10-08 | 画像信号変換装置及び画像信号変換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002295291A JP2004134889A (ja) | 2002-10-08 | 2002-10-08 | 画像信号変換装置及び画像信号変換方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004134889A true JP2004134889A (ja) | 2004-04-30 |
Family
ID=32285595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002295291A Pending JP2004134889A (ja) | 2002-10-08 | 2002-10-08 | 画像信号変換装置及び画像信号変換方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004134889A (ja) |
-
2002
- 2002-10-08 JP JP2002295291A patent/JP2004134889A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3413720B2 (ja) | 画像符号化方法及び装置、並びに画像復号方法及び装置 | |
JP4261630B2 (ja) | 画像符号化装置及び方法、画像符号化プログラムが記録されたコンピュータ可読記録媒体 | |
KR100418141B1 (ko) | 화상부호화장치,화상부호화방법,화상복호화장치및화상복호화방법 | |
JP3413721B2 (ja) | 画像符号化方法及び装置、並びに画像復号方法及び装置 | |
US8218949B2 (en) | Video information recording device, video information recording method, and recording medium containing the video information recording program | |
JPH05115061A (ja) | 動きベクトル符号器および復号器 | |
JP2004520771A (ja) | ドリフト補正を備えたビデオトランスコーダ | |
JP2000023190A (ja) | 動きベクトル生成方法、画像符号化装置、動き補償方法、動き補償装置、及び提供媒体 | |
US20020172282A1 (en) | Signal coding apparatus and method, signal recording medium, and signal transmitting method | |
JP3893350B2 (ja) | 符号化データ変換装置及びその方法 | |
JP4209134B2 (ja) | 圧縮ビットストリームをアップサンプリングする方法および装置 | |
JP3263901B2 (ja) | 画像信号符号化方法及び装置、画像信号復号化方法及び装置 | |
JPH11308618A (ja) | 画像信号処理装置及び方法並びに画像信号再生装置 | |
JPH11289515A (ja) | 画像信号処理装置及び方法、画像信号記録装置及び方法並びに記録媒体 | |
JP2004134889A (ja) | 画像信号変換装置及び画像信号変換方法 | |
KR100522595B1 (ko) | 엠펙 비디오 복호화방법 및 엠펙 비디오 복호화기 | |
JP4178521B2 (ja) | 符号化映像信号の記録方法、及び映像信号符号化装置 | |
JP3380981B2 (ja) | 画像符号化装置および画像符号化方法、画像復号装置および画像復号方法、並びに記録媒体 | |
JP2009290387A (ja) | エンコーダ、デコーダ、及び記録再生装置 | |
JP2004112337A (ja) | 画像信号処理方法及び画像信号処理装置 | |
JP2002185969A (ja) | 動画像符号化データの形式変換方法及び装置 | |
JP2002374531A (ja) | 復号装置 | |
JP2003087797A (ja) | 画像情報変換装置及び方法、画像情報変換プログラム、並びに記録媒体 | |
JPH07250329A (ja) | 画像合成符号化方法及び画像合成装置 | |
JP2007049520A (ja) | 画像信号の高能率符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070601 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070612 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071016 |