JP2005204075A - Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium - Google Patents

Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium Download PDF

Info

Publication number
JP2005204075A
JP2005204075A JP2004008385A JP2004008385A JP2005204075A JP 2005204075 A JP2005204075 A JP 2005204075A JP 2004008385 A JP2004008385 A JP 2004008385A JP 2004008385 A JP2004008385 A JP 2004008385A JP 2005204075 A JP2005204075 A JP 2005204075A
Authority
JP
Japan
Prior art keywords
motion vector
frame
pixel
vector
virtual
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.)
Pending
Application number
JP2004008385A
Other languages
Japanese (ja)
Inventor
Kunio Kawaguchi
邦雄 川口
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2004008385A priority Critical patent/JP2005204075A/en
Publication of JP2005204075A publication Critical patent/JP2005204075A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Television Systems (AREA)
  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To generate the image signal of a virtual frame by precisely detecting the motion vector of a pixel in the virtual frame which is positioned between the m-th frame and the n-th frame. <P>SOLUTION: A motion vector setting part 112 sets the motion vector MV0. A motion vector calculator 113 assumes that the motion vector MV0 is the motion vector of the pixel in the virtual frame, determines positions in the m-th and n-th frames corresponding to the pixel, performs a gradient method arithmetic processing through the use of a pixel block with the determined positions as reference, and obtains a motion vector va1. A vector adder 114 generates a motion vector MVa1 by adding the motion vector MV0 to the motion vector va1. In the same way, a motion vector calculator 115 generates a motion vector va2. A vector adder 116 adds the motion vector MV0 to the motion vector va1, and generates the motion vector MVc of the pixel in the virtual frame. The image signal of the virtual frame is generated by performing interpolation through the use of the motion vector MVc and the image signals of the m-th and n-th frames. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

この発明は、動きベクトル検出装置とそれを用いたフレーム補間装置および動きベクトル検出方法とそれを用いたフレーム補間方法およびプログラムと記録媒体に関する。詳しくは、第1の動きベクトルを設定して仮想フレーム上の画素の動きベクトルと仮定し、仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求め、この第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルを求めるものである。また、求めた仮想フレーム上の画素の動きベクトルに基づいて第mフレームと第nフレームの画像信号を用い、補間処理を行って仮想フレームの画像信号を生成するものである。   The present invention relates to a motion vector detection device, a frame interpolation device using the same, a motion vector detection method, a frame interpolation method using the same, a program, and a recording medium. Specifically, the first motion vector is set to assume the motion vector of the pixel on the virtual frame, the positions on the mth frame and the nth frame corresponding to the pixel on the virtual frame are determined, and the determined first Gradient method arithmetic processing is performed using pixel blocks based on positions on the m-th frame and n-th frame to obtain a second motion vector that is a displacement of motion from the first motion vector. Through the addition of the second motion vector, the motion vector of the pixel on the virtual frame is obtained. In addition, based on the obtained motion vector of the pixel on the virtual frame, the image signal of the mth frame and the nth frame is used to perform an interpolation process to generate the image signal of the virtual frame.

従来、単位時間当たりのフレーム数であるフレーム周波数を所望のフレーム周波数とするフレームレート変換を行う場合、フレーム補間装置が用いられている。図10は、従来のフレーム補間装置50の構成を示している。   Conventionally, when performing frame rate conversion in which a frame frequency, which is the number of frames per unit time, is set to a desired frame frequency, a frame interpolation device is used. FIG. 10 shows a configuration of a conventional frame interpolation device 50.

このフレーム補間装置50の動きベクトル検出部51は、入力されたディジタルの画像信号DSaを用いて動きベクトルMVaの検出を行い、検出した動きベクトルMVaを動きベクトル割付部52に供給する。動きベクトル割付部52は、動きベクトルMVaを用いて、補間する仮想フレーム上の画素に対する動きベクトルの割り付けを行い、割り付けた動きベクトルMVbを画像補間部53に供給する。画像補間部53は、割り付けられた動きベクトルMVbを用いて仮想フレームの画像信号を生成する。   The motion vector detection unit 51 of the frame interpolation device 50 detects the motion vector MVa using the input digital image signal DSa, and supplies the detected motion vector MVa to the motion vector allocation unit 52. The motion vector allocation unit 52 allocates motion vectors to pixels on the virtual frame to be interpolated using the motion vector MVa, and supplies the allocated motion vector MVb to the image interpolation unit 53. The image interpolation unit 53 generates an image signal of the virtual frame using the allocated motion vector MVb.

ここで、動きベクトル検出に用いられる代表的な手法の1つとして勾配法が知られている。以下、勾配法について説明する。   Here, a gradient method is known as one of representative methods used for motion vector detection. Hereinafter, the gradient method will be described.

動画像中において、水平方向の座標値を「x」、垂直方向の座標値を「y」、時間方向の座標値を「t」としたとき、座標(x,y,t)で表される画素の輝度値をg(x,y,t)とする。   In a moving image, the coordinate value in the horizontal direction is “x”, the coordinate value in the vertical direction is “y”, and the coordinate value in the time direction is “t”, which is expressed by coordinates (x, y, t). Let the luminance value of the pixel be g (x, y, t).

ある画素(x0,y0,t0)に対応する画像が微少時間中に(dx,dy,dt)だけ移動したとき、水平・垂直・時間方向の勾配をそれぞれgx(x0,y0,t0),gy(x0,y0,t0),gt(x0,y0,t0)と表すと、変移後の画素の輝度値はテイラー(Taylor)展開近似を用いて、式(1)のように表すことができる。   When the image corresponding to a certain pixel (x0, y0, t0) moves by (dx, dy, dt) during a minute time, the gradients in the horizontal, vertical, and time directions are gx (x0, y0, t0), gy, respectively. When expressed as (x0, y0, t0), gt (x0, y0, t0), the luminance value of the pixel after the transition can be expressed as shown in Equation (1) using Taylor expansion approximation.

Figure 2005204075
Figure 2005204075

ここで,動画像中のある着目画素が1フレーム後に水平vx,垂直vyだけ移動した場合(以降(vx,vy)と表す)、式(2)に示すものとなる。   Here, when a certain pixel of interest in the moving image moves by horizontal vx and vertical vy after one frame (hereinafter referred to as (vx, vy)), the following expression (2) is obtained.

Figure 2005204075
Figure 2005204075

この式(2)は式(1)から式(3)となる。 This expression (2) is changed from expression (1) to expression (3).

Figure 2005204075
Figure 2005204075

式(3)は、vx,vyの2変数の式である為,単独ではその解を求めることはできない。そこで、着目画素の周辺領域を1つのブロックとして考え、同じ動き(vx,vy)をすると仮定した上で、領域内の各画素を要素とし、領域内における各画素の動き補償フレーム間差分の自乗和が最小になるような(vx,vy)を求める。   Since the equation (3) is a two-variable equation of vx and vy, the solution cannot be obtained alone. Therefore, considering the surrounding area of the pixel of interest as one block and assuming the same movement (vx, vy), each pixel in the area is an element, and the square of the motion compensation interframe difference of each pixel in the area Find (vx, vy) that minimizes the sum.

画素(x,y,t)が1フレーム間に(vx,vy)だけ移動したとき、その動き補償フレーム間差分dは式(4)として表される。   When the pixel (x, y, t) is moved by (vx, vy) between one frame, the motion compensation inter-frame difference d is expressed as equation (4).

Figure 2005204075
Figure 2005204075

ここで、Δx=gx(x,y,t)であり水平方向の勾配を表す。同様にΔyは垂直方向の勾配、Δtは時間方向の勾配をそれぞれ表す。これらを用いて動き補償フレーム間差分の自乗和Eを求めると、自乗和Eは式(5)に示すものとなる。   Here, Δx = gx (x, y, t), which represents a horizontal gradient. Similarly, Δy represents a gradient in the vertical direction, and Δt represents a gradient in the time direction. When the square sum E of the motion compensation inter-frame difference is obtained using these, the square sum E is expressed by Equation (5).

Figure 2005204075
Figure 2005204075

ここで、自乗和Eが最小となる(vx,vy)は、各変数における偏微分値が「0」になるとき、すなわち(∂E/∂vx)=0の条件が成立するときなので、式(5)より式(6),式(7)を得ることができる。   Here, (vx, vy) at which the sum of squares E is minimum is when the partial differential value in each variable is “0”, that is, when the condition of (∂E / ∂vx) = 0 is satisfied. Equations (6) and (7) can be obtained from (5).

Figure 2005204075
Figure 2005204075

この式(6),(7)から、求めたい動きである(vx,vy)は、式(8)によって求めることができる。   From the equations (6) and (7), (vx, vy) which is the desired motion can be obtained by the equation (8).

Figure 2005204075
Figure 2005204075

この式(8)は、分母が二乗の式であることから分母のビット数が大きくなる。このため、式(8)の演算をハードウェアで容易に処理することができない。そこで、画像の斜め方向の勾配が存在しないという仮定と、水平方向・垂直方向の勾配が十分大きいという仮定を設けることで式(8)を簡便化して近似することにより、式(10)を得ることができる。なお、式(9)は、式(8)を簡便化して近似するために仮定した条件を示している。   In this equation (8), since the denominator is a square equation, the number of bits in the denominator is large. For this reason, the calculation of Expression (8) cannot be easily processed by hardware. Therefore, formula (8) is obtained by simplifying and approximating formula (8) by assuming that there is no gradient in the oblique direction of the image and that the gradient in the horizontal and vertical directions is sufficiently large. be able to. Equation (9) represents a condition assumed to simplify and approximate Equation (8).

Figure 2005204075
Figure 2005204075

また、勾配法を用いた動ベクトル検出法は微少な動きに対しては比較的精度が高いが、実際の動画像中の動きには必ずしも追従しきれないという問題点がある。このため、特許文献1で開示されているように勾配法を反復して行い、求められる動き量が収束することを利用して徐々に正しい動きベクトルを求める反復勾配法が知られている。   In addition, the motion vector detection method using the gradient method has a relatively high accuracy with respect to a minute motion, but has a problem that it cannot always follow the motion in an actual moving image. For this reason, an iterative gradient method is known in which the gradient method is repeatedly performed as disclosed in Patent Document 1, and a correct motion vector is gradually obtained by using the convergence of the obtained motion amount.

図11は従来の動きベクトル検出部51の構成、図12は動作をそれぞれ示している。なお、図11に示す動きベクトル検出部51は、反復勾配法における勾配法の反復回数を2回として動きベクトルMVaを求めるものである。   FIG. 11 shows the configuration of a conventional motion vector detection unit 51, and FIG. 12 shows the operation. Note that the motion vector detection unit 51 shown in FIG. 11 obtains the motion vector MVa by setting the gradient method iteration count in the iterative gradient method to two.

入力されたディジタルの画像信号DSaは、遅延部511と動きベクトル設定部512および勾配法演算処理部513,515に供給される。   The input digital image signal DSa is supplied to the delay unit 511, the motion vector setting unit 512, and the gradient method arithmetic processing units 513 and 515.

遅延部511は、画像信号DSaを1あるいは複数フレーム期間だけ遅延させて、画像信号DSaが第nフレームであるとき第mフレームを示す画像信号DSbを生成し、動きベクトル設定部512と勾配法演算処理部513,515に供給する。動きベクトル設定部512は、反復勾配法を用いて仮想フレーム上の画素の動きベクトルを検出する際に、演算の基準となる動きベクトルMV0を設定して、勾配法演算処理部513に供給する。   The delay unit 511 delays the image signal DSa by one or a plurality of frame periods, generates an image signal DSb indicating the mth frame when the image signal DSa is the nth frame, and performs a gradient method calculation with the motion vector setting unit 512 This is supplied to the processing units 513 and 515. The motion vector setting unit 512 sets a motion vector MV0 to be a calculation reference when detecting a motion vector of a pixel on a virtual frame using the iterative gradient method, and supplies the motion vector MV0 to the gradient method calculation processing unit 513.

勾配法演算処理部513は、第mフレーム上の画素ブロックを基準として、動きベクトルMV0に基づき第mフレーム上の画素ブロックと対応する画素ブロックを第nフレーム上に設定し、第mフレーム上の画素ブロックと第nフレーム上の画素ブロックを用いて勾配法の演算処理を行う。この勾配法演算処理部513で勾配法の演算処理を行うことにより得られた動きベクトルv1は、ベクトル加算部514に供給する。   The gradient method computation processing unit 513 sets a pixel block corresponding to the pixel block on the m-th frame on the n-th frame based on the motion vector MV0 with reference to the pixel block on the m-th frame, and on the m-th frame. Gradient method arithmetic processing is performed using the pixel block and the pixel block on the nth frame. The motion vector v1 obtained by performing the gradient method calculation processing in the gradient method calculation processing unit 513 is supplied to the vector addition unit 514.

ベクトル加算部514は動きベクトルMV0と動きベクトルv1を加算して、動きベクトルMV1として勾配法演算処理部515に供給する。   The vector addition unit 514 adds the motion vector MV0 and the motion vector v1, and supplies the result to the gradient method arithmetic processing unit 515 as the motion vector MV1.

勾配法演算処理部515は、第mフレーム上の画素ブロックを基準として、動きベクトルMV1に基づき第mフレーム上の画素ブロックと対応する画素ブロックを第nフレーム上に設定し、第mフレーム上の画素ブロックと第nフレーム上の画素ブロックを用いて勾配法の演算処理を行う。この勾配法演算処理部515で勾配法の演算処理を行うことにより得られた動きベクトルv2は、ベクトル加算部516に供給する。   The gradient method arithmetic processing unit 515 sets a pixel block corresponding to the pixel block on the mth frame based on the motion vector MV1 on the nth frame based on the pixel block on the mth frame, Gradient method arithmetic processing is performed using the pixel block and the pixel block on the nth frame. The motion vector v 2 obtained by performing the gradient method calculation processing in the gradient method calculation processing unit 515 is supplied to the vector addition unit 516.

ベクトル加算部516は動きベクトルMV1と動きベクトルv2を加算して、動きベクトルMVaとして出力する。すなわち、動きベクトルMVaは式(11)として求められる。
MVa=MV0+v1+v2 ・・・(11)
The vector adder 516 adds the motion vector MV1 and the motion vector v2 and outputs the result as a motion vector MVa. That is, the motion vector MVa is obtained as equation (11).
MVa = MV0 + v1 + v2 (11)

この反復勾配法は、圧縮符号化などで必要となる動きベクトル検出手法としては、ほぼ十分な精度を有しており広く利用されている。   This iterative gradient method has a sufficiently high accuracy as a motion vector detection method required for compression coding and is widely used.

特開昭60−158786号公報JP 60-158786 A

ところで、第mフレームを基準として動きベクトルMVaを求めると、第mフレームと第nフレームの間に位置する仮想フレーム上の画素の動きベクトルを直接求めることができない。このため、図10に示すように、動きベクトル検出部51の後段に動きベクトル割付部52を設けて、第mフレームを基準として求めた動きベクトルMVaから仮想フレーム上の画素に対して動きベクトルの割り付けを行い、仮想フレーム上の画素の動きベクトルMVbを求める処理が必要となる。   By the way, if the motion vector MVa is obtained with reference to the mth frame, it is not possible to directly obtain the motion vector of the pixel on the virtual frame located between the mth frame and the nth frame. For this reason, as shown in FIG. 10, a motion vector allocating unit 52 is provided at the subsequent stage of the motion vector detecting unit 51, and the motion vector of the motion vector MVa obtained with reference to the m-th frame is detected from the motion vector MVa A process of assigning and obtaining a motion vector MVb of a pixel on the virtual frame is required.

また、第mフレームを基準として得られた動きベクトルMVaによっては、仮想フレーム上の画素に対して、動きベクトルを適切に割り付けることが困難な場合も生じるおそれがある。図13は動きベクトル割付部52の動作を説明するための図である。ここで、例えば図13Aに示すように第Mフレーム上の画素PMk,PMk+1,PMk+2に対して動きベクトルMVk,MVk+1,MVk+2が検出されているとき、仮想フレーム上の画素PIk+1に対しては、破線で示すように、動きベクトルMVk+2を用いて割り付けを行うものとすれば良い。しかし、例えば図13Bに示すように、画素PMk,PMk+1,PMk+2に対して動きベクトルMVk’,MVk+1’,MVk+2’が検出されており、仮想フレーム上の画素PIk+1に対して、動きベクトルMVk+2’,MVk+3’が同程度に近接している場合、動きベクトルMVk+2’,MVk+3’のいずれを用いて割り付けを行うものとすれば適切な動きベクトルとすることができるか簡単に判別できない。また、図13Cに示すように、動きベクトルMVk+2’,MVk+3’が仮想フレーム上の他の画素に近接しており、画素PIk+1に対して近接した動きベクトルが存在しないと、どのような動きベクトルを割り付けて良いか簡単に判別できない。   Further, depending on the motion vector MVa obtained with the m-th frame as a reference, it may be difficult to appropriately allocate the motion vector to the pixels on the virtual frame. FIG. 13 is a diagram for explaining the operation of the motion vector allocation unit 52. Here, for example, as shown in FIG. 13A, when motion vectors MVk, MVk + 1, and MVk + 2 are detected for the pixels PMk, PMk + 1, and PMk + 2 on the Mth frame, The pixel PIk + 1 may be allocated using the motion vector MVk + 2 as indicated by a broken line. However, as shown in FIG. 13B, for example, motion vectors MVk ′, MVk + 1 ′, and MVk + 2 ′ are detected for the pixels PMk, PMk + 1, and PMk + 2, and the pixel PIk + on the virtual frame is detected. If the motion vectors MVk + 2 ′ and MVk + 3 ′ are close to each other with respect to 1, it is appropriate if the motion vectors MVk + 2 ′ and MVk + 3 ′ are used for allocation. It is not easy to determine whether the motion vector can be obtained. Further, as shown in FIG. 13C, if the motion vectors MVk + 2 ′ and MVk + 3 ′ are close to other pixels on the virtual frame and there is no motion vector close to the pixel PIk + 1, It is not easy to determine what kind of motion vector can be assigned.

そこで、この発明では、第mフレームと第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを精度良く検出して仮想フレームの画像信号を生成する動きベクトル検出装置とそれを用いたフレーム補間装置、動きベクトル検出方法とそれを用いたフレーム補間方法およびプログラムと記録媒体を提供するものである。   Therefore, in the present invention, a motion vector detection device that accurately detects a motion vector of a pixel on a virtual frame located between the m-th frame and the n-th frame and generates an image signal of the virtual frame and the same are used. A frame interpolation apparatus, a motion vector detection method, a frame interpolation method using the same, a program, and a recording medium are provided.

この発明に係る動きベクトル検出装置は、第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、第mフレームと第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出する動きベクトル検出装置において、第1の動きベクトルを設定する動きベクトル設定手段と、第1の動きベクトルを仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、該判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出手段と、第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルとするベクトル加算手段とを有するものである。   The motion vector detection apparatus according to the present invention uses a digital image signal including an m-th frame and an n-th frame (m ≠ n) to detect pixels on a virtual frame located between the m-th frame and the n-th frame. In a motion vector detecting device for detecting a motion vector, a motion vector setting means for setting a first motion vector, and assuming that the first motion vector is a motion vector of a pixel on a virtual frame, the motion vector is used. The position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined, and the gradient method is calculated using pixel blocks based on the determined positions on the mth frame and the nth frame. A motion vector calculating means for obtaining a second motion vector that is a displacement of motion from the first motion vector, and adding the first to second motion vectors. Those having a vector adding means for the motion vector of the pixel on the virtual frame.

この発明に係るフレーム補間装置は、第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出し、該検出した動きベクトルを用いて仮想フレームの画像信号を生成するフレーム補間装置において、第1の動きベクトルを設定するベクトル設定手段と、第1の動きベクトルを仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、該判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出手段と、第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルとするベクトル加算手段と、ベクトル加算手段で求めた動きベクトルに基づいて第mフレームと第nフレームの画像信号を用い、補間処理を行って仮想フレームの画像信号を生成する補間手段とを有するものである。   The frame interpolating apparatus according to the present invention uses a digital image signal including an mth frame and an nth frame (m ≠ n) to detect pixels on a virtual frame positioned between the mth frame and the nth frame. In a frame interpolation device that detects a motion vector and generates an image signal of a virtual frame using the detected motion vector, vector setting means for setting a first motion vector, and the first motion vector on a virtual frame Assuming the motion vector of the pixel, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector, and the determined on the mth frame and the nth frame A motion for calculating a second motion vector, which is a displacement of motion from the first motion vector, by performing an arithmetic processing of the gradient method using a pixel block based on the position of Vector calculation means, vector addition means for adding the first and second motion vectors to obtain a motion vector of a pixel on the virtual frame, and the m-th and n-th frames based on the motion vector obtained by the vector addition means And interpolating means for generating an image signal of a virtual frame by performing an interpolation process using the image signal.

この発明に係る動きベクトル検出方法は、第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、第mフレームと第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出する動きベクトル検出方法において、第1の動きベクトルを設定する動きベクトル設定ステップと、第1の動きベクトルを仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、該判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルとするベクトル加算ステップとを有するものである。   The motion vector detection method according to the present invention uses a digital image signal including an mth frame and an nth frame (m ≠ n) to detect pixels on a virtual frame located between the mth frame and the nth frame. In the motion vector detection method for detecting a motion vector, a motion vector setting step for setting a first motion vector, and assuming that the first motion vector is a motion vector of a pixel on a virtual frame, the motion vector is used. The position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined, and the gradient method is calculated using pixel blocks based on the determined positions on the mth frame and the nth frame. A motion vector calculating step for obtaining a second motion vector that is a displacement of motion from the first motion vector, and first to second motion vectors; Adding to those having a vector addition step for the motion vector of the pixel on the virtual frame.

この発明に係るフレーム補間方法は、第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、第mフレームと第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出し、該検出した動きベクトルを用いて仮想フレームの画像信号を生成するフレーム補間方法において、第1の動きベクトルを設定するベクトル設定ステップと、第1の動きベクトルを仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、該判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルとするベクトル加算ステップと、ベクトル加算ステップで求めた動きベクトルに基づいて第mフレームと第nフレームの画像信号を用い、補間処理を行って仮想フレームの画像信号を生成する補間ステップとを有するものである。   The frame interpolation method according to the present invention uses a digital image signal including an m-th frame and an n-th frame (m ≠ n) to move a pixel on a virtual frame located between the m-th frame and the n-th frame. In a frame interpolation method for detecting a vector and generating an image signal of a virtual frame using the detected motion vector, a vector setting step for setting a first motion vector, and a first motion vector as a pixel on the virtual frame Are used to determine the positions on the m-th frame and the n-th frame corresponding to the pixels on the virtual frame using the motion vector, and on the determined m-th frame and n-th frame. A motion for calculating a second motion vector, which is a displacement of motion from the first motion vector, by performing a gradient method calculation process using a pixel block based on the position A vector calculation step of adding a first motion vector and a second motion vector to obtain a motion vector of a pixel on the virtual frame, and an mth frame and an nth frame based on the motion vector obtained in the vector addition step. And an interpolation step of generating an image signal of a virtual frame by performing an interpolation process using the image signal.

この発明に係るプログラムは、コンピュータに、第1の動きベクトルを設定する動きベクトル設定ステップと、第1の動きベクトルを仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、該判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルとするベクトル加算ステップとを実行させるものである。また、ベクトル加算ステップで求めた動きベクトルに基づいて第mフレームと第nフレームの画像信号を用い、補間処理を行って仮想フレームの画像信号を生成する補間ステップを更に実行させるものである。   A program according to the present invention assumes that a motion vector setting step for setting a first motion vector in a computer and a first motion vector as a motion vector of a pixel on a virtual frame are used to perform virtual processing using the motion vector. Gradient method arithmetic processing is performed by determining positions on the m-th frame and n-th frame corresponding to pixels on the frame, and using pixel blocks based on the determined positions on the m-th frame and n-th frame. And a motion vector calculation step for obtaining a second motion vector, which is a displacement of motion from the first motion vector, and the first to second motion vectors are added to obtain a motion vector of a pixel on the virtual frame. The vector addition step is executed. Further, an interpolation step is further executed to generate an image signal of a virtual frame by performing an interpolation process using the image signals of the mth frame and the nth frame based on the motion vector obtained in the vector addition step.

この発明に係る記録媒体は、第1の動きベクトルを設定する動きベクトル設定ステップと、第1の動きベクトルを仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を判別し、該判別した第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルとするベクトル加算ステップとをコンピュータで実行させるためのプログラムを記録したものである。また、ベクトル加算ステップで求めた動きベクトルに基づいて第mフレームと第nフレームの画像信号を用い、補間処理を行って仮想フレームの画像信号を生成する補間ステップを更に実行させるためのプログラムを記録したものである。   The recording medium according to the present invention assumes a motion vector setting step for setting a first motion vector, and a first motion vector as a motion vector of a pixel on the virtual frame. The position on the m-th frame and the n-th frame corresponding to the pixel is determined, and the gradient method is calculated using the pixel block based on the determined position on the m-th frame and the n-th frame. , A motion vector calculation step for obtaining a second motion vector that is a displacement of motion from the first motion vector, and vector addition that adds the first and second motion vectors to obtain a motion vector of a pixel on the virtual frame A program for causing a computer to execute the steps is recorded. Also, a program for further executing an interpolation step of generating an image signal of a virtual frame by performing an interpolation process using the image signals of the m-th frame and the n-th frame based on the motion vector obtained in the vector addition step is recorded. It is a thing.

この発明においては、第1の動きベクトルとして、仮想フレーム上の動きベクトルを求める画素に隣接した画素の動きベクトル、あるいは仮想フレーム上の動きベクトルを求める画素と位置の等しい前フレームの画素に対して検出されている動きベクトルが設定される。この第1の動きベクトルが仮想フレーム上の画素の動きベクトルと仮定されて、この動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置が判別される。また、第mフレーム上と第nフレーム上の位置の判別では、仮想フレームの第mフレームと第nフレーム間における時間位相が用いられる。この判別された第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理が行われて、第1の動きベクトルからの動きの変位である第2の動きベクトルが求められる。この第1乃至第2の動きベクトルを加算して仮想フレーム上の画素の動きベクトルが求められる。また、第1乃至第2の動きベクトルを加算して得られた動きベクトルが第1の動きベクトルとして用いられて、勾配法の演算処理が反復される。ここで、例えば反復回数が予め設定された回数となったとき、あるいは第2の動きベクトルの大きさが所定レベルよりも小さくなったとき反復が終了されて、このとき第1乃至第2の動きベクトルを加算して得られた動きベクトルが、仮想フレーム上の画素の動きベクトルとされる。求めた仮想フレーム上の画素の動きベクトルに基づいて、この画素に対応する第mフレームと第nフレーム上の位置が判別されて、判別された第mフレームと第nフレーム上の位置の画像信号を用いて補間を行い、動きベクトルを求めた画素の画素信号が算出されて仮想フレームの画像信号が生成される。   In the present invention, as the first motion vector, the motion vector of the pixel adjacent to the pixel for which the motion vector on the virtual frame is obtained, or the pixel of the previous frame having the same position as the pixel for which the motion vector on the virtual frame is obtained. The detected motion vector is set. The first motion vector is assumed to be a motion vector of a pixel on the virtual frame, and the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using this motion vector. Further, in determining the position on the mth frame and the nth frame, the time phase between the mth frame and the nth frame of the virtual frame is used. Gradient method arithmetic processing is performed using pixel blocks based on the determined positions on the mth frame and the nth frame, and the second motion, which is the displacement of the motion from the first motion vector. A vector is required. The first and second motion vectors are added to obtain the motion vector of the pixel on the virtual frame. In addition, the motion vector obtained by adding the first and second motion vectors is used as the first motion vector, and the calculation method of the gradient method is repeated. Here, for example, when the number of iterations reaches a preset number, or when the magnitude of the second motion vector becomes smaller than a predetermined level, the iteration is terminated. At this time, the first to second motions are completed. A motion vector obtained by adding the vectors is used as a motion vector of a pixel on the virtual frame. Based on the obtained motion vector of the pixel on the virtual frame, the positions on the m-th frame and the n-th frame corresponding to the pixel are determined, and the image signals at the determined positions on the m-th frame and the n-th frame are determined. Is used to calculate the pixel signal of the pixel for which the motion vector has been obtained, thereby generating an image signal of the virtual frame.

この発明によれば、第1の動きベクトルが仮想フレーム上の画素の動きベクトルと仮定されて、この動きベクトルを用いて仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置が判別されて、判別された第mフレーム上と第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理が行われて、第1の動きベクトルからの動きの変位である第2の動きベクトルが求められる。この求めた第2の動きベクトルが第1の動きベクトルに加算されて仮想フレーム上の画素の動きベクトルとされる。また、求めた仮想フレーム上の画素の動きベクトルに基づいて第mフレームと第nフレームの画像信号を用い、補間処理を行って仮想フレームの画像信号が生成される。このように、仮想フレーム上の画素の動きベクトルを直接求めることができるので、動きベクトルの割付といった後処理の必要がなく、動きベクトルの検出を容易に行うことができる。さらに、動きベクトルの割付といった後処理の必要がないため、フレーム補間装置の構成を簡単とすることができる。   According to the present invention, the first motion vector is assumed to be a motion vector of a pixel on the virtual frame, and the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame using this motion vector. Is determined, and gradient method calculation processing is performed using pixel blocks based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A second motion vector is determined. The obtained second motion vector is added to the first motion vector to obtain a motion vector of a pixel on the virtual frame. In addition, based on the obtained motion vector of the pixel on the virtual frame, the image signal of the virtual frame is generated by performing interpolation processing using the image signals of the m-th frame and the n-th frame. Thus, since the motion vector of the pixel on the virtual frame can be directly obtained, there is no need for post-processing such as motion vector assignment, and the motion vector can be easily detected. Furthermore, since there is no need for post-processing such as motion vector assignment, the configuration of the frame interpolation device can be simplified.

また、第1乃至第2の動きベクトルを加算して得られた動きベクトルを用いて第2の動きベクトルの算出が行われることにより、第2の動きベクトルの算出や第1乃至第2の動きベクトルの加算が反復されるので、仮想フレーム上の画素の動きベクトルを精度良く求めることができる。   Further, the second motion vector is calculated using the motion vector obtained by adding the first to second motion vectors, so that the calculation of the second motion vector and the first to second motions are performed. Since the vector addition is repeated, the motion vector of the pixel on the virtual frame can be obtained with high accuracy.

さらに、第2の動きベクトルが所定レベルよりも小さくなったとき、反復が終了されるので、効率よく所望の精度で仮想フレーム上の画素の動きベクトルを求めることができる。   Furthermore, since the iteration is terminated when the second motion vector becomes smaller than a predetermined level, the motion vector of the pixel on the virtual frame can be efficiently obtained with a desired accuracy.

また、仮想フレームの第mフレームと第nフレーム間における時間位相に応じて、仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置が判別されるので、仮想フレーム上の画素に対応する第mフレーム上と第nフレーム上の位置を容易かつ正しく判別できる。   Further, since the positions on the mth frame and the nth frame corresponding to the pixels on the virtual frame are determined according to the time phase between the mth frame and the nth frame of the virtual frame, the pixels on the virtual frame The positions on the mth frame and the nth frame corresponding to can be easily and correctly determined.

また、第1の動きベクトルとして、仮想フレーム上の動きベクトルを求める画素に隣接した画素の動きベクトル、あるいは仮想フレーム上の動きベクトルを求める画素と位置の等しい前フレームの画素に対して検出されている動きベクトルが用いられることから、勾配法の演算処理を反復したときに動きベクトルを速やかに収束させることができる。   Also, the first motion vector is detected with respect to the motion vector of the pixel adjacent to the pixel for which the motion vector on the virtual frame is obtained, or the pixel in the previous frame whose position is the same as the pixel for which the motion vector on the virtual frame is obtained. Therefore, the motion vector can be quickly converged when the calculation method of the gradient method is repeated.

また、求めた仮想フレーム上の動きベクトルを用いて、仮想フレーム上の画素に対応する第mフレームと第nフレーム上の位置が判別されて、この判別した第mフレームと第nフレーム上の位置の画像信号を用いて補間処理を行い、仮想フレーム上の画素の画素信号を得て、仮想フレームの画像信号が生成される。このため、求めた仮想フレーム上の動きベクトルに基づいて、良好なフレーム補間画像を得ることができる。   Further, using the obtained motion vector on the virtual frame, the positions on the mth frame and the nth frame corresponding to the pixels on the virtual frame are determined, and the determined positions on the mth frame and the nth frame. The image signal of the virtual frame is generated by performing the interpolation process using the image signal of the virtual frame to obtain the pixel signal of the pixel on the virtual frame. Therefore, a good frame interpolation image can be obtained based on the obtained motion vector on the virtual frame.

以下、図を参照しながら、この発明の実施の形態について説明する。図1は、フレーム補間装置の構成を示している。フレーム補間装置10の動きベクトル検出部11は、入力されたディジタルの画像信号DSaを1あるいは複数フレーム期間だけ遅延させて、画像信号DSaが第n(m)フレームであるとき、第m(n)フレームを示す画像信号DSbを生成する(m≠n)。この画像信号DSaと画像信号DSbを用いて、第mフレームと第nフレームの間に位置する仮想フレーム上の画素の動きベクトルMVcを求めて、画像信号DSa,DSbと共に画像補間部13に供給する。画像補間部13では、画像信号DSa,DSbと動きベクトルMVcを用いて仮想フレームの画像信号DScを生成して出力する。   Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows the configuration of the frame interpolation apparatus. The motion vector detection unit 11 of the frame interpolation apparatus 10 delays the input digital image signal DSa by one or a plurality of frame periods, and when the image signal DSa is the n (m) th frame, the m (n) th. An image signal DSb indicating a frame is generated (m ≠ n). Using the image signal DSa and the image signal DSb, a motion vector MVc of a pixel on a virtual frame located between the mth frame and the nth frame is obtained and supplied to the image interpolation unit 13 together with the image signals DSa and DSb. . The image interpolation unit 13 generates and outputs a virtual frame image signal DSc using the image signals DSa and DSb and the motion vector MVc.

図2は、動きベクトル検出部11の構成を示している。なお、図2に示す動きベクトル検出部11は、反復勾配法における勾配法の反復回数を2回として動きベクトルMVcを求めるものである。   FIG. 2 shows the configuration of the motion vector detection unit 11. Note that the motion vector detection unit 11 shown in FIG. 2 obtains the motion vector MVc by setting the number of iterations of the gradient method in the iterative gradient method to two.

画像信号DSaは、遅延部111と動きベクトル設定部112および動きベクトル算出部113,115に供給される。   The image signal DSa is supplied to the delay unit 111, the motion vector setting unit 112, and the motion vector calculation units 113 and 115.

遅延部111は、画像信号DSaを1あるいは複数フレーム期間だけ遅延させて、画像信号DSaが例えば第nフレームであるとき第mフレームを示す画像信号DSbを生成し、動きベクトル設定部112と動きベクトル算出部113,115に供給する。   The delay unit 111 delays the image signal DSa by one or a plurality of frame periods, generates an image signal DSb indicating the mth frame when the image signal DSa is the nth frame, for example, and the motion vector setting unit 112 and the motion vector It supplies to the calculation parts 113 and 115.

動きベクトル設定部112は、仮想フレーム上の画素の動きベクトルを検出する際に、演算の基準となる動きベクトルMV0を設定して、動きベクトル算出部113とベクトル加算部114に供給する。例えば、動きベクトルを検出する仮想フレーム上の画素に隣接した画素に対して検出されている動きベクトルを動きベクトルMV0として設定する。あるいは、動きベクトルを検出する仮想フレーム上の画素と画素位置の等しい前フレームの画素に対して検出されている動きベクトルを動きベクトルMV0として設定する。このように、隣接する画素に対して検出されている動きベクトルや前フレームの画素に対して検出されている動きベクトルを用いることで、動きベクトルMV0の設定を容易に行うことができる。また、動きベクトルMV0は、検出する動きベクトルMVcとの誤差が少ない場合が多くなり、勾配法を所定回数ときの動きベクトルMVcの検出精度を高めることができる。また、画像信号DSa,DSbを用いておおまかな動きベクトルを検出し、検出した動きベクトルを動きベクトルMV0に設定するものとしても良い。   The motion vector setting unit 112 sets a motion vector MV0 as a reference for calculation when detecting a motion vector of a pixel on the virtual frame, and supplies the motion vector MV0 to the motion vector calculation unit 113 and the vector addition unit 114. For example, a motion vector detected for a pixel adjacent to a pixel on a virtual frame for detecting a motion vector is set as the motion vector MV0. Alternatively, the motion vector detected for the pixel in the previous frame having the same pixel position as the pixel on the virtual frame for detecting the motion vector is set as the motion vector MV0. As described above, the motion vector MV0 can be easily set by using the motion vector detected for the adjacent pixel and the motion vector detected for the pixel of the previous frame. Further, the motion vector MV0 often has a small error from the detected motion vector MVc, and the detection accuracy of the motion vector MVc when the gradient method is performed a predetermined number of times can be improved. Alternatively, a rough motion vector may be detected using the image signals DSa and DSb, and the detected motion vector may be set as the motion vector MV0.

動きベクトル算出部113は、始点設定係数供給部113aと終点設定係数供給部113bと乗算器113c,113dおよび勾配法演算処理部113eを有している。始点設定係数供給部113aは、動きベクトルMV0の基準を仮想フレームとしたとき、第mフレーム上における動きベクトルMV0の始点を判別するための係数KSを生成して乗算器113cに供給する。乗算器113cは、動きベクトルMV0に係数KSを乗算して動きベクトルhs1として勾配法演算処理部113eに供給する。終点設定係数供給部113bは、動きベクトルMV0の基準を仮想フレームとしたとき、第nフレーム上における動きベクトルMV0の終点を判別するための係数KSを生成して乗算器113dに供給する。乗算器113dは、動きベクトルMV0と係数KEを乗算して動きベクトルhe1として勾配法演算処理部113eに供給する。   The motion vector calculation unit 113 includes a start point setting coefficient supply unit 113a, an end point setting coefficient supply unit 113b, multipliers 113c and 113d, and a gradient method calculation processing unit 113e. When the reference of the motion vector MV0 is a virtual frame, the start point setting coefficient supply unit 113a generates a coefficient KS for determining the start point of the motion vector MV0 on the mth frame and supplies the coefficient KS to the multiplier 113c. The multiplier 113c multiplies the motion vector MV0 by the coefficient KS and supplies the result to the gradient method arithmetic processing unit 113e as the motion vector hs1. When the reference of the motion vector MV0 is a virtual frame, the end point setting coefficient supply unit 113b generates a coefficient KS for determining the end point of the motion vector MV0 on the nth frame and supplies the coefficient KS to the multiplier 113d. The multiplier 113d multiplies the motion vector MV0 and the coefficient KE, and supplies the result to the gradient method arithmetic processing unit 113e as the motion vector he1.

ここで、第mフレームと第nフレームとの間に位置する仮想フレームが、図3に示すように「α:(1−α)」の時間間隔比(時間位相)を有しているとき、動きベクトルMV0の基準を例えば第mフレームとすると、動きベクトルMV0の始点と終点が図3Aに示すように設定されて、仮想フレームの画素PIを動きベクトルMV0が通過しない場合が生ずる。このため、始点設定係数供給部113aから供給する係数KSを時間位相に応じた値「−α」、終点設定係数供給部113bから供給する係数KEを時間位相に応じた値「1−α」として、動きベクトルhs1,he1を勾配法演算処理部113eに供給して、図3Bに示すように、動きベクトルMV0の基準を仮想フレームに設定した場合における第mフレーム上の始点と第nフレーム上の終点を、動きベクトルhs1,he1によって判別可能とする。   Here, when a virtual frame located between the m-th frame and the n-th frame has a time interval ratio (time phase) of “α: (1-α)” as shown in FIG. If the reference of the motion vector MV0 is, for example, the m-th frame, the start point and end point of the motion vector MV0 are set as shown in FIG. 3A, and the motion vector MV0 may not pass through the pixel PI of the virtual frame. Therefore, the coefficient KS supplied from the start point setting coefficient supply unit 113a is a value “−α” corresponding to the time phase, and the coefficient KE supplied from the end point setting coefficient supply unit 113b is a value “1-α” corresponding to the time phase. The motion vectors hs1 and he1 are supplied to the gradient method arithmetic processing unit 113e, and as shown in FIG. 3B, when the reference of the motion vector MV0 is set to the virtual frame, the start point on the mth frame and the nth frame The end point can be discriminated by the motion vectors hs1 and he1.

勾配法演算処理部113eは、動きベクトルhs1,he1によって判別した第mフレーム上の始点と第nフレーム上の終点を基準として第mフレームと第nフレームに画素ブロックを設定し、第mフレームと第nフレームの画素ブロックを用いて勾配法の演算処理を行い、動きベクトルva1を算出する。この算出した動きベクトルva1は、ベクトル加算部114に供給される。   The gradient method computing unit 113e sets pixel blocks in the m-th frame and the n-th frame with reference to the start point on the m-th frame and the end point on the n-th frame determined by the motion vectors hs1, he1, and the m-th frame. Gradient method arithmetic processing is performed using the pixel block of the nth frame to calculate a motion vector va1. The calculated motion vector va1 is supplied to the vector adder 114.

ベクトル加算部114は、動きベクトルMV0に動きベクトルva1を加算して動きベクトルMVa1を生成し、この動きベクトルMVa1を動きベクトル算出部115とベクトル加算部116に供給する。   The vector addition unit 114 adds the motion vector va1 to the motion vector MV0 to generate a motion vector MVa1, and supplies the motion vector MVa1 to the motion vector calculation unit 115 and the vector addition unit 116.

動きベクトル算出部115は、動きベクトル算出部113と同様に構成されており、動きベクトルMVa1に基づいて動きベクトルva2を算出してベクトル加算部116に供給する。ベクトル加算部116は、動きベクトルMVa1に動きベクトルva2を加算して動きベクトルMVcとして画像補間部13に供給する。   The motion vector calculation unit 115 is configured similarly to the motion vector calculation unit 113, calculates a motion vector va2 based on the motion vector MVa1, and supplies the motion vector va2 to the vector addition unit 116. The vector addition unit 116 adds the motion vector va2 to the motion vector MVa1 and supplies the motion vector MVc to the image interpolation unit 13.

このように勾配法の反復回数を2回とすると、図4に示すように、仮想フレームを基準として算出した動きベクトルva1,va2が動きベクトルMV0に加算されて、仮想フレーム上の画素PIの動きベクトルMVcを精度良く検出できる。   If the gradient method is repeated twice in this way, as shown in FIG. 4, the motion vectors va1 and va2 calculated on the basis of the virtual frame are added to the motion vector MV0, and the motion of the pixel PI on the virtual frame The vector MVc can be detected with high accuracy.

画像補間部13は、図5に示すように、仮想フレーム上の画素PIを通過する動きベクトルMVcの第mフレーム上の始点PSと第nフレーム上の終点PEを決定して、始点PSの画素信号Dpsを第mフレーム上の周辺画素の画素信号を用いて求める。例えば、隣接する画素の画素信号を用いて補間を行い画素信号Dpsを算出する。同様に、終点PEの画素信号Dpeを第nフレーム上の周辺画素の画素信号を用いて求める。例えば、隣接する画素の画素信号を用いて補間を行い画素信号Dpeを算出する。さらに、算出した画素信号Dpsと画素信号Dpeを用いて仮想フレームの時間位相に応じた補間処理を行い、画素PIの画素信号Dpiを算出する。例えば式(12)に示す演算処理を行い、仮想フレームの時間位相に応じた画素信号Dpiを算出する。
Dpi=(1−α)Dps+αDpe ・・・(12)
As shown in FIG. 5, the image interpolation unit 13 determines the start point PS on the mth frame and the end point PE on the nth frame of the motion vector MVc that passes through the pixel PI on the virtual frame, and the pixel of the start point PS. The signal Dps is obtained using pixel signals of peripheral pixels on the mth frame. For example, interpolation is performed using pixel signals of adjacent pixels to calculate a pixel signal Dps. Similarly, the pixel signal Dpe of the end point PE is obtained using the pixel signals of the peripheral pixels on the nth frame. For example, interpolation is performed using pixel signals of adjacent pixels to calculate a pixel signal Dpe. Further, using the calculated pixel signal Dps and the pixel signal Dpe, an interpolation process according to the temporal phase of the virtual frame is performed to calculate the pixel signal Dpi of the pixel PI. For example, the arithmetic processing shown in Expression (12) is performed to calculate the pixel signal Dpi corresponding to the temporal phase of the virtual frame.
Dpi = (1−α) Dps + αDpe (12)

このようにして生成された各画素の画素信号Dpiを用いて、仮想フレームの画像信号DScを生成して出力する。   The image signal DSc of the virtual frame is generated and output using the pixel signal Dpi of each pixel generated in this way.

このように、動きベクトル算出部113,115は、仮想フレームの時間位相αに応じて動きベクトルMV0,MVa1の始点と終点を移動させることにより、仮想フレームを基準とした勾配法の演算処理が行われることから、仮想フレーム上の画素の動きベクトルを精度良く検出することができ、仮想フレームに対して動きベクトルを割り付ける処理が不要となる。また、動きベクトルを割り付ける処理が不要となることから構成を簡単とすることができ、機器の小型化等に効果がある。さらに、反復勾配法を用いて動きベクトルの算出が行われることから、仮想フレーム上の画素の動きベクトルを更に精度良く検出できる。   As described above, the motion vector calculation units 113 and 115 perform the gradient method calculation processing based on the virtual frame by moving the start and end points of the motion vectors MV0 and MVa1 according to the time phase α of the virtual frame. Therefore, the motion vector of the pixel on the virtual frame can be detected with high accuracy, and the process of assigning the motion vector to the virtual frame becomes unnecessary. In addition, since the process of assigning motion vectors is not required, the configuration can be simplified, which is effective in reducing the size of the device. Furthermore, since the motion vector is calculated using the iterative gradient method, the motion vector of the pixel on the virtual frame can be detected with higher accuracy.

なお、図2は勾配法の反復回数を2回とした場合の構成を示したが、動きベクトル算出部とベクトル加算部の対を勾配法の反復回数分だけ多段接続することで、反復勾配法における勾配法演算処理の反復回数を変更できる。   FIG. 2 shows a configuration in which the gradient method is repeated two times, but the iterative gradient method is obtained by connecting the motion vector calculation unit and the vector addition unit in multiple stages for the number of gradient method iterations. It is possible to change the number of iterations of gradient method arithmetic processing in.

ところで、図2に示す動きベクトル検出部11は、動きベクトル算出部とベクトル加算部を勾配法の反復回数分だけ設けて動きベクトルMVcを求めるものであるが、動きベクトル算出部とベクトル加算部をそれそれ1つとして、勾配法を1回あるいは複数回反復させて動きベクトルMVcを求めることもできる。この場合の動きベクトル検出部の構成を図6に示す。なお、図6において図2と対応する部分については同一符号を付している
遅延部111は、画像信号DSaを1あるいは複数フレーム期間だけ遅延させて画像信号DSbを生成し、動きベクトル設定部112と動きベクトル算出部113に供給する。
Incidentally, the motion vector detection unit 11 shown in FIG. 2 obtains the motion vector MVc by providing the motion vector calculation unit and the vector addition unit for the number of iterations of the gradient method. As one example, the motion vector MVc can be obtained by repeating the gradient method once or a plurality of times. The configuration of the motion vector detection unit in this case is shown in FIG. In FIG. 6, portions corresponding to those in FIG. 2 are denoted by the same reference numerals. The delay unit 111 generates the image signal DSb by delaying the image signal DSa by one or a plurality of frame periods, and the motion vector setting unit 112. And supplied to the motion vector calculation unit 113.

動きベクトル設定部112は、動きベクトルMV0を設定してベクトル選択部120に供給する。また、ベクトル選択部120には、ベクトル加算部114から出力された動きベクトルMVa1を供給する。   The motion vector setting unit 112 sets the motion vector MV0 and supplies it to the vector selection unit 120. The vector selection unit 120 is supplied with the motion vector MVa1 output from the vector addition unit 114.

ベクトル選択部120は、動きベクトル設定部112から供給された動きベクトルMV0を動きベクトル算出部113とベクトル加算部114に供給する。あるいは、ベクトル加算部114から供給された動きベクトルMVa1を動きベクトルMV0として動きベクトル算出部113とベクトル加算部114に供給する。   The vector selection unit 120 supplies the motion vector MV 0 supplied from the motion vector setting unit 112 to the motion vector calculation unit 113 and the vector addition unit 114. Alternatively, the motion vector MVa1 supplied from the vector addition unit 114 is supplied to the motion vector calculation unit 113 and the vector addition unit 114 as the motion vector MV0.

動きベクトル算出部113は、ベクトル選択部120から供給された動きベクトルMV0を用いて上述したように勾配法演算を行い、動きベクトルva1を生成してベクトル加算部114に供給する。ベクトル加算部114は、ベクトル選択部120から供給された動きベクトルMV0と、動きベクトル算出部113から供給された動きベクトルva1加算して動きベクトルMVa1を生成する。   The motion vector calculation unit 113 performs the gradient method calculation as described above using the motion vector MV0 supplied from the vector selection unit 120, generates the motion vector va1, and supplies the motion vector va1 to the vector addition unit 114. The vector addition unit 114 adds the motion vector MV0 supplied from the vector selection unit 120 and the motion vector va1 supplied from the motion vector calculation unit 113 to generate a motion vector MVa1.

このように、動きベクトル算出部とベクトル加算部を1つとした動きベクトル検出部は、仮想フレーム上の画素に対して最初の勾配法演算を行うとき、動きベクトル設定部112で設定された動きベクトルMV0をベクトル選択部120から動きベクトル算出部113とベクトル加算部114に供給する。このとき、動きベクトル算出部113では、上述の動きベクトルva1が算出されてベクトル加算部114に供給される。ベクトル加算部114は、動きベクトルMV0に動きベクトルva1を加算して、動きベクトルMVa1を出力する。   As described above, the motion vector detection unit having one motion vector calculation unit and vector addition unit performs the first gradient method calculation on the pixels on the virtual frame, and the motion vector set by the motion vector setting unit 112 MV 0 is supplied from the vector selection unit 120 to the motion vector calculation unit 113 and the vector addition unit 114. At this time, the motion vector calculation unit 113 calculates the above-described motion vector va1 and supplies it to the vector addition unit 114. The vector addition unit 114 adds the motion vector va1 to the motion vector MV0 and outputs the motion vector MVa1.

次に、2回目の勾配法演算を行う場合、ベクトル加算部114から出力された動きベクトルMVa1をベクトル選択部120から動きベクトルMV0として動きベクトル算出部113とベクトル加算部114に供給する。このとき、動きベクトル算出部113では、上述の動きベクトル算出部115の同様な処理を行い、算出した動きベクトルva2を動きベクトルva1としてベクトル加算部114に供給する。ベクトル加算部114は、動きベクトルMV0に動きベクトルva1を加算して動きベクトルMVa1を出力する。すなわち、動きベクトルMVa1と動きベクトルva2を加算して得られる動きベクトルを動きベクトルMVa1として出力する。   Next, when the second gradient method calculation is performed, the motion vector MVa1 output from the vector addition unit 114 is supplied from the vector selection unit 120 to the motion vector calculation unit 113 and the vector addition unit 114 as a motion vector MV0. At this time, the motion vector calculation unit 113 performs the same processing as the motion vector calculation unit 115 described above, and supplies the calculated motion vector va2 to the vector addition unit 114 as the motion vector va1. The vector addition unit 114 adds the motion vector va1 to the motion vector MV0 and outputs the motion vector MVa1. That is, a motion vector obtained by adding the motion vector MVa1 and the motion vector va2 is output as the motion vector MVa1.

以下同様に、ベクトル加算部114から出力された動きベクトルMVa1を、ベクトル選択部120から動きベクトルMV0として動きベクトル算出部113とベクトル加算部114に供給すれば、勾配法を反復して得られる動きベクトルがベクトル加算部114から動きベクトルMVa1として出力される異なる。   Similarly, if the motion vector MVa1 output from the vector adder 114 is supplied as the motion vector MV0 from the vector selector 120 to the motion vector calculator 113 and the vector adder 114, the motion obtained by repeating the gradient method Different vectors are output from the vector addition unit 114 as a motion vector MVa1.

このため、ベクトル選択部120は、勾配法演算が所定回数反復されたとき、ベクトル加算部114から供給された動きベクトルMVa1に換えて、動きベクトル設定部112から供給された次の画素に対して設定された動きベクトルMV0を動きベクトル算出部113とベクトル加算部114に供給する。また、このとき得られている動きベクトルMVa1を動きベクトルMVcとして画像補間部13に供給する。この場合、勾配法演算の反復が終了されて、次の画素の動きベクトル検出が開始される。   For this reason, when the gradient method calculation is repeated a predetermined number of times, the vector selection unit 120 replaces the motion vector MVa1 supplied from the vector addition unit 114 with respect to the next pixel supplied from the motion vector setting unit 112. The set motion vector MV0 is supplied to the motion vector calculation unit 113 and the vector addition unit 114. Further, the motion vector MVa1 obtained at this time is supplied to the image interpolation unit 13 as a motion vector MVc. In this case, the gradient method calculation is ended and the motion vector detection of the next pixel is started.

また、ベクトル選択部120は、動きベクトル算出部113で算出される動きベクトルva1の大きさが所定レベルよりも小さくなったとき、ベクトル加算部114から供給された動きベクトルMVa1に換えて、動きベクトル設定部112から供給された次の画素に対して設定された動きベクトルMV0を動きベクトル算出部113とベクトル加算部114に供給するものとしてもよい。この場合、動きベクトルva1の大きさが所定レベルよりも小さくなり、動きベクトルMVcの精度が確保されると、自動的に勾配法演算の反復が終了されて、次の画素の動きベクトル検出が開始されることから、所望の精度で動きベクトルMVcを効率よく検出できる。   The vector selection unit 120 replaces the motion vector MVa1 supplied from the vector addition unit 114 when the magnitude of the motion vector va1 calculated by the motion vector calculation unit 113 is smaller than a predetermined level. The motion vector MV0 set for the next pixel supplied from the setting unit 112 may be supplied to the motion vector calculation unit 113 and the vector addition unit 114. In this case, when the magnitude of the motion vector va1 becomes smaller than a predetermined level and the accuracy of the motion vector MVc is ensured, the gradient method calculation is automatically repeated and the motion vector detection of the next pixel is started. Therefore, the motion vector MVc can be efficiently detected with a desired accuracy.

このように、ベクトル加算部114から出力された動きベクトルMVa1を動きベクトルMV0として動きベクトル算出部113とベクトル加算部114に供給することで、勾配法演算を反復して行うことができるので、動きベクトル算出部とベクトル加算部を反復回数分設ける必要がなく、構成を簡単とすることができる。   In this way, by supplying the motion vector MVa1 output from the vector addition unit 114 to the motion vector calculation unit 113 and the vector addition unit 114 as the motion vector MV0, the gradient method calculation can be performed repeatedly. It is not necessary to provide the vector calculation unit and vector addition unit for the number of iterations, and the configuration can be simplified.

ところで、フレーム補間装置は、ハードウェアで構成された動きベクトル検出部や画像補間部を用いるだけでなくソフトウェアを用いても行うことができる。図7は、ソフトウェアで動きベクトル検出やフレーム補間を行う場合の構成を示している。   Incidentally, the frame interpolation apparatus can be performed not only using a motion vector detection unit and an image interpolation unit configured by hardware, but also using software. FIG. 7 shows a configuration when motion vector detection and frame interpolation are performed by software.

ディジタルの画像信号DSaは、入力部21に供給される。入力部21は供給された画像信号DSaをRAM(Random Access Memory)22に記憶させる。   The digital image signal DSa is supplied to the input unit 21. The input unit 21 stores the supplied image signal DSa in a RAM (Random Access Memory) 22.

CPU(Central Processing Unit)23は、ROM(Read Only Memory)24、あるいは記録媒体再生部25に装着されている記録媒体26に記憶されているプログラムを読み出して実行し、第nフレームを示す画像信号DSaと第mフレームを示す画像信号DSbをRAM22から読み出して仮想フレーム上の画素の動きベクトルを検出する。さらに、検出した動きベクトルと画像信号DSa,DSbを用いて補間処理を行い、仮想フレーム上の画素の画素信号を生成する。このようにして、生成された仮想フレームの各画素の画素信号を用いて仮想フレームの画像信号DScを生成して出力部27から出力させる。なお、RAM22は、画像信号を記憶するだけでなく、反復勾配法の演算処理や画像補間処理を行う際にワーク領域としても用いられる。なお、入力部21,RAM22,CPU23,ROM24,記録媒体再生部25,出力部27は、バス28を介して接続される。   A CPU (Central Processing Unit) 23 reads out and executes a program stored in a ROM (Read Only Memory) 24 or a recording medium 26 attached to the recording medium reproducing unit 25, and displays an image signal indicating the nth frame. The DSa and the image signal DSb indicating the mth frame are read from the RAM 22 and the motion vector of the pixel on the virtual frame is detected. Further, interpolation processing is performed using the detected motion vector and the image signals DSa and DSb to generate pixel signals of pixels on the virtual frame. In this way, the image signal DSc of the virtual frame is generated using the pixel signal of each pixel of the generated virtual frame and is output from the output unit 27. The RAM 22 not only stores image signals, but is also used as a work area when performing iterative gradient method arithmetic processing and image interpolation processing. The input unit 21, RAM 22, CPU 23, ROM 24, recording medium playback unit 25, and output unit 27 are connected via a bus 28.

図8は、勾配法の反復回数を2回としたときのフレーム補間動作を示すフローチャートである。ステップST1で、CPU23は、上述の動きベクトル設定部112と同様にして動きベクトルMV0を設定してステップST2に進む。   FIG. 8 is a flowchart showing the frame interpolation operation when the gradient method is repeated twice. In step ST1, the CPU 23 sets the motion vector MV0 in the same manner as the motion vector setting unit 112 described above, and proceeds to step ST2.

ステップST2では、仮想フレームを基準として、動きベクトルMV0の第mフレーム上の始点と第nフレーム上の終点を判別する。すなわち、動きベクトルMV0に仮想フレームの時間位相に応じた係数を乗算して動きベクトルhs1,he1を生成し、仮想フレーム上の画素位置と動きベクトルhs1,he1に基づいて、第mフレーム上の始点と第nフレーム上の終点を判別する。   In step ST2, the start point on the mth frame and the end point on the nth frame of the motion vector MV0 are discriminated on the basis of the virtual frame. That is, the motion vector MV0 is multiplied by a coefficient corresponding to the time phase of the virtual frame to generate the motion vectors hs1 and he1, and the start point on the mth frame based on the pixel position on the virtual frame and the motion vectors hs1 and he1. And the end point on the nth frame.

ステップST3では、勾配法演算処理を行い、動きベクトルva1を算出する。この勾配法演算処理では、ステップST2で判別された始点を基準とした第mフレームの画素ブロックと判別された終点を基準とした第nフレームの画素ブロックを用いて勾配法の演算処理を行う。   In step ST3, gradient method calculation processing is performed to calculate a motion vector va1. In this gradient method calculation processing, gradient method calculation processing is performed using a pixel block of the mth frame with reference to the start point determined in step ST2 and a pixel block of the nth frame with reference to the determined end point.

ステップST4では、ベクトル加算を行い、動きベクトルMV0にステップST3で算出した動きベクトルva1を加算して動きベクトルMVa1を生成する。   In step ST4, vector addition is performed and the motion vector MVa1 is generated by adding the motion vector va1 calculated in step ST3 to the motion vector MV0.

ステップST5では、仮想フレームを基準として、動きベクトルMVa1の第mフレーム上の始点と第nフレーム上の終点を、ステップST2と同様にして判別する。   In step ST5, the start point on the mth frame and the end point on the nth frame of the motion vector MVa1 are discriminated in the same manner as in step ST2, using the virtual frame as a reference.

ステップST6では、勾配法演算処理を行い、動きベクトルva2を算出する。この勾配法演算処理では、ステップST5で判別された始点を基準とした第mフレームの画素ブロックと判別された終点を基準とした第nフレームの画素ブロックを用いて勾配法の演算処理を行う。   In step ST6, gradient method calculation processing is performed to calculate a motion vector va2. In this gradient method calculation processing, gradient method calculation processing is performed using a pixel block of the mth frame with reference to the start point determined in step ST5 and a pixel block of the nth frame with reference to the determined end point.

ステップST7では、ベクトル加算を行い、動きベクトルMVa1とステップST6で算出した動きベクトルva2を加算して動きベクトルMVcを生成する。   In step ST7, vector addition is performed, and the motion vector MVc is added to the motion vector va2 calculated in step ST6 to generate a motion vector MVc.

ステップST8では、画像補間処理を行い、動きベクトルMVcと第mフレームと第nフレームの画像信号を用いて仮想フレームの画像信号DScを生成する。すなわち、仮想フレーム上の画素に対する動きベクトルMVcを用いて、画素に対応する第mフレーム上の位置と第nフレーム上の位置を判別する。次に、判別された第mフレーム上の位置と第nフレーム上の位置の信号レベルを求め、この第mフレーム上の位置と第nフレーム上の位置の信号レベルを用いて、画素の画素信号を例えば補間処理によって求める。さらに、仮想フレームの各画素の画素信号を用いて画像信号DScを生成する。   In step ST8, image interpolation processing is performed, and an image signal DSc of a virtual frame is generated using the motion vector MVc and the image signals of the mth frame and the nth frame. That is, the position on the mth frame and the position on the nth frame corresponding to the pixel are determined using the motion vector MVc for the pixel on the virtual frame. Next, the signal level at the determined position on the mth frame and the position on the nth frame is obtained, and the pixel signal of the pixel is obtained using the signal level at the position on the mth frame and the position on the nth frame. Is obtained by, for example, interpolation processing. Further, the image signal DSc is generated using the pixel signal of each pixel of the virtual frame.

図9は、勾配法の反復回数を可変できるフレーム補間動作を示すフローチャートである。ステップST11で、CPU23は、ステップST1と同様にして動きベクトルMV0を設定してステップST12に進む。   FIG. 9 is a flowchart showing a frame interpolation operation that can vary the number of iterations of the gradient method. In step ST11, the CPU 23 sets a motion vector MV0 in the same manner as in step ST1, and proceeds to step ST12.

ステップST12では、ステップST2と同様に、仮想フレームを基準として、動きベクトルMV0の第mフレーム上の始点と第nフレーム上の終点を判別する。   In step ST12, as in step ST2, the start point on the mth frame and the end point on the nth frame of the motion vector MV0 are determined using the virtual frame as a reference.

ステップST13では、ステップST3と同様に勾配法の演算処理を行い、動きベクトルva1を算出してステップST14に進む。   In step ST13, the gradient method calculation process is performed in the same manner as in step ST3, the motion vector va1 is calculated, and the process proceeds to step ST14.

ステップST14では、ステップST4と同様にベクトル加算を行い、動きベクトルMV0にステップST13で算出した動きベクトルva1を加算して新たな動きベクトルMVa1を生成する。   In step ST14, vector addition is performed as in step ST4, and the motion vector va1 calculated in step ST13 is added to the motion vector MV0 to generate a new motion vector MVa1.

ステップST15では、ステップST14で算出した動きベクトルMVa1を動きベクトルMV0として選択するか否かを判別する。ここで、例えば予め設定された反復回数だけ勾配法演算処理が行われていないときは、動きベクトルMVa1を動きベクトルMV0として選択するものとして、ステップST14で算出した動きベクトルMVa1を動きベクトルMV0に設定してステップST12に戻る。また、例えば予め設定された反復回数だけ勾配法演算処理が行われたとき、あるいはステップST13で算出した動きベクトルva1が所定レベルよりも小さくなったときは、動きベクトルMVa1を動きベクトルMV0として選択しないものとして、ステップST14で算出した動きベクトルMVa1を動きベクトルMVcとしてステップST16に進む。   In step ST15, it is determined whether or not the motion vector MVa1 calculated in step ST14 is selected as the motion vector MV0. Here, for example, when the gradient method arithmetic processing has not been performed for a preset number of iterations, the motion vector MVa1 is selected as the motion vector MV0, and the motion vector MVa1 calculated in step ST14 is set as the motion vector MV0. Then, the process returns to step ST12. Also, for example, when gradient method calculation processing is performed for a preset number of iterations, or when the motion vector va1 calculated in step ST13 is smaller than a predetermined level, the motion vector MVa1 is not selected as the motion vector MV0. As an example, the motion vector MVa1 calculated in step ST14 is set as the motion vector MVc, and the process proceeds to step ST16.

ステップST16では、ステップST8と同様に画像補間処理を行い、動きベクトルMVcと第mフレームと第nフレームの画像信号を用いて仮想フレームの画像信号DScを生成する。   In step ST16, image interpolation processing is performed in the same manner as in step ST8, and the image signal DSc of the virtual frame is generated using the motion vector MVc and the image signals of the mth frame and the nth frame.

このように、ソフトウェアでも第mフレームと第nフレームの間に位置する仮想フレームの画像信号を生成できる。   In this way, the image signal of the virtual frame located between the mth frame and the nth frame can also be generated by software.

また、図8や図9の動作を行うプログラムを記録媒体26、例えば光や磁気を利用する記録媒体や半導体素子を用いた記録媒体等に記録すれば、この記録媒体26を流通させることで多くのコンピュータ装置で容易にフレーム補間を行うことができる。   Further, if the program for performing the operations of FIG. 8 and FIG. 9 is recorded on the recording medium 26, for example, a recording medium using light or magnetism, a recording medium using a semiconductor element, etc. It is possible to easily perform frame interpolation with this computer apparatus.

以上のように、本発明はフレーム補間を行う際に有用であり、画像動きのある画像信号を用いたフレーム補間に適用している。   As described above, the present invention is useful when performing frame interpolation, and is applied to frame interpolation using an image signal with image motion.

フレーム補間装置の構成を示す図である。It is a figure which shows the structure of a frame interpolation apparatus. 動きベクトル検出部の構成を示す図である。It is a figure which shows the structure of a motion vector detection part. 動きベクトルの始点と終点を説明するための図である。It is a figure for demonstrating the start point and end point of a motion vector. 動きベクトル検出部の動作を説明するための図である。It is a figure for demonstrating operation | movement of a motion vector detection part. 画像補間部の動作を説明するための図である。It is a figure for demonstrating operation | movement of an image interpolation part. 動きベクトル検出部の他の構成を示す図である。It is a figure which shows the other structure of a motion vector detection part. ソフトウェアを用いる場合の構成を示す図である。It is a figure which shows the structure in the case of using software. フレーム補間動作を示すフローチャートである。It is a flowchart which shows frame interpolation operation | movement. 他のフレーム補間動作を示すフローチャートである。It is a flowchart which shows another frame interpolation operation | movement. 従来のフレーム補間装置の構成を示す図である。It is a figure which shows the structure of the conventional frame interpolation apparatus. 従来の動きベクトル検出部の構成を示す図である。It is a figure which shows the structure of the conventional motion vector detection part. 従来の動きベクトル検出部の動作を説明するための図である。It is a figure for demonstrating operation | movement of the conventional motion vector detection part. 動きベクトル割付部の動作を説明するための図である。It is a figure for demonstrating operation | movement of a motion vector allocation part.

符号の説明Explanation of symbols

10,50・・・フレーム補間装置、11,51・・・動きベクトル検出部、13,53・・・画像補間部、21・・・入力部、22・・・RAM、23・・・CPU、24・・・ROM、25・・・記録媒体再生部、26・・・記録媒体、27・・・出力部、52・・・動きベクトル割付部、111,511・・・遅延部、112,512・・・動きベクトル設定部、113,115・・・動きベクトル算出部、113a・・・始点設定係数供給部、113b・・・終点設定係数供給部、113c,113d・・・乗算器、113e,513,515・・・勾配法演算処理部、114,116,514,516・・・ベクトル加算部、120・・・ベクトル選択部
DESCRIPTION OF SYMBOLS 10,50 ... Frame interpolation apparatus 11,51 ... Motion vector detection part, 13,53 ... Image interpolation part, 21 ... Input part, 22 ... RAM, 23 ... CPU, 24 ... ROM, 25 ... recording medium playback unit, 26 ... recording medium, 27 ... output unit, 52 ... motion vector allocation unit, 111,511 ... delay unit, 112,512 ... motion vector setting unit, 113, 115 ... motion vector calculation unit, 113a ... start point setting coefficient supply unit, 113b ... end point setting coefficient supply unit, 113c, 113d ... multiplier, 113e, 513, 515... Gradient method arithmetic processing unit, 114, 116, 514, 516 ... Vector addition unit, 120 ... Vector selection unit

Claims (30)

第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出する動きベクトル検出装置において、
第1の動きベクトルを設定する動きベクトル設定手段と、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出手段と、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算手段とを有する
ことを特徴とする動きベクトル検出装置。
Motion vector detection for detecting a motion vector of a pixel on a virtual frame located between the m-th frame and the n-th frame using a digital image signal including the m-th frame and the n-th frame (m ≠ n) In the device
Motion vector setting means for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. Motion vector calculating means for obtaining a motion vector of 2;
A motion vector detection apparatus comprising: vector addition means for adding the first and second motion vectors to obtain a motion vector of a pixel on the virtual frame.
前記動きベクトル算出手段と前記ベクトル加算手段の対を多段接続し、
前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして次段の前記動きベクトル算出手段に供給し、最終段の前記ベクトル加算手段で得られた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項1記載の動きベクトル検出装置。
A pair of the motion vector calculation means and the vector addition means are connected in multiple stages;
The motion vector obtained by the vector addition means is supplied as the first motion vector to the motion vector calculation means in the next stage, and the motion vector obtained by the vector addition means in the last stage is supplied to the pixel on the virtual frame. The motion vector detection apparatus according to claim 1, wherein the motion vector is a motion vector.
前記動きベクトル設定手段で設定された第1の動きベクトルに換えて、前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出手段に供給するベクトル選択手段を設け、
前記動きベクトル算出手段と前記ベクトル加算手段の処理を反復させて、前記仮想フレーム上の画素の動きベクトルを求める
ことを特徴とする請求項1記載の動きベクトル検出装置。
In place of the first motion vector set by the motion vector setting means, a vector selection means for supplying the motion vector obtained by the vector addition means to the motion vector calculation means as the first motion vector is provided,
2. The motion vector detection apparatus according to claim 1, wherein the motion vector calculation unit and the vector addition unit are iterated to obtain a motion vector of a pixel on the virtual frame.
前記動きベクトル算出手段で、予め設定された反復回数だけ前記勾配法の演算処理が行われていないとき、前記ベクトル選択手段は、前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出手段に供給し、
前記動きベクトル算出手段で、予め設定された反復回数だけ前記勾配法の演算処理が行われたとき、あるいは前記第2の動きベクトルが所定レベルよりも小さくなったとき、前記ベクトル選択手段は、前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出手段に供給しないものとし、前記ベクトル加算手段で求めた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項3記載の動きベクトル検出装置。
When the motion vector calculation means has not performed the gradient method arithmetic processing for a preset number of iterations, the vector selection means uses the motion vector obtained by the vector addition means as the first motion vector. Supplying the motion vector calculating means;
When the motion vector calculation means performs the gradient method calculation processing for a preset number of iterations, or when the second motion vector becomes smaller than a predetermined level, the vector selection means The motion vector obtained by the vector addition means is not supplied to the motion vector calculation means as the first motion vector, and the motion vector obtained by the vector addition means is used as a motion vector of a pixel on the virtual frame. 4. The motion vector detection device according to claim 3, wherein
前記動きベクトル算出手段は、前記仮想フレームの前記第mフレームと前記第nフレーム間における時間位相を用いて、前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別する
ことを特徴とする請求項1記載の動きベクトル検出装置。
The motion vector calculation means uses the time phase between the m-th frame and the n-th frame of the virtual frame, and positions on the m-th frame and the n-th frame corresponding to pixels on the virtual frame. The motion vector detection apparatus according to claim 1, wherein:
前記動きベクトル設定手段は、前記第1の動きベクトルとして、前記仮想フレーム上の動きベクトルを求める画素に隣接した画素の動きベクトル、あるいは前記仮想フレーム上の動きベクトルを求める画素と位置の等しい前フレームの画素に対して検出されている動きベクトルを用いる
ことを特徴とする請求項1記載の動きベクトル検出装置。
The motion vector setting means, as the first motion vector, a motion vector of a pixel adjacent to a pixel for which a motion vector on the virtual frame is obtained, or a previous frame having the same position as a pixel for which a motion vector on the virtual frame is obtained The motion vector detection apparatus according to claim 1, wherein a motion vector detected for each pixel is used.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出し、該検出した動きベクトルを用いて前記仮想フレームの画像信号を生成するフレーム補間装置において、
第1の動きベクトルを設定するベクトル設定手段と、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出手段と、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算手段と、
前記ベクトル加算手段で求めた動きベクトルに基づいて前記第mフレームと前記第nフレームの画像信号を用い、補間処理を行って前記仮想フレームの画像信号を生成する補間手段とを有する
ことを特徴とするフレーム補間装置。
Using a digital image signal including an mth frame and an nth frame (m ≠ n), a motion vector of a pixel on a virtual frame located between the mth frame and the nth frame is detected, and the detection is performed. In a frame interpolation device that generates an image signal of the virtual frame using the motion vector that has been obtained,
Vector setting means for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. Motion vector calculating means for obtaining a motion vector of 2;
Vector addition means for adding the first to second motion vectors to obtain a motion vector of a pixel on the virtual frame;
Interpolating means for generating an image signal of the virtual frame by performing interpolation processing using the image signals of the m-th frame and the n-th frame based on the motion vector obtained by the vector adding means, Frame interpolation device.
前記動きベクトル算出手段と前記ベクトル加算手段の対を多段接続し、
前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして次段の前記動きベクトル算出手段に供給し、最終段の前記ベクトル加算手段で得られた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項7記載のフレーム補間装置。
A pair of the motion vector calculation means and the vector addition means are connected in multiple stages;
The motion vector obtained by the vector addition means is supplied as the first motion vector to the motion vector calculation means in the next stage, and the motion vector obtained by the vector addition means in the last stage is supplied to the pixel on the virtual frame. 8. The frame interpolating apparatus according to claim 7, wherein the frame interpolating apparatus is a motion vector.
前記動きベクトル設定手段で設定された第1の動きベクトルに換えて、前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出手段に供給するベクトル選択手段を設け、
前記動きベクトル算出手段と前記ベクトル加算手段の処理を反復させて、前記仮想フレーム上の画素の動きベクトルを求める
ことを特徴とする請求項7記載のフレーム補間装置。
In place of the first motion vector set by the motion vector setting means, a vector selection means for supplying the motion vector obtained by the vector addition means to the motion vector calculation means as the first motion vector is provided,
8. The frame interpolation apparatus according to claim 7, wherein the motion vector calculation unit and the vector addition unit are iterated to obtain a motion vector of a pixel on the virtual frame.
前記動きベクトル算出手段で、予め設定された反復回数だけ前記勾配法の演算処理が行われていないとき、前記ベクトル選択手段は、前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出手段に供給し、
前記動きベクトル算出手段で、予め設定された反復回数だけ前記勾配法の演算処理が行われたとき、あるいは前記第2の動きベクトルが所定レベルよりも小さくなったとき、前記ベクトル選択手段は、前記ベクトル加算手段で求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出手段に供給しないものとし、前記ベクトル加算手段で求めた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項9記載のフレーム補間装置。
When the motion vector calculation means has not performed the gradient method arithmetic processing for a preset number of iterations, the vector selection means uses the motion vector obtained by the vector addition means as the first motion vector. Supplying the motion vector calculating means;
When the motion vector calculation means performs the gradient method calculation processing for a preset number of iterations, or when the second motion vector becomes smaller than a predetermined level, the vector selection means The motion vector obtained by the vector addition means is not supplied to the motion vector calculation means as the first motion vector, and the motion vector obtained by the vector addition means is used as a motion vector of a pixel on the virtual frame. The frame interpolating apparatus according to claim 9, wherein:
前記動きベクトル算出手段は、前記仮想フレームの前記第mフレームと前記第nフレーム間における時間位相を用いて、前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別する
ことを特徴とする請求項7記載のフレーム補間装置。
The motion vector calculation means uses the time phase between the m-th frame and the n-th frame of the virtual frame, and positions on the m-th frame and the n-th frame corresponding to pixels on the virtual frame. The frame interpolating apparatus according to claim 7, wherein:
前記動きベクトル設定手段は、前記第1の動きベクトルとして、前記仮想フレーム上の動きベクトルを求める画素に隣接した画素の動きベクトル、あるいは前記仮想フレーム上の動きベクトルを求める画素と位置の等しい前フレームの画素に対して検出されている動きベクトルを用いる
ことを特徴とする請求項7記載のフレーム補間装置。
The motion vector setting means, as the first motion vector, a motion vector of a pixel adjacent to a pixel for which a motion vector on the virtual frame is obtained, or a previous frame having the same position as a pixel for which a motion vector on the virtual frame is obtained 8. The frame interpolating apparatus according to claim 7, wherein a motion vector detected for each of the pixels is used.
前記補間手段は、前記ベクトル加算手段で求めた動きベクトルを用いて、前記仮想フレーム上の画素に対応する前記第mフレームと前記第nフレーム上の位置を判別し、該判別した前記第mフレームと前記第nフレーム上の位置の画像信号を用いて補間処理を行い、前記仮想フレーム上の画素の画素信号を得て、前記仮想フレームの画像信号を生成する
ことを特徴とする請求項7記載のフレーム補間装置。
The interpolation means discriminates the positions on the m-th frame and the n-th frame corresponding to the pixels on the virtual frame using the motion vector obtained by the vector addition means, and the determined m-th frame 8. The image signal of the virtual frame is generated by performing interpolation using the image signal at the position on the nth frame and the pixel signal of the pixel on the virtual frame. Frame interpolator.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出する動きベクトル検出方法において、
第1の動きベクトルを設定する動きベクトル設定ステップと、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算ステップとを有する
ことを特徴とする動きベクトル検出方法。
Motion vector detection for detecting a motion vector of a pixel on a virtual frame located between the m-th frame and the n-th frame using a digital image signal including the m-th frame and the n-th frame (m ≠ n) In the method
A motion vector setting step for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A motion vector calculating step for obtaining a motion vector of 2;
And a vector addition step of adding the first and second motion vectors to obtain a motion vector of a pixel on the virtual frame.
前記動きベクトル算出ステップと前記ベクトル加算ステップの対を複数設けるものとし、
前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして次の前記動きベクトル算出ステップに供給し、最終の前記ベクトル加算ステップで得られた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項14記載の動きベクトル検出方法。
Provide a plurality of pairs of the motion vector calculation step and the vector addition step,
The motion vector obtained in the vector addition step is supplied as the first motion vector to the next motion vector calculation step, and the motion vector obtained in the final vector addition step is used as the motion vector of the pixel on the virtual frame. The motion vector detection method according to claim 14, wherein:
前記動きベクトル設定ステップで設定された第1の動きベクトルに換えて、前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出ステップに供給するベクトル選択ステップを設け、
前記動きベクトル算出ステップと前記ベクトル加算ステップの処理を反復させて、前記仮想フレーム上の画素の動きベクトルを求める
ことを特徴とする請求項14記載の動きベクトル検出方法。
In place of the first motion vector set in the motion vector setting step, a vector selection step for supplying the motion vector obtained in the vector addition step to the motion vector calculation step as the first motion vector is provided,
15. The motion vector detection method according to claim 14, wherein the motion vector calculation step and the vector addition step are repeated to obtain a motion vector of a pixel on the virtual frame.
前記動きベクトル算出ステップが予め設定された反復回数だけ行われていないとき、前記ベクトル選択ステップでは、前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出ステップに供給し、
前記動きベクトル算出ステップが予め設定された反復回数だけ行われたとき、あるいは前記第2の動きベクトルが所定レベルよりも小さくなったとき、前記ベクトル選択ステップでは、前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出ステップに供給しないものとし、前記ベクトル加算ステップで求めた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項16記載の動きベクトル検出方法。
When the motion vector calculation step is not performed for a preset number of iterations, the vector selection step supplies the motion vector obtained in the vector addition step to the motion vector calculation step as the first motion vector. ,
When the motion vector calculation step is performed a preset number of times, or when the second motion vector becomes smaller than a predetermined level, the vector selection step includes the motion vector obtained in the vector addition step. 17 as the first motion vector is not supplied to the motion vector calculation step, and the motion vector obtained in the vector addition step is used as a motion vector of a pixel on the virtual frame. Motion vector detection method.
前記動きベクトル算出ステップでは、前記仮想フレームの前記第mフレームと前記第nフレーム間における時間位相を用いて、前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別する
ことを特徴とする請求項14記載の動きベクトル検出方法。
In the motion vector calculation step, a position on the m-th frame and the n-th frame corresponding to a pixel on the virtual frame using a time phase between the m-th frame and the n-th frame of the virtual frame. The motion vector detection method according to claim 14, wherein:
前記動きベクトル設定ステップでは、前記第1の動きベクトルとして、前記仮想フレーム上の動きベクトルを求める画素に隣接した画素の動きベクトル、あるいは前記仮想フレーム上の動きベクトルを求める画素と位置の等しい前フレームの画素に対して検出されている動きベクトルを用いる
ことを特徴とする請求項14記載の動きベクトル検出方法。
In the motion vector setting step, as the first motion vector, a motion vector of a pixel adjacent to a pixel for which a motion vector on the virtual frame is obtained, or a previous frame having the same position as the pixel for which the motion vector on the virtual frame is obtained 15. The motion vector detection method according to claim 14, wherein a motion vector detected for each of the pixels is used.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出し、該検出した動きベクトルを用いて前記仮想フレームの画像信号を生成するフレーム補間方法において、
第1の動きベクトルを設定するベクトル設定ステップと、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算ステップと、
前記ベクトル加算ステップで求めた動きベクトルに基づいて前記第mフレームと前記第nフレームの画像信号を用い、補間処理を行って前記仮想フレームの画像信号を生成する補間ステップとを有する
ことを特徴とするフレーム補間方法。
Using a digital image signal including an mth frame and an nth frame (m ≠ n), a motion vector of a pixel on a virtual frame located between the mth frame and the nth frame is detected, and the detection is performed. In a frame interpolation method for generating an image signal of the virtual frame using a motion vector obtained,
A vector setting step for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A motion vector calculating step for obtaining a motion vector of 2;
A vector addition step of adding the first to second motion vectors to obtain a motion vector of a pixel on the virtual frame;
An interpolation step of generating an image signal of the virtual frame by performing an interpolation process using the image signals of the m-th frame and the n-th frame based on the motion vector obtained in the vector addition step. Frame interpolation method.
前記動きベクトル算出ステップと前記ベクトル加算ステップの対を複数設けるものとし、
前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして次の前記動きベクトル算出ステップに供給し、最終の前記ベクトル加算ステップで得られた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項20記載のフレーム補間方法。
Provide a plurality of pairs of the motion vector calculation step and the vector addition step,
The motion vector obtained in the vector addition step is supplied as the first motion vector to the next motion vector calculation step, and the motion vector obtained in the final vector addition step is used as the motion vector of the pixel on the virtual frame. 21. The frame interpolation method according to claim 20, wherein:
前記動きベクトル設定ステップで設定された第1の動きベクトルに換えて、前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出ステップに供給するベクトル選択ステップを設け、
前記動きベクトル算出ステップと前記ベクトル加算ステップの処理を反復させて、前記仮想フレーム上の画素の動きベクトルを求める
ことを特徴とする請求項20記載のフレーム補間方法。
In place of the first motion vector set in the motion vector setting step, a vector selection step for supplying the motion vector obtained in the vector addition step to the motion vector calculation step as the first motion vector is provided,
The frame interpolation method according to claim 20, wherein the motion vector calculation step and the vector addition step are repeated to obtain a motion vector of a pixel on the virtual frame.
前記動きベクトル算出ステップが予め設定された反復回数だけ行われていないとき、前記ベクトル選択ステップでは、前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出ステップに供給し、
前記動きベクトル算出ステップが予め設定された反復回数だけ行われたとき、あるいは前記第2の動きベクトルが所定レベルよりも小さくなったとき、前記ベクトル選択ステップでは、前記ベクトル加算ステップで求めた動きベクトルを前記第1の動きベクトルとして前記動きベクトル算出ステップに供給しないものとし、前記ベクトル加算ステップで求めた動きベクトルを前記仮想フレーム上の画素の動きベクトルとする
ことを特徴とする請求項22記載のフレーム補間方法。
When the motion vector calculation step is not performed for a preset number of iterations, the vector selection step supplies the motion vector obtained in the vector addition step to the motion vector calculation step as the first motion vector. ,
When the motion vector calculation step is performed a preset number of times, or when the second motion vector becomes smaller than a predetermined level, the vector selection step includes the motion vector obtained in the vector addition step. 23. The method according to claim 22, wherein the first motion vector is not supplied to the motion vector calculation step, and the motion vector obtained in the vector addition step is used as a motion vector of a pixel on the virtual frame. Frame interpolation method.
前記動きベクトル算出ステップでは、前記仮想フレームの前記第mフレームと前記第nフレーム間における時間位相に応じて、前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別する
ことを特徴とする請求項20記載のフレーム補間方法。
In the motion vector calculating step, positions on the mth frame and the nth frame corresponding to pixels on the virtual frame according to a time phase between the mth frame and the nth frame of the virtual frame. 21. The frame interpolation method according to claim 20, wherein:
前記動きベクトル設定ステップでは、前記第1の動きベクトルとして、前記仮想フレーム上の動きベクトルを求める画素に隣接した画素の動きベクトル、あるいは前記仮想フレーム上の動きベクトルを求める画素と位置の等しい前フレームの画素に対して検出されている動きベクトルを用いる
ことを特徴とする請求項20記載のフレーム補間方法。
In the motion vector setting step, as the first motion vector, a motion vector of a pixel adjacent to a pixel for which a motion vector on the virtual frame is obtained, or a previous frame having the same position as the pixel for which the motion vector on the virtual frame is obtained 21. The frame interpolation method according to claim 20, wherein a motion vector detected for each of the pixels is used.
前記補間ステップでは、前記ベクトル加算ステップで求めた動きベクトルを用いて、前記仮想フレーム上の画素に対応する前記第mフレームと前記第nフレーム上の位置を判別し、該判別した前記第mフレームと前記第nフレーム上の位置の画像信号を用いて補間処理を行い、前記仮想フレーム上の画素の画素信号を得て、前記仮想フレームの画像信号を生成する
ことを特徴とする請求項20記載のフレーム補間方法。
In the interpolation step, the position on the m-th frame and the n-th frame corresponding to the pixel on the virtual frame is determined using the motion vector obtained in the vector addition step, and the determined m-th frame The image signal of the virtual frame is generated by performing interpolation using the image signal at the position on the nth frame and the pixel signal of the pixel on the virtual frame. Frame interpolation method.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用い、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出するためコンピュータに、
第1の動きベクトルを設定する動きベクトル設定ステップと、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算ステップとを実行させるためのプログラム。
In order to detect a motion vector of a pixel on a virtual frame located between the m-th frame and the n-th frame using a digital image signal including the m-th frame and the n-th frame (m ≠ n),
A motion vector setting step for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A motion vector calculating step for obtaining a motion vector of 2;
A program for executing a vector addition step of adding the first and second motion vectors to obtain a motion vector of a pixel on the virtual frame.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出し、該検出した動きベクトルを用いて前記仮想フレームの画像信号を生成するため、
コンピュータに、
第1の動きベクトルを設定する動きベクトル設定ステップと、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算ステップと、
前記ベクトル加算ステップで求めた動きベクトルに基づいて前記第mフレームと前記第nフレームの画像信号を用い、補間処理を行って前記仮想フレームの画像信号を生成する補間ステップを実行させるためのプログラム。
Using a digital image signal including an mth frame and an nth frame (m ≠ n), a motion vector of a pixel on a virtual frame located between the mth frame and the nth frame is detected, and the detection is performed. In order to generate the image signal of the virtual frame using the motion vector
On the computer,
A motion vector setting step for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A motion vector calculating step for obtaining a motion vector of 2;
A vector addition step of adding the first to second motion vectors to obtain a motion vector of a pixel on the virtual frame;
A program for executing an interpolation step of generating an image signal of the virtual frame by performing an interpolation process using the image signals of the m-th frame and the n-th frame based on the motion vector obtained in the vector addition step.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用い、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出するため、
第1の動きベクトルを設定する動きベクトル設定ステップと、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算ステップを、コンピュータで実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
In order to detect a motion vector of a pixel on a virtual frame located between the mth frame and the nth frame using a digital image signal including the mth frame and the nth frame (m ≠ n),
A motion vector setting step for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A motion vector calculating step for obtaining a motion vector of 2;
A computer-readable recording medium storing a program for causing a computer to execute a vector addition step of adding the first and second motion vectors to obtain a motion vector of a pixel on the virtual frame.
第mフレームと第nフレーム(m≠n)を含むディジタル画像信号を用いて、前記第mフレームと前記第nフレームとの間に位置する仮想フレーム上の画素の動きベクトルを検出し、該検出した動きベクトルを用いて前記仮想フレームの画像信号を生成するため、
第1の動きベクトルを設定する動きベクトル設定ステップと、
前記第1の動きベクトルを前記仮想フレーム上の画素の動きベクトルと仮定して、該動きベクトルを用いて前記仮想フレーム上の画素に対応する前記第mフレーム上と前記第nフレーム上の位置を判別し、該判別した前記第mフレーム上と前記第nフレーム上の位置を基準とした画素ブロックを用いて勾配法の演算処理を行い、前記第1の動きベクトルからの動きの変位である第2の動きベクトルを求める動きベクトル算出ステップと、
前記第1乃至第2の動きベクトルを加算して前記仮想フレーム上の画素の動きベクトルとするベクトル加算ステップと、
前記ベクトル加算ステップで求めた動きベクトルに基づいて前記第mフレームと前記第nフレームの画像信号を用い、補間処理を行って前記仮想フレームの画像信号を生成する補間ステップを、コンピュータで実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
Using a digital image signal including an mth frame and an nth frame (m ≠ n), a motion vector of a pixel on a virtual frame located between the mth frame and the nth frame is detected, and the detection is performed. In order to generate the image signal of the virtual frame using the motion vector
A motion vector setting step for setting a first motion vector;
Assuming that the first motion vector is a motion vector of a pixel on the virtual frame, the position on the mth frame and the nth frame corresponding to the pixel on the virtual frame is determined using the motion vector. The gradient is calculated using a pixel block based on the determined positions on the m-th frame and the n-th frame, and is a displacement of the motion from the first motion vector. A motion vector calculating step for obtaining a motion vector of 2;
A vector addition step of adding the first to second motion vectors to obtain a motion vector of a pixel on the virtual frame;
In order to cause a computer to execute an interpolation step of generating an image signal of the virtual frame by performing an interpolation process using the image signals of the m-th frame and the n-th frame based on the motion vector obtained in the vector addition step A computer-readable recording medium on which the program is recorded.
JP2004008385A 2004-01-15 2004-01-15 Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium Pending JP2005204075A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004008385A JP2005204075A (en) 2004-01-15 2004-01-15 Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004008385A JP2005204075A (en) 2004-01-15 2004-01-15 Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium

Publications (1)

Publication Number Publication Date
JP2005204075A true JP2005204075A (en) 2005-07-28

Family

ID=34821750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004008385A Pending JP2005204075A (en) 2004-01-15 2004-01-15 Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium

Country Status (1)

Country Link
JP (1) JP2005204075A (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007049545A (en) * 2005-08-11 2007-02-22 Casio Comput Co Ltd Image composing apparatus, image composing method, and program
JP2007074593A (en) * 2005-09-09 2007-03-22 Sony Corp Image processor and processing method, program and recording medium
JP2007074591A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method thereof, program, and recording medium
JP2007074594A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, and program
JP2007074595A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, program
JP2007074596A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, recording medium, and program
JP2007074586A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, program, and recording medium
JP2007082030A (en) * 2005-09-16 2007-03-29 Hitachi Ltd Video display device
US20100183075A1 (en) * 2007-07-19 2010-07-22 Olympus Corporation Image processing method, image processing apparatus and computer readable storage medium
RU2461979C2 (en) * 2008-02-21 2012-09-20 Шарп Кабусики Кайся Video display device
US8411931B2 (en) 2006-06-23 2013-04-02 Imax Corporation Methods and systems for converting 2D motion pictures for stereoscopic 3D exhibition
US8842730B2 (en) 2006-01-27 2014-09-23 Imax Corporation Methods and systems for digitally re-mastering of 2D and 3D motion pictures for exhibition with enhanced visual quality

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4640032B2 (en) * 2005-08-11 2011-03-02 カシオ計算機株式会社 Image composition apparatus, image composition method, and program
JP2007049545A (en) * 2005-08-11 2007-02-22 Casio Comput Co Ltd Image composing apparatus, image composing method, and program
JP4655217B2 (en) * 2005-09-09 2011-03-23 ソニー株式会社 Image processing apparatus and method, recording medium, and program
JP4655214B2 (en) * 2005-09-09 2011-03-23 ソニー株式会社 Image processing apparatus and method, program, and recording medium
JP2007074595A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, program
JP2007074596A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, recording medium, and program
JP2007074586A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, program, and recording medium
JP2007074594A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method, and program
JP4655215B2 (en) * 2005-09-09 2011-03-23 ソニー株式会社 Image processing apparatus and method, and program
JP2007074591A (en) * 2005-09-09 2007-03-22 Sony Corp Image processing apparatus and method thereof, program, and recording medium
JP4650682B2 (en) * 2005-09-09 2011-03-16 ソニー株式会社 Image processing apparatus and method, program, and recording medium
JP4655216B2 (en) * 2005-09-09 2011-03-23 ソニー株式会社 Image processing apparatus and method, and program
JP2007074593A (en) * 2005-09-09 2007-03-22 Sony Corp Image processor and processing method, program and recording medium
JP2007082030A (en) * 2005-09-16 2007-03-29 Hitachi Ltd Video display device
US8842730B2 (en) 2006-01-27 2014-09-23 Imax Corporation Methods and systems for digitally re-mastering of 2D and 3D motion pictures for exhibition with enhanced visual quality
US8411931B2 (en) 2006-06-23 2013-04-02 Imax Corporation Methods and systems for converting 2D motion pictures for stereoscopic 3D exhibition
US9282313B2 (en) 2006-06-23 2016-03-08 Imax Corporation Methods and systems for converting 2D motion pictures for stereoscopic 3D exhibition
US20100183075A1 (en) * 2007-07-19 2010-07-22 Olympus Corporation Image processing method, image processing apparatus and computer readable storage medium
RU2461979C2 (en) * 2008-02-21 2012-09-20 Шарп Кабусики Кайся Video display device

Similar Documents

Publication Publication Date Title
JP2005204075A (en) Device and method for detecting motion vector, frame interpolation apparatus using the same, frame interpolation method using the method, program, and recording medium
KR20140037425A (en) Apparatus and method for reconstructing intermediate view, recording medium thereof
JP4741836B2 (en) Robust estimation of camera pan vector by repeated use of center of mass
JP5089610B2 (en) Block-based motion estimation method and apparatus
US20160080768A1 (en) Encoding system using motion estimation and encoding method using motion estimation
JP2005204066A (en) Method and device for generating interpolated image
US9280828B2 (en) Image processing apparatus, image processing method, and program
EP3104611A1 (en) Motion estimation using collocated blocks
JP2005235211A (en) Image compositing method of intermediate point in time, and 3d-display device with the method applied
JP2011525657A (en) System and method for image depth extraction using motion compensation
JP2011524120A (en) Image depth extraction system and method with forward and backward depth prediction
JP2009003507A (en) Image processing method, image processor, and image processing program
US8374247B2 (en) Method and system for hierarchical motion estimation with multi-layer sub-pixel accuracy and motion vector smoothing
JP6412819B2 (en) Image processing apparatus, image processing method, and image processing program
JP2012253492A (en) Image processing apparatus, image processing method, and program
JP2004356747A (en) Method and apparatus for matching image
CN100556139C (en) Distribute candidate vector based on local motion complexity
JPH11203483A (en) Image processor, its method and providing medium
JP4981332B2 (en) Cost function calculation method, cost function calculation device and interpolation method thereof
JP2010278931A (en) Image processing apparatus
JP2009239698A (en) Video image converting device, and video image converting method
JP6854629B2 (en) Image processing device, image processing method
JP5435242B2 (en) Image processing method, image processing apparatus, and image processing program
US8917770B2 (en) Motion estimation apparatus and motion estimation method
KR100810391B1 (en) Frame rate up conversion using motion interpolation

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060606

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090414