KR20120118457A - 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치 - Google Patents

비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치 Download PDF

Info

Publication number
KR20120118457A
KR20120118457A KR1020127013728A KR20127013728A KR20120118457A KR 20120118457 A KR20120118457 A KR 20120118457A KR 1020127013728 A KR1020127013728 A KR 1020127013728A KR 20127013728 A KR20127013728 A KR 20127013728A KR 20120118457 A KR20120118457 A KR 20120118457A
Authority
KR
South Korea
Prior art keywords
template matching
matching prediction
motion vector
image block
standard
Prior art date
Application number
KR1020127013728A
Other languages
English (en)
Other versions
KR101782661B1 (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 KR20120118457A publication Critical patent/KR20120118457A/ko
Application granted granted Critical
Publication of KR101782661B1 publication Critical patent/KR101782661B1/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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/103Selection of coding mode or of prediction mode
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/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/57Motion estimation characterised by a search window with variable size or shape
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/172Methods 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 picture, frame or field
    • 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/182Methods 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 a pixel

Landscapes

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

Abstract

비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치가 제공된다. 인코딩 방법은 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하며(615, 620, 640, 641, 642), 여기서 템플릿 매칭 예측은 이 템플릿 매칭 예측의 복잡도를 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한된다(615, 625, 640).

Description

비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치{METHODS AND APPARATUS FOR REDUCED COMPLEXITY TEMPLATE MATCHING PREDICTION FOR VIDEO ENCODING AND DECODING}
본 출원은 그 전체 내용이 본 명세서에 병합된 2010년 1월 19일에 출원된 미국 특허 가출원 제61/296,329호의 이익을 청구한다.
본 발명의 원리는 일반적으로 비디오 인코딩 및 디코딩에 관한 것이며, 보다 상세하게는 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측(template matching prediction)의 복잡도를 감소시키는 방법 및 장치에 관한 것이다.
현재 비디오 인코더 및 디코더에서는 부화소 움직임 보상(sub-pixel motion compensation)이 널리 사용되고 있다. 예를 들어, ISO/IEC (International Organization for Standardization/International Electrotechnical Commission) MPEG-4(Moving Picture Experts Group-4) Part 10 AVC(Advanced Video Coding) Standard/ITU-T(International Telecommunication Union, Telecommunication Sector) H.264 Recommendation (이하 "MPEG-4 AVC 표준"이라고 언급한다)에서, 최대 1/4 화소 정밀도(quater-pel precision)의 움직임 보상이 사용된다. 이러한 구조는 본 명세서에서 "제 1 종래 기술의 접근법"이라고 언급된다. 도 1을 참조하면, MPEG-4 AVC 표준에 따라 (1/4 화소 벡터에 대해) 4의 지수만큼 프레임을 업샘플링하는 것이 일반적으로 참조 부호 (100)으로 표시되어 있다. 업샘플링은 먼저 1/2 화소(half-pel)의 생성을 위해 6-탭 위너 필터(6-tap Wiener filter)를 적용하고 이후 1/4 화소의 생성을 위해 이중 선형 필터(bilinear filter)를 적용하는 것을 수반한다.
VCEG(Video Coding Experts Group)에 의해 제안된 제 2 종래 기술의 접근법은 에일리어싱 결함(aliasing artifacts)을 가지는 시퀀스에 대한 코딩 효율을 더 개선시키기 위해 1/8 화소(1/8-pel) 보상을 사용하는 것을 수반한다. 고정된 보간 필터를 사용하는 것에 더하여, 에일리어싱, 양자화 및 움직임 추정 에러, 카메라 잡음 등을 더 잘 처리하기 위하여, 적응적 보간 구조들이 고려되고 있다. 적응적 보간 구조는 코딩 효율을 증가시키기 위하여 각 부화소 위치에 대해 진행 중에 보간 필터 계수를 추정한다. 모든 보간 구조들이 복잡하다는 것을 고려해 보면, 단지 몇 개의 부 화소 위치들만이 보간되어야 하는데 대해 디코더에서 모든 참조 프레임을 보간하고 이러한 보간된 프레임을 부화소 정밀도로 저장하는 것은 적절치 않다. 이러한 구조는 디코더에서 메모리 소비량이 많고 계산을 매우 복잡하게 할 수 있다. 디코더에서 진행 중에 움직임 보상을 수행하는 하나의 방법은 MPEG-4 AVC 표준보다 개선된 KTA(Key Technology Area) 소프트웨어에 의해 수행되는 것이다.
템플릿 매칭 예측(TMP: template matching prediction)은 움직임/변위 정보(움직임 벡터, 참조 인덱스, 및 변위 벡터)의 전송을 회피하는 것에 의해 인터 및 인트라 예측에 대한 코딩 효율을 얻는데 사용되는 기술이다. 템플릿 매칭 예측은 비디오 화상에 많은 반복 패턴이 존재한다는 가정에 기초한다. 여기서, 템플릿 매칭 조사(template matching search)는 인접한 픽셀들을 매칭시켜 디코딩된 비디오 화상을 통해 유사한 패턴을 조사한다. 최종 예측은 일반적으로 여러 최상의 매칭을 평균한 것이다. 템플릿 매칭은 인터 및 인트라 예측에서 사용될 수 있다. 그러나, 템플릿 매칭 예측의 단점은 동일한 조사가 인코더 및 디코더에서도 수행되어야 한다는 것이다. 따라서, 템플릿 매칭 예측은 디코더에서 복잡성을 상당히 증가시킬 수 있다.
인터 예측에서 템플릿 매칭 예측
인터 예측(inter prediction)에서 템플릿 매칭 예측은 움직임 벡터를 송신함이 없이 타깃 픽셀을 예측하는 하나의 방법이다. 프레임의 타깃 프레임이 주어져 있을 때, 블록 내 타깃 픽셀은 참조 샘플의 세트로부터 최적의 픽셀을 찾는 것에 의해 결정되며 여기서 최적의 픽셀의 인접한 픽셀들은 타깃 픽셀의 것과 최고 높은 상관성을 가지고 있다. 이 타깃 픽셀의 이들 인접한 픽셀들은 템플릿(template)이라고 불리운다. 종래 기술에서, 이 템플릿은 통상 타깃 픽셀의 재구성된 주변 픽셀들로부터 취해진다. 도 2를 참조하면, 인터 예측에서 템플릿 매칭 예측 구조의 일례가 일반적으로 참조 부호 (200)으로 표시되어 있다. 이 템플릿 매칭 예측 구조(200)는 조사 영역(211), 이 조사 영역(211) 내의 예측 영역(212) 및 이 예측 영역(212)에 대한 이웃 영역(213)을 가지는 재구성된 참조 프레임(210)을 수반한다. 템플릿 매칭 예측 구조(200)는 또한 타깃 블록(251), 이 타깃 블록(251)에 대한 템플릿(252) 및 재구성된 영역(253)을 구비하는 현재 프레임(250)을 수반한다. 인터 예측의 경우에, 템플릿 매칭 공정은 디코더 측에서 움직임 벡터 조사로 볼 수 있다. 여기서, 템플릿 매칭은 전통적인 움직임 추정 기술과 매우 유사하게 수행된다. 즉, 움직임 벡터는 참조 프레임에서 적절히 변위된 템플릿 형상 영역에 대한 비용 함수를 계산하여 평가된다. 템플릿에 대한 최상의 움직임 벡터는 이후 타깃 영역을 예측하는데 사용된다. 재구성 또는 적어도 하나의 예측 신호가 이미 존재하는 이미지의 영역만이 조사를 위해 액세스된다. 따라서, 디코더는 추가적인 보조 정보 없이 템플릿 매칭 공정을 수행하고 타깃 영역을 예측할 수 있다.
템플릿 매칭은 움직임 벡터의 전송 없이 타깃 블록에 있는 픽셀을 예측할 수 있다. 템플릿 매칭 예측의 예측 성능은 타깃 블록과 그 템플릿 사이에 상관성이 높다면 전통적인 블록 매칭 구조의 성능과 유사한 것으로 기대된다. 종래 기술에서, 템플릿은 타깃 픽셀의 재구성된 공간적으로 인접한 픽셀들로부터 취해진다. 인접한 픽셀들은 종종 타깃 픽셀과 낮은 상관성을 가진다. 따라서, 템플릿 매칭 예측의 성능은 전통적인 블록 매칭 구조보다 더 낮을 수 있다.
인트라 예측에서 템플릿 매칭 예측
인트라 예측(intra prediction)에서, 템플릿 매칭은 예측이 타깃 블록과는 먼 픽셀에 의해 생성될 수 있으므로 이용가능한 비-국부(non-local) 예측 접근법들 중 하나이다. 인트라 템플릿 매칭에서 템플릿 정의는 인터 템플릿 매칭의 것과 유사하다. 그러나, 하나의 차이는 조사 범위가 현재 화상의 디코딩된 부분으로 한정된다는 것이다. 도 3을 참조하면, 인트라 예측을 위한 템플릿 매칭 예측 구조의 일례는 일반적으로 참조 부호 (300)으로 표시되어 있다. 템플릿 매칭 예측 구조(300)는 화상(377)의 디코딩된 부분(310)을 수반한다. 화상(377)의 디코딩된 부분(310)은 조사 영역(311), 이 조사 영역(311) 내 후보 예측 영역(312) 및 이 후보 예측 영역(312)에 대하여 인접한 인접 영역(313)을 구비한다. 템플릿 매칭 예측 구조(300)는 화상(377)의 비디코딩된 부분(320)을 또한 수반한다. 화상(377)의 비디코딩된 부분(320)은 타깃 블록(321), 이 타깃 블록(321)에 대한 템플릿(322)을 구비한다. 간략화를 위해, 이하 설명은 인트라 템플릿 매칭에 기초한다. 그러나, 이 기술 분야 및 관련 기술 분야에서 통상의 지식을 가진 자라면 인터 템플릿 매칭으로 용이하게 확장될 수 있다는 것을 이해할 수 있을 것이다.
디코더에서 템플릿 매칭 예측과 관련된 문제는 템플릿 매칭이 디코더에서 조사를 수행할 필요가 있고 아무런 제한을 요구함이 없이 이 조사를 수행해야 하므로, 단지 일부 부화소 위치들만이 보간되어야 함에도 불구하고 디코더에서 모든 참조 프레임에 대해 부화소 보간을 수행하고 이 보간된 프레임을 부화소 정밀도로 저장할 필요가 있다는 것이다. 이것은 예를 들어 디코더에 메모리 및 계산의 복잡성을 포함하는 복잡성을 상당히 부가할 수 있다.
종래 기술의 이들 및 다른 단점 및 불이익은 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡성을 감소시키는 방법 및 장치에 관한 본 발명의 원리에 의해 해결된다.
본 발명의 원리의 일 측면에 따라 장치가 제공된다. 본 장치는 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하는 비디오 인코더를 포함한다. 템플릿 매칭 예측은 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준(constraining criterion)을 사용하여 선택가능하게 제한된다.
본 발명의 원리의 다른 측면에 따라 비디오 인코더에서 방법이 제공된다. 본 방법은 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하는 단계를 포함한다. 템플릿 매칭 예측은 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한된다.
본 발명의 원리의 또 다른 측면에 따라 장치가 제공된다. 본 장치는 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 디코딩하는 비디오 디코더를 포함한다. 템플릿 매칭 예측은 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한된다.
본 발명의 원리의 더 다른 측면에 따라 비디오 디코더에서 방법이 제공된다. 본 방법은 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하는 단계를 포함한다. 템플릿 매칭 예측은 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한된다.
본 발명의 원리의 이들 및 다른 측면, 특징 및 이점은 첨부 도면을 참조하여 설명된 예시적인 실시예의 이하 상세한 설명으로부터 명백하게 될 것이다.
본 발명의 원리는 이하 예시적인 도면에 따라 더 잘 이해될 것이다.
도 1은 MPEG-4 AVC 표준에 따라 (1/4 화소 벡터에 대해) 4의 지수만큼 프레임을 업샘플링하는 것을 도시하는 도면;
도 2는 인터 예측을 위한 템플릿 매칭 예측 구조의 일례를 도시하는 도면;
도 3은 인트라 예측을 위한 템플릿 매칭 예측 구조의 일례를 도시하는 도면;
도 4는 본 발명의 원리의 일 실시예에 따라 본 발명의 원리가 적용될 수 있는 예시적인 비디오 인코더를 도시하는 블록도;
도 5는 본 발명의 원리의 일 실시예에 따라 본 발명의 원리가 적용될 수 있는 예시적인 비디오 디코더를 도시하는 블록도;
도 6은 본 발명의 원리의 일 실시예에 따라 감소된 복잡도의 템플릿 매칭을 사용하여 화상에 대한 이미지 데이터를 인코딩하는 예시적인 방법을 도시하는 흐름도;
도 7은 본 발명의 원리의 일 실시예에 따라 감소된 복잡도의 템플릿 매칭을 사용하여 화상에 대한 이미지 데이터를 디코딩하는 예시적인 방법을 도시하는 흐름도.
본 발명의 원리는 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡성을 감소시키는 방법 및 장치에 관한 것이다.
본 설명은 본 발명의 원리를 예시한다. 따라서, 이 기술 분야에 통상의 지식을 가진 자라면 본 명세서에 명시적으로 기술되거나 도시되지 않았을지라도 본 발명의 원리를 구현하되 본 발명의 사상과 범위 내에 포함되는 여러 배열을 고안할 수 있을 것이라는 것을 이해할 수 있을 것이다.
본 명세서에 언급된 모든 예시와 조건적 언어들은 본 기술을 개발하는데 발명자(들)가 기여한 본 발명의 원리와 개념을 독자들이 이해하는 것을 돕기 위한 설명을 위한 목적으로 의도된 것이므로 이에 따라 그러한 구체적으로 언급된 예시와 조건으로 본 발명을 제한하는 것으로 해석되어서는 아니된다.
나아가, 본 발명의 원리, 측면 및 실시예 뿐만 아니라 특정 예시를 언급하는 모든 진술은 구조적 및 기능적으로 균등한 것을 포함하려는 것으로 의도된 것이다. 부가적으로, 그러한 균등물은 현재 알려진 균등물 뿐만 아니라 미래에 개발될 균등물, 즉 구조에 상관없이 동일한 기능을 수행하는 개발된 임의의 요소를 포함하는 것으로 의도된다.
따라서, 예를 들어, 이 기술 분야에 통상의 지식을 가진 자라면 본 명세서에 제시된 블록도가 본 발명의 원리를 구현하는 예시적인 회로의 개념적인 도식을 제시하는 것임을 이해할 수 있을 것이다. 이와 유사하게, 임의의 흐름도, 흐름 선도, 상태 전이도, 의사코드 등은 컴퓨터나 프로세서가 명시적으로 도시되어 있지 않았을지라도 컴퓨터로 판독가능한 매체에 실질적으로 제공되고 컴퓨터나 프로세서에 의해 수행될 수 있는 여러 공정을 나타낸다는 것을 이해할 수 있을 것이다.
도면에 도시된 여러 요소의 기능은 적절한 소프트웨어와 연관되어 소프트웨어를 실행할 수 있는 하드웨어뿐만 아니라 전용 하드웨어의 사용을 통해 제공될 수 있다. 프로세서에 의해 제공될 때, 그 기능은 단일 전용 프로세서에 의해, 단일 공유 프로세서에 의해, 또는 일부가 공유될 수 있는 복수의 개별 프로세서에 의해 제공될 수 있다. 나아가, "프로세서" 또는 "제어기"라는 용어의 명시적인 사용이 소프트웨어를 실행할 수 있는 하드웨어만을 배타적으로 말하는 것으로 해석되어서는 아니되며 암시적으로 디지털 신호 프로세서("DSP") 하드웨어, 소프트웨어를 저장하는 판독 전용 메모리("ROM"), 랜덤 액세스 메모리("RAM") 및 비휘발성 저장장치를 제한 없이 포함할 수 있다.
종래의 제품이든 및/또는 주문형 제품이든 상관없이 다른 하드웨어가 또한 포함될 수 있다. 이와 유사하게 이 도면에 도시된 임의의 스위치는 단지 개념적인 것이다. 그 기능은 프로그램 논리의 동작을 통해, 전용 논리를 통해, 프로그램 제어와 전용 논리의 상호작용을 통해 또는 심지어 수동으로 수행될 수 있으며, 특정 기술은 문맥으로부터 보다 구체적으로 이해되는 바와 같이 구현하는 자에 의해 선택될 수 있다.
특허청구범위에서, 특정 기능을 수행하는 수단으로 표현된 임의의 요소는 예를 들어 a) 그 기능을 수행하는 회로 요소의 조합이나, b) 그 기능을 수행하기 위해 그 소프트웨어를 실행하는 적절한 회로와 결합된 펌웨어, 마이크로 코드 등을 포함하는 임의의 형태의 소프트웨어를 포함하여 그 기능을 수행하는 임의의 방법을 포함하는 것으로 의도된다. 특허청구범위에 의해 한정된 본 발명의 원리는 여러 언급된 수단으로 제공된 기능들이 청구항이 요구하는 방식으로 결합되고 서로 연결되는 것에 있다. 따라서, 그 기능을 제공할 수 있는 임의의 수단은 본 명세서에 도시된 것과 균등한 것으로 간주된다.
명세서에서 본 발명의 원리의 "일 실시예" 또는 "실시예"라는 언급과 이의 다른 변형 어구의 언급은 실시예와 관련하여 기술된 특정 특징, 구조, 특성 등이 본 발명의 원리의 적어도 하나의 실시예에 포함된다는 것을 의미한다. 따라서, 명세서 전체에 걸쳐 여러 곳에 나타나는 "일 실시예에서" 또는 "실시예에서"라는 어구와 이의 임의의 다른 변형 어구의 표현은 모두 동일한 실시예를 언급하는 것이 아닐 수 있다.
예를 들어 "A/B", "A 및/또는 B" 그리고 "A 및 B 중 적어도 하나"의 경우에서 "/", " 및/또는" 그리고 "? 중 적어도 하나" 중 어느 하나의 사용은 처음 나열된 옵션(A)만을 선택하거나 두 번째 나열된 옵션(B)만을 선택하거나 두 개의 옵션(A와 B)을 선택하는 것을 포함하는 것으로 의도된 것이라는 것을 이해하여야 한다. 다른 예로서, "A, B 및/또는 C" 그리고 "A, B 및 C 중 적어도 하나"의 경우에서 이 어구는 처음 나열된 옵션(A)만을 선택하거나, 두 번째 나열된 옵션(B)만을 선택하거나 세 번째 나열된 옵션(C)만을 선택하거나 처음 및 두 번째 나열된 옵션(A 와 B)만을 선택하거나, 처음과 세 번째 나열된 옵션(A와 C)만을 선택하거나 두 번째와 세 번째 나열된 옵션(B와 C)만을 선택하거나 3개의 옵션(A와 B와 C)을 모두 선택하는 것을 포함하는 것으로 의도된 것이다. 이것은 이 기술 분야 및 관련 기술 분야의 통상의 지식을 가진 자에게는 명백한 바와 같이 많은 항목을 나열한 경우로도 확장될 수 있다.
또한, 본 명세서에 사용된 바와 같이, "화상" 및 "이미지"라는 용어는 상호 교환 가능하게 사용되며 비디오 시퀀스로부터 정지 이미지(still image) 또는 정지 화상을 말한다. 알려진 바와 같이, 화상은 프레임이나 필드일 수 있다.
추가적으로, 본 명세서에 사용된 바와 같이, "신호" 라는 용어는 대응하는 디코더로 가는 어떤 것을 나타내는 것을 말한다. 예를 들어, 인코더는, 인코더 측에서 사용되는 특정 유형의 조사 및/또는 조사 범위 및/또는 필터 유형을 디코더에 알려주기 위하여 특정 조사(정수화소 조사, 1/2화소 조사, 또는 1/4화소 조사) 및/또는 조사 범위(인접한 움직임 벡터, 작은 조사 범위 또는 큰 조사 범위) 및/또는 필터 유형(표준 움직임 보상에 사용되는 바와 같은 이중 선형 필터 또는 동일한 보간 필터)를 신호로 송신할 수 있다. 이런 방식으로, 동일한 유형의 조사 및/또는 조사 범위 및/또는 필터 유형이 인코더 측과 디코더 측에서 사용될 수 있다. 신호 송신은 여러 방식으로 수행될 수 있다는 것을 이해할 수 있을 것이다. 예를 들어, 하나 이상의 구문 요소, 플래그(flag) 등이 대응하는 디코더에 정보를 신호 송신하는데 사용될 수 있다.
나아가, 본 명세서에 사용된 바와 같이, "표준 움직임 보상" 및 "표준 움직임 추정" 이라는 어구는 (본 발명의 원리와는 대비되는) 현재의(existing) 비디오 코딩 표준 및/또는 현재의 비디오 코딩 권고안(recommendation)에 따라 각각 수행되는 움직임 보상과 움직임 추정을 말한다. 따라서, 예를 들어, "표준 움직임 추정"이라는 어구는 예를 들어 MPEG-4 AVC 표준에 의해 수행되는 종래의 움직임 추정 공정을 말하는데 사용될 수 있다. 또한 "표준 움직임 보상" 및 "정규(regular) 움직임 보상"이라는 어구는 본 명세서에서 상호 교환가능하게 사용되고 "표준 움직임 추정"과 "정규 움직임 추정"은 본 명세서에서 상호 교환가능하게 사용된다는 것을 주지해야 한다. 알려진 바와 같이 움직임 추정은 통상적으로 비디오 시퀀스에서 인접한 프레임들로부터 하나의 2차원 이미지를 다른 2차원 이미지로 변환을 기술하는 움직임 벡터를 결정하는 공정이다.
도 4를 참조하면, 본 발명의 원리가 적용될 수 있는 예시적인 비디오 인코더가 일반적으로 참조 부호 (400)으로 표시되어 있다. 비디오 인코더(400)는 가산기(485)의 비반전 입력과 신호 통신하는 출력을 가지는 프레임 정렬 버퍼(410)를 포함한다. 가산기(485)의 출력은 변환기 및 양자화기(425)의 제 1 입력과 신호 통신가능하게 연결된다. 변환기 및 양자화기(425)의 출력은 엔트로피 코더(445)의 제 1 출력과 역변환기 및 역양자화기(450)의 제 1 입력과 신호 통신 가능하게 연결된다. 엔트로피 코더(445)의 출력은 가산기(490)의 제 1 비반전 입력과 신호 통신가능하게 연결된다. 가산기(490)의 출력은 출력 버퍼(435)의 제 1 입력과 신호 통신가능하게 연결된다.
인코더 제어기(405)의 제 1 출력은 프레임 정렬 버퍼(410)의 제 2 입력, 역변환기 및 역양자화기(450)의 제 2 입력, 화상 유형 결정 모듈(415)의 입력, 매크로블록 유형(MB 유형) 결정 모듈(420)의 제 1 입력, 인트라 예측 모듈(460)의 제 2 입력, 디블록킹 필터(465)의 제 2 입력, 움직임 보상기(470)의 제 1 입력, 움직임 추정기 및 템플릿 매칭 예측 모듈(475)의 제 1 입력, 및 참조 화상 버퍼(480)의 제 2 입력과 신호 통신가능하게 연결된다.
인코더 제어기(405)의 제 2 출력은 SEI(Supplemental Enhancement Information) 삽입기(430)의 제 1 입력, 변환기 및 양자화기(425)의 제 2 입력, 엔트로피 코더(445)의 제 2 입력, 출력 버퍼(435)의 제 2 입력, 및 SPS(Sequence Parameter Set) 및 PPS(Picture Parameter Set) 삽입기(440)의 입력과 신호 통신가능하게 연결된다.
SEI 삽입기(430)의 출력은 가산기(490)의 제 2 비반전 입력과 신호 통신가능하게 연결된다.
화상 유형 결정 모듈(415)의 제 1 출력은 프레임 정렬 버퍼(410)의 제 3 입력과 신호 통신가능하게 연결된다. 화상 유형 결정 모듈(415)의 제 2 출력은 매크로블록 유형 결정 모듈(420)의 제 2 입력과 신호 통신가능하게 연결된다.
SPS 및 PPS 삽입기(440)의 출력은 가산기(490)의 제 3 비반전 입력과 신호 통신가능하게 연결된다.
역양자화기 및 역변환기(450)의 출력은 가산기(419)의 제 1 비반전 입력과 신호 통신가능하게 연결된다. 가산기(419)의 출력은 인트라 예측 모듈(460)의 제 1 입력과, 디블록킹 필터(465)의 제 1 입력과 신호 통신가능하게 연결된다. 디블록킹 필터(465)의 출력은 참조 화상 버퍼(480)의 제 1 입력과 신호 통신가능하게 연결된다. 참조 화상 버퍼(480)의 출력은 움직임 추정기 및 템플릿 매칭 예측 모듈(475)의 제 2 입력과, 움직임 보상기(470)의 제 3 입력과 신호 통신가능하게 연결된다. 움직임 추정기 및 템플릿 매칭 예측 모듈(475)의 제 1 출력은 움직임 보상기(470)의 제 2 입력과 신호 통신가능하게 연결된다. 움직임 추정기 및 템플릿 매칭 예측 모듈(475)의 제 2 출력은 엔트로피 코더(445)의 제 3 입력과 신호 통신가능하게 연결된다.
움직임 보상기(470)의 출력은 스위치(497)의 제 1 입력과 신호 통신가능하게 연결된다. 인트라 예측 모듈(460)의 출력은 스위치(497)의 제 2 입력과 신호 통신가능하게 연결된다. 매크로블록 유형 결정 모듈(420)의 출력은 스위치(497)의 제 3 입력과 신호 통신가능하게 연결된다. 스위치(497)의 제 3 입력은 (제어 입력, 즉 제 3 입력에 비해) 스위치의 "데이터" 입력이 움직임 보상기(470)에 의해 제공되는지 또는 인트라 예측 모듈(460)에 의해 제공되는지 여부를 결정한다. 스위치(497)의 출력은 가산기(419)의 제 2 비반전 입력과 가산기(485)의 반전 입력과 신호 통신가능하게 연결된다.
프레임 정렬 버퍼(410)의 제 1 입력과, 인코더 제어기(405)의 입력은 입력 화상을 수신하기 위해 인코더(400)의 입력으로 이용가능하다. 나아가, SEI 삽입기(430)의 제 2 입력은 메타데이터를 수신하기 위해 인코더(400)의 입력으로 이용가능하다. 출력 버퍼(435)의 출력은 비트스트림을 출력하기 위해 인코더(400)의 출력으로 이용가능하다.
도 5를 참조하면, 본 발명의 원리가 적용될 수 있는 예시적인 비디오 디코더가 일반적으로 참조 부호 (500)으로 표시되어 있다. 비디오 디코더(500)는 엔트로피 디코더(445)의 제 1 입력과 신호 통신가능하게 연결된 출력을 가지는 입력 버퍼(510)를 구비한다. 엔트로피 디코더(545)의 제 1 출력은 역변환기 및 역양자화기(550)의 제 1 입력과 신호 통신가능하게 연결된다. 역변환기 및 역양자화기(550)의 출력은 가산기(525)의 제 2 비반전 입력과 신호 통신가능하게 연결된다. 가산기(525)의 출력은 디블록킹 필터(565)의 제 2 입력과 인트라 예측 모듈(560)의 제 1 입력과 신호 통신가능하게 연결된다. 디블록킹 필터(565)의 제 2 출력은 참조 화상 버퍼(580)의 제 1 입력과 신호 통신가능하게 연결된다. 참조 화상 버퍼(580)의 출력은 움직임 보상기 및 템플릿 매칭 예측 모듈(570)의 제 2 입력과 신호 통신가능하게 연결된다.
엔트로피 디코더(545)의 제 2 출력은 움직임 보상기 및 템플릿 매칭 예측 모듈(570)의 제 3 입력, 디블록킹 필터(565)의 제 1 입력, 및 인트라 예측기(560)의 제 3 입력과 신호 통신 가능하게 연결된다. 엔트로피 디코더(545)의 제 3 출력은 디코더 제어기(505)의 입력과 신호 통신가능하게 연결된다. 디코더 제어기(505)의 제 1 출력은 엔트로피 디코더(545)의 제 2 입력과 신호 통신가능하게 연결된다. 디코더 제어기(405)의 제 2 출력은 역변환기 및 역양자화기(550)의 제 2 입력과 신호 통신 가능하게 연결된다. 디코더 제어기(505)의 제 3 출력은 디블록킹 필터(565)의 제 3 입력과 신호 통신가능하게 연결된다. 디코더 제어기(505)의 제 4 출력은 인트라 예측 모듈(560)의 제 2 입력, 움직임 보상기 및 템플릿 매칭 예측 모듈(570)의 제 1 입력, 및 참조 화상 버퍼(580)의 제 2 입력과 신호 통신 가능하게 연결된다.
움직임 보상기 및 템플릿 매칭 예측 모듈(570)의 출력은 스위치(597)의 제 1 입력과 신호 통신가능하게 연결된다. 인트라 예측 모듈(560)의 출력은 스위치(597)의 제 2 입력과 신호 통신가능하게 연결된다. 스위치(597)의 출력은 가산기(525)의 제 1 비반전 입력과 신호 통신가능하게 연결된다.
입력 버퍼(510)의 입력은 입력 비트스트림을 수신하기 위해 디코더(500)의 입력으로 이용가능하다. 디블록킹 필터(565)의 제 1 출력은 출력 화상을 출력하기 위해 디코더(500)의 출력으로 이용가능하다.
따라서, 전술된 바와 같이 본 발명의 원리는 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡성을 감소시키는 방법 및 장치에 관한 것이다. 본 명세서에 개시된 방법 및 장치는 템플릿 매칭 예측을 위한 코딩 효율을 유지함과 동시에 디코더 복잡도를 감소시킨다는 것을 이해하여야 할 것이다.
나아가, 본 발명의 원리는 인코더 복잡도를 또한 감소시킬 수 있다. 전술된 바와 같이, 템플릿 매칭 예측은 움직임/변위 정보(움직임 벡터, 참조 인덱스, 및 변위 벡터)의 전송을 회피하는 것에 의해 인터 및 인트라 예측을 위한 코딩 효율을 얻을 수 있다. 그러나, 템플릿 매칭 예측의 단점은 동일한 조사가 인코더 및 디코더에서 모두 수행되어야 한다는 것이다. 이것은 디코더 복잡도를 크게 증가시킬 수 있다는 것을 의미한다.
본 발명의 원리에 따라, 우리는 템플릿 매칭 예측을 위한 대응하는 설정을 제한하는 것에 의해 템플릿 매칭 예측을 간소화하는 방법 및 장치를 개시한다. 유리하게는 본 발명의 원리에 따른 이러한 간소화된 템플릿 매칭 예측은 디코더의 복잡도를 감소시킨다. 디코더의 복잡도는 메모리의 소비량과 계산의 복잡도를 모두 포함한다. 특히, 본 발명의 원리의 일 실시예에서, 우리는 부화소 미만의 정밀도로 템플릿 매칭 예측을 제한한다. 다른 실시예에서, 우리는 더 적은 수의 조사 포인트(searching points)를 사용한다(즉, 우리는 더 적은 수의 위치를 조사한다). 또 다른 실시예에서, 우리는 더 간단한 부화소 보간 구조를 사용한다.
일반적으로, 본 발명의 원리에 따른 템플릿 매칭 예측은 다음 단계를 포함하도록 고려될 수 있다:
(1) TMP 조사 정밀도가 한정된다.
(2) TMP 조사 정밀도가 1화소(full-pel) 정밀도보다 크다면, 휘도/색차 부화소(sub-pel) 위치들이 인코더에 의하여 TMP 정밀도로 보간된다.
(3) 프레임의 타깃 블록이 주어지면, 보간된 프레임에 있는 참조 샘플의 세트로부터 최적의 픽셀에 대해 인코더에 의해 조사가 수행되며, 여기서 최적의 픽셀의 인접한 픽셀들은 타깃 픽셀의 것과 최고 높은 상관성을 가진다.
(4) 최적의 픽셀은 블록의 템플 매칭 예측으로 사용된다.
제 1 실시예에서, 우리는 다른 정규 움직임 보상 방법보다 더 낮은 부화소 정밀도로 조사하기 위해 템플릿 매칭 예측을 한정할 것을 제안한다.
이러한 한정은 템플릿 매칭 예측으로부터 얻어진 여러 최상의 매치들을 평균낼 것이기 때문에 코딩 효율이 크게 저하하지 않으며 이 평균과 부화소는 에일리어싱을 감소시키는 유사한 역할을 하는 것으로 밝혀졌다. 일 실시예에서, 인코더에서 부화소 위치들이 템플릿 매칭 예측과 정규 움직임 조사 전에 전체 프레임에 대해 보간된다. 정규 움직임 조사와 템플릿 매칭 예측 사이의 정밀도는 이후 비트스트림으로 송신된다. 디코더에서, 정규 움직임 조사가 사용되는지 또는 템플릿 매칭 예측이 사용되는지에 따라 각 타깃 블록에 대해 진행 중에 움직임 보상이 수행될 수 있다. 특정 하위 실시예에서, 우리는 1화소 정밀도로만 템플릿 매칭 예측 조사가 가능하게 한정한다. 예를 들어, 이러한 경우에, 보간 정밀도는 (예를 들어 정규 움직임 조사에 필요한) 부화소로 수행될 수 있으나, TMP 조사는 1화소 그리드만으로 한정될 수 있다. 따라서, 템플릿 매칭 예측이 블록에 대해 선택되면, 디코더에서 이 블록에 대해서는 보간이 필요치 않다. 색차 해상도(chroma resolution)가 예를 들어 YUV4:2:0으로 휘도 해상도(luma resolution)와 동일하지 않은 경우, 색차 움직임 벡터(MV)는 휘도 움직임 벡터의 절반이고 움직임 벡터 조사는 휘도에 대해서만 수행되는데 그 이유는 우리가 색차 움직임 벡터가 1/2 화소 정밀도일 경우에 가장 근접한 1화소로 색차 움직임 벡터를 근사할 수 있기 때문이다.
제 2 실시예에서, 우리는 더 적은 개수의 조사 포인트로 템플릿 매칭 예측을 한정할 것을 제안한다. 일 실시예에서, 템플릿 매칭 예측은 후보 위치들의 세트만을 조사한다. 후보 위치는 (현재 블록의 움직임 벡터 예측자와 같은) 잘 예측된 중심을 가지는 작은 조사 범위 내에 있거나 또는 공간적/시간적으로 인접한 픽셀들의 움직임 벡터로부터 유도될 수 있다. 이것은 현재 픽셀이 인접한 픽셀들의 것과 유사한 높은 확률을 가진다는 가정에 기초하며, 템플릿 매칭 예측은 일반적으로 이들 픽셀들을 템플릿으로 사용한다.
제 3 실시예에서, 우리는 템플릿 매칭 예측을 위한 덜 복잡한 부화소 보간 방법을 사용할 것을 제안한다. 일 하위 실시예에서, 우리는 휘도 성분을 1화소 정밀도로 하는 것을 가능하게 하며 색차 성분을 1/2 화소 정밀도로 하는 것을 가능하게 한다. 1/2 화소 보간을 위해, 이중 선형 필터가 사용된다. 이것은 제 1 구조와 유사한 이론에 기초하여 평균 및 부화소가 에일리어싱을 감소시키는 유사한 역할을 하며 이에 우리는 매우 복잡한 부화소 보간 필터를 요구하지 않는다.
상기 구조는 독립적으로 또는 공동으로 적용될 수 있다. 나아가, 상기 구조는 예를 들어, 슬라이스 헤더, 화상 파라미터 세트(PPS: picture parameter set), 시퀀스 파라미터 세트(SPS: sequence parameter set), 네트워크 추상 계층(NAL: network abstraction layer) 유닛 헤더, SEI(supplemental enhancement information) 메시지 등과 같은 상위 레벨의 구문으로 신호 송신될 수 있다.
구문
표 1은 본 발명의 원리의 일 실시예에 따른 슬라이스 헤더를 위한 예시적인 구문을 도시한다.
Figure pct00001
표 1로부터 구문 요소의 의미는 이제 아래에 더 상세히 기술된다:
0인 tmp_search_precision_ind는 템플릿 매칭에 정수 화소 조사를 사용하는 것을 나타낸다.
1인 tmp_search_precision_ind는 템플릿 매칭에 1/2화소 조사를 사용하는 것을 나타낸다.
2인 tmp_search_precision_ind는 템플릿 매칭에 1/4화소 조사를 사용하는 것을 나타낸다.
0인 tmp_search_candidate_ind는 템플릿 매칭에 인접한 움직임 벡터들만을 사용하는 것을 나타낸다.
1인 tmp_search_candidate_ind는 템플릿 매칭에 (현재 블록의 움직임 벡터 예측자와 같은) 잘 예측된 중심을 가지는 조사 범위 또는 공간적/시간적으로 인접한 픽셀들의 움직임 벡터로부터 유도된 조사 범위를 사용하는 것을 나타낸다.
0인 tmp_subpel_interp_flag는 템플릿 매칭에 이중 선형 필터를 사용하는 것을 나타낸다.
1인 tmp_subpel_interp_flag는 정규 움직임 보상으로 동일한 보간 필터를 사용하는 것을 나타낸다.
일례로서, 결합된 접근법이 사용된다. 이 접근법에서, YUV4:2:0이 고려되며, 움직임 벡터 조사는 휘도 성분만에 대해서 수행된다. 우리는 움직임 벡터 조사를 1화소 정밀도로 한정하며 이러한 조사를 [-2,2]로부터 한정된 조사 범위를 가지는 단지 작은 창으로만 한정한다. 조사 중심은 MPEG-4 AVC 표준에서 수행되는 바와 같이 현재 블록의 움직임 벡터 예측자로 한정된다. 색차 보간을 위해 이중 선형 필터가 부화소 보간을 위해 사용된다.
도 6을 참조하면, 감소된 복잡도의 템플릿 매칭을 사용하여 화상에 대한 이미지 데이터를 인코딩하는 예시적인 방법이 일반적으로 참조 부호 (600)으로 표시되어 있다. 본 방법(600)은 루프 제한 블록(610)으로 제어를 넘기는 시작 블록(605)을 포함한다. 루프 제한 블록(610)은 각 슬라이스에 대해 루프를 시작하며 제어를 기능 블록(615)으로 전달한다. 기능 블록(615)은 정규 및 템플릿 매칭 예측(TMP) 조사 정밀도를 한정하며 제어를 기능 블록(620)으로 전달한다. 기능 블록(620)은 TMP 파라미터를 인코딩하며 제어를 기능 블록(625)으로 전달한다. 기능 블록(625)은 휘도 부화소와 색차 부화소 위치들을 보간하며 이를 버퍼에 저장하고 제어를 루프 제한 블록(630)으로 전달한다. 루프 제한 블록은 각 휘도/색차 블록에 대해 루프를 시작하며 제어를 기능 블록(635)과 기능 블록(640)으로 전달한다. 기능 블록(635)은 정규 움직임 조사를 수행하며 제어를 기능 블록(636)으로 전달한다. 기능 블록(636)은 최상의 휘도 움직임 벡터를 설정하며 제어를 기능 블록(637)으로 전달한다. 기능 블록(637)은 색차 움직임 벡터를 계산하며 제어를 기능 블록(638)으로 전달한다. 기능 블록(638)은 RD 비용 1을 계산하고 제어를 기능 블록(650)으로 전달한다. 기능 블록(640)은 특정 조사 범위 내에 템플릿 매칭 예측 조사를 수행하며 전달을 기능 블록(641)으로 전달한다. 기능 블록(641)은 N개의 최상의 후보를 찾으며 이를 평균하고 제어를 기능 블록(642)으로 전달한다. 기능 블록(642)은 대응하는 색차 움직임 벡터를 계산하며 색차 성분의 N개의 최상의 후보를 평균하고 제어를 기능 블록(645)으로 전달한다. 기능 블록(645)은 RD 비용 J2를 계산하며 제어를 결정 블록(650)으로 전달한다. 결정 블록(650)은 J1 < J2 인지 여부를 결정한다. 그렇다면, 제어는 기능 블록(655)으로 전달된다. 그렇지 않으면 제어는 기능 블록(652)으로 전달된다. 기능 블록(655)은 모드 정보를 인코딩하며 제어를 기능 블록(660)으로 전달한다. 기능 블록(660)은 블록의 움직임 벡터(MV)를 인코딩하며 제어를 루프 제한 블록(670)으로 전달한다. 기능 블록(652)은 블록의 모드를 인코딩하며 제어를 루프 제한 블록(670)으로 전달한다. 루프 제한 블록(670)은 각 휘도/색차 블록에 대해 루프를 종료하며 제어를 루프 제한 블록(680)으로 전달한다. 루프 제한 블록(680)은 슬라이스에 대한 루프를 종료하며 제어를 기능 블록(699)으로 전달한다.
도 7을 참조하면, 감소된 복잡도의 템플릿 매칭을 사용하여 화상에 대한 이미지 데이터를 디코딩하는 예시적인 방법이 일반적으로 참조 부호 (700)으로 표시되어 있다. 본 방법(700)은 제어를 루프 제한 블록(710)으로 넘기는 시작 블록(705)을 포함한다. 루프 제한 블록(710)은 각 슬라이스에 대해 루프를 시작하며 제어를 기능 블록(715)으로 전달한다. 기능 블록(715)은 TMP 파라미터를 디코딩하며 제어를 루프 제한 블록(720)으로 전달한다. 루프 제한 블록(720)은 각 휘도/색차 블록에 대해 루프를 시작하며 제어를 기능 블록(730)으로 전달한다. 기능 블록(730)은 현재 블록에 대한 모드를 디코딩하며 제어를 결정 블록(740)으로 전달한다. 결정 블록(740)은 현재 모드가 TMP 모드인지 여부를 결정한다. 그렇다면 제어는 기능 블록(745)으로 전달된다. 그렇지 않다면 제어는 기능 블록(755)으로 전달된다. 기능 블록(745)은 TMP 정밀도가 1화소 정밀도보다 크다면 휘도 부화소 위치들을 TMP 정밀도로 보간하며 제어를 기능 블록(750)으로 전달한다. 기능 블록(750)은 특정 조사 범위 내에서 TMP 움직임 조사를 수행하며 제어를 기능 블록(770)으로 전달한다. 기능 블록(770)은 최상의 휘도 움직임 벡터를 설정하며 제어를 기능 블록(775)으로 전달한다. 기능 블록(775)은 색차 움직임 벡터를 계산하며 제어를 기능 블록(780)으로 전달한다. 기능 블록(780)은 색차 움직임 벡터 정밀도가 1화소 정밀도보다 크다면 색차 부화소 위치들을 보간하며 제어를 루프 제한 블록(785)으로 전달한다. 기능 블록(785)은 각 휘도/색차 블록에 대한 루프를 종료하며 제어를 루프 제한 블록(790)으로 전달한다. 루프 제한 블록(790)은 각 슬라이스에 대한 루프를 종료하며 제어를 종료 블록(799)으로 전달한다. 기능 블록(755)은 움직임 벡터를 디코딩하며 제어를 기능 블록(760)으로 전달한다. 기능 블록(760)은 정규 정밀도(regular precision)로 휘도 부화소를 보간하며 제어를 기능 블록(765)으로 전달한다. 기능 블록(765)은 정규 움직임 보상을 수행하며 제어를 기능 블록(770)으로 전달한다.
이제 본 발명의 많은 부수하는 이점/특징의 일부에 대한 설명이 제공되는데, 그 중 일부는 전술된 것이다. 예를 들어, 하나의 이점/특징은 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하는 비디오 인코더를 구비하는 장치이다. 템플릿 매칭 예측은 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한된다.
다른 이점/특징은 전술된 바와 같은 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것과, 대응하는 디코더에서 요구되는 움직임 조사를 하지 않는 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에서의 코딩 모드에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것을 포함한다.
또 다른 이점/특징은 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 전술된 바와 같은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법보다 더 낮은 부화소 정밀도로 템플릿 매칭 정밀도를 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것을 포함하며, 여기서 부화소 위치들은 표준 움직임 추정 방법과 템플릿 매칭 예측 움직임 벡터 조사 중 어느 하나를 수행하기 전에 화상 전체에 대해 보간되며, 보간된 부화소 위치들 중 적어도 일부는 템플릿 매칭 예측 움직임 벡터 조사에 사용된다.
더 다른 이점/특징은 비디오 인코더를 구비하는 장치이며, 여기서 부화소 위치들은 표준 움직임 추정 방법과 템플릿 매칭 예측 움직임 벡터 조사 중 어느 하나를 수행하기 전에 화상 전체에 대해 보간되며, 보간된 부화소 위치 중 적어도 일부는 전술된 바와 같은 템플릿 매칭 예측 움직임 벡터 조사에 사용되며, 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 이미지 블록을 인코딩하는 것이나 표준 움직임 추정 방법의 결과를 사용하여 이미지 블록을 인코딩하는 것 사이에 결정이 이루어지며 결정 결과는 대응하는 디코더에 전송하기 위해 인코딩된다.
나아가, 다른 이점/특징은 전술된 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법과 관련하여 수행되는 움직임 추정 방법보다 더 적은 수의 위치들을 조사하기 위해 템플릿 매칭 예측을 제한하는 것을 포함한다.
더욱이, 다른 이점/특징은 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 전술된 바와 같은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법보다 더 적은 개수의 위치들을 조사하기 위해 템플릿 매칭 예측을 제한하는 것을 포함하며, 더 적은 개수의 위치는 조사 범위에 대응하며, 상기 조사 범위의 중심은 이미지 블록의 움직임 벡터 예측자에 대응한다.
또한, 다른 이점/특징은 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 전술된 바와 같이 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법보다 더 적은 수의 위치들을 조사하기 위하여 템플릿 매칭 예측을 제한하는 것을 포함하며, 여기서 더 적은 개수의 위치는 이미지 블록에 대하여 공간적으로 인접한 픽셀과 시간적으로 인접한 픽셀 중 적어도 하나의 픽셀의 움직임 벡터에 의해 결정된다.
추가적으로 다른 이점/특징은 전술된 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 보간 구조보다 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 위해 덜 복잡한 부화소 보간 구조를 사용하도록 템플릿 매칭 예측을 제한하는 것을 포함한다.
나아가, 다른 이점/특징은 비디오 인코더를 구비하는 장치이며, 여기서 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것과, 전술된 바와 같이 대응하는 디코더에서 요구되는 움직임 조사를 하지 않는 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에서의 코딩 모드에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 템플릿 매칭 예측을 위해 전술된 바와 같이 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것을 포함하며, 여기서 이미지 블록의 휘도 성분은 1화소의 정밀도로 보간되고 이미지 블록의 색차 성분은 1/2화소 정밀도로 보간된다.
본 발명의 원리의 이들 및 다른 특징 및 이점은 본 명세서에 교시된 내용에 기초하여 관련 기술 분야에 통상의 지식을 가진 자에 의해 용이하게 확인될 수 있다. 본 발명의 원리의 내용은 하드웨어, 소프트웨어, 펌웨어, 특정 목적 프로세서 또는 이들의 조합의 여러 형태로 구현될 수 있다는 것을 이해할 수 있을 것이다.
가장 바람직하게는, 본 발명의 원리의 내용은 하드웨어와 소프트웨어의 조합으로 구현된다. 나아가, 소프트웨어는 프로그램 저장 장치에 유형으로 구현된 응용 프로그램으로 구현될 수 있다. 응용 프로그램은 임의의 적절한 구조를 포함하는 기계에 업로딩되고 이 기계에 의해 실행될 수 있다. 바람직하게는, 이 기계는 하나 이상의 중앙 처리 장치("CPU"), 랜덤 액세스 메모리("RAM"), 및 입력/출력("I/O") 인터페이스와 같은 하드웨어를 구비하는 컴퓨터 플랫폼 상에 구현된다. 컴퓨터 플랫폼은 또한 운영 시스템과 마이크로 명령 코드를 포함할 수 있다. 본 명세서에 기술된 여러 공정과 기능은 CPU에 의해 실행될 수 있는 마이크로 명령 코드의 일부나 응용 프로그램의 일부나 이들의 임의의 조합의 일부일 수 있다. 나아가, 추가적인 데이터 저장 장치와 프린트 장치와 같은 여러 다른 주변 장치들이 컴퓨터 플랫폼에 연결될 수 있다.
첨부 도면에 도시된 구성 시스템 성분과 방법 중 일부가 바람직하게는 소프트웨어로 구현되므로, 시스템 성분이나 공정 기능 블록들 사이의 실제 연결은 본 발명의 원리가 프로그래밍되는 방식에 따라 달라질 수 있다는 것을 더 이해할 수 있을 것이다. 본 명세서에 교시된 내용에 기초하여 이 기술 분야에 통상의 지식을 가진 자라면 본 발명의 원리의 이들 및 이와 유사한 구현들이나 구성을 고려할 수 있을 것이다.
첨부 도면을 참조하여 본 명세서에 예시적인 실시예들이 기술되었으나, 본 발명의 원리는 이들 정확한 실시예로만 제한되는 것이 아니며 본 발명의 원리의 범위나 사상을 벗어남이 없이 관련 기술 분야에서 통상의 지식을 가진 자에게 여러 변경과 변형이 수행될 수 있을 것이라는 것을 이해할 수 있을 것이다. 그러므로 모든 그러한 변경과 변형들은 첨부된 청구범위에 개시된 본 발명의 원리의 범위 내에 포함되는 것으로 의도된다.

Claims (37)

  1. 템플릿 매칭 예측(template matching prediction)을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하는 비디오 인코더(400)를 포함하되, 상기 템플릿 매칭 예측은 해당 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준(constraining criterion)을 사용하여 선택가능하게 제한되는 것인 장치.
  2. 제 1 항에 있어서, 상기 하나 이상의 제한 기준은 현재의(existing) 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 보상 방법에 의해 사용되는 정밀도보다 더 낮은 부화소(sub-pel) 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것과, 대응하는 디코더에서 요구되는 움직임 조사를 하지 않는 상기 현재의 비디오 코딩 표준과 상기 현재의 비디오 코딩 권고안 중 적어도 하나에서의 코딩 모드에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 상기 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것을 포함하는 것인 장치.
  3. 제 2 항에 있어서, 부화소 위치들은 상기 템플릿 매칭 예측 움직임 벡터 조사와 상기 표준 움직임 추정 방법 중 어느 하나를 수행하기 전에 화상 전체에 대해 보간되며, 상기 보간된 부화소 위치들 중 적어도 일부는 상기 템플릿 매칭 예측 움직임 벡터 조사를 위해 사용되는 것인 장치.
  4. 제 3 항에 있어서, 상기 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것이나 상기 표준 움직임 추정 방법의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것 간에 결정이 이루어지며 상기 결정의 결과는 대응하는 디코더에 전송하기 위해 인코딩되는 것인 장치.
  5. 제 1 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법과 관련하여 수행되는 움직임 추정 방법보다 더 적은 개수의 위치들을 조사하기 위하여 상기 템플릿 매칭 예측을 제한하는 것을 포함하는 것인 장치.
  6. 제 5 항에 있어서, 상기 더 적은 개수의 위치들은 조사 범위에 대응하고, 상기 조사 범위의 중심은 상기 이미지 블록의 움직임 벡터 예측자에 대응하는 것인 장치.
  7. 제 5 항에 있어서, 상기 더 적은 개수의 위치들은 상기 이미지 블록에 대해 공간적으로 인접한 픽셀들과 시간적으로 인접한 픽셀들 중 적어도 한쪽의 픽셀들의 움직임 벡터에 의해 결정되는 것인 장치.
  8. 제 1 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 보간 구조(scheme)보다 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 위해 덜 복잡한 부화소 보간 구조를 사용하도록 상기 템플릿 매칭 예측을 제한하는 것을 포함하는 것인 장치.
  9. 제 2 항에 있어서, 상기 이미지 블록의 휘도 성분은 1화소(full-pel) 정밀도로 보간되고, 상기 이미지 블록의 색차 성분은 1/2화소(half-pel) 정밀도로 보간되는 것인 장치.
  10. 비디오 인코더에서,
    템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 인코딩하는 단계(615, 620, 640, 641, 642)를 포함하되, 상기 템플릿 매칭 예측은 해당 템플릿 매칭 예측을 수행하는 복잡도를 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한되는(615,625,640) 것인 방법.
  11. 제 10 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 보상 방법에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것과; 대응하는 디코더에서 요구되는 움직임 조사를 하지 않는 상기 현재의 비디오 코딩 표준과 상기 현재의 비디오 코딩 권고안 중 적어도 하나에서의 코딩 모드에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 상기 템플릿 매칭 예측 움직임 벡터 조사를 제한하는(615) 것을 포함하는 것인 방법.
  12. 제 11 항에 있어서, 부화소 위치들은 상기 템플릿 매칭 예측 움직임 벡터 조사와 상기 표준 움직임 추정 방법 중 어느 하나를 수행하기 전에 화상 전체에 대해 보간되며(625), 상기 보간된 부화소 위치들 중 적어도 일부는 상기 템플릿 매칭 예측 움직임 벡터 조사를 위해 사용되는(640,642) 것인 방법.
  13. 제 12 항에 있어서, 상기 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것이나 상기 표준 움직임 추정 방법의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것 간에 결정이 이루어지고(638, 645, 650), 상기 결정의 결과는 대응하는 디코더에 송신하기 위해 인코딩되는(655, 652) 것인 방법.
  14. 제 10 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법과 관련하여 수행되는 움직임 추정 방법보다 더 적은 개수의 위치들을 조사하기 위해 상기 템플릿 매칭 예측을 제한하는(640) 것을 포함하는 것인 방법.
  15. 제 14 항에 있어서, 상기 더 적은 개수의 위치들은 조사 범위에 대응하고, 상기 조사 범위의 중심은 상기 이미지 블록의 움직임 벡터 예측자에 대응하는(640) 것인 방법.
  16. 제 14 항에 있어서, 상기 더 적은 개수의 위치들은 상기 이미지 블록에 대하여 공간적으로 인접한 픽셀들과 시간적으로 인접한 픽셀들 중 적어도 한쪽의 픽셀들의 움직임 벡터에 의해 결정되는(640) 것인 방법.
  17. 제 10 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 보간 구조보다, 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 위해 덜 복잡한 부화소 보간 구조를 사용하도록 상기 템플릿 매칭 예측을 제한하는(625) 것을 포함하는 것인 방법.
  18. 제 17 항에 있어서, 상기 이미지 블록의 휘도 성분은 1화소 정밀도로 보간되고, 상기 이미지 블록의 색차 성분은 1/2 화소 정밀도로 보간되는(625) 것인 방법.
  19. 템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 디코딩하는 비디오 디코더(500)를 포함하되, 상기 템플릿 매칭 예측은 해당 템플릿 매칭 예측을 수행하는 복잡성을 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한되는 것인 장치.
  20. 제 19 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 보상 방법에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것과, 대응하는 디코더에서 요구되는 움직임 조사를 하지 않는 상기 현재의 비디오 코딩 표준과 상기 현재의 비디오 코딩 권고안 중 적어도 하나에서의 코딩 모드에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 상기 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것을 포함하는 것인 장치.
  21. 제 20 항에 있어서, 상기 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것이나 상기 표준 움직임 추정 방법의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것 사간의 결정의 결과가 디코딩되며, 상기 결과는 상기 이미지 블록을 디코딩하기 위해 상기 템플릿 매칭 예측 움직임 벡터 조사를 적용할지 또는 상기 표준 움직임 추정 방법을 적용할지 여부를 결정하기 위해 상기 비디오 디코더(500)에 의해 사용되는 것인 장치.
  22. 제 21 항에 있어서, 상기 결정의 결과가 상기 이미지 블록이 상기 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 인코딩된 것이라고 나타내는 경우 상기 템플릿 매칭 예측 움직임 벡터 조사는 1화소 해상도로만 허용되는 것인 장치.
  23. 제 19 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법과 관련하여 수행되는 움직임 추정 방법보다 더 적은 위치들을 조사하기 위해 상기 템플릿 매칭 예측을 제한하는 것을 포함하는 것인 장치.
  24. 제 23 항에 있어서, 상기 더 적은 개수의 위치들은 조사 범위에 대응하고, 상기 조사 범위의 중심은 상기 이미지 블록의 움직임 벡터 예측자에 대응하는 것인 장치.
  25. 제 23 항에 있어서, 상기 더 적은 개수의 위치들은 상기 이미지 블록에 대하여 공간적으로 인접한 픽셀들과 시간적으로 인접한 픽셀들 중 적어도 한쪽의 픽셀들의 움직임 벡터에 의해 결정되는 것인 장치.
  26. 제 19 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 보간 구조보다, 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 위해 덜 복잡한 부화소 보간 구조를 사용하도록 상기 템플릿 매칭 예측을 제한하는 것을 포함하는 것인 장치.
  27. 제 26 항에 있어서, 상기 이미지 블록의 휘도 성분은 1화소 정밀도로 보간되고, 상기 이미지 블록의 색차 성분은 1/2 화소 정밀도로 보간되는 것인 장치.
  28. 비디오 디코더에서,
    템플릿 매칭 예측을 사용하여 화상 내 적어도 하나의 이미지 블록을 디코딩하는 단계(715, 745, 750, 770)를 포함하되, 상기 템플릿 매칭 예측은 해당 템플릿 매칭 예측을 수행하는 복잡도를 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한되는(715, 745, 750) 것인 방법.
  29. 제 28 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 보상 방법에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 제한하는 것과; 대응하는 디코더에서 요구되는 움직임 조사를 하지 않는 상기 현재의 비디오 코딩 표준과 상기 현재의 비디오 코딩 권고안 중 적어도 하나에서의 코딩 모드에 의해 사용되는 정밀도보다 더 낮은 부화소 정밀도로 상기 템플릿 매칭 예측을 위해 수행되는 상기 템플릿 매칭 예측 움직임 벡터 조사를 제한하는(715, 745) 것을 포함하는 것인 방법.
  30. 제 29 항에 있어서, 상기 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것이나 상기 표준 움직임 추정 방법의 결과를 사용하여 상기 이미지 블록을 인코딩하는 것 간의 결정의 결과가 디코딩되고(730, 740), 상기 결과는 상기 이미지 블록을 디코딩하기 위해 상기 템플릿 매칭 예측 움직임 벡터 조사를 적용할지(745, 750) 또는 상기 표준 움직임 추정 방법을 적용할지(755, 760, 765) 여부를 결정하기 위해 상기 비디오 디코더에 의해 사용되는 것인 방법.
  31. 제 30 항에 있어서, 상기 결정의 결과가 상기 이미지 블록이 상기 템플릿 매칭 예측 움직임 벡터 조사의 결과를 사용하여 인코딩되었다고 나타내는 경우 상기 템플릿 매칭 예측 움직임 벡터 조사는 1화소 해상도로만 허용되는(745) 것인 방법.
  32. 제 28 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 움직임 추정 방법과 관련하여 수행되는 움직임 추정 방법보다 더 적은 개수의 위치들을 조사하도록 상기 템플릿 매칭 예측을 제한하는(715, 750) 것을 포함하는 것인 방법.
  33. 제 32 항에 있어서, 상기 더 적은 개수의 위치들은 조사 범위에 대응하고, 상기 조사 범위의 중심은 상기 이미지 블록의 움직임 벡터 예측자에 대응하는(750) 것인 방법.
  34. 제 32 항에 있어서, 상기 더 적은 개수의 위치들은 상기 이미지 블록에 대하여 공간적으로 인접한 픽셀들과 시간적으로 인접한 픽셀들 중 적어도 한쪽의 픽셀들의 움직임 벡터에 의해 결정되는(750) 것인 방법.
  35. 제 28 항에 있어서, 상기 하나 이상의 제한 기준은 현재의 비디오 코딩 표준과 현재의 비디오 코딩 권고안 중 적어도 하나에 대응하는 표준 보간 구조보다, 상기 템플릿 매칭 예측을 위해 수행되는 템플릿 매칭 예측 움직임 벡터 조사를 위해 덜 복잡한 부화소 보간 구조를 사용하도록 상기 템플릿 매칭 예측을 제한하는(715, 745) 것을 포함하는 것인 방법.
  36. 제 35 항에 있어서, 상기 이미지 블록의 휘도 성분은 1화소 정밀도로 보간되고, 상기 이미지 블록의 색차 성분은 1/2화소 정밀도로 보간되는(745) 것인 방법.
  37. 인코딩된 비디오 신호 데이터를 포함하는 컴퓨터 판독가능한 저장 매체로서,
    템플릿 매칭 예측을 사용하여 인코딩된 화상 내 적어도 하나의 이미지 블록을 포함하되, 상기 템플릿 매칭 예측은 해당 템플릿 매칭 예측을 수행하는 복잡도를 감소시키는 하나 이상의 제한 기준을 사용하여 선택가능하게 제한되는 것인 저장 매체.
KR1020127013728A 2010-01-19 2011-01-19 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치 KR101782661B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US29632910P 2010-01-19 2010-01-19
US61/296,329 2010-01-19
PCT/US2011/000098 WO2011090783A1 (en) 2010-01-19 2011-01-19 Methods and apparatus for reduced complexity template matching prediction for video encoding and decoding

Publications (2)

Publication Number Publication Date
KR20120118457A true KR20120118457A (ko) 2012-10-26
KR101782661B1 KR101782661B1 (ko) 2017-10-23

Family

ID=43629411

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127013728A KR101782661B1 (ko) 2010-01-19 2011-01-19 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치

Country Status (6)

Country Link
US (2) US9516341B2 (ko)
EP (1) EP2526697A1 (ko)
JP (1) JP5875989B2 (ko)
KR (1) KR101782661B1 (ko)
CN (1) CN102804774B (ko)
WO (1) WO2011090783A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018070568A1 (ko) * 2016-10-13 2018-04-19 디지털인사이트주식회사 복호화기 기반의 화면 내 예측 모드 추출 기술을 사용하는 비디오 코딩 방법 및 장치

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102726044B (zh) 2010-01-22 2016-08-10 汤姆逊许可证公司 使用基于示例的超分辨率的用于视频压缩的数据剪切
US9602814B2 (en) 2010-01-22 2017-03-21 Thomson Licensing Methods and apparatus for sampling-based super resolution video encoding and decoding
KR101836981B1 (ko) * 2010-07-09 2018-03-09 한국전자통신연구원 템플릿 매칭을 이용한 영상 부호화 방법 및 장치, 그리고 복호화 방법 및 장치
US9544598B2 (en) 2010-09-10 2017-01-10 Thomson Licensing Methods and apparatus for pruning decision optimization in example-based data pruning compression
US9338477B2 (en) 2010-09-10 2016-05-10 Thomson Licensing Recovering a pruned version of a picture in a video sequence for example-based data pruning using intra-frame patch similarity
CN108965870B (zh) * 2010-09-10 2022-11-01 交互数字麦迪逊专利控股公司 通过基于图像内容搜索和分级在视频压缩中对至参考块的链接进行编码
US20130251045A1 (en) * 2010-12-10 2013-09-26 Thomson Licensing Method and device for determining a motion vector for a current block of a current video frame
WO2012096150A1 (ja) * 2011-01-12 2012-07-19 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2013085157A (ja) * 2011-10-12 2013-05-09 Toshiba Corp 画像処理装置、画像処理方法および画像処理システム
US9345573B2 (en) 2012-05-30 2016-05-24 Neovasc Tiara Inc. Methods and apparatus for loading a prosthesis onto a delivery system
US20140184618A1 (en) * 2012-12-28 2014-07-03 Scott A. Krig Generating canonical imaging functions
JP6394876B2 (ja) * 2014-09-17 2018-09-26 株式会社ソシオネクスト 符号化回路、符号化方法
US10200715B2 (en) 2016-02-17 2019-02-05 Telefonaktiebolaget Lm Ericsson (Publ) Methods and devices for encoding and decoding video pictures
WO2018146151A1 (en) * 2017-02-08 2018-08-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Predictive coding concept using template matching
KR102510902B1 (ko) * 2018-01-17 2023-03-17 삼성디스플레이 주식회사 열화 보상 장치, 이를 포함하는 표시 장치 및 이를 이용한 표시 장치의 열화 보상방법
WO2019225932A1 (ko) * 2018-05-21 2019-11-28 엘지전자 주식회사 영상 코딩 시스템에서 dmvr을 사용하는 영상 디코딩 방법 및 그 장치
WO2019228660A1 (en) * 2018-06-01 2019-12-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Video codec using template matching prediction
KR102606778B1 (ko) 2018-06-28 2023-11-29 후아웨이 테크놀러지 컴퍼니 리미티드 모션 벡터 리파인먼트 및 모션 보상을 위한 메모리 액세스 윈도우 및 패딩

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6968008B1 (en) 1999-07-27 2005-11-22 Sharp Laboratories Of America, Inc. Methods for motion estimation with adaptive motion accuracy
US7408988B2 (en) 2002-12-20 2008-08-05 Lsi Corporation Motion estimation engine with parallel interpolation and search hardware
US20050207495A1 (en) * 2004-03-10 2005-09-22 Jayaram Ramasastry Methods and apparatuses for compressing digital image data with motion prediction
US20060233258A1 (en) * 2005-04-15 2006-10-19 Microsoft Corporation Scalable motion estimation
JP2007043651A (ja) * 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
US8705630B2 (en) * 2006-02-10 2014-04-22 Nvidia Corporation Adapting one type of encoder to another type of encoder
RU2008146977A (ru) 2006-04-28 2010-06-10 НТТ ДоКоМо, Инк. (JP) Устройство прогнозирующего кодирования изображений, способ прогнозирующего кодирования изображений, программа прогнозирующего кодирования изображений, устройство прогнозирующего декодирования изображений, способ прогнозирующего декодирования изображений и программа прогнозирующего декодирования изображений
JP2007300380A (ja) 2006-04-28 2007-11-15 Ntt Docomo Inc 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法及び画像予測復号プログラム
CN100551073C (zh) * 2006-12-05 2009-10-14 华为技术有限公司 编解码方法及装置、分像素插值处理方法及装置
BRPI0810924A2 (pt) 2007-04-09 2019-09-24 Ntt Docomo Inc predição de imagem/dispositivo de codificação, predição de imagem/ método de codificação, predição de imagem/programa de codificação, predição de imagem/dispositivo de codificação, predição de imagem/método de codificação e predição de imagem/programa de codificação
JP4767908B2 (ja) * 2007-05-29 2011-09-07 シャープ株式会社 画像復号装置及び画像符号化装置
JP5406465B2 (ja) * 2008-04-24 2014-02-05 株式会社Nttドコモ 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法及び画像予測復号プログラム
JP2010016453A (ja) 2008-07-01 2010-01-21 Sony Corp 画像符号化装置および方法、画像復号装置および方法、並びにプログラム
JP2010035137A (ja) 2008-07-01 2010-02-12 Sony Corp 画像処理装置および方法、並びにプログラム
US8787459B2 (en) * 2010-11-09 2014-07-22 Sony Computer Entertainment Inc. Video coding methods and apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018070568A1 (ko) * 2016-10-13 2018-04-19 디지털인사이트주식회사 복호화기 기반의 화면 내 예측 모드 추출 기술을 사용하는 비디오 코딩 방법 및 장치

Also Published As

Publication number Publication date
US10349080B2 (en) 2019-07-09
CN102804774B (zh) 2016-08-24
US9516341B2 (en) 2016-12-06
EP2526697A1 (en) 2012-11-28
US20170064327A1 (en) 2017-03-02
JP5875989B2 (ja) 2016-03-02
CN102804774A (zh) 2012-11-28
US20120320983A1 (en) 2012-12-20
KR101782661B1 (ko) 2017-10-23
JP2013517682A (ja) 2013-05-16
WO2011090783A1 (en) 2011-07-28

Similar Documents

Publication Publication Date Title
KR101782661B1 (ko) 비디오 인코딩 및 디코딩을 위한 템플릿 매칭 예측의 복잡도를 감소시키는 방법 및 장치
TWI735172B (zh) 用於多個工具的互相排斥設定
US9832474B2 (en) Method and apparatus for setting reference picture index of temporal merging candidate
US11856220B2 (en) Reducing computational complexity when video encoding uses bi-predictively encoded frames
US8208564B2 (en) Method and apparatus for video encoding and decoding using adaptive interpolation
JP5922579B2 (ja) 動き情報の適応型符号化方法及び装置
JP2019519998A (ja) 自動的な動き情報の精緻化を伴うビデオコード化のための方法及び機器
US11985320B2 (en) Early termination for optical flow refinement
CA2755889A1 (en) Image processing device and method
CN107211161B (zh) 包括最后阶段处理的扩展空间的视频编码优化
US20220116624A1 (en) Device and method for computing position of integer grid reference sample for block level boundary sample gradient computation
EP4037320A1 (en) Boundary extension for video coding
JP2022535859A (ja) Mpmリストを構成する方法、クロマブロックのイントラ予測モードを取得する方法、および装置
WO2020063598A1 (en) A video encoder, a video decoder and corresponding methods
JP2013077865A (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
KR20140087137A (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