JP6159292B2 - Motion vector detection apparatus, motion vector detection method, and motion vector detection program - Google Patents

Motion vector detection apparatus, motion vector detection method, and motion vector detection program Download PDF

Info

Publication number
JP6159292B2
JP6159292B2 JP2014108058A JP2014108058A JP6159292B2 JP 6159292 B2 JP6159292 B2 JP 6159292B2 JP 2014108058 A JP2014108058 A JP 2014108058A JP 2014108058 A JP2014108058 A JP 2014108058A JP 6159292 B2 JP6159292 B2 JP 6159292B2
Authority
JP
Japan
Prior art keywords
motion vector
motion
search
evaluation value
projected
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.)
Active
Application number
JP2014108058A
Other languages
Japanese (ja)
Other versions
JP2015226085A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2014108058A priority Critical patent/JP6159292B2/en
Publication of JP2015226085A publication Critical patent/JP2015226085A/en
Application granted granted Critical
Publication of JP6159292B2 publication Critical patent/JP6159292B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、映像符号化を行う際に動きベクトルを検出する動きベクトル検出装置、動きベクトル検出方法及び動きベクトル検出プログラムに関する。   The present invention relates to a motion vector detection apparatus, a motion vector detection method, and a motion vector detection program that detect a motion vector when video coding is performed.

動画像符号化の画面間予測では、符号化対象フレームの時間的に過去或いは未来方向の符号化済みフレームを参照フレームとして、物体がどれだけ動いたかを表す動きベクトルを検出し、動きベクトルが指す領域との差分を取ることで圧縮が行われる。H.264/AVCやH.265/HEVCでは、画面間予測のピクチャタイプとしてPピクチャとBピクチャが規定されており、Pピクチャは1枚の参照フレームのみを利用し、Bピクチャは2枚の参照フレームを利用する。   In inter-picture prediction of moving picture coding, a motion vector representing how much an object has moved is detected using a temporally past or future coded frame of the encoding target frame as a reference frame, and the motion vector indicates Compression is performed by taking the difference from the area. H. H.264 / AVC and H.264 In H.265 / HEVC, P picture and B picture are defined as picture types for inter-screen prediction. The P picture uses only one reference frame, and the B picture uses two reference frames.

動きベクトルの検出はブロック単位で行われ、参照フレームの中から対象ブロックに最も類似したブロックが探索される。この時、全探索をすると演算量が膨大になるため、一般的には探索範囲が設定される。更に演算量を削減するために以下のような方法が提案されている。   The motion vector is detected in units of blocks, and the block most similar to the target block is searched from the reference frame. At this time, if a full search is performed, the amount of calculation becomes enormous, and therefore a search range is generally set. In order to further reduce the amount of calculation, the following method has been proposed.

H.264/AVC規格では時間ダイレクトモードと呼ばれる動きベクトルの予測方法があり、既に符号化されているフレームに対して同じ空間位置の動きベクトルをスケーリングして予測対象フレームの予測動きベクトルとする手法である。この予測動きベクトルを動き探索の開始点に利用することで、対象フレームと参照フレームの時間距離が離れている場合でも探索範囲を広げることなく低演算量な探索を実現できる(例えば、非特許文献1参照)。   H. In the H.264 / AVC standard, there is a motion vector prediction method called a temporal direct mode, which is a technique for scaling a motion vector at the same spatial position to an already encoded frame to obtain a predicted motion vector of a prediction target frame. . By using this predicted motion vector as a starting point for motion search, a low-computation search can be realized without expanding the search range even when the time distance between the target frame and the reference frame is long (for example, non-patent literature) 1).

MPEG−4 AVC(ISO/IEC 14496−10)MPEG-4 AVC (ISO / IEC 14496-10)

しかしながら、この方法のように同じ空間位置の動きベクトルをスケーリングして予測動きベクトルを算出すると、物体の連続性が正確に考慮されない。図13は、同じ空間位置を利用する場合の問題点を示す説明図である。図13に示すように異なる物体が隣接している場合に予測動きベクトルが別の物体を参照してしまい、誤った予測動きベクトルによって探索精度が低下してしまう場合がある。   However, if the predicted motion vector is calculated by scaling the motion vectors at the same spatial position as in this method, the continuity of the object is not accurately taken into consideration. FIG. 13 is an explanatory diagram showing problems when the same spatial position is used. As shown in FIG. 13, when different objects are adjacent to each other, the predicted motion vector may refer to another object, and the search accuracy may be reduced due to an incorrect predicted motion vector.

図14は、オクルージョンが発生した場合の問題点を示す説明図である。図14に示すように符号化済みフレームにおいてオクルージョン領域が発生している場合には算出された動きベクトルは対象フレームの同じ空間位置の物体において相関がない可能性が高い。そのため、そのまま対象フレームの予測動きベクトルに利用してしまうと逆に動きベクトルの探索精度が低下してしまう場合がある。これらを解決するために動き探索時の誤差(絶対誤差和など)がある閾値以上になった場合には利用しないようにすることが考えられる。しかし、画像の種類やシーンによって閾値が大きく変化するため、適切な閾値を設定しないとオクルージョン領域を検出できなかったり、オクル―ジョンが発生していない領域も除外したりしてしまうという問題がある。   FIG. 14 is an explanatory diagram showing a problem when occlusion occurs. As shown in FIG. 14, when an occlusion area is generated in the encoded frame, the calculated motion vector is highly likely to have no correlation in the object at the same spatial position in the target frame. Therefore, if it is used as it is for the predicted motion vector of the target frame, the motion vector search accuracy may be reduced. In order to solve these problems, it may be considered not to use the error when the motion search error (such as the absolute error sum) exceeds a certain threshold. However, the threshold varies greatly depending on the type of image and the scene, so there is a problem that unless an appropriate threshold is set, an occlusion area cannot be detected or an area where no occlusion has occurred is excluded. .

本発明は、このような事情に鑑みてなされたもので、演算量が大きくなることを抑えつつ動きベクトルの検出精度を向上することができる動きベクトル検出装置、動きベクトル検出方法及び動きベクトル検出プログラムを提供することを目的とする。   The present invention has been made in view of such circumstances, and a motion vector detection device, a motion vector detection method, and a motion vector detection program capable of improving motion vector detection accuracy while suppressing an increase in the amount of calculation. The purpose is to provide.

本発明は、映像符号化を行う際に動きベクトルを検出する動きベクトル検出装置であって、処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定する判定手段と、前記判定手段により投影された動きベクトルがあると判定された場合に、投影されている全ての動きベクトルから予測動きベクトルを算出して動き探索の開始点に設定し、動きベクトルがないと判定された場合に、ゼロベクトルを動き探索の開始点とする開始点設定手段と、前記開始点を基に動き探索を行う動き探索手段と、前記動き探索結果に基づき、前記予測ブロックの画面間予測モードの評価値を算出する評価値算出手段と、前記評価値を比較して、最小の評価値となる前記予測ブロックの前記動きベクトルを次の動き探索対象フレームへ投影する動きベクトル投影手段とを備えることを特徴とする。   The present invention is a motion vector detection device that detects a motion vector when video coding is performed, and determines whether or not there is a motion vector projected from a previous frame in a prediction block to be processed. When it is determined that there is a motion vector projected by the determination unit and the determination unit, a predicted motion vector is calculated from all the projected motion vectors and set as a motion search start point. If it is determined that there is not, a start point setting unit that uses a zero vector as a start point of motion search, a motion search unit that performs a motion search based on the start point, and based on the motion search result, The evaluation value calculating means for calculating the evaluation value of the inter-screen prediction mode and the evaluation value are compared, and the motion vector of the prediction block that becomes the minimum evaluation value is the next motion search target. Characterized in that it comprises a motion vector projection means for projecting the frame.

本発明は、前記評価値算出手段は、さらに前記予測ブロックの画面内予測モードの評価値を算出し、前記動きベクトル投影手段は、前記画面間予測モードの評価値が前記画面内予測モードの評価値以下の場合にだけ前記動きベクトルを次の動き探索対象フレームに投影することを特徴とする。   In the present invention, the evaluation value calculation means further calculates an evaluation value of an intra prediction mode of the prediction block, and the motion vector projection means evaluates the evaluation value of the inter prediction mode when the evaluation value of the inter prediction mode is The motion vector is projected onto the next motion search target frame only when the value is less than or equal to the value.

本発明は、前記動き探索手段は、複数の動き探索対象フレームの中に現対象フレームよりも順序が後ろのフレームを参照するか否かを判定し、前記動き探索対象フレームの順序が後のフレームを参照する場合、原画像を用いた動き探索を実施し、求めた動きベクトルを連結して投影することを特徴とする。   According to the present invention, the motion search means determines whether or not to refer to a frame whose order is later than the current target frame among a plurality of motion search target frames. Is referred to, a motion search using the original image is performed, and the obtained motion vectors are connected and projected.

本発明は、前記動き探索手段は、前記原画像を用いた動き探索を実施した参照フレームが符号化された後に、前記原画像を用いて算出した動きベクトルを開始点として前記原画像の際に用いた探索範囲よりも小さい探索範囲で再度動き探索をやり直すことを特徴とする。   In the present invention, the motion search means uses a motion vector calculated using the original image as a starting point after encoding a reference frame in which a motion search using the original image is encoded. A feature is that the motion search is performed again in a search range smaller than the used search range.

本発明は、前記判定手段により予測対象ブロック内に前のフレームから動きベクトルが投影されていないと判定され、周囲に動きベクトルが投影されている場合に、予測対象ブロックに最も距離が小さい動きベクトルにより補間する補間手段をさらに備えることを特徴とする。   In the present invention, it is determined that the motion vector is not projected from the previous frame in the prediction target block by the determination means, and the motion vector having the shortest distance to the prediction target block is projected around the motion vector. Further, an interpolation means for performing interpolation is provided.

本発明は、映像符号化を行う際に動きベクトルを検出する動きベクトル検出方法であって、処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定する判定ステップと、前記判定ステップにより投影された動きベクトルがあると判定された場合に、投影されている全ての動きベクトルから予測動きベクトルを算出して動き探索の開始点に設定し、動きベクトルがないと判定された場合に、ゼロベクトルを動き探索の開始点とする開始点設定ステップと、前記開始点を基に動き探索を行う動き探索ステップと、前記動き探索結果に基づき、前記予測ブロックの画面間予測モードの評価値を算出する評価値算出ステップと、前記評価値を比較して、最小の評価値となる前記予測ブロックの前記動きベクトルを次の動き探索対象フレームへ投影する動きベクトル投影ステップとを有することを特徴とする。   The present invention is a motion vector detection method for detecting a motion vector when video coding is performed, and determines whether or not there is a motion vector projected from a previous frame in a prediction block to be processed. When it is determined that there is a motion vector projected by the determination step and the determination step, a predicted motion vector is calculated from all the projected motion vectors and set as a motion search start point. If it is determined that there is not, a start point setting step using a zero vector as a start point for motion search, a motion search step for performing motion search based on the start point, and based on the motion search result, An evaluation value calculation step for calculating an evaluation value of the inter-screen prediction mode, and the motion vector of the prediction block that is the smallest evaluation value by comparing the evaluation value The characterized by having a motion vector projection step of projecting to the next motion search target frame.

本発明は、コンピュータを、前記動きベクトル検出装置として機能させるための動きベクトル検出プログラムである。   The present invention is a motion vector detection program for causing a computer to function as the motion vector detection device.

本発明によれば、演算量が大きくなることを抑えつつ動きベクトルの検出精度を向上することができるという効果が得られる。   According to the present invention, it is possible to improve the motion vector detection accuracy while suppressing an increase in the calculation amount.

本発明の第1実施形態における映像符号化装置の構成を示すブロック図である。It is a block diagram which shows the structure of the video coding apparatus in 1st Embodiment of this invention. 図1に示す予測動きベクトル生成部12の構成を示すブロック図である。It is a block diagram which shows the structure of the prediction motion vector production | generation part 12 shown in FIG. 図2に示す予測動きベクトル生成部12の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the prediction motion vector production | generation part 12 shown in FIG. 動き探索の処理順序を示す図である。It is a figure which shows the processing order of a motion search. ステップS10における次の動き探索対象フレームで利用するための予測動きベクトルの生成方法を示す図である。It is a figure which shows the production | generation method of the prediction motion vector for utilizing with the next motion search object frame in step S10. 第2実施形態による予測動きベクトル生成部12の構成を示すブロック図である。It is a block diagram which shows the structure of the prediction motion vector production | generation part 12 by 2nd Embodiment. 図6に示す予測動きベクトル生成部12の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the prediction motion vector production | generation part 12 shown in FIG. 第3実施形態による予測動きベクトル生成部12の構成を示すブロック図である。It is a block diagram which shows the structure of the motion vector predictor production | generation part 12 by 3rd Embodiment. 図8に示す予測動きベクトル生成部12の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the motion vector predictor production | generation part 12 shown in FIG. 予測動きベクトルの生成の様子を表す図である。It is a figure showing the mode of the production | generation of a prediction motion vector. 第5実施形態による予測動きベクトル生成部12の構成を示すブロック図である。It is a block diagram which shows the structure of the prediction motion vector production | generation part 12 by 5th Embodiment. 図11に示す予測動きベクトル生成部12の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the prediction motion vector production | generation part 12 shown in FIG. 同じ空間位置を利用する場合の問題点を示す説明図である。It is explanatory drawing which shows the problem in the case of utilizing the same space position. オクルージョンが発生した場合の問題点を示す説明図である。It is explanatory drawing which shows a problem when an occlusion generate | occur | produces.

<第1実施形態>
以下、図面を参照して、本発明の第1実施形態による動きベクトル検出装置を説明する。以下の説明で、対象フレームとは、次に動き探索の対象となるフレーム(動きベクトルを投影するフレーム)、動き探索対象フレームとは、現在動き探索を実施しているフレームのことを示す。また、以下の説明においては、HEVCを例に説明するが、本発明はHEVCに限定されるものではない。また、参照構造の最上位レイヤ間隔(GOP)が4の場合について説明するが、これに限定されるものではない。
<First Embodiment>
Hereinafter, a motion vector detection device according to a first embodiment of the present invention will be described with reference to the drawings. In the following description, the target frame indicates a frame that is the next target for motion search (a frame on which a motion vector is projected), and the motion search target frame indicates a frame that is currently performing a motion search. In the following description, HEVC will be described as an example, but the present invention is not limited to HEVC. Although the case where the highest layer interval (GOP) of the reference structure is 4 will be described, the present invention is not limited to this.

図1は同実施形態における映像符号化装置の構成を示すブロック図である。本発明による動きベクトル検出装置は、図1に示すような映像符号化装置内において用いられる。映像符号化装置100は、減算部1と、直交変換/量子化部2と、可変長符号化部3と、モード判定部4と、逆量子化/逆直交変換部5と、加算部6と、イントラ/インター切替スイッチ7と、イントラ予測部8と、インター予測部9と、ループフィルタ部10と、復号ピクチャメモリ11と、予測動きベクトル生成部12と、動きベクトルメモリ13とを備える。   FIG. 1 is a block diagram showing a configuration of a video encoding apparatus in the embodiment. The motion vector detection apparatus according to the present invention is used in a video encoding apparatus as shown in FIG. The video encoding device 100 includes a subtraction unit 1, an orthogonal transform / quantization unit 2, a variable length encoding unit 3, a mode determination unit 4, an inverse quantization / inverse orthogonal transform unit 5, and an addition unit 6. , An intra / inter switch 7, an intra prediction unit 8, an inter prediction unit 9, a loop filter unit 10, a decoded picture memory 11, a predicted motion vector generation unit 12, and a motion vector memory 13.

減算部1は、入力映像を構成するピクチャである入力ピクチャの符号化対象ブロックの各予測サイズに対して、イントラ予測部8またはインター予測部9から出力される予測信号との差分を計算し、直交変換/量子化部2に対して出力する。直交変換/量子化部2は差分に対して直交変換と量子化を施して出力する。可変長符号化部3は、直交変換/量子化部2の出力を符号化データに変換する。   The subtraction unit 1 calculates the difference between the prediction signal output from the intra prediction unit 8 or the inter prediction unit 9 for each prediction size of the encoding target block of the input picture that is a picture constituting the input video, Output to the orthogonal transform / quantization unit 2. The orthogonal transformation / quantization unit 2 performs orthogonal transformation and quantization on the difference and outputs the result. The variable length encoding unit 3 converts the output of the orthogonal transform / quantization unit 2 into encoded data.

イントラ/インター切替スイッチ7は、各符号化対象ブロックの予測モードに応じて切り替えを行う。逆量子化/逆直交変換部5は、直交変換/量子化部2から出力されたブロック信号から誤差を含む差分信号に戻す。加算部6は、イントラ予測部8またはインター予測部9から出力される予測信号と差分信号とを加算することで復元信号へ変換する。イントラ予測部8は、この復元信号を入力し、後のブロックのイントラ予測に利用する。   The intra / inter switch 7 performs switching according to the prediction mode of each encoding target block. The inverse quantization / inverse orthogonal transform unit 5 returns the block signal output from the orthogonal transform / quantization unit 2 to a differential signal including an error. The adding unit 6 converts the prediction signal output from the intra prediction unit 8 or the inter prediction unit 9 and the difference signal into a restored signal. The intra prediction unit 8 inputs this restored signal and uses it for intra prediction of the subsequent block.

また、加算部6の出力は、1ピクチャが終わった後にループフィルタ部10に対して出力する。ループフィルタ部10は、ループフィルタを施す。この出力は復号ピクチャメモリ11に記憶される。復号ピクチャメモリ11に記憶された参照フレームは、インター予測部9に入力され、後のピクチャのインター予測に利用する。   The output of the adding unit 6 is output to the loop filter unit 10 after one picture is completed. The loop filter unit 10 applies a loop filter. This output is stored in the decoded picture memory 11. The reference frame stored in the decoded picture memory 11 is input to the inter prediction unit 9 and used for inter prediction of the subsequent picture.

インター予測部9は各予測ブロックサイズに対して入力映像と復号ピクチャメモリ11からの参照フレームを入力し、動き探索及び動き補償を実施するか、或いは既に動きベクトルを算出している場合は動きベクトルメモリ13から動きベクトルを呼び出して動き補償を実施し、イントラ/インター切替スイッチ7へ予測信号を出力する。動きベクトルメモリ13はインター予測部9からの各予測ブロックサイズの動きベクトルを記憶し、予測動きベクトル生成部12へ出力する。   The inter prediction unit 9 inputs an input video and a reference frame from the decoded picture memory 11 for each prediction block size, and performs motion search and motion compensation, or a motion vector when a motion vector has already been calculated. A motion vector is called from the memory 13 to perform motion compensation, and a prediction signal is output to the intra / inter switch 7. The motion vector memory 13 stores the motion vector of each prediction block size from the inter prediction unit 9 and outputs the motion vector to the prediction motion vector generation unit 12.

予測動きベクトル生成部12は予測動きベクトルを生成し、インター予測部9に対して出力する。モード判定部4は入力映像と復元信号及び可変長符号化部3からの符号量を入力として評価値を算出し、最も評価値の小さい予測ブロックサイズを予測動きベクトル生成部12に対して出力する。   The predicted motion vector generation unit 12 generates a predicted motion vector and outputs it to the inter prediction unit 9. The mode determination unit 4 receives the input video, the restoration signal, and the code amount from the variable length coding unit 3 as input, calculates an evaluation value, and outputs the predicted block size having the smallest evaluation value to the motion vector predictor generation unit 12. .

次に、図2を参照して、図1に示す予測動きベクトル生成部12の構成を説明する。図2は、図1に示す予測動きベクトル生成部12の構成を示すブロック図である。予測動きベクトル生成部12は、ブロックサイズ情報と前フレームの動きベクトルとを入力し、動きベクトルを投影する動きベクトル投影部121と、動きベクトル投影部121の出力から予測動きベクトルを算出する予測動きベクトル算出部122とを備えている。   Next, the configuration of the motion vector predictor generator 12 shown in FIG. 1 will be described with reference to FIG. FIG. 2 is a block diagram showing a configuration of the motion vector predictor generator 12 shown in FIG. The predicted motion vector generation unit 12 receives the block size information and the motion vector of the previous frame, projects a motion vector, and predicts a motion vector from the output of the motion vector projection unit 121. And a vector calculation unit 122.

次に、図3を参照して、図2に示す予測動きベクトル生成部12の動作を説明する。図3は、図2に示す予測動きベクトル生成部12の動作を示すフローチャートである。まず、動き探索はGOP単位で以下の様に同じ参照フレームを参照する複数フレームを対象として、参照フレームに近い順に実施する(ステップS1)。図4は、動き探索の処理順序を示す図である。この例では前方向の動き探索を同じ参照フレームF1を参照しているF2からF5までを順に動き探索対象とする。F1を参照しないピクチャがある場合はそのピクチャは動き探索順序から外して実施する。   Next, the operation of the motion vector predictor generator 12 shown in FIG. 2 will be described with reference to FIG. FIG. 3 is a flowchart showing the operation of the motion vector predictor generator 12 shown in FIG. First, motion search is performed in order from the closest to the reference frame for a plurality of frames that refer to the same reference frame as follows in units of GOP (step S1). FIG. 4 is a diagram illustrating a processing order of motion search. In this example, the forward motion search is sequentially performed from F2 to F5 referring to the same reference frame F1. If there is a picture that does not refer to F1, that picture is removed from the motion search order.

次に、動き探索対象フレームの符号化ブロックをラスタスキャン順に処理対象とし(ステップS2)、更に符号化ブロック内の予測ブロックを処理対象とする(ステップS3)。予測動きベクトル算出部122は、処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定し(ステップS4)、投影された動きベクトルがある場合には投影されている全ての動きベクトルから予測動きベクトルを算出し、動き探索の開始点(予測動きベクトル)に設定する(ステップS5)。予測動きベクトルの算出には平均や動き探索時の絶対誤差和による重みづけ平均、メディアン等を用いる。   Next, the coding block of the motion search target frame is set as a processing target in the raster scan order (step S2), and a prediction block in the coding block is set as a processing target (step S3). The predicted motion vector calculation unit 122 determines whether or not there is a motion vector projected from the previous frame in the prediction block to be processed (step S4). If there is a projected motion vector, the predicted motion vector is projected. A predicted motion vector is calculated from all the motion vectors that have been set, and is set as a motion search start point (predicted motion vector) (step S5). For the calculation of the predicted motion vector, an average, a weighted average based on an absolute error sum during motion search, a median, or the like is used.

一方、動きベクトルが1つも投影されていない場合、予測動きベクトル算出部122は、ゼロベクトルを開始点とする(ステップS6)。そして、予測動きベクトル算出部122は、開始点を基に動き探索を実施し、算出した動きベクトルは動きベクトルメモリ13に記憶する(ステップS7)。次に、予測動きベクトル算出部122は、対象予測ブロックサイズの画面間予測モードの評価値を算出する(ステップS8)。評価値には例えば以下の式で求められるRDコストを用いる。
RDコスト=D+λR
ここで、Dは対象予測ブロックと参照ブロックの誤差、Rは符号量、λはラグランジアン定数である。全ての予測ブロックでの評価値が算出されたら評価値を比較する(ステップS9)。そして、動きベクトル投影部121は、最小の評価値となる予測ブロックの動きベクトルを次の動き探索対象フレームへ投影する(ステップS10)。
On the other hand, when no motion vector is projected, the motion vector predictor calculation unit 122 sets the zero vector as a start point (step S6). Then, the predicted motion vector calculation unit 122 performs a motion search based on the start point, and stores the calculated motion vector in the motion vector memory 13 (step S7). Next, the motion vector predictor calculation unit 122 calculates the evaluation value of the inter prediction mode of the target prediction block size (step S8). For the evaluation value, for example, the RD cost obtained by the following formula is used.
RD cost = D + λR
Here, D is an error between the target prediction block and the reference block, R is a code amount, and λ is a Lagrangian constant. When the evaluation values in all prediction blocks are calculated, the evaluation values are compared (step S9). Then, the motion vector projecting unit 121 projects the motion vector of the prediction block having the minimum evaluation value onto the next motion search target frame (step S10).

図5は、ステップS10における次の動き探索対象フレームで利用するための予測動きベクトルの生成方法を示す図である。この例ではF2の動き探索を実施した後、F3の動き探索で利用するための予測動きベクトルを生成する様子を表している。予測動きベクトルは時間距離に応じてスケーリングして算出する。例えばF3の予測動きベクトルmvp3=(mvp3x,mvp3y)はF2で算出した動きベクトルmv2=(mv2x,mv2y)とピクチャの表示順番号(T)を用いて以下の式で算出する。
mvp3=(T3−T1)/(T2−T1)×mv2
FIG. 5 is a diagram showing a predicted motion vector generation method for use in the next motion search target frame in step S10. In this example, after a motion search for F2 is performed, a predicted motion vector to be used in the motion search for F3 is generated. The predicted motion vector is calculated by scaling according to the time distance. For example, the predicted motion vector mvp3 = (mvp3x, mvp3y) of F3 is calculated by the following equation using the motion vector mv2 = (mv2x, mv2y) calculated in F2 and the picture display order number (T).
mvp3 = (T3-T1) / (T2-T1) × mv2

この予測動きベクトルを次の動き探索対象フレームに延長するようにして投影する。例えばF2で求めた動きベクトルをF3に投影する場合はF2で算出した動きベクトルの左上の座標位置を(x2,y2)とすると、投影するF3の位置(x3,y3)を基準に予測ブロックサイズ分の領域に画素単位で投影する。
(x3,y3)=(x2+mv3x0−mv2x,y2+mv3y0−mv2y)
The predicted motion vector is projected so as to be extended to the next motion search target frame. For example, when the motion vector obtained in F2 is projected onto F3, assuming that the upper left coordinate position of the motion vector calculated in F2 is (x2, y2), the predicted block size is based on the projected F3 position (x3, y3). Project in pixels on the minute area.
(X3, y3) = (x2 + mv3x0−mv2x, y2 + mv3y0−mv2y)

これらを動き探索対象フレームの全符号化ブロックが終了するまで実施する。これらの手順をF5の動き探索まで実施する。F5までの探索が終了したら、F5の符号化を行う。その後、後ろ方向の動き探索を行うが図4に示すようにF5を参照フレームとしてF4〜F1の順序で前方向の時と同様の手順で動き探索を実施する。符号化する際は求めていない参照フレームに対してのみ通常の動き探索を実施し、既に求めている参照フレームに対しては動きベクトルメモリに格納されている動きベクトルを利用して符号化を行う。   These are carried out until all the coding blocks of the motion search target frame are completed. These procedures are performed until the motion search of F5. When the search up to F5 is completed, encoding of F5 is performed. Thereafter, the backward motion search is performed. As shown in FIG. 4, the motion search is performed in the same order as in the forward direction in the order of F4 to F1, with F5 as a reference frame. When encoding, normal motion search is performed only on reference frames that have not been obtained, and encoding is performed on reference frames that have already been obtained using motion vectors stored in the motion vector memory. .

また、算出した画面間予測モードの評価値も保存しておき、符号化の際に再利用する。さらに、求めていない参照フレームに対する動き探索を先程決定した最適な予測ブロックサイズのみで実施してもよく、或いは最適予測ブロックサイズ以外の予測ブロックサイズを除外し、演算量を削減してもよい。   Also, the calculated evaluation value of the inter-screen prediction mode is stored and reused at the time of encoding. Furthermore, the motion search for the reference frame that has not been obtained may be performed only with the optimal prediction block size determined previously, or the prediction block size other than the optimal prediction block size may be excluded to reduce the calculation amount.

このように、同じ参照フレームを参照する複数フレームの動き探索を参照フレームから時間的に近い順に実施し、算出した動きベクトルを延長するように次の動き探索対象フレームに投影し、その動きベクトルが投影された領域における動き探索の開始点として動き探索を行う。この時、画面間予測モードの評価値を算出し、評価値が最小となる予測ブロックサイズのみを投影の対象とする。   In this way, motion search of a plurality of frames that refer to the same reference frame is performed in order of time closest to the reference frame, and the calculated motion vector is projected onto the next motion search target frame so as to be extended. A motion search is performed as the start point of the motion search in the projected area. At this time, the evaluation value of the inter-screen prediction mode is calculated, and only the prediction block size that minimizes the evaluation value is set as a projection target.

この構成によれば、同じ参照フレームを参照する複数フレームの動き探索を参照フレームに近い順に実施し、動き探索により得られた動きベクトルを次の動き探索の対象となるフレームに投影することで、物体の動きを考慮した予測動きベクトルを生成するため、探索精度が向上する。この時、複数の画面間予測モードの評価値を算出し、評価値を比較することで、画面間予測において物体の動きを最も良く反映する最適な予測ブロックサイズを決定することができるため、その最適な予測ブロックサイズの動きベクトルのみを投影対象とすることで、予測動きベクトル精度が向上する。   According to this configuration, by performing a motion search of a plurality of frames that refer to the same reference frame in the order close to the reference frame, projecting the motion vector obtained by the motion search onto a frame that is a target of the next motion search, Since the predicted motion vector is generated in consideration of the motion of the object, the search accuracy is improved. At this time, by calculating the evaluation values of the plurality of inter-screen prediction modes and comparing the evaluation values, it is possible to determine the optimal prediction block size that best reflects the motion of the object in the inter-screen prediction. The prediction motion vector accuracy is improved by using only the motion vector having the optimal prediction block size as the projection target.

<第2実施形態>
次に、本発明の第2実施形態による動きベクトル検出装置を説明する。図6は、第2実施形態による予測動きベクトル生成部12の構成を示すブロック図である。この図において、図2に示す構成要素と同一の部分には同一の符号を付し、その説明を省略する。この図に示す予測動きベクトル生成部12が図2に示す予測動きベクトル生成部12と異なる点は、イントラ/インター判定部123が新たに設けられている点である。
Second Embodiment
Next, a motion vector detection device according to a second embodiment of the present invention will be described. FIG. 6 is a block diagram showing the configuration of the motion vector predictor generator 12 according to the second embodiment. In this figure, the same parts as those shown in FIG. 2 are denoted by the same reference numerals, and the description thereof is omitted. The difference between the predicted motion vector generation unit 12 shown in this figure and the predicted motion vector generation unit 12 shown in FIG. 2 is that an intra / inter determination unit 123 is newly provided.

次に、図7を参照して、図6に示す予測動きベクトル生成部12の動作を説明する。図7は、図6に示す予測動きベクトル生成部12の動作を示すフローチャートである。図7において、図3に示す処理動作と同一の部分には同一の符号を付し、その説明を簡単に行う。この図に示す処理動作が図3に示す処理動作と異なる点は、ステップS11、S12が新たに追加されている点である。   Next, the operation of the motion vector predictor generator 12 shown in FIG. 6 will be described with reference to FIG. FIG. 7 is a flowchart showing the operation of the motion vector predictor generator 12 shown in FIG. In FIG. 7, the same parts as those in the processing operation shown in FIG. The processing operation shown in this figure is different from the processing operation shown in FIG. 3 in that steps S11 and S12 are newly added.

まず、動き探索はGOP単位で以下の様に同じ参照フレームを参照する複数フレームを対象として、参照フレームに近い順に実施する(ステップS1)。続いて、動き探索対象フレームの符号化ブロックをラスタスキャン順に処理対象とし(ステップS2)、更に符号化ブロック内の予測ブロックを処理対象とする(ステップS3)。予測動きベクトル算出部122は、処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定し(ステップS4)、投影された動きベクトルがある場合には投影されている全ての動きベクトルから予測動きベクトルを算出し、動き探索の開始点(予測動きベクトル)に設定する(ステップS5)。予測動きベクトルの算出には平均や動き探索時の絶対誤差和による重みづけ平均、メディアン等を用いる。   First, motion search is performed in order from the closest to the reference frame for a plurality of frames that refer to the same reference frame as follows in units of GOP (step S1). Subsequently, the coding block of the motion search target frame is set as a processing target in the raster scan order (step S2), and a prediction block in the coding block is set as a processing target (step S3). The predicted motion vector calculation unit 122 determines whether or not there is a motion vector projected from the previous frame in the prediction block to be processed (step S4). If there is a projected motion vector, the predicted motion vector is projected. A predicted motion vector is calculated from all the motion vectors that have been set, and is set as a motion search start point (predicted motion vector) (step S5). For the calculation of the predicted motion vector, an average, a weighted average based on an absolute error sum during motion search, a median, or the like is used.

一方、動きベクトルが1つも投影されていない場合、予測動きベクトル算出部122は、ゼロベクトルを開始点とする(ステップS6)。そして、予測動きベクトル算出部122は、開始点を基に動き探索を実施し、算出した動きベクトルは動きベクトルメモリ13に記憶する(ステップS7)。次に、予測動きベクトル算出部122は、対象予測ブロックサイズの画面間予測モードの評価値を算出する(ステップS8)。評価値には例えば以下の式で求められるRDコストを用いる。
RDコスト=D+λR
ここで、Dは対象予測ブロックと参照ブロックの誤差、Rは符号量、λはラグランジアン定数である。
On the other hand, when no motion vector is projected, the motion vector predictor calculation unit 122 sets the zero vector as a start point (step S6). Then, the predicted motion vector calculation unit 122 performs a motion search based on the start point, and stores the calculated motion vector in the motion vector memory 13 (step S7). Next, the motion vector predictor calculation unit 122 calculates the evaluation value of the inter prediction mode of the target prediction block size (step S8). For the evaluation value, for example, the RD cost obtained by the following formula is used.
RD cost = D + λR
Here, D is an error between the target prediction block and the reference block, R is a code amount, and λ is a Lagrangian constant.

次に、予測動きベクトル算出部122は、対象予測ブロックサイズの画面間予測モードの評価値だけでなく画面内予測モードの評価値も算出する(ステップS11)。評価値の算出には原画像或いは画面内予測で予測した場合の復元画像を用いる。   Next, the motion vector predictor calculation unit 122 calculates not only the evaluation value of the inter prediction mode of the target prediction block size but also the evaluation value of the intra prediction mode (step S11). The evaluation value is calculated using an original image or a restored image predicted by intra prediction.

次に、予測動きベクトル算出部122は、全ての予測ブロックでの評価値が算出されたら評価値を比較する(ステップS9)。そして、イントラ/インター判定部123は、画面間予測モードと画面内予測モードの評価値を比較し(ステップS12)、画面間予測モードの評価値が画面内予測モードの評価値以下の場合にだけ動きベクトルを次の動き探索対象フレームに投影する(ステップS10)。ここで算出した画面内予測モードの評価値も保存しておき、後で符号化する際に再利用する。また、画面間予測モードの評価値が画面内予測モードの評価値よりも小さいブロックについてはSkip/Mergeを含む双方向予測モードの計算をしないようにして演算量を削減してもよい。   Next, the predicted motion vector calculation unit 122 compares the evaluation values when the evaluation values in all the prediction blocks are calculated (step S9). The intra / inter determination unit 123 compares the evaluation values of the inter-screen prediction mode and the intra-screen prediction mode (step S12), and only when the evaluation value of the inter-screen prediction mode is equal to or less than the evaluation value of the intra-screen prediction mode. The motion vector is projected onto the next motion search target frame (step S10). The evaluation value of the intra prediction mode calculated here is also saved and reused when encoding later. Further, the calculation amount may be reduced by not calculating the bi-directional prediction mode including Skip / Merge for the block whose evaluation value in the inter-screen prediction mode is smaller than the evaluation value in the intra-screen prediction mode.

このように、動き探索時に画面内予測モードの評価値を算出し、画面間予測モードと比較した結果、画面内予測モードの評価値が小さい場合にはその領域の動きベクトルを投影の対象から除外する。   As described above, when the evaluation value of the intra prediction mode is calculated at the time of motion search and compared with the inter prediction mode, if the evaluation value of the intra prediction mode is small, the motion vector of the area is excluded from the projection target. To do.

この構成によれば、画面内予測の評価値を算出し、画面間予測と比較することで、画面内予測が選ばれるブロック領域を相対的に決定することができるため、閾値の設定問題を無くし、オクルージョン領域等の推定誤差要因となる画面内領域の動きベクトルを除外し、更なる予測動きベクトル精度の向上を実現する。   According to this configuration, by calculating the evaluation value of the intra prediction and comparing it with the inter prediction, it is possible to relatively determine the block area where the intra prediction is selected, thereby eliminating the threshold setting problem. In addition, the motion vector of the in-screen region that causes the estimation error such as the occlusion region is excluded, and the prediction motion vector accuracy is further improved.

<第3実施形態>
次に、本発明の第3実施形態による動きベクトル検出装置を説明する。図8は、第3実施形態による予測動きベクトル生成部12の構成を示すブロック図である。この図において、図6に示す構成要素と同一の部分には同一の符号を付し、その説明を省略する。この図に示す予測動きベクトル生成部12が図6に示す予測動きベクトル生成部12と異なる点は、動きベクトル連結部124が新たに設けられている点である。図8は、図6に対して、動きベクトル連結部124を追加した例を示す図であるが、図2に対して動きベクトル連結部124を追加した構成であってもよい。
<Third Embodiment>
Next, a motion vector detection device according to a third embodiment of the present invention will be described. FIG. 8 is a block diagram showing a configuration of the motion vector predictor generator 12 according to the third embodiment. In this figure, the same parts as those shown in FIG. 6 are denoted by the same reference numerals, and the description thereof is omitted. The difference between the predicted motion vector generating unit 12 shown in this figure and the predicted motion vector generating unit 12 shown in FIG. 6 is that a motion vector connecting unit 124 is newly provided. 8 is a diagram illustrating an example in which a motion vector coupling unit 124 is added to FIG. 6, but a configuration in which a motion vector coupling unit 124 is added to FIG. 2 may be used.

次に、図9を参照して、図8に示す予測動きベクトル生成部12の動作を説明する。図9は、図8に示す予測動きベクトル生成部12の動作を示すフローチャートである。図9において、図7に示す処理動作と同一の部分には同一の符号を付し、その説明を簡単に行う。この図に示す処理動作が図7に示す処理動作と異なる点は、ステップS13、S14が新たに追加されている点である。図9は、図7に対して、ステップS13、S14を追加した例を示す図であるが、図3に対してステップS13、S14を追加した処理動作であってもよい。   Next, the operation of the motion vector predictor generator 12 shown in FIG. 8 will be described with reference to FIG. FIG. 9 is a flowchart showing the operation of the motion vector predictor generator 12 shown in FIG. In FIG. 9, the same parts as those in the processing operation shown in FIG. The processing operation shown in this figure is different from the processing operation shown in FIG. 7 in that steps S13 and S14 are newly added. 9 is a diagram illustrating an example in which steps S13 and S14 are added to FIG. 7, but a processing operation in which steps S13 and S14 are added to FIG. 3 may be used.

まず、動き探索はGOP単位で以下の様に同じ参照フレームを参照する複数フレームを対象として、参照フレームに近い順に実施する(ステップS1)。続いて、動き探索対象フレームの符号化ブロックをラスタスキャン順に処理対象とし(ステップS2)、更に符号化ブロック内の予測ブロックを処理対象とする(ステップS3)。予測動きベクトル算出部122は、処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定し(ステップS4)、投影された動きベクトルがある場合には投影されている全ての動きベクトルから予測動きベクトルを算出し、動き探索の開始点(予測動きベクトル)に設定する(ステップS5)。予測動きベクトルの算出には平均や動き探索時の絶対誤差和による重みづけ平均、メディアン等を用いる。   First, motion search is performed in order from the closest to the reference frame for a plurality of frames that refer to the same reference frame as follows in units of GOP (step S1). Subsequently, the coding block of the motion search target frame is set as a processing target in the raster scan order (step S2), and a prediction block in the coding block is set as a processing target (step S3). The predicted motion vector calculation unit 122 determines whether or not there is a motion vector projected from the previous frame in the prediction block to be processed (step S4). If there is a projected motion vector, the predicted motion vector is projected. A predicted motion vector is calculated from all the motion vectors that have been set, and is set as a motion search start point (predicted motion vector) (step S5). For the calculation of the predicted motion vector, an average, a weighted average based on an absolute error sum during motion search, a median, or the like is used.

一方、動きベクトルが1つも投影されていない場合、予測動きベクトル算出部122は、ゼロベクトルを開始点とする(ステップS6)。そして、予測動きベクトル算出部122は、開始点を基に動き探索を実施し、算出した動きベクトルは動きベクトルメモリ13に記憶する(ステップS7)。   On the other hand, when no motion vector is projected, the motion vector predictor calculation unit 122 sets the zero vector as a start point (step S6). Then, the predicted motion vector calculation unit 122 performs a motion search based on the start point, and stores the calculated motion vector in the motion vector memory 13 (step S7).

次に、動きベクトル連結部124は、複数の動き探索対象フレームの中に現対象フレームよりも順序が後ろのフレームを参照するかを判定する(ステップS13)。この判定の結果、対象フレームの順序が後のフレームを参照する場合、動きベクトル連結部124は、原画を用いた動き探索を実施し、動きベクトルメモリ13へ記憶する(ステップS14)。例えば図4に示す例ではF2がF3を参照しているので、F2の動き探索時にF3に対して原画を用いて動き探索を実施する。この時、投影する予測動きベクトルmvp3はF2のF1に対する動きベクトルをmv2_F1=(mv2x_F1 mv2y_F1)、F3に対する動きベクトルをmv2_F3=(mv2x_F3, mv2y_F3)とすると以下の式によって求める。
mvp3=mv2_F1−mv2_F3
Next, the motion vector connecting unit 124 determines whether to refer to a frame whose order is later than the current target frame among the plurality of motion search target frames (step S13). As a result of this determination, when the frame of the target frame refers to a later frame, the motion vector concatenation unit 124 performs a motion search using the original image and stores it in the motion vector memory 13 (step S14). For example, in the example shown in FIG. 4, since F2 refers to F3, a motion search is performed using the original image for F3 during the motion search of F2. At this time, the predicted motion vector mvp3 to be projected is obtained by the following expression when the motion vector for F1 of F2 is mv2_F1 = (mv2x_F1 mv2y_F1) and the motion vector for F3 is mv2_F3 = (mv2x_F3, mv2y_F3).
mvp3 = mv2_F1-mv2_F3

また、投影する位置は、
(x3,y3)=(x2−mv2x_F3,y2−mv2y_F3)
となる。図10は、予測動きベクトルの生成の様子を表す図である。この時、画面間予測モードの評価値を算出する際は前方向、後ろ方向、双方向のいずれかで算出する。また、後ろ方向の動き探索は図3の動き探索順序(後ろ方向)には従わず、前方向の動き探索順序と同じ順序で実施し、符号化時には動きベクトルメモリから呼び出して符号化を行う。
Also, the position to project is
(X3, y3) = (x2-mv2x_F3, y2-mv2y_F3)
It becomes. FIG. 10 is a diagram illustrating how a predicted motion vector is generated. At this time, when calculating the evaluation value of the inter-screen prediction mode, it is calculated in one of the forward direction, the backward direction, and the bidirectional direction. Further, the backward motion search does not follow the motion search order (backward direction) in FIG. 3, but is performed in the same order as the forward motion search order, and is encoded by calling from the motion vector memory during encoding.

次に、予測動きベクトル算出部122は、各予測ブロックの評価値を算出する(ステップS8)。評価値には例えば以下の式で求められるRDコストを用いる。
RDコスト=D+λR
ここで、Dは対象予測ブロックと参照ブロックの誤差、Rは符号量、λはラグランジアン定数である。
Next, the motion vector predictor calculation unit 122 calculates an evaluation value of each prediction block (step S8). For the evaluation value, for example, the RD cost obtained by the following formula is used.
RD cost = D + λR
Here, D is an error between the target prediction block and the reference block, R is a code amount, and λ is a Lagrangian constant.

次に、予測動きベクトル算出部122は、各予測ブロックサイズで画面間予測モードの評価値だけでなく画面内予測モードの評価値も算出する(ステップS11)。評価値の算出には原画像或いは画面内予測で予測した場合の復元画像を用いる。   Next, the motion vector predictor calculation unit 122 calculates not only the evaluation value of the inter prediction mode but also the evaluation value of the intra prediction mode for each prediction block size (step S11). The evaluation value is calculated using an original image or a restored image predicted by intra prediction.

次に、予測動きベクトル算出部122は、全ての予測ブロックでの評価値が算出されたら評価値を比較する(ステップS9)。そして、イントラ/インター判定部123は、画面間予測モードと画面内予測モードの評価値を比較し(ステップS12)、画面間予測モードの評価値が画面内予測モード以下の場合にだけ動きベクトルを次の動き探索対象フレームに投影する(ステップS10)。ここで算出した画面内予測モードの評価値も保存しておき、後で符号化する際に再利用する。また、画面間予測モードの評価値が画面内予測モードの評価値よりも小さいブロックについてはSkip/Mergeを含む双方向予測モードの計算をしないようにして演算量を削減してもよい。   Next, the predicted motion vector calculation unit 122 compares the evaluation values when the evaluation values in all the prediction blocks are calculated (step S9). Then, the intra / inter determination unit 123 compares the evaluation values of the inter-screen prediction mode and the intra-screen prediction mode (step S12), and calculates a motion vector only when the evaluation value of the inter-screen prediction mode is equal to or lower than the intra-screen prediction mode. Projecting to the next motion search target frame (step S10). The evaluation value of the intra prediction mode calculated here is also saved and reused when encoding later. Further, the calculation amount may be reduced by not calculating the bi-directional prediction mode including Skip / Merge for the block whose evaluation value in the inter-screen prediction mode is smaller than the evaluation value in the intra-screen prediction mode.

このように、同じ参照フレームを参照する複数フレーム(現在の動き探索対象フレームよりも順序が後)の中に動き探索対象フレームの参照フレームがある場合には、原画を用いて動き探索を実施し、算出した第1の動きベクトルと原画を用いて算出した第2の方向の動きベクトルを連結したものを投影する。   As described above, when there is a reference frame of a motion search target frame in a plurality of frames (the order is later than the current motion search target frame) referring to the same reference frame, a motion search is performed using the original image. Then, a combination of the calculated first motion vector and the motion vector in the second direction calculated using the original image is projected.

この構成によれば、同じ参照フレームを参照する複数フレームの中で動き探索順序が後ろのフレームを参照フレームとする場合には、(復元画像でなく)原画を用いて動き探索を実施し、動きベクトルを連結して投影する。こうすることで、物体の動きが連続していない場合にも精度の高い予測動きベクトルを生成することができる。   According to this configuration, when a frame whose motion search order is later in a plurality of frames that refer to the same reference frame is used as a reference frame, a motion search is performed using an original image (not a restored image) Concatenate and project vectors. By doing so, it is possible to generate a highly accurate predicted motion vector even when the motion of the object is not continuous.

<第4実施形態>
次に、本発明の第4実施形態による動きベクトル検出装置を説明する。第4実施形態による動きベクトル検出装置は、第3の実施形態とは以下の点が異なる。第3実施形態では、後ろ方向の動きベクトルは原画像を用いて探索を行った際の動きベクトルを動きベクトルメモリから呼び出して符号化に利用したが、第4実施形態では参照フレームが符号化され、復元された後に原画像を用いて探索を行った動きベクトルを開始点として再度原画像を用いた際の探索範囲よりも小さい探索範囲でやり直す。
<Fourth embodiment>
Next, a motion vector detection device according to a fourth embodiment of the present invention will be described. The motion vector detection device according to the fourth embodiment differs from the third embodiment in the following points. In the third embodiment, the motion vector in the backward direction is retrieved from the motion vector memory and used for the encoding when the search is performed using the original image, but the reference frame is encoded in the fourth embodiment. Then, the motion vector searched using the original image after the restoration is used as a starting point, and the search range smaller than the search range when the original image is used again is redone.

このように、原画を用いて動き探索を実施した参照フレームが符号化された後に、原画を用いて算出した第2の動きベクトルを開始点として原画の際に用いた探索範囲よりも小さい探索範囲で再度探索をやり直す。   As described above, after the reference frame that has been subjected to motion search using the original image is encoded, the search range that is smaller than the search range that was used for the original image with the second motion vector calculated using the original image as the starting point. Repeat the search again.

この構成によれば、原画を用いて動き探索を実施した参照フレームが符号化された後に復元画像を用いて動き探索をやり直す。この時、原画を用いた時の動きベクトルを探索開始点として、原画の際に用いた探索範囲よりも小さい探索範囲で実施する。第3実施形態では原画を用いて探索をしているのでそのまま動きベクトルを符号化に利用すると、本来の復元画像を用いて探索する場合に比して符号化効率が低下する。それを回避するために再度動き探索をやり直す必要があるが、単純にやり直すだけだとその分の演算量が増えてしまう。そこで、原画で算出したベクトルを開始点として原画の際に用いた探索範囲よりも小さい探索範囲で動き探索をやり直すことで、原画像を用いた場合の計算結果を無駄にせず、少ない演算量で動きベクトルを求め直すことができる。   According to this configuration, after the reference frame on which the motion search is performed using the original image is encoded, the motion search is performed again using the restored image. At this time, the search is performed in a search range smaller than the search range used in the original image, using the motion vector when the original image is used as a search start point. In the third embodiment, since the search is performed using the original image, if the motion vector is used for encoding as it is, the encoding efficiency is reduced as compared with the case of searching using the original restored image. In order to avoid this, it is necessary to redo the motion search again, but if it is simply redone, the amount of computation will increase accordingly. Therefore, by re-starting the motion search in the search range smaller than the search range used in the original image using the vector calculated in the original image as a starting point, the calculation result when using the original image is not wasted and the amount of calculation is small. The motion vector can be obtained again.

<第5実施形態>
次に、本発明の第5実施形態による動きベクトル検出装置を説明する。図11は、第5実施形態による予測動きベクトル生成部12の構成を示すブロック図である。この図において、図8に示す構成要素と同一の部分には同一の符号を付し、その説明を省略する。この図に示す予測動きベクトル生成部12が図8に示す予測動きベクトル生成部12と異なる点は、動きベクトル補間部125が新たに設けられている点である。図11は、図8に対して、動きベクトル補間部125を追加した例を示す図であるが、図2、図6に対して動きベクトル補間部125を追加した構成であってもよい。
<Fifth Embodiment>
Next, a motion vector detection device according to a fifth embodiment of the present invention will be described. FIG. 11 is a block diagram illustrating the configuration of the motion vector predictor generator 12 according to the fifth embodiment. In this figure, the same parts as those shown in FIG. 8 are denoted by the same reference numerals, and the description thereof is omitted. The difference between the predicted motion vector generation unit 12 shown in this figure and the predicted motion vector generation unit 12 shown in FIG. 8 is that a motion vector interpolation unit 125 is newly provided. 11 is a diagram illustrating an example in which a motion vector interpolation unit 125 is added to FIG. 8, but a configuration in which a motion vector interpolation unit 125 is added to FIGS. 2 and 6 may be used.

次に、図12を参照して、図11に示す予測動きベクトル生成部12の動作を説明する。図12は、図11に示す予測動きベクトル生成部12の動作を示すフローチャートである。図12において、図9に示す処理動作と同一の部分には同一の符号を付し、その説明を簡単に行う。この図に示す処理動作が図9に示す処理動作と異なる点は、ステップS15、S16が新たに追加されている点である。図12は、図11に対して、ステップS15、S16を追加した例を示す図であるが、図3、図7に対してステップS15、S16を追加した処理動作であってもよい。   Next, the operation of the motion vector predictor generator 12 shown in FIG. 11 will be described with reference to FIG. FIG. 12 is a flowchart showing the operation of the motion vector predictor generator 12 shown in FIG. In FIG. 12, the same reference numerals are given to the same portions as the processing operation shown in FIG. The processing operation shown in this figure is different from the processing operation shown in FIG. 9 in that steps S15 and S16 are newly added. FIG. 12 is a diagram illustrating an example in which steps S15 and S16 are added to FIG. 11, but a processing operation in which steps S15 and S16 are added to FIGS.

まず、動き探索はGOP単位で以下の様に同じ参照フレームを参照する複数フレームを対象として、参照フレームに近い順に実施する(ステップS1)。続いて、動き探索対象フレームの符号化ブロックをラスタスキャン順に処理対象とし(ステップS2)、更に符号化ブロック内の予測ブロックを処理対象とする(ステップS3)。予測動きベクトル算出部122は、処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定する(ステップS4)。   First, motion search is performed in order from the closest to the reference frame for a plurality of frames that refer to the same reference frame as follows in units of GOP (step S1). Subsequently, the coding block of the motion search target frame is set as a processing target in the raster scan order (step S2), and a prediction block in the coding block is set as a processing target (step S3). The predicted motion vector calculation unit 122 determines whether there is a motion vector projected from the previous frame in the predicted block to be processed (step S4).

動き探索時に予測対象ブロック内に前のフレームから動きベクトルが投影されていない場合で、周囲に動きベクトルが投影されている場合(ステップS15)に、動きベクトル補間部125は、予測対象ブロックに最も距離が小さい動きベクトルで補間する(ステップS16)。最も距離が小さい動きベクトルが複数ある場合にはそれらの平均や重み付き平均、メディアン等を用いて補間する。周囲に1つも投影されていない場合はゼロベクトルを設定する。   When a motion vector is not projected from the previous frame in the prediction target block at the time of motion search and a motion vector is projected around (step S15), the motion vector interpolation unit 125 applies the most to the prediction target block. Interpolation is performed with a motion vector having a small distance (step S16). When there are a plurality of motion vectors having the shortest distance, interpolation is performed using an average of them, a weighted average, a median, or the like. A zero vector is set when none is projected around.

一方、投影された動きベクトルがある場合には投影されている全ての動きベクトルから予測動きベクトルを算出し、動き探索の開始点(予測動きベクトル)に設定する(ステップS5)。予測動きベクトルの算出には平均や動き探索時の絶対誤差和による重みづけ平均、メディアン等を用いる。   On the other hand, if there is a projected motion vector, a predicted motion vector is calculated from all the projected motion vectors, and is set as a motion search start point (predicted motion vector) (step S5). For the calculation of the predicted motion vector, an average, a weighted average based on an absolute error sum during motion search, a median, or the like is used.

次に、動きベクトルが1つも投影されていない場合、予測動きベクトル算出部122は、ゼロベクトルを開始点とする(ステップS6)。そして、予測動きベクトル算出部122は、開始点を基に動き探索を実施し、算出した動きベクトルは動きベクトルメモリ13に記憶する(ステップS7)。   Next, when no motion vector is projected, the predicted motion vector calculation unit 122 sets the zero vector as a start point (step S6). Then, the predicted motion vector calculation unit 122 performs a motion search based on the start point, and stores the calculated motion vector in the motion vector memory 13 (step S7).

次に、動きベクトル連結部124は、複数の動き探索対象フレームの中に現対象フレームよりも順序が後ろのフレームを参照するかを判定する(ステップS13)この判定の結果、対象フレームの順序が後のフレームを参照する場合、動きベクトル連結部124は、原画を用いた動き探索を実施し、動きベクトルメモリ13へ記憶する(ステップS14)。例えば図4に示す例ではF2がF3を参照しているので、F2の動き探索時にF3に対して原画を用いて動き探索を実施する。この時、投影する予測動きベクトルmvp3はF2のF1に対する動きベクトルをmv2_F1=(mv2x_F1 mv2y_F1)、F3に対する動きベクトルをmv2_F3=(mv2x_F3, mv2y_F3)とすると以下の式によって求める。
mvp3=mv2_F1−mv2_F3
Next, the motion vector concatenation unit 124 determines whether to refer to a frame whose order is later than the current target frame among the plurality of motion search target frames (step S13). When referring to a later frame, the motion vector connecting unit 124 performs a motion search using the original image and stores the motion search in the motion vector memory 13 (step S14). For example, in the example shown in FIG. 4, since F2 refers to F3, a motion search is performed using the original image for F3 during the motion search of F2. At this time, the predicted motion vector mvp3 to be projected is obtained by the following expression when the motion vector for F1 of F2 is mv2_F1 = (mv2x_F1 mv2y_F1) and the motion vector for F3 is mv2_F3 = (mv2x_F3, mv2y_F3).
mvp3 = mv2_F1-mv2_F3

また、投影する位置は、
(x3,y3)=(x2−mv2x_F3,y2−mv2y_F3)
となる。図10は、予測動きベクトルの生成の様子を表す図である。この時、画面間予測モードの評価値を算出する際は前方向、後ろ方向、双方向のいずれかで算出する。また、後ろ方向の動き探索は図3の動き探索順序(後ろ方向)には従わず、前方向の動き探索順序と同じ順序で実施し、符号化時には動きベクトルメモリから呼び出して符号化を行う。
Also, the position to project is
(X3, y3) = (x2-mv2x_F3, y2-mv2y_F3)
It becomes. FIG. 10 is a diagram illustrating how a predicted motion vector is generated. At this time, when calculating the evaluation value of the inter-screen prediction mode, it is calculated in one of the forward direction, the backward direction, and the bidirectional direction. Further, the backward motion search does not follow the motion search order (backward direction) in FIG. 3, but is performed in the same order as the forward motion search order, and is encoded by calling from the motion vector memory during encoding.

次に、予測動きベクトル算出部122は、各予測ブロックの評価値を算出する(ステップS8)。評価値には例えば以下の式で求められるRDコストを用いる。
RDコスト=D+λR
ここで、Dは対象予測ブロックと参照ブロックの誤差、Rは符号量、λはラグランジアン定数である。
Next, the motion vector predictor calculation unit 122 calculates an evaluation value of each prediction block (step S8). For the evaluation value, for example, the RD cost obtained by the following formula is used.
RD cost = D + λR
Here, D is an error between the target prediction block and the reference block, R is a code amount, and λ is a Lagrangian constant.

次に、予測動きベクトル算出部122は、各予測ブロックサイズで画面間予測モードの評価値だけでなく画面内予測モードの評価値も算出する(ステップS11)。評価値の算出には原画像或いは画面内予測で予測した場合の復元画像を用いる。   Next, the motion vector predictor calculation unit 122 calculates not only the evaluation value of the inter prediction mode but also the evaluation value of the intra prediction mode for each prediction block size (step S11). The evaluation value is calculated using an original image or a restored image predicted by intra prediction.

次に、予測動きベクトル算出部122は、全ての予測ブロックでの評価値が算出されたら評価値を比較する(ステップS9)。そして、イントラ/インター判定部123は、画面間予測モードと画面内予測モードの評価値を比較し(ステップS12)、画面間予測モードの評価値が画面内予測モード以下の場合にだけ動きベクトルを次の動き探索対象フレームに投影する(ステップS10)。ここで算出した画面内予測モードの評価値も保存しておき、後で符号化する際に再利用する。また、画面間予測モードの評価値が画面内予測モードの評価値よりも小さいブロックについてはSkip/Mergeを含む双方向予測モードの計算をしないようにして演算量を削減してもよい。   Next, the predicted motion vector calculation unit 122 compares the evaluation values when the evaluation values in all the prediction blocks are calculated (step S9). Then, the intra / inter determination unit 123 compares the evaluation values of the inter-screen prediction mode and the intra-screen prediction mode (step S12), and calculates a motion vector only when the evaluation value of the inter-screen prediction mode is equal to or lower than the intra-screen prediction mode. Projecting to the next motion search target frame (step S10). The evaluation value of the intra prediction mode calculated here is also saved and reused when encoding later. Further, the calculation amount may be reduced by not calculating the bi-directional prediction mode including Skip / Merge for the block whose evaluation value in the inter-screen prediction mode is smaller than the evaluation value in the intra-screen prediction mode.

このように、動きベクトルが投影されなかった領域を動きベクトルが投影されている最も距離が短い周囲の領域から補間する。   In this manner, the region where the motion vector is not projected is interpolated from the surrounding region where the motion vector is projected and which is the shortest distance.

この構成によれば、投影されなかった領域を投影されている最も近い周囲の領域から補間することで、投影されなかった領域においても予測動きベクトルを用いた探索を行うことができ、精度の高い動きベクトルを少ない演算量で算出可能になる。   According to this configuration, by interpolating the unprojected area from the nearest surrounding area being projected, it is possible to perform a search using the predicted motion vector even in the unprojected area, with high accuracy. The motion vector can be calculated with a small amount of calculation.

前述した実施形態における予測動きベクトル生成部12をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。   You may make it implement | achieve the prediction motion vector production | generation part 12 in embodiment mentioned above with a computer. In that case, a program for realizing this function may be recorded on a computer-readable recording medium, and the program recorded on this recording medium may be read into a computer system and executed. Here, the “computer system” includes an OS and hardware such as peripheral devices. The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory inside a computer system serving as a server or a client in that case may be included and a program held for a certain period of time. Further, the program may be for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in the computer system. It may be realized using hardware such as PLD (Programmable Logic Device) or FPGA (Field Programmable Gate Array).

以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。   As mentioned above, although embodiment of this invention has been described with reference to drawings, the said embodiment is only the illustration of this invention, and it is clear that this invention is not limited to the said embodiment. is there. Therefore, additions, omissions, substitutions, and other modifications of the components may be made without departing from the technical idea and scope of the present invention.

動きベクトルの検出精度を向上することが不可欠な用途に適用できる。   It can be applied to applications in which it is essential to improve the detection accuracy of motion vectors.

1・・・減算部、2・・・直交変換/量子化部、3・・・可変長符号化部、4・・・モード判定部、5・・・逆量子化/逆直交変換部、6・・・加算部、7・・・イントラ/インター切替スイッチ、8・・・イントラ予測部、9・・・インター予測部、10・・・ループフィルタ部、11・・・復号ピクチャメモリ、12・・・予測動きベクトル生成部、13・・・動きベクトルメモリ   DESCRIPTION OF SYMBOLS 1 ... Subtraction part, 2 ... Orthogonal transformation / quantization part, 3 ... Variable length encoding part, 4 ... Mode determination part, 5 ... Dequantization / inverse orthogonal transformation part, 6 ... Adder, 7 ... Intra / inter switch, 8 ... Intra prediction unit, 9 ... Inter prediction unit, 10 ... Loop filter unit, 11 ... Decoded picture memory, 12. ..Predicted motion vector generation unit, 13 ... motion vector memory

Claims (7)

映像符号化を行う際に動きベクトルを検出する動きベクトル検出装置であって、
処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定する判定手段と、
前記判定手段により投影された動きベクトルがあると判定された場合に、投影されている全ての動きベクトルから予測動きベクトルを算出して動き探索の開始点に設定し、動きベクトルがないと判定された場合に、ゼロベクトルを動き探索の開始点とする開始点設定手段と、
前記開始点を基に動き探索を行う動き探索手段と、
前記動き探索結果に基づき、前記予測ブロックの画面間予測モードの評価値を算出する評価値算出手段と、
前記評価値を比較して、最小の評価値となる前記予測ブロックの前記動きベクトルを次の動き探索対象フレームへ投影する動きベクトル投影手段と
を備えることを特徴とする動きベクトル検出装置。
A motion vector detection device that detects a motion vector when performing video encoding,
Determining means for determining whether or not there is a motion vector projected from the previous frame in the prediction block to be processed;
When it is determined by the determination means that there is a projected motion vector, a predicted motion vector is calculated from all the projected motion vectors and set as a motion search start point, and it is determined that there is no motion vector. A starting point setting means having a zero vector as a starting point for motion search,
Motion search means for performing a motion search based on the start point;
An evaluation value calculating means for calculating an evaluation value of an inter-screen prediction mode of the prediction block based on the motion search result;
A motion vector detecting device comprising: a motion vector projecting unit that compares the evaluation values and projects the motion vector of the prediction block having the minimum evaluation value onto a next motion search target frame.
前記評価値算出手段は、さらに前記予測ブロックの画面内予測モードの評価値を算出し、
前記動きベクトル投影手段は、前記画面間予測モードの評価値が前記画面内予測モードの評価値以下の場合にだけ前記動きベクトルを次の動き探索対象フレームに投影することを特徴とする請求項1に記載の動きベクトル検出装置。
The evaluation value calculation means further calculates an evaluation value of the intra prediction mode of the prediction block,
The motion vector projecting unit projects the motion vector onto a next motion search target frame only when the evaluation value of the inter-screen prediction mode is equal to or lower than the evaluation value of the intra-screen prediction mode. The motion vector detection device described in 1.
前記動き探索手段は、複数の動き探索対象フレームの中に現対象フレームよりも順序が後ろのフレームを参照するか否かを判定し、前記動き探索対象フレームの順序が後のフレームを参照する場合、原画像を用いた動き探索を実施し、求めた動きベクトルを連結して投影することを特徴とする請求項1または2に記載の動きベクトル検出装置。   The motion search means determines whether or not to refer to a frame whose order is later than the current target frame among a plurality of motion search target frames, and when the order of the motion search target frames refers to a later frame The motion vector detection apparatus according to claim 1, wherein a motion search using the original image is performed, and the obtained motion vectors are connected and projected. 前記動き探索手段は、前記原画像を用いた動き探索を実施した参照フレームが符号化された後に、前記原画像を用いて算出した動きベクトルを開始点として前記原画像の際に用いた探索範囲よりも小さい探索範囲で再度動き探索をやり直すことを特徴とする請求項3に記載の動きベクトル検出装置。   The motion search means uses a search range used for the original image with a motion vector calculated using the original image as a starting point after a reference frame subjected to motion search using the original image is encoded. The motion vector detection apparatus according to claim 3, wherein the motion search is performed again within a smaller search range. 前記判定手段により予測対象ブロック内に前のフレームから動きベクトルが投影されていないと判定され、周囲に動きベクトルが投影されている場合に、予測対象ブロックに最も距離が小さい動きベクトルにより補間する補間手段をさらに備えることを特徴とする請求項1から4のいずれか1項に記載の動きベクトル検出装置。   Interpolation that interpolates with the motion vector having the shortest distance to the prediction target block when it is determined by the determination means that the motion vector is not projected from the previous frame in the prediction target block and the surrounding motion vector is projected The motion vector detection device according to claim 1, further comprising means. 映像符号化を行う際に動きベクトルを検出する動きベクトル検出方法であって、
処理対象となった予測ブロック内に前のフレームから投影された動きベクトルがあるか否かを判定する判定ステップと、
前記判定ステップにより投影された動きベクトルがあると判定された場合に、投影されている全ての動きベクトルから予測動きベクトルを算出して動き探索の開始点に設定し、動きベクトルがないと判定された場合に、ゼロベクトルを動き探索の開始点とする開始点設定ステップと、
前記開始点を基に動き探索を行う動き探索ステップと、
前記動き探索結果に基づき、前記予測ブロックの画面間予測モードの評価値を算出する評価値算出ステップと、
前記評価値を比較して、最小の評価値となる前記予測ブロックの前記動きベクトルを次の動き探索対象フレームへ投影する動きベクトル投影ステップと
を有することを特徴とする動きベクトル検出方法。
A motion vector detection method for detecting a motion vector when performing video encoding,
A determination step of determining whether or not there is a motion vector projected from the previous frame in the prediction block to be processed;
If it is determined that there is a motion vector projected by the determination step, a predicted motion vector is calculated from all the projected motion vectors and set as a motion search start point, and it is determined that there is no motion vector. A starting point setting step using a zero vector as a starting point for motion search,
A motion search step for performing a motion search based on the starting point;
An evaluation value calculating step for calculating an evaluation value of an inter-screen prediction mode of the prediction block based on the motion search result;
A motion vector detection method comprising: comparing the evaluation values and projecting the motion vector of the prediction block having the minimum evaluation value onto a next motion search target frame.
コンピュータを、請求項1から5のいずれか1項に記載の動きベクトル検出装置として機能させるための動きベクトル検出プログラム。   A motion vector detection program for causing a computer to function as the motion vector detection device according to any one of claims 1 to 5.
JP2014108058A 2014-05-26 2014-05-26 Motion vector detection apparatus, motion vector detection method, and motion vector detection program Active JP6159292B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014108058A JP6159292B2 (en) 2014-05-26 2014-05-26 Motion vector detection apparatus, motion vector detection method, and motion vector detection program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014108058A JP6159292B2 (en) 2014-05-26 2014-05-26 Motion vector detection apparatus, motion vector detection method, and motion vector detection program

Publications (2)

Publication Number Publication Date
JP2015226085A JP2015226085A (en) 2015-12-14
JP6159292B2 true JP6159292B2 (en) 2017-07-05

Family

ID=54842599

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014108058A Active JP6159292B2 (en) 2014-05-26 2014-05-26 Motion vector detection apparatus, motion vector detection method, and motion vector detection program

Country Status (1)

Country Link
JP (1) JP6159292B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6527460B2 (en) * 2015-12-25 2019-06-05 日本電信電話株式会社 Video coding apparatus, video coding method and video coding program
EP3611925A4 (en) * 2017-04-13 2020-03-25 Panasonic Intellectual Property Corporation of America Encoding device, decoding device, encoding method, and decoding method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4445463B2 (en) * 2005-12-16 2010-04-07 株式会社東芝 Video re-encoding method and apparatus
JP2009111647A (en) * 2007-10-29 2009-05-21 Panasonic Corp Apparatus for detecting motion vector and method for detecting motion vector
US8462852B2 (en) * 2009-10-20 2013-06-11 Intel Corporation Methods and apparatus for adaptively choosing a search range for motion estimation
JP2012129791A (en) * 2010-12-15 2012-07-05 Hitachi Kokusai Electric Inc Image encoder

Also Published As

Publication number Publication date
JP2015226085A (en) 2015-12-14

Similar Documents

Publication Publication Date Title
US10856006B2 (en) Method and system using overlapped search space for bi-predictive motion vector refinement
JP7252282B2 (en) Image prediction method and related device
US11375226B2 (en) Method and apparatus of video coding with affine motion compensation
JP6689499B2 (en) Image prediction method and related apparatus
JP5277257B2 (en) Video decoding method and video encoding method
TWI556633B (en) Video decoding apparatus, video coding apparatus, video decoding method, video coding method, and storage medium
BR112020014654A2 (en) Affine motion compensation in video encoding
KR101713354B1 (en) Methods and apparatus for adaptively choosing a search range for motion estimation
TW201739252A (en) Method and apparatus of video coding with affine motion compensation
JP5833757B2 (en) Image encoding method, image decoding method, image encoding device, image decoding device, image encoding program, image decoding program, and recording medium
JP2011114572A (en) Image encoding apparatus, image decoding apparatus, image encoding method, and image decoding method
JP2015195575A (en) Moving picture encoding device and method
JP2024045191A (en) Encoding and decoding methods, apparatus and devices
JP5926451B2 (en) Image encoding method, image decoding method, image encoding device, image decoding device, image encoding program, and image decoding program
JP6159292B2 (en) Motion vector detection apparatus, motion vector detection method, and motion vector detection program
JP6259272B2 (en) Video encoding apparatus and video encoding program
JP5281597B2 (en) Motion vector prediction method, motion vector prediction apparatus, and motion vector prediction program
JP6696889B2 (en) IMAGE ENCODING DEVICE, IMAGE ENCODING METHOD, AND COMPUTER PROGRAM
JP2010273110A (en) Image encoding apparatus and image encoding method
JP2016187134A (en) Prediction mode determination method and prediction mode determination program
JP6148146B2 (en) Video encoding apparatus, video encoding method, and video encoding program
JP2018182435A (en) Motion vector prediction device and computer program
JP6438376B2 (en) Video encoding apparatus, video decoding apparatus, video encoding method, video decoding method, video encoding program, and video decoding program
JP5705948B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, moving picture encoding program, and moving picture decoding program
JP6139953B2 (en) Video encoding method, video decoding method, video encoding device, video decoding device, video encoding program, video decoding program, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160913

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170524

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170609

R150 Certificate of patent or registration of utility model

Ref document number: 6159292

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150