[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR100961456B1 - Method of motion estimation by using adaptive expanded block based on frame-difference - Google Patents

Method of motion estimation by using adaptive expanded block based on frame-difference Download PDF

Info

Publication number
KR100961456B1
KR100961456B1 KR1020080014109A KR20080014109A KR100961456B1 KR 100961456 B1 KR100961456 B1 KR 100961456B1 KR 1020080014109 A KR1020080014109 A KR 1020080014109A KR 20080014109 A KR20080014109 A KR 20080014109A KR 100961456 B1 KR100961456 B1 KR 100961456B1
Authority
KR
South Korea
Prior art keywords
block
motion estimation
frame
difference
motion
Prior art date
Application number
KR1020080014109A
Other languages
Korean (ko)
Other versions
KR20090088689A (en
Inventor
최명렬
Original Assignee
한양대학교 산학협력단
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 한양대학교 산학협력단 filed Critical 한양대학교 산학협력단
Priority to KR1020080014109A priority Critical patent/KR100961456B1/en
Publication of KR20090088689A publication Critical patent/KR20090088689A/en
Application granted granted Critical
Publication of KR100961456B1 publication Critical patent/KR100961456B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Systems (AREA)

Abstract

프레임 차이 기반의 적응형 확장 블록을 이용한 움직임 추정 방법이 개시된다. 연속된 프레임간의 차이값을 이용하여 움직임 추정이 필요한 블록을 판단하는 움직임 추정 블록 판단 단계, 움직임 추정이 필요한 블록 주위의 블록들 중에서 움직임 추정이 필요한 블록과 상관도가 높은 주위 블록들을 움직임 추정이 필요한 블록과 결합시킨 적응형 확장 블록을 결정하는 적응형 확장 블록 결정 단계 및 적응형 확장 블록을 이용하여 연속된 프레임 간의 움직임 벡터를 산출하는 움직임 벡터 산출 단계를 포함하여 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법을 구성한다. 따라서, 종래의 방법들에 비하여 보다 작은 연산량을 가지면서도 보다 정확한 움직임 벡터의 산출이 가능해진다.Disclosed is a motion estimation method using an adaptive extension block based on frame difference. A motion estimation block determination step of determining a block requiring motion estimation using a difference value between successive frames; among blocks around blocks requiring motion estimation, neighboring blocks having a high correlation with a block requiring motion estimation need motion estimation. Adaptive Extended Block Motion Estimation based on Frame Difference including adaptive extended block determining step of determining adaptive extended block combined with block and motion vector calculating step of calculating motion vector between successive frames using adaptive extended block Configure the method. Therefore, compared to the conventional methods, it is possible to calculate a motion vector more accurately while having a smaller amount of computation.

프레임 보간, 움직임 추정, 적응형, 프레임 차이 Frame interpolation, motion estimation, adaptive, frame difference

Description

프레임 차이 기반의 적응형 확장 블록을 이용한 움직임 추정 방법{METHOD OF MOTION ESTIMATION BY USING ADAPTIVE EXPANDED BLOCK BASED ON FRAME-DIFFERENCE}METHOD OF MOTION ESTIMATION BY USING ADAPTIVE EXPANDED BLOCK BASED ON FRAME-DIFFERENCE}

본 발명은 움직임 추정 방법에 관한 것으로, 더욱 상세하게는 종래의 방법에 비하여 적은 연산량을 가지면서도 보다 정확한 움직임 벡터의 산출이 가능하도록 하는, 프레임 보간 기법에 적용될 수 있는 움직임 추정 방법에 관한 것이다.The present invention relates to a motion estimation method, and more particularly, to a motion estimation method that can be applied to a frame interpolation technique, which enables calculation of a more accurate motion vector while having a smaller amount of computation than a conventional method.

오늘날 디스플레이 시장에서 액정 디스플레이(LCD: Liquid Crystal Display) 장치는 기술의 발전에 따라 많은 관심을 받고 있다. 그러나 액정 디스플레이 장치와 같이 프레임 단위로 픽셀 값이 유지되는 홀드 타입(hold-type)의 디스플레이 장치에서는 동영상에서 화면 끌림 현상(motion blur)이 발생한다. 이 현상은 프레임 단위로 픽셀 값이 유지되기 때문에 생기는 현상으로 동영상에서 움직임이 심한 영역에 대하여 화질 열화를 일으킨다. 이와 같은 현상을 줄이기 위한 기법으로 기존의 프레임 사이에 새로운 프레임을 보간하여 삽입하는 프레임 보간(frame interpolation) 기법이 존재한다. 프레임 보간을 수행하면 프레임 당 픽셀 값을 유지하는 시간이 감소하기 때문에 화면 끌림 현상(motion blur)이 줄어들게 된다. In today's display market, liquid crystal display (LCD) devices are attracting much attention as technology advances. However, in a hold-type display device in which pixel values are maintained in units of frames, such as a liquid crystal display device, motion blur occurs in a moving image. This phenomenon occurs because pixel values are maintained on a frame-by-frame basis, which causes deterioration of image quality in a moving area of a video. As a technique for reducing such a phenomenon, there is a frame interpolation technique for interpolating and inserting a new frame between existing frames. Frame interpolation reduces the time required to maintain pixel values per frame, thereby reducing motion blur.

도 1a 및 도 1b는 프레임 보간에 의한 화면 끌림 현상 감소를 설명하기 위한 프레임 단위 픽셀값 변화를 보여주는 그래프이다.1A and 1B are graphs illustrating a change in pixel value of a frame to explain a reduction in screen drag caused by frame interpolation.

도 1a를 참조하면, 프레임 보간이 적용되지 않은 경우의 프레임 단위 화소값 변화가 예시된다. 예컨대, n번째 프레임(101) 내지 n+3 번째(104) 프레임까지 동영상이 구현될 때에 프레임 단위로 픽셀 값이 유지되기 때문에 프레임 단위로 픽셀 값의 변화가 큰 움직임 영역에 대해서는 인지폭(perception width; 110)이 커지게 된다. 즉, 프레임 보간이 적용되지 않는 경우에는 움직임이 큰 영상의 경우에 부자연스러운 화면 끌림 현상이 커지게 된다.Referring to FIG. 1A, a change in a pixel value of a frame unit when frame interpolation is not applied is illustrated. For example, when the moving picture is implemented from the nth frame 101 to the n + 3rd 104 frame, the pixel value is maintained in units of frames. 110 becomes large. That is, when frame interpolation is not applied, an unnatural screen drag phenomenon increases in the case of an image having a large motion.

도 1b를 참조하면, 프레임 보간이 적용되는 경우의 프레임 단위 화소값 변화가 예시된다. 예컨대, n번째 프레임(101)과 n+1 번째 프레임(104) 사이에 n번째 프레임(101)과 n+1 번째 프레임(102)을 이용하여 보간된 n 프레임(101-1)이 개입된다. 마찬가지로 n+1 번째 프레임(102)과 n+2 번째 프레임(103) 사이에 (n+1) 프레임(102-1)이 개입된다. Referring to FIG. 1B, a change in a pixel value of a frame in a case where frame interpolation is applied is illustrated. For example, an n frame 101-1 interpolated using the n th frame 101 and the n + 1 th frame 102 is interposed between the n th frame 101 and the n + 1 th frame 104. Similarly, the (n + 1) frame 102-1 intervenes between the n + 1 th frame 102 and the n + 2 th frame 103.

이와 같이, 도 1a에서 예시한 프레임 보간이 적용되지 않은 경우의 디스플레이 장치에서 프레임 갱신율(frame refresh rate)이 60Hz의 주파수를 가진다면, 도 1b에서 예시한 프레임 보간이 적용된 경우의 디스플레이 장치에서는 프레임 갱신율이 120Hz의 주파수를 가지게 된다. 즉, 프레임 보간에 의하여 더 높은 프레임 갱신율을 가지도록 하므로써(FRC: frame rate up conversion), 프레임 단위의 인지폭(120)이 작아지게 되므로, 화면 끌림 현상이 제거되고 움직임의 변화가 큰 동영상의 경우에도 자연스럽고 눈의 피로도가 적은 영상의 출력이 가능해지는 것이다.As such, if the frame refresh rate has a frequency of 60 Hz in the display apparatus when the frame interpolation illustrated in FIG. 1A is not applied, the display apparatus when the frame interpolation illustrated in FIG. 1B is applied The update rate will have a frequency of 120 Hz. In other words, the frame width up conversion (FRC: frame rate up conversion) is reduced by the frame interpolation (FRC: frame rate up conversion), so that the screen drag phenomenon is eliminated and the motion change is large. In this case, it is possible to output images that are natural and have less eye fatigue.

이때, 상기와 같은 프레임 보간 방법으로는 여러 가지 방법들이 존재하나, 대표적인 방법으로는 프레임 반복과 연속되는 프레임들의 평균 프레임을 사용하는 방법, 움직임 추정(motion estimation)을 이용하는 방법들을 들 수 있다.In this case, there are various methods as the frame interpolation method, but typical methods include a method using an average frame of frames repetitive and continuous frames and a method using motion estimation.

특히, 상기 방법들 중에서 화면 끌림 현상을 최대한 줄일 수 있는 방법은 움직임 추정을 이용하여 프레임을 보간하는 것이다.In particular, one of the methods that can reduce the screen drag as much as possible is to interpolate a frame using motion estimation.

움직임 추정을 통한 프레임 보간은 두 과정으로 구성된다. 첫 번째 과정은 움직임 추정을 수행하여 움직임 벡터(motion vector)를 추출하는 과정이고, 두 번째 과정은 추출된 움직임 벡터를 기반으로 보간 프레임을 생성하는 것이다. 특히, 프레임 보간을 위한 움직임 추정을 수행함에 있어 가장 중요한 것은 정확한 움직임 벡터를 찾는 것이다. 움직임 추정은 연속된 두 프레임에서 현재 프레임 내의 블록들에 대하여 참조 프레임에서 오차 에너지가 가장 작은 블록을 가리키는 움직임 벡터를 추출하는 과정으로 탐색 영역의 모든 위치에 대하여 오차에너지를 구하기 때문에 많은 연산량을 필요로 한다. 또한 새로운 프레임을 생성하는 과정에서 잘못된 움직임 벡터를 사용하게 될 경우, 영상의 끊어짐 현상이 발생되므로 정확한 움직임 추정이 요구된다.Frame interpolation through motion estimation consists of two processes. The first process is to extract motion vectors by performing motion estimation, and the second process is to generate interpolation frames based on the extracted motion vectors. In particular, the most important thing in performing motion estimation for frame interpolation is to find an accurate motion vector. Motion estimation is a process of extracting a motion vector that indicates the block with the lowest error energy in the reference frame for blocks in the current frame in two consecutive frames, which requires a large amount of computation since the error energy is obtained for every position in the search region. do. In addition, when the wrong motion vector is used in the process of generating a new frame, an image break occurs and accurate motion estimation is required.

기존에 널리 이용되는 움직임 추정 기법으로는 일반적인 블록 기반의 전역 탐색 움직임 추정 방법과 중첩 블록 기반의 움직임 추정 방법을 들 수 있다.Existing widely used motion estimation techniques include general block-based global search motion estimation and overlapping block-based motion estimation.

일반적인 블록 기반의 전역 탐색 움직임 추정 방법(full-search motion estimation)은 직전 프레임(previous frame)의 탐색 영역(search range)내의 모든 위치에 대하여 블록 기반 움직임 추정을 하는 방식으로, 구현이 용이하고 MPEG1,2,4, H.261, H.263, H.264 등의 동영상 표준에서 사용되고 있는 방식이다. 즉, 현재 프레임의 MⅹN 픽셀로 구성된 블록들에 대하여 직전 프레임의 탐색 영역내의 후보 블록들과의 오차 에너지를 모두 산출하고 오차 에너지가 최소인 블록까지의 변위를 움직임 벡터로 구한다. 이때 오차 에너지의 산출은 일반적으로 SAD(Sum of an absolute difference of pixel by pixel)가 이용된다.The general block-based full-search motion estimation method is a block-based motion estimation method for all positions in a search range of a previous frame. 2,4, H.261, H.263, H.264, etc. are used in the video standards. That is, the error energy with respect to the candidate blocks in the search region of the previous frame is calculated for the blocks composed of MⅹN pixels of the current frame, and the displacement up to the block with the minimum error energy is obtained as the motion vector. The error energy is generally calculated using a sum of an absolute difference of pixel by pixel (SAD).

한편, 일반적인 블록 기반의 전역 탐색 방법은 구현이 용이하고 가장 기본이 되는 방법이지만 영상 내의 노이즈나 빛의 변화, 카메라의 줌인, 줌아웃, 패닝(panning) 등의 현상에 대하여 잘못된 움직임 추정이 유발될 수 있다는 문제점이 있다.On the other hand, the general block-based global search method is easy to implement and is the most basic method, but incorrect motion estimation may be caused for noise or light changes in the image, zoom-in, zoom-out, and panning of the camera. There is a problem.

다음으로, 중첩 블록 기반의 움직임 추정 방법(overlapped block motion estimation)은 움직임 벡터를 찾게 될 블록의 크기보다 확장된 블록을 사용하여 움직임 추정을 수행하는 방법으로 영상 내에서 이웃하는 픽셀들간에는 상관도가 높다는 점을 이용하여 앞서 언급된 노이즈나 카메라 패닝 등의 현상에 의한 잘못된 움직임 추정을 줄일 수 있다는 장점이 있으나, 많은 연산량을 필요로 하기 때문에 실시간 구현에 있어서는 적합하지 않다는 문제점이 있다.Next, the overlapped block motion estimation method is a method of performing motion estimation using a block extended than a size of a block to find a motion vector. There is an advantage in that false motion estimation caused by the aforementioned noise or camera panning can be reduced by using a high point, but it is not suitable for real-time implementation because it requires a large amount of computation.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 종래의 움직임 추정 방법들에 비하여 연산량을 줄여 실시간 구현에 적합하면서도 보다 정확한 움직임 벡터의 산출이 가능하도록 하는 움직임 추정 방법을 제공하는데 있다.SUMMARY OF THE INVENTION An object of the present invention for solving the above problems is to provide a motion estimation method that is capable of calculating more accurate motion vectors while being suitable for real-time implementation by reducing the amount of computation as compared to conventional motion estimation methods.

상기 목적을 달성하기 위한 본 발명은, 프레임 보간을 위한 연속된 프레임 간의 움직임 추정을 수행하는 방법에 있어서, 연속된 프레임간의 차이값을 이용하여 움직임 추정이 필요한 블록을 판단하는 움직임 추정 블록 판단 단계, 상기 움직임 추정이 필요한 블록 주위의 블록들 중에서 상기 움직임 추정이 필요한 블록과 상관도가 높은 주위 블록들을 상기 움직임 추정이 필요한 블록과 결합시킨 적응형 확장 블록을 결정하는 적응형 확장 블록 결정 단계 및 상기 적응형 확장 블록을 이용하여 연속된 프레임 간의 움직임 벡터를 산출하는 움직임 벡터 산출 단계를 포함한 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법을 제공한다.According to an aspect of the present invention, there is provided a method of performing motion estimation between consecutive frames for frame interpolation, comprising: a motion estimation block determination step of determining a block requiring motion estimation using a difference value between successive frames; Adaptive expansion block determination step and determining the adaptive expansion block to determine the adaptive expansion block that combines the neighboring blocks having a high correlation with the block requiring the motion estimation among the blocks around the block requiring the motion estimation with the block requiring the motion estimation Provided is a frame difference-based adaptive extended block motion estimation method including a motion vector calculating step of calculating a motion vector between consecutive frames using a type extension block.

여기에서, 상기 움직임 추정 블록 판단 단계에서, 상기 움직임 추정이 필요한 블록을 판단하는 것은 하나의 블록에 포함된 픽셀들의 프레임간 차이값 총합이 소정의 임계치보다 큰 경우에 상기 하나의 블록을 움직임 추정이 필요한 블록으로 판단하는 것에 의해 이루어질 수 있다.Here, in the motion estimation block determination step, determining the block requiring motion estimation may include determining whether the motion estimation is performed using the one block when the sum of the difference values between the frames of the pixels included in the one block is greater than a predetermined threshold. This can be done by judging the necessary blocks.

여기에서, 상기 적응형 확장 블록 결정 단계는 상기 움직임 추정이 필요한 블록 주위의 블록들 중에서 블록에 포함된 픽셀들의 프레임간 차이값 총합이 소정 의 임계치보다 큰 블록들을 상기 움직임 추정이 필요한 블록과 결합하여 적응형 확장 블록을 결정하도록 구성될 수 있다.Here, the adaptive extended block determination step may be performed by combining the blocks requiring the motion estimation with blocks in which the sum of the difference values of the frames included in the block is greater than a predetermined threshold among the blocks around the block requiring the motion estimation. It may be configured to determine the adaptive extension block.

이때, 상기 움직임 추정이 필요한 블록 주위의 블록들은 상기 움직임 추정이 필요한 블록에 인접한 상,하,좌,우 블록들을 포함할 수 있다.In this case, blocks around the block requiring motion estimation may include up, down, left, and right blocks adjacent to the block requiring motion estimation.

상기와 같은 본 발명에 따른 움직임 추정 방법을 이용하면, 프레임 차이를 이용하여 움직임 추정의 대상이 되는 블록의 수를 줄임으로써 연산량을 대폭적으로 감소시켜 실시간 구현에 적합하면서도, 확장 블록을 이용하여 카메라가 움직이는 영상에 대해서도 정확한 움직임 벡터를 산출하는 것이 가능해진다.When using the motion estimation method according to the present invention as described above, by reducing the number of blocks that are the object of motion estimation by using the frame difference significantly reduced the amount of computation is suitable for real-time implementation, while using the extended block It is possible to calculate an accurate motion vector even for a moving image.

특히, 고정적인 확장 블록을 단순히 이용하는 것이 아니라, 확장 블록의 구성 또한 움직임 추정의 대상이 되는 블록 주위의 블록들의 프레임 차이에 기반하여 적응적(adaptively)으로 이루어지므로 해당 영상의 특성을 제대로 반영하여 동작하는 효과를 가져올 수 있다.In particular, the fixed block is not simply used, but the configuration of the extended block is adaptively based on the frame difference of the blocks around the block that is the object of motion estimation. It can bring the effect.

이러한 연산량의 감소에 의하여 실시간 구현에 적합한 움직임 추정이 가능하므로 적은 비용과 비교적 간략한 구성만으로 프레임 보간 기법이 적용된 프레임율 업 컨버전 디스플레이 장치의 구현이 가능해진다.As the amount of computation is reduced, motion estimation suitable for real-time implementation is possible, and thus, a frame rate up conversion display apparatus using a frame interpolation technique can be implemented with a low cost and a relatively simple configuration.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발 명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and are not construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

도 2는 본 발명에 따른 움직임 추정 방법을 설명하기 위한 순서도이다.2 is a flowchart illustrating a motion estimation method according to the present invention.

도 2를 참조하면, 본 발명에 따른 움직임 추정 방법은 움직임 추정 블록 판단 단계(S110), 적응형 확장 블록 결정 단계(S120) 및 움직임 벡터 산출 단계(S130)를 포함하여 구성될 수 있다. 한편, 상기 각 단계들을 거친 다음, 산출된 움직임 벡터를 이용하여 보간 영상(interpolated frame)을 구성하는 단계(S140)가 수행된다.Referring to FIG. 2, the motion estimation method according to the present invention may include a motion estimation block determination step S110, an adaptive extended block determination step S120, and a motion vector calculation step S130. Meanwhile, after the steps, the step S140 is performed to construct an interpolated frame using the calculated motion vector.

이하에서, 본 발명에 따른 움직임 추정 방법을 구성하는 각 단계들을 단계별로 상술한다.Hereinafter, each step of configuring the motion estimation method according to the present invention will be described in detail step by step.

1) 움직임 추정 블록 판단 단계(S110) 1) Motion estimation block determination step (S110)

본 단계는 연속된 프레임간의 차이값을 이용하여 움직임 추정이 필요한 블록을 판단하는 단계이다. This step is a step of determining a block requiring motion estimation using the difference between successive frames.

움직임 추정 블록 판단 단계(S110)는 다시 세부적으로, 연속된 프레임의 차이값을 구하는 단계(S111)와 프레임 차이값에 기반하여 움직임 추정을 수행할 블록을 판단하는 단계(S112)로 구성될 수 있다.The motion estimation block determination step (S110) may further include, in detail, obtaining a difference value of consecutive frames (S111) and determining a block to perform motion estimation based on the frame difference value (S112). .

종래 기술에서 언급된 바와 같이, 움직임 추정은 연속된 두 프레임에서 현재 프레임 내의 블록들에 대하여 참조 프레임에서 오차 에너지가 가장 작은 블록을 가리키는 움직임 벡터를 추출하는 과정이므로 움직임 추정 대상이 되는 블록별로 탐색 영역(search range)내의 모든 위치에 대하여 오차에너지를 구하기 때문에 많은 연산량을 필요로 한다. 따라서, 본 발명에 따른 움직임 추정 방법에서는 연속되는 프레임간의 차이값을 연산하고 연산된 차이값을 토대로 움직임 추정을 수행할 블록을 판별한다. 즉, 동영상에서 프레임내의 영역은 움직임이 없는 영역과 움직임이 있는 영역으로 분류할 수 있으므로 움직임이 있는 영역의 블록만을 움직임 추정을 수행할 블록으로 결정하는 것이다.As mentioned in the related art, the motion estimation is a process of extracting a motion vector indicating a block having the smallest error energy in a reference frame with respect to blocks in the current frame in two consecutive frames, so that a search area for each block to be a motion estimation target is provided. It requires a lot of computation because the error energy is found for every position in the (search range). Accordingly, the motion estimation method according to the present invention calculates a difference value between successive frames and determines a block to perform motion estimation based on the calculated difference value. That is, since a region in a frame of a video can be classified into a region without a motion and a region with a motion, only a block of a region having a motion is determined as a block to perform motion estimation.

먼저, 연속된 프레임의 차이값을 구하는 단계(S111)는 영역을 구분하기 위하여 현재 프레임과 이전 프레임의 픽셀 값의 차이를 이용하여 프레임 차이값(frame difference)를 생성한다. 하기 수학식 1은 본 발명에 따른 움직임 추정 방법에 연속된 프레임 간의 차이값을 구하기 위하여 이용될 수 있는 수식이다.First, in operation S111 of obtaining a difference value between successive frames, a frame difference value is generated by using a difference between pixel values of a current frame and a previous frame to distinguish an area. Equation 1 is an equation that may be used to obtain a difference value between consecutive frames in the motion estimation method according to the present invention.

[수학식 1][Equation 1]

Figure 112008011600167-pat00001
Figure 112008011600167-pat00001

여기에서, f(x,t)는 현재(t번째) 프레임의 x번째 픽셀 값을 의미하며, f(x,t-1)는 직전(t-1번째) 프레임의 x번째 픽셀 값을 의미하고, FD(x,t)x번째 픽셀의 t-1 번째 프레임과 t번째 프레임의 차이값을 의미한다.Here, f (x, t) refers to the x-th pixel value of the current (t th) frame, and, f (x, t-1 ) is the mean x-th pixel value of the immediately preceding (t-1 th) frame , FD (x, t) means the difference between the t-1 th frame and the t th frame of the x th pixel.

상술된 프레임 차이값에서는 움직임이 없는 영역의 픽셀 값은 직전 프레임의 픽셀 값과 다르지 않기 때문에 ‘0’값을 갖는다. 반대로 움직임이 있는 영역의 픽셀은 직전 프레임의 픽셀 값과 차이가 있으므로 ‘1’ 이상의 값(절대치를 취할 경우)을 가지게 된다. 이를 바탕으로, 블록을 구성하는 픽셀들의 프레임 차이값 총합이 미리 설정된 임계값 이상인 블록은 움직임이 발생한 블록으로 판단할 수 있고 그렇지 않은 경우는 움직임이 일어나지 않은 블록으로 판단할 수 있다. In the above-described frame difference value, the pixel value of the region without motion has a value of '0' because it is not different from the pixel value of the previous frame. On the contrary, since the pixel of the moving area is different from the pixel value of the previous frame, it has a value of '1' or more (when an absolute value is taken). Based on this, the block having the sum of the frame difference values of the pixels constituting the block is greater than or equal to a predetermined threshold value may be determined as a block in which the motion has occurred, or it may be determined as a block in which the motion does not occur.

따라서, 프레임 차이값에 기반하여 움직임 추정을 수행할 블록을 판단하는 단계(S112)에서는 상술된 프레임 차이값의 블록 단위 총합을 소정의 임계값과 비교하여 움직임 추정을 수행할 블록을 판단할 수 있다.Therefore, in the determining of a block to perform motion estimation based on the frame difference value (S112), the block to perform motion estimation may be determined by comparing the above-described block unit total of the frame difference values with a predetermined threshold value. .

하기 수학식 2는 프레임 차이값에 기반하여 움직임 추정을 수행할 블록을 판단하기 위한 수학식으로서, 임계값은 영상에서 발생할 수 있는 노이즈로 인해 움직임 추정을 수행할 블록이 잘못 판단되는 것을 방지하기 위해서 실험에 의해 구한 소정의 값이 선택되어 사용될 수 있다. Equation 2 is an equation for determining a block to perform motion estimation based on a frame difference value, and a threshold value is used to prevent a block from which motion estimation is incorrectly determined due to noise that may occur in an image. The predetermined value obtained by the experiment can be selected and used.

[수학식 2][Equation 2]

Figure 112008011600167-pat00002
Figure 112008011600167-pat00002

여기에서,

Figure 112008011600167-pat00003
는 소정의 임계값을 의미하고, i는 해당 블록을 지정하는 첫번째 픽셀의 번호를 의미하며, FD(x,t)i+x번째 픽셀의 t번째 프레임과 t-1 번째 프레임 간 차이값을 의미하며, FDB(i,t)i블록에 포함된 픽셀들의 t번째 프레임과 t-1번째 프레임간 차이값의 총합을 의미한다.From here,
Figure 112008011600167-pat00003
Is a difference value refers to a predetermined threshold value and, i indicates the number of the first pixel that specifies the corresponding block and, FD (x, t) is between i + x-th pixel in the t-th frame and the t-1 th frame FDB (i, t) means the sum of difference values between the t th frame and the t-1 th frame of the pixels included in the i block.

도 3a 및 도 3b는 본 발명에 따른 움직임 추정 방법에서 움직임 추정 블록 판단 단계의 처리를 예시하는 개념도이다. 3A and 3B are conceptual views illustrating the processing of the motion estimation block determination step in the motion estimation method according to the present invention.

도 3a를 참조하면, 직전 프레임과 현재 프레임을 중첩시켜 표현함으로써 연속된 프레임에서 객체의 움직임이 예시한다. 즉, 직전 프레임 내의 객체(310)가 현재 프레임 내에서는 객체(320)로 위치가 우측(330)으로 이동되어 있음을 예시하고 있다.Referring to FIG. 3A, the movement of an object in a continuous frame is illustrated by overlapping a previous frame with a current frame. That is, the object 310 in the immediately preceding frame illustrates that the position of the object 320 is moved to the right side 330 in the current frame.

도 3b를 참조하면, 흰색 영역(340)은 픽셀들의 프레임 차이값이 발생된 부분이고, 회색 블록들(350)은 움직임이 있는 블록들로 판단되어 움직임 추정이 필요한 블록들로 판단된다. 즉, 상술된 수학식 1에 의하여 직전 프레임과 현재 프레임 간의 프레임 차이값을 연산하고, 수학식 2에 의하여 블록 단위로 픽셀들의 프레임 차이값의 총합이 소정의 임계값보다 큰 블록들로 움직임 추정을 수행할 블록들을 선 정하면 도 3b에서 예시된 회색 블록들(350)로 움직임 추정이 필요한 블록들을 판단할 수 있다. Referring to FIG. 3B, the white region 340 is a portion in which a frame difference value of pixels is generated, and the gray blocks 350 are determined to be blocks having motion, and thus are determined to be blocks requiring motion estimation. That is, the frame difference value between the previous frame and the current frame is calculated according to Equation 1 above, and the motion estimation is performed on blocks in which the sum of the frame difference values of the pixels in blocks is larger than the predetermined threshold value according to Equation 2 above. When the blocks to be performed are selected, the blocks requiring the motion estimation may be determined using the gray blocks 350 illustrated in FIG. 3B.

한편, 움직임 추정이 필요한 블록으로 판정되지 않은 블록들은 움직임 추정의 대상이 되지 아니하므로, 예컨대, 해당 블록은 직전 프레임이나 현재 프레임의 대응되는 블록을 그대로 이용하여 (S125), 보간 영상을 구성하는 단계(S140)에 직접 입력될 수 있을 것이다.On the other hand, blocks that are not determined to be a motion estimation block are not subject to motion estimation, and thus, for example, the corresponding block may use an immediately preceding frame or a corresponding block of the current frame as it is (S125) to construct an interpolated image. It may be directly input to (S140).

1) 적응형 확장 블록 결정 단계(S120) 1) Adaptive expansion block determination step (S120)

본 단계는 상기 움직임 추정 블록 판단 단계(S110)에서 판단된 움직임 추정이 필요한 블록 주위의 블록들 중에서 움직임 추정이 필요한 블록과 상관도가 높은 주위 블록들을 판단하여 상기 움직임 추정이 필요한 블록과 상관도가 높은 주위 블록들이 결합된 적응형 확장 블록을 결정하는 단계이다.In this step, among the blocks around the block requiring the motion estimation determined in the motion estimation block determining step (S110), neighboring blocks having a high correlation with the block requiring the motion estimation may be determined to correlate with the block requiring the motion estimation. It is a step of determining an adaptive expansion block in which high surrounding blocks are combined.

기본적으로 움직임 추정을 수행할 때, 움직임을 갖는 객체는 관성을 가지고 있다는 것과 움직이는 객체는 블록의 사이즈보다는 크다는 것을 가정할 수 있다. 이 사실을 근거로 이웃한 블록의 움직임은 현재 블록의 움직임과 상관도가 높다는 것을 알 수 있다. 그러나 움직이는 객체와 배경이 인접해 있는 블록에서는 이웃한 블록의 상관도가 낮기 때문에 움직임 추정을 수행할 때, 사용되어서는 안 된다. 본 발명에서는 프레임 차이를 기반으로 이웃한 블록이 상관도가 큰 블록인지 판단하고, 사용 가능한 블록일 경우, 움직임 추정이 필요한 블록과 결합시켜 확장 블록을 형성시킨다. 이렇게 결정된 적응형 확장 블록은 직전 프레임의 블록들과 SAD(Sum of an absolute difference of pixel by pixel)를 구할 때 사용되며, 움직임 추정이 필요한 블록과 결합될 주위 블록을 판단하는 과정은 다음과 같다. Basically, when performing motion estimation, it can be assumed that the object with motion has inertia and the moving object is larger than the size of the block. Based on this fact, it can be seen that the movement of neighboring blocks has a high correlation with the movement of the current block. However, it should not be used when performing motion estimation because the correlation between neighboring blocks is low in blocks with moving objects and backgrounds. In the present invention, it is determined whether a neighboring block is a block having a high correlation based on the frame difference, and if it is an available block, it is combined with a block requiring motion estimation to form an extended block. The adaptive extension block thus determined is used to obtain blocks of the previous frame and sum of an absolute difference of pixel by pixel (SAD), and a process of determining a neighboring block to be combined with a block requiring motion estimation is as follows.

첫번째로, 현재 움직임 추정을 수행할 블록의 주위 블록들에 대하여 블록들을 구성하는 픽셀들의 프레임 차이값 총합을 소정의 임계값과 비교한다. 여기에서, 현재 움직임 추정을 수행할 블록의 주위 블록들은 해당 블록의 상,하,좌,우에 위치한 블록들이 포함될 수 있다.First, the sum of the frame difference values of the pixels constituting the blocks with respect to the neighboring blocks of the block on which the current motion estimation is to be performed is compared with a predetermined threshold. Here, the neighboring blocks of the block on which the current motion estimation is to be performed may include blocks located above, below, left, and right of the block.

두번째로, 상기 주위 블록들 중에서 블록을 구성하는 픽셀들의 프레임 차이값 총합이 소정의 임계값보다 큰 블록은 현재 움직임 추정을 수행할 블록과 상관도가 큰 블록으로 판단할 수 있으므로 적응형 확장 블록내에 포함시킨다.Second, among the neighboring blocks, a block having a sum total of the frame difference values of pixels constituting the block larger than a predetermined threshold value may be determined as a block having a high correlation with a block to perform current motion estimation. Include it.

도 4a 및 도 4b는 본 발명에 따른 움직임 추정 방법에서 적응형 확장 블록의 구성예를 설명하기 위한 개념도이다.4A and 4B are conceptual views illustrating a configuration example of an adaptive extension block in the motion estimation method according to the present invention.

도 4a 및 도 4b는 앞서 설명된 도 3b와 병행하여 참조된다.4A and 4B are referenced in parallel with FIG. 3B described above.

도 3b에 예시된 블록 1(360)이 움직임 추정 대상 블록이 되는 경우에는 블록 1(360)의 좌측 블록(360-1)과 우측 블록(360-2), 상단 블록(360-3)이 블록 1(360)과 상관도가 높은 블록으로 판별되어 도 4a에 예시된 바와 같은 적응형 확장블록(410)을 구성하게 된다.When block 1 360 illustrated in FIG. 3B becomes a motion estimation target block, the left block 360-1, the right block 360-2, and the upper block 360-3 of the block 1 360 are blocks. It is determined that the block has a high correlation with one 360 to configure the adaptive extension block 410 as illustrated in FIG. 4A.

마찬가지로, 도 3b에 예시된 블록 2(370)가 움직임 추정 대상 블록이 되는 경우에는 블록2(370)의 좌측 블록(370-1; 즉, 도 3b의 블록 1임)과 상측 블록(370-3)이 블록 2(370)와 상관도가 높은 블록으로 판별되어 도 4b에 예시된 바와 같은 적응형 확장 블록(420)을 구성하게 된다.Similarly, when block 2 370 illustrated in FIG. 3B becomes a motion estimation target block, the left block 370-1 (that is, block 1 of FIG. 3B) and the upper block 370-3 of block 2 370 are used. ) Is determined to be a block having a high correlation with block 2 370 to form an adaptive extension block 420 as illustrated in FIG. 4B.

2) 움직임 벡터 산출 단계(S130) 2) motion vector calculating step (S130)

본 단계는 상기 적응형 확장 블록 결정 단계(S120)에서 결정된 적응형 확장 블록을 이용하여 연속된 프레임 간의 움직임 벡터를 산출하는 단계이다.This step is a step of calculating a motion vector between consecutive frames using the adaptive extension block determined in the adaptive extension block determination step (S120).

즉, 앞선 단계에서 결정된 적응형 확장 블록을 이용하여 탐색 영역에 대하여 최소의 SAD를 가지는 위치를 결정하고, 그 변위로부터 움직임 벡터(motion vector)를 산출한다.That is, the position having the smallest SAD with respect to the search area is determined using the adaptive expansion block determined in the previous step, and a motion vector is calculated from the displacement.

이후에, 움직임 벡터 산출 단계(S130)에서 산출된 움직임 벡터를 이용하여 블록들을 재배치시켜 보간 영상을 생성하는 단계(S140)가 실행되며 이에 대한 자세한 설명은 생략한다.Subsequently, a step (S140) of generating the interpolated image by rearranging the blocks by using the motion vector calculated in the motion vector calculation step S130 is performed, and a detailed description thereof will be omitted.

시뮬레이션 결과Simulation result

두 가지의 실험 영상에 대하여 각각, 종래 기술에서 설명된 일반적인 전역탐색 방법, 종래 기술에서 설명된 중첩 블록 기반의 움직임 추정 방법, 마지막으로 본 발명에 따른 움직임 추정 방법을 적용하였고 그 얻어진 결과값을 비교하여 검증하였다.For each of the two experimental images, the general global search method described in the prior art, the overlap block-based motion estimation method described in the prior art, and the motion estimation method according to the present invention were applied. It was verified by.

정확한 움직임 추정이 이루어졌는지에 대한 정성적인 판단은 상술된 각 방법으로 수행된 움직임 추정을 통하여 프레임 보간된 영상을 비교함으로써 검증하였다. Qualitative determination of whether accurate motion estimation was made was verified by comparing the frame interpolated images through the motion estimation performed by the above-described methods.

또한, 연산량에 대한 검증은 본 발명이 적용되었을 경우에 연산의 대상이 되 지 않는 블록의 개수와 전체 블록의 개수를 비교하는 것에 의하여 가능하다. In addition, verification of the amount of calculation is possible by comparing the number of blocks and the total number of blocks that are not subject to the calculation when the present invention is applied.

한편, 결과의 정량적인 평가는 각 결과 영상에 적용한 PSNR(Peak to Signal Noise Ratio) 값을 비교함으로써 수행되었다. PSNR 값은 입력된 영상의 픽셀과 연산 후의 모든 픽셀들에 대한 차이의 합을 의미한다. 그러나 PSNR은 영상 전체에 내포되어 있는 오차에 대한 결과이므로 시각적인 판단과 PSNR 값의 결과는 다를 수 있기 때문에 PSNR의 결과가 절대적인 수치는 아니다. PSNR 값이 높을수록 원영상에 가까운 결과로 판단할 수 있지만, 일반적으로 30dB 이상의 결과에 대하여 신뢰성 있는 영상으로 판단한다. 이용된 PSNR 식은 하기 수학식 3과 같다. On the other hand, the quantitative evaluation of the results was performed by comparing the Peak to Signal Noise Ratio (PSNR) value applied to each result image. The PSNR value means the sum of the differences between the pixels of the input image and all the pixels after the calculation. However, since PSNR is a result of the error contained in the whole image, the result of the visual judgment and the PSNR value may be different, so the result of PSNR is not an absolute value. The higher the PSNR value, the closer the result to the original image can be determined, but generally, the result is judged to be a reliable image for 30dB or more. The PSNR equation used is shown in Equation 3 below.

[수학식 3]&Quot; (3) "

Figure 112008011600167-pat00004
Figure 112008011600167-pat00004

여기에서, FS는 이미지의 사이즈, fn(x)는 원본 이미지의 픽셀 값, fi(x)는 보간된 이미지의 픽셀 값을 이미한다.Where FS is the size of the image, f n (x) is the pixel value of the original image, and f i (x) is the pixel value of the interpolated image.

1) 실험 영상 11) Experiment Video 1

도 5a 내지 도 5d는 실험 영상 1에 대한 시뮬레이션 결과를 설명하기 위한 영상 예시들이다. 5A through 5D are image examples for explaining a simulation result for the experimental image 1. Referring to FIG.

도 5a는 시뮬레이션에 이용된 실험 영상 1의 원 영상으로서 현재 프레임을 예시하고 있다. 도 5b 내지 도 5d는 각각 종래의 전역탐색 방법, 중첩블록기반 움직임 추정 방법, 본 발명에 따른 움직임 추정 방법을 이용한 경우에 현재 프레임과 직전 프레임을 이용하여 산출된 보간 영상을 예시한 것이다.FIG. 5A illustrates a current frame as an original image of experimental image 1 used in a simulation. 5B to 5D illustrate interpolation images calculated by using the current frame and the previous frame in the case of using the conventional global search method, the overlap block-based motion estimation method, and the motion estimation method according to the present invention, respectively.

실험 영상 1의 해상도는 640×352이고 기본 블록의 크기는 8×8, 탐색 영역은 16×16로 정하여 연속된 30 프레임에 대하여 시뮬레이션을 수행하였다. Experimental image 1 has a resolution of 640 × 352, basic block size of 8 × 8, and search area of 16 × 16.

먼저 정성적인 검증의 부분에서, 종래의 단순한 전역탐색방법(도 5b) 및 중첩 블록 기반 움직임 추정 방법(도 5c)에서는 사람의 움직임의 경계 부분(512, 513)과 사람의 머리카락 부분(511) 등에 대해서 잘못된 움직임 벡터가 산출되어 아티팩트(artifact)가 생성된 반면에 본 발명에 따른 움직임 추정 방법(도 5d)에서는 정확한 움직임 벡터가 산출되어 아티팩트가 존재하지 않음을 결과 영상으로부터 확인 가능하다.First, in the part of qualitative verification, in the conventional simple global search method (FIG. 5B) and the overlapping block-based motion estimation method (FIG. 5C), the boundary parts 512 and 513 of the human motion and the human hair part 511 and the like are used. In contrast, an incorrect motion vector is calculated and artifacts are generated, whereas in the motion estimation method (FIG. 5D) according to the present invention, an accurate motion vector is calculated and the artifact is not present.

하기 표 1은 상기 세 가지 방법에 의하여 만들어진 영상들을 구성하는 각각 세 개씩의 프레임에 대하여 산출된 평균 PSNR과 연산량을 정리한 것이다.Table 1 summarizes the average PSNR and the calculation amount calculated for each of three frames constituting the images produced by the three methods.

[표 1]TABLE 1

PSNR(dB)PSNR (dB) 연산량Calculation 1st 프레임1 st frame 2nd 프레임2 nd frame 3rd 프레임3 rd frame 평균PSNR(dB)Average PSNR (dB) 단순전역탐색방법Simple Global Search Method 41.47741.477 42.00342.003 41.62841.628 42.59742.597 100(ref)100 (ref) 중첩블록기반Nested Block Base 39.11339.113 40.11840.118 39.64639.646 40.65640.656 100100 본 발명Invention 41.04641.046 41.75241.752 41.28641.286 42.27842.278 46.6446.64

표 1을 참조하면, 본 발명에 따른 평균 PSNR은 42.278dB로서 중첩 블록 기반 움직임 추정에 비해서는 약 2dB 높은 수치이지만 단순 전역 탐색방법에 비해서는 0.3dB 낮은 결과임을 알 수 있다. 본 발명에 따른 방법을 이용한 영상은 중첩 블록 기반 움직임 추정에 비해서는 약 2dB 높은 평균 PSNR을 보이지만 기준이 되는 30dB보다는 높은 수치로서 충분히 신뢰성있는 보간 영상을 얻을 수 있음을 확인 가능하다.Referring to Table 1, the average PSNR according to the present invention is 42.278 dB, which is about 2 dB higher than the overlap block-based motion estimation, but 0.3 dB lower than the simple global search method. The image using the method according to the present invention shows an average PSNR of about 2 dB higher than the overlapping block-based motion estimation, but it can be confirmed that the interpolated image can be sufficiently reliable with a value higher than the reference 30 dB.

한편, 연산량의 관점에서는 종래 두가지 방법들이 모든 블록들에 대하여 움직임 추정을 수행하는 반면에 본 발명에서는 프레임 차이값을 기반으로 움직임 추정 대상 블록 수를 줄이는 것에 의하여 종래 방법들에 비하여 약 46.64%의 블록들에 대해서만 움직임 추정을 수행하여 약 53% 정도의 연산량 감소 효과가 있음을 알 수 있다.On the other hand, while the conventional two methods perform motion estimation for all the blocks in terms of the amount of computation, in the present invention, about 46.64% of the blocks are compared to the conventional methods by reducing the number of motion estimation target blocks based on the frame difference value. We can estimate the amount of computation reduction by about 53% by performing the motion estimation only for these fields.

2) 실험 영상 22) Experiment video 2

도 6a 내지 도 6d는 실험 영상 2에 대한 시뮬레이션 결과를 설명하기 위한 영상 예시들이다. 6A to 6D are examples of images for explaining a simulation result for experimental image 2. FIG.

도 6a는 시뮬레이션에 이용된 실험 영상 2의 원 영상으로서 현재 프레임을 예시하고 있다. 도 6b 내지 도 6d는 각각 종래의 전역탐생방법, 중첩블록기반 움직임 추정 방법, 본 발명에 따른 움직임 추정 방법을 이용한 경우에 현재 프레임과 직전 프레임을 이용하여 산출된 보간 영상을 예시한 것이다.FIG. 6A illustrates the current frame as the original image of Experimental Image 2 used for the simulation. 6B to 6D illustrate interpolation images calculated by using the current frame and the previous frame when the conventional global detection method, the superposition block-based motion estimation method, and the motion estimation method according to the present invention are used, respectively.

실험 영상 2의 해상도는 720×304이고 기본 블록의 크기는 8×8, 탐색 영역은 16×16로 정하여 연속된 30 프레임에 대하여 시뮬레이션을 수행하였다. 실험 영 상 2는 앞선 실험 영상 1과는 달리, 카메라의 움직임이 우측에서 좌측 방향으로 이동(panning)하고 동시에 사람이 이동하는 영상이라는 점에 특징이 있다.Experimental image 2 has a resolution of 720 × 304, a basic block size of 8 × 8, and a search area of 16 × 16. Experimental image 2, unlike the previous experimental image 1, is characterized in that the movement of the camera panning from the right to the left (panning) and at the same time a person moves.

하기 표 2는 상기 세가지 방법에 의하여 만들어진 영상들을 구성하는 각각 세 개의 프레임에 대하여 산출된 평균 PSNR과 연산량을 정리한 것이다.Table 2 summarizes the average PSNR and the calculation amount calculated for each of three frames constituting the images produced by the three methods.

[표 2]TABLE 2

PSNR(dB)PSNR (dB) 연산량Calculation 1st 프레임1 st frame 2nd 프레임2 nd frame 3rd 프레임3 rd frame 평균PSNR(dB)Average PSNR (dB) 단순전역탐색방법Simple Global Search Method 35.16735.167 35.14135.141 33.71833.718 34.67534.675 100(ref)100 (ref) 중첩블록기반Nested Block Base 31.63731.637 31.82131.821 30.66330.663 31.37331.373 100100 본 발명Invention 33.48833.488 33.51433.514 32.36832.368 33.12333.123 84.0584.05

실험영상 2에 대한 결과를 살펴보면, 제안된 방법의 평균 PSNR이 33.123dB이고 중첩 블록 움직임 추정이 31.373dB, 전역탐색법은 34.675dB의 PSNR을 보여준다. 제안된 방법으로 구한 영상의 PSNR이 기준 PSNR인 30dB보다 높기 때문에 신뢰성이 있는 영상으로 판단할 수 있다. 또한 도 6b 내지 도 6d에 대한 시각적인 비교 평가를 통하여 기존의 방법들보다 아티팩트들이 적은 것을 확인 할 수 있다.  The experimental results of Experiment 2 show that the average PSNR of the proposed method is 33.123dB, the overlapping block motion estimation is 31.373dB, and the global search method has a PSNR of 34.675dB. Since the PSNR of the image obtained by the proposed method is higher than the reference PSNR of 30dB, it can be determined as a reliable image. Also, visual comparisons of FIGS. 6B to 6D show that there are fewer artifacts than conventional methods.

실험 영상 2와 같이 카메라가 움직이는 영상의 경우에는 프레임의 차이값들이 평균적으로 커지게 되므로 움직임 추정의 대상이 되지 않는 블록들의 수는 실험 영상 1에 비하여 작아지게 된다. 그러나, 제안된 방법의 complexity는 84.05%로써 기존의 방법들보다 약 16%정도가 감소되었으며, 여전히 기존의 방법들에 비해서는 연산량의 우위가 유지됨을 알 수 있다. In the case of the moving image of the camera as shown in the experimental image 2, since the difference value of the frame increases on average, the number of blocks that are not subject to the motion estimation becomes smaller than the experimental image 1. However, the complexity of the proposed method is 84.05%, which is about 16% less than the existing methods, and it can be seen that the computational advantage is maintained over the existing methods.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

도 1a 및 도 1b는 프레임 보간에 의한 화면 끌림 현상 감소를 설명하기 위한 프레임 단위 픽셀값 변화를 보여주는 그래프이다.1A and 1B are graphs illustrating a change in pixel value of a frame to explain a reduction in screen drag caused by frame interpolation.

도 2는 본 발명에 따른 움직임 추정 방법을 설명하기 위한 순서도이다.2 is a flowchart illustrating a motion estimation method according to the present invention.

도 3a 및 도 3b는 본 발명에 따른 움직임 추정 방법에서 움직임 추정 블록 판단 단계의 처리를 예시하는 개념도이다.3A and 3B are conceptual views illustrating the processing of the motion estimation block determination step in the motion estimation method according to the present invention.

도 4a 및 도 4b는 본 발명에 따른 움직임 추정 방법에서 적응형 확장 블록의 구성예를 설명하기 위한 개념도이다.4A and 4B are conceptual views illustrating a configuration example of an adaptive extension block in the motion estimation method according to the present invention.

도 5a 내지 도 5d는 실험 영상 1에 대한 시뮬레이션 결과를 설명하기 위한 영상 예시들이다.5A through 5D are image examples for explaining a simulation result for the experimental image 1. Referring to FIG.

도 6a 내지 도 6d는 실험 영상 2에 대한 시뮬레이션 결과를 설명하기 위한 영상 예시들이다.6A to 6D are examples of images for explaining a simulation result for experimental image 2. FIG.

Claims (6)

프레임 보간을 위한 연속된 프레임 간의 움직임 추정을 수행하는 방법에 있어서,A method for performing motion estimation between consecutive frames for frame interpolation, 연속된 프레임간의 차이값을 이용하여 움직임 추정이 필요한 블록을 판단하는 움직임 추정 블록 판단 단계; A motion estimation block determination step of determining a block requiring motion estimation using a difference value between successive frames; 상기 움직임 추정이 필요한 블록 주위의 블록들 중에서 블록에 포함된 픽셀들의 프레임간 차이값 총합이 소정의 임계치보다 큰 블록들을 상기 움직임 추정이 필요한 블록과 결합하여 적응형 확장 블록을 결정하는 적응형 확장 블록 결정 단계; 및Adaptive expansion block that determines an adaptive expansion block by combining blocks having a motion threshold that is greater than a predetermined threshold sum of interframe difference values of pixels included in the block around the block requiring motion estimation with the block requiring motion estimation. Determining step; And 상기 적응형 확장 블록을 이용하여 연속된 프레임 간의 움직임 벡터를 산출하는 움직임 벡터 산출 단계를 포함한 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법.And a motion vector calculating step of calculating a motion vector between successive frames by using the adaptive extension block. 제 1 항에 있어서,The method of claim 1, 상기 움직임 추정 블록 판단 단계에서,In the motion estimation block determination step, 상기 연속된 프레임간의 차이값은 하기 수학식을 이용하여 구해지는 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법.The frame difference-based adaptive extended block motion estimation method of calculating the difference value between the consecutive frames is calculated using the following equation.
Figure 112008011600167-pat00005
Figure 112008011600167-pat00005
(여기에서, f(x,t)는 현재 프레임의 픽셀 값을 의미하고, f(x,t-1)는 직전 프레임의 픽셀 값을 의미하며, FD(x,t)는 x번째 픽셀의 t번째 프레임과 t-1 번째 프레임 간 차이값을 의미함)Where f (x, t) is the pixel value of the current frame, f (x, t-1) is the pixel value of the previous frame, and FD (x, t) is the t of the xth pixel. The difference between the 1 st frame and the t-1 th frame)
제 1 항에 있어서,The method of claim 1, 상기 움직임 추정 블록 판단 단계에서, 상기 움직임 추정이 필요한 블록을 판단하는 것은 하나의 블록에 포함된 픽셀들의 프레임간 차이값 총합이 소정의 임계치보다 큰 경우에 상기 하나의 블록을 움직임 추정이 필요한 블록으로 판단하는 것을 특징으로 하는 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법.In the step of determining the motion estimation block, the determining of the block requiring motion estimation may include converting the one block into a block requiring motion estimation when the total difference value between the frames of the pixels included in the one block is greater than a predetermined threshold. The frame difference based adaptive extended block motion estimation method, characterized in that the determination. 제 3 항에 있어서,  The method of claim 3, wherein 상기 움직임 추정이 필요한 블록을 판단하는 것은 하기 수학식을 이용하여 이루어지는 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법.The frame difference-based adaptive extended block motion estimation method of determining a block requiring motion estimation is performed by using the following equation.
Figure 112008011600167-pat00006
Figure 112008011600167-pat00006
(여기에서,
Figure 112008011600167-pat00007
는 소정의 임계값을 의미하고, i는 해당 블록을 지정하는 첫번째 픽셀의 번호를 의미하며, FD(x,t)는 i+x번째 픽셀의 t번째 프레임과 t-1 번째 프레임 간 차이값을 의미하며, FDB(i,t)i블록에 포함된 픽셀들의 t번째 프레임과 t-1번째 프레임간 차이값의 총합을 의미함)
(From here,
Figure 112008011600167-pat00007
Denotes a predetermined threshold, i denotes the number of the first pixel designating the block, and FD (x, t) denotes the difference between the t-th frame and the t-1th frame of the i + x-th pixel. FDB (i, t) means the sum of the difference values between the t th frame and the t-1 th frame of the pixels included in the i block.)
삭제delete 제 1 항에 있어서,The method of claim 1, 상기 주위의 블록들은 상기 움직임 추정이 필요한 블록에 인접한 상,하,좌,우 블록들을 포함한 것을 특징으로 하는 프레임 차이 기반 적응형 확장 블록 움직임 추정 방법.And the neighboring blocks include up, down, left, and right blocks adjacent to the block requiring the motion estimation.
KR1020080014109A 2008-02-15 2008-02-15 Method of motion estimation by using adaptive expanded block based on frame-difference KR100961456B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080014109A KR100961456B1 (en) 2008-02-15 2008-02-15 Method of motion estimation by using adaptive expanded block based on frame-difference

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080014109A KR100961456B1 (en) 2008-02-15 2008-02-15 Method of motion estimation by using adaptive expanded block based on frame-difference

Publications (2)

Publication Number Publication Date
KR20090088689A KR20090088689A (en) 2009-08-20
KR100961456B1 true KR100961456B1 (en) 2010-06-08

Family

ID=41207249

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080014109A KR100961456B1 (en) 2008-02-15 2008-02-15 Method of motion estimation by using adaptive expanded block based on frame-difference

Country Status (1)

Country Link
KR (1) KR100961456B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105682050B (en) * 2014-11-21 2019-04-05 普天信息技术有限公司 MBMS data transmission method, broadcast/multicast service central apparatus and base station
KR102337829B1 (en) * 2015-09-25 2021-12-10 엘지디스플레이 주식회사 Method for logo detection and display device using thereof

Also Published As

Publication number Publication date
KR20090088689A (en) 2009-08-20

Similar Documents

Publication Publication Date Title
JP4997281B2 (en) Method for determining estimated motion vector in image, computer program, and display device
US7899122B2 (en) Method, apparatus and computer program product for generating interpolation frame
KR100393066B1 (en) Apparatus and method for adaptive motion compensated de-interlacing video data using adaptive compensated olation and method thereof
US9036082B2 (en) Method, apparatus, and system for line-based motion compensation in video image data
US7936950B2 (en) Apparatus for creating interpolation frame
KR100870115B1 (en) Method for forming image using block matching and motion compensated interpolation
KR101761928B1 (en) Blur measurement in a block-based compressed image
JP2006350334A (en) Method and system for compensating perceptible blurring due to movement between current frames and former frame of digital video sequence
US20110007968A1 (en) Image evaluation method, image evaluation system and program
JP2004343715A (en) Frame interpolating method at frame rate conversion and apparatus thereof
US8774276B2 (en) Image processing method for determining motion vectors of interpolated picture and related apparatus
KR20080033094A (en) Interpolation method for a motion compensated image and device for the implementation of said method
KR100914619B1 (en) Spatio-temporal adaptive video de-interlacing
JP5927051B2 (en) Image processing apparatus, image processing method, and program
KR100961456B1 (en) Method of motion estimation by using adaptive expanded block based on frame-difference
KR20060091053A (en) Device and method for pre-processing before encoding of a video sequence
JP5197374B2 (en) Motion estimation
AU2004200237B2 (en) Image processing apparatus with frame-rate conversion and method thereof
CN111294545B (en) Image data interpolation method and device, storage medium and terminal
JP5059855B2 (en) Global motion estimation method
KR20030082249A (en) Motion adaptive spatial-temporal deinterlacing method
JP5927053B2 (en) Image processing apparatus, image processing method, and program
JPH08242454A (en) Method for detecting global motion parameter
KR100949137B1 (en) Apparatus for video interpolation, method thereof and computer recordable medium storing the method
JP4354799B2 (en) Interpolated image generation method and apparatus

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130410

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140401

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150421

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161118

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170523

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee