JP2004193906A - Motion vector detecting device, its method and recording medium readable by computer - Google Patents

Motion vector detecting device, its method and recording medium readable by computer Download PDF

Info

Publication number
JP2004193906A
JP2004193906A JP2002358644A JP2002358644A JP2004193906A JP 2004193906 A JP2004193906 A JP 2004193906A JP 2002358644 A JP2002358644 A JP 2002358644A JP 2002358644 A JP2002358644 A JP 2002358644A JP 2004193906 A JP2004193906 A JP 2004193906A
Authority
JP
Japan
Prior art keywords
reduced
motion vector
search range
image
reference image
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
Application number
JP2002358644A
Other languages
Japanese (ja)
Inventor
Koji Arimura
耕治 有村
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002358644A priority Critical patent/JP2004193906A/en
Publication of JP2004193906A publication Critical patent/JP2004193906A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a motion vector detecting device capable of reducing a calculation amount for encoding without degrading encoding efficiency. <P>SOLUTION: There is provided the motion vector detecting device 100 for detecting the motion vectors of an encoded block contained in an encoded images based on reduced motion vectors detected, based on a reduced and encoded image made by reducing the encoded image and on a reduced reference image made by reducing a reference image. The motion vector detecting device includes a reduced motion vector detector 1 for detecting the reduced motion vector of the reduced and encoded block contained in the reduced reference image based on pixel data contained in the reduced reference image, a detection range setting device 2 for setting a detection range in order to detect the motion vector in the reference image based on the reduced motion vector detected by the reduced motion vector detector 1, and a motion vector detector 3 for detecting the motion vector within the detection range set by the detection range setting device 2. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、符号化画像に含まれる符号化ブロックの動きベクトルを検出する動きベクトル検出装置、動きベクトル検出方法およびコンピュータ読み取り可能な記録媒体に関する。
【0002】
【従来の技術】
近年、デジタル化が進み、マルチメディア、特に映像信号をデジタル化して取り扱う必要が高まっている。ところが、映像信号をデジタル化するためには膨大な情報量が必要である。例えば、現行テレビの信号をデジタル化するためには、100Mbit/sec以上の情報量が必要である。このように膨大な情報量をもつ映像信号をそのままで扱うことは現実的でない。
【0003】
例えば、映像信号をデジタル化したサービスとして、ISDN(Integrated Service Digital Network)を使ったテレビ電話が実現化されている。このようなテレビ電話において、デジタル化された情報を伝送する伝送速度は64Kbit/sec〜1.5Mbit/secである。このため、このようなテレビ電話において、テレビの映像信号をそのまま伝送することはできない。
【0004】
そこで、映像信号を圧縮する技術が必要となっている。映像信号を圧縮する技術としてMPEG(Moving Picture Experts Group)という国際規格がある。MPEGは、映像信号を、MPEG1では1.5Mbits/secに圧縮し、MPEG2では2〜15Mbit/secに圧縮する技術である。MPEGにおいては、時間的な冗長性を利用した圧縮技術である動き補償予測が利用される。動き補償とは、符号化画像をマクロブロックと呼ばれる処理単位のブロックごとに分割し、時間的に前後する予測画像における所定の探索範囲内から、符号化対象のブロックと相関性の高い位置を検出する。動きベクトルと呼ばれるこの位置情報と差分値とに基づいて符号化ブロックを符号化することによって情報量が削減される。
【0005】
以下、このような動きベクトルを探索するための従来の動きベクトル探索方法を説明する。
【0006】
図8は、従来の動きベクトル検出装置が動きベクトルを検出するための符号化画像94の構成を説明するための模式図である。符号化画像94は、略長方形の形状をしており、マトリックス状に配置された符号化ブロック8を有している。各符号化ブロック8は、16行×16列の画素によって構成されている。
【0007】
図9は、従来の動きベクトル検出装置が動きベクトルを検出するための参照画像96の構成を説明するための模式図である。参照画像96は、符号化画像94と同一の大きさの長方形の形状をしている。参照画像96には、符号化ブロック8よりも大きい長方形状をした参照領域21が、図8に示す斜線を付した符号化ブロック8を含むような位置に設定されている。参照領域21の中には、符号化ブロック8と同一の大きさおよび形状をした参照ブロック22が設定されている。
【0008】
図8に示す斜線を付した符号化ブロック8が動きベクトルを検出するためのブロックとして選択されると、参照ブロック22を参照領域21の中において1画素ずつ移動させながら、符号化ブロック8の中に配置された画素の画素値と参照ブロック22の中に配置された画素の画素値との間の絶対差分値の合計を計算する。そして、絶対差分値の合計が最小となる参照ブロック22の位置を検出する。次に、符号化ブロック8の中心を始点とし絶対差分値の合計が最小となる参照ブロック22の中心を終点とする動きベクトル24を検出する。
【0009】
このように参照領域21におけるすべての動きベクトルを総当たり的に調べる方法を全探索法という。このような全探索法は、参照領域21におけるすべての画素を総当り的に調べてゆくため、演算量が莫大になる。
【0010】
そこで、演算量を削減する探索方法として階層的探索法が知られている。図10は従来の動きベクトル検出装置が階層的に動きベクトルを検出するための符号化画像94と縮小符号化画像95との間の関係を説明するための模式図であり、図11は従来の動きベクトル検出装置が階層的に動きベクトルを検出する方法を説明するための模式図である。
【0011】
まず、符号化画像94を水平方向に沿ってN分の1に縮小し垂直方向に沿ってM分の1に縮小した縮小画像95を生成する。そして、1次探索では、この縮小画像において動き探索が行われ、得られた縮小動きベクトルは2次探索の初期値として用いられる。
【0012】
1次探索のマッチングの処理単位は、1つ以上のマクロブロックを含む領域80に対応する領域81ごとに行われる。1次探索では、探索範囲は、オリジナルの符号化画像94の1/(N*M)倍になる。例えば、図11に示すように、1次探索において、縮小画像95におけるマッチング処理単位を、オリジナルの符号化画像94の中の4つのマクロブロックから構成された領域80に対応した領域81とした場合、得られた縮小動きベクトルを、4マクロブロックの2次探索の初期値として用いる。2次探索における探索範囲は、M×N画素とする。
【0013】
一つの動きベクトルを検出するために必要な演算量は、例えば、探索範囲を水平±7、垂直±7の15×15画素によって構成される領域とした場合、前述した全探索法においては、15×15=225回の16×16画素のブロックマッチング、つまり、57600回の画素マッチングが必要となる。一方、水平1/4、垂直1/4の階層的探索法においては、1次探索において(15/4)×(15/4)=約56回の16×16画素のマッチングによって、4×4=16個のマクロブロックの動きベクトルを検出することができる。このため、1個の動きベクトルを検出するためには、56×16×16/16=896回の画素マッチングと、2次探索において4×4=16回の16×16画素の画素マッチング、つまり1536回の画素マッチングが必要で、合計2432回の画素マッチングで検出することができる。従って、演算量は、前述した全探索法における演算量の約1/20となる。
【0014】
このように、階層的探索法によれば、前述した全検索法よりも演算量を大幅に削減することができる。
【0015】
【非特許文献1】
トリケップス出版 ”MPEG 技術” (White series No.152) 片山泰男 pp.29−127
【0016】
【発明が解決しようとする課題】
しかしながら、近年の映像機器の小型化や、携帯機器における映像処理の要望のために、機器の省電力化が必須であり、動きベクトルの検出処理において、更なる演算量の削減が要求されているという問題がある。
【0017】
また、上記の小型映像機器や、携帯映像機器においては、省電力を実現した結果、符号化効率が低下するために画質が劣化することが許されないのは言うまでもない。
【0018】
本発明は係る問題を解決するためになされたものであり、その目的は、符号化効率を劣化させることなく符号化のための演算量を削減することができる動きベクトル検出装置、動きベクトル検出方法およびコンピュータ読み取り可能な記録媒体を提供することにある。
【0019】
【課題を解決するための手段】
係る目的を達成するために本発明に係る動きベクトル検出装置は、符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、前記符号化画像に含まれる符号化ブロックの動きベクトルを検出する動きベクトル検出装置であって、前記縮小参照画像に含まれる画素データに基づいて前記縮小符号化画像に含まれる縮小符号化ブロックの前記縮小動きベクトルを検出する縮小動きベクトル検出器と、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルに基づいて、前記参照画像において前記動きベクトルを検出するための探索範囲を設定する探索範囲設定器と、前記探索範囲設定器によって設定された前記探索範囲において前記動きベクトルを検出する動きベクトル検出器とを具備することを特徴とする。
【0020】
本発明に係る動きベクトル検出方法は、符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、前記前記符号化画像に含まれる符号化ブロックの動きベクトルを検出する動きベクトル検出方法であって、前記縮小参照画像に含まれる画素データに基づいて前記縮小符号化画像に含まれる縮小符号化ブロックの前記縮小動きベクトルを検出する縮小動きベクトル検出ステップと、前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルに基づいて、前記参照画像において前記動きベクトルを検出するための探索範囲を設定する探索範囲設定ステップと、前記探索範囲設定ステップによって設定された前記探索範囲において前記動きベクトルを検出する動きベクトル検出ステップとを包含することを特徴とする。
【0021】
本発明に係るコンピュータ読み取り可能な記録媒体は、コンピュータに、符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、前記前記符号化画像に含まれる符号化ブロックの動きベクトルを検出するために、前記縮小参照画像に含まれる画素データに基づいて前記縮小符号化画像に含まれる縮小符号化ブロックの前記縮小動きベクトルを検出する縮小動きベクトル検出ステップと、前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルに基づいて、前記参照画像において前記動きベクトルを検出するための探索範囲を設定する探索範囲設定ステップと、前記探索範囲設定ステップによって設定された前記探索範囲において前記動きベクトルを検出する動きベクトル検出ステップとを実行させるためのプログラムを記録したことを特徴とする。
【0022】
【発明の実施の形態】
本実施の形態に係る動きベクトル検出装置においては、縮小動きベクトル検出器によって検出された縮小動きベクトルに基づいて、参照画像において動きベクトルを検出するための探索範囲が設定され、設定された探索範囲において動きベクトルが検出される。このため、縮小動きベクトル検出器によって検出された縮小動きベクトルに応じて、狭い探索範囲において動きベクトルを検出することができる。その結果、符号化効率を劣化させることなく、動きベクトルを検出するための演算量を削減することができる。
【0023】
前記符号化画像と前記参照画像とは、1個以上のマクロブロックを含む領域を示す複数のクラスタにそれぞれ分割されており、前記縮小符号化画像と前記縮小参照画像とは、前記複数のクラスタをそれぞれ縮小した複数の縮小クラスタにそれぞれ分割されており、前記縮小動きベクトル検出器は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタとの間の差分値が最小となる前記縮小参照画像の縮小クラスタに基づいて前記縮小符号化ブロックの前記縮小動きベクトルを検出することが好ましい。
【0024】
前記差分値は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタに含まれる画素値と前記縮小参照画像の縮小クラスタに含まれる画素値との差の絶対値の総和であることが好ましい。
【0025】
前記誤差値は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタに含まれる画素値と前記縮小参照画像の縮小クラスタに含まれる画素値との差の二乗の総和であることが好ましい。
【0026】
前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさと前記最小となる差分値との少なくとも一方に基づいて、前記動きベクトルを検出するための探索範囲を設定することが好ましい。
【0027】
前記探索範囲設定器は、前記最小となる差分値が所定の第1閾値よりも小さいときは、前記最小となる差分値が前記所定の第1閾値よりも小さくないときに設定する探索範囲よりも狭い探索範囲を設定することが好ましい。
【0028】
前記探索範囲設定器は、前記最小となる差分値が前記所定の第1閾値よりも小さい第2閾値よりもさらに小さいときは、前記探索範囲の広さを零に設定し、動きベクトル検出器は、前記探索範囲設定器が前記探索範囲の広さを零に設定したときは、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルを前記動きベクトルとして検出することが好ましい。
【0029】
前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさが所定の閾値よりも大きいときは、前記探索範囲の中心が前記縮小動きベクトルの終点と一致するように前記探索範囲を設定することが好ましい。
【0030】
前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさが前記所定の閾値よりも大きくないときは、前記探索範囲の中心が前記符号化ブロックの位置と一致するように前記探索範囲を設定することが好ましい。
【0031】
前記符号化画像と前記参照画像とを入力して前記動きベクトル検出器へ供給する画像入力器をさらに具備することが好ましい。
【0032】
前記画像入力器へ入力された前記符号化画像と前記参照画像とをそれぞれ縮小して前記縮小符号化画像と前記縮小参照画像とを生成し、前記縮小動きベクトル検出器へ供給する縮小画像生成器をさらに具備することが好ましい。
【0033】
以下、図面を参照して本発明の実施の形態を説明する。
【0034】
図1は実施の形態に係る動きベクトル検出装置100の構成を示すブロック図であり、図2は動きベクトル検出装置100が動きベクトルを検出するための符号化画像、縮小符号化画像、参照画像および縮小参照画像を説明するための模式図であり、図3は動きベクトル検出装置100が動きベクトルを検出するための符号化画像の構成を説明するための模式図である。
【0035】
動きベクトル検出装置100は、符号化画像4を縮小した縮小符号化画像5と参照画像6を縮小した縮小参照画像7とに基づいて検出した縮小動きベクトル12に基づいて、符号化画像4に含まれる符号化ブロック8の動きベクトル12Aを検出する。
【0036】
符号化画像4は、2行×2列の4個の符号化ブロック8によって構成されたクラスタ10に分割されている。各符号化ブロック8は、16行×16列の256個の画素によって構成されている。参照画像6も、符号化画像4と同様に、2行×2列の4個の符号化ブロック8によって構成されている。参照画像6には、動きベクトルを検出するための探索範囲15が設定されている。
【0037】
符号化画像4を縮小した縮小符号化画像5は、クラスタ10を縮小した縮小クラスタ11によって構成されている。縮小クラスタ11は、符号化ブロック8を縮小した2行×2列の4個の縮小符号化ブロック13によって構成されている。
【0038】
参照画像6を縮小した縮小参照画像7は、縮小符号化画像5に設けられた縮小クラスタ11に対応する縮小クラスタ11Aによって構成されている。
【0039】
動きベクトル検出装置100は、動きベクトル検出部54と画像入力器16とを備えている。画像入力器16は、符号化画像4と参照画像6とを受け取り、動きベクトル検出部54に設けられた縮小画像生成器17へ符号化画像4と参照画像6とを供給し、動きベクトル検出器54に設けられた動きベクトル検出器3へ符号化画像4と参照画像6とを供給する。
【0040】
縮小画像生成器17は、画像入力器16から供給された符号化画像4と参照画像6とをそれぞれ縮小して縮小符号化画像5と縮小参照画像7とをそれぞれ生成し、縮小動きベクトル検出器1へ供給する。
【0041】
縮小動きベクトル検出器1は、縮小画像生成器17から供給された縮小参照画像7に含まれる画素データに基づいて、縮小画像生成器17から供給された縮小符号化画像5に含まれる縮小符号化ブロック13の縮小動きベクトル12を検出して探索範囲設定器2へ供給する。
【0042】
探索範囲設定器2は、縮小動きベクトル検出器1によって検出された縮小動きベクトル12に基づいて、参照画像6において動きベクトル12Aを検出するための探索範囲15を設定して動きベクトル検出器3へ供給する。
【0043】
動きベクトル検出器3は、画像入力器16から供給された符号化画像4および参照画像6に基づいて、探索範囲設定器2によって設定された探索範囲において動きベクトル12Aを検出して動きベクトル出力器55へ供給する。
【0044】
動きベクトル出力器55は、動きベクトル検出器3から供給された動きベクトル12Aを動きベクトル検出装置100の外部へ出力する。
【0045】
このように構成された動きベクトル検出装置100の動作を説明する。図4は、実施の形態に係る動きベクトル検出装置100に設けられた縮小動きベクトル検出器1の動作を説明するためのフローチャートである。
【0046】
まず、画像入力器16は、符号化画像4と参照画像6とを受け取り、動きベクトル検出部54に設けられた縮小画像生成器17へ符号化画像4と参照画像6とを供給する(ステップS70)。そして、縮小画像生成器17は、画像入力器16から供給された符号化画像4を2行×2列の4個の符号化ブロック8によって構成されたクラスタ10に分割する(ステップS71)。
【0047】
次に、縮小画像生成器17は、画像入力器16から供給された参照画像6とクラスタ10に分割した符号化画像4とを縮小参照画像7と縮小符号化画像5とにそれぞれ縮小して縮小動きベクトル検出器1へ供給する(ステップS72)。
【0048】
その後、縮小動きベクトル検出器1は、縮小参照画像7に設定された縮小クラスタ11Aを縮小参照画像7の中において移動させながら、差分値として、縮小符号化画像5における縮小クラスタ11の中に配置された画素の画素値と縮小クラスタ11Aの中に配置された画素の画素値との差の絶対値の総和をすべてのクラスタ11Aについて総当たり的に求める(ステップS73およびステップS74)。
【0049】
そして、縮小動きベクトル検出器1は、差分値が最小となる縮小クラスタ11Aの位置に基づいて縮小動きベクトル12を求め、最小となる差分値および縮小動きベクトル12を探索範囲設定器2へ供給する(ステップS75)。
【0050】
図5は、探索範囲設定器2の動作を示すフローチャートである。まず、探索範囲設定器2は、縮小動きベクトル検出器1から供給された最小となる差分値および縮小動きベクトル12を受け取る(ステップS80)。
【0051】
そして、探索範囲設定器2は、最小となる差分値が予め定められた閾値TS1よりも小さいか否かを判断する(ステップS81)。差分値が予め定められた閾値TS1よりも小さくないと判断したときは(ステップS81においてNO)、探索範囲設定器2は参照画像6における探索範囲15を通常サイズに設定する(ステップS83)。
【0052】
差分値が予め定められた閾値TS1よりも小さいと判断したときは(ステップS81においてYES)、探索範囲設定器2は参照画像6における探索範囲15を通常サイズよりも狭い縮小サイズに設定する(ステップS82)。
【0053】
次に、探索範囲設定器2は、通常サイズと縮小サイズとのいずれかに設定した探索範囲15を動きベクトル検出器3へ出力する(ステップS84)。
【0054】
その後、動きベクトル検出器3は、通常サイズと縮小サイズとのいずれかに設定された探索範囲15内において、符号化画像4におけるクラスタ10を構成する符号化ブロック8ごとにマッチング処理を行い、誤差値が最小となる探索範囲15内の位置を求め、符号化ブロック8の動きベクトルを求める。誤差値は、前述した縮小動きベクトル12を求めるときと同様に、画素値の絶対値の総和に基づいて計算する。
【0055】
そして、動きベクトル出力器3は、動きベクトル検出器3によって求められた符号化ブロック8の動きベクトルを動きベクトル検出装置100の外部へ出力する。
【0056】
このように、探索範囲設定器2は、クラスタ毎の相関性を検証し、クラスタを構成する符号化ブロックの動きベクトルを求めるときの探索範囲の大きさと探索範囲の中心点を決定する。探索範囲設定器2では、縮小動きベクトルのさす参照ブロックと符号化ブロックとの相関が高い場合には、縮小動きベクトルは正しいベクトルが検出されているとして、動きベクトル検出器3が探索する探索範囲を縮小することにより、演算量の削減を実現する。
【0057】
探索範囲設定器2は、差分値が予め定められた閾値TS1よりも小さいと判断したときは、クラスタに相関性があると判断して探索範囲15を通常サイズよりも狭い縮小サイズに設定し、差分値が予め定められた閾値TS1よりも小さくないと判断したときは、クラスタに相関性がないと判断して探索範囲15を通常サイズに設定する。
【0058】
以上のように本実施の形態によれば、縮小動きベクトル検出器1によって検出された縮小動きベクトル12に基づいて、参照画像6において動きベクトル12Aを検出するための探索範囲15が設定され、設定された探索範囲15において動きベクトル12Aが検出される。このため、縮小動きベクトル検出器1によって検出された縮小動きベクトル12に応じて、狭い探索範囲15において動きベクトル12Aを検出することができる。その結果、符号化効率を劣化させることなく、動きベクトル12Aを検出するための演算量を削減することができる。
【0059】
図6は、実施の形態に係る動きベクトル検出装置100に設けられた探索範囲設定器2の他の動作を示すフローチャートである。まず、探索範囲設定器2は、縮小動きベクトル検出器1から供給された最小となる差分値および縮小動きベクトル12を受け取る(ステップS90)。
【0060】
そして、探索範囲設定器2は、縮小動きベクトル12の大きさが予め定められた閾値TC1よりも大きいか否かを判断する(ステップS91)。縮小動きベクトル12の大きさが予め定められた閾値TC1よりも大きくないと判断したときは(ステップS91においてNO)、探索範囲設定器2は縮小動きベクトル12の信頼性が低いと判断して、動きベクトル12Aを探索するための探索範囲15の中心点を符号化ブロック8に対応する位置に設定する(ステップS93)。
【0061】
縮小動きベクトル12の大きさが予め定められた閾値TC1よりも大きいと判断したときは(ステップS91においてYES)、探索範囲設定器2は縮小動きベクトル12の信頼性が高いと判断して、動きベクトル12Aを探索するための探索範囲15の中心点を縮小動きベクトル12の終点に対応する位置に設定する(ステップS92)。
【0062】
探索範囲15の中心点を符号化ブロック8に対応する位置に設定したとき(ステップS93)または探索範囲15の中心点を縮小動きベクトル12の終点に対応する位置に設定したときは(ステップS92)、探索範囲設定器2は設定した探索範囲15の中心点を動きベクトル検出器3へ供給する(ステップS94)。
【0063】
縮小動きベクトル12の大きさが予め定められた閾値TC1よりも大きい場合は、クラスタ内の符号化ブロックが全て同じ方向に大きく移動したと判断することができ、逆に、縮小動きベクトル12の大きさが予め定められた閾値TC1よりも大きくない場合には、クラスタ内の符号化ブロックが全体的に同じ方向へは移動していないと判断することができる。
【0064】
そこで、縮小動きベクトル12の大きさが予め定められた閾値TC1よりも大きくない場合には、クラスタ内の動きベクトルの探索範囲の中心点を符号化ブロックの位置(0,0)にすることによって、動きベクトル検出器3において正しい動きベクトルを検出することができる。従って、符号化効率の劣化を防止することができる。
【0065】
図7は、実施の形態に係る動きベクトル検出装置100に設けられた探索範囲設定器2のさらに他の動作を示すフローチャートである。まず、探索範囲設定器2は、縮小動きベクトル検出器1から供給された最小となる差分値および縮小動きベクトル12を受け取る(ステップS100)。
【0066】
そして、探索範囲設定器2は、最小となる差分値が予め定められた閾値TS2よりも小さいか否かを判断する(ステップS101)。差分値が予め定められた閾値TS2よりも小さくないと判断したときは(ステップS101においてNO)、探索範囲設定器2は参照画像6における探索範囲15を通常サイズに設定する(ステップS103)。
【0067】
差分値が閾値TS2よりも小さいと判断したときは(ステップS101においてYES)、探索範囲設定器2は参照画像6における探索範囲15の広さをゼロに設定する(ステップS102)。
【0068】
次に、探索範囲設定器2は通常サイズに設定された探索範囲15または広さをゼロに設定された探索範囲15を動きベクトル検出器3へ供給する(ステップS104)。
【0069】
その後、動きベクトル検出器3は、探索範囲設定器2から供給された探索範囲15の広さがゼロの場合は、動きベクトルを探索することなく、縮小動きベクトル検出器1によって求められた縮小動きベクトルを符号化ブロックの動きベクトルとして動きベクトル出力器55へ供給する。
【0070】
探索範囲設定器2から通常サイズに設定された探索範囲15が供給された場合は、通常サイズに設定された探索範囲15内において、符号化画像4におけるクラスタ10を構成する符号化ブロック8ごとにマッチング処理を行い、誤差値が最小となる探索範囲15内の位置を求め、符号化ブロック8の動きベクトルを求め、動きベクトル出力器55へ供給する。
【0071】
このように動きベクトルの探索を行わない場合を設けることによって、動きベクトルの演算量を削減することができる。
【0072】
なお、前述した図5に示す探索範囲の決定処理と図6に示す探索範囲の決定処理と図7に示す探索範囲の設定処理との少なくとも2つを併用してもよい。この場合、閾値TS1>閾値TS2と設定することが望ましい。
【0073】
また、本実施の形態においては、縮小動きベクトル検出器1および動きベクトル検出器3におけるマッチング処理の差分値として、画素値の差の絶対値の総和を用いているが、画素値の差の自乗誤差の総和を用いてもよい。特に、縮小動きベクトル検出器1によるマッチング処理における差分値として、自乗誤差の総和を用いることにより、絶対値の総和を用いるよりも、探索範囲設定器2の相対性の判断がより正確になる。
【0074】
さらに、図1に示すコンピュータ読み取り可能な記録媒体18には、本実施の形態に係る動きベクトル検出装置100を動作させるためのプログラムが記録されている。動きベクトル検出装置100は、コンピュータ読み取り可能な記録媒体18に記録されたプログラムに基づいて動作するように構成してもよい。
【0075】
【発明の効果】
以上のように本発明によれば、符号化効率を劣化させることなく符号化のための演算量を削減することができる動きベクトル検出装置、動きベクトル検出方法およびコンピュータ読み取り可能な記録媒体を提供することができる。
【図面の簡単な説明】
【図1】実施の形態に係る動きベクトル検出装置の構成を示すブロック図
【図2】実施の形態に係る動きベクトル検出装置が動きベクトルを検出するための符号化画像、縮小符号化画像、参照画像および縮小参照画像を説明するための模式図
【図3】実施の形態に係る動きベクトル検出装置が動きベクトルを検出するための符号化画像の構成を説明するための模式図
【図4】実施の形態に係る動きベクトル検出装置に設けられた縮小動きベクトル検出器の動作を説明するためのフローチャート
【図5】実施の形態に係る動きベクトル検出装置に設けられた探索範囲設定器の動作を示すフローチャート
【図6】実施の形態に係る動きベクトル検出装置に設けられた探索範囲設定器の他の動作を示すフローチャート
【図7】実施の形態に係る動きベクトル検出装置に設けられた探索範囲設定器のさらに他の動作を示すフローチャート
【図8】従来の動きベクトル検出装置が動きベクトルを検出するための符号化画像の構成を説明するための模式図
【図9】従来の動きベクトル検出装置が動きベクトルを検出するための参照画像の構成を説明するための模式図
【図10】従来の動きベクトル検出装置が階層的に動きベクトルを検出するための符号化画像と縮小符号化画像との間の関係を説明するための模式図
【図11】従来の動きベクトル検出装置が階層的に動きベクトルを検出する方法を説明するための模式図
【符号の説明】
1 縮小動きベクトル検出器
2 探索範囲設定器
3 動きベクトル検出器
4 符号化画像
5 縮小符号化画像
6 参照画像
7 縮小参照画像
8 符号化ブロック
9 マクロブロック
10 クラスタ
11 縮小クラスタ
12 縮小動きベクトル
13 縮小符号化ブロック
14 動きベクトル
15 探索範囲
16 画像入力器
17 縮小画像生成器
18 コンピュータ読み取り可能な記録媒体
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention detects a motion vector of a coded block included in a coded image based on a reduced motion vector detected based on a reduced coded image obtained by reducing a coded image and a reduced reference image obtained by reducing a reference image. The present invention relates to a motion vector detecting device, a motion vector detecting method, and a computer-readable recording medium.
[0002]
[Prior art]
In recent years, digitization has progressed, and there is an increasing need to handle multimedia, especially video signals, in digital form. However, digitizing a video signal requires an enormous amount of information. For example, in order to digitize a current television signal, an information amount of 100 Mbit / sec or more is required. It is not realistic to handle a video signal having a huge amount of information as it is.
[0003]
For example, a videophone using ISDN (Integrated Service Digital Network) has been realized as a service that digitizes a video signal. In such a videophone, the transmission speed at which digitized information is transmitted is 64 Kbit / sec to 1.5 Mbit / sec. Therefore, in such a videophone, the video signal of the television cannot be transmitted as it is.
[0004]
Therefore, a technique for compressing a video signal is required. There is an international standard called MPEG (Moving Picture Experts Group) as a technique for compressing a video signal. MPEG is a technique for compressing a video signal to 1.5 Mbits / sec in MPEG1 and 2 to 15 Mbit / sec in MPEG2. In MPEG, motion compensation prediction, which is a compression technique using temporal redundancy, is used. Motion compensation divides a coded image into blocks of processing units called macroblocks, and detects a position highly correlated with the block to be coded from within a predetermined search range in a predicted image that precedes and follows in time. I do. The amount of information is reduced by coding the coding block based on the position information called a motion vector and the difference value.
[0005]
Hereinafter, a conventional motion vector search method for searching for such a motion vector will be described.
[0006]
FIG. 8 is a schematic diagram for explaining a configuration of an encoded image 94 for a conventional motion vector detection device to detect a motion vector. The encoded image 94 has a substantially rectangular shape, and has the encoding blocks 8 arranged in a matrix. Each encoding block 8 is composed of 16 rows × 16 columns of pixels.
[0007]
FIG. 9 is a schematic diagram for explaining a configuration of a reference image 96 for a conventional motion vector detection device to detect a motion vector. The reference image 96 has a rectangular shape having the same size as the encoded image 94. In the reference image 96, a reference area 21 having a rectangular shape larger than the coding block 8 is set at a position including the coding block 8 indicated by hatching shown in FIG. In the reference area 21, a reference block 22 having the same size and shape as the coding block 8 is set.
[0008]
When the coding block 8 indicated by hatching shown in FIG. 8 is selected as a block for detecting a motion vector, the reference block 22 is moved one pixel at a time in the reference area 21 while the reference block 22 is moved. The sum of the absolute difference value between the pixel value of the pixel arranged in the reference block 22 and the pixel value of the pixel arranged in the reference block 22 is calculated. Then, the position of the reference block 22 at which the sum of the absolute difference values is minimum is detected. Next, a motion vector 24 starting from the center of the encoding block 8 and ending at the center of the reference block 22 where the sum of the absolute difference values is minimum is detected.
[0009]
A method of grossly examining all the motion vectors in the reference area 21 in this manner is called a full search method. In such a full search method, all pixels in the reference area 21 are brute-forced to be examined, so that the amount of calculation becomes enormous.
[0010]
Therefore, a hierarchical search method is known as a search method for reducing the amount of calculation. FIG. 10 is a schematic diagram for explaining a relationship between a coded image 94 and a reduced coded image 95 for a conventional motion vector detection device to hierarchically detect a motion vector, and FIG. It is a schematic diagram for demonstrating the method by which a motion vector detection apparatus detects a motion vector hierarchically.
[0011]
First, a reduced image 95 is generated by reducing the coded image 94 by 1 / N in the horizontal direction and by 1 / M in the vertical direction. In the primary search, a motion search is performed on the reduced image, and the obtained reduced motion vector is used as an initial value of the secondary search.
[0012]
The processing unit of the primary search matching is performed for each area 81 corresponding to the area 80 including one or more macroblocks. In the primary search, the search range is 1 / (N * M) times the original coded image 94. For example, as shown in FIG. 11, in the primary search, the matching processing unit in the reduced image 95 is an area 81 corresponding to the area 80 composed of four macroblocks in the original encoded image 94. , And the obtained reduced motion vector is used as an initial value of a secondary search of four macroblocks. The search range in the secondary search is M × N pixels.
[0013]
The amount of calculation required to detect one motion vector is, for example, when the search range is an area composed of 15 × 15 pixels of horizontal ± 7 and vertical ± 7, the full search method described above requires 15 × 15 = 225 block matching of 16 × 16 pixels, that is, pixel matching of 57600 times is required. On the other hand, in the horizontal search method of 1/4 and the vertical search method of 1/4, in the primary search, (15/4) × (15/4) = approximately 56 times of matching of 16 × 16 pixels, 4 × 4 = The motion vectors of 16 macroblocks can be detected. Therefore, in order to detect one motion vector, 56 × 16 × 16/16 = 896 pixel matching and 4 × 4 = 16 16 × 16 pixel matching in the secondary search, that is, It requires 1536 times of pixel matching and can be detected by 2432 times of pixel matching in total. Therefore, the calculation amount is about 1/20 of the calculation amount in the full search method described above.
[0014]
As described above, according to the hierarchical search method, the amount of calculation can be significantly reduced as compared with the above-described full search method.
[0015]
[Non-patent document 1]
Trikes Publishing "MPEG Technology" (White series No. 152) Yasuo Katayama pp. 29-127
[0016]
[Problems to be solved by the invention]
However, due to recent demands for downsizing of video equipment and video processing in portable equipment, power saving of the equipment is indispensable, and further reduction in the amount of calculation is required in motion vector detection processing. There is a problem.
[0017]
Further, in the above-described small-sized video equipment and portable video equipment, it goes without saying that image quality is not allowed to be degraded due to reduction in coding efficiency as a result of power saving.
[0018]
The present invention has been made to solve such a problem, and an object of the present invention is to provide a motion vector detection device and a motion vector detection method capable of reducing the amount of calculation for encoding without deteriorating encoding efficiency. And a computer-readable recording medium.
[0019]
[Means for Solving the Problems]
In order to achieve the above object, the motion vector detection device according to the present invention is based on a reduced motion vector detected based on a reduced encoded image obtained by reducing an encoded image and a reduced reference image obtained by reducing a reference image. A motion vector detecting device that detects a motion vector of an encoded block included in an encoded image, wherein the reduction of the reduced encoded block included in the reduced encoded image is performed based on pixel data included in the reduced reference image. A reduced motion vector detector for detecting a motion vector; and a search range setting for setting a search range for detecting the motion vector in the reference image based on the reduced motion vector detected by the reduced motion vector detector. And a motion detecting the motion vector in the search range set by the search range setting device. Characterized by comprising the vector detector.
[0020]
The motion vector detection method according to the present invention is included in the encoded image based on a reduced motion vector detected based on a reduced encoded image obtained by reducing an encoded image and a reduced reference image obtained by reducing a reference image. A method for detecting a motion vector of a coded block, comprising: detecting a reduced motion vector of a reduced coded block included in the reduced coded image based on pixel data included in the reduced reference image. A motion vector detection step, a search range setting step of setting a search range for detecting the motion vector in the reference image based on the reduced motion vector detected by the reduced motion vector detection step, Detecting the motion vector in the search range set by the setting step Characterized in that it comprises the vector detection step can.
[0021]
The computer-readable recording medium according to the present invention stores the encoded code in a computer based on a reduced motion vector detected based on a reduced encoded image obtained by reducing an encoded image and a reduced reference image obtained by reducing a reference image. Reduction for detecting a motion vector of a coded block included in the reduced image, detecting the reduced motion vector of the reduced coded block included in the reduced coded image based on pixel data included in the reduced reference image. A motion vector detection step, a search range setting step of setting a search range for detecting the motion vector in the reference image based on the reduced motion vector detected by the reduced motion vector detection step, In the search range set by the setting step, the motion vector The program for executing the motion vector detection step of leaving, characterized by recording.
[0022]
BEST MODE FOR CARRYING OUT THE INVENTION
In the motion vector detection device according to the present embodiment, a search range for detecting a motion vector in a reference image is set based on the reduced motion vector detected by the reduced motion vector detector, and the set search range In, a motion vector is detected. Therefore, a motion vector can be detected in a narrow search range according to the reduced motion vector detected by the reduced motion vector detector. As a result, the amount of calculation for detecting a motion vector can be reduced without deteriorating the coding efficiency.
[0023]
The coded image and the reference image are each divided into a plurality of clusters indicating an area including one or more macroblocks, and the reduced coded image and the reduced reference image Each of the reduced motion vectors is divided into a plurality of reduced clusters, and the reduced motion vector detector is configured to reduce the difference value between the reduced cluster and the reduced cluster including the reduced coded block in the reduced coded image. Preferably, the reduced motion vector of the reduced coded block is detected based on a reduced cluster of a reference image.
[0024]
The difference value is a sum of absolute values of differences between pixel values included in a reduced cluster including the reduced coded block in the reduced coded image and pixel values included in a reduced cluster of the reduced reference image. Is preferred.
[0025]
The error value may be a sum of squares of a difference between a pixel value included in a reduced cluster including the reduced coded block in the reduced coded image and a pixel value included in a reduced cluster of the reduced reference image. preferable.
[0026]
The search range setting device sets a search range for detecting the motion vector based on at least one of the size of the reduced motion vector detected by the reduced motion vector detector and the minimum difference value. Is preferred.
[0027]
The search range setting unit is configured such that when the minimum difference value is smaller than a predetermined first threshold value, the search range setting unit sets a search range set when the minimum difference value is not smaller than the predetermined first threshold value. It is preferable to set a narrow search range.
[0028]
The search range setting device sets the width of the search range to zero when the minimum difference value is smaller than a second threshold value smaller than the predetermined first threshold value. Preferably, when the search range setting unit sets the width of the search range to zero, the reduced motion vector detected by the reduced motion vector detector is detected as the motion vector.
[0029]
The search range setting device is configured such that, when the size of the reduced motion vector detected by the reduced motion vector detector is larger than a predetermined threshold, the center of the search range matches the end point of the reduced motion vector. It is preferable to set the search range in the range.
[0030]
The search range setting unit is configured such that when the magnitude of the reduced motion vector detected by the reduced motion vector detector is not larger than the predetermined threshold, the center of the search range matches the position of the encoded block. It is preferable to set the search range so as to perform the search.
[0031]
It is preferable that the image processing apparatus further includes an image input device that inputs the encoded image and the reference image and supplies the input image and the reference image to the motion vector detector.
[0032]
A reduced image generator that reduces the encoded image and the reference image input to the image input device to generate the reduced encoded image and the reduced reference image, and supplies the reduced encoded image and the reduced reference image to the reduced motion vector detector It is preferable to further include
[0033]
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0034]
FIG. 1 is a block diagram illustrating a configuration of a motion vector detection device 100 according to an embodiment. FIG. 2 illustrates a coded image, a reduced coded image, a reference image, and a coded image for the motion vector detection device 100 to detect a motion vector. FIG. 3 is a schematic diagram illustrating a reduced reference image, and FIG. 3 is a schematic diagram illustrating a configuration of an encoded image used by the motion vector detection device 100 to detect a motion vector.
[0035]
The motion vector detecting device 100 includes the encoded image 4 based on the reduced motion vector 12 detected based on the reduced encoded image 5 obtained by reducing the encoded image 4 and the reduced reference image 7 obtained by reducing the reference image 6. The motion vector 12A of the coding block 8 to be decoded is detected.
[0036]
The encoded image 4 is divided into clusters 10 each composed of four encoding blocks 8 of 2 rows × 2 columns. Each encoding block 8 is constituted by 256 pixels of 16 rows × 16 columns. Like the encoded image 4, the reference image 6 is also configured by four encoded blocks 8 of 2 rows × 2 columns. In the reference image 6, a search range 15 for detecting a motion vector is set.
[0037]
The reduced coded image 5 obtained by reducing the coded image 4 includes a reduced cluster 11 obtained by reducing the cluster 10. The reduced cluster 11 is composed of four reduced encoded blocks 13 of 2 rows × 2 columns obtained by reducing the encoded block 8.
[0038]
The reduced reference image 7 obtained by reducing the reference image 6 is configured by a reduced cluster 11A corresponding to the reduced cluster 11 provided in the reduced coded image 5.
[0039]
The motion vector detection device 100 includes a motion vector detection unit 54 and the image input device 16. The image input unit 16 receives the coded image 4 and the reference image 6, supplies the coded image 4 and the reference image 6 to the reduced image generator 17 provided in the motion vector detection unit 54, and The encoded image 4 and the reference image 6 are supplied to the motion vector detector 3 provided at 54.
[0040]
The reduced image generator 17 reduces the coded image 4 and the reference image 6 supplied from the image input unit 16 to generate the reduced coded image 5 and the reduced reference image 7, respectively. Supply to 1.
[0041]
The reduced motion vector detector 1 performs the reduced encoding included in the reduced encoded image 5 supplied from the reduced image generator 17 based on the pixel data included in the reduced reference image 7 supplied from the reduced image generator 17. The reduced motion vector 12 of the block 13 is detected and supplied to the search range setting device 2.
[0042]
The search range setting unit 2 sets a search range 15 for detecting the motion vector 12A in the reference image 6 based on the reduced motion vector 12 detected by the reduced motion vector detector 1, and sends the search range 15 to the motion vector detector 3. Supply.
[0043]
The motion vector detector 3 detects a motion vector 12A in the search range set by the search range setting device 2 based on the encoded image 4 and the reference image 6 supplied from the image input device 16, and outputs a motion vector output signal. 55.
[0044]
The motion vector output unit 55 outputs the motion vector 12A supplied from the motion vector detector 3 to the outside of the motion vector detection device 100.
[0045]
The operation of the motion vector detecting device 100 thus configured will be described. FIG. 4 is a flowchart for explaining the operation of the reduced motion vector detector 1 provided in the motion vector detection device 100 according to the embodiment.
[0046]
First, the image input unit 16 receives the encoded image 4 and the reference image 6, and supplies the encoded image 4 and the reference image 6 to the reduced image generator 17 provided in the motion vector detection unit 54 (Step S70). ). Then, the reduced image generator 17 divides the coded image 4 supplied from the image input device 16 into clusters 10 each composed of four coded blocks 8 of 2 rows × 2 columns (step S71).
[0047]
Next, the reduced image generator 17 reduces the reference image 6 supplied from the image input unit 16 and the coded image 4 divided into clusters 10 into a reduced reference image 7 and a reduced coded image 5, respectively. It is supplied to the motion vector detector 1 (step S72).
[0048]
Thereafter, the reduced motion vector detector 1 arranges the reduced cluster 11A set in the reduced reference image 7 as a difference value in the reduced cluster 11 in the reduced coded image 5 while moving the reduced cluster 11A in the reduced reference image 7. The total sum of the absolute values of the differences between the pixel values of the obtained pixels and the pixel values of the pixels arranged in the reduced cluster 11A is brute-forced for all the clusters 11A (steps S73 and S74).
[0049]
Then, the reduced motion vector detector 1 obtains the reduced motion vector 12 based on the position of the reduced cluster 11A with the minimum difference value, and supplies the minimum difference value and the reduced motion vector 12 to the search range setting unit 2. (Step S75).
[0050]
FIG. 5 is a flowchart showing the operation of the search range setting device 2. First, the search range setting unit 2 receives the minimum difference value and the reduced motion vector 12 supplied from the reduced motion vector detector 1 (Step S80).
[0051]
Then, the search range setting unit 2 determines whether or not the minimum difference value is smaller than a predetermined threshold value TS1 (step S81). If it is determined that the difference value is not smaller than the predetermined threshold value TS1 (NO in step S81), the search range setting device 2 sets the search range 15 in the reference image 6 to the normal size (step S83).
[0052]
When it is determined that the difference value is smaller than the predetermined threshold value TS1 (YES in step S81), the search range setting unit 2 sets the search range 15 in the reference image 6 to a reduced size smaller than the normal size (step S81). S82).
[0053]
Next, the search range setting unit 2 outputs the search range 15 set to one of the normal size and the reduced size to the motion vector detector 3 (Step S84).
[0054]
After that, the motion vector detector 3 performs a matching process for each coding block 8 constituting the cluster 10 in the coded image 4 within the search range 15 set to one of the normal size and the reduced size, and performs an error. The position within the search range 15 where the value is minimum is determined, and the motion vector of the coding block 8 is determined. The error value is calculated based on the sum of the absolute values of the pixel values, as in the case of obtaining the reduced motion vector 12 described above.
[0055]
Then, the motion vector output unit 3 outputs the motion vector of the coding block 8 obtained by the motion vector detector 3 to the outside of the motion vector detection device 100.
[0056]
As described above, the search range setting unit 2 verifies the correlation for each cluster, and determines the size of the search range and the center point of the search range when obtaining the motion vector of the coded block forming the cluster. When the correlation between the reference block indicated by the reduced motion vector and the encoded block is high, the search range setting unit 2 determines that a correct vector is detected as the reduced motion vector, and the search range set by the motion vector detector 3 to search. Is reduced, thereby reducing the amount of calculation.
[0057]
When determining that the difference value is smaller than the predetermined threshold value TS1, the search range setting unit 2 determines that the clusters are correlated, and sets the search range 15 to a reduced size smaller than the normal size, When it is determined that the difference value is not smaller than the predetermined threshold value TS1, it is determined that there is no correlation between the clusters, and the search range 15 is set to the normal size.
[0058]
As described above, according to the present embodiment, the search range 15 for detecting the motion vector 12A in the reference image 6 is set based on the reduced motion vector 12 detected by the reduced motion vector detector 1. The motion vector 12A is detected in the search range 15 thus set. Therefore, the motion vector 12A can be detected in the narrow search range 15 according to the reduced motion vector 12 detected by the reduced motion vector detector 1. As a result, the amount of calculation for detecting the motion vector 12A can be reduced without deteriorating the coding efficiency.
[0059]
FIG. 6 is a flowchart showing another operation of the search range setting device 2 provided in the motion vector detection device 100 according to the embodiment. First, the search range setting unit 2 receives the minimum difference value and the reduced motion vector 12 supplied from the reduced motion vector detector 1 (Step S90).
[0060]
Then, the search range setting unit 2 determines whether or not the size of the reduced motion vector 12 is larger than a predetermined threshold value TC1 (Step S91). When it is determined that the size of the reduced motion vector 12 is not larger than the predetermined threshold value TC1 (NO in step S91), the search range setting unit 2 determines that the reliability of the reduced motion vector 12 is low, The center point of the search range 15 for searching for the motion vector 12A is set at a position corresponding to the coding block 8 (step S93).
[0061]
When it is determined that the size of the reduced motion vector 12 is larger than the predetermined threshold value TC1 (YES in step S91), the search range setting unit 2 determines that the reliability of the reduced motion vector 12 is high, and The center point of the search range 15 for searching the vector 12A is set to a position corresponding to the end point of the reduced motion vector 12 (Step S92).
[0062]
When the center point of the search range 15 is set at a position corresponding to the coding block 8 (step S93) or when the center point of the search range 15 is set at a position corresponding to the end point of the reduced motion vector 12 (step S92). The search range setting unit 2 supplies the center point of the set search range 15 to the motion vector detector 3 (step S94).
[0063]
When the size of the reduced motion vector 12 is larger than the predetermined threshold value TC1, it can be determined that all the coded blocks in the cluster have largely moved in the same direction. If is not larger than the predetermined threshold value TC1, it can be determined that the coded blocks in the cluster have not moved in the same direction as a whole.
[0064]
Therefore, when the size of the reduced motion vector 12 is not larger than the predetermined threshold value TC1, the center point of the search range of the motion vector in the cluster is set to the position (0, 0) of the coding block. , A correct motion vector can be detected by the motion vector detector 3. Therefore, it is possible to prevent the coding efficiency from deteriorating.
[0065]
FIG. 7 is a flowchart illustrating still another operation of the search range setting device 2 provided in the motion vector detection device 100 according to the embodiment. First, the search range setting unit 2 receives the minimum difference value and the reduced motion vector 12 supplied from the reduced motion vector detector 1 (Step S100).
[0066]
Then, the search range setting unit 2 determines whether the minimum difference value is smaller than a predetermined threshold value TS2 (Step S101). When determining that the difference value is not smaller than the predetermined threshold value TS2 (NO in step S101), the search range setting unit 2 sets the search range 15 in the reference image 6 to the normal size (step S103).
[0067]
When determining that the difference value is smaller than the threshold value TS2 (YES in step S101), the search range setting unit 2 sets the size of the search range 15 in the reference image 6 to zero (step S102).
[0068]
Next, the search range setting unit 2 supplies the search range 15 set to the normal size or the search range 15 set to zero in width to the motion vector detector 3 (step S104).
[0069]
After that, when the width of the search range 15 supplied from the search range setting unit 2 is zero, the motion vector detector 3 does not search for a motion vector, and searches for the reduced motion obtained by the reduced motion vector detector 1. The vector is supplied to the motion vector output unit 55 as the motion vector of the encoded block.
[0070]
When the search range 15 set to the normal size is supplied from the search range setting unit 2, each of the coding blocks 8 constituting the cluster 10 in the coded image 4 within the search range 15 set to the normal size. A matching process is performed to find a position within the search range 15 where the error value is minimum, a motion vector of the encoding block 8 is obtained, and the motion vector is supplied to the motion vector output unit 55.
[0071]
By providing a case in which a search for a motion vector is not performed, the amount of calculation of a motion vector can be reduced.
[0072]
Note that at least two of the above-described search range determination processing shown in FIG. 5, the search range determination processing shown in FIG. 6, and the search range setting processing shown in FIG. 7 may be used in combination. In this case, it is desirable to set the threshold value TS1> the threshold value TS2.
[0073]
Further, in the present embodiment, the sum of the absolute values of the pixel values is used as the difference value of the matching processing in the reduced motion vector detector 1 and the motion vector detector 3, but the square of the pixel value difference is used. The sum of the errors may be used. In particular, by using the sum of the squared errors as the difference value in the matching processing by the reduced motion vector detector 1, the relativeity determination of the search range setting unit 2 becomes more accurate than using the sum of the absolute values.
[0074]
Further, a program for operating the motion vector detecting device 100 according to the present embodiment is recorded on the computer-readable recording medium 18 shown in FIG. The motion vector detection device 100 may be configured to operate based on a program recorded on a computer-readable recording medium 18.
[0075]
【The invention's effect】
As described above, according to the present invention, a motion vector detecting device, a motion vector detecting method, and a computer-readable recording medium capable of reducing the amount of calculation for encoding without deteriorating the encoding efficiency are provided. be able to.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a motion vector detection device according to an embodiment.
FIG. 2 is a schematic diagram for explaining a coded image, a reduced coded image, a reference image, and a reduced reference image for the motion vector detection device according to the embodiment to detect a motion vector.
FIG. 3 is a schematic diagram for explaining a configuration of an encoded image used for detecting a motion vector by the motion vector detection device according to the embodiment;
FIG. 4 is a flowchart for explaining the operation of a reduced motion vector detector provided in the motion vector detection device according to the embodiment;
FIG. 5 is a flowchart showing an operation of a search range setting device provided in the motion vector detection device according to the embodiment;
FIG. 6 is a flowchart showing another operation of the search range setting device provided in the motion vector detection device according to the embodiment.
FIG. 7 is a flowchart showing still another operation of the search range setting device provided in the motion vector detection device according to the embodiment;
FIG. 8 is a schematic diagram for explaining a configuration of an encoded image for detecting a motion vector by a conventional motion vector detection device.
FIG. 9 is a schematic diagram for explaining a configuration of a reference image used by a conventional motion vector detection device to detect a motion vector.
FIG. 10 is a schematic diagram for explaining a relationship between an encoded image and a reduced encoded image for a conventional motion vector detection device to hierarchically detect a motion vector.
FIG. 11 is a schematic diagram for explaining a method in which a conventional motion vector detection device hierarchically detects a motion vector.
[Explanation of symbols]
1 Reduced motion vector detector
2 Search range setting device
3 Motion vector detector
4 Encoded image
5 Reduced encoded image
6 Reference image
7 Reduced reference image
8 coding block
9 Macro block
10 clusters
11 Reduced cluster
12 Reduced motion vector
13 Reduction coding block
14 Motion vector
15 Search range
16 Image input device
17 Reduced image generator
18 Computer-readable recording medium

Claims (23)

符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、前記符号化画像に含まれる符号化ブロックの動きベクトルを検出する動きベクトル検出装置であって、
前記縮小参照画像に含まれる画素データに基づいて前記縮小符号化画像に含まれる縮小符号化ブロックの前記縮小動きベクトルを検出する縮小動きベクトル検出器と、
前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルに基づいて、前記参照画像において前記動きベクトルを検出するための探索範囲を設定する探索範囲設定器と、
前記探索範囲設定器によって設定された前記探索範囲において前記動きベクトルを検出する動きベクトル検出器とを具備することを特徴とする動きベクトル検出装置。
A motion vector detecting a motion vector of a coded block included in the coded image based on a reduced motion vector detected based on a reduced coded image obtained by reducing the coded image and a reduced reference image obtained by reducing the reference image. A detection device,
A reduced motion vector detector that detects the reduced motion vector of the reduced encoded block included in the reduced encoded image based on the pixel data included in the reduced reference image,
A search range setting unit that sets a search range for detecting the motion vector in the reference image based on the reduced motion vector detected by the reduced motion vector detector;
A motion vector detector configured to detect the motion vector in the search range set by the search range setting device.
前記符号化画像と前記参照画像とは、1個以上のマクロブロックを含む領域を示す複数のクラスタにそれぞれ分割されており、
前記縮小符号化画像と前記縮小参照画像とは、前記複数のクラスタをそれぞれ縮小した複数の縮小クラスタにそれぞれ分割されており、
前記縮小動きベクトル検出器は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタとの間の差分値が最小となる前記縮小参照画像の縮小クラスタに基づいて前記縮小符号化ブロックの前記縮小動きベクトルを検出する、請求項1記載の動きベクトル検出装置。
The coded image and the reference image are each divided into a plurality of clusters indicating an area including one or more macroblocks,
The reduced coded image and the reduced reference image are each divided into a plurality of reduced clusters obtained by reducing the plurality of clusters, respectively,
The reduced motion vector detector is configured to calculate the reduced encoded block based on a reduced cluster of the reduced reference image in which a difference value between the reduced encoded image and the reduced cluster including the reduced encoded block is minimized. The motion vector detecting device according to claim 1, wherein the reduced motion vector is detected.
前記差分値は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタに含まれる画素値と前記縮小参照画像の縮小クラスタに含まれる画素値との差の絶対値の総和である、請求項2記載の動きベクトル検出装置。The difference value is a total sum of absolute values of a difference between a pixel value included in a reduced cluster including the reduced encoded block and a pixel value included in a reduced cluster of the reduced reference image in the reduced encoded image. The motion vector detecting device according to claim 2. 前記誤差値は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタに含まれる画素値と前記縮小参照画像の縮小クラスタに含まれる画素値との差の二乗の総和である、請求項2記載の動きベクトル検出装置。The error value is a sum of squares of a difference between a pixel value included in a reduced cluster including the reduced encoded block in the reduced encoded image and a pixel value included in a reduced cluster of the reduced reference image. Item 3. The motion vector detecting device according to Item 2. 前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさと前記最小となる差分値との少なくとも一方に基づいて、前記動きベクトルを検出するための探索範囲を設定する、請求項2記載の動きベクトル検出装置。The search range setting device sets a search range for detecting the motion vector based on at least one of the size of the reduced motion vector detected by the reduced motion vector detector and the minimum difference value. 3. The motion vector detecting device according to claim 2, wherein 前記探索範囲設定器は、前記最小となる差分値が所定の第1閾値よりも小さいときは、前記最小となる差分値が前記所定の第1閾値よりも小さくないときに設定する探索範囲よりも狭い探索範囲を設定する、請求項2記載の動きベクトル検出装置。The search range setting unit is configured such that when the minimum difference value is smaller than a predetermined first threshold value, the search range setting unit sets a search range set when the minimum difference value is not smaller than the predetermined first threshold value. The motion vector detecting device according to claim 2, wherein a narrow search range is set. 前記探索範囲設定器は、前記最小となる差分値が前記所定の第1閾値よりも小さい第2閾値よりもさらに小さいときは、前記探索範囲の広さを零に設定し、
動きベクトル検出器は、前記探索範囲設定器が前記探索範囲の広さを零に設定したときは、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルを前記動きベクトルとして検出する、請求項6記載の動きベクトル検出装置。
The search range setting device, when the minimum difference value is smaller than a second threshold smaller than the predetermined first threshold, sets the width of the search range to zero,
The motion vector detector detects the reduced motion vector detected by the reduced motion vector detector as the motion vector when the search range setting unit sets the width of the search range to zero. 7. The motion vector detection device according to 6.
前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさが所定の閾値よりも大きいときは、前記探索範囲の中心が前記縮小動きベクトルの終点と一致するように前記探索範囲を設定する、請求項1記載の動きベクトル検出装置。The search range setting device is configured such that, when the size of the reduced motion vector detected by the reduced motion vector detector is larger than a predetermined threshold, the center of the search range matches the end point of the reduced motion vector. The motion vector detecting device according to claim 1, wherein the search range is set in the motion vector. 前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさが前記所定の閾値よりも大きくないときは、前記探索範囲の中心が前記符号化ブロックの位置と一致するように前記探索範囲を設定する、請求項8記載の動きベクトル検出装置。The search range setting unit is configured such that when the magnitude of the reduced motion vector detected by the reduced motion vector detector is not larger than the predetermined threshold, the center of the search range matches the position of the encoded block. 9. The motion vector detecting device according to claim 8, wherein the search range is set to perform the search. 前記符号化画像と前記参照画像とを入力して前記動きベクトル検出器へ供給する画像入力器をさらに具備する、請求項1記載の動きベクトル検出装置。The motion vector detecting device according to claim 1, further comprising an image input device that inputs the encoded image and the reference image and supplies the input image and the reference image to the motion vector detector. 前記画像入力器へ入力された前記符号化画像と前記参照画像とをそれぞれ縮小して前記縮小符号化画像と前記縮小参照画像とを生成し、前記縮小動きベクトル検出器へ供給する縮小画像生成器をさらに具備する、請求項10記載の動きベクトル検出装置。A reduced image generator that reduces the encoded image and the reference image input to the image input device to generate the reduced encoded image and the reduced reference image, and supplies the reduced encoded image and the reduced reference image to the reduced motion vector detector The motion vector detecting device according to claim 10, further comprising: 符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、前記前記符号化画像に含まれる符号化ブロックの動きベクトルを検出する動きベクトル検出方法であって、
前記縮小参照画像に含まれる画素データに基づいて前記縮小符号化画像に含まれる縮小符号化ブロックの前記縮小動きベクトルを検出する縮小動きベクトル検出ステップと、
前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルに基づいて、前記参照画像において前記動きベクトルを検出するための探索範囲を設定する探索範囲設定ステップと、
前記探索範囲設定ステップによって設定された前記探索範囲において前記動きベクトルを検出する動きベクトル検出ステップとを包含することを特徴とする動きベクトル検出方法。
A motion detecting a motion vector of a coded block included in the coded image based on a reduced motion vector detected based on a reduced coded image obtained by reducing the coded image and a reduced reference image obtained by reducing the reference image. A vector detection method,
A reduced motion vector detecting step of detecting the reduced motion vector of the reduced coded block included in the reduced coded image based on the pixel data included in the reduced reference image,
A search range setting step of setting a search range for detecting the motion vector in the reference image based on the reduced motion vector detected by the reduced motion vector detection step;
A motion vector detecting step of detecting the motion vector in the search range set in the search range setting step.
前記符号化画像と前記参照画像とは、1個以上のマクロブロックを含む領域を示す複数のクラスタにそれぞれ分割されており、
前記縮小符号化画像と前記縮小参照画像とは、前記複数のクラスタをそれぞれ縮小した複数の縮小クラスタにそれぞれ分割されており、
前記縮小動きベクトル検出ステップは、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタとの間の差分値が最小となる前記縮小参照画像の縮小クラスタに基づいて前記縮小符号化ブロックの前記縮小動きベクトルを検出する、請求項12記載の動きベクトル検出方法。
The coded image and the reference image are each divided into a plurality of clusters indicating an area including one or more macroblocks,
The reduced coded image and the reduced reference image are each divided into a plurality of reduced clusters obtained by reducing the plurality of clusters, respectively,
The reduced motion vector detecting step includes the step of detecting the reduced coded block based on a reduced cluster of the reduced reference image in which a difference value between the reduced coded image and the reduced cluster including the reduced coded block is minimized. 13. The motion vector detecting method according to claim 12, wherein the reduced motion vector is detected.
前記差分値は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタに含まれる画素値と前記縮小参照画像の縮小クラスタに含まれる画素値の絶対値との差の絶対値の総和である、請求項13記載の動きベクトル検出方法。The difference value is a sum of absolute values of a difference between a pixel value included in a reduced cluster including the reduced coded block in the reduced coded image and an absolute value of a pixel value included in a reduced cluster of the reduced reference image. 14. The motion vector detection method according to claim 13, wherein 前記差分値は、前記縮小符号化画像において前記縮小符号化ブロックが含まれる縮小クラスタに含まれる画素値と前記縮小参照画像の縮小クラスタに含まれる画素値との差の二乗の総和である、請求項13記載の動きベクトル検出方法。The difference value is a sum of squares of a difference between a pixel value included in a reduced cluster including the reduced coded block in the reduced coded image and a pixel value included in a reduced cluster of the reduced reference image. Item 14. The motion vector detecting method according to Item 13. 前記探索範囲設定器は、前記縮小動きベクトル検出器によって検出された前記縮小動きベクトルの大きさと前記最小となる差分値との少なくとも一方に基づいて、前記動きベクトルを検出するための探索範囲を設定する、請求項13記載の動きベクトル検出方法。The search range setting device sets a search range for detecting the motion vector based on at least one of the size of the reduced motion vector detected by the reduced motion vector detector and the minimum difference value. The motion vector detection method according to claim 13, wherein 前記探索範囲設定ステップは、前記最小となる差分値が所定の第1閾値よりも小さいときは、前記最小となる差分値が前記所定の第1閾値よりも小さくないときに設定する探索範囲よりも狭い探索範囲を設定する、請求項13記載の動きベクトル検出方法。The search range setting step includes: when the minimum difference value is smaller than a predetermined first threshold value, the search range setting step is performed when the minimum difference value is not smaller than the predetermined first threshold value. 14. The motion vector detection method according to claim 13, wherein a narrow search range is set. 前記探索範囲設定ステップは、前記最小となる誤差値が前記所定の第1閾値よりも小さい第2閾値よりもさらに小さいときは、前記探索範囲の広さを零に設定し、
動きベクトル検出ステップは、前記探索範囲設定ステップが前記探索範囲の広さを零に設定したときは、前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルを前記動きベクトルとして検出する、請求項17記載の動きベクトル検出方法。
The search range setting step, when the minimum error value is further smaller than a second threshold smaller than the predetermined first threshold, set the width of the search range to zero,
The motion vector detecting step detects the reduced motion vector detected by the reduced motion vector detecting step as the motion vector when the search range setting step sets the width of the search range to zero. 18. The motion vector detection method according to item 17.
前記探索範囲設定ステップは、前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルの大きさが所定の閾値よりも大きいときは、前記探索範囲の中心が前記縮小動きベクトルの終点と一致するように前記探索範囲を設定する、請求項12記載の動きベクトル検出方法。The search range setting step is such that, when the size of the reduced motion vector detected by the reduced motion vector detection step is larger than a predetermined threshold, the center of the search range matches the end point of the reduced motion vector. 13. The motion vector detection method according to claim 12, wherein the search range is set in the motion vector. 前記探索範囲設定ステップは、前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルの大きさが前記所定の閾値よりも大きくないときは、前記探索範囲の中心が前記符号化ブロックの位置と一致するように前記探索範囲を設定する、請求項19記載の動きベクトル検出方法。The search range setting step is such that, when the size of the reduced motion vector detected by the reduced motion vector detection step is not larger than the predetermined threshold, the center of the search range matches the position of the encoded block. 20. The motion vector detection method according to claim 19, wherein the search range is set to perform the search. 前記符号化画像と前記参照画像とを入力して前記動きベクトル検出器へ供給する画像入力ステップをさらに包含する、請求項12記載の動きベクトル検出方法。13. The motion vector detection method according to claim 12, further comprising an image input step of inputting the encoded image and the reference image and supplying the input image and the reference image to the motion vector detector. 前記画像入力ステップにおいて入力された前記符号化画像と前記参照画像とをそれぞれ縮小して前記縮小符号化画像と前記縮小参照画像とを生成し、前記縮小動きベクトル検出ステップへ供給する縮小画像生成ステップをさらに包含する、請求項21記載の動きベクトル検出方法。A reduced image generating step of reducing the coded image and the reference image input in the image input step to generate the reduced coded image and the reduced reference image, respectively, and supplying the reduced coded image and the reduced reference image to the reduced motion vector detecting step 22. The motion vector detection method according to claim 21, further comprising: コンピュータに、符号化画像を縮小した縮小符号化画像と参照画像を縮小した縮小参照画像とに基づいて検出した縮小動きベクトルに基づいて、前記前記符号化画像に含まれる符号化ブロックの動きベクトルを検出するために、前記縮小参照画像に含まれる画素データに基づいて前記縮小符号化画像に含まれる縮小符号化ブロックの前記縮小動きベクトルを検出する縮小動きベクトル検出ステップと、前記縮小動きベクトル検出ステップによって検出された前記縮小動きベクトルに基づいて、前記参照画像において前記動きベクトルを検出するための探索範囲を設定する探索範囲設定ステップと、前記探索範囲設定ステップによって設定された前記探索範囲において前記動きベクトルを検出する動きベクトル検出ステップとを実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。Based on the reduced motion vector detected based on the reduced coded image obtained by reducing the coded image and the reduced reference image obtained by reducing the reference image, the computer calculates the motion vector of the coded block included in the coded image. Detecting the reduced motion vector of the reduced coded block included in the reduced coded image based on the pixel data included in the reduced reference image, and detecting the reduced motion vector. A search range setting step for setting a search range for detecting the motion vector in the reference image based on the reduced motion vector detected in the reference image, and the motion in the search range set by the search range setting step. To perform the motion vector detection step to detect the vector A computer-readable recording medium a program.
JP2002358644A 2002-12-10 2002-12-10 Motion vector detecting device, its method and recording medium readable by computer Withdrawn JP2004193906A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002358644A JP2004193906A (en) 2002-12-10 2002-12-10 Motion vector detecting device, its method and recording medium readable by computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002358644A JP2004193906A (en) 2002-12-10 2002-12-10 Motion vector detecting device, its method and recording medium readable by computer

Publications (1)

Publication Number Publication Date
JP2004193906A true JP2004193906A (en) 2004-07-08

Family

ID=32758308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002358644A Withdrawn JP2004193906A (en) 2002-12-10 2002-12-10 Motion vector detecting device, its method and recording medium readable by computer

Country Status (1)

Country Link
JP (1) JP2004193906A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011182356A (en) * 2010-03-04 2011-09-15 Fujitsu Ltd Motion vector detecting apparatus
US8098898B2 (en) 2006-10-27 2012-01-17 Panasonic Corporation Motion detection device, MOS (metal-oxide semiconductor) integrated circuit, and video system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8098898B2 (en) 2006-10-27 2012-01-17 Panasonic Corporation Motion detection device, MOS (metal-oxide semiconductor) integrated circuit, and video system
JP2011182356A (en) * 2010-03-04 2011-09-15 Fujitsu Ltd Motion vector detecting apparatus

Similar Documents

Publication Publication Date Title
US7444026B2 (en) Image processing apparatus and method of motion vector detection in a moving picture, and recording medium used therewith
US9264735B2 (en) Image encoding apparatus and method for allowing motion vector detection
US6798977B2 (en) Image data encoding and decoding using plural different encoding circuits
JP3895431B2 (en) Video information encoding method using object boundary block merge / division
JP3413720B2 (en) Image encoding method and apparatus, and image decoding method and apparatus
US8009923B2 (en) Method and system for motion estimation with multiple vector candidates
JP4574090B2 (en) Movie data converter and movie data conversion program
US20040001544A1 (en) Motion estimation/compensation for screen capture video
JPH09121358A (en) Picture coding/decoding device and its method
JP4226172B2 (en) Video compression encoding apparatus and decoding apparatus using adaptive conversion method and method thereof
KR20010071705A (en) Motion estimation for digital video
JPH11196420A (en) Mode signal coding device
JPH1155672A (en) Dynamic image coder, dynamic image decoder, dynamic image coding method and dynamic image decoding method
JPH09191459A (en) Method and device for coding video data flow of video sequence consisting of image block
JP2004023444A (en) Moving picture encoding apparatus, and moving picture recording and reproducing apparatus
WO2006006489A1 (en) Motion detection device
JP2008219141A (en) Motion vector detector, image encoder and imaging apparatus employing the same
JP3947107B2 (en) Video decoding method and corresponding decoder
US6362753B1 (en) Video data encoder and method of encoding video data
US20100027621A1 (en) Apparatus, method and computer program product for moving image generation
JP2004193906A (en) Motion vector detecting device, its method and recording medium readable by computer
JPH0879767A (en) Moving vector coding and decoding system
JP2009081622A (en) Moving image compression encoder
JP2000069484A (en) Method for calculating motion vector and storage medium recording motion vector calculation program
JPH11346368A (en) Image processing method, image processing unit and data storage medium

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: 20060307