Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5078428B2 - Image processing apparatus and image processing method - Google Patents
[go: Go Back, main page]

JP5078428B2 - Image processing apparatus and image processing method - Google Patents

Image processing apparatus and image processing method Download PDF

Info

Publication number
JP5078428B2
JP5078428B2 JP2007129406A JP2007129406A JP5078428B2 JP 5078428 B2 JP5078428 B2 JP 5078428B2 JP 2007129406 A JP2007129406 A JP 2007129406A JP 2007129406 A JP2007129406 A JP 2007129406A JP 5078428 B2 JP5078428 B2 JP 5078428B2
Authority
JP
Japan
Prior art keywords
value
pixel
window function
block
motion vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007129406A
Other languages
Japanese (ja)
Other versions
JP2008288697A (en
Inventor
宗棋 安藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2007129406A priority Critical patent/JP5078428B2/en
Publication of JP2008288697A publication Critical patent/JP2008288697A/en
Application granted granted Critical
Publication of JP5078428B2 publication Critical patent/JP5078428B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Television Systems (AREA)

Description

本発明は、動画像のフレーム補間を行う画像処理装置および画像処理方法に関する。   The present invention relates to an image processing apparatus and an image processing method for performing frame interpolation of a moving image.

表示装置のフリッカや残像感などを改善する手法として、動画像の1秒当たりのフレーム数を倍化する倍速駆動技術が知られている。例えば1秒当たり60フレームの映像を1秒当たり120フレームの映像に変換することにより、フリッカや残像感を、大幅に改善することができる。上記フレームの数の倍化は、元の動画を構成するそれぞれのフレームの間に新たな補間フレームを挿入することによって、行われる。   As a technique for improving the flicker and afterimage feeling of a display device, a double speed driving technique for doubling the number of frames per second of a moving image is known. For example, by converting a video of 60 frames per second into a video of 120 frames per second, flicker and afterimage can be greatly improved. The doubling of the number of frames is performed by inserting a new interpolation frame between each frame constituting the original moving image.

この挿入される補間フレームを生成する方法としては、動きベクトルを用いた手法によって生成するフレーム補間技術が知られている(例えば特許文献1参照)。   As a method of generating the interpolated frame to be inserted, a frame interpolation technique for generating by a method using a motion vector is known (see, for example, Patent Document 1).

この補間フレームの生成方法について図23を参照しながら説明する。図23は従来の補間フレームの生成方法を模式的に示す図である。ここで、現フレームをF[0]、その1フレーム前のフレーム(過去フレーム)をF[−1]、これらのフレーム間に挿入される補間フレームをF[−0.5]とそれぞれ表記する。   This interpolation frame generation method will be described with reference to FIG. FIG. 23 is a diagram schematically showing a conventional method for generating an interpolation frame. Here, the current frame is represented as F [0], the frame one frame before (the past frame) is represented as F [−1], and the interpolated frame inserted between these frames is represented as F [−0.5]. .

補間フレームの生成においては、図23(a)に示すように、まず、動画像の現フレームF[0]が矩形状の複数のブロックに分割される。そして、現フレームF[0]と過去フレームF[-1]との間でブロックマッチングが行われ、各ブロックの現フレームF[0]と過去フレームF[-1]間の動きベクトルが求められる。   In the generation of the interpolation frame, as shown in FIG. 23A, first, the current frame F [0] of the moving image is divided into a plurality of rectangular blocks. Then, block matching is performed between the current frame F [0] and the past frame F [-1], and a motion vector between the current frame F [0] and the past frame F [-1] of each block is obtained. .

次いで、図23(b)に示すように、現フレームF[0]と過去フレームF[-1]との間に挿入される補間フレームとしてフレームF[−0.5]が設定され、上記求められた動きベクトルに従って現フレームF[0]のブロックが過去フレームF[−0.5]上にマッピング(配置)される。このようにして、現フレームF[0]と過去フレーム[−1]間に挿入される補間フレームF[−0.5]が生成される。
特開平03−263989号公報
Next, as shown in FIG. 23B, a frame F [−0.5] is set as an interpolated frame inserted between the current frame F [0] and the past frame F [−1], and the above calculation is performed. The block of the current frame F [0] is mapped (arranged) on the past frame F [−0.5] according to the motion vector thus determined. In this way, the interpolation frame F [−0.5] inserted between the current frame F [0] and the past frame [−1] is generated.
Japanese Patent Laid-Open No. 03-263890

しかしながら、上述した従来の技術の場合、動きベクトルを探索することができずに、画像をマッピングすることができない領域、または動画部分が動いた後の領域が、補間フレーム上に空白部分として残存する場合がある。また、マッピングされたブロックの境界付近で、周辺ブロックとの不連続性に起因する境界ノイズが発生することもある。   However, in the case of the above-described conventional technique, a motion vector cannot be searched, and an area where an image cannot be mapped or an area after moving a moving image portion remains as a blank portion on an interpolation frame. There is a case. In addition, boundary noise due to discontinuity with surrounding blocks may occur near the boundary of the mapped block.

本発明の目的は、高品質な補間フレームを生成することができる画像処理装置および画像処理方法を提供することにある。   An object of the present invention is to provide an image processing apparatus and an image processing method capable of generating a high-quality interpolation frame.

記目的を達成するために、本発明の画像処理装置は、時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行う画像処理装置であって、前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出手段と、前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックのそれぞれに対して切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って補間フレーム上に配置する配置手段と、前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定する決定手段とを備え、前記決定手段は、前記重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値のうちの最大の値が閾値以上である場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、前記各領域の画素のそれぞれに対する窓関数の値の全てが前記閾値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とすることを特徴とする。 To achieve the above SL is provided an image processing apparatus of the present invention is an image processing apparatus that performs frame interpolation of inserting an interpolated frame between a pair of temporally successive frames, one of said pair of frames A motion vector detecting means for dividing the block into a plurality of blocks and detecting a motion vector between the pair of frames for each of the divided blocks; and an area including the block for each block and having a size larger than the size of the block the cut from one of the pair of frames, a region cut out for each of the blocks, and arrangement means for arranging on the interpolation frame in accordance with the detected motion vector of the corresponding block, disposed on the interpolation frame A window function is applied to each of the extracted regions and applied to each of the regions Depending on the value of the window function, and a determining means for determining a pixel value of the overlapping portion between the cut out realm disposed on the interpolated frame, wherein the determining means of the overlapping portion If the maximum value of the window function values for each of the pixels in each region including the target pixel position is greater than or equal to the threshold value, the pixel value of the pixel in the region corresponding to the maximum window function value is the target pixel. If all the window function values for each pixel in each area are smaller than the threshold value, the pixel value of each pixel is weighted using the window function value for each pixel in each area. It calculates an average value, and wherein the pixel values and to Rukoto of the target pixel position weighted average issued the calculated.

記目的を達成するために、本発明の画像処理方法は、時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行うための画像処理方法であって、前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出工程と、前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックごとに切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って、補間フレーム上に配置する配置工程と、前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定する決定工程とを備え、前記決定工程は、前記重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値のうちの最大の値が閾値以上である場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、前記各領域の画素のそれぞれに対する窓関数の値の全てが前記閾値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とすることを特徴とする。 To achieve the above SL is provided an image processing method of the present invention is an image processing method for performing a frame interpolation of inserting an interpolated frame between a pair of temporally successive frames, the pair of frame A motion vector detecting step of dividing one into a plurality of blocks and detecting a motion vector between the pair of frames for each of the divided blocks; and a size that includes the block for each block and is larger than the size of the block An area is cut out from one of the pair of frames, and the area cut out for each block is arranged on the interpolation frame according to the detected motion vector of the corresponding block, and the area is arranged on the interpolation frame. A window function is applied to each of the extracted regions and applied to each of the regions Depending on the value of the function, and a determination step of determining a pixel value of the overlapping portion between the cut out realm disposed on the interpolated frame, wherein the determining step, the target pixel of the overlapping portion When the maximum value of the window function values for each of the pixels in each region including the position is greater than or equal to the threshold value, the pixel value of the pixel in the region corresponding to the maximum window function value is When all of the window function values for each of the pixels in each region are smaller than the threshold value, the weighted average value of the pixel values of the respective pixels using the value of the window function for each of the pixels in each region It is calculated and wherein the pixel values and to Rukoto of the target pixel position weighted average issued the calculated.

本発明によれば、高品質な補間フレームを生成することができ、フリッカや残像感が少ない高画質な動画像を得ることができる。   According to the present invention, a high-quality interpolation frame can be generated, and a high-quality moving image with less flicker and afterimage can be obtained.

以下、本発明の実施の形態について図面を参照しながら説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

(第1の実施の形態)
図1は本発明の第1の実施の形態に係る画像処理装置の構成を示すブロック図である。
(First embodiment)
FIG. 1 is a block diagram showing the configuration of the image processing apparatus according to the first embodiment of the present invention.

本実施の形態の画像処理装置は、図1に示すように、フレームメモリ1、ブロックマッチング部2、ベクトル補間部3、重ね合わせ処理部4、窓関数テーブル5および正規化部6を備える。ブロックマッチング部2、ベクトル補間部3、重ね合わせ処理部4、正規化部6は、CPU(図示せず)がROMなどのメモリ(図示せず)に格納されているプログラムを実行することによって構成されるものである。すなわち、これらは、ソフトウェアにより構成されるものである。   As shown in FIG. 1, the image processing apparatus according to the present embodiment includes a frame memory 1, a block matching unit 2, a vector interpolation unit 3, an overlay processing unit 4, a window function table 5, and a normalization unit 6. The block matching unit 2, the vector interpolation unit 3, the superposition processing unit 4, and the normalization unit 6 are configured by a CPU (not shown) executing a program stored in a memory (not shown) such as a ROM. It is what is done. That is, these are configured by software.

ここで、以下の説明において、現フレームをF[0]、その1フレーム前のフレームをF[−1]、これらのフレーム間に挿入される補間フレームをF[−0.5]とそれぞれ表記する。また、フレームの画像を構成する座標(x,y)の画素をP(x,y)と表記する。また、フレーム上の画素を特定する場合には、F[f]:P(x,y)と表記する。   Here, in the following description, the current frame is denoted as F [0], the previous frame is denoted as F [-1], and the interpolated frame inserted between these frames is denoted as F [-0.5]. To do. In addition, a pixel at coordinates (x, y) constituting a frame image is denoted as P (x, y). When specifying a pixel on the frame, it is expressed as F [f]: P (x, y).

フレームメモリ1は、時間的に連続する一対のフレームとこれらのフレーム間に挿入される補間フレームを保持するためのメモリである。具体的には、フレームメモリ1は、動画像を構成するフレーム単位の画像S1を保持する。ここでは、フレームメモリ1には、外部装置から入力された、動画像を構成するフレームとして現フレームF[0]の画像と、その1フレーム前の過去フレームF[−1]の画像とが保持されている。また、上記現フレームF[0]と過去フレームF[−1]間に挿入される補間フレームの格納領域が確保されている。   The frame memory 1 is a memory for holding a pair of temporally continuous frames and an interpolation frame inserted between these frames. Specifically, the frame memory 1 holds an image S1 in units of frames constituting a moving image. Here, the frame memory 1 holds an image of the current frame F [0] as a frame constituting a moving image and an image of a past frame F [−1] one frame before that are input from an external device. Has been. In addition, a storage area for the interpolation frame inserted between the current frame F [0] and the past frame F [-1] is secured.

次に、ブロックマッチング部2について図2〜図4を参照しながら説明する。図2は現フレームF[0]から切り出された複数のブロックの一例を示す図である。図3は過去フレームF[−1]から切り出されたブロックの一例を示す図である。図4はブロックS2に最も一致する部分画像(8×8画素のブロック)S3aのオフセットに基づいて検出された動きベクトルS14を示す図である。   Next, the block matching unit 2 will be described with reference to FIGS. FIG. 2 is a diagram illustrating an example of a plurality of blocks cut out from the current frame F [0]. FIG. 3 is a diagram illustrating an example of a block cut out from the past frame F [−1]. FIG. 4 is a diagram showing the motion vector S14 detected based on the offset of the partial image (block of 8 × 8 pixels) S3a that most closely matches the block S2.

ブロックマッチング部2は、動きベクトルを求めるために、フレームメモリ1に保持されている現フレームF[0]の画像を矩形状の複数のブロックS2に分割し、これらのブロックS2を切り出す。各ブロックS2のブロックサイズは、本発明が適用される装置毎に適宜定められるものである。このブロックサイズが大きくなるほど、動きベクトルの探索精度が向上する。逆にブロックサイズが小さくなるほど、装置の処理能力を小さくすることができ、低コストで装置を構成することが可能である。   In order to obtain a motion vector, the block matching unit 2 divides the image of the current frame F [0] held in the frame memory 1 into a plurality of rectangular blocks S2, and cuts out these blocks S2. The block size of each block S2 is appropriately determined for each apparatus to which the present invention is applied. As the block size increases, the motion vector search accuracy improves. Conversely, as the block size decreases, the processing capability of the apparatus can be reduced, and the apparatus can be configured at low cost.

本実施の形態においては、図2に示すように、ブロックS2のブロックサイズが8×8画素(Bs=8)であるとする。ここで、上からX行目、左からY列目のブロック画像をB[X,Y]と表記する。例えば、上から1行目のブロックS2は、左から順にB[1,1],B[2,1],B[3,1],…、上から2行目のブロックS2は、左から順にB[1,2],B[2,2],B[3,2],…とそれぞれ表記される。   In the present embodiment, it is assumed that the block size of the block S2 is 8 × 8 pixels (Bs = 8) as shown in FIG. Here, the block image in the Xth row from the top and the Yth column from the left is denoted as B [X, Y]. For example, the block S2 in the first row from the top is B [1,1], B [2,1], B [3,1],... From the left, and the block S2 in the second row from the top is from the left. B [1,2], B [2,2], B [3,2],.

ここで、フレーム上の各ブロックを特定する場合は、各ブロックを、F[f]:B[X,Y]と表記する。さらに、ブロック画像B[X,Y]の相対座標(i,j)に位置する画素をB[X,Y](i,j)と表記する。すなわち、P(7,9)とB[1,2](7,1)は、同じ画素を指す。   Here, when specifying each block on the frame, each block is expressed as F [f]: B [X, Y]. Furthermore, a pixel located at the relative coordinates (i, j) of the block image B [X, Y] is denoted as B [X, Y] (i, j). That is, P (7,9) and B [1,2] (7,1) indicate the same pixel.

また、ブロックマッチング部2は、フレームF[−1]から動きベクトルを求めるためのブロックS3を切り出す。このブロックS3のブロックサイズは、動きベクトルの探索範囲Saによって決定される。探索範囲Saは、本発明が適用されるシステム毎に適宜決められるものである。この探索範囲Saが広くなるほど、速い動きの動画に対しても動きベクトルを求めることが可能となる。逆に、探索範囲Saが小さくなるほど、装置の処理能力を小さくすることができ、低コストで装置を構成することができる。   Further, the block matching unit 2 cuts out a block S3 for obtaining a motion vector from the frame F [-1]. The block size of the block S3 is determined by the motion vector search range Sa. The search range Sa is appropriately determined for each system to which the present invention is applied. As the search range Sa becomes wider, a motion vector can be obtained even for a fast-moving moving image. Conversely, as the search range Sa becomes smaller, the processing capability of the device can be reduced, and the device can be configured at low cost.

本実施の形態においては、図3に示すように、探索範囲Saが12画素である。すなわち、ブロックS2のブロックサイズ(Bs)に探索範囲Sa×2を加えた、8+12×2=32がブロックS3の一辺のサイズとなり、ブロックS3のブロックサイズは、32×32画素となる。   In the present embodiment, as shown in FIG. 3, the search range Sa is 12 pixels. That is, 8 + 12 × 2 = 32 obtained by adding the search range Sa × 2 to the block size (Bs) of the block S2 is the size of one side of the block S3, and the block size of the block S3 is 32 × 32 pixels.

ブロックマッチング部2は、図4に示すように、ブロックS3の中からブロックS2に最も一致する部分画像(8×8画素のブロック)S3aを探索する。そして、ブロックS2の位置からの部分画像S3aのオフセットが動きベクトルS4として検出される。   As shown in FIG. 4, the block matching unit 2 searches the block S3 for a partial image (8 × 8 pixel block) S3a that most closely matches the block S2. Then, the offset of the partial image S3a from the position of the block S2 is detected as the motion vector S4.

ここで、ブロックS3中の部分画像S3aと上記ブロックS2が一致しているか否かの判定には、部分画像S3aとブロックS2のそれぞれ対応する画素値dの差分絶対値の総和が用いられる。この値が小さいほど、画像が一致する度合いが高い。具体的には、ブロックS2がF[0]:B[X,Y]であるとき、ブロックS3は、F[−1]:P(x−Sa,y−Sa)〜F[−1]:P(x+Bs+Sa−1,y+Bs+Sa−1)を対角とするブロックである。そして、ブロックS3の中の部分画像S3aの画素は、F[−1]:B[X,Y](i+h,j+v){h=−Sa〜+Sa|v=−Sa〜+Sa}と表される。   Here, for determining whether or not the partial image S3a in the block S3 matches the block S2, the sum of absolute differences of the pixel values d corresponding to the partial image S3a and the block S2 is used. The smaller this value, the higher the degree of matching of images. Specifically, when the block S2 is F [0]: B [X, Y], the block S3 includes F [-1]: P (x-Sa, y-Sa) to F [-1]: This is a block whose diagonal is P (x + Bs + Sa-1, y + Bs + Sa-1). The pixels of the partial image S3a in the block S3 are expressed as F [−1]: B [X, Y] (i + h, j + v) {h = −Sa to + Sa | v = −Sa to + Sa}. .

ここで、F[0]:B[x,y](i,j)とF[−1]:B[X,Y](i+h,j+v)の差分絶対値の総和をD[h,v]とすると、D[h,v]は、次の(1)式で表される。   Here, the sum of the absolute differences of F [0]: B [x, y] (i, j) and F [-1]: B [X, Y] (i + h, j + v) is D [h, v]. Then, D [h, v] is expressed by the following equation (1).

Figure 0005078428
Figure 0005078428

そして、D[h,v]の最小値をD[H,V]とすると、
D[H,V]=min(D[h,v])
を満足するH,Vが求められる。この条件を満足する(H,V)なるベクトルは、現フレームF[0]から過去フレームF[−1]を指し示すベクトルであるので、このベクトルを−1倍した−(H,V)が、F[0]:B[x,y]における動きベクトルS4となる。
If the minimum value of D [h, v] is D [H, V],
D [H, V] = min (D [h, v])
H and V satisfying the above are required. Since the vector (H, V) that satisfies this condition is a vector indicating the past frame F [-1] from the current frame F [0],-(H, V) obtained by multiplying this vector by -1 is F [0]: The motion vector S4 in B [x, y].

以下、この動きベクトルS4をF[0]:B[x,y]:[S4]と表記する。動きベクトルS4の要素を独立に表記する場合は、[S4]:H,[S4]:Vと表記する。   Hereinafter, this motion vector S4 is expressed as F [0]: B [x, y]: [S4]. When expressing the elements of the motion vector S4 independently, they are expressed as [S4]: H, [S4]: V.

次に、ベクトル補間部3について図5を参照しながら説明する。図5はブロックマッチング部2により求められたた動きベクトルS4に基づいて求められた補間動きベクトルS14を示す図である。   Next, the vector interpolation unit 3 will be described with reference to FIG. FIG. 5 is a diagram showing an interpolation motion vector S14 obtained based on the motion vector S4 obtained by the block matching unit 2.

ベクトル補間部3は、図5に示すように、ブロックマッチング部2により求められたた動きベクトルS4を−1/2倍して、補間フレームF[−0.5]上の位置を指し示す補間動きベクトルS14を求める。補間動きベクトルS14は、次の(2)式で表される。   As shown in FIG. 5, the vector interpolation unit 3 multiplies the motion vector S4 obtained by the block matching unit 2 by -1/2 to indicate an interpolation motion indicating a position on the interpolation frame F [-0.5]. Vector S14 is obtained. The interpolation motion vector S14 is expressed by the following equation (2).

Figure 0005078428
Figure 0005078428

次に、重ね合わせ処理部4について図6〜図10を参照しながら説明する。図6は重ね合わせ処理部4により補間フレームF[−0.5]上にマッピングする画像のサイズを示す図である。図7は補間画素毎に対応付けられている、加算/最大値モード、影響度および画素値を格納するフィールドの構成を示す図である。図8は窓関数ωの分布を示す図である。図9は窓関数ωの動きベクトルと影響度の関係を表す特性を示す図である。図10は補間動きベクトルS14、マッピングされた画像、影響度S16の関係を模式的に示す図である。   Next, the superposition processing unit 4 will be described with reference to FIGS. FIG. 6 is a diagram showing the size of an image mapped on the interpolation frame F [−0.5] by the overlay processing unit 4. FIG. 7 is a diagram showing a configuration of fields that store the addition / maximum value mode, the influence degree, and the pixel value, which are associated with each interpolation pixel. FIG. 8 is a diagram showing the distribution of the window function ω. FIG. 9 is a diagram showing characteristics representing the relationship between the motion vector of the window function ω and the influence level. FIG. 10 is a diagram schematically showing the relationship between the interpolation motion vector S14, the mapped image, and the influence S16.

重ね合わせ処理部4は、現フレームF[0]の各ブロックを補間フレームF[−0.5]上にマッピングするための重ね合わせ処理を行う。この重ね合わせ処理においては、図6に示すように、まず、上記補間動きベクトルS14の始点に対応するブロックS2(点線部)を包含しかつ該ブロックS2のブロックサイズより大きい領域(斜線部)が現フレームF[0]から切り出される。そして、この切り出された領域の画像が補間動きベクトルS14に従って補間フレームF[−0.5]上の実線領域にマッピング(配置)される。   The superposition processing unit 4 performs superposition processing for mapping each block of the current frame F [0] onto the interpolation frame F [-0.5]. In this superposition processing, as shown in FIG. 6, first, an area (shaded portion) that includes the block S2 (dotted line portion) corresponding to the start point of the interpolated motion vector S14 and is larger than the block size of the block S2 is included. Cut out from the current frame F [0]. Then, the image of the clipped area is mapped (arranged) to the solid line area on the interpolation frame F [−0.5] according to the interpolation motion vector S14.

ここで、マッピング後に隙間部分ができないようにするために、フレームF[0]から切り出された領域(斜線部)すなわちマッピングする画像のサイズIsは、ブロックS3のブロックサイズより大きいことが望ましい。本実施の形態においては、Is=48とする。   Here, in order to prevent a gap portion from being generated after mapping, it is desirable that the area (shaded portion) cut out from the frame F [0], that is, the size Is of the image to be mapped is larger than the block size of the block S3. In this embodiment, Is = 48.

次いで、現フレームF[0]の切り出された領域の画素S22がフレームメモリ1から順に読み出される。この画素S22の読み出し範囲は、以下となる。
{q=x+(Bs-Is)/2〜x+(Bs+Is)/2−1,r=y+(Bs-Is)/2〜y+(Bs+Is)/2}
読み出された画素S22は、[S22]=F[0]:P(q,r)と表される。
Next, the pixel S22 in the segmented area of the current frame F [0] is sequentially read from the frame memory 1. The readout range of the pixel S22 is as follows.
{Q = x + (Bs-Is) / 2 to x + (Bs + Is) / 2-1, r = y + (Bs-Is) / 2 to y + (Bs + Is) / 2}
The read pixel S22 is expressed as [S22] = F [0]: P (q, r).

次いで、現フレームF[0]から切り出された領域の画素S22との重ね合わせ処理を行うために、補間動きベクトルS14に従って、フレームメモリ1内の補間フレームF[−0.5]から補間画素S15が読み出される。読み出される画素S15は、
[S15]=F[−0.5]:P(q+[V11]:H,r+[V11]:V)
となる。
Next, in order to perform the overlapping process with the pixel S22 in the region cut out from the current frame F [0], the interpolation pixel S15 from the interpolation frame F [−0.5] in the frame memory 1 is performed according to the interpolation motion vector S14. Is read out. The pixel S15 to be read is
[S15] = F [−0.5]: P (q + [V11]: H, r + [V11]: V)
It becomes.

ここで、補間フレームF[−0.5]の補間画素S15には、図7に示すように、[加算/最大値]フィールド、[影響度]フィールド、[画素値]フィールドの各フィールドが対応付けられている。ここで、[加算/最大値]フィールドは、補間画素モードが加算モーであるか最大値モードであるかを示すフラグが格納されている。 Here, as shown in FIG. 7, each field of the [addition / maximum value] field, the [degree of influence] field, and the [pixel value] field corresponds to the interpolation pixel S15 of the interpolation frame F [−0.5]. It is attached. Here, the [sum / Maximum Value field, flag interpolation pixel mode indicating whether the maximum value mode or an addition mode is stored.

本実施の形態においては、後述するように、補間フレームF[−0.5]上に配置された切り出された領域のそれぞれに対して窓関数ωが適用される。そして、領域のそれぞれに適用された窓関数ωの値と閾値ψに応じて、加算モードと最大値モードのいずれかが選択され、選択された補間画素モードにより、補間フレームF[−0.5]上に配置された領域間の重複する部分の画素値が算出されて適応的に決定される。   In the present embodiment, as will be described later, the window function ω is applied to each of the clipped regions arranged on the interpolation frame F [−0.5]. Then, either the addition mode or the maximum value mode is selected according to the value of the window function ω applied to each of the regions and the threshold value ψ, and the interpolation frame F [−0.5 is selected according to the selected interpolation pixel mode. ] The pixel values of the overlapping portions between the regions arranged above are calculated and adaptively determined.

具体的には、上記重複する部分の注目点(注目画素位置)にある各切り出された領域の画素のそれぞれに対する窓関数ωの値のうちの最大の値が閾値ψ以上(閾値以上)である場合、最大モードが選択され、該最大の窓関数ωの値に対応する領域の画素の画素値が注目点の画素値とされる。これに対し、上記重複する部分の注目点(注目画素位置)にある各切り出された領域の画素のそれぞれに対する窓関数ωの値の全てが閾値ψより小さい場合(所定範囲内にある場合)、加算モードが選択される。この加算モードにおいては、上記重複する部分の注目点(注目画素位置)にある上記各切り出された領域の画素のそれぞれに対する窓関数ωの値を用いてそれぞれの画素の画素値の加重平均値が算出される。そして、算出された加重平均値が注目点の画素値とされる。   Specifically, the maximum value of the values of the window function ω for each pixel in each clipped region at the overlapping point of interest (attention pixel position) is greater than or equal to the threshold ψ (greater than or equal to the threshold). In this case, the maximum mode is selected, and the pixel value of the pixel corresponding to the maximum window function ω is set as the pixel value of the target point. On the other hand, when all the values of the window function ω for each of the pixels in each clipped region at the overlapping point of interest (the pixel position of interest) are smaller than the threshold ψ (when they are within a predetermined range), The addition mode is selected. In this addition mode, the weighted average value of the pixel values of the respective pixels is obtained by using the value of the window function ω for each of the pixels in each of the cut out regions at the overlapping point of interest (attention pixel position). Calculated. Then, the calculated weighted average value is set as the pixel value of the attention point.

[加算/最大値]フィールドのフラグが加算モードを示す場合、[影響度]フィールドには、補間画素の画素位置に重ねられた全ての画素の影響度の総和が格納されている。[画素値]フィールドには、補間画素の画素位置に重ねられた全ての画素の(画素値×影響度)の総和が格納されている。   When the flag of the [addition / maximum value] field indicates the addition mode, the sum of influence degrees of all the pixels superimposed on the pixel position of the interpolation pixel is stored in the [influence degree] field. The [pixel value] field stores the sum of (pixel value × influence degree) of all the pixels superimposed on the pixel position of the interpolation pixel.

これに対し、[加算/最大値]フィールドのフラグが最大値モードを示す場合、[影響度]フィールドには、補間画素の画素位置に重ねられた全ての画素の内、最大の影響度を有する画素の影響度が格納されている。[画素値]フィールドには、補間画素の画素位置に重ねられた全ての画素の内、最大の影響度を有する画素の画素値が格納されている。   On the other hand, when the flag in the [addition / maximum value] field indicates the maximum value mode, the [influence degree] field has the maximum influence degree among all the pixels superimposed on the pixel position of the interpolation pixel. The influence degree of the pixel is stored. In the [Pixel value] field, the pixel value of the pixel having the maximum degree of influence among all the pixels superimposed on the pixel position of the interpolation pixel is stored.

これらのフィールドの値は、後述するように、補間フレームの作成が開始される際に、フレームメモリに格納された補間フレームの画像がクリアされることに伴い、影響度=0、画素値=0にクリアされる。   As will be described later, when the creation of an interpolation frame is started, the values of these fields are set such that the influence degree = 0 and the pixel value = 0 when the image of the interpolation frame stored in the frame memory is cleared. Cleared.

以下の説明において、補間画素S15の[加算/最大値]フィールドを[S15]:M、[影響度]フィールドを[S15]:E、[画素値]フィールドを[S15]:Pとそれぞれ表記するものとする。   In the following description, the [addition / maximum value] field of the interpolation pixel S15 is represented as [S15]: M, the [influence] field is represented as [S15]: E, and the [pixel value] field is represented as [S15]: P. Shall.

重ね合わせ処理部4は、窓関数テーブル5から、重ね合わせ処理を行う画素位置(注目点)の画素に対応付けられている影響度S16を読み出す。影響度S16は、窓関数テーブル5に格納されている窓関数ωの値である。この窓関数ωは、例えば図8および図9に示すような分布を有する連続関数である。また、窓関数ωは、図8に示すように、動きベクトルの始点に対応するブロックをカバーする範囲で影響度が十分に大きく、上記動きベクトルの始点に対応するブロックから離れるに従って影響度が0に近づく特性を有する関数である。この窓関数ωの定義域は、マッピングする画像(切り出された領域)のサイズIsに等しく、ω(x)[x=−Is/2〜Is/2]である。   The superposition processing unit 4 reads from the window function table 5 the influence S16 associated with the pixel at the pixel position (attention point) where the superposition processing is performed. The influence degree S16 is a value of the window function ω stored in the window function table 5. The window function ω is a continuous function having a distribution as shown in FIGS. 8 and 9, for example. Further, as shown in FIG. 8, the window function ω has a sufficiently large influence in a range covering the block corresponding to the start point of the motion vector, and the influence degree becomes 0 as the distance from the block corresponding to the start point of the motion vector increases. Is a function having a characteristic approaching. The domain of the window function ω is equal to the size Is of the image to be mapped (the cropped region) and is ω (x) [x = −Is / 2 to Is / 2].

例えば図10に示すように、現フレームF[1]の参照画素に対応する補間フレームF[−0.5]上にマッピングされた画像の注目点の画素に対して窓関数ωの値が適用され、この窓関数ωの値すなわち影響度S16に応じて上記注目点の画素値が決定される。   For example, as shown in FIG. 10, the value of the window function ω is applied to the pixel at the point of interest of the image mapped on the interpolation frame F [−0.5] corresponding to the reference pixel of the current frame F [1]. Then, the pixel value of the attention point is determined according to the value of the window function ω, that is, the influence S16.

加算モードの場合、対応する補間画素S15の影響度S16の値が閾値ψ以上であるか否かに応じて重複解決処理の切り替えが行われる。ここで、閾値ψは、以後の重複解決処理を切り替えるために使用される値である。閾値ψを大きくすると、画素の加重平均を行う領域が広がり、滑らかな画像が得られる。閾値ψを小さくすると、画素の加重平均を行う領域が狭くなり、シャープな画像が得られる。通常は、閾値ψは、動きベクトルS4を算出するブロックのブロックサイズと重複解決処理の切り換え点がほぼ同一となる値に設定される。   In the addition mode, the overlap resolution process is switched according to whether or not the value of the influence S16 of the corresponding interpolation pixel S15 is equal to or greater than the threshold ψ. Here, the threshold ψ is a value used for switching the subsequent overlap resolution processing. When the threshold value ψ is increased, the area where the weighted average of pixels is increased, and a smooth image can be obtained. When the threshold value ψ is reduced, the area where the weighted average of pixels is reduced and a sharp image is obtained. Normally, the threshold ψ is set to a value at which the block size of the block for calculating the motion vector S4 and the switching point of the overlap resolution process are substantially the same.

上記影響度S16が閾値ψ以上でない場合、補間画素S15の[影響度]フィールドの値(影響度)に対して、読み出された影響度S16の値が加算される。また、補間画素S15の[画素値]フィールドの値(画素値×影響度)に対して、画素S22の画素値と影響度S16が乗じた値が加算される。すなわち、次の(3)式による演算が行われ、画素の加重平均値が算出される。   When the influence degree S16 is not equal to or greater than the threshold ψ, the value of the read influence degree S16 is added to the value (influence degree) of the [influence degree] field of the interpolation pixel S15. Further, a value obtained by multiplying the pixel value of the pixel S22 and the influence level S16 is added to the value (pixel value × the influence level) of the [pixel value] field of the interpolation pixel S15. That is, the calculation according to the following equation (3) is performed, and the weighted average value of the pixels is calculated.

Figure 0005078428
Figure 0005078428

このようにして対応するフィールドの値が書き換えられた補間画素S15は、補間画素S17としてレジスタ(図示せず)に記憶される。そして、このレジスタに保持されている補間画素S17は、フレームメモリ1の補間フレームF[−0.5]の対応する位置に上書きされる。すなわち、
F[−0.5]:P(i,j)=[S17]
なる操作が行われる。
The interpolation pixel S15 in which the value of the corresponding field is rewritten in this way is stored in a register (not shown) as the interpolation pixel S17. Then, the interpolation pixel S17 held in this register is overwritten at the corresponding position of the interpolation frame F [−0.5] in the frame memory 1. That is,
F [−0.5]: P (i, j) = [S17]
The operation is performed.

これに対し、上記影響度S16が閾値ψ以上である場合、補間画素S15の[加算/最大値]フィールドのフラグが[最大値]モードのフラグにセットされる。そして、補間画素S15の[影響度]フィールドの値が、窓関数テーブル5から読み出された影響度S16の値に書き換えられる。また補間画素S15の[画素値]フィールドの値が、基準画像I2の画素値に書き換えられる。すなわち、次の(4)式による演算が行われる。   On the other hand, when the influence S16 is equal to or greater than the threshold ψ, the flag in the [addition / maximum value] field of the interpolation pixel S15 is set as the flag in the [maximum value] mode. Then, the value of the [influence] field of the interpolation pixel S <b> 15 is rewritten to the value of the influence S <b> 16 read from the window function table 5. Further, the value of the [pixel value] field of the interpolation pixel S15 is rewritten to the pixel value of the reference image I2. That is, the calculation according to the following equation (4) is performed.

Figure 0005078428
Figure 0005078428

この場合も、同様に、対応するフィールドの値が書き換えられた補間画素S15は、補間画素S17としてレジスタ(図示せず)に記憶された後に、フレームメモリ1の補間フレームF[−0.5]上の対応する位置に上書きされる。すなわち、
F[−0.5]:P(i,j)=[S17]
なる操作が行われる。
In this case, similarly, the interpolated pixel S15 in which the value of the corresponding field is rewritten is stored in the register (not shown) as the interpolated pixel S17, and then the interpolated frame F [−0.5] in the frame memory 1 is stored. The corresponding position above is overwritten. That is,
F [−0.5]: P (i, j) = [S17]
The operation is performed.

最大値モードの場合、窓関数テーブル5から読み出された影響度S16の値と補間画素S15の[影響度]フィールドの値とが比較される。ここで、影響度S16の値が補間画素S15の[影響度]フィールドの値以上であれば、補間画素S15の[影響度]フィールドの値が、窓関数テーブル5から読み出された影響度S16の値に書き換えられる。また補間画素S15の[画素値]フィールドの値が、ブロックS2の画素S22の画素値に書き換えられる。すなわち、上記(4)式による演算が行われる。そして、同様に、対応するフィールドの値が書き換えられた補間画素S15は、補間画素S17としてレジスタ(図示せず)に記憶された後に、フレームメモリ1の補間フレームF[−0.5]上の対応する位置に上書きされる。   In the maximum value mode, the value of the influence S16 read from the window function table 5 is compared with the value of the [influence] field of the interpolation pixel S15. Here, if the value of the influence degree S16 is equal to or greater than the value of the [influence degree] field of the interpolation pixel S15, the value of the [influence degree] field of the interpolation pixel S15 is the influence degree S16 read from the window function table 5. Is rewritten to the value of. Further, the value of the [pixel value] field of the interpolation pixel S15 is rewritten to the pixel value of the pixel S22 of the block S2. That is, the calculation according to the above equation (4) is performed. Similarly, the interpolated pixel S15 in which the value of the corresponding field is rewritten is stored in the register (not shown) as the interpolated pixel S17, and then on the interpolated frame F [−0.5] of the frame memory 1. The corresponding position is overwritten.

これに対し、影響度S16の値が補間画素S15の[影響度]フィールドの値以上でなければ、補間画素S15は、補間画素S17としてレジスタ(図示せず)に記憶された後に、フレームメモリ1の補間フレームF[−0.5]上の対応する位置に上書きされる。   On the other hand, if the value of the influence S16 is not equal to or greater than the value of the [influence] field of the interpolation pixel S15, the interpolation pixel S15 is stored in the register (not shown) as the interpolation pixel S17, and then the frame memory 1 The corresponding position on the interpolation frame F [−0.5] is overwritten.

以上で、現フレームF[0]の各ブロックS2の1ブロック分の処理が終了する。そして、現フレームF[0]の全てのブロックS2について処理が終了すると、正規化部6による正規化出力処理が行われる。これに対し、現フレームF[0]の全てのブロックS2についての処理が終了していない場合、再度ブロックマッチング部2による現フレームF[0]からの次のブロックS2の切り出しが行われる。   Thus, the processing for one block of each block S2 of the current frame F [0] is completed. When the processing is completed for all the blocks S2 of the current frame F [0], the normalization output process by the normalization unit 6 is performed. On the other hand, when the processing for all the blocks S2 of the current frame F [0] is not completed, the next block S2 is cut out from the current frame F [0] by the block matching unit 2 again.

次に、正規化部6について説明する。   Next, the normalization unit 6 will be described.

正規化部6は、フレームメモリ1から、補間フレームF[−0.5]を構成する補間画素S17を順に読み出す。読み出す範囲は、{x=1〜X,y=1〜Y}となる。   The normalizing unit 6 sequentially reads out the interpolation pixel S <b> 17 constituting the interpolation frame F [−0.5] from the frame memory 1. The read range is {x = 1 to X, y = 1 to Y}.

正規化部6は、読み出した補間画素S17の[加算/最大値]フィールドのフラグを参照し、そのフラグが加算モードを示す場合、補間画素S17の[画素値]フィールドの値を[影響度]フィールドの値で除算して画素値を正規化する。この正規化により、[画素値]フィールドの値は、上記正規化された画素値に書き換えられる。そして、[画素値]フィールドの値が正規化された画素値に書き換えられた補間画素S17は、正規化画素S19として出力される。すなわち、次の(5)式で表される操作が行われる。   The normalizing unit 6 refers to the flag of the [addition / maximum value] field of the read interpolation pixel S17, and when the flag indicates the addition mode, the normalization unit 6 sets the value of the [pixel value] field of the interpolation pixel S17 to [influence]. Divide by field value to normalize pixel values. By this normalization, the value of the [pixel value] field is rewritten to the normalized pixel value. Then, the interpolation pixel S17 in which the value of the [pixel value] field is rewritten to the normalized pixel value is output as the normalized pixel S19. That is, the operation represented by the following equation (5) is performed.

Figure 0005078428
Figure 0005078428

これに対し、読み出された補間画素S17の[加算/最大値]フィールドのフラグが加算モードでなく、最大値モードを示す場合、読み出された補間画素S17は、上記正規化が行われることなく、正規化画素S19として出力される。   On the other hand, when the flag in the [addition / maximum value] field of the read interpolation pixel S17 indicates the maximum value mode instead of the addition mode, the read interpolation pixel S17 is subjected to the above normalization. Without being output as a normalized pixel S19.

正規化部6は、補間フレームF[−0.5]の画像を構成する補間画素の全てを出力するまで、上記処理を繰り返す。   The normalizing unit 6 repeats the above processing until all of the interpolation pixels constituting the image of the interpolation frame F [−0.5] are output.

次に、本画像処理装置の補間フレーム生成処理について図11〜図13を参照しながら説明する。図11はブロックマッチング部2による動きベクトル検出処理およびベクトル補間部3による補間ベクトル出力処理の手順を示すフローチャートである。図12は重ね合わせ処理部4による重ね合わせ処理の手順を示すフローチャートである。図13は正規化部6による正規化処理の手順を示すフローチャートである。   Next, interpolation frame generation processing of the image processing apparatus will be described with reference to FIGS. FIG. 11 is a flowchart showing the procedure of motion vector detection processing by the block matching unit 2 and interpolation vector output processing by the vector interpolation unit 3. FIG. 12 is a flowchart showing the procedure of overlay processing by the overlay processor 4. FIG. 13 is a flowchart showing the procedure of normalization processing by the normalization unit 6.

本画像処理装置においては、図11に示すように、まず、フレームメモリ1における、現フレームF[0]と過去フレームF[−1]間に挿入される補間フレームF[−0.5]の画像の格納領域の値がクリアされる(ステップS101)。そして、フレームメモリ1には、外部装置から、現フレームF[0]の画像が入力されて保持される(ステップS102)。このとき、フレームメモリ1には、現フレームF[0]の1フレーム前の過去フレームF[−1]の画像が保持されている。   In this image processing apparatus, as shown in FIG. 11, first, an interpolated frame F [−0.5] inserted between the current frame F [0] and the past frame F [−1] in the frame memory 1 is displayed. The value of the image storage area is cleared (step S101). Then, the image of the current frame F [0] is input from the external device and held in the frame memory 1 (step S102). At this time, the frame memory 1 holds an image of the past frame F [−1] one frame before the current frame F [0].

次いで、ブロックマッチグ部2による動きベクトル検出処理が開始される。この動きベクトル検出処理においては、まず、フレームメモリ1に保持されている現フレームF[0]が矩形状の複数のブロックS2に分割され、これらのブロックS2が切り出される(ステップS103)。続いて、過去フレームF[−1]からブロックS3が切り出される(ステップS104)。そして、動きベクトルS4を検出するためのブロックマッチングが行われる(ステップS105)。このブロックマッチングにおいては、ブロックS3の中からブロックS2に最も一致する部分画像(8×8画素のブロック画像)S3aが探索される。そして、上記探索された部分画像S3aの上記ブロック画像S2の位置からのオフセット(方向および移動量)が動きベクトルS4として検出される。   Next, motion vector detection processing by the block matching unit 2 is started. In this motion vector detection process, first, the current frame F [0] held in the frame memory 1 is divided into a plurality of rectangular blocks S2, and these blocks S2 are cut out (step S103). Subsequently, the block S3 is cut out from the past frame F [-1] (step S104). Then, block matching for detecting the motion vector S4 is performed (step S105). In this block matching, a partial image (8 × 8 pixel block image) S3a that most closely matches the block S2 is searched from the block S3. Then, an offset (direction and amount of movement) of the searched partial image S3a from the position of the block image S2 is detected as a motion vector S4.

次いで、ベクトル補間部3により、ブロックマッチング部2により検出された動きベクトルS4を−1/2倍して、補間フレームF[−0.5]を指し示す補間動きベクトルS14が求められる(ステップS106)。   Next, the vector interpolation unit 3 multiplies the motion vector S4 detected by the block matching unit 2 by -1/2 to obtain an interpolation motion vector S14 indicating the interpolation frame F [-0.5] (step S106). .

このようにして、現フレームF[0]の1つのブロックS2に対する補間動きベクトルS14が求められると、重ね合わせ処理部4による重ね合わせ処理が開始される。   In this way, when the interpolated motion vector S14 for one block S2 of the current frame F [0] is obtained, the overlay processing by the overlay processing unit 4 is started.

重ね合わせ処理においては、図12に示すように、まず、補間フレームF[−0.5]上にマッピングするための画像として、現フレームF[0]から切り出された領域(ブロックS2を包含する領域)の画素S22が、順に読み出される(ステップS107)。続いて、現フレームF[0]から読み出された画素S22との重ね合わせ処理を行うために、補間動きベクトルS14に従って、フレームメモリ1内の補間フレームF[−0.5]から補間画素S15が読み出される(ステップS108)。そして、窓関数テーブル5から、重ね合わせ処理を行う画素位置に応じた影響度S16(窓関数テーブル5に格納されている窓関数ωの値)が読み出される(ステップS109)。   In the superimposition process, as shown in FIG. 12, first, as an image to be mapped on the interpolation frame F [−0.5], an area cut out from the current frame F [0] (including the block S2) is included. Area S) pixels S22 are sequentially read (step S107). Subsequently, in order to perform an overlapping process with the pixel S22 read from the current frame F [0], the interpolation frame S [15] from the interpolation frame F [−0.5] in the frame memory 1 is performed according to the interpolation motion vector S14. Is read (step S108). Then, the degree of influence S16 (the value of the window function ω stored in the window function table 5) corresponding to the pixel position on which the overlay process is performed is read from the window function table 5 (step S109).

次いで、補間画素S15の[加算/最大値]フィールドのフラグが加算モードを示すか否かの判定が行われる(ステップS110)。ここで、上記フラグが加算モードを示す場合、上記読み出された影響度S16が閾値ψ以上であるか否かが判定される(ステップS111)。上記影響度S16が閾値ψ以上でない場合、補間画素S15の[影響度]フィールドの値(影響度)に対して、上記読み出された影響度S16の値が加算される(ステップS114)。また、補間画素S15の[画素値]フィールドの値(画素値×影響度)に対して、画素S22の画素値と影響度S16が乗じた値が加算される。すなわち、上記(3)式による演算が行われる。このようにして、フィールドの値が書き換えられた補間画素S15は、補間画素S17としてレジスタ(図示せず)に一時的に記憶される(ステップS116)。   Next, it is determined whether or not the flag in the [addition / maximum value] field of the interpolation pixel S15 indicates the addition mode (step S110). Here, when the flag indicates the addition mode, it is determined whether or not the read influence S16 is equal to or greater than a threshold value ψ (step S111). When the influence S16 is not equal to or greater than the threshold ψ, the read influence S16 is added to the value (influence) in the [influence] field of the interpolation pixel S15 (step S114). Further, a value obtained by multiplying the pixel value of the pixel S22 and the influence level S16 is added to the value (pixel value × the influence level) of the [pixel value] field of the interpolation pixel S15. That is, the calculation according to the above equation (3) is performed. In this way, the interpolation pixel S15 whose field value has been rewritten is temporarily stored in the register (not shown) as the interpolation pixel S17 (step S116).

これに対し、上記ステップS111において上記影響度S16が閾値ψ以上であると判定された場合、補間画素S15の[加算/最大値]フィールドに対して最大値モードを示すフラグがセットされる(ステップS112)。すなわち、加算モードから最大値モードへの切り換えが行われる。そして、補間画素S15の[影響度]フィールドの値が、窓関数テーブル5から読み出された影響度S16の値に書き換えられる(ステップS115)。また、補間画素S15の[画素値]フィールドの値が、対応する画素S22の画素値に書き換えられる。すなわち、上記(4)式による演算が行われる。このようにして、フィールドの値が書き換えられた補間画素S15は、補間画素S17としてレジスタ(図示せず)に一時的に記憶される(ステップS116)。   In contrast, if it is determined in step S111 that the influence S16 is equal to or greater than the threshold ψ, a flag indicating the maximum value mode is set for the [addition / maximum value] field of the interpolation pixel S15 (step S111). S112). That is, switching from the addition mode to the maximum value mode is performed. Then, the value of the [influence] field of the interpolation pixel S15 is rewritten to the value of the influence S16 read from the window function table 5 (step S115). Further, the value of the [pixel value] field of the interpolation pixel S15 is rewritten to the pixel value of the corresponding pixel S22. That is, the calculation according to the above equation (4) is performed. In this way, the interpolation pixel S15 whose field value has been rewritten is temporarily stored in the register (not shown) as the interpolation pixel S17 (step S116).

上記ステップS110において補間画素S15の[加算/最大値]フィールドのフラグが加算モードを示さない場合は、最大値モードの場合である。この場合、窓関数テーブル5から読み出された影響度S16の値が補間画素S15の[影響度]フィールドの値以上であるか否かの判定が行われる(ステップS113)。ここで、上記影響度S16の値が補間画素S15の[影響度]フィールドの値以上であれば、補間画素S15の[影響度]フィールドの値が、窓関数テーブル5から読み出された影響度S16の値に書き換えられる(ステップS115)。また、補間画素S15の[画素値]フィールドの値が、対応する画素S22の画素値に書き換えられる。すなわち、上記(4)式による演算が行われる。このようにして、フィールドの値が書き換えられた補間画素S15は、補間画素S17としてレジスタ(図示せず)に一時的に記憶される(ステップS116)。 When the flag in the [addition / maximum value] field of the interpolation pixel S15 does not indicate the addition mode in step S110, the mode is the maximum value mode. In this case, it is determined whether or not the value of the influence S16 read from the window function table 5 is equal to or greater than the value of the [influence] field of the interpolation pixel S15 (step S113). Here, if the value of the influence S16 is equal to or greater than the value of the [influence] field of the interpolation pixel S15, the value of the [influence] field of the interpolation pixel S15 is read from the window function table 5. The value is rewritten to the value of S16 (step S115). Further, the value of the [pixel value] field of the interpolation pixel S15 is rewritten to the pixel value of the corresponding pixel S22. That is, the calculation according to the above equation (4) is performed. In this way, the interpolation pixel S15 whose field value has been rewritten is temporarily stored in the register (not shown) as the interpolation pixel S17 (step S116).

これに対し、上記ステップS113において上記影響度S16の値が補間画素I15の[影響度]フィールドの値以上でないと判定された場合、補間画素S15は、補間画素S17としてレジスタ(図示せず)に一時的に記憶される(ステップS116)。   On the other hand, when it is determined in step S113 that the value of the influence S16 is not greater than or equal to the value of the [influence] field of the interpolation pixel I15, the interpolation pixel S15 is stored in a register (not shown) as the interpolation pixel S17. It is temporarily stored (step S116).

補間画素S15が補間画素S17として上記レジスタに一時的に記憶された後、上記切り出された領域内に処理すべき次の画素があるか否かの判定が行われる(ステップS117)。ここで、上記切り出された領域内に処理すべき次の画素がある場合、次の画素の重ね合わせ処理が行われる(ステップS107〜ステップS116)。   After the interpolation pixel S15 is temporarily stored in the register as the interpolation pixel S17, it is determined whether or not there is a next pixel to be processed in the cut out region (step S117). Here, when there is a next pixel to be processed in the cut out region, the next pixel is overlapped (steps S107 to S116).

上記ステップS117において上記切り出された領域内に処理すべき次の画素がないと判定された場合、上記レジスタに保持されている補間画素S17が、フレームメモリ1の補間フレームF[−0.5]上の対応する位置に上書きされる(ステップS118)。   If it is determined in step S117 that there is no next pixel to be processed in the clipped area, the interpolation pixel S17 held in the register is the interpolation frame F [−0.5] in the frame memory 1. The corresponding position above is overwritten (step S118).

次いで、現フレームF[0]内に処理すべき次のブロックS2があるか否かの判定が行われる(ステップS119)。ここで、現フレームF[0]内に処理すべき次のブロック画像S2があれば、次のブロックS2と対応する過去フレームF[−1]のブロックS3ブロックマッチグが行われる(ステップS103〜ステップS118)。   Next, it is determined whether or not there is a next block S2 to be processed in the current frame F [0] (step S119). If there is a next block image S2 to be processed in the current frame F [0], block S3 block matching of the past frame F [-1] corresponding to the next block S2 is performed (steps S103 to S103). Step S118).

これに対し、上記ステップS119において現フレームF[0]内に処理すべき次のブロックS2がないと判定された場合、正規化部6による正規化処理が開始される。   On the other hand, when it is determined in step S119 that there is no next block S2 to be processed in the current frame F [0], normalization processing by the normalization unit 6 is started.

正規化部6の正規化処理においては、図13に示すように、フレームメモリ1から、補間フレームF[−0.5]の画像を構成する各補間画素S17が順に読み出される(ステップS120)。そして、読み出された補間画素S17の[加算/最大値]フィールドのフラグが加算モードを示すか否かの判定が行われる(ステップS121)。ここで、読み出した補間画素S17の[加算/最大値]フィールドのフラグが加算モードを示す場合、補間画素S17の[画素値]フィールドの値が[影響度]フィールドの値で除算されて画素値が正規化される(ステップS122)。この正規化により、補間画素S17の[画素値]フィールドの値は、上記正規化された画素値に書き換えられる。そして、画素値が正規化された画素値に書き換えられた補間画素S17は、正規化画素S19として出力される(ステップS123)。   In the normalization process of the normalization unit 6, as shown in FIG. 13, each interpolation pixel S17 constituting the image of the interpolation frame F [−0.5] is sequentially read from the frame memory 1 (step S120). Then, it is determined whether or not the flag in the [addition / maximum value] field of the read interpolation pixel S17 indicates the addition mode (step S121). Here, when the flag of the [addition / maximum value] field of the read interpolation pixel S17 indicates the addition mode, the value of the [pixel value] field of the interpolation pixel S17 is divided by the value of the [influence] field to obtain a pixel value. Is normalized (step S122). By this normalization, the value of the [pixel value] field of the interpolation pixel S17 is rewritten to the normalized pixel value. Then, the interpolated pixel S17 whose pixel value is rewritten with the normalized pixel value is output as the normalized pixel S19 (step S123).

これに対し、読み出された補間画素S17の[加算/最大値]フィールドのフラグが加算モードを示さない場合すなわち最大値モードを示す場合、読み出された補間画素S17は、上記正規化が行われることなく、正規化画素S19として出力される(ステップS123)。   On the other hand, when the flag of the [addition / maximum value] field of the read interpolation pixel S17 does not indicate the addition mode, that is, indicates the maximum value mode, the read interpolation pixel S17 is subjected to the above normalization. Instead, it is output as a normalized pixel S19 (step S123).

次いで、補間フレームF[−0.5]の画像を構成する補間画素の全ての出力が終了したか否かの判定が行われる。ここで、補間フレームF[−0.5]の画像を構成する補間画素の全ての出力が終了していなければ、正規化部6は、上記ステップS120からの処理を繰り返す。これに対し、補間フレームF[−0.5]の画像を構成する補間画素の全ての出力が終了すると、正規化部6は、本処理を終了する。   Next, it is determined whether or not output of all the interpolation pixels constituting the image of the interpolation frame F [−0.5] has been completed. Here, if the output of all the interpolation pixels constituting the image of the interpolation frame F [−0.5] has not been completed, the normalization unit 6 repeats the processing from step S120. On the other hand, when all the output of the interpolation pixels constituting the image of the interpolation frame F [−0.5] is finished, the normalization unit 6 finishes this process.

このようにして、現フレームF[0]と過去フレームF[−1]の間の挿入される補間フレーム[−0.5]の画像が生成されることになる。   In this way, an image of the interpolated frame [−0.5] inserted between the current frame F [0] and the past frame F [−1] is generated.

上記補間フレーム生成処理の結果について図14を参照しながら説明する。図14は図1の画像処理装置による補間フレーム生成処理の結果の一例を模式的に示す図である。   The result of the interpolation frame generation process will be described with reference to FIG. FIG. 14 is a diagram schematically showing an example of the result of the interpolation frame generation processing by the image processing apparatus of FIG.

上記補間フレーム生成処理により、例えば図14に示すような処理結果が得られる。ここで、図14において、補間動きベクトルS14が指し示す位置をa,b,c,dとする。また、位置a,b,c,dを中心として点線枠で表される領域22a〜22dのそれぞれを、それぞれの領域(切り出された領域)に適用された窓関数ωa〜ωdの定義域であるとする。また、各位置a,b,c,dを中心とする実線枠で表されるそれぞれの領域21a〜21dを、それぞれの領域に適用された窓関数ωa〜ωdによる影響度が閾値ψよりも大きい領域であるとする。   By the interpolation frame generation processing, for example, a processing result as shown in FIG. 14 is obtained. Here, in FIG. 14, the positions indicated by the interpolation motion vector S14 are a, b, c, and d. In addition, each of the regions 22a to 22d represented by the dotted frame around the positions a, b, c, and d is a definition region of the window functions ωa to ωd applied to the respective regions (cutout regions). And Further, the influence degree of the window functions ωa to ωd applied to the respective regions 21a to 21d represented by the solid line frames centering on the respective positions a, b, c, and d is larger than the threshold ψ. Suppose that it is an area.

上記実線枠で表される領域21a〜21dの大きさは、ブロックマッチングにおけるブロックS2のブロックサイズBsに等しく、これらの領域21a〜21dは、従来の方法によって画像がマッピングされる領域に相当する。実線枠により表されるそれぞれの領域21a〜21dの外の領域は、従来の方法において画像がマッピングされずに空白となる領域に相当する。   The sizes of the areas 21a to 21d represented by the solid line frames are equal to the block size Bs of the block S2 in the block matching, and these areas 21a to 21d correspond to areas where images are mapped by a conventional method. The regions outside the respective regions 21a to 21d represented by the solid line frames correspond to regions that are blank without being mapped in the conventional method.

本実施の形態においては、補間動きベクトルS14が指し示す位置に近い領域において窓関数ωの値が閾値ψより大きいので、補間画素モードが最大値モードになり、最も近い動きベクトルS4に対応するブロックS2の画素値が、混合されずに出力される。それによって、補間動きベクトルS14が指し示す位置の近傍の画像が鮮明に出力される。   In the present embodiment, since the value of the window function ω is larger than the threshold value ψ in the region close to the position indicated by the interpolation motion vector S14, the interpolation pixel mode becomes the maximum value mode, and the block S2 corresponding to the closest motion vector S4. Are output without being mixed. As a result, an image near the position indicated by the interpolation motion vector S14 is output clearly.

補間動きベクトルS14が指し示す位置から遠い領域においては、窓関数ωの値が閾値ψより小さいので、補間画素モードが加算モードになり、周辺の全ての動きベクトルS4に対応するブロックS2の画素値が加重平均して出力される。すなわち、動きベクトルS4に対応するブロックS2より大きい画像が、動きベクトルS4が存在しない領域にはみ出して、マッピングされる。これにより、補間フレームにおいて空白領域が発生しない。また、当該領域において異なる動きベクトルS4に対応する部分画像が加重平均の効果によって滑らかに繋がり、境界ノイズの発生が抑制される。   In a region far from the position indicated by the interpolation motion vector S14, the value of the window function ω is smaller than the threshold value ψ, so that the interpolation pixel mode is the addition mode, and the pixel values of the block S2 corresponding to all the surrounding motion vectors S4 are Output as weighted average. That is, an image larger than the block S2 corresponding to the motion vector S4 protrudes into an area where the motion vector S4 does not exist and is mapped. Thereby, a blank area does not occur in the interpolation frame. In addition, partial images corresponding to different motion vectors S4 in the region are smoothly connected by the effect of the weighted average, and the generation of boundary noise is suppressed.

このように、本実施の形態によれば、空白部分が無く、かつ動きオブジェクト周囲の境界ノイズの発生が抑制された高品質な補間フレームを生成することができ、フリッカや残像感が少ない高画質な動画像を得ることができる。   As described above, according to this embodiment, it is possible to generate a high-quality interpolated frame that has no blank portion and suppresses the generation of boundary noise around the moving object, and has high image quality with less flicker and afterimage. Can be obtained.

本実施の形態は、メモリアクセスの頻度は高いが、順次処理を行うことが可能であるので、ソフトウェア処理向けの構成である。これによって、高いコストを掛けることなく装置を構成することが可能である。   Although this embodiment has a high frequency of memory access, it can perform sequential processing, and is therefore configured for software processing. This makes it possible to configure the device without incurring high costs.

また、本実施の形態においては、毎秒60フレームから毎秒120フレームへの2倍変換を行う場合を説明したが、この2倍変換の他に、3倍変換、4倍変換などのフレーム変換を、同様の手順で実現可能である。また、毎秒60フレームから毎秒90フレームへの変換など、非整数倍の変換も、同様の手順で実現可能である。   In the present embodiment, the case of performing the double conversion from 60 frames per second to 120 frames per second has been described. However, in addition to the double conversion, frame conversion such as triple conversion and quadruple conversion can be performed. It can be realized by the same procedure. Also, non-integer multiple conversion, such as conversion from 60 frames per second to 90 frames per second, can be realized by the same procedure.

また、本実施の形態においては、ブロックマッチング部2、ベクトル補間部3、重ね合わせ処理部4、正規化部6がソフトウェアにより構成されているが、これらをハードウェアにより構成することも可能である。   In the present embodiment, the block matching unit 2, the vector interpolation unit 3, the superposition processing unit 4, and the normalization unit 6 are configured by software, but these can also be configured by hardware. .

(第2の実施の形態)
次に、本発明の第2の実施の形態について図15〜図19を参照しながら説明する。図15は本発明の第2の実施の形態に係る画像処理装置の構成を示すブロック図である。図16は図15の画像処理装置による動きベクトル検出処理の手順を示すフローチャートである。図17は図15の画像処理装置によるベクトル抽出処理の手順を示すフローチャートである。図18は図15の画像処理装置による重複解決処理の手順を示すフローチャートである。図19は図15の動きベクトル選択部13による候補ベクトルの選択方法を模式的に示す図である。
(Second Embodiment)
Next, a second embodiment of the present invention will be described with reference to FIGS. FIG. 15 is a block diagram showing a configuration of an image processing apparatus according to the second embodiment of the present invention. FIG. 16 is a flowchart showing a procedure of motion vector detection processing by the image processing apparatus of FIG. FIG. 17 is a flowchart showing the procedure of vector extraction processing by the image processing apparatus of FIG. FIG. 18 is a flowchart showing the procedure of the overlap resolution process by the image processing apparatus of FIG. FIG. 19 is a diagram schematically showing a method of selecting candidate vectors by the motion vector selection unit 13 of FIG.

本実施の形態の画像処理装置は、メモリアクセスの頻度を低くし、並列処理を行うことを可能にするために、ハードウェアにより構成されている。これにより、高性能な画像処理装置を構成することが可能である。   The image processing apparatus according to the present embodiment is configured by hardware in order to reduce the frequency of memory access and perform parallel processing. Thereby, a high-performance image processing apparatus can be configured.

本画像処理装置は、図15に示すように、フレームメモリ1、動きベクトル検出部12、動きベクトル選択部13、距離算出部14および影響度算出部15を備える。また、本画像処理装置は、候補ベクトル保持部16、影響度判定部17、影響度正規化部18、加重平均処理部19および選択部20を備える。   As shown in FIG. 15, the image processing apparatus includes a frame memory 1, a motion vector detection unit 12, a motion vector selection unit 13, a distance calculation unit 14, and an influence calculation unit 15. The image processing apparatus also includes a candidate vector holding unit 16, an influence degree determination unit 17, an influence degree normalization unit 18, a weighted average processing unit 19, and a selection unit 20.

動きベクトル検出部12は、フレームメモリ1に保持されている現フレームF[0]を複数のブロックS2に分割し、各ブロックS2を切り出す。そして、切り出されたブロックS2毎に、過去フレームF[−1]から抽出されたブロックS3とのブロックマッチングが行われ、ブロックS2毎に現フレームF[0]と過去フレーム[−1]の間の動きベクトルS4が検出される。すなわち、動きベクトル検出部12は、分割されたブロックS2の数分(1画面分)の動きベクトルS4を検出する。   The motion vector detection unit 12 divides the current frame F [0] held in the frame memory 1 into a plurality of blocks S2, and cuts out each block S2. Then, block matching with the block S3 extracted from the past frame F [-1] is performed for each cut out block S2, and between the current frame F [0] and the past frame [-1] for each block S2. Motion vector S4 is detected. That is, the motion vector detection unit 12 detects motion vectors S4 corresponding to the number of divided blocks S2 (for one screen).

動きベクトル選択部13は、メモリ(図示せず)を有し、該メモリに、動きベクトル検出部12により検出された動きベクトルS4の全て(1画面分の動きベクトルS4)を保持する。動きベクトル選択部13は、上記メモリに保持されている1画面分の動きベクトルS4の中から、注目する画素に影響を及ぼす可能性がある動きベクトルS4を、候補ベクトルS5として上記メモリから順に選択して出力する。   The motion vector selection unit 13 has a memory (not shown), and holds all the motion vectors S4 (motion vector S4 for one screen) detected by the motion vector detection unit 12 in the memory. The motion vector selection unit 13 sequentially selects, from the memory as a candidate vector S5, a motion vector S4 that may affect the pixel of interest from among the motion vectors S4 for one screen held in the memory. And output.

この候補ベクトルS5の選択について説明する。図19に示すように、α点においてブロックaがブロックマッチングを行う元のブロックであるとき、ブロックaに対する動きベクトルの探索範囲は、一点鎖線で示す探索範囲bである。これによって、検出される動きベクトルの最大範囲は範囲cとなる。この動きベクトルは、過去フレームF[−1]から現フレームF[0]へ向うベクトルであるので、これを補間フレームF[−0.5]にマッピングすると、動きベクトルの取り得る最大範囲は最大範囲cの半分の範囲dとなる。ここで、動きベクトルが最大になってβ点を指し示すとき、このβ点を中心とした窓関数ωが影響を及ぼし得る範囲としては、範囲eとなる。同様に、動きベクトルがβ’点を指し示すときには、窓関数ωが影響を及ぼし得る範囲としては、範囲e’となる。   Selection of this candidate vector S5 will be described. As illustrated in FIG. 19, when the block a is an original block that performs block matching at the α point, the motion vector search range for the block a is a search range b indicated by a one-dot chain line. As a result, the maximum range of detected motion vectors is the range c. Since this motion vector is a vector from the past frame F [−1] to the current frame F [0], when this is mapped to the interpolation frame F [−0.5], the maximum range that the motion vector can take is maximum. The range d is half of the range c. Here, when the motion vector becomes the maximum and points to the β point, the range in which the window function ω centering on the β point can affect is the range e. Similarly, when the motion vector points to the β ′ point, the range that can be influenced by the window function ω is the range e ′.

すなわち、現フレームF[0]上のα点における動きベクトルによって影響を受ける可能性がある補間フレームF[−0.5]上の範囲は、範囲fとなる。範囲fは、[探索範囲]/2+[窓関数の定義範囲]と表される。   That is, the range on the interpolation frame F [−0.5] that may be affected by the motion vector at the point α on the current frame F [0] is the range f. The range f is expressed as [search range] / 2 + [window function definition range].

ここで、補間フレームF[−0.5]上のγ点に注目すると、γ点に対して影響を及ぼし得る現フレームF[0]上の動きベクトルは、範囲gのブロックに存在する動きベクトルであることがわかる。   Here, focusing on the γ point on the interpolation frame F [−0.5], the motion vector on the current frame F [0] that may affect the γ point is the motion vector existing in the block in the range g. It can be seen that it is.

よって、注目点(注目画素位置)に対して[探索範囲]/2+[窓関数の定義範囲]に存在する動きベクトルS4が、順に候補ベクトルS5として選択される。上記探索範囲は、
{i=x-Sa/4-Is/2〜x+Sa/4+Is/2,j=y-Sa/4-Is/2〜y+Sa/4+Is/2}
となる。ここで、Saは、動きベクトルの探索範囲、Isは、マッピングする画像のサイズすなわち上記第1の実施の形態と同じ現フレームF[1]から切り出された領域である。
Therefore, the motion vector S4 existing in [search range] / 2 + [window function definition range] with respect to the target point (target pixel position) is sequentially selected as the candidate vector S5. The search range is
{i = x-Sa / 4-Is / 2 to x + Sa / 4 + Is / 2, j = y-Sa / 4-Is / 2 to y + Sa / 4 + Is / 2}
It becomes. Here, Sa is the motion vector search range, and Is is the size of the image to be mapped, that is, the region cut out from the same current frame F [1] as in the first embodiment.

距離算出部14は、動きベクトル選択部13から出力された候補ベクトルS5の絶対値を−1/2倍し、当該ベクトルが補間フレームF[−0.5]上の指し示す座標に基づいて注目点との距離S6を算出する。具体的には、注目点との距離S6の算出には、次の(6)式が用いられる。   The distance calculation unit 14 multiplies the absolute value of the candidate vector S5 output from the motion vector selection unit 13 by -1/2, and points of interest based on the coordinates indicated by the vector on the interpolation frame F [-0.5]. The distance S6 is calculated. Specifically, the following equation (6) is used to calculate the distance S6 to the attention point.

Figure 0005078428
Figure 0005078428

影響度算出部15は、窓関数テーブル(図示せず)を保持し、当該窓関数テーブルを参照して、距離算出部14により算出された注目点との距離S6に対応する影響度S7を算出する。   The influence degree calculation unit 15 holds a window function table (not shown), and calculates an influence degree S7 corresponding to the distance S6 to the point of interest calculated by the distance calculation unit 14 with reference to the window function table. To do.

候補ベクトル保持部16は、動きベクトル選択部13から出力された候補ベクトルS5と影響度算出部15により算出された影響度S7とを対応付けて保持する。   The candidate vector holding unit 16 holds the candidate vector S5 output from the motion vector selection unit 13 and the influence S7 calculated by the influence calculation unit 15 in association with each other.

影響度判定部17は、候補ベクトル保持部16に保持されている全ての候補ベクトルS5の中から、最大の影響度の候補ベクトルS5を、最大動きベクトルS8として抽出する。そして、影響度判定部17は、抽出した最大動きベクトルS8の影響度が閾値ψ以上であるか否かの判定を行い、この判定結果を影響度判定結果S9として出力するとともに、抽出した最大動きベクトルS8を出力する。   The influence degree determination unit 17 extracts the candidate vector S5 having the maximum influence degree from all the candidate vectors S5 held in the candidate vector holding part 16 as the maximum motion vector S8. Then, the degree of influence determination unit 17 determines whether or not the degree of influence of the extracted maximum motion vector S8 is greater than or equal to the threshold ψ, outputs this determination result as the degree of influence determination result S9, and extracts the extracted maximum motion The vector S8 is output.

影響度正規化部18は、候補ベクトル保持部16に保持されている全ての候補ベクトルS5を含むベクトル群を候補ベクトル群S20として読み出す。そして、影響度正規化部18は、候補ベクトル群S20の各候補ベクトルS5の影響度を正規化し、影響度が正規化された候補ベクトルS5の全てを含む正規化候補ベクトル群S11を生成する。   The influence normalization unit 18 reads out a vector group including all candidate vectors S5 held in the candidate vector holding unit 16 as a candidate vector group S20. Then, the influence degree normalization unit 18 normalizes the influence degree of each candidate vector S5 of the candidate vector group S20, and generates a normalized candidate vector group S11 including all candidate vectors S5 whose influence degree is normalized.

ここで、候補ベクトル群S20に含まれる候補ベクトルの総数をN個、候補ベクトル群S20のn番目の候補ベクトルを[S20(n)]、その影響度を[S20(n)]:Eとする。そして、正規化候補ベクトル群S11のn番目のベクトルを[S11(n)]、その正規化影響度を[S11(n)]:E’とすると、その正規化影響度を[S11(n)]:E’は、次の(7)式により表される。   Here, the total number of candidate vectors included in the candidate vector group S20 is N, the nth candidate vector of the candidate vector group S20 is [S20 (n)], and the degree of influence is [S20 (n)]: E. . If the nth vector of the normalization candidate vector group S11 is [S11 (n)] and the normalization influence is [S11 (n)]: E ′, the normalization influence is [S11 (n)]. ]: E ′ is represented by the following equation (7).

Figure 0005078428
Figure 0005078428

加重平均処理部19は、影響度正規化部18から出力された正規化候補ベクトル群S11の動きベクトルによって指し示される参照画素群S21をフレームメモリ1から読み出す。そして、加重平均処理部19は、正規化候補ベクトル群S11の影響度に基づいて参照画素群S21の加重平均処理を行い、当該加重平均処理によって得られた加重平均値を画素値とする加重平均画素S12を出力する。上記加重平均処理は、具体的には、以下の(8)式に従って行われる。   The weighted average processing unit 19 reads the reference pixel group S21 indicated by the motion vector of the normalization candidate vector group S11 output from the influence degree normalization unit 18 from the frame memory 1. Then, the weighted average processing unit 19 performs weighted average processing of the reference pixel group S21 based on the influence degree of the normalization candidate vector group S11, and uses the weighted average value obtained by the weighted average processing as a pixel value. The pixel S12 is output. Specifically, the weighted average process is performed according to the following equation (8).

Figure 0005078428
Figure 0005078428

選択部20は、影響度判定部17から出力された影響度判定結果S9に基づいて最大影響画素S10の画素値と加重平均画素S12の画素値のいずれか一方を選択し、選択された画素値の画素を出力画素S13として出力する。具体的には、影響度判定結果S9が、最大動きベクトルS8の影響度が閾値ψ以上であることを示す場合、最大動きベクトルS8によって指し示される最大影響画素S10がフレームメモリ1の現フレームF[0]から抽出され、当該最大影響画素S10の画素値が出力画素S13の画素値として選択される。これに対し、影響度判定結果S9が、最大動きベクトルS8の影響度が閾値ψより小さいことを示す場合、加重平均処理部19から出力された加重平均画素S12の画素値が出力画素S13の画素値が選択される。   The selection unit 20 selects either the pixel value of the maximum influence pixel S10 or the pixel value of the weighted average pixel S12 based on the influence degree determination result S9 output from the influence degree determination unit 17, and the selected pixel value Are output as the output pixel S13. Specifically, when the influence degree determination result S9 indicates that the influence degree of the maximum motion vector S8 is greater than or equal to the threshold ψ, the maximum influence pixel S10 indicated by the maximum motion vector S8 is the current frame F of the frame memory 1. Extracted from [0], the pixel value of the maximum affected pixel S10 is selected as the pixel value of the output pixel S13. In contrast, when the influence degree determination result S9 indicates that the influence degree of the maximum motion vector S8 is smaller than the threshold ψ, the pixel value of the weighted average pixel S12 output from the weighted average processing unit 19 is the pixel of the output pixel S13. A value is selected.

次に、本画像処理装置の補間フレーム生成処理について図16〜図18を参照しながら説明する。   Next, interpolation frame generation processing of the image processing apparatus will be described with reference to FIGS.

本画像処理装置においては、図16に示すように、まず、動きベクトル検出部12による動きベクトル検出処理が開始される。動きベクトル検出処理においては、外部装置からフレームメモリ1に、動画像を構成するフレームとして現フレームF[0]の画像S1が入力される(ステップS201)。このとき、フレームメモリ1には、過去フレームF[−1]の画像が保持されている。また、フレームメモリ1における、補間フレームF[−0.5]の画像の格納領域の値がクリアされている。   In this image processing apparatus, as shown in FIG. 16, first, motion vector detection processing by the motion vector detection unit 12 is started. In the motion vector detection process, the image S1 of the current frame F [0] is input from the external device to the frame memory 1 as a frame constituting the moving image (step S201). At this time, the frame memory 1 holds an image of the past frame F [−1]. In addition, the value of the image storage area of the interpolation frame F [−0.5] in the frame memory 1 is cleared.

次いで、フレームメモリ1に保持されている現フレームF[0]が矩形状の複数のブロックS2に分割され、これらのブロックS2から1つのブロックS2が切り出される(ステップS202)。続いて、過去フレームF[−1]から、上記抽出された1つのブロックS2に対応するブロックS3が切り出される(ステップS203)。そして、上記切り出されたブロックS2とブロックS3のブロックマッチングが行われ、動きベクトルS4が検出される(ステップS204)。このブロックマッチングは、上記第1の実施の形態と同じものである。検出された動きベクトルS4は、動きベクトル選択部13に出力され、動きベクトル選択部13のメモリに保持される(ステップS205)。   Next, the current frame F [0] held in the frame memory 1 is divided into a plurality of rectangular blocks S2, and one block S2 is cut out from these blocks S2 (step S202). Subsequently, a block S3 corresponding to the extracted one block S2 is cut out from the past frame F [-1] (step S203). Then, block matching between the extracted block S2 and block S3 is performed, and a motion vector S4 is detected (step S204). This block matching is the same as that in the first embodiment. The detected motion vector S4 is output to the motion vector selection unit 13 and held in the memory of the motion vector selection unit 13 (step S205).

次いで、動きベクトル検出部12は、1画面分の動きベクトルS4の検出が終了したか否かを判定し(ステップS206)。ここで、1画面分の動きベクトルS4の検出が終了していなければ、上記ステップS202へ戻り、次の動きベクトルS4の検出が行われる。   Next, the motion vector detection unit 12 determines whether or not the detection of the motion vector S4 for one screen has been completed (step S206). If the detection of the motion vector S4 for one screen has not been completed, the process returns to step S202, and the next motion vector S4 is detected.

これに対し、1画面分の動きベクトルS4の検出が終了されると、候補ベクトル抽出処理が開始される。このとき、動きベクトル選択部13のメモリには、分割されたブロックS2の数分(1画面分)の動きベクトルS4が保持されている。上記候補ベクトル抽出処理は、補間フレームF[−0.5]の画像を構成する各画素について行われる。処理範囲は、{x=1〜X,y=1〜Y}となる。   On the other hand, when the detection of the motion vector S4 for one screen is completed, the candidate vector extraction process is started. At this time, the memory of the motion vector selection unit 13 holds motion vectors S4 corresponding to the number of divided blocks S2 (one screen). The candidate vector extraction process is performed for each pixel constituting the image of the interpolation frame F [−0.5]. The processing range is {x = 1 to X, y = 1 to Y}.

上記候補ベクトル抽出処理においては、図17に示すように、まず、動きベクトル選択部13により、そのメモリに保持されている1画面分の動きベクトルS4の中から、候補ベクトルS5が順に選択される(ステップS207)。そして、距離算出部14により、上記(6)式を用いて、上記選択された候補ベクトルS5を−1/2倍したベクトルが指し示す位置と注目点との間の距離S6が算出される(ステップS208)。   In the candidate vector extraction process, as shown in FIG. 17, first, the motion vector selection unit 13 sequentially selects candidate vectors S5 from the motion vectors S4 for one screen held in the memory. (Step S207). Then, the distance calculation unit 14 calculates the distance S6 between the position indicated by the vector obtained by multiplying the selected candidate vector S5 by -1/2 and the point of interest using the equation (6) (step S6). S208).

次いで、影響度算出部19により、窓関数テーブル5を参照して上記距離S6に対応する影響度S7が算出される(ステップS209)。そして、算出された影響度S7は、動きベクトル選択部13から出力された候補ベクトルS5と対応付けられて候補ベクトル保持部16に保持される(ステップS210)。   Next, the influence degree calculation unit 19 calculates an influence degree S7 corresponding to the distance S6 with reference to the window function table 5 (step S209). The calculated influence S7 is stored in the candidate vector storage unit 16 in association with the candidate vector S5 output from the motion vector selection unit 13 (step S210).

次いで、次に選択すべき候補ベクトルS5があるか否かの判定が行われる(ステップS211)。ここで、次に選択すべき候補ベクトルS5があれば、再度ステップS207に戻り、動きベクトル選択部13により、次の候補ベクトルS5の選択が行われる。これに対し、次に選択すべき候補ベクトルS5がなければ、重複解決処理が開始される。   Next, it is determined whether there is a candidate vector S5 to be selected next (step S211). If there is a candidate vector S5 to be selected next, the process returns to step S207 again, and the motion vector selection unit 13 selects the next candidate vector S5. On the other hand, if there is no candidate vector S5 to be selected next, the overlap resolution process is started.

重複解決処理においては、図18に示すように、影響度判定部17により、候補ベクトル保持部16に保持されている候補ベクトルS5の中から、影響度が最大である候補ベクトルS5が最大動きベクトルS8として抽出される(ステップS212)。そして、影響度判定部17により、抽出された最大動きベクトルS8の影響度が閾値ψ以上であるか否かの判定が行われる(ステップS213)。この判定結果は、影響度判定結果S9として影響度正規化部18および選択部20に出力される。   In the overlap resolution process, as shown in FIG. 18, the influence vector determination unit 17 determines that the candidate vector S5 having the maximum influence level is the maximum motion vector from among the candidate vectors S5 held in the candidate vector holding unit 16. Extracted as S8 (step S212). Then, the influence degree determination unit 17 determines whether or not the influence degree of the extracted maximum motion vector S8 is greater than or equal to the threshold value ψ (step S213). This determination result is output to the influence degree normalization unit 18 and the selection unit 20 as the influence degree determination result S9.

ここで、影響度判定結果S9が最大動きベクトルS8の影響度が閾値ψより小さいことを示す場合、影響度正規化部18により、候補ベクトルS5の影響度の正規化が行われる(ステップS215)。この正規化により、正規化候補ベクトル群S11が生成されて加重平均処理部19に出力される。   Here, when the influence degree determination result S9 indicates that the influence degree of the maximum motion vector S8 is smaller than the threshold ψ, the influence degree normalization unit 18 normalizes the influence degree of the candidate vector S5 (step S215). . By this normalization, a normalization candidate vector group S11 is generated and output to the weighted average processing unit 19.

次いで、加重平均処理部19により、影響度正規化部18から出力された正規化候補ベクトル群S11の影響度に基づいて参照画素群S21の加重平均処理が行われる(ステップS216)。参照画素群S21は、正規化候補ベクトル群S11の動きベクトルによって指し示されるものであり、当該参照画素群S21の加重平均処理によって得られた加重平均画素S12が選択部10に出力される。そして、選択部10により、加重平均処理部19から出力された加重平均画素S12が出力画素S13として選択されて出力される(ステップS217)。   Next, the weighted average processing unit 19 performs weighted average processing of the reference pixel group S21 based on the degree of influence of the normalization candidate vector group S11 output from the influence degree normalizing unit 18 (step S216). The reference pixel group S21 is indicated by the motion vector of the normalization candidate vector group S11, and the weighted average pixel S12 obtained by the weighted average process of the reference pixel group S21 is output to the selection unit 10. Then, the selection unit 10 selects and outputs the weighted average pixel S12 output from the weighted average processing unit 19 as the output pixel S13 (step S217).

上記影響度判定結果S9が最大動きベクトルS8の影響度が閾値ψ以上であることを示す場合、選択部20により、最大動きベクトルS8によって指し示される最大影響画素S10がフレームメモリ1の現フレームF[0]から抽出される。そして、この最大影響画素S10は、出力画素S13として選択されて出力される(ステップS217)。この場合、影響度正規化部18は動作しない。   When the influence degree determination result S9 indicates that the influence degree of the maximum motion vector S8 is equal to or greater than the threshold ψ, the selection unit 20 causes the maximum influence pixel S10 indicated by the maximum motion vector S8 to be the current frame F of the frame memory 1. Extracted from [0]. The maximum influence pixel S10 is selected and output as the output pixel S13 (step S217). In this case, the influence normalization unit 18 does not operate.

次いで、補間フレームF[−0.5]上の全ての画素の出力が終了したか否かの判定が行われる(ステップS218)。ここで、補間フレームF[−0.5]上の全ての画素の出力が終了していない場合、上記ステップS217に戻り、補間フレームF[−0.5]上の次の画素に対するベクトル抽出処理が開始される。これに対し、補間フレームF[−0.5]上の全ての画素の出力が終了した場合、本処理は終了する。   Next, it is determined whether or not the output of all the pixels on the interpolation frame F [−0.5] has been completed (step S218). If the output of all the pixels on the interpolation frame F [−0.5] has not been completed, the process returns to step S217, and the vector extraction process for the next pixel on the interpolation frame F [−0.5] is performed. Is started. On the other hand, when the output of all the pixels on the interpolation frame F [−0.5] is finished, this processing is finished.

以上より、本実施の形態によれば、上記第1の実施の形態と同じ効果を得ることができる。   As described above, according to the present embodiment, the same effect as in the first embodiment can be obtained.

(第3の実施の形態)
次に、本発明の第3の実施の形態について図20〜図22を参照しながら説明する。図20は本発明の第3の実施の形態に係る画像処理装置の構成を示すブロック図である。図21は図20の画像処理装置による補間フレーム生成処理の手順を示すフローチャートである。図22は図20の混合比率算出部21により算出される混合比率S31と最大動きベクトルS8の影響度との関係を模式的に示す図である。
(Third embodiment)
Next, a third embodiment of the present invention will be described with reference to FIGS. FIG. 20 is a block diagram showing a configuration of an image processing apparatus according to the third embodiment of the present invention. FIG. 21 is a flowchart showing a procedure of interpolation frame generation processing by the image processing apparatus of FIG. FIG. 22 is a diagram schematically showing the relationship between the mixture ratio S31 calculated by the mixture ratio calculator 21 of FIG. 20 and the degree of influence of the maximum motion vector S8.

本実施の形態は、上記第2の実施の形態と同様に、メモリアクセスの頻度を低くし、並列処理を行うことを可能にするために、ハードウェアにより構成されている。但し、本実施の形態は、重複解決処理において、上記第2の実施の形態のように閾値ψを用いて処理の切り換えを行わずに、処理を連続的に行うように構成されている点で、上記第2の実施の形態と異なる。   As in the second embodiment, the present embodiment is configured by hardware in order to reduce the frequency of memory access and to perform parallel processing. However, the present embodiment is configured such that, in the overlap resolution processing, the processing is continuously performed without switching the processing using the threshold ψ as in the second embodiment. This is different from the second embodiment.

本実施の形態の画像処理装置は、図20に示すように、フレームメモリ1、動きベクトル検出部12、動きベクトル選択部13、距離算出部14および影響度算出部15を備える。また、本画像処理装置は、候補ベクトル保持部16、混合比率算出部21、影響度正規化部18、加重平均処理部19および混合部22を備える。ここで、上記第2の実施の形態と同一の機能ブロックには、同一の符号を付し、その説明は省略する。そして、異なる部分について説明する。   As shown in FIG. 20, the image processing apparatus according to the present embodiment includes a frame memory 1, a motion vector detection unit 12, a motion vector selection unit 13, a distance calculation unit 14, and an influence calculation unit 15. The image processing apparatus also includes a candidate vector holding unit 16, a mixture ratio calculation unit 21, an influence normalization unit 18, a weighted average processing unit 19, and a mixing unit 22. Here, the same functional blocks as those of the second embodiment are denoted by the same reference numerals, and description thereof is omitted. And a different part is demonstrated.

混合比率算出部21は、候補ベクトル保持部16に保持されている全ての候補ベクトルS5の中から、最大の影響度の候補ベクトルS5を、最大動きベクトルS8として抽出する。そして、混合比率算出部21は、抽出された最大動きベクトルS8の影響度と閾値ψに基づいて、最大影響画素S10の画素値に対する加重平均画素S12の画素値の混合比率S31を算出する。   The mixture ratio calculation unit 21 extracts the candidate vector S5 having the maximum influence from all the candidate vectors S5 held in the candidate vector holding unit 16 as the maximum motion vector S8. Then, the mixture ratio calculation unit 21 calculates the mixture ratio S31 of the pixel value of the weighted average pixel S12 with respect to the pixel value of the maximum influence pixel S10 based on the influence degree of the extracted maximum motion vector S8 and the threshold value ψ.

この混合比率S31は、図22に示すように、最大動きベクトルS8の影響度が閾値ψを中心として±緩衝値ξの幅を有する緩衝区間(所定範囲)内にある場合と、最大動きベクトルS8の影響度が緩衝区間外にある場合とに分けて算出される。   As shown in FIG. 22, the mixing ratio S31 is obtained when the influence of the maximum motion vector S8 is within a buffer section (predetermined range) having a width of ± buffer value ξ centered on the threshold ψ, and the maximum motion vector S8. It is calculated separately when the degree of influence is outside the buffer interval.

具体的には、最大動きベクトルS8の影響度が上記緩衝区間内にある場合すなわち上記緩衝区間の下限値(ψ−ξ)と上限値(ψ+ξ)との間にある場合、混合比率S31は、最大動きベクトルS8の影響度に比例して漸次大きくなるように算出される。ここで、混合比率S31は、最大動きベクトルS8の影響度が上記緩衝区間の下限値(ψ−ξ)に等しい場合、0%、最大動きベクトルS8の影響度が上記緩衝区間の上限値(ψ+ξ)に等しい場合、100%とされる。   Specifically, when the influence of the maximum motion vector S8 is within the buffer section, that is, between the lower limit value (ψ−ξ) and the upper limit value (ψ + ξ) of the buffer section, the mixing ratio S31 is: It is calculated so as to gradually increase in proportion to the influence degree of the maximum motion vector S8. Here, when the influence degree of the maximum motion vector S8 is equal to the lower limit value (ψ−ξ) of the buffer section, the mixture ratio S31 is 0%, and the influence degree of the maximum motion vector S8 is the upper limit value (ψ + ξ) of the buffer section. ) Is 100%.

これに対し、最大動きベクトルS8の影響度が緩衝区間外にある場合としては、最大動きベクトルS8の影響度が上記緩衝区間の下限値(ψ−ξ)より小さい場合、最大動きベクトルS8の影響度が上記緩衝区間の上限値(ψ+ξ)より大きい場合とがある。最大動きベクトルS8の影響度が上記緩衝区間の下限値(ψ−ξ)より小さい場合、混合比率S31は0%、最大動きベクトルS8の影響度が上記緩衝区間の上限値(ψ+ξ)より大きい場合、100%とされる。   On the other hand, when the influence degree of the maximum motion vector S8 is outside the buffer section, the influence of the maximum motion vector S8 is when the influence degree of the maximum motion vector S8 is smaller than the lower limit value (ψ−ξ) of the buffer section. The degree may be larger than the upper limit (ψ + ξ) of the buffer section. When the influence degree of the maximum motion vector S8 is smaller than the lower limit value (ψ−ξ) of the buffer section, the mixture ratio S31 is 0%, and the influence degree of the maximum motion vector S8 is larger than the upper limit value (ψ + ξ) of the buffer section. , 100%.

混合部22は、上記算出された混合比率S31で、最大影響画素S10と加重平均画素S12を混合して、出力画素S13として出力する。   The mixing unit 22 mixes the maximum influence pixel S10 and the weighted average pixel S12 with the calculated mixing ratio S31 and outputs the result as the output pixel S13.

次に、本画像処理装置の補間フレーム生成処理について図21を参照しながら説明する。   Next, interpolation frame generation processing of the image processing apparatus will be described with reference to FIG.

本画像処理装置においては、図21に示すように、まず、1画面分の動きベクトルを検出するための動きベクトル検出処理が行われる(ステップS301)。この動きベクトル検出処理は、図16のフローチャートに示す手順(ステップS201〜ステップS206)と同じ手順で実施される。   In this image processing apparatus, as shown in FIG. 21, first, a motion vector detection process for detecting a motion vector for one screen is performed (step S301). This motion vector detection process is performed in the same procedure as the procedure (step S201 to step S206) shown in the flowchart of FIG.

次いで、この動きベクトル検出処理により検出された動きベクトルの中から、注目する画素に影響を及ぼす可能性がある動きベクトルS4である候補ベクトルS5を抽出するためのベクトル抽出処理が行われる(ステップS302)。このベクトル抽出処理は、図17のフローチャートに示す手順(ステップS207〜ステップS211)と同じ手順で実施される。   Next, a vector extraction process is performed to extract a candidate vector S5 that is a motion vector S4 that may affect the pixel of interest from the motion vectors detected by this motion vector detection process (step S302). ). This vector extraction process is performed in the same procedure as the procedure (steps S207 to S211) shown in the flowchart of FIG.

上記ベクトル抽出処理により候補ベクトルS5の抽出が終了すると、重複解決処理が開始される。   When the extraction of the candidate vector S5 is completed by the vector extraction process, the overlap resolution process is started.

重複解決処理においては、混合比率算出部21により、候補ベクトル保持部16に保持されている候補ベクトルS5の中から、影響度が最大である候補ベクトルS5が最大動きベクトルS8として抽出される(ステップS303)。そして、混合比率算出部21により、最大影響画素S10に対する加重平均画素S12の混合比率S31が算出される(ステップS304)。   In the overlap resolution process, the mixture ratio calculation unit 21 extracts the candidate vector S5 having the maximum influence as the maximum motion vector S8 from the candidate vectors S5 held in the candidate vector holding unit 16 (Step S8). S303). Then, the mixture ratio calculation unit 21 calculates the mixture ratio S31 of the weighted average pixel S12 with respect to the maximum influence pixel S10 (step S304).

次いで、影響度正規化部18により、候補ベクトルS5の影響度の正規化が行われる(ステップS305)。この正規化により、正規化候補ベクトル群S11が生成されて加重平均処理部19に出力される。そして、加重平均処理部19により、影響度正規化部18から出力された正規化候補ベクトル群S11の影響度に基づいて参照画素群S21の加重平均処理が行われる(ステップS306)。この加重平均処理によって得られた加重平均値を画素値とする加重平均画素S12は、混合部10に出力される。   Next, the influence degree normalization unit 18 normalizes the influence degree of the candidate vector S5 (step S305). By this normalization, a normalization candidate vector group S11 is generated and output to the weighted average processing unit 19. Then, the weighted average processing unit 19 performs weighted average processing of the reference pixel group S21 based on the influence degree of the normalization candidate vector group S11 output from the influence degree normalization unit 18 (step S306). The weighted average pixel S12 having the weighted average value obtained by the weighted average process as the pixel value is output to the mixing unit 10.

次いで、選択部20により、最大動きベクトルS8によって指し示される最大影響画素S10がフレームメモリ1の現フレームF[0]から抽出される(ステップS307)。そして、選択部10により、加重平均処理部19から出力された加重平均画素S12の画素値と、フレームメモリ1の現フレームF[0]から抽出された最大影響画素S10の画素値が上記混合比率S31で混合される(ステップS308)。この混合により出力画素S13の画素値が得れ、当該出力画素S13が出力される。   Next, the maximum influence pixel S10 indicated by the maximum motion vector S8 is extracted from the current frame F [0] of the frame memory 1 by the selection unit 20 (step S307). Then, the pixel value of the weighted average pixel S12 output from the weighted average processing unit 19 and the pixel value of the maximum affected pixel S10 extracted from the current frame F [0] of the frame memory 1 are selected by the selection unit 10 from the above mixture ratio. Mixing is performed at S31 (step S308). By this mixing, the pixel value of the output pixel S13 is obtained, and the output pixel S13 is output.

次いで、補間フレームF[−0.5]上の全ての画素の出力が終了したか否かの判定が行われる(ステップS309)。ここで、補間フレームF[−0.5]上の全ての画素の出力が終了していない場合、上記ステップS302に戻り、補間フレームF[−0.5]上の次の画素に対するベクトル抽出処理が開始される。これに対し、補間フレームF[−0.5]上の全ての画素の出力が終了した場合、本処理は終了する。   Next, it is determined whether or not the output of all the pixels on the interpolation frame F [−0.5] has been completed (step S309). If the output of all the pixels on the interpolation frame F [−0.5] has not been completed, the process returns to step S302, and the vector extraction process for the next pixel on the interpolation frame F [−0.5] is performed. Is started. On the other hand, when the output of all the pixels on the interpolation frame F [−0.5] is finished, this processing is finished.

このように、本実施の形態においては、重複解決処理において、混合比率S31を算出することによって、最大動きベクトルS8の影響度と閾値ψに基づいた処理の切り換えを行うことなく、連続的な処理により補間画素を出力することができる。その結果、より滑らかな画像出力を得ることができる。   As described above, in the present embodiment, in the overlap resolution process, by calculating the mixture ratio S31, the continuous process is performed without switching the process based on the influence degree of the maximum motion vector S8 and the threshold ψ. Thus, an interpolation pixel can be output. As a result, a smoother image output can be obtained.

本発明の第1の実施の形態に係る画像処理装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of an image processing apparatus according to a first embodiment of the present invention. 現フレームF[0]から切り出された複数のブロックの一例を示す図である。It is a figure which shows an example of the some block cut out from the present flame | frame F [0]. 現フレームF[0]の1フレーム前のフレームF[−1]から切り出されたブロックの一例を示す図である。It is a figure which shows an example of the block cut out from flame | frame F [-1] one frame before the present flame | frame F [0]. ブロックS2に最も一致する部分画像(8×8画素のブロック画像)S3aのオフセットに基づいて検出された動きベクトルS4を示す図である。It is a figure which shows the motion vector S4 detected based on the offset of the partial image (block image of 8x8 pixels) S3a which most closely matches block S2. ブロックマッチング部2により求められたた動きベクトルS4に基づいて求められた補間動きベクトルS14を示す図である。It is a figure which shows the interpolation motion vector S14 calculated | required based on the motion vector S4 calculated | required by the block matching part 2. FIG. 重ね合わせ処理部4により補間フレームF[−0.5]上にマッピングする画像のサイズを示す図である。It is a figure which shows the size of the image mapped on the interpolation frame F [-0.5] by the superimposition process part 4. FIG. 補間画素毎に対応付けられている、加算/最大値モード、影響度および画素値を格納する情報フィールドの構成を示す図である。It is a figure which shows the structure of the information field which stores the addition / maximum value mode, influence degree, and pixel value matched with every interpolation pixel. 窓関数ωの分布を示す図である。It is a figure which shows distribution of window function (omega). 窓関数ωの動きベクトルと影響度の関係を表す特性を示す図である。It is a figure which shows the characteristic showing the relationship between the motion vector of window function (omega), and influence degree. 補間動きベクトルS14、マッピングする画像のサイズIa、影響度S16の関係を模式的に示す図である。It is a figure which shows typically the relationship between the interpolation motion vector S14, the size Ia of the image to map, and influence S16. ブロックマッチング部2による動きベクトル検出処理およびベクトル補間部3による補間ベクトル出力処理の手順を示すフローチャートである。4 is a flowchart showing a procedure of motion vector detection processing by a block matching unit 2 and interpolation vector output processing by a vector interpolation unit 3; 重ね合わせ処理部4による重ね合わせ処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the superimposition process by the superimposition process part. 正規化部6による正規化処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the normalization process by the normalization part. 図1の画像処理装置による補間フレーム生成処理の結果の一例を模式的に示す図である。It is a figure which shows typically an example of the result of the interpolation frame production | generation process by the image processing apparatus of FIG. 本発明の第2の実施の形態に係る画像処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the image processing apparatus which concerns on the 2nd Embodiment of this invention. 図15の画像処理装置による動きベクトル検出処理の手順を示すフローチャートである。16 is a flowchart showing a procedure of motion vector detection processing by the image processing apparatus of FIG. 15. 図15の画像処理装置によるベクトル抽出処理の手順を示すフローチャートである。It is a flowchart which shows the procedure of the vector extraction process by the image processing apparatus of FIG. 図15の画像処理装置による重複解決処理の手順を示すフローチャートである。FIG. 16 is a flowchart illustrating a procedure of duplication resolution processing by the image processing apparatus of FIG. 15. FIG. 図15の動きベクトル選択部13による候補ベクトルの選択方法を模式的に示す図である。It is a figure which shows typically the selection method of the candidate vector by the motion vector selection part 13 of FIG. 本発明の第3の実施の形態に係る画像処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the image processing apparatus which concerns on the 3rd Embodiment of this invention. 図20の画像処理装置による補間フレーム生成処理の手順を示すフローチャートである。FIG. 21 is a flowchart illustrating a procedure of interpolation frame generation processing by the image processing apparatus of FIG. 20. FIG. 図20の混合比率算出部21により算出される混合比率S31と最大動きベクトルS8の影響度との関係を模式的に示す図である。It is a figure which shows typically the relationship between the mixture ratio S31 calculated by the mixture ratio calculation part 21 of FIG. 20, and the influence degree of maximum motion vector S8. 従来の補間フレームの生成方法を模式的に示す図である。It is a figure which shows typically the production | generation method of the conventional interpolation frame.

符号の説明Explanation of symbols

1 フレームメモリ
2 ブロックマッチング部
3 ベクトル補間部
4 重ね合わせ処理部
5 窓関数テーブル
6 正規化部
12 動きベクトル検出部
13 動きベクトル選択部
14 距離算出部
15 影響度算出部
16 候補ベクトル保持部
17 影響度判定部
18 影響度正規化部
19 加重平均処理部
20 選択部
21 混合比率算出部
22 混合部
DESCRIPTION OF SYMBOLS 1 Frame memory 2 Block matching part 3 Vector interpolation part 4 Superposition process part 5 Window function table 6 Normalization part 12 Motion vector detection part 13 Motion vector selection part 14 Distance calculation part 15 Influence degree calculation part 16 Candidate vector holding part 17 Influence Degree determination unit 18 Influence normalization unit 19 Weighted average processing unit 20 Selection unit 21 Mixing ratio calculation unit 22 Mixing unit

Claims (6)

時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行う画像処理装置であって、
前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出手段と、
前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックのそれぞれに対して切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って補間フレーム上に配置する配置手段と、
前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定する決定手段と
を備え
前記決定手段は、
前記重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値のうちの最大の値が閾値以上である場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記閾値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とすることを特徴とする画像処理装置。
An image processing apparatus for performing frame interpolation for inserting an interpolation frame between a pair of temporally continuous frames,
Motion vector detection means for dividing one of the pair of frames into a plurality of blocks and detecting a motion vector between the pair of frames for each of the divided blocks;
For each block, an area that includes the block and is larger than the size of the block is cut out from one of the pair of frames, and the area cut out for each of the blocks is detected in the corresponding block. Arrangement means for arranging on the interpolation frame according to the motion vector;
A window function is applied to each of the clipped regions arranged on the interpolation frame, and the clipped material arranged on the interpolation frame is applied according to the value of the window function applied to each of the regions. and a determining means for determining a pixel value of the overlapping portion between the realm,
The determining means includes
When the maximum value of the window function values for each of the pixels in each region including the target pixel position of the overlapping portion is equal to or greater than a threshold value, the pixel of the pixel in the region corresponding to the maximum window function value The value is the pixel value at the target pixel position,
When all of the window function values for each of the pixels in each region are smaller than the threshold, the weighted average value of the pixel values of each pixel is calculated using the value of the window function for each of the pixels in each region, the image processing apparatus the calculated weighted average value issued, wherein to Rukoto the pixel value of the pixel of interest position.
時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行う画像処理装置であって、
前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出手段と、
前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックのそれぞれに対して切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って補間フレーム上に配置する配置手段と、
前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定する決定手段と
を備え、
前記決定手段は、
前記補間フレーム上に配置された領域間の重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値のうち最大の値が予め設定された所定範囲の上限値より大きい場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記所定範囲の下限値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とし、前記各領域の画素のそれぞれに対する窓関数の値のうち最大の値が前記所定範囲内にある場合、該最大の窓関数の値に応じた比率で、該最大の窓関数の値に対応する領域の画素の画素値と前記各領域の画素のそれぞれに対する窓関数の値を用いたそれぞれの画素の画素値の加重平均値とを混合し、その画素値を前記注目画素位置の画素値とすることを特徴とする画像処理装置。
An image processing apparatus for performing frame interpolation for inserting an interpolation frame between a pair of temporally continuous frames,
Motion vector detection means for dividing one of the pair of frames into a plurality of blocks and detecting a motion vector between the pair of frames for each of the divided blocks;
For each block, an area that includes the block and is larger than the size of the block is cut out from one of the pair of frames, and the area cut out for each of the blocks is detected in the corresponding block. Arrangement means for arranging on the interpolation frame according to the motion vector;
A window function is applied to each of the clipped regions arranged on the interpolation frame, and the clipped material arranged on the interpolation frame is applied according to the value of the window function applied to each of the regions. Determining means for determining pixel values of overlapping portions between the determined regions;
With
The determining means includes
If the maximum value is larger than the upper limit of the preset predetermined range of the values of the window function for each pixel in each region encompassing the target pixel position of the overlapping portions between the disposed on the interpolation frame region , The pixel value of the pixel in the region corresponding to the value of the maximum window function as the pixel value of the target pixel position,
When all of the window function values for each of the pixels in each region are smaller than the lower limit value of the predetermined range, the weighted average value of the pixel values of the respective pixels using the window function value for each of the pixels in each region When the calculated weighted average value is the pixel value of the target pixel position, and the maximum value among the window function values for each of the pixels in each region is within the predetermined range, the maximum Weighting the pixel value of each pixel using the pixel value of the pixel corresponding to the maximum window function value and the value of the window function for each of the pixels of each region at a ratio according to the value of the window function images processor characterized by mixing the average value and the pixel value as the pixel value of the pixel of interest position.
前記決定手段では、前記重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値に応じた正規化処理を行うことを特徴とする請求項1又は請求項2に記載の画像処理装置。  The said determination means performs the normalization process according to the value of the window function with respect to each of the pixel of each area | region including the attention pixel position of the said overlapping part, The Claim 1 or Claim 2 characterized by the above-mentioned. Image processing device. 時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行うための画像処理方法であって、
前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出工程と、
前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックごとに切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って、補間フレーム上に配置する配置工程と、
前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定する決定工程
を備え
前記決定工程は、
前記重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値のうちの最大の値が閾値以上である場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記閾値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とすることを特徴とする画像処理方法。
An image processing method for performing frame interpolation in which an interpolation frame is inserted between a pair of temporally continuous frames,
A motion vector detection step of dividing one of the pair of frames into a plurality of blocks and detecting a motion vector between the pair of frames for each of the divided blocks;
An area that includes the block for each block and that is larger than the size of the block is cut out from one of the pair of frames, and the area cut out for each block is determined according to the detected motion vector of the corresponding block. A placement step for placing on the interpolation frame;
A window function is applied to each of the clipped regions arranged on the interpolation frame, and the clipped material arranged on the interpolation frame is applied according to the value of the window function applied to each of the regions. the a determination step of determining a pixel value of the overlapping portion between the realm
Equipped with a,
The determination step includes
When the maximum value of the window function values for each of the pixels in each region including the target pixel position of the overlapping portion is equal to or greater than a threshold value, the pixel of the pixel in the region corresponding to the maximum window function value The value is the pixel value at the target pixel position,
When all of the window function values for each of the pixels in each region are smaller than the threshold, the weighted average value of the pixel values of each pixel is calculated using the value of the window function for each of the pixels in each region, an image processing method the calculated weighted average value issued characterized to Rukoto the pixel value of the pixel of interest position.
時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行うための画像処理方法であって、
前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出工程と、
前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックのそれぞれに対して切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って補間フレーム上に配置する配置工程と、
前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定する決定工程と
を備え、
前記決定工程では、
前記補間フレーム上に配置された領域間の重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値のうち最大の値が予め設定された所定範囲の上限値より大きい場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記所定範囲の下限値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とし、前記各領域の画素のそれぞれに対する窓関数の値のうち最大の値が前記所定範囲内にある場合、該最大の窓関数の値に応じた比率で、該最大の窓関数の値に対応する領域の画素の画素値と前記各領域の画素のそれぞれに対する窓関数の値を用いたそれぞれの画素の画素値の加重平均値とを混合し、その画素値を前記注目画素位置の画素値とすることを特徴とする画像処理方法
An image processing method for performing frame interpolation in which an interpolation frame is inserted between a pair of temporally continuous frames,
A motion vector detection step of dividing one of the pair of frames into a plurality of blocks and detecting a motion vector between the pair of frames for each of the divided blocks;
For each block, an area that includes the block and is larger than the size of the block is cut out from one of the pair of frames, and the area cut out for each of the blocks is detected in the corresponding block. An arrangement step of arranging on an interpolation frame according to a motion vector;
A window function is applied to each of the clipped regions arranged on the interpolation frame, and the clipped material arranged on the interpolation frame is applied according to the value of the window function applied to each of the regions. A determining step for determining pixel values of overlapping portions between the determined regions;
With
In the determination step ,
If the maximum value is larger than the upper limit of the preset predetermined range of the values of the window function for each pixel in each region encompassing the target pixel position of the overlapping portions between the disposed on the interpolation frame region , The pixel value of the pixel in the region corresponding to the value of the maximum window function as the pixel value of the target pixel position,
When all of the window function values for each of the pixels in each region are smaller than the lower limit value of the predetermined range, the weighted average value of the pixel values of the respective pixels using the window function value for each of the pixels in each region When the calculated weighted average value is the pixel value of the target pixel position, and the maximum value among the window function values for each of the pixels in each region is within the predetermined range, the maximum Weighting the pixel value of each pixel using the pixel value of the pixel corresponding to the maximum window function value and the value of the window function for each of the pixels of each region at a ratio according to the value of the window function mixing the average value, you characterized in that the pixel value and the pixel value of the target pixel position image processing method.
前記決定工程では、前記重複する部分の注目画素位置を包含する各領域の画素のそれぞれに対する窓関数の値に応じた正規化処理を行うことを特徴とする請求項4又は請求項5に記載の画像処理方法。  The normalization process according to the value of the window function with respect to each of the pixels of each region including the target pixel position of the overlapping portion is performed in the determination step. Image processing method.
JP2007129406A 2007-05-15 2007-05-15 Image processing apparatus and image processing method Expired - Fee Related JP5078428B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007129406A JP5078428B2 (en) 2007-05-15 2007-05-15 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007129406A JP5078428B2 (en) 2007-05-15 2007-05-15 Image processing apparatus and image processing method

Publications (2)

Publication Number Publication Date
JP2008288697A JP2008288697A (en) 2008-11-27
JP5078428B2 true JP5078428B2 (en) 2012-11-21

Family

ID=40148041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007129406A Expired - Fee Related JP5078428B2 (en) 2007-05-15 2007-05-15 Image processing apparatus and image processing method

Country Status (1)

Country Link
JP (1) JP5078428B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5672116B2 (en) * 2011-03-31 2015-02-18 株式会社Jvcケンウッド Video processing device
JP7091767B2 (en) * 2018-03-27 2022-06-28 株式会社リコー Frame interpolator and frame interpolation method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2687974B2 (en) * 1986-03-31 1997-12-08 日本放送協会 Motion vector detection method
KR100565066B1 (en) * 2004-02-11 2006-03-30 삼성전자주식회사 Motion Compensation Interpolation Method Using Overlapping Block-based Motion Estimation and Frame Rate Conversion Apparatus
JP4295227B2 (en) * 2005-01-04 2009-07-15 日本電信電話株式会社 Moving picture coding method, moving picture coding apparatus, moving picture coding program, and computer-readable recording medium recording the program

Also Published As

Publication number Publication date
JP2008288697A (en) 2008-11-27

Similar Documents

Publication Publication Date Title
US8175417B2 (en) Apparatus, method, and computer-readable recording medium for pixel interpolation
US9076234B2 (en) Super-resolution method and apparatus for video image
CN103632359B (en) A kind of video super-resolution disposal route
US10755394B2 (en) Image processing method and device
US20130278596A1 (en) Image generation apparatus, image display apparatus, image generation method and non-transitory computer readable medium
JP5351971B2 (en) Method, apparatus and software for determining motion vectors
JP2004201308A (en) Method and system for advanced edge-adaptive interpolation for interlace-to-progressive conversion
US8873886B2 (en) Apparatus and method for displaying a region of an image in an enlarged manner, and program therefor
JP2006311480A (en) Interpolation frame generation method, interpolation frame generation apparatus, and interpolation frame generation program
JP4852059B2 (en) Noise removal apparatus and noise removal program for improving binarization performance of document image
EP2536123B1 (en) Image processing method and image processing apparatus
US20060244861A1 (en) Method for detecting bisection pattern in deinterlacing
JP5078428B2 (en) Image processing apparatus and image processing method
US20050078884A1 (en) Method and apparatus for interpolating a digital image
JP4686624B2 (en) Information processing apparatus, image processing method, and program
JP2010108205A (en) Super resolution image creating method
WO2013132836A1 (en) Object detection device, object detection method, and object detection program
CN113592714B (en) Image magnification method, module, and system
JP2010108138A (en) Person detection device and program
WO2011121563A1 (en) Detecting saliency in an image
JP5745370B2 (en) Specific area extraction device and specific area extraction program
JP4854042B2 (en) Image generation method, image generation apparatus, and image generation program
RU2383055C2 (en) Method of determining and smoothing jagged edges on images
JP2006215657A (en) Motion vector detection method, motion vector detection device, motion vector detection program, and program recording medium
JP3137084B2 (en) Motion detection apparatus and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100427

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120313

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120509

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120731

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120828

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

Free format text: PAYMENT UNTIL: 20150907

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5078428

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20150907

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees