JP4935771B2 - Motion vector detection apparatus and moving picture encoding apparatus - Google Patents

Motion vector detection apparatus and moving picture encoding apparatus Download PDF

Info

Publication number
JP4935771B2
JP4935771B2 JP2008168839A JP2008168839A JP4935771B2 JP 4935771 B2 JP4935771 B2 JP 4935771B2 JP 2008168839 A JP2008168839 A JP 2008168839A JP 2008168839 A JP2008168839 A JP 2008168839A JP 4935771 B2 JP4935771 B2 JP 4935771B2
Authority
JP
Japan
Prior art keywords
motion vector
partial search
search
vector
partial
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.)
Expired - Fee Related
Application number
JP2008168839A
Other languages
Japanese (ja)
Other versions
JP2010011150A (en
Inventor
信明 本山
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2008168839A priority Critical patent/JP4935771B2/en
Publication of JP2010011150A publication Critical patent/JP2010011150A/en
Application granted granted Critical
Publication of JP4935771B2 publication Critical patent/JP4935771B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

この発明は、動きベクトル検出装置および動画像符号化装置に関するものである。   The present invention relates to a motion vector detection device and a moving image encoding device.

デジタル動画像の情報圧縮を行う動画像符号化は、膨大なデジタル動画像データを狭帯域の通信回線で伝送する必要性から発展をはじめ、現在ではMPEG、H.264をはじめ種々の動画像の符号化方法が提案されている。動画像の符号化は、予測・変換処理を行った後、量子化レベルの縮退などを行って信号に含まれる時間的・空間的な冗長度を除去し、さらに冗長度が除去された符号化情報の長さをできるだけ短くするために、エントロピー符号化を行って圧縮する。一般に、動画像信号には空間方向、時間方向ともに近傍画素間に高い相関があるため、この相関を利用して画素間で予測を行い、その差分情報だけを符号化すべき情報量として削減するとともに、エントロピー符号化して送ることで効率的に圧縮できる。このような相関を利用した予測には、符号化済みの画像を用いて時間方向の予測を行うフレーム間予測と、同一画像上の近傍画素を用いて予測を行うフレーム内予測がある。   Moving picture coding for compressing information of digital moving pictures has been developed from the necessity of transmitting a huge amount of digital moving picture data over a narrow-band communication line. Various moving image encoding methods such as H.264 have been proposed. Video coding is performed by performing prediction / conversion processing, dequantizing the quantization level, etc. to remove temporal and spatial redundancy contained in the signal, and further removing redundancy In order to make the length of information as short as possible, it is compressed by entropy coding. In general, since a moving image signal has a high correlation between neighboring pixels in both spatial and temporal directions, prediction is performed between pixels using this correlation, and only the difference information is reduced as the amount of information to be encoded. It is possible to compress efficiently by entropy encoding and sending. Prediction using such correlation includes inter-frame prediction that performs prediction in the temporal direction using an encoded image and intra-frame prediction that performs prediction using neighboring pixels on the same image.

動画像符号化処理において、フレーム間予測を行う際は、適切な動きベクトルを求められるか否かが、画質に大きな影響を与える一因となる。一方、このフレーム間予測において、より適切な動きベクトルを求める処理が、動画像符号化の中でも最も演算量を必要とする処理である。そのため、演算量を削減する方式が数多く提案されており、ハードウェアで処理する場合は、特に回路規模の削減や消費電力の削減が共通した課題として挙げられる。   When performing inter-frame prediction in the moving image encoding process, whether or not an appropriate motion vector is obtained is one factor that greatly affects image quality. On the other hand, in this inter-frame prediction, a process for obtaining a more appropriate motion vector is a process that requires the most amount of calculation in moving picture coding. For this reason, many methods for reducing the amount of calculation have been proposed. In the case of processing with hardware, reduction of circuit scale and reduction of power consumption are particularly common issues.

符号化処理時間が限られるリアルタイムの条件下で動画像を符号化処理するためには、1クロックに1探索点の評価値(相関値)を算出し、符号化済みの画像である参照画像を垂直方向にシフトする動きベクトル検出器を適用し、例えば次のような方法をとる。一つの方法として、動きベクトル検出器の動作周波数を上げることで、同一期間内に動作クロックを増やして処理可能な探索点数を増やす方法がある。また、別の方法として、動きベクトル検出器の動作クロックは変えずに、同一期間に処理可能な探索点数以下となるように探索範囲を垂直方向に均等に分割し、分割数と同数の動きベクトル検出器を備えた構成を上下並列に動作させる方法がある。例えば、ベクトル探索処理の能力が600探索点の動きベクトル検出器を適用して、垂直方向に800探索点の探索を行いたい場合、垂直方向の探索範囲を400探索点ずつ探索するように均等分割し、動きベクトル検出器を水平方向に必要な分だけ備えた構成を上半分、下半分を対象として2つ並列動作させる参照画像を均等に割り当てる構成が提案されている(例えば、特許文献1)。   In order to encode a moving image under real-time conditions where the encoding processing time is limited, an evaluation value (correlation value) of one search point is calculated in one clock, and a reference image which is an encoded image is calculated. A motion vector detector that shifts in the vertical direction is applied, and for example, the following method is adopted. One method is to increase the number of search points that can be processed by increasing the operating clock within the same period by increasing the operating frequency of the motion vector detector. Another method is to divide the search range evenly in the vertical direction so that the number of search points that can be processed in the same period does not change without changing the operation clock of the motion vector detector. There is a method of operating a configuration including a detector in parallel in the vertical direction. For example, when a motion vector detector having a vector search processing capability of 600 search points is applied to search for 800 search points in the vertical direction, the search range in the vertical direction is equally divided so as to search 400 search points at a time. However, a configuration has been proposed in which two reference images that are operated in parallel with the upper half and the lower half as targets are allocated evenly to a configuration having only a necessary number of motion vector detectors in the horizontal direction (for example, Patent Document 1). .

特開平5−14870号公報JP-A-5-14870

このように、動画像符号化処理において、多くの演算量を必要とするフレーム間予測は、例えば上記特許文献1のように、動きベクトル検出器を並列動作させることで対応すれば、600クロックの演算期間に対して400クロックで探索が完了するため、要求された処理性能は満たしているが、200クロック分の演算期間が余ってしまい、装置の小型化という面で効率的ではないという問題点がある。一方、動作周波数を上げることで、同一期間内に処理可能な探索点数を増やすことで対応すれば、回路規模は増えないが、消費電力が増すという問題点がある。   As described above, in the video encoding process, inter-frame prediction that requires a large amount of calculation is performed by operating the motion vector detector in parallel as in, for example, Patent Document 1 described above. Since the search is completed in 400 clocks for the calculation period, the requested processing performance is satisfied, but the calculation period for 200 clocks is left, which is not efficient in terms of downsizing the apparatus. There is. On the other hand, increasing the operating frequency to increase the number of search points that can be processed within the same period does not increase the circuit scale but increases the power consumption.

この発明は上記のような問題点を解決するためになされたもので、動きベクトル検出器がすべて同じ並列度の構成のものを並列動作させるのではなく、動きベクトル検出器の並列度と制御が異なる構成のものを一部に設けて並列動作させることで、回路規模の増大を最小限に抑えるとともに、動作周波数はそのままでも要求された処理性能を得ることで、装置の小型化や低消費電力化を実現することを目的とする。   The present invention has been made to solve the above-mentioned problems. The motion vector detectors are not all operated in parallel with the same parallel degree configuration, but the parallel degree and control of the motion vector detectors are not controlled. By providing parts of different configurations and operating them in parallel, the increase in circuit scale is minimized, and the required processing performance is achieved even with the operating frequency unchanged, resulting in smaller equipment and lower power consumption. It aims at realizing.

この発明に係る動きベクトル検出装置は、符号化画像における符号化ブロックのデータに対して、参照画像に設けられたベクトル探索領域における複数のベクトル探索点に基づくそれぞれの参照ブロックのデータの評価値に基づいて判定された参照ブロックに対応する動きベクトルを出力する動きベクトル検出装置において、符号化画像における符号化ブロックのデータを抽出して出力する符号化画像メモリ制御部と、参照画像に設けられたベクトル探索領域を所定数のベクトル探索点を含む大きさの複数の部分探索領域と前記所定数未満のベクトル探索点を含む大きさの複数の部分探索領域に分割する探索領域分割部と、この探索領域分割部が分割した参照画像における前記所定数のベクトル探索点を含む大きさの複数の部分探索領域を第1の部分探索領域群とし、この第1の部分探索領域群の各部分探索領域が含むベクトル探索点に基づく参照ブロックのデータを前記参照画像から抽出して出力する第1の部分探索領域群メモリ制御部と、前記探索領域分割部が分割した参照画像における前記所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を、ベクトル探索点の数の合計が前記所定数を超えないように組み合わせて複数の部分探索領域を再編成する部分探索領域再編成部と、この部分探索領域再編成部が前記所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を組み合わせて再編成した複数の部分探索領域を第2の部分探索領域群とし、この第2の部分探索領域群の各部分探索領域が含むベクトル探索点に基づく参照ブロックのデータを前記参照画像から抽出して出力する第2の部分探索領域群メモリ制御部と、前記第1の部分探索領域群メモリ制御部および前記第2の部分探索領域群メモリ制御部が出力する各部分探索領域に含まれるベクトル探索点に基づく参照ブロックのデータについて、前記符号化画像メモリ制御部が出力する符号化ブロックのデータに対する相関を示す評価値と動きベクトルの組を算出する、前記第1の部分探索領域群メモリ制御部および前記第2の部分探索領域群メモリ制御部の部分探索領域ごとに割り当てる複数の動きベクトル検出器を有する動きベクトル検出部と、この動きベクトル検出部の各動きベクトル検出器が出力する評価値によって示される相関の高さに基づいて、前記参照画像に設けられた探索領域が含む各ベクトル探索点における参照ブロックの評価値を判定して、最終判定された評価値に対応する動きベクトルを出力する動きベクトル判定部と、前記符号化画像メモリ制御部と前記探索領域分割部と前記第1の部分探索領域群メモリ制御部と前記第2の部分探索領域群メモリ制御部と前記動きベクトル検出部と動きベクトル判定部の処理を制御する動きベクトル検出制御部とを備えたとを備えたものである。   The motion vector detection device according to the present invention uses the evaluation value of each reference block data based on a plurality of vector search points in a vector search region provided in the reference image, for the encoded block data in the encoded image. In a motion vector detection device that outputs a motion vector corresponding to a reference block determined based on an encoded image memory control unit that extracts and outputs data of an encoded block in an encoded image, and provided in the reference image A search area dividing unit for dividing a vector search area into a plurality of partial search areas having a size including a predetermined number of vector search points and a plurality of partial search areas having a size including a vector search point less than the predetermined number; A plurality of partial search areas having a size including the predetermined number of vector search points in the reference image divided by the area dividing unit First partial search region group memory control for extracting and outputting reference block data based on vector search points included in each partial search region of the first partial search region group. And a plurality of partial search areas having a size including less than the predetermined number of vector search points in the reference image divided by the search area dividing unit so that the total number of vector search points does not exceed the predetermined number Reorganizing a partial search area reorganization unit that reorganizes a plurality of partial search areas in combination and a plurality of partial search areas having a size including the vector search points less than the predetermined number by the partial search area reorganization unit The plurality of partial search areas are set as the second partial search area group, and the reference block data based on the vector search point included in each partial search area of the second partial search area group is referred to. A second partial search region group memory control unit that extracts and outputs from the image; and each partial search region that is output by the first partial search region group memory control unit and the second partial search region group memory control unit. The first partial search area for calculating a set of an evaluation value and a motion vector indicating a correlation with the encoded block data output from the encoded image memory control unit for the reference block data based on the included vector search point A motion vector detector having a plurality of motion vector detectors assigned to each of the partial search regions of the group memory control unit and the second partial search region group memory control unit, and each motion vector detector of the motion vector detection unit outputs The reference block at each vector search point included in the search area provided in the reference image is based on the correlation level indicated by the evaluation value to be performed. A motion vector determination unit that determines an evaluation value of the image and outputs a motion vector corresponding to the finally determined evaluation value, the encoded image memory control unit, the search region dividing unit, and the first partial search region A group memory control unit, a second partial search region group memory control unit, a motion vector detection control unit that controls processing of the motion vector detection unit, and a motion vector determination unit.

また、この発明に係る動画像符号化装置は、上記の動きベクトル検出装置を備え、現符号化画像より以前に符号化された符号化画像の符号データを復号した復号画像を参照画像として、この参照画像と前記現符号化画像に対して前記ベクトル検出装置が出力した動きベクトルに基づいて予測画像を生成し、この予測画像と前記現符号化画像との差分を符号化するものである。   A moving image encoding apparatus according to the present invention includes the above-described motion vector detection device, and uses a decoded image obtained by decoding encoded data of an encoded image encoded before the current encoded image as a reference image. A prediction image is generated based on a motion vector output from the vector detection apparatus for a reference image and the current encoded image, and a difference between the predicted image and the current encoded image is encoded.

この発明によれば、参照画像のベクトル探索領域を部分ベクトル探索領域に分割し、所定数の探索点を含む部分ベクトル探索領域には、動きベクトル検出器を並列に動作させ、所定数未満の探索点を含む部分ベクトル探索領域は、組み合わせて所定数以下の探索点を含む部分ベクトル探索領域に再編成する制御をして別途並列に動作させることで、装置の小型化や低消費電力化を実現することができる効果がある。   According to the present invention, the vector search area of the reference image is divided into partial vector search areas, and the motion vector detectors are operated in parallel in the partial vector search area including a predetermined number of search points, and a search less than the predetermined number is performed. Partial vector search areas containing points are combined and reorganized into partial vector search areas containing a predetermined number of search points or less, and are operated separately in parallel to achieve downsizing and low power consumption of the device. There is an effect that can be done.

実施の形態1.
この発明の実施形態1では、参照領域に設定されたベクトル探索領域を部分ベクトル探索領域に分割し、後述する所定数未満のベクトル探索点を含む部分探索領域を再編成した第2の部分探索領域群の部分探索領域が、隣接しない部分探索領域の集合である場合について説明する。
Embodiment 1 FIG.
In Embodiment 1 of the present invention, the second partial search area obtained by dividing the vector search area set as the reference area into partial vector search areas and reorganizing the partial search areas including less than a predetermined number of vector search points described later. A case will be described in which a group partial search region is a set of non-adjacent partial search regions.

図1は、この発明の実施形態1における動きベクトル検出装置の構成の一例を示すブロック図である。図において、動きベクトル検出装置10は、符号化画像における符号化ブロックのデータに対して、参照画像に設けられたベクトル探索領域における複数のベクトル探索点に基づくそれぞれの参照ブロックのデータの評価値に基づいて判定された参照ブロックに対応する動きベクトルを出力するものである。符号化画像メモリ11は、符号化画像のデータを蓄積している。参照画像メモリ12は、参照画像のデータを蓄積している。   FIG. 1 is a block diagram showing an example of the configuration of a motion vector detection apparatus according to Embodiment 1 of the present invention. In the figure, the motion vector detection device 10 uses the evaluation value of each reference block data based on a plurality of vector search points in the vector search region provided in the reference image, for the encoded block data in the encoded image. A motion vector corresponding to the reference block determined based on the output is output. The encoded image memory 11 stores encoded image data. The reference image memory 12 stores reference image data.

動きベクトル検出装置10は、次のように構成される。符号化画像メモリ制御部101は、符号化画像メモリ11に蓄積された符号化画像における符号化ブロックのデータを抽出して出力する。参照画像メモリ制御部102は、参照画像メモリ12に蓄積された参照画像における参照ブロックのデータを抽出して出力する。より具体的には、参照画像メモリ制御部102は、次の探索領域分割部1021、第1の部分探索領域群メモリ制御部1022、部分探索領域再編成部1023、第2の部分探索領域群メモリ制御部1024から構成される。探索領域分割部1021は、参照画像に設けられたベクトル探索領域を所定数のベクトル探索点を含む大きさの複数の部分探索領域と所定数未満のベクトル探索点を含む大きさの複数の部分探索領域に分割する。第1の部分探索領域群メモリ制御部1022は、探索領域分割部1021が分割した参照画像における所定数のベクトル探索点を含む大きさの複数の部分探索領域を第1の部分探索領域群とし、第1の部分探索領域群の各部分探索領域が含むベクトル探索点に基づく参照ブロックのデータを参照画像から抽出して出力する。部分探索領域再編成部1023は、探索領域分割部1021が分割した参照画像における所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を、ベクトル探索点の数の合計が所定数を超えないように組み合わせて複数の部分探索領域を再編成する。第2の部分探索領域群メモリ制御部1024は、部分探索領域再編成部1023が所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を組み合わせて再編成した複数の部分探索領域を第2の部分探索領域群とし、第2の部分探索領域群の各部分探索領域が含むベクトル探索点に基づく参照ブロックのデータを参照画像から抽出して出力する。動きベクトル検出部103は、第1の部分探索領域群メモリ制御部1022および第2の部分探索領域群メモリ制御部1024の部分探索領域ごとに割り当てる複数の動きベクトル検出器1031を有し、第1の部分探索領域群メモリ制御部1022および第2の部分探索領域群メモリ制御部1024が出力する各部分探索領域に含まれるベクトル探索点に基づく参照ブロックのデータについて、符号化画像メモリ制御部101が出力する符号化ブロックのデータに対する相関を示す評価値と動きベクトルの組を算出する。動きベクトル判定部104は、動きベクトル検出部103の各動きベクトル検出器1031が出力する評価値によって示される相関の高さに基づいて、参照画像に設けられたベクトル探索領域が含む各ベクトル探索点における参照ブロックの評価値を判定して、最終判定された評価値に対応する動きベクトルを出力する。動きベクトル検出制御部105は、符号化画像メモリ制御部101と探索領域分割部1021と第1の部分探索領域群メモリ制御部1022と第2の部分探索領域群メモリ制御部1024と動きベクトル検出部103と動きベクトル判定部104の処理を制御する。   The motion vector detection device 10 is configured as follows. The encoded image memory control unit 101 extracts and outputs encoded block data in the encoded image stored in the encoded image memory 11. The reference image memory control unit 102 extracts and outputs the reference block data in the reference image stored in the reference image memory 12. More specifically, the reference image memory control unit 102 includes a next search region dividing unit 1021, a first partial search region group memory control unit 1022, a partial search region reorganization unit 1023, and a second partial search region group memory. It is comprised from the control part 1024. The search area dividing unit 1021 divides a vector search area provided in the reference image into a plurality of partial search areas having a size including a predetermined number of vector search points and a plurality of partial searches having a size including less than a predetermined number of vector search points. Divide into areas. The first partial search region group memory control unit 1022 sets a plurality of partial search regions having a size including a predetermined number of vector search points in the reference image divided by the search region dividing unit 1021 as a first partial search region group, Reference block data based on the vector search points included in each partial search region of the first partial search region group is extracted from the reference image and output. The partial search area reorganization unit 1023 has a plurality of partial search areas having a size including less than a predetermined number of vector search points in the reference image divided by the search area dividing unit 1021, and the total number of vector search points is a predetermined number. A plurality of partial search areas are rearranged in combination so as not to exceed. The second partial search area group memory control unit 1024 includes a plurality of partial search areas that are reorganized by the partial search area reorganization unit 1023 by combining a plurality of partial search areas having a size including vector search points less than a predetermined number. Reference block data based on the vector search point included in each partial search region of the second partial search region group is extracted from the reference image and output as the second partial search region group. The motion vector detection unit 103 includes a plurality of motion vector detectors 1031 assigned to the partial search regions of the first partial search region group memory control unit 1022 and the second partial search region group memory control unit 1024. For the reference block data based on the vector search points included in each partial search region output from the partial search region group memory control unit 1022 and the second partial search region group memory control unit 1024, the encoded image memory control unit 101 A set of an evaluation value and a motion vector indicating a correlation with the data of the encoded block to be output is calculated. The motion vector determination unit 104 determines each vector search point included in the vector search region provided in the reference image based on the correlation level indicated by the evaluation value output by each motion vector detector 1031 of the motion vector detection unit 103. The evaluation value of the reference block at is determined, and a motion vector corresponding to the finally determined evaluation value is output. The motion vector detection control unit 105 includes an encoded image memory control unit 101, a search region dividing unit 1021, a first partial search region group memory control unit 1022, a second partial search region group memory control unit 1024, and a motion vector detection unit. 103 and the processing of the motion vector determination unit 104 are controlled.

なお、図1中の動きベクトル検出部103には、動きベクトル検出器1031として#1A〜#4Aおよび#1B、#2Bを一例として記載したが、第1の部分探索領域群メモリ制御部1022の第1の部分探索領域群の部分探索領域数(N1)と、第2の部分探索領域群メモリ制御部1024の第2の部分探索領域群の部分探索領域数(N2)、すなわち部分探索領域再編成部が所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を1つまたは複数まとめて再編成した後の部分探索領域数(N2)を合わせた数(N1+N2)の動きベクトル検出器1031が少なくとも設けられるものとする。   In the motion vector detection unit 103 in FIG. 1, # 1A to # 4A, # 1B, and # 2B are described as examples of the motion vector detector 1031, but the first partial search region group memory control unit 1022 includes The number of partial search areas (N1) of the first partial search area group and the number of partial search areas (N2) of the second partial search area group of the second partial search area group memory control unit 1024, that is, the partial search area re- Motion vector detection of the number (N1 + N2) of the combined number of partial search areas (N2) after reorganizing one or a plurality of partial search areas having a size including vector search points less than a predetermined number. It is assumed that at least a vessel 1031 is provided.

また、第1の部分探索領域群の部分探索領域と第2の部分探索領域群の部分探索領域に割り当てられる各動きベクトル検出器1031は、ともに共通仕様の入出力データを扱うので、必ずしも第1、第2の部分探索領域群ごとに独立に用意することなく、一括して用意しておき、第1、第2の部分探索領域群の部分探索領域にそれぞれ必要数割り当てるようにすることができる。動きベクトル検出器1031の数は、参照画像に設けられたベクトル探索領域の大きさ、ベクトル探索点数、ベクトル探索点の密度、ベクトル探索領域の分割方法(形状など)および動きベクトル検出器1031のベクトル探索能力、すなわち所定時間に処理できるベクトル探索点数などにより見積もることができる。   In addition, since each motion vector detector 1031 assigned to the partial search area of the first partial search area group and the partial search area of the second partial search area group handles both the input / output data of the common specification, it is not necessarily the first. Instead of preparing each second partial search region group independently, it is possible to prepare them in a lump and assign the required number to the partial search regions of the first and second partial search region groups. . The number of motion vector detectors 1031 includes the size of the vector search area provided in the reference image, the number of vector search points, the density of vector search points, the division method (shape, etc.) of the vector search areas, and the vectors of the motion vector detector 1031. It can be estimated by the search capability, that is, the number of vector search points that can be processed in a predetermined time.

この発明の動きベクトル検出装置10の動作を説明する前に、参照画像に設けられたベクトル探索領域を複数の部分探索領域に分割する処理について説明する。参照画像に設けられたベクトル探索領域を複数の部分探索領域に分割する処理は、参照画像メモリ制御部102で行われる。図2は、参照画像メモリ制御部102がベクトル探索領域を分割して複数の部分探索領域を構成する一例を示す説明図である。ここでは、後段の動きベクトル検出部103において、ここで説明する部分探索領域のベクトル探索を行う各動きベクトル検出器1031の単位時間のベクトル探索点(以下、単に探索点ともいう。)の処理能力を600探索点(所定数)とすれば、部分探索領域が含むベクトル探索点数を600探索点以下に分割しておくことで、単位時間内に各部分探索領域のベクトル探索を終了できる。なお、部分探索領域が含むすべての画素が、参照ブロックの基準とするベクトル探索点であるとは限らない。   Before describing the operation of the motion vector detection device 10 of the present invention, a process for dividing a vector search area provided in a reference image into a plurality of partial search areas will be described. The reference image memory control unit 102 performs processing for dividing the vector search region provided in the reference image into a plurality of partial search regions. FIG. 2 is an explanatory diagram illustrating an example in which the reference image memory control unit 102 divides a vector search region to configure a plurality of partial search regions. Here, in the subsequent motion vector detection unit 103, the processing capability of a unit time vector search point (hereinafter also simply referred to as a search point) of each motion vector detector 1031 that performs a vector search of the partial search region described here. Is 600 search points (predetermined number), by dividing the number of vector search points included in the partial search region into 600 search points or less, the vector search of each partial search region can be completed within a unit time. Note that not all pixels included in the partial search region are vector search points that are used as the reference block reference.

参照画像メモリ制御部102において、探索領域分割部1021は、ベクトル探索領域を所定数、すなわち600探索点を含む大きさの部分探索領域に分割するが、最初にベクトル探索領域を、800探索点を含む大きさの部分探索領域に短冊状に分割し、次に800探索点を含む大きさの各部分探索領域を、600探索点を含む大きさの部分探索領域とその残りの200探索点を含む大きさの部分探索領域に分割する2段階で行うことができる。特に、各分割段階で分割対象のベクトル探索領域または部分探索領域をそれぞれ同一形状・大きさの部分探索領域に分割することで、効率的に分割できる。この時点で、ベクトル探索領域は、12個の600探索点を含む同一形状・大きさの部分探索領域、12個の200探索点を含む同一形状・大きさの部分探索領域に分割される。この12個の600探索点を含む大きさの部分探索領域(第1の部分探索領域群)のそれぞれに動きベクトル検出器1031(#1A〜#12A)を割り当てて並列にベクトル探索を行う。   In the reference image memory control unit 102, the search region dividing unit 1021 divides the vector search region into a predetermined number, that is, a partial search region having a size including 600 search points. First, the vector search region is divided into 800 search points. Each of the partial search areas having a size including 800 search points includes a partial search area having a size including 600 search points and the remaining 200 search points. This can be done in two stages, which are divided into partial search areas of size. In particular, it is possible to efficiently divide the vector search area or partial search area to be divided into partial search areas having the same shape and size at each division stage. At this point, the vector search area is divided into a partial search area having the same shape and size including 12 600 search points and a partial search area having the same shape and size including 12 200 search points. A motion vector detector 1031 (# 1A to # 12A) is allocated to each of the partial search areas (first partial search area group) having a size including the twelve 600 search points, and a vector search is performed in parallel.

部分探索領域再編成部1023は、探索領域分割部1021が600探索点を含む部分探索領域を分割したときに発生した600未満の探索点を含む大きさの部分探索領域を1つまたは複数を組み合わせて、600以下の探索点数を含む大きさの部分探索領域に再編成する。ここでは、200探索点を含む大きさの部分探索領域を3つずつ組み合わせて、4個の600探索点を含む部分探索領域に再編成するものとする。図2では、200探索点を含む同一形状・大きさの部分探索領域を3つおきに組み合わせた4組の集合をそれぞれ部分探索領域(第2の部分探索領域群)として再編成する例を示している。この4個の部分探索領域のそれぞれに動きベクトル検出器1031(#1B〜#4B)を割り当てて並列にベクトル探索を行う。なお、この再編成された部分探索領域において、組み合わされた600未満の探索点を含む大きさの部分探索領域は、実際の画像上は連続する領域とは限らないため、組み合わされた各部分探索領域を単位に時分割で画像データを適宜参照する。   The partial search area reorganization unit 1023 combines one or more partial search areas each having a size including a search point of less than 600 generated when the search area division unit 1021 divides a partial search area including 600 search points. Thus, reorganization is performed into partial search areas having a size including 600 or less search points. Here, it is assumed that three partial search areas each having a size including 200 search points are combined and rearranged into partial search areas including four 600 search points. FIG. 2 shows an example of reorganizing four sets of combinations of every third partial search area having the same shape and size including 200 search points as a partial search area (second partial search area group). ing. A motion vector detector 1031 (# 1B to # 4B) is assigned to each of the four partial search areas, and a vector search is performed in parallel. In the reorganized partial search areas, the combined partial search areas including the search points of less than 600 are not necessarily continuous areas on the actual image. The image data is appropriately referred to by time division in units of areas.

ここに示した図2のベクトル探索領域の部分探索領域の分割および再編成の例では、第1、第2の部分探索領域群に対応する各部分探索領域をそれぞれ同数のベクトル探索点を含む同一形状・大きさとしたため、各部分探索領域の画像データへのアドレス生成を容易にして、効率的にアクセスすることができる。このように、第1、第2の部分探索領域群に対応する各部分探索領域で、それぞれ並列にベクトル探索を行いやすい構成をとることができるようになり、ベクトル探索領域を単一・均等に分割して部分探索領域を設ける場合よりも装置の小型化や省消費電力化の効果が得られる。   In the example of division and reorganization of the partial search areas of the vector search area shown in FIG. 2 shown here, the partial search areas corresponding to the first and second partial search area groups are the same including the same number of vector search points. Because of the shape and size, it is possible to easily generate an address for the image data of each partial search area and to access it efficiently. As described above, each partial search area corresponding to the first and second partial search area groups can be configured to easily perform vector search in parallel, and the vector search areas can be made uniform and uniform. Compared with the case where the partial search area is divided, the effect of reducing the size of the apparatus and reducing the power consumption can be obtained.

次に、動きベクトル検出制御部105による各部の制御と、制御される各部の動作の一例について説明する。ここでは、図2で説明したように、ベクトル探索領域が部分探索領域に分割および再編成されるものとして説明する。   Next, an example of control of each unit by the motion vector detection control unit 105 and an operation of each unit to be controlled will be described. Here, as described with reference to FIG. 2, description will be made assuming that the vector search region is divided and reorganized into partial search regions.

まず、動きベクトル検出制御部105は、参照画像メモリ制御部102の探索領域分割部1021に参照画像に設けられたベクトル探索領域の分割を指示する(ベクトル探索領域分割指示)。探索領域分割部1021は、ベクトル探索領域分割指示を受けると、ベクトル探索領域を複数の部分探索領域に分割する。すなわち、探索領域分割部1021は、図2のように、ベクトル探索領域を600探索点を含む大きさの部分探索領域12個と200探索点を含む大きさの部分探索領域12個に分割し、その後600探索点を含む大きさの部分探索領域12個の情報を第1の部分探索領域群として第1の部分探索領域群メモリ制御部1022に、また200探索点を含む大きさの部分探索領域12個の情報を部分探索領域再編成部1023に通知する。   First, the motion vector detection control unit 105 instructs the search region dividing unit 1021 of the reference image memory control unit 102 to divide the vector search region provided in the reference image (vector search region division instruction). When receiving the vector search area division instruction, the search area dividing unit 1021 divides the vector search area into a plurality of partial search areas. That is, the search area dividing unit 1021 divides the vector search area into 12 partial search areas having a size including 600 search points and 12 partial search areas having a size including 200 search points, as shown in FIG. Thereafter, information of 12 partial search areas having a size including 600 search points is used as a first partial search area group in the first partial search area group memory control unit 1022, and a partial search area having a size including 200 search points. Twelve pieces of information are notified to the partial search area reorganization unit 1023.

部分探索領域再編成部1023は、200探索点を含む大きさの部分探索領域12個の情報を探索領域分割部1021から通知されると、部分探索領域の1つまたは複数を組み合わせて、図2のように、200探索点を含む大きさの部分探索領域を3つずつ組み合わせて600探索点の部分探索領域4個に再編成する。この再編成された600探索点を含む大きさの部分探索領域4個の情報を第2の部分探索領域群として第2の部分探索領域群メモリ制御部1024に通知する。   When the partial search area reorganization unit 1023 is notified from the search area division unit 1021 of information on 12 partial search areas having a size including 200 search points, the partial search area reorganization unit 1023 combines one or more partial search areas, as shown in FIG. In this way, three partial search areas each having a size including 200 search points are combined three by three and rearranged into four partial search areas having 600 search points. Information on the four partial search areas having a size including the reorganized 600 search points is notified to the second partial search area group memory control unit 1024 as the second partial search area group.

次に、動きベクトル検出制御部105は、符号化画像メモリ制御部101に符号化画像メモリ11から符号化ブロックのデータの読み出しを指示する(符号化ブロック読み出し指示)。符号化画像メモリ制御部101は、符号化ブロック読み出し指示を受けると、符号化画像メモリ11から符号化ブロックのデータを読み出すことで抽出し、動きベクトル検出部103の複数の動きベクトル検出器1031(#1A〜#12A、#1B〜#4B)のそれぞれへ出力する。   Next, the motion vector detection control unit 105 instructs the encoded image memory control unit 101 to read out the data of the encoded block from the encoded image memory 11 (encoded block read instruction). When the encoded image memory control unit 101 receives the encoded block read instruction, the encoded image memory control unit 101 reads out and extracts the encoded block data from the encoded image memory 11, and extracts a plurality of motion vector detectors 1031 ( # 1A to # 12A, # 1B to # 4B).

また、動きベクトル検出制御部105は、参照画像メモリ制御部102の第1の部分探索領域群メモリ制御部1022に参照画像メモリ12から参照ブロックのデータの読み出しを指示する(参照ブロック読み出し指示)。第1の部分探索領域群メモリ制御部1022は、参照ブロック読み出し指示を受けると、図2のように、水平方向に隣接する12個の部分探索領域における各参照ブロックのデータを参照画像メモリ12から読み出して、動きベクトル検出部103の12個の動きベクトル検出器1031(#1A〜#12A)のそれぞれへ出力する。   In addition, the motion vector detection control unit 105 instructs the first partial search region group memory control unit 1022 of the reference image memory control unit 102 to read the reference block data from the reference image memory 12 (reference block read instruction). When receiving the reference block read instruction, the first partial search area group memory control unit 1022 receives the data of each reference block in the 12 partial search areas adjacent in the horizontal direction from the reference image memory 12 as shown in FIG. The data is read and output to each of the twelve motion vector detectors 1031 (# 1A to # 12A) of the motion vector detection unit 103.

最初の参照ブロック読み出し指示で参照画像メモリ12から読み出される参照ブロックのデータは、符号化画像メモリ11から読み出される符号化ブロックのデータと同じ画素数分のデータとなる。例えば、符号化ブロックが16×16画素で、部分探索領域が16×600画素だった場合、参照ブロック読み出し指示では、16×600画素中の一番上から16行分の16×16画素の参照ブロックのデータを読み出す。2回目以降の参照ブロック読み出し指示では、参照ブロックを垂直(上)方向に1ラインシフトして、次のラインの16画素分の参照ブロックのデータを読み出して一番下のラインに組み入れ、部分探索領域の最後のラインに達するまで1ラインずつ更新させる。   The reference block data read from the reference image memory 12 in response to the first reference block read instruction is data for the same number of pixels as the encoded block data read from the encoded image memory 11. For example, if the encoding block is 16 × 16 pixels and the partial search area is 16 × 600 pixels, the reference block read instruction instructs 16 × 16 pixels for 16 rows from the top of the 16 × 600 pixels. Read block data. In the second and subsequent reference block read instructions, the reference block is shifted by one line in the vertical (upward) direction, the reference block data for 16 pixels of the next line is read and incorporated into the bottom line, and a partial search is performed. Update one line at a time until the last line of the area is reached.

同様に、動きベクトル検出制御部105は、参照画像メモリ制御部102の第2の部分探索領域群メモリ制御部1024に参照画像メモリ12から参照ブロックのデータの読み出しを指示する(参照ブロック時分割読み出し指示)。第2の部分探索領域群メモリ制御部1024は、参照ブロック時分割読み出し指示を受けると、図2のように、水平方向に隣接する4個の部分探索領域における各参照ブロックのデータを参照画像メモリ12から読み出すことで抽出して、動きベクトル検出部103の4個の動きベクトル検出器1031(#1B〜#4B)のそれぞれへ出力する。   Similarly, the motion vector detection control unit 105 instructs the second partial search region group memory control unit 1024 of the reference image memory control unit 102 to read the reference block data from the reference image memory 12 (reference block time-division read). Instructions). When the second partial search area group memory control unit 1024 receives the reference block time-division read instruction, the second partial search area group memory control unit 1024 stores the data of each reference block in the four partial search areas adjacent in the horizontal direction as shown in FIG. 12 is extracted by reading out and output to each of the four motion vector detectors 1031 (# 1B to # 4B) of the motion vector detection unit 103.

最初の参照ブロック時分割読み出し指示で参照画像メモリ12から読み出される参照ブロックのデータは、最初の参照ブロック読み出し指示と同様に、符号化画像メモリ11から読み出される符号化ブロックのデータと同じ画素数分のデータとなる。例えば、符号化ブロックが16×16画素で、部分探索領域が16×200画素だった場合、参照ブロック時分割読み出し指示では、16×200画素中の一番上から16行分の16×16画素の参照ブロックのデータを読み出す。2回目以降の参照ブロック時分割読み出し指示では、参照ブロックを垂直(上)方向に1ラインシフトして、次のラインの16画素分の参照ブロックのデータを読み出して一番下のラインに組み入れ、部分探索領域の最後のラインに達するまで1ラインずつ更新させる。ただし、図2のように、複数、すなわち3つの16×200画素の部分探索領域の集合を1つの部分探索領域に再編成しているような場合、1つの16×200画素の部分探索領域を読み出し終わるごとに、次の16×200画素の部分探索領域があれば、その最初では最初の参照ブロック時分割読み出し指示を受けたときと同様に、その一番上から16行分の16×16画素の参照ブロックのデータを読み出すことを繰り返す。   The reference block data read from the reference image memory 12 by the first reference block time-division read instruction is the same number of pixels as the encoded block data read from the encoded image memory 11 as in the first reference block read instruction. It becomes the data of. For example, when the encoding block is 16 × 16 pixels and the partial search area is 16 × 200 pixels, the reference block time-division readout instruction indicates 16 × 16 pixels for 16 rows from the top of the 16 × 200 pixels. Read the reference block data. In the second and subsequent reference block time-division readout instructions, the reference block is shifted by one line in the vertical (upward) direction, the reference block data for 16 pixels of the next line is read and incorporated into the bottom line, Update one line at a time until the last line of the partial search area is reached. However, as shown in FIG. 2, when a plurality of, that is, a set of three 16 × 200 pixel partial search areas are rearranged into one partial search area, one 16 × 200 pixel partial search area is If there is a next 16 × 200 pixel partial search region every time reading is completed, 16 × 16 for 16 rows from the top of the first reference block time-division read instruction is received at the beginning. Repeatedly reading out the pixel reference block data.

また、動きベクトル検出制御部105は、参照ブロック読み出し指示に対応した部分探索領域に割り当てられた動きベクトル検出部103の各動きベクトル検出器1031に、参照画像を更新するように指示する(参照ブロック更新指示)。各動きベクトル検出器1031は、参照ブロック更新指示を受けると、符号化ブロックのデータに対する参照ブロックのデータの評価値と動きベクトルを算出して出力するとともに、参照ブロックを1ライン垂直方向にシフトさせて、その2ライン目以降のデータに参照ブロック読み出し指示で第1の部分探索領域群メモリ制御部1022から出力された参照ブロックの次のラインのデータを組み入れて参照ブロックのデータを更新する。   In addition, the motion vector detection control unit 105 instructs each motion vector detector 1031 of the motion vector detection unit 103 assigned to the partial search region corresponding to the reference block reading instruction to update the reference image (reference block). Update instructions). Upon receiving the reference block update instruction, each motion vector detector 1031 calculates and outputs an evaluation value and a motion vector of the reference block data with respect to the encoded block data, and shifts the reference block in the vertical direction by one line. Then, the data of the next block of the reference block output from the first partial search area group memory control unit 1022 in response to the reference block read instruction is incorporated into the data of the second and subsequent lines to update the data of the reference block.

同様に、動きベクトル検出制御部105は、参照ブロック時分割読み出し指示に対応した部分探索領域に割り当てられた動きベクトル検出部103の各動きベクトル検出器1031に、参照画像を更新するように指示する(参照画像時分割更新指示)。各動きベクトル検出器1031は、参照ブロック更新指示を受けると、符号化ブロックのデータに対する参照ブロックのデータの評価値と動きベクトルを算出して出力するとともに、参照ブロックを1ライン垂直方向にシフトさせて、その2ライン目以降のデータに参照ブロック時分割読み出し指示で第2の部分探索領域群メモリ制御部1024から出力された参照ブロックの次のラインのデータを組み入れて参照ブロックのデータを更新する。   Similarly, the motion vector detection control unit 105 instructs each motion vector detector 1031 of the motion vector detection unit 103 assigned to the partial search region corresponding to the reference block time-division read instruction to update the reference image. (Reference image time division update instruction). Upon receiving the reference block update instruction, each motion vector detector 1031 calculates and outputs an evaluation value and a motion vector of the reference block data with respect to the encoded block data, and shifts the reference block in the vertical direction by one line. Then, the data of the next block of the reference block output from the second partial search region group memory control unit 1024 in response to the reference block time-division read instruction is incorporated into the data of the second and subsequent lines to update the data of the reference block. .

ここで、動きベクトル検出部103の各動きベクトル検出器1031が算出する符号化ブロックのデータに対する参照ブロックのデータの評価値は、例えばこれら2つのブロック間の対応する画素の差分絶対値和や差分自乗和などを評価演算に適用することができ、この場合、小さい評価値をとる方が2ブロック間の相関が高いものと判断される。   Here, the evaluation value of the reference block data with respect to the encoded block data calculated by each motion vector detector 1031 of the motion vector detection unit 103 is, for example, the sum of absolute differences or differences of the corresponding pixels between these two blocks. A sum of squares or the like can be applied to the evaluation calculation. In this case, it is determined that the smaller the evaluation value, the higher the correlation between the two blocks.

さらに、動きベクトル検出制御部105は、動きベクトル判定部104に、参照ブロック更新指示および参照ブロック時分割更新指示で各動きベクトル検出器1031から出力された評価値と動きベクトルを判定するよう指示する(動きベクトル判定指示、時分割動きベクトル判定指示)。動きベクトル判定部104は、動きベクトル判定指示および時分割動きベクトル判定指示を受けると、評価値の示す相関の高さを判定し、ベクトル探索領域で最も相関の高い評価値に対応する動きベクトルを出力する。   Furthermore, the motion vector detection control unit 105 instructs the motion vector determination unit 104 to determine the evaluation value and the motion vector output from each motion vector detector 1031 in accordance with the reference block update instruction and the reference block time division update instruction. (Motion vector determination instruction, time-division motion vector determination instruction). Upon receiving the motion vector determination instruction and the time-division motion vector determination instruction, the motion vector determination unit 104 determines the correlation level indicated by the evaluation value, and selects the motion vector corresponding to the evaluation value having the highest correlation in the vector search region. Output.

図3は、動きベクトル判定部104の詳細構成の一例を示すブロック図である。図において、セレクタ1041は、動きベクトル検出部103の複数の動きベクトル検出器1031のそれぞれから出力される動きベクトルと評価値を、動きベクトル判定指示および時分割動きベクトル判定指示により順次1組ずつ選択して出力する。比較器1042は、セレクタ1041が出力する評価値とこれまでに最高の相関を示した評価値がそれぞれ示す相関の高さを比較した判定結果を出力する。評価値メモリ1043は、ベクトル探索領域内で過去に最高の相関を示した評価値を記憶し、記憶された評価値の相関の高さよりセレクタ1041が出力する評価値の相関の高さが高いと比較器1042が判定したとき、最高の相関を示した評価値をセレクタ1041が出力する評価値に更新して記憶する。動きベクトルメモリ1044は、これまでに最高の相関を示した評価値に対応する動きベクトルを記憶し、評価値メモリ1043が記憶する評価値を更新するとき、その更新される評価値に対応する動きベクトルに更新して記憶する。このように、動きベクトル判定部104は、符号化画像の符号化ブロックに対して、参照画像に設けられたベクトル探索領域のすべての探索点の参照ブロックの評価値を判定することで、最も相関の高い参照ブロックに対応する動きベクトルを出力する。   FIG. 3 is a block diagram illustrating an example of a detailed configuration of the motion vector determination unit 104. In the figure, the selector 1041 sequentially selects one set of motion vectors and evaluation values output from each of the plurality of motion vector detectors 1031 of the motion vector detecting unit 103 based on a motion vector determination instruction and a time-division motion vector determination instruction. And output. The comparator 1042 outputs a determination result obtained by comparing the evaluation value output from the selector 1041 with the correlation level indicated by the evaluation value that has shown the highest correlation so far. The evaluation value memory 1043 stores an evaluation value that has shown the highest correlation in the past in the vector search area, and the evaluation value output by the selector 1041 has a higher correlation level than the stored correlation value of the evaluation value. When the comparator 1042 determines, the evaluation value indicating the highest correlation is updated to the evaluation value output by the selector 1041 and stored. The motion vector memory 1044 stores a motion vector corresponding to the evaluation value showing the highest correlation so far, and when the evaluation value stored in the evaluation value memory 1043 is updated, the motion corresponding to the updated evaluation value is stored. Update to vector and store. As described above, the motion vector determination unit 104 determines the evaluation value of the reference block of all the search points in the vector search area provided in the reference image with respect to the encoded block of the encoded image, thereby obtaining the most correlation. A motion vector corresponding to a high reference block is output.

なお、ここでは、動きベクトル判定部104において、動きベクトル判定指示および時分割動きベクトル判定指示により動きベクトルと評価値を1組ずつセレクタ1041が選択して出力すると説明したが、図3の構成を2組用意し、第1の部分探索領域群の動きベクトル判定指示および第2の部分探索領域群の時分割動きベクトル判定指示により動きベクトルと評価値をそれぞれ判定し、第1、第2の部分探索領域群において最高の相関を示した評価値を最終比較する比較器と、より高い相関を示した評価値に対応する動きベクトルを最後に選択するセレクタを追加してもよい。   Here, it has been described that the motion vector determination unit 104 selects and outputs the motion vector and the evaluation value one by one according to the motion vector determination instruction and the time-division motion vector determination instruction, but the configuration of FIG. Two sets are prepared, and a motion vector and an evaluation value are respectively determined by a motion vector determination instruction of the first partial search region group and a time-division motion vector determination instruction of the second partial search region group, and the first and second portions A comparator that finally compares the evaluation values showing the highest correlation in the search region group and a selector that finally selects a motion vector corresponding to the evaluation value showing a higher correlation may be added.

また、動きベクトル検出制御部105からの動きベクトル判定指示および時分割動きベクトル判定指示が重なってしまうことがあれば、セレクタ1041の入力前に動きベクトルと評価値を一時記憶して読み出しが重ならないように制御してもよい。   In addition, if the motion vector determination instruction and the time-division motion vector determination instruction from the motion vector detection control unit 105 may overlap, the motion vector and the evaluation value are temporarily stored before the input of the selector 1041, and the reading does not overlap. You may control as follows.

このような手順で、参照画像に設けられたベクトル探索領域から、符号化ブロックに対して相関の高い参照ブロックに対応する動きベクトルを検出して出力すると、動きベクトル検出制御部105は、再び符号化画像メモリ制御部101に符号化画像メモリ11から符号化ブロックのデータの読み出しを符号化ブロック読み出し指示により指示し、符号化ブロックのデータを更新させる。更新された符号化ブロックに対して、一連の動きベクトルの検出処理を最後の符号化ブロックに対する動きベクトルを検出するまで繰り返し実行する。   When the motion vector corresponding to the reference block having a high correlation with respect to the encoded block is detected and output from the vector search region provided in the reference image by such a procedure, the motion vector detection control unit 105 performs the encoding again. The encoded image memory control unit 101 is instructed to read out the data of the encoded block from the encoded image memory 11 by the encoded block read instruction, and updates the data of the encoded block. A series of motion vector detection processes are repeatedly performed on the updated encoded block until a motion vector for the last encoded block is detected.

この発明の実施の形態1では、参照ブロック読み出し指示および参照ブロック時分割読み出し指示による参照ブロックを読み出すデータ単位、また、そのデータの読み出しに伴う参照ブロック更新指示および参照ブロック時分割更新指示による参照ブロックを更新するデータ単位は、1ラインとして説明したが、ベクトル探索領域内のベクトル探索点の密度次第では、1ラインに限らず、例えば2ラインなど複数ラインずつを更新しても構わない。   In Embodiment 1 of the present invention, a data unit from which a reference block is read according to a reference block read instruction and a reference block time division read instruction, and a reference block according to a reference block update instruction and a reference block time division update instruction associated with the data read Although the data unit for updating is described as one line, depending on the density of the vector search points in the vector search region, the number of lines is not limited to one line, and a plurality of lines such as two lines may be updated.

また、この発明の実施の形態1では、図2のように、例えばベクトル探索領域を参照ブロックの幅である16画素の幅で短冊状に分割するものとして説明したが、ベクトル探索点の水平間隔が16画素より大きければ、部分探索領域は接した配置にならないこともありうる。また、逆に、ベクトル探索点の水平間隔が16画素より小さければ、隣接する部分探索領域が重なる配置になることもある。ここで、部分探索領域の幅を参照ブロックの幅として、垂直方向のみにシフトして更新する構成としたため、部分探索領域に水平方向および水平方向の2次元にベクトル探索点が配置される場合に比較して回路を単純にできる。   In the first embodiment of the present invention, as shown in FIG. 2, for example, the vector search area has been described as being divided into strips with a width of 16 pixels that is the width of the reference block. If is larger than 16 pixels, the partial search areas may not be in contact with each other. Conversely, if the horizontal interval between vector search points is smaller than 16 pixels, adjacent partial search areas may overlap each other. Here, since the width of the partial search area is set as the width of the reference block and is shifted and updated only in the vertical direction, the vector search points are arranged in the horizontal direction and the horizontal direction in two dimensions in the partial search area. In comparison, the circuit can be simplified.

以上のように、この発明の実施の形態1によれば、参照画像に設けられたベクトル探索領域を部分探索領域に分割し、所定数の探索点を含む第1の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を並列に動作させ、所定数未満の探索点を含む部分探索領域は、1つまたは複数の部分探索領域を組み合わせで所定数以下の探索点を含む部分探索領域の集合に再編成した第2の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を別途並列に動作させることで、動作周波数はそのままで、回路規模の増大を最小限に抑えて求める性能を得ることができ、装置の小型化や低消費電力化を実現することができる効果がある。   As described above, according to the first embodiment of the present invention, the vector search area provided in the reference image is divided into partial search areas, and the partial search of the first partial search area group including a predetermined number of search points is performed. The motion vector detectors assigned to the regions are operated in parallel, and a partial search region including a search point less than a predetermined number is a combination of one or a plurality of partial search regions and a partial search region including a predetermined number or less search points. Performance obtained by operating the motion vector detectors assigned to the partial search areas of the second partial search area group reorganized into a set in parallel, while maintaining the operating frequency and minimizing the increase in circuit scale Thus, the apparatus can be reduced in size and power consumption can be realized.

また、この発明の実施の形態1によれば、特に動きベクトル検出部の動きベクトル検出器で参照ブロックを垂直方向または水平方向の一方向のみにシフトさせる構成とすることで、より簡易な構成でベクトル探索を行うことができる。   Further, according to the first embodiment of the present invention, in particular, the motion vector detector of the motion vector detection unit is configured to shift the reference block in only one direction in the vertical direction or the horizontal direction. A vector search can be performed.

実施の形態2.
この発明の実施の形態1では、図2のように、参照領域に設定されたベクトル探索領域を部分探索領域に分割し、所定数未満のベクトル探索点を含む部分探索領域を再編成した第2の部分探索領域群の部分探索領域が、隣接しない部分探索領域の集合である場合について説明した。
Embodiment 2. FIG.
In the first embodiment of the present invention, as shown in FIG. 2, the vector search area set as the reference area is divided into partial search areas, and the partial search areas including less than a predetermined number of vector search points are reorganized. The case where the partial search areas of the partial search area group is a set of partial search areas that are not adjacent to each other has been described.

この発明の実施形態2では、再編成した第2の部分探索領域群の部分探索領域が、隣接する部分探索領域の集合である場合について説明する。   In the second embodiment of the present invention, a case will be described in which the partial search area of the second partial search area group that has been reorganized is a set of adjacent partial search areas.

この発明の実施形態2における動きベクトル検出装置の構成の一例を示すブロック図は、この発明の実施の形態1と同様に図1で説明される。   A block diagram showing an example of the configuration of the motion vector detection apparatus according to the second embodiment of the present invention is described with reference to FIG. 1 as in the first embodiment of the present invention.

図4は、参照画像メモリ制御部102がベクトル探索領域を分割して複数の部分探索領域を構成する一例を示す説明図である。図において、参照領域に設定されたベクトル探索領域を部分探索領域に分割し、所定数、すなわち600探索点未満のベクトル探索点を含む部分探索領域を再編成した第2の部分探索領域群の部分探索領域が、隣接する部分探索領域の集合となる場合を示している。   FIG. 4 is an explanatory diagram illustrating an example in which the reference image memory control unit 102 divides the vector search area to configure a plurality of partial search areas. In the figure, a portion of a second partial search region group obtained by dividing a vector search region set as a reference region into partial search regions and reorganizing a partial search region including vector search points less than a predetermined number, that is, 600 search points. In this example, the search area is a set of adjacent partial search areas.

ここに示した図4のベクトル探索領域の部分探索領域の分割および再編成の例では、図2の例における部分探索領域の再編成の手法は異なるが、第1、第2の部分探索領域群に対応する各部分探索領域をそれぞれ同数のベクトル探索点を含む同一形状・大きさとしたため、各部分探索領域の画像データへのアドレス生成を容易にして、効率的にアクセスすることができる。このように、第1、第2の部分探索領域群に対応する各部分探索領域で、それぞれ並列にベクトル探索を行いやすい構成をとることができるようになり、ベクトル探索領域を単一・均等に分割して部分探索領域を設ける場合よりも装置の小型化や省消費電力化の効果が得られる。   In the example of division and reorganization of the partial search area of the vector search area shown in FIG. 4, the partial search area reorganization method in the example of FIG. 2 is different, but the first and second partial search area groups are different. Since the partial search areas corresponding to each have the same shape and size including the same number of vector search points, it is possible to easily generate addresses for the image data of the partial search areas and to access them efficiently. As described above, each partial search area corresponding to the first and second partial search area groups can be configured to easily perform vector search in parallel, and the vector search areas can be made uniform and uniform. Compared with the case where the partial search area is divided, the effect of reducing the size of the apparatus and reducing the power consumption can be obtained.

動きベクトル検出制御部105による各部の制御と、制御される各部の動作の一例について説明する。ここでは、図4で説明したように、ベクトル探索領域が部分探索領域に分割および再編成されるものとして説明する。   An example of control of each unit by the motion vector detection control unit 105 and an operation of each unit to be controlled will be described. Here, as described with reference to FIG. 4, description will be made assuming that the vector search area is divided and reorganized into partial search areas.

動きベクトル検出制御部105によるベクトル探索領域分割指示、符号化ブロック読み出し指示、参照ブロック読み出し指示、参照ブロック更新指示、動きベクトル判定指示および時分割動きベクトル判定指示に伴う各部の制御は、この発明の実施の形態1において説明した動作と同様である。   The control of each unit in accordance with the vector search region division instruction, the encoded block read instruction, the reference block read instruction, the reference block update instruction, the motion vector determination instruction, and the time division motion vector determination instruction by the motion vector detection control unit 105 The operation is the same as that described in the first embodiment.

部分探索領域再編成部1023は、探索領域分割部1021が600探索点を含む部分探索領域を分割したときに発生した600未満の探索点を含む大きさの部分探索領域を1つまたは複数を組み合わせて、600以下の探索点数を含む大きさの部分探索領域に再編成する。ここでは、200探索点を含む大きさの部分探索領域を3つずつ組み合わせて、4個の600探索点を含む部分探索領域に再編成するものとする。図4では、隣り合う3つの200探索点を含む同一形状・大きさの部分探索領域を組み合わせた4組の集合をそれぞれ部分探索領域として再編成する例を示している。この4個の部分探索領域のそれぞれに動きベクトル検出器1031(#1B〜#4B)を割り当ててベクトル探索を行う。   The partial search area reorganization unit 1023 combines one or more partial search areas each having a size including a search point of less than 600 generated when the search area division unit 1021 divides a partial search area including 600 search points. Thus, reorganization is performed into partial search areas having a size including 600 or less search points. Here, it is assumed that three partial search areas each having a size including 200 search points are combined and rearranged into partial search areas including four 600 search points. FIG. 4 shows an example in which four sets of combinations of partial search areas having the same shape and size including three adjacent 200 search points are reorganized as partial search areas. A vector search is performed by assigning a motion vector detector 1031 (# 1B to # 4B) to each of the four partial search areas.

ここでは、第2のベクトル探索領域群の部分探索領域は48×200画素となるが、再編成して集合とした16×200画素の部分探索領域ごとに3回処理するものとすれば、参照ブロック時分割読み出し指示、参照ブロック時分割更新指示に伴う各部の制御は、この発明の実施の形態1において説明した動作と同様に説明できる。   Here, the partial search area of the second vector search area group is 48 × 200 pixels. However, if processing is performed three times for each 16 × 200 pixel partial search area that is reorganized and set, the reference The control of each unit accompanying the block time division read instruction and the reference block time division update instruction can be explained in the same manner as the operation described in the first embodiment of the present invention.

以上のように、この発明の実施の形態2によれば、実施の形態1と同様に、参照画像に設けられたベクトル探索領域を部分探索領域に分割し、所定数の探索点を含む第1の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を並列に動作させ、所定数未満の探索点を含む部分探索領域は、1つまたは複数の部分探索領域を組み合わせで所定数以下の探索点を含む部分探索領域の集合に再編成した第2の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を別途並列に動作させることで、動作周波数はそのままで、回路規模の増大を最小限に抑えて求める性能を得ることができ、装置の小型化や低消費電力化を実現することができる効果がある。   As described above, according to the second embodiment of the present invention, as in the first embodiment, the vector search area provided in the reference image is divided into partial search areas, and the first including a predetermined number of search points. The motion vector detectors assigned to the partial search regions of the partial search region group are operated in parallel, and a partial search region including a search point less than a predetermined number is equal to or less than a predetermined number by combining one or more partial search regions. By separately operating in parallel the motion vector detectors assigned to the partial search areas of the second partial search area group that has been reorganized into a set of partial search areas including the search points, the operating frequency remains the same and the circuit scale increases. As a result, the required performance can be obtained while minimizing the power consumption, and the apparatus can be reduced in size and power consumption.

また、この発明の実施の形態2によれば、実施の形態1と同様に、特に動きベクトル検出部の動きベクトル検出器で参照ブロックを垂直方向または水平方向の一方向のみにシフトさせる構成とすることで、より簡易な構成でベクトル探索を行うことができる。   Further, according to the second embodiment of the present invention, as in the first embodiment, the reference block is shifted only in one direction in the vertical direction or the horizontal direction by the motion vector detector of the motion vector detection unit. Thus, a vector search can be performed with a simpler configuration.

実施の形態3.
この発明の実施の形態1および実施の形態2では、部分探索領域のベクトル探索点に基づく参照ブロックを垂直方向にライン単位で更新していく例について説明した。
Embodiment 3 FIG.
In the first embodiment and the second embodiment of the present invention, the example in which the reference block based on the vector search point in the partial search area is updated in the vertical direction in units of lines has been described.

この発明の実施の形態3では、部分探索領域において、ベクトル探索点がより密に配置されて水平方向にも並ぶ場合について説明する。   In the third embodiment of the present invention, a case will be described in which vector search points are arranged more densely in the partial search region and are also arranged in the horizontal direction.

単純には、水平方向に並ぶベクトル探索点を独立に扱い、垂直方向にのみ並べた部分探索領域を設定することもできる。この場合、この発明の実施の形態1および実施の形態2のように、動きベクトル検出制御部105は、
参照ブロックを垂直方向に更新させたときに必要になるラインデータを第1の部分探索領域群メモリ制御部1022、第2の部分探索領域群メモリ制御部1024に読み出させる参照ブロック読み出し指示、参照ブロック時分割読み出し指示、動きベクトル検出部103の動きベクトル検出器1031に参照ブロックを垂直方向にシフトさせるための参照ブロック更新指示、参照ブロック時分割更新指示により、ベクトル探索点の垂直方向の間隔のライン数の単位でシフトして垂直方向に更新するだけとなるが、動きベクトル検出器1031の実装数が増え、回路規模は増大してしまう。よって、ベクトル探索点に対応する参照ブロックを水平方向にシフトして移動させることで対応することも有効である。
Simply, the vector search points arranged in the horizontal direction can be handled independently, and partial search areas arranged only in the vertical direction can be set. In this case, as in the first and second embodiments of the present invention, the motion vector detection control unit 105
Reference block read instruction and reference for causing the first partial search region group memory control unit 1022 and the second partial search region group memory control unit 1024 to read line data required when the reference block is updated in the vertical direction According to the block time division readout instruction, the reference vector update instruction for shifting the reference block in the vertical direction to the motion vector detector 1031 of the motion vector detection unit 103, and the reference block time division update instruction, the vertical interval of the vector search points is set. Although it is only shifted in the unit of the number of lines and updated in the vertical direction, the number of mounted motion vector detectors 1031 increases, and the circuit scale increases. Therefore, it is also effective to respond by shifting the reference block corresponding to the vector search point in the horizontal direction.

部分探索領域内の同一ラインのベクトル探索点を処理する際に、動きベクトル検出制御部105は、参照ブロックを水平方向に右シフトさせたときに必要になるカラムデータを第1の部分探索領域群メモリ制御部1022、第2の部分探索領域群メモリ制御部1024に読み出させる参照ブロック列読み出し指示、参照ブロック列時分割読み出し指示、動きベクトル検出部103の動きベクトル検出器1031に参照ブロックを水平方向にシフトさせるための参照ブロック列更新指示、参照ブロック列時分割更新指示を出力して指示する。また、動きベクトル検出制御部105は、部分探索領域が含むベクトル探索点数を数えながら、参照ブロックが部分探索領域で参照する最終カラムまで右シフトし終わると、部分探索領域の左側に参照ブロックの再設定を指示するとともに、参照ブロック読み出し指示、参照ブロック時分割読み出し指示、および参照ブロック更新指示、参照ブロック時分割更新指示を出力して参照ブロックの更新を指示する。このように、参照ブロックを垂直方向に更新するとともに、その間に右シフトして水平方向に更新しながら部分探索領域内のベクトル探索点を探索することを繰り返す。   When processing vector search points on the same line in the partial search area, the motion vector detection control unit 105 uses the first partial search area group as column data required when the reference block is shifted rightward in the horizontal direction. Reference block sequence read instruction, reference block sequence time-division read instruction to be read out by the memory control unit 1022 and the second partial search region group memory control unit 1024, and the reference block is horizontally placed on the motion vector detector 1031 of the motion vector detection unit 103. A reference block string update instruction and a reference block string time division update instruction for shifting in the direction are output and instructed. In addition, the motion vector detection control unit 105 counts the number of vector search points included in the partial search area, and when the reference block finishes right shifting to the last column referenced in the partial search area, the motion vector detection control unit 105 re-references the reference block to the left side of the partial search area. In addition to instructing the setting, a reference block read instruction, a reference block time division read instruction, a reference block update instruction, and a reference block time division update instruction are output to instruct a reference block update. In this manner, the reference block is updated in the vertical direction, and the search for the vector search point in the partial search area is repeated while shifting to the right and updating in the horizontal direction.

この発明の実施の形態3では、参照ブロック列読み出し指示および参照ブロック列時分割読み出し指示による参照ブロックを読み出すデータ単位、また、そのデータの読み出しに伴う参照ブロック列更新指示および参照ブロック列時分割更新指示による参照ブロックを更新するデータ単位は、ベクトル探索領域内のベクトル探索点の密度次第では、1カラムに限らず、例えば2カラムなど複数カラムずつを更新しても構わない。   In Embodiment 3 of the present invention, a data unit from which a reference block is read according to a reference block string read instruction and a reference block string time division read instruction, and a reference block string update instruction and reference block string time division update associated with the data read The data unit for updating the reference block according to the instruction is not limited to one column depending on the density of the vector search points in the vector search region, and for example, multiple columns such as two columns may be updated.

以上のように、この発明の実施の形態3によれば、実施の形態1および実施の形態2と同様に、参照画像に設けられたベクトル探索領域を部分探索領域に分割し、所定数の探索点を含む第1の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を並列に動作させ、所定数未満の探索点を含む部分探索領域は、1つまたは複数の部分探索領域を組み合わせで所定数以下の探索点を含む部分探索領域の集合に再編成した第2の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を別途並列に動作させることで、動作周波数はそのままで、回路規模の増大を最小限に抑えて求める性能を得ることができ、装置の小型化や低消費電力化を実現することができる効果がある。   As described above, according to the third embodiment of the present invention, as in the first and second embodiments, the vector search region provided in the reference image is divided into partial search regions, and a predetermined number of searches are performed. The motion vector detectors assigned to the partial search areas of the first partial search area group including the points are operated in parallel, and the partial search areas including the search points less than the predetermined number are combined with one or more partial search areas. The motion vector detector assigned to the partial search area of the second partial search area group that has been reorganized into a set of partial search areas including a predetermined number of search points or less is operated in parallel, so that the operating frequency remains the same. The required performance can be obtained while minimizing the increase in circuit scale, and the apparatus can be reduced in size and reduced in power consumption.

また、この発明の実施の形態3によれば、動きベクトル検出部の動きベクトル検出器で参照ブロックを水平方向および垂直方向にシフトさせる構成とすることで、部分探索領域に様々な密度の異なるベクトル探索点を設定された場合でもベクトル探索に対応できる。部分探索領域が含むベクトル探索点の密度を高くすることで、より相関の高い動きベクトル検出が可能となり、例えば動きベクトルを利用した予測符号化された画像を復号した際に画質の向上を図ることができる。   Further, according to the third embodiment of the present invention, the motion vector detector of the motion vector detection unit is configured to shift the reference block in the horizontal direction and the vertical direction, so that various vectors with different densities are included in the partial search region. Even when a search point is set, vector search can be supported. By increasing the density of vector search points included in the partial search area, it is possible to detect a motion vector with higher correlation, for example, to improve image quality when decoding a predictively encoded image using a motion vector. Can do.

実施の形態4.
この発明の実施の形態1では、動きベクトル判定部104は、動きベクトル判定指示および時分割動きベクトル判定指示を受けると、各動きベクトル検出器1031から出力される評価値の示す相関の高さを判定し、ベクトル探索領域で最も相関の高い評価値に対応する動きベクトルを出力する場合について説明した。
Embodiment 4 FIG.
In Embodiment 1 of the present invention, upon receiving the motion vector determination instruction and the time-division motion vector determination instruction, the motion vector determination unit 104 calculates the height of the correlation indicated by the evaluation value output from each motion vector detector 1031. The case where the motion vector corresponding to the evaluation value having the highest correlation in the vector search region is output has been described.

この発明の実施形態4では、動きベクトル判定部104は、動きベクトル判定指示および時分割動きベクトル判定指示を受けると、各動きベクトル検出器1031から出力され、判定オフセットを反映させた評価値の示す相関の高さを判定し、ベクトル探索領域で最も相関の高い評価値に対応する動きベクトルを出力する場合について説明する。   In the fourth embodiment of the present invention, when the motion vector determination unit 104 receives a motion vector determination instruction and a time-division motion vector determination instruction, the motion vector determination unit 104 outputs an evaluation value that is output from each motion vector detector 1031 and reflects the determination offset. A case will be described in which the level of correlation is determined and a motion vector corresponding to the evaluation value having the highest correlation in the vector search region is output.

図5は、動きベクトル判定部104の詳細構成の一例を示すブロック図である。図において、セレクタ1041は、動きベクトル検出部103の複数の動きベクトル検出器1031のそれぞれから出力される動きベクトルと評価値を、動きベクトル判定指示および時分割動きベクトル判定指示により1組ずつ選択して出力する。オフセットメモリ1045は、動きベクトルに基づく判定オフセットを記憶する。演算器1046は、セレクタ1041が出力した評価値に、その評価値に対応してセレクタ1041が出力した動きベクトルに基づきオフセットメモリ1045が出力した判定オフセットを反映させた評価値を出力する。比較器1042は、演算器1046が判定オフセットを反映させた評価値とこれまでに最高の相関を示した評価値がそれぞれ示す相関の高さを比較した判定結果を出力する。評価値メモリ1043は、ベクトル探索領域内で過去に最高の相関を示した評価値を記憶し、記憶された評価値の相関の高さより演算器1046が判定オフセットを反映させた評価値の相関の高さが高いと比較器1042が判定したとき、最高の相関を示した評価値を演算器1046が判定オフセットを反映させた評価値に更新して記憶する。動きベクトルメモリ1044は、これまでに最高の相関を示した評価値に対応する動きベクトルを記憶し、評価値メモリ1043が記憶する評価値を更新するとき、その更新される演算器1046が判定オフセットを反映させた評価値に対応する動きベクトルに更新して記憶する。   FIG. 5 is a block diagram illustrating an example of a detailed configuration of the motion vector determination unit 104. In the figure, a selector 1041 selects a motion vector and an evaluation value output from each of a plurality of motion vector detectors 1031 of the motion vector detection unit 103 one by one according to a motion vector determination instruction and a time-division motion vector determination instruction. Output. The offset memory 1045 stores a determination offset based on the motion vector. The computing unit 1046 outputs an evaluation value in which the evaluation offset output from the offset memory 1045 is reflected on the evaluation value output from the selector 1041 based on the motion vector output from the selector 1041 corresponding to the evaluation value. The comparator 1042 outputs a determination result obtained by comparing the evaluation value reflected by the calculation unit 1046 with the evaluation value indicating the highest correlation so far. The evaluation value memory 1043 stores an evaluation value that has shown the highest correlation in the past in the vector search area, and the computing unit 1046 reflects the evaluation value correlation that reflects the determination offset based on the correlation height of the stored evaluation value. When the comparator 1042 determines that the height is high, the calculator 1046 updates and stores the evaluation value indicating the highest correlation into the evaluation value reflecting the determination offset. The motion vector memory 1044 stores a motion vector corresponding to the evaluation value showing the highest correlation so far, and when the evaluation value stored in the evaluation value memory 1043 is updated, the updated computing unit 1046 determines the determination offset. The motion vector corresponding to the evaluation value reflecting the above is updated and stored.

オフセットメモリ1045が記憶する判定オフセットは、例えば、動きベクトル長または動きベクトルの符号長に基づいて評価値に反映させる値が設定される。判定オフセットは、判定オフセットを評価値に加減したり、判定オフセットを重みとして乗じたりすることで評価値に反映させる。例えば、動きベクトル長に基づいて判定オフセットを選択する場合には、動きベクトルが長いとき、符号化ブロックと参照ブロックの位置関係は遠いので、評価値に乗じる重みが小さくなるようにし、位置関係の近い参照ブロックが選ばれやすくすることで、動きベクトルの符号長が短くなることが期待できる。また、動きベクトルの符号長に基づいて判定オフセットを選択する場合には、動きベクトルの符号長が長くなるとき、評価値に乗じる重みが小さくなるようにすることで、動きベクトルの符号長が短い参照ブロックが選ばれやすくなることが期待できる。このように、短い符号長の動きベクトルが選ばれることで付加情報に費やすビットレートを少なくし、符号化する差分情報に配分するビットレートを高くすることで画質を向上させることができる。評価値に判定オフセットを加減する場合にも、同様な効果を得ることができる。   As the determination offset stored in the offset memory 1045, for example, a value to be reflected in the evaluation value is set based on the motion vector length or the motion vector code length. The determination offset is reflected in the evaluation value by adding or subtracting the determination offset to the evaluation value or multiplying the determination offset by a weight. For example, when the determination offset is selected based on the motion vector length, when the motion vector is long, the positional relationship between the encoded block and the reference block is far. Therefore, the weight multiplied by the evaluation value is reduced, and the positional relationship It can be expected that the code length of the motion vector is shortened by making it easy to select a close reference block. In addition, when the determination offset is selected based on the code length of the motion vector, when the code length of the motion vector becomes long, the weight multiplied by the evaluation value is reduced so that the code length of the motion vector is short. It can be expected that the reference block is easily selected. As described above, by selecting a motion vector having a short code length, the bit rate spent on the additional information is reduced, and the image quality can be improved by increasing the bit rate allocated to the difference information to be encoded. The same effect can be obtained also when adding or subtracting the determination offset to the evaluation value.

以上のように、この発明の実施の形態4によれば、実施の形態1ないし実施の形態3と同様に、参照画像に設けられたベクトル探索領域を部分探索領域に分割し、所定数の探索点を含む第1の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を並列に動作させ、所定数未満の探索点を含む部分探索領域は、1つまたは複数の部分探索領域を組み合わせで所定数以下の探索点を含む部分探索領域の集合に再編成した第2の部分探索領域群の部分探索領域に割り当てた動きベクトル検出器を別途並列に動作させることで、動作周波数はそのままで、回路規模の増大を最小限に抑えて求める性能を得ることができ、装置の小型化や低消費電力化を実現することができる効果がある。   As described above, according to the fourth embodiment of the present invention, as in the first to third embodiments, the vector search region provided in the reference image is divided into partial search regions, and a predetermined number of searches are performed. The motion vector detectors assigned to the partial search areas of the first partial search area group including the points are operated in parallel, and the partial search areas including the search points less than the predetermined number are combined with one or more partial search areas. The motion vector detector assigned to the partial search area of the second partial search area group that has been reorganized into a set of partial search areas including a predetermined number of search points or less is operated in parallel, so that the operating frequency remains the same. The required performance can be obtained while minimizing the increase in circuit scale, and the apparatus can be reduced in size and reduced in power consumption.

また、この発明の実施の形態4によれば、符号化ブロックに対する参照ブロックの評価値に動きベクトルに基づく判定オフセットを反映させることで、動きベクトル選択の制御をすることができ、例えば、動きベクトルを利用した予測符号化された画像を復号した際に画質の向上を図ることができる。   Further, according to Embodiment 4 of the present invention, motion vector selection can be controlled by reflecting a determination offset based on a motion vector in an evaluation value of a reference block with respect to an encoded block, for example, a motion vector. It is possible to improve the image quality when decoding a predictively encoded image using.

実施の形態5.
この発明の実施の形態5では、先に説明したこの発明の実施の形態1ないし実施の形態4のいずれかの動きベクトル検出装置を備えた動画像符号化装置について説明する。
Embodiment 5 FIG.
In the fifth embodiment of the present invention, a moving picture coding apparatus provided with the motion vector detection apparatus according to any of the first to fourth embodiments of the present invention described above will be described.

図6は、この発明の実施の形態5における動画像符号化装置に係る構成の一例を示すブロック図である。図において、動きベクトル検出装置10、符号化画像メモリ11、参照画像メモリ12は、この発明の実施の形態1に係る図1で説明したものと同一のものである。予測画像生成部13は、動きベクトル検出装置が検出した動きベクトルに基づいて、参照画像の参照ブロックのデータを予測画像データとして生成する。減算器14は、符号化画像の符号化ブロックのデータと予測画像データの差分画像データを演算する。直交変換・量子化部15は、差分画像データを直交変換し、変換係数を量子化する。符号化部16は、量子化された変換係数を符号化する。逆量子化・逆直交変換部17は、量子化された変換係数を逆量子化し、逆直交変換して復号差分画像データとする。加算器18は、復号差分データと予測画像生成部13が生成した予測画像データを加算して復号画像データを演算する。この復号画像データは、参照画像メモリ12に蓄積される。   FIG. 6 is a block diagram showing an example of a configuration according to the moving picture coding apparatus in Embodiment 5 of the present invention. In the figure, a motion vector detection device 10, an encoded image memory 11, and a reference image memory 12 are the same as those described in FIG. 1 according to the first embodiment of the present invention. The predicted image generation unit 13 generates reference block data of the reference image as predicted image data based on the motion vector detected by the motion vector detection device. The subtracter 14 calculates difference image data between the encoded block data of the encoded image and the predicted image data. The orthogonal transform / quantization unit 15 performs orthogonal transform on the difference image data and quantizes the transform coefficient. The encoding unit 16 encodes the quantized transform coefficient. The inverse quantization / inverse orthogonal transform unit 17 performs inverse quantization on the quantized transform coefficient and performs inverse orthogonal transform to obtain decoded difference image data. The adder 18 calculates the decoded image data by adding the decoded difference data and the predicted image data generated by the predicted image generation unit 13. This decoded image data is stored in the reference image memory 12.

なお、直交変換・量子化部15と逆量子化・逆直交変換部17の対は、量子化部と逆量子化部の対、または直交変換部と逆直交変換部の対のみに置き換えてもよい。動きベクトル検出装置10は、この発明の実施の形態1ないし実施の形態4に係る動きベクトル検出装置10のいずれを適用しても構わない。   The pair of the orthogonal transform / quantization unit 15 and the inverse quantization / inverse orthogonal transform unit 17 may be replaced with only a pair of a quantization unit and an inverse quantization unit, or a pair of an orthogonal transform unit and an inverse orthogonal transform unit. Good. As the motion vector detection device 10, any of the motion vector detection devices 10 according to the first to fourth embodiments of the present invention may be applied.

以上のように、この発明の実施の形態5によれば、実施の形態1ないし実施の形態4のいずれかに係る動きベクトル検出装置を適用することで、動画像を符号化する際に、動作周波数はそのままで、回路規模の増大を最小限に抑えて求める性能を得ることができ、装置の小型化や低消費電力化を実現する動画像符号化装置を得る効果がある。   As described above, according to the fifth embodiment of the present invention, the motion vector detecting device according to any one of the first to fourth embodiments is applied, and the operation is performed when the moving image is encoded. With the same frequency, it is possible to obtain the required performance while minimizing the increase in circuit scale, and there is an effect of obtaining a moving picture coding apparatus that realizes downsizing and low power consumption of the apparatus.

また、この発明の実施の形態5によれば、実施の形態4に係る動きベクトル検出装置を適用することで、符号化ブロックに対する参照ブロックの評価値に動きベクトルの長さや符号長に基づく判定オフセットを反映させることで、動きベクトルの選択を制御して、より相関の高い動きベクトルを検出することで、動画像をより良好な画質を保って符号化する動画像符号化装置を得る効果がある。   Further, according to Embodiment 5 of the present invention, by applying the motion vector detection apparatus according to Embodiment 4, the determination offset based on the length of the motion vector and the code length is added to the evaluation value of the reference block for the encoded block. By reflecting the above, the motion vector selection is controlled to detect a motion vector having a higher correlation, thereby obtaining an effect of obtaining a moving image encoding apparatus that encodes a moving image with better image quality. .

この発明の実施の形態1における動きベクトル検出装置に係る構成の一例を示すブロック図である。It is a block diagram which shows an example of the structure which concerns on the motion vector detection apparatus in Embodiment 1 of this invention. この発明の実施の形態1における参照画像メモリ制御部によるベクトル探索領域の分割の一例を示すブロック図である。It is a block diagram which shows an example of the division | segmentation of the vector search area | region by the reference image memory control part in Embodiment 1 of this invention. この発明の実施の形態1における動きベクトル判定部に係る構成の一例を示すブロック図である。It is a block diagram which shows an example of the structure which concerns on the motion vector determination part in Embodiment 1 of this invention. この発明の実施の形態2における参照画像メモリ制御部によるベクトル探索領域の分割の一例を示すブロック図である。It is a block diagram which shows an example of the division | segmentation of the vector search area | region by the reference image memory control part in Embodiment 2 of this invention. この発明の実施の形態4における動きベクトル判定部に係る構成の一例を示すブロック図である。It is a block diagram which shows an example of the structure which concerns on the motion vector determination part in Embodiment 4 of this invention. この発明の実施の形態5における動画像符号化装置に係る構成の一例を示すブロック図である。It is a block diagram which shows an example of the structure which concerns on the moving image encoder in Embodiment 5 of this invention.

符号の説明Explanation of symbols

10 動きベクトル検出装置
11 符号化画像メモリ
12 参照画像メモリ
13 予測画像生成部
14 減算器
15 直交変換・量子化部
16 符号化部
17 逆量子化・逆直交変換部
18 加算器
101 符号化画像メモリ制御部
102 参照画像メモリ制御部
103 動きベクトル検出部
104 動きベクトル判定部
105 動きベクトル検出制御部
1021 探索領域分割部
1022 第1の部分探索領域群メモリ制御部
1023 部分探索領域再編成部
1024 第2の部分探索領域群メモリ制御部
1031 動きベクトル検出器
1041 セレクタ
1042 比較器
1043 評価値メモリ
1044 動きベクトルメモリ
1045 オフセットメモリ
1046 演算器
DESCRIPTION OF SYMBOLS 10 Motion vector detection apparatus 11 Encoded image memory 12 Reference image memory 13 Predicted image generation unit 14 Subtractor 15 Orthogonal transformation / quantization unit 16 Encoding unit 17 Inverse quantization / inverse orthogonal transformation unit 18 Adder 101 Encoded image memory Control unit 102 Reference image memory control unit 103 Motion vector detection unit 104 Motion vector determination unit 105 Motion vector detection control unit 1021 Search region division unit 1022 First partial search region group memory control unit 1023 Partial search region reorganization unit 1024 Second Partial search region group memory control unit 1031 motion vector detector 1041 selector 1042 comparator 1043 evaluation value memory 1044 motion vector memory 1045 offset memory 1046 computing unit

Claims (6)

符号化画像における符号化ブロックのデータを抽出して出力する符号化画像メモリ制御部と、
参照画像に設けられたベクトル探索領域を所定数のベクトル探索点を含む大きさの複数の部分探索領域と前記所定数未満のベクトル探索点を含む大きさの複数の部分探索領域に分割する探索領域分割部と、
この探索領域分割部が分割した参照画像における前記所定数のベクトル探索点を含む大きさの複数の部分探索領域を第1の部分探索領域群とし、この第1の部分探索領域群の各部分探索領域が含むベクトル探索点に基づく参照ブロックのデータを前記参照画像から抽出して出力する第1の部分探索領域群メモリ制御部と、
前記探索領域分割部が分割した参照画像における前記所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を、ベクトル探索点の数の合計が前記所定数を超えないように組み合わせて複数の部分探索領域を再編成する部分探索領域再編成部と、
この部分探索領域再編成部が前記所定数未満のベクトル探索点を含む大きさの複数の部分探索領域を組み合わせて再編成した複数の部分探索領域を第2の部分探索領域群とし、この第2の部分探索領域群の各部分探索領域が含むベクトル探索点に基づく参照ブロックのデータを前記参照画像から抽出して出力する第2の部分探索領域群メモリ制御部と、
前記第1の部分探索領域群メモリ制御部および前記第2の部分探索領域群メモリ制御部が出力する各部分探索領域に含まれるベクトル探索点に基づく参照ブロックのデータについて、前記符号化画像メモリ制御部が出力する符号化ブロックのデータに対する相関を示す評価値と動きベクトルの組を算出する、前記第1の部分探索領域群メモリ制御部および前記第2の部分探索領域群メモリ制御部の部分探索領域ごとに割り当てる複数の動きベクトル検出器を有する動きベクトル検出部と、
この動きベクトル検出部の各動きベクトル検出器が出力する評価値によって示される相関の高さに基づいて、前記参照画像に設けられた探索領域が含む各ベクトル探索点における参照ブロックの評価値を判定して、最終判定された評価値に対応する動きベクトルを出力する動きベクトル判定部と、
前記符号化画像メモリ制御部と前記探索領域分割部と前記第1の部分探索領域群メモリ制御部と前記第2の部分探索領域群メモリ制御部と前記動きベクトル検出部と動きベクトル判定部の処理を制御する動きベクトル検出制御部と
を備えた動きベクトル検出装置。
An encoded image memory control unit that extracts and outputs data of an encoded block in the encoded image;
A search area for dividing a vector search area provided in a reference image into a plurality of partial search areas having a size including a predetermined number of vector search points and a plurality of partial search areas having a size including less than the predetermined number of vector search points. A dividing section;
A plurality of partial search areas having a size including the predetermined number of vector search points in the reference image divided by the search area dividing unit is set as a first partial search area group, and each partial search of the first partial search area group is performed. A first partial search region group memory control unit that extracts and outputs reference block data based on vector search points included in the region from the reference image;
A plurality of partial search areas having a size including less than the predetermined number of vector search points in the reference image divided by the search area dividing unit are combined so that the total number of vector search points does not exceed the predetermined number A partial search area reorganization unit for reorganizing the partial search areas of
The partial search region reorganization unit combines a plurality of partial search regions having a size including the vector search points less than the predetermined number as a second partial search region group. A second partial search region group memory control unit that extracts and outputs reference block data based on vector search points included in each partial search region of the partial search region group;
The coded image memory control is performed on reference block data based on vector search points included in each partial search area output from the first partial search area group memory control unit and the second partial search area group memory control unit. Partial search of the first partial search region group memory control unit and the second partial search region group memory control unit for calculating a set of an evaluation value and a motion vector indicating a correlation with the data of the encoded block output by the unit A motion vector detector having a plurality of motion vector detectors assigned to each region;
The reference block evaluation value at each vector search point included in the search region provided in the reference image is determined based on the high correlation indicated by the evaluation value output by each motion vector detector of the motion vector detection unit. A motion vector determination unit that outputs a motion vector corresponding to the finally determined evaluation value;
Processing of the coded image memory control unit, the search region dividing unit, the first partial search region group memory control unit, the second partial search region group memory control unit, the motion vector detection unit, and the motion vector determination unit A motion vector detection device comprising a motion vector detection control unit for controlling the motion vector.
前記動きベクトル判定部は、前記動きベクトル検出部が出力する動きベクトルの長さに基づくオフセットを該動きベクトルに対応する評価値に加減して、オフセットを加減された各評価値を判定することを特徴とする請求項1記載のベクトル検出装置。 The motion vector determination unit adjusts an offset based on the length of the motion vector output from the motion vector detection unit to an evaluation value corresponding to the motion vector, and determines each evaluation value with the offset added or subtracted. The vector detection device according to claim 1, wherein: 前記動きベクトル判定部は、前記動きベクトル検出部が出力する動きベクトルの長さに基づくオフセットを重みとして該動きベクトルに対応する評価値に乗算して、オフセットを乗算された各評価値を判定することを特徴とする請求項1記載のベクトル検出装置。 The motion vector determination unit determines each evaluation value multiplied by the offset by multiplying an evaluation value corresponding to the motion vector by using an offset based on the length of the motion vector output from the motion vector detection unit as a weight. The vector detection device according to claim 1. 前記動きベクトル判定部は、前記動きベクトル検出部が出力する動きベクトルの符号長に基づくオフセットを該動きベクトルに対応する評価値に加減して、オフセットを加減された各評価値を判定することを特徴とする請求項1記載のベクトル検出装置。 The motion vector determination unit adds or subtracts an offset based on the code length of the motion vector output from the motion vector detection unit to an evaluation value corresponding to the motion vector, and determines each evaluation value with the offset added or subtracted. The vector detection device according to claim 1, wherein: 前記動きベクトル判定部は、前記動きベクトル検出部が出力する動きベクトルの符号長に基づくオフセットを重みとして該動きベクトルに対応する評価値に乗算して、オフセットを乗算された各評価値を判定することを特徴とする請求項1記載のベクトル検出装置。 The motion vector determination unit determines each evaluation value multiplied by the offset by multiplying an evaluation value corresponding to the motion vector by using an offset based on the code length of the motion vector output from the motion vector detection unit as a weight. The vector detection device according to claim 1. 請求項1ないし請求項4記載のいずれかのベクトル検出装置
を備え、
現符号化画像より以前に符号化された符号化画像の符号データを復号した復号画像を参照画像として、この参照画像と前記現符号化画像に対して前記ベクトル検出装置が出力した動きベクトルに基づいて予測画像を生成し、この予測画像と前記現符号化画像との差分を符号化する動画像符号化装置。
A vector detection device according to any one of claims 1 to 4, comprising:
Based on the reference image and a motion vector output by the vector detection device for the current encoded image, using a decoded image obtained by decoding the encoded data of the encoded image encoded before the current encoded image as a reference image. A moving picture encoding apparatus that generates a predicted image and encodes a difference between the predicted image and the current encoded image.
JP2008168839A 2008-06-27 2008-06-27 Motion vector detection apparatus and moving picture encoding apparatus Expired - Fee Related JP4935771B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008168839A JP4935771B2 (en) 2008-06-27 2008-06-27 Motion vector detection apparatus and moving picture encoding apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008168839A JP4935771B2 (en) 2008-06-27 2008-06-27 Motion vector detection apparatus and moving picture encoding apparatus

Publications (2)

Publication Number Publication Date
JP2010011150A JP2010011150A (en) 2010-01-14
JP4935771B2 true JP4935771B2 (en) 2012-05-23

Family

ID=41591088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008168839A Expired - Fee Related JP4935771B2 (en) 2008-06-27 2008-06-27 Motion vector detection apparatus and moving picture encoding apparatus

Country Status (1)

Country Link
JP (1) JP4935771B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07240927A (en) * 1993-04-21 1995-09-12 Matsushita Electric Ind Co Ltd Video encoder
JP3031152B2 (en) * 1993-12-24 2000-04-10 日本電気株式会社 Motion prediction processor and motion prediction device
JP4419608B2 (en) * 2004-02-27 2010-02-24 セイコーエプソン株式会社 Video encoding device
EP1592248B1 (en) * 2004-04-30 2006-09-20 Matsushita Electric Industrial Co., Ltd. Motion vector estimation employing adaptive temporal prediction
JP4856954B2 (en) * 2005-06-08 2012-01-18 パナソニック株式会社 Image encoding device
JP2007110602A (en) * 2005-10-17 2007-04-26 Seiko Epson Corp Motion vector detector

Also Published As

Publication number Publication date
JP2010011150A (en) 2010-01-14

Similar Documents

Publication Publication Date Title
US11070802B2 (en) Moving image coding device, moving image decoding device, moving image coding/decoding system, moving image coding method and moving image decoding method
KR100289899B1 (en) Inter-block interpolation predictive encoding apparatus and method, and decoding apparatus and method
US20230232033A1 (en) Image encoding and decoding method with merge flag and motion vectors
RU2518635C2 (en) Method and apparatus for encoding and decoding coding unit of picture boundary
KR101684207B1 (en) Video decoder, video encoder, video decoding method, and video encoding method
JP6807987B2 (en) Image coding device, moving image decoding device, moving image coding data and recording medium
CN103004201A (en) Video encoding device, video decoding device, video encoding method, and video decoding method
KR20090058954A (en) Video coding method and apparatus using side matching, and video decoding method and appartus thereof
CN103299637A (en) Dynamic image encoding device, dynamic image decoding device, dynamic image encoding method, and dynamic image decoding method
KR20110081304A (en) Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program
JP5488613B2 (en) Moving picture encoding apparatus and moving picture decoding apparatus
AU2020201377B2 (en) Video prediction encoding device, video prediction encoding method, video prediction encoding program, video prediction decoding device, video prediction decoding method, and video prediction decoding program
JP2008182527A (en) Image coding device and method, and imaging system
JP2008271127A (en) Coding apparatus
JP5195674B2 (en) Image encoding device
JP4935771B2 (en) Motion vector detection apparatus and moving picture encoding apparatus
JP2008092456A (en) Image encoding apparatus, and image decoding apparatus
JP2020058075A (en) Moving image prediction encoding device, moving image prediction decoding device, moving image prediction encoding method, moving image prediction decoding method, and recording medium
JP2006324888A (en) Dynamic-image coding equipment
JPH07143487A (en) Image coder
JP5533885B2 (en) Moving picture encoding apparatus and moving picture decoding apparatus
JP6646125B2 (en) Video prediction decoding method and video prediction decoding device
JP2020137118A (en) Intra prediction device, image decoding device, and program
JP2011199685A (en) Moving image encoder, moving image decoder, moving image encoding method, and program
JP2018026726A (en) Encoder and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111214

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120124

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120206

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4935771

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees