KR20050108397A - 움직임 벡터 결정을 위한 방법 - Google Patents
움직임 벡터 결정을 위한 방법 Download PDFInfo
- Publication number
- KR20050108397A KR20050108397A KR1020057017199A KR20057017199A KR20050108397A KR 20050108397 A KR20050108397 A KR 20050108397A KR 1020057017199 A KR1020057017199 A KR 1020057017199A KR 20057017199 A KR20057017199 A KR 20057017199A KR 20050108397 A KR20050108397 A KR 20050108397A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- pixels
- groups
- motion vectors
- image
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
-
- 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/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/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/537—Motion estimation other than block-based
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Analysis (AREA)
Abstract
이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대하여 이미지 데이터로부터 움직임 벡터들을 결정하는 방법으로서, 픽셀들의 블록(B(X)) 또는 오브젝트는 블록(B(X)) 또는 오브젝트내 둘 이상의 그룹들(Ga,Gb)로 분할되며(33), 움직임 벡터(Da,Db)는, 블록(B(X))에 할당되고 블록들내 각각의 그룹들(Ga,Gb)의 픽셀들에 적용된다.
Description
본 발명은 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대하여 이미지 데이터로부터 움직임 벡터들을 결정하는 방법에 관한 것이다. 더욱이, 본 발명은 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대하여 이미지 데이터로부터 움직임 벡터들을 결정하는 결정기를 포함하는 디스플레이 디바이스와, 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대하여 이미지 데이터로부터 움직임 벡터들을 결정하는 소프트웨어 코드부들을 포함하는 컴퓨터 프로그램 제품에 관련된다.
이미지 데이터로부터 움직임 벡터들의 결정은 넓은 범위의 이미지 프로세싱 애플리케이션들에 요청되나. MPEG 또는 H.261과 같은 비디오 코딩 골격 구조에서, 움직임 벡터들은 하나의 이미지로부터 다른 이미지로 움직임(또는 오브젝트 변위)을 결정하는 움직임 벡터들에 의해 표현된다. 움직임 벡터들의 결정은 예를 들어 움직임-보상 예측 부호화(motion-compensated predictive coding)를 위해 사용될 수 있다. 이미지내의 한 영상이 이전 영상들의 대체된 사본과 매우 유사하기 때문에, 결정된 움직임 벡터 데이터를, 픽셀 또는 DCT 도메인 중 하나에서 실제 이미지와 실제 이미지 예측 사이의 차이에 관한 정보와 함께 인코딩하는 것은 코딩된 신호의 일시적 중복을 광범위하게 감소시키도록 허용한다.
움직임 벡터들의 추정을 위한 부가적인 예들로, 움직임 벡터들의 요소들이 움직임 모델의 파라미터들을 포함할 때, 이미지 세그먼트(오브젝트들)에 대한 움직임 모델을 추정하는 방법을 포함한다.
이미지 데이터로부터 움직임 벡터들을 추정하거나 결정하는 최근의 기술들은 보통 몇 가지 종류의 블록 매칭 알고리즘(BMA)을 응용하며, 이미지는 고정된 블록들로 분해되거나 변화 가능한 사이즈이다. 이미지는 이미지 블록들(오브젝트 구분) 대신 이미지 도메인 오브젝트들로 분해될 수 있어, 이어지는 설명은 블록들 대신 오브젝트들을 동일하게 잘 설명한다. 현재 이미지의 각각의 블록에 대해, 이전 이미지에서의 유사한 블록이 탐색되는데, 유사성 측정은 현재 블록과 가장 유사한 이전 블록을 식별하도록 응용된다. 최대의 유사성을 가진, 이전 이미지 블록과 연관된 움직임 벡터가 결정되면, 현재 블록의 픽셀들과 연관된 움직임 벡터를 나타낸다. 유사성 측정을 계산할 때, 비교된 두 개의 블록들의 모든 픽셀들이 평가되는 것은 아님을 주목한다. 예를 들어, 블록들은 공간적으로 부-표본(sub-sampled)이 될 수 있어, 양 블록들의 각각의 k번째 픽셀만이 유사성 측정의 평가를 위해 고려된다.
일반적으로, 블록-매칭 움직임 추정기(block-matching motion estimators)는, 보통 매칭 기준을 최소화하는 후보 벡터 집합에서 벡터를 선택함으로써, 이미지에서 픽셀들의 모든 블록에 대한 변위 벡터를 계산하는데 사용된다. 벡터는 이미지의 관련 블록에 대한 움직임 벡터이다. 본 발명의 개념에서 "움직임"은 예를 들어, 실제 움직임(디스플레이된 이미지에서 움직이는 하나 이상의 오브젝트들)을 포함하는 임의의 형태의 변위가 아니라, 이미지의 확대 또는 축소(보다 커지거나 보다 작아진 이미지) 또는 카메라 이동이며, 이 경우 이미지는 전체로서 카메라의 프레임내에서 이동한다. 본 발명의 개념에서, 움직임 벡터들은, 데이터가 알려진 다수의 이미지들을 기초로 하는, 하나 이상의 부가적인 이미지들이 구성되는, 임의의 방법으로 인한, 블록들 또는 오브젝트들에 대한 움직임 또는 변위 데이터의 임의의 추정을 포함한다. 상기 움직임 벡터들은 상기 부가적인 이미지들에서 블록들 또는 오브젝트들의 위치 또는 다른 파라미터들을 예측하도록 추정된다. 이러한 방법의 예는, 예를 들어, 화면 보간(picture interpolation) 및/또는 디-인터레이싱의 사용 방법에 의한, 비디오 포맷 변환이며, 일 비디오 포맷(포맷 A, 소스 포맷)의 비디오 데이터로부터 다른 비디오 포맷(포맷 B, 타깃 포맷)의 비디오 데이터가 파생된다. 이러한 방법에서, 벡터들은 하나의 알려진 비디오 포맷(소스 포맷)내 알려진 데이터와 다른 비디오 포맷(타깃 포맷)의 상기 블록들 또는 오브젝트들에 대한 데이터를 기초로 한 블록들 또는 오브젝트에 대한 추정을 위해 사용될 수 있다. 화면 보간을 이용하여, 새로운 이미지들이 알려진 이미지들(화면 보간)로부터 구성되지만, 디-인터레이싱을 이용하여, 알려진 이미지들은 변경되지 않으나, 스캔 라인들을 통한 데이터의 분배는 변경됨을 주목한다. 블록들로 할당된 벡터를 이용하는 이러한 비디오 변환 방법은 계산을 감소화하고, 예를 들어 데이터의 압축을 가능하게 한다. 부가적인 예로, 국부적 깊이가 추정되는 두 개의 입체적 영상들을 나타내는 두 개의 이미지들을 기초한 입체적 비디오에 관한 소위 "디스패리티 추정(disparity estimation)"이다. 이러한 실시예들에서, 벡터들은 블록들 또는 오브젝트들로 할당(attributed)될 수 있고, 벡터들은 알려진 이미지를 기초로 부가적인 이미지들내의 상기 블록들에 대한 다른 파라미터들의 위치를 예측할 수 있는데, 예를 들어, 한 쌍의 입체적 이미지내의 3D 효과로 인한 보간 또는 디-인터레이싱된 이미지들 또는 약간 변위된 이미지들이다.
본 발명에 대한 이러한 부가적인 가능한 응용들에도 불구하고, 본 발명은 "전형적인" 움직임 벡터들에 대해, 즉, 다음의 이미지들의 (시리즈들의) 구성에 대한 복수의 선행하는 이미지들에 기초한 블록들 또는 오브젝트들에 대한 움직임 벡터들을 예측하는데 특히 유용하다.
블록 움직임 벡터들의 사용은, 예를 들어, 오브젝트들의 경계 근처 또는 오브젝트가 자막을 오버레이할 때 나타날 수 있는, 유용한 전략적 아티팩트들이다.
더욱이, 블록-매칭 알고리즘의 결정적인 파라미터는 블록의 사이즈이다. 이 파라미터는 추정된 벡터 필드의 해상도와 이미지내의 주기적인 구조들 및 잡음에 대한 추정기의 민감도 둘 다를 결정한다. 결과적으로, 최적의 블록 사이즈가 타협된다. 작은 블록 사이즈들은 잡음성 움직임 벡터들과 주기적 구조들에 대한 고 민감도를 초래하는 반면, 큰 블록들은 불량한 벡터 해상도를 초래한다. 불량한 벡터 해상도는 오브젝트 경계가 조잡하게 근사화될 수 있고, 이러한 움직임 벡터들을 사용하는 응용에서 블록킹 아티팩트를 초래하는 벡터 필드를 야기한다.
서두에 설명된 바와 같이 개선된 방법, 디바이스, 및 임의의 형태의 컴퓨터 프로그램 제품을 제공하는 것이 본 발명의 목적이다.
결국 본 발명에 따른 방법은, 블록 또는 오브젝트에 대해, 픽셀들은 분할 기준과 픽셀들의 정보를 비교한 것에 따라 둘 이상의 그룹들로 분할되며, 블록 또는 오브젝트내의 각각의 그룹에 대해, 움직임 벡터가 결정되고, 각각의 움직임 벡터들은 블록에 할당되고 블록들내 각각의 그룹들의 픽셀들에 적용되는 것을 특징으로 한다.
본 발명의 개념에서, 그룹 또는 블록은 그룹내 픽셀들의 정보와 분할 기준에 기초하여 둘 이상의 그룹들로 분할된다. 결과적으로, 픽셀들의 그룹들과 블록의 관계, 즉, 어느 픽셀들이 블록내의 어느 그룹에 속해 있는지는 예를 들어, 블록이 복수의 동일한 파트들로 분할되는 경우로서 비교에 따르므로, 즉 고정되지 않는다. 후자는 블록 사이즈가 감소됨을 단순히 의미하여, 즉, 보다 작은 블록들이 사용된다. 본 발명의 개념에서 블록은 분할 기준과 픽셀들의 정보 사이의 비교를 기초로 하여 그룹들로 분할된다.
본 발명의 방법은 보다 큰 블록 사이즈들이 사용되도록 허용하는 반면, 보다 양호한 벡터 해상도를 성취한다. 또한, 실험들에서 아티팩트들이 감소됨이 나타난다.
분리 기준은 픽셀들의 정보 콘텐트에 의존하여 단순한 기준일 수 있다. 이러한 단순한 기준의 예는 고정된 임계 강도, 예를 들어, 각각의 블록을 두 개의 그룹들로 분할하는 것으로, 제 1 기준은 최대 휘도값의 일정한 퍼센트(예를 들어, 50%) 이하의 휘도값을 갖는 픽셀들을 포함하는 것이고, 제 2 기준은 상기 임계 이상의 휘도값을 갖는 픽셀들을 포함하는 것이다.
그러나, 바람직하게, 분리 기준은 블록내 픽셀들의 정보 콘텐트를 기준으로 한다. 이러한 기준의 예들은 블록을 두 개의 그룹들로 분할하는 것으로, 그 기준은 평균 강도이거나, 평균 컬러 포인트 근처의 컬러 포인트 영역이다. 보다 나은 결과를 위해, 선명도에 관계없이 모든 영역들내에서 하나 이상의 벡터를 할당할 가능성을 위해 이러한 분할 기준이 바람직하다.
양호한 실시예들에서, 블록들 또는 오브젝트들은 4 또는 그 이하, 바람직하게는 2개의 그룹들로 분할된다. 본 발명의 최광의 개념에서 블록 또는 오브젝트가 다수의 그룹들로 분할될 수 있을지라도, 작은 수의 그룹들, 4 또는 그 이하, 바람직하게는 2개가 바람직하다. 대부분의 상황들에서, 상기 방법을 복잡하게 하는 반면, 4 그룹들 이상과 심지어는 종종 2 이상의, 부가적인 분할은 오로지 한계적 개선을 초래하거나, 심지어 잡음 벡터 추정들을 초래한다.
양호한 실시예에서, 분할 기준은 블록내 픽셀들에 대한 평균 휘도값이다. 이것은 유용하고 단순한 기준으로 증명된다. 이것은 평균 휘도값 즉, 픽셀들의 수와 모든 휘도값들이 합의 계수, 또는 중간(median) 휘도값 즉, 50%의 픽셀들의 휘도값 그 값보다 높고, 50%의 휘도값이 상기 휘도값 이하인 휘도값이다..
양호한 실시예에서, 움직임 벡터들 사이에서, 블록을 구성하는 그룹들에 대한 움직임 벡터들을 추정한 이후, 비교가 이루어지고, 다수의 그룹들의 움직임 벡터들 사이의 차가 임계값보다 작으면 평균 움직임 벡터가 계산되고 다수의 그룹들로 할당(attributted)된다. 그룹들로의 분할은 개선된 방법을 제공한다. 그러나, 블록이 다수의 그룹으로 분할되면, 사실상 블록은 오로지 하나의 오브젝트를 포함(따라서, 오로지 하나의 움직임 벡터가 적절한 것) 하는 반면, 블록을 둘 이상의 그룹들로 분할하는 것은 계산된 움직임 벡터들 사이의 작은 차이들을 초래할 것이다. 대개 움직임 벡터의 계산은 근사하고 제한된 수의 픽셀들상에서 완료되어, 에러 한계가 있다. 계산된 움직임 벡터들 사이의 차가 임계값(예를 들어, 움직임 벡터들의 계산에서의 에러 한계) 이하면, 상기 차는 근사 또는 계산의 부정확으로 인한 것이기 쉽다. 이렇나 경우들에서, 동일한 움직임 벡터를 관련된 그룹들로 할당하는 것이 유용하며, 발견된 움직임 벡터들의 평균이 선택된다.
본 발명의 이들 및 다른 관점들은 이후에 설명된 실시예들을 참조하여 명확해질 것이다.
도 1a 내지 1c는 상이한 형태들의 움직임들 또는 변위들을 도시하는 상이한 이미지 시퀀스들을 도시한다.
도 2는 배경위로 회전하는 휠(wheel)을 도시한다.
도 3은 본 발명에 따른 예시적인 방법의 상이한 단계들을 흐름도로 도시한다.
도면들은 비례적으로 도시되지 않았으며, 식별 요소들은 도면들에서 동일한 참조 번호들로 나타난다.
도 1은 이미지내의 상이한 움직임들 또는 변위들을 매우 개략적으로 도시한다.
도 1a에서 오브젝트(매우 간소화된 이미지의 새)가 배경에서 움직이는 일련의 이미지들이 도시된다. 처음 두 개의 일련의 이미지들로부터 (가운데 이미지의 화살표가) 구축될 수 있는데, 이는 다음 이미지의 오브젝트(새)의 위치를 예측하도록 사용될 수 있다.
도 1b는 새를 확대한 카메라 동작을 도시한다. 또, 처음 두 개의 일련의 이미지들(또는 일반적으로 다수의 선행하는 이미지들)을 사용하여, (보다 일반적으로 변위 벡터로 불릴 수 있는)움직임 벡터는 일련의 것들 내에서, 다음 이미지상의 오브젝트 또는 블록의 위치를 예측할 수 있도록 각각의 블록 또는 오브젝트에 할당될 수 있다. 이미지 움직임 벡터들은 블록들 또는 오브젝트들로 할당되고, 일련의 것들 내에서, 다음 (방법이 다수의 "중간물(intermediate)"을 보간하기 위해 사용된 다면) 이미지(들)의 상기 블록들 또는 오브젝트들의 위치를 예측하기 위해 선행하는 이미지들내의 정보에 기초하여 계산될 수 있다.
도 1c는 카메라 움직임을 도시한다. 카메라는 이미지에 관하여 움직인다. 또, 처음 두 개의 일련의 이미지들을 이용하여, (보다 일반적으로 변위 벡터로 불릴 수 있는)움직임 벡터는 일련의 것들 내에서, 다음 이미지상의 오브젝트 또는 블록의 위치를 예측할 수 있도록 각각의 블록 또는 오브젝트에 할당될 수 있는데, 물론 이 경우에, 이것은 새로운 부분들이 아닌 다음의 범위에서 재발생하는 이미지 부분들을 보유한다. 심지어 수평으로 스캐닝하는 것과 같은 간단한 카메라 움직임들에 대해 재표시(remarked)되며, 블록들 또는 오브젝트들에 대한 벡터들은 상이한 오브젝트들에 대해, 예를 들어, 카메라를 대하고 있는 그들의 위치, 오브젝트들이 이미지의 전면에 있는지 또는 배경에 있는지에 따라 상이할 수 있다. 또한, 카메라 위치가 변함에 따라 (오브젝트의 상이한 부분들이 카메라에 대하여 상이하게 위치하기 때문에) 오브젝트들은 변형될 수 있다.
그러므로, 본 발명의 개념에서, "움직임 벡터"는 예를 들어, (벡터의 단순한 부가로 인한, 도 1a 참조) 단순한 옮김(translation)(T), (순환적 매트릭스로 매트릭스 승산으로 인한) 회전(rotation)(R), 확대(enlargement)(매트릭스 승산, 예를 들어 도 1b 참조) 또는 변형(deformation)(보다 많은 복잡한 매트릭스들이 필요로 될 것이다) 또는 이러한 변환, 순환, 확대 및/또는 변형의 임의의 조합과 같은 오브젝트 또는 블록의 임의의 변환을 예측하는 파라미터들의 세트를 나타내는 것으로 넓게 해석된다. 예측은 선행하는 이미지들내의 유효한 정보에 기초하여 후속 이미지들내의 블록의 오브젝트의 위치를 예측하기 위해 사용된다.
일반적으로 블록-매칭 움직임 추정기들(BMA)은, 일반적으로 매칭 기준을 최소화하는 후보 벡터 집합에서 그 벡터를 선택함으로써, 이미지내의 픽셀들의 모든 블록마다 움직임 벡터를 계산하는데 사용된다. 이후, 그 벡터는 이미지의 관련 블록에 대한 움직임 벡터이다.
US 5 072 293은 예를 들어 이러한 BMA를 개시하는데, 여기서 3D 인근으로부터의 예측은 움직임 벡터 추정을 위한 후보 벡터들로서 사용된다. 후보 움직임 벡터들의 집합은 움직임 벡터들 공간적(2D) 및 일시적(1D) 예측들 둘 다를 포함하며, 각각의 블록에 대해 반복적으로 결정되는 것이 가장 좋다. 그 테크닉은 반복적으로, 현재 이미지(n)의 블록에 대한 후보 움직임 벡터들의 집합에서 적어도 하나의 후보 움직임 벡터는 이미지(n)(공간적 예측들) 또는 선행하는 이미지(n-l)(일시적 예측들)의 다른 블록들의 이미 결정된 움직임 벡터들에 의존한다.
도 2는 별들을 배경으로한 회전 휠을 도시한다. 휠은 회전하는 반면 별들의 위치는 고정된다.
(블록 매칭, 또는 임의의 다른 형태의) 움직임 추정기에서, 이전 이미지의 이동한 부분을 현재 이미지의 고정된 부분과 매칭하도록 시도된다. 본 발명을 명확히 하기 위해 이용되는 예로, 추정기는 예를 들어, 매칭 기준으로서 절대차 합산(Summed Absolut Difference)(SAD)을 사용한다.
(1)
는 테스트 중인 후보 벡터이고, 벡터 는 블록()의 위치를 나타내며, 는 휘도 신호이며, n은 화면 또는 필드의 번호이다. 움직임 벡터는, 블록당 하나의 벡터는 가장 낮은 SAD 값을 주는 후보 벡터라는 결과를 갖는다. 상술된 움직임 추정기의 품질은 후보 벡터들이 생성된 방식에 의해 폭넓게 결정된다. 본 발명의 개시에서, 이 선택에 관해서는 관심을 갖지 않는다. 완전 탐색, 3단계 탐색, 하나 하나씩의 탐색, 또는 3D 반복 탐색 블록 매치기(3-D Recursive Search block matcher)로 (애플리케이션에 의존하여) 양호한 결과가 달성될 수 있다. 또한, 소위 계층형 움직임 추정기 방법이 가능한데, 이 방법에서 관용적으로 먼저 상대적으로 큰 블록(예를 들어, 32×32 픽셀들)에 대해 움직임 벡터가 추정된 이후 큰 블록은 보다 작은 블록들(예를 들어, 4개의 16×16 픽셀들)로 잘려지고, 큰 블록의 움직임 벡터는 다음 계층 레벨로 이송되는 것으로, 즉, 큰 블록의 움직임 벡터는 보다 작은 블록들에 대한 움직임 벡터들의 계산을 위한 시작 포인트로서 이용된다. 본 발명에 따른 방법은 계층 움직임 추정기 방법을 위해 사용될 수 있는데, 분할 기준에 의존하는 둘 또는 그 이상의 움직임 벡터들은 다음 계층 레벨로 이송된다.
이러한 임의의 블록-매칭(또는 임의의 매칭) 알고리즘의 결정적인 파라미터는 블록 사이즈이다. 이 파라미터는 추정된 벡터 필드의 해상도와 이미지의 잡음 및 주기적 구조들에 대한 추정기의 민감도 둘 다를 결정한다. 결과적으로, 최적의 블록 사이즈가 타협된다. 작은 블록 사이즈들은 잡음성 움직임 벡터들과 주기적 구조들에 대한 고 민감도를 초래하는 반면, 큰 블록들은 불량한 벡터 해상도를 초래한다. 불량한 벡터 해상도는 오브젝트 경계가 조잡하게 근사화될 수 있고, 이러한 움직임 벡터들을 사용하는 응용에서 블록킹 아티팩트를 초래하는 벡터 필드를 야기한다.
상대적으로 큰 블록 또는 오브젝트 사이즈가 선택되면, 예를 들어, 도 2의 직사각의 점선과 같이 개략적으로 표시되어, 결과 움직임 벡터는 오프 타깃(off target)이다. (회전성 매트릭스일 수 있는) 움직임 벡터의 계산이 휠의 참 회전(true rotation)에 가까우면 움직임 벡터는 별들에 대해 거짓이고, 움직임 벡터가 0(정확히 별들)에 가깝게 발견되면 예측된 움직임 벡터는 휠에 대해 오프 타깃이다. 임의의 평균값은 휠과 별들 둘 다에 대해 오프 타깃이다. 도 2의 하단에 개략적으로 나타난 것과 같이, 보다 작은 블록 사이즈를 이용함으로써, 대부분의 도면에 대한 상기 문제점은 감소하나, 그 대가로 예측된 움직임 벡터(들)에 대한 정확도가 감소된다. 심지어, 예를 들어 직사각(21)으로 도시된 것과 같은 작은 블록 사이즈에 대해, 동일한 문제가 발생한다. 본 발명은 결정하는 방법을 제공하거나 적어도 문제들을 감소시키는 것을 목표로 한다.
결국, 매칭 기준이 변경되고, 변경된 기준을 기초로 블록마다 하나의 벡터가 할당된다.
본 발명에 따른 방법은, 블록 또는 오브젝트에 대해, 픽셀들은 분할 기준과 픽셀들의 정보를 비교한 것에 따라 둘 이상의 그룹들로 분할되며, 블록 또는 오브젝트내 각각의 그룹에 대해, 움직임 벡터가 결정되고, 각각의 움직임 벡터들은 블록에 할당되고 블록들내 각각의 그룹들의 픽셀들에 적용되는 것을 특징으로 한다. 움직임 벡터 차이에 대한 최고의 예측을 위해 블록 또는 오브젝트내에 픽셀들의 그룹들이 있으면, 분할 기준에 대한 픽셀들의 정보를 비교함으로써 픽셀들의 정보에 기초하여 그룹들 사이에서 분할이 이루어지고, 이후, 그룹들 각각에 대해 움직임 벡터가 결정되어 각각의 움직임 벡터들은 각각의 그룹내 픽셀들로 할당되는 것이 기본적 통찰이다.
본 발명을 명확히 하기 위해, 본 발명에 따른 예시적인 움직임 추정기를 설명하며, 각각의 블록은 두 개 그룹의 픽셀들로 분할되어, 추정기가 두 개의 그룹들, 즉, 블록마다 2 개의 벡터들로 움직임 벡터를 할당한다.
블록()의 픽셀들의 평균 픽셀 값은,
(2)
N은 의 픽셀들의 수이고, 이 예에서, 는 예를 들어, 오브젝트 또는 사이즈(n×m)(n과 m은 예를 들어, 4와 32 사이, 예를 들어, 16×16임)인 직사각형내의 픽셀들이다.
이제, 블록()을 함께 형성하는 픽셀들의 두 개의 그룹들()을 정의한다.
(3)
즉, 블록()내 이들 픽셀들은 평균 휘도값 보다 큰 휘도값을 가지며,
(4)
즉, 이들 픽셀들은 평균 휘도값 이하의 휘도값을 가진다.
이제, 각각의 그룹()에 대한 제안된 추정기에서, 움직임 벡터들(Da 및 Db)이 계산되어, Da는 그룹(G a)의 픽셀들에 대한 SADa를 최소화하는 후보 벡터이고,
(5)
Db는 그룹(Gb)의 픽셀들에 대한 SADb를 최소화하는 후보 벡터이다.
(6)
움직임 벡터(D a 및 D b)들 둘 다가 블록()에 할당되어, 벡터 필드는 이미지의 모든 블록에 대해 두 개의 움직임 벡터들을 갖는다. 보다 정확히는, 블록내 평균 휘도 이상의 휘도값을 갖는 픽셀들에 대해, 그들은 Da 및 다른 픽셀들 Db에 적용된다. 주어진 예로, 평균 휘도값은 분할 기준으로서 이용된다. 심지어, 평균 휘도값에 기초한 두 개의 그룹들로의 단순한 분할은 두 개의 그룹, 별들과 같이 주로 저밀도 픽셀들을 포함하는 픽셀들과, 주로 휠과 연관된 픽셀들을 포함하는 다른 픽셀들의 형성을 초래할 것이다. 이 후, 두 개의 예측된 움직임 벡터들은 휠과 별들의 정확한 값에 가깝고, 상이한 그룹들로의 할당은 보다 양호한 결과를 가져올 것이다. 상이한 분할 기준은 중간 휘도값이 되고, 또한 이는 양호한 결과들에 이를 것이다.
중간 휘도값은, 그룹들이 항상 50%의 픽셀들, 따라서 통계적으로 상대적으로 많은 수의 픽셀들을 포함하는 이점을 가지는 것을 이용한다. 블록을 보다 많은 그룹들로 분할하는 것이 전적으로 가능하고, 그들은 동일한 사이즈일 필요는 없다. 예를 들어, 평균 휘도값 보다 0.5 작은 휘도값을 갖는 것과, 평균 휘도값의 0.5와 1.5 사이의 픽셀들에 대한 것과, 평균 휘도값 보다 1.5 큰 휘도를 갖는, 세 개의 그룹들로 분할하는 것은 일정한 조건들하에서 보다 양호한 결과들을 가져올 수 있다.
도 3은 본 발명에 따른 예시적인 방법의 상이한 단계들을 흐름도로 도시한다. 제 1단계에서, 블록()내 픽셀들의 휘도값들에 대한 정보가 주어진다(31). 이어서, 분할 기준, 예를 들어 평균 픽셀값이 정의되거나, 분할 기준이 이미 정의되면 분할 기준, 예를 들어 평균 휘도값이 계산된다(32). 이어서, 블록()내 그룹들이 정의되는 단계(33)로 진행하는데, 즉, 픽셀의 정보를 분할 기준에 비교함으로써 어느 픽셀들이 어느 그룹에 속할지가 계산되며, 예를 들어, 픽셀의 휘도값과 평균 휘도값 사이의 차이 표시에 기초하여 하나 또는 다른 그룹에 속하는지 여부를 결정한다. 이어서, 각각의 그룹들(예를 들어 두 개의 그룹들)에 대해 움직임 벡터가 결정된다(34). 움직임 벡터의 결정을 위해, 본 발명에서의 임의의 알려진 결정 방법이 이용될 수 있다. 완전 탐색, 3단계 탐색, 하나 하나씩의 탐색, 또는 3D 반복 탐색 블록 매치기(3-D Recursive Search block matcher)로 (애플리케이션에 의존하여) 양호한 결과가 달성될 수 있다. 움직임 벡터들 사이의 차가 임계와 비교되고 그 차이가 임계 보다 작으면 평균 움직임 벡터가 그룹들 둘 다에 대해 사용되는, 움직임 벡터들이 결정되는 단계(35)로 선택적으로 진행된다. 결국, 움직임 벡터들이 블록()으로 할당되어, 두 개의 움직임 벡터들로 이루어진 벡터 필드는 벡터들 필드들 중 하나의 픽셀에 (Da는 그룹 Ga로, Db는 그룹 Gb로) 적용된다(36).
또한, 본 발명은 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대한 움직임 벡터들을 결정하기 위한 결정기를 포함하는 디스플레이 디바이스와 관련되며, 결정기는 블록 또는 오브젝트를 분할 기준과 상기 픽셀들의 정보를 비교한 것에 따라 둘 이상의 그룹들의 픽셀들로 분할하기 위한 분할기를 포함하는 것을 특징으로 하며, 결정기는 블록 또는 오브젝트내 각각의 그룹에 대해 움직임 벡터를 순차적으로 결정하고, 결정기는 블록내 상기 각각의 그룹들의 픽셀들에 적용하기 위해 각각의 움직임 벡터들을 블록에 할당하는 할당기를 포함한다.
본 발명은 넓은 의미에서뿐만 아니라 임의의 실시예들, 특히 양호한 실시예에서, 본 발명의 방법에 따른 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대한 움직임 벡터들을 결정하기 위한 소프트웨어 코드부들을 포함하는 컴퓨터 프로그램 제품과 더욱 관련된다.
본 발명의 개념에서 "결정기", "분할기", "할당기"는 예를 들어, (결정기, 분할기, 할당기와 같은) 임의개의 하드웨어와, 결정, 분할, 할당을 수행하도록 설계된 임의의 회로 또는 서브-회로와, 결정, 분할, 할당을 수행하도록 설계되거나 프로그램된 임의개의 소프트웨어(컴퓨터 프로그램 또는 서브 프로그램 또는 컴퓨터 프로그램들이 세트, 또는 프로그램 코드(들))와, 단독 또는 조합으로 이러한 것들을 수행하는 임의개의 하드웨어와 소프트웨어를 포함하도록 폭넓게 이해된다.
본 기술의 숙련된 기술자는 본 발명이 여기에 특별히 도시되고 설명된 바로 제한되지 않음을 이해할 것이다. 본 발명은 각각 및 모든 새로운 독특한 특성과, 독특한 특성들의 각각 및 모든 조합에 존재한다. 청구 범위의 참조 번호들은 그들의 잠재적 범위를 제한하지 않는다. "포함하다"는 동사의 사용과 그의 접속사들은 첨구 범위에 기재된 것 이외의 것의 존재를 배제하지 않는다.
본 발명은 특정 실시예들의 용어들로 설명되었으며, 이는 본 발명을 설명하기 위한 것이고 제한하기 위한 것이 아님을 이해한다. 본 발명은 하드웨어, 펌웨어 또는 소프트웨어, 또는 이들의 조합으로 실행될 수 있다. 다른 실시예들이 다음의 청구범위의 범위에 있다.
Claims (9)
- 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대하여 이미지 데이터로부터 움직임 벡터들을 결정하는 방법에 있어서,블록(B(X)) 또는 오브젝트에 대해, 픽셀들은 분할 기준(Av(X,n))과 상기 픽셀들의 정보(F(x,n))의 비교에 따라 둘 이상의 그룹들(Ga,Gb)로 분할되며, 상기 블록(B(X)) 또는 오브젝트내의 각각의 그룹(Ga,Gb)에 대해, 움직임 벡터(Da,Db)가 결정되고(34), 상기 각각의 움직임 벡터들(Da,Db)은 상기 블록(B(X))에 할당되고, 상기 블록들내 각각의 그룹들(Ga,Gb)의 픽셀들에 적용되는 것을 특징으로 하는, 움직임 벡터 결정 방법.
- 제 1 항에 있어서, 블록당 그룹들의 수가 4 이하인 것을 특징으로 하는, 움직임 벡터 결정 방법.
- 제 1 항에 있어서, 블록당 그룹들의 수가 2인 것을 특징으로 하는, 움직임 벡터 결정 방법.
- 제 1 항에 있어서, 상기 분할 기준(Av(X,n))은 상기 블록 B(X)내 상기 픽셀들의 정보 콘텐트(F(x,n))에 기초하여 결정되는 것을 특징으로 하는, 움직임 벡터 결정 방법.
- 제 4 항에 있어서, 상기 분할 기준은 상기 그룹내 상기 픽셀들의 평균 휘도값인 것을 특징으로 하는, 움직임 벡터 결정 방법.
- 제 4 항에 있어서, 상기 분할 기준은 상기 그룹내 상기 픽셀들의 중간(median) 휘도값인 것을 특징으로 하는, 움직임 벡터 결정 방법.
- 제 1 항에 있어서, 상이한 그룹들에 대해 결정된 움직임 벡터들 사이의 차(differnce)는 임계값과 비교되며, 상기 차가 상기 임계값보다 작으면, 상기 각각의 움직임 벡터들은 상기 움직임 벡터들의 조합으로 대체되는, 움직임 벡터 결정 방법.
- 이미지 시퀀스로부터 취해진 이미지의 블록들 또는 오브젝트들에 대하여 움직임 벡터들을 결정하는 결정기를 포함하는 디스플레이 디바이스에 있어서,상기 결정기는 상기 픽셀들의 블록 또는 오브젝트를, 분할 기준과 상기 픽셀들의 정보의 비교에 따라 둘 이상의 그룹들로 분할하는 분할기를 포함하고, 상기 결정기는 상기 블록 또는 오브젝트내 각각의 그룹에 대해 움직임 벡터를 순차적으로 결정하고, 상기 결정기는 상기 블록내 상기 각각의 그룹들의 픽셀들에 적용하기 위해 상기 각각의 움직임 벡터들을 상기 블록에 할당하는 할당기를 포함하는 것을 특징으로 하는, 디스플레이 디바이스.
- 디지털 컴퓨터의 내부 메모리로 직접 로딩될 수 있는 컴퓨터 프로그램 제품으로서, 상기 제품이 컴퓨터상에서 수행될 때 제 1 항의 단계들을 수행하는 소프트웨어 코드부들을 포함하는, 컴퓨터 프로그램 제품.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP03100649 | 2003-03-14 | ||
EP03100649.7 | 2003-03-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20050108397A true KR20050108397A (ko) | 2005-11-16 |
Family
ID=32981927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020057017199A KR20050108397A (ko) | 2003-03-14 | 2004-03-11 | 움직임 벡터 결정을 위한 방법 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1606952A1 (ko) |
JP (1) | JP2006521740A (ko) |
KR (1) | KR20050108397A (ko) |
CN (1) | CN1762160A (ko) |
WO (1) | WO2004082294A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9025885B2 (en) | 2012-05-30 | 2015-05-05 | Samsung Electronics Co., Ltd. | Method of detecting global motion and global motion detector, and digital image stabilization (DIS) method and circuit including the same |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0500174D0 (en) | 2005-01-06 | 2005-02-16 | Kokaram Anil | Method for estimating motion and occlusion |
JP2012129791A (ja) * | 2010-12-15 | 2012-07-05 | Hitachi Kokusai Electric Inc | 画像符号化装置 |
CN102215417A (zh) * | 2011-05-04 | 2011-10-12 | 山东大学 | 一种基于块匹配建立数学模型的视差预测方法 |
US9510018B2 (en) | 2011-11-23 | 2016-11-29 | Luca Rossato | Signal analysis and generation of transient information |
CN104427345B (zh) * | 2013-09-11 | 2019-01-08 | 华为技术有限公司 | 运动矢量的获取方法、获取装置、视频编解码器及其方法 |
US10554965B2 (en) | 2014-08-18 | 2020-02-04 | Google Llc | Motion-compensated partitioning |
JP6294810B2 (ja) * | 2014-11-11 | 2018-03-14 | 日本電信電話株式会社 | 動画像符号化装置、動画像復号装置及びコンピュータプログラム |
US10397600B1 (en) | 2016-01-29 | 2019-08-27 | Google Llc | Dynamic reference motion vector coding mode |
US10462457B2 (en) | 2016-01-29 | 2019-10-29 | Google Llc | Dynamic reference motion vector coding mode |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69423166T2 (de) * | 1993-09-08 | 2000-07-06 | Thomson Consumer Electronics | Verfahren und Vorrichtung zur Bewegungsauswertung mit Blockübereinstimmung |
-
2004
- 2004-03-11 WO PCT/IB2004/050233 patent/WO2004082294A1/en not_active Application Discontinuation
- 2004-03-11 EP EP04719556A patent/EP1606952A1/en not_active Withdrawn
- 2004-03-11 CN CNA2004800068437A patent/CN1762160A/zh active Pending
- 2004-03-11 KR KR1020057017199A patent/KR20050108397A/ko not_active Application Discontinuation
- 2004-03-11 JP JP2006506694A patent/JP2006521740A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9025885B2 (en) | 2012-05-30 | 2015-05-05 | Samsung Electronics Co., Ltd. | Method of detecting global motion and global motion detector, and digital image stabilization (DIS) method and circuit including the same |
Also Published As
Publication number | Publication date |
---|---|
CN1762160A (zh) | 2006-04-19 |
WO2004082294A1 (en) | 2004-09-23 |
EP1606952A1 (en) | 2005-12-21 |
JP2006521740A (ja) | 2006-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4242656B2 (ja) | 動きベクトル予測方法及び動きベクトル予測装置 | |
KR100582856B1 (ko) | 움직임 추정 및 움직임 보상된 보간법 | |
JP3640257B2 (ja) | 動画像の画素を分類して画素の動きベクトルの予測フィールドを決定する方法 | |
CN106254885B (zh) | 数据处理系统、执行运动估计的方法 | |
EP1549047B1 (en) | Robust camera pan vector estimation using iterative center of mass | |
US20050180506A1 (en) | Unit for and method of estimating a current motion vector | |
KR100677117B1 (ko) | 비디오 신호내의 움직임 보상에 부적당한 영역을 검출하는방법 및 장치 | |
US20060098886A1 (en) | Efficient predictive image parameter estimation | |
KR20050090000A (ko) | 디지털 이미지들의 깊이 오더링을 위한 방법 및 장치 | |
KR20050108397A (ko) | 움직임 벡터 결정을 위한 방법 | |
US20080144716A1 (en) | Method For Motion Vector Determination | |
KR100942887B1 (ko) | 추정된 움직임 벡터 결정 방법 및 컴퓨터 판독가능한 기록매체 | |
KR20050012768A (ko) | 현재 모션 벡터를 추정하는 유닛 및 방법 | |
KR100644629B1 (ko) | 하이브리드 블록 매칭 기반의 움직임 추정 방법 및 그를적용한 프레임 레이트 변환 장치 | |
KR100955415B1 (ko) | 움직임 파라미터 세트 및 화상 반복 패턴을 제공하기 위한 방법, 컴퓨터 판독가능 저장 매체 및 집적 회로와, 움직임 파라미터를 제공하기 위한 컴퓨터 | |
KR100969420B1 (ko) | 프레임 레이트 변환 방법 | |
JP3626826B2 (ja) | ビデオシーケンスの時間的に順次の画像の画素のための計算機による動き推定方法 | |
JP2006525582A (ja) | 領域分割の微調整 | |
KR970003099B1 (ko) | 커버/언커버된 영역을 고려한 이동벡터 추정장치 | |
WO2003003748A1 (en) | Prioritizing in segment matching | |
KR20060012634A (ko) | 에지 오리엔테이션 추정 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |