JP2007259484A - 動画像符号化方法と装置及び復号化方法と装置 - Google Patents
動画像符号化方法と装置及び復号化方法と装置 Download PDFInfo
- Publication number
- JP2007259484A JP2007259484A JP2007128291A JP2007128291A JP2007259484A JP 2007259484 A JP2007259484 A JP 2007259484A JP 2007128291 A JP2007128291 A JP 2007128291A JP 2007128291 A JP2007128291 A JP 2007128291A JP 2007259484 A JP2007259484 A JP 2007259484A
- Authority
- JP
- Japan
- Prior art keywords
- prediction
- macroblock
- frame
- encoded
- frames
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】従来のMPEGなどの動画像符号化方法が不得意としていた、フェード画像について、演算量や符号化データのオーバヘッドの増加が少なく、かつ予測効率を大幅に向上することが可能な動画像符号化方法を提供する。
【解決手段】動画像の符号化において、複数の復号化された動画像信号を参照フレームとし、マクロブロック毎に複数の参照フレームの1つから予測マクロブロック画像を生成するか、複数の参照フレームから参照マクロブロックを切り出し、その平均値を予測マクロブロック画像とするか、あるいは複数の参照フレームから参照マクロブロックを切り出し、参照フレームと符号化フレームとのフレーム間距離に応じた線形外挿あるいは線形内挿によって予測マクロブロック画像を生成するかを適応的に切り替えて符号化を行う。
【選択図】 図1
【解決手段】動画像の符号化において、複数の復号化された動画像信号を参照フレームとし、マクロブロック毎に複数の参照フレームの1つから予測マクロブロック画像を生成するか、複数の参照フレームから参照マクロブロックを切り出し、その平均値を予測マクロブロック画像とするか、あるいは複数の参照フレームから参照マクロブロックを切り出し、参照フレームと符号化フレームとのフレーム間距離に応じた線形外挿あるいは線形内挿によって予測マクロブロック画像を生成するかを適応的に切り替えて符号化を行う。
【選択図】 図1
Description
本発明は、複数の参照フレームを利用する動き補償予測フレーム間符号化方法と装置及び動き補償予測フレーム間復号化方法と装置に関する。
動画像の動き補償予測フレーム間符号化方法として、MPEG1(ISO/IEC11172−2)、MPEG2(ISO/IEC13818−2),MPEG4(ISO/IEC14496−2)などが広く実用化されている。これらの符号化方式では、フレーム内符号化ピクチャ(Iピクチャ)、前方予測フレーム間符号化ピクチャ(Pピクチャ)、及び両方向予測フレーム間符号化ピクチャ(Bピクチャ)の組み合わせによる符号化が行われる。
Pピクチャは、直前のPまたはIピクチャを参照画像として符号化され、Bピクチャは直前及び直後のPまたはIピクチャを参照画像として符号化される。MPEGでは、1つの映像フレーム或いは複数の映像フレームから、マクロブロック毎に選択的に予測画像を生成することが可能である。Pピクチャの場合、通常は1つの参照フレームから、マクロブロック単位に予測画像を生成し、Bピクチャの場合、前方或いは後方の参照画像の何れか1つから予測画像を生成する場合と、前方及び後方の参照画像からそれぞれ参照マクロブロックを切り出し、その平均値から予測画像を生成する場合とがある。これらの予測モードの情報は、マクロブロック毎に符号化データに埋め込まれる。
しかし、何れの予測符号化も、マクロブロックのサイズ或いはそれよりも大きな領域で、同じ映像がフレーム間で時間的に平行移動した場合に予測が当たるというものであり、時間的な映像の拡大縮小や回転、或いはフェードイン・フェードアウトのような信号の振幅の時間変動に対しては、必ずしも予測効率がよいとは言えない。特に、固定ビットレートでの符号化では、これらの予測効率の悪い映像が入力されると、大幅な画質劣化を招くことがある。また、可変ビットレートの符号化では、画質劣化を抑制するため、これらの予測効率の悪い映像に対して、多くの符号量が費やされてしまい、総符号量の増加を招いてしまう。
一方、映像の時間的な拡大・縮小や回転、或いはフェードイン・フェードアウト等は、動画像信号のアフィン変換で近似できるため、アフィン変換を用いた予測を行えば、これらの映像に対する予測効率は大幅に向上する。しかし、アフィン変換のパラメータを推定するためには、符号化時に膨大なパラメータ推定演算が必要となる。
具体的には、複数の変換パラメータで参照画像を変換させ、予測残差が最小となるパラメータを決定することが必要となり、変換演算の演算量が膨大になる。その結果、符号化の演算量あるいはハードウエア規模等のコストが膨大になってしまう。また、残差信号だけでなく変換パラメータ自体を符号化する必要があり、符号化データのオーバヘッドが膨大になる。さらに、復号化時には、逆アフィン変換が必要となり、復号化の演算量あるいはハードウエア規模等のコストも膨大になってしまう。
上述したように、従来のMPEGなどの動画像符号化方法では、平行移動以外の動画像の時間変化に対して、十分な予測効率が得られないという問題があった。また、アフィン変換を用いた動画像符号化及び復号化方法では、予測効率自体は改善されるものの、符号化データのオーバヘッドの増加や、符号化及び復号化コストの大幅な増加を招くという問題があった。
本発明では、特に従来のMPEGなどの動画像符号化方法が不得意としていたフェード画像について、演算量や符号化データのオーバヘッドの増加が少なく、かつ予測効率を大幅に向上することが可能な動画像符号化方法と装置及び復号化方法と装置を提供することを目的とする。
上記課題を解決するため、本発明では、マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化において、前記複数の参照フレームから、複数の参照マクロブロックを生成し、前記複数の参照マクロブロックの1つ、或いは前記複数の参照マクロブロックの平均値、或いは前記複数の参照マクロブロックによる線形外挿予測あるいは線形内挿予測のいずれかを予測マクロブロックとして選択し、前記選択された予測マクロブロックと符号化マクロブロックとの予測誤差信号、予測モード情報、及び動きベクトルを符号化することを第1の特徴としている。
また、マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化において、符号化された動きベクトルデータ、予測モード情報及び予測誤差信号を受信し、前記動きベクトル及び前記予測モードに応じて、前記複数の参照フレームのうち、特定の1フレームから予測マクロブロックを生成するか、或いは複数の参照フレームから複数の参照マクロブロックを生成し、前記の複数の参照マクロブロックの平均値を予測マクロブロックとして生成するか、或いは前記複数の参照マクロブロックによる線形外挿予測あるいは線形内挿予測のいずれかから予測マクロブロックを生成するかを選択し、前記生成された予測マクロブロックと前記予測誤差信号を加算すること第2の特徴としている。
従来のMPEGなどの動画像符号化方式では、複数の参照フレームから予測マクロブロック画像を生成する場合、各参照フレームから参照マクロブロックを切り出し、その信号の平均値を用いていた。従って、フェードなどで映像信号の振幅が時間変動する場合、予測効率が低下する場合があった。しかし、本発明の第1あるいは第2の特徴によれば、複数のフレームからの線形予測で外挿或いは内挿する形で予測画像を生成することにより、映像信号の振幅が単調に時間変動する場合、予測効率を大幅に改善することが可能となり、高画質で高能率な符号化が可能となる。
フレーム間予測符号化では、符号化側では既に符号化された画像を復号化した画像を参照フレームとし、復号化側では、既に復号化された画像を参照フレームとして用いられることが一般的である。したがって、参照フレームにおける符号化ノイズの影響が、予測効率を低下される一因となる。複数の参照フレームから切り出した参照マクロブロックを平均化することは、ノイズ除去効果があり、符号化効率の向上に寄与することが知られている。これは、予測符号化におけるループフィルタとして知られている技術と等価な作用である。
本発明の第1あるいは第2の特徴によれば、ループフィルタ効果の高い複数の参照フレームからの平均化処理、或いはフェード画像等に効果のある線形内挿或いは線形内挿の、入力画像に応じて、最適な予測モードを選択することが可能となり、任意の入力画像に対して、符号化効率を向上させることが可能となる。
本発明では、マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化において、前記複数の参照フレームが、符号化対象フレームの直前に符号化された2フレームであり、前記複数の参照マクロブロックによる線形外挿予測において、直前の参照フレームから生成した参照マクロブロック信号の振幅を2倍にした信号から、さらにその1フレーム前の参照フレームから生成した参照マクロブロック信号を減じることにより、前記予測マクロブロックを生成することを第3の特徴としている。
また、マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化において、前記複数の参照フレームが、符号化対象フレームの直前に復号化された2フレームであり、前記複数の参照マクロブロックによる線形外挿予測において、直前の参照フレームから生成した参照マクロブロック信号の振幅を2倍にした信号から、さらにその1フレーム前の参照フレームから生成した参照マクロブロック信号を減じることにより、前記予測マクロブロックを生成することを第4の特徴としている。
前述の通り、従来のMPEGなどの動画像符号化方式では、フェードなどで映像信号の振幅が時間変動する場合に、予測効率が悪いという問題がある。例えば、V(t)を時刻tの映像フレームとし、V’(t)をフェード処理された時刻tの映像フレームとすると、フェードイン及びフェードアウトはそれぞれ、数式(1)及び数式(2)で実現することが出来る。数式(1)では、(a)がフェード期間を示しており、時刻t=0からフィードインが開始され、時刻Tでフェードインが終了する。また、数式(2)では、(b)がフェード期間を示しており、時刻T0からフェードアウト処理が、開始され時刻T0+Tでフェードアウトが終了することを示している。
ここで、フェード処理された時刻tのフレームY’(t)が符号化対象フレームであり、時刻t−1及び時刻t−2の同フェード処理された2フレームY’(t-1),Y’(t-2)を参照フレームと仮定する。
まず、この2フレームの平均値から数式(3)で示すように、予測画像P(t)を生成する場合を考える。
P(t)={Y’(t-1)+Y’(t-2)}/2 (3)
ここで、数式(1)の(a)及び数式(2)の(b)のフェード期間を考えると、数式(3)の予測画像はそれぞれ、数式(4)及び数式(5)で示される。
ここで、数式(1)の(a)及び数式(2)の(b)のフェード期間を考えると、数式(3)の予測画像はそれぞれ、数式(4)及び数式(5)で示される。
P(t)={Y(t-1)×(t-1)
/T+Y(t-2)×(t-2)/T}/2 (4)
P(t)={Y(t-1)×(T-t+1+T0)
/T+Y(t-2)×(T-t+2+T0)/T}/2 (5)
いま、フェード前の原信号Y(t)の時間変動が無い、すなわちY(t)がtによらず一定だと仮定し、Y(t)=C(一定)とすると、数式(4)及び数式(5)は、それぞれ数式(6)及び数式(7)となる。
/T+Y(t-2)×(t-2)/T}/2 (4)
P(t)={Y(t-1)×(T-t+1+T0)
/T+Y(t-2)×(T-t+2+T0)/T}/2 (5)
いま、フェード前の原信号Y(t)の時間変動が無い、すなわちY(t)がtによらず一定だと仮定し、Y(t)=C(一定)とすると、数式(4)及び数式(5)は、それぞれ数式(6)及び数式(7)となる。
P(t)=C×(2t-3)/2T (6)
P(t)=C×(2T-2t+3+2T0)/2T (7)
一方、符号化すべき信号Y’(t)は数式(8)及び数式(9)で示される。
P(t)=C×(2T-2t+3+2T0)/2T (7)
一方、符号化すべき信号Y’(t)は数式(8)及び数式(9)で示される。
Y’(t)=C×t/T (8)
Y’(t)=C×(T-t+T0)/T (9)
数式(8)及び数式(9)のY’(t)から、数式(6)及び数式(7)の予測画像P(t)を減じた予測誤差信号D(t)は、それぞれ数式(10)及び数式(11)となる。
Y’(t)=C×(T-t+T0)/T (9)
数式(8)及び数式(9)のY’(t)から、数式(6)及び数式(7)の予測画像P(t)を減じた予測誤差信号D(t)は、それぞれ数式(10)及び数式(11)となる。
D(t)=C×3/2T (10)
D(t)=−C×3/2T (11)
一方、本発明の第3及び第4の特徴によると、数式(12)で示す予測画像P(t)が、生成される。
D(t)=−C×3/2T (11)
一方、本発明の第3及び第4の特徴によると、数式(12)で示す予測画像P(t)が、生成される。
P(t)=2×Y’(t-1)−Y’(t-2) (12)
上記と同様にY(t)=C(一定)を仮定すると、数式(1)のフェードイン及び数式(2)のフェードアウト時の予測画像はそれぞれ数式(13)及び数式(14)で示される。
上記と同様にY(t)=C(一定)を仮定すると、数式(1)のフェードイン及び数式(2)のフェードアウト時の予測画像はそれぞれ数式(13)及び数式(14)で示される。
P(t)=C×t/T (13)
P(t)=C×(T-t+T0)/T (14)
数式(13)及び数式(14)は、数式(8)及び数式(9)で示される符号化すべき画像と一致しており、符号化画像から予測画像を減じた予測誤差信号D(t)は何れの場合も0となる。上述のように、フェード画像では、MPEG等の従来の動き補償では残差信号が発生してしまうが、本発明の第3及び第4の特徴によれば、残差信号がなくなり、予測効率が大幅に改善することが分かる。
P(t)=C×(T-t+T0)/T (14)
数式(13)及び数式(14)は、数式(8)及び数式(9)で示される符号化すべき画像と一致しており、符号化画像から予測画像を減じた予測誤差信号D(t)は何れの場合も0となる。上述のように、フェード画像では、MPEG等の従来の動き補償では残差信号が発生してしまうが、本発明の第3及び第4の特徴によれば、残差信号がなくなり、予測効率が大幅に改善することが分かる。
数式(1)及び数式(2)の1/Tは、フェードイン及びフェードアウトの時間変化の速さを示しており、数式(10)及び数式(11)から、従来の動き補償では、フェードの変化速度が速いほど、予測残差が大きくなり、符号化効率が低下することが分かる。一方、本発明の第3及び第4の特徴によれば、フェードの変化速度によらず、高い予測効率を得ることが可能となる。
本発明では、本発明の第1及び第3の特徴に加えて、前記符号化される動きベクトルが、前記複数の参照フレームのうち、特定の1つの参照フレームに関する動きベクトルであることを第5の特徴としている。
また、本発明の第2及び第4の特徴に加えて、前記受信した動きベクトルデータが、前記複数の参照フレームのうち、特定の1つの参照フレームに関する動きベクトルであり、前記動きベクトルデータを、復号化対象フレームと参照フレームとのフレーム間距離に応じてスケール変換して、他の参照フレームに対する動きベクトルを生成することを第6の特徴としている。
本発明の第1から第4の発明により、複数の参照画像を用いて、フェード画像等に対して、従来のより高い予測効率を得ることが可能となる。しかし、各符号化マクロブロックに対して、複数の参照画像に対する動きベクトルを個別に符号化データに多重化すると、符号化オーバーヘッドが大きくなる。ITU−T H.263などの符号化方式では、Bピクチャに対する動きベクトルを送らず、Bピクチャを跨ぐPピクチャの動きベクトルを、参照画像と符号化対象画像とのフレーム間距離に応じてスケーリングして、Bピクチャの動きベクトルとするダイレクトモードと呼ばれる符号化方法がある。これは、符号化対象の動画像が、数フレームの短時間で見て、動きの速度がほぼ一定または静止していると近似したモデルであり、多く場合、動きベクトル符号量削減の効果的がある。
本発明の第5及び第6の特徴によれば、Bピクチャのダイレクトモードと同じく、Pピクチャにおいても、複数の参照フレームに対する動きベクトルのうち、1つの動きベクトルのみを符号化し、復号化側では、参照画像とのフレーム間距離に応じて、受信した動きベクトルをスケーリングして用いることが可能となり、本発明の第1から第4の発明による符号化効率の向上を、符号化オーバヘッドの増加なしに実現することが可能となる。
本発明では、本発明の第5の特徴に加えて、前記特定の1つの参照フレームに関する動きベクトルが、前記参照フレームと符号化されるフレームとのフレーム間距離に応じて正規化された動きベクトルであることを第7の特徴としている。
また、本発明の第6の特徴に加えて、前記受信した特定の1つの参照フレームに関する動きベクトルが、前記参照フレームと符号化されるフレームとのフレーム間距離に応じて正規化された動きベクトルであることを第8の特徴としている。
本発明の第7及び第8の特徴により、フレーム間距離が変わっても符号化される動きベクトルの基準スケールが一定となり、複数の参照フレームそれぞれに対する動きベクトルのスケーリング処理が、参照フレームと符号化されるフレームとのフレーム間距離の情報だけで演算することが可能となる。また、任意のスケーリングを行うためには除算が必要となるが、符号化される動きベクトルがフレーム間距離で正規化されていることにより、スケーリング処理を乗算だけで実現することが可能となり、符号化及び符号化のコストを軽減することが可能となる。
本発明では、本発明の第1及び第3の特徴に加えて、前記符号化される動きベクトルが、前記複数の参照フレームのうち、特定の1つの参照フレームに関する第1の動きベクトルと、他の複数の参照フレームに対する複数の動きベクトルであり、前記複数の動きベクトルが、前記第1の動きベクトルを、符号化対象フレームと前記複数の参照フレームとのフレーム間距離に応じて、スケーリングした動きベクトルと、前記複数の動きベクトルとの差分ベクトルとして符号化されることを第9の特徴としている。
また、本発明の第2及び第4の特徴に加えて、前記受信した動きベクトルデータが、前記複数の参照フレームのうち、特定の1つの参照フレームに関する動きベクトルと、他の参照フレームに関する差分ベクトルであり、前記動きベクトルデータを、復号化対象フレームと参照フレームとのフレーム間距離に応じてスケール変換し、前記差分ベクトルと加算することで、前記複数の参照フレームのうち、前記特定の1フレーム以外の参照フレームに関する動きベクトルを生成することを第10の特徴としている。
本発明の第5及び第6の特徴によれば、静止画像あるいは動きの速度が一定の映像の場合に対して、動きベクトル情報の符号化オーバヘッドの増加なしに、複数の参照フレームを用いて予測効率を向上させることが可能となる。しかし、動きの速度が一定ではない場合には、動きベクトルの単純なスケーリングだけでは、充分な予測効率が得られない場合がある。
一方、MPEG2動画像符号化の1つの予測モードである、dual-prime(デュアルプライム)予測では、2つの連続するフィールドを用いた動き予測で、一方のフィールドに対する動きベクトルと、前記動きベクトルをフィールド間距離に応じてスケーリングした動きベクトルと、他方のフィールドに対する動きベクトルとの差分ベクトルを符号化する構成となっている。動きベクトルは、1/2画素精度で表現され、これにより、2フィールドの参照マクロブロックの平均化により、適応的な時空間フィルタによるループフィルタ効果がもたらされ、且つ符号化オーバヘッドの増加を抑えることが可能となり、符号化効率の向上に大きく寄与している。
本発明の第9及び第10の特徴によれば、dual-prime予測と同様の、符号化オーバヘッドの増加を抑えた、適応的な時空間フィルタによるループフィルタ効果に加えて、さらにフェード画像等に対する予測効率の改善を図ることが可能となり、従来よりも高い符号化効率を得ることが可能なる。
本発明では,本発明の第1、第3、第5、第7及び第9の特徴に加えて、前記予測モードが,特定の1つの参照フレームを利用した予測か,或いは複数の参照フレームを利用した予測のいずれかを示す第1のフラグと、前記複数の参照フレームを利用した予測が、複数の参照マクロブロックの平均値による予測か、或いは複数の参照マクロブロックの線形外挿或いは線形内挿による予測かを示す第2フラグから構成され、前記第2のフラグが符号化フレームのヘッダデータ、または複数の符号化フレーム群に対するヘッダデータに含まれることを第11の特徴としている。
また、本発明の第2、第4、第6、第8及び第10の特徴に加えて、前記受信した予測モードが、特定の1つの参照フレームを利用した予測か、或いは複数の参照フレームを利用した予測のいずれかを示す第1のフラグと、前記複数の参照フレームを利用した予測が、複数の参照マクロブロックの平均値による予測か、或いは複数の参照マクロブロックの線形外挿或いは線形内挿による予測かを示す第2フラグから構成され、前記第2フラグが符号化フレームのヘッダデータまたは複数の符号化フレーム群に対するヘッダデータの一部として受信されることを第12の特徴としている。
上記説明した通り、本発明によれば、複数の参照フレームの中から、符号化フレームのマクロブロック毎に、特定の参照フレームだけから予測マクロブロック信号を生成すか、複数の参照画像の平均値から予測マクロブロック信号を生成するか、あるいは複数の参照画像の線形外挿あるいは線形内挿により予測マクロブロック信号を生成するかを適応的に切り替えることで、予測効率を向上させ高能率で高画質の符号化が可能となる。
例えば、同一フレーム内で時間的に背景が見え隠れするような映像部分では、複数の参照フレームの内、特定の参照フレームだけから予測すること(ここでは、予測モード1とする)が効果的であり、時間変動が少ない部分は、複数の参照画像の平均値から予測すること(ここでは、予測モード2とする)で、参照画像における符号化歪を除去するループフィルタ効果が得られ、また、フェード画像などの映像信号の振幅が時間変動する場合には、複数の参照画像の線形外挿あるいは線形内挿(ここでは、予測モード3とする)により、予測効率を向上させることが可能となる。
通常、従来の符号化方式では、このようにマクロブロック毎に最適な予測モードを選択的に切り替える場合は、各マクロブロック毎に予測モードを示すフラグを、各マクロブロック毎のヘッダデータに含めて符号化される。しかし、多くの予測モードを切り替えて使用すると、予測モードを示すフラグの符号化オーバヘッドが増加するという問題がある。
本発明の第11及び第12の特徴によれば、符号化フレーム毎に、上記予測モード1と予測モード2の組み合わせか、あるいは予測モード1と予測モード3の組み合わせかに制限する。上記組み合わせのどちらであるかを示す第2フラグと、予測モード1か、あるいは予測モード2または予測モード3であることを示す第1フラグを用意し、予測モードの組み合わせを示す第2フラグは、符号化フレームのヘッダデータに含め、予測モードを示す第1フラグは、マクロブロック毎に変更可能とし、マクロブロックのヘッダデータに含めることで、符号化データにおける予測モードに関するオーバヘッドを低減することが可能となる。
フェード画像のように映像信号の振幅が時間変化する場合は、フレーム内で一様に振幅が時間変化するため、マクロブロック毎に予測モード2と予測モード3を切り替える必要がなく、フレーム毎に固定で何ら予測効率の低下は招かない。
一方、背景の時間的な見え隠れ等は、映像信号の振幅の時間変化に無関係に、フレーム内に発生するため、フレーム毎に固定とすると、予測効率の低下をもたらす。よって、第1フラグにより、最適な予測モードをマクロブロック毎に切り替えることが必要となる。よって、上記のように、予測モードを示すフラグを、フレームのヘッダとマクロブロックのヘッダとに分離することで、予測効率を低下させずに、符号化オーバヘッドを低減させることが可能となる。
また、本発明では、マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化において、前記複数の参照フレームからの線形予測により予測マクロブロックを生成し、前記予測マクロブロックと符号化マクロブロックとの予測誤差信号及び動きベクトルをマクロブロック毎に符号化し、前記線形予測の予測係数の組をフレーム毎に符号化することを第13の特徴としている。
また、本発明の第13の特徴に加えて、前記複数の参照フレームが、符号化対象フレームより時間的に過去のフレームであることを、本発明の第14の特徴としている。
また、マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化において、マクロブロック毎に符号化された動きベクトルデータ及び予測誤差信号と、フレーム毎に符号化された予測係数の組を受信し、前記動きベクトル及び予測係数に応じて、前記複数の参照フレームから予測マクロブロックを生成し、前記生成された予測マクロブロックと前記予測誤差信号を加算することを、本発明の第15の特徴としている。
また、本発明の第15の特徴に加えて、前記複数の参照フレームが、符号化対象フレームより時間的に過去のフレームであることを、本発明の第16の特徴としている。
本発明の第13から第16の特徴によれば、任意の時間方向の予測係数を設定できるため、フェード画像などで映像信号振幅の時間変化が一定の場合のみならず、映像信号振幅の任意の時間変動に対して、最適な予測係数の組を符号化側で用いることで、予測効率の向上が図れ、また、前記の予測係数を符号化データに多重化して伝送することで、復号化時にも符号化時と同一の線形予測が可能となり、高能率な予測符号化を行うことが可能となる。
本発明では、複数の参照フレームからの予測により、符号化効率の向上を得ることが可能であるが、参照フレームは、MPEGにおけるBピクチャのように、時間的に前後のフレームからの予測において、時間的に過去及び未来の複数のフレームを参照する構成としてもよい。また、MPEGのIピクチャ及びPピクチャだけの場合と同様に、時間的に過去のフレームのみを参照する構成として、過去の複数のPピクチャ及びIピクチャを参照画像とする構成としてもよい。
このような構成とすることで、従来のMPEG符号化よりも、さらに高画質な符号化が実現可能となる。特に、過去の画像のみを使うPピクチャの符号化においても、従来とは異なり過去の複数の参照フレームを用いることで、従来よりも大幅に符号化効率を改善させることが可能となる。Bピクチャを用いない符号化では、符号化フレーム並べ替えのための遅延が不要となり、低遅延の符号化が可能であるため、本発明によれば、低遅延の符号化においても、従来よりも大きな符号化効率の改善得られるものとなる。
さらに、本発明は入力動画像の符号化対象フレームに含まれる符号化対象ブロック毎に、少なくとも一つの参照フレームを用いて動き補償予測フレーム間符号化を行う動画像符号化方法において、単一の参照フレームから予測ブロック信号を生成する第1の予測ブロック生成モード、及び複数の参照フレームから切り出した複数の参照ブロックの線形和予測により予測ブロック信号を生成する第2の予測ブロック生成モードのいずれかを符号化ブロック毎に選択するステップと、選択された予測ブロック信号と符号化対象ブロックの信号との差分信号を符号化するステップと、線形和予測を複数の参照ブロックの平均値予測とするか、あるいは複数の参照フレーム及び符号化対象フレームの表示時刻に基づく線形補間予測とするかを符号化対象フレーム内の複数の画素ブロック毎または符号化対象フレーム毎に選択するステップと、
予測ブロック信号の生成時に第1及び第2の予測ブロック生成モードのいずれが選択されたかを示す第1の符号化モード情報を符号化対象ブロック毎または複数の符号化対象ブロック毎に符号化するステップと、線形和予測に平均値予測及び線形補間予測のいずれが選択されたかを示す第2の符号化モード情報を符号化対象フレームの複数の画素ブロック毎あるいは符号化対象フレーム毎に符号化するステップとを具備することを特徴とする。
予測ブロック信号の生成時に第1及び第2の予測ブロック生成モードのいずれが選択されたかを示す第1の符号化モード情報を符号化対象ブロック毎または複数の符号化対象ブロック毎に符号化するステップと、線形和予測に平均値予測及び線形補間予測のいずれが選択されたかを示す第2の符号化モード情報を符号化対象フレームの複数の画素ブロック毎あるいは符号化対象フレーム毎に符号化するステップとを具備することを特徴とする。
一方、動画像の復号化対象フレームに含まれる復号化対象ブロック毎に、少なくとも一つの参照フレームを用いて動き補償予測フレーム間復号化を行う動画像復号化方法において、予測ブロック信号に対する復号化対象ブロックの信号の予測誤差信号を復号化するステップと、符号化側における予測ブロック信号の生成時に、単一の参照フレームから予測ブロック信号を生成する第1の予測ブロック生成モード、及び複数の参照フレームから切り出した複数の参照ブロックの線形和予測により予測ブロック信号を生成する第2の予測ブロック生成モードのいずれが選択されたかを示す第1の符号化モード情報を復号化対象ブロック毎または複数の復号化対象ブロック毎に受信して復号化するステップと、線形和予測に複数の参照ブロックの平均値予測、あるいは複数の参照フレーム及び符号化対象フレームの表示時刻に基づく線形補間予測のいずれが選択されたかを示す第2の符号化モード情報を復号化対象フレームの複数の画素ブロック毎あるいは復号化対象フレーム毎に受信して復号化するステップと、復号化された第1の符号化モード情報及び第2の符号化モード情報に従って予測ブロック信号を生成するステップと、生成された予測ブロック信号及び復号された予測誤差信号を用いて再生動画像信号を生成するステップとを具備することを特徴とする。
以上説明したように、本発明によれば、従来のMPEGなどの動画像符号化方式が不得意としていた、フェードイン・フェードアウトなどの映像に対して、符号化及び復号化の演算量やコストの大幅な増加を必要とせずに、予測効率を大幅に向上することが可能となり、また、符号化データのオーバヘッドも小さく、高画質で高能率な動画像符号化及び復号化方式を提供することが可能となる。
図1は、本発明の実施形態に係る動画像符号化方法のブロック図である。入力動画像信号100に対して、第1の参照フレームメモリ117に保存されたフレームと、第2の参照フレームメモリ118に保存されたフレームとから、予測マクロブロック生成手段119により、予測画像を生成し、予測マクロブロック選択手段120で最適な予測マクロブロックを選択し、入力信号と予測信号との予測誤差信号101に対して、DCT変換(離散コサイン変換)112、量子化113、及び可変長符号化114を行い、符号化データ102を出力する。出力される符号化データ102には、後述する動きベクトル情報は予測モードの情報も合わせて符号化されて出力される。量子化手段113で量子化された信号は、逆量子化手段115により逆量子化され、予測信号106と加算して、ローカルデコード画像103を生成し、参照フレームメモリ117へ書き込まれる。
本実施例では、予測誤差信号101は、DCT変換、量子化、可変長符号化により符号化されるが、例えばDCT変換をウエーブレット変換に置き換えた構成としたり、あるいは可変長符号化を算術符号化に置き換えた構成としたりしてもよい。
本実施形態では、第1の参照フレームメモリ117には、直前に符号化されたフレームのローカルデコード画像が保存され、第2の参照フレームメモリ118には、さらにその前に符号化されたフレームのローカルデコード画像が保存される構成である。予測マクロブロック生成手段119では、第1の参照フレームメモリ117の画像だけから生成される予測マクロブロック信号130と、第2の参照フレームメモリ118の画像だけから生成される予測マクロブロック信号131と、第1及び第2の参照フレームメモリから切り出した参照マクロブロック信号を平均化した予測マクロブロック信号132と、第1の参照フレームメモリ117から切り出した参照マクロブロック信号の振幅を2倍にした信号から、第2の参照フレームメモリ118から切り出した参照マクロブロック信号を減じた予測マクロブロック信号133を生成する。これらの予測マクロブロック信号は、それぞれフレーム内の複数の位置から切り出して、複数の予測マクロブロック信号を生成する。
予測マクロブロック選択手段120では、予測マクロブロック生成手段119で生成された複数の予測マクロブロック信号に対し、入力動画像信号100から切り出した符号化対象マクロブロック信号との差分を計算し、誤差が最小となる予測マクロブロックを、符号化マクロブロック毎に選択する。選択された予測マクロブロックの、符号化対象マクロブロックから見た相対的な位置を、動きベクトルとして、また、選択された予測マクロブロックの生成方法(図1では、130から133のいずれか)を、予測モードとして、それぞれマクロブロック毎に符号化する。
ここで、動画像信号が輝度及び色差信号で構成される場合、各マクロブロックのそれぞれの信号成分に対して、同一の動きベクトル及び予測モードを適用して、予測誤差信号の生成を行う。
図2は、本発明の実施形態に係る動画像復号化方法のブロック図である。図2の動画像復号化方法は、図1で示した本発明の実施形態に係る動画像符号化方法で符号化された符号化データを入力し、復号化するものである。
入力された符号化データ200は、可変長符号復号化手段214で可変長符号が復号化され、予測誤差信号201、動きベクトル情報及び予測モード情報202が抽出される。予測誤差信号201は、逆量子化215、逆DCT216が施され、予測信号206と加算して復号化画像203が生成される。
復号化画像203は第1の参照フレームメモリ217に書き込まれる。予測信号206は、第1の参照フレームメモリ217に記録された直前に復号化された画像信号と、さらにそれよりも前に復号化された動画像信号が記録された第2の参照フレームメモリ218の画像信号から、符号化データ200から抽出した動きベクトル及び予測モードに応じて、予測マクロブロック生成手段219及び予測マクロブロック選択手段220により、符号化時に使用された予測マクロブロック信号と同じ予測信号が生成される。
図3は、本発明の実施形態に係るフレーム間予測の関係を模式的に示した例である。図中302が符号化対象フレームであり、301はその直前のフレーム、300はさらにその前のフレームを示している。フレーム302を符号化、あるいは復号化しているとき、図1の117あるいは図2の217の第1の参照フレームメモリには、フレーム301の復号化画像が保存されており、また図1の118あるいは図2の218の第2の参照フレームメモリには、フレーム300が保存されている。
図3の305が符号化対象マクロブロック示しており、参照フレーム300の参照マクロブロック303及び参照フレーム301の参照マクロブロック304の、いずれか或いは両方を用いて予測マクロブロックが生成される。図中306及び307は、それぞれ参照マクロブロック303及び304の位置を示す動きベクトルである。符号化時は、符号化マクロブロック305に最適な動きベクトル及び予測モードの探索が行われる。また、復号化時は、符号化データに含まれる動きベクトル及び予測モードを用いて、予測マクロブロック信号が生成される。
図4及び図5は、本発明の実施形態に係わり、3フレーム以上の参照フレームを用いるフレーム間予測の関係を示す例である。図4では、過去の複数の参照フレームを用いる例であり、また図5は過去及び未来の複数の参照フレームを用いる例である。
図4において、404が符号化対象フレームを示し、400から403が、フレーム404に対する参照フレームとなる。413は符号化マクロブロックを示しており、符号化においては、符号化マクロブロック毎に、各参照フレームから、各参照フレームに対する動きベクトル(図中405から408)に応じて、参照マクロブロック(図中409から412)を切り出し、複数の参照マクロブロックからの線形予測により予測マクロブロックを生成する。次に、複数の参照マクロブロックの中の1つ、或いは線形予測による予測マクロブロックの何れかの予測モードで、予測誤差が最小となる動きベクトル及び予測モードの組を選択する。線形予測係数は、例えはフレーム間の平均輝度の時間変化等から符号化フレーム毎に1組決定する。決定された予測係数の組は符号化フレームのヘッダデータとして符号化し、また、各マクロブロックの動きベクトル、予測モード、及び予測誤差信号は、マクロブロック毎に符号化される。
また、復号化時は、フレーム毎に受信した線形予測係数の組を用いて、マクロブロック毎に動きベクトル及び予測モードの情報から、複数の参照フレームより、予測マクロブロックを生成し、予測誤差信号と加算することで復号化を行う。
図5では、502が符号化対象フレームを示しており、500、501、503、504が参照フレームを示している。図5の場合、符号化及び復号化時は、500、501、503、504、502の順序となるように、フレームの並べ替えが行われ、符号化の場合は複数のローカルデコードフレーム、復号化の場合はすでに復号化された複数のフレームを、それぞれ参照フレームとして用いる。符号化対象マクロブロック511に対して、図4の例と同様に、参照マクロブロック509,510,512,513の1つ、またはそれらからの線形予測による予測信号の、何れか1つがマクロブロック毎に選択されて符号化される。
図6は、本発明の実施形態に係る動きベクトル情報の符号化方法及び復号化方法を示す図である。図3の例のように、複数の参照フレームを用いたフレーム間符号化において、符号化マクロブロック毎に複数の参照マクロブロック信号を用いて予測マクロブロック信号を生成する場合、マクロブロック毎に複数の動きベクトル情報を符号化する必要がある。したがって、参照するマクロブロックの数が増えるほど、符号化すべき動きベクトル情報のオーバヘッドが増加し、符号化効率を低下させる原因となる。図6の例では、2つの参照フレームからそれぞれ参照マクロブロック信号を切り出して、予測マクロブロック信号を生成する場合に、1つの動きベクトルとその動きベクトルをフレーム間距離に応じてスケーリングしたベクトルを用いる例を示したものである。
図中602が符号化対象フレームであり、601及び600が参照フレームである。また、611及び610が、動きベクトルを示している。黒で示した点は垂直方向の画素位置を示しており、白で示した点は1/4画素精度の補間点を示している。図6は、動き補償予測を1/4画素精度で行う例を示している。動き補償の画素精度は、1画素、1/2画素、1/8画素など、符号化方式毎に定義される。通常は、動きベクトルを動き補償の精度で表現し、参照画像を参照フレームの画像データから、補間して生成するのが一般的である。
図6では、符号化対象の画素605に着目すると、参照フレーム600からは、2.5画素垂直方向に離れた点603を参照するものとし、2.5画素のずれを示す動きベクトル610が符号化される。一方、同画素605に対する参照フレーム601からの予測は、フレーム間距離に応じて、前述の符号化された動きベクトル610をスケーリングすることにより生成する。ここでは、フレーム601に対する動きベクトルは、フレーム間距離を考慮し2.5/2=1.25画素となり、参照フレーム601における画素604が、符号化フレーム602の画素605の参照画素として用いられる。
符号化時及び復号化時に同一の精度で動きベクトルのスケーリングを行うことで、各マクロブロック毎に符号化すべき動きベクトルは、符号化対象マクロブロックが複数のフレームを参照する場合でも1つの動きベクトルで済み、符号化オーバヘッドの増加を防ぐことが可能となる。ここで、動きベクトルのスケーリング結果が、動き補償の精度のサンプル点上にない場合は、端数の四捨五入によりスケーリングされた動きベクトルを丸めるものとする。
図7は、本発明の実施形態に係る、図6とは異なる動きベクトル情報の符号化方法及び復号化方法を示す図である。図6の例では、動画像の時間的な動きの速さが一定の場合に、符号化データに占める動きベクトルのオーバヘッドを効率的に低減することが可能となる。一方、動画像の時間的な動きが単調ではあるが、動きの速さが一定ではない場合、単純にスケーリングした動きベクトルを用いると、予測効率の低下が発生して符号化効率の低下の原因となる場合がある。図7では図6と同様に、画素506の参照画素として、参照フレーム700及び701の2フレームの参照画素から予測画素を生成する。ここでは、フレーム700の画素703と、フレーム701の画素705が参照されるものとする。
図6の例と同様に、フレーム700に対する動きベクトル710が符号化され、それに加えて、フレーム701に対する動きベクトル711が、動きベクトル710をスケーリングしたベクトルとの差分ベクトル720として符号化される。動きベクトル710を1/2にスケーリングすることにより、フレーム701における画素704の位置が示され、本来の予測画素705と画素704との差分量を示す差分ベクトル720が符号化される。通常、時間的に単調な動きに対して、前述の差分ベクトルの大きさは小さくなるため、動きの速度が一定でない場合も、予測効率を低下させずに、かつ動きベクトルのオーバヘッドの増加を抑えて、効率的な符号化行うことが可能となる。
図8は、本発明の実施形態に係る、さらに別の動きベクトル情報の符号化方法及び復号化方法を示す図である。図8の例では、フレーム803が符号化対象フレームであり、フレーム602を飛ばして、フレーム801及びフレーム800が参照フレームとなっている例である。さらに、画素806に対して、参照フレーム800の画素804及び参照フレーム801の画素805が予測画素を生成するための参照画素となっている。
図6或いは図7の例と同様に、参照フレーム800に対する動きベクトル811を符号化し、動きベクトル811をスケーリングした動きベクトルを用いて、参照フレーム801に対する動きベクトルを生成することも可能であるが、図8の場合、参照フレームと符号化フレームのフレーム間距離の関係から、動きベクトル811に対して2/3倍のスケーリングが必要となる。図8の例に限らず、任意のスケーリングを行うためには、分母が2のべき乗でない任意の整数となり、除算が必要となる。動きベクトルのスケーリングは、符号化時及び復号化時のいずれでも必要であり、特に除算は、ハードウエア及びソフトウエアのいずれにおいても、コストや演算時間が多くかかるため、符号化及び復号化のコスト増をもたらしてしまう。
一方、図8では、符号化すべき動きベクトル811をフレーム間距離で正規化した動きベクトル810を符号化し、正規化された動きベクトル810を符号化フレームと各参照フレームとのフレーム間距離に応じて、スケーリングした動きベクトルと、本来の動きベクトルとの差分ベクトルを符号化するものである。つまり、参照画素804は、正規化された動きベクトル810を3倍した動きベクトルと、差分ベクトル820から生成され、参照画素805は、正規化された動きベクトル810を2倍した動きベクトルと、差分ベクトル821から生成される。図8の構成とすることで、予測効率を低下させずに、動きベクトルの符号化オーバヘッドの増加を防ぎ、さらに、動きベクトルのスケーリングが乗算のみで実現できるため、符号化及び復号化の演算コストも抑えることが可能となる。
図9は、本発明の第2の実施形態に係る動画像符号化方法のブロック図である。本発明の第2の実施形態では、前述の本発明の第11及び第12の特徴を用いた実施形態であり、図1で示した動画像符号化の実施形態に対して、入力画像900に対するフェード検出手段900が付加された構成である。フェード検出手段900では、入力された動画像信号のフレーム毎の平均輝度値を計算し、輝度の時間変化に一定の傾きがある場合は、フェード画像であると判断し、その結果701を予測モード選択手段120に通知する。
フェード検出手段900により、フェード画像だと判断された場合は、予測モードを1つ参照フレームからの予測または複数の参照フレームの線形外挿あるいは線形内挿による予測の何れかに限定して、マクロブロック毎に最適な動きベクトル及び予測モードを決定する。決定された動きベクトル、及び予測モードを示す第1のフラグをマクロブロックのヘッダに書き込み、予測誤差信号の符号化行う。また、とり得る予測モードの組を示す第2のフラグは、フレームのヘッダデータに書き込んで出力する。
フェード検出手段900により、フェード画像でないと判断された場合は、予測モードを1つ参照フレームからの予測または複数の参照フレームの平均値による予測のいずれかに限定して、同様に最適な動きベクトル及び予測モードを決定し、動きベクトル、予測モード、及び予測信号の符号化を同様に行う。
図9の構成で符号化された符号化データを受信して復号化する場合は、予測モードを示す上記第1及び第2のフラグから、マクロブロック毎の予測モードを判断し、マクロブロック毎に送られる動きベクトル及び判断した予測モードから、予測マクロブロック信号を生成し、符号化された予測誤差信号を復号化して、予測信号と加算することで復号化を行う。このような構成とすることで、本発明の第11及び第12に記載した通り、予測モード情報の符号化オーバヘッドを低減させることが可能となる。
次に、図10を用いて本発明の第3の実施形態における動画像符号化の手順について説明する。
符号化対象の動画像フレームは1フレームずつ入力され、輝度値のフレーム内平均値の時間変化などに基づいてフレーム全体あるいはフレーム内の複数の画素ブロックで構成されるスライス毎に、フェード画像の検出が行われる(ステップS1)。フレーム内の画素ブロック毎に、複数の参照フレームの中から1つの最適な参照フレームを選択して予測画素ブロック信号を生成する(単一フレーム予測)か、あるいは2つの参照画素ブロック信号の線形和による予測によって予測画素ブロックを生成する(線形和予測)かが選択される。
符号化対象の動画像フレームは1フレームずつ入力され、輝度値のフレーム内平均値の時間変化などに基づいてフレーム全体あるいはフレーム内の複数の画素ブロックで構成されるスライス毎に、フェード画像の検出が行われる(ステップS1)。フレーム内の画素ブロック毎に、複数の参照フレームの中から1つの最適な参照フレームを選択して予測画素ブロック信号を生成する(単一フレーム予測)か、あるいは2つの参照画素ブロック信号の線形和による予測によって予測画素ブロックを生成する(線形和予測)かが選択される。
線形和予測では、入力動画像がフェード画像であると検出された場合は、時間線形補間(フレーム間の時間距離に基づく内挿または外挿)予測とし、フェード画像でない場合は、2つの参照画素ブロック信号の平均値により予測画素ブロックを生成する。複数フレームを用いた線形和予測が平均値予測であるか、あるいは時間線形補間予測であるかを示す第2の符号化モード情報をフレーム(ピクチャ)あるいはスライスのヘッダデータとして符号化する(ステップS2)。
次に、ステップS1の検出結果をステップS3で調べ、入力動画像がフェード画像であるか否かを判定する。ここで、入力動画像がフェード画像と判定された場合には、画素ブロック毎に複数の参照フレームから単一の予測ブロックを選択する符号化モード(ステップS5)と時間線形補間予測による符号化モード(ステップS4)のうち、符号化効率の高い方、すなわち発生符号量が少なくなる方の符号化モードを決定する(ステップS8)。
この後、単一フレーム予測かあるいは線形和予測かを示す第1の符号化モード情報と、その他の選択された符号化モードに関する情報(予測に用いる参照フレームの識別情報、動きベクトル情報など)をマクロブロックヘッダ領域に符号化する(ステップS10)。最後に、選択された予測ブロック信号と符号化対象ブロックの信号との差分信号(予測誤差信号)を符号化し(ステップS11)、それぞれの符号化データを出力する。
一方、ステップS3での判定の結果、入力動画像がフェード画像でない場合には、単一フレーム予測モード(ステップS6)及び平均値予測モード(ステップS7)から最適な方の符号化モードを選択する(ステップS9)。以下、同様に符号化モードに関する情報の符号化(ステップS10)と、差分信号の符号化(ステップS11)を行う。
ステップS1のフェード検出結果に従って、フレーム内あるいはスライス内の各ブロックが上記の通り符号化され、1フレーム(ピクチャ)あるいは1スライス内の全ての画素ブロックの符号化が終了すると(ステップS12)、次に符号化すべきフレームあるいはスライスのフェード検出を行い(ステップS1)、同様に符号化を進める。
上記説明では、1フレームを1ピクチャとして符号化する例を示したが、1フィールドを1ピクチャとしてフィールド単位に符号化を行ってもよい。
上記説明では、1フレームを1ピクチャとして符号化する例を示したが、1フィールドを1ピクチャとしてフィールド単位に符号化を行ってもよい。
図11及び図12は、本実施形態に係る動画像符号化データのデータ構造を示す図である。図11はピクチャあるいはスライスのヘッダデータを含むデータ構造の一部を示し、図12はマクロブロックデータの一部を示している。ピクチャあるいはスライスのヘッダ領域では、該符号化対象フレームの表示時刻に関する情報“time_info_to_be_displayed”や、上述した線形和予測が時間線形補間予測であるか、平均値予測であるかを示す第2の符号化モード情報であるフラグ“linear_weighted_prediction_flag”が符号化される。“linear_weighted_prediction_flag”が0の場合は平均値予測を表し、1の場合は時間線形補間予測を示す。
ピクチャあるいはスライスの符号化データ内には、複数のマクロブロック符号化データが包含されており、各マクロブロックデータは図12で示すような構造となっている。マクロブロックデータのヘッダ領域には、参照フレームの選択情報や動きベクトル情報等とともに、選択された単一フレームからの単一フレーム予測かあるいは複数のフレームからの線形和による予測かを示す情報(第1の符号化モード情報)が、“macroblock_type”として符号化される。
図13は、図11及び図12で示したデータ構造を含む動画像符号化データの時系列全体の構造を模式的に示したものである。符号化データの先頭には、画像サイズ等の1つの符号化シーケンス内全体で不変な複数の符号化パラメータの情報がシーケンスヘッダ(SH)として符号化される。
次に、各画像フレームあるいはフィールドがそれぞれピクチャとして符号化される。各ピクチャは、ピクチャヘッダ(PH)とピクチャデータ(Picture data)の組として順次符号化されている。ピクチャヘッダ(PH)には、図11で示した符号化対象フレームの表示時刻に関する情報“time_info_to_be_displayed”及び第2の符号化モード情報“linear_weighted_prediction_flag”がそれぞれDTI,LWPとして符号化されている。ピクチャデータは、1つまたは複数のスライス(SLC)に分割され、スライス毎に順次符号化される。
各スライスでSLCは、まずスライス内の各画素ブロックに関する符号化パラメータがスライスヘッダ(SH)として符号化され、スライスヘッダSHに続けて、1つまたは複数のマクロブロックデータ(MB)が順次符号化されている。マクロブロックデータMBでは、図12で示した第1の符号化モード情報である“macroblock_type”がMBTとして符号化されており、また動きベクトル情報(MV)などの、マクロブロック内の各画素の符号化に関する情報が符号化され、最後に符号化すべき画素信号あるいは予測誤差信号に対して直交変換(例えば、離散コサイン変換)を施して符号化された直交変換係数(DCT)が含まれている。
ここで、ピクチャヘッダPHに含まれている第2の符号化モード情報“linear_weighted_prediction_flag”は、スライスヘッダSHでスライス毎に符号化する構成としてもよい。
次に、図14を用いて本実施形態における動画像復号化の手順について説明する。
本実施形態では、図10で示した動画像符号化方法により符号化され、図11及び図12で示したようなデータ構造を有する符号化データを入力し、復号化するものである。入力された符号化データから、ピクチャあるいはスライスのヘッダ情報の復号化を行い、符号化対象フレームの表示時刻に関する情報“time_info_to_be_displayed”や、第2の符号化モード情報“linear_weighted_prediction_flag”の 復号化を行う(ステップS30)。
本実施形態では、図10で示した動画像符号化方法により符号化され、図11及び図12で示したようなデータ構造を有する符号化データを入力し、復号化するものである。入力された符号化データから、ピクチャあるいはスライスのヘッダ情報の復号化を行い、符号化対象フレームの表示時刻に関する情報“time_info_to_be_displayed”や、第2の符号化モード情報“linear_weighted_prediction_flag”の 復号化を行う(ステップS30)。
さらに、ピクチャあるいはスライス内のマクロブロック毎に、マクロブロックのヘッダ情報の復号化を行い、参照フレームの識別情報、動きベクトル情報、第1の符号化モード情報を含む“macroblock_type”などの復号化を行う(ステップS31)。
復号化された第1の符号化モード情報が単一フレーム予測を示している場合、参照フレームの識別情報、動きベクトル情報などの予測モード情報に従って、予測ブロック信号を生成する(ステップS34)。第1の符号化モード情報が複数フレームからの線形和による予測を示している場合、復号化された第2の符号化モード情報に従って(ステップS33)、平均予測(ステップ35)あるいは時間線形補間予測(ステップS36)のいずれかの方法で予測信号を生成する。
次に、符号化された予測誤差信号の復号化を行い、生成した予測信号と加算することにより、復号化画像を生成する(ステップS37)。ピクチャあるいはスライス内の各マクロブロックについては、各マクロブロックヘッダから順次復号化を行い、ピクチャあるいはスライス内の全てのマクロブロックの復号化を終了したら(ステップS38)、引き続き次のピクチャあるいはスライスヘッダから復号化を進める。
上述したように、本実施形態では符号化モードに関する情報を単一フレーム予測か複数フレームからの線形和による予測かを示す第1の符号化モード情報と、線形和による予測が時間線形内挿予測か平均予測を示す第2の符号化モード情報に分離し、第1の符号化モード情報をマクロブロック毎に、第2の符号化モード情報をピクチャあるいはスライス毎にそれぞれ符号化することで、符号化効率を維持しつつ、符号化モード情報を符号化するオーバヘッドを低減することが可能となる。
すなわち、第2の符号化モード情報はフェード画像等のフレーム内の広域的な特性を示しているので、第2の符号化モード情報をスライスあるいはフレーム毎に符号化することで、マクロブロック毎に符号化する場合に比べて、符号化モード情報自体を符号化するための符号量を抑えることが可能となり、かつ符号化効率の大幅な低下は発生しない。
一方、第1の符号化モード情報については、マクロブロック毎に符号化することで、各画素ブロックの個別の特性(例えば、時間的な見え隠れが部分的にある映像など)に応じて適切なモードを決定することが可能となり、符号化効率をより向上させることが可能となる。
このように本実施形態は、動画像の持つ特性を考慮して第1及び第2の符号化モードの符号化頻度が決定されているため、高能率で高画質な符号化を行うことが可能となる。
次に、図15及び図16を用いて、本実施形態における時間線形補間予測について詳しく説明する。
図15におけるF0,F1,F2及び図16におけるF0,F2,F1は、それぞれ時間的に連続するフレームを示している。図15及び図16において、F2が符号化あるいは復号化対象フレーム、F0及びF1が参照フレームを示している。ここで、図15及び図16の例について、それぞれ符号化あるいは復号化対象フレーム内のある画素ブロックが2つの参照フレームの線形和による予測を行う場合を考える。
図15におけるF0,F1,F2及び図16におけるF0,F2,F1は、それぞれ時間的に連続するフレームを示している。図15及び図16において、F2が符号化あるいは復号化対象フレーム、F0及びF1が参照フレームを示している。ここで、図15及び図16の例について、それぞれ符号化あるいは復号化対象フレーム内のある画素ブロックが2つの参照フレームの線形和による予測を行う場合を考える。
線形和予測が平均値予測の場合は、各参照フレームから切り出された参照ブロックの単純平均により、予測画素ブロックが生成される。フレームF0及びF1から切り出し参照画素ブロック信号をそれぞれref0、ref1とすると、図15及び図16のそれぞれの予測画素ブロック信号pred2は、以下の数式(15)に従って計算される。
pred2=( ref0 + ref1 ) / 2 (15)
一方、時間線形補間予測の場合は、符号化あるいは復号化対象フレームと各参照フレームとの時間距離に応じて線形和が計算される。図11で示したように、符号化対象フレーム毎にピクチャあるいはスライスヘッダ領域に表示時刻に関する情報“time_info_to_be_displayed”が符号化されており、復号化時にはこの情報に基づいて各フレームの表示時刻が算出される。ここで、フレームF0,F1,F2の表示時刻が、それぞれDt0,Dt1,Dt2であるとする。
一方、時間線形補間予測の場合は、符号化あるいは復号化対象フレームと各参照フレームとの時間距離に応じて線形和が計算される。図11で示したように、符号化対象フレーム毎にピクチャあるいはスライスヘッダ領域に表示時刻に関する情報“time_info_to_be_displayed”が符号化されており、復号化時にはこの情報に基づいて各フレームの表示時刻が算出される。ここで、フレームF0,F1,F2の表示時刻が、それぞれDt0,Dt1,Dt2であるとする。
図15の例では、過去の2フレームから現在のフレームを予測するため線形外挿予測となり、図16の例では、未来と過去のフレームからの線形内挿予測となる。図15及び図16について、2つの参照フレーム間の時間距離をRr、符号化対象フレームに対する時間的に最も過去の参照フレームから、該符号化対象フレームまでの時間距離をRcとすると、それぞれ以下のようになる。
Rr=Dt1−Dt0, Rc=Dt2−Dt0 (16)
上記時間距離に基づく線形外挿予測及び線形内挿予測は、図15及び図16の場合のいずれにおいても、以下の数式(17)で計算される。
上記時間距離に基づく線形外挿予測及び線形内挿予測は、図15及び図16の場合のいずれにおいても、以下の数式(17)で計算される。
pred2={ (Rr−Rc)*ref0+Rc*ref1 } / Rr (17)
また、数式(17)は数式(18)のように変形することも可能である。
また、数式(17)は数式(18)のように変形することも可能である。
Pred2=ref0 + (ref1-ref0)* Rc/ Rr (18)
フェード画像やクロスフェード画像のような信号振幅がフレーム間で単調に時間変動する画像では、非常に短時間(例えば、連続する3フレーム)内では、その信号振幅の時間変動を1次近似することが可能である。従って、本実施形態のように符号化対象フレームと2つの参照フレームとのフレーム間の時間距離に応じた時間線形補間(線形外挿または線形内挿)を行うことで、より的確な予測画像を生成することが可能となる。その結果、フレーム間予測の効率が向上し、画質を劣化させずに、より発生符号量を低減したり、あるいは同一ビットレートでより高画質な符号化をおこなったりすることが可能となる。
フェード画像やクロスフェード画像のような信号振幅がフレーム間で単調に時間変動する画像では、非常に短時間(例えば、連続する3フレーム)内では、その信号振幅の時間変動を1次近似することが可能である。従って、本実施形態のように符号化対象フレームと2つの参照フレームとのフレーム間の時間距離に応じた時間線形補間(線形外挿または線形内挿)を行うことで、より的確な予測画像を生成することが可能となる。その結果、フレーム間予測の効率が向上し、画質を劣化させずに、より発生符号量を低減したり、あるいは同一ビットレートでより高画質な符号化をおこなったりすることが可能となる。
上述した本発明の符号化及び復号化の処理は、ハードウェアにより実現してもよいし、処理の一部または全部をコンピュータを用いてソフトウェアにより実行することも可能である。従って、本発明によれば例えば以下に示すようなプログラムを提供することができる。
(1)マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化処理をコンピュータに行わせるためのプログラムにおいて、前記複数の参照フレームから複数の参照マクロブロックを生成する処理と、前記複数の参照マクロブロックの1つ、前記複数の参照マクロブロックの平均値、或いは前記複数の参照マクロブロックによる線形外挿予測または線形内挿予測のいずれかを予測マクロブロックとして選択する処理と、前記選択された予測マクロブロックと符号化マクロブロックとの予測誤差信号、予測モード情報及び動きベクトルを符号化する処理とを前記コンピュータに行わせるためのプログラム。
(2)マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化処理をコンピュータに行わせるためのプログラムにおいて、
符号化された動きベクトルデータ、予測モード情報及び予測誤差信号を受信する処理と、前記受信された動きベクトル及び前記予測モードに応じて、(a)前記複数の参照フレームのうち特定の1フレームから予測マクロブロックを生成するか、(b)複数の参照フレームから複数の参照マクロブロックを生成して前記複数の参照マクロブロックの平均値を予測マクロブロックとして生成するか、或いは(c)前記複数の参照マクロブロックによる線形外挿予測または線形内挿予測のいずれかから予測マクロブロックを生成するかを選択する処理と、前記生成された予測マクロブロックと前記予測誤差信号を加算する処理とを前記コンピュータに行わせるためのプログラム。
符号化された動きベクトルデータ、予測モード情報及び予測誤差信号を受信する処理と、前記受信された動きベクトル及び前記予測モードに応じて、(a)前記複数の参照フレームのうち特定の1フレームから予測マクロブロックを生成するか、(b)複数の参照フレームから複数の参照マクロブロックを生成して前記複数の参照マクロブロックの平均値を予測マクロブロックとして生成するか、或いは(c)前記複数の参照マクロブロックによる線形外挿予測または線形内挿予測のいずれかから予測マクロブロックを生成するかを選択する処理と、前記生成された予測マクロブロックと前記予測誤差信号を加算する処理とを前記コンピュータに行わせるためのプログラム。
(3)マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化処理をコンピュータに行わせるためのプログラムにおいて、前記複数の参照フレームからの線形予測により予測マクロブロックを生成する処理と、前記予測マクロブロックと符号化マクロブロックとの予測誤差信号及び動きベクトルをマクロブロック毎に符号化する処理と、前記線形予測の予測係数の組をフレーム毎に符号化する処理とを前記コンピュータに行わせるためのプログラム。
(4)マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化処理をコンピュータに行わせるためのプログラムにおいて、マクロブロック毎に符号化された動きベクトルデータ及び予測誤差信号と、フレーム毎に符号化された予測係数の組を受信する処理と、前記受信された動きベクトル及び予測係数に応じて、前記複数の参照フレームから予測マクロブロックを生成する処理と、前記生成された予測マクロブロックと前記予測誤差信号を加算する処理とを前記コンピュータに行わせるためのプログラム。
112…DCT手段 113…量子化手段 115、215…逆量子化手段 116、216…逆DCT手段 117、217…第1の参照フレームメモリ 118、218…第2の参照フレームメモリ 119,219…予測マクロブロック生成手段 120,220…予測マクロブロック選択手段 900…フェード検出手段
Claims (3)
- マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化方法において、
符号化された動きベクトルデータ、予測モード情報及び予測誤差信号を受信するステップと、
前記動きベクトル及び前記予測モードに応じて、
(a)前記複数の参照フレームのうち、特定の1フレームから予測マクロブロックを生成するか、
(b)複数の参照フレームから複数の参照マクロブロックを生成して前記の複数の参照マクロブロックの平均値を予測マクロブロックとして生成するか、或いは
(c)前記複数の参照マクロブロックからフレーム間の距離に基づく線形外挿予測または線形内挿予測のいずれかにより予測マクロブロックを生成するか、
を選択するステップと、
前記生成された予測マクロブロックと前記予測誤差信号を加算するステップと、
を含み、
前記予測モード情報は、
(1)特定の1つの参照フレームを利用した予測か、或いは複数の参照フレームを利用した予測のいずれかを示す第1のモード情報と、
(2)前記複数の参照フレームを利用した予測が、複数の参照マクロブロックの平均値による予測であるか、或いは複数の参照マクロブロックからフレーム間の距離に基づく線形外挿或いは線形内挿による予測であるかを示す第2のモード情報と、
を含んで構成され、
前記第1のモード情報は、マクロブロックのデータの一部として受信され、
前記第2のモード情報は、符号化フレームのヘッダデータの一部、または、複数の符号化フレームを含む符号化フレーム群に対するヘッダデータの一部、として受信されることを特徴とする動画像復号化方法。 - マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化装置において、
符号化された動きベクトルデータ、予測モード情報及び予測誤差信号を受信する受信部と、
前記動きベクトル及び前記予測モードに応じて、
(a)前記複数の参照フレームのうち、特定の1フレームから予測マクロブロックを生成するか、
(b)複数の参照フレームから複数の参照マクロブロックを生成して前記の複数の参照マクロブロックの平均値を予測マクロブロックとして生成するか、或いは、
(c)前記複数の参照マクロブロックからフレーム間の距離に基づく線形外挿予測または線形内挿予測のいずれかにより予測マクロブロックを生成するか、
を選択する選択部と、
前記生成された予測マクロブロックと前記予測誤差信号を加算する加算部と、
を具備し、
前記予測モード情報は、
(1)特定の1つの参照フレームを利用した予測か、或いは複数の参照フレームを利用した予測のいずれかを示す第1のモード情報と、
(2)前記複数の参照フレームを利用した予測が、複数の参照マクロブロックの平均値による予測であるか、或いは複数の参照マクロブロックからフレーム間の距離に基づく線形外挿或いは線形内挿による予測であるかを示す第2のモード情報と、
を含み、
前記第1のモード情報は、マクロブロックのデータの一部として受信され、
前記第2のモード情報は、符号化フレームのヘッダデータの一部、または、複数の符号化フレームを含む符号化フレーム群に対するヘッダデータの一部、として受信されることを特徴とする動画像復号化装置。 - マクロブロック毎に複数の動画像フレームを参照する動き補償予測フレーム間符号化データの復号化方法をコンピュータに実行させるためのプログラムであって、
符号化された動きベクトルデータ、予測モード情報及び予測誤差信号を受信する手段、
前記動きベクトル及び前記予測モードに応じて、
(a)前記複数の参照フレームのうち、特定の1フレームから予測マクロブロックを生成するか、
(b)複数の参照フレームから複数の参照マクロブロックを生成して前記の複数の参照マクロブロックの平均値を予測マクロブロックとして生成するか、或いは
(c)前記複数の参照マクロブロックからフレーム間の距離に基づく線形外挿予測または線形内挿予測のいずれかにより予測マクロブロックを生成するか
を選択する手段、
前記生成された予測マクロブロックと前記予測誤差信号を加算する手段
としてコンピュータを機能させ、
前記予測モード情報は、
(1)特定の1つの参照フレームを利用した予測か、或いは複数の参照フレームを利用した予測のいずれかを示す第1のモード情報と、
(2)前記複数の参照フレームを利用した予測が、複数の参照マクロブロックの平均値による予測であるか、或いは複数の参照マクロブロックのフレーム間の距離に基づく線形外挿或いは線形内挿による予測であるかを示す第2のモード情報とを含んで構成され、
前記第1のモード情報は、マクロブロックのデータの一部として受信され、
前記第2のモード情報は、符号化フレームのヘッダデータの一部、または、複数の符号化フレームを含む符号化フレーム群に対するヘッダデータの一部、として受信されることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007128291A JP2007259484A (ja) | 2002-01-18 | 2007-05-14 | 動画像符号化方法と装置及び復号化方法と装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002010874 | 2002-01-18 | ||
JP2007128291A JP2007259484A (ja) | 2002-01-18 | 2007-05-14 | 動画像符号化方法と装置及び復号化方法と装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002341238A Division JP2003284075A (ja) | 2002-01-18 | 2002-11-25 | 動画像符号化方法と装置及び復号化方法と装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007259484A true JP2007259484A (ja) | 2007-10-04 |
Family
ID=37923668
Family Applications (12)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006282037A Abandoned JP2007060698A (ja) | 2002-01-18 | 2006-10-16 | 動画像復号化方法、装置及びプログラム |
JP2006282039A Abandoned JP2007060700A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282041A Abandoned JP2007060702A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282040A Abandoned JP2007060701A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282042A Abandoned JP2007060703A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282036A Abandoned JP2007060697A (ja) | 2002-01-18 | 2006-10-16 | 動画像復号化方法、装置及びプログラム |
JP2006282044A Abandoned JP2007060705A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282035A Abandoned JP2007060696A (ja) | 2002-01-18 | 2006-10-16 | 動画像復号化方法、装置及びプログラム |
JP2006282038A Abandoned JP2007060699A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282043A Abandoned JP2007060704A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282034A Abandoned JP2007060695A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2007128291A Abandoned JP2007259484A (ja) | 2002-01-18 | 2007-05-14 | 動画像符号化方法と装置及び復号化方法と装置 |
Family Applications Before (11)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006282037A Abandoned JP2007060698A (ja) | 2002-01-18 | 2006-10-16 | 動画像復号化方法、装置及びプログラム |
JP2006282039A Abandoned JP2007060700A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282041A Abandoned JP2007060702A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282040A Abandoned JP2007060701A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282042A Abandoned JP2007060703A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282036A Abandoned JP2007060697A (ja) | 2002-01-18 | 2006-10-16 | 動画像復号化方法、装置及びプログラム |
JP2006282044A Abandoned JP2007060705A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282035A Abandoned JP2007060696A (ja) | 2002-01-18 | 2006-10-16 | 動画像復号化方法、装置及びプログラム |
JP2006282038A Abandoned JP2007060699A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282043A Abandoned JP2007060704A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
JP2006282034A Abandoned JP2007060695A (ja) | 2002-01-18 | 2006-10-16 | 動画像符号化方法、装置及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (12) | JP2007060698A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101016199B1 (ko) | 2009-03-18 | 2011-02-24 | (주)씨앤에스 테크놀로지 | 복수의 참조프레임을 이용하여 중간 영상을 생성하는 장치 및 그 방법 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5287624B2 (ja) * | 2009-09-14 | 2013-09-11 | 富士通株式会社 | 画像処理回路および画像符号化装置 |
JP7125594B2 (ja) | 2018-04-27 | 2022-08-25 | 富士通株式会社 | 符号化装置、符号化方法、及び符号化プログラム |
-
2006
- 2006-10-16 JP JP2006282037A patent/JP2007060698A/ja not_active Abandoned
- 2006-10-16 JP JP2006282039A patent/JP2007060700A/ja not_active Abandoned
- 2006-10-16 JP JP2006282041A patent/JP2007060702A/ja not_active Abandoned
- 2006-10-16 JP JP2006282040A patent/JP2007060701A/ja not_active Abandoned
- 2006-10-16 JP JP2006282042A patent/JP2007060703A/ja not_active Abandoned
- 2006-10-16 JP JP2006282036A patent/JP2007060697A/ja not_active Abandoned
- 2006-10-16 JP JP2006282044A patent/JP2007060705A/ja not_active Abandoned
- 2006-10-16 JP JP2006282035A patent/JP2007060696A/ja not_active Abandoned
- 2006-10-16 JP JP2006282038A patent/JP2007060699A/ja not_active Abandoned
- 2006-10-16 JP JP2006282043A patent/JP2007060704A/ja not_active Abandoned
- 2006-10-16 JP JP2006282034A patent/JP2007060695A/ja not_active Abandoned
-
2007
- 2007-05-14 JP JP2007128291A patent/JP2007259484A/ja not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101016199B1 (ko) | 2009-03-18 | 2011-02-24 | (주)씨앤에스 테크놀로지 | 복수의 참조프레임을 이용하여 중간 영상을 생성하는 장치 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP2007060700A (ja) | 2007-03-08 |
JP2007060705A (ja) | 2007-03-08 |
JP2007060697A (ja) | 2007-03-08 |
JP2007060699A (ja) | 2007-03-08 |
JP2007060704A (ja) | 2007-03-08 |
JP2007060696A (ja) | 2007-03-08 |
JP2007060695A (ja) | 2007-03-08 |
JP2007060703A (ja) | 2007-03-08 |
JP2007060702A (ja) | 2007-03-08 |
JP2007060698A (ja) | 2007-03-08 |
JP2007060701A (ja) | 2007-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100746321B1 (ko) | 동화상 부호화방법 및 장치와 동화상 복호화방법 및 장치 | |
TWI395489B (zh) | A video coding apparatus, and an image decoding apparatus | |
EP2250813B1 (en) | Method and apparatus for predictive frame selection supporting enhanced efficiency and subjective quality | |
JP2004007379A (ja) | 動画像符号化方法及び動画像復号化方法 | |
JPWO2005062625A1 (ja) | 動画像を符号化する方法及び装置 | |
JP2007049742A (ja) | 動画像符号化方法、復号化方法及び装置 | |
JP2003284075A (ja) | 動画像符号化方法と装置及び復号化方法と装置 | |
JP2001128179A (ja) | 動画像符号化装置および方法 | |
JP2007259484A (ja) | 動画像符号化方法と装置及び復号化方法と装置 | |
JP3289695B2 (ja) | 動画符号化方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20090330 |