KR100189876B1 - 후보블럭 데이타공급 장치 - Google Patents

후보블럭 데이타공급 장치 Download PDF

Info

Publication number
KR100189876B1
KR100189876B1 KR1019930005533A KR930005533A KR100189876B1 KR 100189876 B1 KR100189876 B1 KR 100189876B1 KR 1019930005533 A KR1019930005533 A KR 1019930005533A KR 930005533 A KR930005533 A KR 930005533A KR 100189876 B1 KR100189876 B1 KR 100189876B1
Authority
KR
South Korea
Prior art keywords
data
shift matrix
matrix memory
column
memory means
Prior art date
Application number
KR1019930005533A
Other languages
English (en)
Other versions
KR940023271A (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 KR1019930005533A priority Critical patent/KR100189876B1/ko
Publication of KR940023271A publication Critical patent/KR940023271A/ko
Application granted granted Critical
Publication of KR100189876B1 publication Critical patent/KR100189876B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/77Circuits for processing the brightness signal and the chrominance signal relative to each other, e.g. adjusting the phase of the brightness signal relative to the colour signal, correcting differential gain or differential phase

Landscapes

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

Abstract

본 발명은 풀서치 블럭매칭 알고리즘을 수행하여 모션벡터를 구하는 모션벡터 측정장치에서 서치윈도우 데이타를 후보블럭 데이타로 재배열하여 일시에 공급해주는 후보블럭 데이타 공급장치에 관한 것이다. 후보블럭 데이타 공급장치는 서치윈도우 데이타를 컬럼단위로 입력하여 랫치하는 데이타 랫치부와 매트릭스구조로 형성되어 상기 데이타 랫치부의 데이타를 쉬프팅클럭마다 가로방향으로 쉬프팅하는 컬럼 쉬프트 매트릭스 메모리수단과 소정 시점마다 컬럼 쉬프트 매트릭스 메모리수단의 각 부분의 데이타를 일시에 로드한 후 이를 세로방향으로 쉬프트시키면서 소정 매트릭스부분의 데이타를 후보블럭데이타로 출력하는 로우 쉬프트 매트릭스 메모리부 및 이와 같은 동작을 수행하기에 필요로 하는 제반 신호들을 발생하는 제어부로 구성된다. 이와 같은 후보블럭 데이타 공급장치는 모션벡터 측정장치가 실시간내에 동작되도록 하는 효과가 있다.

Description

후보블럭 데이타공급 장치
제1도는 풀 서치 알고리즘에서 기준블럭, 서치 윈도우 및 후보블럭의 개념을 설명하는 도면이다.
제2a도 내지 제2c도는 기준블럭의 크기와 서치윈도우의 크기 및 왜곡배열의 크기를 설명하는 도면이다.
제3도는 모션 추출장치의 계통을 나타낸 블럭도이다.
제4도는 기준블럭의 크기가 16×16이고 서치윈도우의 크기가 31×31인 경우에 서치윈도우 내에 각 셀들이 후보블럭의 최상위좌측픽셀이 될 때 각 후보블럭이 갖는 모션벡터를 나타낸 도면이다.
제5도는 본 발명에 따른 후보블럭 데이타 공급장치의 블럭도이다.
제6도는 제5도에 도시된 컬럼 쉬프트 매트릭스 메모리부의 상세 블럭도이다.
제7도는 제5도에 도시된 로우 쉬프트 매트릭스 메모리부의 상세 블럭도이다.
제8도는 제6도 및 제7도를 결부시켜 나타낸 도면이다.
제9도는 기준블럭의 크기가 16×16이고 서치윈도우의 크기가 31×31인 경우에 제어부를 제외한 후보블럭 데이타공급장치를 제8도에 도시된 U블럭, L블럭 및 B블럭을 사용하여 나타낸 도면이다.
제10도는 제8도에 도시된 U블럭의 각 구성요소로 입출력되는 신호를 설명하는 블럭도이다.
제11도는 제8도에 도시된 L블럭의 각 구성요소로 입출력되는 신호를 설명하는 도면이다.
제12도는 제8도에 도시된 B블럭의 각 구성요소로 입출력되는 신호를 설명하는 도면이다.
제13도는 제9도에 도시된 제1데이타 랫치부 및 제2데이타 랫치부의 동작을 설명하기 위한 타이밍도이다.
제14도는 제10도 및 제11도에 도시된 멀티플렉서들의 동작을 설명하기 위한 타이밍도이다.
* 도면의 주요부분에 대한 부호의 설명
101 : 기준블럭 102 : 서치윈도우
103 : 후보블럭 201 : 모션벡터
202 : 왜곡배열 301 : 데이타 공급부
302 : 프로세스 어레이부 501 : 데이타 랫치부
502 : 컬럼 쉬프트 매트릭스부 메모리부
503 : 로우 쉬프트 매트릭스 메모리부 504 : 제어부
본 발명은 모션 측정 프로세서(motion estimation processor)에 관한 것으로, 특히 풀서치 블럭매칭(Full Search Block Matching) 알고리즘을 사용하는 모션측정 프로세서(motion estimation processor)에서 서치윈도우 데이타를 복수의 후보블럭 데이타로 재배열하여 블럭매칭 알고리즘을 수행하는 블럭으로 공급해주는 후보블럭 데이타 공급 장치에 관한 것이다.
모션 측정은 비디오 화상 압축에서 중요한 역할을 하며, 비디오 신호가 수직상관성이 강하다는 상식적인 관찰에서 착안된 기술로서, 여러가지 방법이 있다. 각 모션측정방법에는 나름대로의 장단점이 있으나, 화상통신이나 다양한 비디오기기상의 호환성문제등을 해결하기 위하여 CCITT 및 ISO(International Organization for Standardization)를 중심으로 표준안(MPEG; Motion Picture Experts Group)이 제안되고 있으며, 각 표준기구를 중심으로 제안된 모션측정방법의 대부분은 풀서치 블럭매칭 알고리즘을 사용하도록 되어 있다.
제1도는 풀서치 블럭매칭 알고리즘을 설명하기 위한 도면으로, 현재프레임내에서 기준블럭(101)이 지정되고, 이전프레임중 기준블럭(101)에 대응되는 부분을 중심으로 하며 기준블럭보다 크기가 큰 서치윈도우(102)가 지정된다. 서치윈도우(102)는 기준블럭(101)과 같은 크기를 갖는 복수의 후보블럭(103)들이 겹쳐진 것으로 해석되며, 복수의 후보블럭들중 기준블럭(101)과 가장 유사한 데이타를 갖는 후보블럭을 찾아 그 후보블럭이 기준블럭(101)에 대하여 갖는 상대위치 즉 모션벡터를 출력하게 된다. 이를 다른 말로 설명하면, 기준블럭(101)과 후보블럭(103)이 갖는 데이타들이 얼마만큼 어 긋나는가를 나타내는 것을 왜곡(distortion)이라 하며, 가장 적은 왜곡을 갖는 후보블럭의 모션벡터가 출력된다. 여기서 왜곡을 산출하는 여러가지 방법이 있으며 대표적인 방법으로는 최소절대오차[MAE(Minimum Absolute Error)]를 산출하는 것이 있다.
제2a도 내지 제2c도는 기준블럭의 크기와 서치윈도우의 크기 및 왜곡배열의 크기를 설명하기로 한다.
제2a도에 나타낸 바와 같이 기준블럭(101)은 가로로 N[0∼N-1]개의 컬럼(column)과 세로로 M[0∼M-1]개의 로우(row)로 구성된다. 예를 들면, MPEG안에 의하면 기준블럭(101)은 16×16의 크기를 갖도록 되어 있다. 제2b도는 기준블럭(101)이 제2a도에 도시한 바와 같은 크기를 가지며, 기준블럭(101)보다 가로로 2Sn-1만큼 크고 세로로 2Sm-1만큼 큰 서치윈도우(102)를 나타낸 것이다. 예를 들면 MPEG에서 서치윈도우(102)는 기준블럭(101)보다 가로로 15만큼 크고(여기서 Sn=8이 된다) 세로로 15(여기서 Sm=8이 된다)만큼 크도록 설정된다. 서치윈도우(102)내에서 포함된 픽셀들은 제2b도에 표시한 바와 같은 로우인덱스과 컬럼인덱스로 표시되며, 이과 같은 로우인덱스와 컬럼인덱스는 해당 픽셀이 최상위좌측에 위치하는 픽셀이 되는 후보블럭(103)에서의 모션벡터가 된다. 로우인덱스 i는 -Sm에서 M+Sm-2의 값을 가지며 컬럼인덱스 j는 -Sn에서 N+Sn-2의 값을 가진다. 이를 MPEG안에 의거하여 나타내면 서치윈도우(102)의 로우인덱스는 -8에서 22까지로 표현되고 세로인덱스도 역시 -8에서 22까지로 포현된다. 제4도는 MPEG안에 따른 서치윈도우내에서의 각 픽셀이 가지는 인덱스 다시 말하면, 그 픽셀이 최상위좌측에 위치하는 후보블럭(103)의 모션벡터를 나타낸 것이다. 이와 같은 크기를 갖는 서치윈도우(102)내에서 후보블럭(103)의 수는 2Sn×2Sm개(MPEG안인 경우에는 256개)가 된다. 또한 각 후보블럭(103)마다 산정되는 왜곡(Distortion)을 저장하기 위한 왜곡배열은 제2c도에 도시한 바와 같이 나타낼 수 있으며, 왜곡배열의 인덱스는 각 후보블럭(103)의 최상위좌측에 위치하는 픽셀이 가지는 인덱스와 동일하게 표현된다. 이상에서 설명한 바와 같이 풀서치 알고리즘을 수행하기 위하여는 서치윈도우(102)를 여러개의 후보블럭(103)으로 나누어 각 후보블럭(103)들과 기준블럭(101)을 일일이 비교하여야 한다. 그런데 통상 정해지는 후보블럭(103)의 수는 매우 크게 되므로, 후보블럭(103)을 순차적으로 선택하여 기준블럭(101)과 비교하는 경우에는 시간적인 손실이 매우 많게 됨을 알 수 있다.
따라서 본 발명의 목적은 서치윈도우(102)내에 포함되는 데이타를 이용하여 복수의 후보블럭(103)들의 데이타를 일시에 공급하도록 함으로써 실시간으로 모션벡터를 추출하도록 하는 후보블럭 데이타 공급장치를 제공하는 것에 있다.
상기 목적을 달성하기 위하여 본 발명인 후보블럭 데이타 공급장치는 현재프레임내에서 정해지는 기준블럭에 의거하여 이전프레임에서 서치윈도우를 설정한 후 서치윈도우 내에서 풀서치 블럭매칭 알고리즘을 수행하여 모션벡터를 구하는 장치에 있어서, 상기 서치윈도우 데이타를 컬럼단위로 랫치하는 데이타 랫치수단, 복수의 메모리들이 매트릭스구조로 형성되어 상기 데이타 랫치수단의 출력을 소정 기간마다 가로 방향으로 쉬프팅시키며 출력하는 컬럼 쉬프트 매트릭스 메모리 수단, 복수의 메모리 및 복수의 멀티플렉서들이 매트릭스구조로 형성되어 상기 컬럼 쉬프트 매트릭스 메모리수단의 출력을 소정 시점마다 그 자신에 포함되는 복수의 멀티플렉서를 통하여 로드한 후 이를 세로방향으로 쉬프팅시키며, 컬럼상으로 상위 소정 부분의 데이타를 후보 블럭 데이타로 출력하는 로우 쉬프트 매트릭스 메모리 수단 및 상기 데이타 랫치수단과 상기 컬럼 쉬프트 매트릭스 메모리수단 및 상기 로우 쉬프트 매트릭스 메모리 수단이 상기와 같은 동작을 수행하기에 요구되는 클럭신호 및 선택신호를 발생하는 제어부를 구비하는 것을 특징으로 한다.
이어서 첨부한 도면을 이용하여 본 발명에 관하여 좀 더 상세히 설명하기로 한다.
제3도는 모션 추출장치의 계통을 나타낸 블럭도로서, 데이타공급부(301), 프로세서 어레이부(302) 및 비교부(303)를 포함하여 구성된다.
제3도에 있어서, 데이타공급부(301)는 기준블럭 데이타 공급부(305) 및 후보블럭 데이타 공급부(306)으로 구성된다. 기준블럭 데이타 공급부(305)는 현재 프레임내에 설정된 기준블럭(101)의 데이타를 프로세서 어레이부(302)를 구성하는 2Sn×2Sm개의 프로세서들로 공통으로 인가한다. 후보블럭 데이타 공급부(306)는 이전 프레임내에 설정된 서치윈도우(102)의 데이타를 입력하여 복수의 후보블럭 데이타들로 변환하여 각 후보블럭 데이타들을 프로세서 어레이부(302)를 구성하는 2Sn×2Sm개의 프로세서들중 해당되는 프로세서로 각각 인가하게 된다.
프로세서 어레이부(302)를 구성하는 2Sn×2Sm의 프로세서는 기준블럭 및 해당 후보블럭의 왜곡을 산출한다. 이렇게 산출된 후보블럭들의 왜곡은 비교부(304)에서 상호 비교되어 가장 작은 왜곡을 갖는 후보블럭이 갖는 모션벡터 및 왜곡이 모션측정장치의 출력으로 나타나게 된다.
제5도는 본 발명에 따른 후보블럭 데이타 공급장치의 블럭도로서, 데이타 랫치부(501), 컬럼 쉬프트 매트릭스 메모리부(502), 로우 쉬프트 매트릭스 메모리부(503) 및 제어부(504)를 포함하여 구성된다. 여기서 본 발명인 후보블럭 데이타 공급장치를 설명함에 있어서 MPEG안을 기준으로 하기로 한다. 즉 기준블럭(101)의 크기가 16×16이고 서치윈도우의 크기가 31×31인 경우에 후보블럭 데이타 공급장치를 설명하기로 한다.
제5도에서, 데이타 랫치부(501)는 서치윈도우 데이타를 순차적으로 31개의 랫치수단에 랫치시키는 기능을 수행하는데, 31은 서치윈도우의 로우숫자를 의미하며 서치윈도우 데이타는 통상 컬럼순서로 입력되며 동일 컬럼내에서는 윗쪽에서부터 아랫쪽으로 인가된다. 그러나 서치윈도우의 로우 숫자가 매우 크게 되어 하나의 컬럼에 해당되는 서치윈도우 데이타를 입력하는데 걸리는 시간이 크게 되면, 도면에 나타낸 바와 같이 서치윈도우를 가로방향으로 나누어 윗부분과 아랫부분으로 나누어 병렬로 입력되도록 할 수 있다. 예를 들면, 윗부분으로 16개의 로우에 해당되는 서치윈도우 데이타(이하 서치윈도우 상위 데이타라 한다)는 제1데이타 랫치부(505)를 통하여 순차적으로 랫치되며, 아랫부분으로 15개로 로우에 해당되는 서치윈도우 데이타(이하 서치윈도우 하위 데이타라 한다)는 제2데이타 랫치부(506)을 통하여 순차적으로 랫치된다. 하나의 컬럼에 해당되는 데이타들이 데이타랫치부(501)에 모두 랫치되면, 제어부(504)에서는 쉬프트클럭을 발생하게 되고 그리하여 랫치부에 있던 내용은 컬럼 쉬프트 매트릭스 메모리부(502)로 인가된다.
컬럼 쉬프트 매트릭스 메모리부(502)는 복수의 메모리들이 매트릭스구조로 형성되어 있으며, 가로방향으로 연결되어 있다. 또한 컬럼 쉬프트 매트릭스 메모리부(502)는 가로 방향으로는 왜곡배열의 가로크기와 동일한 크기를 가지며 세로로는 서치윈도우의 세로크기와 동일한 크기를 갖도록 구성되며, 각 메모리들은 쉬프트클럭이 인가될 때마다 가로방향으로 데이타를 쉬프트시키게 된다. 즉 MPEG안에 의거하는 경우 컬럼 쉬프트 매트릭스 메모리부(502)는 16×31 매트릭스를 형성하는 메모리들로 이루어진다. 이에 대한 보다 구체적인 설명은 제6도를 이용하여 하기로 한다.
로우 쉬프트 매트릭스 메모리부(503)는 복수의 메모리들과 멀티플렉서(MUX)들이 매트릭스구조로 형성되어 있으며, 소정 시점에서 상기 컬럼 쉬프트 매트릭스 메모리부(502)를 구성하는 각 메모리의 내용을 상기 멀티플렉서(MUX)를 통하여 선택적으로 입력한다. 이 때 매트릭스의 크기는 가로 방향으로는 상기 왜곡배열의 가로크기와 동일하고 세로방향으로 서치윈도우의 세로크기보다 하나 작은 크기를 갖는다. 즉 MPEG안인 경우 16×30의 매트릭스로 구성된다. 또한 매트릭스를 구성하는 멀티플렉서를 통하여 선택적으로 입력된 데이타들은 매 클럭마다 로우방향의 윗쪽으로 쉬프트동작됨과 동시에 그중에서 상위로 왜곡배열과 동일한 크기를 갖는 부분의 데이타를 상기 프로세스 어레이부(302)로 동시에 출력하게 된다. 즉 MPEG안인 경우 상위로 16×16 매트릭스에 포함되는 각 멀티플렉서의 출력들이 상기 프로세스 어레이부(302)에 해당 프로세스들로 각각 인가된다. 로우 쉬프트 매트릭스 메모리부(503)에 대한 보다 구체적인 설명은 제7도를 이용하여 하기로 한다.
제어부(504)는 상기 데이타 랫치부(501)와 상기 컬럼 쉬프트 매트릭스 메모리부(502) 및 상기 로우 쉬프트 매트릭스 메모리부(503)들이 상기와 같은 동작을 수행하도록 하기 위하여 제반 클럭신호를 발생하게 된다.
제6도는 제5도에 도시된 컬럼 쉬프트 매트릭스 메모리부의 상세 블럭도로서, 상술한 바와 같이 가로로 왜곡배열과 크기가 같고 세로로는 서치윈도우와 크기가 같은 매트릭스 구조를 갖는 복수의 메모리(LH)들로 구성되며, 각 메모리들은 가로방향으로 상호연결됨과 동시에 그 출력이 상기 로우 쉬프트 매트릭스 메모리부(503)로 인가되도록 되어 있다. 여기서 가장 우측에 도시된 컬럼에 위치하는 메모리(LH)들은 상기 데이타 랫치부(501)의 출력이 인가되며, 가장 좌측에 도시된 컬럼에 위치하는 메모리(LH)들은단지 로우 쉬프트 매트릭스 메모리부(503)로만 인가된다.
제7도는 제5도에 도시된 로우 쉬프트 매트릭스 메모리부의 상세 블럭도로서, 상 술한 바와 같이 멀티플렉서(MUX)와 메모리(LV)가 1조를 이루고 각조들이 매트릭스구조를 형성하되, 가장 하단은 멀티플렉서(MUX) 하나가 1조를 이루게 된다.
제7도에서 알 수 있는 바와 같이 로우 쉬프트 매트릭스 메모리부(503)는 컬럼 쉬프트 매트릭스 메모리부(502)와 비교하여 볼 때 매트릭스중 가장 아랫부분이 하나 제거된 형태로 이루어지며 가장 하단은 하나의 멀티플렉서내(MUX)가 컬럼 쉬프트 매트릭스 메모리부(502)의 가장 하단과 그 윗단의 메모리들의 출력을 선택적으로 입력하도록 되어 있다. 또한 멀티플렉서(MUX)들중 상위로 왜곡배열과 크기가 같은 부분에 위치하는 멀티플렉서(MUX)들의 출력이 상기 프로세스 어레이부(302)로 해당 프로세스들로 각각 연결되어 있다.
이와 같이 구성되는 로우 쉬프트 매트릭스 메모리부(503)의 동작은 다음과 같이 이루어진다. 먼저, 멀티플렉서(MUX)는 소정 시점에서 상기 컬럼 쉬프트 매트릭스 메모리부(502)를 구성하는 각 메모리(LH)의 출력데이타를 선택한 후 그 다음 클럭부터는 로우 쉬프트 매트릭스 메모리부(503)에 속하는 메모리(LV)의 출력데이타를 선택하게 되며, 메모리(LV)들은 매 클럭마다 윗방향으로 데이타를 쉬프트시키게 된다. 또한 가장 하단의 멀티플렉서(MUX)들은 소정 시점에서는 컬럼 쉬프트 매트릭스 메모리부(502)의 가장 하단의 바로 윗단에 위치하는 메모리(LH)들의 출력데이타를 선택하고 그 다음 클럭에는 컬럼 쉬프트 매트릭스 메모리부(502)의 가장 하단에 위치하는 메모리(LH)들의 출력데이타를 선택한다. 그리하여 컬럼 쉬프트 매트릭스 메모리부(502)에 저장된 데이타들이 로우방향으로 매 클럭마다 쉬프트되며, 매 클럭마다 왜곡배열과 동일한 크기를 갖는 상위부분(즉 컬럼인덱스가 -Sm∼Sm-1가 되는 부분)에 위치하는 멀티플렉서로부터 출력되는 데이타가 각 후보블럭 데이타로서 프로세스 어레이부(302)의 해당 후보블럭에 대한 프로세서로 인가된다. 이로써 프로세스 어레이부(302)의 각 프로세서로 각 후보블럭의 하나의 컬럼데이타가 입력되게 된다. 그런 후 다시 컬럼 쉬프트 매트릭스 메모리부(502)의 각 메모리들로 쉬프팅 클럭이 인가되어 컬럼 쉬프트 매트릭스 메모리부(502)의 내용이 갱신된 후 상기와 로우 쉬프트 매트릭스 메모리부(503)가 상기와 같은 동작을 수행하게 되면, 다시 또 하나의 컬럼데이타가 프로세스 어레이부(302)의 각 후보블럭에 대한 프로세서들로 인가되게 된다.
제8도는 제6도 및 제7도를 결부시켜 나타낸 도면이며, 제9도는 기준블럭의 크기가 16×16이고 서치윈도우의 크기가 31×31인 경우에 제어부를 제외한 후보블럭 데이타공급 장치를 제8도에 도시된 U블럭, L블럭 및 B블럭을 사용하여 나타낸 도면이다.
제9도에서, 도면의 중간에 도시된 점선의 윗부분은 왜곡블럭의 크기와 같은 부분으로, 이 부분에 속하는 각 U블럭에서 프로세스 어레이부(302)로 데이타를 출력하게 된다. 즉 MPEG안인 경우 위에서도 지적한 바와 같이 상위로 16×16 매트릭스를 구성하는 U블럭의 출력들이 프로세스 어레이부(302)에 포함되는 해당 프로세서들로 각각 인가된다. 이러한 경우에 후보블럭 데이타를 공급하기 위하여 소요되는 클럭을 살펴보면 다음과 같다.
먼저, 컬럼쉬프트 매트릭스 메모리부(502)에 가장 좌측에 위치하는 메모리(LH)에 서치윈도우 데이타가 로드되기까지 소요되는 클럭 즉 초기화에 소요되는 클럭은 설명하기로 한다. 초기화는 16개의 컬럼을 랫치하는데 소요되는 클럭의 수와 동일하게 된다. 그런데 하나의 컬럼을 랫치하는데 소요되는 클럭이 16이므로 결국 16×16=256클럭이 소요된다.
초기화가 끝나면 바로 후보블럭 데이타를 공급하는 데이타 출력과정이 이루어지는데 이에 소요되는 클럭은 기준블럭이 포함되는 픽셀들의 숫자과 동일하게 된다. 따라서 16×16=256클럭이 소요된다. 이러한 경우 임의의 서치윈도우 데이타를 입력하여후보블럭 데이타의 출력이 개시되기 전까지 요구되는 클럭의 수와 하나의 서치윈도우에 대한 후보블럭 데이타 공급시 요구되는 클럭의 수가 256으로 동일하게 되어 연속적으로 서치윈도우 데이타를 입력하여 후보블럭 데이타를 공급하고자 하는 경우 맨 처음에만 초기화 과정시 256클럭이 요구되고 그 이후로는 이와 같은 클럭의 지연없이 바로 후보블럭 데이타를 공급하게 된다.
제10도는 제8도에 도시된 U블럭의 각 구성요소로 입출력되는 신호를 설명하는 블럭도이고, 제11도는 제8도에 도시된 L블럭의 각 구성요소로 입출력되는 신호를 설명하는 도면이며, 제12도는 제8도에 도시된 B블럭의 각 구성요소로 입출력되는 신호를 설명하는 도면이다.
제10도 내지 제12도에 있어서, 메모리(LH)로는 쉬프팅클럭(SHIFR_CLK)이 인가되며 멀티플렉서(MUX)로는 멀티플렉서 선택신호(MUX_SEL)와 멀티플렉서 인에이블신호(MUX_EN)가 각각 인가된다.
제13도는 제9도에 도시된 제1데이타 랫치부 및 제2데이타 랫치부의 동작을 설명하기 위한 타이밍도로서, CLK는 클럭을 나타내며 CLKO∼CLK15는 제9도에 도시된 제1데이타랫치부 및 제2데이타랫치부의 속하는 각 랫치수단들에 인가되는 신호를 도시한 것이며, SHIFT-CLK는 컬럼 쉬프트 매트릭스 메모리부(502)의 각 메모리(LH)로 인가되는 쉬프팅 클럭의 파형을 나타낸 것이다.
제13도에 나타낸 바와 같이 서치윈도우 상위데이타[r(-8)∼r(7)]과 서치윈도우 하위 데이타[r(8)∼r(22)]는 매 클럭마다 한 픽셀씩 인가되며, 제1 및 제2데이타랫치부의 각 랫치수단들로 인가되는 클럭이 순차적으로 인에이블된다. 그리하여 제1 및 제2 데이타 랫치부는 상술한 바와 같이 하나의 컬럼에 해당되는 서치윈도우 데이타를 랫치하게 된다. 또한 쉬프팅클럭(SHIFT-CLK)는 매 15개의 클럭(CLK)중 마지막 클럭에서인에이블되게 된다. 그리하여 데이타랫치부에서 하나의 컬럼에 해당되는 서치윈도우데이타가 모두 랫치된 후에 컬럼 쉬프트 매트릭스 메모리부(502)에서 가로방향의 쉬프팅동작이 일어나게 된다. 또한 클럭(CLK)마다 로우 쉬프트 매트릭스 메모리부(503)에서윗방향으로 쉬프팅동작을 수행시 15개의 클럭이 소요되면 컬럼 쉬프트 매트릭스 메모리부(502)의 가장 하단의 데이타가 제9도에 도시된 점선의 윗부분중 가장 하단에 속하는 멀티플렉서를 통하여 출력되게 된다. 즉 로우방향으로의 쉬프팅동작 또한 15개의 클럭동안 완료되게 된다.
제14도는 제10도 및 제11도에 도시된 멀티플렉서들의 동작을 설명하기 위한 타이밍도로서, MUX_EN은 멀티플렉서 인에이블신호를 나타낸 것이고, MUX_SEL은 멀티플렉서 선택신호를 나타낸 것이다.
제14도에 있어서, 멀티플렉서는 컬럼 쉬프트 매트릭스 메모리부(502)중 가장 왼쪽에 위치하는 컬럼에 데이타가 기입된 이후부터 인에이블됨을 알 수 있다. 또한 멀티플렉서는 인에이블된 후 매 15클럭중 한 클럭동안 로우가 됨을 알 수 있다.
상술한 바와 같이 본 발명은 모션벡터 측정장치에서 서치윈도우 데이타를 후보블럭데이타로 재배열하여 공급하는 후보블럭 데이타 공급장치에 관한 것으로, 실시간처리가 가능한 이점이 있다. 즉 비디오속도에 대응되는 화상처리가 수행되는 것이 가능하게 된다.

Claims (3)

  1. 현재프레임내에서 정해지는 기준블럭에 의거하여 이전프레임에서 서치윈도우를 설정한 후 서치윈도우 내에서 풀서치 블럭매칭 알고리즘을 수행하여 모션벡터를 구하는 장치에 있어서, 상기 서치윈도우 데이타를 컬럼단위로 랫치하는 데이타 랫치수단, 복수의 레지스터들이 가로로는 상기 서치윈도우의 컬럼수에서 상기 기준블럭의 컬럼수를 감산한 수보다 1이 크며 세로로는 상기 서치윈도우의 로우수와 동일한 크기를 갖는 매트릭스 구조를 형성되며 동시에 가로방향으로 직렬로 연결되어, 상기 데이타 랫치수단의 출력을 쉬프팅 클럭마다 가로방향으로 데이타를 쉬프팅함과 동시에 출력하는 컬럼 쉬프트 매트릭스 메모리 수단, 복수의 메모리 및 복수의 멀티플렉서들이 매트릭스구조로 형성되어 상기 컬럼 쉬프트 매트릭스 메모리수단의 출력을 소정 시점마다 상기 멀티플렉서를 통하여 로드한 후 이를 세로방향으로 쉬프팅시키며, 상위 소정부분의 데이타를 후보 블럭 데이타로 출력하는 로우 쉬프트 매트릭스 메모리 수단, 및 상기 데이타 랫치수단과 상기 컬럼 쉬프트 매트릭스 메모리수단 및 상기 로우 쉬프트 매트릭스 메모리 수단이 상기와 같은 동작을 수행하기에 요구되는 클럭신호 및 선택신호를 발생하는 제어부를 구비하는 것을 특징으로 하는 후보블럭 데이타 공급장치.
  2. 제1항에 있어서, 상기 로우쉬프트 매트릭스 메모리수단은 하나의 레지스터와 하나의 멀티플렉서가 단위로서 상기 컬럼 쉬프트 매트릭스 메모리수단보다 로우수가 2적은 매트릭스가 구성되고, 그 밑단에 하나의 멀티플렉서를 단위로 하여 로우매트릭스가 추가적으로 구성되며, 동일한 컬럼에 속하는 메모리 및 멀티플렉서가 상호 교대로 직렬로 연결되어 소정 시점에서 멀티플렉서를 통하여 외부로부터 데이타가 선택된 후 세로방향으로 데이타가 쉬프팅되도록 한 것을 특징으로 하는 후보블럭 데이타 공급장치.
  3. 제2항에 있어서, 상기 로우 쉬프트 매트릭스 메모리수단의 가장 하단을 구성하는 멀티플렉서들은 소정 시점마다 상기 컬럼 쉬프트 매트릭스 메모리수단의 가장 하단에서 바로 윗단을 구성하는 메모리들로부터 출력되는 데이타를 선택하고 그 다음에는 컬럼 쉬프트 매트릭스 메모리수단의 가장 하단을 이루는 메모리들로부터 출력되는 데이타를 선택하는 것을 특징으로 하는 후보블럭 데이타 공급장치.
KR1019930005533A 1993-03-31 1993-03-31 후보블럭 데이타공급 장치 KR100189876B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930005533A KR100189876B1 (ko) 1993-03-31 1993-03-31 후보블럭 데이타공급 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930005533A KR100189876B1 (ko) 1993-03-31 1993-03-31 후보블럭 데이타공급 장치

Publications (2)

Publication Number Publication Date
KR940023271A KR940023271A (ko) 1994-10-22
KR100189876B1 true KR100189876B1 (ko) 1999-06-01

Family

ID=19353414

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930005533A KR100189876B1 (ko) 1993-03-31 1993-03-31 후보블럭 데이타공급 장치

Country Status (1)

Country Link
KR (1) KR100189876B1 (ko)

Also Published As

Publication number Publication date
KR940023271A (ko) 1994-10-22

Similar Documents

Publication Publication Date Title
KR100273629B1 (ko) 이동 벡터 평가 방법 및 장치
KR0167767B1 (ko) 화상의 움직임검출회로
KR0160618B1 (ko) 실시간 움직임 추정장치 및 그 방법
US4747154A (en) Image data expanding and/or contracting method and apparatus
KR100416444B1 (ko) 모션벡터선택방법및이방법을수행하는이미지처리장치
US5659364A (en) Motion vector detection circuit
US4885787A (en) High-speed digital image processing apparatus
KR100407691B1 (ko) 계층탐색을 이용한 움직임 추정장치 및 방법
US8064523B2 (en) Motion vector search apparatus
US20090067015A1 (en) Block matching circuit and data update method
KR100189876B1 (ko) 후보블럭 데이타공급 장치
AU2388188A (en) Parallel pipeline image processor with 2 x 2 window architecture
US6990149B2 (en) Circuit and method for full search block matching
US5953458A (en) Method and device for motion estimation
GB2214751A (en) Video signal coding
KR100975454B1 (ko) 화상 처리 장치
JP3041658B2 (ja) 高並列動き補償演算器
KR100282614B1 (ko) 저 전송률 비디오 코덱을 위한 움직임 예측장치
US6198771B1 (en) Motion vector processing circuit
KR100359091B1 (ko) 움직임추정장치
JP4170173B2 (ja) ブロックマッチング演算装置
KR100232971B1 (ko) 가변블럭 적용이 가능한 움직임 추정기
US10816592B2 (en) Sampling clock testing circuit and sampling clock testing method
JP2618146B2 (ja) 動きベクトル検出回路
KR100195696B1 (ko) 프레임 움직임 추정장치

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: 20071221

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee