KR100604169B1 - 화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출기술 - Google Patents

화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출기술 Download PDF

Info

Publication number
KR100604169B1
KR100604169B1 KR1020027016708A KR20027016708A KR100604169B1 KR 100604169 B1 KR100604169 B1 KR 100604169B1 KR 1020027016708 A KR1020027016708 A KR 1020027016708A KR 20027016708 A KR20027016708 A KR 20027016708A KR 100604169 B1 KR100604169 B1 KR 100604169B1
Authority
KR
South Korea
Prior art keywords
mode
sad
block
search
image processing
Prior art date
Application number
KR1020027016708A
Other languages
English (en)
Other versions
KR20030025240A (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 KR20030025240A publication Critical patent/KR20030025240A/ko
Application granted granted Critical
Publication of KR100604169B1 publication Critical patent/KR100604169B1/ko

Links

Images

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/557Motion estimation characterised by stopping computation or iteration based on certain criteria, e.g. error magnitude being too large or early exit
    • 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/43Hardware specially adapted for motion estimation or compensation
    • 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

Abstract

본 발명에 따르면, 복수개의 SAD 장치는 비디오 스트림에서 특정 화상의 특정 부분간의 왜곡을 계산하는데 이용된다. 비디오는 비디오 카메라 또는 다른 장치로부터 출력될 수 있다.

Description

화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출 기술{ADAPTIVE EARLY EXIT TECHNIQUES FOR MINIMUM DISTORTION CALCULATION IN IMAGE CORRELATION}
화상 압축 기술은 비디오 애플리케이션에서 전송될 데이터량을 감소시킬 수 있다. 이것은 흔히 동일함을 유지하고 있는 화상의 부분들을 결정함으로써 이루어진다. "움직임 추정(motion estimation)" 기술은 각종 비디오 코딩 방법에서 이용된다.
움직임 추정은 일부의 프레임 N에 속하는 소스 블록과 탐색 영역 간의 최상의 정합을 발견하고자 하는 시도이다. 탐색 영역은 동일한 프레임 N 내에 있을 수 있거나 또는 일시적으로 변위된 프레임 N-k의 탐색 영역 내에 있을 수 있다.
이들 기술은 계산 집약형이다.
움직임 추정은 흔히 SAD, 즉 "SAD(Sum of Absolute Differences)"를 계산함으로써 수행된다. 움직임 추정은 비디오, 비디오 카메라, 비디오 액셀러레이터accelerator) 및 이러한 다른 장치를 이용하는 휴대 전화기를 포함하지만 한정되지는 않는 많은 상이한 애플리케이션에서 사용될 수 있다. 이들 장치는 비디오 신호를 출력으로서 생성한다. SAD는 소스 블록과, 탐색 영역의 탐색 블록 내의 복수개의 블록간의 최소 왜곡, 즉 이들 블록들간의 최상의 정합을 식별하는데 흔히 이용되는 계산이다. 이것을 표현하는 하나의 방법은 다음 수학식과 같다.
Figure 112002040665557-pct00001
개념적으로, 이것이 의미하는 것은 제1 프레임 또는 소스 블록(N)이 M ×N 소스 블록(100)의 구성 요소 부분으로 나뉜다는 것이다. 이들은 제2 프레임 (N-K)(102)과 비교된다. 프레임들은 k ≠0인 경우에 일시적으로 변위될 수 있다. 각 N-K 프레임(102)은 M + 2m1 ×N + 2n1 영역이다. 도 1에는 그 영역의 중앙에 소스 블록(100)이 도시되어 있다. 정합하는 화상의 부분은 왜곡 측정기를 이용하여 각 화상 프레임의 각 부분을 다른 화상 프레임과 상관시킴으로써 검출될 수 있다. 압축 장치는 이 검출을 이용하여 데이터를 압축하며, 이에 따라 화상에 관한 보다 적은 정보를 전송한다.
이 장치는 또한 범용 DSP의 일부일 수 있다. 이러한 장치는 비디오 캠코더, 원격지 회의(teleconferencing), PC 비디오 카드 및 HDTV에서의 이용에 고려되고 있다. 또한, 범용 DSP는 이동 전화기, 음성 인식(speech recognition) 및 다른 애플리케이션에서 이용되는 음성(voice) 처리와 같은 디지털 신호 처리를 이용하는 다른 기술에 관련된 용도로도 고려되고 있다.
전체 왜곡 검출 프로세스의 속도는 증가할 수 있다. 그 하나의 방법으로는 각 SAD 장치가 1 사이클 내에 보다 많은 연산을 수행할 수 있는 하드웨어를 이용하는 것이다. 그러나, 이것은 보다 고가의 하드웨어를 필요로 할 수 있다.
다른 하나의 방법으로는 추가의 SAD 장치를 부가하여 효과적인 화소 처리량을 증가시키는 것이다. 그러나, 이것도 또한 보다 많은 SAD 장치를 필요로 하기 때문에 비용을 증가시킬 수 있다.
보다 빠른 탐색 알고리즘은 기존의 하드웨어를 보다 효과적으로 이용하려고 시도하고 있다.
블록 SAD는 소스 그룹을 "탐색 그룹"과 비교한다. 소스 그룹과 탐색 그룹은, SAD 동작이 이 두 개의 그룹간의 중첩(overlap)을 계산하도록 전체 화상에 걸쳐서 이동한다. 소스 그룹 내의 각 블록은 각각의 탐색 영역 내의 복수개의 블록과 비교된다.
전형적인 SAD 유닛은 두 개의 16 ×16 요소 상에 대해 동작하여 이들 요소들 서로에 대해 중첩시킨다. 이 중첩 프로세스는 16 ×16 = 256 개의 차분을 계산한다. 이어서, 이들은 총 왜곡을 나타내기 위해 누산된다.
SAD는 특정한 기초 동작을 필요로 한다. 소스 Xij와 탐색 Yij 사이의 차분이 형성되어야 한다. 절대값
Figure 112005034456854-pct00002
이 형성된다. 최종적으로, 그 값들이 누산(
Figure 112005034456854-pct00003
)된다.
도 2에는 기본적인 누산 구조가 도시되어 있다. 산술 논리 유닛(200)은 Xij 및 Yij를 그에 연결된 데이터 버스(198, 199)로부터 수신하여 Xij - Yij를 계산한다. 출력(201)은 인버터(202)에 의해 반전된다. 반전된 출력과 원래의 것 양쪽 모두는 부호 비트(205)에 기초하여 그 값들 중 하나를 선택하는 멀티플렉서(204)로 전송된다. 제2 산술 논리 유닛(206)은 이들을 조합하여 절대값을 형성한다. 최종값은 누산 레지스터(208)에 저장된다. 효과적으로는, 도 2에 도시된 바와 같이, 이것은 감산, 절대값 계산, 누산의 시스템을 형성한다.
도 2는 1 개의 SAD 계산 유닛을 도시하고 있다. 상기한 바와 같이, 처리량을 증가시키기 위해 복수개의 계산 유닛을 이용할 수 있다. 계산 유닛의 수가 증가되면, 이론상으로는 사이클당 화소 처리량이 증가된다.
그러나, 본 발명자는 화소 처리량의 증가가 유닛의 수에 반드시 선형적으로 관련되지는 않음에 주목하였다. 사실, 각 프레임은 그의 인접하는 프레임과 다소 상관되어 있다. 또한, 소정의 화상의 상이한 부분은 그 화상의 또 다른 부분과 상관되어 있는 경우가 많다. 압축 효율은 화상의 특성에 기초할 수 있다. 본 출원은 압축 효율에 따라 복수개의 SAD 장치를 상이한 모드로 이용하는 것을 허용한다.
도 1은 서로에 대해 비교되어 있는 소스 블록과 탐색 블록을 도시하는 도면.
도 2는 왜곡을 측정하기 위한 기본 누산 유닛을 도시하는 도면.
도 3a 및 도 3b는 복수개의 SAD 유닛들간 계산의 상이한 분할을 도시하는 도면.
도 4는 조기 탈출 전략에 의한 계산과 실제의 총 계산간의 타협을 도시하는 도면.
도 5는 조기 탈출 전략을 도시하는 흐름도.
도 6a는 조기 탈출 플래그를 이용하는 조기 탈출을 도시하는 도면.
도 6b는 하드웨어 상태 레지스터를 이용하는 조기 탈출을 도시하는 도면.
도 7은 적응형 조기 탈출 전략의 동작을 도시하는 흐름도.
상세한 설명
이하, 이들 및 다른 측면은 첨부 도면을 참조하여 상세히 설명될 것이다.
본 출원은 도 3a 및 도 3b에 도시된 구조를 이용한다. 도 3a 및 도 3b 양쪽 모두에 동일한 접속이 이용되지만, 계산은 상이한 방법으로 구획된다.
도 3a는 전체의 SAD로서 구성된 각 SAD 장치(300, 302)를 도시한다. 각 SAD는 상이한 블록을 수신하여 N 개의 블록 SAD 계산을 제공한다. 따라서, 효과적으로는, 유닛 1(300)은 16 ×16 기준과 16 ×16 소스간의 관계를 한 화소씩 계산한다. 유닛 2(302)는 16 ×16 소스와 16 ×16 탐색의 차의 결과를 한 화소씩 계산한다. 도 3b는 다른 예를 도시한다. 이 다른 예에서는, 각 단일 SAD 장치(300, 302)의 구성은 단일 블록 SAD 계산의 일부분을 수행한다. N 개의 계산 유닛의 각각은 1/N의 출력을 제공한다. 이 "부분적인 SAD" 연산은 각각의 8 비트의 감산·절대값 계산·누산 유닛이 전체 SAD의 계산 중 1/N을 계산하도록 구성되었음을 의미한다.
전체 또는 부분을 결정하는 전체 시스템은 본 명세서에 개시된 바와 같이 이전의 결과에 기초하여 이용되어야 한다. 이것은 따라서, 수행되는 계산의 수를 저감시킬 수 있다.
전체를 이용할 것인지 부분을 이용할 것인지를 결정하는 하나의 방법은 일시적으로 가까운 화상이 상관된 성질을 갖는다고 가정하는 것이다. 제1 사이클은 전체 SAD 모드를 이용하여 계산되고, 제2 사이클은 부분 SAD 모드를 이용하여 계산된다. 보다 빠르게 동작하는 사이클을 승리자로서 취급하여 SAD 모드를 설정한다. 이 계산은 x 회의 사이클마다 반복될 수 있는데, 여기서 x는 사이클 수이며, 이 사이클 수 이후에는 국부적인 일시적 상관을 더 이상 가정할 수 없다. 이것은 본 명세서에 개시되는 도 7의 흐름도를 수행하는 논리 유닛에서 행해질 수 있다.
처리량은 또한 본 명세서에 개시된 바와 같이 "조기 탈출(early exit)" 기술에 의해 증가될 수 있다.
16 ×16 요소에 대한 완성된 SAD 계산은
Figure 112002040665557-pct00004
로서 기재될 수 있다. 이들 계산 모두가 실제적으로 수행된 경우, 계산은 256/N 사이클을 취할 수 있으며, 여기서 N은 SAD 유닛의 수이다. 이것은, 계산을 가능한 한 바로 중지하는 것에 바람직하다. 계산의 중간(interim) 결과가 테스트된다. 이들 중간 결과는 최소 왜곡을 발견하기 위해 충분한 정보가 결정되었는지 여부를 결정하는데 이용된다. 그러나, 테스트 행위는 사이클을 소비할 수 있다.
본 출원은 이 사이클의 소비와 최소 왜곡의 결정 사이의 균형을 설명한다. 도 4는 4 개의 SAD 장치를 이용하는 16 ×16 계산에 대한 타협을 도시한다. 도 4의 라인(400)은 조기 탈출이 존재하지 않을 때의 사이클 카운트를 나타낸다. 이 라인은 조기 탈출이 없는 사이클 카운트는 항상 256/4 = 64임을 나타내는 수평선이다. 조기 탈출 전략에 대한 사이클 카운트는 사선(402, 404, 406, 408)으로 도시된다. 라인(404)은 16 개의 화소마다 1 회의 테스트를 나타내고, 라인(406)은 32 개의 화소(1/8)마다 1 회의 테스트를 나타내며, 라인(408)은 64 개의 화소(1/16)마다 1 회의 테스트를 나타낸다. 라인(402∼408)이 라인(400) 위에 있을 때, 조기 탈출의 시도가 전체 왜곡 계산 시간을 실제적으로 증가시킴을 주목하자. 라인(402)은 탈출 테스트에 대해 제로 오버헤드(zero overhead)가 얻어진 곳의 사이클 소비를 나타낸다.
블록 I는 최소 왜곡을 발견하기 위해 종래기술에 공지된 통상의 전략을 이용하여 첫 번째로 처리된다. 이것은 왜곡을 발견하기 위해서, 실제 화상의 일부인 테스트 패턴을 이용하여 이루어질 수 있다. 이 최소 왜곡은 기준선으로서 이용되며, 블록 I + n(여기서, n은 작음)이 동일한 최소 왜곡을 가짐을 가정한다. 두 개의 기초 파라미터가 사용된다.
Kexit(N)은 조기 탈출이 달성되기 전에 탐색 영역에 대해 이미 처리된 화소의 수를 나타낸다.
Aexit(N)은 탐색 영역에 대한 최종 조기 탈출시의 부분적인 누산기 부호 비트의 상태를 나타낸다.
이들 블록 I + n의 경우, SAD 계산은 왜곡이 그 임계치를 초과할 때 종료된다. 이것은 탐색 영역에 관해 공지되어 있는 이전의 정보를 이용하여 인과 시스템(causal system)을 형성한다.
이 통상의 시스템은 때때로 공통 특성을 유지하는 몇 가지 확률인 탐색 영역 내의 화상 특성에 기초한다. 프레임들간 시간은 1/15 및 1/39 초이며, 흔히 측정가능한 시스템 특성에 관련된 일부의 잡음 층 위에 이들 시간 중에 최소 변화가 발생할 만큼 충분히 빠르다. 또한, 유사한 일시적 특성을 어떤 시간 동안 유지하는 화상 영역이 존재하는 경우도 많이 있다.
본 출원에 따르면, 각 SAD에 대한 누산기에는 값[- least/n]이 로드되고, 여기서 "least"는 그 영역에 대해 블록 움직임 탐색시에 측정되는 최소 왜곡을 나타낸다. 많은 SAD가 각 탐색 영역에 대해 계산된다. 그 영역에 관하여 계산하는 제1 SAD는 "least" 지정을 할당받는다. 향후 SAD는 이 제1 SAD와 비교되어, 새로운 "least"값이 달성되었는지를 확인한다. 누산기가 부호를 변경할 때, 최소 왜곡에 도달되어 있다. 또한, 이것은 추가의 계산, 즉 테스트를 위한 추가의 사이클(들)이 없이 기존의 SAD 구조만을 이용하는 것을 나타낸다.
화상의 특성 테스트는 조기 탈출을 달성하기 전에 전환하는데 얼마나 많은 누산기가 필요한지를 결정하기 위해 이용될 수 있다. 예를 들면, 소스 영역 및 목표 영역이 전체적으로 동일한 경우, 모든 누산기는 동시에 다소간 부호를 변경하여야 한다. 이것이 발생될 때, 이전의 최소 측정을 초과하는 동작중인 SAD 계산 중 어느 하나를 이용하여 조기 탈출이 적절함을 표시한다.
그러나, 이것은 전체 화상의 동일성을 가정한다. 이러한 가정은 항상 유지되지 못한다. 많은 상황에 있어서, 상이한 SAD 유닛의 복수개의 누산기가 동일한 레이트로 증가되지 않을 것이다. 또한, 누산기들간의 상이한 증가 레이트는 소스 블록과 목표 블록간의 차이 그 자체의 공간 주파수 특성 및 데이터의 샘플링 방법에 직접 관련되어 있다. 이것은 SAD 유닛에 의해 발생된 것에 기초하여, 조기 탈출을 결정하는 방법을 고려하는 보다 복잡한 방법을 필요로 한다.
1 회의 동작은 분리된 SAD 상태와 관련된 확률에 기초하며, 여기서 SAD 유닛 모두가 동일한 상태에 있는 것은 아니다. 누산기들간 증가 레이트의 차이는 소스 블록과 목표 블록간 차이의 공간 주파수 특성에 관련된다. 이들 공간 주파수 특성은 또한 일시적으로 유사한 프레임들간에 상관되기 때문에, 하나의 프레임으로부터의 정보는 후속하는 프레임의 분석에도 적용될 수 있다.
이것은 본 명세서에서 변수를 참조하여 설명된다. 여기서, A1, A2, A3 ... An은 분리된 SAD 계산과 관련된 이벤트로서 정의된다.
이벤트는 다음과 같이 정의될 수 있다:
이벤트 Ai = SADi ≥0, 여기서 i ≠j인 경우에는 SAD < 0이다.
이것은, 개념적으로 이벤트 Ai를 SAD 유닛 i가 양수이고 모든 나머지 SAD 유닛이 음수일 때 발생하는 것으로서 정의함을 의미한다. 이것은, 예를 들어 누산기가 상이한 비율로 증가할 때 발생할 것이다. 이것은 또한 조합된 이벤트, 특히 SADj ≥0인 경우, 이벤트
Figure 112002040665557-pct00005
(여기서, k ≠i, j인 경우, SADk < 0)로서 정의될 수 있다. 이것은, 이벤트 Bi,j는 Ai가 존재하고, Aj가 참(true)일 때 "참"으로서 정의되지만, 다른 모든 Ak는 거짓(false)임을 의미한다. 이벤트에 의해서 동작을 정의하는 개념은 i, j 및 k의 모든 가능한 조합을 포함하도록 확장될 수 있다. 이것은 4 개의 SAD 유닛인 경우 총 16 개의 조합을 산출한다. SAD 유닛의 수가 보다 많은 경우, 다른 수의 조합과, i, j, k 및 m 또는 다른 것과 같은 보다 많은 변수의 이용을 유도한다.
이 시나리오를 말로 설명하면, 각 이벤트 "B"는 0보다 큰 특정 누산기의 합으로서 정의된다. 각각의 이들 조합은 확률로서 정의된다. 4 개의 SAD 유닛의 경우, 총 16 개의 가능한 누산기 상태가 존재한다. 이들은 그들이 처리되는 방법에 따라 그룹화될 수 있다.
제1 자명한 확률(trivial possibility)은
Figure 112002040665557-pct00006
이다.
이것은 모든 누산기가 0을 초과하지 않으면, 누산기의 합이 > 0일 확률은 0임을 의미한다.
그 역도 또한 성립하는데,
Figure 112002040665557-pct00007
이며,
이것은 모든 누산기가 세트되지 않으면, 모든 누산기의 합이 세트될 확률도 역시 1임을 의미한다.
이들 자명한 특성을 제외하면, 14 개의 자명하지 않은 조합이 있다. 제1 그룹은 누산기 중 하나가 세트되고 나머지 3 개는 세트되지 않는 4 개의 경우를 포함한다.
Figure 112002040665557-pct00008
,
Figure 112002040665557-pct00009
,
Figure 112002040665557-pct00010
,
Figure 112002040665557-pct00011
.
또 다른 그룹은 누산기 중 두 개가 세트되고 다른 두 개의 누산기는 세트되지 않는 조건을 나타낸다. 이들 조합은 다음과 같이 나타낸다.
Figure 112002040665557-pct00012
Figure 112002040665557-pct00013
Figure 112002040665557-pct00014
Figure 112002040665557-pct00015
Figure 112002040665557-pct00016
Figure 112002040665557-pct00017
최종적으로, 다음의 그룹은 3 개의 누산기가 세트되고 1 개의 누산기는 세트되지 않는 경우를 나타낸다.
Figure 112002040665557-pct00018
Figure 112002040665557-pct00019
Figure 112002040665557-pct00020
Figure 112002040665557-pct00021
이 실시예에서는 각각의 이들 그룹, 즉 사실상 이들 각각의 상황이 화상의 상이한 조건을 나타냄을 인식한다. 각 그룹 또는 각 상황이 다르게 처리될 수 있 다.
이 시스템은 상기한 바와 같이 그리고 도 5의 흐름도를 참조하여 설명한 바와 같이 동작한다. 최종 목표는 계산을 신속히 완료하여 탈출하는 것이다. 이것은 도 5에서, 처음에 550에서 두 개의 화상, 즉 소스 화상 및 탐색 화상의 정합 특성을 결정하는 것으로 나타나 있다. 이 정합 특성은 조기 탈출이 없이 계산된다. 555에서 최소 왜곡이 발견되며, 560에서 이 최소 왜곡이 존재할 때의 조건이 발견된다.
560에서의 조건은 최소 왜곡 시에 존재하는 그룹화 타입 또는 14 개의 확률간의 특정 조건을 포함할 수 있다.
570에서, 후속하는 화상 부분이 테스트된다. 이 후속하는 부분은 테스트 부분과 상관되는 소정의 부분일 수 있다. 일시적으로 상관된 화상이 상관된 것으로 가정하기 때문에, 이것은 소정의 일시적으로 상관된 부분까지 확장될 수 있다.
화상 소스 및 탐색이 테스트되며, 575에서 최소 왜곡 시에 발생되는 특정 그룹화의 결정이 발견된다. 이어서, 580에서, 조기 탈출이 달성된다.
조기 탈출(일단 결정되면)은 복수개의 상이한 방법으로 수행될 수 있다.
도 6a는 조기 탈출, 즉 "EE" 플래그를 이용하여 조기 탈출을 수행하는 시스템을 도시한다. N 개의 SAD 유닛이 도시되어 있는데, 이 실시예에 있어서 N은 4이다. 각 SAD 유닛은 상기한 구조와 구체적으로 ALU, 인버터 및 누산기를 포함한다.
각각의 누산기의 출력은 그 출력을 정렬하는 조합 논리 유닛(600)에 결합되어 있다. 이 조합 논리 유닛(600)은 상기한 그룹 결정을 수행하는데 이용된다. 조 합 논리 유닛은, 예를 들어 하드웨어 정의 언어로 정의된 이산 논리 게이트를 이용하여 수행된다. 게이트는 선택된 그룹에 기초한 옵션에 따라 프로그램된다. 상이한 화상 및 부분은 상이한 옵션에 따라 처리될 수 있다.
각 옵션의 경우, 상태의 조합, 예컨대 상기한 그룹은 코딩된다. 조합 논리는 모든 SAD 유닛의 누산기를 감시한다. 각 상태는 멀티플렉서로 출력된다.
이들 누산기가 선택된 코딩 내에 속하는 상태를 달성할 때, 조기 탈출 플래그가 생성된다. 이 조기 탈출 플래그는 하드웨어가 적절한 "적합(fit)"을 결정하였음을 의미한다. 이것에 의해 동작이 탈출한다.
도 6b는 누산기의 상태가 하드웨어 상태 레지스터(602)에 의해 감지되는 다른 시스템을 도시한다. 상태 레지스터는 누산기의 조건에 의해 특정 상태로 설정된다. 상태 레지스터는 조기 탈출을 나타내는 특정 조건을 저장하고 있다. 그 특정 조건에 도달하면, 조기 탈출이 확립된다.
적응형 조기 탈출을 이용하는 방법이 도 7을 참조하여 전반적으로 설명된다. 700에서, 비디오 프레임이 개시된다. 705는 프레임 M 및 프레임 M + 1 양쪽 모두의 버퍼링을 나타낸다. 710은 블록 이력 모델의 갱신이 필요한 지에 대한 결정이다. 이것은, 예를 들어 이전 프레임이 갱신된 후의 시기를 감시함으로써 결정된다. 예를 들면, 새로운 갱신이 필요하기 전의 시간으로서 x 초가 확립될 수 있다.
블록 이력 모델이 갱신을 필요로 하는 경우, 처리는 715에서 0xFF01을 누산기에 로드하고 국부 변수 N = 1을 설정함으로써 계속된다. 720에서, 시스템은 SAD 탐색 영역 N을 얻고 주기적 탈출 테스트 Texit = 1/16 ...를 이용하며, 단계 725에서, 탈출 테스트가 수행된다. 성공적인 경우, 탈출 전의 화소인 국부 변수 Kexit(N)와, 탈출 전의 누산기 1 내지 누산기 4의 개요인 Aexit(N)은 재저장된다. 국부 변수 n은 또한 730에서 증분된다. 이것은 국부 파라미터를 확립하며, 처리가 계속된다.
후속 사이클에 있어서, 갱신의 블록 이력은 단계 710에서 재수행될 필요가 없으며, 이에 따라 단계 735로 제어가 진행된다. 이 단계에서, 이전에 저장되어 있는 Kexit 및 Aexit가 판독된다. 이것은 단계 740에서 새로운 카운트로서 이용되어 목표 블록 플래그를 설정한다.
단계 745에서, 블록 N에 대한 탐색이 확립되며, 단계 750에서 Aexit 및 Kexit가 갱분된다. N이 증가된다. 단계 755에서, N이 397과 동일한지 여부의 결정이 행해진다. 352 ×288 화상 내에 396 개의 16 ×16 블록이 존재하기 때문에, 버퍼 내의 프레임의 수로서 397이 취해진다. 그러나, 이것은 적용 가능성에 따라서 상이한 크기의 사이즈로 조절될 수 있을 것이다.
다시, 화상의 대량의 부분의 일시적인 변동은 변경되지 않고 남아 있기 쉽다. 따라서, 부분적인 누산기가 특정 부호 비트를 가질 때, 그들의 상태는 상당한 이점을 생성한다. 또한, 프레임들간 시간은 통상적으로 1/15∼1/30 초의 배수이다. 최종적으로, 화상 내의 영역은 그들의 국부화된 특성을 유지하며, 이에 따라 그들의 공간 주파수가 상관될 수 있다.
비록 소수의 실시예가 개시되어 있다 하더라도, 다른 변경예가 가능함은 당업자에게 명백할 것이다.

Claims (23)

  1. 현재 화상 프레임의 어느 한 소스 블록과 가장 유사한 블록을, 이전 화상 프레임의 탐색 영역내의 탐색 블록들로부터 선택하는 장치에 있어서,
    상기 소스 블록과 상기 탐색 블록들 각각과의 유사성을 계산하는 복수개의 화상 처리 장치와,
    제1 모드와 제2 모드 간에 전환가능한 모드 전환 소자를 포함하고,
    상기 소스 블록과 어느 한 탐색 블록간의 유사성을 계산하는데 있어서, 상기 제1 모드시에는 하나의 화상 처리 장치가 상기 유사성을 계산하고, 상기 제2 모드시에는 적어도 두 개의 화상 처리 장치가 분담하여 상기 유사성을 계산하는 것인 장치.
  2. 제1항에 있어서, 상기 유사성을 계산하는 화상 처리 장치는 SAD(sum of absolute difference) 계산 장치인 것인 장치.
  3. 제2항에 있어서, 상기 제1 모드는, 상기 SAD 계산 장치들 각각이 상이한 탐색 블럭을 각각 수신하고 전체 소스 블럭(a whole source block)과 전체 탐색 블록(a whole search block) 간의 차이를 계산하는 전체 SAD 모드(whole SAD mode)인 것인 장치.
  4. 제3항에 있어서, 상기 SAD 계산 장치들 각각은 16 ×16 탐색 블럭과 16 ×16 소스 블럭간의 차이를 화소별로 계산하는 것인 장치.
  5. 삭제
  6. 제2항에 있어서, 상기 제2 모드는, 상기 SAD 계산 장치들이 N개 있고 상기 N개의 SAD 계산 장치 각각이 전체 출력의 1/N을 제공하는 모드인 것인 장치.
  7. 제1항에 있어서, 상기 제1 모드 또는 상기 제2 모드를 결정하여 선택하는 테스트 소자를 더 포함하는 것인 장치.
  8. 삭제
  9. 제1항에 있어서, 상기 모드들 중 어느 모드가 원하는 결과를 생성할지를 검출하고, 상기 모드 전환 소자를 상기 원하는 결과를 생성하는 모드로 구성하는 논리 유닛을 더 포함하는 장치.
  10. 제9항에 있어서, 상기 논리 유닛은 상기 모드들 중 어느 모드가 원하는 결과를 생성할지를, 상기 소스 블록과 상기 탐색 블록들 각각의 특성에 따라 검출하는 것인 장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 현재 화상 프레임의 어느 한 소스 블록과 가장 유사한 블록을, 이전 화상 프레임의 탐색 영역내의 탐색 블록들로부터 선택하는 방법에 있어서,
    상기 소스 블록과 상기 탐색 블록들 각각과의 유사성을 복수개의 화상 처리 장치에서 동시에 계산하는 단계와,
    제1 모드 또는 제2 모드가 되도록 상기 화상 처리 장치들을 구성하는 단계를 포함하고,
    상기 소스 블록과 어느 한 탐색 블록간의 유사성을 계산하는데 있어서, 상기 제1 모드시에는 하나의 화상 처리 장치가 상기 유사성을 계산하고, 상기 제2 모드시에는 적어도 두 개의 화상 처리 장치가 분담하여 상기 유사성을 계산하는 것인 방법.
  18. 제17항에 있어서, 상기 유사성을 계산하는 화상 처리 장치는 SAD 계산 장치인 것인 방법.
  19. 제17항에 있어서,
    상기 제1 모드 또는 상기 제2 모드 중 어느 모드가 더 효과적으로 동작하는지를 결정하도록 테스트하는 단계와,
    상기 테스트에 따라 상기 화상 처리 장치들을 상기 제1 모드 또는 상기 제2 모드로 구성하는 단계를 더 포함하는 방법.
  20. 삭제
  21. 삭제
  22. 출력 비디오 신호를 생성하는 비디오 장치와,
    감산 장치, 절대값 계산 장치 및 누산기를 각각 갖고, 상기 비디오 신호를 수신하도록 접속되어 있는 N개(N은 복수)의 SAD(sum of absolute difference) 장치들과,
    제1 모드와 제2 모드 사이에서 동작 모드를 변경하는 모드 변경 장치를 포함하고,
    상기 제1 모드에서는 상기 SAD 장치들이 상기 비디오 신호의 두 개의 화상 부분 사이의 차이를 계산하고, 상기 제2 모드에서는 상기 SAD 장치들 각각이 상기 차이 계산의 1/N을 수행하는 것인 계산 장치.
  23. 제22항에 있어서, 상기 비디오 장치는 비디오 카메라인 것인 계산 장치.
KR1020027016708A 2000-06-07 2001-06-06 화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출기술 KR100604169B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/589,630 2000-06-07
US09/589,630 US6654502B1 (en) 2000-06-07 2000-06-07 Adaptive early exit techniques in image correlation
PCT/US2001/040871 WO2001095635A1 (en) 2000-06-07 2001-06-06 Adaptive early exit techniques for minimum distortion calculation in image correlation

Publications (2)

Publication Number Publication Date
KR20030025240A KR20030025240A (ko) 2003-03-28
KR100604169B1 true KR100604169B1 (ko) 2006-07-25

Family

ID=24358814

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027016708A KR100604169B1 (ko) 2000-06-07 2001-06-06 화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출기술

Country Status (7)

Country Link
US (2) US6654502B1 (ko)
JP (1) JP4271935B2 (ko)
KR (1) KR100604169B1 (ko)
CN (1) CN100421472C (ko)
AU (1) AU2001267041A1 (ko)
TW (1) TW525388B (ko)
WO (1) WO2001095635A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101221874B1 (ko) 2008-12-03 2013-01-15 한국전자통신연구원 영상 처리 장치

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6907080B1 (en) * 2000-06-07 2005-06-14 Intel Corporation Adaptive early exit techniques in image correlation
US6700996B1 (en) * 2000-06-07 2004-03-02 Intel Corporation Adaptive early exit techniques in image correlation
US6654502B1 (en) * 2000-06-07 2003-11-25 Intel Corporation Adaptive early exit techniques in image correlation
US6804819B1 (en) * 2000-09-18 2004-10-12 Hewlett-Packard Development Company, L.P. Method, system, and computer program product for a data propagation platform and applications of same
FI110744B (fi) 2001-09-06 2003-03-14 Nokia Corp Menetelmä liike-estimoinnin suorittamiseksi videokoodauksessa, videokoodausjärjestelmä sekä videokoodauslaite
JP4015934B2 (ja) * 2002-04-18 2007-11-28 株式会社東芝 動画像符号化方法及び装置
US6757434B2 (en) * 2002-11-12 2004-06-29 Nokia Corporation Region-of-interest tracking method and device for wavelet-based video coding
FR2872975A1 (fr) * 2004-07-06 2006-01-13 Thomson Licensing Sa Procede et dispositif pour choisir un mode de codage
US20060062478A1 (en) * 2004-08-16 2006-03-23 Grandeye, Ltd., Region-sensitive compression of digital video
CN100384214C (zh) * 2004-10-27 2008-04-23 联咏科技股份有限公司 绝对差和电路
US7234354B2 (en) * 2004-12-03 2007-06-26 General Electric Company Ultrasonic probe and inspection method and system
KR101217627B1 (ko) * 2006-02-02 2013-01-02 삼성전자주식회사 블록 기반의 움직임 추정 방법 및 장치
CN100454338C (zh) * 2006-02-21 2009-01-21 华晶科技股份有限公司 动态图像的处理方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163101A (en) * 1985-10-07 1992-11-10 Schlumberger Technologies, Inc. Bitplane area correlator
KR870009295A (ko) * 1986-03-28 1987-10-24 엔. 라이스 머레트 멀티플렉스된 바이패스 경로를 갖고있는 비트 슬라이스 프로세서용 alu
JPH02189087A (ja) 1989-01-18 1990-07-25 Mitsubishi Electric Corp 動き補償演算方法
JPH0683019B2 (ja) 1988-12-16 1994-10-19 三菱電機株式会社 ディジタル信号処理プロセッサ
CA1311063C (en) 1988-12-16 1992-12-01 Tokumichi Murakami Digital signal processor
JP3146232B2 (ja) 1991-09-20 2001-03-12 ヤマハ発動機株式会社 パターン・マッチング法
JPH05268593A (ja) 1992-03-23 1993-10-15 Nippon Telegr & Teleph Corp <Ntt> 差分絶対値和・差分自乗和並列演算装置
JP2838817B2 (ja) 1992-09-09 1998-12-16 日本電信電話株式会社 動き補償演算装置
US5682209A (en) * 1995-11-13 1997-10-28 Tektronix, Inc. Motion estimation using limited-time early exit with prequalification matrices and a predicted search center
GB9600804D0 (en) * 1996-01-17 1996-03-20 Robb Garry D Multiphone
US5973742A (en) * 1996-05-24 1999-10-26 Lsi Logic Corporation System and method for performing motion estimation with reduced memory loading latency
KR100355324B1 (ko) * 1996-12-12 2002-11-18 마쯔시다덴기산교 가부시키가이샤 화상부호화장치및화상복호화장치
JP3631868B2 (ja) 1996-12-20 2005-03-23 株式会社東芝 動きベクトル検出装置および方法
TW361051B (en) 1997-01-09 1999-06-11 Matsushita Electric Ind Co Ltd Motion vector detection apparatus
JP2954120B2 (ja) 1997-01-09 1999-09-27 松下電器産業株式会社 動きベクトル検出装置
JPH10271514A (ja) 1997-03-23 1998-10-09 Tadayoshi Enomoto 動画像情報の信号処理方法及びその装置
JP3463910B2 (ja) 1997-04-22 2003-11-05 旭有機材工業株式会社 マンニッヒ系ポリオールの製造方法
JP2891253B1 (ja) * 1997-12-10 1999-05-17 日本電気株式会社 画像圧縮処理装置
JP3540142B2 (ja) 1998-01-30 2004-07-07 株式会社東芝 動きベクトル検出回路および動きベクトル検出方法
US6192257B1 (en) * 1998-03-31 2001-02-20 Lucent Technologies Inc. Wireless communication terminal having video image capability
JP2000069484A (ja) 1998-08-21 2000-03-03 Sony Corp 動きベクトル算出方法及び動きベクトル算出プログラムを記録した記録媒体
US6519005B2 (en) * 1999-04-30 2003-02-11 Koninklijke Philips Electronics N.V. Method of concurrent multiple-mode motion estimation for digital video
US6539541B1 (en) * 1999-08-20 2003-03-25 Intel Corporation Method of constructing and unrolling speculatively counted loops
US6690728B1 (en) * 1999-12-28 2004-02-10 Sony Corporation Methods and apparatus for motion estimation in compressed domain
US6496538B1 (en) * 1999-12-31 2002-12-17 Intel Corporation Method and apparatus for motion estimation for digital video encoding
US6567469B1 (en) * 2000-03-23 2003-05-20 Koninklijke Philips Electronics N.V. Motion estimation algorithm suitable for H.261 videoconferencing applications
US6907080B1 (en) * 2000-06-07 2005-06-14 Intel Corporation Adaptive early exit techniques in image correlation
US6700996B1 (en) 2000-06-07 2004-03-02 Intel Corporation Adaptive early exit techniques in image correlation
US6654502B1 (en) 2000-06-07 2003-11-25 Intel Corporation Adaptive early exit techniques in image correlation
US7023921B2 (en) * 2002-08-06 2006-04-04 Motorola, Inc. Method and apparatus for determining block match quality
US7596286B2 (en) * 2003-08-06 2009-09-29 Sony Corporation Image processing apparatus, image processing system, imaging apparatus and image processing method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101221874B1 (ko) 2008-12-03 2013-01-15 한국전자통신연구원 영상 처리 장치

Also Published As

Publication number Publication date
CN1436424A (zh) 2003-08-13
US7154950B2 (en) 2006-12-26
TW525388B (en) 2003-03-21
JP4271935B2 (ja) 2009-06-03
US20040105496A1 (en) 2004-06-03
CN100421472C (zh) 2008-09-24
AU2001267041A1 (en) 2001-12-17
JP2003536161A (ja) 2003-12-02
US6654502B1 (en) 2003-11-25
KR20030025240A (ko) 2003-03-28
WO2001095635A1 (en) 2001-12-13

Similar Documents

Publication Publication Date Title
KR100604169B1 (ko) 화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출기술
US8804844B2 (en) Adaptive early exit techniques in image correlation
RU2323541C2 (ru) Способ и устройство для выполнения высококачественного быстрого поиска прогнозируемого движения
KR100724652B1 (ko) 이미지 처리 장치, 이미지 처리 방법, 데이터 처리 장치,데이터 처리 방법, 및 저장 매체
US6456660B1 (en) Device and method of detecting motion vectors
KR100551545B1 (ko) 화상 상관에서의 최소 왜곡 계산을 위한 적응형 조기 탈출기술
US5502492A (en) Motion vector detection apparatus
KR930015828A (ko) 이동 벡터 검출 방법
KR100229803B1 (ko) 움직임 벡터 검출 방법 및 장치
US20040141555A1 (en) Method of motion vector prediction and system thereof
EP1968325A2 (en) Compression of video signals containing fades and flashes
Umar et al. Onset fire detection in video sequences using region based structure from motion for non-rigid bodies algorithm
KR20110037485A (ko) 상황 변화 인식 방법 및 이를 이용한 영상 처리 장치
Cyganek Adaptive window growing technique for efficient image matching
EP1309185A1 (en) Image noise detection
KR100212847B1 (ko) 움직임 추정기에서 절대에러값을 구하기 위한 가산방법
KR100189874B1 (ko) 실시간 블럭매칭 알고리즘 연산장치
EP1251689A1 (en) Process for detecting a change of shot in a succession of video images
KR20070079717A (ko) 고속 움직임 추정 장치 및 방법
JP2901848B2 (ja) ベクトル相関検出回路
Di Stefano et al. Vehicle Detection in Traffic Images.
JPH09247680A (ja) 画像処理装置
JP2000013804A (ja) 画素演算方法および画素演算装置
JPH08223576A (ja) 境界整合の動き推定装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
E902 Notification of reason for refusal
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130620

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140701

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150619

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160616

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170710

Year of fee payment: 12