JP2005012372A - 映像符号化装置 - Google Patents
映像符号化装置 Download PDFInfo
- Publication number
- JP2005012372A JP2005012372A JP2003172529A JP2003172529A JP2005012372A JP 2005012372 A JP2005012372 A JP 2005012372A JP 2003172529 A JP2003172529 A JP 2003172529A JP 2003172529 A JP2003172529 A JP 2003172529A JP 2005012372 A JP2005012372 A JP 2005012372A
- Authority
- JP
- Japan
- Prior art keywords
- picture
- frame
- video data
- field
- inter
- 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, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】従来は、周波数的及び時間的に相関が少ないような一部の映像データに対しては適切な符号化を行うことができず、視覚上不適切な歪みを有する映像を発生させてしまうことがある。
【解決手段】動きベクトル検出回路13は、現在のピクチャのブロックA(x,y)に対して、参照すべきピクチャのブロックのうち、一番絶対値の誤差が小さいブロックB(i,j)を選び、ピクチャ内の全てのブロックに対して求めた差分の絶対値の最小値の総和をMEスコアとして求める。比較(誤差)回路14は、フレームバッファ/前処理回路11から取り出された映像データと、局部復号された映像データとの誤差を算出し、リファレンスバッファ19の所定の基準値を制御する。動きベクトル検出回路13は、MEスコアの値がある回数時間的に継続して上記基準値を超えた場合、I又はPピクチャの間隔Mの値を変更する。
【選択図】 図1
【解決手段】動きベクトル検出回路13は、現在のピクチャのブロックA(x,y)に対して、参照すべきピクチャのブロックのうち、一番絶対値の誤差が小さいブロックB(i,j)を選び、ピクチャ内の全てのブロックに対して求めた差分の絶対値の最小値の総和をMEスコアとして求める。比較(誤差)回路14は、フレームバッファ/前処理回路11から取り出された映像データと、局部復号された映像データとの誤差を算出し、リファレンスバッファ19の所定の基準値を制御する。動きベクトル検出回路13は、MEスコアの値がある回数時間的に継続して上記基準値を超えた場合、I又はPピクチャの間隔Mの値を変更する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は映像符号化装置に係り、特に映像データの圧縮を目的とし、フレーム間の動き補償情報を用いて映像データを符号化する映像符号化装置に関する。
【0002】
【従来の技術】
映像符号化方式として今日汎用的な方法としてはMPEG(Moving Picture Experts Group)によって規定された方法があり、中でもMPEG2(Moving Picture Experts Group 2 )として規定された映像符号化方式はDVD(Digital versatile Disk)や、2000年12月から開始されたBSディジタル放送に採用され、2003年に開始が予定されている地上波ディジタル放送にも採用が予定されている。これは、映像データの圧縮は圧縮率が高く、かつ、高画質な圧縮方法が望まれるが、MPEG2は映像の時間的な相関性と空間的な相関性及び人間の視覚的な特性を基にした高能率圧縮符号化を行う方式であり、上記の要求に応える符号化方式であるからである。このMPEG2では、符号化装置の性能で符号化信号のデータ量と画質が決定される。
【0003】
ここで、上記のMPEG2では、映像データをフレーム内圧縮符号化して得られたIピクチャと、前方向予測フレーム間圧縮符号化により生成したPピクチャと、前方向と後方向の双方向の予測フレーム間符号化により生成したBピクチャの3種類が規定されており、また、早送りなどのために、MPEGではIピクチャから次のIピクチャが現れる直前までの複数ピクチャからなるGOP(Group Of Picture)と称する構成単位を設けている。
【0004】
そして、任意のフレームをIピクチャとすることにより、そのフレームでの頭出しを可能とし、また、シーンチェンジの直後のフレームをIピクチャとするようにした符号化を行う映像符号化装置が従来より知られている(例えば、特許文献1参照)。
【0005】
すなわち、この特許文献1記載の従来の映像符号化装置では、1GOP当りのフレーム数(Iピクチャが現れる周期のピクチャ数)をN、Iピクチャから一定のフレーム間隔で現れるPピクチャの周期のピクチャ数(I又はPピクチャの間隔フレーム数)をMとしたとき、通常の映像データ符号化の際には、Iピクチャから次のIピクチャまでのGOPのGOP構造は、N=N1、M=M1とする第1のGOP構造で圧縮符号化を行い、シーンチェンジ直後のフレームのように強制的にIピクチャにしたいフレームI1が、第1のGOP構造を続けたときのIピクチャと一致しない場合は、I1から1又は2個前のGOPにおいて、GOP構造は第1のGOP構造と異なる第2又は第3のGOP構造で圧縮符号化を行う装置である。
【0006】
【特許文献1】
特開平10−313462号公報(特許請求の範囲)
【0007】
【発明が解決しようとする課題】
しかるに、上記の従来の映像符号化装置では、MPEGで規定される各種フレームの構造(シンタックス)を、シーンチェンジ直後のフレームがIピクチャであるか否かに応じて変更するようにしているが、符号化される映像データは様々なものが想定されるにも拘らず、通常はある一定な範囲で想定した設定状態をもとにして符号化しているため、周波数的及び時間的に相関が少ないような一部の映像データに対しては適切な符号化を行うことができず、視覚上不適切な歪みを有する映像を発生させてしまうことがある。
【0008】
本発明は以上の点に鑑みてなされたもので、MPEGで規定される各種フレームの構造(シンタックス)を、符号化の際の動きベクトルの評価を行う過程で算出される値を基にして、シンタックス構造を変更することにより、効率的で視覚上不具合のない映像符号化を行うことが可能な映像符号化装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記の目的を達成するため、本発明は、映像データの画像単位であるフレーム又はフィールドを所定数のブロックに分割して、ブロック単位に符号化を行う映像符号化装置であり、映像データからフレーム内又はフィールド内圧縮符号化方法により生成したIピクチャと、現在のフレーム又はフィールドの映像データと時間的に過去のフレーム又はフィールドの局部復号映像データから求めた動きベクトルに基づき符号化する前方向予測フレーム間又はフィールド間圧縮符号化方法により生成したPピクチャと、現在のフレーム又はフィールドの映像データと時間的に過去及び未来の両方のフレーム又はフィールドの局部復号映像データから求めた動きベクトルに基づき符号化する双方向予測フレーム間又はフィールド間圧縮符号化方法により生成したBピクチャのうち、少なくともIピクチャ及びPピクチャをIピクチャから次のIピクチャの直前のピクチャまでの一定のピクチャ数Nを構成単位とするシンタックス構造の符号化データとして出力する映像符号化装置において、前方向予測フレーム間又はフィールド間圧縮符号化方法又は双方向予測フレーム間又はフィールド間圧縮符号化方法での動き補償のための動きベクトルを求める処理の際に用いられる、映像データの現在のフレーム又はフィールドの上記ブロックである第1のブロックそれぞれに対して参照すべき局部復号映像データのフレーム又はフィールドのブロックのうち最も誤差が小さい第2のブロックを求め、フレーム又はフィールド内のすべての該第1のブロックのデータと第2のブロックのデータとの差分の絶対値の最小値の総和を算出する算出手段と、算出手段により算出された総和に応じて、ピクチャ数Nの構成単位におけるI又はPピクチャの間隔Mを変更制御すると共に、ピクチャ数Nを変更後のMの値のK倍(Kは自然数)に設定する制御手段とを有することを特徴とする。
【0010】
この発明では、動き補償のための動きベクトルを求めるための処理において算出される上記の総和を基にして、ピクチャ数Nの構成単位(GOP)におけるI又はPピクチャの間隔Mを変更制御すると共に、ピクチャ数Nを変更後のMの値のK倍(Kは自然数)に設定するようにしたため、符号化されるべき映像データの符号化の際の予測効率が良いシーンと悪いシーンに応じてシンタックス構造を変更することができる。
【0011】
【発明の実施の形態】
次に、本発明の実施の形態について図面と共に説明する。図1は本発明になる映像符号化装置の一実施の形態のブロック図を示す。本実施の形態は、入力された映像データをMPEG2の規定に従った圧縮符号化を行う映像符号化装置である。ここで、MPEG2で実際に規定されているのは復号化の際のフォーマットのみであり、映像符号化装置は入力された映像データをMPEG2の規定に則った形で符号化さえすればよく、従って符号化の際のデータ量と画質は映像符号化装置そのものの性能で決定されることになり、映像符号化装置内の符号化方法(映像符号化アルゴリズム)には非常に高い自由度がある。
【0012】
図1において、入力された符号化されるべき映像データは、フレームバッファ/前処理回路11に供給され、フレームバッファによりフレーム単位で一旦蓄積され、更に必要に応じて前処理回路部でフィルタ処理や、ダウンサンプリングなどの処理が行われた後、減算器12、動きベクトル検出回路13及び後述する比較(誤差)回路14にそれぞれ供給される。
【0013】
前記Iピクチャとなるフレーム(基準フレーム)の映像データは、減算器12を経由してDCT/量子化回路15に供給され、ここでフレーム内の冗長性を取り除くために、時間領域の映像データがDCT(離散コサイン変換)によって周波数領域のDCT係数に変換され、更に一般の放送などで扱う映像信号の特性と人間の視覚特性を考慮した形で量子化を行われて情報量が削減される。
【0014】
DCT/量子化回路15によりDCT及び量子化された信号は、VLC(Variable Length Coding)回路16に供給されて可変長符号化される一方、逆量子化/IDCT回路17に供給されて逆量子化及び逆DCT変換され、局部復号された映像データとされた後、加算器18を経由してリファレンスバッファ19に供給されて格納される。VLC回路16から出力された可変長符号化データは、多重化装置22を経由して出力される。
【0015】
次に、映像データの前記Pピクチャ又はBピクチャとなる例えばn番目のフレームにおいては、動きベクトル検出回路13において、フレームバッファ/前処理回路11から取り出されたn番目のフレームの映像データと、リファレンスバッファ19から読み出された、局部復号されたn−i番目とn+j番目(i,j≠0)の映像データ(参照画像データ)との間で、マクロブロック間の誤差が算出されて、画像間の動きベクトルとして動き補償予測回路20に供給される。
【0016】
また、動きベクトル検出回路13の出力信号は、加算器18に供給されて逆量子化/IDCT回路17から出力される局部復号された映像データと加算されると共に、減算器12に供給されてフレームバッファ/前処理回路11から取り出されたn番目のフレームの映像データと減算され時間的な冗長性が除去される。すなわち、映像符号化で対象とする映像データは、一般的に連続する画像フレームの同位置での画素値が近い値であるという時間的な冗長性を持つ。そこで、MPEG2ではこの冗長性を取り除くために、あるフレームを符号化する際には、前後のフレーム間での動きを含んだ予測処理を行い、減算器12で差分を算出する。減算器12からの差分信号はDCT/量子化回路15に出力される。
【0017】
また、動き補償予測回路20から取り出された動きベクトルの情報を示す信号は、VLC回路21で可変長符号化された後、多重化装置22に供給され、ここでVLC回路16から出力された可変長符号化されたデータと多重された後符号化データとして出力される。
【0018】
また、レート制御回路23は、予め設定されている符号化データの単位時間当たりのデータ量が適切な範囲で収まるように、量子化の際に必要な係数の設定を行い、DCT/量子化回路15の量子化の細かさなどを可変制御する。更に、本実施の形態では、後述するように、フレームバッファ/前処理回路11から取り出された映像データと、加算器18から出力された局部復号された映像データとの誤差を比較(誤差)回路14で算出し、算出したその誤差により、リファレンスバッファ19の所定の基準値を制御する。
【0019】
ここで、多重化装置22から出力されるMPEG2の規定による符号化データは、前述したように、フレーム内符号化フレームであるIピクチャと、フレーム間予測符号化フレームであるPピクチャと、フレーム内挿符号化フレームであるBピクチャのいずれかであり、これらはIピクチャから次のIピクチャの直前のピクチャまでの複数のピクチャからなるGOP(Group Of Picture)と称する構成単位で出力される。
【0020】
いま、1GOP当りのピクチャ数(フレーム数)をN、Iピクチャから次のPピクチャの直前のピクチャまでのピクチャ数及びPピクチャから次のPピクチャの直前のピクチャまでのピクチャ数(以下、本明細書ではこれを「I又はPピクチャの間隔」という)をM(≦N)で表現すると、M=3、M=2、M=1の場合のピクチャ(フレーム)構造(シンタックス)は、図2(A)、(B)、(C)に示される。M=3の場合は、図2(A)に示すように、Iピクチャから次のPピクチャまでの間、又はPピクチャから次のPピクチャまでの間に存在するBピクチャの個数が2つの場合である。
【0021】
また、M=2の場合は、図2(B)に示すように、Iピクチャから次のPピクチャまでの間、又はPピクチャから次のPピクチャまでの間に存在するBピクチャの個数が1つの場合であり、M=1の場合は、図2(C)に示すように、Iピクチャから次のPピクチャまでの間、又はPピクチャから次のPピクチャまでの間にはBピクチャが存在しない。なお、図2中、矢印は予測の方向を示す。
【0022】
一般的に動きの激しい映像の場合は、Mの値が大きいと予測がうまく当たらず、その場合はM=1にして、予測距離を小さくしたほうが、符号化の効率が良い。逆に動きがゆっくりしている映像の場合には、M=3にして、時間的な予測距離を大きくした方が符号化の効率が良くなる。
【0023】
通常、Mの値は固定値で使用されることが多く、符号化の符号化レートに余裕がある場合は問題ないが、低い符号化レートで高画質を実現しようとした場合、シーンに応じてMの値を変更した方が符号化効率は良くなる。
【0024】
そこで、本実施の形態では、動きベクトル検出回路13において算出されたMEスコア(後述で定義)を使用して、I又はPピクチャの間隔Mの値を自動的に変更することで符号化効率を向上させる。
【0025】
図3は本実施の形態によりM=1、2、3の範囲でMを自動的に変更するときの状態遷移図を示す。同図中、Rxyは、M=x(x=1〜3)の状態からM=y(y=1〜3)の状態へ遷移するときの確率を示す。また、M=xの状態からM=1、2、3のいずれかに遷移するときの確率の和は1である。すなわち、
Rx1+Rx2+Rx3=1
である。本実施の形態では、MEスコアの値に応じて、I又はPピクチャの間隔Mの値を自動的に変更するが、その際のMが変化する確率を示すのが上記のRxyである。
【0026】
次に、本発明の実施の形態におけるMEスコアの算出方法について説明する。MEスコアは、参照画像(局部復号映像データ)を必要とするPピクチャ又はBピクチャを処理する際に求める値であり、Pピクチャの処理の際には時間的に前方向のピクチャの局部復号映像データのみ参照し、Bピクチャの処理の際には時間的に前後両方向のピクチャの局部復号映像データを参照して求める。
【0027】
すなわち、図4(A)に示す現在のピクチャ(フレーム)のブロックA(x,y)に対して、同図(B)に示す参照すべきピクチャ(フレーム)のブロックB(i,j)のうち、一番絶対値の誤差が小さいブロックB(i,j)を選び、ピクチャ内の全てのブロックA(x,y)に対して求めた差分(A(x,y)−B(i,j))の絶対値の最小値の総和をMEスコア(MeScore)として定義する。なお、MEスコアはフレーム単位で求められる。
【0028】
この時、映像が余り大きく変化しないシーンの場合は、パターンマッチングにより変化が少ないブロックが選ばれ、その時の誤差は小さくなる。一方、映像が大きく変化した場合は、パターンマッチングによって一番誤差が小さなブロックを選んでも、一般に誤差が大きくなる。従って、この誤差を評価値として、フレーム間の予測が当たる/当たらないを判断できることになる。
【0029】
一方、Mの値がxからyに変化する確率Rxyの値は、入力される映像データによって変化するが、各種の原画の映像データを予め多数使用し、各原画の映像データ毎に局部復号した同一フレームとの誤差を使用し、動きベクトル検出回路13で誤差が最小となるようなRxyを予め求めて保存しておく。これにより、映像を最適な画質で符号化することが可能なRxy値が決定されることになり、この確率Rxyにより各種映像フォーマットや符号化レートに応じたMEスコアでの遷移の際の基準値が決定される。
【0030】
すなわち、図1の比較(誤差)回路14は、フレームバッファ/前処理回路11から取り出された映像データと、加算器18から出力された局部復号された同一フレームの映像データとの誤差を算出し、算出したその誤差をリファレンスバッファ19に供給する。これにより、リファレンスバッファ19は実際に前記のM、Nを制御する際に動きベクトル検出回路13で誤差が最小となるような予め求めておいたRxyを、入力された誤差に基づき決定し、更にそのRxyによって定義される確率から基準値を設定する。
【0031】
一方、動きベクトル検出回路13は、前述した方法で算出したMEスコアの値がある回数、例えば、M=3であるときに時間的に8フレーム分継続して上記基準値を超えた場合、M=1又はM=2に変更する。このMの値の変更は、Mの値に応じて参照すべきリファレンスバッファ19の位置を決定する事で行われる。
【0032】
また、I又はPピクチャの間隔Mと、1GOPのピクチャ数Nとは整数比の関係である必要があるので、M=3のときは1GOPのピクチャ数Nは、3の倍数(すなわち、N=12、15など)であるが、上記のようにM=2に変更されるとNの値は偶数(すなわち、N=12、14など)になるように変更され、M=1に変更されるとNの値は任意の値に変更される(変更しなくてもよい場合は、変更しなくてもよい)。Nの値は、Mの値に応じてそのMの値の予め設定された自然数倍の値に決定され、MとNの値が決定すると1GOP当りのBピクチャの数が自動的に決まる。
【0033】
このように、本実施の形態によれば、MPEGで規定される各種フレームの構造(シンタックス)を、符号化の際の動きベクトルの評価を行う過程で算出されるMEスコアを基にして、シンタックス構造を変更するようにしたため、予測効率が良いシーンと悪いシーンに応じてシンタックスを適宜切替えることが可能となり、効率的で視覚上不具合のない映像符号化を行うことができる。
【0034】
なお、本発明は上記の実施の形態に限定されるものではなく、例えば、動きベクトル検出回路13によりMの値を変更する場合に、ある一定フレーム数でのMEスコア平均値が、Rxyによって定義される確率から設定された基準値を超えた場合、例えばM=3からM=2又はM=1に変更するようにしてもよい。また、一つのフレームで上記基準値を超えたら即座にMの値を変更することも可能である。
【0035】
また、Rxyによって定義される確率から設定される基準値を、符号化される映像データから自動的に変更することも可能である(すなわち、自動学習モードを存在させる。)。更に、以上の実施の形態では、フレーム間予測を行う場合について説明したが、Iピクチャをフィールド内圧縮符号化方法により生成し、Pピクチャを前方向予測フィールド間圧縮符号化方法により生成し、Bピクチャを前後の双方向予測フィールド間圧縮符号化方法により生成する符号化装置にも適用可能である。
【0036】
【発明の効果】
以上説明したように、本発明によれば、動き補償のための動きベクトルを求めるための処理において算出される上記の総和を基にして、ピクチャ数Nの構成単位(GOP)におけるI又はPピクチャの間隔Mを変更制御すると共に、ピクチャ数Nを変更後のMの値のK倍(Kは自然数)に設定することにより、符号化されるべき映像データの符号化の際の予測効率が良いシーンと悪いシーンに応じてシンタックス構造を変更するようにしたため、効率的で視覚上不具合のない映像符号化を行うことができる。また、本発明によれば、限られたデータ量の中でも、より最適な映像信号の符号化が期待できる。
【図面の簡単な説明】
【図1】本発明の一実施の形態のブロック図である。
【図2】GOPの各例を示す図である。
【図3】Mの状態遷移図である。
【図4】図1の装置において用いるMEスコアの算出方法の説明図である。
【符号の説明】
11 フレームバッファ/前処理回路
12 減算器
13 動きベクトル検出回路
14 比較(誤差)回路
15 DCT/量子化回路
16、21 VLC回路
17 逆量子化/IDCT回路
18 加算器
19 リファレンスバッファ
20 動き補償予測回路
22 多重化装置
23 レート制御回路
【発明の属する技術分野】
本発明は映像符号化装置に係り、特に映像データの圧縮を目的とし、フレーム間の動き補償情報を用いて映像データを符号化する映像符号化装置に関する。
【0002】
【従来の技術】
映像符号化方式として今日汎用的な方法としてはMPEG(Moving Picture Experts Group)によって規定された方法があり、中でもMPEG2(Moving Picture Experts Group 2 )として規定された映像符号化方式はDVD(Digital versatile Disk)や、2000年12月から開始されたBSディジタル放送に採用され、2003年に開始が予定されている地上波ディジタル放送にも採用が予定されている。これは、映像データの圧縮は圧縮率が高く、かつ、高画質な圧縮方法が望まれるが、MPEG2は映像の時間的な相関性と空間的な相関性及び人間の視覚的な特性を基にした高能率圧縮符号化を行う方式であり、上記の要求に応える符号化方式であるからである。このMPEG2では、符号化装置の性能で符号化信号のデータ量と画質が決定される。
【0003】
ここで、上記のMPEG2では、映像データをフレーム内圧縮符号化して得られたIピクチャと、前方向予測フレーム間圧縮符号化により生成したPピクチャと、前方向と後方向の双方向の予測フレーム間符号化により生成したBピクチャの3種類が規定されており、また、早送りなどのために、MPEGではIピクチャから次のIピクチャが現れる直前までの複数ピクチャからなるGOP(Group Of Picture)と称する構成単位を設けている。
【0004】
そして、任意のフレームをIピクチャとすることにより、そのフレームでの頭出しを可能とし、また、シーンチェンジの直後のフレームをIピクチャとするようにした符号化を行う映像符号化装置が従来より知られている(例えば、特許文献1参照)。
【0005】
すなわち、この特許文献1記載の従来の映像符号化装置では、1GOP当りのフレーム数(Iピクチャが現れる周期のピクチャ数)をN、Iピクチャから一定のフレーム間隔で現れるPピクチャの周期のピクチャ数(I又はPピクチャの間隔フレーム数)をMとしたとき、通常の映像データ符号化の際には、Iピクチャから次のIピクチャまでのGOPのGOP構造は、N=N1、M=M1とする第1のGOP構造で圧縮符号化を行い、シーンチェンジ直後のフレームのように強制的にIピクチャにしたいフレームI1が、第1のGOP構造を続けたときのIピクチャと一致しない場合は、I1から1又は2個前のGOPにおいて、GOP構造は第1のGOP構造と異なる第2又は第3のGOP構造で圧縮符号化を行う装置である。
【0006】
【特許文献1】
特開平10−313462号公報(特許請求の範囲)
【0007】
【発明が解決しようとする課題】
しかるに、上記の従来の映像符号化装置では、MPEGで規定される各種フレームの構造(シンタックス)を、シーンチェンジ直後のフレームがIピクチャであるか否かに応じて変更するようにしているが、符号化される映像データは様々なものが想定されるにも拘らず、通常はある一定な範囲で想定した設定状態をもとにして符号化しているため、周波数的及び時間的に相関が少ないような一部の映像データに対しては適切な符号化を行うことができず、視覚上不適切な歪みを有する映像を発生させてしまうことがある。
【0008】
本発明は以上の点に鑑みてなされたもので、MPEGで規定される各種フレームの構造(シンタックス)を、符号化の際の動きベクトルの評価を行う過程で算出される値を基にして、シンタックス構造を変更することにより、効率的で視覚上不具合のない映像符号化を行うことが可能な映像符号化装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
上記の目的を達成するため、本発明は、映像データの画像単位であるフレーム又はフィールドを所定数のブロックに分割して、ブロック単位に符号化を行う映像符号化装置であり、映像データからフレーム内又はフィールド内圧縮符号化方法により生成したIピクチャと、現在のフレーム又はフィールドの映像データと時間的に過去のフレーム又はフィールドの局部復号映像データから求めた動きベクトルに基づき符号化する前方向予測フレーム間又はフィールド間圧縮符号化方法により生成したPピクチャと、現在のフレーム又はフィールドの映像データと時間的に過去及び未来の両方のフレーム又はフィールドの局部復号映像データから求めた動きベクトルに基づき符号化する双方向予測フレーム間又はフィールド間圧縮符号化方法により生成したBピクチャのうち、少なくともIピクチャ及びPピクチャをIピクチャから次のIピクチャの直前のピクチャまでの一定のピクチャ数Nを構成単位とするシンタックス構造の符号化データとして出力する映像符号化装置において、前方向予測フレーム間又はフィールド間圧縮符号化方法又は双方向予測フレーム間又はフィールド間圧縮符号化方法での動き補償のための動きベクトルを求める処理の際に用いられる、映像データの現在のフレーム又はフィールドの上記ブロックである第1のブロックそれぞれに対して参照すべき局部復号映像データのフレーム又はフィールドのブロックのうち最も誤差が小さい第2のブロックを求め、フレーム又はフィールド内のすべての該第1のブロックのデータと第2のブロックのデータとの差分の絶対値の最小値の総和を算出する算出手段と、算出手段により算出された総和に応じて、ピクチャ数Nの構成単位におけるI又はPピクチャの間隔Mを変更制御すると共に、ピクチャ数Nを変更後のMの値のK倍(Kは自然数)に設定する制御手段とを有することを特徴とする。
【0010】
この発明では、動き補償のための動きベクトルを求めるための処理において算出される上記の総和を基にして、ピクチャ数Nの構成単位(GOP)におけるI又はPピクチャの間隔Mを変更制御すると共に、ピクチャ数Nを変更後のMの値のK倍(Kは自然数)に設定するようにしたため、符号化されるべき映像データの符号化の際の予測効率が良いシーンと悪いシーンに応じてシンタックス構造を変更することができる。
【0011】
【発明の実施の形態】
次に、本発明の実施の形態について図面と共に説明する。図1は本発明になる映像符号化装置の一実施の形態のブロック図を示す。本実施の形態は、入力された映像データをMPEG2の規定に従った圧縮符号化を行う映像符号化装置である。ここで、MPEG2で実際に規定されているのは復号化の際のフォーマットのみであり、映像符号化装置は入力された映像データをMPEG2の規定に則った形で符号化さえすればよく、従って符号化の際のデータ量と画質は映像符号化装置そのものの性能で決定されることになり、映像符号化装置内の符号化方法(映像符号化アルゴリズム)には非常に高い自由度がある。
【0012】
図1において、入力された符号化されるべき映像データは、フレームバッファ/前処理回路11に供給され、フレームバッファによりフレーム単位で一旦蓄積され、更に必要に応じて前処理回路部でフィルタ処理や、ダウンサンプリングなどの処理が行われた後、減算器12、動きベクトル検出回路13及び後述する比較(誤差)回路14にそれぞれ供給される。
【0013】
前記Iピクチャとなるフレーム(基準フレーム)の映像データは、減算器12を経由してDCT/量子化回路15に供給され、ここでフレーム内の冗長性を取り除くために、時間領域の映像データがDCT(離散コサイン変換)によって周波数領域のDCT係数に変換され、更に一般の放送などで扱う映像信号の特性と人間の視覚特性を考慮した形で量子化を行われて情報量が削減される。
【0014】
DCT/量子化回路15によりDCT及び量子化された信号は、VLC(Variable Length Coding)回路16に供給されて可変長符号化される一方、逆量子化/IDCT回路17に供給されて逆量子化及び逆DCT変換され、局部復号された映像データとされた後、加算器18を経由してリファレンスバッファ19に供給されて格納される。VLC回路16から出力された可変長符号化データは、多重化装置22を経由して出力される。
【0015】
次に、映像データの前記Pピクチャ又はBピクチャとなる例えばn番目のフレームにおいては、動きベクトル検出回路13において、フレームバッファ/前処理回路11から取り出されたn番目のフレームの映像データと、リファレンスバッファ19から読み出された、局部復号されたn−i番目とn+j番目(i,j≠0)の映像データ(参照画像データ)との間で、マクロブロック間の誤差が算出されて、画像間の動きベクトルとして動き補償予測回路20に供給される。
【0016】
また、動きベクトル検出回路13の出力信号は、加算器18に供給されて逆量子化/IDCT回路17から出力される局部復号された映像データと加算されると共に、減算器12に供給されてフレームバッファ/前処理回路11から取り出されたn番目のフレームの映像データと減算され時間的な冗長性が除去される。すなわち、映像符号化で対象とする映像データは、一般的に連続する画像フレームの同位置での画素値が近い値であるという時間的な冗長性を持つ。そこで、MPEG2ではこの冗長性を取り除くために、あるフレームを符号化する際には、前後のフレーム間での動きを含んだ予測処理を行い、減算器12で差分を算出する。減算器12からの差分信号はDCT/量子化回路15に出力される。
【0017】
また、動き補償予測回路20から取り出された動きベクトルの情報を示す信号は、VLC回路21で可変長符号化された後、多重化装置22に供給され、ここでVLC回路16から出力された可変長符号化されたデータと多重された後符号化データとして出力される。
【0018】
また、レート制御回路23は、予め設定されている符号化データの単位時間当たりのデータ量が適切な範囲で収まるように、量子化の際に必要な係数の設定を行い、DCT/量子化回路15の量子化の細かさなどを可変制御する。更に、本実施の形態では、後述するように、フレームバッファ/前処理回路11から取り出された映像データと、加算器18から出力された局部復号された映像データとの誤差を比較(誤差)回路14で算出し、算出したその誤差により、リファレンスバッファ19の所定の基準値を制御する。
【0019】
ここで、多重化装置22から出力されるMPEG2の規定による符号化データは、前述したように、フレーム内符号化フレームであるIピクチャと、フレーム間予測符号化フレームであるPピクチャと、フレーム内挿符号化フレームであるBピクチャのいずれかであり、これらはIピクチャから次のIピクチャの直前のピクチャまでの複数のピクチャからなるGOP(Group Of Picture)と称する構成単位で出力される。
【0020】
いま、1GOP当りのピクチャ数(フレーム数)をN、Iピクチャから次のPピクチャの直前のピクチャまでのピクチャ数及びPピクチャから次のPピクチャの直前のピクチャまでのピクチャ数(以下、本明細書ではこれを「I又はPピクチャの間隔」という)をM(≦N)で表現すると、M=3、M=2、M=1の場合のピクチャ(フレーム)構造(シンタックス)は、図2(A)、(B)、(C)に示される。M=3の場合は、図2(A)に示すように、Iピクチャから次のPピクチャまでの間、又はPピクチャから次のPピクチャまでの間に存在するBピクチャの個数が2つの場合である。
【0021】
また、M=2の場合は、図2(B)に示すように、Iピクチャから次のPピクチャまでの間、又はPピクチャから次のPピクチャまでの間に存在するBピクチャの個数が1つの場合であり、M=1の場合は、図2(C)に示すように、Iピクチャから次のPピクチャまでの間、又はPピクチャから次のPピクチャまでの間にはBピクチャが存在しない。なお、図2中、矢印は予測の方向を示す。
【0022】
一般的に動きの激しい映像の場合は、Mの値が大きいと予測がうまく当たらず、その場合はM=1にして、予測距離を小さくしたほうが、符号化の効率が良い。逆に動きがゆっくりしている映像の場合には、M=3にして、時間的な予測距離を大きくした方が符号化の効率が良くなる。
【0023】
通常、Mの値は固定値で使用されることが多く、符号化の符号化レートに余裕がある場合は問題ないが、低い符号化レートで高画質を実現しようとした場合、シーンに応じてMの値を変更した方が符号化効率は良くなる。
【0024】
そこで、本実施の形態では、動きベクトル検出回路13において算出されたMEスコア(後述で定義)を使用して、I又はPピクチャの間隔Mの値を自動的に変更することで符号化効率を向上させる。
【0025】
図3は本実施の形態によりM=1、2、3の範囲でMを自動的に変更するときの状態遷移図を示す。同図中、Rxyは、M=x(x=1〜3)の状態からM=y(y=1〜3)の状態へ遷移するときの確率を示す。また、M=xの状態からM=1、2、3のいずれかに遷移するときの確率の和は1である。すなわち、
Rx1+Rx2+Rx3=1
である。本実施の形態では、MEスコアの値に応じて、I又はPピクチャの間隔Mの値を自動的に変更するが、その際のMが変化する確率を示すのが上記のRxyである。
【0026】
次に、本発明の実施の形態におけるMEスコアの算出方法について説明する。MEスコアは、参照画像(局部復号映像データ)を必要とするPピクチャ又はBピクチャを処理する際に求める値であり、Pピクチャの処理の際には時間的に前方向のピクチャの局部復号映像データのみ参照し、Bピクチャの処理の際には時間的に前後両方向のピクチャの局部復号映像データを参照して求める。
【0027】
すなわち、図4(A)に示す現在のピクチャ(フレーム)のブロックA(x,y)に対して、同図(B)に示す参照すべきピクチャ(フレーム)のブロックB(i,j)のうち、一番絶対値の誤差が小さいブロックB(i,j)を選び、ピクチャ内の全てのブロックA(x,y)に対して求めた差分(A(x,y)−B(i,j))の絶対値の最小値の総和をMEスコア(MeScore)として定義する。なお、MEスコアはフレーム単位で求められる。
【0028】
この時、映像が余り大きく変化しないシーンの場合は、パターンマッチングにより変化が少ないブロックが選ばれ、その時の誤差は小さくなる。一方、映像が大きく変化した場合は、パターンマッチングによって一番誤差が小さなブロックを選んでも、一般に誤差が大きくなる。従って、この誤差を評価値として、フレーム間の予測が当たる/当たらないを判断できることになる。
【0029】
一方、Mの値がxからyに変化する確率Rxyの値は、入力される映像データによって変化するが、各種の原画の映像データを予め多数使用し、各原画の映像データ毎に局部復号した同一フレームとの誤差を使用し、動きベクトル検出回路13で誤差が最小となるようなRxyを予め求めて保存しておく。これにより、映像を最適な画質で符号化することが可能なRxy値が決定されることになり、この確率Rxyにより各種映像フォーマットや符号化レートに応じたMEスコアでの遷移の際の基準値が決定される。
【0030】
すなわち、図1の比較(誤差)回路14は、フレームバッファ/前処理回路11から取り出された映像データと、加算器18から出力された局部復号された同一フレームの映像データとの誤差を算出し、算出したその誤差をリファレンスバッファ19に供給する。これにより、リファレンスバッファ19は実際に前記のM、Nを制御する際に動きベクトル検出回路13で誤差が最小となるような予め求めておいたRxyを、入力された誤差に基づき決定し、更にそのRxyによって定義される確率から基準値を設定する。
【0031】
一方、動きベクトル検出回路13は、前述した方法で算出したMEスコアの値がある回数、例えば、M=3であるときに時間的に8フレーム分継続して上記基準値を超えた場合、M=1又はM=2に変更する。このMの値の変更は、Mの値に応じて参照すべきリファレンスバッファ19の位置を決定する事で行われる。
【0032】
また、I又はPピクチャの間隔Mと、1GOPのピクチャ数Nとは整数比の関係である必要があるので、M=3のときは1GOPのピクチャ数Nは、3の倍数(すなわち、N=12、15など)であるが、上記のようにM=2に変更されるとNの値は偶数(すなわち、N=12、14など)になるように変更され、M=1に変更されるとNの値は任意の値に変更される(変更しなくてもよい場合は、変更しなくてもよい)。Nの値は、Mの値に応じてそのMの値の予め設定された自然数倍の値に決定され、MとNの値が決定すると1GOP当りのBピクチャの数が自動的に決まる。
【0033】
このように、本実施の形態によれば、MPEGで規定される各種フレームの構造(シンタックス)を、符号化の際の動きベクトルの評価を行う過程で算出されるMEスコアを基にして、シンタックス構造を変更するようにしたため、予測効率が良いシーンと悪いシーンに応じてシンタックスを適宜切替えることが可能となり、効率的で視覚上不具合のない映像符号化を行うことができる。
【0034】
なお、本発明は上記の実施の形態に限定されるものではなく、例えば、動きベクトル検出回路13によりMの値を変更する場合に、ある一定フレーム数でのMEスコア平均値が、Rxyによって定義される確率から設定された基準値を超えた場合、例えばM=3からM=2又はM=1に変更するようにしてもよい。また、一つのフレームで上記基準値を超えたら即座にMの値を変更することも可能である。
【0035】
また、Rxyによって定義される確率から設定される基準値を、符号化される映像データから自動的に変更することも可能である(すなわち、自動学習モードを存在させる。)。更に、以上の実施の形態では、フレーム間予測を行う場合について説明したが、Iピクチャをフィールド内圧縮符号化方法により生成し、Pピクチャを前方向予測フィールド間圧縮符号化方法により生成し、Bピクチャを前後の双方向予測フィールド間圧縮符号化方法により生成する符号化装置にも適用可能である。
【0036】
【発明の効果】
以上説明したように、本発明によれば、動き補償のための動きベクトルを求めるための処理において算出される上記の総和を基にして、ピクチャ数Nの構成単位(GOP)におけるI又はPピクチャの間隔Mを変更制御すると共に、ピクチャ数Nを変更後のMの値のK倍(Kは自然数)に設定することにより、符号化されるべき映像データの符号化の際の予測効率が良いシーンと悪いシーンに応じてシンタックス構造を変更するようにしたため、効率的で視覚上不具合のない映像符号化を行うことができる。また、本発明によれば、限られたデータ量の中でも、より最適な映像信号の符号化が期待できる。
【図面の簡単な説明】
【図1】本発明の一実施の形態のブロック図である。
【図2】GOPの各例を示す図である。
【図3】Mの状態遷移図である。
【図4】図1の装置において用いるMEスコアの算出方法の説明図である。
【符号の説明】
11 フレームバッファ/前処理回路
12 減算器
13 動きベクトル検出回路
14 比較(誤差)回路
15 DCT/量子化回路
16、21 VLC回路
17 逆量子化/IDCT回路
18 加算器
19 リファレンスバッファ
20 動き補償予測回路
22 多重化装置
23 レート制御回路
Claims (1)
- 映像データの画像単位であるフレーム又はフィールドを所定数のブロックに分割して、前記ブロック単位に符号化を行う映像符号化装置であり、
映像データからフレーム内又はフィールド内圧縮符号化方法により生成したIピクチャと、現在のフレーム又はフィールドの前記映像データと時間的に過去のフレーム又はフィールドの局部復号映像データから求めた動きベクトルに基づき符号化する前方向予測フレーム間又はフィールド間圧縮符号化方法により生成したPピクチャと、現在のフレーム又はフィールドの前記映像データと時間的に過去及び未来の両方のフレーム又はフィールドの局部復号映像データから求めた動きベクトルに基づき符号化する双方向予測フレーム間又はフィールド間圧縮符号化方法により生成したBピクチャのうち、少なくとも前記Iピクチャ及びPピクチャを前記Iピクチャから次のIピクチャの直前のピクチャまでの一定のピクチャ数Nを構成単位とするシンタックス構造の符号化データとして出力する映像符号化装置において、
前記前方向予測フレーム間又はフィールド間圧縮符号化方法又は前記双方向予測フレーム間又はフィールド間圧縮符号化方法での動き補償のための動きベクトルを求める処理の際に用いられる、前記映像データの現在のフレーム又はフィールドの前記ブロックである第1のブロックそれぞれに対して参照すべき局部復号映像データのフレーム又はフィールドのブロックのうち最も誤差が小さい第2のブロックを求め、フレーム又はフィールド内のすべての該第1のブロックのデータと該第2のブロックのデータとの差分の絶対値の最小値の総和を算出する算出手段と、
前記算出手段により算出された総和に応じて、前記ピクチャ数Nの構成単位におけるI又はPピクチャの間隔Mを変更制御すると共に、前記ピクチャ数Nを変更後の前記Mの値のK倍(Kは自然数)に設定する制御手段と
を有することを特徴とする映像符号化装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003172529A JP2005012372A (ja) | 2003-06-17 | 2003-06-17 | 映像符号化装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003172529A JP2005012372A (ja) | 2003-06-17 | 2003-06-17 | 映像符号化装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005012372A true JP2005012372A (ja) | 2005-01-13 |
Family
ID=34096653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003172529A Pending JP2005012372A (ja) | 2003-06-17 | 2003-06-17 | 映像符号化装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005012372A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8253817B2 (en) | 2006-09-25 | 2012-08-28 | Nikon Corporation | Image compression method, device, electronic camera, and program |
-
2003
- 2003-06-17 JP JP2003172529A patent/JP2005012372A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8253817B2 (en) | 2006-09-25 | 2012-08-28 | Nikon Corporation | Image compression method, device, electronic camera, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4014263B2 (ja) | 映像信号変換装置及び映像信号変換方法 | |
KR100504641B1 (ko) | 화상 부호화 장치 및 화상 부호화 방법 | |
JPH08223577A (ja) | 動画像符号化方法及び装置、並びに動画像復号方法及び装置 | |
JP3911035B2 (ja) | 動画像符号化方法及び動画像符号化装置 | |
JPH07112284B2 (ja) | 予測符号化装置及び復号化装置 | |
JP2003061100A (ja) | マルチチャネル画像符号化器及びその符号化方法 | |
JP3980659B2 (ja) | 動画像符号化方法及び装置、動画像復号化方法及び装置。 | |
US6697430B1 (en) | MPEG encoder | |
JP3240024B2 (ja) | 画像処理方法 | |
JPH06350995A (ja) | 動画像処理方法 | |
JP3599942B2 (ja) | 動画像符号化方法、及び動画像符号化装置 | |
JPH08307860A (ja) | シーン再エンコード装置 | |
JP2000261809A (ja) | 画像特徴に応じた画像符号化装置 | |
WO1996033573A1 (en) | Device and method for coding moving image | |
JP3428332B2 (ja) | 画像符号化方法及び装置、並びに画像伝送方法 | |
JP2005012372A (ja) | 映像符号化装置 | |
JPH10108197A (ja) | 画像符号化装置、画像符号化制御方法および画像符号化制御用プログラムを記録した媒体 | |
JP4700992B2 (ja) | 画像処理装置 | |
JPH06292179A (ja) | 直交変換符号化装置および直交変換復号化装置 | |
JPH10224779A (ja) | 動画像のシーン変化検出方法及び装置 | |
JP4443940B2 (ja) | 画像符号化装置 | |
JP3188081B2 (ja) | 画像符号化方法および画像符号化装置 | |
JP2003032685A (ja) | ノイズ低減方法および映像処理装置 | |
US20070025440A1 (en) | Video encoding method and device | |
JP3168723B2 (ja) | 映像信号の符号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050929 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070907 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070918 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080129 |