KR100302130B1 - 중첩 블럭정합알고리즘을 이용한 움직임 추정방법 - Google Patents
중첩 블럭정합알고리즘을 이용한 움직임 추정방법 Download PDFInfo
- Publication number
- KR100302130B1 KR100302130B1 KR1019990048722A KR19990048722A KR100302130B1 KR 100302130 B1 KR100302130 B1 KR 100302130B1 KR 1019990048722 A KR1019990048722 A KR 1019990048722A KR 19990048722 A KR19990048722 A KR 19990048722A KR 100302130 B1 KR100302130 B1 KR 100302130B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- regression
- bma
- matching algorithm
- search
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 17
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 239000013598 vector Substances 0.000 abstract description 24
- 238000005457 optimization Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
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
- H04N19/533—Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 중첩 블럭정합알고리즘(overlapped BMA)을 이용한 움직임 추정방법에 관한 것이다.
이러한 본 발명의 방법은 중첩 블럭정합알고리즘을 수행하기 위해 입력 영상프레임을 소정의 블럭으로 구분하여 블럭을 형성하는 단계와, 현재블럭에 대해 중첩 블럭정합알고리즘(BMA)에 따라 회귀검색을 수행하는 단계, 소정 판별식에 따라 현재블럭의 측정자(D)를 연산하고, 연산결과값이 기준치보다 크면 현재블럭을 회귀검색을 위한 BMA 계속셀로 표시하는 단계, 연산결과값이 기준치보다 작으면 현재블럭을 회귀검색에 따른 BMA완료셀로 표시하고, 모든 블럭이 완료셀로 표시되면 회귀검색을 종료하는 단계, 및 상기 BAM계속 셀 혹은 BMA완료 셀 표시후 다음 블럭에 대해 상기 회귀검색을 반복하는 단계를 포함한다.
따라서, 본 발명에 따르면 중첩 블럭정합알고리즘에 따라 움직임 벡터를 구할 경우에 현재 회귀검색결과가 자신과 주변블럭에 미친 영향을 고려한 후 그 영향의 정도가 소정치 이하일 경우에는 해당 셀을 회귀검색에서 제외하여 점차 회귀검색에 사용되는 블럭의 수를 줄임으로써 처리속도를 향상시킬 수 있다.
Description
본 발명은 중첩 블럭정합알고리즘(overlapped BMA)을 이용한 움직임 추정방법에 관한 것으로, 특히 중첩 블럭정합알고리즘을 수행함에 있어 현재 회귀검색이 자신 및 인접블럭에 미친영향을 고려하여 회귀검색에 참여되는 블럭의 수를 점차줄여 처리속도를 개선한 움직임 추정방법에 관한 것이다.
일반적으로, 영상신호 처리기술에서 '움직임 추정(motion estimation)'이란연속되는 영상신호에서 현재 프레임(current frame)의 화소(pixel)들이 이전 프레임(previous frame)에 비해 어느 정도 움직였는지를 벡터로 표시한 움직임 벡터 (motion vector)를 추정하여, 전체 영상을 전송하는 대신에, 이들 움직임 벡터를 전송함으로써 전송정보를 줄이는 기술(즉, 영상압축)을 말하는 것이다.
이러한 움직임 추정에서 널리 사용되는 블럭 정합 알고리즘(BMA: Block Matching Algorithm)은 도 1에 도시된 바와 같이, 화면의 움직임이 수평 또는 수직으로 평행 이동한 것으로 가정하여, 움직임이 일어난 프레임(즉, 현재 프레임)의 블럭영상이 움직임이 일어나기전 프레임(즉, 이전 프레임)의 어느 위치에 있는 블럭영상과 가장 일치하는가를 추정하여 그 위치를 움직임 벡터로서 추정하는 방법이다. 이때, 블럭의 크기로는 8 x 8, 16 x 16( 가로 픽셀 수 x 세로 픽셀 수 )을 주로 사용한다. 여기서, 현재 프레임의 레퍼런스 블럭(reference block 혹은 current block)과 가장 유사한 이전 블럭을 찾기 위하여 이전 프레임(previous frame)에서 레퍼런스 블럭의 위치를 중심으로 일정 범위 안을 찾게 되는데, 이러한 범위를 '서치 윈도우(search window 혹은 area)'라 하고, 이러한 서치 윈도우안에서 각 후보블럭(candidate block)과의 차를 디스토션(distortion; 또는 절대에러(AE)라고도 한다)이라 하며, 두 블럭간의 유사정도를 나타낸다.
또한, 서치 윈도우안의 모든 후보블럭과 레퍼런스 블럭을 비교하는 것을 '풀 서치 블럭매칭(full search block matching algorithm)'이라 하며, 수식적으로 가장 일치하는 블럭을 찾기 위하여 연속된 두 프레임의 영상중에서, 이전 프레임을f1(x,y), 현재 프레임을 f2(x,y)라 했을 때, f2(x,y)와 f1(x-a, y-b)에서 a,b를 변화시켜 가면서 f1(x-a,y-b)와 f2(x,y)의 차를 구하여, 그 차가 최소가 되는 (a,b)를 움직임 벡터로 예측한다. 이와 같이 블럭간의 최소오차를 구하는 방법을 평균절대오차(MAE:Mean Absolute Error) 방법이라 한다.
그런데 이러한 블럭매칭알고리즘(BMA)은 널리 알려진 바와 같이, 블럭단위로 획일적으로 움직임 벡터를 구하기 때문에 구획효과(Blocking effect)가 발생되어 화질이 열화되는 문제점이 있다. 이러한 문제점을 해소하기 위하여 중첩 블럭매칭알고리즘은 각 블럭의 경계면을 중첩되게 하여 구획효과를 억제한다.
그러나 중첩 블럭정합알고리즘에서는 각 블럭의 픽셀들의 움직임벡터가 인접한 픽셀들의 움직임 벡터 값에 영향을 받는다. 따라서 중첩 블럭정합알고리즘에 따라 움직임 벡터를 구하기 위해서는 각 픽셀들에 초기값을 부여한 후, 프레임의 시작부분부터 끝부분까지 순차적으로 최적화 과정을 진행한다. 이때 최적화된 픽셀들의 움직임 벡터값도 다음 픽셀의 움직임 벡터값이 최적화되면서 변함에 따라 다시 최적화될 필요가 있기 때문에, 각 픽셀들에 대한 최적화가 진행되면서 이전 픽셀들의 움직임 벡터값도 연쇄적으로 변하게 된다. 즉, 종래에는 픽셀들의 움직임 벡터를 최적화하는 과정에서 인접하는 픽셀들의 값이 변함에 따라 한 프레임의 전체 픽셀들에 대한 최적화가 완료될 때까지 순환반복적인 검색이 필요하게 되어 계산량이 증가하게 되는 문제점이 있다.
본 발명은 상기와 같은 문제점을 해소하기 위하여 중첩 블럭정합알고리즘에서 소정의 판별식에 따라 순환반복적인 회귀검색에 사용되는 블럭의 수를 점차 줄여감으로써 처리속도를 향상시킨 중첩 블럭정합알고리즘을 이용한 움직임 추정방법을 제공하는데 그 목적이 있다.
상기와 같은 목적을 달성하기 위하여 본 발명의 방법은, 중첩 블럭정합알고리즘을 수행하기 위해 입력 영상프레임을 소정의 블럭으로 구분하여 블럭을 형성하는 단계; 현재블럭에 대해 중첩 블럭정합알고리즘(BMA)에 따라 회귀검색을 수행하는 단계; 소정 판별식에 따라 현재블럭의 측정자(D)를 연산하고, 연산결과값이 기준치보다 크면 현재블럭을 회귀검색을 위한 BMA 계속셀로 표시하는 단계; 연산결과값이 기준치보다 작으면 현재블럭을 회귀검색에 따른 BMA완료셀로 표시하고, 모든 블럭이 완료셀로 표시되면 회귀검색을 종료하는 단계; 및 상기 BAM계속 셀 혹은 BMA완료 셀 표시후 다음 블럭에 대해 상기 회귀검색을 반복하는 단계를 포함하는 것을 특징으로 한다.
도 1은 블럭정합알고리즘(BMA)을 설명하기 위하여 도시한 개념도,
도 2는 본 발명에 따른 움직임 추정방법의 절차를 도시한 도면이다.
이하에서는 첨부된 도면을 참조하여 본 발명의 실시예를 자세히 설명하기로 한다.
중첩 블럭정합알고리즘(overlapped BMA)은 한 블럭을 둘러싼 네개의 블록들의 움직임 벡터 및 해당 블록의 움직임 벡터를 이용하여 각 블록의 예측값을 구성한다. 따라서 각 블럭에서의 예측오차는 해당 블럭의 움직임 오차는 물론 주위의 4개 움직임 벡터값에 의해서도 좌우된다. 이러한 다셋개의 블럭간에는 상호 상관성이 존재하므로, 각 블럭에서의 움직임 벡터값이 주변 4블럭에 대한 예측오차에 영향을 미치게 된다.
그리고 각 블럭 및 주변 4블럭에서 움직임 벡터 집합은 회귀검색을 수행함에 따라 최적의 값에 근접하게 되는데, 각 블럭에 할당된 움직임 벡터를 회귀검색을 통해 검색하므로써 얻게 되는 성능개선의 정도가 회귀검색 수행여부를 결정하는 가장 중요한 지수가 된다. 이와 같이 성능개선의 가능성을 판단하는 본 발명에 따른 측정자 D는 다음과 같이 정의된다.
상기 수학식1에서 SAD(Bk)는 블럭 B에서 k번째 회귀검색시 얻어진 움직임 예측 오차를 의미한다. 이 값에서는 현재 블럭 B의 움직임벡터에 의한 예측값도 포함이된다. 반면, SAD'(Bk)는 해당 블럭 B의 움직임 벡터에 의한 예측값을 사용하지 않은 경우의 오차를 의미한다. 따라서 수학식1의 D1항은 현재블럭의 움직임벡터가 주위블럭에 미치는 공헌도를 나타내고, 수학식1의 D2항은 금번 회귀검색을 통해서해당 블럭의 오차가 얼마나 변했는지를 나타낸다. 따라서 D2항의 값이 작을 수록 회귀검색의 효과가 없음을 나타낸다. 수학식1에서 양수α는 D1항과 D2항의 영향을 조절하기 위한 상수로 응용에에 따라 적절히 결정한다.
이와 같이 수학식1에 따른 연산결과 D값은, 주위블럭과의 상관성과 자신의 회귀검색 결과를 동시에 고려할 수 있는 측정자이므로 이 측정자를 정렬에 이용하면 정확한 결과를 구할 수 있다.
도 2는 본 발명에 따라 움직임 추정을 수행하는 과정을 도시한 흐름도이다.
도 2를 참조하면, 단계 S1에서는 중첩 블럭정합알고리즘을 수행하기 위해 입력 영상프레임을 소정의 블럭으로 구분하여 블럭을 형성하고, 단계 S2에서는 현재블럭에 대해 중첩 블럭정합알고리즘(BMA)에 따라 회귀검색을 수행한다.
그리고 단계 S3에서는 앞서 설명한 바와 같이, 수학식1에 따라 현재블럭의 측정자(D)를 연산하고, 단계 S4에서 연산결과값을 기준치(Th)와 비교한다. 비교결과 연산값(D)이 기준치(Th)보다 크면, 단계 S5에서 현재블럭을 회귀검색을 위한 'BMA 계속 셀'로 표시하고, 단계 S6에서 다음 블럭으로 이동한 후 다음 블럭에 대해서 단계 S2부터 반복한다.
한편, 단계 S4에서 연산값(D)이 기준치(Th)보다 작으면 현재블럭을 회귀검색에 따른 'BMA완료 셀'로 표시하고, 단계 S8에서는 모든 블럭이 완료셀로 표시되었는지를 판단한 후 완료셀로 표시되면 회귀검색을 종료하고, 아니면 단계 S9에서 다음 블럭으로 이동한 후 상기 회귀검색을 반복한다.
이상에서 설명한 바와 같이, 본 발명에 따르면 중첩 블럭정합알고리즘에 따라 움직임 벡터를 구할 경우에 현재 회귀검색 결과가 자신과 주변블럭에 미친 영향을 고려한 후 그 영향의 정도가 소정치 이하일 경우에는 해당 셀을 회귀검색에서 제외하여 회귀검색에 사용되는 블럭의 수를 점차 줄임으로써 처리속도를 향상시킬 수 있는 효과가 있다.
Claims (2)
- 중첩 블럭정합알고리즘을 수행하기 위해 입력 영상프레임을 소정의 블럭으로 구분하여 블럭을 형성하는 단계;현재블럭에 대해 중첩 블럭정합알고리즘(BMA)에 따라 회귀검색을 수행하는 단계;소정 판별식에 따라 현재블럭의 측정자(D)를 연산하고, 연산결과값이 기준치보다 크면 현재블럭을 회귀검색을 위한 BMA 계속셀로 표시하는 단계;연산결과값이 기준치보다 작으면 현재블럭을 회귀검색에 따른 BMA완료셀로 표시하고, 모든 블럭이 완료셀로 표시되면 회귀검색을 종료하는 단계; 및상기 BAM계속 셀 혹은 BMA완료 셀 표시후 다음 블럭에 대해 상기 회귀검색을 반복하는 단계를 포함하는 중첩 블럭정합알고리즘을 이용한 움직임 추정방법.
- 제1항에 있어서, 상기 판별식은인 것을 특징으로 하는 중첩 블럭정합알고리즘을 이용한 움직임 추정방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990048722A KR100302130B1 (ko) | 1999-11-05 | 1999-11-05 | 중첩 블럭정합알고리즘을 이용한 움직임 추정방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019990048722A KR100302130B1 (ko) | 1999-11-05 | 1999-11-05 | 중첩 블럭정합알고리즘을 이용한 움직임 추정방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010045433A KR20010045433A (ko) | 2001-06-05 |
KR100302130B1 true KR100302130B1 (ko) | 2001-11-02 |
Family
ID=19618620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990048722A KR100302130B1 (ko) | 1999-11-05 | 1999-11-05 | 중첩 블럭정합알고리즘을 이용한 움직임 추정방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100302130B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100605746B1 (ko) | 2003-06-16 | 2006-07-31 | 삼성전자주식회사 | 블럭 기반의 움직임 보상 장치 및 방법 |
-
1999
- 1999-11-05 KR KR1019990048722A patent/KR100302130B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR20010045433A (ko) | 2001-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105100807A (zh) | 一种基于运动矢量后处理的帧率提升方法 | |
TWI408620B (zh) | 用以決定插補畫面之移動向量的影像處理方法及其相關裝置 | |
US7145950B2 (en) | Method of motion vector determination in digital video compression | |
US8526500B2 (en) | System and method for global inter-frame motion detection in video sequences | |
KR20120055761A (ko) | 적응형 움직임 탐색 범위 결정 장치 및 방법 | |
US20060188022A1 (en) | Motion estimation apparatus and method | |
US6304603B1 (en) | Block matching method using a moving target window | |
JPH09214899A (ja) | 画像予測処理方法および装置 | |
KR100364789B1 (ko) | 움직임 추정 방법 및 장치 | |
US8804830B2 (en) | Method for performing motion estimation | |
JP2787944B2 (ja) | 動き補償動ベクトル探索方法 | |
KR100302130B1 (ko) | 중첩 블럭정합알고리즘을 이용한 움직임 추정방법 | |
JP3175914B2 (ja) | 画像符号化方法および画像符号化装置 | |
JP2002152750A (ja) | 動きベクトル検出方法および装置 | |
KR20090084311A (ko) | 프레임 레이트 변환 방법 | |
EP1420595B1 (en) | Motion vector selection in a video motion estimator based on a preferred reference point | |
US7627140B2 (en) | Flatted hexagon search method for fast block motion estimation | |
US6968011B2 (en) | Motion vector detecting device improved in detection speed of motion vectors and system employing the same devices | |
KR20080022843A (ko) | 움직임 벡터를 이용한 탐색 영역 조절 방법 | |
JP2001028754A (ja) | 動きベクトル検出方法 | |
KR102056218B1 (ko) | 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법 및 장치 | |
CN113496504B (zh) | 图像对齐方法及装置、存储介质、终端 | |
KR102032793B1 (ko) | 움직임 탐색시 효율적인 움직임 벡터 추출 방법 및 그 장치 | |
KR970003099B1 (ko) | 커버/언커버된 영역을 고려한 이동벡터 추정장치 | |
KR20000066066A (ko) | 동영상 추정 알고리즘에 있어서 프로세싱 엘레멘트 수 결정 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130603 Year of fee payment: 13 |
|
FPAY | Annual fee payment |
Payment date: 20140602 Year of fee payment: 14 |
|
LAPS | Lapse due to unpaid annual fee |