JP2005318106A - 動画像符号化装置及びプログラム - Google Patents
動画像符号化装置及びプログラム Download PDFInfo
- Publication number
- JP2005318106A JP2005318106A JP2004131829A JP2004131829A JP2005318106A JP 2005318106 A JP2005318106 A JP 2005318106A JP 2004131829 A JP2004131829 A JP 2004131829A JP 2004131829 A JP2004131829 A JP 2004131829A JP 2005318106 A JP2005318106 A JP 2005318106A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- motion
- block
- prediction error
- error evaluation
- 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)
Abstract
【課題】 誤った動きベクトルが選択されて予測が当たらない場合、動きベクトルに多くのビットを割くことをやめて符号化効率の低下を抑制することができる動画像符号化装置を提供する。
【解決手段】 現ピクチャ中のブロックで予測誤差評価基準値が最小の動きベクトルと、当該現ピクチャのブロックに対応する前ピクチャ中のブロックで予測誤差評価基準が最小の動きベクトルとの間で算出したばらつきの度合いに基づいて画像の動きに合致した動きベクトルが選択されているか否かを判定し、画像の動きに合致した動きベクトルが選ばれていない場合、現ピクチャ中のブロックにおいて予測誤差評価基準値が小さい順に抽出したα個の動きベクトルのうち、動きベクトルの本数が最小のものを動く補償予測符号化に使用する動きベクトルとして選択する動きベクトル選択部18を備える。
【選択図】 図1
【解決手段】 現ピクチャ中のブロックで予測誤差評価基準値が最小の動きベクトルと、当該現ピクチャのブロックに対応する前ピクチャ中のブロックで予測誤差評価基準が最小の動きベクトルとの間で算出したばらつきの度合いに基づいて画像の動きに合致した動きベクトルが選択されているか否かを判定し、画像の動きに合致した動きベクトルが選ばれていない場合、現ピクチャ中のブロックにおいて予測誤差評価基準値が小さい順に抽出したα個の動きベクトルのうち、動きベクトルの本数が最小のものを動く補償予測符号化に使用する動きベクトルとして選択する動きベクトル選択部18を備える。
【選択図】 図1
Description
この発明は、動画像を高能率符号化してディジタル伝送するシステムに好適に利用される動画像符号化装置に係り、特に動画像をブロック毎に分割して動きベクトルを検出し動き補償予測符号化を実行する動画像符号化装置及びこれをコンピュータに実現させるプログラムに関するものである。
動き補償予測における動きベクトル探索方法としては、例えば動画像符号化の国際標準化方式であるMPEG−2のTM5(Test Model5)がある(非特許文献1参照)。TM5は、基本的にはブロックマッチング法と呼ばれる。この方法では、例えば16画素×16ラインや16画素×8ラインなどのブロックごとに現画像を分割し、差分絶対値総和などの予測誤差評価基準を用いて上記ブロックに対して予測誤差評価基準値が最も小さくなるブロックを参照画像から求め、当該参照画像のブロックの空間的な相対位置を上記現画像ブロックの動きベクトルとして検出する。
ISO-IEC JTC1, MPEG 93/N225b, Test Model 5/draft, 1993.
従来の動画像符号化装置では、差分絶対値総和等の予測誤差評価基準値を用いて、現画像上のブロックに対してその予測残差が最も小さくなるブロックを参照画像から求めることで動きベクトルを検出している。このため、必ずしも画像の動きに合致した動きベクトルが選択されるとは限らず、誤った動きベクトルが検出される可能性があるという課題があった。
この不具合は画像にノイズが含まれる場合にさらに顕著となる。この場合、単に誤った動きベクトルが選択されるだけでなく、動きの大きな動きベクトルを誤って選択してしまうと、不必要な動きベクトル情報に大量のビットを割くことにもなる。これにより、符号化効率が低下してしまうという課題もある。
この発明は上記のような課題を解決するためになされたもので、誤った動きベクトルが選択されて予測が当たらない場合、動きベクトルに多くのビットを割くことをやめて符号化効率の低下を抑制することができる動画像符号化装置及びこれをコンピュータに実現させるプログラムを得ることを目的とする。
この発明に係る動画像符号化装置は、時間軸上に並んだ複数の画像からなる動画像を上記画像内で複数のブロックに分割し、当該ブロック単位で探索した動きベクトルに基づいて動画像の動き補償予測符号化を実行する動画像符号化装置において、動画像からブロック毎に動きベクトルを探索する動きベクトル探索部と、動きベクトル探索部によりブロック毎に探索された動きベクトルのうち、予測誤差評価基準値が小さい順に抽出した複数の動きベクトルを当該ブロック分記憶する第1の動きベクトル記憶部と、動きベクトル探索部により上記画像で探索された動きベクトルのうち、予測誤差評価基準値が最小となる動きベクトルを当該画像の全ブロック分記憶する第2の動きベクトル記憶部と、第1の動きベクトル記憶部から読み出した動画像の現在画像中のブロックで予測誤差評価基準値が最小の動きベクトルと、第2の動きベクトル記憶部から読み出した当該現在画像のブロックに対応する直前画像中のブロックで予測誤差評価基準が最小の動きベクトルとの間でばらつきの度合いを算出し、算出したばらつきの度合いが許容値を超える場合、第1の動きベクトル記憶部に記憶した複数の動きベクトルのうち、符号量が最も少ない動きベクトルを現在画像のブロックの動き補償予測符号化に使用する動きベクトルとして選択する動きベクトル選択部とを備えるものである。
この発明によれば、動画像からブロック毎に動きベクトルを探索する動きベクトル探索部と、動きベクトル探索部によりブロック毎に探索された動きベクトルのうち、予測誤差評価基準値が小さい順に抽出した複数の動きベクトルを当該ブロック分記憶する第1の動きベクトル記憶部と、動きベクトル探索部により上記画像で探索された動きベクトルのうち、予測誤差評価基準値が最小となる動きベクトルを当該画像の全ブロック分記憶する第2の動きベクトル記憶部と、第1の動きベクトル記憶部から読み出した動画像の現在画像中のブロックで予測誤差評価基準値が最小の動きベクトルと、第2の動きベクトル記憶部から読み出した当該現在画像のブロックに対応する直前画像中のブロックで予測誤差評価基準が最小の動きベクトルとの間でばらつきの度合いを算出し、算出したばらつきの度合いが許容値を超える場合、第1の動きベクトル記憶部に記憶した複数の動きベクトルのうち、符号量が最も少ない動きベクトルを現在画像のブロックの動き補償予測符号化に使用する動きベクトルとして選択する動きベクトル選択部とを備えるので、現在画像と直前画像との間で予測誤差評価基準値が最小の動きベクトルにばらつきがあり画像の動きに合致した動きベクトルが選ばれていない場合、当該ブロックにおいて予測誤差評価基準値が小さい順に抽出した動きベクトルの中からさらに符号量が最も少ない動きベクトルを動き補償予測符号化に使用する動きベクトルとして選択することから、画質を維持しつつ、予測が当たらなかった場合に動きベクトルに費やす情報量を削減することができ、ひいては符号化効率を向上させることができるという効果がある。
実施の形態1.
図1は、この発明の実施の形態1による動画像符号化装置の構成を示すブロック図である。本実施の形態1による動画像符号化装置は、並べ替え部2、減算器3、直交変換部4、量子化部5、可変長符号化部6、バッファ7、逆量子化部9、逆直交変換部10、加算器11、画像メモリ12,13、動き補償部14、動きベクトル探索部15、動きベクトルメモリ(第2の動きベクトル記憶部)16、動きベクトルメモリ(第1の動きベクトル記憶部)17及び動きベクトル選択部18から構成される。
図1は、この発明の実施の形態1による動画像符号化装置の構成を示すブロック図である。本実施の形態1による動画像符号化装置は、並べ替え部2、減算器3、直交変換部4、量子化部5、可変長符号化部6、バッファ7、逆量子化部9、逆直交変換部10、加算器11、画像メモリ12,13、動き補償部14、動きベクトル探索部15、動きベクトルメモリ(第2の動きベクトル記憶部)16、動きベクトルメモリ(第1の動きベクトル記憶部)17及び動きベクトル選択部18から構成される。
本実施の形態の動画像符号化装置は、例えば汎用コンピュータなどを用いて、本発明に従う動画像符号化プログラムを実行させることによって具現化することができる。つまり、動画像符号化プログラムをコンピュータに実行させて上記構成要素2〜7、9〜18として機能させることにより、本実施の形態の動画像符号化装置における特徴的なデータ処理を実行することができる。
なお、以下の説明において、本実施の形態の動画像符号化装置を具現化するコンピュータ自体の構成及びその基本的な機能は、当業者が当該分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものではないので詳細な記載を省略することにする。
次に動作について説明する。
並べ替え部2は、例えば複数のフレーム画像から構成される入力画像信号1を入力すると、両方向符号化のためにそのフレーム順序を入れ替える。具体的には、動画像符号化の国際標準化方式であるMPEG−2などで採用されている両方向予測に対応させるため、時間的に未来にあたるフレームの参照画像が符号化画像より先に符号化されるように入れ替えを行う。
並べ替え部2は、例えば複数のフレーム画像から構成される入力画像信号1を入力すると、両方向符号化のためにそのフレーム順序を入れ替える。具体的には、動画像符号化の国際標準化方式であるMPEG−2などで採用されている両方向予測に対応させるため、時間的に未来にあたるフレームの参照画像が符号化画像より先に符号化されるように入れ替えを行う。
次に、並べ替え部2からの出力画像信号は、減算器3によって動き補償予測部14から出力される動き補償予測信号との間で差分がとられる。この差分信号は、直交変換部4によって直交変換された後、量子化部5により量子化される。可変長符号化部6は、動きベクトル選択部18から入力した動きベクトルを含む動きベクトル等データに応じて、量子化部5により量子化された信号に符号を割り当てバッファメモリ7に出力する。
バッファメモリ7では、可変長符号化部6からの出力データを一時的に蓄え、符号化データ8として出力する。一方、イントラ符号化が選択された場合、減算器3には、動き補償予測部14からの出力ではなくゼロ値が送られる。これにより、イントラ符号化が実行される。
また、量子化部5により量子化された信号は、可変長符号化部6の他、逆量子化部9にも出力される。逆量子化部9は、量子化部5からの信号を逆量子化し、逆直交変換部10に出力する。逆量子化部9からの信号は、逆直交変換部10により逆直交変換される。
逆直交変換された信号は、加算器11により動き補償予測部14からの動き補償予測画像信号と加算される。なお、イントラ符号化が選択された場合には、加算器11には動き補償予測信号の代わりにゼロ値が送られてイントラ符号化が実行される。
加算器11からの出力は、画像メモリ12又は画像メモリ13に蓄積される。ここで、画像メモリ12,13が2面存在するのは、両方向予測を行うためであり、いずれかに時間的に過去の画像を蓄積し、もう一方に時間的に未来の画像を蓄積することで、両方向予測を行うことができる。
次に、動きベクトル探索部15は、画像メモリ12又は画像メモリ13から読み出した参照画像の画像信号と、現画像の画像信号とを用いて、動きベクトル探索を行う。この探索方法としては、上述したブロックマッチング法がある。但し、両方向予測を行う場合には、時間的に過去の画像からの予測と、時間的に未来の画像からの予測とをそれぞれブロックマッチング法を用いて実施した後、それぞれで選択された動きベクトルの位置で1対1の線形内挿を行って作成した参照画像を用いて予測誤差評価基準値を求め、併せて3つのうちより予測誤差評価基準値が最小のものを選択するのが一般的である。これは、上述した非特許文献1にも示されている。
このようにして探索された動きベクトルを含む動きベクトル等データを受けて、動き補償部14では、対応する動きベクトルで示された参照画像のブロックを動き補償予測画像信号として減算器3に出力する。
また、上述のようにして動きベクトル探索部15が探索結果として得た動きベクトルは、動きベクトルメモリ16又は動きベクトルメモリ17に蓄積される。このとき、動きベクトルメモリ16には、現ピクチャ(現在画像)と時間軸上で隣接した直前の画像である前ピクチャ(直前画像)から探索された動きベクトルのうち、予測誤差評価基準値が最小となる動きベクトルが全てのブロック分記憶される。
一方、動きベクトルメモリ17には、現ピクチャから探索された動きベクトルのうち、予測誤差評価基準値が小さいものから順にα個(αは2以上の自然数)の動きベクトルを、これらに対応する各予測誤差評価基準値と共に、当該ブロック分についてのみ記憶される。
なお、上述したように、動きベクトル探索部15は、符号化対象のブロック毎に動きベクトルを探索するが、ブロック毎に、フレーム予測、フィールド予測、前方向予測、両方向予測などの予測モードがあり、この予測モードの違いにより動きベクトルの本数が異なってくるので、α個の各動きベクトルの中には、動きベクトルが1本のものもあるが、動きベクトルが2本や4本のものも存在する。
つまり、動きベクトルメモリ17には、各予測モードでの符号化時に現ピクチャの符号化対象ブロックに付加される動きベクトルのうち、予測誤差評価基準値が小さいものから順にα個の動きベクトルが当該ブロック分のみ記憶されることになる。
動きベクトル選択部18では、動きベクトルメモリ16や動きベクトルメモリ17からの出力を受けて、可変長符号化部6による符号化処理や動き補償予測部14による動き補償予測画像信号の生成処理に用いる動きベクトルを選択する。
次に、動きベクトル選択部18による動きベクトル選択動作について説明する。
図2は、動きベクトルの記憶動作も含む動きベクトル選択処理を示すフローチャートであり、この図に沿って説明する。先ず、動きベクトル探索部15が、上述したように動きベクトル探索を行い(ステップST1)、前ピクチャから探索した動きベクトルのうち予測誤差評価基準値(予測残差)が最小となる動きベクトルを、動きベクトルメモリ16に全ブロック分記憶する(ステップST2)。
図2は、動きベクトルの記憶動作も含む動きベクトル選択処理を示すフローチャートであり、この図に沿って説明する。先ず、動きベクトル探索部15が、上述したように動きベクトル探索を行い(ステップST1)、前ピクチャから探索した動きベクトルのうち予測誤差評価基準値(予測残差)が最小となる動きベクトルを、動きベクトルメモリ16に全ブロック分記憶する(ステップST2)。
一方、動きベクトル探索部15は、現ピクチャから探索した動きベクトルのうち、予測誤差評価基準値(予測残差)が小さいものから順にα個(αは自然数)の動きベクトルを、これらに対応する各予測誤差評価基準値と共に、当該ブロック分のみ動きベクトルメモリ17に記憶する(ステップST3)。
続いて、動きベクトル選択部18は、動きベクトルメモリ17から読み出した現ピクチャの上記ブロック分の各動きベクトルの予測誤差評価基準値のうち、最小の基準値をとる動きベクトルを抽出し、さらに動きベクトルメモリ16から当該現ピクチャのブロックに対応するブロックの前ピクチャの動きベクトルを読み出して、これら動きベクトル間のばらつきの度合いを示す差分絶対値和βを求める(ステップST4)。
図3は、前ピクチャの動きベクトルと現ピクチャの動きベクトルとの差分絶対値和を求める処理を説明するための図である。図において、第(n−1)ピクチャが前ピクチャであり、第nピクチャが現ピクチャを表している。各ピクチャに示した斜線を付した領域は、上記α個の動きベクトルとその予測誤差評価基準値を求めた符号化対象のブロックを示している。
Vx[n]は第nピクチャの動きベクトルの水平成分であり、Vy[n]は第nピクチャの動きベクトルの垂直成分を表す。Vx[n−1]は第(n−1)ピクチャの動きベクトルの水平成分であり、Vy[n−1]は第(n−1)ピクチャの動きベクトルの垂直成分を表す。これにより、差分絶対値和βは、下記式(1)のように表すことができる。
β←SQRT{(Vx[n]−Vx[n−1])2
+(Vy[n]−Vy[n−1])2} ・・・(1)
+(Vy[n]−Vy[n−1])2} ・・・(1)
動きベクトル選択部18は、動きベクトルメモリ16,17から読み出した対応するブロックの前ピクチャと現ピクチャの予測誤差評価基準値が最小の各動きベクトルを用い、上記式(1)に従って、差分絶対値和βを求める。
なお、上述したように、動きベクトル探索部15により探索された、符号化対象ブロックに付加される(Vx[n−1],Vy[n−1])や、(Vx[n],Vy[n])で表される動きベクトルは、予測モードによっては複数本の動きベクトルからなるベクトル群になる。このため、本実施の形態では、符号化対象ブロックに複数本の動きベクトルが付加されている場合、上記式(1)による演算前に各ベクトルの本数分の相加平均をとったものを以降の処理に使用するβ値とするか、若しくは、上記式(1)に従って各動きベクトルについてβ値を演算した後、それらベクトル本数中の最大値を以降の処理に使用するβ値とする。
続いて、動きベクトル選択部18は、予め定めた閾値TH(許容値)と差分絶対値和βとを比較する(ステップST5)。閾値THは、前ピクチャの動きベクトルと現ピクチャの動きベクトルとの間で方向及び大きさが共に揃っており許容されるばらつきの範囲内にあるβ値の最上限値であり、両ピクチャ間の動きの連続性を評価する基準となる。この閾値THは、試験結果から統計的に決定される。例えば、閾値THを徐々に変化させて、動きベクトルの情報量や量子化ステップ、S/N値などのパラメータの統計をとり、同時に画質評価を行って最適な値を決定する。なお、これらの値は、画像の解像度やフレームレートなどにも依存する。
ステップST5において、β値が閾値TH以下である場合、動きベクトル選択部18は、当該ブロックで予測誤差評価基準値が最小の動きベクトルが、前ピクチャと現ピクチャで方向及び大きさ共に揃っており許容されるばらつきの範囲内であると判定する。この場合、動きベクトル選択部18は、画像の動きに合致した動きベクトルが選ばれていると判断し、予測誤差評価基準値が最小となる動きベクトルを選択する(ステップST6)。この動きベクトルを含むデータは、動きベクトル選択部18から可変長符号化部6及び動き補償部14に出力される。
一方、β値が閾値THを超える場合、動きベクトル選択部18は、当該ブロック(マクロブロック)で予測誤差評価基準値が最小の動きベクトルが、前ピクチャと現ピクチャで方向や大きさが大きく異なっており、許容されるばらつきの範囲外であると判定する。この場合、動きベクトル選択部18は、画像の動きに合致した動きベクトルが選ばれていないと判断し、以下のようにしてα個の動きベクトルから符号量が最も少ない動きベクトルを選択する。
上述したように、動きベクトルメモリ17に記憶してあるα個の動きベクトルは、予測モードによっては複数本の動きベクトルからなるベクトル群である。そこで、動きベクトル選択部18は、画像の動きに合致した動きベクトルが選ばれていないと判断すると、α個の動きベクトル(ベクトル群)から、動きベクトルの本数が最小のものを選択する。また、本数が最小の動きベクトルが複数存在する場合、最小本数の動きベクトル(ベクトル群)のうち、動きベクトルの長さが最小のものを選択する(ステップST7)。
例えば、動画像符号化の国際標準化方式であるMPEG−2であれば、時間的に過去の画像から予測を行なう前方向予測、時間的に未来の画像から予測を行なう後方向予測、時間的に過去の画像と未来の画像の両方から予測を行なう両方向予測といったバリエーションが存在し、その各々にフレーム予測やフィールド予測といった予測モードが存在し、これらの組み合わせによっては符号化時に1ブロックに付加される動きベクトルの本数が異なる。これより、上述した「動きベクトルの本数が最小のもの」とは、この符号化時に1ブロックに付加される動きベクトルの本数が最も少ないものを指している。
以上のように、この実施の形態1によれば、動きベクトル選択部18が、現ピクチャ中のブロックで予測誤差評価基準値が最小の動きベクトルと、当該現ピクチャのブロックに対応する前ピクチャ中のブロックで予測誤差評価基準が最小の動きベクトルとの間でばらつきの度合いを算出し、算出したばらつきの度合いから画像の動きに合致した動きベクトルが選択されているか否かを判定し、画像の動きに合致した動きベクトルが選ばれていない場合、動きベクトルメモリ17に記憶しておいた、予測誤差評価基準値が小さい順に抽出したα個の動きベクトルのうち、動きベクトルの本数が最小のものを選択し、最小本数のものが複数あれば動きベクトルの長さが最小のものを選択するので、画像の動きに合致した動きベクトルが選ばれていない場合では、動きベクトルに費やす情報量を抑制することができ、ひいては符号化効率を向上させることができる。また、ベクトルの本数及び長さが最小の動きベクトルを、予測誤差評価基準値が小さい順にα個の動きベクトルから選択するので、画質を維持しつつ上記効果を得ることができる。
なお、上記実施の形態1では、上記式(1)を用いて差分絶対値和βを算出する例を示したが、現フレームの予測誤差評価基準値が最小の動きベクトルと前フレームの予測誤差評価基準値が最小の動きベクトルとの間で、これらの方向や大きさのばらつきの度合いを表すパラメータであれば、どんな演算を用いるものでもよい。
例えば、上記式(1)のような自乗演算を用いるものと比較して装置化が容易な下記式(2)のような各成分毎の差分絶対値を用いてもよい。
β←(|Vx[n]−Vx[n−1]|+|Vy[n]−Vy[n−1]|)
・・・(2)
β←(|Vx[n]−Vx[n−1]|+|Vy[n]−Vy[n−1]|)
・・・(2)
また、上記実施の形態1で示した構成において、前ピクチャと現ピクチャの間にシーンチェンジが発生していた場合、上述した動きベクトル選択を行なわず、常に予測誤差が最小の動きベクトルを使用して符号化するように構成してもよい。これは、シーンチェンジを挟んだ場合、時間的に前後で画像が切り替わって動きが不連続になり、動きの連続性を評価する本発明の効果を得ることができないからである。
実施の形態2.
この実施の形態2は、上記実施の形態1と基本的な構成は同一であるが、動きベクトルメモリ17に蓄積される情報や動きベクトル選択部18による動きベクトル選択処理が異なる。そこで、この動きベクトルの選択処理について主に説明する。なお、本実施の形態の動画像符号化装置についても、上記実施の形態1と同様に、例えば汎用コンピュータなどを用いて、本発明に従う動画像符号化プログラムを実行させることによって具現化することができる。
この実施の形態2は、上記実施の形態1と基本的な構成は同一であるが、動きベクトルメモリ17に蓄積される情報や動きベクトル選択部18による動きベクトル選択処理が異なる。そこで、この動きベクトルの選択処理について主に説明する。なお、本実施の形態の動画像符号化装置についても、上記実施の形態1と同様に、例えば汎用コンピュータなどを用いて、本発明に従う動画像符号化プログラムを実行させることによって具現化することができる。
図4は、実施の形態2の動画像符号化装置による動きベクトル選択処理を示すフローチャートである。図に示すように、動きベクトル探索部15が、上記実施の形態1と同様に、動きベクトル探索を行い(ステップST1a)、前ピクチャから探索した動きベクトルのうち予測誤差評価基準値(予測残差)が最小となる動きベクトルを、動きベクトルメモリ16に全ブロック分記憶する(ステップST2a)。
一方、動きベクトル探索部15は、現ピクチャから探索した動きベクトルのうち、予測誤差評価基準値(予測残差)が小さいものから順にα個(αは自然数)の動きベクトルとこれらに対応する各予測誤差評価基準値とを当該ブロック分のみ動きベクトルメモリ17に記憶する(ステップST3a)。
続いて、動きベクトル探索部15は、これらα個の動きベクトルとは別に、予測タイプ毎に予測誤差評価基準値が最小となる動きベクトルとこれに対応する予測誤差評価基準値とを動きベクトルメモリ17に記憶する(ステップST4a)。
ここで、予測タイプとは、例えば動画像符号化の国際標準化方式であるMPEG−2であれば、時間的に過去の画像から予測を行なう前方向予測、時間的に未来の画像から予測を行なう後方向予測、時間的に過去の画像と未来の画像の両方から予測を行なう両方向予測といったバリエーションが存在し、その各々にフレーム予測やフィールド予測といった予測モードが存在しており、これらの組み合わせの全てを指すものとする。
つまり、動画像の1つのブロックに施されるべき、前方向予測や後方向予測、フレーム予測、フィールド予測などの各種予測モードの組み合わせを当該ブロックの予測タイプと呼び、各種予測モードの組み合わせによる各予測タイプで当該ブロックをそれぞれ符号化した際に付加された動きベクトルのうち、予測誤差評価基準値が最小となる動きベクトルを動きベクトルメモリ17に記憶することになる。
次に、動きベクトル選択部18は、動きベクトルメモリ17から読み出した現ピクチャの上記ブロック分の各動きベクトルの予測誤差評価基準値のうち、最小値をとる動きベクトルを抽出し、前ピクチャと現ピクチャの動きベクトルの差分絶対値βを求める(ステップST5a)。
上記実施の形態1で示した図3を用いて、ステップST5aの処理について詳細に説明する。上述したように、第(n−1)ピクチャが前ピクチャであり、第nピクチャが現ピクチャを表している。各ピクチャに示した斜線を付した領域は、上記α個の動きベクトルとその予測誤差評価基準値を求めた上記ブロックを示している。
Vx[n]は第nピクチャの動きベクトルの水平成分であり、Vy[n]は第nピクチャの動きベクトルの垂直成分を表す。Vx[n−1]は第(n−1)ピクチャの動きベクトルの水平成分であり、Vy[n−1]は第(n−1)ピクチャの動きベクトルの垂直成分を表す。これにより、差分絶対値和βは、上記式(1)のように表すことができる。
動きベクトル選択部18は、動きベクトルメモリ16,17から読み出した対応するブロックの前ピクチャと現ピクチャの予測誤差評価基準値が最小の各動きベクトルを用い、上記式(1)に従って差分絶対値和βを求める。
なお、動きベクトル探索部15により探索された、符号化対象ブロックに付加される(Vx[n−1],Vy[n−1])や、(Vx[n],Vy[n])で表される動きベクトルは、予測モードによっては複数本の動きベクトルからなるベクトル群になる。このため、本実施の形態では、符号化対象ブロックに複数本の動きベクトルが付加されている場合、上記式(1)による演算前に各ベクトルの本数分の相加平均をとったものを以降の処理に使用するβ値とするか、若しくは、上記式(1)に従って各動きベクトルについてβ値を演算した後、これらベクトル本数中の最大値を以降の処理に使用するβ値とする。
続いて、動きベクトル選択部18は、予め定めた閾値TH(許容値)と差分絶対値和βとを比較する(ステップST6a)。閾値THは、前ピクチャの動きベクトルと現ピクチャの動きベクトルとの間で方向及び大きさが共に揃っていることを示す最上限値であり、試験結果から統計的に決定される。例えば、閾値THを徐々に変化させて、動きベクトルの情報量や量子化ステップ、S/N値などのパラメータの統計をとり、同時に画質評価を行って最適なTHを決定する。なお、これらの値は、画像の解像度やフレームレートなどにも依存する。
ステップST6aにおいて、β値が閾値TH以下である場合、動きベクトル選択部18は、当該ブロックで予測誤差評価基準値が最小の動きベクトルが、前ピクチャと現ピクチャで方向及び大きさ共に揃っており許容されるばらつきの範囲内にあると判定する。この場合、動きベクトル選択部18は、画像の動きに合致した動きベクトルが選ばれていると判断し、予測誤差評価基準値が最小となる動きベクトルを選択する(ステップST7a)。この動きベクトルを含むデータは、動きベクトル選択部18から可変長符号化部6及び動き補償部14に出力される。
一方、β値が閾値THを超える場合、動きベクトル選択部18は、当該ブロック(マクロブロック)で予測誤差評価基準値が最小の動きベクトルが、前ピクチャと現ピクチャで方向や大きさが大きく異なっており、許容されるばらつきの範囲外であると判定する。この場合、動きベクトル選択部18は、画像の動きに合致した動きベクトルが選ばれていないと判断し、以下のような動きベクトルを選択する。
先ず、動きベクトル選択部18は、動きベクトルメモリ17に記憶してあるα個の動きベクトルに対する予測誤差評価基準値のうちから最小のものを抽出し、その予測誤差評価基準値をAとする(ステップST8a)。
続いて、動きベクトル選択部18は、予測誤差評価基準値が小さい順にα個の動きベクトルに対する予測誤差評価基準値及び予測タイプ毎に記憶した動きベクトルに対する予測誤差評価基準値と上記Aとの差分絶対値をそれぞれ求め、これら差分絶対値のうち、予め定めた一定値D(許容値)を超えるものを対象から除外する(ステップST9a)。
上述した値Dは、α個の動きベクトルに対する予測誤差評価基準値及び予測タイプ毎に記憶した動きベクトルに対する予測誤差評価基準値と上記Aとの差分絶対値に関して、前ピクチャの動きベクトルと現ピクチャの動きベクトルとの間で方向及び大きさが共に揃っており許容されるばらつきの範囲内になる予測誤差評価基準値についての差分絶対値和の最上限値であり、両ピクチャ間の動きの連続性を評価する基準となる。このD値は、試験結果から統計的に決定される。例えば、D値を徐々に変化させて、動きベクトルの情報量や量子化ステップ、S/N値などのパラメータの統計をとり、同時に画質評価を行って最適な値が決定される。
このあと、動きベクトル選択部18は、ステップST9aの処理で残った動きベクトルから、符号量が最も少ない動きベクトルを動く補償予測符号化に使用する動きベクトルとして選択する。例えば、動きベクトル選択部18は、ステップST9aの処理で残った動きベクトルから動きベクトルの本数が最小のものを選択する。また、本数が最小の動きベクトルが複数存在する場合、最小本数の動きベクトル(ベクトル群)のうち、動きベクトルの長さが最小のものを選択する(ステップST10a)。
なお、上述した「動きベクトルの本数が最小のもの」は、上記実施の形態1と同様に、符号化時に1ブロックに付加される動きベクトルの本数が最も少ないものを選択することを指している。
以上のように、この実施の形態2によれば、動きベクトル選択部18が、画像の動きに合致した動きベクトルが選択されているか否かを判定し、画像の動きに合致した動きベクトルが選ばれていない場合、α個の動きベクトル及び予測タイプ毎に記憶した動きベクトルに対する予測誤差評価基準値とα個の動きベクトルに対する予測誤差評価基準値のうち最小のものとの間で差分絶対値和を算出し、α個の動きベクトルのうちこの差分絶対値和が許容値を超えるものを除外して選別した動きベクトルのうち、動きベクトルの本数が最小のものを選択し、最小本数のものが複数あれば動きベクトルの長さが最小のものを選択する。
このように、全ての動きベクトル候補のうち、予測誤差評価基準値が小さい順にα個分だけ抽出した動きベクトルの他、予測タイプ毎の動きベクトルのうち最小の予測誤差評価基準値となる動きベクトルをそれぞれ抽出して、画像の動きに合致した動きベクトルが選ばれていない場合における選択候補とすることで、例えば予測誤差評価基準値が小さい順にα個分だけ抽出した動きベクトルを構成する全てのベクトルが特定の予測タイプに偏ってしまった場合であっても、これらとは別個に各予測タイプの最適ベクトルを候補に加えることができる。
また、予測タイプによっては、動きベクトルの本数が異なる場合もあることを考慮すると、上記実施の形態1よりも動きベクトルの候補を増やすことにより、画像の動きに合致した動きベクトルが選ばれていない場合における動きベクトルの情報量を減少させることができ、ひいては上記実施の形態1よりも符号化効率を向上させることができる。
なお、上記実施の形態2では、予測タイプ毎に予測誤差評価基準値が最小となる動きベクトルとそれに対応する予測誤差評価基準値を記憶しておく構成を示したが、これに加えて動きベクトル(0,0)と、それに対する予測誤差評価基準値も記憶しておき、これらを符号化に用いる動きベクトルの候補としてもよい。
また、上記実施の形態2では、上記式(1)を用いて差分絶対値和βを算出する例を示したが、現フレームの予測誤差評価基準値が最小の動きベクトルと、前フレームの予測誤差評価基準値が最小の動きベクトルとの間で、これらの方向や大きさのばらつき度合いを表すものであれば、どんな演算を用いてもよい。例えば、上記式(1)のような自乗演算より装置化が容易な各成分毎の差分絶対値を用いる上記式(2)であってもよい。
さらに、上記実施の形態2で示した構成において、前ピクチャと現ピクチャの間にシーンチェンジが発生していた場合、上述した動きベクトル選択を行なわず、常に予測誤差が最小の動きベクトルを使用して符号化するように構成してもよい。これは、シーンチェンジを挟んだ場合、時間的に前後で画像が切り替わって動きが不連続になり、動きの連続性を評価する本発明の効果を得ることができないからである。
この発明に係る動画像符号化装置は、動画像符号化にあたり、画像の動きに合致した動きベクトルが選択されず予測が当たらなかった場合であっても画質を維持しつつ動きベクトルに費やす情報量を削減することができるので、動画像を高能率符号化してディジタル伝送するシステムに適用可能である。
1 入力画像信号、2 並べ替え部、3 減算器、4 直交変換部、5 量子化部、6 可変長符号化部、7 バッファ、8 符号化データ、9 逆量子化部、10 逆直交変換部、11 加算器、12,13 画像メモリ、14 動き補償部、15 動きベクトル探索部、16,17 動きベクトルメモリ(第1の動きベクトル記憶部、第2の動きベクトル記憶部)、18 動きベクトル選択部。
Claims (7)
- 時間軸上に並んだ複数の画像からなる動画像を上記画像内で複数のブロックに分割し、当該ブロック単位で探索した動きベクトルに基づいて上記動画像の動き補償予測符号化を実行する動画像符号化装置において、
上記動画像から上記ブロック毎に動きベクトルを探索する動きベクトル探索部と、
上記動きベクトル探索部により上記ブロック毎に探索された動きベクトルのうち、予測誤差評価基準値が小さい順に抽出した複数の動きベクトルを当該ブロック分記憶する第1の動きベクトル記憶部と、
上記動きベクトル探索部により上記画像で探索された動きベクトルのうち、予測誤差評価基準値が最小となる動きベクトルを当該画像の全ブロック分記憶する第2の動きベクトル記憶部と、
上記第1の動きベクトル記憶部から読み出した上記動画像の現在画像中のブロックで予測誤差評価基準値が最小の動きベクトルと、上記第2の動きベクトル記憶部から読み出した当該現在画像のブロックに対応する直前画像中のブロックで予測誤差評価基準が最小の動きベクトルとの間でばらつきの度合いを算出し、算出したばらつきの度合いが許容値を超える場合、上記第1の動きベクトル記憶部に記憶した複数の動きベクトルのうち、符号量が最も少ない動きベクトルを上記現在画像のブロックの動き補償予測符号化に使用する動きベクトルとして選択する動きベクトル選択部と
を備えたことを特徴とする動画像符号化装置。 - 第1の動きベクトル記憶部は、
動きベクトル探索部によりブロック毎に探索された動きベクトルのうち、予測誤差評価基準値が小さい順に抽出した複数の動きベクトルとその予測誤差評価基準値とを当該ブロック分記憶すると共に、当該ブロックに対して施された予測符号化モードの組み合わせである予測タイプ毎に探索された動きベクトルのうち、予測誤差評価基準値が最小の動きベクトルとその予測誤差評価基準値とを当該ブロック分記憶し、
動きベクトル選択部は、
上記第1の動きベクトル記憶部から読み出した現在画像中のブロックで予測誤差評価基準値が最小の動きベクトルと、第2の動きベクトル記憶部から読み出した上記現在画像のブロックに対応する直前画像中のブロックで予測誤差評価基準値が最小の動きベクトルとの間でばらつきの度合いを算出し、
算出したばらつきの度合いが許容値を超える場合、上記第1の動きベクトル記憶部から読み出した上記現在画像中のブロックにおける複数の動きベクトルの各予測誤差評価基準値と、上記予測タイプ毎の動きベクトルの予測誤差評価基準値との間でばらつきの度合いを算出し、
算出したばらつきの度合いが許容値を超える動きベクトルを除外した残りの動きベクトルのうち、符号量が最も少ない動きベクトルを上記現在画像中のブロックの動き補償予測符号化に使用する動きベクトルとして選択することを特徴とする請求項1記載の動画像符号化装置。 - 動きベクトル選択部は、ばらつきの度合いとして差分絶対値和を求めることを特徴とする請求項1又は請求項2記載の動画像符号化装置。
- 動きベクトル選択部は、動きベクトルの本数が最小の動きベクトルを符号量が最も少ない動きベクトルとして選択することを特徴とする請求項1から請求項3のうちのいずれか1項記載の動画像符号化装置。
- 動きベクトル選択部は、動きベクトルの本数が最小の動きベクトルが複数ある場合、これらのうち動きベクトルの長さが最小のものを符号量が最も少ない動きベクトルとして選択することを特徴とする請求項4記載の動画像符号化装置。
- 時間軸上に並んだ複数の画像からなる動画像を上記画像内で複数のブロックに分割し、当該ブロック単位で探索した動きベクトルに基づいて上記動画像の動き補償予測符号化を実行するにあたり、上記動画像から上記ブロック毎に動きベクトルを探索する動きベクトル探索部、
上記動きベクトル探索部により上記ブロック毎に探索された動きベクトルのうち、予測誤差評価基準値が小さい順に抽出した複数の動きベクトルを当該ブロック分記憶する第1の動きベクトル記憶部、
上記動きベクトル探索部により上記画像で探索された動きベクトルのうち、予測誤差評価基準値が最小となる動きベクトルを当該画像の全ブロック分記憶する第2の動きベクトル記憶部、
上記第1の動きベクトル記憶部から読み出した上記動画像の現在画像中のブロックで予測誤差評価基準値が最小の動きベクトルと、上記第2の動きベクトル記憶部から読み出した当該現在画像のブロックに対応する直前画像中のブロックで予測誤差評価基準が最小の動きベクトルとの間でばらつきの度合いを算出し、算出したばらつきの度合いが許容値を超える場合、上記第1の動きベクトル記憶部に記憶した複数の動きベクトルのうち、符号量が最も少ない動きベクトルを上記現在画像のブロックの動き補償予測符号化に使用する動きベクトルとして選択する動きベクトル選択部
としてコンピュータを機能させるプログラム。 - 第1の動きベクトル記憶部は、
動きベクトル探索部によりブロック毎に探索された動きベクトルのうち、予測誤差評価基準値が小さい順に抽出した複数の動きベクトルとその予測誤差評価基準値とを当該ブロック分記憶すると共に、当該ブロックに対して施された予測符号化モードの組み合わせである予測タイプ毎に探索された動きベクトルのうち、予測誤差評価基準値が最小の動きベクトルとその予測誤差評価基準値とを当該ブロック分記憶し、
動きベクトル選択部は、
上記第1の動きベクトル記憶部から読み出した現在画像中のブロックで予測誤差評価基準値が最小の動きベクトルと、第2の動きベクトル記憶部から読み出した上記現在画像のブロックに対応する直前画像中のブロックで予測誤差評価基準値が最小の動きベクトルとの間でばらつきの度合いを算出し、
算出したばらつきの度合いが許容値を超える場合、上記第1の動きベクトル記憶部から読み出した上記現在画像中のブロックにおける複数の動きベクトルの各予測誤差評価基準値と、上記予測タイプ毎の動きベクトルの予測誤差評価基準値との間でばらつきの度合いを算出し、
算出したばらつきの度合いが許容値を超える動きベクトルを除外した残りの動きベクトルのうち、符号量が最も少ない動きベクトルを上記現在画像中のブロックの動き補償予測符号化に使用する動きベクトルとして選択することを特徴とする請求項6記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004131829A JP2005318106A (ja) | 2004-04-27 | 2004-04-27 | 動画像符号化装置及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004131829A JP2005318106A (ja) | 2004-04-27 | 2004-04-27 | 動画像符号化装置及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005318106A true JP2005318106A (ja) | 2005-11-10 |
Family
ID=35445117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004131829A Pending JP2005318106A (ja) | 2004-04-27 | 2004-04-27 | 動画像符号化装置及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005318106A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565791A (zh) * | 2020-11-27 | 2021-03-26 | 上海顺久电子科技有限公司 | 一种运动估计方法及设备 |
-
2004
- 2004-04-27 JP JP2004131829A patent/JP2005318106A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112565791A (zh) * | 2020-11-27 | 2021-03-26 | 上海顺久电子科技有限公司 | 一种运动估计方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11134263B2 (en) | Moving picture decoding method and moving picture encoding method | |
KR100803611B1 (ko) | 영상의 부호화, 복호화 방법 및 장치 | |
US8837592B2 (en) | Method for performing local motion vector derivation during video coding of a coding unit, and associated apparatus | |
JP5580453B2 (ja) | 直接モード符号化及び復号化装置 | |
CN110741640B (zh) | 用于视频代码化中的运动补偿预测的光流估计 | |
JP2019115061A (ja) | 符号化装置、符号化方法、復号装置、復号方法、及びプログラム | |
JP5310614B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法 | |
US20090034854A1 (en) | Video encoding and decoding method and apparatus using weighted prediction | |
KR20110008653A (ko) | 움직임 벡터 예측 방법과 이를 이용한 영상 부호화/복호화 장치 및 방법 | |
US20120213281A1 (en) | Method and apparatus for encoding and decoding multi view video | |
US20180227592A1 (en) | Motion picture encoding device, motion picture encoding method, and storage medium storing motion picture encoding program | |
US11528485B2 (en) | Encoding apparatus and program | |
JP5281597B2 (ja) | 動きベクトル予測方法,動きベクトル予測装置および動きベクトル予測プログラム | |
JP6248783B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
JP2005318106A (ja) | 動画像符号化装置及びプログラム | |
JP5281596B2 (ja) | 動きベクトル予測方法,動きベクトル予測装置および動きベクトル予測プログラム | |
US9549205B2 (en) | Method and device for encoding video | |
JP5622613B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム | |
JP2012120108A (ja) | 補間画像生成装置及びプログラム、並びに、動画像復号装置及びプログラム | |
JP2018182435A (ja) | 動きベクトル予測装置及びコンピュータプログラム | |
JP2010166275A (ja) | 画像符号化装置 | |
KR101895822B1 (ko) | 프로파일 정보 기반 움직임 추정장치 및 방법 | |
JP2007243391A (ja) | 動画像符号化装置 | |
JP2018117239A (ja) | 動画データの圧縮装置、動画データの圧縮方法 | |
JP2013183345A (ja) | 映像符号化装置及び映像符号化方法 |