KR20010071282A - 스파아스 탐색 블록-매칭과 인테그럴 프로젝션을 사용하는움직임 추정 처리 방법 및 시스템 - Google Patents

스파아스 탐색 블록-매칭과 인테그럴 프로젝션을 사용하는움직임 추정 처리 방법 및 시스템 Download PDF

Info

Publication number
KR20010071282A
KR20010071282A KR1020007012918A KR20007012918A KR20010071282A KR 20010071282 A KR20010071282 A KR 20010071282A KR 1020007012918 A KR1020007012918 A KR 1020007012918A KR 20007012918 A KR20007012918 A KR 20007012918A KR 20010071282 A KR20010071282 A KR 20010071282A
Authority
KR
South Korea
Prior art keywords
block
determining
obtaining
candidate
current block
Prior art date
Application number
KR1020007012918A
Other languages
English (en)
Other versions
KR100648596B1 (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 밀러 제리 에이
Publication of KR20010071282A publication Critical patent/KR20010071282A/ko
Application granted granted Critical
Publication of KR100648596B1 publication Critical patent/KR100648596B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • 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
    • G06T7/238Analysis of motion using block-matching using non-full search, e.g. three-step search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • 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/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution

Abstract

비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법과 시스템이 개시되어 있다. 특별히, 본 발명의 방법과 시스템은 비교의 횟수를 감소시키는 방식으로 2-차원적인 탐색 영역에 걸쳐 블록-매칭 알고리즘을 수행하기 위해 사용될 수 있다. 특히, 상기 방법은 2-차원적인 탐색 영역의 제 1 범위(dimension)에서의 탐색에 기초하고 사전 결정된 차이 기준에 기초하여 각 스트립에 대한 하나의 베스트 후보 블록을 결정한다(단계 312). 다음으로 상기 방법은 제 1 범위(dimension)에서의 탐색 결과에 기초하여 다른 방향으로 제한된 탐색을 수행함으로써 제 2 베스트 후보 블록 세트를 결정한다(단계 332). 다음으로 상기 방법은 베스트 후보 블록에 대한 움직임 벡터를 결정한다. 인테그럴 프로젝션 어레이는 탐색을 더욱 최적화시키기 위해 사용될 수 있다(350). 본 발명의 방법 및 시스템은 디지털 비디오 인코더, 디코더, 및 포맷 변환기를 최적화시키는데 사용될 수 있다.

Description

스파아스 탐색 블록-매칭과 인테그럴 프로젝션을 사용하는 움직임 추정 처리 방법 및 시스템{MOTION ESTIMATION PROCESS AND SYSTEM USING SPARSE SEARCH BLOCK-MATCHING AND INTEGRAL PROJECTION}
디지털 기술의 발달로 많은 디지털 비디오 애플리케이션 장치가 생산되어 왔다. 디지털 비디오는 현재 디지털 및 고선명 TV, 화상회의 장치(videoconferencing), 컴퓨터 이미지 장치(computer imaging), 및 고품질 비디오 테이프 레코더에 사용되고 있다. 압축되지 않은 디지털 비디오 신호는 막대한 양의 데이터로 구성되고, 따라서 저장 및 전송을 위해서 상당한 크기의 대역폭과 메모리를 필요로 한다. 그러므로, 많은 디지털 비디오 시스템은 특정 애플리케이션에 대해 최적인 데이터 압축 기술을 사용함으로써 디지털 비디오 데이터의 양을 감소시킨다. 디지털 압축 소자는 일반적으로 "인코더"로 지칭되고, 압축해제를 수행하는 소자는 "디코더"로 지칭된다. 인코딩과 디코딩 모두를 수행하는 소자는"코덱(codecs)"으로 지칭된다.
동화상 비디오 압축을 위한 표준화 방법과 관련해서, 동화상 전문가 그룹(MPEG : Motion Picture Experts Group)은 디지털 비디오 처리방법에 대해 많은 표준을 발표했다. MPEG-1은 디지털 오디오 및 비디오 코딩(coding)을 다루며(addresses), 일반적으로 중간 데이터 속도를 필요로 하는 비디오 소자에 의해 이용된다. MPEG-2는 직접 방송 위성 시스템과 같이 더 높은 데이터 속도를 이용하는 소자와 이용된다.
동화상 비디오 시퀀스는, 연속적인 움직임에 대한 환영(illusion)을 제공하기 위해 순차적으로 디스플레이되는 일련의 정지 화상, 즉 "프레임"으로 구성된다. 각 프레임은 화상 요소, 즉 "픽셀"로 이루어진 2-차원적인 어레이로 설명될 수 있다. 각 픽셀은 화상의 특정 지점을 밝기 및 색조(hue)로 설명한다. 픽셀 정보는 디지털 방식으로 표현될 수 있거나, 인코딩되어 디지털 방식으로 송신될 수 있다.
비디오 데이터를 압축하는 한 가지 방법은 비디오 시퀀스의 이웃하는 프레임 사이에 중복성(redundancy)을 이용하는 것이다. 이웃한 프레임은 유사한 정보를 포함하는 경향이 있으므로, 프레임 사이의 차이를 설명하는 것은 전형적으로 새로운 프레임을 설명하는 것보다 더 적은 데이터를 필요로 한다. 만약 프레임 사이에 움직임이 없다면, 예컨대, 차이(0)를 코딩하는 것은 전체 프레임을 다시 코딩하는 것보다 더 적은 데이터를 필요로 한다.
움직임 추정 방법은 이웃한 프레임 사이의 변위를 추정하는 처리방법이다. 변위는, 현재 프레임의 특정 영역과 그 이전 또는 후속 기준 프레임에서 이에 대응하는 변위 영역 사이에 가장 훌륭한 매치를 제공하는 움직임 벡터로서 설명된다. 현재 프레임의 특정 영역과 기준 프레임에서 이에 대응하는 변위 영역 사이의 차이는 "레저듀(residue)"로 지칭된다.
일반적으로, 움직임 벡터를 추정하는데 이용되는 2 가지 공지된 유형의 움직임 추정 방법에는 픽셀-반복 알고리즘(pixel-recursive algorithm)과 블록-매칭 알고리즘이 있다. 픽셀-반복 기술은 이웃한 프레임의 대응하는 픽셀로부터 반복적으로 각 픽셀의 변위를 예측한다. 이에 반해서, 블록-매칭 알고리즘은 블록마다에 기초하여(on a block-by-block basis) 프레임 사이의 변위를 추정하고, 그 차이를 최소화하는 벡터를 선택한다.
종래의 블록-매칭 처리에 있어서, 인코딩될 현재의 이미지는 동일한 크기의 픽셀 정보 블록으로 나누어진다. MPEG 비디오 압축 표준에서, 픽셀은 2 개의 색채 성분(chrominance components) 각각에 대해 하나의 8×8 샘플 블록과 더불어 16×16 휘도 샘플의 샘플 어레이로 구성된 "매크로블록"으로 그룹화 된다. 16×16 휘도 샘플 어레이는 전형적으로 압축 모델에 대해 입력 블록으로 이용되는 4 개의 8×8 블록을 더 포함한다.
도 1은 종래의 블록-매칭 처리방법에 대한 하나의 반복처리(iteration)를 예시한다. 현재 프레임(120)은 블록들로 나누어져서 도시되어 있다. MPEG 장치에서 각 블록은 임의의 크기를 가질 수 있지만, 일예로, 현재 프레임(120)은 전형적으로 16×16 크기를 갖는 매크로블록으로 나누어질 것이다. 현재 프레임(120)을 코딩하기 위해서, 현재 프레임(120)에서의 각 블록은 그 이전 프레임(110)이나 곧 나올프레임(130)의 블록과의 차이에 관하여 코딩된다. 블록-매칭 처리의 각 반복처리에 있어서, 현재 블록(100)은 선행 프레임(110)의 탐색 범위(115)나 곧 나올 프레임(130)의 탐색 범위(135)내의 유사한 크기를 갖는 "후보" 블록과 비교된다. 현재 블록(100)에 대해 가장 작은 차이를 갖는 것으로 결정되는 선행 또는 다가올 프레임의 후보 블록은 기준 블록으로 선택되고, 도 1에서 기준 블록(150)으로 도시되어 있다. 기준 블록(150)과 현재 블록(100) 사이의 움직임 벡터와 레저듀가 계산되고 코딩된다. 현재 프레임(120)은, 압축을 해제하는 동안에, 현재 프레임(120)의 각 블록에 대한 움직임 벡터 및 레저듀뿐만 아니라 기준 프레임(110)의 각 블록에 대한 코딩을 이용하여 복구될 수 있다.
블록 사이의 차이는 몇 가지 공지된 기준 중 임의의 기준을 이용하여 계산될 수 있지만, 대부분의 방법은 일반적으로 에러를 최소화하거나 상관관계(correlation)를 최대화한다. 대부분의 상관관계 기술은 계산 집약적이기 때문에, 에러-계산 방법이 더 일반적으로 이용된다. 에러-계산 측정의 예로 평균 제곱 오차(MSE : Mean Square Error), 평균 절대 왜곡(MAD : Mean Absolute Distortion), 및 절대 왜곡의 합(SAD : Sum of Absolute Distortions)이 있다. 이러한 기준은 인터내셔널 톰슨 출판사에서 1997년에 출판한 조안 엘. 미첼(Joan L. Mitchell)등의 "MPEG 비디오 압축 표준"(284 내지 286쪽)에 설명되어 있다. SAD는 일반적으로 이용되는 매칭 기준이다.
SAD는 다음과 같은 식으로 정의된다.
여기서, 블록의 크기는 M×N이고, r(x, y)은 현재 블록이고, s(x+i, y+j)는 기준 프레임의 탐색 영역(115) 내에 있는 후보 블록이다. 움직임 벡터는 SAD(i, j)에 대해 최소 값을 유도하는 값(i, j)이다.
현재 블록을 탐색 범위 내의 모든 후보 블록에 비교하는 블록-매칭 알고리즘은 "완전 탐색(full search)"으로 지칭된다. 일반적으로, 더 큰 탐색 영역은 좀더 정확한 변위 벡터를 생성하지만, 완전 탐색에 대한 계산의 복잡성은 탐색 범위의 크기에 비례하며, 일부 애플리케이션에 대해서는 너무 느리다. ±N 픽셀의 탐색 범위에 걸쳐서 하나의 픽셀의 정확도로 16×16 픽셀 크기의 매크로블록 상에 적용되는 완전 탐색 블록-매칭 알고리즘은, 예를 들면 (2×N + 1)2번의 블록 비교를 필요로 한다. N=16인 경우, 1089 번의 16×16 블록 비교가 필요하다. 각각의 블록 비교는 16×16, 즉 256번의 계산을 필요로 하기 때문에, 이 방법은 계산 집약적이며 동작에서도 매우 느리다. 그러나, 탐색 영역의 크기를 간단하게 감소시키는 기술은 최적의 매칭 블록을 찾는 것을 실패하는 더 큰 위험을 무릅쓴다.
그 결과, 넓은 탐색 범위 내에서 매칭 블록을 찾기 위한 고속 알고리즘을 생성하는 것이 상당히 강조된다. 이러한 기술들 중 일부는 미첼 등에 의한 문헌(301 내지 311쪽)에 설명되어 있다. 가장 빠른 탐색 기술은 단지 완전 탐색 영역의 스파아스 샘플링을 위한 변위를 계산함으로써 속도가 더욱 빨라진다. 2-D 대수적 탐색(The 2-D logarithmic search)은 일예로 최소 왜곡의 방향으로 이동하는 연속적인 블록에 대한 MSE를 계산함으로써 계산의 횟수를 감소시킨다. 결합 방향 탐색(conjugate direction search)에 있어서, 상기 알고리즘은 최소 왜곡이 발견될 때까지 수평 방향으로 탐색을 한다. 다음으로, 그 지점으로부터 시작해서, 상기 알고리즘은 최소 왜곡이 발견될 때까지 수직 방향으로 탐색한다. 이러한 두 방법은 완전 탐색 보다 더 빠르기는 하지만 최적의 매칭 블록에 대한 위치를 알아내는데 있어서는 종종 실패한다.
완전 탐색에서 계산의 양을 감소시키기 위한 다른 방법은 공간 영역(spatial domain) 픽셀 정보를 직접적으로 사용하는 것보다 오히려 인테그럴 프로젝션 데이터(integral projection data)를 사용하여 블록들 사이의 변위를 계산하는 방법이다. 픽셀 정보의 인테그럴 프로젝션은 수평 또는 수직 방향에 따른 이미지 픽셀 값의 합에 대한 1-차원적인 어레이다. 블록-매칭 알고리즘에서 2-차원적인 픽셀 정보 어레이보다는 오히려 2 개의 1-D 수평 및 수직 프로젝션 어레이를 사용함으로써 각 블록-매칭의 계산 횟수를 상당히 감소시킨다. 이러한 기술은 I. H. Lee와 R. H. Park에 의한 논문 "{인테그럴 프로젝션을 이용한 고속 블록 매칭 알고리즘(A Fast Block Matching Algorithm Using Integral Projections)}"(텐콘 '87 회의 회보, 1987년, 590 내지 594쪽)에 개시되어 있다.
고속 움직임 추정 기술은 하나의 디지털 비디오 포맷에서 다른 디지털 비디오 포맷으로 변환할 때 특히 유용하다. 디지털 비디오는 인코딩되어 압축된 형태로 저장된다. 종래의 소자들을 사용하여 한 포맷에서 다른 포맷으로 변환할 때, 디지털 비디오는 제일 먼저 압축해제되어 그것의 최초 픽셀 형태로 디코딩되어야하고, 그런 후에 계속해서 새로운 형태로 저장 또는 송신하기 위해 인코딩되고 압축되어야 한다. 디지털 비디오가 완전히 디코딩되어야 하는 것을 필요로 하는 변환 기술은 매우 많은 시간이 소모된다.
본 발명은 블록 비교의 횟수를 최소로 하는 고속 탐색을 수행하는 동시에 움직임 벡터의 특성(quality)을 유지함으로써 움직임 추정 처리를 위한 개선된 방법과 장치를 제공한다. 또한, 본 발명은 계산 동작의 횟수를 더욱 최소화시키기 위해서 본 발명의 고속 탐색 처리와 인테그럴 프로젝션을 사용하는 움직임 추정을 위한 방법과 장치를 제공한다. 본 발명은 픽셀 데이터의 전체적인 디코딩 없이도 제 1 포맷에서 제 2 포맷으로의 디지털 비디오 데이터 변환을 허용함으로써, 데이터 포맷 변환에 필요한 시간을 상당히 감소시키는 인테그럴 프로젝션 방법을 사용하는 고속 움직임 추정을 위한 방법과 장치를 또한 제공한다.
본 발명은 일반적으로 비디오 이미지 처리를 위한 움직임 추정 방법 및 장치에 관한 것으로, 특히, 스파아스 탐색 블록-매칭 움직임 추정 기술과 인테그럴 프로젝션 데이터를 사용하여 비디오 이미지 프레임 사이의 움직임 벡터를 결정하기 위한 개선된 방법 및 장치에 관한 것이다.
도 1은 종래의 블록-매칭 기술을 도시하는 도면.
도 2는 본 발명에 따른 블록-매칭 탐색을 위한 탐색 영역을 선택하는 단계를 도시하는 도면.
도 3a 및 도 3b는 본 발명에 따른 블록-매칭 탐색을 수행하기 위한 방법을 도시하는 흐름도.
도 4는 본 발명에 따른 블록-매칭 탐색의 x-방향 탐색을 수행하는 단계를 도시하는 도면.
도 5는 본 발명에 따른 블록-매칭 탐색의 y-방향 탐색을 수행하는 단계를 도시하는 도면.
도 6a는 8×8 픽셀 정보 어레이에 대한 수직 인테그럴 프로젝션(integral projection)을 계산하는 방법을 나타내는 도면.
도 6b는 8×8 픽셀 정보 어레이에 대한 수평 인테그럴 프로젝션을 계산하는 방법을 나타내는 도면.
도 7은 본 발명에 따른 2 개의 8×8 블록을 수평으로 스트래들링(straddling)하는 후보 블록을 나타내는 도면.
도 8은 본 발명에 따른 2 개의 8×8 블록을 수직으로 스트래들링하는 후보 블록을 나타내는 도면.
도 9는 본 발명에 따른 블록-매칭 처리의 한 단계를 나타내는 도면.
도 10a는 8×8 픽셀 정보 어레이에 대한 수직적인 인테그럴 프로젝션을 계산하는 방법을 나타내는 도면.
도 10b는 8×8 픽셀 정보 어레이에 대한 수평적인 인테그럴 프로젝션을 계산하는 방법을 나타내는 도면.
도 11은 본 발명에 따른 시스템에 대한 도면.
도 12는 본 발명에 따른 프로세서에 대한 도면.
본 발명에 따라 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법은, (a) 제 1 프레임의 2-차원적인 현재 블록을 선택하는 단계로서, 상기 현재 블록은 N×M의 픽셀 정보 어레이를 포함하고, N과 M은 "1" 보다 큰 양의 정수인 선택 단계와, (b) 현재 블록과 사전 결정된 탐색 범위에 기초하여 제 2 프레임의 2-차원적인 탐색 영역을 결정하는 결정 단계와, (c) 현재 블록과 사전 결정된 차이 기준에 기초하여, 각각의 픽셀 정보 스트립에서 적어도 하나의 후보 블록을 선택함으로써 제 1 후보 블록 세트를 결정하는 단계로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하는 결정 단계와, (d) 현재 블록과 사전 결정된 차이 기준에 기초하여, 적어도 하나의 제 2 탐색 영역 각각에서 적어도 하나의 후보 블록을 선택함으로써 제 2 후보 블록 세트를 결정하는 단계로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하고, 적어도 하나의 제 2 탐색 영역 각각은 제 1 후보 블록 세트에 기초하는 결정 단계와, (e) 사전 결정된 차이 기준에 기초하여 제 2 후보 블록 세트로부터 기준 블록을 획득하는 획득 단계와, (f) 현재 블록과 기준 블록 사이의 거리를 나타내는 움직임 벡터를 결정하는 결정 단계를 포함한다.
비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템은, 제 1 프레임의 2-차원적인 현재 블록을 선택하는 수단으로서, 상기 현재 블록은 N×M의 픽셀 정보 어레이를 포함하고, N과 M은 "1" 보다 더 큰 양의 정수인 선택 수단과, 현재 블록과 사전 결정된 탐색 범위에 기초하여 제 2 프레임의 2-차원적인 탐색 영역을 결정하는 결정 수단과, 현재 블록과 사전 결정된 차이 기준에 기초하여 각각의 픽셀 정보 스트립에서 적어도 하나의 후보 블록을 선택함으로써 제 1 후보 블록 세트를 결정하는 수단으로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하는 결정 수단과, 현재 블록과 사전 결정된 차이 기준에 기초하여 적어도 하나의 제 2 탐색 영역 각각에서 후보 블록을 선택함으로써 제 2 후보 블록 세트를 결정하는 수단으로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하고, 적어도 하나의 제 2 탐색 영역은 제 1 후보 블록 세트에 기초하는 결정 수단과, 사전 결정된 차이 기준에 기초하여 제 2 후보 블록 세트로부터기준 블록을 획득하는 획득 수단과, 현재 블록과 기준 블록 사이의 거리를 나타내는 움직임 벡터를 결정하는 결정 수단을 포함한다.
본 발명에 따른 컴퓨터 프로그램 제품은 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위해 내부에 구현된 컴퓨터-판독가능 코드를 구비하는 컴퓨터-사용가능 매체를 포함하는데, 상기 컴퓨터-사용가능 매체는 제 1 프레임의 2-차원적인 현재 블록을 선택하기 위해 구성된 구성성분으로서, 상기 현재 블록은 N×M의 픽셀 정보 어레이를 포함하고, N과 M은 "1" 보다 더 큰 양의 정수인 구성성분과, 현재 블록과 사전 결정된 탐색 범위에 기초하여 제 2 프레임의 2-차원적인 탐색 영역을 결정하기 위해 구성된 구성성분과, 현재 블록과 사전 결정된 차이 기준에 기초하여 각각의 픽셀 정보 스트립에서 적어도 하나의 후보 블록을 선택함으로써, 제 1 후보 블록 세트를 결정하기 위해 구성된 구성성분으로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하는 구성성분과, 현재 블록과 사전 결정된 차이 기준에 기초하여 적어도 하나의 제 2 탐색 영역 각각에서 적어도 하나의 후보 블록을 선택함으로써, 제 2 후보 블록 세트를 결정하기 위해 구성된 구성성분으로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하고, 적어도 하나의 제 2 탐색 영역 각각은 제 1 후보 블록 세트에 기초는 구성성분과, 사전 결정된 차이 기준에 기초하여 제 2 후보 블록 세트로부터 기준 블록을 획득하기 위해 구성된 구성성분과, 현재 블록과 기준 블록 사이의 거리를 나타내는 움직임 벡터를 결정하기 위해 구성된 구성성분을 포함한다.
본 발명의 다른 양상에 따라, 디지털 비디오 데이터의 한 프레임을 제 1 포맷에서 제 2 포맷으로 변환하기 위한 방법은, 제 1 프레임의 픽셀 정보를 제 1 포맷으로 나타내는 디지털 계수 정보를 획득하는 획득 단계와, 디지털 계수 정보에 기초하여 제 2 포맷의 제 1 프레임과 제 2 포맷의 제 두 프레임 사이의 차이를 나타내는 움직임 벡터를 결정하는 단계로서, 제 2 포맷의 제 1 프레임은 제 1 포맷의 제 1 프레임에 대응하는 결정 단계를 포함한다.
또한, 디지털 비디오 데이터의 한 프레임을 제 1 포맷에서 제 2 포맷으로 변환하는 시스템은, 제 1 프레임의 픽셀 정보를 제 1 포맷으로 나타내는 디지털 계수 정보를 획득하는 획득 수단과, 디지털 계수 정보에 기초하여 제 2 포맷의 제 1 프레임과 제 2 포맷의 제 두 프레임 사이의 거리를 나타내는 움직임 벡터를 결정하는 수단으로서, 제 2 포맷의 제 1 프레임은 제 1 포맷의 제 1 프레임에 대응하는 결정 수단을 포함한다.
본 명세서에 병합되고 본 명세서의 일부를 구성하는 첨부 도면들은 본 발명을 예시하고, 설명과 더불어 본 발명의 원리를 설명하기 위해 제공된다.
이제 본 발명에 따른 바람직한 구현에 대해 상세하게 참조가 이루어질 것이고, 상기 구현의 예가 첨부 도면을 통해 기술된다.
A. 스파아스 탐색 처리(Sparse Search Process)
일반적으로, 움직임 추정 기술은 비디오 시퀀스의 연속적인 프레임 사이에 중복성(redundancy)을 이용한다. 종종, 이웃하는 프레임은 비록 약간은 변위되었지만 매우 유사한 정보를 포함한다. 움직임 추정 기술은 프레임 전체로 각 프레임을 인코딩하기보다는 오히려 이웃하는 프레임과의 차이에 대해서 하나의 프레임을 인코딩함으로써 디지털 비디오 시퀀스를 나타내는데 필요한 데이터의 양을 압축시킨다. 비디오 시퀀스가 재생되었을 때, 디코더는 움직임 벡터와 레저듀(residue)뿐만 아니라 기준 프레임을 사용하여 현재 프레임을 재구성한다.
본 발명에 따른 방법에 있어서, 기준 프레임에 대해서 현재 프레임의 각 블록에 대한 움직임 벡터가 추정된다. 도 2는 현재 프레임(220)과 기준 프레임(210)을 나타낸다. 현재 프레임(220)은 M×N 픽셀들을 각각 포함하는 다수의 블록(225)으로 나누어진다. M과 N은 "1" 보다 더 큰 임의의 정수 값을 나타낼 수 있지만, 다음의 예에서는 M=N=8이다. 현재 프레임(220)을 나타내기 위해서, 현재 프레임(220) 내의 각 블록(225)은 기준 프레임(210) 내에 있는 유사 크기 블록으로부터의 변위를 나타내는 움직임 벡터로 표시되어 있고, 현재 프레임 내의 블록과 기준 프레임 내의 블록 사이에 레저듀로 표시되어 있다.
도 3a 및 도 3b는 현재 프레임의 한 블록에 대한 움직임 벡터를 획득하기 위한 본 발명에 따른 방법을 도시하는 흐름도를 포함한다. 특히, 도 3a 및 도 3b는 한 블록에 대한 움직임 벡터를 추정하는 방법을 나타낸다. 맨 먼저, 처리는 도 2에도시된 바와 같은 현재 프레임(220)의 현재 블록(240)을 선택한다(단계 302). 블록-매칭 알고리즘을 사용하여 움직임 벡터를 결정하기 위해서, 현재 블록(240)은 기준 프레임(210)의 대응하는 탐색 영역에 있는 일부 또는 모든 후보 블록과 비교된다.
다시 도 3a를 참조하면, 다음 단계에서는 기준 프레임(210)의 탐색 영역(215)이 선택될 것이다(단계 304). 도 2의 탐색 영역(215)은 탐색 범위(±S)로 정의되고, 현재 프레임(220) 내의 현재 블록(240)의 위치에 기초한다. 탐색 범위(S)는 사전 결정될 수 있거나 다이내믹하게 결정될 수 있다. 탐색 범위(S)는 모든 프레임에 대해 동일할 수 있거나 현재 프레임과 기준 프레임 사이의 시간 차이에 따라 다를 수 있다. 탐색 범위(S)는 "0" 보다 더 큰 임의의 양의 정수 값일 수 있지만 프레임 크기보다는 더 작다. 비록 더 큰 탐색 크기가 일반적으로 더 정확한 움직임 벡터를 생성할 지라도, 탐색에 대한 동작(operation)의 복잡도가 탐색 영역에 비례하여 커질 수 있기 때문에, 전체 프레임 크기보다 작은 탐색 범위(S)가 권고된다. 단지 설명의 목적을 위해서, 다음의 예는 탐색 범위가 8개의 픽셀, 즉 S=8로 정의된다. 도 2는 S=8로 정의된 탐색 영역(215)을 나타낸다; (x, y)로 표기된 지점은 현재 블록(240)의 상단 좌측 픽셀을 나타낸다. 탐색 범위가 ±8이라고 가정하면, 지점(x, y)에 대한 탐색 영역은 기준 프레임(210) 내의 시작점(x, y)으로부터 영역(S) 픽셀에 의해 결정된 (x-8, y-8), (x+8, y-8), (x+8, y+8), 및 (x-8, y+8)로 영역 경계가 이루어진다. x 및 y 방향으로의 탐색 범위는 다를 수 있지만, 예의 설명을 쉽게 하기 위해서, 본 명세서에서는 탐색 범위가 x 및 y 방향 모두에 있어서 동일하다고 가정한다.
종래의 한 픽셀씩의 완전 탐색(one-pixel-step full search)에서, 현재 블록(240)은 탐색 영역 내에 있는 각각의 가능한 8×8 후보 블록과 비교될 것이다. 일예로, 현재 블록(240)은 제일 먼저 탐색 영역(215) 상단의 최고 좌측 구석에 있는 8×8 블록에 비교될 것이고, 그 차이가 계산될 것이다. 제 1 비교가 계산된 후에, 현재 블록(240)은 우측 방향의 한 픽셀에서 시작하는 8×8 블록과 비교될 것이고, 그 차이가 계산될 것이다. 현재 블록(240)을 (x+8, y-8)에서 시작하는 후보 블록과 비교한 후에, 다음 "행(row)"에서 현재 블록(240)과 상단 좌측 구석(x-8, y-7)을 갖는 후보 블록을 비교하는 처리가 계속될 것이다. 절대 왜곡의 합(sum of absolute distortions)을 매칭 기준으로 사용함으로써, 일예로, 완전 탐색 처리는 다음 식과 같이 정의될 수 있다:
여기서, -8≤i≤8 및 -8≤j≤+8이며, r은 현재 블록이고, s는 후보 블록이다. SAD(i, j)에 대한 최소 값을 생성하는 (i, j) 쌍은 현재 블록(240)의 움직임 벡터를 정의한다. (1, 1)의 움직임 벡터는 일예로 기준 프레임 내에서 현재 블록(240)에 대응하는 위치 보다 수평적으로 오른쪽 한 픽셀과 수직적으로 아래 한 픽셀에 있는 기준 프레임 내의 블록이 현재 블록(240)에 매우 닮았음을 의미한다. x=0,1,...,7 및 y=0,1,...7에 대한 r(x, y)-s(x+I, y+j) 값의 어레이는 현재 블록과 후보 블록에 대한 레저듀로서 레코딩된다.
본 발명은 완전 탐색을 통해 계산된 비교의 서브 세트만을 계산하는 것을 선택적으로 선택함으로써 블록 비교의 횟수를 감소시킨다. 따라서, 처리는 수평 또는 수직 방향 중 한 방향으로의 탐색을 수행한다. 그런 후에, 처리는 제 1 방향으로의 탐색 결과에 기초하여 다른 방향으로의 제한된 탐색을 수행한다. 처음 두 번의 탐색이 수행되는 방향의 순서는 중요하지 않다, 즉, 탐색은 먼저 수직 방향으로 먼저 수행된 후에 수평 방향으로 수행될 수 있거나 또는 그 반대로 수행될 수 있다. 단지 설명의 목적을 위해서, 다음의 예는 처리가 x 방향의 수평 탐색으로 시작한다고 가정한다.
본 발명에 따라, 탐색 영역(215)은 도 4에 도시된 바와 같이 다수의 행에 대한 서브세트로 나누어진다(도 3a에서 단계 306). 각각의 서브세트, 즉 "스트립(strip)"은 Z개의 픽셀 행으로 이루어진 폭이다. Z는 "1" 보다 더 큰 임의의 정수일 수 있고, S, 즉 탐색 범위보다 더 작거나 동일할 수 있다. 그러나, 바람직하게, Z는 S의 정수 인자이다. 도 4에 도시된 실시예에 있어서, Z=8이다. 그러므로 탐색 영역(215)은 (S/Z)×2+1=(8/8)×2+1=3개의 스트립으로 분할된다.
처리는 현재 블록(240)을 각 스트립 내에 있는 후보 블록의 서브세트에 비교함으로써 x-방향으로의 탐색을 수행한다. 각각의 비교에 있어서, 후보 블록의 y-좌표는 Z의 정수 배, 즉 이 경우에는 8일 것이다. 처리는 임의의 적절한 에러 계산 방법 또는 상관관계 방법을 사용하여 현재 블록(240)과 각 후보 블록 사이의 차이를 계산한다(단계 308).
후보 블록에 대한 차이가 이 스트립 내의 다른 후보 블록에 대해 지금까지계산된 차이보다 작거나 또는 만약 상기 후보 블록이 스트립 내의 제 1 후보라면, 그 때는 이 후보가 "베스트(best)" 후보 블록이다(단계 312). 베스트 후보 블록에 대한 좌표와 차이는 나중의 비교를 위해 저장된다(단계 310). 만약 이 후보 블록에 대한 차이가 이전의 차이 계산 값보다 더 크다면, 상기 후보 블록의 좌표는 버려진다.
만약 후보 블록이 스트립 내의 마지막 블록이 아니라면(단계 316), 처리는 D 픽셀들을 x 방향으로 이동시킨다(단계 314). 현재 블록(240)은 새로운 위치에 있는 후보 블록에 비교되고(단계 308), 처리는 단계 308로부터 계속된다. D는 "1"에서부터 S까지의 범위에 있는 임의의 정수 값일 수 있다. 만약 D=1이라면, 일예로, 현재 블록(240)은 스트립 내의 모든 후보 블록에 비교된다.
스트립의 종단에서(단계 316), 처리는, 일예로 현재 블록(240)과의 가장 작은 차이를 유발하는 후보 블록의 상단 좌측 구석에 대응하는 x 및 y 좌표를 레코딩함으로써, 상기 스트립에 대한 후보 블록을 저장한다(단계 318). 처리는 탐색 영역(215) 내의 각 스트립에 대해 반복된다. x-방향으로의 탐색 단계의 종결(단계 320)에서, 처리는 각 스트립에 대해 하나의 "베스트" 후보 블록을 레코딩한다. 용어 "베스트"는 현재 블록(240)과 가장 작은 차이를 유발하는 후보 블록을 나타낸다.
다음으로, 처리는 다른 직교 방향, 즉 이 경우에는 y-방향으로 탐색한다. 각 스트립의 베스트 후보 블록에 대해, 처리는 제한된 탐색 영역을 정의한다(도 3b에서 단계 322). 도 5는 탐색 영역(215)과 베스트 후보 블록(561, 562, 및 563)을 나타낸다. 각각의 제한된 탐색 영역은 후보 블록에 의해 형성된 부분 열을 포함하고, 각 방향으로 수 개의 추가적인 행을 포함한다. 즉, 제 2 단계에서 각각의 제한된 영역은 제 1 단계에서 획득된 베스트 후보 블록을 어느 한쪽 방향으로 수 개의 행만큼 슬라이딩함으로써 형성된 영역이다. 각 방향으로의 행의 수는 다를 수 있지만, 설명을 위해서, 각각의 제한된 탐색 영역은 각 방향으로 Y개의 행을 포함한다. Y는 "1" 보다 더 큰 임의의 정수일 수 있지만, 만약 Y ≥Z이라면, 처리는 x-방향으로 수행된 일부 차이 계산을 불필요하게 반복할 것이다. 단지 일 예를 위해서, Y=Z/2라고 가정하면, 그것은 이 예에서 Y=4를 의미한다.
다시 도 3b를 참조하면, 현재 블록(240)은 제 1 후보 블록에 비교된다(단계 330). 비교를 수행하기 위해서, 현재 블록(240)의 좌측 가장자리는 후보 열의 좌측 가장자리와 일직선이 된다(is aligned with). 처리는 적절한 에러 계산 방법이나 상관관계 방법을 사용하여 현재 블록(240)과 후보 블록 사이의 차이를 계산한다.
만약 이 차이가 계산된 제 1 차이거나, 이 후보 블록에 대한 차이가 지금까지 다른 후보 블록들에 대해 계산된 차이보다 더 작다면, 후보 블록의 좌표나 차이는 나중의 비교를 위해 저장된다(단계 334). 만약 이 후보 블록에 대한 차이가 이전 차이 계산 값보다 더 크다면, 후보 블록 좌표는 버려지고, 처리는 단계(336)에서 계속된다.
만약 후보 블록이 제한된 탐색 영역 내의 마지막 블록이 아니라면(단계 336), 처리는 D2픽셀을 y 방향으로 이동시킨다(단계 335). 현재 블록(240)은 새로운 위치에 있는 후보 블록에 비교된다(단계 330). 처리는 단계 330부터 계속된다. D2는 "1"부터 Y까지의 범위에 있는 임의의 정수 값일 수 있다.
다시 도 3b를 참조하면, 만약 처리가 제한된 탐색 영역의 종단에 이르렀다면(단계 338), 처리는 다음의 제한된 탐색 영역으로 가고 단계(330)부터 계속된다. 제한된 탐색 영역의 종단에서, 처리는 모든 제한된 탐색 영역에 걸쳐서 "베스트" 후보 블록의 좌표를 사용하여 움직임 벡터를 결정한다(단계 350). 픽셀 차이 어레이는 현재 블록과 "베스트" 후보 블록에 대한 레저듀로서 레코딩된다.
B. 인테그럴 프로젝션 데이터(integral projection data)를 사용한 스파아스 탐색
블록-매칭 알고리즘과 같은 종래의 움직임 추정 기술은 움직임 벡터를 추정하기 위해 공간 영역 픽셀 정보를 사용한다. 픽셀 정보와 상술된 SAD와 같은 차이 계산을 사용하여 N×N 현재 블록을 N×N 후보 블록에 비교할 때, N×N번의 계산이 필요하게 된다. 그러나 인테그럴 프로젝션과 같은 다른 정보를 사용하여 두 블록을 비교하는 것이 가능하다. 픽셀 정보의 인테그럴 프로젝션은 특정의 수평 또는 수직 방향에 따른 수 개의 이미지 픽셀 값들의 합이다. 도 6a는 수직 인테그럴 프로젝션을 나타낸다; 도 6b는 수평 인테그럴 프로젝션을 나타낸다.
본 발명의 대안적인 실시예는 움직임 벡터를 결정하는데 있어서 수행되는 계산의 횟수를 더욱 감소시키기 위해서 상술된 스파아스 탐색과 연계하여 인테그럴 프로젝션 정보를 사용한다. 인테그럴 프로젝션 정보는 픽셀 정보로부터 1-차원적인인테그럴 프로젝션 어레이를 계산하거나 일예로 디지털 비디오 디코더로부터의 이산 코사인 변환(DCT) 계수 데이터로부터 인테그럴 프로젝션 정보를 계산함으로써 획득될 수 있다. 특히, 본 발명은 필요한 계산을 감소시키기 위해 사용될 수 있고, 따라서 일예로 디지털 비디오(DV) 포맷으로부터 MPEG 포맷으로의 변환과 같이 하나의 디지털 비디오 포맷으로부터 다른 포맷으로 변환하는데 필요한 계산 시간을 감소시킨다.
DCT는 다음과 같이 수학적으로 나타낼 수 있다:
h=0,1,...7이고 v=0,1,...7에 대해서,
여기서,
및,
P(x, y)는 8×8 픽셀 데이터 블록이고, Q(h, v)는 8×8 DCT 계수 블록이다. 수학적으로, 만약 8×8 DCT 계수 블록이 1-차원적인 수평 역 이산 코사인 변환(IDCT : inverse discrete cosine transform)에 대해 입력으로서 사용된다면, 그 결과는 8×8 어레이이며, 이 어레이의 제 1 행은 상수가 곱해진 픽셀 정보의 각 열에 대한 합을 포함한다. 그러므로, 제 1 행은 8×8 픽셀 정보 블록의 1-차원적인 수직 프로젝션과 동일하다. 마찬가지로, 만약 동일한 8×8 DCT 계수 블록이 1-차원적인 수직IDCT에 대한 입력이라면, 그 결과의 제 1 열은 기초적인 8×8 블록의 픽셀 정보의 1-차원적인 수평 프로젝션과 동일하게 될 것이다. 수직 및 수평적인 인테그럴 프로젝션은 움직임 벡터를 추정하기 위해서 사용될 수 있다.
인테그럴 프로젝션을 사용하는 본 발명에 따른 방법은 상술된 실시예와 유사하다. 다시 도 3a를 참조하면, 상기 방법은 제일 먼저 도 2에 도시된 바와 같이 현재 프레임(220)의 현재 블록(240)을 선택한다(단계 302). 현재 프레임(220)은 N×M 픽셀을 각각 포함하는 다수의 동일 크기를 갖는 탐색 블록으로 나누어진다. N과 M은 "1" 보다 더 큰 임의의 정수 값을 나타내지만, DCT 계수 어레이를 통해 1-차원적인 IDCT를 수행함으로써 획득된 인테그럴 프로젝션 데이터를 사용할 때는, DCT 단계의 인코딩 동안에 사용된 블록 크기의 정수 배와 동일한 N과 M을 선택하는 것이 권고된다. 일예로, 만약 비디오 인코더가 8×8 픽셀 정보 블록에 대해 DCT 압축을 수행한다면, N=M=8로 선택되는 것이 권고된다.
다시 도 3a를 참조하면, 다음 단계에서는 기준 프레임(210)의 탐색 영역(215)이 선택될 것이다(단계 304). 탐색 영역, 즉 S는 임의의 정수 값일 수 있지만, 인테그럴 프로젝션이 비디오 디코딩 처리로부터의 8-지점(point) DCT 계수들로부터 획득될 때는, 8의 정수 배인 탐색 범위를 선택하는 것이 바람직하다. 다음의 예는 탐색 범위가 8 픽셀, 즉 S=8로서 정의된다는 것을 가정한다. 탐색 범위, 즉 S가 ±8이라고 가정하면, 탐색 영역은 (x-8, y-8), (x+8, y-8), (x+8, y+8), 및 (x-8, y+8)로 영역 경계가 이루어진다. 다음으로 탐색 영역(215)은 도 4에 도시된 바와 같이 수 개(Z)의 행을 각각 포함하는 스트립으로 나누어진다. 이 실시예에서,각각의 "스트립"은 DCT 계수로부터 획득된 인테그럴 프로젝션 데이터를 이용할 수 있도록 하기 위해서 8개의 행으로 이루어진 폭이다. 그러므로 탐색 영역(215)은 (S/Z)×2+1=(8/8)×2+1=3개의 스트립으로 분할된다.
처리는, 도 4에 도시된 바와 같이, 현재 블록(240)을 각 스트립 내의 후보 블록 서브세트에 비교함으로써 x-방향으로의 탐색을 수행한다. 각각의 비교에 있어서, 후보 블록의 y-좌표는 Z의 정수 배, 즉 이 경우에는 8일 것이다. 처리는 임의의 적절한 에러 계산 방법이나 상관관계 방법을 사용하여 현재 블록(240)과 각 후보 블록 사이의 차이를 계산한다(단계 308).
만약 후보 블록에 대한 차이가 지금까지 상기 스트립 내의 다른 후보 블록에 대해 계산된 차이보다 작거나 상기 후보 블록이 스트립 내의 제 1 후보라면, 그 때 상기 후보는 "베스트" 후보 블록이다(단계 312). 베스트 후보 블록의 좌표와 차이는 나중의 비교를 위해 저장된다(단계 310). 처리는 임의의 적절한 에러 계산 방법이나 상관관계 방법을 사용하여 현재 블록(240)과 후보 블록 사이의 차이를 계산한다(단계 308). 제 1 실시예에 있어서, 계산은 픽셀 데이터를 통해 수행된다. 인테그럴 프로젝션 데이터를 사용하는 본 발명의 실시예에서는, 1-차원적인 인테그럴 프로젝션 어레이가 대신 사용된다. 만약 x-방향으로의 탐색이 수직 프로젝션을 사용하여 수행된다면, 후보 블록이 스트립 내에서 좌측으로부터 우측으로 이동하기 때문에, 각각의 후보 블록에 대한 대부분의 수직 프로젝션은 다시 계산하지 않고도 상기 블록에서부터 좌측으로 획득될 수 있다.
만약 인테그럴 프로젝션 정보가 픽셀 데이터로부터 계산되어 진다면, 처리는N×N 후보 블록에 대한 N 수직 프로젝션을 계산하고, N×N 현재 블록(240)에 대한 N 수직 프로젝션을 계산한다. 다음으로 최종 합이 차이를 계산하는데 사용된다. 일예로, 절대 왜곡의 합(SAD : sum of absolute distortions)을 매칭 기준으로 사용한다면, 그 때 수직 프로젝션 차이는 다음과 같이 계산된다:
여기서 -S≤i≤+S, -S≤j≤+S이고, j는 Z의 정수 배이다. 또한, r(x)은 현재 블록의 x 번째 열에 대한 수직 프로젝션이고, s(x+i, j)는 행(j)에서 시작하는 후보 블록의 (x+i) 번째 열의 수직 프로젝션이나 합이다.
만약 후보 블록에 대한 수직 프로젝션이 DCT 계수로부터 획득된다면, 수직 프로젝션 s(x+i, j)는 2 개의 블록으로부터 계산될 수 있다. DCT 계수 어레이는 도 7에서 블록 #1 및 블록 #2와 같은 8×8 블록에 대해 계산된다. 만약 후보 블록의 좌표가 S에 부합한다면, 즉 D=1이라면, 현재 블록(240)은 스트립 내의 모든 후보 블록들에 비교된다.
스트립의 종단에서, 처리는 현재 블록(240)과 가장 작은 차이를 유발하는 후보 블록의 상단 좌측 구석에 대응하는 x 및 y 좌표를 레코딩한다(단계 318). 처리는 탐색 영역(215) 내의 각 스트립에 대해 반복된다. x-방향으로의 탐색 단계의 종결에서, 처리는 각 스트립에 대한 하나의 "베스트" 후보 블록을 레코딩한다(단계 320). 용어 "베스트"는 현재 블록(240)과 가장 작은 차이를 유발하는 후보 블록을 나타낸다.
다음으로, 처리는 y-방향으로 탐색한다. 도 5는 기준 프레임(210) 내의 탐색 영역(215)과 x-방향 탐색으로부터의 베스트 후보 블록(561, 562, 및 563)을 나타낸다. 각 스트립의 베스트 후보 블록에 대해서, 제 2 제한된 탐색 영역은 베스트 후보 블록에 의해 형성된 열을 포함하고, 각 방향으로 Y개의 행을 포함한다. Y는 "1" 보다 큰 임의의 정수 값일 수 있지만, 만약 Y≥S라면, 처리는 x-방향으로 수행되는 일부 차이 계산을 불필요하게 반복할 것이다. 단지 예를 위해서, Y=S/2, 즉 이 경우에 Y=4라고 가정하자.
처리는 임의의 수의 픽셀(1 내지 Y)을 y 방향으로 이동시킬 수 있지만, 설명을 쉽게 하기 위해서, 처리가 매번 하나의 픽셀을 y 방향으로 이동시킨다고 가정한다. 비교 처리는, 일예로, 베스트 후보 블록(561)의 상단 최고좌측 지점이 (m, n)인 경우에, 현재 블록(240)과 (m, n-Y)와 같은 상단 최고좌측 지점을 갖는 후보 블록을 비교함으로서 시작할 수 있다(단계 330).
처리는 임의의 적절한 에러 계산 방법이나 상관관계 방법을 사용하여 현재 블록(240)과 후보 블록 사이의 차이를 계산한다(단계 330). 제 1 실시예에 있어서, 상기 계산은 픽셀 데이터를 통해 수행된다. 인테그럴 프로젝션 데이터를 사용하는 본 발명의 실시예에서는, 1-차원적인 인테그럴 프로젝션 어레이가 대신 사용된다. 제 2 탐색 처리를 수행한다면, 수평 및 수직 프로젝션을 모두 사용하는 이 예에서 y-방향으로의 탐색은 더 정확한 움직임 추정을 생성할 수 있다. 단지 수평적인 인테그럴 프로젝션만을 사용한다면, 일예로, 4 개의 이웃하는 블록들의 차이의 가중된 합은 {(8-2)/8}*{(5, 0)에서 수직 프로젝션을 사용한 탐색과의차이}+(2/8)*{(5, 8)에서 수직 프로젝션을 사용한 탐색과의 차이}+{(8-5)/8}*{(0, 2)에서 수평 프로젝션을 사용한 탐색과의 차이}+(5/8)*{(8,2)에서 수평 프로젝션을 사용한 탐색과의 차이}로 계산될 수 있다.
수학적으로, 후보 블록(910)에 대한 SAD는 다음 식과 같다:
여기서 r(x)은 현재 블록의 x번째 열에 대한 수직 프로젝션이고, t(y)는 현재 블록의 y번째 행에 대한 수평 프로젝션이고, s(x+5, 0) 및 s(x+5, 8)는 각각 0≤x≤2에 대해 블록 #1과 블록 #3의 (x+5)번째 열에 대한 수직 프로젝션 또는 합이다; s(x+5, 0) 및 s(x+5, 8)는 각각 3≤x≤7에 대해 블록 #2와 블록 #4의 (x+5-8)번째 열에 대한 수직 프로젝션 또는 합이다; u(0, y+2) 및 u(8, y+2)는 각각 0≤y≤5에 대해 블록 #1과 블록 #2의 (y+2)번째 행에 대한 수평 프로젝션 또는 합이다; u(0, y+2) 및 u(8, y+2)는 각각 6≤y≤7에 대해 블록 #3과 블록 #4의 (y+2-8)번째 행에 대한 수평 프로젝션 또는 합이다.
처리는 후보 블록과 현재 블록(240) 사이의 최소 차이를 생성하는 최적의 j를 찾을 때까지 각각의 비교에 대해서 수직 인덱스 j를 증가시킨다. 이러한 절차는 베스트 후보 블록(561, 562, 및 563)에 의해 정의된 각각의 작은 탐색 영역에 대해 반복되고, 베스트 후보 블록이 레코딩된다. 각각의 비교를 통해, 만약 상기 후보가 현재 블록(240)과 최소의 총 차이를 유발한다면, 상기 후보의 좌표와 총 차이는 레코딩된다. 모든 작은 영역의 탐색이 완료되었을 때, 레코딩된 베스트 후보 블록은현재 블록(240)을 가장 많이 닮은 기준 블록이다. 마지막으로, 처리는 베스트 후보 블록(m, l)과 현재 블록(240)으로부터의 움직임 벡터와 레저듀를 계산한다.
주파수 영역 정보의 1-D IDCT를 사용하여 인테그럴 프로젝션을 계산하는 것은 각각의 8 프로젝션 세트에 대해 거의 11번의 곱셈과 29번의 덧셈을 필요로 한다. 만약 프로젝션이 공간 영역에서 순수하게 계산된다면, 각각의 8 프로젝션 세트에 대해서 대략 56번의 동작을 수행한다. 주파수 영역 방법의 수행 이득은, 단지 4 개의 더 낮은 주파수 계수의 4-지점 IDCT만이 사용될 경우에, 더 높아질 것이다. 이 처리는 8번의 프로젝션에 대해 추가의 필터링과 추림(decimation)을 수행하는 것과 동일하다. 이 경우에는, 모든 8×8 블록에서 단지 4번의 인테그럴 프로젝션이 사용된다. 4-지점 IDCT로부터 획득된 4 개의 프로젝션 데이터는 도 10a에 도시된 바와 같이 모든 2 개의 인접한 인테그럴 프로젝션의 합과 같다. 2 개의 더 낮은 주파수 계수를 통해 2-지점 IDCT를 사용하거나 도 10b에서 상기 절차와 유사한 다른 합산 단계를 수행함으로써 모든 8×8 블록에서 2번의 프로젝션을 사용하는 것이 또한 가능하다. 보다 적은 수의 프로젝션을 사용함으로써 움직임 탐색에서 동작의 수를 더욱 감소시킬 수 있다.
C. 시스템
도 11은 본 발명에 따른 시스템(1105)을 도시한다. 도 11에 도시된 바와 같이, 프로세서(1110)는 임의의 적절한 데이터 연결을 통해 적어도 하나의 입/출력(I/O) 소자(1120)에 연결된다. I/O 소자(1120)는 프로세서(1110)로 정보를 전달할 수 있거나 또는 그(1110)로부터 데이터를 수신할 수 있는 임의의 소자 일수 있다. 단지 예를 통해, I/O 소자(1120)는 IEEE 1394 인터페이스를 통해 연결된 디지털 캠코더일 수 있다. 프로세서(1110)는, 일예로 펜티엄 프로세서와 같은 임의의 일반적으로 이용가능한 디지털 프로세서일 수 있다. 프로세서(1110)는 단일 프로세서이거나 다중 프로세서일 수 있다. 그러나 고속 프로세서는 본 발명의 실행 시간을 감소시킬 것이다.
본 발명의 시스템은 프로세서(1110)에 의해 처리된 데이터와 I/O 소자(1120)로 보내지거나 또는 그(1120)로부터 수신되는 데이터를 저장할 수 있는 메모리(1130)를 또한 포함한다. 시스템(1105)은 정보를 디스플레이하기 위해서 음극선관(CRT)과 같은 디스플레이(1140)에 연결될 수 있다. 프로세서(1110), I/O 소자(1120), 메모리(1130), 및 디스플레이(1140)는 표준 시스템 버스(1160)를 통해 연결된다. 도 11은, 각각의 하드웨어 성분이 종래의 상업적으로 이용가능한 컴퓨터 시스템 성분으로 구현될 수 있는 예시적인 네트워크를 나타낸다.
도 12는 본 발명에 따른 프로세서를 도시하다. 프로세서(1110)는 하나 이상의 메모리 관리 유닛(MMU)(1210), 하나 이상의 프로세서 요소 어레이(1220), 및 하나 이상의 누산기 유닛(1230)을 포함할 수 있다. 프로세서 요소 어레이(1220)는 프로세서 요소들(1225)로 이루어진 어레이를 포함할 수 있다. 프로세서 요소들(1225)은 일예로 블록들 사이의 SAD를 계산하기 위해 감산기 및 가산기 유닛을 포함할 수 있다. MMU(1210)는 프로세서 요소 어레이(1220)에 대한 데이터를 버퍼링하기 위해 사용될 수 있다. 누산기 유닛(1230)은 일예로 프로세서 요소들(1225)로부터의 출력을 더하는 가산기 유닛일 수 있다.
본 발명의 한 구현에 따라, 프로세서(1110)는 메모리(1130) 내에 포함된 하나 이상의 명령에 대한 하나 이상의 시퀀스를 실행한다. 그러한 명령은 입/출력 소자(1120)를 통해 컴퓨터-판독가능 매체로부터 메모리(1130)로 판독될 수 있다. 메모리(1130)에 포함된 명령 시퀀스의 실행은 프로세서(1110)로 하여금 본 명세서에서 설명된 처리 단계들을 수행하게 한다. 대안적인 구현에 있어서, 배선 회로는 본 발명을 구현하기 위해서 소프트웨어 명령을 대신하거나 또는 그와 협력하여 사용될 수 있다. 따라서 본 발명의 구현은 하드웨어 회로와 소프트웨어의 임의의 특정한 결합으로 제한되지는 않는다.
본 명세서에서 사용되는 것과 같은 용어 "컴퓨터-판독가능 매체"는 실행을 위해 프로세서(1110)에 명령을 제공하는데 관여하는 임의의 미디어를 나타낸다. 그러한 매체는, 제한적인 것은 아니지만, 비-휘발성 미디어, 휘발성 미디어, 및 송신 미디어를 포함하는 많은 형태를 취할 수 있다. 비-휘발성 미디어는 일예로 광디스크나 또는 자기디스크를 포함한다. 휘발성 미디어는 메모리(1130)와 같은 다이내믹 메모리를 포함한다. 송신 미디어는 시스템 버스(1160)를 포함하는 배선을 포함하여, 동축케이블, 구리선, 및 광섬유를 포함한다. 송신 미디어는 전파 및 적외선 데이터 통신 동안에 생성되는 것과 같은 음향파나 광파의 형태를 또한 취할 수 있다.
컴퓨터 판독가능 미디어의 일반적인 형태는, 일예로 플로피 디스크, 플렉시블 디스크(flexible disk), 하드디스크, 자기 테이프, 임의의 다른 자기 매체, CD-ROM, 임의의 다른 광매체, 천공 카드(punch card), 종이 테이프, 홀(hole)의 패턴을 갖는 임의의 다른 물리적인 매체, RAM, PROM, 및 EPROM, FLASH-EPROM, 임의의다른 메모리칩이나 카트리지, 이후에 설명되는 바와 같은 반송파, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다. 시스템 버스(1160)를 통해 시스템(1105)에/으로부터 디지털 데이터와 가능한 한 프로그램 코드를 전달하는 네트워크 신호는 정보를 운반하는 반송파의 예시적인 형태이다. 본 발명에 따라, 시스템(1105)에 의해 수신되는 프로그램 코드는 수신되었을 때 프로세서(1110)에 의해 실행될 수 있고, 및/또는 메모리(1130)에 저장될 수 있거나 또는 나중의 실행을 위해 다른 비-휘발성 저장 매체에 저장될 수 있다.
다양한 변경과 변화가 본 발명의 사상과 범주를 벗어나지 않으면서 본 발명에 따른 방법과 시스템에서 이루어질 수 있다는 것이 당업자들에게 명확해질 것이다. 본 발명의 진정한 범주는 다음의 청구항에서 정의된다.

Claims (29)

  1. 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법에 있어서,
    (a) 제 1 프레임의 2-차원적인 현재 블록(current block)을 선택하는 단계로서, 상기 현재 블록은 N×M 픽셀 정보 어레이를 포함하고, N과 M은 "1" 보다 큰 양의 정수인 선택 단계(302)와,
    (b) 상기 현재 블록과 사전 결정된 탐색 범위(predetermined search range)에 기초하여 제 2 프레임의 2-차원적인 탐색 영역을 결정하는 결정 단계(304)와,
    (c) 상기 현재 블록과 사전 결정된 차이 기준에 기초하여, 각각의 픽셀 정보 스트립(strip)에서 적어도 하나의 후보 블록(candidate block)을 선택함으로써 제 1 후보 블록 세트를 결정하는 결정 단계로서, 상기 후보 블록은 N×M 픽셀 정보 어레이를 포함하는 결정 단계(308 내지 318)와,
    (d) 상기 현재 블록과 상기 사전 결정된 차이 기준(predetermined difference criterion)에 기초하여, 적어도 하나의 제 2 탐색 영역 각각에서 적어도 하나의 후보 블록을 선택함으로써 제 2 후보 블록 세트를 결정하는 단계로서, 각각의 후보 블록은 N×M 픽셀 정보 어레이를 포함하고, 적어도 하나의 상기 제 2 탐색 영역 각각은 상기 제 1 후보 블록 세트에 기초하는 결정 단계(322)와,
    (e) 상기 사전 결정된 차이 기준에 기초하여 상기 제 2 후보 블록 세트로부터 기준 블록을 획득하는 획득 단계(330 내지 338)와,
    (f) 상기 현재 블록과 상기 기준 블록 사이의 거리를 나타내는 움직임 벡터를 결정하는 결정 단계(350)를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  2. 제 1항에 있어서, 제 1 후보 블록 세트를 결정하는 상기 결정 단계는, 각 스트립에 대한 적어도 하나의 후보 블록을 결정하는 단계로서, 후보 블록은 상기 스트립의 한 가장자리를 형성하는 픽셀 요소로 시작하는 상기 N×M 픽셀 정보 어레이를 포함하는 결정 단계(308)와,
    상기 현재 블록과 적어도 하나의 상기 후보 블록 사이의 차이를 계산하는 계산 단계(312)와,
    상기 현재 블록과 최소 차이를 갖는, 각 스트립에 대한 하나의 후보 블록을 결정하는 결정 단계(312)를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  3. 제 1항에 있어서, 제 2 후보 블록 세트를 결정하는 상기 결정 단계는, 적어도 하나의 제 2 탐색 영역을 결정하는 단계로서, 각각의 제 2 탐색 영역은 상기 제 1 후보 블록 세트와 사전 결정된 오프셋 값 중 하나에 기초하는 결정 단계(332)와,
    적어도 하나의 상기 제 2 탐색 영역 내에서 적어도 하나의 기준 블록을 선택하는 단계로서, 상기 기준 블록은 N×M 픽셀 정보 어레이를 포함하는 선택 단계(332)와,
    상기 현재 블록과 적어도 하나의 상기 기준 블록 사이의 차이를 결정하는 결정 단계(332)와,
    상기 현재 블록과 최소 차이를 갖는, 적어도 하나의 상기 제 2 탐색 영역 각각에 대한 하나의 후보 블록을 결정하는 결정 단계(332)를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  4. 제 3항에 있어서, 상기 사전 결정된 오프셋 값은 상기 사전 결정된 탐색 범위에 기초하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  5. 제 1항에 있어서, 기준 블록을 획득하는 상기 획득 단계는, 상기 현재 블록과 상기 최소 차이를 갖는, 상기 제 2 후보 블록 세트 내에서 상기 대표 블록을 결정하는 결정 단계를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  6. 제 1항에 있어서, (g) 상기 현재 블록을 나타내는 인테그럴 프로젝션 어레이(integral projection array)를 획득하는 획득 단계를 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  7. 제 6항에 있어서, 제 1 후보 블록 세트를 결정하는 상기 결정 단계는, 각각의 스트립에 대한 적어도 하나의 기준 블록을 결정하는 단계로서, 기준 블록은 상기 스트립의 한 가장자리를 형성하는 상기 픽셀 요소로 시작하는 상기 N×M 픽셀 정보 어레이로 형성되는 결정 단계와,
    적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 단계로서, 각각의 어레이는 적어도 하나 이상의 상기 기준 블록들 중에서 하나를 나타내는 획득 단계와,
    상기 현재 블록을 나타내는 상기 인테그럴 프로젝션 어레이와 상기 기준 블록을 나타내는 적어도 하나의 상기 인테그럴 프로젝션 어레이에 기초하여, 상기 현재 블록과 상기 스트립 내의 적어도 하나의 기준 블록 사이의 차이를 결정하는 결정 단계와,
    상기 현재 블록과 최소 차이를 갖는, 각각의 스트립에 대한 하나의 후보 블록을 결정하는 결정 단계를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  8. 제 6항에 있어서, 제 2 후보 블록 세트를 결정하는 상기 결정 단계는, 적어도 하나의 제 2 탐색 영역을 결정하는 단계로서, 각각의 제 2 탐색 영역은 상기 제 1 후보 블록 세트와 사전 결정된 오프셋 값 중 하나에 기초하는 결정 단계와,
    적어도 하나의 상기 제 2 탐색 영역 내에서 적어도 하나의 상기 기준 블록을 결정하는 단계로서, 상기 기준 블록은 N×M 픽셀 정보 어레이를 포함하는 결정 단계와,
    적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 단계로서, 각각의 어레이는 적어도 하나 이상의 기준 블록들 중 하나를 나타내는 획득 단계와,
    상기 현재 블록을 나타내는 상기 인테그럴 프로젝션 어레이와 적어도 하나의 상기 기준 블록을 나타내는 적어도 하나의 상기 인테그럴 프로젝션 어레이에 기초하여, 상기 현재 블록과 적어도 하나의 상기 기준 블록 사이의 차이를 결정하는 결정 단계와,
    상기 현재 블록과 최소 차이를 갖는, 적어도 하나의 상기 제 2 탐색 영역 각각에 대한 하나의 후보 블록을 결정하는 결정 단계를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  9. 제 8항에 있어서, 상기 사전 결정된 오프셋 값은 상기 사전 결정된 탐색 범위에 기초하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  10. 제 6항에 있어서, 하나의 대표 블록을 획득하는 상기 획득 단계는, 상기 현재 블록과 상기 최소 차이를 갖는, 상기 제 2 후보 블록 세트에서 적어도 하나의 상기 대표 블록을 결정하는 결정 단계를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  11. 제 7항에 있어서, 기준 블록을 나타내는 인테그럴 프로젝션 어레이를 획득하는 상기 획득 단계는, (a) 상기 기준 블록으로부터 제 1 거리만큼 떨어져 위치한제 1 블록을 나타내는 제 1 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    (b) 상기 기준 블록으로부터 제 2 거리만큼 떨어져 위치한 제 2 블록을 나타내는 제 2 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    (c) 상기 제 1 및 제 2 인테그럴 프로젝션 어레이와 상기 제 1 및 제 2 거리에 기초하여, 상기 기준 블록을 나타내는 인테그럴 프로젝션 어레이를 획득하는 획득 단계를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  12. 제 8항에 있어서, 적어도 하나의 상기 기준 블록을 나타내는 적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 상기 획득 단계는, (a) 상기 기준 블록으로부터 제 1 거리만큼 떨어져 위치한 제 1 블록을 나타내는 제 1 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    (b) 상기 기준 블록으로부터 제 2 거리만큼 떨어져 위치한 제 2 블록을 나타내는 제 2 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    (c) 상기 기준 블록으로부터 제 3 거리만큼 떨어져 위치한 제 3 블록을 나타내는 제 3 인테그럴 프로젝션 어레이를 획득하기 위한 획득 단계와,
    (d) 상기 기준 블록으로부터 제 4 거리만큼 떨어져 위치한 제 4 블록을 나타내는 제 4 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    (e) 상기 제 1, 제 2, 제 3, 및 제 4 인테그럴 프로젝션 어레이와 상기 제 1, 제 2, 제 3, 및 제 4 거리에 기초하여 상기 기준 블록을 나타내는 인테그럴 프로젝션 어레이를 획득하는 획득 단계를 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 방법.
  13. 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템에 있어서,
    (a) 제 1 프레임의 2-차원적인 현재 블록을 선택하는 수단으로서, 상기 현재 블록은 N×M의 픽셀 정보 어레이를 포함하고, N과 M은 "1" 보다 더 큰 양의 정수인 선택 수단과,
    (b) 상기 현재 블록과 사전 결정된 탐색 범위에 기초하여 제 2 프레임의 2-차원적인 탐색 영역을 결정하는 결정 수단과,
    (c) 상기 현재 블록과 사전 결정된 차이 기준에 기초하여, 각각의 픽셀 정보 스트립에서 적어도 하나의 후보 블록을 선택함으로써 제 1 후보 블록 세트를 결정하는 수단으로서, 각각의 후보 블록은 N×M 픽셀 정보 어레이를 포함하는 결정 수단과,
    (d) 상기 현재 블록과 상기 사전 결정된 차이 기준에 기초하여, 적어도 하나의 제 2 탐색 영역 각각에서 하나의 후보 블록을 선택함으로써 제 2 후보 블록 세트를 결정하는 수단으로서, 각각의 후보 블록은 N×M 픽셀 정보 어레이를 포함하고, 적어도 하나의 상기 제 2 탐색 영역은 상기 제 1 후보 블록 세트에 기초하는 결정 수단과,
    (e) 상기 사전 결정된 차이 기준에 기초하여 상기 제 2 후보 블록 세트로부터 기준 블록을 획득하는 획득 수단과,
    (f) 상기 현재 블록과 상기 기준 블록 사이의 거리를 나타내는 움직임 벡터를 결정하는 결정 수단을 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  14. 제 13항에 있어서, 제 1 후보 블록 세트를 결정하는 상기 결정 수단은, 각각의 스트립에 대한 적어도 하나의 후보 블록을 결정하는 수단으로서, 상기 후보 블록은 상기 스트립의 한 가장자리를 형성하는 상기 픽셀 요소로 시작하는 N×M 픽셀 정보 어레이를 포함하는 결정 수단과,
    상기 현재 블록과 상기 스트립 내의 적어도 하나의 상기 기준 블록 사이의 차이를 결정하는 결정 수단과,
    상기 현재 블록과 최소 차이를 갖는, 각 스트립에 대한 하나의 후보 블록을 결정하는 결정 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  15. 제 13항에 있어서, 제 2 후보 블록 세트를 결정하는 상기 결정 수단은, 상기 제 1 후보 블록 세트와 사전 결정된 오프셋 값 중 하나에 기초하여, 적어도 하나의 제 2 탐색 영역을 결정하는 결정 수단과,
    적어도 하나의 상기 제 2 탐색 영역 내에서 적어도 하나의 기준 블록을 선택하는 수단으로서, 기준 블록은 N×M 픽셀 정보 어레이를 포함하는 선택 수단과,
    상기 현재 블록과 적어도 하나의 상기 기준 블록 사이의 차이를 결정하는 결정 수단과,
    상기 현재 블록과 최소 차이를 갖는, 적어도 하나의 상기 제 2 탐색 영역 각각에 대한 하나의 후보 블록을 결정하는 결정 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  16. 제 15항에 있어서, 상기 사전 결정된 오프셋 값은 상기 사전 결정된 탐색 범위에 기초하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  17. 제 16항에 있어서, 기준 블록을 획득하는 상기 획득 수단은, 상기 현재 블록과 상기 최소 차이를 갖는, 상기 제 2 후보 블록 세트 내에서 하나의 기준 블록을 결정하는 결정 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  18. 제 13항에 있어서, (g) 상기 현재 블록을 나타내는 인테그럴 프로젝션 어레이를 획득하는 획득 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  19. 제 18항에 있어서, 제 1 후보 블록 세트를 결정하는 상기 결정 수단은, 각각의 스트립에 대한 적어도 하나의 기준 블록을 결정하는 수단으로서, 기준 블록은 상기 스트립 상단 행을 형성하는 상기 픽셀 요소로 시작하는 상기 N×M 픽셀 정보 어레이로 형성되는 결정 수단과,
    적어도 하나의 상기 기준 블록을 나타내는 적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 현재 블록을 나타내는 상기 인테그럴 프로젝션 어레이와 상기 기준 블록을 나타내는 적어도 하나의 상기 인테그럴 프로젝션 어레이에 기초하여, 상기 현재 블록과 상기 스트립 내의 적어도 하나의 기준 블록 사이의 차이를 결정하는 결정 수단과,
    상기 현재 블록과 최소 차이를 갖는, 각각의 스트립에 대한 하나의 후보 블록을 결정하는 결정 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  20. 제 18항에 있어서, 제 2 후보 블록 세트를 결정하는 상기 결정 수단은, 적어도 하나의 제 2 탐색 영역을 결정하는 수단으로서, 각각의 제 2 탐색 영역은 상기 제 1 후보 블록 세트와 사전 결정된 오프셋 값 중 하나에 기초하는 결정 수단과,
    적어도 하나의 상기 제 2 탐색 영역 내에서 적어도 하나의 상기 기준 블록을 결정하는 수단으로서, 기준 블록은 N×M 픽셀 정보 어레이를 포함하는 결정 수단과,
    적어도 하나의 상기 기준 블록을 나타내는 적어도 하나의 인테그럴 프로젝션어레이를 획득하는 획득 수단과,
    상기 현재 블록을 나타내는 상기 인테그럴 프로젝션 어레이와 상기 기준 블록을 나타내는 적어도 하나의 상기 인테그럴 프로젝션 어레이에 기초하여, 상기 현재 블록과 적어도 하나의 상기 기준 블록 사이의 차이를 결정하는 결정 수단과,
    상기 현재 블록과 최소 차이를 갖는, 적어도 하나의 상기 제 2 탐색 영역 각각에 대한 하나의 후보 블록을 결정하는 결정 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  21. 제 20항에 있어서, 상기 사전 결정된 오프셋 값은 상기 사전 결정된 탐색 범위에 기초하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  22. 제 18항에 있어서, 기준 블록을 획득하는 상기 획득 수단은, 상기 현재 블록과 상기 최소 차이를 갖는, 상기 제 2 후보 블록 세트에서 하나의 기준 블록을 결정하는 결정 수단을 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  23. 제 19항에 있어서, 제 1 후보 블록 세트를 결정하는 상기 결정 수단은, 상기 기준 블록으로부터 제 1 거리만큼 떨어져 위치한 제 1 블록을 나타내는 제 1 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 기준 블록으로부터 제 2 거리만큼 떨어져 위치한 제 2 블록을 나타내는 제 2 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 제 1 및 제 2 인테그럴 프로젝션 어레이와 상기 제 1 및 제 2 거리에 기초하여, 상기 기준 블록을 나타내는 인테그럴 프로젝션 어레이를 획득하는 획득 수단을 더 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  24. 제 19항에 있어서, 제 2 후보 블록 세트를 결정하는 상기 결정 수단은, 상기 기준 블록으로부터 제 1 거리만큼 떨어져 위치한 제 1 블록을 나타내는 제 1 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 기준 블록으로부터 제 2 거리만큼 떨어져 위치한 제 2 블록을 나타내는 제 2 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 기준 블록으로부터 제 3 거리만큼 떨어져 위치한 제 3 블록을 나타내는 제 3 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 기준 블록으로부터 제 4 거리만큼 떨어져 위치한 제 4 블록을 나타내는 제 4 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 제 1, 제 2, 제 3, 및 제 4 인테그럴 프로젝션 어레이와 상기 제 1, 제 2, 제 3, 및 제 4 거리에 기초하여 상기 기준 블록을 나타내는 인테그럴 프로젝션 어레이를 획득하는 획득 수단을 포함하는, 비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위한 움직임 추정 시스템.
  25. 컴퓨터 프로그램 제품에 있어서,
    비디오 이미지 데이터의 두 프레임 사이의 움직임 벡터를 획득하기 위해 내부에 구현된 컴퓨터-판독가능 코드를 구비하는 컴퓨터-사용가능 매체를 포함하는데, 상기 컴퓨터-사용가능 매체는,
    제 1 프레임의 2-차원적인 현재 블록을 선택하기 위해 구성된 구성성분으로서, 상기 현재 블록은 N×M 픽셀 정보 어레이를 포함하고, N과 M은 "1" 보다 더 큰 양의 정수인 구성성분과,
    상기 현재 블록과 사전 결정된 탐색 범위에 기초하여 제 2 프레임의 2-차원적인 탐색 영역을 결정하기 위해 구성된 구성성분과,
    상기 현재 블록과 사전 결정된 차이 기준에 기초하여 각각의 픽셀 정보 스트립에서 적어도 하나의 후보 블록을 선택함으로써, 제 1 후보 블록 세트를 결정하기 위해 구성된 구성성분으로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하는 구성성분과,
    상기 현재 블록과 상기 사전 결정된 차이 기준에 기초하여 적어도 하나의 제 2 탐색 영역 각각에서 적어도 하나의 후보 블록을 선택함으로써, 제 2 후보 블록 세트를 결정하기 위해 구성된 구성성분으로서, 각각의 후보 블록은 N×M의 픽셀 정보 어레이를 포함하고, 적어도 하나의 상기 제 2 탐색 영역 각각은 상기 제 1 후보 블록 세트에 기초하는 구성성분과,
    상기 사전 결정된 차이 기준에 기초하여, 상기 제 2 후보 블록 세트로부터기준 블록을 획득하기 위해 구성된 구성성분과,
    상기 현재 블록과 상기 기준 블록 사이의 거리를 나타내는 움직임 벡터를 결정하기 위해 구성된 구성성분을 포함하는, 컴퓨터 프로그램 제품.
  26. 디지털 비디오 데이터의 한 프레임을 제 1 포맷에서 제 2 포맷으로 변환하기 위한 방법에 있어서,
    제 1 프레임의 픽셀 정보를 제 1 포맷으로 나타내는 디지털 계수 정보를 획득하는 획득 단계와,
    상기 디지털 계수 정보에 기초하여, 제 2 포맷의 제 1 프레임과 상기 제 2 포맷의 제 두 프레임 사이의 차이를 나타내는 움직임 벡터를 결정하는 단계로서, 상기 제 2 포맷의 상기 제 1 프레임은 상기 제 1 포맷의 상기 제 1 프레임에 대응하는 결정 단계를 포함하는, 디지털 비디오 데이터의 한 프레임을 제 1 포맷에서 제 2 포맷으로 변환하기 위한 방법.
  27. 제 26항에 있어서, 움직임 벡터를 결정하는 상기 결정 단계는, 1-차원적인 역 이산 코사인 변환(a one-dimensional inverse discrete cosine transform)을 사용하여, 상기 현재 블록에 기초한 적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    1-차원적인 역 이산 코사인 변환을 사용하여, 상기 제 1 후보 블록 세트에 기초한 적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 획득 단계와,
    상기 인테그럴 프로젝션과 사전 결정된 차이 기준을 사용하여, 상기 현재 블록과 상기 제 1 후보 블록 세트 사이의 차이 값을 계산하는 계산 단계를 포함하는, 디지털 비디오 데이터의 한 프레임을 제 1 포맷에서 제 2 포맷으로 변환하기 위한 방법.
  28. 디지털 비디오 데이터의 한 프레임을 제 1 포맷에서 제 2 포맷으로 변환하는 시스템에 있어서,
    제 1 프레임의 픽셀 정보를 제 1 포맷으로 나타내는 디지털 계수 정보를 획득하는 획득 수단과,
    상기 디지털 계수 정보에 기초하여, 제 2 포맷의 제 1 프레임과 상기 제 2 포맷의 제 두 프레임 사이의 차이를 나타내는 움직임 벡터를 결정하는 수단으로서, 상기 제 2 포맷의 상기 제 1 프레임은 상기 제 1 포맷의 상기 제 1 프레임에 대응하는 결정 수단을 포함하는, 디지털 비디오 데이터의 프레임을 제 1 포맷에서 제 2 포맷으로 변환하는 시스템.
  29. 제 28항에 있어서, 움직임 벡터를 결정하는 상기 결정 수단은, 1-차원적인 역 이산 코사인 변환을 사용하여, 상기 현재 블록에 기초한 적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    1-차원적인 역 이산 코사인 변환을 사용하여, 상기 제 1 후보 블록 세트에 기초한 적어도 하나의 인테그럴 프로젝션 어레이를 획득하는 획득 수단과,
    상기 인테그럴 프로젝션과 사전 결정된 차이 기준을 사용하여, 상기 현재 블록과 상기 제 1 후보 블록 세트 사이의 차이 값을 계산하는 계산 수단을 포함하는, 디지털 비디오 데이터의 프레임을 제 1 포맷에서 제 2 포맷으로 변환하는 시스템.
KR1020007012918A 1998-05-20 1999-05-19 움직임 벡터를 획득하기 위한 방법 및 움직임 추정 시스템과, 컴퓨터-판독가능 매체와, 디지털 비디오 데이터 프레임을 변환하기 위한 방법 및 시스템 KR100648596B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/081,279 US6128047A (en) 1998-05-20 1998-05-20 Motion estimation process and system using sparse search block-matching and integral projection
US09/081,279 1998-05-20

Publications (2)

Publication Number Publication Date
KR20010071282A true KR20010071282A (ko) 2001-07-28
KR100648596B1 KR100648596B1 (ko) 2006-11-23

Family

ID=22163187

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007012918A KR100648596B1 (ko) 1998-05-20 1999-05-19 움직임 벡터를 획득하기 위한 방법 및 움직임 추정 시스템과, 컴퓨터-판독가능 매체와, 디지털 비디오 데이터 프레임을 변환하기 위한 방법 및 시스템

Country Status (6)

Country Link
US (2) US6128047A (ko)
EP (1) EP1078511A4 (ko)
JP (2) JP4002396B2 (ko)
KR (1) KR100648596B1 (ko)
AU (1) AU4001899A (ko)
WO (1) WO1999060779A1 (ko)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4014263B2 (ja) * 1997-10-01 2007-11-28 松下電器産業株式会社 映像信号変換装置及び映像信号変換方法
JP4004653B2 (ja) * 1998-08-03 2007-11-07 カスタム・テクノロジー株式会社 動きベクトル検出方法および装置、記録媒体
US6229570B1 (en) * 1998-09-25 2001-05-08 Lucent Technologies Inc. Motion compensation image interpolation—frame rate conversion for HDTV
US6411652B1 (en) * 1998-10-23 2002-06-25 International Business Machines Corp. Motion estimation
US6735249B1 (en) 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
US6496538B1 (en) * 1999-12-31 2002-12-17 Intel Corporation Method and apparatus for motion estimation for digital video encoding
US6711211B1 (en) 2000-05-08 2004-03-23 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
US6687295B1 (en) * 2000-07-27 2004-02-03 Ati International Method and apparatus for motion estimation for encoding sequential frames
KR100828378B1 (ko) * 2000-08-11 2008-05-08 노키아 코포레이션 통신 시스템에서의 비디오 프레임 전송 방법 및 장치
JP4652536B2 (ja) * 2000-08-21 2011-03-16 三菱電機株式会社 動き情報検知装置及び動き情報検知方法及び動き情報検知プログラムを記録した記録媒体
US6796733B2 (en) 2000-10-31 2004-09-28 International Imaging Materials Inc. Thermal transfer ribbon with frosting ink layer
US7027397B1 (en) * 2001-02-15 2006-04-11 Cisco Technology, Inc. Method and apparatus for accumulating and distributing traffic and flow control information in a packet switching system
US20050207663A1 (en) * 2001-07-31 2005-09-22 Weimin Zeng Searching method and system for best matching motion vector
KR100431075B1 (ko) * 2001-08-23 2004-05-10 한국과학기술원 동영상 부호화기를 위한 고속 블록 정합 움직임 추정방법
ATE404019T1 (de) * 2001-09-12 2008-08-15 Nxp Bv Bewegungsschätzung und/oder kompensation
KR100446083B1 (ko) * 2002-01-02 2004-08-30 삼성전자주식회사 움직임 추정 및 모드 결정 장치 및 방법
US7742525B1 (en) * 2002-07-14 2010-06-22 Apple Inc. Adaptive motion estimation
KR20040049214A (ko) * 2002-12-05 2004-06-11 삼성전자주식회사 고속 모션벡터 추정장치 및 방법
EP1480170A1 (en) * 2003-05-20 2004-11-24 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for processing images
US7336707B2 (en) 2003-06-06 2008-02-26 Samsung Electronics Co., Ltd. Method and apparatus for detecting improper area for motion compensation in video signal
US7346226B2 (en) 2003-12-16 2008-03-18 Genesis Microchip Inc. Method and apparatus for MPEG artifacts reduction
JP2005184233A (ja) * 2003-12-17 2005-07-07 Sony Corp データ処理装置およびその方法と符号化装置
US7480334B2 (en) 2003-12-23 2009-01-20 Genesis Microchip Inc. Temporal motion vector filtering
US7457438B2 (en) 2003-12-23 2008-11-25 Genesis Microchip Inc. Robust camera pan vector estimation using iterative center of mass
CN100405818C (zh) * 2003-12-23 2008-07-23 创世纪微芯片公司 在数字视频序列中执行时间运动矢量滤波的方法
US7499494B2 (en) 2003-12-23 2009-03-03 Genesis Microchip Inc. Vector selection decision for pixel interpolation
US7346109B2 (en) 2003-12-23 2008-03-18 Genesis Microchip Inc. Motion vector computation for video sequences
US7751482B1 (en) 2004-02-27 2010-07-06 Vbrick Systems, Inc. Phase correlation based motion estimation in hybrid video compression
US8000392B1 (en) 2004-02-27 2011-08-16 Vbrick Systems, Inc. Phase correlation based motion estimation in hybrid video compression
US20050232355A1 (en) * 2004-04-15 2005-10-20 Srinivas Cheedela Video decoder for supporting both single and four motion vector macroblocks
FR2871018A1 (fr) * 2004-05-25 2005-12-02 St Microelectronics Sa Procede et dispositif pour les systemes d'interpolation d'images par estimation et compensation de mouvement
CN1965583A (zh) * 2004-06-04 2007-05-16 皇家飞利浦电子股份有限公司 搜索全局运动矢量的方法
US8111752B2 (en) 2004-06-27 2012-02-07 Apple Inc. Encoding mode pruning during video encoding
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
US7792188B2 (en) 2004-06-27 2010-09-07 Apple Inc. Selecting encoding types and predictive modes for encoding video data
US7496736B2 (en) * 2004-08-27 2009-02-24 Siamack Haghighi Method of efficient digital processing of multi-dimensional data
KR100694283B1 (ko) 2004-11-05 2007-03-14 텔미정보통신 주식회사 이미지 프로세싱을 이용한 pc 기반의 영상 인식 방법
US7755667B2 (en) * 2005-05-17 2010-07-13 Eastman Kodak Company Image sequence stabilization method and camera having dual path image sequence stabilization
US7860165B2 (en) * 2005-05-20 2010-12-28 Microsoft Corporation Framework for fine-granular computational-complexity scalable motion estimation
US7580560B2 (en) * 2005-07-18 2009-08-25 Mitutoyo Corporation System and method for fast template matching by adaptive template decomposition
TWI280803B (en) * 2005-07-20 2007-05-01 Novatek Microelectronics Corp Method and apparatus for motion estimation
US7899114B2 (en) * 2005-11-21 2011-03-01 Physical Optics Corporation System and method for maximizing video RF wireless transmission performance
US8120658B2 (en) * 2006-01-19 2012-02-21 Qualcomm Incorporated Hand jitter reduction system for cameras
US7970239B2 (en) * 2006-01-19 2011-06-28 Qualcomm Incorporated Hand jitter reduction compensating for rotational motion
US8019179B2 (en) * 2006-01-19 2011-09-13 Qualcomm Incorporated Hand jitter reduction for compensating for linear displacement
US20070248330A1 (en) * 2006-04-06 2007-10-25 Pillman Bruce H Varying camera self-determination based on subject motion
US20070237514A1 (en) * 2006-04-06 2007-10-11 Eastman Kodak Company Varying camera self-determination based on subject motion
US7903168B2 (en) * 2006-04-06 2011-03-08 Eastman Kodak Company Camera and method with additional evaluation image capture based on scene brightness changes
US20080018788A1 (en) * 2006-07-20 2008-01-24 Samsung Electronics Co., Ltd. Methods and systems of deinterlacing using super resolution technology
US8213509B2 (en) * 2006-10-06 2012-07-03 Calos Fund Limited Liability Company Video coding on parallel processing systems
US8098898B2 (en) * 2006-10-27 2012-01-17 Panasonic Corporation Motion detection device, MOS (metal-oxide semiconductor) integrated circuit, and video system
US8090024B2 (en) * 2007-06-25 2012-01-03 Sigma Designs, Inc. Methods for processing two data frames with scalable data utilization
JP2009025195A (ja) 2007-07-20 2009-02-05 Denso Corp 到来波数推定方法、レーダ装置
KR101946376B1 (ko) 2007-10-16 2019-02-11 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR101461649B1 (ko) * 2008-02-20 2014-11-13 톰슨 라이센싱 두 비디오 프레임 간 모션 추정방법
CN101639940B (zh) * 2008-08-01 2012-04-25 北京大学 一种基于视频内容的提取视频注意窗序列的方法及系统
US20110002386A1 (en) * 2009-07-06 2011-01-06 Mediatek Singapore Pte. Ltd. Video encoder and method for performing intra-prediction and video data compression
WO2013005917A1 (ko) * 2011-07-06 2013-01-10 에스케이플래닛 주식회사 멀티캐스트 기반 컨텐츠 전송 시스템과 방법, 및 고속 움직임 추정을 위한 장치와 방법
KR101931653B1 (ko) 2011-07-06 2018-12-21 에스케이플래닛 주식회사 멀티캐스트 기반 컨텐츠 전송 시스템 및 방법
ES2706749T3 (es) * 2013-11-04 2019-04-01 Cyrill Gyger Método para procesar datos de imagen que representan un volumen tridimensional
EP3054685A1 (en) * 2015-02-04 2016-08-10 Thomson Licensing Hierarchical motion estimation and video segmentation in presence of more than one moving object in a block
CN105096321B (zh) * 2015-07-24 2018-05-18 上海小蚁科技有限公司 一种基于图像边缘的低复杂度视频移动侦测方法
US20170332094A1 (en) * 2016-05-16 2017-11-16 Google Inc. Super-wide area motion estimation for video coding

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69121626T2 (de) * 1990-04-26 1997-02-20 Canon Kk Einrichtung zur Fernsehsignalumwandlung
US5210605A (en) * 1991-06-11 1993-05-11 Trustees Of Princeton University Method and apparatus for determining motion vectors for image sequences
US5640208A (en) 1991-06-27 1997-06-17 Sony Corporation Video signal encoding in accordance with stored parameters
US5430886A (en) * 1992-06-15 1995-07-04 Furtek; Frederick C. Method and apparatus for motion estimation
US5710603A (en) * 1992-10-07 1998-01-20 Daewoo Electronics Co., Ltd. Method for detecting motion vectors
US5408274A (en) * 1993-03-11 1995-04-18 The Regents Of The University Of California Method and apparatus for compositing compressed video data
JP3277418B2 (ja) * 1993-09-09 2002-04-22 ソニー株式会社 動きベクトル検出装置および方法
EP0721284B1 (en) * 1995-01-09 2000-05-03 Daewoo Electronics Co., Ltd An image processing system using pixel-by-pixel motion estimation and frame decimation
JP2853616B2 (ja) * 1995-07-07 1999-02-03 日本電気株式会社 動き検出方式
GB2305798B (en) * 1995-09-28 1999-10-20 Sony Uk Ltd Spatial frequency-domain video signal processing
US5699129A (en) * 1995-10-17 1997-12-16 Zapex Technologies, Inc. Method and apparatus for motion vector determination range expansion
US5640209A (en) * 1996-03-14 1997-06-17 Electronics And Telecommunications Research Institute NTSC/PAL video signal conversion apparatus employing ITU-R BT.601 video signal
US5719642A (en) * 1996-05-07 1998-02-17 National Science Council Of R.O.C. Full-search block matching motion estimation processor
US5796434A (en) * 1996-06-07 1998-08-18 Lsi Logic Corporation System and method for performing motion estimation in the DCT domain with improved efficiency
US5721595A (en) * 1996-06-19 1998-02-24 United Microelectronics Corporation Motion estimation block matching process and apparatus for video image processing
US5652625A (en) * 1996-06-19 1997-07-29 United Microelectronics Corp. Multi-stage pipeline architecture for motion estimation block matching
US6144698A (en) * 1996-10-31 2000-11-07 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Digital video decoder and method of decoding a digital video signal
FR2757296B1 (fr) * 1996-12-13 2001-10-12 Sgs Thomson Microelectronics Procede et dispositif d'estimation de mouvement de portions d'images pour circuit de compression d'images mobiles
US5883823A (en) * 1997-01-15 1999-03-16 Sun Microsystems, Inc. System and method of a fast inverse discrete cosine transform and video compression/decompression systems employing the same
US5987180A (en) * 1997-09-26 1999-11-16 Sarnoff Corporation Multiple component compression encoder motion search method and apparatus
US6014181A (en) * 1997-10-13 2000-01-11 Sharp Laboratories Of America, Inc. Adaptive step-size motion estimation based on statistical sum of absolute differences
US6269174B1 (en) * 1997-10-28 2001-07-31 Ligos Corporation Apparatus and method for fast motion estimation
CN1166215C (zh) * 1998-02-13 2004-09-08 皇家菲利浦电子有限公司 视频编码方法和装置
US6058143A (en) * 1998-02-20 2000-05-02 Thomson Licensing S.A. Motion vector extrapolation for transcoding video sequences
US6434196B1 (en) * 1998-04-03 2002-08-13 Sarnoff Corporation Method and apparatus for encoding video information

Also Published As

Publication number Publication date
US6996176B1 (en) 2006-02-07
JP2007189683A (ja) 2007-07-26
EP1078511A1 (en) 2001-02-28
EP1078511A4 (en) 2008-09-10
WO1999060779A1 (en) 1999-11-25
AU4001899A (en) 1999-12-06
JP2002516531A (ja) 2002-06-04
US6128047A (en) 2000-10-03
KR100648596B1 (ko) 2006-11-23
JP4002396B2 (ja) 2007-10-31

Similar Documents

Publication Publication Date Title
KR100648596B1 (ko) 움직임 벡터를 획득하기 위한 방법 및 움직임 추정 시스템과, 컴퓨터-판독가능 매체와, 디지털 비디오 데이터 프레임을 변환하기 위한 방법 및 시스템
EP1086580B1 (en) Hierarchical motion estimation process and system using block-matching
US6671319B1 (en) Methods and apparatus for motion estimation using neighboring macroblocks
US6483876B1 (en) Methods and apparatus for reduction of prediction modes in motion estimation
US5760846A (en) Apparatus for estimating motion vectors for feature points of a video signal
KR950009699B1 (ko) 움직임벡터 검출방법 및 장치
EP0637894B1 (en) Apparatus and method for detecting motion vectors to half-pixel accuracy
US6690728B1 (en) Methods and apparatus for motion estimation in compressed domain
US20110064138A1 (en) Device and method for performing half pixel accuracy fast search in video coding
US6414997B1 (en) Hierarchical recursive motion estimator for video images encoder
KR100565066B1 (ko) 중첩된 블록 기반 움직임 추정에 의한 움직임 보상 보간방법 및 그를 적용한 프레임 레이트 변환 장치
US20050123039A1 (en) Motion estimation method for motion picture encoding and recording medium having program recorded thereon to implement the motion estimation method
EP1472881B1 (en) Unit for and method of estimating a current motion vector
KR0181029B1 (ko) 에지를 이용한 특징점 선정장치
EP0731612A1 (en) Apparatus for encoding a video signal using a search grids for motion estiamtion and compensation
KR0152014B1 (ko) 화상데이타압축에서의 움직임추정방법 및 그 장치
JPH02222389A (ja) 動画像符号化装置
EP0720381A1 (en) Method and apparatus for encoding a video signal using pixel-by-pixel motion prediction

Legal Events

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

Payment date: 20101028

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee