KR0126871B1 - 양방향 이동벡터 추정을 위한 고속 블럭정합 방식 - Google Patents
양방향 이동벡터 추정을 위한 고속 블럭정합 방식Info
- Publication number
- KR0126871B1 KR0126871B1 KR1019940018902A KR19940018902A KR0126871B1 KR 0126871 B1 KR0126871 B1 KR 0126871B1 KR 1019940018902 A KR1019940018902 A KR 1019940018902A KR 19940018902 A KR19940018902 A KR 19940018902A KR 0126871 B1 KR0126871 B1 KR 0126871B1
- Authority
- KR
- South Korea
- Prior art keywords
- motion vector
- picture
- initial
- equation
- pictures
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Analysis (AREA)
Abstract
본 발명은 고속 블럭정합 방식에 관한 것으로서, 이전의 기준픽쳐로부터 순방향 예측되는 픽쳐와 전후의 두 기준픽쳐로부터 양방향 예측되는 픽쳐가 적응적으로 사용되는 양방향 이동보상 예측구조에서 이동벡터의 시공간 상관성과 이동변위에 대한 등숙 모델을 이용하여 양방향 이동벡터 추정의 정확도가 계산량을 동시에 개선시키기 위한 양방향 이동벡터 추정을 위한 고속 블럭정합 방식이다.
Description
제1도는 MPEG의 GO(group of Picture)구조도 (N=12, M=3일경우),
제2도는 B/P 픽쳐에 대한 이동벡터 추정 및 보상의 예시도,
제3도는 블럭정합방식(BMA)의 이동벡터 추정 과정의 예시도,
제4도는 전탐색 방식(FSA)을 위한 탐색영역의 예시도,
제5도는 망원경적 탐색 방식(TSA)에 의한 순방향 이동벡터 추정의 예시도,
제6도는 공간영역에서 이웃한 후보벡터의 예시도,
제7도는 시간영역의 추가적인 후보벡터의 예시도이다.
*도면의 주요 부분에 대한 부호의 설명*
11 : 인트라(1)픽쳐, 12 : 순방향 예측(P)픽쳐,
13 : 양방향 예측(B)픽쳐, 14 : 순방향 예측,
15 : 양방향 예측, 21 : BK픽쳐의 순방향 이동벡터,
22 : BK픽쳐의 역방향 이동벡터, 23 : PM픽쳐의 순방향 이동벡터,
24 : 이동벡터가 추정될 마크로블럭, 31 : 이동벡터가 추정될 현재 픽쳐,
32 : 이전 또는 이후의 기준픽쳐,
33 : 이동벡터가 추정될 현재의 블럭(마크로블럭),
34 : 추정된 이동벡터, 41 : FSA 방식에서 B1픽쳐의 탐색영역
42 : B2픽쳐의 탐색영역, 43 : B3픽쳐의 탐색영역,
44 : 이동벡터가 추정될 마크로블럭, 51 : TSA방식에서 B1픽쳐의 탐색영역,
52 : B2의 탐색영역.
본 발명은 동영상 압축을 위한 MPEG 표준안과 같이 단방향 예측 픽쳐와 양방향 예측 픽쳐가 적응적으로 사용되는 이동보상 예측 부호화기법에서 적은 계산량으로 보다 효과적인 양방향 이동벡터를 추정하기 위한 고속 블럭정합방식에 관한 것이다.
이동보상 예측(motion comprensated prediction : MCP)에 의해서 시간방향의 중복성을 줄이고 이산여현변환(DCT : discrete cosine transform)에 의해서 공간방향의 중복성을 줄이는 MCP/DCT 복합 부호화기법은 동영상 데이타 압축을 위한 대표적인 기법이라 할 수 있다. 국제표준화 기구인 ISO-IEG/MPEG(Moving Picture Experts Group)에서는 현재 디지탈 저장매체 뿐아니라 통신과 방송 분야에도 응용가능한 동영상 압축기법에 관한 표준안을 제정하고 있는데, 이 표준안도 역시 MCP/DCT 복합 부호화기법을 사용하고 있다. MPEG-비디오표준기법(이하 MPEG라 함)에서는 임의 접근(random access)과 비디오 신호의 비트율 고압축에 대한 서로 상층되는 요구로 인하여 인트라(I) 픽쳐, 단방향 예측(P), 양방향 예측(B)픽쳐가 정의된다. IBP픽쳐는 입력 순서에 따라 주기적으로 사용되는데 연속하는 두 I-픽쳐 사이의 IBP 픽쳐 그룹을 GOP(group of Picture)라고하며, GOP는 임의 접근의 단위 기능을 한다. 제1도는 N=12, M=3일때의 GOP구조를 나타낸 것이다. 여기서 N은 GOP내의 픽쳐 갯수를 의미하며, M은 연속하는 두 P-픽쳐와 P-픽쳐사이의 픽쳐간격을 의미한다. 즉, P-픽쳐와 P-픽쳐 사이에는 (M-1)개의 B-픽쳐가 사용된다. I-픽쳐는 이동보상을 하지 않는 원형상 데이타만을 이용하여 부호화된다.
따라서 다른 픽쳐의 영향이 없기 때문에 부호화된 비트열로의 임의 접근을 가능하게 하는 접근점(access point) 역활을 하며, 부호화 과정에서 발생하는 부호화 오류(coding error)가 후속 픽쳐로 전파되는 현상(error progagation)을 방지할 수 있다. P-픽쳐는 이전의 I-픽쳐 또는 P-픽쳐로부터의 인과적(causal)예측에 의한 이동보상(motion compensation : MC)후에 부호화된다. B-픽쳐는 이전 또는 이후의 I-픽쳐나 P-픽쳐로부터의 비인과적(noncausal) 예측에 의한 이동보상 후에 부호화된다.
제1도의 GOP 구조에서 연속하는 P(I)-픽쳐와 P픽쳐 사이의 픽쳐그룹(I0B1B2…BM-1PM)을 SGOP(sub-group of picture)라 할때 SGOP의 B-픽쳐 및 P-픽쳐에 대한 이동보상관계는 제2도와 하기 표1에 나타낸 것과 같다.
[표 1] SGOP의 B-픽쳐 및 P-픽쳐에 대한 이동보상관계
표 1과 같이 P-픽쳐는 이전의 P-픽쳐(또는 I-픽쳐)로부터의 순방향(forward) MCP만을 하고, B-픽쳐는 순방향 MCP, 이후의 P-픽쳐(또는 I-픽쳐)로부터의 역방향(backward) MCP, 그리고 전·후의 P-픽쳐(또는 I-픽쳐)로부터의 양방향(bi-directional)MCP등 세 종류의 MCP를 한다. 양방향 MCP는 이동 보상 보간(motion compensated interpolation : MCI)에 의한 MCP를 의미한다. B-픽쳐의 각 블럭은 세가지 MCP에 의한 예측오차를 구한 후, 최소의 SSE(sum of square error)를 갖는 것을 그 블럭의 최종 MCP 모드로 결정한다.
MPEG에서는 마크로블럭(macroblock :MB)이라 불리는 16×16크기의 블럭 단위로 이동벡터를 추정하는데, 블럭단위의 이동벡터 추정 방식인 블럭정합방식(block matching algorithm : BMA)는 예측 효율과 정확도, 계산상의 복잡도, 그리고 이동벡터 표현을 위한 데이터량 등의 서로 상충되는 요건들을 대체로 잘 만족시키며, 특히 MCT/DCT 복합 부호화기법과 같은 블럭단위의 부호화기법에서 구현이 용이하기 때문에 널리 이용한다. BMA는 제3도에 나타낸 것과 같이 움직임을 추정하고자 하는 현재의 영상을 일정한 크기의 블럭으로 나눈후, 각 블럭을 주어진 정합기준(matching criteria)에 따라 기준픽쳐(reference picture)의 탐색영역 내에 있는 후보 블럭들과 비교하여 최적의 정합 블럭(best matching block)의 위치를 찾음으로써 각 블럭의 2-D 이동벡터를 추정한다. 그러나 MPEG와 같이 전후의 기준픽쳐(past and future reference picture)로부터의 양방향 예측(bi-directional prediction)이 가능한 B-픽쳐를 적응적으로 사용할 경우, B-픽쳐의 수에 따라 이동벡터를 추정하고자 하는 픽쳐간의 간격이 멀어지기 때문에 BMA의 예측 효율과 추정의 정확도가 떨어지고, BMA의 계산량도 급격히 증가하여 실시간 구현이 어려워진다. 또한 MPEG, 특히 MPEG-2 기법은 full motion video와 같이 움직임이 크고 다양한 영상을 주대상으로 하기 때문에 기존의 고속 알고리즘은 성능저하를 초래한다.
MPEG의 양방향 이동벡터를 추정하기 위한 기존의 대표적인 방식 및 그 문제점을 살펴보고, 이어서 본 발명 고속 블럭정합방식에 대하여 설명하도록 한다.
1. 기존의 이동벡터 추정방식
(1)전탐색 방식(full search algorithm : FSA)
BMA에서 최대 계산량을 제한하기 위하여 미리 설정된 최대 이동변위내에서 이동벡터를 추정하는데, 주어진 탐색 영역내의 모든 블럭과 비교하여 이동벡터를 추정하는 전탐색 방식은 예측 이득의 측면에서 최고의 성능을 갖지만 지나치게 많은 계산량이 요구된다. 예를 들면, K×L 크기의 블럭에 대하여 픽쳐당 최대 이동변위를 ±p(pels/frame이라고 할 경우, 기준픽쳐에서 탐색영역의 크기는 (K+2p)×(L+2p)가 된다. 즉 정합기준에 따라 비교해야할 후보 블럭의 수가 (2p+1)2만큼 되기 때문에 p가 클 경우 실시간 구현이 어려워진다. 특히 MPEG와 같이 추정할 픽쳐의 간격이 멀어질 경우에는 간격의 제곱에 비례하여 계산량이 증가하며, 또 양방향 MV를 추정해야 하기 때문에 실시간 구현이 매우 어렵다. 픽쳐간격이 k일때 탐색영역내의 후보 벡터의 집합 R(k)는 다음과 같다.
R(k)={ (dx,dy)|-k·p ≤ dx,dy ≤ k·p } (1)
따라서 계산의 복잡도(computational complexity)에 해당하는 정합블럭의 수는 다음과 같다.
CK=(2·k·p+1)2
k2·4p2
k2·C0
여기서 C0는 k=1일때의 정합 블럭의 수로서 C0=(2p+1)2이다. 위 식에서 픽쳐간격이 k배 증가하면 계산량은 k2배로 증가함을 알 수 있다. 제4도는 SGOP내의 각 픽쳐에 대한 순방향 이동벡터를 추정(FME)할 때 전탐색 방식의 탐색영역을 나타낸 것이다. 역방향 ME(BME)도 이와 유사하다. SGOP내의 P와 P 픽쳐 간격이 M일때, 각 블럭에 대한 전체 계산의 복잡도 C는 다음과 같다.
C=C0·
여기서 M2은 P-픽쳐의 FME에 관한 것이고, k2과 (M-k)2은 각각 B-픽쳐의 FME 및 BME에 관한 것이다. M=3인 경우, 각 픽쳐의 평균 계산의 복잡도는 M=1일때의 약 6.3배가 된다. 최악의 경우로 P-픽쳐에서는 9배가 복잡도를 갖는다.
(2)망원경적 탐색 방식(telescopic search algorithm : TSA)
영상간에 운동체의 이동변위는 매우 높은 상관성을 갖는데, 망원경적 탐색 방식은 이러한 상관성을 이용하여 탐색영역을 줄이는 방식이다. 제5도는 M=3일때의 순방향 MV의 추정과정을 나타낸 것으로 순서는 다음과 같다.
Step 1 : 기준픽쳐 P0와 현재 픽쳐 B1사이에서 B1픽쳐의 MB에 대한 이동백터vf(0,1)를 추정한다.
Step 2 : vf(0,1)를 초기치로 하여 기준픽쳐 P0와 B2픽쳐사이에서 B2픽쳐의 MB에 대한 이동벡터 vf(0,2)를 추정한다. 이때 탐색 영역의 크기는 Step 1 과 같다.
Step 3 : vf(0,2)를 초기치로 하여 기준픽쳐 P0와 P3픽쳐사이에서 P3픽쳐의 MB에 대한 이동벡터 vf(0,3)를 추정한다.
TSA방식은 각 단계에서 추정된 MV들이 바로 해당되는 픽쳐의 MV로 사용된다. 역방향 MV도 유사한 방식으로 추정된다. 따라서 SGOP 내의 전체 계산의 복잡도는 다음과 같다.
C=C0·{2·(M-2)+1} (4)
여기서 첫항은 B1,B2,…BM-1에 대한 것이고, 두번째 항은 PM에 대한 것이다. M=3일경우, 각 픽쳐의 평균 계산량은 M=1일때에 비해 1.7배가 된다. 그러나 이 방법 역시 B-픽쳐의 역방향 ME로 인하여 TS1방식과 마찬가지로 최악의 경우 M배의 계산량이 요구된다. 또한 TSA 방식 역시 각 추정단계에서 픽쳐 간격 k=1에 해당되는 탐색영역에서 전탐색 방식을 이용하기 때문에 전탐색 방식의 범주에 속하며 그 계산량도 방대하다. 특히, MPEG-2의 경우 최대 이동변위 p가 14pels/frame 이상의 넓은 영역에서 추정하고 각 MB에 대한 필드 MV와 프레임 MV를 추정해야 하기 때문에 실시간 구현이 어렵다. 한편 운동체의 움직임이 크거나 에지(edge)에서는 운동체의 움직임궤적추정(motion trajectory tracking)이 용이하지 않기 때문에 이전 단계에서 추정된 부정확한 초기 MV 주위의 local minimum 방향으로 수렴하는 오정합이 발생한다.
따라서 전탐색 방식이나 망원경탐색에 비교될 만한 예측 효율을 얻을 수 있으면서 한편으로 실시간 구현이 가능한 고속 알고리즘이 요구되고 있다.
2. 본 발명의 고속 블럭정합 방식
블럭의 이동 방향에 대한 정보를 미리 알 수 있으면, BMA에서 추정의 대상이 되는 탐색영역을 보다 효과적으로 줄일 수 있다.
블럭의 이동방향에 대한 사전 정보(prior information)란 곧 추정될 블럭의 이동벡터에 대한 초기 벡터(initial vector)의 설정을 의미한다. 초기 이동벡터가 실제 움직임에 보다 접근하게 설정 될수록 탐색영역, 즉 추정의 계산량을 더욱 효과적으로 줄일 수 있다. 일반적으로 이미 추정된 이동벡터들의 시공간 상관성을 이용한 초기 이동벡터 설정 방식이 널리 이용된다. 본 발명은 이러한 특성을 이용하여 MPEG와 같이 양방향 ME를 해야하고, ME의 대상이 될 픽쳐간의 간격이 일정하지 않은 IBP 픽쳐를 포함하는 GOP 구조에 적합한 고속블럭정합 방식이다. 이 방식은 다음의 세 과정을 통하여 B-픽쳐 및 P-픽쳐에 대한 순방향 및 역방향 MV를 추정한다.
·초기 이동벡터 추정(initial MV estimation) : 이미 추정된 다른 픽쳐의 MV나 현재 픽쳐의 주위 MV로부터 초기 벡터를 추정한다.
·탐색 영역 선택(search area seledtion) : 추정된 초기 MV의 정확도에 따라 탐색영역을 결정한다.
·추가적인 ME(MV refinement) : 앞의 두과정에서 선택된 초기 벡터를 중심으로 작은 탐색영역내에서 최종 MV를 추정한다.
(1) 초기 이동벡터 추정
블럭의 크기가 충분히 작다면 동일한 움직임을 갖는 운동체는 여러 블럭으로 나누어질 수 있기 때문에, 영상 내에서 이웃한 블럭들의 MV들은 매우 높은 상관성(spatial correlation)을 갖는다. 따라서 현재 블럭의 MV는 제6도에 나타낸 바와 같이 이미 추정된 주위 블럭들(causal blocks)의 MV들로부터 예측될 수 있다. 그러나 현재 블럭의 -45°대각방향에 있는 MV(v4)는 수평과 수직방향의 MV(v1,v2)와 거의 일치한다. 따라서 제안된 방식에서는 현재 블럭에 대한 초기 MV로 공간영역에서 다음의 세 후보 벡터를 이용한다.
RS={v1,v2,v3} (5)
한편 영상시퀀스에서 운동체의 움직임의 연속성으로 인하여, 시간 방향으로 이웃한 블럭들의 MV들 역시 매우 높은 상관성(temporal correlation)을 갖는다. 따라서 바로 이전 픽쳐에서 추정된 MV를 현재 블럭의 초기 MV로 사용할 수 있다. M=1인 경우, 즉 B-픽쳐를 사용하지 않는 IPPP…와 같은 GOP 구조에서는 이동벡터가 추정될 픽쳐 간격이 항상 1이고 또 순방향 ME만을 하기 때문에, 이전 픽쳐의 MV를 다음과 같이 현재 픽쳐의 ME를 위한 초기 벡터로 설정할 수 있다.
·등속운동의 경우
vf(k-1,k)=vf(k-2,k-1)(6)
·가속운동의 경우
vf(k-1,k)=2·vf(k-2,k-1)-vf(k-3,k-2)(7)
여기서 vf(m,n)은 m번째 픽쳐로부터 추정된 n번째 픽쳐의 한 블럭에 대한 순방향 MV를 의미한다. 그러나 제2도와 같이 M>1인 경우, 즉 하나 이상의 B-픽쳐가 사용될 경우 양방향 ME를 이해해야하고, 또 현재 픽쳐와 기준픽쳐 사이의 간격이 일정하지 않기 때문에 위의 식(6) 또는 식(7)과 같은 초기 벡터 설정 방식은 적합하지 않다.
따라서 본 발명의 방식에서는 영상시퀀스의 이동 변위에 대한 속도 제한식(velocity constrained equation)으로부터 MPEG에 적합한 시간 방향 초기 벡터를 설정한다. 등속도 및 가속도 운동을 포함하는 영상에서 변위벡터는 다음과 같은 이동 모델로 표현할 수 있다.
d(p,n)=A(n-p2)+1(n-p) (8)
여기서 d(p,n)는 p번째와 n번째 픽쳐 사이의 변위벡터이며, A와 L은 연속하는 픽쳐간의 가속 및 등속벡터이다. 두 픽쳐 간의 간격이 작을 경우에는 다음의 등속 모델로 제한할 수 있다.
d(p,n)=L(n-p) (9)
식(9)를 제2와 같은 MPEG의 SGOP 구조에 적용하면 다음의 관계식을 얻을 수 있다.
Vf(0,k)-k·Vf(0,1)(10)
Vf(0,M)=·Vf(0,k)(11)
Vb(M,k)=·Vf(0,1)(12)
여기서 vf(0,k)는 k번째 픽쳐의 순방향 MV를 vb(M,k)는 k번째 픽쳐의 역방향 MV를 의미한다. 위의 관계식으로부터 이미 추정된 다른 픽쳐의 MV들을 이용하여 현재 블럭에 대한 초기 이동벡터를 다음과 같이 설정한다.
1) 순방향 MV(FMV)
순방향 MV는 인과적 예측이기 때문에 입력되는 영상의 순서(input order)에 따라 즉시 ME를 수행할 수 있다. 따라서 항상 이전 픽쳐들의 MV들로부터 초기 MV를 설정한다.
·k=1인 경우 : 현재의 SGOP내의 첫번째 픽쳐이므로 바로 이전 SGOP에서 추정된 MV들을 이용한다.
초기 Vf(0,1)=
여기서 v'f와 v'b는 이전 SGOP의 MV들이다. 이전의 SGOP내에서 vf(0,1)에 가장 인접한 후보 벡터를 v'f(0,M)이지만, 현재의 SGOP내의 첫 픽쳐가 I-픽쳐일 경우 v'f(0,M)는 없기 때문에 이 벡터를 초기 벡터로 설정하지 못한다.
·2≤k≤M인 경우 : 현재의 SGOP내에 이미 이동벡터추정(ME)이 끝난 픽쳐가 있으므로 현 SGOP의 순방향 MV들을 이용한다.
초기 Vf(0,1)=
2)역방향 MV(BMV)
역방향 ME는 비인과적인 예측이기 때문에 BK픽쳐의 역방향 ME는 이후의 기준픽쳐 PM픽쳐(또는 IM-픽쳐)가 입력될때까지 기다린 후 입력의 역순으로 ME를 수행한다.
·k=M-1인경우 : SGOP내에서 처음으로 역방향 MV를 추정하기 때문에 순방향 MV만을 이용한다.
초기 Vb(M,M-1)=
·1≤k≤M-2인 경우(M2) : 현 SGOP내에서 이미 추정된 FMV 및 BMV를 이용할 수 있다.
초기 Vb(M,k)=
위의 식(13)∼식(16)에서 M=2인 경우 두 후보 MV는 동일한 값을 갖기 때문에 초기 MV를 위한 후보벡터 하가나 줄어든다.
한편 블럭에 움직이는 에지(moving edge)가 포함될 때 같은 블럭위치에 있는 이전 픽쳐의 MV들로는 적합한 초기 MV를 추정할 수 없다. 이와 같은 경우에는 제7도에 나타낸 바와 같이 주위 블럭의 MV들을 이용할 때보다 정확한 초기 MV를 추정할 수 있다.
본 발명의 방식에서는 MV들의 상관성을 고려하여 좌·우 상·하에 있는 네개의 MV(v5,v6,v7,v8)를 이용한다.
이상의 관계식으로부터 본 발명 방식의 초기 MV 추정 과정을 정리하면 다음과 같다.
Step 1 : (시간 방향 후보 MV 결정)
SGOP내의 각 픽쳐에 대하여 식(13), 식(14),식(15), 또는 식(16)으로부터 구한 2개 또는 3개의 후보 MV들에서 예측 오차의 SAE(sum of absolte error)가 최소가 되는 것을 선택한다.
Step 2 : (공간 방향 부호 MV 결정)
식(5)(제6도)와 같이 공간 방향에서 이웃한 블럭의 세후보 MV들과 Step 1에서 결정된 후보 MV중에 SAE가 최소인 것을 선택한다.
Step 3 : (후보 MV의 적합성 판단)
만약 (최소 SAET1)
-위 과정에서 구한 MV를 최종 초기 MV로 결정
그외
-제7도의 네 후보 MV(v5,v6,v7,v8)로부터의 SAE와 비교한 후, 최종 초기 MV 결정
(2)탐색영역 선택
추정된 초기 MV의 정확도는 탐색 영역의 범위를 결정한다. 전 탐색 방식은 초기 MV로 원점, 즉 v=(0,0)를 설정하기 때문에 탐색영역이 상기 식(3)처럼 픽쳐 간격의 제곱에 비례하여 증가하고, 망원경적 탐색방식은 초기 MV로 이전 픽쳐의 MV를 사용하기 때문에 상기 식(4)처럼 항상 픽쳐 간격 1에 해당되는 탐색 영역을 갖는다.
본 발명의 방식은 실제 움직임에 근접하는 초기 MV를 설정하기 때문에 탐색영역을 대폭 줄일 수 있다.
본 발명의 방식에서는 추정된 초기 MV의 정확도에 따라 픽쳐 간격 1일 때의 최대 이동 변위 p의 1/3범위내에서 탐색 영역을 가변적으로 선택한다. 초기 MV에 대한 정확도의 판단기준으로 SAE를 사용한다. 먼저 초기 MV로부터 이동 보상된 예측오차의 SAE를 INITSAE라하고, 초기 MV 추정 과정에서 공간 방향의 이웃한 세 블럭과 시간 방향에서 선택된 한 블럭의 각각에서 계산된 SAE중 최대값을 MAXSAE, 최소값을 MINSAE라고 정의한다. 이때 초기 MV를 중심으로한 탐색영역 내의 최대 이동 변위는 다음과 같이 선택된다.
1)p=7pels/frame인 경우
만약 (INITSAET0)p'1 :
그외 만약 (NTSAE1.25×MAXSAE)p'2 :
그외p'=3 :
2)p=14pels/frame인 경우
만약 (INITSAET0)p'=1 :
그외 만약(INITSAE2×MINSAEOR INITSAE0.7×MXSAE)p'=2 :
그외 만약(INITSAEMAXSAE)p'=3 :
그외 만약(INITSAE1.25×MAXSAE)p'=4 :
그외p'=5 :
여기서 T0=3×(16×16)으로 선택하며, 일반적으로 이 값은 잡음의 영향으로 간주된다. 다른 문턱값은 실험을 통하여 선택된 것이다.
특히 탐색 영역을 결정하는 p'는 ME될 두 픽쳐간의 간격과는 무관하게 결정된다. 본 발명에서는 p=7, 14pels/frame인 경우에 대하여 설명했지만, 일반적인 p에 대해서도 유사하게 설정할 수 있다.
(3) 추가적인 이동벡터 추정
본 발명에 의해서 결정된 초기 MV를 중심으로 한 작은 탐색영역 내에서 BMA에 의한 최종 MV를 추정한다. 탐색영역 내의 정합 블럭수는 다음과 같다.
·본 발명 방식의 정합 블럭수
=(2p'+1)2
따라서 망원경적 탐색 방식과 비교할 때 각 블럭의 계산량은 p=7pels/frame인 경우에 약배, p=14pels/frame인 경우에 약배 만큼씩 감소된다.
상기한 본 발명은 고속 블럭정합 방식은 기존의 전탐색 방식이나 망원경 탐색에 비교될 만한 예측 효율을 얻을 수 있으면서 실시간 구현이 가능하다고 하는 장점이 있다.
Claims (8)
- 시간방향의 초기 이동벡터의 설정을 위하여 이동변위에 대한 속도 제한식으로 하기 식(9)의 등속 모델을 이용하는 것을 특징으로 하는 양방향 이동벡터 추정을 위한 고속 블럭정합 방식.d(p,n)=L(n-p)·······························································(9)d(p,n)은 p번째와 n번째 픽쳐 사이의 변위벡터, L은 연속하는 픽쳐간의 등속벡터이다.
- 제1항에 있어서, 픽쳐간격이 1일 때의 순방향 초기 이동벡터의 후보벡터들을 하기 식(13)과 같이 바로 이전의 SGOP(sub-group of picture)에서 추정된 순방향 및 역방향 이동벡터들에 상기 식(9)의 등속 모델을 적용하여 구하는 것을 특징으로 하는 양방향 이동벡터 추정을 위한 고속 블럭정합 방식.초기 Vf(0,1)=v'f와 v'b는 이전 SGOP의 MV들이다.
- 제1항에 있어서, 픽쳐간의 1보다 클 때의 순방향 초기 이동벡터의 후보벡터들을 하기 식(14)와 같이 현재의 SGOP에서 이미 추정된 이전 픽쳐의 순방향 이동벡터들의 상기 식(9)의 등속 모델을 적용하여 구하는 것을 특징으로 하는 양방향 이동벡터 추정을 위한 고속 블럭정합 방식.초기 vf(0,1)=
- 제1항에 있어서, 픽쳐간격이 1보다 클 때의 역방향 초기 이동벡터의 후보 벡터들을 하기 식(15)와 같이 현재의 SGOP에서 이미 추정된 이전 및 현재 픽쳐의 순방향 이동벡터들에 상기 식(9)의 등속 모델을 적용하여 구하는 것을 특징으로 하는 양방향 이동벡터 추정을 위한 고속 블럭정합 방식.초기 vb(M, M-1)=
- 제1항에 있어서, 픽쳐간격이 1보다 클 때의 역방향 초기 이동벡터의 후보벡터들을 하기 식(16)고 같이 현재의 SGOP에서 이미 추정된 현재 픽쳐의 순방향 이동벡터와 이후 픽쳐의 역방향 이동벡터들에 상기 식(9)의 등속 모델을 적용하여 구하는 것을 특징으로 하는 양방향 이동벡터 추정을 위한 고속 블럭정합 방식.초기Vb(M,K)=
- 설정된 초기 이동벡터의 정확도에 따라 픽쳐간격 1일 때의 최대 이동변위 p의 1/3범위내에서 탐색영역을 적응적으로 줄이는 것을 특징으로 하는 양방향 이동벡터의 추정을 위한 고속 블럭정합 방식.
- 선택된 초기 이동벡터의 정확도에 대한 판단기준으로 시공간 후보 블럭들의 SAE를 이용하는 것을 특징으로 하는 양방향 이동벡터의 추정을 위한 고속 블럭정합 방식.
- 선택된 초기 이동벡터를 중심으로 한 적은 탐색영역(≤p/3)내에서 블럭정합 방식으로 최종의 이동벡터를 추정함으로써 양방향 이동벡터 추정의 방대한 계산량을 줄이는 것을 특징으로 하는 양방향 이동벡터 추정을 위한 고속 블럭정합 방식.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940018902A KR0126871B1 (ko) | 1994-07-30 | 1994-07-30 | 양방향 이동벡터 추정을 위한 고속 블럭정합 방식 |
US08/392,344 US5786860A (en) | 1994-07-30 | 1995-02-22 | High speed block matching for bi-directional motion vector estimation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940018902A KR0126871B1 (ko) | 1994-07-30 | 1994-07-30 | 양방향 이동벡터 추정을 위한 고속 블럭정합 방식 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960006629A KR960006629A (ko) | 1996-02-23 |
KR0126871B1 true KR0126871B1 (ko) | 1997-12-29 |
Family
ID=19389548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019940018902A KR0126871B1 (ko) | 1994-07-30 | 1994-07-30 | 양방향 이동벡터 추정을 위한 고속 블럭정합 방식 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5786860A (ko) |
KR (1) | KR0126871B1 (ko) |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU728756B2 (en) * | 1997-03-07 | 2001-01-18 | General Instrument Corporation | Motion estimation and compensation of video object planes for interlaced digital video |
US5991447A (en) * | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
EP0909097B1 (en) * | 1997-03-19 | 2006-06-07 | Sony Corporation | Image encoding method and device |
JP3217987B2 (ja) * | 1997-03-31 | 2001-10-15 | 松下電器産業株式会社 | 動画像信号の復号方法および符号化方法 |
JP2897763B2 (ja) * | 1997-07-28 | 1999-05-31 | 日本ビクター株式会社 | 動き補償符号化装置、復号化装置、符号化方法及び復号化方法 |
WO1999019840A1 (en) * | 1997-10-15 | 1999-04-22 | Electric Planet, Inc. | A system and method for generating an animatable character |
EP1119975B1 (en) | 1998-10-13 | 2003-04-23 | STMicroelectronics Asia Pacific Pte Ltd. | Motion vector detection with local motion estimator |
US6983018B1 (en) | 1998-11-30 | 2006-01-03 | Microsoft Corporation | Efficient motion vector coding for video compression |
EP1104197A3 (en) * | 1999-11-23 | 2003-06-04 | Texas Instruments Incorporated | Motion compensation |
US6671319B1 (en) | 1999-12-28 | 2003-12-30 | Sony Corporation | Methods and apparatus for motion estimation using neighboring macroblocks |
WO2001058166A1 (en) * | 2000-02-01 | 2001-08-09 | Koninklijke Philips Electronics N.V. | Video encoding with a two step motion estimation for p-frames |
US7663695B2 (en) * | 2000-05-05 | 2010-02-16 | Stmicroelectronics S.R.L. | Method and system for de-interlacing digital images, and computer program product therefor |
EP1152621A1 (en) * | 2000-05-05 | 2001-11-07 | STMicroelectronics S.r.l. | Motion estimation process and system. |
KR100708091B1 (ko) * | 2000-06-13 | 2007-04-16 | 삼성전자주식회사 | 양방향 움직임 벡터를 이용한 프레임 레이트 변환 장치 및그 방법 |
WO2002067576A1 (en) * | 2001-02-21 | 2002-08-29 | Koninklijke Philips Electronics N.V. | Facilitating motion estimation |
US7266150B2 (en) | 2001-07-11 | 2007-09-04 | Dolby Laboratories, Inc. | Interpolation of video compression frames |
US20030099294A1 (en) * | 2001-11-27 | 2003-05-29 | Limin Wang | Picture level adaptive frame/field coding for digital video content |
US7003035B2 (en) | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
KR100492127B1 (ko) * | 2002-02-23 | 2005-06-01 | 삼성전자주식회사 | 적응형 움직임 추정장치 및 추정 방법 |
US7027510B2 (en) * | 2002-03-29 | 2006-04-11 | Sony Corporation | Method of estimating backward motion vectors within a video sequence |
US20040001546A1 (en) | 2002-06-03 | 2004-01-01 | Alexandros Tourapis | Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation |
US7038676B2 (en) * | 2002-06-11 | 2006-05-02 | Sony Computer Entertainmant Inc. | System and method for data compression |
AU2014204513B2 (en) * | 2002-06-28 | 2014-08-14 | Dolby Laboratories Licensing Corporation | Region sizing for macroblocks |
AU2013200690B2 (en) * | 2002-06-28 | 2013-06-27 | Dolby Laboratories Licensing Corporation | Region sizing for macroblocks |
US7280700B2 (en) * | 2002-07-05 | 2007-10-09 | Microsoft Corporation | Optimization techniques for data compression |
US7154952B2 (en) | 2002-07-19 | 2006-12-26 | Microsoft Corporation | Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures |
JP4462823B2 (ja) * | 2002-11-20 | 2010-05-12 | ソニー株式会社 | 画像信号の処理装置および処理方法、それに使用される係数データの生成装置および生成方法、並びに各方法を実行するためのプログラム |
US7499495B2 (en) | 2003-07-18 | 2009-03-03 | Microsoft Corporation | Extended range motion vectors |
US20050013498A1 (en) | 2003-07-18 | 2005-01-20 | Microsoft Corporation | Coding of motion vector information |
US7609763B2 (en) | 2003-07-18 | 2009-10-27 | Microsoft Corporation | Advanced bi-directional predictive coding of video frames |
KR100573696B1 (ko) * | 2003-07-31 | 2006-04-26 | 삼성전자주식회사 | 패턴 분석에 기반한 움직임 벡터 보정 장치 및 방법 |
DE60312981D1 (de) * | 2003-08-26 | 2007-05-16 | St Microelectronics Srl | Verfahren und System zum Aufheben des Zeilensprungverfahrens während der Darstellung von Videobildern |
US7599438B2 (en) | 2003-09-07 | 2009-10-06 | Microsoft Corporation | Motion vector block pattern coding and decoding |
US7567617B2 (en) | 2003-09-07 | 2009-07-28 | Microsoft Corporation | Predicting motion vectors for fields of forward-predicted interlaced video frames |
US7724827B2 (en) * | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
US7317839B2 (en) | 2003-09-07 | 2008-01-08 | Microsoft Corporation | Chroma motion vector derivation for interlaced forward-predicted fields |
US7620106B2 (en) | 2003-09-07 | 2009-11-17 | Microsoft Corporation | Joint coding and decoding of a reference field selection and differential motion vector information |
US8064520B2 (en) | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
US7577200B2 (en) | 2003-09-07 | 2009-08-18 | Microsoft Corporation | Extended range variable length coding/decoding of differential motion vector information |
US7616692B2 (en) | 2003-09-07 | 2009-11-10 | Microsoft Corporation | Hybrid motion vector prediction for interlaced forward-predicted fields |
US7623574B2 (en) | 2003-09-07 | 2009-11-24 | Microsoft Corporation | Selecting between dominant and non-dominant motion vector predictor polarities |
KR20050119285A (ko) * | 2004-06-16 | 2005-12-21 | 삼성전자주식회사 | 하이브리드 블록기반 움직임 추정장치 및 그 방법 |
KR100763917B1 (ko) * | 2006-06-21 | 2007-10-05 | 삼성전자주식회사 | 고속으로 움직임을 추정하는 방법 및 장치 |
US7907217B2 (en) * | 2006-10-31 | 2011-03-15 | Siemens Medical Solutions Usa, Inc. | Systems and methods of subtraction angiography utilizing motion prediction |
US8254455B2 (en) | 2007-06-30 | 2012-08-28 | Microsoft Corporation | Computing collocated macroblock information for direct mode macroblocks |
KR101337206B1 (ko) * | 2007-10-12 | 2013-12-06 | 삼성전자주식회사 | 블록 샘플링을 이용한 영상의 움직임 추정 시스템 및 방법. |
CN102113326A (zh) | 2008-08-04 | 2011-06-29 | 杜比实验室特许公司 | 重叠块差异估计和补偿体系结构 |
US8189666B2 (en) | 2009-02-02 | 2012-05-29 | Microsoft Corporation | Local picture identifier and computation of co-located information |
SI2744204T1 (sl) * | 2011-09-14 | 2019-02-28 | Samsung Electronics Co., Ltd., | Postopek dekodiranja enote za napovedovanje (PU) na podlagi njene velikosti |
CN113508595B (zh) * | 2019-03-08 | 2023-11-28 | 华为技术有限公司 | 运动矢量细化的搜索区域 |
CN110109102B (zh) * | 2019-04-04 | 2022-05-03 | 电子科技大学 | 一种sar运动目标检测与速度估计的方法 |
CN113556581B (zh) * | 2021-07-20 | 2023-11-03 | 深圳市爱协生科技股份有限公司 | 插值帧的生成方法、装置及电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5473379A (en) * | 1993-11-04 | 1995-12-05 | At&T Corp. | Method and apparatus for improving motion compensation in digital video coding |
-
1994
- 1994-07-30 KR KR1019940018902A patent/KR0126871B1/ko not_active IP Right Cessation
-
1995
- 1995-02-22 US US08/392,344 patent/US5786860A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5786860A (en) | 1998-07-28 |
KR960006629A (ko) | 1996-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR0126871B1 (ko) | 양방향 이동벡터 추정을 위한 고속 블럭정합 방식 | |
US6859494B2 (en) | Methods and apparatus for sub-pixel motion estimation | |
US5781249A (en) | Full or partial search block matching dependent on candidate vector prediction distortion | |
US7590180B2 (en) | Device for and method of estimating motion in video encoder | |
EP1262073B1 (en) | Methods and apparatus for motion estimation using neighboring macroblocks | |
Gallant et al. | An efficient computation-constrained block-based motion estimation algorithm for low bit rate video coding | |
WO2000070879A1 (en) | Adaptive motion estimator | |
US20070092007A1 (en) | Methods and systems for video data processing employing frame/field region predictions in motion estimation | |
KR100994768B1 (ko) | 동영상 부호화를 위한 움직임 추정 방법 및 이를 구현하기위한 프로그램이 기록된 기록 매체 | |
KR19980080443A (ko) | 화상 부호화 장치 및 방법 | |
Ismaeil et al. | Efficient motion estimation using spatial and temporal motion vector prediction | |
Song et al. | Hierarchical block-matching algorithm using partial distortion criterion | |
US20090310875A1 (en) | Motion estimation method | |
US20100183075A1 (en) | Image processing method, image processing apparatus and computer readable storage medium | |
US7983339B2 (en) | Method for coding an image sequence | |
KR19980036073A (ko) | 움직임 벡터 검출 방법 및 장치 | |
Ramkishor et al. | Spatio-temporal correlation based fast motion estimation algorithm for MPEG-2 | |
KR100671871B1 (ko) | 압축영역에서의 움직임 벡터 해석방법 | |
Tu et al. | Projection-based block-matching motion estimation | |
Chriqui et al. | Survey of motion estimation techniques for video compression | |
Abdelaal et al. | Adaptation of Motion Estimation Algorithms for Real Time Video Sequences | |
KR20040084327A (ko) | 적응적 탐색 영역을 이용한 움직임 예측 방법 | |
Jha et al. | Motion estimation algorithms for baseline profile of H. 264 video codec | |
KR100413002B1 (ko) | 동영상 부호화기의 확산누적배열을 이용한 블록정합 장치및 그 방법 | |
Purwar et al. | A block matching criterion for interframe coding of video |
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: 20030930 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |