KR20090079286A - 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치 - Google Patents

고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치 Download PDF

Info

Publication number
KR20090079286A
KR20090079286A KR1020080005146A KR20080005146A KR20090079286A KR 20090079286 A KR20090079286 A KR 20090079286A KR 1020080005146 A KR1020080005146 A KR 1020080005146A KR 20080005146 A KR20080005146 A KR 20080005146A KR 20090079286 A KR20090079286 A KR 20090079286A
Authority
KR
South Korea
Prior art keywords
macroblock
motion vector
pixel
sum
candidate
Prior art date
Application number
KR1020080005146A
Other languages
English (en)
Other versions
KR100929608B1 (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 KR1020080005146A priority Critical patent/KR100929608B1/ko
Publication of KR20090079286A publication Critical patent/KR20090079286A/ko
Application granted granted Critical
Publication of KR100929608B1 publication Critical patent/KR100929608B1/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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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/169Methods 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/17Methods 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/176Methods 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
    • 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/513Processing of motion vectors

Landscapes

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

Abstract

계산량을 감소시키고 처리 속도를 향상시킬 수 있는 고속 전역 탐색 블록정합 알고리즘을 이용한 동영상 움직임 추정 방법을 개시한다. 본 발명의 일 실시예에 따른 고속 전역 탐색 블록정합 알고리즘을 이용한 움직임 추정 방법은 현재 매크로블록에 대한 참조 프레임의 탐색 영역 내의 소정의 탐색 시작 위치로부터 정합을 수행할 후보 매크로블록을 선정하는 단계, 상기 현재 매크로블록의 픽셀값들 중에서 빈도가 가장 낮은 픽셀부터 시작하여 순차적으로 픽셀별 정합을 수행하기 위하여, 상기 후보 매크로블록의 소정 개수의 픽셀 단위로 부분 차의 절대값의 합(partial SAD)을 구하는 단계, 및 상기 부분 차의 절대값의 합과 최소 차의 절대값의 합(min SAD)을 비교하여 상기 후보 매크로블록을 조기 제거(early termination)할지를 판단하는 단계를 포함한다. 현재 매크로블록의 픽셀값들에 대한 빈도는 히스토그램을 이용하여 쉽게 구할 수 있다. 그리고 탐색 시작 위치를 결정함에 있어서, 다섯 개의 후보 매크로블록(left, upper, upper-right, median, (0, 0))에 대한 블록합(sum norm)을 이용하여 예측 움직임 벡터를 구한다.

Description

고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임 추정 방법 및 장치{Method and apparatus for estimating motion vector of moving images using fast full search block matching algorithm}
본 발명은 동영상의 움직임 추정에 관한 것으로, 보다 구체적으로 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임 추정 절차 및 장치에 관한 것이다.
정보통신기술의 비약적인 발전으로 인하여, 화상 회의 시스템, 와이브로(Wibro), 차세대 이동통신, 고품질의 무선랜 등이 연구 개발되면서, 고속의 멀티미디어 데이터 통신에 대한 관심과 요구가 증대되고 있다. 이러한 멀티미디어 데이터 통신 중에서 현재 가장 관심을 많이 받고 있는 분야가 무선망을 통한 다양한 정보의 송수신이다. 현재 무선 데이터 송수신의 전송속도가 비약적으로 향상됨에 따라 데이터 크기가 큰 동영상 데이터까지도 무선 통신 네트워크를 통해 실시간으로 송수신할 수 있게 되었다.
그런데, 동영상 데이터는 정보 전달 능력이 뛰어난 것에 반하여 용량이 상당 히 크기 때문에 일반적으로 저장과 전송에 어려움이 존재한다. 또한, 어플리케이션의 요구에 따라서 방대한 동영상 정보가 적절히 처리되어야 하므로, 동영상을 처리하기 위한 시스템 또한 높은 사양이 요구된다. 이러한 문제점들을 해결할 수 있는 방법으로, 동영상 데이터를 작은 정보로 변환시키는 기술인 동영상 압축 알고리즘이 활발히 연구되어 오고 있다. 현재까지 연구된 동영상 압축과 관련된 대표적인 국제 표준에는 ISO/IEC의 엠펙(MPEG) 시리즈와 ITU-T의 H.26x 시리즈가 있다.
동영상 데이터의 압축 방식은 크게 무손실 압축(Lossless Compression)과 손실 압축(Lossy Compression)으로 나눌 수 있다. 무손실 압축은 압축 과정에서 원본 데이터의 손실이 없어서, 복호기에서 원래 영상 신호(부호기로 입력되는 영상 신호)와 완전히 동일한 영상을 재생할 수 있는 방식이다. 반면, 손실 압축은 압축 과정에서 데이터의 손실이 발생하기 때문에, 복호기에서 복원된 영상은 원래의 영상과 동일하지 않으며, 화질이 다소 열화된 영상을 재생할 수 있는 방식이다. 그러나 손실 압축은 무손실 압축에 비하여 더 높은 압축율을 가지며 또한 화질의 열화도 크지 않으므로, 영상 또는 동영상 데이터 처리에는 손실 압축 방식이 일반적으로 사용된다.
동영상 데이터는 그 특성상 3가지 중복성이 존재한다. 이와 같은 중복성에는 시간적 (temporal), 공간적(spatial), 통계적(statistical) 중복성이 있다. 시간적 중복성은 연속되는 프레임 사이에 존재하는 중복성을 의미하는데, 연속되는 프레임에서 같은 위치에 존재하는 화소의 밝기 값은 통계적으로 유사한 상관성을 가진다는 것으로, "프레임간(inter-frame) 중복성"이라고도한다. 그리고 공간적 중복성은 프레임 내에 존재하는 중복성을 의미하는데, 하나의 화소의 밝기 값은 이웃하는 화소들의 밝기 값과 유사한 상관성을 가진다는 것으로, 이것을 "프레임내(inter-frame) 중복성"이라고도 한다. 마지막으로, 통계적 중복성은 부호화된 데이터들 간의 중복성을 의미하는데, 화소 간의 중복성과 부호화에서의 중복성을 말한다.
현재 알려져 있는 동영상 부호화 표준에서는, 이와 같은 상기 3가지 중복성을 제거함으로써 방대한 양의 동영상을 보다 작은 데이터로 압축할 수 있다. 예를 들어, 이산 코사인 변환(Discrete Cosine Transform, DCT) 등과 같은 변환 과정과 양자화 과정은 공간적 중복성을, 가변장 부호화 등과 같은 엔트로피 코딩은 통계적 중복성을, 움직임 추정 및 보상은 시간적 중복성을 제거하기 위한 목적으로 동영상 코덱의 국제 표준에 채택되어 사용된다.
이 중에서 시간적 중복성을 제거하기 위한 움직임 추정 및 보상(motion estimation/compensation) 방식은 크게 화소(pixel) 단위로 추정하는 방식과 블록 (block) 단위로 추정하는 방식으로 나누어진다. 일반적으로, 동영상 압축시 움직입 추정에 여러 효율적인 면을 고려하여 화소 단위로 추정하는 방식보다는 블록 단위로 움직임을 추정하는 방식이 많이 사용된다. 블록 단위로 움직임을 추정하는 방식을 블록정합 알고리즘(Block Matching Algorithm, BMA)이라고 하며, 움직임 추정의 결과 해당 블록에 대한 움직임 벡터(MV)가 얻어 진다.
블록정합 알고리즘(BMA)은 크게 전역탐색 블록정합(full search block matching) 알고리즘과 고속탐색 블록정합(fast search block matching) 알고리즘의 두 가지가 구분할 수 있다. 전역탐색 블록정합 알고리즘은 탐색 영역(search range) 내의 모든 후보 블록에 대해서 정합 여부에 대한 계산을 수행하는 방식이다. 이에 의하면, 가장 정합이 잘 되는 후보 블록을 정합 블록으로 선택하기 때문에 최적의 움직임 벡터를 찾을 수 있는 장점이 있으나, 많은 계산량이 요구되는 단점이 있다. 따라서 전역 탐색 블록정합 알고리즘은 실시간 동영상 압축 및 전송이 필요한 어플리케이션보다는 저장 매체를 위한 동영상의 압축 및 복원에 일반적으로 이용된다.
반면에, 고속탐색 블록정합 알고리즘은 탐색 영역 내의 일부 후보 블록에 대해서만 탐색을 한다. 따라서 전역 탐색에 비하여 계산량이 적으며 그 결과 처리 속도가 빠르기 때문에 실시간 동영상의 전송이 요청되는 어플리케이션의 경우에 적합하다. 그러나 일부의 후보 블록에 대해서만 탐색을 하기 때문에, 경우에 따라서는 최적의 움직임 벡터를 찾을 수 없는 단점을 가진다. 이는 화질의 저하 및 비트스트림(bit stream)의 증가를 야기한다. 이러한 고속탐색 블록정합 움직임 추정의 종류로는 3단계 탐색(3 step search), 계층적 탐색(hierarchical search), 다이아몬드 탐색(diamond search) 등이 있다.
한편, 보다 진일보된 움직임 추정 방식으로, 전역 탐색 블록정합 알고리즘과 고속탐색 블록정합 알고리즘의 장점을 모두 만족시키는 고속 전역탐색 블록정합(fast full search block matching) 알고리즘이 제안되었다. 이 알고리즘은 전역탐색을 하므로 최적의 해를 구할 수가 있으며, 일반적으로 절대차의 합(Sum of Absolute Difference, SAD)의 계산에 앞서 SAD보다 계산량이 작은 평균합(sum norm)을 이용하여 후보 블록에 대한 SAD의 계산 여부를 결정하므로 계산량이 전역 탐색 블록정합 알고리즘에 비하여 적다. 이와 같은 고속 전역탐색 블록정합 알고리즘으로는 연속 제거 알고리즘(Successive Elimination Algorithm, SEA), 다층 레벨 연속 제거 알고리즘(Multi-level SEA, MSEA), 및 확장된 연속 제거 알고리즘(Extended SEA, ESEA) 등이 있다.
이 중에서 MSEA는 SEA를 일반화한 알고리즘으로서, 매크로블록을 정사각형의 서브 블록으로 나누어서 서브 블록의 합을 비교한다. 이에 의하면, SEA의 경계 조건을 더 좁게 설정하는 것이 가능하기 때문에, 정합 블록이 될 가능성이 거의 없는 후보 블록들에 대해서는 불필요한 SAD 계산을 하지 않을 수가 있다.
아래의 수학식 1은 MSEA을 보여 주는 수학식이다. 수학식 1에서
Figure 112008003858826-PAT00001
은 레벨(level)을 의미하며,
Figure 112008003858826-PAT00002
는 해당 레벨에서의 서브 블록의 번호이다.
Figure 112008003858826-PAT00003
은 레벨
Figure 112008003858826-PAT00004
에 해당하는 서브 블록의 개수를 나타낸다.
Figure 112008003858826-PAT00005
Figure 112008003858826-PAT00006
는 해당 레벨
Figure 112008003858826-PAT00007
에서 각각 현재 매크로블록과 후보 매크로블록의
Figure 112008003858826-PAT00008
번째 서브 블록의 블록 합(sum norm)을 의미한다. 수학식 1의 좌측에서 알 수 있듯이, 레벨이 증가 할수록 현재 매크로블록의 서브 블록과 후보 매크로블록의 서브 블록간 블록 합의 차이의 절대값의 합은 증가한다. 이것은 MSEA에서 경계 조건을 좁게 해주는 것을 의미한다.
Figure 112008003858826-PAT00009
그리고 매크로블록에서 레벨이 4일 때 수학식 1의 좌측에 있는
Figure 112008003858826-PAT00010
성분은 현재 매크로블록과 후보 매크로블록간의 SAD를 의미하게 된다. 이것은 후보 매크로블록 판단 레벨이 하나만 존재하는 SEA와는 달리, MSEA에서는 후보 매크로블록 판단 레벨이 4개가 존재한다는 것을 의미한다. MSEA는 여러 개의 레벨을 두어서 후보 매크로블록의 SAD를 계산할지의 여부를 수학식 1에 의하여 각 레벨 별로(l = 0, 1, 2, 3) 판단한 뒤, 최종 레벨에서도 SAD를 구해야 하는 것으로 판단되는 경우에만, SAD를 계산한다. 도 1은 MSEA에서 각 레벨에서의 서브 블록의 크기를 나타낸다.
그런데 MSEA를 비롯한 기존의 고속 전역탐색 블록정합 알고리즘에서 픽셀별(pixel-by-pixel) 정합 순서를 결정함에 있어서, FFSSD(Fast Full Search with Sorting by Distortion) 또는 FFSSG(Fast Full Search with Sorting by Distortion)가 이용되었다. FFSSD는 참조 프레임의 후보 매크로블록과 현재 매크로블록간에 픽셀별 왜곡(distortion)을 구한 후에, 그 값이 큰 순서대로 픽셀별 정합을 하는 알고리즘이다. 그리고 FFSSG는 현재 매크로블록에서 각 픽셀의 기울기(gradient)를 구한 후 기울기 값이 큰 순서대로 픽셀별 정합을 하는 알고리즘이다.
그러나 FFSSD든 또는 FFSSG든 모두 픽셀간 왜곡값이든 또는 기울기값이든 모든 픽셀에 대하여 그 값을 전부 구해보고 그 크기순(예컨대, 내림차순)으로 픽셀별 정합 순서를 결정한다. 그러나 이러한 방식은 영상의 특성을 충분히 고려하지 못하기 때문에, SAD 계산을 최소한으로 줄이기에는 부적법하다. 즉, 내림차순으로 정렬을 할 때 동일한 왜곡값이나 기울기 값이 존재할 가능성이 상당히 높은데, 기존의 FFSSD 알고리즘이나 FFSSG 알고리즘은 이러한 상황을 충분히 고려하지 못하고 있다. 그 결과, 기존의 FFSSD 알고리즘이나 FFSSG 알고리즘에서는 보다 많은 픽셀에 대해서 SAD 계산을 수행해야 하므로, 연산량 감소의 효과가 그다지 높지 않다.
한편, 종래의 움직임 추정 절차에서는 초기 최소 SAD(initial minimum SAD)를 가능한 일찍 발견하여 탐색 지점을 최대한 많이 제거할 수 있도록 예측 움직임 벡터를 사용하였다. 현재 대부분의 동영상 표준들은 예측 움직임 벡터를 찾기 위해 현재 매크로블록의 주변 블록들의 움직임 벡터의 중간값을 예측 움직임 벡터로 사용한다. 이 방법은 상당히 적은 복잡도와 신뢰할만한 성능을 보여 주지만 경우에 따라서는 실제 움직임 벡터와 예측된 움직임 벡터 사이에 상당한 에러를 발생시키기도 한다.
본 발명이 해결하고자 하는 일 과제는 움직임 추정을 위한 예측 움직임 벡터를 보다 정확하게 예측함으로써 조기에 탐색 지점을 최대한 많이 제거할 수 있는 고속 전역 블록정합 알고리즘을 이용한 움직임 추정 절차를 제공하는 것이다.
본 발명이 해결하고자 하는 다른 과제는 영상의 특성을 고려하여 픽셀별 정합 순서를 효율적으로 결정함으로써 부분 SAD의 계산을 최소화하여 계산량을 감소시켜서 처리 속도를 향상시킬 수 있는 고속 전역 블록정합 알고리즘을 이용한 움직임 추정 절차를 제공하는 것이다.
상기한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 고속 전역 탐색 블록정합 알고리즘을 이용한 움직임 추정 방법은 현재 매크로블록에 대한 참조 프레임의 탐색 영역 내의 소정의 탐색 시작 위치로부터 정합을 수행할 후보 매크로블록을 선정하는 단계; 상기 현재 매크로블록의 픽셀값들 중에서 빈도가 가장 낮은 픽셀부터 시작하여 순차적으로 픽셀별 정합을 수행하기 위하여, 상기 후보 매크로블록의 소정 개수의 픽셀 단위로 부분 차의 절대값의 합(partial SAD)을 구하는 단계; 및 상기 부분 차의 절대값의 합과 최소 차의 절대값의 합(min SAD)을 비교하여 상기 후보 매크로블록을 조기 제거(early termination)할지를 판단하는 단계를 포함한다.
상기 실시예의 일 측면에 의하면, 상기 픽셀별 정합의 순서를 결정하기 위하여 상기 현재 매크로블록의 픽셀값들로부터 구한 히스토그램을 이용할 수 있다.
상기 실시예의 다른 측면에 의하면, 상기 탐색 시작 위치는 상기 현재 매크로블록의 예측 움직임 벡터가 지시하는 지점이며, 상기 예측 움직임 벡터는 상기 현재 매크로블록의 왼쪽, 위쪽, 및 우상쪽에 인접한 매크로블록들의 움직임 벡터들, 상기 움직임 벡터들의 중간값 성분을 갖는 움직임 벡터, 및 상기 참조 프레임에서 상기 현재 프레임의 위치에 대응하는 위치의 매크로블록의 움직임 벡터((0, 0)) 중에서 결정할 수 있다. 이 경우에, 상기 예측 움직임 벡터는 상기 다섯 개의 움직임 벡터가 지시하는 후보 매크로블록들 각각과 상기 현재 매크로블록 사이의 블록합의 차이의 합이 최소가 되는 움직임 벡터로 결정할 수 있다. 그리고 상기 블 록합의 차이의 합은 하기 수학식을 이용하여 구할 수 있다. 여기서, diff i i위치의 후보 예측 매크로블록과 현재 매크로블록간 블록합의 절대차의 합, i의 값들 중에서 left, upper, upper-right, median, (0, 0)은 각각 현재 매크로블록의 왼쪽, 위쪽, 우상쪽의 매크로블록들의 움직임 벡터가 지시하는 매크로블록, 중간값이 지시하는 매크로블록, 및 대응 위치의 움직임 벡터가 가리키는 매크로블록, 그리고 l은 MSEA에서 레벨 0에서부터 3을 의미한다.
Figure 112008003858826-PAT00011
상기 실시예의 또 다른 측면에 의하면, 상기 부분 차의 절대값의 합은 8픽셀 단위로 수행할 수 있다.
상기한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 동영상 움직임 추정을 위한 픽셀 대 픽셀 기반의 고속 정합 방법은 현재 매크로블록의 각 픽셀값들로부터 히스토그램을 구하는 단계, 및 상기 히스토그램의 값이 작은 픽셀부터 시작해서 순서대로 상기 현재 매크로블록과 후보 매크로블록을 픽셀 대 픽셀로 정합시키는 단계를 포함한다.
상기 실시예의 일 측면에 의하면, 상기 정합 단계에서는 8픽셀 단위로 부분 차의 절대값의 합을 구하는 단계, 및 상기 부분 차의 절대값의 합과 최소 부분 차의 절대값의 합을 비교하여, 상기 후보 매크로블록을 조기 제외할지를 결정하는 단 계를 포함한다.
상기한 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 동영상 움직임 추정을 위하여 예측 움직임 벡터를 구하는 방법은, 상기 예측 움직임 벡터는 상기 현재 매크로블록의 왼쪽, 위쪽, 및 우상쪽에 인접한 매크로블록들의 움직임 벡터들, 상기 움직임 벡터들의 중간값 성분을 갖는 움직임 벡터, 및 상기 참조 프레임에서 상기 현재 프레임의 위치에 대응하는 위치의 매크로블록의 움직임 벡터((0, 0)) 중에서 결정하고, 상기 다섯 개의 움직임 벡터가 지시하는 후보 매크로블록들 각각과 상기 현재 매크로블록 사이의 블록합의 차이의 합이 최소가 되는 움직임 벡터로 결정한다.
본 발명의 실시예에 의하면, 예측 움직임 벡터를 구하는데 있어서 다섯 개의 후보 매크로블록을 이용하고 또한 블록합을 이용하기 때문에 초기에 최소 SAD를 구할 수가 있다. 그리고 이러한 최소 SAD를 이용하면 블록 탐색에서 많은 후보 매크로블록들을 조기 제거시킬 수가 있다.
또한, 본 발명의 실시예에 의하면, 에지 부분에 왜곡이 크게 발생하는 영상을 특성을 고려하여 히스코그램을 이용하여 픽셀 대 픽셀 정합 순서를 결정하기 때문에, 블록정합의 초기에 대부분의 SAD를 계산해낼 수가 있으며, 따라서 블록정합에서 해당 후보 매크로블록이 조기 제거될지를 보다 빨리 결정할 수가 있다.
이하, 첨부 도면들을 참조하여 본 발명의 실시예에 대하여 상세하게 설명한다.
도 2는 본 발명의 일 실시예에 따른 고속 전역 탐색 블록정합 절차를 보여 주는 흐름도이다.
도 2를 참조하면, 우선 탐색 범위 내에서 현재 매크로블록에 대한 예측 움직임 벡터(Motion Vector, MV)를 구한다(S11). 예측 움직임 벡터는 블록정합 절차를 개시하기 위한 시작점을 가리키며, 또한 초기 최소 SAD를 제공한다. 본 발명의 실시예에 의하면, 예측 움직임 벡터를 구하는데 있어서, 현재 매크로블록에 이웃하는 세 개의 매크로블록, 즉 좌측으로 인접하는 매크로블록(left), 위쪽으로 인접하는 매크로블록(upper), 및 우상쪽으로 인접하는 매크로블록(upper-right)의 움직임 벡터들과 상기 세 개의 움직임 벡터의 중간값으로 이루어진 움직임 벡터(median), 및 참조 프레임에서 현재 매크로블록의 위치에 대응하는 위치에 있는 매크로블록(도 2에서 (0, 0)으로 표기)의 움직임 벡터, 총 다섯 개의 움직임 벡터를 이용한다. 그리고 본 발명의 실시예에 의하면, 상기 다섯 개의 움직임 벡터가 지시하는 매크로블록들을 후보 블록으로 해서, 각 후보 블록의 블록합을 이용하여 예측 움직임 벡터를 구한다.
본 발명의 실시예에 따른 고속 전역탐색 블록정합 알고리즘에서 예측 움직임 벡터를 사용하는 이유는 블록정합에서 보다 많은 양의 후보 매크로블록을 조기에 제거함으로써, 고속탐색을 효과적으로 수행하기 위해서이다. 고속탐색의 관건은 초기 최소 SDA(initial minimum SAD)를 최대한 일찍 발견함으로써 탐색 지점을 조기 에 최대한 많이 제거하는 것이기 때문에, 예측 움직임 벡터를 보다 정확하게 구하는 것이 중요하다.
전술한 바와 같이, 기존의 대부분의 동영상 코덱 기법들은 인접 블록의 움직임 벡터들의 중간값을 예측 움직임 벡터로써 사용한다. 이러한 중간값을 사용하는 방법은 상당히 적은 복잡도와 신뢰할 만한 성능을 보여 주고 있기 때문에, 고속탐색 기법에서도 널리 이용되고 있다. 그러나 이러한 기존의 방법은 여전히 실제 움직임 벡터와 예측 움직임 벡터 사이에 상당한 에러를 발생시키는 한계가 있다.
본 발명의 실시예에 의하면, 예측 움직임 벡터를 구하는데 있어서 정확도를 더욱 향상시킨다. 보다 구체적으로, 본 발명의 실시예에 의하면, 현재 매크로블록에 이웃한 세 개의 매크로블록들의 움직임 벡터, 상기 세 개의 움직임 벡터들의 중간값으로 구해지는 움직임 벡터(중간값 움직임 벡터), 및 참조 프레임에서 현재 매크로블록에 대응되는 위치의 매크로블록의 움직임 벡터를 이용하여, 예측 움직임 벡터를 구한다.
이와 같이, 본 발명의 실시예에 의하면, 전술한 다섯 개의 후보 예측 움직임 벡터들 중에서 하나를 예측 움직임 벡터로 결정한다. 그리고 예측 움직임 벡터를 결정함에 있어서, 상기 다섯 개의 후보 예측 움직임 벡터가 가리키는 참조 프레임의 탐색 영역 내의 매크로블록들 각각의 블록합(sun norm)을 이용한다. 블록합은 매크로블록의 복잡도를 나타내기 때문에, 현재 매크로블록과 다섯 개의 후보 예측 매크로블록 사이의 공간적 연관성을 도출할 수가 있다.
이러한 매크로블록 간의 공간적 연관성은 블록합의 차로 쉽게 얻을 수가 있 다. 따라서 본 발명의 실시예에 의하면, 최적의 예측 움직임 벡터는 현재 매크로블록과 다섯 개의 후보 예측 매크로블록 중에서 최소의 절대차를 갖는 후보 예측 매크로블록의 움직임 벡터로 결정한다. 수학식 2는 이러한 본 발명의 실시예에 따라서 블록합을 이용하여 예측 움직임 벡터를 구하는 과정을 수학식으로 나타낸 것이다.
Figure 112008003858826-PAT00012
수학식 2에서, diff i i위치의 후보 예측 매크로블록과 현재 매크로블록간 블록합의 절대차의 합을 의미한다. 그리고 i의 값들 중에서 left, upper, upper-right, median, (0, 0)은 각각 현재 매크로블록의 왼쪽, 위쪽, 우상쪽의 매크로블록의 움직임 벡터가 지시하는 매크로블록, 중간값이 지시하는 매크로블록, 및 대응 위치의 움직임 벡터가 가리키는 매크로블록을 의미한다. 그리고 수학식 2에서 l은 MSEA에서 레벨 0에서부터 3을 의미한다.
수학식 2를 참조하면, diff i 에서 최소 블록합의 차를 갖는 매크로블록의 움직임 벡터를 최적의 예측 움직임 벡터로 결정한다. 그리고 매크로블록간의 블록합을 효과적으로 계산하기 위해 계산량이 많은 SAD(레벨 4)의 계산을 피하기 위해 MSEA에서 각 레벨에서의 서브 블록합의 차를 척도로 사용한다. 레벨값이 올라갈수 록 정확한 매크로블록간 정합 에러를 예측할 수 있기 때문에, 본 발명의 실시예에 따라서 예측 움직임 벡터를 구하는 알고리즘의 정확도는 높아진다.
이러한 본 발명의 실시예에 의하면, MSEA 알고리즘을 사용할 때 참조 프레임의 매크로블록과 각 레벨에서의 서브 블록들의 블록합이 계산되기 때문에, 이 값들이 다시 재활용될 수 있으며 따라서 블록합을 이용하는데 따른 계산량의 증가는 크기 않다. 그리고 예측 움직임 벡터를 결정하는데 있어서 SAD를 사용하지 않고 블록합을 이용하기 때문에, 계산량을 감소시킬 수 있다.
계속해서 도 2를 참조하면, 단계 S11에서 결정된 예측 움직임 벡터가 가리키는 참조 매크로블록과 현재 매크로블록 사이의 절대 차의 합(Sum of Absolute Difference, SAD)을 구하여, 이를 초기 최소 SAD(min SAD)로 한다(S12).
그리고 현재 매크로블록의 픽셀값(예컨대, 휘도값) 히스토그램을 구하여, 후술하는 블록정합 절차에서 적용할 픽셀별(pixel-by-pixel) 정합 순서를 결정한다(S13). 본 단계는 반드시 S12 후에 수행될 필요가 없으며, 단계 S14의 이전이면 언제든지 수행될 수 있다.
예측 움직임 벡터를 구하고 나면, 상기 예측 움직임 벡터를 시작으로 소정의 알고리즘에 따른 매크로블록의 순서대로 블록정합을 수행한다. 본 발명의 실시예는 이러한 매크로블록들의 탐색 순서를 특정하는 알고리즘(예컨대, 매크로블록들의 탐색 순서를 예측 움직임 벡터가 지시하는 매크로블록을 기점으로 나선형(spiral)으로 할 수 있다)에는 아무런 제한이 없다.
픽셀 대 픽셀(pixel-by-pixel)을 기반으로 하는 고속 정합을 효과적으로 수 행하기 위해서는 현재 매크로블록과 후보 매크로블록을 정합할 때, 왜곡(distortion)이 큰 픽셀부터 순서대로 정합을 하는 것이 바람직하다. 왜냐하면, 왜곡이 큰 순서대로 정합을 해야지만 초기에 부적합한 후보 매크로블록을 제거할 수 있기 때문이다. 따라서 본 발명의 실시예에서는 초기에 부적합한 후보 매크로블록을 제거할 수 있는 새로운 알고리즘을 제시한다.
대부분의 영상(촬영을 통해 획득한 자연 영상)은 배경에 비해 에지 픽셀의 개수가 상대적으로 적다. 그리고 픽셀간 왜곡(Distortion)은 배경 보다는 에지 부분에서 크게 발생한다. 그러므로 본 발명의 실시예에서는 최적의 블록정합 순서를 결정하는데 있어서, 이러한 영상의 특성을 이용한다. 보다 구체적으로, 본 발명의 실시예에 의하면, 최적의 정합 순서를 결정하기 위하여 배경 픽셀인지 에지 픽셀인지를 구분하는데 있어서 매크로블록의 히스토그램 특성을 이용하며, 이 히스토그램 특성으로부터 에지 부분부터 왜곡을 계산한다.
보다 구체적으로, 본 발명의 실시예에 의하면, 현재 매크로블록이 포함하고 있는 픽셀값(intensity)들로부터 히스토그램을 구한다. 히스토그램의 값이 작으면 그 만큼 발생 빈도가 낮은 것이므로, 에지에 해당될 확률이 높은 반면, 히스토그램의 값이 크면 그 만큼 발생 빈도가 높은 것이므로, 배경에 해당될 확률이 높다.
계속해서 도 2를 참조하면, 단계 S13에서 구한 히스토그램을 이용하여 상기 히스토그램의 값이 작은 순서대로, 즉 히스토그램의 값이 증가하는 순서(increasing order)대로 블록정합을 수행한다(S14). 본 발명의 실시예와 같이, 히스토그램의 값이 증가하는 순서대로 블록정합을 수행하면, 매크로블록에서 에지 부분을 초기에 정합할 수가 있으며, 결과적으로 정합 과정 초기에 전체 매크로블록 왜곡의 대부분을 차지하는 왜곡을 계산해낼 수가 있다. 이와 같이 결정된 히스토그램 기반 정합 순서는 현재 매크로블록에서 한 번 정해진 후에 탐색 영역 내의 모든 후보 매크로블록과 정해진 순서대로 정합이 이루어진다.
그리고 본 단계(S14)에서 히스토그램의 값을 이용하여 결정된 순서대로 소정 크기의 픽셀 단위로 부분 SAD(Partial SAD, SAD i )를 구한다. 예컨대, 부분 SAD는 16픽셀 단위 또는 8픽셀 단위로 수행할 수 있는데, 본 발명의 실시예에서는 8픽셀 단위로 수행하는 것이 바람직하다. 이에 의하면, 히스토그램의 값이 작은 순서대로 8픽셀의 왜곡값의 합(즉, 부분 SAD 1 )을 구한다.
계속해서, 상기 부분 SAD 1 과 최소 SAD의 크기를 비교한다(S15). 비교 결과, 부분 SAD 1 가 최소 SAD 이상이 되면, 해당 후보 매크로블록에 대해서는 다른 픽셀에 대해서는 더 이상 SAD를 구할 필요가 없이, 정합 블록이 될 수 있는 후보 매크로블록에서 제외한다(S16).
반면, 부분 SAD1가 최소 SAD보다 작으면, i가 32인지를 판단한다(S17). 본 과정에서는 상기 i=1이므로(즉, i가 32이 아니면), 단계 S18로 진행하여 i의 값을 1 증가시킨다(S18). 그리고 전술한 단계 S14(i=2)부터 절차를 계속하며, 이 경우에 단계 S15에서는 부분 SAD0과 부분 SAD1의 합과 최소 SAD의 크기를 비교한다.
단계 S17에서 i=32인 것으로 판단되면, 해당 후보 매크로블록과 현재 매크로 블록의 부분 SAD의 총합이 min SAD보다 작은 경우에 해당되므로, 이 경우에는 단계 S15에서 사용되는 min SAD를 업데이트한다(S19). 그리고 본 절차를 거친 후보 매크로블록이 탐색 영역 내의 마지막 후보 매크로블록인지를 판단한 다음(S20), 만일 마지막 후보 매크로블록이 아닌 경우에는 매크로블록의 탐색 순서(예컨대, 나선 모양)에 따라서 다음 후보 매크로블록에 대하여 도 2에 개시된 절차를 시작한다. 반대로, 마지막 매크로블록이이거나 또는 단계 S16에서 제거된 블록이 마지막 매크로블록인 경우에는, 본 발명의 실시예에 따른 고속 전역 블록정합 알고리즘에 따른 절차를 종료한다.
이하, 이러한 본 발명의 실시예를 첨부 도면인 Stefan 실험 영상을 참조하여 구체적으로 설명한다.
도 3은 Stefan 실험 영상의 2번째 프레임이다. 그리고 도 4는 도 3에서 정사각형으로 표시된 부분, 즉 래스터 스캔 순서에 따라서 210번째에 해당하는 매크로블록을 확대한 도면이다. 도 4를 참조하면, 에지에 해당하는 픽셀은 그 개수가 배경에 해당하는 픽셀보다 상대적으로 적은 것을 알 수 있다. 도 5는 도 4에 도시된 매크로블록에 대한 히스토그램을 나타낸다. 도 5를 참조하면, 픽셀값 92 주변으로 히스토그램의 크기가 큰 것을 볼 수 있으며, 이것은 배경으로 구별되어 진다. 반면에, 픽셀값 80 주변에서는 히스토그램 크기가 매우 작은 것은 볼 수 있으며, 이러한 값을 갖는 픽셀은 에지로 고려될 수 있다. 그러므로 본 발명의 실시예에 의하면, 히스토그램의 크기가 작은 픽셀(도 5에서 볼 수 있듯이 79, 80, 82, …)부터 순서대로 정합을 수행한다. 여기서, 정합을 수행할 때 16픽셀씩 즉, 한 행마다 비교하지 않고 8개의 픽셀을 주기로 부분 SAD(Partial SAD)를 구한 후에 이를 최소 SAD(min SAD)와 비교한다.
다음으로 본 발명의 실험예 및 이에 따른 효과에 대하여 설명한다.
본 발명의 실시예에 따른 고속 전역 탐색 블록정합 알고리즘의 성능을 확인하기 위해 CIF(Common Intermediate Format) 크기(352ㅧ288)의 30Hz 표준 영상인 Stefan(300 프레임), Foreman(300 프레임), Football(90 프레임), table tennis(300 프레임), News(300 프레임), Container(300 프레임), Flower(250 프레임), Hall(300 프레임)을 실험하였다. 실험 결과는 테스트 영상 전체 프레임에서 고속 정합시 각 8픽셀마다 제거되는 횟수와 행 SAD(line SAD)로 나타내었다. 탐색 영역의 크기는 33ㅧ33이다. 전술한 바와 같이, 본 발명의 실시예에 의하면, 히스토그램 기반 정합 순서를 고속 정합을 위하여 사용하며, 고속탐색을 위하여 MSEA와 5개의 움직임 벡터를 후보 예측 움직임 벡터로 사용하였다.
본 실험에서는 본 발명의 실시예에 따른 실험예와 기존의 알고리즘의 성능을 효율적으로 비교하기 위하여, line SAD라고 하는 척도를 제안한다. 본 실험예에서는 고속탐색 접근 측면에서 나선형 전역 탐색(Spiral FS) 알고리즘을 비교 대상으로 삼으며, 고속 정합 접근 측면에서는 래스터 스캔(raster scan)을 비교 대상으로 한다. 나선형 전역 탐색 알고리즘은 정합 순서를 래스터 스캔으로 하며 매크로블록별 탐색 순서를 나선형으로 한다. 따라서 본 실험에서는 나선형 전역 탐색 알고리 즘을 기반으로 히스토그램 기반 정합 순서를 적용하여 래스터 순서와 B. Montrucchio와 D. Quaglia이 "New Sorting-Based Loseless Motion Estimation Algorithms and a Partial Distortion Elimination Performance Analysis"(IEEE Trans. Circuit and Syst. Video Technol., vol. 15, No. 2, Feb. 2005)에서 제안하는 정합 순서들과의 성능을 비교한다. 그리고 마지막으로는 나선형 MSEA(spiral MSEA)에 제안하는 움직임 예측기를 적용하여 향상되는 결과에 대하여 살펴본다. 나선형 MSEA는 매크로블록들의 탐색 순서를 나선형으로 하는 MSEA를 의미한다.
<라인 SAD>
본 명세서에서는 행 단위로, 각 실험 영상의 전체 프레임에 대해 전체 SAD 계산량을 의미하는 lineSAD를 성능의 척도로써 이용한다. lineSAD는 수학식 3과 같이 나타낼 수 있다.
Figure 112008003858826-PAT00013
본 실험에서는 매크로블록의 크기는 16ㅧ16이며 8개의 픽셀을 주기로 SAD를 비교하기 때문에 32번의 비교를 한다. 그러므로 수학식 3에서 i는 1-32dml 값을 갖는다. ETi는 전체 프레임을 실행한 후 i번째 비교에서 조기 제거(early termination)되어진 총 횟수를 의미한다. 즉, lineSAD값이 크면 조기 제거가 늦게 된다는 것을 의미하며 반대로 lineSAD값이 작으면 조기 제거가 일찍되어 고속 정합이 이루어지는 것을 의미한다.
<히스토그램 기반 정합 순서>
본 발명의 실시예에 따른 히스토그램 기반 정합 순서를 기존의 정합 순서들과 비교한다. 탐색을 나선형 순으로 하는 전역 탐색 알고리즘 즉, spiral FS 알고리즘을 기반으로 여러 정합 순서들에 대해 전술한 lineSAD를 비교하였으며, 그 결과는 표 1에 개시되어 있다.
Figure 112008003858826-PAT00014
표 1에서 Raster는 기존의 래스터 정합 순서를 의미한다. 그리고 FFSSD와 FFSSG는 전술한 B. Montrucchio와 D. Quaglia이 "New Sorting-Based Loseless Motion Estimation Algorithms and a Partial Distortion Elimination Performance Analysis"(IEEE Trans. Circuit and Syst. Video Technol., vol. 15, No. 2, Feb. 2005)에 개시되어 있는 픽셀별 정합 순서이다. FFSSD는 현재 매크로블록과 탐색 영역 내에서 (0, 0)에 위치하는 후보 매크로블록간 픽셀값의 차의 절대값이 큰 순서대로 정합을 한다. FFSSG는 현재 매크로블록의 기울기(gradient)값이 큰 순으로 정합 순서를 정하는 방법이다. hist_order는 본 발명의 실시예에 따른 히스토그램 기반 정합 순서를 적용할 경우이다.
표 1을 참조하면, 본 발명의 실시예에 따른 알고리즘(hist_order)가 모든 실험 영상에서 lineSAD값이 가장 작은 것을 알 수 있다. 따라서 본 발명의 실시예에 의하면, 조기 제거가 다른 알고리즘에 비하여 많이 되었다는 것을 알 수 있다.
본 발명의 실시예에 따른 히스토그램 기반 알고리즘의 성능을 보다 쉽게 보여주기 위해 래스터 순서의 line SAD를 기준으로 다른 정합 순서들의 비율을 구하였으며, 그 결과를 도 6에 나타내었다. 도 6을 참조하면, Container 영상인 경우가 본 발명의 실시예에 따른 알고리즘(hist_order)이 기존의 래스터 순서에 비해 34%의 lineSAD 감소를 갖는 것을 알 수 있다. 반면에 상대적으로 빠른 움직임을 갖고 있는 Football 영상에 대해서는 14% 정도의 lineSAD 감소를 얻을 수 있다는 것을 알 수 있다.
<본 발명의 실시예에 따른 예측 움직임 벡터를 이용한 MSEA 기반 고속 정합>
널리 알려진 바와 같이, MSEA는 매우 효과적인 무손실 고속탐색 방법 중의 하나이다. MSEA에서는 고속 정합을 위한 방법과 고속탐색을 위한 방법을 동시에 이용함으로써 보다 많은 조기 제거를 할 수 있다. 또한, MSEA를 수행하기 전에 본 발명의 실시예에 따른 예측 움직임 벡터의 결정 방법을 적용하여 최적의 초기 minSAD를 구함으로써 효율적인 고속탐색이 가능하며, MSEA 수행 후 실행되는 고속 정합이 상대적으로 수월해진다. 본 실험에서는 레벨3 모드의 전술한 본 발명의 실시예에 따른 예측 움직임 벡터 결정 방법을 이용하였으며, 나선형 MSEA를 기반으로 실험을 하였다. 그리고 각각의 정합 순서는 앞에서 설명한 실험예와 동일하다.
표 2는 MSEA를 기반으로 한 정합 순서의 lineSAD를 비교해서 보여 준다. 표 2를 참조하면, 본 발명의 실험예에 의할 경우(hist_order)가 모든 실험 영상과 다른 방법들에 비해 가장 적은 lineSAD를 갖는 것을 알 수 있다. 도 7에는 래스터 순서를 기준으로 다른 정합 순서들에 대한 lineSAD 비율을 나타내었다. 도 7을 참조하면, 상대적으로 에지가 많은 복잡한 Flower 영상에 대해서 본 발명의 실시예(hist_order)가 래스터 순서에 비해 11% 정도의 lineSAD 감소를 얻는 것을 볼 수 있다. 도 6과는 달리 도 7에서 래스터 순서에 대한 LineSAD 감소비가 적은 것은 MSEA에 의해서 이미 상당량의 부적합한 후보 매크로블록들이 제거되었기 때문이다.
Figure 112008003858826-PAT00015
앞에서는 고속 정합만을 고려하였지만, 본 실험예에서는 고속 정합과 고속탐색을 동시에 고려하였다. 고속 정합은 매크로블록 내에서 적응적인 픽셀별 정합 순서를 통해 정합 에러를 조기에 예측하는 것이며, 고속탐색은 움직임 예측을 이용하여 초기에 최적의 minSAD를 찾은 후 나선형 MSEA를 이용하여 부적절한 후보 매크로블록들을 제거한다.
표 3은 고속 정합만 적용한 경우와 고속 정합 및 고속탐색을 모두 적용한 경우의 lineSAD 비율을 보여 준다. 표 3을 참조하면, 표 1에서 구한 lineSAD와 표 2에서 구한 lineSAD의 비율을 나타낸다. 즉, 고속 정합만을 이용한 lineSAD와 고속 정합과 고속탐색을 동시에 이용한 lineSAD의 비율을 나타낸다. 표 3에서 볼 수 있듯이, 고속 정합과 탐색을 동시에 이용한 방법이 고속 정합만을 이용한 방법에 비해 최소 2%, 최대 13%의 lineSAD만을 계산하는 것을 볼 수 있다. 표 3에서 hist_order의 비율이 상대적으로 큰 이유는 고속 정합 단계에서 상대적으로 많은 조기 제거가 일어났기 때문이다.
Figure 112008003858826-PAT00016
이상에서 본 발명을 특정의 바람직한 실시예를 예로 들어서 도시하고 설명하였으나, 본 발명은 상기한 실시예에 한정되지 아니한다. 본 발명의 실시예는 후술하는 특허청구범위에 의하여 특정되는 본 발명의 정신을 벗어나지 않는 범위 내에서 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의하여 다양한 변경과 수정이 가능할 것이다.
도 1은 MSEA에서 각 레벨에서의 서브 블록의 크기를 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 고속 전역 탐색 블록정합 절차를 보여 주는 흐름도이다.
도 3은 Stefan 실험 영상의 2번째 프레임이다.
도 4는 도 3에서 정사각형으로 표시된 부분, 즉 래스터 스캔 순서에 따라서 210번째에 해당하는 매크로블록을 확대한 도면이다.
도 5는 도 4에 도시된 매크로블록에 대한 히스토그램을 나타낸다.
도 6은 나선형 전역 탐색 알고리즘을 기반으로 래스터 스캔 순서를 기준으로 구한 lineSAD 비율을 보여 주는 그래프이다.
도 7은 MSEA를 기반으로 래스터 스캔 순서를 기준으로 구한 lineSAD 비율을 보여 주는 그래프이다.

Claims (9)

  1. 고속 전역 탐색 블록정합 알고리즘을 이용한 움직임 추정 방법에 있어서, 상기 고속 전역 탐색 블록정합 알고리즘은
    현재 매크로블록에 대한 참조 프레임의 탐색 영역 내의 소정의 탐색 시작 위치로부터 정합을 수행할 후보 매크로블록을 선정하는 단계;
    상기 현재 매크로블록의 픽셀값들 중에서 빈도가 가장 낮은 픽셀부터 시작하여 순차적으로 픽셀별 정합을 수행하기 위하여, 상기 후보 매크로블록의 소정 개수의 픽셀 단위로 부분 차의 절대값의 합(partial SAD)을 구하는 단계; 및
    상기 부분 차의 절대값의 합과 최소 차의 절대값의 합(min SAD)을 비교하여 상기 후보 매크로블록을 조기 제거(early termination)할지를 판단하는 단계를 포함하는 동영상 움직임 추정 방법.
  2. 제1항에 있어서, 상기 픽셀별 정합의 순서를 결정하기 위하여 상기 현재 매크로블록의 픽셀값들로부터 구한 히스토그램을 이용하는 것을 특징으로 하는 동영상 움직임 추정 방법.
  3. 제1항에 있어서, 상기 탐색 시작 위치는 상기 현재 매크로블록의 예측 움직임 벡터가 지시하는 지점이며,
    상기 예측 움직임 벡터는 상기 현재 매크로블록의 왼쪽, 위쪽, 및 우상쪽에 인접한 매크로블록들의 움직임 벡터들, 상기 움직임 벡터들의 중간값 성분을 갖는 움직임 벡터, 및 상기 참조 프레임에서 상기 현재 프레임의 위치에 대응하는 위치의 매크로블록의 움직임 벡터((0, 0)) 중에서 결정하는 것을 특징으로 하는 동영상 움직임 추정 방법.
  4. 제3항에 있어서, 상기 예측 움직임 벡터는 상기 다섯 개의 움직임 벡터가 지시하는 후보 매크로블록들 각각과 상기 현재 매크로블록 사이의 블록합의 차이의 합이 최소가 되는 움직임 벡터로 결정하는 것을 특징으로 하는 동영상 움직임 추정 방법.
  5. 제4항에 있어서, 상기 블록합의 차이의 합은 하기 수학식을 이용하여 구하는 것을 특징으로 하는 동영상 움직임 추정 방법.
    Figure 112008003858826-PAT00017
    여기서, diff i i위치의 후보 예측 매크로블록과 현재 매크로블록간 블록합의 절대차의 합, i의 값들 중에서 left, upper, upper-right, median, (0, 0)은 각각 현재 매크로블록의 왼쪽, 위쪽, 우상쪽의 매크로블록들의 움직임 벡터가 지시하는 매크로블록, 중간값이 지시하는 매크로블록, 및 대응 위치의 움직임 벡터가 가 리키는 매크로블록, 그리고 l은 MSEA에서 레벨 0에서부터 3을 의미한다.
  6. 제1항에 있어서, 상기 부분 차의 절대값의 합은 8픽셀 단위로 수행하는 것을 특징으로 하는 동영상 움직임 추정 방법.
  7. 동영상 움직임 추정을 위한 픽셀 대 픽셀 기반의 고속 정합 방법에 있어서,
    현재 매크로블록의 각 픽셀값들로부터 히스토그램을 구하는 단계; 및
    상기 히스토그램의 값이 작은 픽셀부터 시작해서 순서대로 상기 현재 매크로블록과 후보 매크로블록을 픽셀 대 픽셀로 정합시키는 단계를 포함하는 고속 정합 방법.
  8. 제7항에 있어서, 상기 정합 단계에서는
    8픽셀 단위로 부분 차의 절대값의 합을 구하는 단계; 및
    상기 부분 차의 절대값의 합과 최소 부분 차의 절대값의 합을 비교하여, 상기 후보 매크로블록을 조기 제외할지를 결정하는 단계를 포함하는 것을 특징으로 하는 고속 정합 방법.
  9. 동영상 움직임 추정을 위하여 예측 움직임 벡터를 구하는 방법에 있어서,
    상기 예측 움직임 벡터는 상기 현재 매크로블록의 왼쪽, 위쪽, 및 우상쪽에 인접한 매크로블록들의 움직임 벡터들, 상기 움직임 벡터들의 중간값 성분을 갖는 움직임 벡터, 및 상기 참조 프레임에서 상기 현재 프레임의 위치에 대응하는 위치의 매크로블록의 움직임 벡터((0, 0)) 중에서 결정하고,
    상기 다섯 개의 움직임 벡터가 지시하는 후보 매크로블록들 각각과 상기 현재 매크로블록 사이의 블록합의 차이의 합이 최소가 되는 움직임 벡터로 결정하는 것을 특징으로 하는 예측 움직임 벡터의 결정 방법.
KR1020080005146A 2008-01-17 2008-01-17 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치 KR100929608B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080005146A KR100929608B1 (ko) 2008-01-17 2008-01-17 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080005146A KR100929608B1 (ko) 2008-01-17 2008-01-17 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20090079286A true KR20090079286A (ko) 2009-07-22
KR100929608B1 KR100929608B1 (ko) 2009-12-03

Family

ID=41290497

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080005146A KR100929608B1 (ko) 2008-01-17 2008-01-17 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치

Country Status (1)

Country Link
KR (1) KR100929608B1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100987581B1 (ko) * 2009-02-26 2010-10-12 한양대학교 산학협력단 고속 움직임 추정을 위한 부분 블록정합 방법
KR101036552B1 (ko) * 2009-11-02 2011-05-24 중앙대학교 산학협력단 적응적 탐색 영역 및 부분 정합 오차 기반의 고속 움직임 추정 장치 및 방법
KR101037743B1 (ko) * 2009-10-29 2011-05-27 숭실대학교산학협력단 효율적인 조기중단 기법을 사용하는 움직임 추정 방법 및 이를 이용한 비디오 인코딩 장치
KR101409826B1 (ko) * 2012-10-19 2014-06-24 한양대학교 산학협력단 적응적 탐색 범위를 이용한 움직임 예측 방법
WO2015142833A1 (en) * 2014-03-17 2015-09-24 Qualcomm Incorporated Method for motion estimation of non-natural video data
US9398309B2 (en) 2013-05-14 2016-07-19 Electronics And Telecommunications Research Institute Apparatus and method for skipping fractional motion estimation in high efficiency video coding
US9438927B2 (en) 2013-04-11 2016-09-06 Electronics And Telecommunications Research Institute Apparatus and method for motion estimation for variable block sizes
CN116074533A (zh) * 2023-04-06 2023-05-05 湖南国科微电子股份有限公司 运动矢量预测方法、系统、电子设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101610028B1 (ko) * 2009-12-24 2016-04-08 한양대학교 산학협력단 고속 모션 추정 방법 및 장치, 이를 이용한 비디오 인코딩 장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100527810B1 (ko) * 2002-12-21 2005-11-15 한국전자통신연구원 Sad 추정을 통한 움직임 추정 방법
EP1683362A1 (en) * 2003-10-28 2006-07-26 Koninklijke Philips Electronics N.V. Motion vector field refinement to track small fast moving objects
KR101217627B1 (ko) * 2006-02-02 2013-01-02 삼성전자주식회사 블록 기반의 움직임 추정 방법 및 장치

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100987581B1 (ko) * 2009-02-26 2010-10-12 한양대학교 산학협력단 고속 움직임 추정을 위한 부분 블록정합 방법
KR101037743B1 (ko) * 2009-10-29 2011-05-27 숭실대학교산학협력단 효율적인 조기중단 기법을 사용하는 움직임 추정 방법 및 이를 이용한 비디오 인코딩 장치
KR101036552B1 (ko) * 2009-11-02 2011-05-24 중앙대학교 산학협력단 적응적 탐색 영역 및 부분 정합 오차 기반의 고속 움직임 추정 장치 및 방법
KR101409826B1 (ko) * 2012-10-19 2014-06-24 한양대학교 산학협력단 적응적 탐색 범위를 이용한 움직임 예측 방법
US9438927B2 (en) 2013-04-11 2016-09-06 Electronics And Telecommunications Research Institute Apparatus and method for motion estimation for variable block sizes
US9398309B2 (en) 2013-05-14 2016-07-19 Electronics And Telecommunications Research Institute Apparatus and method for skipping fractional motion estimation in high efficiency video coding
WO2015142833A1 (en) * 2014-03-17 2015-09-24 Qualcomm Incorporated Method for motion estimation of non-natural video data
US10484721B2 (en) 2014-03-17 2019-11-19 Qualcomm Incorporated Method for motion estimation of non-natural video data
CN116074533A (zh) * 2023-04-06 2023-05-05 湖南国科微电子股份有限公司 运动矢量预测方法、系统、电子设备及存储介质
CN116074533B (zh) * 2023-04-06 2023-08-22 湖南国科微电子股份有限公司 运动矢量预测方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
KR100929608B1 (ko) 2009-12-03

Similar Documents

Publication Publication Date Title
KR100929608B1 (ko) 고속 전역탐색 블록정합 알고리즘을 이용한 동영상 움직임추정 방법 및 장치
EP1797722B1 (en) Adaptive overlapped block matching for accurate motion compensation
US6438168B2 (en) Bandwidth scaling of a compressed video stream
KR100955152B1 (ko) 비디오 인코딩을 위한 다차원 인접 블록 예측
US7764738B2 (en) Adaptive motion estimation and mode decision apparatus and method for H.264 video codec
EP1389016A2 (en) Motion estimation and block matching pattern using minimum measure of combined motion and error signal data
US20140146889A9 (en) Method and system for efficient video transcoding
EP1022667A2 (en) Methods of feature extraction of video sequences
US20060182174A1 (en) Method for coding mode selection of intra prediction in video compression
US9948944B2 (en) Image coding apparatus and image coding method
US10652570B2 (en) Moving image encoding device, moving image encoding method, and recording medium for recording moving image encoding program
US20100002771A1 (en) Seamless Wireless Video Transmission For Multimedia Applications
Hussain et al. A survey on video compression fast block matching algorithms
EP1389875A2 (en) Method for motion estimation adaptive to DCT block content
Young et al. Automatic layout generation for CMOS operational amplifiers
KR100910209B1 (ko) 세분화된 탐색 영역을 기반으로 하는 고속 전영역 움직임예측 방법 및 그 장치
Bachu et al. Adaptive order search and tangent-weighted trade-off for motion estimation in H. 264
KR100508975B1 (ko) 다층 레벨 연속 제거 알고리즘을 이용한 동영상 움직임추정 방법
KR100987581B1 (ko) 고속 움직임 추정을 위한 부분 블록정합 방법
Lin et al. A new class-based early termination method for fast motion estimation in video coding
KR101247024B1 (ko) 루프 내 전처리 필터링을 이용한 움직임 추정 및 보상 방법
US20130170565A1 (en) Motion Estimation Complexity Reduction
Lee Fast motion estimation based on adaptive search range adjustment and matching error prediction
KR100960966B1 (ko) 고속 동영상 움직임 추정 방법
Lee et al. A content adaptive fast PDE algorithm for motion estimation based on matching error prediction

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20130930

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20141008

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151012

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161004

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee