KR100251548B1 - 디지털영상을위한움직임추정장치및방법 - Google Patents

디지털영상을위한움직임추정장치및방법 Download PDF

Info

Publication number
KR100251548B1
KR100251548B1 KR1019970057610A KR19970057610A KR100251548B1 KR 100251548 B1 KR100251548 B1 KR 100251548B1 KR 1019970057610 A KR1019970057610 A KR 1019970057610A KR 19970057610 A KR19970057610 A KR 19970057610A KR 100251548 B1 KR100251548 B1 KR 100251548B1
Authority
KR
South Korea
Prior art keywords
motion
field
motion vector
path
single pixel
Prior art date
Application number
KR1019970057610A
Other languages
English (en)
Other versions
KR19990038001A (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 KR1019970057610A priority Critical patent/KR100251548B1/ko
Priority to US09/182,194 priority patent/US6430223B1/en
Publication of KR19990038001A publication Critical patent/KR19990038001A/ko
Application granted granted Critical
Publication of KR100251548B1 publication Critical patent/KR100251548B1/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/112Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • 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
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search

Landscapes

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

Abstract

본 발명은 디지털 영상을 부호화 할 때 단화소 단위의 움직임 추정의 계산량을 줄여 움직임 추정에서 나타나는 계산의 중복성을 제거할 수 있는 디지털 영상을 위한 움직임 추정 장치 및 방법에 관한 것이다.
본 발명의 움직임 추정 장치는 이전영상을 탐색하여 입력 영상에 대한 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로의 단화소 움직임을 추정하는 제1움직임 추정수단과; 제1움직임 추정수단에서 출력되는 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하는 프레임 벡터 결정수단과; 제1움직임 추정수단에서 출력되는 움직임 벡터 각각을 스케일링하여 다른 경로의 필드 움직임 벡터를 결정하는 스케일링 수단과; 제1움직임 추정수단 및 프레임 벡터 결정수단과 스케일링 수단에서 각각 출력되는 단화소 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제2움직임 추정수단을 구비한다.
본 발명에 의하면, 움직임 추정에 있어서 단화소 단위의 움직임 추정을 위한 복잡도를 종래에 비하여 1/4로 줄일 수 있다.

Description

디지털 영상을 위한 움직임 추정장치 및 방법(Apparatus of Predicting Motion for Digital Image and Method thereof)
본 발명은 디지털 영상의 부호화에 관한 것으로, 특히 부호화기에 이용되는 디지털 영상을 위한 움직임 추정장치 및 방법에 관한 것이다.
통상, 동영상 압축 표준인 MPEG(Motion Picture Experts Group)-2 방식의 부호화기는 매크로블럭(Macroblock)을 기본 단위로 신호 압축을 수행한다. 하나의 매크로블럭은 16×16 화소(Pixel)의 휘도신호(Y) 블록과 8×8 화소의 색차신호(Cr 및 Cb) 블록으로 구성되게 된다.
영상압축을 위한 첫 단계는 임의의 입력 영상으로부터 매크로블록을 추출하는 것이다. 이를 위하여, 색체계 변환, 색신호 성분 추림(Decimation), 그리고 블록 분할의 세가지 동작이 필요하다. 여기서, 색체계 변환(Color Space Conversion)은 카메라로부터 입력되어 디지털 형태로 변환된 RGB 영상의 중복성을 줄이기 위하여 YCrCb 체계로 변환하는 것을 말한다. 색신호 성분 추림(Chrominance Component Decimation)은 Y신호가 영상의 명암을 나타내는 신호로서 주파수 대역도 넓고 시각적으로 인식이 잘 되는데 비하여, Cr 및 Cb신호는 색상을 나타내는 신호로서 인식도가 Y신호에 비하여 낮기 때문에 이를 수평, 수직 방향으로 추림하여 사용하는 것을 말한다. 예를 들어, 4:2:0 포맷(Format) 영상의 경우 추림정도(Decimation Factor)는 수평 및 수직으로 각각 2:1이다. 그리고, 블럭분할(Block Partitioning)은 상기 색체계 변환과 색신호 성분 추림을 통해 얻어진 YCrCb 영상을 부호화하기에 적합한 크기로 분할하는 것으로써, Y 신호의 경우 16×16 화소 단위로 분할하게 되며 Cr 및 Cb 신호는 8×8단위로 분할 하게 된다.
그 다음 단계는 전체 영상으로부터 규칙적으로 추출된 매크로블록을 움직임 추정 및 보상하는 것이다. 이는 시간적으로 인접한 비디오 영상에 대하여 중복되는 부호화 과정을 제거하기 위한 것이다. 이하, 제1도에 도시된 MPEG-2 부호화기를 참조하여 움직임 추정 장치 및 방법을 상세히 살펴보기로 한다.
제1도는 일반적인 MPEG-2 부호화기를 도시한 블록도로써, 통상 MPEG-2 부호화기는 입력라인(1)에 접속된 프레임 메모리(Frame Memory, 2)와, 입력라인(1) 및 프레임 메모리(2)와 프레임 딜레이(18)에 접속되어 입력 영상의 움직임을 추정 및 보상하는 움직임 예측부(20)를 구비한다.
프레임메모리(2)는 입력라인(1)을 통해 입력되는 시간적으로 인접한 이전영상을 저장하는 기능을 갖는다. 움직임 예측부(20)는 입력라인(1)과 프레임메모리(2)에 접속된 제1움직임 추정부(Motion Estimator 1; 22)와, 입력라인(1) 및 제1움직임 추정부(22)와 프레임 딜레이(18)에 접속된 제2움직임 추정부(Motion Estimator 2;24)와, 제2움직임 추정부(24)와 프레임 딜레이(18)에 접속된 움직임 보상부(Motion Compensator; 26)로 구성된다. 움직임 예측부(20)에서 제1움직임 추정부(22)는 입력라인(1)을 통한 입력영상에서 매크로블록의 Y신호 블록에 대하여 프레임 메모리(2)에 저장된 이전영상으로부터 가장 유사한 블록의 위치를 검출한다. 이때, 검출된 위치는 제2움직임 추정부(24)를 위한 기준위치로 사용되게 된다. 제2움직임 추정부(24)는 입력라인(1)을 통한 입력영상과 프레임 딜레이(18)의 복원영상을 입력받아 복원영상에서 제1움직임 추정부(22)로부터 입력된 기준위치를 중심으로 매크로블럭의 Y신호와 가장 유사한 블록의 위치를 검출한다. MPEG-2 부호화기는 여기서 검출된 위치를 복호화기 쪽으로 전송함으로써, 복호화기는 수신된 위치정보를 바탕으로 부호화기에서 참조하였던 복원영상과 정확히 일치하는 영상을 얻을 수 있게 된다. 움직임 보상부(26)는 제2움직임 추정부(24)로부터 발생된 최종 위치정보를 바탕으로 프레임 딜레이(18)의 복원 영상으로부터 매크로블럭과 가장 유사한 블록을 추출한다.
그리고, 제1도의 MPEG-2 부호화기는 프레임 메모리(2)의 입력 영상과 움직임 보상기(Motion Compensator, 26)의 복원영상 간의 차신호를 출력하는 감산기(4)와, 감산기(4)의 차신호를 부호화하는 이산코사인변환(Discrete cosine transform; 이하, DCT 라함)부(6), 양자화기(Quantization, 8), 가변길이 부호화기(Variable Length Coder; 이하, VLC라 함, 30)와, VLC(30)로부터 입력되는 비트 스트림을 선입선출(First In First Out) 방식으로 출력하는 버퍼(32)와, 프레임 메모리(2)와 버퍼(32)로부터의 데이터 양을 참조하여 양자화기(8)와 역양자화기(12)의 양자화수의 크기를 조절함으로써 비트 발생율을 제어하는 비트율 제어부(10)를 구비한다. 또한, 제1도의 MPEG-2 부호화기는 상기 양자화기(8)에서 양자화된 데이터를 복호하는 역양자화기(Inverse Quantization, 12) 및 역 이산코사인변환부(Inverse DCT; 이하, IDCT라 함, 14)와, IDCT(14)와 움직임 보상부(26)의 출력영상의 합신호를 출력하는 가산기(16)와, 가산기(16)의 합신호를 저장하는 프레임 딜레이(18)를 더 구비한다.
제1도의 구성에서 감산기(4)는 입력라인(1)을 통해 프레임 메모리(2)에 저장된 영상의 매크로블록과 움직임 보상기(26)에서 추출된 복원 영상의 블록간의 차영상(Difference Image)을 DCT부(6)로 출력한다. DCT부(6)는 감산기(4)로부터의 차 영상을 8×8 화소 단위로 DCT변환하고 양자화기(6)에서 양자화 함으로써, 시간적으로 인접한 영상간의 중복성을 제거하게 된다. 즉, 차 영상에 존재하는 공간 영역의 상관성을 제거하게 된다. 이때, 양자화기(6)는 비트율 제어부(10)에서 조절된 양자화수의 크기(Qp)에 따라 양자화를 수행한다. 역양자화기(12) 및 IDCT부(14)는 양자화기(8)에서 부호화된 차 영상에 대하여 복호화기에서 수행되는 영상복원과정과 동일한 연산을 수행함으로써, 복호화기와 동일한 차 영상 신호를 복원한다. 가산기(16)는 IDCT부(14)로부터 복원된 차 영상과 움직임 보상기(26)의 예측 영상을 합하여 프레임딜레이(18)에 저장한다. 프레임딜레이(18)에 저장되는 영상은 다음에 입력될 영상을 예측하기 위한 새로운 복원영상으로 이용된다.
그런데, 상기 움직임 예측부(20)에서 움직임 추정부(22,24)는 중복되는 움직임 추정을 수행함으로써, 부호화기의 복잡성을 증가시키는 단점이 있다. 이하, 제2도 내지 제5도를 참조하여 상기 문제점을 살펴보기로 한다.
통상, 비월주사방식의 영상은 제2도에 도시된 바와 같이 1/60초 마다 번갈아서 발생되는 두 필드, 즉 상위 필드(Top Field)와 하위 필드(Bottom Field)를 조합한 형태로 구성된다. 이때, 한 화면을 구성하는 두 필드 사이에는 1/60초만큼의 발생 시간차가 존재하게 된다. 이에 따라, 영상압축을 위한 모든 동작을 프레임 단위로만 수행하는 것보다 각각의 필드로 나누어서 수행하는 것이 효과적일 수 있다. 이는 1/60초 동안에 필드와 필드 사이에 있을 수 있는 물체의 이동을 고려하기 때문이다. 따라서, MPEG-2 동영상 압축 표준은 비월주사 방식의 영상에 대해서 효과적으로 적용될 수 있도록 필드뿐만 아니라 프레임 영상에 대해서도 움직임을 추정한다.
제3도는 제1도의 움직임 예측부(20)에서 제1및 제2움직임 추정부(22,24)를 상세히 도시한 블록도이다.
제1및 제1움직임 추정부(22,24) 각각은 5가지 경로(Path), 즉 프레임(Frame), 상위필드 대 상위필드(Top-to-top), 하위필드 대 상위필드(Bottom-to-top), 상위필드 대 하위필드(Top-to-bottom), 하위필드 대 하위필드(Bottom-to-bottom)의 경로에 대한 움직임 추정동작을 동시에 수행한다. 우선, 제3도의 제1움직임 추정부(22)는 입력되는 영상과 이전 입력영상으로부터 상기 5가지 경로에 대한 단화소 단위의 움직임 추정을 수행한다. 이때, 탐색영역에 해당하는 영상은 MPEG-2 부호화기의 부호화 순서에 따라 프레임 메모리(2)에서 지연된 이전 영상이다. 제1움직임 추정부(22)는 단화소 단위로 움직임 추정을 할 때 5-경로 각각에 대하여 제4도에 도시된 블록 정합 알고리즘(Block Matching Algorithm)을 사용한다. 제4도에서 (a)는 현재 입력되는 영상(It)을 나타내고, (b)는 이전 입력 영상(It-1)을 나타낸다. 블록 정합 알고리즘이란 현재 입력되는 영상(It)의 특정 블록(Bt)에 대하여 가장 유사한 블록을 이전 입력영상(It-1)으로부터 찾아내는 과정을 말한다. 제4도의 입력영상에서 블록의 크기(NB)는 MPEG-2의 영상의 경우 16이다.
상세히 하면, 우선 입력영상(It)에서 기준위치(x,y)의 특정블럭(Bt)에 대하여 유사한 블록을 찾기 위한 국부영역을 이전 입력영상(It-1)에서 정한다. 이때, 이전 입력영상(It-1)에서 국부영역의 크기는 기준위치(x,y)를 중심으로 하여 수평으로 x-S~x+S+NB-2, 수직으로 y-S ~ y+S+NB-2에 해당한다. 그 다음, 입력영상(It)의 특정블럭(Bt)과 가장 유사한 블록을 찾기 위한 기준으로 평균 절대 오차(Mean Absolute Difference; MAD)를 사용한다. 이를 수식으로 표현하면 다음과 같다.
Figure kpo00002
이와 같이, 이전 입력영상(It-1)의 국부영역 내에서 임의의 위치(u, v)마다 NB×NB크기의 임의의 블록(Bt-1)과 특정블록(Bt)간의 평균 절대 오차(MAD)를 계산한다. 이어서, 평균 절대 오차(MAD)가 가장 적은 블록(Bt-1)의 위치위치((u,v)*)를 검출한다. 이때, 입력영상의 기준위치(z,y)로 부터 이전 입력 영상의 검출((u,v)*)까지의 변위를 단화소 단위의 움직임 벡터(Motion Vector; 이하, MV라 함)라고 한다. 그리고, 상기 평균 절대 오차(MAD)를 계산하는 수식으로부터 단화소 단위의 벡터(MV)를 구하기 위해서는 5-경로 각각에 대하여 다음 수식과 같이 지수적으로 증가하는 계산이 요구됨을 알 수 있다.
Figure kpo00003
상위필드 대 상위필드, 하위필드 대 상위필드, 상위필드 대 하위필드, 하위필드 대 하위필드 :
Figure kpo00004
여기서, M은 단위 화소당 평균 절대 오차를 계산하는데 요구되는 계산량이다. 따라서, 단화소 단위의 움직임 벡터(MV)를 구하기 위해서는 전체적으로 2×NB×NB×2S×2S×M의 계산이 요구되기 때문에 S가 큰 경우 단 화소 단위의 움직임 추정이 용이하지 않음을 알 수 있다.
제2움직임 추정부(24)는 반화소 움직임 벡터 검출부(21)와, 제1및 제2멀티플렉서(Multiplexer; 23, 25)와, 제2가산기(27)와, 필드/프레임 결정부(29)로 구성된다. 제2움직임 추정부(24)에서 반화소 움직임 벡터 검출부(21)는 상기 제1움직임 추정부(22)로부터 출력되는 5-경로의 단화소 움직임 벡터 각각을 기준으로 하여 5-경로에 대한 반화소 단위의 움직임 벡터를 검출한다. 이때, 사용되는 탐색영역은 제1도의 프레임 딜레이(18)에 저장된 이미 복호화된 영상이다. 다시 말하여, 제1도의 제2움직임 추정부(24)는 반화소 단위의 움직임 추정을 수행할 때 프레임딜레이(18)의 복호화된 영상을 사용함으로써, 부호화기 및 복호화기가 동일한 예측화상을 사용할 수 있게 된다. 제1멀티플렉서(23)는 반화소 움직임 벡터 검출부(21)로부터 출력되는 상위필드 대 상위필드 움직임 벡터와 하위필드 대 상위필드 움직임 벡터를 선택적으로 절환하여 가산기(27)로 출력한다. 제2멀티플렉서(25)는 반화소 움직임 벡터 검출부(21)로부터 출력되는 상위필드 대 하위필드 움직임 벡터와 하위필드 대 하위필드 경로의 움직임 벡터를 선택적으로 절환하여 가산기(27)로 출력한다. 가산기(27)는 제1및 제2멀티플렉서(23,25)로부터 출력되는 필드의 반화소 움직임 벡터를 합하여 필드/프레임 결정부(29)로 출력한다. 필드/프레임 결정부(29)는 반화소 움직임 벡터 검출부(21)로부터 출력되는 프레임의 반화소 움직임 벡터 값과 가산기(27)로부터 출력되는 필드의 반화소 움직임 벡터 값을 비교하여 움직임 벡터 값이 적은 쪽을 선택하여 움직임 보상기(26)로 출력한다. 다시 말하여, 제2움직임 추정부(24)는 프레임 단위 움직임 추정을 했을 때 발생하는 움직임 보상오차와 필드 단위의 움직임 추정을 했을 때 발생하는 움직임 보상오차를 비교하여 오차가 적은 쪽을 선택한다. 예를 들어, 필드 단위의 움직임 보상오차가 적은 경우는 스포츠(Sports) 영상과 같은 프레임을 구성하는 두 필드 사이에 화면의 내용이 급격히 변할 때이다.
제5도를 참조하면, 제2움직임 추정부(24)는 단화소 단위의 움직임 벡터를 중심으로 ±0.5점에 위치하는 9개의 반화소에 대해 가장 오차가 적은 블록의 위치를 검출함으로써, 반화소 단위의 움직임을 추정한다. 이때, 위치를 검출하는 방법으로는 상기 제1움직임 추정부(22)의 단화소 단위의 움직임 추정방법과 마찬가지로 블록 정합 알고리즘을 사용한다. 여기서, 제5도에 도시된 9개의 각 위치에 대응되는 블록을 계산하는데 사용되는 수식은 다음과 같다.
Figure kpo00005
상기 수식으로부터 5-경로 각각에 대한 반화소 단위의 움직임을 추정할 때 쓰이는 계산량은 다음과 같다.
Figure kpo00006
상위필드 대 상위필드, 하위필드 대 상위필드, 상위필드 대 하위필드, 하위필드 대 하위필드 :
Figure kpo00007
여기서, L은 반화소 위치의 한 화소를 만드는데 요구되는 계산량이다. 상기 수식으로부터 반화소 단위의 움직임 추정을 위해서 요구되는 전체 계산량은 3×NB×NB×8×(M+L)이므로 단화소 단위의 움직임 추정에 비하여 무시할 수 있는 정도이다.
이상 설명한 바와 같이, 종래의 MPEG-2 부호화기에서 제1및 제2움직임 추정부(22, 24)는 5개의 경로(프레임, 상위필드 대 상위필드, 하위필드 대 상위필드, 상위필드 대 하위필드, 하위필드 대 하위필드)에 대하여 중복되는 움직임 추정을 수행하고 있다. 이는 보다 유사한 블록을 복원영상으로부터 예측하는 것을 가능하게 하기 위한 것이다. 그러나, 계산이 중복되므로 부호화기의 복잡성을 증가시키고, VLSI(Very Large Scale Integration)로 구현할 때 보다 많은 하드웨어를 요구하는 단점을 갖는다. 특히, 단화소 단위의 움직임을 추정하는 블록은 단일경로(Single Path)의 계산에도 상당히 많은 계산량과 복잡한 하드웨어가 요구되는데, 중복되는 움직임 추정으로 인하여 그 복잡성이 증가하게 된다. 이에 따라, 단화소 단위의 움직임을 추정하는 블록의 계산량을 줄이는 방안이 요구되고 있다.
따라서, 본 발명의 목적은 디지털 영상을 부호화할 때 단화소 단위 움직임 추정의 계산량을 줄임으로써, 움직임 추정에서 나타나는 계산의 중복성을 제거할 수 있는 디지털 영상을 위한 움직임 추정 장치 및 방법을 제공하는 것이다.
본 발명의 다른 목적은 디지털 영상을 부호화할 때 움직임 추정에서 중복되는 계산으로 인한 움직임 추정 성능의 저하를 방지할 수 있는 디지털 영상을 위한 움직임 추정 장치 및 방법을 제공하는 것이다.
제1도는 종래의 MPEG-2 부호화기를 도시한 블록도.
제2도는 통상의 비월 주사 방식으로 입력되는 영상의 구성을 도시한 도면.
제3도는 제1도의 구성에서 움직임 추정부를 상세히 도시한 블록도.
제4도는 통상의 단화소 단위의 움직임 추정 방법을 나타내는 도면.
제5도는 통상의 반화소 단위의 움직임 추정 방법을 나타내는 도면.
제6도는 본 발명의 디지털 영상을 위한 움직임 추정부를 도시한 블록도.
제7도는 본 발명의 디지털 영상을 위한 움직임 추정 방법을 나타내는 도면.
제8도는 통상의 화면 유형과 움직임 추정 방향을 나타내는 도면.
제9도는 상위필드 대 상위필드 경로의 움직임 벡터를 스케일링하는 방법을 나타내는 도면.
제10도는 하위필드 대 하위필드 경로의 움직임 벡터를 스케일링하는 방법을 나타내는 도면.
제11도는 계층적 블록 정합 알고리즘을 이용한 단화소 움직임 추정 방법을 나타내는 도면.
제12도는 계층적 블록 정합 알고리즘을 이용한 본 발명의 움직임 추정 장치를 실시 예 별로 도시한 도면.
* 도면의 주요 부분에 대한 부호의 설명
2 : 프레임 메모리 4 : 감산기
6 : 이산코사인변환부(DCT) 8 : 양자화기(Q)
10 : 비트율 제어부 12 : 역양자화기(IQ)
14 : 역 이산코사인변환부(IDCT) 16, 27, 68 : 가산기
18 : 프레임 딜레이 20 : 움직임 예측부
21, 62 : 반화소 움직임 벡터 검출부 24, 50 : 제1움직임 추정부
23, 25, 64, 66 : 멀티플렉서 24, 60 : 제2움직임 추정부
26 : 움직임 보상기 29, 70 : 필드/프레임 결정부
30 : 가변길이 부호화기(VLC) 2 : 버퍼(FIFO)
52 : 단화소 움직임 벡터 검출부 54 : 프레임 벡터 결정부
56, 58 : 제1, 제2스케일러
상기 목적을 달성하기 위하여, 본 발명에 따른 디지털 영상을 위한 움직임 추정 장치는 이전영상을 탐색하여 입력영상에 대한 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로의 단화소 움직임을 추정하는 제1움직임 추정수단과; 제1움직임 추정수단에서 출력되는 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하는 프레임 벡터 결정수단과; 제1움직임 추정수단에서 출력되는 움직임 벡터 각각을 스케일링하여 다른 경로의 필드 움직임 벡터를 결정하는 스케일링 수단과; 제1움직임 추정수단 및 프레임 벡터 결정수단과 스케일링 수단에서 각각 출력되는 단화소 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제2움직임 추정수단을 구비하는 것을 특징으로 한다.
그리고, 본 발명에 따른 디지털 영상을 위한 움직임 추정 방법은 이전 영상을 탐색하여 입력영상에 대한 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로의 단화소 단위의 움직임을 추정하여 움직임 벡터를 검출하는 제1단계와; 필드 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하고 필드 움직임 벡터를 각각 스케일링하여 다른 두 경로에 대한 필드 움직임 벡터를 결정하는 제2단계와; 제1및 제2단계에서의 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임 벡터를 검출하는 제3단계를 포함한다.
본 발명의 다른 특징에 따른 디지털 영상을 위한 움직임 추정 방법은 서로 다른 탐색영역의 크기를 갖는 n(n
Figure kpo00008
2)개의 계층으로 구성된 입력영상과 이전영상의 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로에 대하여 계층적으로 단화소 단위의 움직임을 반복 추정하여 임의의 계층에서 단화소 움직임 벡터를 검출하는 제1단계와; 필드 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하고 필드 움직임 벡터들을 각각 스케일링하여 다른 두 경로에 대한 필드 움직임 벡터를 결정하는 제2단계와; 1 및 2단계에서의 움직임 벡터들을 기준으로 상기 임의의 계층 다음의 m(1
Figure kpo00009
m<n)개의 계층에서 계층적으로 단화소 단위의 움직임을 반복 추정하여 최하위층에서 최종의 단화소 움직임 벡터를 검출하는 제3단계와; 3단계에서 검출되는 단화소 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제4단계를 포함한다.
본 발명의 또 다른 특징에 따른 디지털 영상을 위한 움직임 추정 방법은 서로 다른 탐색영역의 크기를 갖는 n(n
Figure kpo00010
2)개의 계층으로 구성된 입력영상과 이정영상의 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로에 대하여 계층적으로 단화소 단위의 움직임을 반복 추정하여 최하위층에서 단화소 움직임 벡터를 검출하는 제1단계와; 필드 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하고 필드 움직임 벡터들을 각각 스케일링하여 다른 두 경로에 대한 필드 움직임 벡터를 검출하는 제2단계와; 1 및 2단계에서의 단화소 움직임 벡터들을 기준으로 상기 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제3단계를 포함한다.
상기 목적 외에 본 발명의 다른 목적 및 특징들은 첨부도면을 참조한 실시예에 대한 설명을 통하여 명백하게 드러나게 될 것이다.
본 발명의 디지탈 영상의 움직임 추정 방법을 간단히 설명하면, 단화소 단위의 움직임을 추정을 상위필드 대 상위필드, 하위필드 대 하위필드의 경로에 대해서만 수행하여 단화소 단위의 움직임 추정을 위한 복잡도를 종래에 비하여 1/4로 줄일 수 있도록 한다.
이하, 제6도 내지 제12도를 참조하여 본 발명의 바람직한 실시 예 대하여 상세히 설명하기로 한다.
제6도는 본 발명에 따른 디지탈 영상의 움직임 추정 장치를 나타내는 블록도써, 제6도의 움직임 추정 장치는 입력영상으로부터 단화소 단위의 움직임 추정을 수행하는 제1움직임 추정부(50)와, 제1움직임 추정부(50)의 단화소 단위의 움직임 벡터를 기준으로 반화소 단위의 움직임 추정을 수행하는 제2움직임 추정부(60)를 구비한다.
제6도에서 제1움직임 추정부(50)는 단화소 움직임 벡터 검출부(52), 프레임 벡터 결정부(FVD, 54), 제1및 제2스케일러(Scaler; 56,58)를 구비한다. 단화소 움직임 벡터 검출부(52)는 입력영상(t)과 이전영상(t-1)의 상위필드와 하위필드로부터 상위필드 대 상위필드, 하위필드 대 하위필드의 경로에 대해서만 단화소 움직임 벡터를 검출한다. 프레임 벡터 결정부(54)는 단화소 움직임 벡터 검출부(52)에서 검출된 상위필드 대 상위필드, 하위필드 대 하위필드 경로의 단화소 움직임 벡터들의 평균벡터를 구함으로써, 프레임의 단화소 움직임 벡터를 검출한다. 다른 방법으로 프레임 벡터 결정부(54)는 프레임 움직임 벡터를 상기 움직임 벡터들 중 어느 하나를 임의로 택일하여 구할 수도 있다. 또한, 프레임 벡터 결정부(54)는 적응적인 방법으로 상기 각 필드의 움직임 정보에 따라 가중치를 두어 최종적인 프레임 움직임 벡터를 구할 수도 있다.
제1스케일러(56)는 단화소 움직임 벡터 검출부(52)의 상위필드 대 상위필드 단화소 움직임 벡터를 상위필드와 대 하위필드 사이의 시간차를 고려하여 스케일링함으로써, 제7b도에 도시된 바와 같이 하위필드 대 상위필드 경로의 단화소 움직임 벡터를 검출한다. 제2스케일러(58)는 단화소 움직임 벡터 검출부(52)의 하위필드 대 하위필드 단화소 움직임 벡터를 상위필드 대 하위필드 사이의 시간차를 고려하여 스케일링함으로써, 제7c도에 도시된 바와 같이 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 검출한다. 이는 제1및 제2스케일러(Scaler; 56, 58)가 단화소 단위의 움직임 벡터를 스케일링 할 때 제7a도와 같이 연속되는 필드 사이의 물체의 움직임을 등속운동으로 가정하고, 화면유형(Picture Type) 및 움직임 추정방향(순방향(Forward), 역방향(Backward)과 그에 따른 필드간의 거리에 의존하여 스케일링 정도를 다르게 함으로써 가능하다.
이를 상세히 하기 위하여, 제8도 내지 제10도를 참조하면 다음과 같다.
일반적으로, MPEG-2 방식의 디지탈 영상에는 움직임 보상 방법에 따라 제8a도에 도시된 바와 같은 3종류(I, P, B)의 화면이 있다. 여기서, I-화면(Intra-Picture; 프레임 내의 부호화 영상)은 화면 내의 각 매크로블록을 처리할 때 움직임 추정 및 보상을 하지 않는다. P-화면(Predictive-Picture; 프레임간의 순방향 예측 부호화 영상)은 각 매크로블록을 처리할 때 제8b도에 도시된 바와 같이 순방향의 움직임 추정 및 보상을 통하여 시간적 중복성을 제거한다. 움직임 추정 및 보상을 위한 탐색 영역으로는 이전 영상의 I-화면과 P-화면이 사용된다. 이때, I-화면과 P-화면, 또는 P-화면과 P-화면 사이의 프레임 간격은 M으로 정의되며, 이 값은 비디오 영상의 특성에 따라 가변 된다. 제8a도에서 M은 3이다. B-화면(Bidirectionally predictive-Picture; 쌍방향 예측 부호화 영상)은 화면 내의 각 매크로블록에 대하여 시간적 중복성을 제거할 때, 이전의 I, P-화면과 다음의 I, P-화면이 탐색 영역으로 사용된다. B-화면의 움직임 추정은 제8c도에 도시된 바와 같이 순방향과 역방향으로 이루어진다. 움직임 보상을 위해서는 순방향 움직임 벡터를 사용하여 예측된 영상과, 역방향 움직임 벡터를 사용하여 예측된 영상, 그리고 두 예측 영상을 보간(Interpolation)한 영상 중에서 최적의 것이 선택된다. 제8a도에서 PB는 이전의 I, P-화면과 B-화면 사이의 프레임 간격을 의미한다. (a)에서 첫 번째 B- 화면에 대한 PB의 값은 1이고, 두 번째 B화면에 대한 PB의 값은 2이다.
제1움직임 추정부(50)의 제1스케일러(56)는 상위필드 대 상위필드 경로의 단화소 움직임 벡터를 제2움직임 추정부(60)의 하위필드 대 상위필드 경로의 반화소 움직임 추정에 적용하기 위한 움직임 벡터 스케일링을 수행한다. 제9도는 P-화면과 B-화면에서 상위필드 대 상위필드 경로의 움직임 벡터를 스케일링하는 예를 나타낸 것이다.
제9a도는 제1스케일러(56)에서 수행되는 P-화면의 순방향 움직임 추정을 위한 스케일링 방법을 나타낸다. 여기서, P-화면과 이전 I, P-화면의 프레임 간격이 M이기 때문에 상위 필드(t-3)와 상위 필드(t)간의 간격은 제9a도와 같이 2×M이 되고, 하위 필드(t-3)와 상위 필드(t)의 간격은 2×M-1이 된다. 따라서, 하위필드 대 상위필드 경로의 단화소 움직임 벡터를 구하기 위해 상위필드 대 상위필드 경로의 움직임 벡터에 적용하는 스케일링 계수(Scaling Factor)는 다음식과 같이 정의된다.
Figure kpo00011
제9b도는 제1스케일러(56)에서 수행되는 B-화면의 순방향 움직임 추정을 위한 스케일링 방법을 도시한 것으로써, PB=1인 경우에 대하여 상위필드 대 상위필드 경로의 움직임 벡터를 스케일링한 예이다. 여기서, 상위 필드(t-3)와 상위 필드(t-2)의 간격은 2×PB 가 되고, 하위 필드(t-3)와 상위 필드(t-2)의 간격은 2×PB-1이 된다. 따라서, 이에 대한 스케일링 계수는 다음 식과 같이 정의된다.
Figure kpo00012
제9c도는 제1스케일러(56)에서 수행되는 B-화면의 역방향 움직임 추정을 위한 스케일링 방법을 도시한 것으로써, 역방향 움직임 추정의 경우 프레임 간격은 M-PB로 표현할 수 있다. 이에 따라, 역방향 움직임 추정과 관련되는 상위필드(t)와 상위 필드(t-2)의 간격은 2×(M-PB)가 되고, 하위 필드(t)와 상위 필드(t-2)의 간격은 2×(M-PB)+1이 된다. 따라서, 하위필드 대 상위필드 경로의 움직임 벡터를 구하기 위해 상위필드 대 상위필드 경로의 움직임 벡터에 적용하는 스케일링 계수는 다음 식과 같이 정의된다.
Figure kpo00013
제1스케일러(56)는 상기와 같은 스케일링 계수들(FS1)을 사용하여 다음 식과 같이 하위필드 대 상위필드 경로의 움직임 벡터를 계산한다.
Figure kpo00014
또한, 제6도의 제1움직임 추정부(50)에서 제2스케일러(58)는 단화소 움직임 벡터 검출부(52)로 부터 출력된 하위필드 대 하위필드 경로의 단화소 움직임 벡터를 상위필드 대 하위필드 경로의 반화소 움직임 추정에 적용하기 위한 움직임 벡터 스케일링을 수행한다. 제10도는 P-화면과 B-화면에 대한 하위필드 대 하위필드 경로의 움직임 벡터를 스케일링하는 예를 나타내는 것이다.
제10a도는 제2스케일러(58)에서 수행하는 P-화면의 순방향 움직임 추정을 위한 스케일링 방법을 나타내는 것으로써, 하위필드(t-3)와 하위 필드(t)의 간격은 2×M이 되고, 상위 필드(t-3)와 하위 필드(t)의 간격은 2×M+1이 된다. 따라서, 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 구하기 위해 하위필드 대 하위필드 경로의 단화소 움직임 벡터에 적용하는 스케일링 계수는 다음 식과 같이 정의 된다.
Figure kpo00015
제10b도는 제2스케일러(58)에서 수행하는 B-화면의 순방향 움직임 추정을 위한 스케일링 방법을 나타내는 것으로써, 하위필드(t-3)와 하위 필드(t-2)의 간격은 2×PB가 되고, 상위 필드(t-3)와 하위 필드(t-2)의 간격은 2×PB+1이 된다. 따라서, 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 구하기 위해 하위필드 대 하위필드 경로의 단화소 움직임 벡터에 적용하는 스케일링 계수는 다음 식과 같이 정의 된다.
Figure kpo00016
제10c도는 제2스케일러(58)에서 수행하는 B-화면의 역방향 움직임 추정을 위한 스케일링 방법을 나타내는 것으로써, 역방향 움직임 추정과 관련되는 하위필드(t)와 하위 필드(t-2)의 간격은 2×(M-PB)가 되고, 상위 필드(t)와 하위 필드(t-2)의 간격은 2×(M-PB)-1이 된다. 따라서, 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 구하기 위해 하위필드 대 하위필드 경로의 단화소 움직임 벡터에 적용하는 스케일링 계수는 다음 식과 같이 정의 된다.
Figure kpo00017
제2스케일러(58)는 상기와 같은 스케일링 계수들(FS2)을 사용하여 다음 식과 같이 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 계산한다.
Figure kpo00018
제6도로 되돌아와서 제2움직임 추정부(60)는 반화소 움직임 벡터 검출부(62)와, 제1및 제2멀티플렉서(Multiplexer; 64,66)와, 제2가산기(68)와, 필드/프레임 결정부(70)로 구성된다. 제2움직임 추정부(60)에서 반화소 움직임 벡터 검출부(62)는 상기 제1움직임 추정부(50)로부터 출력되는 5-경로의 단화소 움직임 벡터 각각을 기준으로 하여 5-경로에 대한 반화소 단위의 움직임 벡터를 각각 검출한다. 제1멀티플렉서(64)는 반화소 움직임 벡터 검출부(62)로부터 출력되는 상위필드 대 상위필드 움직임 벡터와 하위필드 대 상위필드 움직임 벡터를 선택적으로 절환하여 가산기(68)로 출력한다. 제2멀티플렉서(66)는 반화소 움직임 벡터 검출부(62)로부터 출력되는 상위필드 대 하위필드의 움직임 벡터와 하위필드 대 하위필드 움직임 벡터를 선택적으로 절환하여 가산기(68)로 출력한다. 가산기(68)는 제1및 제2멀티플렉서(64,66)로부터 출력되는 필드의 반화소 움직임 벡터를 합하여 필드/프레임 결정부(70)로 출력한다. 필드/프레임 결정부(70)은 반화소 움직임 벡터 검출부(62)로부터 출력되는 프레임의 반화소 움직임 벡터 값과 가산기(68)로부터 출력되는 필드의 반화소 움직임 벡터 값을 비교하여 움직임 벡터 값이 적은 쪽을 선택하여 출력한다. 이에 따라, 제7a도에 도시된 바와 같이 화면의 물체가 4개의 필드에 걸쳐서 연속적으로 움직이는 경우, 즉 움직임이 큰 경우 우수하게 반화소 단위의 움직임 추정을 할 수 있게 된다.
그리고, 단화소 단위의 움직임 추정을 위하여 움직임 추정영역 내의 모든 위치를 탐색할 경우, 탐색영역의 크기가 증가함에 따라 단일 경로에 대한 단화소 단위의 움직임 추정 자체가 막대한 계산량을 요구하게 된다. 따라서, 단일 경로의 움직임 추정 자체의 계산량을 줄이기 위한 고속 탐색 알고리즘들이 많이 개발되었다. 그 대표적인 예가 계층적 블록 정합 알고리즘이다. 이하, 본 발명의 디지탈 영상을 위한 움직임 추정 방법을 계층적 정합 알고리즘을 사용하는 상황에 적용하여 설명하기로 한다.
제11도는 3개의 레이어(Layer)로 구성된 계층적 블록 정합 알고리즘의 예를 나타내고 있다.
계층적 블록 정합 알고리즘을 위해서는 단위 영상을 계층적 구조의 영상으로 재구성한다. 제11도에서 레이어 ℓ+1 영상은 레이어 l 영상을 필터링 및 서브-샘플링하여 만든 영상으로써 레이어 l 영상에 비하여 수평, 수직 방향의 화소 수가 1/2로 줄어든 영상이다. 이러한 계층적 구조의 영상을 사용하여 단 화소 단위의 움직임 추정을 하는 과정을 살펴보면 다음과 같다.
우선, 제11도에 도시된 레이어 2(즉, l=2)에서의 움직임을 추정한다. 여기서, 레이어 2는 원 영상의 크기가 수평, 수직으로 1/4씩 줄어든 영상을 가지고 움직임 추정을 한다. 이때, 움직임 추정 방법은 종래의 기술에서 언급한 바와 같이 줄어든 탐색 영역 전체에 대하여 크기가 줄어든 블록을 사용하여 블록 정합 오차를 계산하고, 비교하는 것이다. 블록 정합 방법의 계산량이 단위 블록 크기의 제곱과 탐색 영역 크기의 제곱의 곱에 비례하므로 레이어 2에서는 (1/4)2×(1/4)2만큼 줄어든 계산으로 움직임 추정을 수행할 수 있다.
다음, 제11도의 레이어 1 (즉, l=1)에서의 움직임 추정을 한다. 여기서, 상기 레이어 2에서 구한 움직임 벡터의 정확도를 향상시키기 위하여 레이어 2에서 구한 움직임 1를 중심으로 하는 국부 영역에 대하여 블록 정합 방법을 적용한다. 레이어 1에서 국부 영역의 크기는 전체 탐색 영역에 비하여 무시할 수 있을 정도로 작기 때무에 레이어 1에서는 계산량의 큰 증가 없이 움직임 벡터의 정확도를 높일 수 있다.
그리고, 제11도의 레이어 0(즉, l=0)에서의 움직임 추정을 한다. 레이어 0(즉, l=0)에서 움직임 추정은 레이어 1에서의 움직임 추정과 마찬가지로 상기 레이어에서 구한 움직임 벡터를 중심으로 하는 국부 영역에 대하여 움직임 추정을 수행한다.
계층적 블록 정합 알고리즘을 적용하여 구한 최종 움직임 벡터는 상기 각 레이어에서 얻어진 움직임 벡터들의 벡터 합이 된다. 이때, 상위 레이어의 움직임 벡터는 가장 하위 레이어의 해상도에 맞춰서 적절히 스케일링-업(Scaling-up) 된다.
제12도는 계층적 블록 정합 알고리즘을 단화소 움직임 추정 방법으로 사용하는 움직임 추정 방법을 설명하는 움직임 추정 장치를 도시한 것이다.
제12a도에서는 계층적 블록 정합 알고리즘을 사용하는 종래의 움직임 추정 방법을 나타내는 것으로써, 제1움직임 추정부(22)는 계층적 블록 정합 알고리즘을 사용하여 단화소 단위의 움직임 추정을 수행한다. 제2움직임 추정부(24)는 계층적 블록 정합 알고리즘의 가장 하위 레이어(즉, 레이어 0)를 사용하여 반화소 단위의 움직임 추정을 수행하는 방법을 생각할 수 있다. 여기서, 반화소 단위의 움직임 추정을 하나의 레이어로 보면 전체적으로는 4-레이어 계층적 탐색 기법이 되게 된다.
제12b도에서는 계층적 블록 정합 알고리즘을 사용하는 본 발명의 움직임 추정 방법의 제1실시 예를 나타내는 것으로써, 단화소 움직임 추정단계에서 움직임 스케일링은 레이어 2와 레이어 1사이에서 수행된다. 제12c도는 계층적 블록 정합 알고리즘을 사용하는 본 발명의 움직임 추정 방법의 제2실시 예를 나타내는 것으로써, 단화소 움직임 추정단계에서 움직임 스케일링은 레이어 1과 레이어 0사이에서 수행된다. 제12d도에서는 계층적 블록 정합 알고리즘을 사용하는 본 발명의 움직임 추정 방법의 제 3실시 예를 나타내는 것으로써, 단화소 움직임 추정 단계에서 움직임 스케일링은 레이어 2와 반화소 벡터 단위의 움직임 추정 레이어 사이에서 수행된다.
표 1은 본 발명의 디지탈 영상을 위한 움직임 추정 방법의 효과를 확인하기 위하여 13종류의 MPEG-2 표준 영상을 사용하여 부호화/복호화를 거친 영상에 대한 평균 PSNR을 나타낸 것이다. 여기서, 사용된 영상의 이름은 '발레(Bllet), 자전거(Bicycle), 버스(Bus), 치어리더(Ceerleaders), 컨페티(Confetti), 화원(Flower garden), 축구(Football), 믹스(Mix), 모빌 & 캘린더(Mobile and calendar), 거친파도(Popple), 수지(susie), tempete, 테니스(Tennis)'이다. 각 영상은 모두 30 frame/sec의 프레임 속도를 갖고, 각 영상의 유효 화소수는 NTSC 화면에 대응하는 720×480화소이다. 성능비교를 위해 선택된 방법은 제12a, c, d도에 도시된 계층적 블록 정합 알고리즘을 사용한 움직임 추정 방법이다. 표 1은 비교할 3가지 방법을 MPEG-2 영상의 소프트웨어에 적용하였을 때, 부호화/복호화를 거친 영상에 대한 평균 PSNR을 나타낸 것이다. 이때, 평균 PSNR은 다음 식과 같이 정의 된다.
Figure kpo00019
여기서,
Figure kpo00020
는 각각 원 영상, 부호화/복호화된 영상, 영상의 수평, 수직 화소수를 의미한다. 부호화/복호화를 위해서 적용한 파라미터 값은 N(Group of Picture의 크기)=12 프레임, M(I, P-화면과 P-화면의 프레임 간격)=2, T(압축된 영상의 비트 전송율)=6Mbps이다. 표 1은 계층적 블록 정합 알고리즘을 사용한 본 발명의 디지탈 영상을 위한 움직임 추정 방법이 1/4의 계산량으로도 종래의 움직임 추정 방법과 근접한 성능을 갖게 됨을 나타내고 있다.
상술한 바와 같이, 본 발명의 디지탈 영상을 위한 움직임 추정 장치 및 방법에 의하면, 단화소 움직임 벡터를 추정할 때 상위필드 대 상위필드, 하위필드 대 하위필드 경로의 단화소 단위의 움직임 벡터를 스케일링하여 상위필드 대 하위필드, 하위필드 대 상위필드 경로의 반화소 움직임 추정에 적용함으로써, 단화소 단위의 움직임 추정을 위한 계산량이 종래에 비하여 1/4만큼 감소되는 효과가 있다. 또한, 단화소와 반화소 단위의 움직임 추정에서 발생하는 중복된 계산을 방지할 수 있다. 이에 따라, 중복된 계산으로 인한 움직임 추정 성능의 저하를 방지할 수 있다.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의해 정하여 져야만 할 것이다.
Figure kpo00021

Claims (12)

  1. 입력 영상을 부호화함에 있어 움직임을 추정하는 움직임 추정 장치에 있어서, 이전영상을 탐색하여 입력영상에 대한 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로의 단화소 움직임을 추정하는 제1움직임 추정수단과; 상기 제1움직임 추정수단에서 출력되는 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하는 프레임 벡터 결정수단과; 상기 제1움직임 추정수단에서 출력되는 움직임 벡터 각각을 스케일링하여 상위필드 대 하위필드의 경로와 하위필드 대 상위필드의 경로에 대한 필드 움직임 벡터를 결정하는 스케일링 수단과; 상기 제1움직임 추정수단 및 프레임 벡터 결정수단과 스케일링 수단에서 각각 출력되는 단화소 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제2움직임 추정수단을 구비하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정장치.
  2. 제1항에 있어서, 상기 프레임 벡터 결정수단은 상기 움직임 벡터들을 평균하여 프레임 벡터를 결정하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 장치.
  3. 제1항에 있어서, 상기 제2움직임 추정수단은 상기 프레임의 움직임 벡터와 필드의 움직임 벡터를 비교하여 보상오차가 작은 쪽을 선택하여 출력하는 필드/프레임 결정수단을 추가로 구비하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 장치.
  4. 제1항에 있어서, 상기 스케일링 수단은 상기 제1움직임 추정수단에서 출력되는 상기 상위필드 대 상위필드 경로의 단화소 움직임 벡터에 임의의 스케일링 계수를 곱하여 하위필드 대 상위필드 경로의 단화소 움직임 벡터를 검출하는 제1스케일링 수단과; 상기 단화소 움직임 검출수단에서 출력되는 상기 하위필드 대 하위필드 경로의 단화소 움직임 벡터에 임의의 스케일링 계수를 곱하여 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 검출하는 제2스케일링 수단을 구비하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 장치.
  5. 제4항에 있어서, 상기 스케일링 수단은 연속되는 필드 사이에 물체의 움직임을 등속운동으로 가정하고 화면 유형 및 움직임 추정 방향과 그에 따른 필드간의 거리에 따라 스케일링 계수를 결정하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 장치.
  6. 입력 영상을 부호화함에 있어 움직임을 추정하는 움직임 추정 방법에 있어서, 이전영상을 탐색하여 입력영상에 대한 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로의 단화소 움직임을 추정하여 움직임 벡터를 검출하는 제1단계와; 상기 필드 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하고 상기 필드 움직임 벡터를 각각 스케일링하여 상위필드 대 하위필드의 경로와 하위필드 대 상위필드의 경로에 대한 필드 움직임 벡터를 결정하는 제2단계와; 상기 제1및 제2단계에서의 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임 벡터를 검출하는 제3단계를 포함하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 방법.
  7. 제6항에 있어서, 상기 프레임 단위의 움직임 벡터와 필드 단위의 움직임 벡터를 비교하여 보상오차가 작은 쪽을 선택하여 출력하는 단계를 추가로 포함하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 방법.
  8. 제6항에 있어서, 상기 2단계에서 상기 프레임 움직임 벡터는 상기 필드 움직임 벡터들을 평균하여 구하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 장치.
  9. 제6항에 있어서, 상기 2단계에서 상기 상위필드 대 상위필드 경로의 단화소 움직임 벡터에 임의의 스케일링 계수를 곱하여 하위필드 대 상위필드 경로의 단화소 움직임 벡터를 검출하고, 상기 하위필드 대 하위필드 경로의 단화소 움직임 벡터에 임의의 스케일링 계수를 곱하여 상위필드 대 하위필드 경로의 단화소 움직임 벡터를 검출하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 방법.
  10. 제9항에 있어서, 상기 스케일링 계수는 연속되는 필드 사이에 물체의 움직임을 등속운동으로 가정하고 화면 유형 및 움직임 추정 방향과 그에 따른 필드간의 거리에 따라 가변적으로 결정되는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 방법.
  11. 입력 영상을 부호화함에 있어 계층적 구조로 나누어 움직임을 추정을 수행하는 움직임 추정 방법에 있어서, 서로 다른 탐색영역의 크기를 갖는 n(n
    Figure kpo00022
    2)개의 계층으로 구성된 입력영상과 이전영상의 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로에 대하여 계층적으로 단화소 단위의 움직임을 반복 추정하여 임의의 계층에서 단화소 움직임 벡터를 검출하는 제1단계와; 상기 필드 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하고 상기 필드 움직임 벡터들을 각각 스케일링하여 상위필드 대 하위필드의 경로와 하위필드 대 상위필드의 경로에 대한 필드 움직임 벡터를 결정하는 제2단계와; 상기 1 및 2단계에서의 움직임 벡터들을 기준으로 상기 임의의 계층 다음의 m(1
    Figure kpo00023
    m<n)개의 계층에서 계층적으로 단화소 단위의 움직임을 반복 추정하여 최하위층에서 최종의 단화소 움직임 벡터를 검출하는 제3단계와; 상기 3단계에서 검출되는 단화소 움직임 벡터를 기준으로 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제4단계를 포함하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 방법.
  12. 입력 영상을 부호화함에 있어 계층적 구조로 나누어 움직임을 추정을 수행하는 움직임 추정 방법에 있어서, 서로 다른 탐색영역의 크기를 갖는 n(n
    Figure kpo00024
    2)개의 계층으로 구성된 입력영상과 이전영상의 상위필드 대 상위필드 경로와 하위필드 대 하위필드의 경로에 대하여 계층적으로 단화소 단위의 움직임을 반복 추정하여 최하위층에서 단화소 움직임 벡터를 검출하는 제1단계와; 상기 필드 움직임 벡터를 기초하여 프레임 움직임 벡터를 결정하고 상기 필드 움직임 벡터들을 각각 스케일링하여 상위필드 대 하위필드의 경로와 하위필드 대 상위필드의 경로에 대한 필드 움직임 벡터를 검출하는 제2단계와; 상기 1 및 2단계에서의 단화소 움직임 벡터들을 기준으로 상기 복호화된 영상을 탐색하여 반화소 단위의 움직임을 추정하는 제3단계를 포함하는 것을 특징으로 하는 디지탈 영상을 위한 움직임 추정 방법.
KR1019970057610A 1997-11-01 1997-11-01 디지털영상을위한움직임추정장치및방법 KR100251548B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019970057610A KR100251548B1 (ko) 1997-11-01 1997-11-01 디지털영상을위한움직임추정장치및방법
US09/182,194 US6430223B1 (en) 1997-11-01 1998-10-30 Motion prediction apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970057610A KR100251548B1 (ko) 1997-11-01 1997-11-01 디지털영상을위한움직임추정장치및방법

Publications (2)

Publication Number Publication Date
KR19990038001A KR19990038001A (ko) 1999-06-05
KR100251548B1 true KR100251548B1 (ko) 2000-04-15

Family

ID=19523995

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970057610A KR100251548B1 (ko) 1997-11-01 1997-11-01 디지털영상을위한움직임추정장치및방법

Country Status (2)

Country Link
US (1) US6430223B1 (ko)
KR (1) KR100251548B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100994773B1 (ko) 2004-03-29 2010-11-16 삼성전자주식회사 계층적 움직임 추정에 있어서 움직임 벡터 생성 방법 및장치

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE344594T1 (de) * 1998-12-10 2006-11-15 Matsushita Electric Ind Co Ltd Arithmetische filtervorrichtung
JP3778721B2 (ja) * 1999-03-18 2006-05-24 富士通株式会社 動画像符号化方法および装置
KR100587263B1 (ko) * 1999-03-27 2006-06-08 엘지전자 주식회사 비디오 신호의 프레임 율 변환 방법
JP4496595B2 (ja) * 1999-03-29 2010-07-07 ソニー株式会社 画像処理装置および画像処理方法、並びに記録媒体
US6687388B2 (en) * 2000-01-28 2004-02-03 Sony Corporation Picture processing apparatus
EP1295255B1 (en) * 2000-05-19 2007-02-14 Koninklijke Philips Electronics N.V. Determination of a block matching candidate vector
US6687295B1 (en) * 2000-07-27 2004-02-03 Ati International Method and apparatus for motion estimation for encoding sequential frames
KR100360893B1 (ko) * 2001-02-01 2002-11-13 엘지전자 주식회사 영상 움직임 보상 장치 및 방법
US6687301B2 (en) * 2001-03-19 2004-02-03 Fulvio Moschetti Method for block matching motion estimation in digital video sequences
US7817717B2 (en) * 2002-06-18 2010-10-19 Qualcomm Incorporated Motion estimation techniques for video encoding
KR20040070490A (ko) * 2003-02-03 2004-08-11 삼성전자주식회사 비월 주사 방식의 동영상 부호화/복호화 방법 및 그 장치
US7075581B1 (en) * 2003-06-03 2006-07-11 Zoran Corporation Interlaced-to-progressive scan conversion based on film source detection
US7206411B2 (en) 2003-06-25 2007-04-17 Wegener Communications, Inc. Rapid decryption of data by key synchronization and indexing
KR100579542B1 (ko) * 2003-07-29 2006-05-15 삼성전자주식회사 블럭 간의 상관성을 고려한 움직임 추정 장치 및 방법
US7185187B2 (en) * 2003-09-11 2007-02-27 Wegener Communications, Inc. Protected dual purpose power/enter switch apparatus and method
JP4470431B2 (ja) * 2003-10-01 2010-06-02 ソニー株式会社 データ処理装置およびその方法
US7899117B2 (en) * 2004-05-26 2011-03-01 Panasonic Corporation Apparatus and method for encoding motion vector, and program and medium therefor
US7450180B2 (en) * 2004-12-29 2008-11-11 General Instrument Corporation Method for detecting interlaced material and field order
US20060222251A1 (en) * 2005-04-01 2006-10-05 Bo Zhang Method and system for frame/field coding
EP1811457A1 (en) * 2006-01-20 2007-07-25 BRITISH TELECOMMUNICATIONS public limited company Video signal analysis
KR100734314B1 (ko) * 2006-02-11 2007-07-02 삼성전자주식회사 움직임 보상 기반의 영상 압축 시스템에서의 영상 신호의공간 해상도 변환 방법
US8090024B2 (en) * 2007-06-25 2012-01-03 Sigma Designs, Inc. Methods for processing two data frames with scalable data utilization
KR101336951B1 (ko) * 2007-11-02 2013-12-04 삼성전자주식회사 휴대 단말기 및 그 파노라마 이미지 촬영 모드 수행 방법
CN101540902B (zh) * 2008-03-20 2011-02-02 华为技术有限公司 运动矢量的缩放方法和装置、编解码方法和系统
US20110261887A1 (en) * 2008-06-06 2011-10-27 Wei Siong Lee Methods and devices for estimating motion in a plurality of frames

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4937666A (en) * 1989-12-04 1990-06-26 Bell Communications Research, Inc. Circuit implementation of block matching algorithm with fractional precision
US5227878A (en) * 1991-11-15 1993-07-13 At&T Bell Laboratories Adaptive coding and decoding of frames and fields of video
KR950014862B1 (ko) * 1992-02-08 1995-12-16 삼성전자주식회사 움직임추정방법 및 그 장치
JP2636622B2 (ja) * 1992-03-13 1997-07-30 松下電器産業株式会社 ビデオ信号の符号化方法及び復号化方法ならびにビデオ信号の符号化装置及び復号化装置
JPH05336514A (ja) * 1992-05-29 1993-12-17 Sony Corp 画像符号化装置
US6101313A (en) * 1992-06-29 2000-08-08 Sony Corporation High efficiency encoding and decoding of picture signals and recording medium containing same
US5398079A (en) * 1993-01-27 1995-03-14 General Instrument Corporation Half-pixel interpolation for a motion compensated digital video system
KR0166724B1 (ko) * 1993-05-08 1999-03-20 김광호 반화소정확도를 갖는 동벡터추정방법 및 그 장치
KR960010198B1 (ko) * 1993-07-21 1996-07-26 배순훈 동영상 부호화기의 움직임 추정방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100994773B1 (ko) 2004-03-29 2010-11-16 삼성전자주식회사 계층적 움직임 추정에 있어서 움직임 벡터 생성 방법 및장치
US8130835B2 (en) 2004-03-29 2012-03-06 Samsung Electronics Co., Ltd. Method and apparatus for generating motion vector in hierarchical motion estimation

Also Published As

Publication number Publication date
KR19990038001A (ko) 1999-06-05
US6430223B1 (en) 2002-08-06

Similar Documents

Publication Publication Date Title
KR100251548B1 (ko) 디지털영상을위한움직임추정장치및방법
US7362808B2 (en) Device for and method of estimating motion in video encoder
US6148027A (en) Method and apparatus for performing hierarchical motion estimation using nonlinear pyramid
KR100242406B1 (ko) 디지탈 비디오 동화상의 움직임 보상 방법
KR0171154B1 (ko) 특징점 기반 움직임 추정을 이용하여 비디오 신호를 부호화하는 방법 및 장치
EP1993292B1 (en) Dynamic image encoding method and device and program using the same
KR20060047595A (ko) 적응 시간적인 예측을 채용하는 움직임 벡터 추정
JPH0870460A (ja) 動き大小に適応する動き補償符号化方法及びその装置
JPH1146364A (ja) 動き補償符号化装置、復号化装置、符号化方法及び復号化方法
KR100560843B1 (ko) 비디오 부호기에서 적응 움직임 벡터의 탐색 영역을결정하는 방법 및 장치
KR20060044942A (ko) 라인 및 컬럼 벡터를 사용한 움직임 벡터 추정
JP3778960B2 (ja) 動画像符号化方法及び装置
KR100994768B1 (ko) 동영상 부호화를 위한 움직임 추정 방법 및 이를 구현하기위한 프로그램이 기록된 기록 매체
JP4494803B2 (ja) 動き補償に基づいた改善されたノイズ予測方法及びその装置とそれを使用した動画符号化方法及びその装置
KR20040108056A (ko) 블럭 기반의 움직임 보상 장치 및 방법
JP3519441B2 (ja) 動画像伝送装置
JP2001128179A (ja) 動画像符号化装置および方法
KR100266161B1 (ko) 디지털 영상을 위한 움직임 추정방법(Method of Predicting Motion for Digital Image)
JP3478836B2 (ja) デジタル画像シーケンスの符号化方法および符号化装置
JPH06165164A (ja) 動画像処理装置
KR100382540B1 (ko) 움직임추정방법
KR100262962B1 (ko) 움직임 추정방법 및 장치
JP2000308066A (ja) 動画像符号化装置および動画像符号化方法
JP3536355B2 (ja) 符号化装置
KR100252340B1 (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: 20080102

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee