KR101192060B1 - 블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및장치 - Google Patents

블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및장치 Download PDF

Info

Publication number
KR101192060B1
KR101192060B1 KR1020050060260A KR20050060260A KR101192060B1 KR 101192060 B1 KR101192060 B1 KR 101192060B1 KR 1020050060260 A KR1020050060260 A KR 1020050060260A KR 20050060260 A KR20050060260 A KR 20050060260A KR 101192060 B1 KR101192060 B1 KR 101192060B1
Authority
KR
South Korea
Prior art keywords
blocks
size
motion
image
resolution
Prior art date
Application number
KR1020050060260A
Other languages
English (en)
Other versions
KR20060049852A (ko
Inventor
피에르 루엘로우
에도어드 프랑스와
필립 살몬
Original Assignee
톰슨 라이센싱
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 톰슨 라이센싱 filed Critical 톰슨 라이센싱
Publication of KR20060049852A publication Critical patent/KR20060049852A/ko
Application granted granted Critical
Publication of KR101192060B1 publication Critical patent/KR101192060B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/207Analysis of motion for motion estimation over a hierarchy of resolutions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • 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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Abstract

본 발명은 블록들로 분할된 본래 영상(101)의 블록 세트(108)에 대한 복수의 모션 벡터 중에서 모션 벡터(111)를 선택하는 의도인 계층적인 모션 추정을 위한 방법 및 장치(100)에 관한 것이다. 모션 벡터들 각각에 대한 블록 세트(108)상에서의 에너지 함수(105)의 계산(102)이 실행된다. 이러한 계산(102)은 블록 세트(108)의 크기에 맞추어 변경된 라그랑지 구속(113)을 계산하는 하부단계(103)를 포함한다. 모션 벡터(111)의 선택(107)은 상기 블록들의 세트(108)상에서의 에너지 함수(105)를 최소화함으로써 실행된다.
모션 벡터, 에너지 함수, 계층적인 모션 추정

Description

블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및 장치{METHOD AND DEVICE FOR CHOOSING A MOTION VECTOR FOR THE CODING OF A SET OF BLOCKS}
도 1은 본 발명에 따른 장치의 다이어그램.
도 2a 내지 도 2c는 다중-스케일 구조를 제공하는 도면.
도 3은 블록 세트 B에 대한 본 발명의 동작의 방법을 도시하는 도면.
도 4a 내지 도 4c는 다중-해상도 구조를 제공하는 도면.
도 5는 코딩 비용의 계산을 위한 블록에 이웃하는 블록들을 도시하는 도면.
* 도면의 주요부분에 대한 부호의 설명 *
100 : 장치 102 : 계산 모듈
105 : 에너지 함수 108 : 블록 세트
본 발명은 영상(image) 압축의 분야에 대해 사용될 목적인 계층적 모션 추정(hierarchical estimation of motion) 방법에 관한 것이다. 이 방법에 의하면 소위 본래 해상도를 나타내고 블록들로 분할된 영상에서의 블록 세트에 대한 모션 벡터를 선택하는 것이 가능하다.
본 발명의 내용은, 블록와이즈 코딩 방식(blockwise coding scheme)에 기초하는, MPEG-2, MPEG-4 타입, 파트 2 혹은 10의 압축, 보다 구체적으로는 비디오 압축이다. 이들 압축 방식은 매크로블록이라고 지칭되는 기본 엔티티(entity)에 대해서 동작한다. 다음에서, 블록이라는 용어는 임의의 크기의 보다 작은 블록의 그룹을 가리킬 수 있어서 특히 매크로블록을 가리킬 수 있다. 그러나 본 발명은 또한 블록으로 설명되는 모션 벡터 필드를 사용하여 임의의 비디오 코딩 방식에서 구현될 수 있다.
영상 압축의 분야에서, 인터(Inter) 모션 벡터는 비디오 시그널을 압축하기 위해 비디오 시그널의 시간적인 리던던시(redundancy)를 이용하는 것을 목표로 하고 있다. 따라서 그 원리는 영상의 콘텐트(content)를 예측한 다음 이러한 예측에서 만들어진 에러만을 코딩하는 것이다. MPEG 표준에서는 시간적인 리던던시의 감소를 최적화하기 위해 영상에서의 모션 보상(motion compensation) 기술을 구현한다. 이어서, 여러가지 단계들, 모션 추정, 모션 보상 및 코딩이 구분될 것이다. 위에 나타낸 바와 같이, 본 발명은 모션 추정에 관한 것이다.
일반적인 규칙으로서, 비디오 시퀀스에서의 모션은 단일 벡터에 의해 모델링될 수 없다. 따라서 영상의 각 매크로블록은 모션 큐(motion cue)와 연관되어 있다. 모션 추정 동작으로 인하여, 코딩될 매크로블록과 가장 유사한 참조 영상에서의 매크로블록을 결정하는 것이 가능하다. 이러한 검색 알고리즘은 표준화되어 있지 않고 그것의 효율은 코더의 성능 및 그것의 복잡도에 기본적으로 영향을 미친다.
대부분 사용되는 절차는 블록-매칭이다. 매크로블록이 참조 영상 검색 영역에서 테스트된 벡터에 의해 포인팅된 매크로블록들과 비교된다. MPEG-2 놈(norm)의 경우에, 벡터는 픽셀의 절반의 정밀도로 결정된다. 이하 더빙된 왜곡(dubbed distortion)인, 픽셀들의 값들 간의 차이들의 절대값들의 합 및 가능하게는 벡터 필드의 코딩 비용(cost)의 관점으로부터 상기 차이를 최소화하는 매크로블록이 선택된다. 본래 해상도에서 전체 영상 상에서 검색이 행해지므로 이러한 절차는 계산 시간면에서 부담이 크다. 또한, 추정 프로세스는 단일-해상도(mono-resolution)이고, 대개는 왜곡/코딩 비용 타협을 제공하는 함수의 국소적인 최소값에 대응하는 벡터 필드로 수렴한다.
본 발명은 상술된 문제점을 발생시키지 않는 모션 추정의 방법을 제안한다. 따라서, 본 발명에 따른 모션 추정 방법에 의하면, 전역 최소값(global minimum)에 보다 가까운 최소값이 달성되기 때문에 보다 적은 코딩 비용에서 계산 시간이 덜 걸리는 모션 추정을 획득하는 것이 가능하다.
본 발명은 블록들로 분할된 본래 영상의 블록 세트에 대한 복수의 모션 벡터들 중에서 하나의 모션 벡터를 선택하도록 의도된 계층적인 모션 추정의 방법에 관한 것으로, 상기 방법은, 모션 벡터들 각각에 대한 블록 세트 상에서의 에너지 함수(energy function)를 계산하는 단계로서, 블록 세트의 크기에 맞추어 적응된 라그랑지 제약(Lagrangian constraint)을 계산하는 하부단계를 포함하는, 상기 계산 단계; 및 상기 블록 세트 상에서의 에너지 함수를 최소화하는 모션 벡터를 선택하는 단계를 포함한다.
구체적으로, 본 발명에 의해 제안된 브로드-스케일(broad-scale) 접근법에 의하면, 블록 세트에 대한 분석을 실행함으로써 보다 전체적인 분석을 실행하는 것이 가능하다. 블록 세트의 크기에 맞추어 적응된 라그랑지 제약의 사용에 의해 계산량을 감소할 수 있다.
본 발명의 일 실시예에 따르면, 상기 계산 단계는, 본래 영상에 기초하여 해상도를 감소하는 하부단계의 도움으로 획득되고 블록 세트에 대응하는 보다 낮은 해상도의 영상 상에서의 왜곡을 계산하는 하부단계를 포함한다.
다중 해상도(multi-resolution) 접근법으로 보완되는 브로드-스케일 접근법에 의하면, 왜곡이 보다 낮은 해상도의 영상 상에서만 계산되기 때문에 계산을 더욱 감소할 수 있다.
다른 실시예에서, 해상도를 감소하는 하부단계에서 사용되는 계수들이 라그랑지 제약을 계산하는 하부단계에서 사용된다.
이 경우에 있어서, 라그랑지 제약은 이어서 보다 낮은 해상도의 영상을 생성하는데 사용되는 필터의 특성의 함수로서 적응된다.
본 발명의 일 실시예에 따르면, 상기 방법은, 이웃 블록의 세트를 포함하는 보다 큰 크기의 블록 세트들에서 이전의 회귀반복에서 선택된 모션 벡터들을 현재로 명명된 블록 세트의 이웃 블록의 세트들에 모션 벡터들로서 제공함으로써, 크기가 감소하는 일련의 블록 세트들에 대해 회귀적으로 반복된다.
이러한 다중-스케일(multi-scale), 회귀반복적 계층 접근법에 의하면 단일-스케일(mono-scale) 및/또는 단일-해상도 접근법에 의해 가능한 것 보다 전역 최소값에 보다 가까운 국소적인 최소값에 도달할 수 있고, 그러므로 특히 블록 세트 상에서의 코딩 비용을 최적화할 수 있다. 구체적으로는, 훨씬 더 작은 크기의 블록 세트들에 대한 본 발명의 회귀반복에 의해 전체 영상 상에서의 최소값의 결정을 최적화할 수 있다. 국소적인 최소값을 얻는 것이 그다지 가능하지 않다.
본 발명의 일 실시예에 따르면, 블록 세트들의 감소하는 크기는 n 번의 회귀반복에 있어서 2n×2n 블록이다.
본 실시예는 특별히 블록들이 매크로블록들로 그룹화되어 있고, 상기 매크로블록들이 또한 2n×2n 블록들의 그룹으로 그룹화될 수 있는 MPEG 코딩에 유용하다. 예컨대, 회귀반복의 개시 블록 세트는 코딩될 영상에서 가능한 가장 큰 크기 2n 의 블록들일 수 있고, 열(series)에서의 다음 번 세트는 크기 2n-1 의 블록일 수 있는 등이다. 본 발명의 방법에 따르면, 모션 벡터는 다음 번 회귀반복의 크기 2n-1 의 4 개의 세트에 대응하는 크기 2n 의 세트에 대해 선택된다. 이어서 모션 벡터는 크기 2n-1 의 각 세트에 대해 본 발명에 따라 결정된다. 이들 세트는 통상적인 스캔에 의해, 예를 들어 좌측으로부터 우측으로 그리고 상부로부터 하부로 이후 순회된다. 그 다음에는 크기 2n-2 의 세트들의 차례이고 기타 등등이다.
본 발명의 일 실시예에 따르면, 해상도를 감소하는 하부단계의 도움으로 획득되는 영상의 크기는 일련의 블록 세트들에서 블록들의 다음 세트의 크기이다.
본 발명은 또한 상술된 방법을 실행하기 위한 장치에 관한 것이다.
본 발명은 또한 본 발명에 따른 방법을 실행함으로써 얻어지는 압축 영상에 관한 것이다.
본 발명의 다른 특징 및 장점은 첨부된 도면을 참조하여 서술된 다양한 실시예에 대한 설명을 판독하면 명백하게 될 것이다.
도 1에 나타낸 바와 같이, 본 발명에 따른 장치(100)는 모션 벡터 각각에 대한 본래 영상(101)의 블록 세트(108)상에서의 에너지 함수(105)를 계산하기 위한 계산 모듈(calculation module; 102)을 포함한다. 그러나, 명확화를 위해 참조번호 105로 나타낸 에너지 함수는 동일한 하나의 블록 세트에 대한 여러개의 모션 벡터에 대해 계산된다. 따라서, 평가되는 모션 벡터들만큼 많은 값들의 에너지 함수(105)가 저장된다.
구체적으로는, 모션을 추정하기 위해, 블록 세트(108)마다 모션 필드를 식별해야 한다. 현재 영상의 블록 세트(108) 각각에 대해, 코딩 비용을 제한하면서 현재의 블록들의 세트(108)를 양호하게 예측할 수 있는 모션 벡터를 식별해야 한다. 이것을 수행하기 위해, 에너지 함수(105)가 결정되고, 통상적으로 에너지 함수는 시간적인 예측의 품질의 측정과 관련된 항 및 모션의 코딩 비용에 관련된 항인 2개의 항으로 분해된다.
통상적으로는, 현재 영상의 블록 b 에 대하여, 시간적인 예측의 품질의 측정 과 관련된 에너지는 모션 보상 에러(motion compensation error)에 기초하고 있다. 우리는 다음과 같이 계산되는, SAD로 명명된, 차이들의 절대값들의 합을 사용한다:
SADb(u) = Σ|Icurrent(x,y) - Iref(x+ux, y+uy)|
여기에서 Icurrent 는 현재 영상이고, Iref 는 참조 영상이며, (x,y)는 픽셀의 어드레스이고, (ux, uy)는 모션 벡터 u의 성분이다.
MPEG 놈(norm)에 따라, 코딩 비용과 관련된 에너지가 다음의 식에 따라 결정된다:
Cb(u) = λ.R(u-mb)
여기에서 λ는 라그랑지 가중 계수(Lagrangian weighting coefficient)이고, R(...)은 블록 b 의 벡터의 코딩에 대한 예측으로서 작용하는 모션 벡터 mb에 대한 코딩 비용 함수이고, mb는, 예를 들어, 그것을 둘러싸는 3개의 벡터들의 메디안(median) 벡터로서 계산될 수 있다.
모션 추정 문제는 다음 함수를 최소화하는 문제로서 취급된다:
Figure 112005036351153-pat00001
전체 블록들 상에서의 계산은 막대한 계산량을 필요로 하고, 이전에 설명한 바와 같이, 코딩 비용에 대한 전역 최소값에 가까운 최소값에 도달할 수 없다.
이들 결점을 회피하기 위해, 본 발명에서는 다중 스케일 접근법을 사용한다. 도 2a 내지 도 2c에 도시된 바와 같이, 스케일 k > 0 에서, 블록들의 세트 B 는 2k × 2k 블록 b 를 포함하고 b 블록은 스케일 k = 0 의 N × N 이다.
도 3에 나타낸 바와 같이, 블록들의 세트 B 의 이웃(neighbours)은 주어진 스케일 k 에서 Ni (i=1, ..., 8)로 표시된다. 블록 세트 B와 Ni 각각은 벡터를 소유한다. B의 스케일 0에서 크기 N×N의 블록들은 bi로 표시되고, 스케일 0에서 크기 N×N의 이웃하는 블록들은 ni로 표시되어 있다.
본 발명에 따르면, 블록 세트에 대하여 최소화가 실행되고 보다 작은 스케일에서 모션 벡터들의 다른 선택에 의해 유리하게 추종되고, 이런 식으로 에너지 함수의 최소화는 가장 높은 스케일로부터 스케일 0까지 실행된다. 주어진 스케일에서 얻어지는 모션 필드는 다음 스케일에 대한 초기화로서 기능한다. 주어진 스케일에서 영상에 대한 최소화를 행하기 위해, 그 원리는 블록 세트를 하나씩 예를 들어 좌측으로부터 우측으로 그리고 상부로부터 하부로의 스캔에 의해 획득하는 단계 및 블록 세트 각각에 대해 에너지 함수의 값을 최소값으로 제공할 수 있는 벡터를 선택하는 단계로 이루어진다.
벡터 u를 블록 세트에 할당하는 것은 블록 세트 자체에 영향을 주고 또한 주어진 블록 세트의 모션 벡터의 코딩을 위해 이웃 블록 세트의 모션 벡터를 사용하기 때문에 이웃 블록 세트에도 영향을 준다. 그러므로 이러한 영향을 평가하고 그것을 최소화할 수 있게 하는 것이 에너지 함수를 계산하는 목적이다.
한편, 에너지 함수에서 모션의 코딩 비용에 대응하는 항은 다음에서의 더빙 된 콘텍스트(contextual) 에너지이다. 이러한 에너지는 블록 세트 및 그것의 이웃에 대한 코딩 비용을 고려해 넣는다.
따라서, 도 3 을 참조하면, 벡터 u에 대한 블록 세트 B 의 콘텍스트 에너지는 다음과 같다:
Figure 112005036351153-pat00002
여기에서 Vn은 블록 n의 벡터이고, Cb(x)는 벡터 x의 블록 b ⊂ B에 대한 코딩 비용으로서 다음의 형태 Cb(x) = λ.R(x-mb)로 표현되며, Cn(x/u)는 블록들의 세트 B의 벡터가 u 일 때 벡터 x 의 블록 n ⊂ N에 대한 코딩 비용으로서 다음의 형태 Cn(x/u) = λ.R(x-mn(u))로 표현되며, mn(u)는 블록들의 세트 B의 벡터가 u 일 때 블록 n의 예측자(predictor) 모션 벡터이다.
블록 세트 B에 포함되는 블록 bK+1 및 bK×K 에 대해, 모션 벡터는 u이다. 그러므로, 이들 블록들에 대해 Cb(u) = λ.R(0)는 u와 독립적이다.
블록들 n1내지 n3K+2 및 n4K+4에 대해, 모션 벡터는 u와 독립적이다. 구체적으로는, 이들 3 개의 이웃하는 블록은, 표준에서 정의하고 블록 b에 대한 도 5에서 빗금으로 나타낸 바와 같이, u를 포함하지 않고, 또는 하나는 u를 포함하고 나머지 2 개는 동일한 하나의 벡터 v를 포함한다. 그러므로 모션 벡터의 정의에 의해 상기 3 개의 메디안은 v에 대응한다.
따라서 우리는 다음의 결과를 얻는다:
Figure 112005036351153-pat00003
여기에서 γ는 u와 독립적이다.
상기 식의 항들은 다음과 같이 명확하게 될 수 있다:
Figure 112005036351153-pat00004
최종적으로 다음과 같다.
Figure 112005036351153-pat00005
따라서, 블록들의 세트 B의 스케일에 관계없이, 벡터 u와 독립적이기 때문에 각각의 스케일에 대해 단 한번 계산되는 계수 λ가 부가하여 5 개의 값만을 계산할 필요가 있다. γ 는 u와 독립적이기 때문에 γ를 계산할 필요는 없다. 그러므로, 테스트되는 모션 벡터에 관계없이, 위의 식의 합 중 우측 부분만이 변한다. 따라서, 본 발명에 의하면, 실행되어야 하는 계산량을 감소할 수 있다. 따라서, 모션 벡터들의 코딩과 관련된 에너지의 계산은, 블록 세트의 크기에 대해, 바꿔 말하자 면 고려되는 스케일에서 결정된 라그랑지 제약 λ의 계산을 충족시킨다.
단일 블록에 대응하는 가장 작은 스케일, 즉 k = 0 에 대해, 콘텍스트 에너지는 다음의 형태로 표현된다:
Figure 112005036351153-pat00006
다른 한편으로, 이론적으로, 모션 보상 에러와 관련된 에너지는 블록들의 세트 B의 스케일 0의 모든 블록들 상에서의 SAD의 합이다. 계산의 부담을 감소하기 위해, 본 발명에서는 다중-해상도 접근법을 실행한다. 본래 해상도와 상이한 해상도의 영상이 현재 영상 및 참조 영상에 대해 만들어진다. 본 발명이 복수의 해상도에 대해 회귀적으로 반복될 때, 영상들의 다중-해상도 피라미드가 만들어진다는 것이 주목된다. 도 4에 나타낸 바와 같이, 이러한 피라미드에서, 도 4b 또는 도 4c에서 레벨 k 에서의 크기 N×N의 블록은 도 4a에서 레벨 0에서의 크기 N×N 의 2k×2k 블록들의 그룹에 대응한다. 그러므로 스케일 k 의 N×N 블록은 스케일 0의 블록 세트와 정합될 수 있다.
상이한 해상도 영상들 상에서의 왜곡의 계산을 실행하기 위해, 계산 모듈(102)은, 블록들의 세트(108)에 대응하고 본래 영상(101)에 기초하여 해상도를 감소하는 서브모듈(109)의 동작의 도움으로 얻어지는 영상(106)상에서의 왜곡(104)을 계산하는 계산 서브모듈(110)과 협력되어 있다.
보다 낮은 해상도의 영상(106)는, 예를 들어, 본래 해상도의 영상(101)로부 터 발생하는 적어도 블록들의 세트(108)를 로우-패스 필터링하고 팩터 2로 서브샘플링함으로써 얻어진다. 따라서, 예를 들어, 보다 낮은 해상도의 영상에서의 크기 N×N의 블록은 본래 해상도의 영상(101)에서의 크기 N×N의 블록 세트(108)에 대응한다.
구체적으로, 도 4에 나타낸 바와 같이, 이 경우는 해상도의 감소되어서 블록 세트들의 일련의 크기에서의 다음 크기와 일치하도록 블록 세트(108)의 크기가 해상도의 저감을 통해 감소되는 경우에 대응한다. 이러한 크기 시리즈는 본 발명에 따른 방법을 회귀적으로 반복하는데 사용된다.
본 발명은 2 개의 해상도에 대해 독립적으로 얻어진 왜곡들 사이의 링크를 해제하여 본래 해상도에서의 계산을 위해 보다 낮은 해상도에서의 영상에 대한 계산을 사용하게 하는 것을 제안한다.
차이들의 절대값들의 합과 관련하여, 본래 해상도의 영상에서의 블록들의 세트에 대응하는, 보다 낮은 해상도의 영상의 크기 N×N의 블록 상에서의 SAD와 본래 해상도의 영상에서의 크기 N×N의 블록들의 SAD의 합과의 사이에서 본 발명에 따른 근사 관계가 발견된다.
SAD의 계산에서 기능하는 영상 신호 x는 가우시안(Gaussian)에 따라 분포된 비상관(uncorrelated) 신호인 것으로 간주된다.
x ~ N(μ,σ)
로우 패스 필터링으로부터 기인하는 신호 y 는 선형으로 가정되고 이 신호의 서브샘플링으로부터 다음의 통계적인 특성과 비상관되어 있는 신호를 준다.
Figure 112005036351153-pat00007
여기에서 α(i,j)는 보다 낮은 해상도의 영상을 구성하는데 사용된 로우 패스 필터의 계수들을 구성한다. 예로서, 상기 필터는 다음과 같을 수 있다:
α(0,0) = 0.0625 α(0,1) = 0.125 α(0,2) = 0.0625
α(1,0) = 0.125 α(1,1) = 0.25 α(1,2) = 0.125
α(2,0) = 0.0625 α(2,1) = 0.125 α(2,2) = 0.0625
주어진 해상도 k의 블록의 SAD 는 다음의 공식에 의해 보다 높은 해상도 k-1의 대응하는 블록들의 SAD에 관련되는 것으로 간주될 수 있다:
Figure 112005036351153-pat00008
반복적으로 적용되면, 보다 낮은 해상도의 영상에서의 크기 N×N의 블록 상에서의 SAD 의 계산에 의하면 다음의 공식에 따라 본래 크기의 영상에서의 대응하는 크기 N×N의 블록들의 SAD의 합을 근사시킬 수 있다.
Figure 112005036351153-pat00009
여기에서 SAD°는 본래 해상도의 영상 상에서의 블록들의 SAD이다.
팩터 4 는 주어진 레벨의 블록이 보다 낮은 레벨에서 4개의 대응하는 블록을 갖는다는 사실로부터 기인한다.
장치는 모션의 코딩 비용에 대응하고 상기 블록 세트 상에서의 모션 보상 에러에 대응하는 에너지들의 합을 계산함으로써 얻어지는, 에너지 함수를 최소화하는 제 1 모션 벡터를 선택하기 위한 모듈을 포함한다.
블록 세트 B에 대한 벡터 u는 다음 함수를 최소화하는 모션 벡터이다:
Figure 112005036351153-pat00010
구체적으로, 최적 벡터에 대한 검색은 그러므로 다음 함수를 최소화하는 벡터를 검색하는 단계로 구성될 것이다:
Figure 112005036351153-pat00011
따라서, λk에 대응하는 라그랑지 제약(113)은 보다 낮은 해상도의 영상(106)를 발생시키도록 기능하는 필터들의 계수들(112)을 유리하게 받아들이는 계산 서브모듈(103)에서 계산된다. 블록 세트의 크기에 맞추어 변경된 이러한 새로운 형태의 라그랑지 제약(113)에 의해 계산을 매우 단순화할 수 있고 본 발명에 따른 방법이 블록들의 세트들의 여러가지 크기에 대해 훨씬 더 작은 크기의 그리드 상에서 회귀적으로 반복될 때, 에너지 함수들의 최소화가 커다란 스케일에서 처음으로 실행될 수 있기 때문에 영상 상에서의 전역 최소값에 가까운 최소값에 도달할 수 있다. 본 발명에 따르면, 보다 낮은 해상도의 블록들의 세트의 영상 상에서 블록들의 세트의 각각의 크기에 대해 왜곡이 유리하게 계산된다. 이에 의해 계산량을 상당히 감소시킬 수 있다.
본 발명은, 크기가 감소하는 일련의 블록들의 세트들, 예를 들어 n 번의 회 귀반복을 갖는 크기 2n×2n 에 대해 본 발명에 따른 방법을 회귀적으로 반복함으로써 가장 거친(coarsest) 스케일에 기초하여 최적화에 착수할 수 있다. 콘텍스트 스캔이 세트들 각각을 순회하는데 사용된다.
본 발명은 개시된 실시예들로 제한되지 않으며 당업자라면 다양한 대안 실시예들의 존재를 인식할 것이다.
상술된 본 발명에서 알 수 있듯이, 본 발명에 따르면, 블록 세트의 크기에 맞추어 변경된 라그랑지 제약을 사용함으로써 계산량을 감소할 수 있고, 또한 코딩 비용에 대한 글로벌 최소값에 가까운 최소값에 도달할 수 있다.

Claims (12)

  1. 블록들로 분할된 본래 영상(101)의 블록들의 세트(108)에 대한 복수의 모션 벡터들 중에서 모션 벡터(111)를 선택하기 위한 계층적인 모션 추정 방법으로서,
    상기 모션 벡터들 각각에 대하여 상기 블록들의 세트(108)에 대한 에너지 함수(105)를 계산하는 단계(102) - 상기 계산하는 단계(102)는, 상기 블록들의 세트(108)의 크기에 적응된 라그랑지 제약(Lagrangian constraint; 113)을 계산하는 하부단계(103)를 구현함 -; 및
    상기 블록들의 세트(108)에 대한 에너지 함수(105)를 최소화하는 모션 벡터(111)를 선택하는 단계(107)
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 계산하는 단계(102)는, 상기 블록들의 세트(108)에 대응하며, 상기 본래 영상(101)에 기초하여 해상도를 감소시키는 하부단계(109)의 도움으로 획득된 보다 낮은 해상도의 영상(106)에 대한 왜곡(104)을 계산하는 하부단계(110)를 구현하는 방법.
  3. 제2항에 있어서,
    상기 해상도를 감소시키는 하부단계(109)에서 사용되는 계수들(112)이 상기 라그랑지 제약(113)을 계산하는 하부단계(103)에서 사용되는 방법.
  4. 제2항 또는 제3항에 있어서,
    이웃 블록들의 세트들을 포함하는 보다 큰 크기의 블록들의 세트들에서 이전의 반복 과정(iteration)에서 선택된 모션 벡터들을 현재의 블록들의 세트의 이웃 블록들의 세트들에 대해 모션 벡터들로서 제공함으로써, 크기가 감소하는 일련의 블록들의 세트들 상에서 반복되는(iteratively repeated) 방법.
  5. 제4항에 있어서,
    상기 크기가 감소하는 일련의 블록들의 세트들의 크기가 감소하는 블록들은 n 번의 반복에 있어서 2n ×2n 개의 블록들인 방법.
  6. 제4항에 있어서,
    상기 해상도를 감소시키는 하부단계(109)의 도움으로 획득된 상기 영상(106)의 크기는, 상기 일련의 블록들의 세트들에서 상기 현재의 블록들의 세트의 다음의 블록들의 세트의 크기인 방법.
  7. 영상들을 코딩하는 방법으로서,
    제1항의 방법에 따른 계층적인 모션 추정 단계를 포함하는 것을 특징으로 하는 방법.
  8. 블록들로 분할된 본래 영상(101)의 블록들의 세트(108)에 대한 복수의 모션 벡터들 중에서 모션 벡터(111)을 선택하기 위한 계층적인 모션 추정 장치(100)로서,
    상기 모션 벡터들 각각에 대하여 블록들의 세트(108)에 대한 에너지 함수(105)를 계산하기 위한 계산 모듈(102) - 상기 계산 모듈(102)은, 상기 블록들의 세트(108)의 크기에 적응된 라그랑지 제약(113)을 계산하기 위한 계산 서브모듈(103)을 구현함 -; 및
    상기 블록들의 세트(108)에 대한 에너지 함수(105)를 최소화하는 모션 벡터(111)를 선택하기 위한 모듈(107)
    을 포함하는 장치.
  9. 제8항에 있어서,
    상기 계산 모듈(102)은, 상기 블록들의 세트(108)에 대응하며, 상기 본래 영상(101)에 기초하여 해상도를 감소시키기 위한 서브모듈(109)의 도움으로 획득된 보다 낮은 해상도의 영상(106)에 대한 왜곡(104)을 계산하기 위한 계산 서브모듈(110)을 구현하는 장치.
  10. 제9항에 있어서,
    이웃 블록들의 세트들을 포함하는 보다 큰 크기의 블록들의 세트들에서 이전의 반복 과정에서 선택된 모션 벡터들을 현재의 블록들의 세트의 이웃 블록들의 세트들에 대해 모션 벡터들로서 제공함으로써, 크기가 감소하는 일련의 블록들의 세트들 상에서 모션 벡터(111)의 선택을 반복하기 위한 수단을 포함하는 장치.
  11. 제10항에 있어서,
    상기 크기가 감소하는 일련의 블록들의 세트들의 크기가 감소하는 블록들은 n 번의 반복에 있어서 2n ×2n 개의 블록들인 장치.
  12. 제10항 또는 제11항에 있어서,
    상기 해상도를 감소시키기 위한 서브모듈(109)에서 획득된 상기 영상(106)의 크기는, 상기 일련의 블록들의 세트들에서 상기 현재의 블록들의 세트의 다음의 블록들의 세트의 크기인 장치.
KR1020050060260A 2004-07-06 2005-07-05 블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및장치 KR101192060B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0451448 2004-07-06
FR0451448A FR2872989A1 (fr) 2004-07-06 2004-07-06 Procede et dispositif pour choisir un vecteur mouvement pour le codage d'un ensemble de blocs

Publications (2)

Publication Number Publication Date
KR20060049852A KR20060049852A (ko) 2006-05-19
KR101192060B1 true KR101192060B1 (ko) 2012-10-17

Family

ID=34949757

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050060260A KR101192060B1 (ko) 2004-07-06 2005-07-05 블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및장치

Country Status (7)

Country Link
US (1) US20060008005A1 (ko)
EP (1) EP1617675B1 (ko)
JP (1) JP4887009B2 (ko)
KR (1) KR101192060B1 (ko)
CN (1) CN100571387C (ko)
FR (1) FR2872989A1 (ko)
MX (1) MXPA05007304A (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4620607B2 (ja) * 2006-02-24 2011-01-26 株式会社モルフォ 画像処理装置
FR2940492A1 (fr) * 2008-12-19 2010-06-25 Thomson Licensing Procede d'estimation de mouvement multi-resolutions
KR101668133B1 (ko) 2009-03-06 2016-10-20 톰슨 라이센싱 화상 데이터의 블록을 예측하는 방법, 이 방법을 실행하는 복호 장치 및 부호화 장치
TWI566586B (zh) 2009-10-20 2017-01-11 湯姆生特許公司 一序列形象的現時區塊之寫碼方法和重建方法
CN102215387B (zh) * 2010-04-09 2013-08-07 华为技术有限公司 视频图像处理方法以及编/解码器

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2980810B2 (ja) * 1994-04-20 1999-11-22 株式会社グラフィックス・コミュニケーション・ラボラトリーズ 動きベクトル探索方法と装置
JPH0846968A (ja) * 1994-08-03 1996-02-16 Nippon Telegr & Teleph Corp <Ntt> 階層的動ベクトル検出方法および装置
JPH08223578A (ja) * 1995-02-13 1996-08-30 Nippon Telegr & Teleph Corp <Ntt> 動きベクトル探索方法および装置
US6160846A (en) * 1995-10-25 2000-12-12 Sarnoff Corporation Apparatus and method for optimizing the rate control in a coding system
US6084908A (en) * 1995-10-25 2000-07-04 Sarnoff Corporation Apparatus and method for quadtree based variable block size motion estimation
EP1152621A1 (en) * 2000-05-05 2001-11-07 STMicroelectronics S.r.l. Motion estimation process and system.
JP2004509531A (ja) * 2000-09-12 2004-03-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ符号化方法
US7643559B2 (en) * 2001-09-14 2010-01-05 Ntt Docomo, Inc. Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program
US7164800B2 (en) * 2003-02-19 2007-01-16 Eastman Kodak Company Method and system for constraint-consistent motion estimation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Subramanian P et al: "Reduced-complexity rate-distortion optimiazation of multiresolutionmotion field and prediction residual" Proc. ICIP, vol.2,26 Oct.1997, pages 799-802.

Also Published As

Publication number Publication date
US20060008005A1 (en) 2006-01-12
MXPA05007304A (es) 2006-01-26
FR2872989A1 (fr) 2006-01-13
JP4887009B2 (ja) 2012-02-29
KR20060049852A (ko) 2006-05-19
CN1719899A (zh) 2006-01-11
JP2006025431A (ja) 2006-01-26
EP1617675A2 (en) 2006-01-18
EP1617675B1 (en) 2014-10-15
EP1617675A3 (en) 2006-03-22
CN100571387C (zh) 2009-12-16

Similar Documents

Publication Publication Date Title
US6625216B1 (en) Motion estimation using orthogonal transform-domain block matching
US6363117B1 (en) Video compression using fast block motion estimation
KR100563552B1 (ko) 비선형 피라미드를 사용하여 계층적인 움직임 추정을 실행하기 위한 장치 및 방법
CN107241605B (zh) 视频编码器以及视频编码方法
CN110870314A (zh) 用于运动补偿的多个预测器候选
US20070268964A1 (en) Unit co-location-based motion estimation
JP3385077B2 (ja) 動きベクトル検出装置
US20070053431A1 (en) Methods and devices for encoding and decoding a sequence of images by means of motion/texture decomposition and wavelet encoding
JP4906864B2 (ja) スケーラブルビデオコーディング方法
US11134242B2 (en) Adaptive prediction of coefficients of a video block
JP2009510869A5 (ko)
EP1615172B1 (en) Method and device for choosing a mode of coding
KR101192060B1 (ko) 블록 세트의 코딩을 위한 모션 벡터를 선택하는 방법 및장치
US20180359486A1 (en) Non-local adaptive loop filter processing
US7894527B2 (en) Multi-stage linked process for adaptive motion vector sampling in video compression
US20170006290A1 (en) Video encoding device and video encoding method
KR20050033098A (ko) 계층적 움직임 추정 방법
US10091514B1 (en) Apparatus and method for inter and intra mode selection and block partitioning
RU2487489C2 (ru) Способ поиска векторов перемещений в динамических изображениях
Li et al. Space-time quantization and motion-aligned reconstruction for block-based compressive video sensing
Soongsathitanon et al. Fast search algorithms for video coding using orthogonal logarithmic search algorithm
Ebrahimi et al. Digital video codec for medium bitrate transmission
Anandan et al. VIDEO COMPRESSION USING ARPS AND FAST DISCRETE CURVELET TRANSFORM FOR MOBILE DEVICES
Pesquet-Popescu et al. Motion Estimation—A Video Coding Viewpoint
KR20080075987A (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: 20150918

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160909

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170919

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180918

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20191001

Year of fee payment: 8