KR20110022133A - 영상의 움직임 추정방법 및 영상처리장치 - Google Patents

영상의 움직임 추정방법 및 영상처리장치 Download PDF

Info

Publication number
KR20110022133A
KR20110022133A KR1020090079551A KR20090079551A KR20110022133A KR 20110022133 A KR20110022133 A KR 20110022133A KR 1020090079551 A KR1020090079551 A KR 1020090079551A KR 20090079551 A KR20090079551 A KR 20090079551A KR 20110022133 A KR20110022133 A KR 20110022133A
Authority
KR
South Korea
Prior art keywords
motion vector
image
virtual
vector
candidate
Prior art date
Application number
KR1020090079551A
Other languages
English (en)
Inventor
한승훈
왕용강
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020090079551A priority Critical patent/KR20110022133A/ko
Priority to US12/778,709 priority patent/US20110050993A1/en
Priority to EP10164380A priority patent/EP2306401A1/en
Publication of KR20110022133A publication Critical patent/KR20110022133A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • 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
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0135Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
    • H04N7/014Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes involving the use of motion vectors

Abstract

본 발명은 영상의 움직임 추정방법 및 영상처리장치에 관한 것이다. 본 발명에 따른 영상의 움직임 추정방법은 연속적으로 입력되는 제1영상 및 제2영상 중 어느 하나에서 추출한 기준블록과, 나머지 하나에서 추출한 탐색영역으로부터 전방향 움직임 추정 또는 후방향 움직임 추정 중 어느 하나를 이용하여 후보 움직임 벡터를 연산하는 단계와; 상기 후보 움직임 벡터를 이용하여 나머지 방향 추정에 대응하는 가상 움직임 벡터(pseudo motion vector)를 연산하는 단계와; 상기 후보 움직임 벡터 및 상기 가상 움직임 벡터 중 적어도 하나를 이용하여 상기 제1영상 및 상기 제2영상을 보간하는 단계를 포함한다. 이에 의해 하드웨어의 로드가 감소되고, 원가가 절감되는 영상의 움직임 추정방법 및 영상처리장치가 제공된다.
움직임 추정, 전방향 움직임 추정, 후방향 움직임 추정, 양방향 움직임 추정

Description

영상의 움직임 추정방법 및 영상처리장치{MOVE ESTIMATING METHOD AND IMAGE PROCESSING APPARAUTS}
본 발명은 영상의 움직임 추정방법 및 영상처리장치에 관한 것으로서, 보다 상세하게는 일 방향으로 움직임을 추정하는 영상의 움직임 추정방법 및 영상처리장치에 관한 것이다.
프레임 레이트의 변환 또는 인터레이스(interlace) 영상을 프로그레시브(progressive) 영상으로 전환하는 영상처리에는 영상 프레임 간의 움직임 추정이 필수적으로 수반된다.
움직임 추정 기술은 움직임 보상을 위해 움직임 벡터를 추정하는 것으로 다양한 비디오 처리 시스템의 화질 향상을 위한 핵심적인 기술이다. 일반적으로, 움직임 추정은 블록 매칭 알고리즘(block matching algorithm)을 이용하여 수행된다.
블록 매칭 알고리즘은 연속적으로 입력되는 두 장의 프레임 및 필드 영상을 블록 단위로 비교하여 블록 당 하나의 움직임 벡터를 추정한다. 이때, 움직임 벡터는 움직임 예측 오류값, 예를 들어 SAD(sum of absolute difference)를 이용하여 추정되며, 추정된 움직임 벡터를 움직임 보상 과정에 사용된다.
이러한 움직임 추정은 이전 프레임을 기준으로 하여 현재 프레임의 움직임을 추정하는 전방향 움직임 추정(forward move estimation)과 현재 프레임을 기준으로 이전 프레임의 움직임을 추정하는 후방향 움직임 추정(backward move estimation) 및 전방향 움직임 추정 및 후방향 움직임 추정을 모두 수행하는 양방향 추정(bi-ward move estimation)이 있다. 전방향 또는 후방향 움직임 추정과 같이 일 방향으로만 움직임을 추정하여 영상을 보상할 경우 움직이는 물체의 경계와 같은 교착(occlusion) 영역에서는 할로(halo)가 발생하거나 움직임 추정의 오류가 발생할 수 있다. 한편, 양방향 추정의 경우 움직임 추정의 정확성은 증가하지만, 이를 위한 하드웨어의 로드가 가중되고 데이터 연산을 위한 메모리도 증가하는 문제점이 존재한다.
본 발명의 일 실시예는 하드웨어의 로드가 감소되고, 원가가 절감되는 영상의 움직임 추정방법 및 영상처리장치를 제공한다.
또한, 본 발명의 일 실시예는 가상의 움직임 벡터를 통하여 양방향 움직임 추정의 효과를 얻을 수 있는 영상의 움직임 추정방법 및 영상처리장치를 제공한다.
또한, 본 발명의 일 실시예는 커버링 영역와 언커버링 영역의 움직임 추정을 개선하고 할로를 감소시키는 영상의 움직임 추정방법 및 영상처리장치를 제공한다.
본 발명의 일 실시예에 따른 영상의 움직임 추정방법은 연속적으로 입력되는 제1영상 및 제2영상 중 어느 하나에서 추출한 기준블록과, 나머지 하나에서 추출한 탐색영역으로부터 전방향 움직임 추정 또는 후방향 움직임 추정 중 어느 하나를 이 용하여 후보 움직임 벡터를 연산하는 단계와; 상기 후보 움직임 벡터를 이용하여 나머지 방향 추정에 대응하는 가상 움직임 벡터(pseudo motion vector)를 연산하는 단계와; 상기 후보 움직임 벡터 및 상기 가상 움직임 벡터 중 적어도 하나를 이용하여 상기 제1영상 및 상기 제2영상을 보간하는 단계를 포함한다.
상기 가상 움직임 벡터를 연산하는 단계는, 상기 후보 움직임 벡터의 주변블록에 대응하는 후보 움직임 벡터들을 소정 그룹으로 분류하는 단계와; 상기 그룹의 센터 벡터 중 어느 하나를 상기 가상 움직임 벡터로 선택하는 단계를 포함할 수 있다.
상기 가상 움직임 벡터를 선택하는 단계는 상기 센터 벡터 중 다음 수학식에 해당하는 값(V)이 가장 큰 벡터를 상기 가상 움직임 벡터로 선택할 수 있다.
〔수학식 1〕Vj=(Pj)wp *(Dj)wd
1≤j≤k, k는 상기 그룹의 개수
Dj는 상기 후보 움직임 벡터와 상기 센터 벡터 간의 거리
Pj는 상기 주변블록에 대응하는 후보 움직임 벡터의 개수에 대한 상기 그룹에 포함되는 상기 후보 움직임 벡터들의 개수
wp, wd는 가중치, 상수
상기 제1영상 및 상기 제2영상을 보간하는 단계는, 상기 후보 움직임 벡터에 대응하는 SAD(Sum of Absolute Difference)와 상기 가상 움직임 벡터에 대응하는 SAD중 적은 SAD에 대응하는 벡터를 최종 움직임 벡터로 설정하는 단계와; 상기 최 종 움직임 벡터를 이용하여 상기 제1영상 및 상기 제2영상 사이의 보간 영상을 생성하는 단계를 포함할 수 있다.
상기 제1영상 및 상기 제2영상을 보간하는 단계는, 상기 후보 움직임 벡터에 대응하는 SAD(Sum of Absolute Difference)와 상기 가상 움직임 벡터에 대응하는 SAD의 차이가 소정 값을 초과하는 경우, 커버링 영역 또는 언커버링 영역으로 판단하는 단계를 포함할 수 있다.
한편, 본 발명의 다른 실시예에 따른 영상처리장치는 연속적으로 입력되는 제1영상 및 제2영상 중 어느 하나에서 추출한 기준블록과, 나머지 하나에서 추출한 탐색영역으로부터 전방향 움직임 추정 또는 후방향 움직임 추정 중 어느 하나를 이용하여 후보 움직임 벡터를 연산하는 후보 움직임 벡터 연산부와; 상기 후보 움직임 벡터를 이용하여 나머지 방향 추정에 대응하는 가상 움직임 벡터(pseudo motion vector)를 연산하는 가상 움직임 벡터 연산부와; 상기 후보 움직임 벡터 및 상기 가상 움직임 벡터 중 적어도 하나를 이용하여 상기 제1영상 및 상기 제2영상을 보간하는 움직임 보상부를 포함할 수 있다.
이상 설명한 바와 같이, 본 발명에 따르면 하드웨어의 로드가 감소되고, 원가가 절감되는 영상의 움직임 추정방법 및 영상처리장치가 제공된다.
또한, 본 발명의 일 실시예에 따르면 가상의 움직임 벡터를 통하여 양방향 움직임 추정의 효과를 얻을 수 있는 영상의 움직임 추정방법 및 영상처리장치가 제공된다.
이하, 첨부한 도면을 참고로 하여 본 발명의 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예들에 한정되지 않는다. 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조부호를 붙이도록 한다.
도 1은 본 발명의 일 실시예에 따른 영상처리장치의 제어블럭도이고, 도 2는 도 1의 영상처리장치의 움직임 추정 방법을 설명하기 위한 제어흐름도이다. 도시된 바와 같이 영상처리장치는 후보 움직임 벡터 연산부(10), 가상 움직임 벡터 연산부(20) 및 움직임 보상부(30)를 포함한다. 영상처리장치는 블록 매칭 알고리즘(block matching algorithm)을 적용하여 움직임을 추정하고, 이를 이용하여 프레임 레이트를 변환시키거나, 영상을 보간한다. 블록 매칭 알고리즘은 연속적으로 입력되는 두 장의 프레임 또는 필드 영상을 블록 단위로 비교하여 블록 당 하나의 움직임 벡터를 추정하는 방법이다.
후보 움직임 벡터 연산부(10)는 연속적으로 입력되는 제1영상 및 제2영상 중 어느 하나에서 추출한 기준블록과, 나머지 하나에서 추출한 탐색영역으로부터 전방향 움직임 추정 또는 후방향 움직임 추정 중 어느 하나를 이용하여 후보 움직임 벡터를 연산한다(S100). 제1영상 및 제2영상은 짝수 열 영상 또는 홀수 열 영상만을 포함하는 필드 영상과, 짝수 열 영상 및 홀수 열 영상을 모두 포함하는 프레임 영 상을 포함할 수 있다. 제1영상과 제2영상은 연속적으로 입력되는 영상으로, 제1영상이 제2영상보다 먼저 입력되는 영상으로 가정하는 경우, 제1영상의 기준블록으로 제2영상의 탐색영역을 탐색하여 기준블록의 움직임을 추정하는 것을 전방향 움직임 추정(forward move estimation)으로 정의한다면, 제2영상의 기준블록으로 제2영상의 탐색영역을 탐색하여 기준블럭의 움직임을 추정하는 것은 후방향 움직임 추정(backward move estimation)으로 정의된다. 물론, 탐색방향에 대한 것은 상대적인 것으로 용어에 한정되지 않는다. 후보 움직임 벡터는 움직임 예측 오류값, 예를 들어 SAD(sum of absolute difference)를 이용하여 추정될 수 있으며, 탐색영역 내의 블록 중 SAD가 최소인 블록이 기준블럭의 매칭블록이 되고, 기준블럭과 매칭블럭 간의 벡터가 후보 움직임 벡터로 설정된다. 본 실시예서는 후보 움직임 벡터를 후술할 가상 움직임 벡터와 구별하기 위하여 mv1으로 명명한다.
가상 움직임 벡터 연산부(20)는 후보 움직임 벡터(mv1)를 이용하여 나머지 방향 추정에 대응하는 가상 움직임 벡터(pseudo motion vector)를 연산한다(S200). 이하 가상 움직임 벡터는 mv2로 명명한다.
도 3은 물체가 움직일 경우 움직임 추정의 방향에 대한 추정 여부를 설명하기 위한 도면이다. 도시된 바와 같이 제1영상 및 제2영상을 거쳐 물체(O)가 이동하는 경우, 제1영상과 제2영상에서 물체(O)가 중첩되는 제1영역(Ⅰ), 보다 나중에 입력되는 제2영상에만 물체(O)가 존재하는 제2영역(Ⅱ), 이전에 입력된 제1영상에만 물체(O)가 존재하는 제3영역(Ⅲ)으로 구분된다. 제1영역(Ⅰ)은 전방향 움직임 추정 또는 후방향 움직임 추정이 모두 가능한 영역으로 이를 노멀 영역(normal area)로 명명하기도 한다. 새로운 영상(제2영상)의 물체(O)에 의하여 기존 영상(제1영상)이 가려지는 제2영역은 커버링(covering) 영역으로, 새로운 영상(제2영상)의 물체(O) 이동에 의하여 기존 영상(제1영상)이 노출되는 제1영역은 언커버링(uncovering) 영역으로 명명되기도 한다. 커버링 영역(Ⅱ)의 경우, 제2영상을 기준으로 제1영상을 탐색함으로써 움직임을 추정하는 후방향 움직임 추정이 가능하지만 제1영상을 기준으로 제2영상을 탐색하는 전방향 움직임 추정은 불가능하다. 제1영상의 커버링 영역(Ⅱ)에 대응하는 영상이 제2영상에는 존재하지 않기 때문이다. 반대로, 언커버링 영역(Ⅲ)의 경우, 제1영상을 기준으로 제2영상을 탐색하는 전방향 움직임 추정은 가능하지만, 제2영상의 언커버링 영역(Ⅲ)에 대응하는 영상이 제1영상에는 존재하지 않기 때문에 후방향 움직임 추정은 불가능하다. 따라서, 물체의 움직임을 정확하게 추정하기 위하여는 전방향 또는 후방향 움직임 추정이 모두 이루어지는 것이 바람직하고, 양 방향 움직임 추정에 기초한 움직임 벡터를 이용하여 영상을 보간하는 것이 바람직하다. 양 방향 움직임 추정을 적용할 경우 단 방향 움직임 추정을 수행하는 로직이 두 배로 필요하고, 이에 따라 하드웨어의 부담도 증가하고 메모리의 용량도 증가된다. 즉, 탐색 범위가 넓어지면 연산량, 메모리 대역폭 및 내부 메모리 용량이 증가하여 하드웨어의 부담이 가중된다.
본 실시예는 특정 단방향에 대해서만 움직임 추정 로직을 이용하여 움직임을 추정하고, 그 반대 방향에 대한 움직임을 추정할 수 있는 가상 움직임 벡터(mv2)를 가상 움직임 벡터 연산부(20)를 통하여 연산한다. 양방향 움직임 추정에 필요했던 하드웨어 로직 중 일부만을 채용하여 움직임을 추정하고, 나머지 방향에 대한 움직 임 벡터는 소정의 연산을 통하여 생성함으로써 상술한 문제점을 감소시킬 수 있다. 예를 들어, 후보 움직임 벡터 연산부(10)에서 후방향 움직임 추정을 통하여 후보 움직임 벡터(mv1)를 연산한 경우, 가상 움직임 벡터 연산부(20)에서 연산된 가상 움직임 벡터(mv2)는 전방향 움직임 추정을 통하여 얻을 수 있는 움직임 벡터에 해당한다. 이런 경우, 후방향 움직임 추정으로 움직임 추정이 불가능했던 언커버링 영역(Ⅲ)에 대해서는 가상 움직임 벡터(mv2)를 통하여 움직임을 추정할 수 있다.
움직임 보상부(30)는 후보 움직임 벡터(mv1) 및 가상 움직임 벡터(mv2) 중 적어도 하나를 이용하여 제1영상 및 상기 제2영상을 보간한다(S300). 움직임 보상부(30)는 후보 움직임 벡터(mv1) 및 가상 움직임 벡터(mv2)를 수신하여 이를 통하여 상술한 제1 내지 제3영역(Ⅲ)을 판단하는 영역 판단부(31)와, 영역 판단부(31)의 판단 결과와 후보 움직임 벡터(mv1) 및 가상 움직임 벡터(mv2)를 이용하여 영상을 보간하는 보간 영상 생성부(33)를 포함한다. 보간 영상은 후보 움직임 벡터(mv1) 또는 가상 움직임 벡터(mv2) 중 하나만이 이용될 수도 있고, 두 개의 벡터(mv1, mv2) 모두가 이용될 수도 있다. 복 수의 벡터 또는 양방향 움직임 벡터를 이용하여 영상을 보간하는 방법은 공지된 다양한 방법이 적용될 수 있으며, 특정 방법으로 한정되지 않는다.
다른 실시예에 따르면, 움직임 보상부(30)는 움직임 벡터(mv1, mv2)에 기초하여 영상의 커버링 영역 및 언커버링 영역을 판단하지 않고 영역에 대한 정보를 별도로 수신할 수도 있다.
도 4는 가상 움직임 벡터(mv2)의 연산 방법을 설명하기 위한 제어흐름도이 고, 도 5는 가상 움직임 벡터(mv2)를 연산하기 위한 주변블록을 도시한 도면이다. 도 4 및 도 5를 참조하여 일 실시예에 따른 가상 움직임 벡터(mv2)의 연산에 대하여 설명한다. 본 실시예에 따른 가상 움직임 벡터 연산부(20)는 특정 기준블럭의 주변블럭을 이용하는 클러스터링 기법(clustering techniques)을 적용하여 가상 움직임 벡터(mv2)를 구한다.
우선, 가상 움직임 벡터 연산부(20)는 특정 기준블럭의 주변블럭에 대한 후보 움직임 벡터(mv1)들의 각도를 측정하여, 움직임 벡터(mv1)를 임의의 그룹으로 분류한다(S210). 도 5와 같이, 기준블럭과 인접한 복수의 블록이 주변블럭으로 설정된다. 본 실시예의 주변블럭은 기준블럭을 포함하는 5*3의 15개 블록으로 설정된다. 각 주변블럭에서 추정된 후보 움직임 벡터(mv1)들은 각도에 따라 임의의 그룹으로 분류된다. 임의의 그룹은 각도에 따라 4분면(0~90도, 90~180 도, 180~270 도, 270~360 도) 상의 4개의 그룹으로 분류될 수도 있고, 각도가 밀집되어 있는 그룹으로 분류될 수도 있다. 그룹의 개수는 특정되지 않는다.
그런 후, 각 그룹의 편차를 계산하여 편차가 소정 임계값을 초과하는지 여부를 판단한다(S220, S230). 이는 가상 움직임 벡터(mv2)를 구하기 위한 후보 벡터를 보다 세부적으로 분류하기 위하여 상기 임의의 그룹을 추가적으로 분류할지 여부를 결정하는 위함이다. 임계값은 그룹을 세부적으로 분류하는 정도에 따라 상이하게 설정될 수 있는 값으로 특정 값에 한정되지 않는다.
임의 그룹의 편차가 임계값을 초과하는 경우, 그룹에 속해 있는 후보 움직임 벡터(mv1)들의 크기에 따라 임의 그룹을 복 수의 서브그룹으로 재분류 한다(S240). 후보 움직임 벡터(mv1)의 크기에 따라 두 개 또는 그 이상의 서브 그룹으로 분류될 수 있다.
상기 방식에 따라 최종적으로 그룹 분류가 완료되면, 각 그룹에 대한 밀도 및 거리가 검출된다(S250). 그룹의 밀도(Pj)는 주변블록에 대응하는 후보 움직임 벡터(mv1)의 개수에 대한 그룹에 포함되는 후보 움직임 벡터(mv1)들의 개수를 의미하고, 그룹의 거리(Dj)는 후보 움직임 벡터(mv1)와 그룹의 센터 벡터 간의 거리를 뜻한다. 예를 들어 제1그룹에 3개의 후보 움직임 벡터가 속해 있는 경우, 제1그룹의 밀도는 3/15가 될 것이다.
가상 움직임 벡터 연산부(20)는 검출된 밀도(Pj) 및 거리(Dj)에 기초하여 그룹의 센터 벡터를 중 하나를 가상 움직임 벡터(mv2)로 선택한다(S260). 본 실시예에서는 수학식 1에 해당하는 값(V)이 가장 큰 벡터를 가상 움직임 벡터(mv2)로 선택한다.
[수학식 1] Vj=(Pj)wp *(Dj)wd
1≤j≤k, k는 그룹의 개수
Dj는 특정 기준 블록의 후보 움직임 벡터(mv1)와 특정 센터 벡터 간의 거리
Pj는 주변블록에 대응하는 후보 움직임 벡터(mv1)의 개수에 대한 그룹에 포함되는 후보 움직임 벡터(mv1)들의 개수
wp, wd는 가중치, 상수
가상 움직임 벡터 연산부(20)는 후보 움직임 벡터(mv1)와 반대인 방향성을 갖는 가상 움직임 벡터(mv2)를 찾기 위하여 수학식 1에 아닌 다른 수학식을 사용할 수도 있고, 밀도 및 거리가 아닌 다른 변수를 사용할 수도 있다. 즉, 후보 움직임 벡터(mv1)와 가상 움직임 벡터(mv2)의 관련성 또는 상관성을 찾을 수 있는 방법이라면 공지된 어떠한 알고리즘이나 수학식도 적용될 수 있다.
움직임 보상부(30)는 가상 움직임 벡터 연산부(20)와 후보 움직임 벡터 연산부(10)로부터 입력되는 두 개의 벡터에 기초하여 제1영상 및 제2영상을 보간한다. 이 과정에서 후보 움직임 벡터(mv1)에 대응하는 SAD와 가상 움직임 벡터(mv2)에 대응하는 SAD중 적은 SAD를 갖는 벡터가 최종 움직임 벡터로 설정되고, 최종 움직임 벡터를 통하여 보간 영상이 생성된다.
도 6은 움직임 보상부(30)의 영상 보간을 설명하기 위한 프레임 영상을 도시한 도면이다. 도시된 바와 같이, 제1영상에 대응하는 이전 프레임의 물체(O)는 제2영상에 대응하는 현재 프레임에서 오른쪽으로 이동하였다. 양방향 움직임 추정 벡터에 기초하여 보간 영상인 보간 프레임을 형성하는 경우, 움직임 보상부(30)는 영상이 보간되는 부분에 대응하는 이전 프레임의 움직임 벡터와 현재 프레임의 움직임 벡터를 모두 고려한 뒤 어느 하나의 움직임 벡터를 이용하여 영상을 보간할 수 있다. 본 실시예예 경우 현재 프레임의 움직임 벡터에 대응하는 벡터는 후방향 움직임 추정이 이루어진 후보 움직임 벡터(mv1)가 되고, 이전 프레임의 움직임 벡터에 대응하는 벡터는 전방향 움직임 추정이 이루어진 가상 움직임 벡터(mv2)가 된다. 제1영역(Ⅰ)에서는 양방향 움직임 추정이 모두 이루어질 수 있으므로, 후보 움직임 벡터(mv1)와 가상 움직임 벡터(mv2)에 대한 SAD의 차이는 크지 않을 것이다. 따라서, 제1영역(Ⅰ)에서는 후보 움직임 벡터(mv1)에 기초하여 영상이 보간된다.
커버링 영역(Ⅱ) 보간의 경우, 물체(O)에 대한 영상 정보를 이전 프레임에서 찾을 수 있는 제1서브 커버링 영역(Ⅱ-①)에서는 후방향 움직임 추정의 결과인 후보 움직임 벡터(mv1)에 대응하는 SAD 가 가상 움직임 벡터(mv2)에 대응하는 SAD 보다 작을 것이다. 따라서, 제1서브 커버링 영역(Ⅱ-①)에서는 후보 움직임 벡터(mv1)에 기초하여 영상이 보간된다. 반대로, 물체(O)에 대한 영상 정보를 이전 프레임에서 찾을 수 없는 제2서브 커버링 영역(Ⅱ-②)에서는 전방향 움직임 추정의 결과인 가상 움직임 벡터(mv2)에 대응하는 SAD 가 후보 움직임 벡터(mv1)에 대응하는 SAD 보다 작을 것이다. 즉, 제2서브 커버링 영역(Ⅱ-②)에서는 가상 움직임 벡터(mv2)에 기초하여 영상이 보간된다.
언커버링 영역(Ⅲ)의 보간의 경우, 배경에 대한 영상정보를 이전 프레임에서 전혀 찾을 수 없는 제1서브 언커버링 영역(Ⅲ-①)에서는 가상 움직임 벡터(mv2)에 대응하는 SAD 가 후보 움직임 벡터(mv1)에 대응하는 SAD 가 보다 작다. 반면, 배경에 대한 영상정보를 이전 프레임에서 얻을 수 있는 제2서브 언커버링 영역(Ⅲ-②)에서는 후보 움직임 벡터(mv1)를 이용하여 영상이 보간될 것이다.
정리하면, 움직임 보상부(30)는 두 개의 벡터의 SAD를 비교하여 어떠한 영역이 노말 영역(Ⅰ)인지, 커버링 영역(Ⅱ) 인지 혹은 언커버링 영역(Ⅲ) 인지 판단할 수 있다. 각 벡터의 SAD가 소정 값을 초과하는 경우, 즉, 두 벡터의 SAD 의 차이가 특정 기준보다 큰 것으로 판단되면, 그 영역은 커버링 영역(Ⅱ) 또는 언커버링 영역(Ⅲ)으로 판단된다. 커버링 영역(Ⅱ) 또는 언커버링 영역(Ⅲ)으로 판단된 부분의 영상은 SAD가 적은 움직임 벡터를 이용하여 보간될 것이다. 움직임 보상부(30)가 두 방향 움직임 벡터(mv1, mv2)를 이용하여 영상을 보간하는 방법은 이미 다양하게 공지되었으며, 본 발명의 경우 어떠한 방법도 적용될 수 있다.
상술한 바와 같이, 본 발명은 양방향 움직임 추정을 이용하여 영상을 보간하며, 이를 위하여 특정 방향 움직임 추정만을 수행한 뒤 나머지 방향에 대한 움직임 벡터를 연산한다. 움직임 추정을 위한 하드웨어적 로드는 감소시키면서 양방향 움직임 추정을 수행할 때와 같은 정확한 움직임 추정이 가능하다.
비록 본 발명의 몇몇 실시예들이 도시되고 설명되었지만, 본 발명이 속하는 기술분야의 통상의 지식을 가진 당업자라면 본 발명의 원칙이나 정신에서 벗어나지 않으면서 본 실시예를 변형할 수 있음을 알 수 있을 것이다. 발명의 범위는 첨부된 청구항과 그 균등물에 의해 정해질 것이다.
도 1은 본 발명의 일 실시예에 따른 영상처리장치의 제어블럭도이고,
도 2는 도 1의 영상처리장치의 움직임 추정 방법을 설명하기 위한 제어흐름도이고,
도 3은 물체가 움직일 경우 움직임 추정의 방향에 대한 추정 여부를 설명하기 위한 도면이고,
도 4는 도 1의 영상처리장치에서 가상 움직임 벡터의 연산 방법을 설명하기 위한 제어흐름도이고,
도 5는 도 1의 영상처리장치에서 가상 움직임 벡터를 연산하기 위한 주변블록을 도시한 도면이고,
도 6은 도 1의 영상처리장치의 영상 보간을 설명하기 위한 프레임 영상을 도시한 도면이다.
* 도면의 주요 부분에 대한 부호의 설명 *
10 : 후보 움직임 벡터 연산부 20: 가상 움직임 벡터 연산부
30 : 움직임 보상부 31 : 영역 판단부
33 : 보간 영상 생성부

Claims (10)

  1. 영상의 움직임 추정방법에 있어서,
    연속적으로 입력되는 제1영상 및 제2영상 중 어느 하나에서 추출한 기준블록과, 나머지 하나에서 추출한 탐색영역으로부터 전방향 움직임 추정 또는 후방향 움직임 추정 중 어느 하나를 이용하여 후보 움직임 벡터를 연산하는 단계와;
    상기 후보 움직임 벡터를 이용하여 나머지 방향 추정에 대응하는 가상 움직임 벡터(pseudo motion vector)를 연산하는 단계와;
    상기 후보 움직임 벡터 및 상기 가상 움직임 벡터 중 적어도 하나를 이용하여 상기 제1영상 및 상기 제2영상을 보간하는 단계를 포함하는 것을 특징으로 하는 영상의 움직임 추정방법.
  2. 제1항에 있어서,
    상기 가상 움직임 벡터를 연산하는 단계는,
    상기 후보 움직임 벡터의 주변블록에 대응하는 후보 움직임 벡터들을 소정 그룹으로 분류하는 단계와;
    상기 그룹의 센터 벡터 중 어느 하나를 상기 가상 움직임 벡터로 선택하는 단계를 포함하는 것을 특징으로 하는 영상의 움직임 추정방법.
  3. 제2항에 있어서,
    상기 가상 움직임 벡터를 선택하는 단계는 상기 센터 벡터 중 다음 수학식에 해당하는 값(V)이 가장 큰 벡터를 상기 가상 움직임 벡터로 선택하는 것을 특징으로 하는 영상의 움직임 추정방법.
    〔수학식 1〕Vj=(Pj)wp *(Dj)wd
    1≤j≤k, k는 상기 그룹의 개수
    Dj는 상기 후보 움직임 벡터와 상기 센터 벡터 간의 거리
    Pj는 상기 주변블록에 대응하는 후보 움직임 벡터의 개수에 대한 상기 그룹에 포함되는 상기 후보 움직임 벡터들의 개수
    wp, wd는 가중치, 상수
  4. 제1항에 있어서,
    상기 제1영상 및 상기 제2영상을 보간하는 단계는,
    상기 후보 움직임 벡터에 대응하는 SAD(Sum of Absolute Difference)와 상기 가상 움직임 벡터에 대응하는 SAD중 적은 SAD에 대응하는 벡터를 최종 움직임 벡터로 설정하는 단계와;
    상기 최종 움직임 벡터를 이용하여 상기 제1영상 및 상기 제2영상 사이의 보간 영상을 생성하는 단계를 포함하는 것을 특징으로 하는 영상의 움직임 추정방법.
  5. 제1항에 있어서,
    상기 제1영상 및 상기 제2영상을 보간하는 단계는,
    상기 후보 움직임 벡터에 대응하는 SAD(Sum of Absolute Difference)와 상기 가상 움직임 벡터에 대응하는 SAD의 차이가 소정 값을 초과하는 경우, 커버링 영역 또는 언커버링 영역으로 판단하는 단계를 포함하는 것을 특징으로 하는 영상의 움직임 추정방법.
  6. 영상처리장치에 있어서,
    연속적으로 입력되는 제1영상 및 제2영상 중 어느 하나에서 추출한 기준블록과, 나머지 하나에서 추출한 탐색영역으로부터 전방향 움직임 추정 또는 후방향 움직임 추정 중 어느 하나를 이용하여 후보 움직임 벡터를 연산하는 후보 움직임 벡터 연산부와;
    상기 후보 움직임 벡터를 이용하여 나머지 방향 추정에 대응하는 가상 움직임 벡터(pseudo motion vector)를 연산하는 가상 움직임 벡터 연산부와;
    상기 후보 움직임 벡터 및 상기 가상 움직임 벡터 중 적어도 하나를 이용하여 상기 제1영상 및 상기 제2영상을 보간하는 움직임 보상부를 포함하는 것을 특징으로 하는 영상처리장치.
  7. 제6항에 있어서,
    상기 가상 움직임 벡터 연산부는 상기 후보 움직임 벡터의 주변블록에 대응하는 후보 움직임 벡터들을 소정 그룹으로 분류하고, 상기 그룹의 센터 벡터 중 어 느 하나를 상기 가상 움직임 벡터로 선택하는 것을 특징으로 하는 영상처리장치.
  8. 제7항에 있어서,
    상기 가상 움직임 벡터 연산부는 상기 센터 벡터 중 다음 수학식에 해당하는 값(V)이 가장 큰 벡터를 상기 가상 움직임 벡터로 선택하는 것을 특징으로 하는 영상처리장치.
    〔수학식 1〕 Vj=(Pj)wp *(Dj)wd
    1≤j≤k, k는 상기 그룹의 개수
    Dj는 상기 후보 움직임 벡터와 상기 센터 벡터 간의 거리
    Pj는 상기 주변블록에 대응하는 후보 움직임 벡터의 개수에 대한 상기 그룹에 포함되는 상기 후보 움직임 벡터들의 개수
    wp, wd는 가중치, 상수
  9. 제6항에 있어서,
    상기 움직임 보상부는 상기 후보 움직임 벡터에 대응하는 SAD(Sum of Absolute Difference)와 상기 가상 움직임 벡터에 대응하는 SAD중 적은 SAD에 대응하는 벡터를 최종 움직임 벡터로 설정하고, 상기 최종 움직임 벡터를 이용하여 상기 제1영상 및 상기 제2영상 사이의 보간 영상을 생성하는 것을 특징으로 하는 영상처리장치.
  10. 제6항에 있어서,
    상기 움직임 보상부 상기 후보 움직임 벡터에 대응하는 SAD(Sum of Absolute Difference)와 상기 가상 움직임 벡터에 대응하는 SAD의 차이가 소정 값을 초과하는 경우, 커버링 영역 또는 언커버링 영역으로 판단하는 것을 특징으로 하는 영상처리장치.
