KR101221227B1 - Method and apparatus for estimating motion using region allocation based on multi core - Google Patents

Method and apparatus for estimating motion using region allocation based on multi core Download PDF

Info

Publication number
KR101221227B1
KR101221227B1 KR1020120049500A KR20120049500A KR101221227B1 KR 101221227 B1 KR101221227 B1 KR 101221227B1 KR 1020120049500 A KR1020120049500 A KR 1020120049500A KR 20120049500 A KR20120049500 A KR 20120049500A KR 101221227 B1 KR101221227 B1 KR 101221227B1
Authority
KR
South Korea
Prior art keywords
image frame
searcher
previous image
object searcher
motion estimation
Prior art date
Application number
KR1020120049500A
Other languages
Korean (ko)
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 KR1020120049500A priority Critical patent/KR101221227B1/en
Application granted granted Critical
Publication of KR101221227B1 publication Critical patent/KR101221227B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search

Abstract

PURPOSE: A motion estimating apparatus using a multi-core based region allocation is provided to lower the complexity of a spiral shape searching method by interactively allocating the position of each object searcher and excluding a similar operation process in advance. CONSTITUTION: A motion estimation apparatus produces at least one object searcher searching a reference block in a previous video frame which is the same object with a current block in the current image frame of received image data(S200). The apparatus divides each domain in the previous image frame. The apparatus allocates the object searcher in the allocated domain(S300). The apparatus produces a motion vector of which a position change between the reference block and the current block becomes a minimum value by the object search of the object searcher in the previous image frame. The apparatus determines a reference block in the previous image frame(S400). [Reference numerals] (AA) Start; (BB) End; (S100) Receiving image data from a plurality of frames; (S200) Producing at least one object searcher for searching an object same as an object which is located in a current block in a current image frame of the image data, within a previous video frame; (S300) Allocating the object searcher by dividing each area within the previous image frame; (S400) Producing a motion vector of which an object position change becomes a minimum value by the object search of the object searcher in the previous image frame, and determining a reference block in the previous image frame

Description

다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치{METHOD AND APPARATUS FOR ESTIMATING MOTION USING REGION ALLOCATION BASED ON MULTI CORE}METHOD AND APPARATUS FOR ESTIMATING MOTION USING REGION ALLOCATION BASED ON MULTI CORE}

본 발명의 실시예는 다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치에 관한 것으로, 특히 영상의 영역을 분할 및 할당하여 연산의 복잡도를 최소화할 수 있는 다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치에 관한 것이다.
Embodiments of the present invention relate to a motion estimation method and apparatus using multi-core based region allocation, and more particularly, to a motion estimation method using multi-core based region allocation capable of minimizing computational complexity by segmenting and allocating image regions. Relates to a device.

일반적으로, 영상 데이터는 중복되는 정보가 많으므로, 디지털 영상을 처리하기 위해서는 방대한 양의 데이터를 필요로 한다. 최근, 이러한 디지털 영상을 처리, 저장 및 전송하기 위해 VLSL 및 신호처리기술을 이용한 여러 전송, 저장 매체가 출연하고 있다. 다만, 전송에 필요한 통신 선로의 대역폭, 정보 저장에 필요한 저장 용량의 문제 등을 고려해볼 때, 높은 압축률을 가지는 데이터 압축 기술이 요구된다.In general, video data has a lot of overlapping information, and therefore requires a large amount of data to process a digital video. Recently, various transmission and storage media using VLSL and signal processing technologies have appeared to process, store, and transmit such digital images. However, considering the bandwidth of the communication line required for transmission, the storage capacity required for information storage, and the like, a data compression technique having a high compression ratio is required.

이러한 요구를 충족시키기 위해 제안된 방법들 중에는, 영상 움직임 추정 방법이 있다. 이 방법은 현재 영상의 블록과 가장 유사한 블록을 참조 영상, 또는 참조 영상들에서 찾고, 현재 영상의 블록과 참조 영상에서의 상응하는 블록 사이의 변위를 움직임 벡터(Motion Vector)로서 나타내고 있다.Among the methods proposed to meet this demand, there is an image motion estimation method. The method finds the block most similar to the block of the current picture in the reference picture or reference pictures, and represents the displacement between the block of the current picture and the corresponding block in the reference picture as a motion vector.

동영상의 움직임 추정 방법들 중에는, 전영역 탐색(Full Search) 방법이 있다. 이는 먼저 참조 영상 내에서 탐색 영역을 정하고, 탐색 영역의 최대 변위 내에서 가능한 모든 블록들 중에서 최소의 예측 오차를 가지는 블록과 현재 블록 간의 변위를 움직임 벡터로서 결정하는 방법이다. 전영역 탐색 방법은 최대 움직임이 탐색 영역을 벗어나지 않는 경우에는 매우 높은 정확도로 움직임 정보를 구할 수 있다.Among motion estimation methods of a video, there is a full search method. This is a method of first determining a search region in a reference image and determining the displacement between the current block and the block having the smallest prediction error among all possible blocks within the maximum displacement of the search region as a motion vector. The full-area search method can obtain motion information with very high accuracy when the maximum motion does not leave the search area.

그런데, 비디오 압축 및 압축 복원에 사용되는 움직임 추정 및 보상(Motion Estimation and Compensation) 알고리즘을 구현하는 데는 높은 메모리 대역폭이 요구된다. 실시간 인코더에서는 한정된 자원에 의해 움직임 추정을 위한 탐색 영역(Search Area)이 제한될 수 밖에 없다.However, a high memory bandwidth is required to implement a motion estimation and compensation algorithm used for video compression and decompression. In a real time encoder, a search area for motion estimation is limited by limited resources.

따라서, 탐색 영역이 제한되지 않으면서도, 높은 압축률을 가질 수 있는 움직임 추정 방법이 요구되었고, 한국등록공보 제10-0492127호는 이러한 기술을 개시하고 있다.Therefore, a motion estimation method that can have a high compression rate without limiting the search area has been required, and Korean Patent Publication No. 10-0492127 discloses such a technique.

그러나, 이러한 움직임 추정 방법으로 참조 블록을 찾는 과정은 그 연산량 및 복잡도가 높아 연산에 따른 시간의 증가 및 그에 부수하는 시스템 구축 비용의 증가를 가져오게 되는 등의 문제점이 있었다.However, the process of finding a reference block using such a motion estimation method has a problem in that the computation amount and complexity are high, resulting in an increase in time caused by an operation and an accompanying system construction cost.

한국등록공보 제10-0492127호Korean Registered Publication No. 10-0492127

본 발명의 실시예는 전술한 문제점을 해결하기 위하여 창안된 것으로서, 각 객체 탐색자의 위치를 인터리브(Interleave)하게 할당하여 유사한 연산 과정을 미연에 배제시킴으로써, 나선형 탐색 방법의 복잡도를 낮출 수 있는 다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치를 제공하는 것을 목적으로 한다.The embodiment of the present invention was devised to solve the above-described problem, and by interleaving the position of each object searcher to exclude similar computational processes, thereby reducing the complexity of the spiral search method. An object of the present invention is to provide a motion estimation method and apparatus using the base area allocation.

본 발명의 실시예는, 참조 블록을 빠르게 찾기 위하여 각 객체 탐색자의 수만큼의 코어를 구비 및 매칭시키고, 다중코어를 순차적으로 또는 동시에 구동시킴으로써, 각 영역별로 참조 블록을 찾게 되므로, 참조 블록을 찾는데 드는 연산의 복잡도 및 그 시간을 줄일 수 있는 다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치를 제공하는 것을 목적으로 한다.In an embodiment of the present invention, since the number of cores of each object searcher is provided and matched to find the reference block quickly, and the multi-cores are sequentially or simultaneously driven to find the reference block for each region, It is an object of the present invention to provide a motion estimation method and apparatus using multi-core based region allocation that can reduce the complexity of computation and the time.

본 발명의 실시예는, 객체 탐색자 및 다중코어를 이용하여 움직임 추정의 복잡도를 최소화함으로써, 영상의 인코딩, 디코딩, 압축 등에 소요되는 시스템 구축 비용 및 시간을 극소화할 수 있는 움직임 추정 방법 및 장치를 제공하는 것을 목적으로 한다.
An embodiment of the present invention provides a motion estimation method and apparatus capable of minimizing a system construction cost and time required for encoding, decoding, and compressing an image by minimizing the complexity of motion estimation using an object searcher and multiple cores. It aims to do it.

상기한 바와 같은 목적을 달성하기 위하여 본 발명은 실시예들 중에서, 복수의 프레임으로 구성된 영상 데이터를 입력받는 단계, 상기 영상 데이터의 현재 영상 프레임 내의 현재 블록에 위치한 객체와 동일한 객체를, 이전 영상 프레임 내에서 검색하기 위해 적어도 하나의 객체 탐색자를 생성하는 단계, 상기 객체 탐색자를 상기 이전 영상 프레임 내 각 영역을 분할하여 할당하는 단계, 및 상기 이전 영상 프레임 내에서 상기 객체 탐색자가 객체 탐색을 실행하여 객체 위치 이동이 최소값이 되는 움직임 벡터(Motion Vector)를 산출 및 이전 영상 프레임 내의 참조 블록을 결정하는 단계를 포함하는 다중코어기반 영역 할당을 이용한 움직임 추정 방법을 이용하여 과제를 해결할 수 있도록 이루어진다.In order to achieve the object as described above, the present invention, in the embodiments of the present invention, the step of receiving the image data consisting of a plurality of frames, the same object located in the current block in the current image frame of the image data, the previous image frame Generating at least one object searcher to search within, dividing and allocating the object searcher in each region in the previous image frame, and performing the object search by the object searcher in the previous image frame The problem can be solved using a motion estimation method using multi-core based region allocation, which includes calculating a motion vector having a minimum position movement and determining a reference block in a previous image frame.

실시예들 중에서, 복수의 프레임으로 구성된 영상 데이터를 입력받는 수신부, 상기 영상 데이터의 현재 영상 프레임 내의 현재 블록에 위치한 객체와 동일한 객체를, 이전 영상 프레임 내에서 검색하기 위해 적어도 하나의 객체 탐색자를 생성하는 생성부, 상기 객체 탐색자를 상기 이전 영상 프레임 내 각 영역을 분할하여 할당하는 할당부, 및 상기 이전 영상 프레임 내에서 상기 객체 탐색자가 객체 탐색을 실행하여 객체 위치 이동이 최소값이 되는 움직임 벡터(Motion Vector)를 산출 및 이전 영상 프레임 내의 참조 블록을 결정하는 결정부를 포함하는 다중코어기반 영역 할당을 이용한 움직임 추정 장치를 이용하여 과제를 해결할 수 있도록 이루어진다.
In one or more embodiments, a receiver configured to receive image data including a plurality of frames, and generate at least one object searcher to search for an object identical to an object located in a current block within a current image frame of the image data within a previous image frame. A generation unit for allocating the object searcher by dividing each area in the previous image frame, and a motion vector in which the object position is minimized by performing the object search by the object searcher in the previous image frame. It is possible to solve the problem by using a motion estimation apparatus using multi-core-based region allocation that includes a determination unit for calculating a vector and determining a reference block in a previous image frame.

이상에서 설명한 바와 같이, 상기와 같은 구성을 갖는 본 발명의 개시된 기술은 각 객체 탐색자의 위치를 인터리브(Interleave)하게 할당하여 유사한 연산 과정을 미연에 배제시킴으로써, 나선형 탐색 방법의 복잡도를 낮출 수 있는 다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치를 제공할 수 있다.As described above, the disclosed technology of the present invention having the above-described configuration is capable of lowering the complexity of the spiral search method by interleaving the position of each object searcher and excluding similar calculation processes. A motion estimation method and apparatus using core-based region allocation can be provided.

또한, 본 발명은 객체 탐색자 및 다중코어를 이용하여 움직임 추정의 복잡도를 최소화함으로써, 영상의 인코딩, 디코딩, 압축 등에 소요되는 시스템 구축 비용 및 시간을 극소화할 수 있는 다중코어기반 영역 할당을 이용한 움직임 추정 방법 및 장치를 제공할 수 있다.
In addition, the present invention minimizes the complexity of motion estimation by using an object searcher and multicore, and thus, motion estimation using multi-core based region allocation, which minimizes the system construction cost and time required for encoding, decoding, and compressing an image. A method and apparatus can be provided.

도 1은 본 발명의 실시예에 따른 움직임 추정을 설명하기 위한 개념도이다.
도 2는 본 발명의 실시예에 따른 움직임 추정을 설명하기 위한 개념도이다.
도 3은 본 발명의 실시예에 따른 나선형 탐색 방법을 도시한 도면이다.
도 4는 본 발명의 실시예에 따른 움직임 추정 장치를 설명하기 위한 블록도이다.
도 5는 본 발명의 실시예에 따른 움직임 추정 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따라 산출된 움직임 벡터를 도시한 도면이다.
도 7은 본 발명의 실시예에 따른 움직임 추정 방법을 설명하는 순서도이다.
도 8은 본 발명의 실시예에 따른 움직임 추정 방법을 설명하기 위한 도면이다.
1 is a conceptual diagram illustrating a motion estimation according to an embodiment of the present invention.
2 is a conceptual diagram illustrating a motion estimation according to an embodiment of the present invention.
3 is a diagram illustrating a spiral search method according to an embodiment of the present invention.
4 is a block diagram illustrating a motion estimation apparatus according to an embodiment of the present invention.
5 is a view for explaining a motion estimation method according to an embodiment of the present invention.
6 is a diagram illustrating a motion vector calculated according to an embodiment of the present invention.
7 is a flowchart illustrating a motion estimation method according to an embodiment of the present invention.
8 is a view for explaining a motion estimation method according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 이하의 설명에 있어서, 당업자에게 주지 저명한 기술에 대해서는 그 상세한 설명을 생략할 수 있다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, a detailed description of known techniques well known to those skilled in the art may be omitted.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 동일한 명칭의 구성 요소에 대하여 도면에 따라 다른 참조부호를 부여할 수도 있으며, 서로 다른 도면임에도 불구하고 동일한 참조부호를 부여할 수도 있다. 그러나, 이와 같은 경우라 하더라도 해당 구성 요소가 실시예에 따라 서로 다른 기능을 갖는다는 것을 의미하거나, 서로 다른 실시예에서 동일한 기능을 갖는다는 것을 의미하는 것은 아니며, 각각의 구성 요소의 기능은 해당 실시예에서의 각각의 구성요소에 대한 설명에 기초하여 판단하여야 할 것이다.In describing the constituent elements of the present invention, the same reference numerals may be given to constituent elements having the same name, and the same reference numerals may be given thereto even though they are different from each other. However, even in such a case, it does not mean that the corresponding component has different functions according to the embodiment, or does not mean that the different components have the same function. It should be judged based on the description of each component in the example.

또한, 본 발명의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다.In the following description of the embodiments of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected or connected to the other component, Quot; may be "connected," "coupled," or "connected. &Quot;

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.It should be understood that the singular " include "or" have "are to be construed as including a stated feature, number, step, operation, component, It is to be understood that the combination is intended to specify that it does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하더라도 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, the identification code does not describe the order of each step, It may occur differently from the order specified. That is, each step may occur in the same order as described, may be performed substantially concurrently, or may be performed in reverse order.

이하, 본 발명에 따른 실시예를 첨부된 예시도면을 참고로 하여 상세하게 설명한다.
Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 움직임 추정을 설명하기 위한 개념도이고, 도 2는 본 발명의 실시예에 따른 움직임 추정을 설명하기 위한 개념도이고, 도 3은 본 발명의 실시예에 따른 나선형 탐색 방법을 도시한 도면이다.1 is a conceptual diagram illustrating a motion estimation according to an embodiment of the present invention, FIG. 2 is a conceptual diagram illustrating a motion estimation according to an embodiment of the present invention, and FIG. 3 is a spiral search according to an embodiment of the present invention. A diagram illustrating the method.

우선, 동영상 분야에서는 현재 블록을 압축할 경우, 참조 블록을 이전 프레임 영상에서 찾아 그 차성분을 압축하여 전송한다. 참조 블록과 현재 블록의 크기를 MxN이라고 하면, 참조 블록은 하기 수학식 1과 같이 현재 블록과의 차이를 최소로 하는 위치로 결정된다.
First, in the video field, when a current block is compressed, a reference block is found in a previous frame image and the difference component is compressed and transmitted. If the size of the reference block and the current block is MxN, the reference block is determined as a position that minimizes the difference between the current block as shown in Equation 1 below.

Figure 112012037326200-pat00001
Figure 112012037326200-pat00001

여기서, Ic는 현재 영상 프레임이고, Ir은 이전 영상 프레임이고, Ic(x,y)는 Ic 프레임의 x,y 위치 픽셀값이며, Ir(x,y)는 Ir 프레임의 x,y 위치 픽셀값이고, dx, dy는 참조 영상의 위치를 나타내는 값이며, (dx, dy)를 움직임 벡터(Motion Vector)라 한다.Where Ic is the current image frame, Ir is the previous image frame, Ic (x, y) is the x, y position pixel value of the Ic frame, and Ir (x, y) is the x, y position pixel value of the Ir frame. Where dx and dy are values indicating the position of the reference picture, and (dx, dy) is referred to as a motion vector.

즉, (a) t 번째 프레임에 존재하는 MxN 크기의 현재 블록이 있다고 가정하면, (b) t-1 번째 프레임에서 현재 블록 주변의 wxw 크기의 검색 윈도우 안에서 현재 블록과 SAD(Sum Absolute Difference) 차이가 가장 작은 위치의 블록을 찾으면, 이를 참조 블록으로 설정할 수 있다.That is, (a) assuming that there is a current block of size MxN existing in the t th frame, (b) the difference between the current block and the sum absorptive difference (SAD) in the wxw search window around the current block in the t-1 th frame. Finds the block with the smallest position, it can be set as a reference block.

그리고 나서, (c) 현재 블록과 참조 블록 간의 위치 변화를 움직임 벡터로 인지하게 된다. 이렇게 참조 블록을 찾는 과정을 움직임 추정(Motion Estimation, ME)라고 하고, 이러한 움직임 추정의 복잡도는 상당히 높기 때문에 여러 가지 알고리즘이 개발되었다.Then, (c) the position change between the current block and the reference block is recognized as a motion vector. The process of finding the reference block is called motion estimation (ME), and since the complexity of the motion estimation is very high, various algorithms have been developed.

본 발명에서는 움직임 추정 방법 중 하나인 나선형 탐색(Spiral Search)을 개선하는 방법을 제안한다. 이를 위해 본 발명에서는 다중코어 시스템을 이용하여 참조 블록을 찾는 영역을 효과적으로 분할한다.The present invention proposes a method for improving spiral search, which is one of motion estimation methods. To this end, the present invention effectively partitions an area for finding a reference block using a multicore system.

도 3을 참조하면, 나선형 탐색 방법은 이전 영상 프레임에서 원점을 기준점으로 잡고, 이를 중심으로 중앙 부분부터 가장 유사한 참조 블록을 탐색해 나간다. 나선형 방식의 탐색 순서는 하기 수학식 2와 같고 나선형 탐색 방식은 각 위치에서 현재 블록과 참조 블록, 두 블록의 거리 데이터(D)를 상기 수학식 1에 대입하여 계산한다. Referring to FIG. 3, the spiral search method takes an origin as a reference point in a previous image frame and searches for a reference block most similar to the center from the center. The helical search order is as shown in Equation 2 below, and the helical search method is calculated by substituting the distance data D of two blocks, the current block and the reference block at each position, into Equation 1 above.

Figure 112012037326200-pat00002
Figure 112012037326200-pat00002

Figure 112012037326200-pat00003
Figure 112012037326200-pat00003

이때, 참조 블록, 즉 거리 데이터가 최소가 되는 위치를 빨리 찾으면 찾을수록, 그 후의 탐색 위치를 생략 또는 간략화할 수 있다. 즉, 거리 데이터(D)가 최소값 또는 작은 위치를 빨리 탐지할수록 나선형 탐색 방법의 복잡도는 낮아질 수 있다.
In this case, as soon as the reference block, that is, the position where the distance data is minimized, is found, the subsequent search position may be omitted or simplified. That is, as soon as the distance data D detects a minimum or small location, the complexity of the spiral search method may be lowered.

도 4는 본 발명의 실시예에 따른 움직임 추정 장치를 설명하기 위한 블록도이고, 도 5는 본 발명의 실시예에 따른 움직임 추정 방법을 설명하기 위한 도면이고, 도 6은 본 발명의 실시예에 따라 산출된 움직임 벡터를 도시한 도면이다.4 is a block diagram for explaining a motion estimation apparatus according to an embodiment of the present invention, FIG. 5 is a diagram for explaining a motion estimation method according to an embodiment of the present invention, and FIG. 6 is an embodiment of the present invention. It is a figure which shows the motion vector computed accordingly.

도 4 및 도 5는 본 발명의 일 실시예에 따른 움직임 추정 장치를 설명하기 위한 도이다. 도 4에 도시된 수신부(10), 생성부(30), 할당부(50), 결정부(70), 도 5에 도시된 분할 및 할당된 영역은 설명의 편의를 위해 예시된 것에 불과하므로, 본원의 움직임 추정 장치(1)가 도 4로 분류 및 설정되어야 하는 것은 아니고, 도 4 및 도 5에 도시된 것들로 한정 해석되는 것은 아니다.4 and 5 are diagrams for explaining a motion estimation apparatus according to an embodiment of the present invention. Since the receiver 10, the generator 30, the allocator 50, the determiner 70, and the division and the allocated region illustrated in FIG. 5 are merely illustrated for convenience of description, The motion estimation apparatus 1 of the present application is not to be classified and set in FIG. 4 and is not limited to those shown in FIGS. 4 and 5.

도 4를 참조하면, 수신부(10)는 복수의 프레임으로 구성된 영상 데이터를 입력받을 수 있다. 이는, 영상 또는 비디오 데이터를 인코딩, 디코딩, 부호화, 복호화 중 어느 하나를 하기 위한 것일 수 있다. 본 발명에서 설명하는 구성 이외의 동작은 인코딩, 디코딩, 부호화, 복호화 기술에 관련한 당업자에게는 명백하므로, 그 구체적인 설명은 생략한다.Referring to FIG. 4, the receiver 10 may receive image data composed of a plurality of frames. This may be for any one of encoding, decoding, encoding, and decoding video or video data. Operations other than the configuration described in the present invention are obvious to those skilled in the art related to the encoding, decoding, encoding, and decoding techniques, and thus detailed description thereof will be omitted.

생성부(30)는 영상 데이터의 현재 영상 프레임 내의 현재 블록과 동일한 객체인 이전 영상 프레임 내의 참조 블록을 검색하는 적어도 하나의 객체 탐색자를 생성할 수 있다. 여기서, 객체 탐색자는 적어도 하나의 코어와 1:1 매칭될 수 있다. 즉, 객체 탐색자는 현재 영상 프레임의 현재 블록을 참조하여, 이전 영상 프레임 내에 동일한 객체인 참조 블록을 탐색하기 위한 구성인데, 이러한 구성의 구동을 위해 적어도 하나의 코어가 구비될 수도 있다. 여기서, 객체 탐색자 자체가 코어가 될 수 있으며, 또는 코어가 객체 탐색자 자체가 될 수도 있으며, 시스템 및 구현 방법에 따라 다양하게 구성 가능하다.The generation unit 30 may generate at least one object searcher that searches for a reference block in a previous image frame that is the same object as the current block in the current image frame of the image data. Here, the object searcher may match 1: 1 with at least one core. That is, the object searcher is a configuration for searching for a reference block that is the same object in the previous image frame with reference to the current block of the current image frame. At least one core may be provided to drive the configuration. Here, the object searcher itself may be the core, or the core may be the object searcher itself, and may be variously configured according to a system and an implementation method.

또한, 객체 탐색자는 나선형 탐색(Spiral Search) 알고리즘을 이용할 수 있고, 적어도 하나의 객체 탐색자는 동시에 또는 순차적으로 객체인 참조 블록을 탐색할 수 있다. 예를 들어, 도 5와 같이 분할된 각 영역에 동시에 할당되어 원점을 기준점으로 하여 나선형을 그리면서 현재 영상 프레임의 현재 블록과 동일한 참조 블록을 찾기 위해 탐색을 시작할 수도 있고, 순차적으로 탐색을 할 수도 있다. 또는, 객체 탐색자를 구동하기 위한 코어가 1:1 매칭된 경우에는, 각 코어가 현재 영상 프레임의 현재 블록과 동일한 참조 블록을 찾기 위해 동시에 탐색을 위한 구동을 시작할 수도 있고, 순차적으로 탐색을 위한 구동을 할 수도 있다.In addition, the object searcher may use a spiral search algorithm, and at least one object searcher may search for a reference block that is an object simultaneously or sequentially. For example, as shown in FIG. 5, the search may be started or sequentially searched to find the same reference block as the current block of the current image frame while being spirally assigned to each divided area as a reference point. have. Alternatively, when the cores for driving the object searcher are matched 1: 1, each core may start driving for searching simultaneously to find the same reference block as the current block of the current image frame, or sequentially driving for searching. You can also do

도 4 및 도 5를 참조하면, 할당부(50)는 객체 탐색자를 이전 영상 프레임 내 각 영역을 분할하여 할당할 수 있다. 할당부(50)는 객체 검색자를 이전 영상 프레임 내에서 인터리브(Interleave)하게 할당할 수 있다. 즉, 연속적으로 영역을 분할하는 것이 아니라, 인터리브하게 탐색 위치를 분할하여 각 객체 탐색자에게 할당하는 것일 수 있다.4 and 5, the allocator 50 may allocate an object searcher by dividing each area of the previous image frame. The allocator 50 may allocate the object searcher interleaved in the previous image frame. In other words, rather than dividing the region continuously, the search position may be divided to be allocated to each object searcher by interleaving.

그 이유는, 움직임 추정 과정을 수행하다 보면 인근 영역에서 거리 데이터가 유사하게 계산되기 때문이며, 각 객체 탐색자 별로 특정 영역의 움직임 추정을 수행하는 것보다 인터리브하게 수행하는 것이 그 복잡도를 낮출 수 있고, 이는 하기 수학식 3과 같이 분할 및 할당될 수 있다.The reason for this is that distance data is similarly calculated in the neighboring area when performing the motion estimation process, and it is possible to reduce the complexity by performing interleaving rather than performing the motion estimation of the specific area for each object searcher. It may be divided and allocated as shown in Equation 3 below.

Figure 112012037326200-pat00004
Figure 112012037326200-pat00004

Figure 112012037326200-pat00005
Figure 112012037326200-pat00005

Figure 112012037326200-pat00006
Figure 112012037326200-pat00006

Figure 112012037326200-pat00007
Figure 112012037326200-pat00007

여기서, n은 n번째 분할 영역이다.
결정부(70)는 이전 영상 프레임 내에서 객체 탐색자가 객체인 참조 블록을 탐색하여 현재 블록 간의 위치 이동이 최소값이 되는 움직임 벡터(Motion Vector)를 산출 및 이전 영상 프레임 내의 참조 블록을 결정할 수 있다.
Where n is the n-th partition.
The determiner 70 may search for a reference block that is the object of the object searcher in the previous image frame, calculate a motion vector in which the position movement between the current blocks is the minimum value, and determine the reference block in the previous image frame.

본 발명은 디지털 비디오 녹화기, 캠코더, 방송 장비 등 디지털 비디오 압축 장치에 효과적으로 이용될 수 있다. 실시간 디지털 방송 촬영 장비, 개인 디지털 비디오 녹화기, 디지털 캠코더와 같은 디지털 비디오 촬영 장치에도 적용될 수 있다. 특히, 개인 휴대 기기와 같이 압축 용량과 장치 구동 자원에 상대적으로 제약이 있는 경우 더욱 효과적일 수 있다.
The present invention can be effectively used in a digital video compression device such as a digital video recorder, a camcorder, a broadcast equipment. It can also be applied to digital video recording devices such as real-time digital broadcasting equipment, personal digital video recorders, and digital camcorders. In particular, it may be more effective when there is a relatively limited compression capacity and device driving resources, such as a personal portable device.

도 7은 본 발명의 실시예에 따른 움직임 추정 방법을 설명하는 순서도이다.7 is a flowchart illustrating a motion estimation method according to an embodiment of the present invention.

우선, 복수의 프레임으로부터 구성된 영상 데이터를 입력받는다(S100).First, image data composed of a plurality of frames is received (S100).

그리고 나서, 영상 데이터의 현재 영상 프레임 내의 현재 블록과 동일한 객체인 이전 영상 프레임 내의 참조 블록을 검색하기 위해 적어도 하나의 객체 탐색자를 생성한다(S200).Then, at least one object searcher is generated to search for a reference block in a previous image frame that is the same object as the current block in the current image frame of the image data (S200).

생성된 객체 탐색자를 이전 영상 프레임 내 각 영역을 분할하여 할당하고(S300), 이전 영상 프레임 내에서 객체 탐색자가 참조 블록을 탐색하여 현재 블록 간의 위치 이동이 최소값이 되는 움직임 벡터(Motion Vector)를 산출 및 이전 영상 프레임 내의 참조 블록을 결정하게 한다(S400).
The generated object searcher is divided and allocated to each region in the previous image frame (S300), and the object searcher searches for the reference block in the previous image frame to calculate a motion vector in which the position movement between the current blocks is the minimum value. And determining a reference block in the previous image frame (S400).

도 8은 본 발명의 실시예에 따른 움직임 추정 방법을 설명하기 위한 도면이다.8 is a view for explaining a motion estimation method according to an embodiment of the present invention.

H.264/AVC 인코더는 인터코딩된 블록(Inter-coded block)에서 최적화된 움직임 벡터를 찾기 위한 라그랑지안 최적화 기법(Lagrangian optimization technique)을 사용한다. 움직임 벡터에 최적화 비트 할당이 제공되면서 높은 성능을 낼 수 있다. The H.264 / AVC encoder uses a Lagrangian optimization technique to find the optimized motion vector in the inter-coded block. High performance can be achieved by providing optimized bit allocation for motion vectors.

예를 들어, 다른 스캔 패턴으로 분리될 수 있는 탐색창과 같이, 나선형 탐색 기법이 병렬화될 수 있는 방법들은 여러 가지가 있을 수 있다. 예를 들어, (a)와 같이 탐색창이 완료될 때까지, 계속적으로 서브 창을 사용하여 구동 길이를 늘리는 단순한 방법을 사용할 수도 있다.For example, there may be a number of ways in which the spiral search technique may be parallelized, such as a search window that may be separated into different scan patterns. For example, a simple method of increasing the driving length by using the sub window continuously may be used until the search window is completed as shown in (a).

하지만, 복잡성 감소는 낮은 비트율 왜곡 비용을 가지는 픽셀 위치를 인코더가 얼마나 빨리 찾아내느냐에 달린 문제이다. 근접 위치의 비트율 왜곡 비용은 서로 강하게 연계되어 있다. 따라서, 탐색창이 연속적으로 분할되어, 각 스레드가 분할된 영역에서 독립적으로 값을 가진다면, 각 스레드가 작은 비트율 왜곡 비용을 가지는 영역을 책임질 수 있게 된다.However, the reduction in complexity is a matter of how fast the encoder finds pixel positions with low bit rate distortion costs. The bit rate distortion costs of the proximal positions are strongly linked to each other. Thus, if the search window is divided in succession, and each thread has a value independently in the divided region, each thread can be responsible for the region having a small bit rate distortion cost.

이러한 결과는 현재 최소 비트율 왜곡 비용이 각각 높기 때문에, 다른 스레드는 후보 위치를 평가해야 한다는 결론에 이른다. 이에 따라, 멀티스레딩 하드웨어 구조에서 나선형 탐색을 병렬화할 수 있는 본 발명의 일 실시예에 따른 움직임 추정 방법을 제안한다.This result leads to the conclusion that different threads must evaluate candidate positions because the current minimum bit rate distortion cost is high. Accordingly, a motion estimation method according to an embodiment of the present invention capable of parallelizing spiral search in a multithreaded hardware structure is proposed.

움직임 추정 방법에 있어서, 인코더가 활용될 수 있는 다수의 스레드를 N 이라 한다. 그리고 나서, 움직임 탐색창을 N 개의 분산된 영역으로 나눈 것을 Ln이라 하면, Ln은 하기 수학식 4와 같다.In the motion estimation method, a number of threads that an encoder can utilize is referred to as N. Then, assuming that the motion search window is divided into N distributed regions as Ln, Ln is expressed by Equation 4 below.

Figure 112012037326200-pat00008
Figure 112012037326200-pat00008

여기서, n은 0 이상, N 이하이며, %는 모듈러스 연산자를 의미한다. 본 발명의 일 실시예에 따른 이 방법은 W/N 픽셀 위치에 각 스레드를 할당하고, 스레드는 할당된 픽셀 위치를 독립적으로 평가한다. (b)를 참조하면, 상기 수학식 6의 방법으로 분할을 한 예를 보여준다. 본 발명의 인터리브(Interleaved)하게 할당되는 것은, 각 스레드가 (b)와 같이 배치되는 것일 수 있다.Here, n is 0 or more and N or less, and% means a modulus operator. This method according to an embodiment of the present invention assigns each thread to a W / N pixel position, and the thread evaluates the assigned pixel position independently. Referring to (b), an example of division by the method of Equation 6 is shown. The interleaved allocation of the present invention may be that each thread is arranged as shown in (b).

움직임 탐색 방법을 시작할 때, 주 스레드(Master Thread)는 다수의 스레드를 생성한다. 다수의 스레드는 상기 수학식 4에 기초하여 이의 탐색 영역으로 할당되고, 각 스레드는 이의 탐색 영역 내에서 최적의 위치를 탐색할 수 있다.When starting the motion search method, the master thread creates a number of threads. Multiple threads are assigned to their search areas based on Equation 4 above, and each thread can search for an optimal location within its search area.

스레드의 처리 시간은 탐색 영역의 수가 달라짐에 따라 다양할 수 있다. 병렬 움직임 추정 방법을 완료한 후, 다수의 스레드는 탐색 처리가 끝나는 시점에 동기될 수 있다. 오직 주 스레드만이 처리를 계속할 수 있다.
The processing time of a thread may vary as the number of search areas varies. After completing the parallel motion estimation method, multiple threads can be synchronized at the end of the search process. Only the main thread can continue processing.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.The present invention is not necessarily limited to these embodiments, as all the constituent elements constituting the embodiment of the present invention are described as being combined or operated in one operation. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. In addition, such a computer program may be stored in a computer-readable medium such as a USB memory, a CD disk, a flash memory, etc., and read and executed by a computer, thereby implementing embodiments of the present invention. As the storage medium of the computer program, a magnetic recording medium, an optical recording medium, a carrier wave medium, or the like may be included.

또한, 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 상세한 설명에서 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Furthermore, all terms including technical or scientific terms have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined in the Detailed Description. Terms used generally, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be interpreted in an ideal or excessively formal sense unless explicitly defined in the present invention.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 또한, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이며, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 따라서, 본 발명의 보호 범위는 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. In addition, the embodiments disclosed in the present invention are not intended to limit the scope of the present invention but to limit the scope of the technical idea of the present invention. Accordingly, the scope of protection of the present invention should be construed according to the claims, and all technical ideas within the scope of equivalents should be interpreted as being included in the scope of the present invention.

1: 움직임 추정 장치
10: 수신부 30: 생성부
50: 할당부 70: 결정부
1: motion estimation device
10: receiver 30: generator
50: assigning unit 70: determining unit

Claims (13)

다중코어기반 영역 할당을 이용한 움직임 추정 장치에서 실행되는 움직임 추정 방법에 있어서,
복수의 프레임으로 구성된 영상 데이터를 입력받는 단계,
상기 영상 데이터의 현재 영상 프레임 내의 현재 블록과 동일한 객체인 이전 영상 프레임 내의 참조 블록을 검색하는 적어도 하나의 객체 탐색자를 생성하는 단계,
상기 객체 탐색자를 상기 이전 영상 프레임 내 각 영역을 분할하여 할당하는 단계, 및
상기 이전 영상 프레임 내에서 상기 객체 탐색자가 참조 블록을 탐색하여 현재 블록과의 위치 변화가 최소값이 되는 움직임 벡터(Motion Vector)를 산출 및 이전 영상 프레임 내의 참조 블록을 결정하는 단계
를 포함하는 다중코어기반 영역 할당을 이용한 움직임 추정 방법.
A motion estimation method performed in a motion estimation apparatus using multicore based region allocation,
Receiving image data consisting of a plurality of frames;
Generating at least one object searcher for searching for a reference block in a previous image frame that is the same object as the current block in the current image frame of the image data;
Allocating the object searcher by dividing each area in the previous image frame; and
Determining, by the object searcher, a reference block in the previous image frame to calculate a motion vector having a minimum change in position with the current block and determining a reference block in the previous image frame
Motion estimation method using multi-core based region allocation comprising a.
제 1 항에 있어서,
상기 객체 검색자는 상기 이전 영상 프레임 내에서 인터리브(Interleave)하게 할당되는 것을 특징으로 하는 다중코어기반 영역 할당을 이용한 움직임 추정 방법.
The method of claim 1,
And the object searcher is interleaved in the previous image frame.
제 1 항에 있어서,
상기 객체 탐색자는 나선형 탐색(Spiral Search) 알고리즘을 이용하는 것을 특징으로 하는 다중코어기반 영역 할당을 이용한 움직임 추정 방법
The method of claim 1,
The object searcher is a motion estimation method using multi-core based region allocation, characterized by using a spiral search algorithm
제 1 항에 있어서,
상기 객체 검색자의 위치는 하기 수학식과 같이 위치하는 것을 특징으로 하는 다중코어기반 영역 할당을 이용한 움직임 추정 방법.
Figure 112012097917763-pat00009

Figure 112012097917763-pat00010

Figure 112012097917763-pat00011

Figure 112012097917763-pat00012

여기서, n은 n번째 분할 영역임
The method of claim 1,
Location of the object searcher is located as shown in the following equation.
Figure 112012097917763-pat00009

Figure 112012097917763-pat00010

Figure 112012097917763-pat00011

Figure 112012097917763-pat00012

Where n is the nth partition
제 4 항에 있어서,
상기 적어도 하나의 객체 탐색자는 동시에 또는 순차적으로 객체인 참조 블록을 탐색하는 것을 특징으로 하는 다중코어기반 영역할당을 이용한 움직임 추정 방법.
The method of claim 4, wherein
And the at least one object searcher searches for reference blocks that are objects simultaneously or sequentially.
제 1 항에 있어서,
상기 적어도 하나의 객체 검색자는 적어도 하나의 코어와 1:1 매칭되는 것을 특징으로 하는 다중코어기반 영역할당을 이용한 움직임 추정 방법.
The method of claim 1,
And the at least one object searcher is 1: 1 matched to at least one core.
다중코어기반 영역 할당을 이용한 움직임 추정 장치에 있어서,
복수의 프레임으로 구성된 영상 데이터를 입력받는 수신부,
상기 영상 데이터의 현재 영상 프레임 내의 현재 블록과 동일한 객체인 이전 영상 프레임 내의 참조 블록을 검색하는 적어도 하나의 객체 탐색자를 생성하는 생성부,
상기 객체 탐색자를 상기 이전 영상 프레임 내 각 영역을 분할하여 할당하는 할당부, 및
상기 이전 영상 프레임 내에서 상기 객체 탐색자가 객체인 참조 블록을 탐색하여 객체인 참조 블록의 위치 이동이 최소값이 되는 움직임 벡터(Motion Vector)를 산출 및 이전 영상 프레임 내의 참조 블록을 결정하는 결정부
를 포함하는 다중코어기반 영역 할당을 이용한 움직임 추정 장치.
In the motion estimation apparatus using multi-core based region allocation,
Receiving unit for receiving the image data consisting of a plurality of frames,
A generation unit generating at least one object searcher for searching for a reference block in a previous image frame that is the same object as the current block in the current image frame of the image data;
An allocator for dividing and assigning the object searcher to each region in the previous image frame;
A determination unit configured to search for a reference block that is an object in the previous image frame, calculate a motion vector in which the positional movement of the reference block that is an object becomes a minimum value, and determine a reference block in the previous image frame
Motion estimation apparatus using multi-core based region allocation comprising a.
제 7 항에 있어서,
상기 할당부는 상기 객체 검색자를 상기 이전 영상 프레임 내에서 인터리브(Interleave)하게 할당하는 것을 특징으로 하는 다중코어기반 영역 할당을 이용한 움직임 추정 장치.
The method of claim 7, wherein
And the allocator interleaves the object searcher within the previous image frame.
제 7 항에 있어서,
상기 객체 탐색자는 나선형 탐색(Spiral Search) 알고리즘을 이용하는 것을 특징으로 하는 다중코어기반 영역 할당을 이용한 움직임 추정 장치
The method of claim 7, wherein
The object searcher is a motion estimation apparatus using multi-core based region allocation, characterized by using a spiral search algorithm
제 7 항에 있어서,
상기 객체 검색자의 위치는 하기 수학식과 같이 위치하는 것을 특징으로 하는 다중코어기반 영역 할당을 이용한 움직임 추정 장치.
Figure 112012097917763-pat00013

Figure 112012097917763-pat00014

Figure 112012097917763-pat00015

Figure 112012097917763-pat00016

여기서, n은 n번째 분할 영역
The method of claim 7, wherein
The location of the object searcher is located as shown in the equation below.
Figure 112012097917763-pat00013

Figure 112012097917763-pat00014

Figure 112012097917763-pat00015

Figure 112012097917763-pat00016

Where n is the nth partition
제 10 항에 있어서,
상기 적어도 하나의 객체 탐색자는 동시에 또는 순차적으로 객체인 참조 블록을 탐색하는 것을 특징으로 하는 다중코어기반 영역할당을 이용한 움직임 추정 장치.
11. The method of claim 10,
And the at least one object searcher searches for reference blocks that are objects simultaneously or sequentially.
제 11 항에 있어서,
상기 적어도 하나의 객체 검색자는 적어도 하나의 코어와 1:1 매칭되는 것을 특징으로 하는 다중코어기반 영역할당을 이용한 움직임 추정 장치.
The method of claim 11,
And the at least one object searcher is 1: 1 matched with at least one core.
제 1 항 내지 제 6 항 중 어느 한 항의 방법을 실행시키기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer-readable recording medium in which a program for executing the method of any one of claims 1 to 6 is recorded.
KR1020120049500A 2012-05-10 2012-05-10 Method and apparatus for estimating motion using region allocation based on multi core KR101221227B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120049500A KR101221227B1 (en) 2012-05-10 2012-05-10 Method and apparatus for estimating motion using region allocation based on multi core

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120049500A KR101221227B1 (en) 2012-05-10 2012-05-10 Method and apparatus for estimating motion using region allocation based on multi core

Publications (1)

Publication Number Publication Date
KR101221227B1 true KR101221227B1 (en) 2013-01-11

Family

ID=47841657

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120049500A KR101221227B1 (en) 2012-05-10 2012-05-10 Method and apparatus for estimating motion using region allocation based on multi core

Country Status (1)

Country Link
KR (1) KR101221227B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080048384A (en) * 2006-11-28 2008-06-02 한양대학교 산학협력단 Apparatus and method for the fast full search motion estimation using the partitioned search window
KR20080073157A (en) * 2007-02-05 2008-08-08 삼성전자주식회사 Method and apparatus for encoding and decoding based on inter prediction
KR20100020068A (en) * 2008-08-12 2010-02-22 엘지전자 주식회사 Apparatus for removing noise using moving estimation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080048384A (en) * 2006-11-28 2008-06-02 한양대학교 산학협력단 Apparatus and method for the fast full search motion estimation using the partitioned search window
KR20080073157A (en) * 2007-02-05 2008-08-08 삼성전자주식회사 Method and apparatus for encoding and decoding based on inter prediction
KR20100020068A (en) * 2008-08-12 2010-02-22 엘지전자 주식회사 Apparatus for removing noise using moving estimation

Similar Documents

Publication Publication Date Title
US10484709B2 (en) Method and apparatus for encoding and decoding motion vector based on reduced motion vector predictor candidates
US11575930B2 (en) Coding method and apparatus with candidate motion vectors
RU2708440C1 (en) Image encoding device and method, image decoding device and method and data carriers
CN103220528B (en) Method and apparatus by using large-scale converter unit coding and decoding image
JP5211263B2 (en) Method and apparatus for local multiple hypothesis prediction during video coding of coding unit
US10440383B2 (en) Image predictive encoding and decoding system
JP2015165695A (en) Method and apparatus for decoding image
CN106686378A (en) Method and apparatus for decoding image
US20140169472A1 (en) Motion estimation engine for video encoding
KR20200020882A (en) Search area for motion vector tablets
US10003806B2 (en) Optimized plenoptic image encoding
JP2015534169A (en) Method and system for multimedia data processing
JP6605581B2 (en) Arrangement of adaptive search windows for video coding
JP2008061133A (en) Image encoding apparatus and image encoding method
US11503325B2 (en) Methods and systems for estimating motion in multimedia pictures
KR102126511B1 (en) Method and apparatus for image frame interpolation using supplemental information
KR101221227B1 (en) Method and apparatus for estimating motion using region allocation based on multi core
EP3742734A1 (en) Method and device for selecting prediction direction in image encoding, and storage medium
CN103327340B (en) A kind of integer searches method and device
KR20220097251A (en) Method and Apparatus for Coding Machine Vision Data Using Prediction
Jubran et al. Sequence-level reference frames in video coding
KR101263136B1 (en) Method and apparatus for estimating motion using motion vector sharing based on multi core
JP2006014183A (en) Image encoding device and method, and program therefor
KR102127860B1 (en) Method of adaptive intra prediction mode encoding and apparatus for the same, and method of decoding and apparatus for the same
CN117788512A (en) Motion estimation method and device and computer equipment

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20160118

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171222

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee