JP2009272701A - 動きベクトル探索装置及びその制御方法 - Google Patents
動きベクトル探索装置及びその制御方法 Download PDFInfo
- Publication number
- JP2009272701A JP2009272701A JP2008119052A JP2008119052A JP2009272701A JP 2009272701 A JP2009272701 A JP 2009272701A JP 2008119052 A JP2008119052 A JP 2008119052A JP 2008119052 A JP2008119052 A JP 2008119052A JP 2009272701 A JP2009272701 A JP 2009272701A
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- value
- correlation value
- correlation
- difference
- 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.)
- Withdrawn
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】動き補償予測符号化方式において動きベクトルを探索する際に、処理対象ブロックと参照ブロックとの相関値としてSAD(Sum of Absolute Difference)を用いた場合、画像の最適な符号化が行えないことがある。一方、相関値としてSATD(Sum of Absolute Transformed Difference)を用いた場合、画像そのものの符号量は低減するものの、動きベクトルの符号量が増加することがある。
【解決手段】現処理対象ブロックと予測ブロックについて、まず、SADによる第1の相関値と、SATDによる第2の相関値を求める(101)。そして、現処理対象ブロックに対応する予測動きベクトルを算出し(116)、第1及び第2の相関値と予測動きベクトルに基づいて、動きベクトルを探索する(103)。これにより、画像及び動きベクトルの両方について符号量を低減し、動画像全体として良好な符号化効率を実現するような動きベクトルが得られる。
【選択図】 図1
【解決手段】現処理対象ブロックと予測ブロックについて、まず、SADによる第1の相関値と、SATDによる第2の相関値を求める(101)。そして、現処理対象ブロックに対応する予測動きベクトルを算出し(116)、第1及び第2の相関値と予測動きベクトルに基づいて、動きベクトルを探索する(103)。これにより、画像及び動きベクトルの両方について符号量を低減し、動画像全体として良好な符号化効率を実現するような動きベクトルが得られる。
【選択図】 図1
Description
本発明は、デジタル動画像における動きベクトルを探索する動きベクトル探索装置及びその制御方法に関する。
近年、MPEG(Moving Picture Experts Group)の国際標準動画像符号化方式に代表されるような、動画像圧縮符号化方式が普及している。この動画像圧縮符号化方式においては、現フレームの入力信号ブロックと動き補償により得られた参照フレームの局部復号信号ブロックとのフレーム間予測誤差信号を、DCT変換によって符号化しているため、動き補償予測符号化方式と呼ばれる。動き補償予測符号化方式においては、動画像のフレームをブロックに分割し、該ブロック単位でのマッチングを行う、所謂ブロックマッチング法により動きベクトルの探索が行なわれる。
ここで図2を用いて、一般的なブロックマッチング法における動きベクトル探索について説明する。
図2に示すように、現フレームは例えば、16画素×16ラインのブロックに分割され、該ブロックを処理対象ブロックとして、ブロック毎に動きベクトルを探索する。動きベクトルは、参照フレーム内において現フレームの処理対象ブロックに対応する位置にあるブロックを基準に、該基準ブロックを含む周囲の画素群を動き探索範囲として、該動き探索範囲内から、最も相関度の大きいブロックの相対位置として求める。ここで相関度とは、現フレームの処理対象ブロックと、該動き探索範囲内から現処理対象ブロックと同サイズの領域(以下、参照ブロック)とをずらしながら比較することによって求める。また、相関度の測定には、ブロック内における互いに対応する位置の画素の差分絶対値和等がよく用いられ、該差分絶対値和の値が小さいほど相関が高いと評価される。
こうした動き検出処理を実現する従来の構成を図3に示し、以下に説明する。
SAD算出部301は、現処理対象となる入力ブロックと、動き補償部302より出力される参照ブロックを入力とし、それぞれの差分絶対値和(SAD:Sum of Absolute Difference)を算出する。該算出結果は、比較器304及び選択器305に入力される。
動き補償部302は、動きベクトル決定部303が随時出力する探索ベクトルを入力とし、該探索ベクトルの示す探索ポイントにおける参照ブロックを、SAD算出部301へ出力する。
比較器304は、SAD算出部301が出力するSAD値と、SAD保持部307より出力される値との大小関係を比較し、その比較結果を選択器305、306へ出力する。例えば、SAD算出部301が出力するSAD値の方が小さければ、比較結果を示す値として'1'を出力し、そうでない場合は'0'を出力するものとする。
選択器305は、SAD算出部301が出力するSAD値と、SAD保持部307より出力される値とのいずれか一方を、比較器304の出力に従って選択し、SAD保持部307へと出力する。例えば、比較器304の出力値が'1'の場合はSAD保持部307より出力される値を、'0'の場合はSAD算出部301が出力するSAD値を、それぞれ選択するものとする。
選択器306は、動きベクトル決定部303が出力する探索ベクトルと、MV保持部308より出力される値とのいずれか一方を、比較器304の出力に従って選択し、MV保持部308へと出力する。例えば、比較器304の出力値が'1'の場合はMV保持部308より出力される値を、'0'の場合は動きベクトル決定部303が出力する探索ベクトルを、それぞれ選択するものとする。
SAD保持部307は、選択器305の出力を保持し、動きベクトル決定部303、及び比較器304、及び選択器305へと出力する。また、動きベクトル決定部303の出力する初期化要求信号に従い、保持している値をゼロクリアする。すなわち、SAD保持部307においては、初期化要求信号による初期化要求によって、保持している値をゼロクリアした後、SAD算出部301より随時出力されるSAD値のうち、常にその時点における最小のSAD値が保持されていることになる。
MV保持部308は、選択器306の出力を保持し、動きベクトル決定部303及び選択器306へと出力する。また、動きベクトル決定部303の出力する初期化要求信号に従い、保持している値を初期化する。すなわち、MV保持部308においては、初期化要求信号による初期化要求によって保持している値を初期化した後、SAD算出部301より随時出力されるSAD値のうち、その時点における最小のSAD値に対応するベクトル値が保持されていることになる。
動きベクトル決定部303は、予め定められた動き探索アルゴリズムに従って、SAD保持部307の出力するSAD値、及びMV保持部308の出力するベクトル値を入力として、探索ベクトルを生成し、動き補償部302及び選択器306へと出力する。また、探索シーケンスの開始時に初期化要求信号をアサート(有効化)し、SAD保持部307及びMV保持部308へと出力する。つまり、探索シーケンスにおいて常に探索ベクトルを生成して出力させつつ、該探索ベクトルに対応するSAD値の最小値及びそれに対応するベクトル値を受け取りつつ、次の探索ポイントを順次生成していく。この処理を探索終了まで繰り返すことによって、動き探索処理を行う。探索終了時、決定された動きベクトルを出力し、次の探索シーケンスのための初期化要求信号をアサートし、出力する。これを繰り返すことによって、順次処理対象ブロックの動きベクトルを決定、出力してゆく。
しかしながら、動き検出処理の際に、上述したように処理対象ブロックと参照ブロックとの相関度としてSADを用いる場合、符号化効率としては良好であるものの、SAD値としては大きい値として現れるケースを見逃してしまうことがある。したがって、結果的に最良の符号化効率が得られず、画像の符号量が増大してしまうという問題がある。
ここで図4に、大きいSAD値を見逃す一例として、処理対象ブロックの画素値が全て255であり、参照ブロックの画素値が全て0であるケースを示す。この場合、SAD値としては非常に大きな値をとるが、実際にこれらの差分を符号化したとしても、DCT変換後のDCT係数値はDC成分以外は全て0となるので、符号量としては非常に小さなものとなる。
上述した問題を解決するために、相関値としてSADではなく、SATD(Sum of Absolute Transformed Difference)を用いる方法が知られている(例えば、特許文献1参照)。この方法によれば、処理対象ブロック及び参照ブロックに対してアダマール変換等の直交変換を施してそれらの差分絶対値をとるか、あるいは予測誤差に対してさらにアダマール変換等の直交変換を施した後に、その絶対値和をとる。SATDを用いることによって、上述したようなSADを相関値として用いる場合に比べ、発生符号量が低減することが分かっている。
特開平08-084337号公報
しかしながら、SATDを相関値として用いた場合、画像そのものの符号量は低減するものの、動きベクトルにばらつきが生じる。したがって、MPEG標準動画像符号化方式等のように、動きベクトルを周辺ブロックの動きベクトルとの差分をとり、その差分を符号化するような方式においては、動きベクトルの符号量が増加するという問題があった。特に、符号量全体における動きベクトルの符号量の割合が比較的大きい、低ビットレートにおいては、この問題が顕著である。
本発明は上述した問題を解決するためになされたものであり、以下のような機能を有する動きベクトル探索装置及びその制御方法を提供することを目的とする。すなわち、動画像フレーム内でのブロックマッチングにより動きベクトルを探索する際に、画像及び動きベクトルの両方について符号量を低減し、動画像全体として良好な符号化効率を実現するような動きベクトルを得る。
上記問題を解決するための一手段として、本発明の動きベクトル探索装置は以下の構成を備える。
すなわち、動画像のフレームをブロックに分割し、該ブロック単位でのマッチングを行うことにより動きベクトルを探索する動きベクトル探索装置であって、現処理対象ブロックと予測ブロックとの相関を、第1及び第2の相関値算出方法によりそれぞれ求め、第1及び第2の相関値として出力する相関値算出手段と、前記現処理対象ブロックに対応する動きベクトルの予測値としての予測動きベクトルを算出する予測動きベクトル算出手段と、前記第1及び第2の相関値と前記予測動きベクトルに基づいて動きベクトルを探索する動きベクトル探索手段と、を有することを特徴とする。
例えば、前記第1の相関値算出方法は、現処理対象ブロックと予測ブロックとの差分の絶対値和をとることによって前記第1の相関値を求める方法であり、前記第2の相関値算出方法は、現処理対象ブロックと予測ブロックとの差分に対して直交変換を施した後、得られた直交変換係数の絶対値和をとることによって前記第2の相関値を求める方法であることを特徴とする。
以上の構成からなる本発明によれば、動画像フレーム内でのブロックマッチングにより動きベクトルを探索する際に、画像及び動きベクトルの両方について符号量を低減し、動画像全体として良好な符号化効率を実現するような動きベクトルを得ることができる。
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
<第1実施形態>
●システム構成
図1は、本実施形態における動きベクトル探索装置の構成を示すブロック図である。本実施形態の動きベクトル探索装置においては、動画像のフレームをブロックに分割し、該ブロック単位でのマッチングを行うことにより動きベクトルを探索する。
●システム構成
図1は、本実施形態における動きベクトル探索装置の構成を示すブロック図である。本実施形態の動きベクトル探索装置においては、動画像のフレームをブロックに分割し、該ブロック単位でのマッチングを行うことにより動きベクトルを探索する。
同図において、相関値算出部101は、現フレーム内での処理対象となるブロックと、動き補償部102より出力される予測参照ブロックを入力とし、本実施形態における第1及び第2の相関値として、その差分絶対値和SAD及びSATDを算出する。ここで、相関値算出部101においてSADを算出するための第1の相関値算出方法においては、上述した従来例でも示したように、現処理対象ブロックと参照ブロックとの差分の絶対値和をとることを特徴とする。また、SATDを算出するための第2の相関値算出方法においては、現処理対象ブロックと予測ブロックとの差分に対して直交変換を施した後、得られた直交変換係数の絶対値和をとることを特徴とする。そして、算出されたSADを比較器104及び選択器105へ、SATDを選択器110、111及び比較器109へと出力する。
動き補償部102は、後述する動きベクトル決定部103が随時出力する探索ベクトルを入力とし、該探索ベクトルの示す探索ポイントにおける参照ブロックを、相関値算出部101へと出力する。
比較器104は、相関値算出部101が出力するSAD値と、SAD保持部107より出力される値との大小関係を比較し、その比較結果(選択信号_1)を選択器105、106、110へ出力する。例えば、相関値算出部101が出力するSAD値の方が小さければ'1'を出力し、そうでない場合は'0'を出力するものとする。
選択器105は、相関値算出部101が出力するSAD値と、SAD保持部107より出力される値と、のいずれか一方を比較器104の出力に従って選択し、SAD保持部107へと出力する。例えば、比較器104の出力値が'0'の場合はSAD保持部107より出力される値を、'1'の場合は相関値算出部101が出力するSAD値を、それぞれ選択するものとする。
選択器106は、動きベクトル決定部103が出力する探索ベクトルと、MV保持部108より出力される値と、のいずれか一方を比較器104の出力に従って選択し、MV保持部108へと出力する。例えば、比較器104の出力値が'0'の場合はMV保持部108より出力される値を、'1'の場合は動きベクトル決定部103が出力する探索ベクトルを、それぞれ選択するものとする。
SAD保持部107は、選択器105の出力を保持し、比較器104、及び選択器105へと出力する。また、動きベクトル決定部103の出力する初期化要求信号に従い、保持している値をゼロクリアする。すなわちSAD保持部107では、初期化要求信号による初期化要求によって保持している値をゼロクリアした後、相関値算出部101より随時出力されるSAD値のうち、常にその時点における最小のSAD値(SADbest)が保持されていることになる。言い換えれば、複数回のブロックマッチングにおいて得られるSAD値のうち、最も高い相関を示すSAD値が、第1の最高相関値SADbestとして保持される。
MV保持部108は、選択器106の出力を保持し、ベクトル差分算出部117と動きベクトル決定部103、及び選択器106へと出力する。また、動きベクトル決定部103の出力する初期化要求信号に従い、保持している値を初期化する。すなわちMV保持部108においては、初期化要求信号による初期化要求によって保持している値を初期化した後、随時出力されるSAD値のうち、常にその時点におけるSADbestに対応するベクトル値(MVSADbest)が保持されていることになる。このMVSADbestが、本実施形態における第1の動きベクトル候補となる。
ベクトル差分算出部117は、予測動きベクトル算出部116からの予測動きベクトル(MVpred)と、MV保持部108からのベクトル値MVSADbestとの差分をとり、動きベクトル決定部103へ出力する。このベクトル差分MVDSADbestが、本実施形態における第1のベクトル差分となる。
予測動きベクトル算出部116は、現処理対象ブロックに対応する動きベクトルの予測値としての予測動きベクトルを算出する。すなわち、既に動きベクトル探索が済んでいる周辺ブロックの動きベクトル群を入力とし、該動きベクトル群より一つの予測動きベクトル(MVpred)を算出して、ベクトル差分算出部117へと出力する。例えば上記周辺ブロックとは、現在処理対象となっているブロックの、左、上、及び右上に位置する3つのブロックであるとする。すなわち予測動きベクトル算出部116は、3つの周辺ブロックの動きベクトルよりそれらの中間値ベクトルを算出し、予測動きベクトル(MVpred)として出力する。
なお、本実施形態の予測動きベクトル算出部116においては、既に動きベクトル探索が済んでいる周辺ブロックの動きベクトル群に基いて、予測動きベクトルを算出するものとした。しかしながら本発明における予測動きベクトル算出部116の構成はこの例に限定されず、現処理対象フレームの一枚前のフレームにおける同位置のブロックの動き情報を、予測動きベクトルとして算出する構成であってもよい。
比較器109は、相関値算出部101が出力するSATD値と、SATD保持部114より出力される値との大小関係を比較し、その比較結果(選択信号_2)を選択器111、112へ出力する。例えば、相関値算出部101が出力するSATD値の方が小さければ'1'を出力し、そうでない場合は'0'を出力するものとする。
選択器110は、相関値算出部101が出力するSATD値と、SATD保持部113より出力される値と、のいずれか一方を比較器104の出力に従って選択し、SATD保持部113へと出力する。例えば、比較器104の出力値が'0'の場合はSATD保持部113より出力される値を、'1'の場合は相関値算出部101が出力するSATD値を、それぞれ選択するものとする。
選択器111は、相関値算出部101が出力するSATD値と、SATD保持部114より出力される値と、のいずれか一方を比較器109の出力に従って選択し、SATD保持部114へと出力する。例えば、比較器109の出力値が'0'の場合はSATD保持部114より出力される値を、'1'の場合は相関値算出部101が出力するSATD値を選択するものとする。
選択器112は、動きベクトル決定部103が出力する探索ベクトルと、MV保持部115より出力される値と、のいずれか一方を比較器109の出力に従って選択し、MV保持部115へと出力する。例えば、比較器109の出力値が'0'の場合はMV保持部115より出力される値を、'1'の場合は動きベクトル決定部103が出力する探索ベクトルを、それぞれ選択するものとする。
SATD保持部113は、選択器110の出力を保持し、動きベクトル決定部103、及び選択器110へと出力する。また、動きベクトル決定部103の出力する初期化要求信号に従い、保持している値をゼロクリアする。
すなわちSATD保持部113では、初期化要求信号によって保持している値をゼロクリアした後、相関値算出部101より随時出力されるSAD値のうち、その時点における最小のSAD値に対応する探索ポイントのSATD値が常に保持される。言い換えれば、複数回のブロックマッチングにおいて得られるSAD値のうち、最も高い相関を示すSAD値に対応する探索ポイントにおけるSATD値が、第3の相関値SATD(MVSADbest)として保持される。
すなわちSATD保持部113では、初期化要求信号によって保持している値をゼロクリアした後、相関値算出部101より随時出力されるSAD値のうち、その時点における最小のSAD値に対応する探索ポイントのSATD値が常に保持される。言い換えれば、複数回のブロックマッチングにおいて得られるSAD値のうち、最も高い相関を示すSAD値に対応する探索ポイントにおけるSATD値が、第3の相関値SATD(MVSADbest)として保持される。
SATD保持部114は、選択器111の出力を保持し、動きベクトル決定部103、及び比較器109、及び選択器111へと出力する。また、動きベクトル決定部103の出力する初期化要求信号に従い、保持している値をゼロクリアする。すなわちSATD保持部114においては、初期化要求信号によって保持している値をゼロクリアした後、相関値算出部101より随時出力されるSATD値のうち、常にその時点における最小のSATD値(SATDbest)が保持されていることになる。言い換えれば、複数回のブロックマッチングにおいて得られるSATD値のうち、最も高い相関を示すSATD値が、第2の最高相関値SATDbestとして保持される。
MV保持部115は、選択器112の出力を保持し、ベクトル差分算出部118と動きベクトル決定部103、及び選択器112へと出力する。また、動きベクトル決定部103の出力する初期化要求信号に従い、保持している値を初期化する。すなわちMV保持部115においては、初期化要求信号によって保持している値を初期化した後、随時出力されるSATD値のうち、常にその時点におけるSATDbestに対応するベクトル値(MVSATDbest)が保持されていることになる。このMVSATDbestが、本実施形態における第2の動きベクトル候補となる。
ベクトル差分算出部118は、予測動きベクトル算出部116からの予測動きベクトル(MVpred)と、MV保持部115からのベクトル値(MVSATDbest)との差分をとり、動きベクトル決定部103へと出力する。このベクトル差分MVDSATDbestが、本実施形態における第2のベクトル差分となる。
動きベクトル決定部103には、以下の各信号が入力される。すなわち、第1のベクトル差分MVDSADbest、第1の動きベクトル候補MVSADbest、第3の相関値SATD(MVSADbest)、が入力される。さらに、第2の相関値SATDbest、第2のベクトル差分MVDSATDbest、第2の動きベクトル候補MVSATDbest、が入力される。そして、以上の入力信号に基づき、所定の動き探索アルゴリズムに従って、第1及び第2の動きベクトル候補のいずれかを選択することによって探索ベクトル(探索MV)を生成し、動き補償部102及び選択器106、112へと出力する。また、探索シーケンスの開始時に、初期化要求信号をアサートし、SAD保持部107、SATD保持部113、114、及びMV保持部108、115へと出力する。
動きベクトル決定部103においてはつまり、探索シーケンスにおいて常に探索ベクトル(探索MV)を生成して出力させつつ、上記各信号を受け取って次の探索ポイントを順次生成していき、これを探索終了まで繰り返すことによって、動き探索処理を行う。そして探索終了時に、決定された動きベクトルを出力し、次の探索シーケンスのための初期化要求信号をアサートし、出力する。以上の処理を繰り返すことにより、順次、処理対象ブロックの動きベクトル(MV)を決定、出力してゆく。
●動きベクトル決定処理
以下、動きベクトル決定部103における動きベクトル(MV)の決定方法について、詳細に説明する。
以下、動きベクトル決定部103における動きベクトル(MV)の決定方法について、詳細に説明する。
図5は、各探索ポイントにおけるSAD値及びSATD値の例を示した図である。同図の左端が最初の探索ポイントを示し、探索順に右へプロットして最後の探索ポイントが右端に示されている。同図では、探索ポイントに対応したSAD及びSATDの値の変遷がプロットされており、最もSAD値の小さいところ(SADbest)に対応する探索ポイント(MVSADbest)が示されている。さらに、最もSATD値の小さいところ(SATDbest)に対応する探索ポイント(MVSATDbest)も示されている。また、最もSAD値の小さいところ(SADbest)に対応する探索ポイント(MVSADbest)におけるSATD値(SATD(MVSADbest))も示されている。
この場合、動きベクトル決定部103においてはまず、以下の(1)式を用いて、SATD(MVSADbest)と、SATDbestとの差分である相関誤差Destを生成する。
Dest=SATD(MVSADbest)−SATDbest ・・・(1)
また、MVSADbest,MVSATDbestにそれぞれ対応する、MVDSADbest,MVDSATDbestの各絶対値より、以下の(2)式を用いてベクトル差分誤差MVDestを生成する。
また、MVSADbest,MVSATDbestにそれぞれ対応する、MVDSADbest,MVDSATDbestの各絶対値より、以下の(2)式を用いてベクトル差分誤差MVDestを生成する。
MVDest=|MVDSADbest|−|MVDSATDbest| ・・・(2)
そして動きベクトル決定部103は、以下の(3),(4)式を条件式として、動きベクトル(MV)を決定する。但し、(3),(4)色においてa,bは予め定められた係数である。
そして動きベクトル決定部103は、以下の(3),(4)式を条件式として、動きベクトル(MV)を決定する。但し、(3),(4)色においてa,bは予め定められた係数である。
if:Dest≦(a・MVDest+b)
MV=MVSADbest ・・・(3)
if:Dest>(a・MVDest+b)
MV=MVSATDbest ・・・(4)
図6は、(3),(4)式が表す関係を示す図である。同図に示すように本実施形態によれば、直線Dest=(a・MVDest+b)を境界として、図中に斜線で示した領域では上記(3)式に従ってSADより求めたMV(MVSADbest)が選択される。それ以外の領域では上記(4)式に従ってSATDより求めたMV(MVSATDbest)が選択されることが分かる。
MV=MVSADbest ・・・(3)
if:Dest>(a・MVDest+b)
MV=MVSATDbest ・・・(4)
図6は、(3),(4)式が表す関係を示す図である。同図に示すように本実施形態によれば、直線Dest=(a・MVDest+b)を境界として、図中に斜線で示した領域では上記(3)式に従ってSADより求めたMV(MVSADbest)が選択される。それ以外の領域では上記(4)式に従ってSATDより求めたMV(MVSATDbest)が選択されることが分かる。
以上説明したように本実施形態によれば、SAD及びSATDをブロックマッチングの相関値として用い、かつ周辺マクロブロックの動きベクトルを用いて動きベクトルを決定する。これにより、SADのみを相関値として用いてブロック・マッチングを行う場合に比べて、画像の符号量を低減させることがでる。さらに、SATDのみを相関値として用いた場合に比べて、動きベクトルの符号の発生量を低減させることができる。したがって、全体として良好な符号化効率を得ることができる。
<第2実施形態>
以下、本発明に係る第2実施形態について説明する。
以下、本発明に係る第2実施形態について説明する。
図7は、第2実施形態における動きベクトル探索装置の構成を示すブロック図である。図7において、上述した第1実施形態の図1と同様の構成には同一番号を付し、説明を省略する。
同図において、動きベクトル決定部703が、第2実施形態における特徴的な構成である。この動きベクトル決定部703における、上述した第1実施形態の動きベクトル決定部103との違いは、符号量情報を新たな入力として設け、該符号量情報を動きベクトル決定のための判定要素として加味したところにある。該符号量情報は、現時点における累積符号量のうち、動きベクトルを符号化して得た符号量の占める割合を表すものであり、動きベクトルによる符号化を行う外部の符号化部にて算出される。
動きベクトル決定のための判断式としては、第1実施形態の動きベクトル決定部103における判断式と同じものが使用でき、係数aのみを符号量情報によって変化させることで、より最適な動きベクトルの選択が可能となる。すなわち、全体の符号量のうち、動きベクトルの符号量の占める割合が大きいほど係数aの値を大きく、動きベクトルの符号量の占める割合が小さいほど係数aの値を小さくとるように調整する。
以上説明したように第2実施形態によれば、全体の符号量のうち動きベクトルの符号量の占める割合に応じて動きベクトルの決定の判断式の係数を変化させることによって、より精度のよい動きベクトル探索を行うことができる。
<他の実施形態>
本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮影装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
本発明は例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能である。具体的には、複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮影装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、実施形態において図に示したフローチャートに対応したコンピュータ可読のプログラムである。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM,DVD-R)などである。
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
Claims (11)
- 動画像のフレームをブロックに分割し、該ブロック単位でのマッチングを行うことにより動きベクトルを探索する動きベクトル探索装置であって、
現処理対象ブロックと予測ブロックとの相関を、第1及び第2の相関値算出方法によりそれぞれ求め、第1及び第2の相関値として出力する相関値算出手段と、
前記現処理対象ブロックに対応する動きベクトルの予測値としての予測動きベクトルを算出する予測動きベクトル算出手段と、
前記第1及び第2の相関値と前記予測動きベクトルに基づいて動きベクトルを探索する動きベクトル探索手段と、
を有することを特徴とする動きベクトル探索装置。 - 前記第1の相関値算出方法は、現処理対象ブロックと予測ブロックとの差分の絶対値和をとることによって前記第1の相関値を求める方法であり、
前記第2の相関値算出方法は、現処理対象ブロックと予測ブロックとの差分に対して直交変換を施した後、得られた直交変換係数の絶対値和をとることによって前記第2の相関値を求める方法である
ことを特徴とする請求項1に記載の動きベクトル探索装置。 - 前記動きベクトル探索手段は、
複数回のマッチングにおいて得られる前記第1の相関値のうち最も高い相関を示す、第1の最高相関値に対応する第1の動きベクトル候補を出力する、第1の動きベクトル候補の算出手段と、
複数回のマッチングにおいて得られる前記第2の相関値のうち最も高い相関を示す、第2の最高相関値と、該第2の最高相関値に対応する第2の動きベクトル候補を出力する、第2の動きベクトル候補の算出手段と、
前記第2の相関値のうち、前記第1の動きベクトル候補の示す探索ポイントに対応する第3の相関値を出力する、第3の相関値の算出手段と、
前記予測動きベクトルと前記第1の動きベクトル候補との差分である第1のベクトル差分を出力する、第1のベクトル差分の算出手段と、
前記予測動きベクトルと前記第2の動きベクトル候補との差分である第2のベクトル差分を出力する、第2のベクトル差分の算出手段と、
前記第2の最高相関値と、前記第3の相関値と、前記第1及び第2のベクトル差分と、に基づいて、前記第1及び第2の動きベクトル候補のいずれかを動きベクトルとして決定する動きベクトル決定手段と、
を有することを特徴とする請求項1または2に記載の動きベクトル探索装置。 - 前記動きベクトル決定手段は、
前記第2の最高相関値と前記第3の相関値の差分を相関誤差Destとして生成し、
前記第1のベクトル差分の絶対値と、前記第2のベクトル差分の絶対値と、の差分をベクトル差分誤差MVDestとして生成し、
前記相関誤差Destと前記ベクトル差分誤差MVDestに基づいて、前記第1及び第2の動きベクトル候補のいずれかを動きベクトルとして決定することを特徴とする請求項3に記載の動きベクトル探索装置。 - 前記動きベクトル決定手段は、
条件式:Dest>(a・MVDest+b)
が真であれば前記第2の動きベクトル候補を動きベクトルとして選択し、偽であれば前記第1の動きベクトル候補を動きベクトルとして選択する
ことを特徴とする請求項4に記載の動きベクトル探索装置。 - さらに、現時点における累積符号量のうち、動きベクトルを符号化して得られた符号量の占める割合を算出する符号化手段を有し、
前記動きベクトル決定手段は、前記条件式における係数aを、前記割合が大きいほど大きくなるように調整することを特徴とする請求項5に記載の動きベクトル探索装置。 - 前記予測動きベクトル算出手段は、複数の周辺ブロックにおいて既に決定された動きベクトルに基づいて、前記予測動きベクトルを算出することを特徴とする請求項1乃至6のいずれか1項に記載の動きベクトル探索装置。
- 動画像のフレームをブロックに分割し、該ブロック単位でのマッチングを行うことにより動きベクトルを探索する動きベクトル探索装置の制御方法であって、
現処理対象ブロックと予測ブロックとの相関を、第1及び第2の相関値算出方法によりそれぞれ求め、第1及び第2の相関値として出力する相関値算出ステップと、
前記現処理対象ブロックに対応する動きベクトルの予測値としての予測動きベクトルを算出する予測動きベクトル算出ステップと、
前記第1及び第2の相関値と前記予測動きベクトルに基づいて動きベクトルを探索する動きベクトル探索ステップと、
を有することを特徴とする動きベクトル探索装置の制御方法。 - 前記第1の相関値算出方法は、現処理対象ブロックと予測ブロックとの差分の絶対値和をとることによって前記第1の相関値を求める方法であり、
前記第2の相関値算出方法は、現処理対象ブロックと予測ブロックとの差分に対して直交変換を施した後、その絶対値和をとることによって前記第2の相関値を求める方法である
ことを特徴とする請求項8に記載の動きベクトル探索装置の制御方法。 - コンピュータを請求項1乃至7のいずれか1項に記載の動きベクトル探索装置として機能させるためのプログラム。
- 請求項10に記載のプログラムを記録したコンピュータ可読な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008119052A JP2009272701A (ja) | 2008-04-30 | 2008-04-30 | 動きベクトル探索装置及びその制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008119052A JP2009272701A (ja) | 2008-04-30 | 2008-04-30 | 動きベクトル探索装置及びその制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009272701A true JP2009272701A (ja) | 2009-11-19 |
Family
ID=41438906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008119052A Withdrawn JP2009272701A (ja) | 2008-04-30 | 2008-04-30 | 動きベクトル探索装置及びその制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009272701A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763570A (zh) * | 2014-01-20 | 2014-04-30 | 华侨大学 | 一种基于satd的hevc快速帧内预测方法 |
CN115103175A (zh) * | 2022-07-11 | 2022-09-23 | 北京字跳网络技术有限公司 | 图像传输方法、装置、设备及介质 |
-
2008
- 2008-04-30 JP JP2008119052A patent/JP2009272701A/ja not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763570A (zh) * | 2014-01-20 | 2014-04-30 | 华侨大学 | 一种基于satd的hevc快速帧内预测方法 |
CN103763570B (zh) * | 2014-01-20 | 2017-02-01 | 华侨大学 | 一种基于satd的hevc快速帧内预测方法 |
CN115103175A (zh) * | 2022-07-11 | 2022-09-23 | 北京字跳网络技术有限公司 | 图像传输方法、装置、设备及介质 |
CN115103175B (zh) * | 2022-07-11 | 2024-03-01 | 北京字跳网络技术有限公司 | 图像传输方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5422168B2 (ja) | 動画像符号化方法および動画像復号化方法 | |
JP5467701B2 (ja) | 動きベクトル探索方法及び装置、そのプログラム並びにプログラムを記録した記録媒体 | |
US8229233B2 (en) | Method and apparatus for estimating and compensating spatiotemporal motion of image | |
JP4993676B2 (ja) | 画像符号化装置及び画像符号化方法 | |
JP2005354528A (ja) | 動きベクトル検出装置及び方法 | |
JP4445463B2 (ja) | 動画像再符号化方法及び装置 | |
JP2009272702A (ja) | 動きベクトル探索装置及びその制御方法 | |
JP2006517069A (ja) | モーションベクトルの予測方法及びシステム | |
JP2009272701A (ja) | 動きベクトル探索装置及びその制御方法 | |
JP4032049B2 (ja) | 動きベクトル検出方法及びその装置 | |
JP2007174202A (ja) | 動きベクトル検出装置およびその方法 | |
JP4429996B2 (ja) | 動画像符号化プログラム、動画像符号化方法および動画像符号化装置 | |
JP5222049B2 (ja) | 動きベクトル探索装置及びその制御方法 | |
JP5788952B2 (ja) | 動画像復号化方法 | |
JP2010021892A (ja) | 動きベクトル探索装置及びその制御方法、及び動画像撮像装置 | |
JP5517436B2 (ja) | 動きベクトル検出装置及びプログラム | |
JP4902510B2 (ja) | 符号化装置及び符号化方法 | |
JP2012120108A (ja) | 補間画像生成装置及びプログラム、並びに、動画像復号装置及びプログラム | |
JP4767908B2 (ja) | 画像復号装置及び画像符号化装置 | |
JP4385869B2 (ja) | 動きベクトル検出装置、動画符号化装置、および、プログラム | |
JP5864022B2 (ja) | 動画像復号化方法 | |
JP5887020B1 (ja) | 動画像復号化方法 | |
JP4170202B2 (ja) | 動きベクトル探索方法、装置、プログラム及び当該プログラムを記録した記録媒体 | |
JP5339855B2 (ja) | 動きベクトル探索装置、動きベクトル探索方法、画像処理装置、画像処理方法、プログラム及び記憶媒体 | |
JP4165447B2 (ja) | 動きベクトル検出装置及び動きベクトル検出プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110705 |