KR100202310B1 - 비디오 반화소 단위 움직임 추정장치 - Google Patents

비디오 반화소 단위 움직임 추정장치 Download PDF

Info

Publication number
KR100202310B1
KR100202310B1 KR1019960008507A KR19960008507A KR100202310B1 KR 100202310 B1 KR100202310 B1 KR 100202310B1 KR 1019960008507 A KR1019960008507 A KR 1019960008507A KR 19960008507 A KR19960008507 A KR 19960008507A KR 100202310 B1 KR100202310 B1 KR 100202310B1
Authority
KR
South Korea
Prior art keywords
pixel
block
motion estimation
search
candidate
Prior art date
Application number
KR1019960008507A
Other languages
English (en)
Other versions
KR970068711A (ko
Inventor
윤종성
장순화
권순홍
Original Assignee
이계철
한국전기통신공사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이계철, 한국전기통신공사 filed Critical 이계철
Priority to KR1019960008507A priority Critical patent/KR100202310B1/ko
Publication of KR970068711A publication Critical patent/KR970068711A/ko
Application granted granted Critical
Publication of KR100202310B1 publication Critical patent/KR100202310B1/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/513Processing of motion vectors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • 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

Abstract

본 발명은 비디오 반화소 단위 움직임 추정장치에 관한 것으로서, 움직임 추정장치의 PE열에서의 PE 수를 후보블럭의 수와 동일하게 하고, PE는 후보블럭과 같은 매트릭스로 배열하며, 각 PE열에 직렬로 연결되는 레치(L)의 수는 [(정수단위의 수평방향 탐색영역 블럭수 - 1)

Description

비디오 반화소 단위 움직임 추정장치
제1도는 종래 비디오 부호기의 블럭도.
제2도는 종래 비디오 움직임 추정 방법을 설명하기 위한 개략도.
제3도는 종래 비디오 반화소 단위 움직임 추정장치의 블럭도.
제4a도 및 제4b도는 본 발명에 따른 비디오 반화소 단위 움직임 추정장치의 탐색영역 블럭 및 기준 블럭의 개략도.
제5도는 본 발명에 따른 비디오 반화소 단위 움직임 추정장치용 연산기열의 블럭도.
제6도는 본 발명에 따른 비디오 반화소 단위 움직임 추정장치의 탐색 영역 데이타 공급 필터.
제7도는 본 발명에 따른 비디오 반화소 단위 움직임 추정장치용 연산기의 블럭도.
제8도는 본 발명에 따른 비디오 반화소 단위 최적선택기의 블럭도.
제9도는 본 발명에 따른 비디오 반화소 단위 PE열 구조의 동작을 보여주는 데이타의 흐름도.
* 도면의 주요 부분에 대한 부호의 설명
10 : 원영상 11 : 기준 블럭
20 : 이전 부호화 영상 21 : 유사 블럭
22 : 탐색영역 블럭 31 : 기준 블럭버퍼 메모리
32 : 탐색영역 블럭 버퍼 메모리 33 : 정수화소 탐색부
34 : 반화소 탐색부 PE : 연산처리기(Processing Element)
DCT : 이산여현변환(Discrete Cosine Transform)
V : 변위 벡터(displacement Vector)
MAD : 절대차 평균(Mean of Absolute Difference)
L : 레치(Latch)
BMSU : 최적치 선택기(Best Matching-Select Unit)
ADC : 절대차 계산기(Absolute Difference Calculator)
본 발명은 비디오 부호기 및 비디오 데이타 압축 시스템등에 적용되는 비디오 반화소 단위 움직임 추정장치에 관한 것으로서, 특히 탐색범위(후보블럭의 수)가 적은 전영역 탐색 움직임 추정에서 하드웨어가 간단하고 데이타 처리가 용이한 비디오 반화소 단위 움직임 추정장치에 관한 것이다.
국제 표준 기구에서는 89년 이래 비디오 부호화를 위한 국제 표준안을 그 응용 분야에 따라 CCITT H.261이나 ISO/IEC 11172(PEG-1 비디오) 및 ISO/IEC 13818-2(MPEG-2 비디오)등을 제안하고 있다. 이에 따라 국제 표준안을 따르는 비디오 코덱(부호기/복호기)의 ASIC(Application Specific IC) 개발이 활발히 이루어지고 있다.
현재 화상전화, 기존 비디오급 화질의 비디오 부호기 및 복호기, 그리고 MPEG-2 비디오 복호기는 이미 시장에 발표되어 있으며, 지금은 기존 TV급 화질을 지원하는 MPEG-2 비디오 부호기의 개발이 진행되고 있다.
이러한 비디오 부호화 방법은 비디오 영상의 이전 영상과 현재 영상간에 존재하는 신호의 유사성을 이용하여, 비디오 영상의 부호화는 프레임 메모리에 저장되어 있는 이전 영상과의 차신호에 대해서만 수행함으로써 비디오 데이타를 압축시키는 기법이다.
이러한 비디오 부호기에서 부호화 성능에 가장 크게 영향을 미치는 모듈이 움직임 추정장치이다. 현재 움직임 추정의 벡터 정밀도를 반화소까지 허용한 국제 표준에 따라 움직인 추정장치의 추정 정밀도를 반화소 단위까지 구현함으로써 비디오 부호기의 성능을 개선시키는 추세에 있다.
또한 비디오 부호기에 사용되는 움직임 추정장치는 많은 량의 계산을 처리해야 하며, 현재의 VLSI 기술로서는 단일 연산기에 의한 움직임 추정이 불가능하여 연산의 병렬 처리가 불가피하다. 움직임 추정장치는 연산처리기(Processing Element : 이하 PE라 칭함)의 병렬 배열 구조가 내부 버퍼 메모리의 용량, 메모리 접근 빈도, 연산처리기의 수, 처리 사이클 등을 결정한다.
제1도는 종래 비디오 부호기의 블럭도로서, H.261 이나 MPEG-1 및 MPEG-2에 모두 적용되는 비디오 부호기의 예이다.
먼저, 비디오 부호기는 크게 모드결정부, 움직임추정/보상부, 이산여현 변환(Discrete Cosine Transform : 이하 DCT라 칭함) 부호부, 가변길이 부호부 그리고 프레임 메모리로 구성되어있다. 상기 움직임 추정/보상부는 영상간에 존재하는 신호이 유사성을 제거하여 신호를 압축하는 기능을 하며, 상기 DCT 부호부는 영상내의 신호 유사성을 제거하여 데이타를 압축하는 기능을 가지며, 상기 가변길이 부호부는 데이타의 통계적 특성을 이용하여 데이타량을 줄여주는 역할을 한다.
비디오 부호기는 이와 같이 여러 부호화 방법이 복합적으로 결합되어 있으며, 비디오 부호기의 부호화 성능 및 하드웨어 복잡도를 가장 크게 결정하는 것은 프레임 메모리 저장되어 있는 영상으로부터 현재 처리 블럭과 가장 유사한 블럭을 구해 주는 움직임 추정 및 보상부(이하 움직임 추정장치라 칭함) 모듈이다.
지금까지 비디오 부호화를 위해 제안한 국제 표준 방식들인 CCITT H.261, ISO/IEC MPEG-1, ISO/IEC MPEG-2 부호화 알고리즘에서는 모두 블럭 정합에 의한 움직임 추정 기법을 도입하고 있으며, 화상전화 서비스를 위해 제안한 H.261은 움직임 추정을 정수단위로만 하도록 되어 있었으나, 이후에 기존 비디오 급, 혹은 TV급 이상의 화질 서비스를 위해 제안한 MPEG-1 및 MPEG-2에서는 움직임 추정을 반화소 단위까지 할 수 있도록 하였다.
반화소 단위의 움직임 추정을 전 탐색영역에 걸쳐 수행하는 것은 그 계산량이 엄청나게 많아지며, 그것에 비해 크게 부호화 성능이 향상되지 않는다. 따라서 반화소 단위의 움직임 추정은 정수화소 단위의 움직임 추정을 통해 1차 후보블럭을 선택한 다음 그 후보블럭 주위로 좁은 탐색범위(-0.5 0.5)에 대해 반화소 단위의 움직임 추정을 한다.
제2도는 종래 비디오 부호기에서의 움직임 추정을 설명하기 위한 개략도로서, 이를 참조하여 움직임 추정 방법을 살펴보면 다음과 같다.
먼저, 이전 부호화 영상(20)에서 현재 원 영상(10)의 기준 블럭(11)과 같은 영상 위치의 블럭을 주위로 한 탐색영역 블럭(22)을 얻고, 상기 이전부호화 영상(20)의 탐색영역 블럭(22)내에서 현재 원 영상(10)의 기준 블럭(11)과 가장 유사한 기준 블럭 크기의 유사 블럭(21)을 얻어 이것을 변위벡터(displacement Vector)로 나타낸다.
즉 기준 블럭(11)의 크기가 NN 이고, 탐색범위가 -d~+d 이며, 기준 블럭(11)을 X(m, n), 탐색영역 블럭(22)을 Y(m, n)이라고 할 때, 움직임 추정 방법은 절대차 평균(Mean of Absolute Difference; 이하 MAD라 칭함)을 최소화하는 변위벡터(DV)를 찾기 위하여 하기의 식 1, 2, 3을 사용한다.
여기서 Y(m+0.5, n) = [Y(m, n) + Y(m+1, n)]//2 이고, Y(m, n+0.5) = [Y(m, n) + Y(m, n+1)]//2이며, Y(m+0.5, n+0.5) = [Y(m, n) + Y(m, n+1) + Y(m+1, n) + Y(m+1, n+1)]//4이고, //는 반올림을 의미한다.
상기 식1은 각 후보블럭들의 MAD를 구하는 식이며, 식 2는 후보블럭들의 변위벡터의 범위 즉, 탐색범위(searching range)를 나타내며, 변위를 나타내는 i 및 j는 반화소 단위값을 갖으며, d, -d+0.5...-0.5, 0, 0.5...d-0.5 값이 된다.
식 3은 식 1과 식 2에 의해 구해진 모든 후보블럭의 MAD 중 최소값을 갖는 후보블럭의 위치(변위벡터)를 구하는 깃이다. 따라서 식 1에 의해 식 2의 탐색범의에서의 각 후보 블럭에 대한 MAD를 구하며, 식 3에 의해 각 후보블럭의 MAD를 비교하여 최소의 MAD를 갖는 후보블럭의 변위벡터를 얻는다.
이때 블럭 선정 기준으로 MAD를 사용한 것은 MAE(Mean Square Error) 및 NCCF(Normalized Cross-Correlation)등과 같이 보다 정확한 판단 기준이 있으나, 그 계산량이 너무나 방대해 하드웨어 구현에는 거의 사용되지 않기 때문이다.
식 1에서 3에 나타난 정의식과 같이 반화소 단위의 움직임 추정을 탐색범위내의 가능한 모든 후보블럭에 대해 수행하는 것은 가장 좋은 부호화 성능을 보이나, 너무 많은 계산량을 포함하게 되므로, 대부분 반화소 단위의 블럭 정합 움직임 추정은 정수단위의 움직임 추정을 통해 얻어진 하나의 후보블럭을 중심으로 반화소 변위된 블럭에 대해서만 이루어진다. 식 1과 식 2에서 살펴보는 바와 같이 블럭정합 움직임 추정은 탐색영역의 동일 데이타가 여러 후보블럭의 MAD 계산에 사용하고 있음을 알 수 있다. 움직임 추정의 VLSI 구조는 이러한 성질을 최대한 이용하도록 해야 한다.
여기서 정수화소 단위의 움직임 추정과 반화소 단위의 움직임 추정은 종속적인 관계에 있으며, 하나의 하드웨어 자원(연산기 열 구조)으로 정수 및 반화소 움직임 추정을 하도록 하기에는 하드웨어 효율이 떨어질 뿐만 아니라 1블럭 처리 기간내에 처리하기가 쉽지 않다.
따라서 움직임 추정장치에 정수화소 탐색기와 반화소 탐색기가 동시에 내재함으로 인한 하드웨어 부담이 커지며, 반화소 탐색에 소요되는 하드웨어를 가능한 줄여주어야 한다. 그리고 기준 블럭 및 탐색영역 블럭에 대한 정수화소 단위의 움직임 추정 및 반화소 단위의 움직임 추정에서 동시에 메모리 접근이 발생하며, 반화소 탐색에서의 메모리 접근 횟수를 최소화함으로써 메모리 조작을 쉽게 할 필요가 있다.
따라서 정수화소 단위의 움직임 추정장치와 반화소 단위의 움직임 추정장치를 따로 두어 파이프라인 방식에 의한 병렬처리를 하도록 하는 것이 바람직하다.
제3도는 종래 비디오 반화소 단위 움직임 추정장치의 블럭도이다.
먼저, 움직임 추정장치는 기준 블럭 데이타 및 탐색영역 블럭데이타를 저장하고 있다가, 탐색부에서 요구하는 대로 데이타를 실제로 움직임 추정이 이루어지는 정수화소 탐색부(33)와 반화소 탐색부(34)로 구성된다.
상기와 같이 종래 비디오 반화소 단위 움직임 추정장치는 하드웨어의 복잡도를 결정하는 PE의 수가 탐색범위와 상관없이 기준 블럭 크기에 비례하거나, 탐색범위에 비례하는 PE수를 두고는 있으나, 메모리에 동일한 데이타를 반복하여 접근함으로써 메모리 조작이 복잡하고, 움직임 추정에 요구되는 사이클 수가 탐색영역보다 커서 소자의 동작 특성이 떨어지는 문제점이 있다.
따라서 본 발명의 목적은 후보 블럭수 만큼의 PE를 둠으로써 하드웨어를 단순화하고, 메모리 데이타의 효율적인 이용으로 메모리 접근 빈도 및 처리 사이클의 수를 최소화하여 하드웨어를 단순화하고, 동작 특성을 향상시킬 수 있는 비디오 부호기의 움직임 추정 방법 및 그 장치를 제공함에 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 비디오 부호기의 반화소 단위 움직임 추정장치의 특징은
정수화소 탐색부에서 탐색된 유사블럭의 주위로 반화소 단위의 간격으로된 후보블럭들의 데이타가 입력되어 최적 변위 벡터를 구하되, 전체 수가 후보블럭의 수와 동일한 수인 연산기들이 수직 및 수평 방향으로 후보블럭수만큼 매트릭스 배열되어 있는 반화소 탐색부와,
상기 반화소 탐색부에 탐색영역 블럭 데이타를 공급하는 필터와,
상기 반화소 탐색부 및 필터와 연결되는 기준 블럭 데이타 버퍼 및 탐색영역 블럭 데이타 버퍼를 구비함에 있다.
본 발명에 따른 비디오 부호기의 반화소 단위 움직임 추정장치의 다른 특징은,
정수화소 탐색부에서 탐색된 유사블럭의 주위로 반화소 단위의 간격으로된 후보블럭들의 데이타가 입력되어 최적변위 벡터를 구하는 반화소 탐색부와,
상기 반화소 탐색부에서 전체 수가 후보블럭의 수와 동일한 수인 연산기들이 수직 및 수평 방향으로 후보블럭수 만큼 매트릭스 배열되어 있는 연산기열들과,
상기 연산기열의 말단에 연결되되, [(정수단위의 수평방향 탐색영역 블럭수 -1)2 - 수평방향 후보블럭 수] 갯수 만큼이 일렬로 연결되어 탐색영역 데이타를 저장 및 전달하는 기능을 수행하며, 마지막 2개의 PE열에는 구비되지 않는 레치들과,
상기 연산기열들의 말단에 연결되어 최소의 MAD 값을 갖는 블럭을 선정하여 그 블럭의 변위벡터를 출력하는 최적치 선택기를 구비함에 있다.
이하, 본 발명에 따른 비디오 부호기의 움직임 추정장치에 관하여 상세히 설명한다.
제4a도 및 제4b도는 본 발명에 따른 비디오 반화소 단위 움직임 추정장치의 탐색 영역 블럭 및 기준 블럭의 개략도이다.
기준 블럭(11)의 크기가 44의 16개의 데이타로 되어 있으며, 탐색범위가 수평 및 수직 방향으로 다 같이 -0.5~+0.5로 탐색영역 블럭(21)의 크기는 66이 요구된다.
반화소 움직임 추정에서의 계산은 절대차의 합을 구하는 것으로서, 전체 계산량은 [기준 블럭의 크기탐색범위(후보블럭 수)] 이다. 위 식들에서 탐색영역내 동일 데이타가 여러 후보블럭의 MAD 계산에 사용되고 있음을 알 수 있으며, 움직임 추정장치는 동일한 데이타를 가능한한 적게 연산기열에 입력되는 하드웨어 구조가 되어야 한다.
제5도는 본 발명에 따른 비디오 부호기 반화소 단위 움직임 추정장치의 PE열의 블럭도로서, 탐색범위가 수평 및 수직으로 -0.5~+0.5로서 후보블럭이 9개인 예이다.
먼저, PE열을 구성하는 PE의 전체 수는 후보블럭의 수와 동일한 9개이며, PE의 배열은 탐색범위, 즉 수평방향으로 3, 수직방향으로 3의 매트릭스 배치이고, 각 PE열에서의 레치(L)의 수는 [(정수단위의 수평방향 탐색영역 블럭수-1)2 -수평방향 후보블럭 수]이다. 여기서 2를 곱한 것은 정수단위의 탐색영역을 반화소 단위의 탐색영역으로 변화되기 때문이다. 레치열은 탐색영역 데이타를 저장 및 전달하는 기능을 하며, 각 PE들은 최적치 선택기(Best Matching-Select Unit ; 이하 BMUS라 칭함)와 연결되어 최적치를 출력한다.
또한 수직방향으로 후보블럭 수가 3보다 크면 짝수열의 구조를 제5도의 홀수열 구조와 동일하게 하면 된다.
상기와 같은 PE열 구조에서의 탐색영역 데이타 및 기준 블럭 데이타의 입력은 다음과 같다.
먼저, 기준 블럭 데이타는 PE열 구조내 모든 PE에 동일한 데이타가 동시에 가해지며, 탐색영역 데이타는 한 사이클에 4개의 데이타 b00(i,j+1) b01(i,j) b10(i,j+ 1) b11(i,j)가 공급된다. 여기서
b00(i,j) = [S(i-1,j-1) + S(i-1,j) + S(i,j)]//4 로 부터
b00(i,j+1) = [S(i-1,j) + S(i-1,j+1) + S(i,j+1)]//4,
b01(i,j) = [S(i-1,j) + S(i,j)]//2 이며,
b10(i,j) = [S(i,j-1) + S(i,j)]//2 로 부터
b10(i,j+1) = [S(i,j) + S(i,j+1)]//2,
b11(i,j) = S(i,j) 이고, //는 소수점 이하값에 대한 반올림을 나타낸다.
이와 같이 반화소 탐색을 위해 사이클 당 4개의 탐색영역 데이타를 요구하나, 이것은 1 사이클에 1개의 탐색영역 데이타를 읽어 들이는 필터로서 쉽게 구현될 수 있다.
제6도는 본 발명에 따른 비다오 부호기 반화소 단위 움직임 추정장치의 탐색영역 데이타 공급 필터의 블럭도로서, 사이클당 1개의 데이타를 읽어들여 반화소 추정을 위한 4개의 데이타를 출려하는 필터의 예로서, 전체 7개의 레치(L)와 4개의 가산기(ADD)로 구성된다.
제7도는 제5도의 PE의 블럭도이다.
상기의 PE는 탐색영역 데이타를 저장 및 전달하는 레치(LO)와, 기준 블럭 데이타와 탐색영역 블럭 데이타의 차의 크기를 구하는 절대 계산기(Absolute Difference Calculator; 이하 ADC라 칭함)와, 상기 ADC와 연결되어 클럭 속도를 향상시키는 파이프라인 레치(L1)과, 상기 ADC의 결과치를 축적(accumulation)하는 기능을 갖는 가산기(Adder)와 레치(L2)로 구성된다. 각 PE는 후보블럭에 대한 MAD 계산을 담당하며, 레치열은 탐색영역 데이타를 저장하여 다음 PE로 전달한다.
제8도는 본 발명에 따른 반화소 단위 움직임 추정장치에 사용되는 BMSU의 블럭도로서, 제4도의 예에서 9개의 후보블럭에 대한 MAD를 동시에 받아 병렬 연결된 비교기(Comparator)와 챔피온 레지스터(Champion Register)가 사이클당 1개씩 비교 판단하는 9개의 사이클에 걸쳐 각 후보블럭의 MAD가 후보블럭 모니터(Candidate Region Monitor) 및 변위벡터의 수직성분 레지스터(Low Register)/수평성분 레지스터(Column Register)를 거쳐 최소 변위벡터가 출력된다.
제9도는 제4도의 예에 대해서 사이클에 따른 탐색영역 데이타 및 기준 블럭 데이타의 흐름도이다.
여기서 25클럭으로 모든 후보블럭에 대한 MAD 계산이 완료된다.
제6도에서는 1사이클당 1개의 탐색영역 데이타를 읽어들여 PE열 구조에 4개의 데이타를 공급해주나, 매 사이클마다 출력되는 것은 아니다. 즉, 사이클 06, 12, 18, 24, 30째 클럭에서는 반화소 움직임 추정을 위한 탐색영역 데이타를 출력하지 못한다. 따라서 탐색영역 데이타 메모리에서 사이클당 1개의 접근만이 가능하다면 반화소 탐색에 요구되는 클럭수는
(수평방향 탐색영역수-1)(수직방향 탐색영역수-1) = 25
가 아니라, 탐색영역 블럭의 데이타 수와 동일한 36이다. 물론 최소의 MAD 블럭을 선정하는데 요구되는 후보블럭 수만큼의 클럭수는 더 필요하다.
제9도에서 각 PE는각 후보블럭에 대한 MAD를 전담하는 것을 볼 수 있다. 즉, 다음과 같다.
따라서 움직임 추정에 요구되는 PE의 수를 후보블럭의 숫자 만큼으로하여 하드웨어의 복잡도가 감소되고, 기준 블럭 및 탐색영역 블럭의 메모리 데이타의 효율적인 사용으로 메모리 접근 빈도가 최소화되고, PE의 효율적인 사용으로 처리 사이클 수를 탐색 영역 데이타 수로 감소된다.
이상에서 설명한 바와 같이 본 발명에 따른 비디오 반화소 단위 움직임 추정장치는 움직임 추정장치의 PE열에서의 PE 수를 후보블럭의 수와 동일하게 하고, PE는 후보블럭과 같은 매트릭스로 배열하며, 각 PE열에 직렬로 연결되는 레치(L)의 수는 [(정수단위의 수평방향 탐색영역 블럭수 -1)2 - 수평방향 후보블럭 수] 만큼으로 하며, 각 PE들을 최적 선택기와 연결하여 기준 블럭과 가장 차이가 적은 후보블럭을 선택하도록 하였으므로, 탐색범위(후보블럭수)가 적은 움직임 추정 탐색에서는 하드웨어의 복잡도를 줄일 수 있어 제조 단가를 절감할 수 있으며, 기준 블럭 및 탐색영역 블럭 데이타를 효율적으로 이용함으로써 기준 블럭 및 탐색영역 블럭 메모리의 접근 빈도를 최소화했으며, 움직임 추정 처리 사이클 수를 최소화하여 제품 동작을 특성이 향상시켰다.

Claims (4)

  1. 정수화소 탐색부에서 탐색된 유사블럭의 주위로 반화소 단위의 간격으로된 후보블럭들의 데이타가 입력되어 최적 변위 벡터를 구하되, 전체 수가 후보블럭의 수와 동일한 수인 연산기들이 수직 및 수평 방향으로 후보블럭수만큼 매트릭스 배열되어 있는 반화소 탐색부와, 상기 반화소 탐색부에 탐색영역 블럭 데이타로 공급하는 필터와, 상기 반화소 탐색부 및 필터와 연결되는 기준 블럭 데이타 버퍼 및 탐색영역 블럭 데이타 버퍼를 구비하는 비디오 반화소 단위 움직임 추정장치.
  2. 정수화소 탐색부에서 탐색된 유사블럭의 주위로 반화소 단위의 간격으로된 후보블럭들의 데이타가 입력되어 최적 변위 벡터를 구하되, 전체 수가 후보블럭의 수와 동일한 수인 연산기들이 수직 및 수평 방향으로 후보블럭수만큼 매트릭스 배열되어 있는 반화소 탐색부와, 상기 반화소 탐색부에서 전체 수가 후보블럭의 수와 동일한 수인 연산기들이 수직 및 수평 방향으로 탐색범위만큼 매트릭스 배열되어 있는 연산기열들과, 상기 연산기열들 각각의 말단에 연결되되, [(정수단위의 수평방향 탐색영역 블럭수 - 1)2 - 수평방향 후보블럭 수] 갯수만큼이 일렬로 연결되어 탐색영역 데이타를 저장 및 전달하는 기능을 수행하며, 마지막 두개의 PE열에는 구비되지 않는 래치들과, 상기 연산기열들에 연결되어 최소의 MAD 값을 갖는 블럭을 선정하여 그 블럭의 변위벡터를 출력하는 최적치 선택기를 구비하는 비디오 반화소 단위 움직임 추정장치.
  3. 제 2 항에 있어서, 상기 연산기가 탐색영역 데이타를 저장 및 전달하는 레치(LO)와, 기준 블럭 데이타와 탐색영역 블럭 데이타의 차의 크기를 구하는 ADC와, 상기 ADC와 연결되어 클럭 속도를 향상시키는 파이프라인 레치(L1)과, 상기 ADC의 결과치를 축적하는 기능을 갖는 가산기(Adder)와 레치(L2)로 구성되어 후보블럭에 대한 MAD 계산을 담당하는 것을 특징으로 하는 비디오 반화소 단위 움직임 추정장치.
  4. 제 1 항에 있어서, 상기 최적치 선택기가 후보블럭들의 MAD를 동시에 받는 병렬 연결된 비교기(Comparator) 및 챔피온 레지스터(Champion Register)과, 사이클당 1개씩 후보블럭 수 만큼 비교 판단하여 후보블럭의 MAD를 최소 변위벡터로 출력시키는 후보블럭 모니터(Candidate Region Monitor) 및 변위벡터의 수직성분 레지스터(Low Register)/수평성분 레지스터(Column Register)를 구비하는 것을 특징으로 하는 비디오 반화소 신호 움직임 추정장치.
KR1019960008507A 1996-03-27 1996-03-27 비디오 반화소 단위 움직임 추정장치 KR100202310B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960008507A KR100202310B1 (ko) 1996-03-27 1996-03-27 비디오 반화소 단위 움직임 추정장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960008507A KR100202310B1 (ko) 1996-03-27 1996-03-27 비디오 반화소 단위 움직임 추정장치

Publications (2)

Publication Number Publication Date
KR970068711A KR970068711A (ko) 1997-10-13
KR100202310B1 true KR100202310B1 (ko) 1999-06-15

Family

ID=19454076

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960008507A KR100202310B1 (ko) 1996-03-27 1996-03-27 비디오 반화소 단위 움직임 추정장치

Country Status (1)

Country Link
KR (1) KR100202310B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100549919B1 (ko) * 2000-12-15 2006-02-06 주식회사 케이티 소요클럭사이클수 감축을 위한 초대규모 집적회로 장치

Also Published As

Publication number Publication date
KR970068711A (ko) 1997-10-13

Similar Documents

Publication Publication Date Title
US6130912A (en) Hierarchical motion estimation process and system using block-matching and integral projection
Yang et al. A family of VLSI designs for the motion compensation block-matching algorithm
KR100486249B1 (ko) 움직임 추정 장치 및 탐색영역에서 레퍼런스매크로블록창의 스캐닝 방법
EP0626791B1 (en) Motion vector detection apparatus for moving pictures
US6430317B1 (en) Method and apparatus for estimating motion using block features obtained from an M-ary pyramid
KR101578052B1 (ko) 움직임 추정 장치 및 이를 구비하는 동영상 부호화 장치
US5936672A (en) Half pixel motion estimator
WO2001050770A2 (en) Methods and apparatus for motion estimation using neighboring macroblocks
JPH09179987A (ja) 動きベクトル検出方法及び動きベクトル検出装置
KR20010071705A (ko) 디지털 비디오를 위한 이동 추정 방법 및 장치
US5604546A (en) Image signal processing circuit for performing motion estimation
WO2001049039A1 (en) Methods and apparatus for reduction of prediction modes in motion estimation
EP0734175B1 (en) Hierarchical motion vector estimation using multiple block sizes
US6690728B1 (en) Methods and apparatus for motion estimation in compressed domain
US6516031B1 (en) Motion vector detecting device
JPH08140094A (ja) 動きベクトル探索装置
KR20010052630A (ko) 동작 추정
US20020131500A1 (en) Method for determining a motion vector for a video signal
US20030012281A1 (en) Motion estimation apparatus and method for scanning an reference macroblock window in a search area
Baglietto et al. Parallel implementation of the full search block matching algorithm for motion estimation
KR0181029B1 (ko) 에지를 이용한 특징점 선정장치
KR19980036073A (ko) 움직임 벡터 검출 방법 및 장치
KR100202310B1 (ko) 비디오 반화소 단위 움직임 추정장치
EP1420595B1 (en) Motion vector selection in a video motion estimator based on a preferred reference point
KR100223052B1 (ko) 비디오 움직임 추정장치

Legal Events

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

Payment date: 20130305

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 16

LAPS Lapse due to unpaid annual fee