KR20130011610A - Apparatus and method for fast motion estimation - Google Patents
Apparatus and method for fast motion estimation Download PDFInfo
- Publication number
- KR20130011610A KR20130011610A KR1020110072892A KR20110072892A KR20130011610A KR 20130011610 A KR20130011610 A KR 20130011610A KR 1020110072892 A KR1020110072892 A KR 1020110072892A KR 20110072892 A KR20110072892 A KR 20110072892A KR 20130011610 A KR20130011610 A KR 20130011610A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- current
- order
- momentum
- integral
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Analysis (AREA)
Abstract
Description
본 발명은 고속 움직임 추정을 위한 장치 및 방법에 관한 것으로, 더욱 상세하게는 n차원의 현재(current)영상과 기준(reference)영상에 대한 n차 영상을 각각 생성하고, 그 n차 영상들의 면적에 의한 n차 integral 영상을 생성한 후, 상기 n차 integral 영상을 이용하여 현재영상 및 기준영상의 특정 블록에 대한 n차 모멘텀을 각각 구하고, 상기 현재영상과 기준영상의 특정 블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하고, 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정하는 고속 움직임 추정을 위한 장치 및 방법에 관한 것이다.
The present invention relates to an apparatus and method for fast motion estimation, and more particularly, to generate an n-th order image for an n-dimensional current image and a reference image, respectively, After generating the n-th integral image by using the n-th integral image, the n-th momentum of the specific block of the current image and the reference image is obtained, and the n-th momentum of the specific block of the current image and the reference image is obtained. The present invention relates to an apparatus and method for fast motion estimation that obtains a block matching error using a difference and estimates a coordinate difference of blocks having a minimum block matching error as a motion vector.
멀티미디어를 지원해주는 핵심 요소로는 디지털화와 더불어 영상 압축 기술이 있다. 최근 들어 정보의 디지탈화가 급속도로 발전하고 있으며, 이에 따라 영상 압축 기술이 매우 중요하게 부각되고 있다.Key elements supporting multimedia include digital compression and image compression technology. Recently, digitalization of information is rapidly developing, and accordingly, image compression technology is very important.
일반적으로, PC나 HDTV, 모바일 디바이스 등의 디지털 영상장치는 MPEG(Moving Picture Experts Group)-2, MPEG-4, H.264와 같은 영상 압축 방식으로 압축된 영상 신호를 MPEG기반 영상 코덱으로 인코딩하여 표시한다. In general, digital video devices such as PCs, HDTVs, and mobile devices encode video signals compressed with video compression methods such as MPEG (Moving Picture Experts Group) -2, MPEG-4, and H.264 using MPEG-based video codecs. Display.
이러한 영상 코덱은 블록 정합(Block matching) 방식을 기반으로 시간적인 중복성을 제거한다. 블록 정합 방식은 영상을 작은 블록으로 나누고, 현재 인코딩/디코딩되는 영상의 블록과 유사한 부분을 시간적으로 이전 프레임 또는 이전에 인코딩/디코딩된 영상에서 찾아서 활용하고 그 차이값을 전송하는 방법으로 압축하게 된다. The image codec removes temporal redundancy based on a block matching scheme. In the block matching method, the image is divided into small blocks, and a portion similar to the block of the currently encoded / decoded image is temporally found and used in a previous frame or a previously encoded / decoded image, and compressed by transmitting the difference value. .
이를 위해 이전 프레임과 현재 프레임 사이에서 가장 비슷한 블록을 찾는 작업이 필요한데, 이를 움직임 추정(Motion Estimation, ME)이라 하며 블록이 얼마만큼 움직였는가 하는 변위를 나타내는 것을 움직임 벡터(Motion Vector, MV)라고 한다.To do this, it is necessary to find the most similar block between the previous frame and the current frame. This is called motion estimation (ME), and the motion vector (MV) is used to represent the displacement of the block. .
영상 신호 압축을 위한 움직임 추정(motion estimation)시에는 현재영상을 매크로블록으로 분할하고, 시간적으로 이전 영상과 SAD(Sum of Absolute Difference)또는 SSD(Sum of Square Difference)와 같은 오차값이 최소가 되는 영역과의 좌표 차를 움직임 벡터로 사용한다. When motion estimation is performed for video signal compression, the current video is divided into macroblocks, and an error value such as a sum of absolute difference (SAD) or a sum of square difference (SSD) is minimized in time with the previous video. Use the coordinate difference from the region as the motion vector.
H.264의 경우 SAD 또는 SSD와 함께 움직임 벡터를 전송하는 데 요구되는 데이터량을 함께 고려한 값을 cost로 하여 cost가 가장 낮은 값을 보이는 움직임 벡터를 움직임 예측에 사용한다.In the case of H.264, the motion vector with the lowest cost is used for motion prediction by taking the cost considering the amount of data required to transmit the motion vector together with the SAD or SSD.
여기서, 움직임 벡터를 찾기 위해서는 SAD 또는 SSD를 움직임 탐색 영역의 모든 픽셀에 대해 모두 계산하고, 그 중 최소값을 가지는 위치를 찾아야 한다. 예컨대, 블록의 크기가 N x N 픽셀이고 움직임 탐색 영역이 32x32라면 1024*(2NxN-1)번의 덧셈/뺄셈 연산이 필요하며, 영상의 크기가 100Nx80N정도라면 8192000*(2NxN-1)*(NxN)의 연산이 필요하다. 이는 영상 인코딩 시 최대 50%까지의 연산을 차지할 정도로 많은 연산량으로, 시스템 부하를 유발하고 처리 속도를 지연시키는 문제점이 있다.
In order to find the motion vector, the SAD or SSD must be calculated for all the pixels of the motion search region, and the position having the minimum value must be found. For example, if the block size is N x N pixels and the motion search area is 32x32, 1024 * (2NxN-1) addition / subtraction operations are required. If the size of the image is about 100Nx80N, ) Is required. This is a large amount of calculation that takes up to 50% of operations when encoding an image, which causes a system load and delays processing speed.
본 발명은 상기한 문제점을 해결하기 위하여 안출한 것으로, 본 발명의 목적은 블록 정합(block matching)을 통해 최소의 SAD 또는 SSD를 찾고, 그 SAD 또는 SSD를 이용하여 움직임 벡터를 추정하여 움직임 추정 시 소요되는 연산량을 줄이고, 고속의 영상 인코딩을 가능하게 하는 고속 움직임 추정을 위한 장치 및 방법을 제공하는데 있다. The present invention has been made to solve the above problems, and an object of the present invention is to find a minimum SAD or SSD through block matching, and to estimate the motion vector by using the SAD or SSD to estimate the motion. It is an object of the present invention to provide an apparatus and method for fast motion estimation which reduces a computation amount and enables high speed image encoding.
본 발명의 다른 목적은 현재영상의 각 블록(block)에 대해 n차 integral 영상을 한 번 계산하여 찾으면 모든 후보 움직임 벡터에 대해 동일하게 사용할 수 있으므로 NxN 크기의 블록 비교시 연산시간을 감소시켜 속도를 향상시킬 수 있는 고속 움직임 추정을 위한 장치 및 방법을 제공하는데 있다.
Another object of the present invention is that once the n-th order integral image is calculated once for each block of the current image, the same can be used for all candidate motion vectors. An apparatus and method for fast motion estimation that can be improved are provided.
상기 목적들을 달성하기 위하여 본 발명의 일 측면에 따르면, n차원의 현재영상과 기준영상에서 각 픽셀값을 n번 곱한 값을 픽셀값으로 하는 현재 n차 영상과 기준 n차 영상을 각각 생성하는 n차 영상 생성부, 상기 현재 n차 영상들의 면적에 의한 현재 n차 integral 영상을 생성하고, 상기 기준 n차 영상들의 면적에 의한 기준 n차 integral 영상을 생성하는 n차 integral 영상 생성부, 상기 현재 n차 integral 영상을 이용하여 현재영상의 특정 블록에 대한 n차 모멘텀을 구하고, 상기 기준 n차 integral 영상을 이용하여 기준영상의 특정 블록에 대한 n차 모멘텀을 구하는 n차 모멘텀 계산부, 상기 현재영상의 특정 블록에 대한 n차 모멘텀과 상기 기준영상의 특정블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하고, 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정하는 움직임 벡터 추정부를 포함하는 움직임 추정 장치가 제공된다. According to an aspect of the present invention to achieve the above object, n to generate the current n-th image and the reference n-th order image, each pixel value n times multiplied by each pixel value in the n-dimensional current image and the reference image, respectively A fourth order image generating unit, to generate a current nth order integral image based on an area of the current nth order images, and to generate a reference nth order integral image based on an area of the reference nth order images, wherein the current nth order N-th momentum calculation unit for obtaining n-th order momentum of a specific block of the current image by using the order integral image, and obtaining n-th order momentum for a specific block of the reference image using the reference n-th order integral image, A block matching error is obtained by using a difference between n-th order momentum for a specific block and n-th order momentum for the specific block of the reference image, and coordinates of blocks having the minimum block matching error A motion estimation apparatus including a motion vector estimator for estimating a difference as a motion vector is provided.
상기 n차 영상 생성부는,The n-th image generating unit,
[수학식][Mathematical Expression]
을 이용하여 n차 영상을 생성하되, 여기서, i(x,y)은 현재영상 또는 기준영상을 나타낸 원영상이고, On(x,y)는 n차 영상, (x,y)는 픽셀 좌표를 나타낸다. Generate n-th image by using i (x, y) is the original image representing the current image or the reference image, O n (x, y) is the n-th image, (x, y) is the pixel coordinate Indicates.
상기 n차 integral 영상 생성부는 The n-th integral image generating unit
[수학식][Mathematical Expression]
을 이용하여 현재 n차 integral 영상과 기준 n차 integral 영상을 각각 생성하되, (x,y)는 픽셀좌표, In(x,y)는 integral 영상, On(x,y)는 n차 영상을 나타낸다.Create the current n-th integral image and the reference n-th integral image using (x, y) as pixel coordinates, I n (x, y) as integral image, and O n (x, y) as nth image Indicates.
상기 n차 모멘텀 계산부는 현재영상과 기준영상의 특정 블록 4개 좌표의 n차 integral 영상에 의한 다음의 수학식을 이용하여 상기 특정 블록의 면적을 구하되, 상기 특정 블록의 면적이 상기 현재영상 또는 기준영상의 특정 블록에 대한 n차 모멘텀(Mn)을 의미한다. The n-th momentum calculation unit obtains an area of the specific block using the following equation based on an n-th integral image of four coordinates of a specific block of the current image and the reference image, and the area of the specific block is the current image or Mean n-th momentum (M n ) for a specific block of the reference image.
[수학식] [Mathematical Expression]
여기서, 상기 In(xe, ye)는 (xe, ye)좌표에서의 n차 integral 영상, In(xe-1, ye-1)는 (xe-1, ye-1)좌표에서의 n차 integral 영상, In(xe-1, ye)는 (xe-1, ye)좌표에서의 n차 integral 영상, In(xe, ye-1)는 (xe, ye-1) 좌표에서의 n차 integral 영상을 나타낸다.Here, I n (x e , y e ) is an n-th integral image in (x e , y e ) coordinates, and I n (x e -1, y e -1) is (x e -1, y e N-th integral image in coordinates, I n (x e -1, y e ) is n-th integral image in coordinates (x e -1, y e ), I n (x e , y e -1 ) Represents the nth order integral image at (x e , y e -1) coordinates.
상기 움직임 벡터 추정부는 상기 블록 정합 오차를 다음의 수학식을 이용하여 SAD 및 SSD 중 적어도 어느 하나의 값으로 산출한다.The motion vector estimator calculates the block matching error as at least one of SAD and SSD using the following equation.
[수학식][Mathematical Expression]
여기서 Mn,ref는 기준영상의 특정블록의 n차 모멘텀, Mn,curr는 현재영상의 특정블록의 n차 모멘텀, αn 및 ßn 는 n차 모멘텀에 대한 가중치, γ는 scale 상수를 나타낸다.Where M n and ref are the nth order momentum of the specific block of the reference picture, M n , curr are the nth order momentum of the particular block of the current picture, α n and ß n are the weights of the nth order momentum, and γ is the scale constant. .
본 발명의 다른 측면에 따르면,n차원의 현재(current)영상과 기준(reference)영상에 대한 n차 영상을 각각 생성하고, 그 n차 영상들의 면적에 의한 n차 integral 영상을 생성한 후, 상기 n차 integral 영상들을 이용하여 현재영상 및 기준영상의 특정 블록에 대한 n차 모멘텀을 각각 구하고, 상기 현재영상과 기준영상의 특정 블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하고, 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정하는 움직임 추정부, 상기 추정된 움직임 벡터를 이용하여 상기 기준영상으로부터 상기 현재영상에 대한 예측영상을 생성하는 움직임 보상부, 상기 현재영상으로부터 상기 생성된 예측 영상을 감산함으로써 상기 현재 영상과 상기 예측 영상의 차이를 생성하는 감산부, 상기 생성된 현재 영상과 예측 영상의 차이를 부호화하는 부호화부를 포함하는 고속 움직임 추정을 위한 영상 부호화 장치가 제공된다. According to another aspect of the present invention, after generating the n-th image for the current image and the reference image of the n-dimensional, respectively, and generates the n-th integral image by the area of the n-th image, Obtain n-th order momentum for a specific block of the current image and the reference image using n-th integral pictures, obtain block matching error using the difference between n-th momentum for the specific block of the current image and the reference image, and block A motion estimator for estimating a coordinate difference between blocks having a minimum matching error as a motion vector, a motion compensator configured to generate a predicted image of the current image from the reference image using the estimated motion vector, and from the current image A subtraction unit for generating a difference between the current image and the predicted image by subtracting the generated predicted image; An image encoding apparatus for fast motion estimation including an encoding unit encoding a difference is provided.
본 발명의 또 다른 측면에 따르면, n차원의 현재영상과 기준영상에서 각 픽셀값을 n번 곱한 값을 픽셀값으로 하는 현재 n차 영상과 기준 n차 영상을 각각 생성하는 단계, 상기 현재 n차 영상들의 면적에 의한 현재 n차 integral 영상을 생성하고, 상기 기준 n차 영상들의 면적에 의한 기준 n차 integral 영상을 생성하는 단계, 상기 현재 n차 integral 영상을 이용하여 현재영상의 특정 블록에 대한 n차 모멘텀을 구하고, 상기 기준 n차 integral 영상을 이용하여 기준영상의 특정 블록에 대한 n차 모멘텀을 구하는 단계, 상기 현재영상의 특정 블록에 대한 n차 모멘텀과 상기 기준영상의 특정블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하는 단계, 상기 구해진 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정하는 단계를 포함하는 고속 움직임 추정 방법이 제공된다.
According to another aspect of the present invention, generating a current n-th image and a reference n-th image each of the n-dimensional current image and the reference image by multiplying each pixel value n times as pixel values, respectively, the current n-th order Generating a current nth order integral image based on the area of images, and generating a reference nth order integral image based on the area of the reference nth order images, n for a specific block of the current image using the current nth order integral image Obtaining the difference momentum, and obtaining the n-th order momentum of a specific block of the reference image by using the reference n-th order integral image, the n-th momentum of the specific block of the current image and the n-th order of the specific block of the reference image Obtaining a block matching error using a difference between momentums, and estimating a coordinate difference of blocks having the minimum block matching error as a motion vector A motion estimation method is provided.
상술한 바와 같이 본 발명에 따르면, 블록 정합(block matching)을 통해 최소의 SAD 또는 SSD를 찾아서 움직임 벡터를 추정하므로, 움직임 추정 시 소요되는 연산량을 줄이고, 고속의 영상 인코딩을 가능하게 할 수 있다.As described above, according to the present invention, since the motion vector is estimated by finding the minimum SAD or SSD through block matching, it is possible to reduce the amount of computation required for motion estimation and to enable fast image encoding.
또한, 현재영상의 각 블록(block)에 대해 n차 integral 영상을 한 번 계산하여 찾으면 모든 후보 움직임 벡터에 대해 동일하게 사용할 수 있으므로 NxN 크기의 블록 비교시 연산시간을 감소시켜 속도를 향상시킬 수 있다.
In addition, once the nth order integral image is calculated and found for each block of the current image, the same can be used for all candidate motion vectors. Therefore, the computation time can be improved by reducing the computation time when comparing blocks of NxN size. .
도 1은 본 발명에 따른 고속 움직임 추정이 가능한 영상 부호화 장치의 구성을 나타낸 도면.
도 2는 본 발명에 따른 고속 움직임 추정을 위한 움직인 추정 장치의 구성을 나타낸 도면.
도 3은 본 발명에 따른 움직임 추정 장치가 고속 움직임을 추정하는 방법을 나타낸 흐름도.
도 4는 본 발명에 따른 n차 모멘텀을 구하는 방법을 설명하기 위한 도면.1 is a diagram showing the configuration of a video encoding apparatus capable of fast motion estimation according to the present invention.
2 is a diagram showing the configuration of a motion estimating apparatus for fast motion estimation according to the present invention;
3 is a flowchart illustrating a method for estimating high-speed motion by a motion estimation apparatus according to the present invention.
4 is a view for explaining a method for obtaining n-th order momentum according to the present invention.
본 발명의 전술한 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.The foregoing and other objects, features, and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.
도 1은 본 발명에 따른 고속 움직임 추정이 가능한 영상 부호화 장치의 구성을 나타낸 도면이다. 1 is a diagram showing the configuration of a video encoding apparatus capable of fast motion estimation according to the present invention.
도 1을 참조하면, 고속 움직임 추정이 가능한 영상 부호화 장치(100)는 움직임 추정부(110), 움직임 보상부(120), 감산기(130), 주파수 공간 변환부(140), 양자화부(150), 엔트로피 부호화부(160), 역양자화부(170), 주파수 공간 역변환부(180), 가산기(190)를 포함한다. Referring to FIG. 1, the image encoding apparatus 100 capable of fast motion estimation may include a
상기 움직임 추정부(110)는 현재(current)영상의 블록 단위로 현재영상의 블록과 가장 잘 일치하는 기준(reference)영상의 블록간의 변위에 해당하는 움직임 벡터를 산출한다. 상기 기준영상은 현재영상보다 시간적으로 이전의 영상, 혹은, 인코딩/디코딩 순서에서 이 전에 처리된 영상을 말한다.The
즉, 상기 움직임 추정부(110)는 n차원의 현재(current)영상과 기준(reference)영상에 대한 n차 영상을 각각 생성하고, 그 n차 영상들의 면적에 의한 n차 integral 영상을 생성한다. 그런 다음 상기 움직임 추정부(110)는 상기 n차 integral 영상들을 이용하여 현재영상 및 기준영상의 특정 블록에 대한 n차 모멘텀(momentum)을 각각 구하고, 상기 현재영상과 기준영상의 특정 블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구한 후, 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정한다.That is, the
상기와 같은 역할을 수행하는 움직임 추정부(110)에 대한 상세한 설명은 도 2를 참조하기로 한다. 도 2에서는 움직임 추정부(110)를 움직임을 추정하는 움직임 추정 장치로 하여 설명하기로 한다. A detailed description of the
상기 움직임 보상부(120)는 현재영상의 블록 단위로 움직임 추정부(110)에 의해 움직임 벡터를 사용하여 기준영상으로부터 현재영상에 대한 예측영상을 생성한다.The
상기 감산기(130)는 현재영상으로부터 움직임 보상부(120)에 의해 생성된 예측 영상을 감산함으로써 현재 영상과 예측영상의 차이를 생성한다.The
상기 주파수 공간 변환부(140)는 감산기(130)에 의해 생성된 현재 영상과 예측 영상의 차이를 색 공간으로부터 주파수 공간으로 변환한다. 색 공간으로부터 주파수 공간으로 변환하는 방식의 예로는 DHT(Discrete Hadamard Transformation), DCT(Discrete Cosine Transformation) 기반의 정수 변환 등을 들 수 있다.The
상기 양자화부(150)는 주파수 공간 변환부(140)에 의해 변환된 값들을 양자화한다. 즉, 양자화부(150)는 주파수 공간 변환부(140)에 의해 변환된 주파수 성분 값들을 양자화 파라미터로 나누고, 그 결과를 정수 값들로 근사화한다.The
상기 엔트로피 부호화부(160)는 양자화부(150)에 의해 양자화된 값들을 엔트로피 부호화함으로서 비트 스트림을 생성하고, 이것을 출력한다. 엔트로피 부호화 방식의 예로는 CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context -Adaptive Binary Arithmetic Coding) 등을 들 수 있다.The
상기 역양자화부(170)는 양자화부(150)에 의해 양자화된 값들을 역양자화한다. 즉, 역양자화부(170)는 양자화부(150)에 의해 근사화된 정수 값들에 양자화 파라미터를 곱함으로서 주파수 성분 값들을 복원한다.The
상기 주파수 공간 역변환부(180)는 역양자화부(170)에 의해 복원된 주파수 성분 값들을 주파수 공간으로부터 색 공간으로 변환함으로서 현재영상과 예측 영상의 차이를 복원한다.The frequency space
상기 가산기(190)는 움직임 보상부(120)에 의해 생성된 예측 영상에 주파수 공간 역변환부(180)에 복원된 현재 영상과 예측 영상의 차이를 가산함으로써 복원 영상을 생성한다.The
도 2는 본 발명에 따른 고속 움직임 추정을 위한 움직인 추정 장치의 구성을 나타낸 도면이다. 2 is a diagram showing the configuration of a motion estimation apparatus for fast motion estimation according to the present invention.
도 2를 참조하면, 고속 움직임 추정을 위한 움직인 추정 장치(200)는 n차 영상 생성부(210), n차 integral 영상 생성부(220), n차 모멘텀 계산부(230), 움직임 벡터 추정부(240)를 포함한다. Referring to FIG. 2, the moved estimation apparatus 200 for fast motion estimation includes an n-th order image generator 210, an n-th integral image generator 220, an n-th order momentum calculator 230, and a motion vector weight. Government 240.
상기 n차 영상 생성부(210)는 n차원의 현재영상과 기준영상에서 각 픽셀값을 n번 곱한 값을 픽셀값으로 하는 현재 n차 영상과 기준 n차 영상을 각각 생성한다. 여기서, 상기 n차원이라는 것은 1차원, 2차원, 3차원 등의 차원을 말한다.The n-th order image generating unit 210 generates a current n-th image and a reference n-th image, respectively, in which the pixel value is multiplied by each pixel value n times in the n-dimensional current image and the reference image. Here, the n-dimensional means a dimension such as one, two, three-dimensional.
즉, 상기 n차 영상 생성부(210)는 수학식 1을 이용하여 n차 영상을 생성한다. That is, the n-th order image generator 210 generates an n-th order
여기서, i(x,y)은 현재영상 또는 기준영상을 나타낸 원영상이고, On(x,y)는 n차 영상, (x,y)는 픽셀 좌표를 나타낸다.Here, i (x, y) is the original image representing the current image or the reference image, O n (x, y) is the nth order image, and (x, y) is the pixel coordinate.
상기 n차 영상 생성부(210)는 현재영상과 기준영상이 입력되면, 상기 현재영상과 기준영상을 일정 개수의 블록으로 나눈다. 이때, 상기 블록은 N x N 크기의 블록으로, 예를들면, 16 x 16 크기의 블록, 8 x 8 크기의 블록, 4 x 4 크기의 블록 중 어떠한 크기의 블록도 될 수 있다. The n-th order image generator 210 divides the current image and the reference image into a predetermined number of blocks when the current image and the reference image are input. In this case, the block is an N × N sized block, for example, a 16 × 16 size block, an 8 × 8 size block, or a 4 × 4 sized block.
그런 다음 상기 n차 영상 생성부(210)는 n차원의 현재영상에서 각 픽셀값을 n번 곱한 값을 픽셀값으로 하는 n차 영상을 생성하고, n차원의 기준영상에서 각 픽셀값을 n번 곱한 값을 픽셀값으로 하는 n차 영상을 생성한다. 상기 n차원의 현재영상, n차원의 기준영상이라는 말은 1차원 영상, 2차원 영상. 3차원 영상 등을 말한다. 따라서, 상기 n차 영상 생성부(210)는 현재영상 및 기준영상이 3차원인 경우 각 픽셀값을 3번 곱한 값을 픽셀값으로 하는 현재 3차 영상과 기준 3차 영상을 각각 생성한다.Then, the n-th image generating unit 210 generates an n-th image including a pixel value multiplied by each pixel value n times in the n-dimensional current image, and n times each pixel value in the n-dimensional reference image. An n-th order image is generated with the multiplied value as the pixel value. The term n-dimensional current image, n-dimensional reference image is a 1-dimensional image, a two-dimensional image. Three-dimensional image or the like. Therefore, when the current image and the reference image are three-dimensional, the n-th image generating unit 210 generates a current tertiary image and a reference tertiary image, each of which is a pixel value multiplied by each pixel value three times.
또한, 현재영상 및 기준영상이 2차원인 경우, 상기 n차 영상 생성부(210)는 현재영상 및 기준영상에서 각 픽셀값을 2번 곱한 값을 픽셀값으로 하는 현재 2차 영상과 기준 2차 영상을 각각 생성한다.In addition, when the current image and the reference image are two-dimensional, the n-th order image generating unit 210 performs the current secondary image and the reference secondary, which is a pixel value obtained by multiplying each pixel value twice in the current image and the reference image. Create each image.
이때, 현재영상 및 기준영상의 블록크기가 N*N인 경우, 상기 n차 영상 생성부(210)는 상기 현재영상 및 기준영상의 블록크기에 해당하는 N개의 현재 n차 영상과 N개의 기준 n차 영상을 각각 생성한다. In this case, when the block size of the current image and the reference image is N * N, the n-th image generating unit 210 includes N current n-th image and N reference n corresponding to the block sizes of the current image and the reference image. Each car image is generated.
상기 n차 integral 영상 생성부(220)는 상기 현재 n차 영상들의 면적을 구하여 현재 n차 integral 영상을 생성하고, 상기 기준 n차 영상들의 면적을 구하여 기준 n차 integral 영상을 생성한다. 이때, 상기 n차 integral 영상 생성부(220)는 N개의 n차 영상들에 대해 integral 영상을 각각 생성하여 N개의 n차 integral 영상을 생성한다The nth order integral image generator 220 obtains an area of the current nth order images to generate a current nth order integral image, and obtains an area of the reference nth order images to generate a reference nth order integral image. In this case, the n th order integral image generator 220 generates an n th order integral image by generating an integral image for each of the n th order images.
즉, 상기 n차 integral 영상 생성부(220)는 수학식 2를 이용하여 현재 n차 integral 영상과 기준 n차 integral 영상을 각각 생성한다.That is, the nth order integral image generator 220 generates a current nth order integral image and a reference nth order integral image by using Equation 2.
여기서, (x,y)는 픽셀좌표, In(x,y)는 n차 integral 영상, On(x,y)는 n차 영상을 나타낸다. Here, (x, y) represents pixel coordinates, I n (x, y) represents an nth order integral image, and O n (x, y) represents an nth order image.
상기 n차 integral 영상 생성부(220)가 n차 integral 영상을 생성하는 이유는 영상내 특정 rectangular 영역에 대한 n차 모멘텀을 고속으로 계산하기 위해서이다The reason why the n-th integral image generator 220 generates the n-th integral image is to calculate the n-th moment of a specific rectangular region in the image at high speed.
상기 n차 모멘텀 계산부(230)는 상기 현재 n차 integral 영상을 이용하여 현재영상의 특정 블록에 대한 n차 모멘텀을 구하고, 상기 기준 n차 integral 영상을 이용하여 기준영상의 특정 블록에 대한 n차 모멘텀을 구한다. The n th order momentum calculator 230 obtains an n th order momentum of a specific block of the current image using the current n th order integral image, and an n th order of the specific block of the reference image using the reference n th order integral image. Find the momentum.
즉, 상기 n차 모멘텀 계산부(230)는 수학식 3을 이용하여 현재영상 또는 기준영상의 특정 블록에 대한 n차 모멘텀(Mn)을 각각 구한다. That is, the n-th momentum calculator 230 obtains n-th momentum M n for a specific block of the current image or the reference image by using Equation 3, respectively.
여기서, 상기 x는 특정 영역에 포함되는 픽셀(pixel)값, E[xn]은 특정영역의 n차 모멘텀, In(xe, ye)는 (xe, ye) 픽셀 좌표에서의 n차 integral 영상, In(xe-1, ye-1)는 (xe-1, ye-1) 픽셀 좌표에서의 n차 integral 영상, In(xe-1, ye)는 (xe-1, ye) 픽셀 좌표에서의 n차 integral 영상, In(xe, ye-1)는 (xe, ye-1) 픽셀 좌표에서의 n차 integral 영상을 말한다. Here, x is a pixel value included in a specific region, E [x n ] is the nth order momentum of the specific region, and I n (x e , y e ) is the (x e , y e ) pixel coordinate. n-th integral image, I n (x e -1, y e -1) is the n-th integral image at pixel coordinates (x e -1, y e -1), I n (x e -1, y e ) Is an n-th integral image in (x e -1, y e ) pixel coordinates, and I n (x e , y e -1) is an n-th integral image in (x e , y e -1) pixel coordinates .
상기 수학식 3을 살펴보면, 상기 n차 모멘텀 계산부(230)는 현재영상과 기준영상의 특정 블록 4개 좌표에 대한 n차 integral 영상을 이용하여 상기 특정 블록의 면적을 구한다. 이때, 상기 특정 블록의 면적이 상기 현재영상 또는 기준영상의 특정 블록에 대한 n차 모멘텀(Mn)일 수 있다. Referring to Equation 3, the n-th momentum calculator 230 calculates an area of the specific block by using an n-th integral image of four coordinates of the specific block of the current image and the reference image. In this case, an area of the specific block may be n-th momentum M n of the specific block of the current image or the reference image.
상기 움직임 벡터 추정부(240)는 상기 현재영상의 특정 블록에 대한 n차 모멘텀과 상기 기준영상의 특정블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하고, 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정한다.The motion vector estimator 240 obtains a block matching error by using a difference between an nth order momentum of a specific block of the current image and an nth order momentum of a specific block of the reference image, and a block having a minimum block matching error. The coordinate difference of the two is estimated by the motion vector.
즉, 상기 움직임 벡터 추정부(240)는 상기 블록 정합 오차를 수학식 4에 의한 SAD 또는 수학식 5에 의한 SSD 중 적어도 어느 하나의 값으로 산출한다. That is, the motion vector estimator 240 calculates the block matching error as at least one of SAD according to Equation 4 or SSD according to Equation 5.
여기서 Mn,ref는 기준영상의 특정블록의 n차 모멘텀, Mn,curr는 현재영상의 특정블록의 αn, ßn 는 n차 모멘텀에 대한 가중치, γ는 scale 상수를 말한다.Here, M n , ref are n-th order momentum of a specific block of the reference picture, M n , curr are α n , ß n are weights of the n-th order momentum of the particular block of the current picture, and γ is a scale constant.
상기 움직임 벡터 추정부(240)가 SAD와 SSD에 대응되는 블록 정합 오차를 계산시 1차에서 K차까지의 모멘텀(momentum)을 고려할 수 있으며, 이때 K는 시스템의 연산량을 고려하여 조절이 가능하다. 즉 K가 클수록 계산의 정확도와 연산량이 커지고, K가 작을수록 정확도와 연산량이 작아진다.When the motion vector estimator 240 calculates a block matching error corresponding to the SAD and the SSD, the momentum from the first to the K-orders may be considered, and K may be adjusted in consideration of the amount of computation of the system. . In other words, the larger K, the greater the accuracy and the amount of calculation. The smaller the K, the smaller the accuracy and the amount of calculation.
도 3은 본 발명에 따른 움직임 추정 장치가 고속 움직임을 추정하는 방법을 나타낸 흐름도, 도 4는 본 발명에 따른 n차 모멘텀을 구하는 방법을 설명하기 위한 도면이다.3 is a flowchart illustrating a method of estimating high-speed motion by a motion estimation apparatus according to the present invention, and FIG. 4 is a diagram for describing a method of obtaining n-th order momentum according to the present invention.
도 3을 참조하면, n차원의 현재영상과 n차원의 기준영상이 입력되면(S302), 움직임 추정 장치는 상기 n차원의 현재영상과 n차원의 기준영상을 각각 일정 개수의 블록으로 나눈다(S304). 이때, 상기 블록들은 N*N크기를 갖는다. Referring to FIG. 3, when an n-dimensional current image and an n-dimensional reference image are input (S302), the motion estimation apparatus divides the n-dimensional current image and the n-dimensional reference image into a predetermined number of blocks, respectively (S304). ). In this case, the blocks have an N * N size.
상기 S304가 수행되면, 상기 움직임 추정 장치는 상기 n차원의 현재영상과 기준영상에서 각 픽셀값을 n번 곱한 값을 픽셀값으로 하는 현재 n차 영상과 기준 n차 영상을 각각 생성한다(S306). 즉, 상기 움직임 추정 장치는 수학식 1을 이용하여 n차 영상을 생성한다. 이때, 각 pixel값을 나타내는 변수를 x라고 하면 1차 영상은 x로 구성된 영상이고, 2차 영상은 x2으로 구성된 영상이다. 또한, 상기 움직임 추정 장치는 영상의 블록크기에 해당하는 N개의 n차 영상을 생성한다. When the step S304 is performed, the motion estimation apparatus generates a current nth order image and a reference nth order image, respectively, in which the pixel value is multiplied by each pixel value n times in the n-dimensional current image and the reference image (S306). . That is, the motion estimation apparatus generates n-th order
상기 S306의 수행 후, 상기 움직임 추정 장치는 상기 현재 n차 영상들의 면적에 의한 현재 n차 integral 영상과 상기 기준 n차 영상들의 면적에 의한 기준 n차 integral 영상을 생성한다(S308). 즉, 상기 움직임 추정 장치는 수학식 2를 이용하여 N개의 n차 integral 영상을 생성한다.After performing S306, the motion estimation apparatus generates a current nth integral image by the area of the current nth order images and a reference nth integral image by the area of the reference nth images (S308). That is, the motion estimation apparatus generates N n-th order integral images using Equation 2.
그런 다음 상기 움직임 추정 장치는 상기 현재 n차 integral 영상을 이용하여 현재영상의 특정 블록에 대한 n차 모멘텀을 구하고, 상기 기준 n차 integral 영상을 이용하여 기준영상의 특정 블록에 대한 n차 모멘텀을 구한다(S310). 즉, 상기 움직인 추정 장치는 수학식 3을 이용하여 n차 모멘텀을 구한다.Then, the motion estimation apparatus obtains n-th momentum of a specific block of the current image using the current n-th integral image, and obtains n-th momentum of a specific block of a reference image using the reference nth integral image. (S310). That is, the moved estimation apparatus obtains n-th order momentum by using Equation 3 below.
상기 움직임 추정 장치가 n차 모멘텀을 구하는 방법에 대해 도 4를 참조하면, (a)는 기준영상의 특정 블록(A')이 현재영상의 특정 블록(A)으로 움직였음을 나타낸다. 상기 움직임 추정 장치는 n차 모멘텀을 구하기 위하여 (b)와 같은 특정 블록에 대한 4개의 픽셀 좌표 즉, (xe, ye), (xe-1, ye-1), (xe-1, ye), (xe, ye-1)에서의 n차 integral 영상을 이용하여 블록 A에 대한 면적을 구한다.Referring to FIG. 4 for a method of obtaining the n-th order momentum by the motion estimation apparatus, (a) indicates that the specific block A 'of the reference image moves to the specific block A of the current image. The motion estimation apparatus calculates four pixel coordinates for a specific block such as (b), that is, (x e , y e ) , (x e -1, y e -1), and (x e −) to obtain an n-th order momentum. Find the area for block A using the nth order integral image at 1, y e ), (x e , y e -1).
즉, 상기 움직임 추정장치는 블록 A의 면적을 구하기 위하여 수학식 3과 같이 (xe, ye)에서의 n차 integral 영상에서 (xe-1, ye-1)에서의 n차 integral 영상을 더하고, (xe-1, ye)와 (xe, ye-1)에서의 n차 integral 영상을 빼서 상기 블록 A에 대한 면적을 구한다. 상기 구해진 면적이 n차 모멘텀 일 수 있다. That is, the motion estimation apparatus obtains the n-th integral image at (x e -1, y e -1) from the n-th integral image at (x e , y e ) as shown in Equation 3 to obtain the area of block A. And subtract the n-th integral image from (x e -1, y e ) and (x e , y e -1) to find the area for block A. The obtained area may be n-th momentum.
상기 S310의 수행 후, 상기 움직임 추정 장치는 상기 현재영상의 특정 블록에 대한 n차 모멘텀과 상기 기준영상의 특정블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하고(S312), 상기 구해진 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정한다(S314).After performing the S310, the motion estimation apparatus obtains a block matching error by using a difference between an n th order moment for a specific block of the current image and an n th order momentum for a specific block of the reference image (S312). The coordinate difference between blocks having the minimum block matching error is estimated as a motion vector (S314).
상기와 같이 움직임 추정 장치는 현재영상의 각 블록에 대해 n차 integral 영상을 한 번 계산하여 찾으면 모든 후보 움직임 벡터에 대해 동일하게 사용할 수 있으므로 NxN 크기의 블록비교시 (2NxN-1)번의 연산이 5*K-1로 감소하여 연산시간의 감소를 가져올 수 있다. 즉, 일반적으로 N이 8이므로, 기존 127번의 연산이 K가 2인 경우 9번, K가 3인 경우 14번으로 감소하므로 약 9배에서 14배정도의 속도 향상을 가져올 수 있다. As described above, if the motion estimation apparatus calculates and finds an nth order integral image once for each block of the current image, the same can be used for all candidate motion vectors. Therefore, the operation of (2NxN-1) is 5 when comparing NxN blocks. It can be reduced to K-1, resulting in a reduction in computation time. That is, since N is 8 in general, the conventional 127 operations are reduced to 9 times when K is 2, and 14 times when K is 3, thereby bringing about 9 to 14 times speed improvement.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Thus, those skilled in the art will appreciate that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the embodiments described above are to be considered in all respects only as illustrative and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.
이상과 같이 본 발명의 고속 움직임 추정을 위한 장치 및 방법은 블록 정합(block matching)을 통해 최소의 SAD 또는 SSD를 찾고, 그 SAD 또는 SSD를 이용하여 움직임 벡터를 추정하여 움직임 추정 시 소요되는 연산량을 줄이고, 고속의 영상 인코딩을 가능하게 하는 경우에 적합하다.
As described above, the apparatus and method for fast motion estimation of the present invention finds a minimum SAD or SSD through block matching, estimates a motion vector using the SAD or SSD, and calculates an amount of computation required for motion estimation. It is suitable for the case of reducing and enabling high speed image encoding.
100 : 영상 부호화 장치 110 : 움직임 추정부
120 : 움직임 보상부 130 : 감산기
140 : 주파수 공간 변환부 150 : 양자화부
160 : 엔트로피 부호화부 170 : 역양자화부
180 : 주파수 공간 역변환부 190 : 가산기
200 : 움직임 추정 장치 210 : n차 영상 생성부
220 : n차 integral 영상 생성부 230 : n차 모멘텀 계산부
240 : 움직임 벡터 추정부 100: video encoding apparatus 110: motion estimation unit
120: motion compensation unit 130: subtractor
140: frequency space conversion unit 150: quantization unit
160: entropy encoding unit 170: inverse quantization unit
180: frequency space inverse transform unit 190: the adder
200: motion estimation apparatus 210: n-th order image generating unit
220: n-th integral image generating unit 230: n-th order momentum calculation unit
240: motion vector estimation unit
Claims (7)
상기 현재 n차 영상들의 면적을 구하여 현재 n차 integral 영상을 생성하고, 상기 기준 n차 영상들의 면적을 구하여 기준 n차 integral 영상을 생성하는 n차 integral 영상 생성부;
상기 현재 n차 integral 영상을 이용하여 현재영상의 특정 블록에 대한 n차 모멘텀을 구하고, 상기 기준 n차 integral 영상을 이용하여 기준영상의 특정 블록에 대한 n차 모멘텀을 구하는 n차 모멘텀 계산부; 및
상기 현재영상의 특정 블록에 대한 n차 모멘텀과 상기 기준영상의 특정블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하고, 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정하는 움직임 벡터 추정부;
를 포함하는 움직임 추정 장치.an n-th image generation unit configured to generate a current n-th image and a reference n-th image each of which the pixel value is multiplied n times of each pixel value in the n-dimensional current image and the reference image;
An nth order integral image generator configured to obtain an area of the current nth order images to generate a current nth order integral image and to obtain an area of the reference nth order images to generate a reference nth order integral image;
An n th order momentum calculator for obtaining an n th order momentum of a specific block of the current image using the current n th order integral image, and obtaining an n th order momentum of a specific block of the reference image using the reference n th order integral image; And
A block matching error is obtained by using a difference between n-th order momentum of the specific block of the current image and n-th order momentum of the specific block of the reference image, and the coordinate difference between the blocks having the minimum block matching error is estimated as a motion vector. A motion vector estimator;
Motion estimation apparatus comprising a.
상기 n차 영상 생성부는 다음의 수학식을 이용하여 n차 영상을 생성하는 것을 특징으로 하는 움직임 추정 장치.
[수학식]
여기서, i(x,y)은 현재영상 또는 기준영상을 나타낸 원영상이고, On(x,y)는 현재 또는 기준 n차 영상, (x,y)는 픽셀 좌표임.
The method of claim 1,
The nth order image generating unit generates an nth order image by using the following equation.
[Mathematical Expression]
Here, i (x, y) is the original image representing the current image or the reference image, O n (x, y) is the current or reference nth order image, and (x, y) is the pixel coordinate.
상기 n차 integral 영상 생성부는 다음의 수학식을 이용하여 현재 n차 integral 영상과 기준 n차 integral 영상을 각각 생성하는 것을 특징으로 하는 움직임 추정 장치.
[수학식]
여기서, (x,y)는 픽셀좌표, In(x,y)는 현재 또는 기준 n차 integral 영상, On(x,y)는 현재 또는 기준 n차 영상임. The method of claim 1,
The nth order integral image generating unit generates a current nth order integral image and a reference nth order integral image by using the following equation.
[Mathematical Expression]
Here, (x, y) is the pixel coordinate, I n (x, y) is the current or reference nth integral image, and O n (x, y) is the current or reference nth order image.
상기 n차 모멘텀 계산부는 현재영상과 기준영상의 특정 블록 4개 좌표에서의 n차 integral 영상에 의한 다음의 수학식을 이용하여 상기 특정 블록의 면적을 구하되, 상기 특정 블록의 면적이 상기 현재영상 또는 기준영상의 특정 블록에 대한 n차 모멘텀(Mn)인 것을 특징으로 하는 움직임 추정 장치.
[수학식]
여기서, 상기 In(xe, ye)는 (xe, ye)좌표에서의 n차 integral 영상, In(xe-1, ye-1)는 (xe-1, ye-1)좌표에서의 n차 integral 영상, In(xe-1, ye)는 (xe-1, ye)좌표에서의 n차 integral 영상, In(xe, ye-1)는 (xe, ye-1) 좌표에서의 n차 integral 영상임.The method of claim 1,
The n-th momentum calculation unit obtains an area of the specific block by using the following equation of the n-th integral image in four coordinates of a specific block of the current image and the reference image, and the area of the specific block is the current image. Or n-th momentum (M n ) with respect to a specific block of the reference image.
[Mathematical Expression]
Here, I n (x e , y e ) is an n-th integral image in (x e , y e ) coordinates, and I n (x e -1, y e -1) is (x e -1, y e N-th integral image in coordinates, I n (x e -1, y e ) is n-th integral image in coordinates (x e -1, y e ), I n (x e , y e -1 ) Is an n-th integral image at (x e , y e -1) coordinates.
상기 움직임 벡터 추정부는 상기 블록 정합 오차를 다음의 수학식을 이용하여 SAD 및 SSD 중 적어도 어느 하나의 값으로 산출하는 것을 특징으로 하는 움직임 추정 장치.
[수학식]
여기서 Mn,ref는 기준영상의 특정블록의 n차 모멘텀, Mn,curr는 현재영상의 특정블록의 n차 모멘텀, αn 및 ßn 는 n차 모멘텀에 대한 가중치, γ는 scale 상수임.The method of claim 1,
The motion vector estimator calculates the block matching error as at least one of SAD and SSD using the following equation.
[Mathematical Expression]
Where M n and ref are the nth order momentum of a specific block of the reference picture, M n , curr are the nth order momentum of the specific block of the current picture, α n and ß n are the weights of the nth order momentum, and γ are the scale constants.
상기 추정된 움직임 벡터를 이용하여 상기 기준영상으로부터 상기 현재영상에 대한 예측영상을 생성하는 움직임 보상부;
상기 현재영상으로부터 상기 생성된 예측 영상을 감산함으로써 상기 현재 영상과 상기 예측 영상의 차이를 생성하는 감산부; 및
상기 생성된 현재 영상과 예측 영상의 차이를 부호화하는 부호화부;
를 포함하는 고속 움직임 추정을 위한 영상 부호화 장치. After generating the n-th order image of the current image and the reference image of the n-dimensional, respectively, the area of the n-th image is generated to generate the n-th integral image, the current using the n-th integral image Obtains n-th order momentum of a specific block of an image and a reference image, obtains a block matching error by using a difference between the n-th order momentum of a specific block of the current image and a reference image, and coordinates of blocks having a minimum block matching error. A motion estimator for estimating a difference as a motion vector;
A motion compensator configured to generate a predicted image of the current image from the reference image by using the estimated motion vector;
A subtraction unit configured to generate a difference between the current image and the prediction image by subtracting the generated prediction image from the current image; And
An encoder which encodes a difference between the generated current image and a predicted image;
An image encoding apparatus for fast motion estimation comprising a.
상기 현재 n차 영상들의 면적을 구하여 현재 n차 integral 영상과 상기 기준 n차 영상들의 면적을 구하여 기준 n차 integral 영상을 생성하는 단계;
상기 현재 n차 integral 영상을 이용하여 현재영상의 특정 블록에 대한 n차 모멘텀을 구하고, 상기 기준 n차 integral 영상을 이용하여 기준영상의 특정 블록에 대한 n차 모멘텀을 구하는 단계;
상기 현재영상의 특정 블록에 대한 n차 모멘텀과 상기 기준영상의 특정블록에 대한 n차 모멘텀 간의 차를 이용하여 블록 정합 오차를 구하는 단계; 및
상기 구해진 블록 정합 오차가 최소인 블록들의 좌표 차를 움직임 벡터로 추정하는 단계;
를 포함하는 고속 움직임 추정 방법.generating a current nth order image and a reference nth order image, each pixel value of the n-dimensional current image and the reference image as n times the pixel value;
Generating a reference nth integral image by obtaining areas of the current nth order images and obtaining areas of the current nth order integral image and the reference nth order images;
Obtaining n-th order momentum of a specific block of a current image using the current n-th integral image, and obtaining n-th momentum of a specific block of a reference image using the reference n-th integral image;
Obtaining a block matching error using a difference between an n th order moment for a specific block of the current image and an n th order momentum for a specific block of the reference image; And
Estimating a coordinate difference between blocks having the minimum block matching error as a motion vector;
Fast motion estimation method comprising a.
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110072892A KR101786957B1 (en) | 2011-07-22 | 2011-07-22 | Apparatus and Method for fast motion estimation |
EP16204373.1A EP3171603A1 (en) | 2011-07-06 | 2012-05-02 | Method, and device and method for estimating high-speed movement for image encoding |
PCT/KR2012/003410 WO2013005917A1 (en) | 2011-07-06 | 2012-05-02 | Multicast-based content transmitting system and method, and device and method for estimating high-speed movement |
CN201610810849.4A CN106131572B (en) | 2011-07-06 | 2012-05-02 | The picture coding device, motion estimation device and method of movement are estimated at high speed |
US14/131,068 US9769511B2 (en) | 2011-07-06 | 2012-05-02 | Multicast-based content transmitting system and method, and device and method for estimating high-speed movement |
CN201710219659.XA CN106875416B (en) | 2011-07-06 | 2012-05-02 | User terminal and multicast-based content receiving method of user terminal |
EP12806939.0A EP2731278A4 (en) | 2011-07-06 | 2012-05-02 | Multicast-based content transmitting system and method, and device and method for estimating high-speed movement |
CN201280033573.3A CN103650375B (en) | 2011-07-06 | 2012-05-02 | Multicast-based content transmitting system and method, and device and method for estimating high-speed movement |
US14/568,628 US9355461B2 (en) | 2011-07-06 | 2014-12-12 | Multicast-based content transmitting system and method, and device and method for estimating high-speed movement |
US15/673,034 US10341704B2 (en) | 2011-07-06 | 2017-08-09 | Multicast-based content transmitting system and method, and device and method for estimating high-speed movement |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110072892A KR101786957B1 (en) | 2011-07-22 | 2011-07-22 | Apparatus and Method for fast motion estimation |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160142457A Division KR101786921B1 (en) | 2016-10-28 | 2016-10-28 | Apparatus and Method for fast motion estimation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130011610A true KR20130011610A (en) | 2013-01-30 |
KR101786957B1 KR101786957B1 (en) | 2017-10-18 |
Family
ID=47840539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110072892A KR101786957B1 (en) | 2011-07-06 | 2011-07-22 | Apparatus and Method for fast motion estimation |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101786957B1 (en) |
-
2011
- 2011-07-22 KR KR1020110072892A patent/KR101786957B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR101786957B1 (en) | 2017-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5669278B2 (en) | Method for coding a block of an image sequence and method for reconstructing this block | |
KR101429407B1 (en) | Video coding apparatus, video coding method and computer readable recording medium | |
JP5277257B2 (en) | Video decoding method and video encoding method | |
KR100803611B1 (en) | Method and apparatus for encoding video, method and apparatus for decoding video | |
EP2805499B1 (en) | Video decoder, video encoder, video decoding method, and video encoding method | |
KR20130085838A (en) | Video coding method and apparatus using weighted prediction | |
JP2014195145A (en) | Moving image encoding device, moving image decoding device, moving image encoding method, moving image decoding method, and program | |
KR20120098500A (en) | Method for transforming and inverse-transforming image, and apparatus using the same | |
KR20230098527A (en) | Methods and apparatus for video transform encoding/decoding | |
KR20110114429A (en) | Method and apparatus for transforming image, and method and apparatus for inverse-transforming image | |
JP2018074491A (en) | Dynamic image encoding device, dynamic image encoding method, and dynamic image encoding program | |
KR20130046377A (en) | Methods for coding and reconstructing a pixel block and corresponding devices | |
KR20080064011A (en) | Method of estimating motion vector considering the size of neighboring partition, apparatus, encoder, decoder and decoding method | |
KR20120080552A (en) | Video coding and decoding method and apparatus using adaptive motion vector coding/encoding | |
JP5832263B2 (en) | Image coding apparatus and image coding method | |
KR101786921B1 (en) | Apparatus and Method for fast motion estimation | |
KR20090117858A (en) | Method and apparatus for encoding/decoding interlace scanning image using motion vector transformation | |
KR20160128972A (en) | Apparatus and method for profile based motion estimation | |
KR101786957B1 (en) | Apparatus and Method for fast motion estimation | |
JP5281597B2 (en) | Motion vector prediction method, motion vector prediction apparatus, and motion vector prediction program | |
KR0152014B1 (en) | Method and apparauts for moving estimation in image data compression | |
KR20190050207A (en) | System and method for motion estimation for high-performance hevc encoder | |
JP6004852B2 (en) | Method and apparatus for encoding and reconstructing pixel blocks | |
KR101895822B1 (en) | Apparatus and method for profile based motion estimation | |
WO2013002219A1 (en) | Video encoding device, video decoding device, video encoding method, video decoding method , video encoding program, video decoding program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |