KR101253917B1 - Apparatus and method for estimating of motion in a moving picture - Google Patents

Apparatus and method for estimating of motion in a moving picture Download PDF

Info

Publication number
KR101253917B1
KR101253917B1 KR1020110070427A KR20110070427A KR101253917B1 KR 101253917 B1 KR101253917 B1 KR 101253917B1 KR 1020110070427 A KR1020110070427 A KR 1020110070427A KR 20110070427 A KR20110070427 A KR 20110070427A KR 101253917 B1 KR101253917 B1 KR 101253917B1
Authority
KR
South Korea
Prior art keywords
image frame
estimating
density function
probability density
motion vector
Prior art date
Application number
KR1020110070427A
Other languages
Korean (ko)
Other versions
KR20130009372A (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 KR1020110070427A priority Critical patent/KR101253917B1/en
Publication of KR20130009372A publication Critical patent/KR20130009372A/en
Application granted granted Critical
Publication of KR101253917B1 publication Critical patent/KR101253917B1/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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
    • H04N19/513Processing of motion vectors

Abstract

본 발명은 움직임 추정 장치 및 그 방법에 관한 것으로, 본 발명의 일 실시예에 따른 움직임 추정 장치는, 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 확률 밀도 함수 추정부와, 상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 탐색 위치 설정부와, 상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 움직임 벡터 추정부를 포함한다. 이와 같은 본 발명에 따르면 움직임 벡터가 어떤 값을 갖을 확률이 높은지를 나타내는 확률 밀도 함수를 추정한 후에 확률이 높은 위치만을 탐색함으로써 보다 빠르게 움직임 벡터를 추정할 수 있다.The present invention relates to a motion estimation apparatus and a method thereof, wherein a motion estimation apparatus according to an embodiment of the present invention blocks a plurality of image frames, and includes a macroblock included in a first image frame as a reference image frame and the first image frame. A probability density function estimator for estimating a probability density function of a motion vector representing a difference between macroblocks included in a second image frame that is an image frame after one image frame, and the probability density function is preset in the first image frame And a search position setting unit for setting a position having a value greater than a threshold as a search position, and a motion vector estimator for estimating the motion vector at the set search position. According to the present invention, after estimating a probability density function indicating which value the motion vector has a high probability, the motion vector can be estimated more quickly by searching only a high probability position.

Description

움직임 추정 장치 및 그 방법{APPARATUS AND METHOD FOR ESTIMATING OF MOTION IN A MOVING PICTURE}A motion estimation device and its method {APPARATUS AND METHOD FOR ESTIMATING OF MOTION IN A MOVING PICTURE}

본 발명은 움직임 추정 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 주어진 영상으로부터 움직임 벡터의 확률 밀도 함수를 추정하고, 이를 이용하여 움직임 벡터를 빠르게 찾을 수 있는 움직임 추정 장치 및 추정 방법에 관한 것이다.The present invention relates to a motion estimation apparatus and a method thereof, and more particularly, to a motion estimation apparatus and estimation method for estimating a probability density function of a motion vector from a given image, and quickly finding the motion vector using the same.

화상 회의, 고화질 텔레비전, 주문형 비디오(Video On Demand, VOD) 수신기, MPEG(Moving Picture Experts Group) 영상을 지원하는 개인용 컴퓨터, 게임기, 지상파 디지털 방송 수신기, 디지털 위성 방송 수신기 및 케이블 텔레비전에서 사용되는 동영상 데이터는 아날로그 신호를 디지털화하는 과정에서 데이터의 양이 크게 늘어나기 때문에 적절한 압축 방식을 통하여 압축된다. 동영상은 다수의 프레임들로 구성되고, 영상 신호의 특성상 이웃하는 프레임 간 또는 동일 프레임 내의 이웃하는 블록 또는 화소 간에는 서로 유사성이 존재한다. 이와 같은 영상 신호의 유사성을 이용하여 영상을 예측 부호화하여 고효율의 영상 신호 압축이 수행된다.Video data used in video conferencing, high-definition television, Video On Demand (VOD) receivers, personal computers that support Moving Picture Experts Group (MPEG) video, game consoles, terrestrial digital broadcast receivers, digital satellite broadcast receivers, and cable television Since the amount of data is greatly increased in the process of digitizing the analog signal, it is compressed through an appropriate compression method. A video is composed of a plurality of frames, and similarities exist between neighboring frames or between neighboring blocks or pixels within the same frame due to characteristics of an image signal. The video signal compression is performed with high efficiency by predictively encoding the video using the similarity of the video signals.

일반적으로 영상 데이터의 압축 방법은 크게 세 가지 종류로 구분할 수 있는데, 시간적인 중복성(temporal redundancy)을 줄이는 방법, 공간적인 중복성(spatial redundancy)를 줄이는 방법, 발생 부호의 통계적 특성을 이용하여 줄이는 방법이 이에 속한다. 이 중 시간적인 중복성을 줄이는 방법 중에서 움직임 추정 및 보상 방법이 MPEG, H.263 등 대부분의 동영상 압축 표준안에서 채택되고 있다. 움직임 추정 방법은 동영상 부호화에서 시간적 중복성을 제거하여 비트율(bit rate)을 줄이는데 큰 역할을 하며, 이에는 화소 단위의 정합 기법과 블록 단위의 정합 기법이 있으며, 움직임은 대블록 단위로 표현하기 때문에 블록 단위의 추정 방법이 널리 사용되고 있다.In general, there are three types of compression methods for image data, namely, a method of reducing temporal redundancy, a method of reducing spatial redundancy, and a method of reducing data using statistical characteristics of generated codes. It belongs to this. Among the methods of reducing temporal redundancy, motion estimation and compensation methods are adopted in most video compression standards such as MPEG and H.263. The motion estimation method plays a big role in reducing bit rate by eliminating temporal redundancy in video encoding, which includes pixel matching and block matching, and because motion is expressed in large blocks Unit estimation methods are widely used.

블록 단위의 추정 방법은 영상을 일정한 크기의 블록으로 분할하고 이전 영상의 탐색 영역 내에서 현재 영상의 블록과 가장 잘 정합되는 블록을 찾는 방법으로써, 현재 블록과 탐색된 블록과의 차이인 움직임 벡터를 계산하고 이를 부호화하여 움직임 추정이 이루어진다. 두 블록 간의 정합 계산은 여러 가지 정합함수들이 사용될 수 있는데, 가장 일반적으로 사용되는 것은 두 블록 간 화소들 차의 절대값을 모두 합한 값인 SAD(Sum of Absolute Difference)이다. H.264 방식의 동영상 부호화 장치는 기존의 SAD 위주의 탐색 방법 대신에 율-왜곡최적화(rate-distortion optimization)에 기반한 코스트 함수를 이용한다.The block-based estimation method divides an image into blocks of a certain size and finds a block that best matches the block of the current image in the search region of the previous image. The motion estimation is done by calculating and coding it. Various matching functions may be used to calculate a match between two blocks. The most commonly used function is sum of absolute difference (SAD), which is a sum of absolute values of differences between pixels between two blocks. An H.264 video encoding apparatus uses a cost function based on rate-distortion optimization instead of the conventional SAD-oriented search method.

특히, H.264 방식에서는 압출 효율과 높은 화질을 동시에 얻기 위하여, 기존의 동영상 부호화에서는 16×16 대블록 혹은 8×8 대블록 단위로 부호화를 수행한 것과 달리, 모두 8가지의 서로 다른 블록화 모드를 가지고 있으며, 각각의 블록 중에서 최소값을 가지는 모드를 선택하도록 구성되어 있다. 따라서, 다양한 크기의 가변 블록 기반 움직임 추정(variable block-based motion estimation)을 통하여 부화화 효율에 있어 많은 이득을 제공한다. 또한, H.264 방식은 1/4 화소 단위의 움직임 벡터 예측을 수행하여 더욱 정확한 움직임 추정으로 부호화 효율을 향상시킬 수 있다.In particular, in order to simultaneously obtain extrusion efficiency and high image quality in the H.264 method, in contrast to the conventional video encoding, encoding is performed in units of 16 × 16 large blocks or 8 × 8 large blocks. It is configured to select a mode having the minimum value among each block. Therefore, a large gain in hatching efficiency is provided through variable block-based motion estimation of various sizes. In addition, the H.264 method may improve the coding efficiency by performing motion vector prediction on a quarter pixel basis with more accurate motion estimation.

그러나 다른 부호화 방식과 비교하여 1/4 화소 탐색을 이용할 경우에는 부호화 효율을 향상시킬 수 있는 반면, 최소 16배나 많은 움직임 추정 연산을 수행하여야 하며, 이것은 H.264 비디오 부호화에서 속도 저하의 중요한 요소이다. 따라서, 동양상의 부호화 시간이 가장 많이 소요되는 움직임 추정 시간을 줄이는 노력이 계속되고 있다.However, when using 1/4 pixel search compared to other coding schemes, coding efficiency can be improved, but at least 16 times as many motion estimation operations must be performed, which is an important factor of speed reduction in H.264 video coding. . Therefore, efforts have been made to reduce the motion estimation time, which takes the longest encoding time.

또한, 움직임 추정은 동영상 압축 이외에도 동영상의 프레임 레이트를 변환하는 경우에도 이용된다. 연속되는 두 장의 영상 사이의 움직임을 추정한 후, 추정된 움직임을 보상하여 두 장 사이의 영상을 만들어 낼 수 있다. 예를 들어, 1초당 60장의 영상으로 구성된 영상을 입력으로 받을 때, 만들어진 영상을 삽입하면 1초당 120장의 영상으로 구성된 동영상을 출력할 수 있다. 프레임 레이트 변환에 움직임 추정 및 보상 기법을 적용하려면, 추정된 움직임 벡터가 실제 물체의 움직임을 나타내고 있어야 한다. 영상 압축에 사용되는 움직임 추정 방법은 움직임 보상 후 남은 에러가 최소화되는 것을 목적으로 하기 때문에, 추정된 움직임 벡터가 실제 물체의 움직임을 나타내지 못하는 경우가 많다. 따라서, 실제 물체의 움직임을 나타내는 움직임 벡터를 추정하는 노력이 계속되고 있다.In addition to motion picture compression, motion estimation is also used to convert the frame rate of a video. After estimating the motion between two consecutive images, the estimated motion can be compensated to produce an image between the two images. For example, when receiving an image composed of 60 images per second as an input, inserting the created image may output a video composed of 120 images per second. In order to apply the motion estimation and compensation technique to the frame rate conversion, the estimated motion vector must represent the motion of the real object. Since the motion estimation method used for image compression is intended to minimize the error remaining after motion compensation, the estimated motion vector often does not represent the motion of an actual object. Thus, efforts have been made to estimate motion vectors representing the motion of real objects.

본 발명이 해결하고자 하는 과제는 실제 물체의 움직임을 나타내는 움직임 벡터를 빠르게 추정하는 움직임 추정 장치 및 그 방법을 제공하는 것이다.It is an object of the present invention to provide a motion estimation apparatus and method for rapidly estimating a motion vector representing a motion of a real object.

본 발명의 일 실시예에 따른 움직임 추정 장치는, 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 확률 밀도 함수 추정부와, 상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 탐색 위치 설정부와, 상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 움직임 벡터 추정부를 포함한다.According to an embodiment of the present invention, a motion estimation apparatus blocks a plurality of image frames to include a macroblock included in a first image frame, which is a reference image frame, and a second image frame, which is an image frame after the first image frame. A probability density function estimator for estimating a probability density function of a motion vector indicating a difference between included macroblocks, and setting a position having a value greater than a predetermined threshold in the first image frame as a search position A search position setting unit and a motion vector estimating unit estimating the motion vector at the set search position.

또한, 상기 확률 밀도 함수 추정부는 상기 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 관측값으로 갖는 파티클 필터를 이용하여 상기 관측값에 따른 상기 상태 변수의 확률 밀도 함수를 추정할 수 있다.In addition, the probability density function estimating unit uses the motion vector of the second image frame as a state variable, and has a difference between the macroblock included in the first image frame and the macroblock included in the second image frame as an observation value. A particle filter may be used to estimate the probability density function of the state variable according to the observation value.

또한, 상기 확률 밀도 함수 추정부는 상기 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 상기 마크로 블록의 움직임은 상기 마크로 블록에 이웃하는 마크로 블록들에 의존하여 상기 확률 밀도 함수를 추정할 수 있다.The probability density function estimator may estimate the probability density function based on the macroblocks adjacent to the macroblocks when the macroblocks are smaller than the moving object.

또한, 상기 확률 밀도 함수 추정부는 상기 상태 변수와 가중치를 포함하는 파티클을 초기화하는 파티클 초기화부와, 상기 상태 변수를 업데이트하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 상기 관측값으로 계산하고, 상기 마크로 블록 간의 거리의 유사성을 계산하여, 상기 가중치를 증가시켜 상기 파티클을 필터링하는 파티클 필터링부와, 상기 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은 경우, 상기 파티클을 리샘플링하는 파티클 리샘플링부를 포함할 수 있다.The probability density function estimator may further include a particle initializer for initializing particles including the state variable and a weight, and update the state variable and include the macroblock included in the first image frame and the second image frame. A particle filtering unit for calculating the distance between the macroblocks to be used as the observation value, calculating the similarity of the distances between the macroblocks, and increasing the weight to filter the particles, and a reference value in which the similarity level of the filtered particles is preset If higher, it may include a particle resampling unit for resampling the particles.

또한, 상기 탐색 위치 설정부는 상기 확률 밀도 함수가 상기 임계치보다 큰 값을 가지는 상태 변수를 계산하여, 상기 탐색 위치로 설정할 수 있다.In addition, the search position setting unit may calculate a state variable having a value greater than the threshold value of the probability density function and set the search position.

또한, 상기 움직임 벡터 추정부는 상기 제1 영상 프레임의 마크로 블록 중 상기 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 상기 결정된 마크로 블록과 상기 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값을 이용하여 움직임 벡터를 추정할 수 있다.The motion vector estimating unit may determine a macro block that is determined to move according to the state variable among macro blocks of the first image frame, and determines a difference between pixels between the determined macro block and the macro block of the second image frame. The motion vector can be estimated using the sum of the absolute values.

본 발명의 다른 실시예에 따른 움직임 추정 방법은 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 단계와, 상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정하는 단계와, 상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 단계를 포함한다.According to another exemplary embodiment of the present invention, a motion estimation method blocks a plurality of image frames and includes them in a macro block included in a first image frame, which is a reference image frame, and in a second image frame, which is an image frame after the first image frame. Estimating a probability density function of a motion vector indicating a difference between macroblocks to be used, setting a position having a value greater than a predetermined threshold value in the first image frame as a search position, and setting the search position; Estimating the motion vector at the search position.

이와 같은 본 발명에 따르면 움직임 벡터가 어떤 값을 갖을 확률이 높은지를 나타내는 확률 밀도 함수를 추정한 후에 확률이 높은 위치만을 탐색함으로써 보다 빠르게 움직임 벡터를 추정할 수 있다. 또한, 확률 밀도 함수가 움직임 벡터가 실제 어떤 값을 갖는 확률을 나타냄으로써 움직임 보상 후 에러를 최소화하는 움직임 추정 방식에 비해 실제 움직임에 가까운 움직임 벡터를 추정할 수 있다.According to the present invention, after estimating a probability density function indicating which value the motion vector has a high probability, the motion vector can be estimated more quickly by searching only a high probability position. In addition, since the probability density function represents a probability that the motion vector has a certain value, the motion vector closer to the actual motion can be estimated than the motion estimation method of minimizing the error after the motion compensation.

도 1은 본 발명의 일 실시예에 따른 움직임 추정 장치의 구성도,
도 2는 도 1에 따른 움직임 추정 방법의 흐름도,
도 3은 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정 단계의 구체적인 흐름도,
도 4는 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정을 설명하기 위한 예시도이다.
1 is a block diagram of a motion estimation apparatus according to an embodiment of the present invention;
2 is a flowchart of a motion estimation method according to FIG. 1;
3 is a detailed flowchart of a probability density function estimating step of the motion estimation method according to FIG. 2;
4 is an exemplary diagram for describing a probability density function estimation in the motion estimation method according to FIG. 2.

이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세하게 설명한다. 사용되는 용어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 사용자, 운용자의 의도 또는 판례 등에 따라 달라질 수 있다. 그러므로 후술하는 실시예들에서 사용된 용어의 의미는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The terms used are terms selected in consideration of the functions in the embodiments, and the meaning of the terms may vary depending on the user, the intention or the precedent of the operator, and the like. Therefore, the meaning of the terms used in the following embodiments is defined according to the definition when specifically defined in this specification, and unless otherwise defined, it should be interpreted in a sense generally recognized by those skilled in the art.

도 1은 본 발명의 일 실시예에 따른 움직임 추정 장치의 구성도이고, 도 2는 도 1에 따른 움직임 추정 방법의 흐름도이다.1 is a block diagram of a motion estimation apparatus according to an embodiment of the present invention, and FIG. 2 is a flowchart of a motion estimation method according to FIG. 1.

도 1을 참조하면, 움직임 추정 장치(100)는 확률 밀도 함수 추정부(110), 탐색 위치 설정부(120), 움직임 벡터 추정부(130)를 포함한다. 또한, 확률 밀도 함수 추정부(110)는 구체적으로 파티클 초기화부(111), 파티클 필터링부(112), 파티클 리샘플링부(113)를 포함한다. 확률 밀도 함수 추정부(110)는 복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록(macro block)과 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정한다(S210). 각 영상 프레임은 수 개의 마크로 블록으로 분할되며, 제1 영상 프레임은 사용자 설정에 따른 기준 영상 프레임이며, 제2 영상 프레임은 현재의 영상 프레임이다.Referring to FIG. 1, the motion estimation apparatus 100 includes a probability density function estimator 110, a search position setting unit 120, and a motion vector estimator 130. In addition, the probability density function estimator 110 specifically includes a particle initializer 111, a particle filter 112, and a particle resampling unit 113. The probability density function estimator 110 blocks a plurality of image frames and includes them in a macro block included in the first image frame, which is a reference image frame, and in a second image frame, which is an image frame after the first image frame. The probability density function of the motion vector representing the difference between the macroblocks is estimated (S210). Each image frame is divided into several macro blocks, a first image frame is a reference image frame according to a user setting, and a second image frame is a current image frame.

영상 시퀀스는 f(i, j, t)로 정의할 수 있는데, i는 수직 인덱스, j는 수평 인덱스, t는 시간 인덱스를 나타낸다. 특정 시간에서 영상 프레임의 크기는 [I×J]로 나타낼 수 있으며, 움직임 추정에 사용되는 마크로 블록의 크기를 [bi×bj]라고 하면, 해당 영상은 [M×N]개의 마크로 블록으로 나눌 수 있다. 이 경우, M=1/bi , N=1/bj 이며, 현재 움직임을 추정하고자 하는 마크로 블록의 인덱스를 k라고 하면, 시공간 인덱스와 블록 인덱스 사이에는 다음의 수학식 1과 같은 관계가 형성된다.The image sequence may be defined as f (i, j, t), i is a vertical index, j is a horizontal index, and t is a time index. The size of an image frame at a specific time may be represented by [I × J]. If the size of a macro block used for motion estimation is [b i × b j ], the image is converted into [M × N] macro blocks. Can be divided. In this case, when M = 1 / b i and N = 1 / b j , and the index of the macro block for which the current motion is to be estimated is k, a relationship is formed between the space-time index and the block index as shown in Equation 1 below. do.

Figure 112011054562761-pat00001
Figure 112011054562761-pat00001

또한, 확률 밀도 함수 추정부(110)는 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 제1 영상 프레임에 포함되는 마크로 블록과 제2 영상 프레임에 포함되는 마크로 블록 간의 차이를 관측값(measure)으로 갖는 파티클 필터(Particle filter)를 이용하여 관측값에 따른 상태 변수의 확률 밀도 함수를 추정할 수 있다. 마크로 블록의 움직임을 나타내는 상태 변수를 xk라고 하면, 이동 움직임 모델을 이용할 경우 상태 변수 xk는 (vi, vj)로 나타낼 수 있으며, 이 경우 vi는 수직 방향의 움직임, vj는 수평 방향의 움직임을 나타낸다. 또한, 마크로 블록의 움직임을 어파인 움직임 모델(Affine Model)을 이용할 경우 상태 변수 xk는 (vi, vj, ri, rj, θ)로 나타낼 수 있으며, 어파인 모델은 변환 후 위치(i', j')와 변환 전 위치(i, j)가 다음의 수학식 2와 같은 관계가 형성된다.In addition, the probability density function estimator 110 uses the motion vector of the second image frame as a state variable, and measures the difference between the macroblock included in the first image frame and the macroblock included in the second image frame. We can estimate the probability density function of the state variable according to the observation value by using the particle filter with. If the state variable representing the movement of the macroblock is x k , the state variable x k can be represented by (v i , v j ) when the moving motion model is used, in which case v i is the vertical movement and v j is Indicates the movement in the horizontal direction. In addition, when using the affine model, the state variable x k can be expressed as (v i , v j , r i , r j , θ), and the affine model is located after the transformation. (i ', j') and the position before conversion (i, j) are formed as shown in the following equation (2).

Figure 112011054562761-pat00002
Figure 112011054562761-pat00002

현재 영상 프레임인 제2 영상 프레임 f(i, j, t)에서 (m, n)번째 마크로 블록과 기준 영상 프레임인 제1 영상 프레임 f(i, j, t-1)의 마크로 블록 사이의 거리는 상태 변수에 의해서 다음의 수학식 3과 같이 나타낼 수 있다.The distance between the (m, n) macroblock in the second image frame f (i, j, t) that is the current image frame and the macroblock of the first image frame f (i, j, t-1) that is the reference image frame The state variable can be expressed as in Equation 3 below.

Figure 112011054562761-pat00003
Figure 112011054562761-pat00003

수학식 3에서, ik=(m-1)bi이고, jk=(n-1)bj이고, ik, jk는 제2 영상 프레임의 마크로 블록의 인덱스를 나타낸다. 또한, (i', j')와 (i, j)는 수학식 2와 같은 움직임 모델에 의해 연관된다. In Equation 3, i k = (m−1) b i , j k = (n−1) b j , and i k , j k represent indexes of macro blocks of the second image frame. Also, (i ', j') and (i, j) are related by a motion model such as Equation (2).

Figure 112011054562761-pat00004
Figure 112011054562761-pat00004

수학식 4에서, B는 하나의 마크로 블록 내의 인덱스들의 집합이다. (i', j')가 정수가 아닐 때에는 쌍일차 방정식(bilinear)을 이용한 보간을 이용하여 픽셀 값을 찾는다. 움직임 벡터를 포함한 상태함수 xk가 수학식 5와 같이 진행(evolve)되고, 그에 따른 관측값(measure) zk가 수학식 6과 같이 표현된다.In Equation 4, B is a set of indices in one macro block. When (i ', j') is not an integer, the pixel value is found by interpolation using a bilinear equation. The state function x k including the motion vector is evolved as shown in Equation 5, and thus the observation z k is expressed as shown in Equation 6.

Figure 112011054562761-pat00005
Figure 112011054562761-pat00005

Figure 112011054562761-pat00006
Figure 112011054562761-pat00006

수학식 5, 수학식 6에서 G와 H는 비선형 함수이고, vk, nk는 각각 프로세스 노이즈와 관측 노이즈다. 마크로 블록 인덱스 k까지의 관측치 z1 :k가 주어졌을 경우, 상태 변수의 값의 조건부 확률은 p(xk│z1 :k)가 된다.In Equations 5 and 6, G and H are nonlinear functions, and v k and n k are process noise and observation noise, respectively. Given the observation z 1 : k up to the macroblock index k, the conditional probability of the value of the state variable is p (x k | z 1 : k ).

본 발명의 또 다른 실시예에 따르면 확률 밀도 함수 추정부(110)는 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 마크로 블록의 움직임은 이웃하는 마크로 블록들에 의존하여 확률 밀도 함수를 추정할 수 있다. 제2 영상 프레임에서의 마크로 블록의 움직임은 인접하는 마크로 블록들의 움직임과 유사하다고 가정하고, 대상 마크로 블록의 상태는 인접하는 마크로 블록들에 의존하여 모델링된다. 이 경우, 확률 밀도 함수는 다음의 수학식 7과 같이 나타낼 수 있다.According to another embodiment of the present invention, when the size of the macro block is smaller than the moving object, the probability density function estimator 110 may estimate the probability density function based on neighboring macro blocks. have. It is assumed that the movement of the macro block in the second image frame is similar to the movement of adjacent macro blocks, and the state of the target macro block is modeled depending on the adjacent macro blocks. In this case, the probability density function may be expressed as Equation 7 below.

Figure 112011054562761-pat00007
Figure 112011054562761-pat00007

수학식 7에서 πc는 혼합 확률(mixing probability)이고, N(xk;xcc 2)은 평균 xc와 분산 σc 2의 정규 분포 함수를 나타낸다. 혼합 확률 πc와 분산 σc 2은 모든 혼합 밀도에 대하여 상수로 설정된다. C(k)는 k 번째 마크로 블록의 시공간상 주변의 마크로 블록의 인덱스로 구성된 집합으로, 이는 다음의 수학식 8과 같이 나타낼 수 있다.In Equation 7, π c is a mixing probability, and N (x k ; x c , σ c 2 ) represents a normal distribution function of mean x c and variance σ c 2 . The mixing probabilities π c and variance σ c 2 are set constant for all mixing densities. C (k) is a set composed of indexes of macro blocks around space-time in the k-th macro block, which can be expressed by Equation 8 below.

Figure 112011054562761-pat00008
Figure 112011054562761-pat00008

상태 변수 모델은 다음의 수학식 9와 같이 나타낼 수 있다.The state variable model may be expressed as Equation 9 below.

Figure 112011054562761-pat00009
Figure 112011054562761-pat00009

수학식 9에서 γ는 집합 C의 원소의 개수와 같은 수의 면을 갖는 동전 던지기(coin toss) 알고리즘을 이용한 결과이다. 또한, 비선형 함수 g(X1 :k-1;γ)는 다음의 수학식 10과 같이 동전 던지기 γ의 결과에 기인하여 이웃하는 상태들 중 하나를 선택한다.In Equation 9, γ is a result of using a coin toss algorithm having the same number of planes as the number of elements of the set C. Also, the nonlinear function g (X 1 : k-1 ; γ) selects one of the neighboring states due to the result of the coin throwing γ as shown in Equation 10 below.

Figure 112011054562761-pat00010
Figure 112011054562761-pat00010

한편, 파티클 필터는 영상 프레임으로부터 마크로 블록의 위치 및 방향각에 따른 예측치를 가진 복수개의 샘플을 추출하고, 각 샘플이 실제 마크로 블록의 위치 및 방향각을 가질 확률을 이용하여 최적의 마크로 블록의 위치를 추정한다. 이 경우, 조건부 확률 p(xk│z1 :k)은 다음의 수학식 11과 수학식 12를 반복적으로 이용하여 추정할 수 있다.Meanwhile, the particle filter extracts a plurality of samples having prediction values according to the position and the direction angle of the macro block from the image frame, and uses the probability that each sample has the position and the direction angle of the macro block, thereby optimizing the position of the macro block. Estimate In this case, the conditional probability p (x k | z 1 : k ) can be estimated by using the following Equations 11 and 12 repeatedly.

Figure 112011054562761-pat00011
Figure 112011054562761-pat00011

Figure 112011054562761-pat00012
Figure 112011054562761-pat00012

이하, 확률 밀도 함수 추정부(110)에서 파티클 필터(Particle filter)를 이용하여 관측값에 따른 상태 변수의 확률 밀도 함수를 추정하는 것과 관련하여 도 3을 참조하여 설명하도록 한다.
Hereinafter, the probability density function estimation unit 110 will be described with reference to FIG. 3 with respect to estimating the probability density function of the state variable according to the observation value using the particle filter.

도 3은 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정 단계의 구체적인 흐름도이다.3 is a detailed flowchart of a probability density function estimating step of the motion estimation method according to FIG. 2.

도 3을 참조하면, 먼저 파티클 초기화부(111)는 상태 변수와 가중치를 포함하는 파티클을 초기화한다(S310). 파티클 초기화부(111)는 파티클(S)에 연관되는 초기 가중치(w0 2)와 상태 변수(x0 2)를 초기화한다. 상태 변수의 각 요소의 초기값은 탐색 위치에서 균일하게 분포된다. 따라서, 파티클들은 초기에 탐색 영역에서 균일하게 분포된다. 초기 가중치(w0 2)는 1/S로 설정되고, 초기 상태 변수(x0 2)는 [w1, w2 ,…, wL]T로 설정된다. 이 경우, xi는 Rl×U(-1, 1)로부터 설정되며, U(a, b)는 [a, b]의 균일 분포를 나타내며, Rl은 l번째 상태 변수의 탐색 영역을 나타낸다.Referring to FIG. 3, first, the particle initialization unit 111 initializes a particle including a state variable and a weight (S310). The particle initializer 111 initializes the initial weight w 0 2 and the state variable x 0 2 associated with the particle S. The initial value of each element of the state variable is evenly distributed at the search position. Thus, particles are initially uniformly distributed in the search area. The initial weight w 0 2 is set to 1 / S, and the initial state variable x 0 2 is [w 1, w 2 ,... , w L ] T. In this case, x i is set from R l × U (-1, 1), U (a, b) represents the uniform distribution of [a, b], and R l represents the search region of the l-th state variable. .

다음으로, 파티클 필터링부(112)는 파티클 초기화부(111)에서 초기화된 상태 변수를 업데이트하고, 제1 영상 프레임에 포함되는 마크로 블록과 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 관측값으로 계산하고, 마크로 블록 간의 거리의 유사성을 계산하여, 가중치를 증가시켜 파티클을 필터링한다(S320). 예를 들어, k 번째 마크로 블록에 대해 파티클 필터링을 하는 경우, k 번째 마크로 블록의 상태 변수와 가중치를 업데이트하며, k 번째 마크로 블록의 파라미터(

Figure 112011054562761-pat00013
)를 추정하게 된다.Next, the particle filtering unit 112 updates the state variable initialized by the particle initialization unit 111 and sets the distance between the macroblock included in the first image frame and the macroblock included in the second image frame as an observation value. The particle is calculated by calculating the similarity of the distance between the macroblocks and increasing the weight (S320). For example, when particle filtering is performed on the k-th macro block, the state variable and weight of the k-th macro block are updated, and the parameter of the k-th macro block (
Figure 112011054562761-pat00013
) Is estimated.

파티클 필터링부(112)는 예를 들어 다음과 같은 알고리즘을 이용할 수 있다. 먼저, 동전 던지기(coin toss) 알고리즘을 이용하여 k 번째 마크로 블록의 시공간상 주변의 마크로 블록의 인덱스로 구성된 집합 C를 결정한다. 다음으로, 파티클(S)을

Figure 112011054562761-pat00014
의 식을 이용하여 업데이트한다. 다음으로,
Figure 112011054562761-pat00015
에 의해 지정된 제1 영상 프레임의 마크로 블록을 가져온다. 다음으로, 제1 영상 프레임에서 가져온 마크로 블록과 제2 영상 프레임의 k 번째 마크로 블록 간의 거리를 계산한다. 다음으로, 마크로 블록 간의 거리p(zk│xk s)의 유사성을 계산한다. 다음으로, 가중치를
Figure 112011054562761-pat00016
을 이용하여 업데이트한다.The particle filtering unit 112 may use, for example, the following algorithm. First, a set C consisting of indices of macro blocks around space-time in the k-th macro block is determined using a coin toss algorithm. Next, particle S
Figure 112011054562761-pat00014
Update using the equation. to the next,
Figure 112011054562761-pat00015
The macro block of the first video frame designated by the fetch is obtained. Next, the distance between the macroblock taken from the first image frame and the k-th macroblock of the second image frame is calculated. Next, the similarity of the distance p (z k | x k s ) between macroblocks is calculated. Next, the weight
Figure 112011054562761-pat00016
Use to update.

다음으로, 파티클 리샘플링부(113)는 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은지 여부를 판단한다(S330). 유사성 레벨이 기준값보다 낮은 경우에는 가중치(wk s)를 정규화하고, k 번째 마크로 블록의 파라미터를 추정하고, 높은 경우에는 파티클을 리샘플링한다(S340). 예를 들어 리샘플링 알고리즘은 다음과 같이 구현될 수 있다. 먼저

Figure 112011054562761-pat00017
을 이용하여 파티클 SE(K)의 값을 계산하고, SE(K)가 기준 파티클 값인 ST보다 작으면, 가중치(wk s)의 누적분포함수(CDF)인 Wk s을 계산한다. 다음으로, [0, 1]의 균일 분포인 U(0, 1)로부터 구한 r을 이용하여, 가중치(wk j)가 r보다 같거나 크도록 하는 j 값을 구한다. 다음으로, 리샘플링된 상태변수 x'k s를 Xk j로 설정하고, 리샘플링된 가중치 w'k s를 1/S로 설정한다.
Next, the particle resampling unit 113 determines whether the similarity level of the filtered particles is higher than a preset reference value (S330). If the similarity level is lower than the reference value, the weight w k s is normalized, the parameter of the k-th macroblock is estimated, and if the similarity level is high, the particles are resampled (S340). For example, the resampling algorithm can be implemented as follows. first
Figure 112011054562761-pat00017
Calculate the value of particle S E (K), and if S E (K) is less than the reference particle value S T , calculate W k s , which is the cumulative distribution function (CDF) of the weight (w k s ). . Next, using r obtained from U (0, 1), which is a uniform distribution of [0, 1], j is obtained so that the weight w k j is equal to or greater than r. Next, the resampled state variable x ' k s is set to X k j , and the resampled weight w' k s is set to 1 / S.

다시 도 2를 참조하면, 다음으로 탐색 위치 설정부(120)는 제1 영상 프레임에서 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 위치를 탐색 위치로 설정한다(S220). 이 경우 임계치는 사용자의 설정에 의해 달리 설정될 수 있다. 탐색 위치 설정부(120)는 확률 밀도 함수 추정부(110)에서 추정된 확률 밀도 함수가 임계치보다 큰 값을 가지는 상태 변수를 계산하고, 계산된 상태 변수로부터 탐색 위치를 설정한다. 탐색 위치 설정부(120)는 설정된 탐색 위치 정보를 움직임 벡터 추정부(130)로 출력한다.Referring back to FIG. 2, the search position setting unit 120 next sets a position having a probability density function greater than a preset threshold value in the first image frame as the search position (S220). In this case, the threshold may be set differently by the user's setting. The search position setting unit 120 calculates a state variable having a probability density function estimated by the probability density function estimator 110 having a value greater than a threshold value, and sets a search position from the calculated state variable. The search position setting unit 120 outputs the set search position information to the motion vector estimator 130.

다음으로, 움직임 벡터 추정부(130)는 탐색 위치 설정부(120)에서 설정된 탐색 위치에서 움직임 벡터를 추정한다. 이 경우, 제1 영상 프레임의 마크로 블록 중 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 결정된 마크로 블록과 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값(SAD)을 이용하여 움직임 벡터를 추정할 수 있다. 움직임 벡터에 대한 정보는 다음의 수학식 13에 의한 기대값으로 구해질 수 있다.Next, the motion vector estimator 130 estimates the motion vector at the search position set by the search position setting unit 120. In this case, a macro block that is determined to move according to a state variable among macro blocks of the first image frame is determined, and a sum of all absolute values of the differences between pixels between the determined macro block and the macro block of the second image frame ( SAD) can be used to estimate the motion vector. Information about the motion vector may be obtained as an expected value by the following equation (13).

Figure 112011054562761-pat00018
Figure 112011054562761-pat00018

도 4는 도 2에 따른 움직임 추정 방법 중 확률 밀도 함수 추정을 설명하기 위한 예시도이다.4 is an exemplary diagram for describing a probability density function estimation in the motion estimation method according to FIG. 2.

도 4를 참조하면, 각각의 영상 프레임은 복수의 마크로 블록으로 분할되며, f(t-1)은 기준 영상 프레임인 제1 영상 프레임이고, f(t)는 제1 영상 프레임 이후의 프레임인 제2 영상 프레임이다. 마크로 블록 인덱스 'k-1'의 경우, 상태 변수 Xk -1은 이전 영상 프레임인 제1 영상 프레임에 대한 제2 영상 프레임의 (k-1)번째 마크로 블록의 움직임에 관계된다. 또한, 다음 마크로 블록인 인텍스 'k'의 경우, 상태 변수 Xk는 이전 영상 프레임인 제1 영상 프레임에 대하여 제2 영상 프레임의 k 번째 마크로 블록의 움직임에 관계된다.
Referring to FIG. 4, each image frame is divided into a plurality of macro blocks, f (t-1) is a first image frame which is a reference image frame, and f (t) is a frame after the first image frame. 2 video frames. In the case of the macro block index 'k-1', the state variable X k -1 relates to the movement of the (k-1) -th macroblock of the second image frame relative to the first image frame, which is the previous image frame. In addition, in the case of the index 'k' which is the next macro block, the state variable X k is related to the movement of the k-th macro block of the second image frame with respect to the first image frame which is the previous image frame.

이와 같은 본 발명에 따르면 움직임 벡터가 어떤 값을 갖을 확률이 높은지를 나타내는 확률 밀도 함수를 추정한 후에 확률이 높은 위치만을 탐색함으로써 보다 빠르게 움직임 벡터를 추정할 수 있다. 또한, 확률 밀도 함수가 움직임 벡터가 실제 어떤 값을 갖는 확률을 나타냄으로써 움직임 보상 후 에러를 최소화하는 움직임 추정 방식에 비해 실제 움직임에 가까운 움직임 벡터를 추정할 수 있다.
According to the present invention, after estimating a probability density function indicating which value the motion vector has a high probability, the motion vector can be estimated more quickly by searching only a high probability position. In addition, since the probability density function represents a probability that the motion vector has a certain value, the motion vector closer to the actual motion can be estimated than the motion estimation method of minimizing the error after the motion compensation.

이상에서 본 발명은 도면을 참조하면서 기술되는 바람직한 실시예를 중심으로 설명되었지만 이에 한정되는 것은 아니다. 따라서 본 발명은 기재된 실시예로부터 도출 가능한 자명한 변형예를 포괄하도록 의도된 특허청구범위의 기재에 의해 해석되어져야 한다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, Therefore, the present invention should be construed as a description of the claims which are intended to cover obvious variations that can be derived from the described embodiments.

100 : 움직임 추정 장치 110 : 확률 밀도 함수 추정부
111 : 파티클 초기화부 112 : 파티클 필터링부
113 : 파티클 리샘플링부 120 : 탐색 위치 설정부
130 : 움직임 벡터 추정부
100: motion estimation device 110: probability density function estimation unit
111: particle initialization unit 112: particle filtering unit
113: particle resampling unit 120: search position setting unit
130: motion vector estimation unit

Claims (12)

복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 화소 값의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 확률 밀도 함수 추정부;
상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 적어도 하나의 위치를 탐색 위치로 설정하는 탐색 위치 설정부; 및
상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 움직임 벡터 추정부를 포함하는 움직임 추정 장치.
A motion vector indicating a difference in pixel values between a macroblock included in a first image frame as a reference image frame and a macroblock included in a second image frame after the first image frame by blocking a plurality of image frames. A probability density function estimator for estimating a probability density function of a;
A search position setting unit for setting at least one position having a value greater than a predetermined threshold value in the first image frame as a search position; And
And a motion vector estimator for estimating the motion vector at the set search position.
제1항에 있어서, 상기 확률 밀도 함수 추정부는,
상기 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 화소 값의 차이를 관측값으로 갖는 파티클 필터를 이용하여 상기 관측값에 따른 상기 상태 변수의 확률 밀도 함수를 추정하는 움직임 추정 장치.
The method of claim 1, wherein the probability density function estimator,
By using a particle filter having a motion vector of the second image frame as a state variable and a difference between pixel values included in the first image frame and a pixel block included in the second image frame as observation values. And estimating a probability density function of the state variable according to the observation value.
제1항에 있어서, 상기 확률 밀도 함수 추정부는,
상기 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 상기 마크로 블록의 움직임은 상기 마크로 블록에 이웃하는 마크로 블록들에 의존하여 상기 확률 밀도 함수를 추정하는 움직임 추정 장치.
The method of claim 1, wherein the probability density function estimator,
And when the size of the macro block is smaller than a moving object, the motion of the macro block is estimated based on the macro blocks neighboring the macro block.
제2항에 있어서, 상기 확률 밀도 함수 추정부는,
상기 상태 변수와 가중치를 포함하는 파티클을 초기화하는 파티클 초기화부;
상기 상태 변수를 업데이트하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 상기 관측값으로 계산하고, 상기 마크로 블록 간의 거리의 유사성을 계산하여, 상기 가중치를 증가시켜 상기 파티클을 필터링하는 파티클 필터링부; 및
상기 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은 경우, 상기 파티클을 리샘플링하는 파티클 리샘플링부를 포함하는 움직임 추정 장치.
The method of claim 2, wherein the probability density function estimator,
A particle initializer which initializes a particle including the state variable and a weight;
Update the state variable, calculate the distance between the macroblock included in the first image frame and the macroblock included in the second image frame as the observation value, calculate the similarity of the distance between the macroblocks, and Particle filtering unit for filtering the particles by increasing the weight; And
And a particle resampling unit to resample the particles when the similarity level of the filtered particles is higher than a preset reference value.
제2항에 있어서, 상기 탐색 위치 설정부는,
상기 확률 밀도 함수가 상기 임계치보다 큰 값을 가지는 상태 변수를 계산하여, 상기 탐색 위치로 설정하는 움직임 추정 장치.
The method of claim 2, wherein the search position setting unit,
And estimating a state variable having a value greater than the threshold value and setting the probability variable as the search position.
제2항에 있어서, 상기 움직임 벡터 추정부는,
상기 제1 영상 프레임의 마크로 블록 중 상기 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 상기 결정된 마크로 블록과 상기 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값을 이용하여 움직임 벡터를 추정하는 움직임 추정 장치.
The apparatus of claim 2, wherein the motion vector estimating unit comprises:
A macro block that is determined to be moved according to the state variable among the macro blocks of the first image frame is determined, and the sum of all absolute values of the differences between pixels of the determined macro block and the macro block of the second image frame is added together. Motion estimating apparatus for estimating a motion vector using.
복수의 영상 프레임을 블록화하여, 기준 영상 프레임인 제1 영상 프레임에 포함되는 마크로 블록과 상기 제1 영상 프레임 이후의 영상 프레임인 제2 영상 프레임에 포함되는 마크로 블록 간의 화소 값의 차이를 나타내는 움직임 벡터의 확률 밀도 함수를 추정하는 단계;
상기 제1 영상 프레임에서 상기 확률 밀도 함수가 미리 설정된 임계치보다 큰 값을 가지는 적어도 하나의 위치를 탐색 위치로 설정하는 단계; 및
상기 설정된 탐색 위치에서 상기 움직임 벡터를 추정하는 단계를 포함하는 움직임 추정 방법.
A motion vector indicating a difference in pixel values between a macroblock included in a first image frame as a reference image frame and a macroblock included in a second image frame after the first image frame by blocking a plurality of image frames. Estimating a probability density function of;
Setting at least one position in which the probability density function has a value greater than a preset threshold in the first image frame as a search position; And
Estimating the motion vector at the set search position.
제7항에 있어서, 상기 확률 밀도 함수를 추정하는 단계는,
상기 제2 영상 프레임의 움직임 벡터를 상태 변수로 하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 화소 값의 차이를 관측값으로 갖는 파티클 필터를 이용하여 상기 관측값에 따른 상기 상태 변수의 확률 밀도 함수를 추정하는 움직임 추정 방법.
8. The method of claim 7, wherein estimating the probability density function comprises:
By using a particle filter having a motion vector of the second image frame as a state variable and a difference between pixel values included in the first image frame and a pixel block included in the second image frame as observation values. And a method for estimating a probability density function of the state variable according to the observation value.
제7항에 있어서, 상기 확률 밀도 함수를 추정하는 단계는,
상기 마크로 블록의 크기가 움직이는 대상 개체보다 작은 경우, 상기 마크로 블록의 움직임은 상기 마크로 블록에 이웃하는 마크로 블록들에 의존하여 상기 확률 밀도 함수를 추정하는 움직임 추정 방법.
8. The method of claim 7, wherein estimating the probability density function comprises:
And when the size of the macro block is smaller than a moving object, the motion of the macro block is estimated based on the macro blocks neighboring the macro block.
제8항에 있어서, 상기 확률 밀도 함수를 추정하는 단계는,
상기 상태 변수와 가중치를 포함하는 파티클을 초기화하는 단계;
상기 상태 변수를 업데이트하고, 상기 제1 영상 프레임에 포함되는 마크로 블록과 상기 제2 영상 프레임에 포함되는 마크로 블록 간의 거리를 상기 관측값으로 계산하고, 상기 마크로 블록 간의 거리의 유사성을 계산하여, 상기 가중치를 증가시켜 상기 파티클을 필터링하는 단계; 및
상기 필터링된 파티클의 유사성 레벨이 미리 설정된 기준값보다 높은 경우, 상기 파티클을 리샘플링하는 단계를 포함하는 움직임 추정 방법.
The method of claim 8, wherein estimating the probability density function comprises:
Initializing a particle including the state variable and a weight;
Update the state variable, calculate the distance between the macroblock included in the first image frame and the macroblock included in the second image frame as the observation value, calculate the similarity of the distance between the macroblocks, and Increasing the weight to filter the particles; And
If the similarity level of the filtered particles is higher than a preset reference value, resampling the particles.
제8항에 있어서, 상기 탐색 위치로 설정하는 단계는,
상기 확률 밀도 함수가 상기 임계치보다 큰 값을 가지는 상태 변수를 계산하여, 상기 탐색 위치로 설정하는 움직임 추정 방법.
The method of claim 8, wherein the setting to the search position comprises:
And calculating a state variable having a value of the probability density function greater than the threshold value and setting the state variable to the search position.
제8항에 있어서, 상기 움직임 벡터를 추정하는 단계는,
상기 제1 영상 프레임의 마크로 블록 중 상기 상태 변수에 따라 움직인 것으로 판단되는 마크로 블록을 결정하고, 상기 결정된 마크로 블록과 상기 제2 영상 프레임의 마크로 블록 간의 화소들의 차이에 대한 절대값을 모두 합한 값을 이용하여 움직임 벡터를 추정하는 움직임 추정 방법.
The method of claim 8, wherein estimating the motion vector comprises:
A macro block that is determined to be moved according to the state variable among the macro blocks of the first image frame is determined, and the sum of all absolute values of the differences between pixels of the determined macro block and the macro block of the second image frame is added together. A motion estimation method for estimating a motion vector using.
KR1020110070427A 2011-07-15 2011-07-15 Apparatus and method for estimating of motion in a moving picture KR101253917B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110070427A KR101253917B1 (en) 2011-07-15 2011-07-15 Apparatus and method for estimating of motion in a moving picture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110070427A KR101253917B1 (en) 2011-07-15 2011-07-15 Apparatus and method for estimating of motion in a moving picture

Publications (2)

Publication Number Publication Date
KR20130009372A KR20130009372A (en) 2013-01-23
KR101253917B1 true KR101253917B1 (en) 2013-04-16

Family

ID=47839175

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110070427A KR101253917B1 (en) 2011-07-15 2011-07-15 Apparatus and method for estimating of motion in a moving picture

Country Status (1)

Country Link
KR (1) KR101253917B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102147361B1 (en) * 2015-09-18 2020-08-24 삼성전자주식회사 Method and apparatus of object recognition, Method and apparatus of learning for object recognition
CN110647723B (en) * 2019-08-14 2023-12-26 中国科学院计算机网络信息中心 Particle data processing method, device and system based on in-situ visualization
KR102540906B1 (en) * 2021-03-15 2023-06-07 국방과학연구소 METHOD AND APPARATUS FOR Rate Control using Particle Filtering

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100060102A (en) * 2008-11-27 2010-06-07 경희대학교 산학협력단 Method for performing motion estimation using adaptive search range based on full search block matching algorithm
KR20110050283A (en) * 2009-11-06 2011-05-13 삼성전자주식회사 Fast motion estimation method using multi-reference frames

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100060102A (en) * 2008-11-27 2010-06-07 경희대학교 산학협력단 Method for performing motion estimation using adaptive search range based on full search block matching algorithm
KR20110050283A (en) * 2009-11-06 2011-05-13 삼성전자주식회사 Fast motion estimation method using multi-reference frames

Also Published As

Publication number Publication date
KR20130009372A (en) 2013-01-23

Similar Documents

Publication Publication Date Title
CN108141594B (en) Method and apparatus for encoding or decoding image
EP1797722B1 (en) Adaptive overlapped block matching for accurate motion compensation
US9621917B2 (en) Continuous block tracking for temporal prediction in video encoding
US8718143B2 (en) Optical flow based motion vector estimation systems and methods
CN110519600B (en) Intra-frame and inter-frame joint prediction method and device, coder and decoder and storage device
CN110741640B (en) Optical flow estimation for motion compensated prediction in video coding
TWI489878B (en) Video encoding method, video decoding method, video encoding apparatus, video decoding apparatus, and programs thereof
US9641861B2 (en) Method and integrated circuit for video processing
US9591313B2 (en) Video encoder with transform size preprocessing and methods for use therewith
US5793429A (en) Methods of estimating motion in image data and apparatus for performing same
CN108574844B (en) Multi-strategy video frame rate improving method for space-time significant perception
Kamisli Intra prediction based on markov process modeling of images
US8611423B2 (en) Determination of optimal frame types in video encoding
KR101253917B1 (en) Apparatus and method for estimating of motion in a moving picture
EP2890128A1 (en) Video encoder with block merging and methods for use therewith
CN101931739A (en) Absolute error sum estimation system and method
JPH08265767A (en) Method to determine feature point
EP1515562B1 (en) Method for setting motion vector of digital video
EP2571273A2 (en) Method for encoding and decoding video and apparatus for encoding and decoding video using expanded block filtering
KR20130063285A (en) Transcoding method and apparatus according to prediction motion vector selection
CN102204256B (en) Image prediction method and system
LeQuang et al. Object-oriented coding using successive motion field segmentation and estimation
Vranješ et al. Influence of block size on motion vector estimation error in enhancement of video temporal resolution
KR101956443B1 (en) Macroblock-level bit allocation method and system
Zhang et al. A novel error concealment algorithm for H. 264/AVC

Legal Events

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

Payment date: 20160406

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee