JP2011205212A - 動画像符号化装置及び動きベクトル検出方法 - Google Patents

動画像符号化装置及び動きベクトル検出方法 Download PDF

Info

Publication number
JP2011205212A
JP2011205212A JP2010068196A JP2010068196A JP2011205212A JP 2011205212 A JP2011205212 A JP 2011205212A JP 2010068196 A JP2010068196 A JP 2010068196A JP 2010068196 A JP2010068196 A JP 2010068196A JP 2011205212 A JP2011205212 A JP 2011205212A
Authority
JP
Japan
Prior art keywords
motion vector
prediction
image
prediction direction
unit
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.)
Granted
Application number
JP2010068196A
Other languages
English (en)
Other versions
JP5407974B2 (ja
Inventor
Kaoru In
芳 印
Kentaro Kawakami
健太郎 川上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010068196A priority Critical patent/JP5407974B2/ja
Publication of JP2011205212A publication Critical patent/JP2011205212A/ja
Application granted granted Critical
Publication of JP5407974B2 publication Critical patent/JP5407974B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】画質の劣化を抑制しつつ、動きベクトル検出における演算量を削減する。
【解決手段】縮小動きベクトル検出部12が、符号化対象の画像を縮小した縮小画像を用いて第1の動きベクトルの検出を行い、動きベクトル判定部13が、検出された第1の動きベクトルの確からしさを判定し、予測方向選択部14が、確からしさの判定結果をもとに、正しいと判定された第1の動きベクトルの予測方向を選択し、動きベクトル検出部15が、元の画像において、選択された予測方向で第2の動きベクトル検出を行う。
【選択図】図1

Description

本発明は、動画像符号化装置及び動きベクトル検出方法に関する。
動画像データはデータ量が大きいため、送信装置から受信装置へ伝送される際、あるいは記憶装置に格納される際には、圧縮符号化処理が施されることが多い。代表的な動画像の圧縮符号化方式として、ISO/IEC(International Standardization Organization/International Electrotechnical Commission)で策定されたMPEG(Moving Picture Experts Group)−2/MPEG−4が広く利用されている。また、ITU(国際電気通信連合)とISO/IECのMPEGによって策定された、H.264/AVC(Advanced Video Coding)が知られている。
これらの圧縮符号化方式における動きベクトルの検出処理では、符号化対象のピクチャにおいて、マクロブロックごとに参照ピクチャに対する物体の位置座標(動きベクトル)が評価され、最も類似している部分の動きベクトルが検出される。類似度の評価値としては、予測対象のマクロブロックの画素と空間的に近い位置にある参照ピクチャの画素の値の差分の絶対値を、マクロブロックの全画素に関して加えたSAD(差分絶対値和)が主として用いられる。
たとえば、H.264/AVCなどにおいては、符号化の際、画面内予測を行うIピクチャ、前方向予測を行うPピクチャ、前方向予測と後方向予測の両方を行うBピクチャの3種類のピクチャが存在する。Bピクチャでは複数の参照ピクチャの中から最適な動きベクトルを検出する必要があり、演算量が多くなる。
演算量削減の方法として、階層的な動きベクトル検出方法が知られている。この方法では、たとえば、フレームの画素を間引いて生成した縮小画像を用いて動きベクトルを検出し(前処理検出)、検出した動きベクトルを中心に元の画像で、前方向予測、後方向予測における1画素精度の動きベクトルを検出する(主検出)。
また、参照ピクチャのインデックス番号を符号化する際に必要なビットに応じて、動きベクトルの検出の際に選択する参照ピクチャを決定することが知られている。
国際公開第2006/001485号 特開2004−64564号公報 特開2003−153279号公報 特開平7−162869号公報
しかしながら、縮小画像ではSADの信頼性が低いため、SADをもとに求められる動きベクトルの精度が低下し、画質の劣化が生じるといった問題があった。
たとえば、画素値のばらつきが大きい原画像から、画素を一定間隔で間引いたり、一定領域ごとの画素値を平均化して生成した縮小画像を用いてSADを計算すると、正しい動きベクトルが得られない可能性があるからである。
上記の点を鑑みて、本発明は、画質の劣化を抑制しつつ、動きベクトル検出における演算量を削減可能な動画像符号化装置及び動きベクトル検出方法を提供することを目的とする。
上記目的を達成するために、以下のような動画像符号化装置が提供される。
この動画像符号化装置は、符号化対象の画像を縮小した縮小画像を用いて第1の動きベクトルの検出を行う第1の動きベクトル検出部と、検出された前記第1の動きベクトルの確からしさを判定する動きベクトル判定部と、確からしさの判定結果をもとに、正しいと判定された前記第1の動きベクトルの予測方向を選択する予測方向選択部と、元の前記画像において、選択された前記予測方向で第2の動きベクトルの検出を行う第2の動きベクトル検出部と、を有する。
また、上記目的を達成するために、以下のような動きベクトル検出方法が提供される。
この動きベクトル検出方法は、符号化対象の画像を縮小した縮小画像を用いて第1の動きベクトルの検出を行い、検出された前記第1の動きベクトルの確からしさを判定し、確からしさの判定結果をもとに、正しいと判定された前記第1の動きベクトルの予測方向を選択し、元の前記画像において、選択された前記予測方向で第2の動きベクトルの検出を行う。
開示の動画像符号化装置及び動きベクトル検出方法によれば、画質の劣化を抑止しつつ、動きベクトル検出における演算量を削減できる。
本実施の形態の動画像符号化装置の主要部の構成を示す図である。 動きベクトル検出方法の一例を示すフローチャートである。 ピクチャの並びの一例を示す図である。 1フレームの画像(原画像)と縮小画像の一例を示す図である。 動きベクトルの確からしさの判定動作の具体例を示す図である。 予測方向の選択処理の流れを示すフローチャートである。 動きベクトル検出(主検出)処理の流れを示すフローチャートである。 動きベクトル検出の際のピクチャ間の参照関係を示す図である。 動画像符号化装置の一例の構成を示す図である。
以下、本発明の実施の形態を、図面を参照しつつ説明する。
図1は、本実施の形態の動画像符号化装置の主要部の構成を示す図である。
動画像符号化装置10は、縮小画像生成部11、縮小動きベクトル検出部12、動きベクトル判定部13、予測方向選択部14、動きベクトル検出部15を有している。
縮小画像生成部11は、画像1フレームを図示しないフレームメモリから読み出し、縮小画像を生成する。たとえば、縮小画像生成部11は、元の画像を縦1/n、横1/nに縮小する。具体的な縮小の例については後述する。
縮小動きベクトル検出部12は、生成された縮小画像を用いて動きベクトルの検出を行う。ここでは、縮小動きベクトル検出部12は、たとえば、各フレームの縮小画像間のSADをマクロブロックごとに計算して、動きベクトルを検出する。
動きベクトル判定部13は、検出された動きベクトルの確からしさを判定する。動きベクトル判定部13は、判定対象のマクロブロックの動きベクトルを、隣接するマクロブロックの動きベクトルと比較して、その確からしさを判定する。詳細は後述する。
予測方向選択部14は、確からしさの判定結果をもとに、正しいと判定された動きベクトルの予測方向を選択する。Bピクチャの場合、前方向予測と後方向予測があるが、前方向予測で得られた動きベクトルが正しく、後方向予測で得られた動きベクトルが正しくないと判定された場合、予測方向選択部14は、予測方向として前方向を選択する。
動きベクトル検出部15は、元の画像において、選択された予測方向で動きベクトル検出を行う。
このように、本実施の形態の動画像符号化装置10は、縮小画像をもとに検出されたベクトルの確からしさを判定して、正しいと判定された動きベクトルの予測方向で、元の画像の動きベクトルの検出を行う。これにより、動きベクトル検出の際の予測方向を限定できるため、演算量を削減できる。また、縮小画像をもとに検出されたベクトルの確からしさを判定して、正しいと判定された動きベクトルの予測方向を用いるため、精度よく動きベクトルを検出でき、画質の劣化を抑制できる。
以下、本実施の形態の動画像符号化装置10による動きベクトル検出方法を、より具体的に説明する。
図2は、動きベクトル検出方法の一例を示すフローチャートである。
縮小画像生成部11は、1フレームの符号化対象画像を図示しないフレームメモリから読み出し、縮小画像を生成する(ステップS1)。
図3は、ピクチャの並びの一例を示す図である。
ここでは、時間軸に沿って、I0/P0ピクチャ20、B1ピクチャ21、B2ピクチャ22、I3/P3ピクチャ23と、フレームごとに原画像が順に現れる場合について示されている。ただし、このような入力ピクチャは符号化順に並び変えられる。つまりB1ピクチャ21、B2ピクチャ22の符号化の際に、時間的に後に入力されるI3/P3ピクチャ23が参照ピクチャとして用いられる場合があるので、I3/P3ピクチャ23がこれらBピクチャよりも先の符号化順となる。
縮小画像生成部11は、上記のようなフレームの各画素P(x,y)に対して、以下のような式(1)でPa(x,y)を計算する。
Figure 2011205212
式(1)において、xは水平方向の座標、yは垂直方向の座標、a(i,j)は係数を示す。a(i,j)は低周波通過フィルタとなるような値を用いることが望ましく、たとえば、i,jの値によらずa(i,j)=1/49などとしてもよい。
そして、縮小画像生成部11は、算出されたPa(x,y)のうち、x=4m+a、y=4m+b(mは0以上の整数、a、bは0以上3以下の任意の整数)の画素をサンプリングし、これを縮小画像として、図示しないフレームメモリに保存する。
図4は、1フレームの画像(原画像)と縮小画像の一例を示す図である。
図中の白丸と黒丸は画素を示しており、黒丸の画素は縮小画像の生成の際にサンプリングされる画素を示している。また、横軸がx方向の画素の位置、縦軸がy方向の画素の位置を示している。
この例の場合、縮小画像生成部11は、x=4m+1、y=4m+1の画素をサンプリングすることで、元の画像に対して1/4の縮小率の縮小画像を生成している。
上記のように、低周波通過フィルタを通すことで、高周波成分の折り返し歪みや、ノイズの影響を抑制した縮小画像を生成することができ、後述する縮小動きベクトルの検出精度が高まる。
次に、縮小動きベクトル検出部12による動き検出が行われる。なお、以下の説明では、Bピクチャ(図3に示したような、B1ピクチャ21またはB2ピクチャ22)に関する動きベクトルの検出方法について説明する。
まず、縮小動きベクトル検出部12は、縮小画像生成部11で生成された縮小画像をマクロブロック(図2中ではMBと表記している)に分割して、最初のマクロブロックを処理対象マクロブロックとして設定する(ステップS2)。
そして、縮小動きベクトル検出部12は、処理対象マクロブロックに対して、まず前方向予測による動きベクトル検出を行う(ステップS3)。たとえば、処理対象マクロブロックが、図3に示したB1ピクチャ21の縮小画像に属する場合は、B1ピクチャ21に対して時間的に前方向にあるI0/P0ピクチャ20の縮小画像が参照ピクチャとなる。この場合、縮小動きベクトル検出部12は、たとえば、処理対象マクロブロックと、I0/P0ピクチャ20の縮小画像の探索範囲内のそれぞれの画素との間で、SADを計算する。
SADは以下の式で求められる。
Figure 2011205212
ここで、c(i,j)は処理対象マクロブロックの(i,j)の位置に存在する画素の値を示し、r(x+i,y+j)は、参照ピクチャにおいて(i,j)から水平方向にx、垂直方向にyだけ離れた(x+i,y+j)の位置に存在する画素の値を示す。また、nは処理対象マクロブロックの水平方向の画素数、mは処理対象マクロブロックの垂直方向の画素数である。縦横16×16画素をマクロブロックとしている原画像を1/4に縮小する場合は、n=m=4となる。また、水平方向を1/4、垂直方向を1/2の縮小率で原画像を縮小する場合には、n=4、m=8となる。
そして、縮小動きベクトル検出部12は、探索範囲内の各画素に対して求められたSADのうち、最も小さいSADを示す(x,y)を動きベクトルとして検出する。
次に、縮小動きベクトル検出部12は、処理対象マクロブロックに対して、後方向予測による動きベクトル検出を行う(ステップS4)。
たとえば、処理対象マクロブロックが、図3に示したB1ピクチャ21の縮小画像に属する場合は、B1ピクチャ21に対して時間的に後方向にあるI3/P3ピクチャ23の縮小画像が参照ピクチャとなる。この場合、縮小動きベクトル検出部12は、処理対象マクロブロックと、I3/P3ピクチャ23の縮小画像の探索範囲内のそれぞれの画素との間で、前述の式(2)によりSADを計算する。
そして、縮小動きベクトル検出部12は、探索範囲内の各画素に対して求められたSADのうち、最も小さいSADを示す(x,y)を動きベクトルとして検出する。
こうして検出された各方向の動きベクトルの情報は、たとえば、図示しないメモリなどに保持される。
縮小動きベクトル検出部12は、生成した縮小画像の全てのマクロブロックに対して動きベクトルの検出処理が終了したか判定し(ステップS5)、終了していなければ、処理対象のマクロブロックとして次のマクロブロックを設定する(ステップS6)。そして、縮小動きベクトル検出部12は、全マクロブロックの動きベクトルの検出が終了するまで、ステップS3〜S6の処理を繰り返す。
縮小画像での動きベクトルの検出が終了すると、動きベクトル判定部13の処理が開始される。ここで動きベクトル判定部13は、まず、最初のマクロブロックを処理対象マクロブロックとして設定し(ステップS7)、処理対象マクロブロックに対して動きベクトルの確からしさの判定を行う(ステップS8)。
図5は、動きベクトルの確からしさの判定動作の具体例を示す図である。
ここでは、縮小画像におけるマクロブロック30の動きベクトルMVの確からしさを判定する例を示す。図5では、動きベクトルMVのx成分及びy成分を(x,y)と示している。
動きベクトル判定部13は、処理対象のマクロブロック30に隣接するマクロブロック31,32,33,34の動きベクトルMV1,MV2,MV3,MV4をもとに、動きベクトルMVの確からしさを判定する。
処理対象のマクロブロック30に対して上に隣接するマクロブロック31の動きベクトルMV1のx成分及びy成分を(x1,y1)、右に隣接するマクロブロック32の動きベクトルMV2のx成分及びy成分を(x2,y2)としている。また、処理対象のマクロブロック30に対して下に隣接するマクロブロック33の動きベクトルMV3のx成分及びy成分を(x3,y3)、左に隣接するマクロブロック34の動きベクトルMV4のx成分及びy成分を(x4,y4)としている。
動きベクトル判定部13は、まず、マクロブロック30に隣接するマクロブロック31〜34の動きベクトルMV1〜MV4の各成分の最小値及び最大値を求める。
x方向の最小値は、MINx=MIN(x1,x2,x3,x4)、y方向の最小値は、MINy=MIN(y1,y2,y3,y4)と表す。x方向の最大値は、MAXx=MAX(x1,x2,x3,x4)、y方向の最大値は、MAXy=MAX(y1,y2,y3,y4)と表す。
ここで、動きベクトル判定部13は、動きベクトルMVの(x,y)が、x≧MINx、y≧MINy、x≦MAXx、y≦MAXyを全て満たしているか否か判定する。動きベクトル判定部13は、(x,y)がこれらの式を全て満たしている場合には、動きベクトルMVは正しいと判定し、何れか一つでも満たしていない場合には、正しくないと判定する。
なお、動きベクトル判定部13は、たとえば、上記4つの条件のうち、少なくとも3つを満たしていれば正しいと判定するようにしてもよい。
動きベクトル判定部13は、上記のような判定処理を、前方向予測に基づいて検出された動きベクトルと、後方向予測に基づいて検出された動きベクトルの両方について行う。
次に、予測方向選択部14は、動きベクトル判定部13での判定結果をもとに、動きベクトルの予測方向を選択する(ステップS9)。
図6は、予測方向の選択処理の流れを示すフローチャートである。
Flag_fwdは前方向の予測方向の選択の有無を示すフラグであり、Flag_bwdは後方向の予測方向の選択の有無を示すフラグであり、いずれも初期値は0とする。
まず、予測方向選択部14は、ステップS8の処理の結果、前方向予測と後方向予測に基づき検出された動きベクトルMVが、両方正しいと判断されたか否かを判定する(ステップS30)。ここで、両方の動きベクトルが正しいと判断された場合にはステップS36の処理が行われ、何れか一方または両方の動きベクトルMVが正しくない場合には、ステップS31の処理が行われる。
ステップS31の処理において、予測方向選択部14は、前方向予測に基づき検出された動きベクトルMVが正しいか否か判定する。前方向予測に基づき検出された動きベクトルMVが正しい場合、予測方向選択部14は、Flag_fwd=1とし、前方向の予測方向を選択する(ステップS32)。
前方向予測に基づき検出された動きベクトルMVが正しくない場合、予測方向選択部14は、後方向予測に基づき検出された動きベクトルMVが正しいか判定する(ステップS33)。後方向予測に基づき検出された動きベクトルMVが正しい場合、予測方向選択部14は、Flag_bwd=1とし、後方向の予測方向を選択する(ステップS34)。
これにより一方向の予測方向が選択され、次の動きベクトル検出処理(ステップS10)では、縮小画像での動きベクトルが正しくないと判定された予測方向での検出は行われないので、演算量を削減できるとともに、精度よく動きベクトルが検出できる。
ただし、後方向予測に基づき検出された動きベクトルMVも正しくない場合、予測方向選択部14は、Flag_fwd、Flag_bwdを両方とも1とし、予測方向として両方向を選択する(ステップS35)。これにより、次の動きベクトル検出処理では、両方向の予測が行われ、精度よく動きベクトルが検出可能になる。
一方、ステップS30の処理で、前方向予測及び後方向予測に基づき検出された動きベクトルMVが両方とも正しいと判定された場合、予測方向選択部14は、SAD_fwd−SAD_bwdの絶対値が閾値THより小さいか否か判定する(ステップS36)。
SAD_fwdは、前方向予測に基づき検出された動きベクトルMVを求める際に用いられたSADである。SAD_bwdは、後方向予測に基づき検出された動きベクトルMVを求める際に用いられたSADである。閾値THは、縮小画像でSADを計算することによる誤差に応じた値である。たとえば、16×16画素のマクロブロックの原画像を1/4に縮小した縮小画像を用いた場合、マクロブロックは4×4画素となる。このとき、各画素の値が0〜255であることから、SADは、0≦SAD≦255×16となる。この場合、閾値THとして、画素値のばらつきを考慮すると、100〜200程度の値を用いることが望ましい。
予測方向選択部14は、|SAD_fwd−SAD_bwd|<THの場合、前方向予測と後方向予測に基づくSADが、誤差より小さい程度しか差異がないと判定し、SADを用いての予測方向選択を行わない。その代わり、予測方向選択部14は処理対象マクロブロックが、図3で示したようなB1ピクチャ21を縮小した縮小画像内のものであるか否かを判定する(ステップS37)。
B1ピクチャ21は、図3に示したように、前方向予測の参照画像としてI0/P0ピクチャ20を参照し、後方向予測の参照ピクチャとしてI3/P3ピクチャ23を参照する。
ステップS37の処理で、処理対象マクロブロックが、B1ピクチャ21を縮小した縮小画像内のものであると判定された場合には、予測方向選択部14は、Flag_fwd=1とし、前方向の予測方向を選択する(ステップS38)。これにより、次の元の原画像(等倍の原画像)を用いた動きベクトル検出処理では、この処理対象マクロブロックに対応した等倍(16×16画素)のマクロブロックに対しては、B1ピクチャ21に時間的に近いI0/P0ピクチャ20が参照ピクチャとなる。
ステップS37の処理で、処理対象マクロブロックが、B1ピクチャ21を縮小した縮小画像内のものでないと判定された場合には、図3に示したように、処理対象マクロブロックは、B2ピクチャ22を縮小した縮小画像内のものである。この場合、予測方向選択部14は、Flag_bwd=1とし、後方向の予測方向を選択する(ステップS39)。これにより、次の、等倍の原画像を用いた動きベクトル検出処理では、この処理対象マクロブロックに対応した等倍(16×16画素)のマクロブロックに対しては、B2ピクチャ22に時間的に近いI3/P3ピクチャ23が参照ピクチャとなる。
動画像では、フレームとフレームの時間間隔が短いほど、類似度が高くなる。そのため、ステップS37〜S39の処理で、時間的に近いフレームが参照ピクチャとなるように予測方向を選択することで、次の動きベクトル検出処理で、処理対象マクロブロックに、より類似した画像を指し示す動きベクトルを検出できる。また、予測方向選択部14は、一方向の予測方向を選択することで、次の動きベクトル検出処理の演算量を削減できる。
一方、ステップS36の処理で、|SAD_fwd−SAD_bwd|<THではない場合、予測方向選択部14は、SAD_fwd<SAD_bwdであるか否かを判定する(ステップS40)。SAD_fwd<SAD_bwdである場合、前方向予測を行った方が動きベクトルの検出精度がよいため、予測方向選択部14は、Flag_fwd=1とし、前方向の予測方向を選択する(ステップS41)。SAD_fwd<SAD_bwdでない場合、後方向予測を行った方が動きベクトルの検出精度がよいため、予測方向選択部14は、Flag_bwd=1とし、後方向の予測方向を選択する(ステップS42)。このように、予測方向選択部14は、一方向の予測方向を選択することで、次の動きベクトル検出処理の演算量を削減できる。
以上のような処理により予測方向が選択されると、動きベクトル検出部15は、元の等倍の原画像のマクロブロックを用いて、選択された予測方向で動きベクトルの検出を行う(ステップS10)。
図7は、動きベクトル検出(主検出)処理の流れを示すフローチャートである。
動きベクトル検出部15は、ステップS9の処理の結果、選択された予測方向が前方向、すなわち、Flag_fwd=1であるか否か判定する(ステップS50)。Flag_fwd=1である場合、動きベクトル検出部15は、処理対象マクロブロックに対応する等倍のマクロブロック(16×16画素)に対して、前方向予測で動きベクトルの検出を行う(ステップS51)。
ステップS51の処理の後、またはステップS50の処理で、Flag_fwd=1ではないと判定された場合、動きベクトル検出部15は、選択された予測方向が後方向(Flag_bwd=1)であるか否か判定する(ステップS52)。Flag_bwd=1である場合、動きベクトル検出部15は、処理対象マクロブロックに対応する等倍のマクロブロック(16×16画素)に対して、後方向予測で動きベクトルの検出を行う(ステップS53)。
図8は、動きベクトル検出の際のピクチャ間の参照関係を示す図である。
矢印aは前方向予測の方向を示しており、矢印bは後方向予測の予測方向を示している。ここでの動きベクトルの検出は、16×16画素のマクロブロック20a,21a,22a,23aごとに行われる。符号化対象がB1ピクチャ21のマクロブロック21aのとき、前方向予測の参照ピクチャとしてI0/P0ピクチャ20を、後ろ方向予測の参照ピクチャとしてI3/P3ピクチャ23が使用可能である。しかし、Flag_fwd=1でFlag_bwd=0の場合には、B1ピクチャ21の動きベクトル検出には、参照ピクチャとして、I0/P0ピクチャ20が用いられ、I3/P3ピクチャ23は用いられない。また、Flag_fwd=0でFlag_bwd=1の場合には、B1ピクチャ21の動きベクトル検出には、参照ピクチャとして、I0/P0ピクチャ20が用いられ、I3/P3ピクチャ23は用いられない。このように、一方向の予測方向で動き検出が行われるので、演算量が少なくて済む。
動きベクトルの検出は、式(2)により算出されるSADを用いて行われる。なお、このとき、マクロブロックは16×16画素であるので、式(2)において、n=m=16となる。
ステップS53の処理後、または、ステップS52の処理で、Flag_bwd=1ではない場合には、動きベクトル検出が終了し、図2で示したステップS11の処理が行われる。ステップS11の処理では、処理対象のマクロブロックに対して、動きベクトルが検出された場合、動きベクトル検出部15は、動きベクトルを出力する。
その後、動きベクトル判定部13は、全てのマクロブロックの処理が終了したか判定し(ステップS12)、終了していなければ、処理対象のマクロブロックとして次のマクロブロックを設定する(ステップS13)。そして、動きベクトル判定部13、予測方向選択部14、動きベクトル検出部15は、全マクロブロックの動きベクトルの検出が終了するまで、ステップS8〜S13の処理を繰り返す。
全マクロブロックの動きベクトルの検出が終了すると、このフレームの処理が終了し、次のフレームにおいても同様にステップS1〜13の処理が行われ、動きベクトルが検出される。
以上のような動きベクトル検出方法によれば、縮小画像をもとに検出されたベクトルの確からしさを判定して、正しいと判定された動きベクトルの予測方向で、元の画像の動きベクトルの検出を行う。これにより、Bピクチャにおける動きベクトル検出の際、予測方向を限定できるため、両方向の予測を行う場合と比べて、主検出における演算量を最大で50%削減できる。また、精度よく動きベクトルを検出できるため、画質の劣化を抑制できる。また、参照ピクチャをフレームメモリから読み出す枚数を2枚から1枚に削減できる。
以下、動画像符号化装置の一例の全体構成を説明する。
図9は、動画像符号化装置の一例の構成を示す図である。
動画像符号化装置50は、画像並べ替え部51、予測誤差信号生成部52、整数変換部53、量子化部54、エントロピー符号化部55、逆量子化部56、逆整数変換部57、参照ピクチャ生成部58、フィルタ処理部59を有している。さらに動画像符号化装置50は、フレームメモリ60、画面内予測部61、動き検出部62、動き補償部63、予測画像選択部64を有している。なお、動画像符号化装置50の各部を制御する制御部については図示を省略している。
画像並べ替え部51は、符号化のために、原画像のフレームをGOP(Group Of Pictures)構造に応じて並べ替える。
予測誤差信号生成部52は、並べ替えられた原画像のフレームにおいて、マクロブロックの画素データと、予測画像選択部64で選択された予測画像のマクロブロックの画素データとの差分を演算することにより、予測誤差信号を生成する。整数変換部53は、予測誤差信号生成部52からの予測誤差信号を整数変換した信号を出力する。量子化部54は、整数変換部53からの出力信号を量子化する。これにより、予測誤差信号の符号量が低減される。
エントロピー符号化部55は、量子化部54からの量子化データ、画面内予測部61からの出力データ、動き検出部62から出力される動きベクトルの情報をエントロピー符号化し、符号化画像データを出力する。ここで、エントロピー符号化とは、シンボルの出現頻度に応じて可変長の符号を割り当てる符号化方式を指す。
逆量子化部56は、量子化部54からの量子化データを逆量子化する。逆整数変換部57は、逆量子化部56からの出力データに逆整数変換処理を施す。これにより、符号化前の予測誤差信号と同程度の信号が得られる。
参照ピクチャ生成部58は、動き補償部63により動き補償されたマクロブロックの画素データと、逆量子化部56及び逆整数変換部57によって復号された予測誤差信号とを加算する。これにより、動き補償された参照ピクチャのマクロブロックが生成される。
フィルタ処理部59は、マクロブロックのデータに対してデブロッキングフィルタ処理を行い、ブロックノイズの発生を抑制した後、フレームメモリ60に蓄積する。
画面内予測部61は、同じピクチャにおける周辺画素から、予測画像のマクロブロックを生成する。
動き検出部62は、図1に示した各部の機能を有し、画像並べ替え部51から出力される原画像のマクロブロックと、フレームメモリ60から読み込んだ参照ピクチャのデータをもとに動きベクトルを算出し、出力する。
動き補償部63は、動き検出部62から出力された動きベクトルをもとに、フレームメモリ60から読み込んだ参照ピクチャのデータに対して動き補償することにより、動き補償された予測画像のマクロブロックを生成する。
予測画像選択部64は、画面内予測部61または動き補償部63のどちらか一方から出力される予測画像のマクロブロックを選択し、予測誤差信号生成部52及び参照ピクチャ生成部58に出力する。
このような、動画像符号化装置50の動き検出部62に対して、図1に示したような構成を適用することで、動きベクトル検出における演算量を削減できるため、動画像符号化装置50全体における演算量を削減でき、符号化処理を高速化できる。また、縮小画像における動きベクトルの確からしさを判定して、主検出の動きベクトル検出の際の予測方向を選択しているので高精度に動きベクトルを検出でき、その動きベクトルを用いることで、符号化に伴う画質の劣化を抑制することができる。
以上、実施の形態に基づき、本発明の動画像符号化装置及び動きベクトル検出方法の一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
たとえば、上記の説明では、マクロブロックは16×16画素として説明したが、16×8画素、8×16画素、8×8画素、4×8画素、8×4画素、または4×4画素としてもよい。
また、上記では、Bピクチャの符号化の際に、前方向及び後方向の参照ピクチャを1枚ずつ参照する場合について説明したが、複数枚参照するようにしてもよい。
また、縮小画像を生成する際に、原画像の画素を間引きするのではなく、一定領域ごとの画素値を平均したものを縮小画像の画素値とするようにしてもよい。
10 動画像符号化装置
11 縮小画像生成部
12 縮小動きベクトル検出部
13 動きベクトル判定部
14 予測方向選択部
15 動きベクトル検出部

Claims (5)

  1. 符号化対象の画像を縮小した縮小画像を用いて第1の動きベクトルの検出を行う第1の動きベクトル検出部と、
    検出された前記第1の動きベクトルの確からしさを判定する動きベクトル判定部と、
    確からしさの判定結果をもとに、正しいと判定された前記第1の動きベクトルの予測方向を選択する予測方向選択部と、
    元の前記画像において、選択された前記予測方向で第2の動きベクトルの検出を行う第2の動きベクトル検出部と、
    を有することを特徴とする動画像符号化装置。
  2. 前記予測方向選択部は、前記第1の動きベクトル検出部にて前方向予測及び後方向予測により検出されたそれぞれの前記第1の動きベクトルが、両方正しいと判定された場合、前記前方向予測時の差分絶対和と前記後方向予測時の差分絶対和の比較結果に応じて、一方の前記予測方向を選択することを特徴とする請求項1記載の動画像符号化装置。
  3. 前記予測方向選択部は、前記第1の動きベクトル検出部にて前方向予測及び後方向予測により検出されたそれぞれの前記第1の動きベクトルが、両方正しいと判定された場合、前記画像が存在するフレームに対して、時間的に近い位置に存在する参照ピクチャを参照する方向を前記予測方向として選択することを特徴とする請求項1または2に記載の動画像符号化装置。
  4. 前記前方向予測時の前記差分絶対和と、前記後方向予測時の前記差分絶対和の差分の絶対値が所定の閾値よりも小さい場合に、前記フレームに対して、時間的に近い位置に存在する前記参照ピクチャを参照する前記方向を前記予測方向として選択することを特徴とする請求項3記載の動画像符号化装置。
  5. 符号化対象の画像を縮小した縮小画像を用いて第1の動きベクトルの検出を行い、
    検出された前記第1の動きベクトルの確からしさを判定し、
    確からしさの判定結果をもとに、正しいと判定された前記第1の動きベクトルの予測方向を選択し、
    元の前記画像において、選択された前記予測方向で第2の動きベクトルの検出を行うことを特徴とする動きベクトル検出方法。
JP2010068196A 2010-03-24 2010-03-24 動画像符号化装置及び動きベクトル検出方法 Expired - Fee Related JP5407974B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010068196A JP5407974B2 (ja) 2010-03-24 2010-03-24 動画像符号化装置及び動きベクトル検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010068196A JP5407974B2 (ja) 2010-03-24 2010-03-24 動画像符号化装置及び動きベクトル検出方法

Publications (2)

Publication Number Publication Date
JP2011205212A true JP2011205212A (ja) 2011-10-13
JP5407974B2 JP5407974B2 (ja) 2014-02-05

Family

ID=44881431

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010068196A Expired - Fee Related JP5407974B2 (ja) 2010-03-24 2010-03-24 動画像符号化装置及び動きベクトル検出方法

Country Status (1)

Country Link
JP (1) JP5407974B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015163146A1 (ja) * 2014-04-22 2015-10-29 ソニー株式会社 符号化装置および符号化方法
WO2019162988A1 (ja) * 2018-02-20 2019-08-29 株式会社ソシオネクスト 表示制御装置、表示制御システム、表示制御方法、及びプログラム
US10448047B2 (en) * 2014-09-01 2019-10-15 Socionext, Inc. Encoder circuit and encoding method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07162869A (ja) * 1993-12-13 1995-06-23 Sharp Corp 動画像符号化装置
JP2002232892A (ja) * 2001-02-01 2002-08-16 Sony Corp 画像符号化装置
JP2007166038A (ja) * 2005-12-09 2007-06-28 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および動きベクトル検出方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07162869A (ja) * 1993-12-13 1995-06-23 Sharp Corp 動画像符号化装置
JP2002232892A (ja) * 2001-02-01 2002-08-16 Sony Corp 画像符号化装置
JP2007166038A (ja) * 2005-12-09 2007-06-28 Matsushita Electric Ind Co Ltd 動きベクトル検出装置および動きベクトル検出方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015163146A1 (ja) * 2014-04-22 2015-10-29 ソニー株式会社 符号化装置および符号化方法
US10110916B2 (en) 2014-04-22 2018-10-23 Sony Corporation Encoding device and encoding method
US10448047B2 (en) * 2014-09-01 2019-10-15 Socionext, Inc. Encoder circuit and encoding method
WO2019162988A1 (ja) * 2018-02-20 2019-08-29 株式会社ソシオネクスト 表示制御装置、表示制御システム、表示制御方法、及びプログラム
JPWO2019162988A1 (ja) * 2018-02-20 2021-02-25 株式会社ソシオネクスト 表示制御装置、表示制御システム、表示制御方法、及びプログラム
US11321949B2 (en) 2018-02-20 2022-05-03 Socionext Inc. Display control device, display control system, and display control method
JP7147835B2 (ja) 2018-02-20 2022-10-05 株式会社ソシオネクスト 表示制御装置、表示制御システム、表示制御方法、及びプログラム

Also Published As

Publication number Publication date
JP5407974B2 (ja) 2014-02-05

Similar Documents

Publication Publication Date Title
CN110809887B (zh) 用于多参考预测的运动矢量修正的方法和装置
US11082714B2 (en) Search region for motion vector refinement
US9071845B2 (en) Method and arrangement for video coding
US9100664B2 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
KR20110008653A (ko) 움직임 벡터 예측 방법과 이를 이용한 영상 부호화/복호화 장치 및 방법
CN110832862B (zh) 解码端运动矢量导出的容错与并行处理
US11627311B2 (en) Image decoding device, image decoding method, and program
JP5560009B2 (ja) 動画像符号化装置
JP2016042727A (ja) 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP5407974B2 (ja) 動画像符号化装置及び動きベクトル検出方法
JP5725103B2 (ja) 動画像復号装置、動画像復号方法及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
JP6032367B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法
US11290739B2 (en) Video processing methods and apparatuses of determining motion vectors for storage in video coding systems
JP5725118B2 (ja) 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
US20220174314A1 (en) Image decoding device, image decoding method, and program
US20240146932A1 (en) Methods and non-transitory computer readable storage medium for performing subblock-based interprediction
JP6493592B2 (ja) 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに、動画像復号装置、動画像復号方法、及び動画像復号プログラム
JP6311816B2 (ja) 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム
JP2016027741A (ja) 動画像復号装置、動画像復号方法、及び動画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム
JP2014068361A (ja) 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
JP2004088309A (ja) 動きベクトル検出方法、動きベクトル検出装置、動画像符号化方法、動画像符号化装置、通信装置。
JP2012138947A (ja) 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130702

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130822

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130902

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131021

LAPS Cancellation because of no payment of annual fees