KR20040028911A - 비디오 프레임간 움직임 추정용 방법 및 장치 - Google Patents

비디오 프레임간 움직임 추정용 방법 및 장치 Download PDF

Info

Publication number
KR20040028911A
KR20040028911A KR10-2004-7000008A KR20047000008A KR20040028911A KR 20040028911 A KR20040028911 A KR 20040028911A KR 20047000008 A KR20047000008 A KR 20047000008A KR 20040028911 A KR20040028911 A KR 20040028911A
Authority
KR
South Korea
Prior art keywords
feature
frame
block
motion
pixel
Prior art date
Application number
KR10-2004-7000008A
Other languages
English (en)
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 KR20040028911A publication Critical patent/KR20040028911A/ko

Links

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/513Processing of motion vectors
    • H04N19/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/507Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction using conditional replenishment
    • 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
    • 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
    • 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/553Motion estimation dealing with occlusions
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

본 발명은 비디오 프레임에서 움직임을 판단하기 위한 장치에 있어서, 비디오 시퀀스의 후속 프레임에서 특징형상을 정합시키기 위한 특징형상 식별기; 상기 비디오 프레임중 제1프레임 및 제2프레임의 특징형상 사이에서 관련 움직임을 판단하기 위한 움직임 추정기; 및 상기 움직임 추정기와 연관되어 있고, 상기 판단된 관련 움직임에 기초한 상기 특징형상과 이웃하는 특징형상에 움직임 추정을 할당하기 위한 이웃 특징형상 움직임 할당기를 포함하는 장치를 제공한다.

Description

비디오 프레임간 움직임 추정용 방법 및 장치{METHOD AND APPARATUS FOR MOTION ESTIMATION BETWEEN VIDEO FRAMES}
비디오 압축은 여러 애플리케이션에 필수이다. 브로드밴드 홈(Broadband Home) 및 멀티미디어 홈 네트워킹(Multimedia Home Networking) 양자는 컴퓨터, TV셋, 셋톱 박스, 데이터 프로젝터 및 플라즈마 디스플레이로의 디지털 비디오의 효율적인 전달을 필요로 한다. 비디오 저장 매체 용량 및 비디오 분배 기반구조는 낮은 비트 속도 멀티미디어 스트림을 필요로 한다.
브로드밴드 홈 및 멀티미디어 홈 네트워킹의 인에이블링은 고품질 협대역 멀티미디어 스트림에 상당히 의존한다. 소비자용 개인 비디오 카메라로부터의 디지털 비디오의 트랜스코딩에 대한 증가하고 있는 요구, 예를 들면, PC 등에서 편집 및 ADSL, WLAN, LAN, 파워 라인(Power Lines), HPNA 등을 통한 비디오의 대폭적인 전달은 저렴한 하드웨어 및 소프트웨어 부호화기의 설계를 필요로 한다.
대부분의 비디오 압축 부호화기는 이미지 부분의 움직임 추정에 기초한 인터 및 인트라 프레임 부호화(inter and intra frame encoding)를 이용한다. 움직임 추정은 부호화기의 가장 요구되는 컴퓨테이션 타스크(computational task)를 포함할 수 있도록, 효율적인 ME(Motion Estimation) 알고리즘을 필요로 한다. 이러한 효율적인 ME 알고리즘은 부호화기의 효율성 및 품질을 개선할 것으로 기대될 수 있다. 이러한 알고리즘 자체는 소망하는 바와 같이 하드웨어 또는 소프트웨어로 구현될 수 있고, 실질적으로 보다 적은 컴퓨팅 자원을 요구하면서 이상적으로 현재 가능한 것보다 우수한 품질의 압축을 가능하게 할 수 있어야 한다. 이러한 ME 알고리즘의 컴퓨테이션 복잡도가 바람직하게도 감소되고, 이에 따라 저렴한 신세대 부호화기가 바람직하게도 가능하게 된다.
기존의 ME 알고리즘은 다음과 같이 분류될 수 있다. 즉, 알고리즘은 직접 검색(Direct-Search), 로가리즘(Logarithmic) 검색, 계층적 검색(Hierarchical Search), TSS(Three Step) 검색, FSS(Four Step) 검색, 그라디언트(Gradient) 검색, 다이아몬드형 검색(Diamond-Search), 피라미드형 검색(Pyramidal search) 등을 포함하고, 각 범주는 변수를 갖는다. 이러한 기존 알고리즘은, 예를 들면, xDSL TV, IP TV, MPEG-2 VCD, DVR, PVR 및 MPEG-4의 실시간 풀 프레임(full frame) 부호화와 같은 기술을 구현하는데 필요한 비트 속도로의 고품질 비디오 압축을 가능하게 하는데 곤란성을 갖는다.
개량된 ME 알고리즘은 MPEG, MPEG-2 및 MPEG-4와 같은 코덱(CODECS) 또는 움직임 추정을 이용한 다른 임의의 부호화기의 압축 결과를 개선시키는데 적용될 수 있다.
본 발명은 비디오 프레임간 움직임 추정용 방법 및 장치에 관한 것이다.
본 발명을 보다 더 명백하게 이해할 수 있도록 그리고 본 발명을 실행시키기위한 방법을 나타내기 위해서, 예시적인 방식으로 첨부된 도면을 참조할 것이다.
도1은 본 발명의 제1실시예에 따른 비디오 프레임에서 블록의 움직임 벡터를 획득하기 위한 장치의 간소화된 블록도.
도2는 도1의 변별 정합 검색기(distinctive match searcher)를 상세하게 도시한 간소화된 블록도.
도3은 도1의 이웃 블록 움직임 할당기/검색기의 일부를 상세하게 도시한 간소화된 블록도.
도4는 도1의 장치를 이용한 전처리기를 도시한 간소화된 블록도.
도5는 도1의 장치를 이용한 후처리기를 도시한 간소화된 블록도.
도6은 비디오 시퀀스에서의 후속 프레임을 도시한 간소화된 도면.
도7 내지 도9는 비디오 프레임에서 블록에 대한 검색 전략을 도시한 개략도.
도10은 저해상도 비디오 프레임에서 단일 슈퍼 매크로블록으로부터 생성되는 고선명도 비디오 프레임에서의 매크로블록을 도시한 도면.
도11은 매크로블록에 대한 움직 벡터값 할당을 도시한 도면.
도12는 피벗 매크로블록 및 이웃 매크로블록을 도시한 도면.
도13 및 도14는 2개의 이웃 피벗 매크로블록을 갖는 매크로블록의 경우에 대한 움직임 벡터 할당을 도시한 도면.
도15 내지 도21은 비디오 프레임의 3개의 세트를 도시한 도면 - 각 세트는 비디오 프레임, 종래 기술을 이용하여 움직임 벡터가 적용되는 비디오 프레임 및 본 발명을 이용하여 움직임 벡터가 적용되는 비디오 프레임을 나타냄-.
본 발명의 제1특징에 따르면, 비디오 프레임에서 움직임을 판단하기 위한 장치에 있어서,
상기 비디오 프레임중 제1프레임 및 제2프레임 사이의 특징형상을 추적하여 상기 특징형상의 움직임 벡터를 판단하기 위한 움직임 추정기; 및
상기 움직임 추정기와 연관되어 있고, 제1특징형상과 이웃하고 상기 제1특징형상과 함께 이동하는 다른 특징형상에 상기 움직임 벡터를 적용하기 위한 이웃 특징형상 움직임 할당기(neighboring feature motion assignor)를 포함하는 장치를 제공한다.
바람직하게도, 상기 특징형상 추적은 상기 제1 및 제2프레임의 픽셀 블록 정합을 포함한다.
바람직하게도, 상기 움직임 추정기가 동작하여 초기에 상기 제1프레임에서 소정의 픽셀 소그룹을 선택하고, 상기 그룹간 움직임을 판단하기 위해 상기 제2프레임에서 상기 픽셀 그룹을 추적하고, 상기 이웃 특징형상 움직임 할당기가 동작하여 각 픽셀 그룹에 대해서 함께 이동하는 이웃 픽셀 그룹을 식별한다.
바람직하게도, 상기 이웃 특징형상 할당기가 동작하여 상기 이웃 픽셀 그룹을 식별하기 위해 셀룰라 오토머터 기반 기법(cellular automata based techniques)을 이용하고, 움직임 벡터를 상기 픽셀 그룹에 할당한다. 바람직하게도, 상기 장치가 동작하여 페이빙되는(paved) 바와 같이 움직임을 할당받은 모든 픽셀 그룹을 표기하고, 이웃들을 추적 및 확인하기 위해 픽셀 그룹을 더 선택함으로써 미표기 픽셀 그룹에 대하여 상기 움직임 추정을 반복하고, 상기 반복 동작은 소정 한계치까지 반복된다.
바람직하게도, 상기 이웃 특징형상 움직임 할당기와 연관되어 있고, 상기 특징형상의 유의 레벨(significance level)을 추정하여 단지 상기 유의 레벨이 소정 임계 레벨을 초과하면, 상기 움직임 벡터를 상기 이웃 특징형상에 적용하도록 상기 이웃 특징형상 움직임 할당기를 제어하기 위한 특징형상 유의성 추정기를 포함한다.
바람직하게도, 상기 장치가 동작하여 페이빙되는 바와 같이 움직임을 할당받은 프레임에서 모든 픽셀 그룹을 표기하고 - 상기 표기는 정합의 임계 레벨에 따라 소정의 한계치까지 반복됨 -, 미표기된 이웃을 추적 및 확인하기 위해 픽셀 그룹을 더 선택함으로써 페이빙되지 않은(unpaved) 픽셀 그룹에 대한 상기 움직임 추정을 반복하고, 상기 임계 레벨이 유지되거나 매 반복시 감소된다.
바람직하게도, 상기 특징형상 유의성 추정기는 검색창을 통해 후속 프레임에서의 상기 특징형상의 최상 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하여 판단 결과에 따라 배경 또는 이웃과 구분되는 특징형상을 배제시키기 위한 정합 비율 판별기를 포함한다.
바람직하게도, 상기 특징형상 유의성 추정기는 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 최대 변별성의 존재를 판단하기 위한 수치적인 근사화기를 포함한다.
바람직하게도, 상기 특징형상 유의성 추정기는 상기 특징형상 식별기 전단에 연결되어 있고, 에지 검출 변형을 실행하기 위한 에지 검출기를 포함하고, 상기 특징형상 식별기는 비교적 높은 에지 검출 에너지를 갖는 특징형상에 특징형상 식별을 제한하기 위해 상기 특징형상 유의성 추정기에 의해 제어가능하다.
바람직하게도, 상기 장치는 상기 특징형상 식별기 전단에 연결되고, 상기 프레임 내의 픽셀의 합병에 의해 비디오 프레임 해상도를 감소시키기 위한 다운샘플러를 포함한다.
바람직하게도, 상기 장치는 상기 특징형상 식별기 전단에 연결되고, 휘도 신호를 분리시키고 휘도 관련 비디오 프레임만을 산출하기 위한 다운샘플러를 포함한다.
바람직하게도, 상기 다운샘플러가 동작하여 상기 휘도 신호에서의 해상도를 감소시킨다.
바람직하게도, 상기 후속 프레임은 일정한 또는 비일정한 갭을 갖는 프레임일 수 있지만, 연속 프레임이다.
움직임 추정은 디지털 비디오 표준중 어느 하나에 대해 실행될 수 있다. MPEG 표준이 특히 보편적이고, 특별히 MPEG 3 및 4일 수 있다. 전형적으로, MPEG 시퀀스는 서로 상이한 유형의 I 프레임, B 프레임 및 P 프레임을 포함한다. 전형적인 시퀀스는 I 프레임, B 프레임 및 P 프레임을 포함한다. 상기 I 프레임과 상기 P 프레임 사이에서 움직임 추정이 실행되고, 상기 장치는 상기 B 프레임에 대한 움직임 추정으로서 이용하기 위해 상기 움직임 추정의 인터폴레이션을 제공하기 위한 인터폴레이터를 포함한다.
선택적으로, 상기 프레임은 적어도 I 프레임, 제1P-프레임 및 제2P-프레임을 포함하는 시퀀스 내에 존재하고, 전형적으로 이들 사이에 B 프레임이 삽입된다.바람직하게도, 상기 I 프레임과 상기 제1P-프레임 사이에서 움직임 추정이 실행되고, 상기 장치는 상기 제2P-프레임에 대한 움직임 추정으로서 이용하기 위해 상기 움직임 추정의 엑스트라폴레이션을 제공하기 위한 엑스트라폴레이터를 더 포함한다. 필요하면, 움직임 추정치가 이전 문단에 따라 상기 삽입된 B 프레임을 위해 제공될 수 있다.
바람직하게도, 상기 프레임이 블록으로 분할되고, 상기 특징형상 식별기가 동작하여 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 체계적인 선택을 한다.
추가적으로 또는 선택적으로, 상기 특징형상 식별기가 동작하여 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 무작위적인 선택을 한다.
바람직하게도, 상기 움직임 추정기는 상기 제1프레임에서의 상기 특징형상의 위치 주위의 검색창에서 상기 후속 프레임에서의 상기 특징형상을 검색하기 위한 검색기를 포함한다.
바람직하게도, 상기 장치는 상기 검색창의 크기를 사전설정하기 위한 검색창 프리셋터를 포함한다.
바람직하게도, 상기 프레임이 블록으로 분할되고, 상기 검색기가 상기 특징형상을 포함하는 블록과 상기 검색창에서의 블록 사이에서의 비교를 수행하여, 상기 블록 각각의 결합을 위해, 상기 후속 프레임에서의 상기 특징형상을 식별하고 상기 제1프레임과 상기 후속 프레임 사이에서의 상기 특징형상의 움직임 벡터를 판단하기 위한 비교기를 포함한다.
바람직하게도, 상기 비교는 샘블런스 거리 비교이다.
바람직하게도, 상기 장치는 상기 비교 이전에 각 블록으로부터 평균 휘도값을 감산하기 위한 DC 교정기를 포함한다.
바람직하게도, 상기 비교는 비선형 최적화를 포함한다.
바람직하게도, 상기 비선형 최적화는 "Nelder-Mead Simplex" 기법을 포함한다.
선택적으로 또는 추가적으로, 상기 비교는 L1 및 L2 표준중 적어도 하나의 이용을 포함한다.
바람직하게도, 상기 장치는 상기 특징형상이 유의 특징형상인지를 판단하기 위한 특징형상 유의성 추정기를 포함한다.
바람직하게도, 상기 특징형상 유의성 추정기는 검색창을 통해 상기 후속 프레임에서의 상기 특징형상의 최대 근접 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하여 배경 또는 이웃과 구별되는 특징형상을 배제시키기 위한 정합 비율 판별기를 포함한다.
바람직하게도, 상기 특징형상 유의성 추정기는 상기 특징형상이 유의 특징형상인지를 판단하기 위해 소정 임계치에 대한 상기 비율을 비교하기 위한 쓰레스홀더(thresholder)를 더 포함한다.
바람직하게도, 상기 특징형상 유의성 추정기는 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 최대 변별성을 확인하기 위한 수치적인 근사화기를 포함한다.
바람직하게도, 상기 특징형상 유의성 추정기는 상기 특징형상 식별기 전단에 연결되어 있고, 상기 장치는 에지 검출 변형을 실행하기 위한 에지 검출기를 더 포함하고, 상기 특징형상 식별기는 비교적 높은 에지 검출 에너지를 갖는 검출 영역에 특징형상 식별을 제한하기 위해 상기 특징형상 유의성 추정기에 의해 제어가능하다.
바람직하게도, 상기 이웃 특징형상 움직임 할당기가 동작하여 상기 움직임 벡터를 상기 움직임 벡터가 판단된 저해상도에 상응하는 상기 프레임의 각 고해상도 또는 최대 해상도 블록에 적용한다.
바람직하게도, 상기 장치는 상기 후속 프레임의 고해상도 버전에서 특징형상 정합을 실행하여 상기 최대 해상도 또는 고해상도 블록 각각에서 상기 움직임 벡터를 순화시키기 위해 동작하는 움직임 벡터 순화기를 포함한다.
바람직하게도, 상기 움직임 벡터 순화기는 최대 해상도 또는 고해상도 블록과 정합하는 특징형상의 인접 블록에서의 추가적인 특징형상 정합 동작을 실행하여 상기 해당 움직임 벡터를 더 순화시키기 위해 동작한다.
바람직하게도, 상기 움직임 벡터 순화기는 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 최대 해상도 또는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 평균을 최대 해상도 또는 고해상도 블록에 할당하기 위해 동작한다.
바람직하게도, 상기 움직임 벡터 순화기는 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 최대 해상도 또는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 규칙에 의해 결정된 변형을 고해상도 블록에 할당하기 위해 동작한다.
바람직하게도, 상기 장치는 상기 블록의 각 움직임 벡터에 따라 양자화 레벨을 각 고해상도 블록에 할당하기 위한 블록 양자화 레벨 할당기를 포함한다.
바람직하게도, 상기 프레임은 블록으로 정렬가능하고, 상기 장치는 상기 특징형상 검출기 전단에 연결된 감산기를 더 포함하고, 상기 감산기는,
각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 상기 후속 프레임에서의 해당 픽셀의 휘도 레벨의 픽셀 방식 감산을 위한 픽셀 감산기; 및
소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정에서 제거하기 위한 블록 감산기를 포함한다.
바람직하게도, 상기 특징형상 식별기는 블록에서의 상기 특징형상을 검사함으로써 특징형상을 검색하기 위해 동작한다.
바람직하게도, 상기 블록은 MPEG 및 JVT 표준중 적어도 하나에 따라 픽셀 크기를 갖는다.
바람직하게도, 상기 블록은 8x8, 16x8, 8x16 및 16x16을 포함하는 그룹 크기중 어느 하나를 갖는다.
바람직하게도, 상기 블록은 8x8보다 작은 픽셀 크기를 갖는다.
바람직하게도, 상기 블록은 7x6보다 크지 않은 픽셀 크기를 갖는다.
선택적으로 또는 추가적으로, 상기 블록은 6x6보다 크지 않은 픽셀 크기를 갖는다.
바람직하게도, 상기 움직임 추정기 및 상기 이웃 특징형상 움직임 할당기는 각 프레임의 연속적으로 증가하는 해상도에서 검색 및 할당하기 위해 해상도 레벨 변화기를 이용하여 동작한다.
바람직하게도, 상기 연속적으로 증가하는 해상도는 각각 실질적으로 1/64, 1/32. 1/16, 1/8, 1/4, 1/2 및 최대 해상도중 적어도 일부이다.
본 발명의 제2특징에 따르면, 비디오 움직임 추정용 장치에 있어서,
제1프레임 및 제2프레임의 저해상도 버전 사이의 비전수 검색(non exhaustive search)을 각각 수행하기 위한 비전수 검색기를 포함하고, 상기 비전수 검색은 상기 프레임에서 지속적인 적어도 하나의 특징형상을 확인하고, 상기 프레임 사이에서 상기 특징형상의 상대적인 움직임을 판단하는 장치를 제공한다.
바람직하게도, 상기 비전수 검색기가 동작하여 상기 비디오 프레임의 연속적으로 증가하는 해상도 버전에서 상기 검색을 반복한다.
바람직하게도, 상기 장치는 상기 지속적인 특징형상과 이동하는 상기 지속적인 특징형상의 이웃 특징형상을 식별하고, 상기 이웃 특징형상에 상기 지속적인 특징형상의 상기 상대적인 움직임을 적용하기 위한 이웃 특징형상 식별기를 포함한다.
바람직하게도, 상기 장치는 각 프레임에서의 상기 지속적인 특징형상과, 상기 제1프레임에서의 상기 지속적인 특징형상과 상기 제2프레임에서의 윈도우 포인트 사이의 정합 평균을 비교하여, 상기 특징형상과 상기 움직임 추정에서의 해당 상대적인 움직임을 이용할 것인지 또는 상기 특징형상을 거절할 것인지에 관한 결정을 지원하기 위해 상기 정합의 우수성을 표현하는 양을 제공하기 위한 특징형상 품질 추정기를 포함한다.
본 발명의 제3특징에 따르면, 움직임 추정을 위한 픽셀 블록에 정렬된 비디오 프레임을 전처리하기 위한 비디오 프레임 감산기에 있어서,
각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 비디오 시퀀스의 후속 프레임에서의 해당 픽셀들의 휘도 레벨의 픽셀 방식 감산을 위한 픽셀 감산기; 및
소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정으로부터 제거하기 위한 블록 감산기를 포함하는 비디오 프레임 감산기를 제공한다.
바람직하게도, 상기 전체 픽셀차 레벨은 상기 블록에서 최대 픽셀차값이다.
바람직하게도, 상기 전반전인 픽셀차 레벨은 상기 블록에서의 픽셀차 레벨의 합이다.
바람직하게도, 상기 소정 임계치는 실질적으로 제로이다.
바람직하게도, 상기 매크로블록의 상기 소정 임계치는 실질적으로 움직임 추정에 대한 양자화 레벨이다.
본 발명의 제4특징에 따르면, 블록에 정렬된 비디오 프레임에 양자화 레벨을 제공하기 위한 포스트-모션 추정 비디오 양자화기에 있어서,
각 블록은 움직임 데이터와 연관되어 있고, 상기 양자화기는 상기 블록 내의 세부 레벨을 각 블록에 대해 설정하기 위한 양자화 계수를 선택하기 위한 양자화 계수 할당기를 포함하고, 상기 선택은 상기 연관된 움직임 데이터에 종속하는 양자화기를 제공한다.
본 발명의 제5특징에 따르면, 비디오 프레임에서 움직임을 판단하기 위한 방법에 있어서,
비디오 시퀀스의 후속 프레임에서의 특징형상을 정합시키기 위한 단계;
상기 비디오 프레임중 제1프레임 및 제2프레임의 특징형상 사이에서의 상대적인 움직임을 판단하는 단계; 및
상기 특징형상과 함께 이동하는 상기 특징형상을 포함하는 상기 블록에 이웃하는 블록에 상기 판단된 상대적인 움직임을 적용하는 단계를 포함하는 방법을 제공한다.
바람직하게도, 상기 방법은 상기 특징형상이 유의 특징형상인지를 판단하는 단계를 포함한다.
바람직하게도, 상기 특징 형상이 유의 형상인지를 판단하는 단계는 검색창을 통해 상기 후속 프레임에서의 상기 특징형상의 최대 근접 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하는 단계를 포함한다.
바람직하게도, 상기 방법은 소정 임계치에 대한 상기 비율을 비교하여 상기 특징형상이 유의 특징형상인지를 판단하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 변별성 레벨을 산출하는 단계를 포함한다.
바람직하게도, 상기 방법은 에지 검출 변형을 실행하고, 보다 높은 에지 검출 에너지를 갖는 블록에 특징형상 식별을 제한하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 프레임 내의 픽셀의 합병에 의해 비디오 프레임 해상도를 감소시키는 단계를 포함한다.
바람직하게도, 상기 방법은 휘도 신호를 분리시키고 휘도 관련 비디오 프레임만을 산출하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 휘도 신호에서의 해상도를 감소시키는 단계를 포함한다.
바람직하게도, 상기 후속 프레임은 연속 프레임이다.
바람직하게도, 상기 방법은 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 체계적인 선택을 하는 단계를 포함한다.
바람직하게도, 상기 방법은 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 무작위적인 선택을 하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 제1프레임에서의 상기 특징형상의 위치 주위의 검색창에서 상기 후속 프레임에서의 블록의 상기 특징형상을 검색하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 검색창의 크기를 사전설정하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 특징형상을 포함하는 블록과 상기 검색창에서의 블록 사이에서의 비교를 수행하여, 상기 블록과 결합될, 상기 후속 프레임에서의 상기 특징형상을 식별하고 상기 특징형상의 움직임 벡터를 판단하는 단계를 포함한다.
바람직하게도, 상기 비교는 샘블런스 거리 비교이다.
바람직하게도, 상기 방법은 상기 비교 이전에 각 블록으로부터 평균 휘도값을 감산하는 단계를 포함한다.
바람직하게도, 상기 비교는 비선형 최적화를 포함한다.
바람직하게도, 상기 비선형 최적화는 "Nelder-Mead Simplex" 기법을 포함한다.
선택적으로 또는 추가적으로, 상기 비교는 L1 및 L2 표준을 포함하는 그룹에서 적어도 하나의 이용을 포함한다.
바람직하게도, 상기 방법은 상기 특징형상이 유의 특징형상인지를 판단하는 단계를 포함한다.
바람직하게도, 상기 특징형상 유의성 판단 단계는 검색창을 통해 상기 후속 프레임에서의 상기 특징형상의 최대 근접 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 특징형상이 유의 특징형상인지를 판단하기 위해 소정 임계치에 대한 상기 비율을 비교하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 변별성 레벨을 산출하는 단계를 포함한다.
바람직하게도, 상기 방법은 에지 검출 변형을 실행하고, 보다 높은 에지 검출 에너지를 갖는 검출 영역에 특징형상 식별을 제한하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 움직임 벡터가 판단된 저해상도에 상응하는 상기 프레임의 각 고해상도 블록에 상기 움직임 벡터를 적용하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 후속 프레임의 고해상도 버전에서 특징형상 정합을 실행하여 상기 고해상도 블록 각각에서 상기 움직임 벡터를 순화시키는 단계를 포함한다.
바람직하게도, 상기 방법은 고해상도 블록과 정합하는 특징형상의 인접 블록에서의 추가적인 특징형상 정합 동작을 실행하여 상기 해당 움직임 벡터를 더 순화시키는 단계를 포함한다.
바람직하게도, 상기 방법은 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 평균을 고해상도 블록에 할당하는 단계를 포함한다.
바람직하게도, 상기 방법은 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 규칙에 의해 결정된 변형을 고해상도 블록에 할당하는 단계를 포함한다.
바람직하게도, 상기 방법은 상기 블록의 각 움직임 벡터에 따라 양자화 레벨을 각 고해상도 블록에 할당하는 단계를 포함한다.
바람직하게도, 상기 방법은 각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 상기 후속 프레임에서의 해당 픽셀의 휘도 레벨의 픽셀 방식 감산을 수행하는 단계; 및
소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정에서제거하는 단계를 포함한다.
본 발명의 다른 특징에 따르면, 움직임 추정을 위한 픽셀 블록에 정렬된 비디오 프레임을 전처리하기 위한 비디오 프레임 감산 방법에 있어서,
각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 비디오 시퀀스의 후속 프레임에서의 해당 픽셀들의 휘도 레벨의 픽셀 방식 감산을 수행하는 단계; 및
소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정으로부터 제거하는 단계를 포함하는 방법을 제공한다.
바람직하게도, 상기 전체 픽셀차 레벨은 상기 블록에서 최대 픽셀차값이다.
바람직하게도, 상기 전반전인 픽셀차 레벨은 상기 블록에서의 픽셀차 레벨의 합이다.
바람직하게도, 상기 소정 임계치는 실질적으로 제로이다.
바람직하게도, 상기 매크로블록의 상기 소정 임계치는 실질적으로 움직임 추정에 대한 양자화 레벨이다.
본 발명의 또 다른 특징에 따르면, 블록에 정렬된 비디오 프레임에 양자화 레벨을 제공하기 위한 포스트-모션 추정 비디오 양자화 방법에 있어서,
각 블록은 움직임 데이터와 연관되어 있고, 상기 방법은 상기 블록 내의 세부 레벨을 각 블록에 대해 설정하기 위한 양자화 계수를 선택하는 단계를 포함하고, 상기 선택은 상기 연관된 움직임 데이터에 종속하는 방법을 제공한다.
이제, 본 발명의 제1실시예에 따른 비디오 프레임에서의 움직임을 판단하기 위한 장치를 도시한 일반화된 블록도를 나타내는 도1을 참조한다. 도1에서, 장치(10)는 현 비디오 시퀀스의 연속적인 최대 해상도 프레임을 취득하여 장치에 삽입하기 위한 프레임 삽입기(12)를 포함한다. 다운샘플러(14)는 프레임 삽입기의 하류에 연결되어, 각 비디오 프레임의 감소된 해상도 버전을 산출한다. 전형적으로, 비디오 프레임의 감소된 해상도 버전은 비디오 신호의 휘도 성분을 분리하여 평균을 실행함으로써 산출된다.
선택적으로 움직임 추정은 풀 컬러 비트맵(full color bitmap)으로 실행될 수 있지만, 다운샘플러를 이용하는 움직임 추정은 바람직하게도 그레이 스케일 이미지(gray scale image)에서 실행된다.
숙련자는 주어진 환경(given circumferences)에 적합한 임의의 크기 블록이 선택될 수 있음을 이해할 수 있지만, 움직임 추정은 바람직하게도 8x8 또는 16x16 픽셀 매크로블록과 연관이 있다. 특히 바람직한 실시예에서, 8x8 픽셀 매크로 블록보다 작은 매크로블록은 보다 상당한 특수성을 제공하는데 이용되며, 특히 우선권(preference)은 6x6 또는 6x7 매크로블록과 같은 2의 거듭제곱이 아닌 매크로블록 크기에 주어진다.
다운샘플링된 프레임은 다운샘플러(14)의 하류에 연결되어 있는 변별 정합 검색기(distinctive match searcher)(16)에 의해 분석된다. 바람직하게도, 변별 정합 검색기는 다운샘플링된 프레임의 특징형상(features) 또는 블록을 선택하여후속 프레임에서 이전 프레임에 대한 정합을 확인한다. 정합이 확인되면, 변별 정합 검색기는 바람직하게도 확인된 정합이 유의 정합(significant match)인지를 판단한다. 변별 정합 검색기의 동작은 도2와 관련하여 아래에서 상세히 설명될 것이다. 정합에서의 유의 레벨(signicance level) 검색은 컴퓨팅 부하 측면에서 고비용을 필요로 하고, 고화질, 예를 들면, 방송 화질에만 필요로 한다는 점을 유의하여야 한다. 따라서, 정합의 유의성(significance) 또는 변별성(distinctiveness)에 대한 검색은 고화질이 요구되지 않을 경우에 생략될 수 있다.
변별 정합 검색기의 하류에는 이웃 블록 움직임 할당기/검색기(18)가 위치되어 있다. 이웃 블록 움직임 할당기/검색기(18)는 움직임 벡터를 변별 특징형상의 이웃 블록 각각에 할당하고, 벡터는 변별 특징형상의 상대적인 움직임을 나타내는 움직임 벡터이다. 이후, 할당기/검색기(18)는 하기에서 상세하게 설명되는 바와 같이 할당된 벡터을 검증하기 위해 특징형상 검색 및 정합을 수행한다. 이웃 블록 움직임 할당기(18)의 사용을 지지하는 기본적인 가정은 움직임 프레임에서의 특징형상이 이동하면, 이웃 특징형상들이 일반적으로 서로 상이한 객체간의 경계 부분을 제외한 부분과 함께 이동한다는 것이다.
이제, 변별 정합 검색기(16)를 상세하게 도시한 도2를 참조한다. 바람직하게도, 변별 정합 검색기는 저해상도 프레임을 이용하여 동작한다. 변별 정합 검색기는 연속적인 프레임간의 정합 블록을 선택하기 위한 검색 패턴을 선택하는 블록 패턴 선택기(22)를 포함한다. 가능한 검색 패턴은 규칙적인 그리고 무작위적인 검색 패턴을 포함한다. 전술한 검색 패턴은 추후에 상세하게 설명할 것이다.
초기 프레임으로부터 선택된 블록은 블록 정합기(24)를 이용하여 후기 프레임에 대한 정합을 실행함으로써 검색된다. 정합동작은 하기에서 상세하게 설명되는 바와 같이 가능한 전략중 하나를 이용하여 실행되고, 블록 정합은 추측된 움직임양에 따라서 인접 블록, 블록창 또는 후기 프레임에서의 전체 블록에 대해서 실행될 수 있다.
바람직한 정합 방법은 셈블런스 정합(semblance matching) 또는 셈블런스 거리 비교(semblance distance comparison)를 이용한다. 비교를 위한 수학식은 하기에서 주어진다.
정합 프로세스의 현재 또는 기타 단계에서의 블록간 비교는 비선형 최적화를 추가적으로 또는 선택적으로 활용할 수 있다. 이러한 비선형 최적화는 "Nelder-Mead Simplex" 기법을 포함할 수 있다.
다른 실시예에서, 비교는 L1 및 L2 표준을 포함할 수 있고, L1 표준은 이하 SAD(sum of absolute difference)로서 언급한다.
검색 범위를 제한하기 위해 윈도잉(windowing)을 이용할 수 있다. 여러 검색중 임의의 하나에서 윈도잉을 이용할 경우에, 윈도우 크기는 윈도우 사이즈 프리셋터(window size presetter)를 이용하여 사전 설정될 수 있다.
따라서, 정합 결과는 일련의 정합 스코어이다. 일련의 스코어는 특징형상 유의성 추정기(feature significance estimator)(26)에 삽입되고, 특징형상 유의성 추정기(26)은 최대 정합 스코어를 저장하는 최대 정합 레지스터(maximal match register)(28)를 포함한다. 평균 정합 계산기(30)는 현 블록과 관련된 모든 정합들의 평균을 저장하고, 비율 레지스터(32)는 최대 정합과 평균사이의 비율을 컴퓨팅한다. 이 비율은 바람직하게도 임계값 레지스터(34)에 보유된 소정의 임계값과 비교되고, 임계값보다 큰 비율을 갖는 임의의 특징형상은 단순 비교기일 수 있는 변별성 결정 메이커(distinctiveness decision maker)(36)에 의해 구별되는 것으로 결정된다. 따라서, 유의성은 개별적인 정합 품질에 의해서 판단되는 것이 아니라 상대적인 정합 품질에 의해 판단된다. 예를 들면, 큰 스카이 패치(large patch of sky)에서 유사 블록들 사이에서 만들어진 잘못된 정합들을 갖는 선행 기술 시스템에서 발견된 문제가 상당히 감소된다.
현 특징형상이 유의 특징형상으로 판단되면, 이는 각 이웃 특징형상 또는 블록에 대한 제1순위 움직임 추정치로서 특징형상의 움직임 벡터를 할당하기 위해 이웃 블록 움직임 할당기/검색기(18)에 의해 이용된다.
일실시예에서, 특징형상 유의성 추정치가 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하기 위한 수치적인 근사화기(numerical approximator)를 이용하여 계산된다. Hessian 행렬은 그래프에서 전환점 확인에 상응하는 2차원적인 것이고, 단순한 새들 포인트(saddle point)로부터 최대 변별값을 구별할 수 있다.
다른 실시예에서, 특징형상 추정기는 특징형상 식별기 앞단에 연결되고, 에지 검출 변형을 실행하는 에지 검출기를 포함한다. 특징형상 식별기는 특징형상 유의성 추정기에 의해 제어가능하고, 보다 높은 에지 검출 에너지를 갖는 특징형상에 특징형상 식별을 제한한다.
이웃 블록 움직임 할당기/검색기(18)를 상세하게 도시한 도3을 참조한다. 도3에 도시한 바와 같이, 할당기/검색기(18)는 이웃 유의 특징형상의 움직임 벡터를 단순히 할당하는 근사 움직임 할당기(38)와, 근사 정합에 의한 이웃간 정확한 정합을 위한 정합 검색 실행의 기초로서 할당된 움직임 벡터를 이용하는 정밀 움직임 할당기(40)를 포함한다. 바람직하게도, 할당기/검색기는 최대 해상도 프레임에서 동작한다.
2개의 이웃 유의 특징형상이 존재할 경우에, 정밀 움직임 할당기는 2개의 움직임 벡터의 평균을 이용하거나, 현재의 특징형상에 할당할 벡터를 결정하기 위해 소정 규칙을 이용할 수 있다.
일반적으로, 정합 실행을 위한 후속 프레임은 직접적으로 연속적인 또는 순차적인 프레임이다. 하지만, 프레임간의 점프가 만들어질 수 있다. 특히, 바람직한 실시예에서, 제1프레임(즉, I 프레임)과 제2프레임(즉, P 프레임)사이의 정합이 이루어지고, 2개의 프레임 사이의 움직임 인터폴레이션(interpolation)이 중간 프레임, 즉, B 프레임에 적용된다. 다른 실시예에서, 정합이 I 프레임과 후속 P 프레임 사이에서 실행되고, 엑스트라폴레이션(extrapolation)이 다음 후속 P 프레임에 적용된다.
검색하기 전에, 프레임의 DC 교정을 실행할 수 있다. 즉, 프레임 또는 개별 블록의 평균 휘도 레벨이 계산 및 감산될 수 있다.
움직임 추정 이전에 프레임 전처리를 실행시키기 위한 전처리기(42)의 간소화된 도면을 나타내는 도4를 참조한다. 전처리기는 후속 프레임간 해당 픽셀의 감산을 실행하기 위한 픽셀 감산기(44)를 포함한다. 픽셀 감산기(44)의 후단에 블록 감산기(46)가 연결되고, 블록 감산기(46)는 픽셀 감산의 결과로서 소정 임계치 아래의 픽셀차 레벨을 산출하는 관심 블록에서의 감산을 행한다. 픽셀 감산은 움직임이 검출되지 않을 경우에 낮은 픽셀차 레벨을 산출할 것으로 추측될 수 있다. 즉, 후속 프레임에서의 해당 픽셀들이 동일하다. 이러한 전처리는 움직임 검출 단계 및 특히 스퓨리어스 모션(sourious motion) 검출 범위에서 처리량을 상당히 감소시킬 것으로 추측될 수 있다.
양자화된 감산은 출력 프레임의 소망 비트 속도에 따라 (바람직하게도, 매크로블록에서의) 프레임 정합 부분의 양자화된 스킵동작(quantized skipping)의 조정을 허용한다.
양자화된 감산 방식은 변함없는 매크로블록, 즉, 비교되는 2개의 프레임간 변함없는 상태(stationary)를 나타내는 매크로블록에 대한 움직임 추정 프로세스의 스킵동작을 가능하게 한다. 초기에, 최대 해상도 프레임은 전술한 바와 같이 그레이 스케일(YUV 화상의 휘도 성분)로 변환된다. 이후, 픽셀별로 프레임들 사이의 감산이 이루어진다. 모든 픽셀차가 제로가 되는 모든 매크로블록(8x8 MB를 위한 64개의 픽셀 및 16x16 MB를 위한 256개의 픽셀)은 변함없는 것으로 간주될 수 있고, 움직임 추정의 프로세스를 처리하기 전에 스킵될 매크로블록으로서 표기될 수 있다. 따라서, 매크로블록을 정합시키기 위한 풀 프레임 검색(full frame search)이 회피될 수 있다.
변함없는 매크로블록 허용값을 움직임 추정 프로세스를 거치는 매크로블록의양자화 레벨로 조정함으로써 감산을 제한(threshold)할 수 있다. 부호화기는 움직임 추정 프로세스를 거친 블록 양자화 레벨에 따라 양자화된 감산 방식의 임계치를 설정할 수 있다. 움직임 추정동안에 양자화 레벨이 높을수록, 감산된 픽셀 관련 허용 레벨이 높아지며, 스킵된 매크로블록 개수가 증가할 것이다.
감산 블록 임계치를 상위값으로 설정함으로써, 보다 많은 매크로블록이 움직임 식별 프로세스에서 스킵되어 다른 부호화 용량을 자유롭게 한다.
전술한 실시예에서, 적어도 일부 블록을 통한 제1패스는 임계치를 획득하기 위해 요구된다. 바람직하게도, 더블 패스 부호화기는 임계치 조정이 제1패스의 부호화 결과에 따라 각 프레임에 대해 이루어지게 한다. 하지만, 다른 바람직한 실시예에서, 양자화된 감산 방식은 단일 패스 부호화기에서 구현될 수 있으며, 이전 프레임에 따라 각 프레임에 대한 양자화를 조정한다.
본 발명의 바람직한 실시예에 따라 움직임 검출 후처리기(48)의 간소화된 블록도를 도시한 도5를 참조한다. 후처리기(48)는 할당된 움직임 벡터의 진폭을 분석하기 위한 움직임 벡터 진폭 레벨 분석기(50)를 포함한다. 진폭 분석기(50)의 후단에 블록 양자화기(52)가 연결된다. 블록 양자화기(52)는 벡터 진폭에 반비례하는 블록 양자화 레벨을 할당한다. 블록 양자화 레벨은 특징형상이 빠르게 움직일수록 사람의 눈은 세부 사항을 자세히 볼 수 없다는 사실에 기초하여 블록 내에서 픽셀을 부호화하기 위한 세부 레벨(level of detail)을 설정하는데 이용될 수 있다.
절차를 상세하게 살펴보면, 실시예는 MPEG-2 디지털 비디오 표준에 대하여설명된다. 실례가 MPEG 4 및 다른 표준으로 확대될 수 있고, 보다 일반적으로, 알고리즘이 인터 및 인트라 부호화기(inter and intra frame encoder)에서 구현될 수 있음을 숙련자가 이해할 것이다.
전술한 바와 같이, 어떤 코히어런스(coherence) 레벨이 동영상 프레임 시퀀스에 존재한다. 즉, 특징형상은 유연하게 움직이거나 변한다. 따라서, 2개의 연속적인 프레임 (또는 원격 후속) 프레임에서 화상의 변별 부분을 확인하여 이러한 변별 부분의 움직임 벡터를 확인할 수 있다. 즉, 프레임 A 및 B의 변별 프래그먼트의 상대적인 변위를 판단할 수 있고, 변별 프래그먼트와 인접하는 전체 또는 일부 영역 확인을 지원하기 위해 이들 움직임 벡터를 이용할 수 있다.
프레임의 변별 영역은 변별 패턴을 포함하는 영역이며, 이는 어떤 적당한 레벨을 이용하여 주변 객체 및 배경으로부터 식별 및 차별화될 수 있다.
단순히 말하자면, 프레임 A에서 얼굴 코가 프레임 B에서의 새로운 위치로 이동하면, 동일한 얼굴의 눈이 코와 함께 움직인다는 것을 가정하는 것이 적절하다.
인접 부분에 국한된 검색과 함께 프레임의 변별 부분 식별은 통상적인 프레임 부분 정합과 비교해서 극적으로 에러율을 최소화한다. 대개, 이러한 에러는 화질을 저하시키고, 아티팩(artifacts)을 추가시키며, 단일 특징형상이 별개의 독립 블록들로 작용하는 효과를 나타내는 블러킹(blocking)을 야기시킨다.
화상의 변별 부분 검색을 위한 제1단계로서, 휘도(그레이 스케일) 프레임이 전술한 바와 같이 (원래 크기의 1/2 - 1/32 또는 다른 다운샘플 레벨로) 다운샘플링된다. 다운샘플링 레벨은 사용자에 의한 설정을 위해 가변하는 시스템으로서 간주될 수 있다. 예를 들면, 180x144 픽셀의 1/16 다운샘플은 720x576 픽셀 프레임을 표현할 수 있고, 180x120 픽셀의 1/16 다운샘플은 720x480 픽셀 프레임을 표현할 수 있다.
최대 해상도 프레임에서 검색할 수 있지만, 이는 비효율적이다. 다운샘플링은 프레임의 변별 영역 검출을 용이하게 하고, 컴퓨팅 부담을 최소화하는데 이용된다.
특히 바람직한 실시예에서, 초기 검색은 "8" 다운샘플링한 이후에 수행된다. 이후, "4" 다운샘플링에서 정밀 검색이 수행되고, "2" 다운샘플링에서 정밀 검색이 수행되고, 최대 해상도 프레임에서 최종 처리가 수행된다.
2개의 후속 프레임을 도시한 도6을 참조한다. 움직임 추정 프로세스 동안에, 다운샘플링 및 감산 이후의 화상의 변별 부분이 연속 또는 원격 후속 프레임에서 식별될 수 있고, 움직임 벡터가 이들 사이에서 계산될 수 있다.
프레임의 변별 부분의 체계적인 검색 및 검출을 가능할 수 있도록, 전체적으로 다운샘플링된 프레임이 슈퍼 매크로블록으로서 언급된 단위로 분할된다. 본 예제에서, 슈퍼 매클크로블록은 8x8 픽셀 블록이다. 하지만, 숙련자는 다른 크기 및 형상을 갖는 블록을 이용할 수 있음을 이해할 것이다. 예를 들면, PAL (720x576) 프레임의 다운샘플링은 슬라이스 또는 로우에서 23(22.5)개의 슈퍼 매크로블록 및 칼럼에서 18개의 슈퍼 매크로블록을 생성할 수 있다. 이하, 전술한 바와 같이 다운샘플링된 프레임은 저해상도 프레임 또는 LRF으로 언급할 것이다.
후속 프레임에서 슈퍼 매크로블록 정합을 확인하기 위한 검색 방식을 도시한개략적인 도면인 도7 및 도8을 참조한다.
도7은 전체 또는 샘플 슈퍼 매크로블록 정합을 위한 체계적인 검색을 나타내는 개략도이다. 여기서, 슈퍼 매크로블록은 제1프레임에서 체계적으로 선택되고, 제2프레임에서 검색된다. 도8은 검색을 위한 슈퍼 매크로블록의 무작위적인 선택을 나타내는 개략도이다. 상기 2개의 검색 유형의 다양한 변화가 수행될 수 있음을 알 수 있다. 도7 및 도8에서, 14개의 슈퍼 매크로블록이 존재한다. 물론, 슈퍼 매크로블록의 개수는 보다 적은 슈퍼 매크로블록 개수에서부터 프레임의 전체 슈퍼 매크로블록 개수까지 변화될 수 있다. 후자 경우에, 도7 및 도8은 25x19 슈퍼 매크로블록 프레임 및 23x15 프레임을 각각 나타낸다.
도7 및 도8에서, 각 슈퍼 매크로블록은 크기에서 8x8 픽셀이고, MPEG-2 표준에 따라 32x32 픽셀 제곱을 형성하는 매크로블록에 인접하는 4개의 최대 해상도 16x16 픽셀들을 나타낸다. 이들 수치는 임의의 특정 실시예에 따라서 변화될 수 있다.
저해상도에서 ±16 픽셀의 검색 영역은 슈퍼 매크로블록에 의해 표현된 32 픽셀에 더하여, ±64 범위의 최대 해상도 검색과 동일하다. 전술한 바와 같이, ±16보다 작은 윈도우 및 풀 프레임을 나타내는 다양한 크기로 검색 윈도우를 확대할 수 있다.
고해상도 화상을 이용하여 단지 14개의 슈퍼 매크로블록을 갖는 체계적인 초기 검색 범위를 설명하는 간소화된 프레임을 도시한 도9를 참조한다.
하기에서, 본 발명의 일실시예에 따라 바람직한 검색 절차에 관하여 상세히설명한다. 검색 절차는 연속적인 단계로 설명된다.
단계 0: 검색 관리
모든 매크로블록(16x16 최대 해상도 프레임)의 상태 데이터베이스(맵)가 유지된다. 상태 데이터베이스의 각 셀은 상이한 매크로블록(좌표 i,j)에 상응하고, 다음과 같이 3개의 움직임 추정 애트리뷰트를 포함한다. 하나의 매크로블록 상태는 (-1,0,1)이고, 3개의 움직임 벡터는 AMV1 x,y와, AMV2 x,y와 MV x,y이다. 매크로블록 상태 애트리뷰트(attributes)는 각 블록 상태를 지시하기 위해 검색 과정 동안에 설정 및 변경되는 상태 플래그이다. 움직임 벡터는 이웃 블록으로부터 할당된 애트리뷰트형 움직임 벡터 및 최종 결과 벡터로 구분된다.
초기에, 모든 매크로블록 상태는 (부정합) "-1"로서 표기된다. 매크로블록이 정합될 때마다(아래단계 d 및 e 참조), 그 상태는 (정합) "0"로 변경된다.
정합된 매크로블록의 4개의 인접 매크로블록 모두가 정합을 위해 검색될 때마다(아래단계 d, e 및 f 참조), 검색 결과에 관계없이 매크로블록 상태가 각 매크로블록에 대해 처리가 완료되었음을 나타내기 위해 "1"로 변경된다.
변별 슈퍼 매크로블록이 정합될 때마다(아래단계 b 참조), (도5에 도시된) 이웃 매크로블록 1.n의 AMV1(근사 움직임 벡터1)이 표기된다. 즉, 변별 매크로블록에 대해 판단된 움직임 벡터가 근사 정합으로서 이웃 각각에 할당된다.
1.n 또는 이웃하는 매크로블록이 정합될 때마다(아래단계 d 참조), 이에 대한 MV가 표기되고, MV는 인접 또는 이웃하는 매크로블록 모두의 AMV1를 표기하는데사용된다.
여러 경우에서, 특정 매크로블록은 서로 상이한 이웃하는 매크로블록으로부터 서로 상이한 근사 움직임 벡터를 할당받는다. 따라서, 정합된 인접 매크로블록의 MV가 인접 매크로블록 중 다른 하나에 의해 문제의 매크로블록에 이미 할당된 AMV1값과 서로 상이할 때마다, 임계치는 2개의 움직임 벡터가 호환가능한지를 판단하는데 이용된다. 전형적으로, (x 및 y 값들에 대한) 거리 d ≤4이면, 이들 값 사이의 평균은 새로운 AMV1로서 취해진다.
한편, 임계치를 초과하면, 움직임이 호환불가능하다고 가정한다. 문제의 매크로블록이 특징형상의 경계 상에 명백하게 위치한다. 따라서, (x 또는 y값에 대한) d > 4에 따라, 정합된 매크로블록의 MV가 다른 인접 매크로블록에 의해 인접 매크로블록에 이미 주어진 AMV1와 상이할 때마다, 제2인접 매크로블록이 AMV2로서 유지된다.
단계 a: 슈퍼 매크로블록을 정합시키기 위한 검색
저해상도 프레임(LRF)에서의 검색 방식에서, 2개의 프레임에서의 슈퍼 매크로블록을 정합시키기 위해, 미스핏(misfit) 함수로서 알려진 함수가 이용된다. 유용한 미스핏 함수는 예를 들면, L1 및 L2 표준에 기초될 수 있거나 다음과 같이 정의된 셈블런스 미터법에 기초한 더 복잡한 표준을 이용할 수 있다.
2개의 N 벡터 ck1및 ck2에 대해, 이들 사이의 샘블런스 거리(SEM)는 다음과같은 표현을 갖는다.
더 바람직한 실시예에서, 2개의 벡터를 단순히 DC 교정함으로써 더 복잡한 샘블런스 기반 표준을 선택할 수 있다. 즉, 각 성분으로부터 평균값을 감산함으로써 형성된 신규 벡터로 상기 2개의 벡터를 교체할 수 있다.
DC 교정을 이용하거나 DC 교정없이, 기본값 존재에 대한 검색이 실질적으로 더 확고히 하게 된다는 점에서, 샘블런스 미터법 선택이 유익하다고 간주될 수 있다.
상기 정의된 샘블런스 미스핏 함수를 이용하여, 직접 검색이 실행되어 저해상도 프레임에서 단일 초기 슈퍼 매크로블록에 대한 정합을 획득한다. 선택적으로, 이러한 검색은 "Nelder-Mead Simplex" 방법으로서 본 기술분야에 공지된 비선형 "SIMPLEX" 방법이 양호한 결과를 산출하는 효과적인 비선형 최적화 기법에 의해 실행될 수 있다.
바람직하게도, 제1프레임에서의 n번째 슈퍼 매크로블록에 대한 정합 검색은 ±16 픽셀 범위에서 제2프레임에서의 n번째 슈퍼 매크로블록으로 시작한다.단계 b에서 설명되는 바와 같이, 정합 확인 또는 변별 블록으로서의 슈퍼 매크로블록 확인을 실패할 경우에, 최종 실패 검색의 n+1번째 매크로블록으로부터 시작하면서 검색을 반복한다.
단계 b: 변별 정합 슈퍼 매크로블록 선언
슈퍼 매크로블록 정합이 확인되면, a 및 b 사이의 비율이 조사된다. 여기서, a는 완전히 동일한 블록 정합(8x8 픽셀)에 대한 현 슈퍼 매크로블록의 정합을 나타내고, b는 완전히 검색된 영역의 나머지(8x8 픽셀을 배제한 40x40)의 평균 정합에 대한 매크로블록의 정합을 나타낸다. a 및 b 사이의 비율이 임의의 임계치보다 클 경우에, 현 매크로블록은 변별 매크로블록으로서 간주된다. 이러한 이중 단계 절차는 이웃 블록들이 유사하지만 실제로 움직임이 없는 경우에 변별적 정합 동작이 여러 영역에서의 정확한 확인을 보장하는데 도움이 된다.
변별 매크로블록을 확인하기 위한 다른 방법은 미스핏 함수의 2차 미분 도함수의 정방행렬인 미스핏 함수의 Hessian 행렬을 수치적으로 근사화함으로써 이루어진다. 판별된 매크로블록 정합 좌표에서의 Hessian 평가는 현 위치가 전환점에 대등한 2차원을 표현하는지에 관한 지시를 제공한다. 절대적인 변별성 레벨과 함께 최대값의 존재는 유용한 정합을 나타낸다.
변별성을 확인을 위한 다른 실시예는 예를 들면, Laplacian 필터, Sobel 필터 또는 Roberts 필터를 이용한 에지 검출 변형을 2개의 프레임에 적용하고, 검색을 필터 출력 에너지가 상당히 높은 "감산된 프레임(subtracted frame)"에서의 영역에 제한한다.
단계 c: 변별 슈퍼 매크로블록의 개략적인 MV 설정
변별 슈퍼 매크로블록이 식별될 때, 판별된 움직임 벡터가 최대 해상도 프레임의 해당 4개의 매크로블록에 할당된다.
변별 슈퍼 매크로블록의 번호가 초기 검색에서 N으로 설정된다. 연관 움직임 벡터 설정은 하기에서 설명하는 바와 같이 다음 프레임의 고해상도 버전 검색을 실행하도록 근사 임시 움직임 벡터로서 작용한다.
단계 d: 단일 최대 해상도 매크로블록의 정확한 MV 설정
저해상도 프레임에서 단일 슈퍼 매크로블록에 해당하는 고해상도 프레임에서 4개의 매크로블록의 레이아웃을 도시한 간소화된 도면을 나타내는 도10을 참조한다. 픽셀 크기가 지시된다.
초기 슈퍼 매크로블록의 4개의 매크로블록중 어느 하나의 정확한 움직임 벡터를 획득하도록, 최대 해상도 프레임이 최초의 16x16 픽셀 크기에서 4개의 매크로블록중 하나에 대해 검색된다. 검색은 ±7 픽셀 범위에서 매크로블록 번호 1.1부터 시작된다.
매크로블록 1.1에 대한 정합이 확인되지 않으면, 바람직하게도, 동일한 절차가 동일한 8x8 슈퍼 매크로블록에서 시작하는 최초의 16x16 픽셀 내에서 다시 매크로블록 번호 1.2에서 반복된다. 블록 1.2가 정합될 수 없다면, 동일한 절차가 블록 1.3 및 블록 1.4에서 반복된다.
도10에 도시된 바와 같은 4개의 매크로블록 모두가 확인될 수 없다면, 절차는 새로운 블록 및단계 a로 돌아간다.
단계 e: 인접 매크로블록에 대한 움직임 벡터 갱신
4개의 매크로블록중 하나의 정합이 확인되면, 검색 데이터베이스에서의 매크로블록 상태는 ("정합") 0으로 변경된다.
정합된 매크로블록의 MV가 상태 데이터베이스에서 표기된다. 바람직하게도, 정합된 매크로블록은 피벗 매크로블록(pivot macroblock)으로 언급한다. 피벗 매크로블록의 움직임 벡터가 AMV1으로서 또는 인접 또는 이웃하는 매크로블록에 대한 검색 시작점으로서 할당된다. 인접 매크로블록에 대한 AMV1이 도11에 도시한 바와 같이 상태 데이터베이스에서 표기된다.
피벗 매크로블록 주위의 매크로블록 배치를 도시한 간소화된 도면을 나타낸는 도12를 참조한다. 도면에 도시한 바와 같이, 본 발명의 실시예를 위한 인접 또는 이웃하는 블록은 North, South, East 및 West측에서의 피벗 매크로블록과 접하는 매크로블록이다.
단계 f: 피벗의 인접 매크로블록에 대한 정합 검색
근사 움직임 벡터를 갖는 관심 영역에서의 매크로블록, 즉, ±4 픽셀 범위의 제한된 검색은 바람직하게도, 정밀 정합에 이용된다. 도12에 도시한 바와 같이, North, South, East 및 West에 대한 정합이 현단계에서 확인된다. (DS 등을 포함하는) 어떤 종류의 공지된 검색이 제한된 검색 목적으로 구현될 수 있다.
전술한 제한된 검색이 종료되면, 각 피벗 매크로블록 상태는 "1"로 변경된다.
단계 g: 신규 피벗 매크로블록 설정
정합된 각 인접 매크로블록 상태는 정합되었음을 나타내도록 "0"으로 변경된다. 각 정합된 매크로블록이 이웃하거나 인접하는 매크로블록의 AMV1 값 설정을 허용하기 위해 교대로 피벗으로 작용할 수 있다.
단계 h: MV 갱신
인접 매크로블록의 AMV1이 각 피벗 매크로블록의 움직임 벡터에 따라 설정된다. 전술한 바와 같이, 어떤 경우에, 인접 매크로블록중 하나 이상이 하나 이상의 인접 피벗으로 인하여 AMV1 값을 이미 가질 수 있다. 이 경우에, 도13 및 도14와 관련하여 설명된 다음과 같은 절차가 이용된다.
(x 및 y값에 대해) d ≤4에 따라, 현재의 AMV1 값이 새롭게 정합된 인접 피벗 매크로블록의 MV값과 상이하면, 평균값이 AMV1로서 유지된다.
한편, 임계 거리 d = 4가 초과되면, 피벗의 후기값이 유지된다.
단계 I: 정지 상태
모든 피벗 매크로블록이 완료되었음을 의미하는 "1"로 표기되면, 정지 상태가 발생한다. 이때, 초기 검색이 초기 검색 영역에 포함된 8x8 픽셀의 (n+1)번째슈퍼 매크로블록에서 반복된다.
초기 검색 슈퍼 매크로블록 번호 갱신
추가 변별 슈퍼 매크로블록이 확인되면, 확인된 마지막 변별 슈퍼 매크로블록에서 (n+1) 번호가 주어진다. 번호 매김은 발견 순서로 변별 매크로블록을 검색하고, 변별되지 않는 슈퍼 매크로블록에 대해 검색을 생략하는 것을 보장한다.
단계 i:
검색할 이웃들이 존재하지 않거나 슈퍼 매크로블록이 남아있지 않은 경우에, 검색을 종료한다. 선택적으로, 본 기술분야에서 공지된 보편적인 검색, 예를 들면, DS, 3SS, 4SS, HS 또는 Diamond 검색이 잔류 매크로블록에 이용된다.
검색이 더 이상 이행되지 않으면, 모든 부정합 매크로블록이 바람직하게도 산술적으로 부호화된다.
픽셀을 통한 초기 검색이 모든 픽셀에 관하여 실행될 수 있다. 선택적으로, 대체 픽셀에 대해서만 실행되거나 다른 픽셀 스킵 프로세스를 이용하여 실행될 수 있다.
양자화된 양자화 방식
특히, 본 발명의 바람직한 실시예에서, 후처리 단계가 실행된다. 지능형 양자화 레벨 설정이 움직임의 범위 또는 크기에 따라 매크로블록에 적용된다. 전술한 바와 같이, 움직임 추정 알고리즘이 매크로블록 정합의 상태 데이터베이스를 유지하고, 특징형상 지향 그룹에서 변위된 매크로블록을 검출하기 때문에, 그룹 내의 글로벌 모션 식별이 움직임 크기의 함수로서 속도 제어 조작을 가능하도록 하는데 이용되어, 고속으로 이동하는 특징형상 지향 그룹에 대한 보다 낮은 세부 레벨을 제공함으로써 인간의 눈의 한계를 이용한다.
여러 랜덤 매크로블록을 정합시키는데 용이한 DS 움직임 추정 알고리즘 및 다른 움직임 추정 알고리즘과 달리, 본 실시예는 움직임 레벨에 대한 양자화의 상관관계를 인에이블하기에 충분히 정확하다. 일부 세부 사항은 인간의 눈을 피할 수 있는 매크로블록의 보다 높은 양자화 계수를 보다 큰 움직임을 갖는 매크로블록에 정합시킴으로써, 부호화기는 보다 작은 움직임을 갖는 매크로블록 또는 I 프레임에서의 품질 개선용 바이트를 자유롭게 할 수 있다. 이에 따라, 부호화기는 동일한 양자화를 이용하는 통상의 부호화기와 동일한 비트 속도에서 인간의 눈에 의한 지각 레벨에 따라 프레임의 서로 다른 부분에 대한 상이한 양자화를 허용할 수 있어, 고지각 레벨의 화질을 산출한다.
양자화 방식은 바람직하게도 다음과 같은 두 단계로 동작한다.
단계 a:
전술한 바와 같이, 움직임 추정 알고리즘의 상태 데이터베이스에서, 성공적으로 정합된 각 매크로블록 및 정합된 적어도 2개의 이웃의 기록을 유지한다. 이러한 방식으로, 성공적으로 정합된 매크로블록은 피벗으로 언급한다. 이하, 매크로블록 그룹은 단일 페이빙 그룹(single paving group)으로 언급하고, 후속 프레임에서 피벗가 연관된 이웃들간의 정합 프로세스는 페이빙(paving)으로 언급한다.
단계 b:
단일 페이빙 프로세스가 검색할 이웃이 존재하지 않을 경우에, 정합된 매크로블록 그룹의 움직임 벡터가 계산된다. 그룹 내의 모든 매크로블록의 평균 움직임 벡터가 임의의 임계치 보다 클 경우에, 매크로블록의 양자화 계수는 "A+N"으로 설정되며, 여기서, A는 전체 프레임에 적용된 평균 계수이다. 그룹의 평균 움직임 벡터가 임계치보다 낮을 경우에, 매크로블록의 양자화 계수가 "A-N"으로 설정된다.
임계치가 비트 속도에 따라 설정될 수 있다. 단일 페이빙 그룹에서 정합되는 매크로블록 그룹의 평균 움직임 벡터차에 따른 임계치를 풀 프레임의 평균 움직임 벡터로 설정할 수도 있다.
따라서, 본 실시예는 움직임 추정 스킵 동작을 위한 양자화된 감산 방식, 움직임 추정 알고리즘, 움직임 레벨에 따른 프레임의 움직임 추정 영역의 양자화를 위한 방식을 포함한다.
2개의 원리는 전술한 바와 같은 실시예의 기초가 된다. 제1원리는 동화상의 코히어런스 특성을 조사하는 개념이다. 제2원리에서, 소정 임계치 아래의 매크로블록의 미스핏은 전화상 검색 지속을 위해 의미있는 가이드(guide)를 나타낸다.
현재 보고된 움직임 추정(ME) 알고리즘은 다양한 최적화 기법을 기초하여 한번에 하나씩 검색을 행하는 매크로블록 검색을 이용한다. 반대로, 본 실시예는 비디오 스트림 프레임들간의 글로벌 모션을 식별하는 절차에 기초한다. 즉, 화상의 유기적인 움직임 특징형상을 처리하기 위해 이웃하는 블록 개념을 이용한다. 전술한 바와 같이, 움직임에 대해 분석되는 프레임은 연속적인 프레임 또는 비디오 시퀀스에서 서로 이격된 프레임일 수 있다.
전술한 실시예에서 이용된 절차는 바람직하게도 프레임의 (바람직하게도, 매크로블록 모양의) 변별 부분에 대한 움직임 벡터(MV)를 확인하며, 이는 프레임에서의 영역에서의 특징형상 기반 또는 글로벌 모션을 설명하기 위해 취해진다. 동시에, 절차는 글로벌 움직임 벡터에 따라 프레임의 예측된 이웃 부분의 MV를 갱신한다. (매크로블록에 인접하는) 프레임의 모든 정합 이웃 부분 모두가 페이빙되면, 알고리즘은 프레임의 다른 부분의 다른 변별 움직임을 식별한다. 다른 변별 움직임이 확인될 수 없을 때까지, 페이빙 처리가 반복된다.
현 기술에서 폭넓게 이용되는 전수 억지 검색(exhausting brute-force search)을 회피하는 방법을 제공한다는 점에서 전술한 절차는 효율적이다.
본 실시예의 효율성은 도15 내지 도17, 도18 내지 도20 및 도21 내지 도23의 3가지 세트에 의해 설명된다. 각 세트에서, 제1도는 비디오 프레임을 도시하고, 제2도는 대표적인 선행기술 방식에 의해 제공된 움직임 벡터를 갖는 비디오 프레임을 도시하고, 제3도는 본 발명의 실시예에 따라 제공된 움직임 벡터를 도시한다. 선행 기술에서, 대다수의 스퓨리어스 움직임 벡터가 움직임에 대한 유사 블록 사이의 정합이 잘못될 경우에 배경 영역에 적용된다.
언급한 바와 같이, 바람직한 실시예는 양자화된 감산 방식과 연관된 처리 단계를 포함한다. 전술한 바와 같이, 양자화된 감산은 프레임에서 변하지 않은채 남아있는 또는 거의 변하지 않은 화상 부분에 대한 움직임 추정 절차의 스킵을 허용한다.
언급한 바와 같이, 바람직한 실시예는 움직임 레벨에 따라 매크로블록에 대한 지능형 양자화 레벨 설정을 허용하는 후처리 단계를 포함한다.
양자화된 감산 방식, 움직임 추정 알고리즘 및 움직임 레벨에 따른 프레임의 움직임 추정 영역의 양자화 방식이 단일 부호화기에서 통합될 수 있다.
움직임 추정은 풀 컬러 맵에 따라 이루어질 수 있지만, 바람직하게도 그레이 스케일 이미지와 연관된다.
적합한 크기 블록이 주어진 환경에서 선택될 수 있음을 숙련자는 이해하지만, 움직임 추정은 바람직하게도 8x8 또는 16x16 픽셀 매크로블록을 이용하여 이루어진다.
각 움직임 크기에 따라 프레임의 움직임 추정 영역의 양자화 방식이 양자화 레벨의 미세 조정을 제공하기 위해 속도 제어 방식으로 통합될 수 있다. 하지만, 성공하기 위해서, 양자화 방식은 바람직하게도 유사 영역 사이의 인공적인 움직임을 확인하지 못하는 움직임 추정 방식을 필요로 한다.
전술한 유형의 검색 전략을 도시한 간소화된 흐름도 나타내는 도24를 참조한다. 굵은 라인은 흐름도에서 주요 경로를 나타낸다. 도24에서, 제1단계(S1)는 일반적으로 최대 해상도 컬러 프레임인 신규 프레임 삽입을 포함한다. 프레임이 단계(S2)에서 그레이 스케일 등가 대신에 이용된다. 단계(S3)에서, 그레이 스케일등가는 저해상도 프레임(LRF)을 산출하도록 다운샘플링된다.
단계(S4)에서, LRF가 8x8 픽셀 변별 슈퍼 매크로블록에 도달하기 위해서 전술한 검색 전략에 따라 검색된다. 이 단계는 슈퍼 매크로블록이 더 이상 식별될 수 없을 때까지 반복된다.
다음 단계(S5)에서, 전술한 바와 같은 변별성이 검증되고, 단계(S6)에서, 현 매크로블록이 최대 해상도 프레임(FRF)에서 등가 블록과 결합된다. 단계(S7)에서, 움직임 벡터가 추정되고, 단계(S8)에서, 비교가 LRF에서 판별된 움직임 및 초기에 삽입된 고해상도 프레임 사이에서 이루어진다.
단계(S9)에서, 실패한 검색 임계치는 이웃하는 4개의 매크로블록을 갖는 소정의 매크로블록의 피트(fits)를 판별하는데 이용되고, 이는 피트가 더 이상 확인될 수 없을 때까지 계속된다. 단계(S10)에서, 페이빙 전략을 이용하여 단계(S9)에서 확인된 피트에 기초한 움직임 벡터를 추정한다. 페이빙은 피트를 나타내는 모든 이웃들이 소모될 때까지 계속된다.
단계(S5 내지 S10)가 모든 변별 슈퍼 매크로블록에 대해 반복된다. 변별 슈퍼 매크로블록이 더 이상 존재하지 않는다고 판단되면, 프로세스는 단계(S11)로 진행되고, 여기서, 단순 산술 부호화와 같은 표준 부호화가 페이빙되지 않은 영역을 나타내는 움직임이 식별되지 않은 영역에서 실행된다.
이웃들을 확인하기 위한 초기 피벗에서의 확산을 위한 방식이 셀룰라 오토머터로부터의 기법을 이용할 수 있다는 것을 주목하여야 한다. 이 기법은 "Stephen Wolfram, A New Kind Of Science, Wolfram Media Inc. 2002"에 설명되어 있고, 이에 관한 내용은 참고로 여기에 내포된다.
본 발명에 따른 바람직한 실시예에서, 상기 절차의 스케일러블 순환적 버전(scalable recursive version)이 이용되고, 이와 관련하여 도25 내지 도29를 참조한다.
스케이러블 순환적 실시예에서 이용된 검색은 개량된 "Game of Life"형 검색이고, "4" 다운샘플링된 저해상도 프레임(LRF) 및 최대 해상도 프레임(FRF)을 연속적으로 이용한다. 이러한 검색은 8 및 4개의 프레임과 최대 해상도 프레임에 관한 검색에 상응한다.
초기 검색은 간단하다. N, 바람직하게도, 11 내지 33개의 USMB(ultra super macroblocks)가 시작점으로 이용하기 위해 취해진다. 즉, 피벗 매크로블록으로서의 매크로블록이 최대 해상도 프레임에서의 페이빙 동작에 이용될 수 있다. 바람직하게도, USBM은 "4" 다운샘플링된, 즉, 원래 크기의 1/16에서, LRF 프레임을 이용하여 검색된다.
(9개의 16x16 매크로블록인 FRF에서의 48x48 픽셀을 나타내는) USBM들 각각은 12x12 픽셀에 해당한다. 검색 영역은 2개의 픽셀 점프(수평으로 ±2, 4, 6, 8, 10, 12와 수직으로 ±2, 4, 6, 8)에서 수평으로 ±12와 수직으로 ±8에 기초한 24x16 검색창에 해당한다. USMB는 144개의 픽셀을 포함하지만, 일반적으로 픽셀의 1/4이 검색 동안에 정합된다. 도25에 도시된 패턴(4-12), 즉, 수평 방향으로 4개의 연속적인 폴링 로우(successive falling rows)를 구현하는 것을 지원하는데 이용되고, 구현은 MMX, 3D Now, SSE 및 DSP SAD 가속화와 같은 다양한 그래픽 가속화 시스템을 이용할 수 있다. 검색에서, 16 픽셀의 각 정방 블록에 대해, 4개의 픽셀이 정합되고, 12개의 픽셀이 스킵된다. 도25에 도시한 바와 같이, 상단 좌측에서 시작하는 제1컬럼에서, 4개의 로우중 하나가 검색되고, 3개의 로우가 스킵된다. 이후, 검색은 시프트 다운이 발생할 경우에 제2컬럼으로 이동하고, 4개 로우중 제1로우는 무시되고 제2로우가 검색된다. 결과적으로, 이전과 같이 제4로우마다 검색된다. 유사한 시프트가 제3컬럼에 대해 실행된다. 실행된 정합은 8 다운샘블 에뮬레이션(Down sample by 8 Emulation)에 해당한다.
이 검색은 움직임 벡터가 초기 및 후속 프레임의 정합된 영역 사이에서 설정되도록 허용한다. 도26을 참조하면, 신규 움직임 벡터가 설정될 때, USMB가 다음과 같이 4 다운샘플링된 동일한 프레임에서 4개의 SMB로 분할된다.
±1 픽셀에 대해 움직임 정합을 위한 4개의 6x6 SMB들이 검색되고, 4개의 SMB중 최상의 SMB가 최대 해상도로 향상된다. 각 SMB는 최대 해상도 24x24 픽셀 블록을 나타낸다.
최대 해상도에서, 검색 패턴이 도27에 도시한 바와 같이 16x16 픽셀 MB(4-16)이 이용되는 것을 제외하고, 다운샘플 4(DS4) 제1패턴과 유사하다. 정합된 블록이 4개의 SMB중 최상의 SMB에 의해 표현된 24x24 블록 내에 완전히 포함된다. 즉, 인식이 최상의 정합에 주어진다.
먼저, 4개의 SMB중 최상의 6x6 SMB 내에 포함된 MB들이 ±6 픽셀 범위 내의 최대 해상도에서 검색된다. 모든 결과가 분류되고, 바람직하게도 병렬로 초기 글로벌 검색을 수행하기 위해서 초기 N개의 시작점이 설정된다.
어떠한 임계치를 이용하지 않고 검색할 수 있는 가능성이 있다. 이 경우에, 어떠한 변별성 검사가 존재하지 않는다. 각각 그리고 모든 USMB는 단일 최대 해상도 MB로 끝난다. 하지만, 유익하게도 임계치가 변별성을 판단하는데 이용될 수 있고,제2라운드(싸이클)에서 임계치를 낮추는 것은 제1싸이클 동안에 페이빙되지 않은 MB의 페이빙 계속을 허용한다.
바람직하게도, 페이빙 처리는 세트에서 최상, 즉, 최저값을 갖는 MB에서 시작된다. 값에 이용된 표준은 L1 표준일 수 있고, L1은 위에서 언급한 SAD와 동일하다. 선택적으로, 임의의 다른 표준이 이용될 수 있다.
(제1피벗에 대한 4개의 인접 MB의) 제1페이빙 이후에, 값들이 세트에 기록되어 재분류된다. 동일한 방식으로, 후속 페이빙 동작이 세트에서의 최상의 MB로부터 시작한다.
실시예에서, 예를 들면, 다음과 같이 각 L1 표준값에 따라 5개의 리스트와 10개의 리스트 사이에서 확인된 MB들을 삽입함으로써 전체 분류가 회피될 수 있다.
50 ≥In ≥40 > H ≥35 > G ≥30 > F ≥25 > E ≥20 > D ≥15 > C ≥10 > B ≥5 > A ≥0
MB가 정합될 때마다, 정합된 MB를 바람직하게도 정합되었음을 표기하고, 세트로부터 제거한다.
페이빙은 3개의 패스로 실행되고, 일반적으로 도29의 흐름도에서와 같이 나타난다. 제1패스는 제1패스 정지 상태가 될 때까지 계속된다. 예를 들면, 제1패스 정지 상태는 뱅크에서 15 이하의 값을 갖는 MB가 존재하지 않는 상태일 수 있다. 각 MB가 ±1 픽셀 범위 내에서 검색될 수 있고, 고품질 결과를 위해 범위가 ±4 픽셀로 확장될 수 있다.
15 이하의 값을 갖는 MB가 존재하지 않는 상기 예에서, 제1패스 정지 상태가 발생하면, 제2패스가 시작된다. 제2패스에서, L1 임계치가 현재 (10-15)로 약간 증가되어 있는 USMB의 제2세트(N2)가 전술한 바와 같이 동일한 방식으로 검색된다. USMB의 시작 좌표가 제1패스 이후 페이빙의 포함 범위에 따라 선택된다. 즉, 제2패스에서, (각 USMB에 대해 9개의) 해당 MB가 아직 페이빙되지 않은 USMB만이 선택된다. 시작 좌표 선택을 위한 제2기준은 어떠한 인접 USMB가 선택되지 않는다는 것이다. 따라서, 바람직한 실시예에서, 제2USMB 세트의 시작 좌표가 선택되는 방법이 다음과 같은 방식을 이용하는 것을 포함한다.
최대 해상도에서 각 페이빙된 MB (16x16)이 DS4(4 다운샘플 또는 1/16 해상도)에서 하나 이상의 6x6 SMB과 결합된다. 결과적으로, 이들 SMB가 제2라운드 검색(N2)을 위한 가능한 후보 세트로부터 배제된다. 실제로, (페이빙된) MB가 최대 해상도 레벨에서 (DS4로부터의) SMB의 초기 세트의 하나 이상의 프로젝션에 부분적으로 포함되는지 여부를 점검함으로써 결합 동작이 최대 해상도 레벨에서 행해진다.
DS4에서 각 6x6 SMB가 최대 해상도 레벨에서 24x24 블록에 프로젝션된다. 따라서, MB의 정점들중 적어도 하나가 소정의 SMB의 프로젝션 내에 엄밀히 포함되면 MB와 SMB 사이의 결합을 정의할 수 있다. 도28은 주변 SMB들 주위에서 서로 다른 방식으로 MB가 프로젝션되는 4개의 변별 결합 가능성을 설명한다. 이러한 가능성은 다음과 같다.
a) MB의 하나의 정점만이 포함되어 있기 때문에, MB가 하단 좌측(24x24) 블록과 결합된다.
b) MB가 상단 좌우 블록들과 결합된다.
c) MB가 상단 좌측 블록과 결합된다.
d) MB가 4개의 블록 전부와 결합된다.
전술한 절차를 이용하여, 단지 포함되지 않거나 페이빙되지 않은 SMB 후보가 N2로 나타낸 세트에 대해 선택된다. 이후, 선택이 N2에 적용되며, 여기서, 단지 완전히 격리된 SMB들, 즉, 다른 것들과 공통 에지를 갖지 않는 SMB들이 N2에서 잔류되도록 허용한다.
이후, 바람직하게도, 25 또는 30 이하의 L1값을 갖는 어떠한 MB가 세트에서 존재하지 않는 경우에 상응하는 정지 상태가 제2페이빙 동작에 대해 설정된다.
이후, 제2페이빙 동작이 실행된다. 정지 상태가 도달할 때까지, 제3페이빙 동작이 4 다운샘플링되는 LRF에서 6x6 SMB를 이용하여 시작된다. 다시, 2개의 픽셀 스킵이 실행되고(즉, 검색이 단지 짝수의 픽셀에 제한됨), 동일한 검색 범위가 이용된다. 결과적으로, 이전 2개의 페이빙 패스의 (4-12) 패턴의 경우와 같이, 보다 작은 시작 영역을 포함할 수 있다. 제3검색을 위한 SMB 개수는 11개까지 존재한다. 이후, SMB가 ±6 픽셀 범위 내에서 최대 해상도(4-16 패턴)에서 (갱신된 MV에 따라) 다시 정합된다.
풀 프레임이 포함될 때까지 매번 세트에서 최상의 MB를 이용하여 MB 페이빙을 계속한다.
페이빙 동작의 횟수는 소망의 출력 품질에 따라 변경될 수 있어 가변적이다. 따라서, 풀 프레임이 포함될 때까지 페이빙이 계속되는 전술한 절차가 고품질, 예를 들면, 방송 품질에 이용될 수 있다. 하지만, 절차가 보다 낮은 처리 부하에 대한 응답으로 보다 낮은 품질 출력을 제공하기 위해 초기 단계에서 정지될 수 있다.
선택적으로, 정지 상태는 처리 부하 및 출력 품질 사이의 상이한 밸런스를 제공하기 위해서 변경될 수 있다.
B 프레임에 대한 움직임 추정
다음에, 상기 실시예가 B-프레임 움직임 추정에 적용되는 애플리케이션이 설명된다.
B 프레임은 비디오 스크림의 일부인 프레임 시퀀스에서 양방향으로 인터폴레이션된다.
B 프레임 움직임 추정은 다음과 같은 방식으로 전술한 페이빙 전략에 기초한다.
변별이 두 유형의 움직임 추정 사이에서 이루어질 수 있다.
1. 글로벌 움직임 추정: I 프레임에서 P 프레임으로 움직임 추정, 또는 P 프레임에서 I 프레임으로의 움직임 추정, 및
2. 로컬 움직임 추정: I 프레임에서 B 프레임으로 움직임 추정, 또는 B 프레임에서 P 프레임으로의 움직임 추정
B 프레임 움직임 추정을 위한 전술한 페이빙 방법을 이용한 특별한 장점은 2개의 인접 프레임에서 이동하는 바와 같이 각 개별 매크로블록에서의 검색을 실행하는 종래의 방법과 대조적으로, 비인접 프레임 사이에서의 매크로블록을 추적할 수 있다는 것이다.
프레임이 일시적으로 더 많이 떨어질 수 있기 때문에, 글로벌 움직임 추정에서의 프레임 쌍 사이의 거리(즉, 통계적으로 표현되는 차)는 로컬 움직임 추정에서의 프레임 쌍 사이의 거리보다 명백하게 더 길다.
예시적인 방식에 의해 다음과 같은 시퀀스는 I B B P B B P B B P B B P이다.
글로벌 움직임 추정은 3개의 프레임이 떨어져 있는 프레임 쌍 I, P 및 P, P에 대해 이용되는 반면, 로컬 움직임 추정은 1 또는 2개의 프레임이 떨어져 있는 프레임 쌍 I, B 및 B, P에 대해 이용된다. 증가된 차 레벨은 로컬 움직임 추정보다 글로벌 움직임 추정을 실행할 때 더 활발한 노력을 수반한다. 대조적으로, 로컬 움직임 추정은 예를 들면, 시작점으로서 제공하는 글로벌 움직임 추정 결과를 탐구할 수 있다.
이제, B 프레임에 대한 로컬 ME를 실행하기 위한 절차가 설명된다. 절차는 하기에서 설명되는 바와 같이 4개의 단계를 포함하고, 시작점을 제공하도록 글로벌 움직임 추정으로부터 획득된 결과를 이용한다.
단계 1:
상기 실시예에 따르면, 초기 페이빙 피벗 매크로블록이 다음과 같은 2개의방법의 어느 하나를 이용하여 확인된다. 즉,
a) 이전 글로벌 움직임 추정에서 I -> P 페이빙에 대한 초기 세트로서 이용된 매크로블록을 선택하는 방법, 또는
b) I -> P 프레임 쌍으로부터 이미 페이빙된 매크로블록으로부터 최상 SAD값을 갖는 일정하게 분배된 매크로블록을 선택하는 방법을 이용한다.
예를 들면, "I B1 B2 P" 시퀀스에서 2개의 B 프레임에 대해, 움직임 추정이 다음과 같은 프레임 쌍에 대해 실행될 수 있다.
I->B1, I->B2 및 B1->P, B2->P.
움직임 추정이 초기 페이빙 피벗 주위에서 페이빙을 이용하여 실행되고, 페이빙 피벗에 대한 움직임 벡터가 다음과 같은 공식을 이용하여 I->P 프레임의 매크로블록의 움직임 벡터로부터 인터폴레이션된다 (서로 상이한 시퀀스에 대해 용이하게 변형될 수 있도록 상기 인터폴레이션이 IBBP 시퀀스에 대해 주어진다).
I->P 움직임 벡터가 {x,y}인 매크로블록에 대해, 인터폴레이션된 움직임 벡터는:
I->B1: {x1,y1} = {1/3x,1/3y}
I->B2: {x2,y2} = {2/3x,2/3y}
B1->P: {x3,y3} = {-2/3x,-2/3y}
B2->P: {x4,y4} = {-1/3x,-1/3y}이다.
인터폴레이션된 움직임 벡터는 ±2 픽셀의 범위에서 직접적인 검색을 이용하여 더 순화된다.
단계 2:
이제, 페이빙 피벗이 데이터 세트 S에 추가되고, SAD (또는 L1 표준)값에 따라 분류된다.
모든 단계에서, SAD가 S에서 최저값인 소스 MB의 페이빙되지 않은 이웃이 판단된다.
이 과정에서, 소스 MB의 움직임 벡터 주위의 ±N 범위에서 각 이웃이 검색된다.
이때, 정합 임계치가 값 T1, 예를 들면, 픽셀당 15로 설정된다.
결과의 SAD가 임계치보다 낮으면, MB가 페이빙된 것으로 표기되고, 전술한 바와 같은 세트 S에 추가된다.
S가 모두 검색되고, 검색할 피벗 MB이 존재하지 않을 때까지, 즉, 전체 프레임이 페이빙되거나 또는 피벗의 모든 이웃들이 정합되거나 또는 부정합된 것으로 확인될 때까지 절차가 계속된다.
단계 3:
프레임에서 매크로블록의 페이빙되지 않은 영역이 존재하면, 피벗 매크로블록의 제2세트가 잔류되어 있는 페이빙되지 않은 홀 내부에서 획득된다.
바람직하게도, 피벗 매크로블록이 다음과 같은 상태에 따라 선택된다.
a) 매크로블록중 임의의 2개의 쌍이 공통 에지를 갖지 않을 수 있고,
b) 바람직하게도, 매크로블록의 총수가 사전 정의된 비교적 작은 수 N2로 제한된다.
검색이 전술한 바와 같이 인터폴레이션된 움직임 벡터 주위에서 N 픽셀 범위에 대해 실행된다.
바람직하게도, 상기 단계 2에서와 같이, 매크로블록이 데이터 세트 S에 추가되어, 분류된다.
상기 단계 2에서와 같이, 페이빙이 실행된다. 페이빙 SAD 임계치가 전술한 바와 같이 신규값 T2로 증가된다.
S가 완전히 검색될 때까지 절차가 계속된다.
페이빙되지 않은 매크로블록 개수가 N 퍼센트를 초과하지 않은 한 상기 단계 3이 반복된다. 정합 임계치가 무한대로 증가된다.
상기 단계들이 완료된 후에 페이빙되지 않고 남아있는 매크로블록이 4 단계 검색과 같은 임의의 표준 방법을 이용하여 검색될 수 있거나, 산술 부호화를 위해 남아있을 수 있다.
단계 4:
이전 단계에서의 페이빙이 완료되었다면, 모든 B 프레임에 대해 2개의 페이빙된 참조 프레임이 존재한다.
B에서 모든 매크로블록에 대해, MPEG 표준에 따라 선택이 다음과 같은 항목 사이에서 이루어진다.
1. 매크로블록을 프레임 I로부터의 해당 매크로블록으로 교체하고,
2. 매크로블록을 프레임 P로부터의 해당 매크로블록으로 교체하고,
3. 매크로블록을 프레임 I 및 P로부터의 해당 매크로블록의 평균으로 교체하고,
4. 매크로블록을 교체하지 않는다.
바람직하게도, 선택할 옵션 1 내지 4중 어느 것에 관한 결정은 정합값의 편차, 즉, 정합 기준, 예를 들면, 초기 정합이 기초한 SEM 미터법, L1 미터법 등에 의해 달성된 값에 종속한다.
최종 실시예는 필요한 최종 화질 및 가용 처리 자원에 따라 스케일러블 움직임 벡터를 제공하는 방법을 제공한다.
검색이 프레임에 위치된 피벗 포인트에 기초한다는 것을 주목하여야 한다. 검색 복잡도는 전형적인 선행 기술의 전수 검색의 경우에서와 같이 프레임 크기에 따라 증가하지 않는다. 전형적으로, 프레임의 적절한 결과가 4개의 초기 피벗 포인트를 이용하여 획득될 수 있다. 또한, 다수의 피벗 포인트가 이용되기 때문에, 소정 픽셀이 하나의 피벗 포인트로부터의 검색에 의해 이웃으로서 거절될 수 있지만, 다른 피벗 포인트로부터의 검색 및 상이한 방향으로부터의 접근에 의한 이웃으로서 검출될 수 있다.
실시예의 하나 또는 일부 관점에서만 설명된 특징이 다른 실시예에 적용가능하고, 모든 가능한 조합을 상세하게 설명할 수 없음을 이해할 것이다. 그럼에도 불구하고, 상기 설명의 범위가 상기 설명된 특징의 모든 적절한 조합으로 확대한다.
본 발명은 단지 예시적인 방식에 의해 주어진 전술한 실시예에 의해 제한되지 않는다. 오히려, 본 발명은 첨부된 청구범위에 의해 정의된다.

Claims (101)

  1. 비디오 프레임에서 움직임을 판단하기 위한 장치에 있어서,
    상기 비디오 프레임중 제1프레임 및 제2프레임 사이의 특징형상을 추적하여 상기 특징형상의 움직임 벡터를 판단하기 위한 움직임 추정기; 및
    상기 움직임 추정기와 연관되어 있고, 제1특징형상과 이웃하고 상기 제1특징형상과 함께 이동하는 다른 특징형상에 상기 움직임 벡터를 적용하기 위한 이웃 특징형상 움직임 할당기(neighboring feature motion assignor)를 포함하는 것을 특징으로 하는 장치.
  2. 제 1 항에 있어서, 상기 특징형상 추적은 상기 제1 및 제2프레임의 픽셀 블록 정합을 포함하는 것을 특징으로 하는 장치.
  3. 제 2 항에 있어서, 상기 움직임 추정기가 동작하여 초기에 상기 제1프레임에서 소정의 픽셀 소그룹을 선택하고, 상기 그룹간 움직임을 판단하기 위해 상기 제2프레임에서 상기 픽셀 그룹을 추적하고, 상기 이웃 특징형상 움직임 할당기가 동작하여 각 픽셀 그룹에 대해서 함께 이동하는 이웃 픽셀 그룹을 식별하는 것을 특징으로 하는 장치.
  4. 제 3 항에 있어서, 상기 이웃 특징형상 할당기가 동작하여 상기 이웃 픽셀그룹을 식별하기 위해 셀룰라 오토머터 기반 기법(cellular automata based techniques)을 이용하고, 움직임 벡터를 상기 픽셀 그룹에 할당하는 것을 특징으로 하는 장치.
  5. 제 3 항에 있어서, 상기 장치가 동작하여 페이빙되는(paved) 바와 같이 움직임을 할당받은 모든 픽셀 그룹을 표기하고, 이웃들을 추적 및 확인하기 위해 픽셀 그룹을 더 선택함으로써 미표기 픽셀 그룹에 대하여 상기 움직임 추정을 반복하고, 상기 반복 동작은 소정 한계치까지 반복되는 것을 특징으로 하는 장치.
  6. 제 1 항에 있어서, 상기 이웃 특징형상 움직임 할당기와 연관되어 있고, 상기 특징형상의 유의 레벨(significance level)을 추정하여 단지 상기 유의 레벨이 소정 임계 레벨을 초과하면, 상기 움직임 벡터를 상기 이웃 특징형상에 적용하도록 상기 이웃 특징형상 움직임 할당기를 제어하기 위한 특징형상 유의성 추정기를 더 포함하는 것을 특징으로 하는 장치.
  7. 제 6 항에 있어서, 상기 장치가 동작하여 페이빙되는 바와 같이 움직임을 할당받은 프레임에서 모든 픽셀 그룹을 표기하고 - 상기 표기는 정합의 임계 레벨에 따라 소정의 한계치까지 반복됨 -, 미표기된 이웃을 추적 및 확인하기 위해 픽셀 그룹을 더 선택함으로써 페이빙되지 않은(unpaved) 픽셀 그룹에 대한 상기 움직임 추정을 반복하고, 상기 임계 레벨이 유지되거나 매 반복시 감소되는 것을 특징으로하는 장치.
  8. 제 6 항에 있어서, 상기 특징형상 유의성 추정기는 검색창을 통해 후속 프레임에서의 상기 특징형상의 최상 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하여 판단 결과에 따라 배경 또는 이웃과 구분되는 특징형상을 배제시키기 위한 정합 비율 판별기를 포함하는 것을 특징으로 하는 장치.
  9. 제 6 항에 있어서, 상기 특징형상 유의성 추정기는 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 최대 변별성의 존재를 판단하기 위한 수치적인 근사화기를 포함하는 것을 특징으로 하는 장치.
  10. 제 6 항에 있어서, 상기 특징형상 유의성 추정기는 상기 특징형상 식별기 전단에 연결되어 있고, 에지 검출 변형을 실행하기 위한 에지 검출기를 포함하고, 상기 특징형상 식별기는 비교적 높은 에지 검출 에너지를 갖는 특징형상에 특징형상 식별을 제한하기 위해 상기 특징형상 유의성 추정기에 의해 제어 가능한 것을 특징으로 하는 장치.
  11. 제 1 항에 있어서, 특징형상 식별기 전단에 연결되고, 상기 프레임 내의 픽셀의 합병에 의해 비디오 프레임 해상도를 감소시키기 위한 다운샘플러를 더 포함하는 것을 특징으로 하는 장치.
  12. 제 1 항에 있어서, 특징형상 식별기 전단에 연결되고, 휘도 신호를 분리시키고 휘도 관련 비디오 프레임만을 산출하기 위한 다운샘플러를 더 포함하는 것을 특징으로 하는 장치.
  13. 제 12 항에 있어서, 상기 다운샘플러가 동작하여 상기 휘도 신호에서의 해상도를 감소시키는 것을 특징으로 하는 장치.
  14. 제 1 항에 있어서, 상기 후속 프레임은 연속 프레임인 것을 특징으로 하는 장치.
  15. 제 14 항에 있어서, 상기 프레임은 일련의 I 프레임, B 프레임 및 P 프레임이고, 상기 I 프레임과 상기 P 프레임 사이에서 움직임 추정이 실행되고, 상기 장치는 상기 B 프레임에 대한 움직임 추정으로서 이용하기 위해 상기 움직임 추정의 인터폴레이션을 제공하기 위한 인터폴레이터를 더 포함하는 것을 특징으로 하는 장치.
  16. 제 14 항에 있어서, 상기 프레임은 적어도 일련의 I 프레임, 제1P-프레임 및 제2P-프레임을 포함하고, 상기 I 프레임과 상기 제1P-프레임 사이에서 움직임 추정이 실행되고, 상기 장치는 상기 제2P-프레임에 대한 움직임 추정으로서 이용하기위해 상기 움직임 추정의 엑스트라폴레이션을 제공하기 위한 엑스트라폴레이터를 더 포함하는 것을 특징으로 하는 장치.
  17. 제 1 항에 있어서, 상기 프레임이 블록으로 분할되고, 상기 특징형상 식별기가 동작하여 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 체계적인 선택을 하는 것을 특징으로 하는 장치.
  18. 제 1 항에 있어서, 상기 프레임이 블록으로 분할되고, 상기 특징형상 식별기가 동작하여 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 무작위적인 선택을 하는 것을 특징으로 하는 장치.
  19. 제 1 항에 있어서, 상기 움직임 추정기는 상기 제1프레임에서의 상기 특징형상의 위치 주위의 검색창에서 상기 후속 프레임에서의 상기 특징형상을 검색하기 위한 검색기를 포함하는 것을 특징으로 하는 장치.
  20. 제 19 항에 있어서, 상기 검색창의 크기를 사전설정하기 위한 검색창 프리셋터를 더 포함하는 것을 특징으로 하는 장치.
  21. 제 19 항에 있어서, 상기 프레임이 블록으로 분할되고, 상기 검색기가 상기 특징형상을 포함하는 블록과 상기 검색창에서의 블록 사이에서의 비교를 수행하여,상기 블록 각각의 결합을 위해, 상기 후속 프레임에서의 상기 특징형상을 식별하고 상기 제1프레임과 상기 후속 프레임 사이에서의 상기 특징형상의 움직임 벡터를 판단하기 위한 비교기를 포함하는 것을 특징으로 하는 장치.
  22. 제 21 항에 있어서, 상기 비교는 샘블런스 거리 비교인 것을 특징으로 하는 장치.
  23. 제 22 항에 있어서, 상기 비교 이전에 각 블록으로부터 평균 휘도값을 감산하기 위한 DC 교정기를 더 포함하는 것을 특징으로 하는 장치.
  24. 제 21 항에 있어서, 상기 비교는 비선형 최적화를 포함하는 것을 특징으로 하는 장치.
  25. 제 24 항에 있어서, 상기 비선형 최적화는 "Nelder-Mead Simplex" 기법을 포함하는 것을 특징으로 하는 장치.
  26. 제 21 항에 있어서, 상기 비교는 L1 및 L2 표준중 적어도 하나의 이용을 포함하는 것을 특징으로 하는 장치.
  27. 제 21 항에 있어서, 상기 특징형상이 유의 특징형상인지를 판단하기 위한 특징형상 유의성 추정기를 더 포함하는 것을 특징으로 하는 장치.
  28. 제 27 항에 있어서, 상기 특징형상 유의성 추정기는 검색창을 통해 상기 후속 프레임에서의 상기 특징형상의 최대 근접 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하여 배경 또는 이웃과 구별되는 특징형상을 배제시키기 위한 정합 비율 판별기를 포함하는 것을 특징으로 하는 장치.
  29. 제 28 항에 있어서, 상기 특징형상 유의성 추정기는 상기 특징형상이 유의 특징형상인지를 판단하기 위해 소정 임계치에 대한 상기 비율을 비교하기 위한 쓰레스홀더(thresholder)를 더 포함하는 것을 특징으로 하는 장치.
  30. 제 27 항에 있어서, 상기 특징형상 유의성 추정기는 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 최대 변별성을 확인하기 위한 수치적인 근사화기를 포함하는 것을 특징으로 하는 장치.
  31. 제 27 항에 있어서, 상기 특징형상 유의성 추정기는 상기 특징형상 식별기 전단에 연결되어 있고, 상기 장치는 에지 검출 변형을 실행하기 위한 에지 검출기를 더 포함하고, 상기 특징형상 식별기는 비교적 높은 에지 검출 에너지를 갖는 검출 영역에 특징형상 식별을 제한하기 위해 상기 특징형상 유의성 추정기에 의해 제어가능한 것을 특징으로 하는 장치.
  32. 제 27 항에 있어서, 상기 이웃 특징형상 움직임 할당기가 동작하여 상기 움직임 벡터를 상기 움직임 벡터가 판단된 저해상도에 상응하는 상기 프레임의 각 고해상도 블록에 적용하는 것을 특징으로 하는 장치.
  33. 제 27 항에 있어서, 상기 이웃 특징형상 움직임 할당기가 동작하여 상기 움직임 벡터를 상기 움직임 벡터가 판단된 저해상도에 상응하는 상기 프레임의 각 최대 해상도 블록에 적용하는 것을 특징으로 하는 장치.
  34. 제 32 항에 있어서, 상기 장치는 상기 후속 프레임의 고해상도 버전에서 특징형상 정합을 실행하여 상기 고해상도 블록 각각에서 상기 움직임 벡터를 순화시키기 위해 동작하는 움직임 벡터 순화기를 포함하는 것을 특징으로 하는 장치.
  35. 제 33 항에 있어서, 상기 장치는 상기 후속 프레임의 고해상도 버전에서 특징형상 정합을 실행하여 상기 최대 해상도 블록 각각에서 상기 움직임 벡터를 순화시키기 위해 동작하는 움직임 벡터 순화기를 포함하는 것을 특징으로 하는 장치.
  36. 제 34 항에 있어서, 상기 움직임 벡터 순화기는 고해상도 블록과 정합하는 특징형상의 인접 블록에서의 추가적인 특징형상 정합 동작을 실행하여 상기 해당 움직임 벡터를 더 순화시키기 위해 동작하는 것을 특징으로 하는 장치.
  37. 제 35 항에 있어서, 상기 움직임 벡터 순화기는 최대 해상도 블록과 정합하는 특징형상의 인접 블록에서의 추가적인 특징형상 정합 동작을 실행하여 상기 해당 움직임 벡터를 더 순화시키기 위해 동작하는 것을 특징으로 하는 장치.
  38. 제 36 항에 있어서, 상기 움직임 벡터 순화기는 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 평균을 고해상도 블록에 할당하기 위해 동작하는 것을 특징으로 하는 장치.
  39. 제 37 항에 있어서, 상기 움직임 벡터 순화기는 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 최대 해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 평균을 최대 해상도 블록에 할당하기 위해 동작하는 것을 특징으로 하는 장치.
  40. 제 36 항에 있어서, 상기 움직임 벡터 순화기는 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 규칙에 의해 결정된 변형을 고해상도 블록에 할당하기 위해 동작하는 것을 특징으로 하는 장치.
  41. 제 37 항에 있어서, 상기 움직임 벡터 순화기는 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 최대 해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 규칙에 의해 결정된 변형을 최대 고해상도 블록에 할당하기 위해 동작하는 것을 특징으로 하는 장치.
  42. 제 36 항에 있어서, 상기 블록의 각 움직임 벡터에 따라 양자화 레벨을 각 고해상도 블록에 할당하기 위한 블록 양자화 레벨 할당기를 더 포함하는 것을 특징으로 하는 장치.
  43. 제 1 항에 있어서, 상기 프레임은 블록으로 정렬가능하고, 상기 장치는 상기 특징형상 검출기 전단에 연결된 감산기를 더 포함하고, 상기 감산기는,
    각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 상기 후속 프레임에서의 해당 픽셀의 휘도 레벨의 픽셀방식 감산을 위한 픽셀 감산기; 및
    소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정에서 제거하기 위한 블록 감산기를 포함하는 것을 특징으로 하는 장치.
  44. 제 1 항에 있어서, 상기 특징형상 식별기는 블록에서의 상기 특징형상을 검사함으로써 특징형상을 검색하기 위해 동작하는 것을 특징으로 하는 장치.
  45. 제 44 항에 있어서, 상기 블록은 MPEG 및 JVT 표준중 적어도 하나에 따라 픽셀 크기를 갖는 것을 특징으로 하는 장치.
  46. 제 45 항에 있어서, 상기 블록은 8x8, 16x8, 8x16 및 16x16을 포함하는 그룹 크기중 어느 하나를 갖는 것을 특징으로 하는 장치.
  47. 제 44 항에 있어서, 상기 블록은 8x8보다 작은 픽셀 크기를 갖는 것을 특징으로 하는 장치.
  48. 제 47 항에 있어서, 상기 블록은 7x6보다 크지 않은 픽셀 크기를 갖는 것을 특징으로 하는 장치.
  49. 제 47 항에 있어서, 상기 블록은 6x6보다 크지 않은 픽셀 크기를 갖는 것을 특징으로 하는 장치.
  50. 제 1 항에 있어서, 상기 움직임 추정기 및 상기 이웃 특징형상 움직임 할당기는 각 프레임의 연속적으로 증가하는 해상도에서 검색 및 할당하기 위해 해상도 레벨 변화기를 이용하여 동작하는 것을 특징으로 하는 장치.
  51. 제 50 항에 있어서, 상기 연속적으로 증가하는 해상도는 각각 실질적으로 1/64, 1/32. 1/16, 1/8, 1/4, 1/2 및 최대 해상도중 적어도 일부인 것을 특징으로 하는 장치.
  52. 비디오 움직임 추정용 장치에 있어서,
    제1프레임 및 제2프레임의 저해상도 버전 사이의 비전수 검색(non exhaustive search)을 각각 수행하기 위한 비전수 검색기를 포함하고, 상기 비전수 검색은 상기 프레임에서 지속적인 적어도 하나의 특징형상을 확인하고, 상기 프레임 사이에서 상기 특징형상의 상대적인 움직임을 판단하는 것을 특징으로 하는 장치.
  53. 제 52 항에 있어서, 상기 비전수 검색기가 동작하여 상기 비디오 프레임의 연속적으로 증가하는 해상도 버전에서 상기 검색을 반복하는 것을 특징으로 하는 장치.
  54. 제 52 항에 있어서, 상기 지속적인 특징형상과 이동하는 상기 지속적인 특징형상의 이웃 특징형상을 식별하고, 상기 이웃 특징형상에 상기 지속적인 특징형상의 상기 상대적인 움직임을 적용하기 위한 이웃 특징형상 식별기를 더 포함하는 것을 특징으로 하는 장치.
  55. 제 52 항에 있어서, 각 프레임에서의 상기 지속적인 특징형상과, 상기 제1프레임에서의 상기 지속적인 특징형상과 상기 제2프레임에서의 윈도우 포인트 사이의 정합 평균을 비교하여, 상기 특징형상과 상기 움직임 추정에서의 해당 상대적인 움직임을 이용할 것인지 또는 상기 특징형상을 거절할 것인지에 관한 결정을 지원하기 위해 상기 정합의 우수성을 표현하는 양을 제공하기 위한 특징형상 품질 추정기를 더 포함하는 것을 특징으로 하는 장치.
  56. 움직임 추정을 위한 픽셀 블록에 정렬된 비디오 프레임을 전처리하기 위한 비디오 프레임 감산기에 있어서,
    각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 비디오 시퀀스의 후속 프레임에서의 해당 픽셀들의 휘도 레벨의 픽셀방식 감산을 위한 픽셀 감산기; 및
    소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정으로부터 제거하기 위한 블록 감산기를 포함하는 것을 특징으로 하는 비디오 프레임 감산기.
  57. 제 56 항에 있어서, 상기 전체 픽셀차 레벨은 상기 블록에서 최대 픽셀차값인 것을 특징으로 하는 비디오 프레임 감산기.
  58. 제 56 항에 있어서, 상기 전반전인 픽셀차 레벨은 상기 블록에서의 픽셀차 레벨의 합인 것인 것을 특징으로 하는 비디오 프레임 감산기.
  59. 제 57 항에 있어서, 상기 소정 임계치는 실질적으로 제로인 것을 특징으로 하는 비디오 프레임 감산기.
  60. 제 58 항에 있어서, 상기 소정 임계치는 실질적으로 제로인 것을 특징으로 하는 비디오 프레임 감산기.
  61. 제 56 항에 있어서, 상기 매크로블록의 상기 소정 임계치는 실질적으로 움직임 추정에 대한 양자화 레벨인 것을 특징으로 하는 비디오 프레임 감산기.
  62. 블록에 정렬된 비디오 프레임에 양자화 레벨을 제공하기 위한 포스트-모션 추정 비디오 양자화기에 있어서,
    각 블록은 움직임 데이터와 연관되어 있고, 상기 양자화기는 상기 블록 내의 세부 레벨을 각 블록에 대해 설정하기 위한 양자화 계수를 선택하기 위한 양자화 계수 할당기를 포함하고, 상기 선택은 상기 연관된 움직임 데이터에 종속하는 것을 특징으로 하는 양자화기.
  63. 비디오 프레임에서 움직임을 판단하기 위한 방법에 있어서,
    비디오 시퀀스의 후속 프레임에서의 특징형상을 정합시키기 위한 단계;
    상기 비디오 프레임중 제1프레임 및 제2프레임의 특징형상 사이에서의 상대적인 움직임을 판단하는 단계; 및
    상기 특징형상과 함께 이동하는 상기 특징형상을 포함하는 상기 블록에 이웃하는 블록에 상기 판단된 상대적인 움직임을 적용하는 단계를 포함하는 것을 특징으로 하는 방법.
  64. 제 63 항에 있어서,
    상기 특징형상이 유의 특징형상인지를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  65. 제 64 항에 있어서, 상기 특징형상이 유의 형상인지를 판단하는 단계는 검색창을 통해 상기 후속 프레임에서의 상기 특징형상의 최대 근접 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
  66. 제 65 항에 있어서, 소정 임계치에 대한 상기 비율을 비교하여 상기 특징형상이 유의 특징형상인지를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  67. 제 64 항에 있어서, 상기 방법은 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 변별성 레벨을 산출하는 단계를 포함하는 것을 특징으로 하는 방법.
  68. 제 64 항에 있어서, 상기 방법은 에지 검출 변형을 실행하고, 보다 높은 에지 검출 에너지를 갖는 블록에 특징형상 식별을 제한하는 단계를 포함하는 것을 특징으로 하는 방법.
  69. 제 63 항에 있어서, 상기 프레임 내의 픽셀의 합병에 의해 비디오 프레임 해상도를 감소시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  70. 제 63 항에 있어서, 휘도 신호를 분리시키고 휘도 관련 비디오 프레임만을 산출하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  71. 제 70 항에 있어서, 상기 휘도 신호에서의 해상도를 감소시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  72. 제 63 항에 있어서, 상기 후속 프레임은 연속 프레임인 것을 특징으로 하는 장치.
  73. 제 63 항에 있어서, 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 체계적인 선택을 하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  74. 제 63 항에 있어서, 특징형상을 식별하기 위해 상기 제1프레임 내에서 블록의 무작위적인 선택을 하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  75. 제 63 항에 있어서, 상기 제1프레임에서의 상기 특징형상의 위치 주위의 검색창에서 상기 후속 프레임에서의 블록의 상기 특징형상을 검색하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  76. 제 75 항에 있어서, 상기 검색창의 크기를 사전설정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  77. 제 75 항에 있어서, 상기 특징형상을 포함하는 블록과 상기 검색창에서의 블록 사이에서의 비교를 수행하여, 상기 블록과 결합될, 상기 후속 프레임에서의 상기 특징형상을 식별하고 상기 특징형상의 움직임 벡터를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  78. 제 77 항에 있어서, 상기 비교는 샘블런스 거리 비교인 것을 특징으로 하는 방법.
  79. 제 78 항에 있어서, 상기 비교 이전에 각 블록으로부터 평균 휘도값을 감산하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  80. 제 77 항에 있어서, 상기 비교는 비선형 최적화를 포함하는 것을 특징으로 하는 방법.
  81. 제 80 항에 있어서, 상기 비선형 최적화는 "Nelder-Mead Simplex" 기법을 포함하는 것을 특징으로 하는 방법.
  82. 제 77 항에 있어서, 상기 비교는 L1 및 L2 표준을 포함하는 그룹에서 적어도 하나의 이용을 포함하는 것을 특징으로 하는 방법.
  83. 제 77 항에 있어서, 상기 특징형상이 유의 특징형상인지를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  84. 제 83 항에 있어서, 상기 특징형상 유의성 판단 단계는 검색창을 통해 상기 후속 프레임에서의 상기 특징형상의 최대 근접 정합과 상기 특징형상의 평균 정합 레벨 사이의 비율을 판단하는 단계를 포함하는 것을 특징으로 하는 방법.
  85. 제 84 항에 있어서, 상기 특징형상이 유의 특징형상인지를 판단하기 위해 소정 임계치에 대한 상기 비율을 비교하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  86. 제 83 항에 있어서, 상기 정합 위치에서 미스핏(misfit) 함수의 Hessian 행렬을 근사화하여 변별성 레벨을 산출하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  87. 제 83 항에 있어서, 상기 방법은 에지 검출 변형을 실행하고, 보다 높은 에지 검출 에너지를 갖는 검출 영역에 특징형상 식별을 제한하는 단계를 포함하는 것을 특징으로 하는 방법.
  88. 제 83 항에 있어서, 상기 움직임 벡터가 판단된 저해상도에 상응하는 상기 프레임의 각 고해상도 블록에 상기 움직임 벡터를 적용하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  89. 제 88 항에 있어서, 상기 방법은 상기 후속 프레임의 고해상도 버전에서 특징형상 정합을 실행하여 상기 고해상도 블록 각각에서 상기 움직임 벡터를 순화시키는 단계를 포함하는 것을 특징으로 하는 방법.
  90. 제 89 항에 있어서, 고해상도 블록과 정합하는 특징형상의 인접 블록에서의 추가적인 특징형상 정합 동작을 실행하여 상기 해당 움직임 벡터를 더 순화시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  91. 제 90 항에 있어서, 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 평균을 고해상도 블록에 할당하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  92. 제 90 항에 있어서, 상이한 정합 블록에서 시작된 이전 특징형상 정합 동작으로부터 할당된 상이한 움직임 벡터를 갖는 고해상도 블록을 식별하고, 상기 이전에 할당된 움직임 벡터와 현재 할당된 움직임 벡터의 규칙에 의해 결정된 변형을 고해상도 블록에 할당하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  93. 제 90 항에 있어서, 상기 블록의 각 움직임 벡터에 따라 양자화 레벨을 각 고해상도 블록에 할당하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  94. 제 63 항에 있어서, 각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 상기 후속 프레임에서의 해당 픽셀의 휘도 레벨의 픽셀방식 감산을 수행하는 단계; 및
    소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정에서 제거하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  95. 움직임 추정을 위한 픽셀 블록에 정렬된 비디오 프레임을 전처리하기 위한비디오 프레임 감산 방법에 있어서,
    각 픽셀에 대한 픽셀차 레벨을 제공하기 위해 비디오 시퀀스의 후속 프레임에서의 해당 픽셀들의 휘도 레벨의 픽셀방식 감산을 수행하는 단계; 및
    소정 임계치 아래의 전체 픽셀차 레벨을 갖는 관심 블록을 움직임 추정으로부터 제거하는 단계를 포함하는 것을 특징으로 하는 방법.
  96. 제 95 항에 있어서, 상기 전체 픽셀차 레벨은 상기 블록에서 최대 픽셀차값인 것을 특징으로 하는 방법.
  97. 제 95 항에 있어서, 상기 전반전인 픽셀차 레벨은 상기 블록에서의 픽셀차 레벨의 합인 것인 것을 특징으로 하는 방법.
  98. 제 96 항에 있어서, 상기 소정 임계치는 실질적으로 제로인 것을 특징으로 하는 방법.
  99. 제 97 항에 있어서, 상기 소정 임계치는 실질적으로 제로인 것을 특징으로 하는 방법.
  100. 제 95 항에 있어서, 상기 매크로블록의 상기 소정 임계치는 실질적으로 움직임 추정에 대한 양자화 레벨인 것을 특징으로 하는 방법.
  101. 블록에 정렬된 비디오 프레임에 양자화 레벨을 제공하기 위한 포스트-모션 추정 비디오 양자화 방법에 있어서,
    각 블록은 움직임 데이터와 연관되어 있고, 상기 방법은 상기 블록 내의 세부 레벨을 각 블록에 대해 설정하기 위한 양자화 계수를 선택하는 단계를 포함하고, 상기 선택은 상기 연관된 움직임 데이터에 종속하는 것을 특징으로 하는 방법.
KR10-2004-7000008A 2001-07-02 2002-07-02 비디오 프레임간 움직임 추정용 방법 및 장치 KR20040028911A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30180401P 2001-07-02 2001-07-02
US60/301,804 2001-07-02
PCT/IL2002/000541 WO2003005696A2 (en) 2001-07-02 2002-07-02 Method and apparatus for motion estimation between video frames

Publications (1)

Publication Number Publication Date
KR20040028911A true KR20040028911A (ko) 2004-04-03

Family

ID=23164957

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7000008A KR20040028911A (ko) 2001-07-02 2002-07-02 비디오 프레임간 움직임 추정용 방법 및 장치

Country Status (9)

Country Link
US (1) US20030189980A1 (ko)
EP (1) EP1419650A4 (ko)
JP (1) JP2005520361A (ko)
KR (1) KR20040028911A (ko)
CN (1) CN1625900A (ko)
AU (1) AU2002345339A1 (ko)
IL (1) IL159675A0 (ko)
TW (1) TW200401569A (ko)
WO (1) WO2003005696A2 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101280225B1 (ko) * 2006-09-20 2013-07-05 에스케이플래닛 주식회사 자세추적을 이용하여 프로그램을 진행하는 로봇 및 그 방법
KR101309562B1 (ko) * 2006-10-25 2013-09-17 에스케이플래닛 주식회사 사용자의 행동을 판단하여 몸을 움직여 감정을 표현하는로봇 및 그 방법
KR101451137B1 (ko) * 2010-04-13 2014-10-15 삼성테크윈 주식회사 손떨림 검출 장치 및 방법
KR102395165B1 (ko) * 2021-10-29 2022-05-09 주식회사 딥노이드 X-ray 영상의 예외 프레임 분류 장치 및 방법

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9042445B2 (en) * 2001-09-24 2015-05-26 Broadcom Corporation Method for deblocking field-frame video
US7180947B2 (en) * 2003-03-31 2007-02-20 Planning Systems Incorporated Method and apparatus for a dynamic data correction appliance
JP4488805B2 (ja) * 2004-06-25 2010-06-23 パナソニック株式会社 動きベクトル検出装置および方法
US20060230428A1 (en) * 2005-04-11 2006-10-12 Rob Craig Multi-player video game system
US9061206B2 (en) * 2005-07-08 2015-06-23 Activevideo Networks, Inc. Video game system using pre-generated motion vectors
US8284842B2 (en) * 2005-07-08 2012-10-09 Activevideo Networks, Inc. Video game system using pre-encoded macro-blocks and a reference grid
US8270439B2 (en) * 2005-07-08 2012-09-18 Activevideo Networks, Inc. Video game system using pre-encoded digital audio mixing
US8118676B2 (en) * 2005-07-08 2012-02-21 Activevideo Networks, Inc. Video game system using pre-encoded macro-blocks
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
US20070237237A1 (en) * 2006-04-07 2007-10-11 Microsoft Corporation Gradient slope detection for video compression
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
JP4885690B2 (ja) * 2006-11-28 2012-02-29 株式会社エヌ・ティ・ティ・ドコモ 画像調整量決定装置、画像調整量決定方法、画像調整量決定プログラムおよび画像処理装置
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US9355681B2 (en) 2007-01-12 2016-05-31 Activevideo Networks, Inc. MPEG objects and systems and methods for using MPEG objects
GB2449887A (en) * 2007-06-06 2008-12-10 Tandberg Television Asa Replacement of spurious motion vectors for video compression
DE102007051174B4 (de) * 2007-10-25 2011-12-08 Trident Microsystems (Far East) Ltd. Verfahren zur Bewegungsschätzung in der Bildverarbeitung
DE102007051175B4 (de) * 2007-10-25 2012-01-26 Trident Microsystems (Far East) Ltd. Verfahren zur Bewegungsschätzung in der Bildverarbeitung
US8611423B2 (en) * 2008-02-11 2013-12-17 Csr Technology Inc. Determination of optimal frame types in video encoding
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
JP5149861B2 (ja) * 2009-05-01 2013-02-20 富士フイルム株式会社 中間画像生成装置およびその動作制御方法
US8194862B2 (en) * 2009-07-31 2012-06-05 Activevideo Networks, Inc. Video game system with mixing of independent pre-encoded digital audio bitstreams
KR20110048252A (ko) * 2009-11-02 2011-05-11 삼성전자주식회사 움직임 벡터 공유에 기초한 영상을 변환하는 방법 및 장치
US20110135011A1 (en) * 2009-12-04 2011-06-09 Apple Inc. Adaptive dithering during image processing
CN102136139B (zh) * 2010-01-22 2016-01-27 三星电子株式会社 目标姿态分析装置及其目标姿态分析方法
US9047531B2 (en) 2010-05-21 2015-06-02 Hand Held Products, Inc. Interactive user interface for capturing a document in an image signal
US8600167B2 (en) 2010-05-21 2013-12-03 Hand Held Products, Inc. System for capturing a document in an image signal
JP5866125B2 (ja) 2010-10-14 2016-02-17 アクティブビデオ ネットワークス, インコーポレイテッド ケーブルテレビシステムを使用したビデオ装置間のデジタルビデオストリーミング
CN102123234B (zh) * 2011-03-15 2012-09-05 北京航空航天大学 无人机侦察视频分级运动补偿方法
WO2012138660A2 (en) 2011-04-07 2012-10-11 Activevideo Networks, Inc. Reduction of latency in video distribution networks using adaptive bit rates
WO2012139239A1 (en) * 2011-04-11 2012-10-18 Intel Corporation Techniques for face detection and tracking
US8639040B2 (en) * 2011-08-10 2014-01-28 Alcatel Lucent Method and apparatus for comparing videos
WO2013106390A1 (en) 2012-01-09 2013-07-18 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
CN103248946B (zh) * 2012-02-03 2018-01-30 海尔集团公司 一种视频图像快速传输的方法及系统
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
US10275128B2 (en) 2013-03-15 2019-04-30 Activevideo Networks, Inc. Multiple-mode system and method for providing user selectable video content
WO2014197879A1 (en) 2013-06-06 2014-12-11 Activevideo Networks, Inc. Overlay rendering of user interface onto source video
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
KR101599888B1 (ko) * 2014-05-02 2016-03-04 삼성전자주식회사 적응적 영상 데이터 압축 방법 및 장치
CN105141963B (zh) * 2014-05-27 2018-04-03 上海贝卓智能科技有限公司 图像运动估计方法和装置
US10110846B2 (en) 2016-02-03 2018-10-23 Sharp Laboratories Of America, Inc. Computationally efficient frame rate conversion system
JP6984001B2 (ja) 2017-04-21 2021-12-17 ゼニマックス メディア インク.Zenimax Media Inc. 動きベクトル予測のためのプレイヤ入力の動き補償のためのシステムおよび方法
US11638569B2 (en) 2018-06-08 2023-05-02 Rutgers, The State University Of New Jersey Computer vision systems and methods for real-time needle detection, enhancement and localization in ultrasound
WO2020036968A1 (en) 2018-08-13 2020-02-20 Rutgers, The State University Of New Jersey Computer vision systems and methods for real-time localization of needles in ultrasound images
US11315256B2 (en) * 2018-12-06 2022-04-26 Microsoft Technology Licensing, Llc Detecting motion in video using motion vectors
CN109788297B (zh) * 2019-01-31 2022-10-18 信阳师范学院 一种基于元胞自动机的视频帧率上转换方法
CN113453067B (zh) * 2020-03-27 2023-11-14 富士通株式会社 视频处理装置、视频处理方法和机器可读存储介质
KR102535136B1 (ko) * 2021-08-05 2023-05-26 현대모비스 주식회사 영상정합장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2231749B (en) * 1989-04-27 1993-09-29 Sony Corp Motion dependent video signal processing
US5500904A (en) * 1992-04-22 1996-03-19 Texas Instruments Incorporated System and method for indicating a change between images
TW257924B (en) * 1995-03-18 1995-09-21 Daewoo Electronics Co Ltd Method and apparatus for encoding a video signal using feature point based motion estimation
ES2143759T3 (es) * 1996-04-18 2000-05-16 Nokia Mobile Phones Ltd Codificador y decodificador de datos de video.

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101280225B1 (ko) * 2006-09-20 2013-07-05 에스케이플래닛 주식회사 자세추적을 이용하여 프로그램을 진행하는 로봇 및 그 방법
KR101309562B1 (ko) * 2006-10-25 2013-09-17 에스케이플래닛 주식회사 사용자의 행동을 판단하여 몸을 움직여 감정을 표현하는로봇 및 그 방법
KR101451137B1 (ko) * 2010-04-13 2014-10-15 삼성테크윈 주식회사 손떨림 검출 장치 및 방법
KR102395165B1 (ko) * 2021-10-29 2022-05-09 주식회사 딥노이드 X-ray 영상의 예외 프레임 분류 장치 및 방법

Also Published As

Publication number Publication date
EP1419650A4 (en) 2005-05-25
EP1419650A2 (en) 2004-05-19
WO2003005696A2 (en) 2003-01-16
WO2003005696A3 (en) 2003-10-23
CN1625900A (zh) 2005-06-08
JP2005520361A (ja) 2005-07-07
TW200401569A (en) 2004-01-16
AU2002345339A1 (en) 2003-01-21
US20030189980A1 (en) 2003-10-09
IL159675A0 (en) 2004-06-20

Similar Documents

Publication Publication Date Title
KR20040028911A (ko) 비디오 프레임간 움직임 추정용 방법 및 장치
US8229174B2 (en) Technique for estimating motion and occlusion
US7099392B2 (en) Motion vector searching method using plural search areas
JP4121376B2 (ja) 動き整合のための局所的制約
US6380986B1 (en) Motion vector search method and apparatus
US7142600B1 (en) Occlusion/disocclusion detection using K-means clustering near object boundary with comparison of average motion of clusters to object and background motions
Feng et al. Adaptive block matching motion estimation algorithm using bit-plane matching
JP2004530367A (ja) 動きベクトル予測方法及び動きベクトル予測装置
US20060203912A1 (en) Motion vector detection method, motion vector detection apparatus, computer program for executing motion vector detection process on computer
EP1859627B1 (en) Global motion estimation
US8594199B2 (en) Apparatus and method for motion vector filtering based on local image segmentation and lattice maps
Philip et al. A comparative study of block matching and optical flow motion estimation algorithms
KR100234264B1 (ko) 타겟윈도우 이동을 통한 블록 매칭방법
US20060098886A1 (en) Efficient predictive image parameter estimation
KR100649654B1 (ko) 모션 벡터의 송신 비용 절감을 위한 모션 추정 방법
KR100782800B1 (ko) 움직임 추정 방법
US20100239019A1 (en) Post processing of motion vectors using sad for low bit rate video compression
JP4853199B2 (ja) 画像圧縮方法、装置、電子カメラ、およびプログラム
JPH089379A (ja) 動きベクトル検出方法
Fan et al. Spatiotemporal segmentation based on two-dimensional spatiotemporal entropic thresholding
Feng et al. Adaptive block matching algorithm for video compression
JPH08242454A (ja) グローバル動きパラメタ検出方法
KR100413002B1 (ko) 동영상 부호화기의 확산누적배열을 이용한 블록정합 장치및 그 방법
CN116939224A (zh) 基于笛卡尔积和贝叶斯决策的图像块匹配运动估计算法
Fu et al. Fast global motion estimation based on local motion segmentation

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