KR20000018487A - 매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치 - Google Patents

매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치 Download PDF

Info

Publication number
KR20000018487A
KR20000018487A KR1019980036090A KR19980036090A KR20000018487A KR 20000018487 A KR20000018487 A KR 20000018487A KR 1019980036090 A KR1019980036090 A KR 1019980036090A KR 19980036090 A KR19980036090 A KR 19980036090A KR 20000018487 A KR20000018487 A KR 20000018487A
Authority
KR
South Korea
Prior art keywords
search
macroblock
difference
macroblocks
buffer
Prior art date
Application number
KR1019980036090A
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 KR1019980036090A priority Critical patent/KR20000018487A/ko
Publication of KR20000018487A publication Critical patent/KR20000018487A/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
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 및 장치가 개시된다. 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법은, 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 방법에 있어서, (1) 전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 각 매크로블록과의 상이도를 동시에 계산하는 단계 및 (2) 상기 단계 (1)에서 계산된 상이도에 따라 각 매크로블록의 정합블록을 결정한 후 움직임 벡터를 구하는 단계를 포함하여, 복수의 매크로블록에 대해 동시에 움직임을 추정함으로써 성능 저하 및 메모리 대역폭의 증가없이 내부 버퍼의 크기를 줄일 수 있는 이점이 있다.

Description

매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 및 장치
본 발명은 동영상 압축장치에 사용되는 움직임 추정방법 및 장치에 관한 것으로, 특히 복수의 매크로블록에 대해 동시에 움직임을 추정하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 및 장치에 관한 것이다.
일반적으로 동영상을 압축하기 위해서는 동영상이 가지고 있는 중복성을 효율적으로 제거하여야 한다. 현재 사용되고 있는 대부분의 동영상 압축장치에서는 시간적인 중복성을 제거하기 위해서 움직임 추정 방법을 사용하고 있는데, 이것은 현재 프레임을 여러개의 작은 블록(이하, 매크로블록이라 함)으로 나눈 다음, 각각의 매크로블록에 대해 주어진 탐색영역 내에서 이전 프레임의 여러 블록(이하, 탐색영역 블록이라 함)과 비교하여 매크로블록과 닮지않은 정도(이하, 상이도라 함)를 계산한 후, 상이도가 가장 작은 블록(이하, 정합블록이라 함)을 찾아내어 매크로블록과 정합블록의 위치차이를 나타내는 움직임 벡터와, 매크로블록과 정합블록의 화소 차이만을 전송하는 방법이다.
한편, 블록 정합 움직임 추정방법은 단순하고 높은 효율을 가지고 있기 때문에 많은 영상 압축 표준에서 널리 사용되고 있다. 가장 높은 압축비는 전역 탐색 기법에 의해 달성될 수 있는데, 전역 탐색 기법은 탐색 영역내의 모든 가능한 후보들을 철저히 찾아낸다. 그러나 탐색 영역이 넓어지면 연산량이 증가하고 메모리 대역폭 및 내부 버퍼의 크기도 증가하게 되어 하드웨어로 구현하기가 어려워진다.
상기 문제들을 극복하기 위하여 연산량을 대폭적으로 감소시키는 많은 고속 탐색 기법이 제안되어 왔다. 그러나, 연산량의 증가는 고속 탐색 기법을 사용하여 어느 정도 해결이 가능하지만 메모리 대역폭 및 내부 버퍼 크기의 증가는 고속 탐색 기법을 사용하더라도 해결할 수 없으므로, 메모리 대역폭이 하드웨어로 구현하기 어려울 정도로 커지거나, 칩 면적의 대부분을 내부 버퍼가 차지하게 되는 문제점을 초래한다.
기존의 고속 탐색 기법 중에서 계층적 탐색 기법은 연산량 뿐만 아니라 메모리 대역폭 및 내부 버퍼의 크기가 비교적 작아서 하드웨어 구현에 많이 채용되고 있다. 그러나 계층적 탐색 기법은 탐색 영역의 크기가 증가함에 따라 국부 극소에 의한 성능 저하가 심하게 발생하는 단점을 가지고 있기 때문에, 성능 저하 및 메모리 대역폭의 증가없이 내부 버퍼의 크기를 줄이는 움직임 추정 방법이 절실히 요구되고 있다.
표 1은 탐색 범위가 ±8×±8에서 ±128×±128까지 변할 때, 전역 탐색 기법의 메모리 대역폭 및 내부 버퍼 크기, 프레임 메모리가 27MHz로 동작한다고 가정할 때의 메모리 버스폭을 나타낸 것이다.
탐색 범위 탐색영역을 내부 버퍼에 저장하지 않을 때 탐색영역을 내부 버퍼에 저장할 때
메모리 대역폭(bps) 메모리 버스폭(bit) 메모리 대역폭(bps) 메모리 버스폭(bit) 내부 버퍼 크기(Kbit)
±8×±8 4.15×108 16 2.49×108 10 16.4
±16×±16 8.29×108 31 3.32×108 13 28.7
±32×±32 2.16×109 80 4.98×108 19 65.5
±64×±64 6.80×109 252 8.29×108 31 188.4
±128×±128 2.41×1010 893 1.49×109 56 630.8
표 1에서 알 수 있듯이 탐색 영역을 내부 버퍼에 저장하지 않을 때는 탐색 범위가 ±64×±64를 넘으면서부터 내부 버퍼 크기가 급격하게 증가한다. 이렇듯 기존의 움직임 추정 방법에서는 메모리 대역폭과 내부 버퍼의 크기 중 어느 한쪽을 줄이면 다른 한쪽이 늘어나기 때문에 ±64×±64 이상의 탐색 범위에서는 하드웨어 구현이 곤란하다.
기존의 고속 탐색 기법은 연산량을 효과적으로 줄이는데는 성공하였지만, 메모리 대역폭은 크게 줄지 않는다. 표 2는 탐색 영역을 내부 버퍼에 저장하지 않을 경우, 탐색 범위가 ±64×±64와 ±128×±128일 때 전역 탐색 기법(FS; full search algorithm), 4:1 교번 부표본화 탐색 기법(4:1AS; 4:1 alternate subsampling search algorithm), 4:1 탐색 영역 부표본화 탐색 기법(4:1SS; 4:1 search window subsampling search algorithm), 1차원 전역 탐색 기법(1DFS; one-dimensional full search algorithm), 3단계 계층적 탐색 기법(3HBMA; three-stage hierarchical block-matching algorithm)의 연산량, 메모리 대역폭 및 내부 버퍼 크기를 나타낸 것이다.
그리고, 표 3은 탐색 영역을 내부 버퍼에 저장할 경우, 탐색 범위가 ±64×±64와 ±128×±128일 때 전역 탐색 기법(FS), 4:1 교번 부표본화 탐색 기법(4:1AS), 4:1 탐색 영역 부표본화 탐색 기법(4:1SS), 1차원 전역 탐색 기법(1DFS), 3단계 계층적 탐색 기법(3HBMA)의 연산량, 메모리 대역폭 및 내부 버퍼 크기를 나타낸 것이다.
표 2 및 표 3에서 알 수 있듯이 고속 탐색 기법이라 하더라도, 내부 버퍼를 사용하지 않을 때에는 메모리 대역폭이 매우 크고 내부 버퍼를 사용할 때에는 내부 버퍼의 크기가 매우 커서 하드웨어 구현이 곤란한 문제점이 있다.
움직임 추정 기법 FS 4:1AS 4:1SS 1DFS 3HBMA
탐색범위=±64×±64 연산량(ops) 5.10×1011 1.28×1011 1.28×1011 1.19×1010 3.49×109
메모리 대역폭(bps) 6.80×109 7.13×109 2.09×109 2.41×109 7.05×109
탐색범위=±128×±128 연산량(ops) 2.04×1012 5.10×1011 5.10×1011 2.38×1010 1.25×1010
메모리대역폭(bps) 2.41×1010 2.73×1010 7.13×109 4.40×109 2.43×1010
움직임 추정 기법 FS, 4:1AS, 1DFS, 3HBMA 4:1SS
탐색범위=±64×±64 메모리 대역폭(bps) 8.29×108 2.70×108
내부 버퍼 크기(Kbit) 188.4 50.2
탐색범위=±128×±128 메모리 대역폭(bps) 1.49×109 4.35×108
내부 버퍼 크기(Kbit) 630.8 160.8
본 발명이 이루고자하는 기술적 과제는, 복수의 매크로블록에 대해 동시에 움직임을 추정함으로써 성능 저하 및 메모리 대역폭의 증가없이 내부 버퍼의 크기를 줄일 수 있는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법을 제공하는 것이다.
본 발명이 이루고자하는 다른 기술적 과제는, 복수의 매크로블록에 대해 동시에 움직임을 추정함으로써 성능 저하 및 메모리 대역폭의 증가없이 내부 버퍼의 크기를 줄일 수 있는 매크로블록 파이프라인 기법을 이용한 움직임 추정 장치를 제공하는 것이다.
도 1은 탐색범위가 ±64×±64일 때 탐색영역이 겹치는 것을 나타낸 도면이다.
도 2는 탐색범위가 ±64×±64일 때 종래 움직임 추정 방법에서 사용되는 내부 버퍼의 크기를 도시한 도면이다.
도 3은 탐색범위가 ±64×±64일 때 본 발명에 의한 움직임 추정 방법에서 사용되는 내부 버퍼의 크기를 도시한 도면이다.
도 4는 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법이 적용되는 움직임 추정 장치의 블록도이다.
도 5는 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법의 흐름도를 도시한 도면이다.
도 6은 첫 16 탐색 위치 행의 처리 과정을 도시한 도면이다.
도 7은 기준블록버퍼 내에 있는 매크로블록이 바뀌는 과정을 도시한 도면이다.
도 8은 마지막 16 탐색 위치 행의 처리 과정을 도시한 도면이다.
도 9는 탐색영역버퍼에 저장된 데이터가 오른쪽 끝 쪽에 위치할 때의 동작을 도시한 도면이다.
도 10은 탐색영역버퍼에 저장된 데이터가 오른쪽 가장자리에서 왼쪽 가장자리로 바뀔 때의 동작을 도시한 도면이다.
도 11은 탐색영역버퍼에 저장된 데이터가 왼쪽 끝 쪽에 위치할 때의 동작을 도시한 도면이다.
<도면의 주요부분에 대한 부호의 설명>
50...공통 탐색 위치 행에 대한 해당 매크로블록들과의 상이도 계산 단계,
52...정합블록 결정 단계.
상기 과제를 이루기 위하여 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법은, 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 방법에 있어서, (1) 전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 각 매크로블록과의 상이도를 동시에 계산하는 단계; 및 (2) 상기 단계 (1)에서 계산된 상이도에 따라 각 매크로블록의 정합블록을 결정한 후 움직임 벡터를 구하는 단계를 포함하는 것을 특징으로 한다.
상기 단계 (1)은, (1-1) 소정수의 매크로블록들에 공통되는 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 매크로블록들과의 상이도를 동시에 계산하는 단계; (1-2) 다음 화소 위치의 공통 탐색 위치 행의 탐색영역블록과 해당 매크로블록들과의 상이도를 동시에 계산하는 단계; 및 (1-3) 마지막 매크로블록에 대한 상이도 계산이 완료되었는지를 판정하여, 완료되지 않은 경우 상기 단계 (1-2)로 진행하고, 완료된 경우 상기 단계 (2)로 진행하는 단계를 포함하는 것이 바람직하다.
또한, 상기 탐색 영역이 ±M×±M 화소이고, 상기 매크로블록의 크기가 N×N 화소라 할 때, 상기 단계 (1)은 2M개의 전체 탐색 위치 행에 대해 탐색 위치 행 별로 수행되고, 상기 단계 (1)에서 상기 공통 탐색 위치 행은 N×(2M+N) 화소로 이루어진 영역이며, 상기 상이도를 계산할 때, 기준블록버퍼에 2M/N개의 매크로블록에 해당하는 2M×N 화소를 저장하고, 추가 기준블록버퍼에 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 N2화소를 저장하며, 탐색영역버퍼에 공통 탐색 위치 행인 N×(2M+N) 화소를 저장하고, 추가탐색영역버퍼에 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 2M+N 화소를 저장하는 것이 바람직하다.
또한, 소정 매크로블록의 탐색 영역이 프레임 바깥으로 나가는 경우에는 상기 탐색 영역이 프레임 바깥으로 나가는 매크로블록에 대한 움직임 추정을 수행하지 않는 것이 바람직하다.
또한, 상기 단계 (1)에서 전체 탐색 영역에 대한 임의의 매크로블록의 상이도 계산은 2M개의 탐색 위치 행에 대한 상이도 계산이 수행될 때 완료되는 것이 바람직하다.
또한, 상기 단계 (1)에서 N개의 탐색 위치 행을 처리한 후 (N+1)번째 탐색 위치 행을 처리할 때, 상이도 계산이 완료된 매크로블록이 상기 기준블록버퍼에서 제거되고, 상기 추가 기준블록버퍼에 저장된, 다음 매크로블록이 상기 기준블록버퍼로 이동되어 상기 다음 매크로블록에 대한 상이도 계산이 시작되는 것이 바람직하다.
상기 다른 과제를 이루기 위하여 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 장치는, 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 장치에 있어서, 전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 탐색영역블록 및 상기 소정수의 각 매크로블록과의 상이도를 동시에 계산하는 상이도 계산부; 및 상기 상이도 계산부에서 계산된 상이도에 따라 각 매크로블록의 정합블록을 결정한 후 움직임 벡터를 구하는 정합블록 결정부를 포함하는 것을 특징으로 한다.
상기 상이도 계산부는, 상기 소정수의 매크로블록의 화소값을 저장하는 기준블록버퍼와 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 화소값을 저장하는 추가 기준블록버퍼와 상기 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 화소값을 저장하는 탐색영역버퍼와 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 화소값을 저장하는 추가 탐색영역버퍼를 구비하는 내부버퍼; 및 상기 기준블록버퍼에 저장된 상기 소정수의 매크로블록의 화소값과 상기 탐색영역버퍼에 저장된 공통 탐색 위치 행의 화소값을 비교하여 각 탐색 위치에서의 상이도를 계산하는 단위처리기를 포함하는 것이 바람직하다.
또한, 상기 탐색 영역이 ±M×±M 화소이고, 상기 매크로블록의 크기가 N×N 화소라 할 때, 상기 공통 탐색 위치 행은 N×(2M+N) 화소로 이루어진 영역이며, 상기 기준블록버퍼는 2M/N개의 매크로블록에 해당하는 2M×N 화소를 저장하고, 상기 추가 기준블록버퍼는 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 N2화소를 저장하며, 상기 탐색영역버퍼는 공통 탐색 위치 행인 N×(2M+N) 화소를 저장하고, 상기 추가탐색영역버퍼는 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 2M+N 화소를 저장하는 것이 바람직하다.
또한, 상기 단위처리기는 소정 매크로블록의 탐색 영역이 프레임 바깥으로 나가는 경우에는 상기 탐색 영역이 프레임 바깥으로 나가는 매크로블록에 대한 움직임 추정을 수행하지 않는 것이 바람직하다.
이하 첨부된 도면들을 참조하여 본 발명의 실시예에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 및 장치에 대해 상세히 설명하기로 한다.
대부분의 움직임 추정 방법에서는 매크로블록이 순차적으로 처리된다. 탐색 범위가 ±M×±M 화소이고, 매크로블록의 크기가 N×N 화소일 때, 현재 매크로블록의 움직임 추정을 수행하기 위해서는 현재 매크로블록과 이에 대응하는 탐색 영역인 (2M+N)×(2M+N) 화소가 내부 버퍼에 저장되어 있어야 한다.
또한 다음 매크로블록과 이에 대응하여 추가되는 탐색 영역인 N×(2M+N) 화소가 다음 매크로블록의 움직임 추정이 수행되기 이전에 내부 버퍼로 읽어들여져야 하기 때문에, 내부 버퍼에 저장되어야 하는 데이터의 양은 총 2{N2+(M+N)×(2M+N)} 화소가 된다. 도 2에 탐색범위가 ±64×±64일 때 종래 움직임 추정 방법에서 사용되는 내부 버퍼의 크기를 도시하였다.
그러나 한 프레임 내에서 서로 인접하는 매크로블록의 탐색 영역은 도 1에서처럼 대부분의 영역이 겹치기 때문에 이를 잘 이용하면 메모리 대역폭을 증가시키지 않고도 내부 버퍼의 크기를 감소시킬 수 있다. 본 발명에서는 2M/N개의 매크로블록에 대한 움직임 추정을 동시에 수행함으로써 내부 버퍼의 크기를 감소시키는 매크로블록 파이프라인 기법을 제안한다.
도 1은 탐색 영역이 ±64×±64일 때 인접하는 매크로블록의 탐색 영역을 나타낸 것이다. 도 1에 도시된 바와 같이 16화소씩 나눈 7번 행은 매크로블록 E의 탐색 영역부터 L의 탐색 영역까지 공통으로 속해있다. 따라서, 여러개의 매크로블록에 대해 한꺼번에 움직임 추정을 수행한다면 탐색 영역을 저장하는 내부 버퍼는 16 화소씩 나눈 한 행(=16×144 화소)만큼, 매크로블록을 저장하는 내부 버퍼는 매크로블록 8개(=8×16×16)만큼만 있으면 된다.
실제로 하드웨어 구현에 있어서는 16 화소씩 나눈 탐색 영역의 한 행을 내부 버퍼에서 읽어서 움직임 추정을 수행하는 동안에 다음 한 행의 데이터를 내부 버퍼에 써넣어야 하기 때문에, 도 3과 같이 탐색 영역을 저장하는 내부 버퍼는 16 화소씩 나눈 한 행과 한 화소 행(=16×144+144 화소)만큼, 매크로블록을 저장하는 내부 버퍼는 매크로블록 9개(=9×16×16 화소)만큼만 필요하다.
본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 및 장치에서는 2M/N개의 매크로블록의 움직임 추정을 동시에 수행한다.
2M/N개의 매크로블록에 대응하는 각각의 탐색 영역을 살펴보면, 도 1에 도시된 바와 같이 N×(2M+N) 화소로 이루어진 영역은 이들 탐색 영역 모두에 공통으로 속하게 되며, 이 공통 탐색 영역만 있으면 2M/N개의 매크로블록 각각에 대해서 2M개의 탐색 위치로 이루어지는 하나의 탐색 위치 행 만큼의 움직임 추정을 수행할 수 있다.
내부 버퍼는, 도 3에 도시된 바와 같이 기준블록버퍼에 저장되는 연속하는 2M/N개의 매크로블록에 해당하는 2M×N 화소와, 탐색영역버퍼에 저장되는 공통 탐색 영역인 N×(2M+N) 화소, 그리고 추가 기준블록버퍼에 저장되는 다음 매크로블록의 움직임 추정을 위해서 추가되는 매크로블록 N2화소 및 추가 탐색영역버퍼에 저장되는 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 2M+N 화소만을 저장하면 된다.
따라서, 도 2 및 도 3을 참조하면, 내부 버퍼의 크기는 2{N2+(M+N)×(2M+N)} 화소에서 (2N+1)×(2M+N) 화소로 감소하며, 연산량, 메모리 대역폭 및 성능을 그대로 유지하면서 내부 버퍼의 크기를 (2N+1)×(2M+N)/2{N2+(M+N)×(2M+N)}로 줄일 수 있다.
본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법에서는 탐색 위치 행 별로 움직임 추정이 수행된다. 즉, 탐색 범위 중에서 가장 좌측에 위치한 (-M,-M)~(-M,M-1)의 탐색 위치가 가장 먼저 처리되고, 다음에는 (-M+1,-M)~(-M+1,M-1), (-M+2,-M)~(-M+2,M-1)의 순서로 처리된다. 탐색 영역이 프레임 바깥으로 나가는 경우에는 움직임 추정을 수행하지 않으므로, 프레임의 가장자리에 위치한 매크로블록의 경우에도 별다른 지연 시간은 발생하지 않는다.
본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법은 탐색 위치 행 별로 움직임 추정을 수행할 수 있는 모든 움직임 추정 방법에 적용할 수 있으며, 전역 탐색 기법 뿐 아니라 표 4에서처럼 하드웨어 구현이 가능한 수준까지 내부 버퍼의 크기를 감소시키는데, 탐색 범위가 ±64×±64인 경우는 188.4 Kbit에서 1/5.0인 38.0Kbit로, 탐색 범위가 ±128±128인 경우는 630.8 Kbit에서 1/8.8인 71.8 Kbit로 감소시킨다.
전적으로 적용 가능 일부만 적용 가능 적용 불가능
- 전역 탐색 기법- 4:1 교번 부표본화 탐색 기법- 4:1 탐색 영역 부표본화 탐색 기법- 화소 차 분류 탐색 기법- 1비트 변환 탐색 기법 - 3단계 계층적 탐색 기법 (1단계에만 적용 가능) - 1차원 전역 탐색 기법- 3단계 탐색 기법
움직임 추정 방법 FS, 4:1AS, 3HBMA 4:1SS 1DFS
탐색범위= ±64×±64 기존 움직임 추정 방법 188.4 50.2 188.4
본 발명의 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 38.0 (1/5) 23.6 (1/2.1) N/A
탐색범위= ±128±128 기존 움직임 추정 방법 630.8 160.8 630.8
본 발명의 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 71.8 (1/8.8) 44.6 (1/3.6) N/A
도 4는 본 발명의 실시예에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법이 적용되는 움직임 추정 장치이다.
도 4에 도시된 움직임 추정 장치는, 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 장치에 있어서, 전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 각 매크로블록과의 상이도를 동시에 계산하는 상이도 계산부(40) 및 상이도 계산부(40)에서 계산된 상이도에 따라 각 매크로블록과 가장 유사한 정합블록을 결정한 후 움직임 벡터를 구하여 출력하는 정합블록 결정부(42)를 구비하고 있다.
또한, 상이도 계산부(40)는, 소정수의 매크로블록의 화소값을 저장하는 기준블록버퍼(442)와 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 화소값을 저장하는 추가 기준블록버퍼(440)와 소정수의 매크로블록에 공통인 공통 탐색 위치 행의 화소값을 저장하는 탐색영역버퍼(446) 및 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 화소값을 저장하는 추가 탐색영역버퍼(444)를 구비하는 내부버퍼 및 기준블록버퍼(442)에 저장된 소정수의 매크로블록의 화소값과 탐색영역버퍼(446)에 저장된 공통 탐색 위치 행의 화소값을 비교하여 각 탐색 위치에서의 상이도를 계산하는 단위처리기(46)를 포함하고 있다.
탐색 영역이 ±M×±M 화소이고, 매크로블록의 크기가 N×N 화소라 할 때, 공통 탐색 위치 행은 N×(2M+N) 화소로 이루어진 영역이며, 기준블록버퍼(442)는 2M/N개의 매크로블록에 해당하는 2M×N 화소를 저장하고, 추가 기준블록버퍼(440)는 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 N2화소를 저장하며, 탐색영역버퍼(446)는 공통 탐색 위치 행인 N×(2M+N) 화소를 저장하고, 추가탐색영역버퍼(444)는 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 2M+N 화소를 저장한다.
도 4에 도시된 움직임 추정 장치는 단위처리기(46)에서 기준블록버퍼(442)에 저장된 소정수의 매크로블록의 화소값과 탐색영역버퍼(446)에 저장된 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 화소값을 동시에 비교하여 각 탐색 위치에서의 상이도를 동시에 계산하며, 정합블록 결정부(42)는 단위처리기(46)에서 출력된 상이도에 따라 각 매크로블록과 가장 유사한 정합블록을 결정한 후 움직임 벡터를 구하여 출력한다.
한편, 본 발명의 실시예에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법을 도 5 내지 도 11을 참조하여 설명하기로 한다.
도 5에 도시된 본 발명의 실시예에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법은, 단계 50에서, 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 방법에 있어서, 전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 탐색영역버퍼(446)에 저장된 공통 탐색 위치 행의 탐색영역블록과 기준블록버퍼(442)에 저장된 소정수의 각 매크로블록과의 상이도를 동시에 계산한다. 그리고, 단계 52에서는 단계 50에서 계산된 상이도에 따라 각 매크로블록과 가장 유사한 정합블록을 결정한 후 움직임 벡터를 구한다.
한편, 단계 50은, 소정수의 매크로블록에 공통되는 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 매크로블록과의 상이도를 동시에 계산하는 단계(단계 500)와, 다음 화소 위치의 공통 탐색 위치 행의 탐색영역블록과 해당 매크로블록들과의 상이도를 동시에 계산하는 단계(단계 502) 및 마지막 매크로블록에 대한 상이도 계산이 완료되었는지를 판정하여, 완료되지 않은 경우 단계 502로 진행하고, 완료된 경우 단계 52로 진행하는 단계(단계 504)를 포함한다.
도 6 내지 도 11을 참조하여 상기한 움직임 추정 방법의 실시예를 상세히 설명하기로 한다.
도 6내지 도 8은 탐색 범위가 ±64×±64일 때의 본 발명의 실시예에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법을 매크로블록 L의 경우를 예로 들어 설명한 것이다.
도 6은 0번째~15번째의 첫 16 탐색 위치 행을 처리하는 과정을 설명한 것이다. 0번째의 탐색 위치 행을 처리할 때에는 매크로블록 E~L이 기준블록버퍼(442)에 저장되고, 매크로블록 L의 0번째 탐색 위치 행에 해당되는 탐색 영역이 탐색영역버퍼(446)에 저장된다. 이때, 매크로블록 L은 x위치가 -64인 탐색 위치 행에 대한 움직임추정이 수행되고, 이와 동시에 매크로블록 E~K는 x위치가 각각 48, 32, 16, 0, -16, -32, -48인 탐색 위치 행에 대한 움직임 추정이 수행된다. 여기서 주의할 점은 매크로블록 E~L이 동시에 처리하는 탐색 위치 행의 x위치는 서로 다르지만, 이들이 참조하는 탐색 영역 데이터는 공통이라는 점이다.
1번째의 탐색 위치 행을 처리할 때에는 매크로블록 L의 1번째 탐색 위치 행에 해당되는 탐색 영역이 탐색영역버퍼(446)에 저장된다. 이때, 매크로블록 L은 x위치가 -63인 탐색 위치 행에 대한 움직임 추정이 수행되고, 이와 동시에 매크로블록 E~K는 x위치가 각각 49, 33, 17, 1, -15, -31, -47인 탐색 위치 행에 대한 움직임 추정이 수행된다.
동일한 방법으로 2번째부터 15번째까지의 탐색 위치 행이 처리된다. 15번째 탐색 위치 행을 처리할 때에는 매크로블록 L의 15번째 탐색 위치 행에 해당되는 탐색 영역이 탐색영역버퍼(446)에 저장된다. 이때, 매크로블록 L은 x위치가 -49인 탐색 위치 행에 대한 움직임 추정이 수행되고, 이와 동시에 매크로블록 E~K는 x위치가 각각 63, 47, 31, 15, -1, -17, -33인 탐색 위치 행에 대한 움직임 추정이 수행된다.
도 7은 기준블록버퍼(442)에 있는 매크로블록이 바뀌는 과정을 설명한 것이다. 15번째 탐색 위치 행을 처리할 때 매크로블록 E에 대한 움직임 추정이 전부 끝나고, 16번째 탐색 위치 행을 처리할 때에는 추가 기준블록버퍼(440)에 있는 매크로블록 M이 기준블록버퍼(442)로 이동되어 매크로블록 M에 대한 움직임 추정이 시작된다. 이때, 기준블록버퍼(442)에는 매크로블록 F~M이 저장되고, 매크로블록 L은 x위치가 -48인 탐색 위치 행에 대한 움직임 추정이 수행된다. 이와 동시에 매크로블록 F~K, M은 x위치가 각각 48, 32, 16, 0, -16, -32, -64인 탐색 위치 행에 대한 움직임 추정이 수행된다. 이런 식으로 탐색 위치 행을 처리해나가다가 31번째 탐색 위치 행을 처리할 때 매크로블록 F에 대한 움직임 추정이 전부 끝나고, 32번째 탐색 위치 행을 처리할 때에는 매크로블록 N에 대한 움직임 추정이 시작된다.
도 8은 112~127번째의 마지막 16 탐색 위치 행을 처리하는 과정을 설명한 것이다. 127번째 탐색 위치 행을 처리할 때에는 기준블록버퍼(442)에는 매크로블록 L~S가 저장되고, 매크로블록 L은 x위치가 63인 탐색 위치 행에 대한 움직임 추정이 수행된다. 이와 동시에 매크로블록 M~S는 x위치가 각각 47, 31, 15, -1, -17, -33, -49인 탐색 위치 행에 대한 움직임 추정이 수행된다. 127번째 탐색 위치 행을 처리하고 나면 매크로블록 L에 대한 움직임 추정이 모두 끝나며, 매크로블록 L은 기준블록버퍼(442)에서 제거되고, 매크로블록 T에 대한 움직임 추정이 새로 시작된다.
본 발명의 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법은 탐색 영역이 프레임 바깥으로 나가는 경우에는 움직임 추정을 수행하지 않으므로, 프레임의 가장자리에 위치한 매크로블록의 경우에도 별다른 지연 시간은 발생하지 않는다. 도 9에서 프레임의 오른쪽 가장자리에 있는 매크로블록 H를 예로 들어 살펴보자.
탐색 범위가 ±64×±64일 때, 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법은 8개의 매크로블록에 대해서 동시에 움직임 추정을 수행한다. 도 9에서 매크로블록 H에 대해 16개의 탐색 위치 행을 처리하는 동안(t=0~15)에는 기준블록버퍼(442)에 매크로블록 A~H가 저장되어 있다. t=16일 때에는 기준블록버퍼(442)에서 매크로블록 A가 삭제되고 매크로블록 I가 저장되지만, 도 9에 도시된 바와 같이 이때 매크로블록 I의 탐색 영역은 프레임 바깥에 위치하기 때문에 움직임 추정을 수행하지 않는다. 따라서 다음 16개의 탐색 위치 행을 처리하는 동안(t=16~31)에는 매크로블록 B~H에 대해서만 움직임 추정이 수행되고, 매크로블록 I에 대해서는 움직임 추정이 수행되지 않는다. 같은 이유로 t=32~47, t=48~63동안에는 각각 매크로블록 C~H, D~H에 대해서만 움직임 추정이 수행된다.
탐색영역버퍼(446)에 프레임 오른쪽 가장자리가 저장되는 때(t=64)에는 도 10에서처럼 매크로블록 E~H에 대해서만 움직임 추정이 수행된다. 이때, 매크로블록 E~H는 각각 자신의 탐색 영역의 가장 오른쪽 탐색 위치에 대해서 움직임 추정을 수행하기 때문에 매크로블록 E~H에 대한 움직임 추정은 이 시점에서 종료된다. 매크로블록 I~M에 대한 움직임 추정이 수행되는 시점은 t=80으로, t=65~79 동안에는 매크로블록 A~H를 위한 프레임 오른쪽 가장자리의 데이터가 탐색영역버퍼(446)에서 삭제되며, 동시에 매크로블록 I~M을 위한 프레임 왼쪽 가장자리의 데이터가 탐색영역버퍼(446)에 저장된다. 이 동안에는 기준블록버퍼(442)에 저장된 모든 매크로블록의 탐색 영역이 프레임 바깥으로 나가기 때문에 움직임 추정이 전혀 수행되지 않으며, 이 시간을 이용하여 탐색 영역 데이터가 프레임 오른쪽 가장자리에서 프레임 왼쪽 가장자리로 바뀌므로 지연 시간은 발생하지 않는다.
탐색영역버퍼(446)가 프레임 왼쪽 가장자리의 데이터로 완전히 바뀌는 순간(t=80)이 되면 도 11에서처럼 매크로블록 I~M에 대한 움직임 추정을 수행한다. 이때 매크로블록 F~H는 이미 움직임 추정이 모두 끝난 상태이며, 매크로블록 I~M은 각각 자신의 탐색 영역의 가장 왼쪽 탐색 위치에서부터 움직임 추정을 시작한다. t=80~95, t=96~111, t=112~127 동안에는 각각 매크로블록 I~M, I~N, I~O에 대해서만 움직임 추정이 수행되고, t=128이 되면 기준블록버퍼(442)에서 매크로블록 H가 삭제되고 매크로블록 P가 저장됨으로써 매크로블록 H에 대한 움직임 추정이 모두 끝난다.
상술한 바와 같이 본 발명에 의한 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법 및 장치는, 복수의 매크로블록에 대해 동시에 움직임을 추정함으로써 성능 저하 및 메모리 대역폭의 증가없이 내부 버퍼의 크기를 줄일 수 있는 이점이 있다.

Claims (10)

  1. 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 방법에 있어서,
    (1) 전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 각 매크로블록과의 상이도를 동시에 계산하는 단계; 및
    (2) 상기 단계 (1)에서 계산된 상이도에 따라 각 매크로블록의 정합블록을 결정한 후 움직임 벡터를 구하는 단계를 포함하는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법.
  2. 제 1 항에 있어서, 상기 단계 (1)은, (1-1) 소정수의 매크로블록들에 공통되는 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 매크로블록들과의 상이도를 동시에 계산하는 단계; (1-2) 다음 화소 위치의 공통 탐색 위치 행의 탐색영역블록과 해당 매크로블록들과의 상이도를 동시에 계산하는 단계; 및 (1-3) 마지막 매크로블록에 대한 상이도 계산이 완료되었는지를 판정하여, 완료되지 않은 경우 상기 단계 (1-2)로 진행하고, 완료된 경우 상기 단계 (2)로 진행하는 단계를 포함하는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법.
  3. 제 1 항에 있어서, 상기 탐색 영역이 ±M×±M 화소이고, 상기 매크로블록의 크기가 N×N 화소라 할 때, 상기 단계 (1)은 2M개의 전체 탐색 위치 행에 대해 탐색 위치 행 별로 수행되고, 상기 단계 (1)에서 상기 공통 탐색 위치 행은 N×(2M+N) 화소로 이루어진 영역이며, 상기 상이도를 계산할 때, 기준블록버퍼에 2M/N개의 매크로블록에 해당하는 2M×N 화소를 저장하고, 추가 기준블록버퍼에 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 N2화소를 저장하며, 탐색영역버퍼에 공통 탐색 위치 행인 N×(2M+N) 화소를 저장하고, 추가탐색영역버퍼에 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 2M+N 화소를 저장하는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법.
  4. 제 3 항에 있어서, 소정 매크로블록의 탐색 영역이 프레임 바깥으로 나가는 경우에는 상기 탐색 영역이 프레임 바깥으로 나가는 매크로블록에 대한 움직임 추정을 수행하지 않는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법.
  5. 제 4 항에 있어서, 상기 단계 (1)에서 전체 탐색 영역에 대한 임의의 매크로블록의 상이도 계산은 2M개의 탐색 위치 행에 대한 상이도 계산이 수행될 때 완료되는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법.
  6. 제 5 항에 있어서, 상기 단계 (1)에서 N개의 탐색 위치 행을 처리한 후 (N+1)번째 탐색 위치 행을 처리할 때, 상이도 계산이 완료된 매크로블록이 상기 기준블록버퍼에서 제거되고, 상기 추가 기준블록버퍼에 저장된, 다음 매크로블록이 상기 기준블록버퍼로 이동되어 상기 다음 매크로블록에 대한 상이도 계산이 시작되는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 방법.
  7. 현재 프레임을 소정의 크기로 나눈 매크로블록들과 탐색영역인 이전 프레임을 소정의 크기로 나눈 탐색영역블록들과의 상이도를 계산한 후 상기 매크로블록과 가장 유사한 정합블록을 결정하여 움직임 벡터를 구하는 움직임 추정 장치에 있어서,
    전체 탐색 위치 행에 대해 마지막 매크로블록에 대한 상이도 계산이 완료될 때까지 인접하는 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 탐색영역블록과 상기 소정수의 각 매크로블록과의 상이도를 동시에 계산하는 상이도 계산부; 및
    상기 상이도 계산부에서 계산된 상이도에 따라 각 매크로블록의 정합블록을 결정한 후 움직임 벡터를 구하는 정합블록 결정부를 포함하는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 장치.
  8. 제 7 항에 있어서, 상기 상이도 계산부는, 상기 소정수의 매크로블록의 화소값을 저장하는 기준블록버퍼와 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 화소값을 저장하는 추가 기준블록버퍼와 상기 소정수의 매크로블록들에 공통인 공통 탐색 위치 행의 화소값을 저장하는 탐색영역버퍼 및 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 화소값을 저장하는 추가 탐색영역버퍼를 구비하는 내부버퍼; 및 상기 기준블록버퍼에 저장된 상기 소정수의 매크로블록의 화소값과 상기 탐색영역버퍼에 저장된 공통 탐색 위치 행의 화소값을 비교하여 각 탐색 위치에서의 상이도를 계산하는 단위처리기를 포함하는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 장치.
  9. 제 8 항에 있어서, 상기 탐색 영역이 ±M×±M 화소이고, 상기 매크로블록의 크기가 N×N 화소라 할 때, 상기 공통 탐색 위치 행은 N×(2M+N) 화소로 이루어진 영역이며, 상기 기준블록버퍼는 2M/N개의 매크로블록에 해당하는 2M×N 화소를 저장하고, 상기 추가 기준블록버퍼는 다음 매크로블록의 상이도 계산을 위해 추가되는 다음 매크로블록의 N2화소를 저장하며, 상기 탐색영역버퍼는 공통 탐색 위치 행인 N×(2M+N) 화소를 저장하고, 상기 추가탐색영역버퍼는 다음 탐색 위치 행을 위한 추가 탐색 영역에 해당하는 2M+N 화소를 저장하는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 장치.
  10. 제 9 항에 있어서, 상기 단위처리기는 소정 매크로블록의 탐색 영역이 프레임 바깥으로 나가는 경우에는 상기 탐색 영역이 프레임 바깥으로 나가는 매크로블록에 대한 움직임 추정을 수행하지 않는 것을 특징으로 하는 매크로블록 파이프라인 기법을 이용한 움직임 추정 장치.
KR1019980036090A 1998-09-02 1998-09-02 매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치 KR20000018487A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980036090A KR20000018487A (ko) 1998-09-02 1998-09-02 매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980036090A KR20000018487A (ko) 1998-09-02 1998-09-02 매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치

Publications (1)

Publication Number Publication Date
KR20000018487A true KR20000018487A (ko) 2000-04-06

Family

ID=19549333

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980036090A KR20000018487A (ko) 1998-09-02 1998-09-02 매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치

Country Status (1)

Country Link
KR (1) KR20000018487A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100446235B1 (ko) * 2001-05-07 2004-08-30 엘지전자 주식회사 다중 후보를 이용한 움직임 벡터 병합 탐색 방법
KR100846780B1 (ko) * 2003-11-10 2008-07-16 삼성전자주식회사 움직임 벡터 추정 방법 및 장치
KR100900058B1 (ko) * 2007-04-09 2009-06-01 아주대학교산학협력단 다양한 멀티미디어 코덱에 사용되는 움직임 추정 연산 방법및 그 연산회로

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100446235B1 (ko) * 2001-05-07 2004-08-30 엘지전자 주식회사 다중 후보를 이용한 움직임 벡터 병합 탐색 방법
US8073056B2 (en) 2001-05-07 2011-12-06 Lg Electronics Inc. Motion vector searching method using plural search areas
KR100846780B1 (ko) * 2003-11-10 2008-07-16 삼성전자주식회사 움직임 벡터 추정 방법 및 장치
US8170104B2 (en) 2003-11-10 2012-05-01 Samsung Electronics Co., Ltd. Apparatus and method for motion vector prediction
KR100900058B1 (ko) * 2007-04-09 2009-06-01 아주대학교산학협력단 다양한 멀티미디어 코덱에 사용되는 움직임 추정 연산 방법및 그 연산회로

Similar Documents

Publication Publication Date Title
US9357228B2 (en) Motion estimation of images
US6295546B1 (en) Method and apparatus for eliminating the transpose buffer during a decomposed forward or inverse 2-dimensional discrete cosine transform through operand decomposition, storage and retrieval
US6760478B1 (en) Method and apparatus for performing two pass quality video compression through pipelining and buffer management
US6690729B2 (en) Motion vector search apparatus and method
EP1389016B1 (en) Improved motion estimation and block matching pattern
US8724702B1 (en) Methods and systems for motion estimation used in video coding
KR101036552B1 (ko) 적응적 탐색 영역 및 부분 정합 오차 기반의 고속 움직임 추정 장치 및 방법
US7953153B2 (en) Motion estimation method utilizing modified rhombus pattern search for a succession of frames in digital coding system
US20070133683A1 (en) Motion vector estimation device and motion vector estimation method
US8155213B2 (en) Seamless wireless video transmission for multimedia applications
KR20020085269A (ko) 다중 후보를 이용한 움직임 벡터 병합 탐색 방법
EP1413144A2 (en) Methods and apparatus for sub-pixel motion estimation
US6687299B2 (en) Motion estimation method and apparatus for interrupting computation which is determined not to provide solution
WO2001049029A1 (en) Methods and apparatus for motion estimation in compressed domain
US20060109909A1 (en) Decision mechanism for partition types of macro block
KR100782800B1 (ko) 움직임 추정 방법
KR20000018487A (ko) 매크로블록 파이프라인 기법을 이용한 움직임추정방법 및 장치
KR100686393B1 (ko) 하드웨어 구현에 적합한 움직임 예측 장치 및 그 방법
US20070153909A1 (en) Apparatus for image encoding and method thereof
KR100275542B1 (ko) 스테레오 영상 압축방법
EP2076051A2 (en) Configurable motion estimation
WO2002032145A1 (en) A hexagon-based fast search method for block motion estimation in video encoding
KR20100013139A (ko) H.264/avc 움직임 추정의 연산량 감소방법
JPH11289536A (ja) 動画像伸長装置及び方法
EP1176829A1 (en) Motion estimation

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application