JP6363975B2 - Moving picture coding apparatus, moving picture coding method, and moving picture coding program - Google Patents

Moving picture coding apparatus, moving picture coding method, and moving picture coding program Download PDF

Info

Publication number
JP6363975B2
JP6363975B2 JP2015151124A JP2015151124A JP6363975B2 JP 6363975 B2 JP6363975 B2 JP 6363975B2 JP 2015151124 A JP2015151124 A JP 2015151124A JP 2015151124 A JP2015151124 A JP 2015151124A JP 6363975 B2 JP6363975 B2 JP 6363975B2
Authority
JP
Japan
Prior art keywords
image
motion vector
difference
gradient
sum
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
JP2015151124A
Other languages
Japanese (ja)
Other versions
JP2017034408A (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 JP2015151124A priority Critical patent/JP6363975B2/en
Publication of JP2017034408A publication Critical patent/JP2017034408A/en
Application granted granted Critical
Publication of JP6363975B2 publication Critical patent/JP6363975B2/en
Active 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 moving image encoding apparatus, a moving image encoding method, and a moving image encoding program.

HEVC(High Efficiency Video Coding)は、H.264の次世代の映像符号化標準方式として策定された。HEVCは、H.264を上回る符号化効率を実現する符号化方式である。HEVCでは、インター符号化においても、予測モードの選択肢として周囲の予測モードを適用するマージモードを取り入れるなど、H.264などに比べて更に予測効率を向上させる手法が導入されている。   HEVC (High Efficiency Video Coding) It was formulated as a H.264 next-generation video coding standard system. HEVC is an H.264 standard. This is an encoding scheme that realizes encoding efficiency exceeding H.264. HEVC adopts a merge mode that applies a surrounding prediction mode as an option of a prediction mode even in inter coding. A technique for further improving the prediction efficiency compared to H.264 and the like has been introduced.

最新の映像符号化標準方式であるHEVCにおいて、インター符号化では次のような予測画像の生成手法が用いられている(例えば、非特許文献1参照)。
符号化対象ブロックに対し、それより前の復号済み画像を予測画像の候補とし、定められた領域内で誤差が最小となる領域を探索する。このとき、探索する領域全体に小数画素フィルタと呼ばれる固定フィルタを施すことにより、探索範囲の画素を小数画素分だけずらした位置を表し、かつ、実際には復号済み画像に存在しない画素を生成して、これを探索に用いることも可能である。また、双方向予測を行う場合には、それぞれ符号化対象ブロックの存在するフレームからの時間方向の距離による重みづけ和を取り、予測画像を生成する。
In HEVC, which is the latest video coding standard system, the following predictive image generation method is used in inter coding (see, for example, Non-Patent Document 1).
With respect to the encoding target block, a decoded image before that is set as a candidate for a predicted image, and a region where the error is minimized is searched for within a predetermined region. At this time, a fixed filter called a fractional pixel filter is applied to the entire area to be searched to express a position where the pixels in the search range are shifted by the fractional pixel, and a pixel that does not actually exist in the decoded image is generated. This can also be used for searching. When bi-directional prediction is performed, a weighted sum based on a distance in a time direction from a frame in which a block to be encoded exists is taken to generate a prediction image.

上記の手法によると、予測画像の生成には復号済み画像に直接存在しない画素を用いることも可能である。しかし、半画素生成フィルタ、双方向予測のいずれも画像の性質を考慮せずに一定のフィルタを施すため、適切な予測画像が生成されない可能性がある。実際、動きがある物体と背景が一緒に存在するブロックでは、参照画像中の物体の位置と背景とのずれがおきるため、物体と背景の両方が一致するような参照画像が一つのブロックとして抽出されにくい。また、半画素フィルタでは全体を一斉にずらしてしまうため、同様にこの問題を解決できない。重みづけ和を用いる場合も、全体に対して同一比の重みづけで線形和をとるため、この問題を解決することは困難である。
そこで、解決方法として以下の画像合成技術を用いることが考えられる。
According to the above method, it is also possible to use pixels that are not directly present in the decoded image to generate a predicted image. However, since both the half-pixel generation filter and the bidirectional prediction apply a certain filter without considering the image properties, there is a possibility that an appropriate predicted image cannot be generated. In fact, in a block where a moving object and the background exist together, the position of the object in the reference image and the background shift, so the reference image that matches both the object and the background is extracted as one block. It is hard to be done. In addition, since the entire half-pixel filter shifts all at once, this problem cannot be solved in the same manner. Even when a weighted sum is used, it is difficult to solve this problem because a linear sum is obtained with the same weighting for the whole.
Thus, it is conceivable to use the following image composition technique as a solution.

画像合成の手法の一つとしてPoisson画像合成(Poisson Image Editing;以下、「PIE」と記載する。)が知られている。PIEでは、片方の画像の輝度勾配を維持しつつ、もう一方の背景画像に埋め込む。これにより、ある画像の領域の一部を、別の画像を背景として自然に合成する(例えば、非特許文献2参照)。この手法は、理論上は背景画像がf、埋め込む画像(以下、勾配画像と呼ぶ)の輝度勾配がvのとき、以下に示す式(1)の方程式の解fを求めて合成画像とするものである。 As one of image synthesis methods, Poisson image synthesis (hereinafter referred to as “PIE”) is known. In PIE, the luminance gradient of one image is maintained and the image is embedded in the other background image. Thereby, a part of a region of a certain image is naturally synthesized with another image as a background (for example, see Non-Patent Document 2). In theory, when the background image is f * and the luminance gradient of the embedded image (hereinafter referred to as a gradient image) is v, the method obtains a solution f of the equation (1) shown below to obtain a composite image. Is.

Figure 0006363975
Figure 0006363975

式(1)の方程式の意味を説明する。第一式は、領域Ω上では、輝度勾配vをもつ画像と、合成画像である(1)の解fの輝度勾配に対して、divvとΔfが一致することを意味する。また、第二式は、Ωの境界δΩにおいて、背景画像fとfの輝度値が一致することを意味する。この方程式の解を求めることで、求めたい合成画像を得ることが可能である。 The meaning of the equation (1) will be described. The first equation means that divv and Δf coincide with the luminance gradient of the solution f in (1), which is the synthesized image, on the region Ω. The second equation means that the luminance values of the background image f * and f match at the boundary δΩ of Ω. By finding the solution of this equation, it is possible to obtain the desired composite image.

非特許文献1の技術に、PIEで生成した画像を予測画像として新たに用いるという手法を容易に類推することができる。これにより従来のインター予測で用いたような重みづけ予測のみでは適切な予測画像の生成が困難な場合にも、自然な予測画像を生成することができると考えられる。   A technique of newly using an image generated by PIE as a predicted image can be easily inferred from the technique of Non-Patent Document 1. Thus, it is considered that a natural prediction image can be generated even when it is difficult to generate an appropriate prediction image only by weighted prediction as used in conventional inter prediction.

この手法を用いた予測画像生成技術として、以下があげられる。すなわち、予測画像生成時に、背景画像と勾配画像の合成により新たな予測画像を生成し、予測効率を向上させる手法である。この技術では、テンプレートマッチングにより背景画像の符号量発生を抑えている(例えば、非特許文献3参照。)。詳しくは、より最適な予測画像を得る手法として、背景画像と勾配画像のすべての組合せに対して合成画像を生成し、最適となる合成画像を生成する背景画像・勾配画像を共に動きベクトルなどとして符号化する。   The following are examples of predicted image generation techniques using this method. That is, this is a technique for improving the prediction efficiency by generating a new predicted image by combining the background image and the gradient image when generating the predicted image. In this technique, generation of a code amount of a background image is suppressed by template matching (see, for example, Non-Patent Document 3). Specifically, as a method for obtaining a more optimal prediction image, a composite image is generated for all combinations of the background image and the gradient image, and both the background image and the gradient image that generate the optimal composite image are used as motion vectors. Encode.

"Recommendation ITU-T H.265: High efficiency video coding",2013年"Recommendation ITU-T H.265: High efficiency video coding", 2013 P. Perez, M. Gangnet, and A. Blake, "Poisson Image Editing", Proc. SIGGRAPH’03, 2003年, p.313-318P. Perez, M. Gangnet, and A. Blake, "Poisson Image Editing", Proc. SIGGRAPH’03, 2003, p.313-318 渡邊真由子,北原正樹,清水淳,“予測画像生成へのPoisson画像合成適用に関する一検討”,PCSJ/IMPS2014,2014年,P-1-02Mayuko Watanabe, Masaki Kitahara, Satoshi Shimizu, “A Study on Application of Poisson Image Synthesis to Predictive Image Generation”, PCSJ / IMPS2014, 2014, P-1-02

合成画像生成の際、予測画像として最適な合成画像を生成するためには、勾配画像と背景画像を組合せた結果として最適なものを探索する必要がある。以下の2つの探索方法が考えられる。   In generating a composite image, in order to generate an optimal composite image as a predicted image, it is necessary to search for an optimal one as a result of combining a gradient image and a background image. The following two search methods are conceivable.

(第1の方法)全探索により背景画像と勾配画像の最適な組合せを求める場合、符号化対象ブロックの画素数がX個、勾配画像の探索候補がA個、背景画像の探索候補がB個であるときには、探索に伴う差分演算回数は最大A×B×X回となる(ここで、X,A,Bはそれぞれ正の整数)。更には、探索ごとに合成画像を生成する必要がある。なお、探索に伴う差分演算回数とは、ある符号化対象ブロックに対する合成画像決定のための画素値の差分演算の発生回数としてカウントされるものである。例えば、全探索の場合、全探索で最適な組合せを決定するときには、符号化対象ブロックの予測画像の候補となりうる勾配画像と背景画像の組合せから合成画像を生成し、符号化対象ブロックと、生成したそれら合成画像それぞれとの画素値の差分を演算する。この演算回数が、探索に伴う差分演算回数となる。   (First Method) When an optimal combination of a background image and a gradient image is obtained by a full search, the number of pixels of the encoding target block is X, a gradient image search candidate is A, and a background image search candidate is B , The maximum number of differential operations associated with the search is A × B × X (where X, A, and B are positive integers, respectively). Furthermore, it is necessary to generate a composite image for each search. Note that the number of difference computations associated with the search is counted as the number of occurrences of pixel value difference computations for determining a composite image for a certain encoding target block. For example, in the case of a full search, when determining an optimal combination in the full search, a composite image is generated from a combination of a gradient image and a background image that can be a predicted image candidate of the encoding target block, and the encoding target block is generated. The difference in pixel value from each of the synthesized images is calculated. This number of calculations is the number of difference calculations associated with the search.

(第2の方法)一方、勾配画像と背景画像をそれぞれが最適になるよう独立に探索した場合であっても、以下が問題となる。
(1)探索に伴う差分演算回数は、(A+B)×X回必要である。
(2)組合せ最適化を行わないため、予測性能が悪化する可能性がある。
(Second Method) On the other hand, even when the gradient image and the background image are searched independently so as to be optimized, the following problem arises.
(1) The number of difference calculations associated with the search needs to be (A + B) × X times.
(2) Since the combinational optimization is not performed, the prediction performance may be deteriorated.

上記事情に鑑み、本発明は、インター符号化の際に参照する予測画像の生成に用いられる勾配画像と背景画像の組合せの探索にかかるコストを抑制しながら、予測画像の精度悪化を防ぐことができる動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラムを提供することを目的としている。   In view of the above circumstances, the present invention prevents deterioration in accuracy of a predicted image while suppressing the cost of searching for a combination of a gradient image and a background image used for generating a predicted image to be referred to during inter coding. An object of the present invention is to provide a moving image encoding device, a moving image encoding method, and a moving image encoding program.

本発明の一態様は、原画像と予測画像との差分の画像を符号化する動画像符号化装置であって、動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出部と、前記動きベクトルごとに、前記差分の和を算出する和算出部と、前記差分の和が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を背景画像に決定する背景画像決定部と、前記動きベクトルごとに、前記差分の分散を算出する分散算出部と、前記差分の分散が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を勾配画像に決定する勾配画像決定部と、前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成部と、を備える。 One aspect of the present invention is a moving image encoding apparatus that encodes an image of a difference between an original image and a predicted image, for each motion vector, a pixel in an encoding target block in the original image, and a reference image A difference calculation unit that calculates a difference in pixel value from a pixel moved by the motion vector from the pixel, a sum calculation unit that calculates a sum of the differences for each motion vector, and a sum of the differences A background image determination unit that selects a small motion vector and determines a background image in the reference image that has been moved from the coding target block by the selected motion vector as the background image; and the variance of the difference for each motion vector A motion calculation unit that calculates a variance of the difference, and selects the motion vector selected from the encoding target block in the reference image. It includes a gradient image determination unit that determines only the moving region in the gradient image, and a predicted image generation unit for generating a predicted image by combining said background image and said gradient image.

本発明の一態様は、原画像と予測画像との差分の画像を符号化する動画像符号化装置であって、動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出部と、前記動きベクトルごとに、前記符号化対象ブロックを分割した分割領域別の前記差分の部分和を算出する部分和算出部と、前記動きベクトルごとに、前記差分の和を算出する和算出部と、前記差分の和が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を背景画像に決定する背景画像決定部と、前記差分の部分和が小さい前記分割領域を勾配画像探索領域に選択する勾配画像探索領域決定部と、前記動きベクトルごとに、前記原画像における前記勾配画像探索領域と、前記動きベクトルにより特定される前記参照画像の領域との画素値の差分の分散を算出する分散算出部と、前記差分の分散が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を勾配画像に決定する勾配画像決定部と、前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成部と、を備える。 One aspect of the present invention is a moving image encoding apparatus that encodes an image of a difference between an original image and a predicted image, for each motion vector, a pixel in an encoding target block in the original image, and a reference image A difference calculation unit that calculates a difference in pixel value from a pixel moved by the motion vector from the pixel, and a partial sum of the differences for each divided region obtained by dividing the encoding target block for each motion vector For each motion vector, a sum calculation unit for calculating the sum of the differences, and a motion vector having a small sum of the differences, and from the block to be encoded in the reference image, A background image determining unit that determines a region moved by the selected motion vector as a background image, and a gradient that selects the divided region having a small partial sum of the differences as a gradient image search region An image search region determination unit, and a variance calculation unit that calculates, for each motion vector, a variance of pixel value differences between the gradient image search region in the original image and the reference image region specified by the motion vector A gradient image determining unit that selects a motion vector having a small variance of the difference and determines, as a gradient image, a region moved by the selected motion vector from the encoding target block in the reference image; and the background image And a predicted image generating unit that generates a predicted image by combining the gradient image and the gradient image.

本発明の一態様は、原画像と予測画像との差分の画像を符号化する動画像符号化装置であって、動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出部と、前記動きベクトルごとに、前記符号化対象ブロックを分割した分割領域別の前記差分の部分和を算出する部分和算出部と、前記動きベクトルごとに、前記差分の和を算出する和算出部と、前記動きベクトルごとに、前記差分の部分和が最小の前記分割領域を選択し、選択された前記分割領域と前記差分の部分和の分散が最小の動きベクトルを選択する組合せ生成部と、前記動きベクトルごとに、前記参照画像において、前記符号化対象ブロックから前記動きベクトルだけ移動した背景画像候補ブロックと、前記符号化対象ブロックから、前記動きベクトルについて前記組合せ生成部により選択された前記動きベクトルだけ移動した勾配画像候補ブロックとの合成画像を生成し、コストが最小の前記合成画像の生成に用いられた前記勾配画像候補ブロック及び前記背景画像候補ブロックを勾配画像及び背景画像に決定する背景及び勾配画像決定部と、前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成部と、を備える。   One aspect of the present invention is a moving image encoding apparatus that encodes an image of a difference between an original image and a predicted image, for each motion vector, a pixel in an encoding target block in the original image, and a reference image A difference calculation unit that calculates a difference in pixel value from a pixel moved by the motion vector from the pixel, and a partial sum of the differences for each divided region obtained by dividing the encoding target block for each motion vector A partial sum calculation unit for calculating the difference, a sum calculation unit for calculating the sum of the differences for each of the motion vectors, and for each motion vector, the divided region having the smallest partial sum of the differences is selected and selected. A combination generation unit that selects a motion vector having a minimum variance of a partial sum of the divided regions and the difference, and for each motion vector, in the reference image, from the encoding target block, A synthesized image of a background image candidate block moved by a vector and a gradient image candidate block moved by the motion vector selected by the combination generation unit for the motion vector from the encoding target block, and the cost is A background and gradient image determination unit that determines the gradient image candidate block and the background image candidate block used to generate the minimum combined image as a gradient image and a background image, and combines the background image and the gradient image. And a predicted image generation unit that generates a predicted image.

本発明の一態様は、原画像と予測画像との差分の画像を符号化する動画像符号化装置が実行する動画像符号化方法であって、動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出ステップと、前記動きベクトルごとに、前記差分の和を算出する和算出ステップと、前記差分の和が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を背景画像に決定する背景画像決定ステップと、前記動きベクトルごとに、前記差分の分散を算出する分散算出ステップと、前記差分の分散が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を勾配画像に決定する勾配画像決定ステップと、前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成ステップと、を有する。 One aspect of the present invention is a moving image encoding method executed by a moving image encoding apparatus that encodes an image of a difference between an original image and a predicted image, and an encoding target in the original image for each motion vector A difference calculating step of calculating a pixel value difference between a pixel in the block and a pixel at a position moved by the motion vector from the pixel in a reference image; and sum calculation for calculating a sum of the differences for each of the motion vectors A background image determination step of selecting a motion vector having a small sum of differences, and determining a region moved by the selected motion vector from the coding target block in the reference image as a background image; and the motion For each vector, a variance calculating step for calculating the variance of the difference and a motion vector having a small variance of the difference are selected and From the encoding target block, the gradient image determining step of determining a moved only the motion vector selected area to the gradient image, the predicted image generation step of generating a predicted image composition to the said background image and said gradient image Have.

本発明の一態様は、コンピュータを、上述したいずれかの動画像符号化装置として機能させる動画像符号化プログラムである。   One aspect of the present invention is a moving image encoding program that causes a computer to function as any of the above-described moving image encoding devices.

本発明により、インター符号化の際に参照する予測画像の生成に用いられる勾配画像と背景画像の組合せの探索にかかるコストを抑制しながら、予測画像の精度悪化を防ぐことが可能となる。   According to the present invention, it is possible to prevent deterioration in accuracy of a predicted image while suppressing the cost for searching for a combination of a gradient image and a background image used for generating a predicted image to be referred to during inter coding.

本発明の一実施形態による動画像符号化装置の構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of the moving image encoder by one Embodiment of this invention. 第1の実施形態による動きベクトル予測部の詳細な構成を示す機能ブロック図である。It is a functional block diagram which shows the detailed structure of the motion vector estimation part by 1st Embodiment. 同実施形態による背景画像と勾配画像の探索範囲を示す図である。It is a figure which shows the search range of the background image and gradient image by the embodiment. 同実施形態による動きベクトル予測部の符号化処理を示す処理フローである。It is a processing flow which shows the encoding process of the motion vector estimation part by the embodiment. 第2の実施形態による符号化対象ブロックの分割を示す図である。It is a figure which shows the division | segmentation of the encoding object block by 2nd Embodiment. 同実施形態による背景画像と勾配画像の探索範囲を示す図である。It is a figure which shows the search range of the background image and gradient image by the embodiment. 同実施形態による動きベクトル予測部の詳細な構成を示す機能ブロック図である。It is a functional block diagram which shows the detailed structure of the motion vector estimation part by the embodiment. 同実施形態による動きベクトル予測部の符号化処理を示す処理フローである。It is a processing flow which shows the encoding process of the motion vector estimation part by the embodiment. 第3の実施形態による動きベクトル予測部の詳細な構成を示す機能ブロック図である。It is a functional block diagram which shows the detailed structure of the motion vector estimation part by 3rd Embodiment. 同実施形態による動きベクトル予測部の符号化処理を示す処理フローである。It is a processing flow which shows the encoding process of the motion vector estimation part by the embodiment.

以下、図面を参照して本発明の実施形態を説明する。
図1は、本発明の一実施形態による動画像符号化装置100の構成を示す機能ブロック図であり、本実施形態と関係する機能ブロックのみを抽出して示してある。動画像符号化装置100は、時間軸上で連続している複数の画像(フレーム)で構成された動画像を取り扱う。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a functional block diagram showing a configuration of a moving picture coding apparatus 100 according to an embodiment of the present invention, and only functional blocks related to the present embodiment are extracted and shown. The moving image encoding apparatus 100 handles a moving image composed of a plurality of images (frames) that are continuous on the time axis.

動画像符号化装置100は、符号化制御部101、DCT(Discrete Cosine Transform:離散コサイン変換)/量子化部102、逆量子化/IDCT(Inverse Discrete Cosine Transform:逆離散コサイン変換)部103、ループフィルタ104、動きベクトル予測部105、動き探索部106(予測画像生成部)、イントラ予測部107、選択部108、及び、エントロピー符号化部109を備える。符号化制御部101、DCT/量子化部102、逆量子化/IDCT部103、ループフィルタ104、動き探索部106、イントラ予測部107、選択部108、及び、エントロピー符号化部109は、それぞれ従来からある画像符号化処理の機能の一部を行う機能部である。そのため、これらの機能について述べる以下の説明は一例に過ぎず、動画像符号化が実現可能であれば他の構成が採用されてもよい。   The moving image encoding apparatus 100 includes an encoding control unit 101, a DCT (Discrete Cosine Transform) / quantization unit 102, an inverse quantization / IDCT (Inverse Discrete Cosine Transform) unit 103, a loop A filter 104, a motion vector prediction unit 105, a motion search unit 106 (predicted image generation unit), an intra prediction unit 107, a selection unit 108, and an entropy encoding unit 109 are provided. The encoding control unit 101, DCT / quantization unit 102, inverse quantization / IDCT unit 103, loop filter 104, motion search unit 106, intra prediction unit 107, selection unit 108, and entropy encoding unit 109 are respectively conventional. The functional unit that performs a part of the function of the image encoding process. Therefore, the following description describing these functions is merely an example, and other configurations may be adopted as long as moving image encoding can be realized.

符号化制御部101は、入力された動画像データ(以下「原画」という。)に対する符号化処理を制御する。例えば、符号化制御部101は、DCT/量子化部102及びイントラ予測部107を制御する。なお、原画は、符号化処理の対象となっている動画像の個々のフレーム(画像)である。   The encoding control unit 101 controls encoding processing for input moving image data (hereinafter referred to as “original image”). For example, the encoding control unit 101 controls the DCT / quantization unit 102 and the intra prediction unit 107. Note that the original image is an individual frame (image) of the moving image that is the target of the encoding process.

DCT/量子化部102は、原画と、動き探索部106又はイントラ予測部107から出力された予測画像との差分として得られる残差信号に対して離散コサイン変換及び量子化処理を行う。逆量子化/IDCT部103は、DCT/量子化部102によって量子化された残差信号に対し、逆量子化処理及びIDCT処理を行う。ループフィルタ104は、逆量子化/IDCT部103の出力に対してループフィルタリングを行った結果を参照画像として動き探索部106及び動きベクトル予測部105に出力する。動きベクトル予測部105は、原画とループフィルタ104から出力された参照画像とに基づいて動きベクトルの予測を行う。動きベクトル予測部105は、動きベクトルの予測によって、各符号化対象ブロックについて、背景画像と、背景画像に合成する勾配画像とを決定し、決定した結果を動き探索部106に出力する。   The DCT / quantization unit 102 performs discrete cosine transform and quantization processing on a residual signal obtained as a difference between the original image and the predicted image output from the motion search unit 106 or the intra prediction unit 107. The inverse quantization / IDCT unit 103 performs an inverse quantization process and an IDCT process on the residual signal quantized by the DCT / quantization unit 102. The loop filter 104 outputs a result obtained by performing loop filtering on the output of the inverse quantization / IDCT unit 103 to the motion search unit 106 and the motion vector prediction unit 105 as a reference image. The motion vector prediction unit 105 performs motion vector prediction based on the original image and the reference image output from the loop filter 104. The motion vector prediction unit 105 determines a background image and a gradient image to be combined with the background image for each encoding target block by motion vector prediction, and outputs the determined result to the motion search unit 106.

動き探索部106は、符号化対象ブロック単位で、動きベクトル予測部105が決定した背景画像と勾配画像をPIEにより合成し、予測画像を生成する。イントラ予測部107は、画面内予測処理を実行することによって、予測画像を生成する。選択部108は、動き探索部106によって生成された予測画像と、イントラ予測部107によって生成された予測画像と、のいずれかを選択し、出力する。原画と、選択部108によって選択された予測画像との差分がDCT/量子化部102に入力される。エントロピー符号化部109は、DCT/量子化部102によって量子化されたデータに対しエントロピー符号化処理を行い、ビットストリームとして出力する。   The motion search unit 106 generates a predicted image by synthesizing the background image and the gradient image determined by the motion vector predicting unit 105 by PIE for each block to be encoded. The intra prediction unit 107 generates a predicted image by executing an intra-screen prediction process. The selection unit 108 selects and outputs either the prediction image generated by the motion search unit 106 or the prediction image generated by the intra prediction unit 107. The difference between the original image and the predicted image selected by the selection unit 108 is input to the DCT / quantization unit 102. The entropy encoding unit 109 performs entropy encoding processing on the data quantized by the DCT / quantization unit 102 and outputs the result as a bit stream.

動画像符号化装置100は、以下の手法1又は手法2の符号化処理を行う。なお、下記の符号化処理において、処理の順番は矛盾が生じない限り逆転または並列でも可能である。   The moving image encoding apparatus 100 performs encoding processing according to the following method 1 or method 2. In the encoding process described below, the order of processing can be reversed or parallel as long as no contradiction occurs.

<手法1>
手法1では、動画像符号化装置100は、原画と参照画像の差分を先に求め、求めた差分を用いて参照画像における背景画像及び勾配画像を決定する。これにより、差分の演算回数が削減される。手法1の符号化は、以下の処理となる。
<Method 1>
In Method 1, the moving image coding apparatus 100 first obtains a difference between an original image and a reference image, and determines a background image and a gradient image in the reference image using the obtained difference. As a result, the number of calculation of the difference is reduced. The encoding of method 1 is performed as follows.

(処理1) 動画像符号化装置100は、背景画像探索において、取り得る動きベクトルごとに、原画の符号化対象ブロック内の各画素と、その画素から動きベクトルだけ移動した位置の参照画像の画素との画素値の差分を求める。
(処理2) 動画像符号化装置100は、動きベクトルごとに、処理1において求めた差分の和(絶対値和など)を求め、和が最小となる動きベクトルにより背景画像を決定する。
(処理3) 動画像符号化装置100は、動きベクトルごとに、処理1で求めた差分の分散を求め、分散が最小となる動きベクトルにより勾配画像を決定する。
(Processing 1) The moving image coding apparatus 100, for each possible motion vector, in the background image search, each pixel in the encoding target block of the original image, and a pixel of the reference image at a position moved by the motion vector from the pixel. The difference between the pixel values is obtained.
(Processing 2) The moving picture coding apparatus 100 obtains the sum (absolute value sum, etc.) of the differences obtained in Process 1 for each motion vector, and determines the background image based on the motion vector that minimizes the sum.
(Process 3) For each motion vector, the moving image encoding apparatus 100 determines the variance of the difference obtained in Process 1 and determines a gradient image based on the motion vector that minimizes the variance.

手法1によれば、勾配画像と背景画像の探索候補が重複している場合(A=B)に、差分演算回数をA×X回に抑えることができる。また、手法1では、勾配画像の算出に、従来技術で用いていた勾配(微分値)の代わりに画素値の分散を用いる。これにより、勾配画像と背景画像のそれぞれの各コストの算出過程のうち、一部を共通で求められる形(符号化対象画像と参照画像の対応する位置の画素の差分)に変更することが可能となる。従って、全体の差分演算回数の削減が可能である。   According to the technique 1, when the gradient image and the background image search candidates overlap (A = B), the number of difference calculations can be suppressed to A × X times. In Method 1, the gradient image is calculated by using the dispersion of pixel values instead of the gradient (differential value) used in the prior art. As a result, it is possible to change a part of the calculation process of each cost of the gradient image and the background image into a commonly obtained form (difference between pixels at corresponding positions of the encoding target image and the reference image). It becomes. Therefore, it is possible to reduce the total number of difference calculations.

<手法2>
手法2では、動画像符号化装置100は、手法1に加え、符号化領域を分割した分割領域ごとに差分の部分和を求める。これにより、背景画像の中でより原画からの差分が大きくなる領域を改善するような勾配画像を探索する。手法2の符号化は以下の処理となる。
<Method 2>
In technique 2, in addition to technique 1, moving picture coding apparatus 100 obtains a partial sum of differences for each divided area obtained by dividing the coding area. This searches for a gradient image that improves a region in the background image where the difference from the original image is larger. The encoding of method 2 is as follows.

(処理1) 動画像符号化装置100は、背景画像探索において、取り得る動きベクトルごとに、原画の符号化対象ブロック内の各画素と、その画素から動きベクトルだけ移動した位置の参照画像の画素との画素値の差分を求める。
(処理2) 動画像符号化装置100は、動きベクトルごとに、処理1において求めた差分の和(絶対値和など)と、分割領域ごとの差分の部分和を求める。
(処理3) 動画像符号化装置100は、差分の和が最小のものから順にN個の動きベクトルのそれぞれについて、差分の部分和が最大となる分割領域を求め、その分割領域と差分の分散が最小となる参照画像の領域の動きベクトルを特定する。
(処理4) 動画像符号化装置100は、処理3において得られたNパターンの動きベクトルの組合せについて、それら動きベクトルで特定される背景画像の候補と勾配画像の候補の画像とから合成画像を生成し、コストが最小となる組合せを選択する。動画像符号化装置100は、選択した組合せにより、予測画像の生成に用いられる背景画像・勾配画像の組合せを決定する。
(Processing 1) The moving image coding apparatus 100, for each possible motion vector, in the background image search, each pixel in the encoding target block of the original image, and a pixel of the reference image at a position moved by the motion vector from the pixel. The difference between the pixel values is obtained.
(Processing 2) For each motion vector, the moving image encoding apparatus 100 calculates a sum of differences (such as an absolute value sum) obtained in Process 1 and a partial sum of differences for each divided region.
(Process 3) The moving image encoding apparatus 100 obtains a divided region in which the partial sum of the differences is maximized for each of the N motion vectors in order from the smallest sum of the differences, and distributes the divided regions and the differences. The motion vector of the reference image area in which is minimum is specified.
(Processing 4) The moving image encoding apparatus 100 generates a composite image from the background image candidates and gradient image candidate images specified by the motion vectors for the combination of the N pattern motion vectors obtained in Process 3. Generate and select the combination with the lowest cost. The moving image encoding apparatus 100 determines a combination of a background image and a gradient image used for generating a predicted image based on the selected combination.

手法2では、手法1において背景画像ごとに特徴にあった勾配画像を決定する際、従来技術のように全勾配を計算する代わりに、背景画像が悪化している領域に対する最適な勾配画像を分散により決定する。候補となりうる合成画像のみを生成して比較できるため、手法1からの演算量増加を抑えつつ、より予測性能の高い合成画像を生成できる。   In Method 2, when determining a gradient image suitable for each background image in Method 1, instead of calculating the total gradient as in the conventional technique, the optimal gradient image for the region where the background image is deteriorated is distributed. Determined by Since only a composite image that can be a candidate can be generated and compared, a composite image with higher prediction performance can be generated while suppressing an increase in the amount of calculation from Method 1.

以下に、手法1及び手法2を実現する各実施形態を説明する。   Hereinafter, each embodiment for realizing the method 1 and the method 2 will be described.

[第1の実施形態]
本実施形態の動画像符号化装置100は、手法1を実現する。
図2は、本実施形態による動きベクトル予測部105の詳細な構成を示す機能ブロック図である。動きベクトル予測部105は、差分算出部151、和算出部153、背景画像決定部154、分散算出部155、及び、勾配画像決定部156を備える。差分算出部151は、探索範囲内で取り得る動きベクトルごとに、原画の符号化対象ブロック内の各画素と、その画素から動きベクトルだけ移動した位置の参照画像の画素との画素値の差分を算出する。差分算出部151は、算出結果を内部に備える(外部に備えてもよい)メモリ152に格納する。和算出部153は、動きベクトルごとに、差分算出部151により算出された差分の和を求める。背景画像決定部154は、差分の和が最小となる動きベクトルにより符号化対象ブロックを移動させた参照画像における領域を、背景画像に決定する。分散算出部155は、動きベクトルごとに、差分算出部151により算出された差分の分散を求める。勾配画像決定部156は、分散が最小となる動きベクトルにより符号化対象ブロックを移動させた参照画像における領域を、勾配画像に決定する。
[First Embodiment]
The moving image encoding apparatus 100 according to the present embodiment implements Method 1.
FIG. 2 is a functional block diagram showing a detailed configuration of the motion vector prediction unit 105 according to the present embodiment. The motion vector prediction unit 105 includes a difference calculation unit 151, a sum calculation unit 153, a background image determination unit 154, a variance calculation unit 155, and a gradient image determination unit 156. The difference calculation unit 151 calculates, for each motion vector that can be taken within the search range, a pixel value difference between each pixel in the encoding target block of the original image and a pixel in the reference image at a position moved by the motion vector from that pixel. calculate. The difference calculation unit 151 stores the calculation result in a memory 152 provided inside (may be provided outside). The sum calculation unit 153 obtains the sum of the differences calculated by the difference calculation unit 151 for each motion vector. The background image determination unit 154 determines a region in the reference image in which the block to be encoded is moved by the motion vector that minimizes the sum of differences as the background image. The variance calculation unit 155 obtains the variance of the difference calculated by the difference calculation unit 151 for each motion vector. The gradient image determination unit 156 determines a region in the reference image in which the encoding target block is moved by the motion vector having the minimum variance as a gradient image.

図3は、背景画像と勾配画像の探索範囲を示す図である。同図に示すように、符号化対象ブロックPは、[X,X+M]×[Y,Y+N]の領域であり、参照画像における背景画像及び勾配画像の探索範囲Qは、[X+X0,X+M+X1]×[Y+Y0,Y+N+Y1]の領域である。背景画像及び勾配画像の探索範囲Qは、例えば、HEVCにおける動きベクトル決定時に用いられる探索中心のように、周囲の符号化済み画像に用いられる従来の動きベクトル、または本合成により設定される背景画像・勾配画像から探索中心を決定し、これを中心とするM×N(M及びNは0より大きな整数)の領域とすることが考えられる。
また、以下では、原画像の(x,y)座標の画素値をO(x,y)、参照画像における勾配画像の(x,y)座標の画素値をR(x,y)、参照画像における背景画像の(x,y)座標の画素値をR’(x,y)と記載する。
FIG. 3 is a diagram illustrating the search range of the background image and the gradient image. As shown in the figure, the encoding target block P is an area of [X, X + M] × [Y, Y + N], and the search range Q of the background image and the gradient image in the reference image is [X + X0, X + M + X1] × This is an area of [Y + Y0, Y + N + Y1]. The search range Q of the background image and the gradient image is, for example, a conventional motion vector used for a surrounding encoded image, such as a search center used when determining a motion vector in HEVC, or a background image set by this synthesis. A search center is determined from the gradient image, and an area of M × N (M and N are integers greater than 0) centered on the search center is considered.
In the following, the pixel value of the (x, y) coordinate of the original image is O (x, y), the pixel value of the (x, y) coordinate of the gradient image in the reference image is R (x, y), and the reference image The pixel value of the (x, y) coordinate of the background image in is described as R ′ (x, y).

続いて、動きベクトル予測部105の符号化処理について説明する。
図4は、動きベクトル予測部105の符号化処理を示す処理フローである。
まず、差分算出部151は、差分の計算と計算結果のメモリ格納を行う(ステップS110)。背景画像候補ブロックを決定する背景画像動きベクトルを、(a,b)∈[X0,X1]×[Y0,Y1]とする。差分算出部151は、符号化対象ブロックP内の各画素と探索範囲Qにおいて取り得る背景画像動きベクトルそれぞれとの組合せについて、以下の式(2)に示す差分D(x,y,a,b)を算出し、メモリ152に格納する。差分D(x,y,a,b)は、原画像における符号化対象ブロックP内の画素の画素値O(x,y)と、その画素から背景画像動きベクトル(a,b)だけ移動した位置の背景画像の画素の画素値R(x+a,y+b)の差分である。
Next, the encoding process of the motion vector prediction unit 105 will be described.
FIG. 4 is a processing flow showing the encoding process of the motion vector prediction unit 105.
First, the difference calculation unit 151 calculates the difference and stores the calculation result in the memory (step S110). The background image motion vector for determining the background image candidate block is (a, b) ε [X0, X1] × [Y0, Y1]. The difference calculation unit 151 calculates the difference D (x, y, a, b) shown in the following equation (2) for the combination of each pixel in the encoding target block P and each background image motion vector that can be taken in the search range Q. ) Is calculated and stored in the memory 152. The difference D (x, y, a, b) is moved by the pixel value O (x, y) of the pixel in the encoding target block P in the original image and the background image motion vector (a, b) from the pixel. This is the difference in pixel value R (x + a, y + b) of the pixel in the background image at the position.

Figure 0006363975
Figure 0006363975

なお、式(2)において、disは、差分を意味する。   In equation (2), dis means a difference.

和算出部153は、メモリ152から差分D(x,y,a,b)を読み出す。和算出部153は、各背景画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]について、差分の和S(a,b)を計算する(ステップS120)。差分の和S(a,b)は、以下の式(3)に示すように、差分D(x,y,a,b)の絶対値の和S(a,b)として算出される。なお、差分の和S(a,b)として、D(x,y,a,b)の絶対値の和の代わりに、D(x,y,a,b)の二乗和などを用いてもよい。   The sum calculation unit 153 reads the difference D (x, y, a, b) from the memory 152. The sum calculation unit 153 calculates the difference sum S (a, b) for each background image motion vector (a, b) ε [X0, X1] × [Y0, Y1] (step S120). The difference sum S (a, b) is calculated as the sum S (a, b) of the absolute values of the difference D (x, y, a, b) as shown in the following equation (3). Note that the sum of squares of D (x, y, a, b) may be used as the sum of differences S (a, b) instead of the sum of absolute values of D (x, y, a, b). Good.

Figure 0006363975
Figure 0006363975

背景画像決定部154は、各背景画像動きベクトル(a,b)について求めた差分の和S(a,b)を用いて、背景画像を決定する(ステップS130)。すなわち、背景画像決定部154は、以下の式(4)に示すように、背景画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]の中から、ステップS120において和算出部153が算出した差分の和S(a,b)が最小となる領域を示す背景画像動きベクトル(A,B)を決定し、符号化する。背景画像決定部154は、この背景画像動きベクトル(A,B)により定められる背景画像候補ブロックを、背景画像として設定する。つまり、背景画像決定部154は、符号化対象ブロックPから背景画像動きベクトル(A,B)だけ移動した参照画像の領域を、背景画像とする。背景画像決定部154は、符号化した背景画像動きベクトル(A,B)など、符号化対象ブロックPの背景画像の情報を動き探索部106に出力する。 The background image determination unit 154 determines a background image using the difference sum S (a, b) obtained for each background image motion vector (a, b) (step S130). That is, the background image determination unit 154 calculates the sum in step S120 from the background image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1] as shown in the following equation (4). The background image motion vector (A 1 , B 1 ) indicating the region where the difference sum S (a, b) calculated by the unit 153 is minimum is determined and encoded. The background image determination unit 154 sets a background image candidate block determined by the background image motion vector (A 1 , B 1 ) as a background image. That is, the background image determination unit 154 sets a reference image area that has been moved from the encoding target block P by the background image motion vector (A 1 , B 1 ) as a background image. The background image determination unit 154 outputs information about the background image of the encoding target block P such as the encoded background image motion vector (A 1 , B 1 ) to the motion search unit 106.

Figure 0006363975
Figure 0006363975

なお、背景画像決定部154は、和S(a,b)に代えて、和S(a,b)に符号量などのコストを加えた値を用いて、同様に背景画像動きベクトル(A,B)を決定してもよい。 The background image determination unit 154 uses the value obtained by adding the cost such as the code amount to the sum S (a, b) instead of the sum S (a, b), and similarly uses the background image motion vector (A 1). , B 1 ) may be determined.

続いて、分散算出部155は、勾配画像候補ブロックを決定する各勾配画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]について、差分D(x,y,a,b)の分散値を算出する(ステップS140)。すなわち、分散算出部155は、メモリ152から値Dを読み出し、以下の式(5)に示すように、勾配画像動きベクトル(a,b)のそれぞれについて、差分D(x,y,a,b)の分散varV(a,b)を算出する。   Subsequently, the variance calculating unit 155 determines the difference D (x, y, a, b) for each gradient image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1] that determines the gradient image candidate block. ) Is calculated (step S140). That is, the variance calculation unit 155 reads the value D from the memory 152, and calculates the difference D (x, y, a, b) for each of the gradient image motion vectors (a, b) as shown in the following equation (5). ) Dispersion varV (a, b).

Figure 0006363975
Figure 0006363975

式(5)において、aveは、平均値を意味する。式(5)によれば、分散varV(a,b)≧0であり、差分Dの値が符号化対象ブロックP内の(x,y)によらず一定となる場合に、varV(a,b)=0となる。   In the formula (5), ave means an average value. According to equation (5), when the variance varV (a, b) ≧ 0 and the value of the difference D is constant regardless of (x, y) in the encoding target block P, varV (a, b) = 0.

勾配画像決定部156は、各勾配画像動きベクトル(a,b)について算出した分散varV(a,b)を用いて、勾配画像を決定する(ステップS150)。すなわち、勾配画像決定部156は、以下の式(6)に示すように、勾配が最小となる領域を示す勾配画像動きベクトル(A,B)を決定する。つまり、勾配画像決定部156は、勾配画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]の中から、ステップS140において分散算出部155が算出した差分の分散varV(a,b)が最小となるものを勾配画像動きベクトル(A,B)に決定し、符号化する。勾配画像決定部156は、この勾配画像動きベクトル(A,B)により定められる勾配画像候補ブロックを、勾配画像として設定する。つまり、勾配画像決定部156は、符号化対象ブロックPから勾配画像動きベクトル(A,B)だけ移動した参照画像の領域を、勾配画像とする。勾配画像決定部156は、符号化した勾配画像動きベクトル(A,B)など、符号化対象ブロックPの勾配画像の情報を動き探索部106に出力する。 The gradient image determination unit 156 determines a gradient image using the variance varV (a, b) calculated for each gradient image motion vector (a, b) (step S150). That is, the gradient image determination unit 156 determines a gradient image motion vector (A 2 , B 2 ) indicating a region where the gradient is minimum, as shown in the following formula (6). That is, the gradient image determination unit 156 calculates the variance variance varV (a of the difference calculated by the variance calculation unit 155 in step S140 from the gradient image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1]. , B) is determined as a gradient image motion vector (A 2 , B 2 ) and encoded. The gradient image determination unit 156 sets a gradient image candidate block determined by the gradient image motion vector (A 2 , B 2 ) as a gradient image. That is, the gradient image determination unit 156 sets the region of the reference image that is moved from the encoding target block P by the gradient image motion vector (A 2 , B 2 ) as the gradient image. The gradient image determination unit 156 outputs the gradient image information of the encoding target block P such as the encoded gradient image motion vector (A 2 , B 2 ) to the motion search unit 106.

Figure 0006363975
Figure 0006363975

なお、勾配画像を求めるために差分の分散を用いる理由は以下である。
勾配画像、すなわち原画の勾配に近い勾配を持つ参照画像のR(x,y)は、次の式(7)のように与えられる。
The reason for using the variance of the difference to obtain the gradient image is as follows.
The gradient image, that is, R (x, y) of the reference image having a gradient close to the gradient of the original image is given by the following equation (7).

Figure 0006363975
Figure 0006363975

最終行の第一項、第二項より、これらが最小となるためには、すべての差分Dについて、D(x+1,y,a,b)≒D(x,y,a,b)、D(x,y+1,a,b)≒D(x,y,a,b)となることが十分条件となる。式(5)により算出される差分の分散varV(a,b)が最小となる勾配画像動きベクトル(a,b)が定まるとき、その(a,b)に対して近似的にD(x+1,y,a,b)≒D(x,y,a,b)、D(x,y+1,a,b)≒D(x,y,a,b)となることが期待される。そして、このとき、式(7)の最終行の第一項、第二項が最小値もしくは最小値に近い値を取ることが期待される。このように、式(7)の第1式を用いる代わりに差分の分散を用いることで、勾配画像として最適もしくは最適に近い画像を求めることが可能となる。   In order to minimize these from the first and second terms in the last row, for all the differences D, D (x + 1, y, a, b) ≈D (x, y, a, b), D It is a sufficient condition that (x, y + 1, a, b) ≈D (x, y, a, b). When the gradient image motion vector (a, b) that minimizes the variance varV (a, b) of the difference calculated by the equation (5) is determined, D (x + 1, It is expected that y, a, b) ≈D (x, y, a, b) and D (x, y + 1, a, b) ≈D (x, y, a, b). At this time, it is expected that the first term and the second term in the last line of Expression (7) take a minimum value or a value close to the minimum value. Thus, by using the variance of the difference instead of using the first expression of Expression (7), it is possible to obtain an optimal or near-optimal image as the gradient image.

[第2の実施形態]
本実施形態の動画像符号化装置100は、手法1を実現するが、符号化対象ブロックPを複数に分割する点が異なる。以下では、本実施形態を、第1の実施形態との差分を中心に説明する。
[Second Embodiment]
The moving image encoding apparatus 100 according to the present embodiment realizes Method 1, but differs in that the encoding target block P is divided into a plurality of blocks. In the following, the present embodiment will be described with a focus on differences from the first embodiment.

図5は、符号化対象ブロックの分割を示す図である。本実施形態では、1つの符号化対象ブロックPをN個の領域に分割する。分割された各領域を、分割領域P〜Pとする。符号化対象ブロックPは、分割領域P〜Pがそれぞれ長方形となるように分割される。以下では、N=4である場合を例に説明する。 FIG. 5 is a diagram illustrating division of the encoding target block. In the present embodiment, one encoding target block P is divided into N areas. The divided areas are set as divided areas P 1 to P N. The encoding target block P is divided so that the divided areas P 1 to P N are rectangular. Hereinafter, a case where N = 4 will be described as an example.

図6は、背景画像と勾配画像の探索範囲を示す図である。第1の実施形態と同様に、符号化対象ブロックPは、[X,X+M]×[Y,Y+N]の領域であり、参照画像における背景画像及び勾配画像の探索範囲Qは、[X+X0,X+M+X1]×[Y+Y0,Y+N+Y1]の領域である。   FIG. 6 is a diagram illustrating the search range of the background image and the gradient image. Similar to the first embodiment, the encoding target block P is an area of [X, X + M] × [Y, Y + N], and the search range Q of the background image and the gradient image in the reference image is [X + X0, X + M + X1]. ] × [Y + Y0, Y + N + Y1].

本実施形態の動画像符号化装置100は、図2に示す第1の実施形態の動きベクトル予測部105に代えて、図7に示す動きベクトル予測部205を備える構成である。
図7は、本実施形態による動きベクトル予測部205の詳細な構成を示す図である。動きベクトル予測部205は、差分算出部251、部分和算出部253、和算出部254、背景画像決定部255、勾配画像探索領域決定部256、分散算出部257、及び、勾配画像決定部258を備える。
The moving picture encoding apparatus 100 according to the present embodiment is configured to include a motion vector prediction unit 205 illustrated in FIG. 7 instead of the motion vector prediction unit 105 according to the first embodiment illustrated in FIG. 2.
FIG. 7 is a diagram illustrating a detailed configuration of the motion vector prediction unit 205 according to the present embodiment. The motion vector prediction unit 205 includes a difference calculation unit 251, a partial sum calculation unit 253, a sum calculation unit 254, a background image determination unit 255, a gradient image search region determination unit 256, a variance calculation unit 257, and a gradient image determination unit 258. Prepare.

差分算出部251は、探索範囲内で取り得る動きベクトルごとに、原画の符号化対象ブロック内の各画素と、その画素から動きベクトルだけ移動した位置の参照画像の画素との画素値の差分を算出する。差分算出部251は、算出結果を内部に備える(外部に備えてもよい)メモリ252に格納する。部分和算出部253は、動きベクトルごとに、符号化対象ブロックと参照画像の画素値の差分の部分和を分割領域別に求める。和算出部254は、動きベクトルごとに、符号化対象ブロックと参照画像の画素値の差分の和を求める。背景画像決定部255は、差分の和が最小となる領域への動きベクトルを、背景画像動きベクトルに決定する。勾配画像探索領域決定部256は、分割領域P〜Pのうち部分和が最大の分割領域を勾配画像探索領域とする。分散算出部257は、各動きベクトルについて、勾配画像探索領域と参照画像の画素値の差分の分散を算出する。勾配画像決定部258は、分散算出部257が算出した差分の分散が最小となる動きベクトルにより、符号化対象ブロックを移動させた参照画像における領域を、勾配画像に決定する。 For each motion vector that can be taken within the search range, the difference calculation unit 251 calculates a difference in pixel value between each pixel in the encoding target block of the original image and a pixel in the reference image at a position moved by the motion vector from that pixel. calculate. The difference calculation unit 251 stores the calculation result in a memory 252 provided inside (may be provided outside). The partial sum calculation unit 253 obtains a partial sum of differences between pixel values of the encoding target block and the reference image for each divided region for each motion vector. The sum calculation unit 254 calculates the sum of differences between pixel values of the encoding target block and the reference image for each motion vector. The background image determination unit 255 determines a motion vector to an area where the sum of differences is minimum as a background image motion vector. The gradient image search region determination unit 256 sets the divided region having the maximum partial sum among the divided regions P 1 to P N as the gradient image search region. The variance calculation unit 257 calculates the variance of the difference between the pixel values of the gradient image search region and the reference image for each motion vector. The gradient image determination unit 258 determines, in the gradient image, the region in the reference image to which the encoding target block has been moved, based on the motion vector that minimizes the variance of the difference calculated by the variance calculation unit 257.

続いて、動きベクトル予測部205の符号化処理について説明する。
図8は、本実施形態の動きベクトル予測部205の符号化処理を示す処理フローである。
まず、差分算出部251は、第1の実施形態のステップS110と同様に、差分の計算と計算結果のメモリ格納を行う(ステップS210)。差分算出部251は、符号化対象ブロックP内の各画素と、探索範囲Qにおいて取り得る背景画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]それぞれとの組合せについて、式(2)により差分D(x,y,a,b)を算出し、メモリ252に格納する。
Next, the encoding process of the motion vector prediction unit 205 will be described.
FIG. 8 is a processing flow showing the encoding process of the motion vector predicting unit 205 of the present embodiment.
First, the difference calculation unit 251 calculates the difference and stores the calculation result in the memory, similarly to step S110 of the first embodiment (step S210). The difference calculation unit 251 determines a combination of each pixel in the encoding target block P and each of the background image motion vectors (a, b) ∈ [X0, X1] × [Y0, Y1] that can be taken in the search range Q. The difference D (x, y, a, b) is calculated by equation (2) and stored in the memory 252.

次に、部分和算出部253は、メモリ252から差分D(x,y,a,b)を読み出す。部分和算出部253は、各背景画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]について、分割領域別に差分の部分和S(a,b)を算出する。差分の部分和S(a,b)は、以下の式(8)に示すように、差分D(x,y,a,b)の絶対値の部分和として算出される。なお、この差分の部分和S(a,b)として、D(x,y,a,b)の絶対値の部分和の代わりに、D(x,y,a,b)の二乗の部分和などを用いてもよい。和算出部254は、部分和算出部253の算出結果を用いて、各背景画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]について、以下の式(9)に示すように差分の和S(a,b)を算出する(ステップS220)。 Next, the partial sum calculation unit 253 reads the difference D (x, y, a, b) from the memory 252. The partial sum calculation unit 253 calculates a partial sum S k (a, b) of the difference for each divided region for each background image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1]. The difference partial sum S k (a, b) is calculated as a partial sum of absolute values of the difference D (x, y, a, b) as shown in the following equation (8). As a partial sum S k (a, b) of the difference, a square portion of D (x, y, a, b) is used instead of a partial sum of absolute values of D (x, y, a, b). A sum or the like may be used. The sum calculation unit 254 uses the calculation result of the partial sum calculation unit 253, and shows the following equation (9) for each background image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1]. Thus, the sum S (a, b) of the differences is calculated (step S220).

Figure 0006363975
Figure 0006363975

Figure 0006363975
Figure 0006363975

背景画像決定部255は、第1の実施形態と同様に、各背景画像動きベクトル(a,b)について求めた差分の和S(a,b)を用いて、背景画像を決定する(ステップS230)。すなわち、背景画像決定部255は、以下の式(10)に示すように、背景画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]の中から、ステップS220において和算出部254が算出した差分の和S(a,b)が最小となる領域を示す背景画像動きベクトル(A,B)を決定し、符号化する。背景画像決定部255は、この背景画像動きベクトル(A,B)により定められる背景画像候補ブロック(領域)を背景画像として設定する。背景画像決定部255は、符号化した背景画像動きベクトル(A,B)など、符号化対象ブロックPの背景画像の情報を動き探索部106に出力する。 As in the first embodiment, the background image determination unit 255 determines a background image using the difference sum S (a, b) obtained for each background image motion vector (a, b) (step S230). ). That is, the background image determination unit 255 calculates the sum in step S220 from the background image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1] as shown in the following equation (10). The background image motion vector (A 1 , B 1 ) indicating the region where the difference sum S (a, b) calculated by the unit 254 is minimum is determined and encoded. The background image determination unit 255 sets a background image candidate block (region) determined by the background image motion vector (A 1 , B 1 ) as a background image. The background image determination unit 255 outputs information on the background image of the encoding target block P such as the encoded background image motion vector (A 1 , B 1 ) to the motion search unit 106.

Figure 0006363975
Figure 0006363975

なお、背景画像決定部255は、和S(a,b)に代えて、和S(a,b)に符号量などのコストを加えた値を用いて、同様に背景画像動きベクトル(A,B)を決定してもよい。 The background image determination unit 255 uses the value obtained by adding the cost such as the code amount to the sum S (a, b) instead of the sum S (a, b), and similarly uses the background image motion vector (A 1). , B 1 ) may be determined.

勾配画像探索領域決定部256は、差分の部分和S(a,b)を用いて、勾配画像探索領域を決定する(ステップS240)。まず、勾配画像探索領域決定部256は、分割領域P〜Pのうち、背景画像の画素値と原画像の画素値との差分が大きくなる分割領域Pmaxを以下の式(11)のように設定する。分割領域Pmaxが勾配画像探索領域となる。 The gradient image search area determination unit 256 determines a gradient image search area using the partial sum S j (a, b) of the difference (step S240). First, the gradient image search region determination unit 256 sets a divided region P max in which the difference between the pixel value of the background image and the pixel value of the original image is large among the divided regions P 1 to P N of the following equation (11). Set as follows. The divided area P max becomes the gradient image search area.

Figure 0006363975
Figure 0006363975

続いて、分散算出部257は、勾配画像探索領域ついて、各勾配画像動きベクトル(a,b)の差分D(x,y,a,b)の分散を算出する(ステップS250)。すなわち、分散算出部257は、メモリ152から勾配画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]のそれぞれについて、原画像の分割領域Pmax内の画素と、その画素から勾配画像動きベクトルだけ移動した位置の参照画像の画素との画素値の差分D(x,y,a,b)を読み出す。分散算出部257は、以下の式(12)のように、背景画像動きベクトル(a,b)のそれぞれについて、読み出した差分D(x,y,a,b)の分散varV(a,b)を算出する。 Subsequently, the variance calculation unit 257 calculates the variance of the difference D (x, y, a, b) of each gradient image motion vector (a, b) for the gradient image search region (step S250). In other words, the variance calculation unit 257 for each of the gradient image motion vectors (a, b) ∈ [X0, X1] × [Y0, Y1] from the memory 152, and the pixels in the divided area Pmax of the original image The pixel value difference D (x, y, a, b) from the pixel of the reference image at the position moved by the gradient image motion vector is read out. The variance calculation unit 257 calculates the variance varV (a, b) of the read difference D (x, y, a, b) for each of the background image motion vectors (a, b) as in the following equation (12). Is calculated.

Figure 0006363975
Figure 0006363975

勾配画像決定部258は、ステップS250において算出された差分の分散varV(a,b)を用いて勾配画像を決定する(ステップS260)。すなわち、勾配画像決定部258は、ステップS240において定められた分割領域Pmaxと、勾配が最小となる参照画像の領域を示す勾配画像動きベクトル(A,B)を、以下の式(13)に示すように決定する。つまり、勾配画像決定部258は、勾配画像動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]の中から、ステップS250において算出した差分の分散varV(a,b)が最小となるものを勾配画像動きベクトル(A,B)に決定し、符号化する。勾配画像決定部258は、符号化対象ブロックPから勾配画像動きベクトル(A,B)だけ移動した参照画像における領域を勾配画像として設定する。勾配画像決定部258は、符号化した勾配画像動きベクトル(A,B)など、符号化対象ブロックPの勾配画像の情報を動き探索部106に出力する。 The gradient image determination unit 258 determines a gradient image using the difference variance varV (a, b) calculated in step S250 (step S260). That is, the gradient image determination unit 258 calculates the gradient image motion vector (A 2 , B 2 ) indicating the divided region P max determined in step S240 and the region of the reference image where the gradient is minimum as the following formula (13 ). That is, the gradient image determination unit 258 has the smallest variance varV (a, b) calculated in step S250 from the gradient image motion vector (a, b) ∈ [X0, X1] × [Y0, Y1]. Are determined as gradient image motion vectors (A 2 , B 2 ) and encoded. The gradient image determination unit 258 sets, as a gradient image, a region in the reference image that has been moved from the encoding target block P by the gradient image motion vector (A 2 , B 2 ). The gradient image determination unit 258 outputs the gradient image information of the encoding target block P such as the encoded gradient image motion vector (A 2 , B 2 ) to the motion search unit 106.

Figure 0006363975
Figure 0006363975

[第3の実施形態]
本実施形態は、上述した手法2を実現する。本実施形態を、第2の実施形態との差分を中心に説明する。
本実施形態では、第2の実施形態と同様に、符号化対象ブロックPを複数に分割する。すなわち、図5に示すように、1つの符号化対象ブロックPをそれぞれが長方形のN個の分割領域P〜Pに分割する。
また、本実施形態の背景画像と勾配画像の探索範囲は、図6に示す第2の実施形態と同様である。
[Third Embodiment]
This embodiment implements Method 2 described above. This embodiment will be described with a focus on differences from the second embodiment.
In the present embodiment, the encoding target block P is divided into a plurality of parts as in the second embodiment. That is, as shown in FIG. 5, one encoding target block P is divided into N divided regions P 1 to P N each having a rectangular shape.
Further, the search range of the background image and the gradient image of this embodiment is the same as that of the second embodiment shown in FIG.

本実施形態の動画像符号化装置100は、図2に示す第1の実施形態の動きベクトル予測部105に代えて、図9に示す動きベクトル予測部305を備える構成である。
図9は、本実施形態による動きベクトル予測部305の詳細な構成を示す図である。動きベクトル予測部305は、差分算出部351、部分和算出部353、和算出部354、組合せ生成部355、及び、背景及び勾配画像決定部356を備える。
The moving picture coding apparatus 100 according to the present embodiment is configured to include a motion vector prediction unit 305 illustrated in FIG. 9 instead of the motion vector prediction unit 105 according to the first embodiment illustrated in FIG. 2.
FIG. 9 is a diagram illustrating a detailed configuration of the motion vector prediction unit 305 according to the present embodiment. The motion vector prediction unit 305 includes a difference calculation unit 351, a partial sum calculation unit 353, a sum calculation unit 354, a combination generation unit 355, and a background and gradient image determination unit 356.

差分算出部351は、探索範囲内で取り得る動きベクトルごとに、原画の符号化対象ブロック内の各画素と、その画素から動きベクトルだけ移動した位置の参照画像の画素との画素値の差分を算出する。差分算出部351は、算出結果を内部に備える(外部に備えてもよい)メモリ352に格納する。部分和算出部353は、動きベクトルごとに、符号化対象ブロックと参照画像の画素値の差分の部分和を分割領域別に求める。和算出部354は、動きベクトルごとに、符号化対象ブロックと参照画像の画素値の差分の和を求める。組合せ生成部355は、各動きベクトルについて、差分の部分和が最大となる分割領域を特定し、その分割領域と差分の分散が最小となる動きベクトルを求める。これにより、動きベクトルの組合せが生成される。背景及び勾配画像決定部356は、組合せ生成部365が生成した各動きベクトルの組合せについて、それら動きベクトルで特定される背景画像の候補と勾配画像の候補の画像とから合成画像を生成する。背景及び勾配画像決定部356は、コストが最小となる動きベクトルの組合せにより背景画像と勾配画像を決定する。   The difference calculation unit 351 calculates, for each motion vector that can be taken within the search range, a pixel value difference between each pixel in the encoding target block of the original image and a pixel of the reference image at a position moved by the motion vector from that pixel. calculate. The difference calculation unit 351 stores the calculation result in a memory 352 provided inside (may be provided outside). The partial sum calculation unit 353 obtains a partial sum of differences between pixel values of the encoding target block and the reference image for each divided region for each motion vector. The sum calculation unit 354 calculates the sum of differences between pixel values of the encoding target block and the reference image for each motion vector. For each motion vector, the combination generation unit 355 identifies a divided region that maximizes the partial sum of the differences, and obtains a motion vector that minimizes the variance of the divided regions and the difference. Thereby, a combination of motion vectors is generated. For each combination of motion vectors generated by the combination generation unit 365, the background and gradient image determination unit 356 generates a composite image from the background image candidates and the gradient image candidate images specified by the motion vectors. The background and gradient image determination unit 356 determines the background image and the gradient image based on the combination of motion vectors that minimizes the cost.

続いて、動きベクトル予測部305の符号化処理について説明する。
図10は、本実施形態の動きベクトル予測部305の符号化処理の処理フローを示す図である。
まず、差分算出部351は、差分の計算と計算結果のメモリ格納を行う(ステップS310)。差分算出部351は、符号化対象ブロックP内の各画素と、探索範囲Qにおいて取り得る動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]それぞれとの組合せについて、式(2)により差分D(x,y,a,b)を算出し、メモリ352に格納する。
Next, the encoding process of the motion vector prediction unit 305 will be described.
FIG. 10 is a diagram illustrating a processing flow of the encoding process of the motion vector prediction unit 305 of the present embodiment.
First, the difference calculation unit 351 calculates the difference and stores the calculation result in the memory (step S310). The difference calculating unit 351 uses an expression (for the combination of each pixel in the encoding target block P and each motion vector (a, b) ∈ [X0, X1] × [Y0, Y1] that can be taken in the search range Q). The difference D (x, y, a, b) is calculated according to 2) and stored in the memory 352.

次に、部分和算出部353は、メモリ352から差分D(x,y,a,b)を読み出す。部分和算出部353は、各動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]について、以下の式(14)に示すように分割領域別の差分の部分和S(a,b)を算出する。和算出部354は、部分和算出部353の算出結果を用いて、各動きベクトル(a,b)∈[X0,X1]×[Y0,Y1]について、以下の式(15)に示すように、差分の和S(a,b)を算出する(ステップS320)。 Next, the partial sum calculation unit 353 reads the difference D (x, y, a, b) from the memory 352. For each motion vector (a, b) ∈ [X0, X1] × [Y0, Y1], the partial sum calculation unit 353 calculates the partial sum S k (for each divided region as shown in the following equation (14). a, b) are calculated. The sum calculation unit 354 uses the calculation result of the partial sum calculation unit 353 to calculate each motion vector (a, b) ∈ [X0, X1] × [Y0, Y1] as shown in the following equation (15). Then, the difference sum S (a, b) is calculated (step S320).

Figure 0006363975
Figure 0006363975

Figure 0006363975
Figure 0006363975

組合せ生成部355は、差分の和S(a,b)が最小となる動きベクトル(a,b)から順に、V,V,V,…,Vとおく。このとき、組合せ生成部355は、各動きベクトル(a,b)と、その動きベクトル(a,b)について、差分の部分和S(a,b)が最大となる分割領域との組合せを、以下のようにおく(ステップS330)。ただし、k,…,kはそれぞれ、1からNまでの整数のいずれかである。 The combination generation unit 355 sets V 1 , V 2 , V 3 ,..., V n in order from the motion vector (a, b) that minimizes the difference sum S (a, b). At this time, the combination generation unit 355 determines a combination of each motion vector (a, b) and a divided region where the partial sum S k (a, b) of the difference is maximum for the motion vector (a, b). The following is performed (step S330). Here, k 1 ,..., K N are each an integer from 1 to N.

Figure 0006363975
Figure 0006363975

ここで、組合せ生成部355は、各分割領域Pkl(l=1,…,N;lはkの添え字)について、差分D(x,y,a,b)を用いて探索範囲の差分の分散を求める(ステップS340)。具体的には、組合せ生成部355は、分割領域Pklについての探索範囲の差分の分散を、式(12)の(x,y)∈Pmaxに代えて、(x,y)∈Pklを用いて算出する。組合せ生成部355は、分割領域Pklについて、算出した差分の分散が最小となる動きベクトル(a,b)を選択し、ベクトルUkl(lはkの添え字)とする(ステップS350)。なお、ここで、k=kとなるi(i≠j、i<j)については、j番目で求めるベクトルUkjはi番目で求めたベクトルUkiと同一となるため、新たに求める必要はない。
これらの組合せをまとめると、以下のようになる。
Here, the combination generation unit 355 uses the difference D (x, y, a, b) for each divided region P kl (l = 1,..., N; l is a subscript of k) to search for a difference in search range. Is obtained (step S340). Specifically, the combination generating unit 355, the variance of the difference of the search range for the divided area P kl, instead of (x, y) ∈P max of formula (12), (x, y ) ∈P kl Calculate using. The combination generation unit 355 selects a motion vector (a, b) that minimizes the variance of the calculated difference for the divided region P kl and sets it as a vector U kl (l is a subscript of k) (step S350). Here, for i (i ≠ j, i <j) where k i = k j , since the vector U kj obtained at the j-th is the same as the vector U ki obtained at the i-th, a new one is obtained. There is no need.
These combinations are summarized as follows.

Figure 0006363975
Figure 0006363975

背景及び勾配画像決定部356は、上記の組合せから得られた(V,Ukl)により特定される背景画像候補ブロック及び勾配画像候補ブロックから合成画像を生成する(ステップS360)。背景画像候補ブロックは、参照画像において符号化対象ブロックから動きベクトルVだけ移動した領域である。また、勾配画像候補ブロックは、参照画像において符号化対象ブロックから動きベクトルVklだけ移動した領域である。背景及び勾配画像決定部356は、生成した合成画像の中でコストが最小となる背景画像候補ブロック及び勾配画像候補ブロックの組合せを、背景画像及び勾配画像の組合せとして決定する(ステップS370)。コストは、例えば、符号量などから算出される。背景及び勾配画像決定部356は、決定した背景画像及び勾配画像の組合せの情報を動き探索部106に出力する。 The background and gradient image determination unit 356 generates a composite image from the background image candidate block and the gradient image candidate block specified by (V l , U kl ) obtained from the above combination (step S360). The background image candidate block is an area that is moved by the motion vector V 1 from the encoding target block in the reference image. Further, the gradient image candidate block is an area that is moved by a motion vector V kl from the encoding target block in the reference image. The background and gradient image determination unit 356 determines the combination of the background image candidate block and the gradient image candidate block with the lowest cost in the generated composite image as the combination of the background image and the gradient image (step S370). The cost is calculated from the code amount, for example. The background and gradient image determination unit 356 outputs information on the determined combination of the background image and the gradient image to the motion search unit 106.

上述した第1〜第3の実施形態によれば、勾配画像と背景画像を独立探索する従来の第2の方法よりも、さらに演算量を削減できるとともに、第2の方法よりも予測性能向上が見込める。そして、第3の実施形態によれば、勾配画像と背景画像を独立に決定する第1、2の実施形態よりも、特に背景画像の領域内で原画に対して差分が大きくなると考えられる領域に対して勾配画像を設定し、合成画像を生成するため、演算量の増加を抑えつつ予測性能向上が見込める。   According to the first to third embodiments described above, the calculation amount can be further reduced as compared with the conventional second method for independently searching the gradient image and the background image, and the prediction performance is improved as compared with the second method. I can expect. According to the third embodiment, the difference between the background image and the original image is considered to be larger than that in the first and second embodiments in which the gradient image and the background image are determined independently. On the other hand, since a gradient image is set and a composite image is generated, an improvement in prediction performance can be expected while suppressing an increase in calculation amount.

上述した実施形態における動画像符号化装置100の一部又は全ての機能部の機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるものであってもよい。   You may make it implement | achieve the function of a one part or all function part of the moving image encoder 100 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. The program may be a program 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 a computer system.

以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。   The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.

ピクチャの時間的相関を利用し、原画像のピクチャと予測画像のピクチャの差分を符号化する動画像符号化装置に利用可能である。   The present invention can be used for a moving image encoding apparatus that encodes a difference between a picture of an original image and a picture of a predicted image using temporal correlation of pictures.

100 動画像符号化装置
101 符号化制御部
102 DCT/量子化部
103 逆量子化/IDCT部
104 ループフィルタ
105、205、305 動きベクトル予測部
106 動き探索部
107 イントラ予測部
108 選択部
109 エントロピー符号化部
151、251、351 差分算出部
152、252、352 メモリ
153、254、354 和算出部
154、255 背景画像決定部
155、257 分散算出部
156、258 勾配画像決定部
253、353 部分和算出部
256 勾配画像探索領域決定部
355 組合せ生成部
356 背景及び勾配画像決定部
DESCRIPTION OF SYMBOLS 100 Moving image encoder 101 Encoding control part 102 DCT / quantization part 103 Inverse quantization / IDCT part 104 Loop filter 105,205,305 Motion vector prediction part 106 Motion search part 107 Intra prediction part 108 Selection part 109 Entropy code Conversion unit 151,251,351 Difference calculation unit 152,252,352 Memory 153,254,354 Sum calculation unit 154,255 Background image determination unit 155,257 Dispersion calculation unit 156,258 Gradient image determination unit 253,353 Partial sum calculation Unit 256 gradient image search region determination unit 355 combination generation unit 356 background and gradient image determination unit

Claims (5)

原画像と予測画像との差分の画像を符号化する動画像符号化装置であって、
動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出部と、
前記動きベクトルごとに、前記差分の和を算出する和算出部と、
前記差分の和が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を背景画像に決定する背景画像決定部と、
前記動きベクトルごとに、前記差分の分散を算出する分散算出部と、
前記差分の分散が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を勾配画像に決定する勾配画像決定部と、
前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成部と、
を備えることを特徴とする動画像符号化装置。
A moving image encoding device that encodes an image of a difference between an original image and a predicted image,
For each motion vector, a difference calculation unit that calculates a pixel value difference between a pixel in the encoding target block in the original image and a pixel at a position moved by the motion vector from the pixel in the reference image;
A sum calculator for calculating the sum of the differences for each motion vector;
A background image determination unit that selects a motion vector having a small sum of differences and determines a region that has been moved by the selected motion vector from the encoding target block in the reference image as a background image;
A variance calculating unit that calculates the variance of the difference for each motion vector;
A gradient image determining unit that selects a motion vector having a small variance of the difference, and determines a region moved by the selected motion vector from the coding target block in the reference image as a gradient image;
A predicted image generating unit that generates a predicted image by combining the background image and the gradient image;
A moving picture encoding apparatus comprising:
原画像と予測画像との差分の画像を符号化する動画像符号化装置であって、
動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出部と、
前記動きベクトルごとに、前記符号化対象ブロックを分割した分割領域別の前記差分の部分和を算出する部分和算出部と、
前記動きベクトルごとに、前記差分の和を算出する和算出部と、
前記差分の和が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を背景画像に決定する背景画像決定部と、
前記差分の部分和が小さい前記分割領域を勾配画像探索領域に選択する勾配画像探索領域決定部と、
前記動きベクトルごとに、前記原画像における前記勾配画像探索領域と、前記動きベクトルにより特定される前記参照画像の領域との画素値の差分の分散を算出する分散算出部と、
前記差分の分散が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を勾配画像に決定する勾配画像決定部と、
前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成部と、
を備えることを特徴とする動画像符号化装置。
A moving image encoding device that encodes an image of a difference between an original image and a predicted image,
For each motion vector, a difference calculation unit that calculates a pixel value difference between a pixel in the encoding target block in the original image and a pixel at a position moved by the motion vector from the pixel in the reference image;
For each motion vector, a partial sum calculation unit that calculates a partial sum of the differences for each divided region obtained by dividing the encoding target block;
A sum calculator for calculating the sum of the differences for each motion vector;
A background image determination unit that selects a motion vector having a small sum of differences and determines a region that has been moved by the selected motion vector from the encoding target block in the reference image as a background image;
A gradient image search region determination unit that selects the divided region having a small partial sum of differences as a gradient image search region;
For each motion vector, a variance calculation unit that calculates a variance of pixel value differences between the gradient image search region in the original image and the region of the reference image specified by the motion vector;
A gradient image determining unit that selects a motion vector having a small variance of the difference, and determines a region moved by the selected motion vector from the coding target block in the reference image as a gradient image;
A predicted image generating unit that generates a predicted image by combining the background image and the gradient image;
A moving picture encoding apparatus comprising:
原画像と予測画像との差分の画像を符号化する動画像符号化装置であって、
動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出部と、
前記動きベクトルごとに、前記符号化対象ブロックを分割した分割領域別の前記差分の部分和を算出する部分和算出部と、
前記動きベクトルごとに、前記差分の和を算出する和算出部と、
前記動きベクトルごとに、前記差分の部分和が最小の前記分割領域を選択し、選択された前記分割領域と前記差分の部分和の分散が最小の動きベクトルを選択する組合せ生成部と、
前記動きベクトルごとに、前記参照画像において、前記符号化対象ブロックから前記動きベクトルだけ移動した背景画像候補ブロックと、前記符号化対象ブロックから、前記動きベクトルについて前記組合せ生成部により選択された前記動きベクトルだけ移動した勾配画像候補ブロックとの合成画像を生成し、コストが最小の前記合成画像の生成に用いられた前記勾配画像候補ブロック及び前記背景画像候補ブロックを勾配画像及び背景画像に決定する背景及び勾配画像決定部と、
前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成部と、
を備えることを特徴とする動画像符号化装置。
A moving image encoding device that encodes an image of a difference between an original image and a predicted image,
For each motion vector, a difference calculation unit that calculates a pixel value difference between a pixel in the encoding target block in the original image and a pixel at a position moved by the motion vector from the pixel in the reference image;
For each motion vector, a partial sum calculation unit that calculates a partial sum of the differences for each divided region obtained by dividing the encoding target block;
A sum calculator for calculating the sum of the differences for each motion vector;
For each of the motion vectors, a combination generation unit that selects the divided region with the smallest partial sum of the differences, and selects the selected divided region and a motion vector with the smallest variance of the partial sum of the differences;
For each motion vector, in the reference image, a background image candidate block moved by the motion vector from the encoding target block, and the motion selected by the combination generation unit for the motion vector from the encoding target block A background for generating a composite image with a gradient image candidate block moved by a vector and determining the gradient image candidate block and the background image candidate block used for generating the composite image with the lowest cost as a gradient image and a background image And a gradient image determination unit;
A predicted image generating unit that generates a predicted image by combining the background image and the gradient image;
A moving picture encoding apparatus comprising:
原画像と予測画像との差分の画像を符号化する動画像符号化装置が実行する動画像符号化方法であって、
動きベクトルごとに、前記原画像における符号化対象ブロック内の画素と、参照画像において前記画素から前記動きベクトルだけ移動した位置の画素との画素値の差分を算出する差分算出ステップと、
前記動きベクトルごとに、前記差分の和を算出する和算出ステップと、
前記差分の和が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を背景画像に決定する背景画像決定ステップと、
前記動きベクトルごとに、前記差分の分散を算出する分散算出ステップと、
前記差分の分散が小さい動きベクトルを選択し、前記参照画像において前記符号化対象ブロックから、選択された前記動きベクトルだけ移動した領域を勾配画像に決定する勾配画像決定ステップと、
前記背景画像と前記勾配画像とを合成して予測画像を生成する予測画像生成ステップと、
を有することを特徴とする動画像符号化方法。
A moving image encoding method executed by a moving image encoding device that encodes a difference image between an original image and a predicted image,
For each motion vector, a difference calculation step of calculating a difference in pixel value between a pixel in the encoding target block in the original image and a pixel at a position moved by the motion vector from the pixel in the reference image;
A sum calculating step for calculating the sum of the differences for each motion vector;
A background image determining step of selecting a motion vector having a small sum of differences and determining, as a background image, a region that is moved by the selected motion vector from the encoding target block in the reference image;
A variance calculating step for calculating a variance of the difference for each motion vector;
A gradient image determination step of selecting a motion vector having a small variance of the difference, and determining a region moved by the selected motion vector from the encoding target block in the reference image as a gradient image;
A predicted image generation step of generating a predicted image by combining the background image and the gradient image;
A moving picture encoding method comprising:
コンピュータを、
請求項1から請求項3のいずれか一項に記載の動画像符号化装置として機能させることを特徴とする動画像符号化プログラム。
Computer
A moving picture coding program that functions as the moving picture coding apparatus according to any one of claims 1 to 3.
JP2015151124A 2015-07-30 2015-07-30 Moving picture coding apparatus, moving picture coding method, and moving picture coding program Active JP6363975B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015151124A JP6363975B2 (en) 2015-07-30 2015-07-30 Moving picture coding apparatus, moving picture coding method, and moving picture coding program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015151124A JP6363975B2 (en) 2015-07-30 2015-07-30 Moving picture coding apparatus, moving picture coding method, and moving picture coding program

Publications (2)

Publication Number Publication Date
JP2017034408A JP2017034408A (en) 2017-02-09
JP6363975B2 true JP6363975B2 (en) 2018-07-25

Family

ID=57987301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015151124A Active JP6363975B2 (en) 2015-07-30 2015-07-30 Moving picture coding apparatus, moving picture coding method, and moving picture coding program

Country Status (1)

Country Link
JP (1) JP6363975B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0738899A (en) * 1993-07-01 1995-02-07 Sharp Corp Image encoding device
JPH10191393A (en) * 1996-12-24 1998-07-21 Sharp Corp Multi-view-point image coder
JP4441182B2 (en) * 2003-01-10 2010-03-31 三菱電機株式会社 Image coding apparatus and image decoding apparatus
JP2012138838A (en) * 2010-12-27 2012-07-19 Jvc Kenwood Corp Moving image decoding apparatus, moving image decoding method and moving image decoding program

Also Published As

Publication number Publication date
JP2017034408A (en) 2017-02-09

Similar Documents

Publication Publication Date Title
JP7071453B2 (en) Motion information decoding method, coding method and recording medium
JP5277257B2 (en) Video decoding method and video encoding method
JP4999854B2 (en) Image encoding method and decoding method, apparatus thereof, program thereof, and storage medium storing program
JP5237500B2 (en) Motion vector estimation method, multi-view video encoding method, multi-view video decoding method, motion vector estimation device, multi-view video encoding device, multi-view video decoding device, motion vector estimation program, multi-view video encoding program, and multi Viewpoint video decoding program
US8675735B2 (en) Predicted reference information generating method, video encoding and decoding methods, apparatuses therefor, programs therefor, and storage media which store the programs
BR112020014654A2 (en) Affine motion compensation in video encoding
JP5303754B2 (en) Multi-view video encoding method, multi-view video decoding method, multi-view video encoding device, multi-view video decoding device, and program
BR112019027261A2 (en) motion vector refinement for multi-reference prediction
JP5367098B2 (en) Motion vector predictive coding method, motion vector predictive decoding method, moving picture coding apparatus, moving picture decoding apparatus, and programs thereof
JP6636615B2 (en) Motion vector field encoding method, decoding method, encoding device, and decoding device
CN111201795B (en) Memory access window and padding for motion vector modification
JP5367097B2 (en) Motion vector predictive coding method, motion vector predictive decoding method, moving picture coding apparatus, moving picture decoding apparatus, and programs thereof
JP2011114572A (en) Image encoding apparatus, image decoding apparatus, image encoding method, and image decoding method
JP5926451B2 (en) Image encoding method, image decoding method, image encoding device, image decoding device, image encoding program, and image decoding program
JP2018182435A (en) Motion vector prediction device and computer program
JPWO2017154563A1 (en) Encoding apparatus and encoding method
JP6363975B2 (en) Moving picture coding apparatus, moving picture coding method, and moving picture coding program
JP6295805B2 (en) Image coding method, image coding apparatus, and image coding program
JP6259272B2 (en) Video encoding apparatus and video encoding program
JP5706291B2 (en) Video encoding method, video decoding method, video encoding device, video decoding device, and programs thereof
US20160286212A1 (en) Video encoding apparatus and method, and video decoding apparatus and method
JP2014007488A (en) Moving image coding device, moving image coding method and program
JP2017050744A (en) Image encoding apparatus, image encoding method and program
JP6294810B2 (en) Moving picture encoding apparatus, moving picture decoding apparatus, and computer program
JP2012120108A (en) Interpolation image generating apparatus and program, and moving image decoding device and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170830

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180605

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180629

R150 Certificate of patent or registration of utility model

Ref document number: 6363975

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150