KR1020090079551A 2009-08-27 2009-08-27 영상의 움직임 추정방법 및 영상처리장치 KR20110022133A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020090079551A KR20110022133A (ko) 2009-08-27 2009-08-27 영상의 움직임 추정방법 및 영상처리장치
US12/778,709 US20110050993A1 (en) 2009-08-27 2010-05-12 Motion estimating method and image processing apparatus
EP10164380A EP2306401A1 (en) 2009-08-27 2010-05-28 Motion estimating method and image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090079551A KR20110022133A (ko) 2009-08-27 2009-08-27 영상의 움직임 추정방법 및 영상처리장치

Publications (1)

Publication Number Publication Date
KR20110022133A true KR20110022133A (ko) 2011-03-07

Family

ID=42314090

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090079551A KR20110022133A (ko) 2009-08-27 2009-08-27 영상의 움직임 추정방법 및 영상처리장치

Country Status (3)

Country Link
US (1) US20110050993A1 (ko)
EP (1) EP2306401A1 (ko)
KR (1) KR20110022133A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101245057B1 (ko) * 2012-10-16 2013-03-18 (주)아이아이에스티 화재 감지 방법 및 장치
US9398249B2 (en) 2012-06-28 2016-07-19 Samsung Electronics Co., Ltd. Motion estimation system and method, display controller, and electronic device

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7836770B2 (en) * 2005-12-20 2010-11-23 Etymotic Research, Inc. Method and system for noise dosimeter with quick-check mode and earphone adapter
US8797414B2 (en) * 2010-12-23 2014-08-05 Samsung Electronics Co., Ltd. Digital image stabilization device
US11582479B2 (en) * 2011-07-05 2023-02-14 Texas Instruments Incorporated Method and apparatus for reference area transfer with pre-analysis
KR101908388B1 (ko) * 2012-07-19 2018-10-17 삼성전자 주식회사 폐색 영역 복원 장치, 폐색 영역을 복원하는 비디오 디코딩 장치 및 폐색 영역 복원 방법
US9596481B2 (en) * 2013-01-30 2017-03-14 Ati Technologies Ulc Apparatus and method for video data processing
US10277844B2 (en) * 2016-04-20 2019-04-30 Intel Corporation Processing images based on generated motion data
WO2019001741A1 (en) * 2017-06-30 2019-01-03 Huawei Technologies Co., Ltd. MOTION VECTOR REFINEMENT FOR MULTI-REFERENCE PREDICTION
CN112770015B (zh) * 2020-12-29 2022-09-13 紫光展锐(重庆)科技有限公司 一种数据处理方法及相关装置
WO2022257035A1 (en) * 2021-06-09 2022-12-15 Nvidia Corporation Computing motion of pixels among images

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0765573B1 (en) * 1995-03-14 1999-06-09 Koninklijke Philips Electronics N.V. Motion-compensated interpolation
US6594313B1 (en) * 1998-12-23 2003-07-15 Intel Corporation Increased video playback framerate in low bit-rate video applications
JP2003533800A (ja) * 2000-05-18 2003-11-11 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Mcアップコンバージョンにおけるハローを低減する動き推定器
ATE359668T1 (de) * 2001-01-16 2007-05-15 Koninkl Philips Electronics Nv Verringern von aura-artigen effekten bei der bewegungskompensierten interpolation
JP4198550B2 (ja) * 2002-09-10 2008-12-17 株式会社東芝 フレーム補間方法およびこのフレーム補間方法を用いた装置
AU2003265075A1 (en) * 2002-10-22 2004-05-13 Koninklijke Philips Electronics N.V. Image processing unit with fall-back
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
GB0500174D0 (en) * 2005-01-06 2005-02-16 Kokaram Anil Method for estimating motion and occlusion
US8144778B2 (en) * 2007-02-22 2012-03-27 Sigma Designs, Inc. Motion compensated frame rate conversion system and method
US8861603B2 (en) * 2007-08-28 2014-10-14 Samsung Electronics Co., Ltd. System and method for motion vector collection based on K-means clustering for motion compensated interpolation of digital video
KR101493325B1 (ko) * 2008-09-03 2015-02-16 삼성전자주식회사 정밀 움직임 예측을 기반으로 한 프레임 보간 장치 및 그 방법
WO2010093430A1 (en) * 2009-02-11 2010-08-19 Packetvideo Corp. System and method for frame interpolation for a compressed video bitstream
US8675736B2 (en) * 2009-05-14 2014-03-18 Qualcomm Incorporated Motion vector processing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9398249B2 (en) 2012-06-28 2016-07-19 Samsung Electronics Co., Ltd. Motion estimation system and method, display controller, and electronic device
KR101245057B1 (ko) * 2012-10-16 2013-03-18 (주)아이아이에스티 화재 감지 방법 및 장치
US9747501B2 (en) 2012-10-16 2017-08-29 Iist Co., Ltd. Fire detection method and apparatus

Also Published As

Publication number Publication date
EP2306401A1 (en) 2011-04-06
US20110050993A1 (en) 2011-03-03

Similar Documents

Publication Publication Date Title
KR20110022133A (ko) 영상의 움직임 추정방법 및 영상처리장치
JP5877469B2 (ja) 動き推定システムにおいてモーメント及び加速度ベクトルを使用するオブジェクト追跡
US6990148B2 (en) Apparatus for and method of transforming scanning format
US7555166B2 (en) Pattern analysis-based motion vector compensation apparatus and method
KR100492127B1 (ko) 적응형 움직임 추정장치 및 추정 방법
JP5777311B2 (ja) 低解像度ビデオから高解像度ビデオを生成する方法
US20080095399A1 (en) Device and method for detecting occlusion area
US8045619B2 (en) Motion estimation apparatus and method
KR20070033345A (ko) 전역 움직임 벡터를 검색하는 방법
US8447126B2 (en) Image processing method and related apparatus
US20100080298A1 (en) Refined Weighting Function and Momentum-Directed Genetic search pattern algorithm
TW201345262A (zh) 影像處理電路及影像處理方法
US20090244388A1 (en) Motion estimation method and related apparatus for determining target motion vector according to motion of neighboring image blocks
KR101382367B1 (ko) 움직임 추정 방법 및 이를 이용한 영상 처리 장치
US20120176536A1 (en) Adaptive Frame Rate Conversion
KR101337206B1 (ko) 블록 샘플링을 이용한 영상의 움직임 추정 시스템 및 방법.
JPH09261646A (ja) 画像の動き検出装置
US20090190038A1 (en) Method, video encoder, and integrated circuit for detecting non-rigid body motion
TWI768324B (zh) 影像處理方法及影像處理裝置
KR20090084311A (ko) 프레임 레이트 변환 방법
KR20090017296A (ko) 중간 프레임의 영상을 생성하기 위한 영상처리방법 및 이를적용한 영상처리장치
KR101473383B1 (ko) 선별적인 후보 검색을 통한 고속 모션 벡터 예측 방법
KR100413002B1 (ko) 동영상 부호화기의 확산누적배열을 이용한 블록정합 장치및 그 방법
CN113542743A (zh) 图像处理方法及图像处理装置
CN116939224A (zh) 基于笛卡尔积和贝叶斯决策的图像块匹配运动估计算法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid