KR20230098721A - 패딩을 위한 화면내-예측 모드 선택을 위한 장치 - Google Patents

패딩을 위한 화면내-예측 모드 선택을 위한 장치 Download PDF

Info

Publication number
KR20230098721A
KR20230098721A KR1020237021599A KR20237021599A KR20230098721A KR 20230098721 A KR20230098721 A KR 20230098721A KR 1020237021599 A KR1020237021599 A KR 1020237021599A KR 20237021599 A KR20237021599 A KR 20237021599A KR 20230098721 A KR20230098721 A KR 20230098721A
Authority
KR
South Korea
Prior art keywords
intra
picture
boundary
prediction
padding
Prior art date
Application number
KR1020237021599A
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 KR20230098721A publication Critical patent/KR20230098721A/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/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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/563Motion estimation with padding, i.e. with filling of non-object values in an arbitrarily shaped picture block or region for estimation purposes
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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

Landscapes

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

Abstract

복수의 화면 간 예측 모드들 중 하나를 선택하고 선택된 화면 내 예측 모드를 이용하여 상기 영역을 패딩함으로써, 참조 픽쳐의 경계를 너머 확장하는 참조 픽쳐의 참조 부분의 영역의 패딩을 수행하도록 구성되는, 시간적 화면 간 예측을 지원하기 위한 비디오 코덱으로서, 이 참조 부분은 현재 픽쳐의 화면 간 예측되는 블록에 의해 참조되는, 비디오 코덱.

Description

패딩을 위한 화면내-예측 모드 선택을 위한 장치{Apparatus for selecting an intra-prediction mode for padding}
본 발명은 비디오 코딩/디코딩에 관한 것이다.
H.261 이후로, 최신의 ITU T H.265 | MPEG H HEVC 비디오 코딩 표준 (참조 1: ITU-T 및 ISO/IEC. 고효율 비디오 코딩. ITU-T Recommendation H.265 | ISO/IEC 23008 10 (HEVC), edition 1, 2013; edition 2, 2014)을 포함하는 모든 비디오 코딩 표준들은 블록-기반의 하이브리드 비디오 코딩의 기본 개념에 의존한다. 여기서 각각의 컬러 요소에 대한 입력 신호는 예측, 변환, 양자화 및 엔트로피 코딩을 기반으로 하이브리드 비디오 코딩 방식을 사용하여 인코딩되는 분리된 블록들로 분할된다. 따라서, 인코딩 및 디코딩 알고리즘의 첫 번째 단계 중 하나는 현재 블록에 대한 예측 신호의 생성이며, 이는 공간적 또는 시간적 예측 방식에 의해 수행된다. 시간적 예측의 경우 예측 신호는 이미 처리된 프레임들에서 얻어지며 참조 프레임들로 표시된다. 이를 위해, 변위 벡터는 현재 코딩된 블록의 위치를 기준으로 참조 프레임에서 예측 신호의 오프셋을 지정한다. 이 시간적 예측 방식은 병진 운동 보상 예측(translational motion compensated prediction)이라고도 한다. 이런 의미에서 변위 벡터는 모션 벡터로 표시된다.
서브 픽셀 정밀도를 갖는 모션 벡터를 허용하기 위해서, 예측 신호는 보간 필터들을 사용하여 산출된다. 또한, 예측 신호는 서로 다른 모션 벡터 및/또는 서로 다른 참조 프레임에 의해 각각 지정된 다중 예측 신호들의 중첩(superposition)에 의해 구성될 수 있다. 최종 산출 및 예측 신호의 구성과 관계없이, 기본 원리는 동일하게 유지된다. 참조 프레임 내에서 참조된 블록의 영역은 현재 코딩된 블록의 위치와 크기에 의해 결정되며 추가 모션 벡터에 의해 대체된다. 보간 필터를 사용하는 경우, 사용된 필터 탭의 개수에 따라 이 영역을 각 측면(side)으로 확장해야 한다. 그 다음, 참조된 블록의 영역 내의 픽셀을 사용하여 현재 코딩된 블록에 대한 시간적 예측 신호를 생성한다. 일반적으로 참조된 블록의 영역은 재구성된 참조 프레임 내에 있다. 그럼에도 불구하고 참조된 블록의 영역은 재구성된 프레임의 영역과 완전히 겹치지 않을 수 있으며, 이는 참조된 픽셀 영역의 일부가 참조 프레임 영역의 밖에 있을 수 있음을 의미한다.
현재의 비디오 코딩 표준에서 참조된 부분, 즉 참조 픽쳐의 밖에 있는 참조된 픽셀 영역, 즉, 참조 프레임 영역을 처리하기 위한 기본 접근 방식은 모션 벡터들을 제한하거나 참조 프레임 영역을 확장하는 것이다. 예를 들어, H.26에서 모션 벡터들을 픽쳐 경계에서 제한하여, 참조된 모든 픽셀들이 참조 프레임 영역 내에 있도록, 즉, 참조 픽쳐의 샘플 부분의 모든 샘플들이 참조 프레임 경계 내에 위치하도록 한다. 대안으로, H.264/H.265에서는, 도 16에 도시된 바와 같이 이미 재구성된 참조 프레임을 확장하기 위해 경계 패딩(boundary padding)이라는 프로세스가 사용된다. 즉, 경계 픽셀들(경계 샘플들)(110)이 패딩된 영역(참조 픽쳐 101의 외측 영역)으로 복사되며, 이는 프레임 경계(frame border, 106)에 수직인 경계 픽셀들의 화면 내 예측으로 볼 수 있다. 여기서, 참조 프레임의 가장자리(edge)에서, 가장자리 픽셀들은 참조 프레임(101) 영역 밖에 있는 나머지 영역에 추가로 복사되며, 이 영역은 도 16에 도시 된 바와 같이 가장자리 픽셀 옆에 놓여있다.
또한, 경계 패딩에 대해 알려진 접근 방식은 전 방향 투영법(omnidirectional projection )을 사용하여 직사각형 비디오 픽쳐 평면에 카메라 서라운딩을 매핑하는 전 방향 또는 360 ° 비디오로 알려진 특정 비디오 콘텐츠를 처리할 때 유리하다. 이러한 콘텐츠에 널리 사용되는 형식 중 하나는 정방형 투영 (ERP, equirectangular projection)을 기반으로 한다. 전방향 콘텐츠는 픽쳐 경계 밖에 있는 지역을 정확한 콘텐츠로 채울 수 있도록 하는데, 이는 같은 픽쳐의 다른 곳에 묘사된 올바른 콘텐츠가 정의되어 있기 때문이다. 수평으로 360°를 묘사하는 ERP(equirectangular projection) 비디오 콘텐츠의 수직 픽쳐 경계는 반대쪽 수직 픽쳐 경계에서 샘플을 복사하여 패딩할 수 있다. 그러나, 수평 픽쳐 경계는, 특히 수직 시야각이 전체 커버리지의 미만을 제공하는 경우 다른 특성을 나타낸다.
도 17에서, 360°수평 커버리지 각도와 180°미만의 수직 커버리지 각도를 가진 예시적인 ERP 비디오 프레임이 도시된다. 즉, 0°의 적도에서 아래쪽으로 단지 30° 시야각을 갖는다. 수직 픽쳐 경계들에 대한 최적의 패딩은 반대쪽 수직 픽쳐 측면의 샘플을 사용하는 것으로 구성되지만, 점선으로 표시된 상단 및 하단 수평 픽쳐 경계들은 오히려 시야가 제한된 전형적인 직사각형 비디오의 픽쳐 경계와 유사한 특성을 나타내며, 따라서 여기서 설명한 다중-모드 경계 패딩의 이점을 갖는다. 따라서 본 발명의 일 측면은, 예를 들어 콘텐츠 특성의 지식에 따라 또는 비트스트림에서 신호된 것과 같이, 픽쳐 경계마다 패딩 모드를 변경하는 것이다.
많은 경우, 프레임 경계 픽셀의 단순한 수직 확장은 연속으로 이어지며, 이는 현재 예측된 블록에 매우 근사하지 않는다. 참조 프레임 경계를 확장하기 위해 여러 가지 화면 내 예측 모드들(intra-prediction modes), 예를 들어, 방향성(angular), DC 또는 평면(Planar) 예측을 사용함으로써 더 나은 연속성을 달성할 수 있다. 경계 확장에 사용할 수 있는 예시적인 화면 내 예측 모드는 참조문서 1에 설명된 H.265 또는 참조문서 2(J. Chen, E. Alshina, G.J. Sullivan, J.-R. Ohm, J. Boyce, Algorithm Description of Joint Exploration Test Model 7 (JEM 7), JVET, doc. JVET-G1001, July 2017)에 설명된 조인트 탐색 테스트 모델(JEM, Joint Exploration Test Model)로부터의 화면 내 예측 모드이다. 더욱이, 이 방법의 미래 구현에서는, 참조 경계를 확장하는 데 미래 화면 내 예측 모드들도 사용할 수 있다. 프레임 경계의 공간적 확장 모드는 현재 예측된 블록의 특성에 따라 달라진다. 따라서, 다중 방향성 화면 내 예측 모드들 중에서, 특정 방향성 화면 내 예측 모드를 선택하여 예측 신호를 생성해야 하며, 이는 현재 예측된 블록의 최상의 근사치를 제공한다.
따라서, 본 발명의 목적은 시간적 화면 간 예측(temporal inter-prediction)의 품질을 향상시키기 위해 경계 패딩을 수행하도록 구성된 비디오 코덱을 제공하는 것이다.
이 목적은 본 출원의 청구 범위의 구성에 의해 달성된다.
패딩에 가장 적합한 화면 내 예측 모드를 선택함으로써 시간적 화면 간 예측의 품질 향상이 달성된다는 것이 본 출원의 기본 사상이다. 이것은 현재 예측된 블록의 특성에 기초하여 그러한 복수의 화면 내 예측 모드들 중에서 방향성 화면 내 예측 모드(angular intra prediction mode)를 선택하는 것일 수 있다.
일 실시 예에 따르면, 패딩에 사용될 방향성 화면 내 예측 모드는 참조된 부분이 경계를 가로지르는 참조 픽쳐의 경계의 일부에서 참조 픽쳐의 영역의 평가에 기초하여 선택된다. 상기 평가는, 프로브 채움을 얻기 위하여, 상기 경계(106)의 상기 일부에서의 상기 참조 픽쳐(101)의 경계 샘플들(102)에 기초하여, 상기 각각의 화면 내 예측 모드와 연관된 채움 방향과 반대되는 방향을 따라 상기 경계 샘플(102)보다 상기 경계(106)로부터 먼 곳에 위치하는 프로브 영역(104)을 채우고, 및 상호 유사성을 측정하기 위해 상기 프로브 채움과 상기 프로브 영역(104)의 재구성된 채움을 비교함으로써 상기 복수의 화면 내 예측 모드들의 적어도 하나의 서브셋 각각에 대해서 수행된다. 따라서, 현재의 예측된 블록의 특성을 기반으로 선택이 이루어지므로 현재의 예측된 블록에 대한 최적의 근사치를 제공하고 예측 품질을 향상시킬 수 있다.
본 출원의 실시예들에 따르면, 참조 픽쳐의 밖에 있는 참조된 부분의 영역의 예측 결과를 기반으로 패딩에 사용될 방향성 화면 내 예측 모드가 선택된다. 참조된 부분은 현재 픽쳐의 화면 간 예측 블록에 의해 참조된다. 따라서, 영역의 특성에 따라 방향성 화면 내 예측 모드가 선택되므로, 패딩에 가장 적합한 방향성 화면 내 예측 모드가 선택될 수 있다. 또한, 영역을 예측하기 위해 사용된 복수의 방향성 화면 내 예측 모드들은, 화면 내 예측된 블록에 대해 코덱에 의해 지원되는, 지원되는 방향성 화면 내 예측 모드들의 서브셋으로서 시그널링 될 수 있다. 따라서, 영역의 특성에 따라 방향성 화면 내 예측 모드가 선택되므로, 패딩에 가장 적합한 방향성 화면 내 예측 모드가 선택될 수 있다. 또한, 영역을 예측하기 위해 사용된 복수의 방향성 화면 내 예측 모드들은, 화면 내 예측된 블록에 대해 코덱에 의해 지원되는, 지원되는 방향성 화면 내 예측 모드들의 서브셋으로서 시그널링 될 수 있다. 추가적인 장점은 청구 범위의 코덱에 의해 달성된다.
본 발명에 따르면 패딩에 가장 적합한 화면 내 예측 모드를 선택함으로써 시간적 화면 간 예측의 품질 향상이 달성된다. 또한, 현재의 예측된 블록의 특성을 기반으로 선택이 이루어지므로 현재의 예측된 블록에 대한 최적의 근사치를 제공하고 예측 품질을 향상시킬 수 있다. 또한, 영역의 특성에 따라 방향성 화면 내 예측 모드가 선택되므로, 패딩에 가장 적합한 방향성 화면 내 예측 모드가 선택될 수 있다.
본 출원의 바람직한 실시 예는 아래와 같이 도면을 참조하여 설명한다:
도 1은 본 출원의 실시예들에 따른 패딩 개념에 대한 방향성 화면 내 예측 모드의 선택이 구현될 수 있는 비디오 디코더의 예로서 비디오를 예측적으로 코딩하기 위한 장치의 블록도를 도시한다.
도 2는 본 출원의 구현에 따른 패딩 개념에 대한 방향성 화면 내 예측 모드의 선택이 구현될 수 있는 비디오 디코더의 예로서, 도 1의 장치에 적합한 비디오 디코딩 장치의 블록도를 나타낸다.
도 3은 예측 잔차 신호(prediction residual signal) 등의 처리, 예측 신호를 정의하기 위한 세분화 설정의 가능성을 설명하기 위해, 예측 잔차 신호, 예측 신호, 및 재구성된 신호 사이의 관계의 예를 보여 주는 개략도를 나타낸다.
도 4는 본 출원의 실시예들에 사용되는 방향성 화면 내 예측 모드의 예를 예시하는 개략도를 나타낸다.
도 5는 본 출원의 실시예에 따라 선호되는 경계 패딩 측을 산출하는 일 예를 도시하는 개략도를 나타낸다.
도 6은 본 출원의 일 실시예에 따라 선호되는 경계 패딩 측을 산출하는 다른 예를 예시하는 개략도를 나타낸다.
도 7은 본 출원의 일 실시예에 따른 프로브 영역의 일 예를 보여주는 개략도를 나타낸다.
도 8은 본 출원의 일 실시예에 따라 프로브 영역을 정의하는 과정을 설명하는데 사용되는 일 예를 보여주는 개략도를 나타낸다.
도 9는 본 출원의 일 실시예에 따른 프로브 영역 좌표 유도 샘플 테이블을 도시한다.
도 10은 본 출원의 일 실시 예에 따른 경계 확장 참조 블록에 대한 모션 벡터 클리핑(motion vector clipping)의 일 예를 도시하는 개략도를 나타낸다.
도 11은 본 출원의 일 실시 예에 따른 모션 벡터 클리핑의 맥락에서 템플릿 영역 유도의 일 예를 도시하는 개략도를 나타낸다.
도 12는 본 출원의 일 실시 예에 따른 블록 크기에 적응하는 모션 벡터 클리핑의 일 예를 도시하는 개략도를 나타낸다.
도 13 및 14는 본 출원에 따라 참조 픽쳐의 밖에 있는 참조 부분의 영역의 예측 결과에 기초하여 선택되는 패딩에 사용될 방향성 화면 내 예측 모드를 예시하는 개략도이다.
도 15는 본 출원의 일 실시 예에 따른 2 개의 독립적인 공간 세그먼트 사이의 수평 경계의 일 예를 도시하는 개략도를 나타낸다.
도 16은 기술의 상태를 설명하기 위해 수직 예측을 도시하는 개략도를 나타낸다.
도17은 수평 커버리지 각도가 360 °이고 수직 커버리지 각도가 180 ° 미만인 비디오 프레임의 샘플 이미지를 나타낸다.
다음의 도면에 대한 설명은 구성된 예측 코덱이 내장될 수 있는 실시예에 들어가는 코딩 프레임 워크에 대한 일 예를 형성하기 위해 비디오의 픽쳐들을 코딩하기 위한 블록-기반 예측 코덱의 비디오 인코더 및 비디오 디코더에 대한 설명으로 시작한다. 비디오 인코더 및 비디오 디코더는 도 1 내지 3을 참조하여 설명된다. 이하, 도 1 및 2의 비디오 인코더와 디코더에 그러한 개념이 어떻게 내장될 수 있는지에 대한 설명과 함께 본 출원의 구성된 예측 개념의 실시예에 대한 설명을 각각 제시한다. 도 4를 참조하여, 도 1 및 2의 비디오 인코더 및 비디오 디코더의 기초가 되는 코딩 프레임 워크에 따라 동작하지 않는 비디오 인코더 및 비디오 디코더를 형성하는데 사용될 수 있는 실시예를 설명한다.
도 1은 픽쳐들(12)의 시퀀스로 구성된 비디오(11)를 데이터 스트림(14)으로 예측적으로 코딩하기 위한 장치를 나타낸다. 이를 위해 블록 단위 예측 코딩(Block-wise predictive coding)이 사용된다. 또한, 변환 기반 잔차 코딩(transform-based residual coding)이 예시적으로 사용된다. 장치 또는 인코더는 참조 부호 10을 사용하여 표시한다. 도 2는 대응하는 디코더(20), 즉, 데이터 스트림 (14)으로부터의 픽쳐 블록들에서 픽쳐(12')로 구성된 비디오(11')를 예측적으로 디코딩하도록 구성된 장치(20)를 도시한다. 또한, 여기서 아포스트로피는 디코더(20)에 의해 재구성된 픽쳐들(12')과 비디오(11')가 예측 잔차 신호의 양자화(quantization)에 의해 도입된 코딩 손실 측면에서 장치(10)에 의해 본래 인코딩된 픽쳐들(12)에서 각각 벗어나 있음을 나타내기 위해 사용되었다. 도 1 및 2는 예시적으로 변환 기반 예측 잔차 코딩을 사용하지만, 본 출원의 실시 예는 이러한 종류의 예측 잔차 코딩에 제한되는 것은 아니다. 이것은 이하에 기술한 바와 같이, 도 1 및 2와 관련하여 설명된 다른 세부 사항에 대해서도 마찬가지이다.
인코더(10)는 예측 잔차 신호를 공간-대-스펙트럼 변환에 적용하고, 이에 따라 얻은 예측 잔차 신호를 데이터 스트림(14)에 인코딩하도록 구성된다. 마찬가지로 디코더(20)은 데이터 스트림 14에서 예측 잔차 신호를 디코딩하여 얻은 예측 잔차 신호를 스펙트럼-대-공간 변환에 적용하도록 구성된다.
내부적으로, 인코더(10)는 원래 신호, 즉 비디오(11) 또는 현재 픽쳐(12)로부터의 예측 신호(26)의 편차를 측정하기 위해 예측 잔차(24)를 생성하는 예측 잔차 신호 생성기(22)를 포함할 수 있다. 예측 잔차 신호 생성기(22)는 예를 들어, 원래 신호, 즉 현재 픽쳐(12)로부터 예측 신호를 감산하는 감산기일 수 있다. 인코더 (10)는 예측 잔차 신호(24)를 공간-대-스펙트럼 변환에 적용하여 스펙트럼 도메인 예측 잔차 신호 (24')를 획득하는 변환기(28)를 더 포함하며, 이는 그 다음 인코더에 의해 포함된 양자화기(32)에 의해 양자화가 적용된다. 이렇게 양자화된 예측 잔차 신호(24")는 비트 스트림(14)으로 코딩된다. 이를 위해 인코더(10)는 선택적으로 엔트로피 코더(34)를 포함할 수 있다. 엔트로피 코더(34)는 데이터 스트림(14)으로 변환 및 양자화된 예측 잔차 신호를 엔트로피 코딩한다. 예측 잔차(26)는 데이터 스트림(14)으로 디코딩되고 디코딩 가능한 폼의 예측 잔차 신호(24")에 기초하여 인코더(10)의 예측 스테이지(36)에 의해 생성된다. 이를 위해, 예측 스테이지(36)는 도 1에 도시 된 바와 같이 내부적으로 역양자화기(38)를 포함할 수 있다. 역양자화기(38)는 예측 잔차 신호(24")를 역양자화하여 스펙트럼-도메인 예측 잔차 신호 (24"')를 얻으며, 이는 양자화 손실을 제외하고는 신호(24')에 대응한다. 후자의 예측 잔차 신호(24"')를 역변환, 즉 스펙트럼-대-공간 변환을 적용하여 예측 잔차 신호(24"")를 얻는 역변환기(40)가 뒤따른다. 이는 양자화 손실을 제외하고는 원래 예측 잔차 신호(24)에 대응한다. 그 다음 예측 스테이지(36)의 결합기(42)는 예를 들어, 예측 신호(26)와 예측 잔차 신호 (24"")를 합산하는 등 재결합하여 재구성된 신호(46), 즉 원래 신호(12)의 재구성을 획득한다. 재구성된 신호(46)는 신호(12')에 대응할 수 있다.
그 다음, 예측 스테이지(36)의 예측 모듈(44)은 예를 들어, 공간적 예측, 즉 화면 내 예측, 및/ 또는 시간적 예측, 즉 화면 간 예측을 사용하여 신호(46)에 기초하여 예측 신호(26)를 생성한다. 이와 관련된 자세한 내용은 후술하기로 한다.
마찬가지로, 디코더(20)는 예측 스테이지(36)에 대응하는 구성 요소들로 내부적으로 구성 될 수 있고, 예측 스테이지(36)에 대응하는 방식으로 상호 연결될 수 있다. 특히, 디코더(20)의 엔트로피 디코더(50)는 데이터 스트림으로부터 양자화된 스펙트럼-도메인 예측 잔차 신호(24")를 엔트로피 디코딩할 수 있다. 역 양자화기(52), 역 변환기(54), 결합기(56) 및 예측 모듈(58)은 예측 스테이지(36)의 모듈들과 관련하여 위에서 설명한 방식으로 상호 연결되고 협력하여, 예측 잔차 신호(24")에 기초하여 재구성된 신호를 복구하며, 이에 따라 도 2에 도시 된 바와 같이, 결합기(56)는 재구성된 신호, 즉 비디오 (11') 또는 그의 현재 픽쳐(12')를 출력하게 된다.
위에서 구체적으로 설명하지는 않았지만, 인코더(10)는 예를 들어 코딩 코스트와 같은 왜곡 관련 기준과 여러 가지 레이트 최적화 및/또는 여러 가지 레이트 제어를 사용하는 방식 등의 여러 가지 최적화 방식에 따라, 예를 들어 예측 모드, 모션 파라미터 등을 포함하는 일부 코딩 파라미터를 설정할 수 있다는 것은 명백하다. 아래에서 더 자세히 설명하는 바와 같이, 인코더(10와 디코더(20) 및 대응하는 모듈들(44, 58)은 아래에서 상세히 후술되는 방식으로 구성되는 화면 블록의 예측에 기초하여 일종의 원시 예측 모드들의 세트 또는 풀을 형성하는 화면 간 코딩 모드(inter-coding modes) 및 화면 내 코딩 모드들(intra-coding modes)와 같은 상이한 예측 모드를 각각 지원한다. 인코더와 디코더가 이들 예측 구성 사이에서 전환하는 입도(granularity)는 픽쳐 (12 및 12')를 각각 블록으로 분할하는 것에 대응할 수 있다. 이들 블록 중 일부는 단지 화면 내 코딩된 블록일 수 있고, 일부 블록은 단지 화면 간 코딩된 블록일 수 있으며, 선택적으로, 추가 블록은 화면 내 코딩 및 화면 간 코딩을 모두 사용하여 얻은 블록일 수 있지만 세부 사항은 이하에서 설정된다. 화면 내 코딩 모드에 따르면, 블록의 예측신호는 각 블록의 공간적으로 이미 코딩/디코딩된 이웃을 기반으로 획득된다. 몇 가지 화면 내 코딩 서브 모드들이 존재할 수 있으며, 그 중에서 준(quasi)은 일종의 화면 내 예측 매개 변수를 나타낸다. 각각의 방향성 화면 내 코딩 서브 모드에 대해 특정된 특정 방향을 따라 이웃 샘플 값을 각 블록으로 외삽하여(extrapolating) 각 블록에 대한 예측 신호가 채워지는, 방향성(directional or angular) 인트라 코딩 서브 모드가 있을 수 있다. 화면 내 코딩 서브 모드는 예를 들어, 각 블록에 대한 예측 신호가 각 블록 내의 모든 샘플들에 DC 값을 할당하는 DC 코딩 모드, 각 블록의 예측 신호가 이웃 샘플들에 기초하여 2차원 선형 함수에 의해 정의된 평면의 기울기와 오프셋을 도출하여 각 블록의 샘플 위치에 대해 2차원 선형 함수로 기술된 표본 값의 공간 분포로 결정되거나 근사되는 평면 화면내-코딩 모드(planar intra-coding mode)와 같은 하나 이상의 추가 서브 모드를 또한 포함 할 수 있다. 이와 비교하여, 화면 간 예측 모드에 따르면, 예를 들어, 블록 내부를 시간적으로 예측하여 블록에 대한 예측 신호를 획득할 수 있다. 화면 간 예측 모드의 매개 변수화를 위해, 모션 벡터들은 데이터 스트림 내에서 시그널링 될 수 있으며, 모션 벡터들은 각각의 블록에 대한 예측 신호를 얻기 위해 이전에 코딩된/디코딩 된 픽쳐가 샘플링되는, 비디오(11)의 이전에 코딩된 픽쳐의 부분의 공간 변위를 나타낸다. 이는 양자화된 스펙트럼-도메인 예측 잔치 신호 (24")를 나타내는 엔트로피 코딩된 변환 계수 레벨과 같은 데이터 스트림(14)에 포함된 잔차 신호 코딩에 더하여, 데이터 스트림(14)은 블록 예측 모드들에 할당하기 위한 예측 관련 파라미터들, 예를 들어, 화면 간 예측 모드에 대한 모션 매개 변수와 같은 예측 파라미터들, 및 선택적으로, 할당된 예측 모드들을 사용하여 블록에 대한 최종 예측 신호의 구성을 제어하는 추가적인 파라미터들과 이하에서 상세히 후술되는 예측 파라미터들이 그 안에 인코딩되어 있을 수 있다. 추가적으로, 데이터 스트림은 픽쳐(12, 12')의 서브분할을 을 각각 블록으로 시그널링하고 제어하는 파라미터들을 포함할 수 있다. 디코더(20)는 이들 파라미터를 사용하여 인코더와 동일한 방식으로 픽쳐를 세분화하고, 동일한 예측 모드들 및 파라미터를 블록에 할당하고, 동일한 예측을 수행하여 동일한 예측 신호를 생성한다.
도 3은 다른 한편으로 재구성된 신호, 즉 재구성된 화상(12')과, 다른 한편으로 데이터 스트림에서 시그널링된 예측 잔차 신호(24"")와 예측 신호(26)의 조합(combination) 사이의 관계를 나타낸다. 위에서 이미 언급했듯이 조합은 추가가 될 수 있다. 예측 신호(26)는 도 3에 픽쳐 영역을 다양한 크기의 블록들(80)로 서브분할한 것으로 도시되어 있으나 이것은 단지 예시일 뿐이다. 서브분할은 픽쳐 영역을 블록의 행과 열로의 규칙적인 서브분할, 픽쳐 영역을 쿼드-트리(quadtree) 서브분할 등과 같은 다양한 크기의 리프 블록으로 분할하는 다중-트리 분할과 같음 임의의 서브분할일 수 있다. 이들의 혼합이 도 3에 도시되어 있는데, 여기서 픽쳐 영역은 먼저 트리 루트 블록의 행과 열로 서브분할되고, 그 다음에는 순환적 다중-트리(recursive multi-tree) 서브분할에 따라 추가로 서브분할되어 블록들(80)과 같이 된다.
도 3의 예측 잔차 신호 (24"")는 또한 픽쳐 영역을 블록들(84)로 서브분할 한 것으로 도시되어 있다. 이들 블록들은 코딩 블록(80)의 동일한 것과 구별하기 위해 변환 블록이라고 부를 수 있다. 사실상, 도 3은 인코더(10) 및 디코더(20)가 픽쳐(12) 및 픽쳐(12')를 2개의 상이한 서브분할을 사용하여 각각 블록으로, 즉 하나의 서브 분할로 코딩 블록들(80)에, 또 다른 서브 분할을 블록(84)에 사용할 수 있음을 예시한다. 두 개의 서브분할은 동일 할 수 있다. 즉, 각 블록(80)은 동시에 변환 블록(84)을 형성 할 수 있고 그 반대의 경우도 마찬가지이지만, 도 3은 예를 들어, 변환 블록 (84)으로의 서브분할이 블록(80)으로의 서브분할의 확장을 형성함으로써, 두 블록들(80) 사이의 임의의 경계가 두 블록들(84) 사이의 경계에 중첩되거나, 대안적으로 말하면 각 블록(80)이 변환 블록들(84) 중 하나와 일치하거나 변환 블록들(84)의 클러스터와 일치하게 되는 경우를 도시한다. 그러나, 서브분할은 또한 서로 독립적으로 선택되거나 결정됨으로써, 변환 블록 (84)이 대안적으로 블록들(80) 사이의 블록 경계들을 가로지를 수 있다. 변환 블록들(84)로의 서브분할에 관한 한, 블록(80)으로의 서브분할에 대해 전달된 것과 유사한 설명이 사실이다. 즉, 블록들(84)은 행과 열로 배열된 블록으로 픽쳐 영역을 규칙적으로 서브분할의 결과, 픽쳐 영역의 순환적 다중 트리 서브분할의 결과, 또는 이들의 조합 또는 임의의 다른 종류의 분할의 결과 일 수 있다. 덧붙이자면, 블록들(80, 84)은 정사각형(quadratic), 직사각형 또는 임의의 다른 형태로 제한되지 않는다는 점에 유의해야 한다. 또한, 현재 픽쳐(12)를 예측 신호가 형성되는 블록들 (80)로 서브분할하고, 현재 픽쳐 (12)를 예측 잔차가 코딩되는 블록들(84)로 세분하는 것이 코딩/디코딩에 사용되는 유일한 서브분할이 아닐 수 있다. 예측 신호 결정 및 잔차 코딩이 수행되는 입도(granularity)로부터의 이러한 서브분할에서, 첫째, 잔차 코딩은 택일적으로 서브분할없이 수행 될 수 있고, 둘째, 이러한 서브분할 외의 다른 입도에서, 인코더 및 디코더는 예측 파라미터, 예측 신호 합성 제어 신호 등과 같이 전술한 파라미터 중 일부를 포함하는 코딩 파라미터들을 설정할 수 있다.
도 3은 예측 신호(26) 및 예측 잔차 신호(24"")의 조합이 재구성된 신호 (12')를 직접 발생시키는 것을 도시한다. 그러나, 하나 이상의 예측 신호(26)가 예측 잔차 신호 (24"")와 결합되어, 예를 들어, 별도의 DPB를 사용하여 별도의 예측 루프에서 코딩/디코딩된 다른 코딩 레이어들 또는 다른 뷰들로부터 획득된 예측 신호들과 같은 대안적인 실시 예에 따라 픽쳐(12')를 생성할 수 있다는 점에 유의해야 한다.
도 3에서, 변환 블록(84)은 다음과 같은 유의성(significance)을 가져야 한다. 변환기(28) 및 역 변환기(54)는 이러한 변환 블록(84)의 단위로 변환을 수행한다. 예를 들어, 많은 코덱은 모든 변환 블록(84)에 대해 일종의 DST 또는 DCT를 사용한다. 일부 코덱들은 변환을 스킵하도록 허용함으로써, 블록들(84)의 일부에 대해 예측 잔차 신호는 공간 도메인에서 직접 코딩된다. 그러나, 아래에서 설명되는 실시 예들에 따르면, 인코더(10) 및 디코더 (20)는 그들이 여러 변환을 지원하는 방식으로 구성된다. 예를 들어, 인코더(10) 및 디코더(20)에 의해 지원되는 변환들은 다음을 포함할 수 있다:
o DCT-II (또는 DCT-III), 여기서 DCT는 이산 코사인 변환(Discrete Cosine Transform)을 나타냄
o DST-IV, 여기서 DST는 이산 사인 변환(Discrete Sine Transfor)을 나타냄
o DCT-IV
o DST-VII
o 항등변환(Identity Transformation,IT)
당연히, 변환기(28)가 이러한 변환들의 모든 순방향 변환 버전을 지원하는 반면, 디코더(20) 또는 역변환기(54)는 대응하는 그의 역버전 또는 역방향을 지원할 것이다:
o 역 DCT-II(또는 역 DCT-III)
o 역 DST-IV
o 역 DCT-IV
o 역 DST-VII
o 항등변환(Identity Transformation,IT)
어떤 경우든 지원되는 변환들의 집합은 하나의 스펙트럼-대-공간 또는 공간-대-스펙트럼 변환과 같은 하나의 변환만 포함할 수 있다는 점에 유의해야 한다.
전술한 바와 같이, 도 1 내지 도 3은 본 출원에 따른 비디오 인코더 및 디코더에 대한 구체적인 예를 형성하기 위해 후술할 합성 예측(composed-prediction) 개념이 구현될 수 있는 예로서 제시되었다. 지금까지, 도 1 및 2의 비디오 인코더 및 디코더는 각각 아래에 설명된 비디오 인코더들 및 디코더들의 가능한 구현예를 나타낸다. 아래에서 더 상세히 설명하겠지만, 도 1 및 2의 비디오 인코더 및 디코더에 내장된 본 출원에 따른 합성 예측을 위한 후술하는 구현 예를 설명할 때, 도 1의 비디오 인코더와 도 2의 비디오 디코더는 적어도 하나의 옵션으로서, 아래에 더 상세히 설명된 방식으로 블록(80)을 처리하거나, 현재 픽쳐(12)를 구성하는 모든 블록을 처리 할 수 있도록 지원한다. 따라서, 후술하는 실시예들은, 무엇보다도 아래에 더 상세히 설명된 방식으로 블록(80)을 처리하는 도 1의 인코더(10)와 동일한 비디오 인코더를 참조하고, 도 2의 디코더에 대해서도 동일하게 적용되며, 이는 블록(80)이 아래에서 더 상세히 설명되는 방식으로 처리되는 실시 예에 따른 비디오 디코더에 대한 예를 나타낸다. 그러나 도 1 및 2는 구체적인 일 예일 뿐이다. 하지만, 본 출원의 실시 예들에 따른 비디오 인코더는 아래에 더 상세히 설명되는 개념을 사용하여 블록-기반 인코딩을 수행할 수 있으며, 예를 들어, 블록들(80)의 서브분할이 도 3에 도시된 것과 다른 방식으로 수행된다는 점, 또는 이 인코더가 예를 들어 공간 도메인에서 직접 대신에 예측 잔차를 코딩하는 변환 예측 잔차 코딩을 사용하지 않는다는 점에서 도 1의 인코더와 다른 방식으로 수행될 수 있다. 마찬가지로, 본 출원의 실시 예에 따른 비디오 디코더들은 아래에 추가로 설명된 합성 예측 코딩 개념을 사용하여 데이터 스트림(14)으로부터 디코딩을 수행할 수 있지만, 예를 들어, 도 3과 관련하여 설명된 것과 다른 방식으로 픽쳐(12')를 블록들로 분할한다는 점, 및/또는 같은 경우 변환 도메인에서 데이터 스트림(14)으로부터 예측 잔차를 유도하지 않고 예를 들어 공간 도메인에서 도출한다는 점에서 도 2의 디코더(20)와 다를 수 있다.
특히, 블록들(80)으로의 블록-서브분할과 관련하여, 도 3에 대해 개략적으로 설명된 방식 또는 상이한 방식으로 동일한 것이 수행 될 수 있다는 점에 유의해야 한다. 만약, 존재한다면, 변환 블록들로의 서브분할은 또한 도 3과 관련하여 설명된 방식 또는 다른 방식으로 수행될 수 있다. 특히, 한편으로는 블록들로의 서브분할과 다른 한편으로는 변환 블록들과 같은 다른 블록들로의 서브분할은 각각 픽쳐(12)를 이들 블록들로 각각 개별적으로 서브분할 함으로써 서로 독립적으로 또는 종속된 방식으로 수행 될 수 있다. 예를 들어, 변환 블록들로의 서브분할과 같은 하나의 서브분할은 전술한 바와 같이 다른 서브분할의 확장을 형성하거나, 두 서브분할 모두 예를 들어 도 3과 관련하여 설명한 픽쳐의 트리 루트 블록들(tree root blocks )의 배열로의 서브분할과 같이 공통의 1차 서브분할의 별도의 확장을 형성할 수 있다. 그리고 그러한 가능성은 특정 예측 파라미터들, 예측 모드들, 기여 가중치들 등의 정의와 관련하여 아래에서 언급될 다른 서브-픽쳐 입도들(granularities)에도 적용된다. 이러한 엔티티의 서로 다른 것들에 대해 서로 다른 서브분할들이 사용될 수 있으며, 동일한 것이 서로 독립적, 부분적으로 독립적이거나 서로의 확장으로써 정의될 수 있다.
이를 말하면서, 다음의 설명은 모션 벡터들이, 참조 픽쳐의 평면에서 픽쳐 콘텐츠를 이용할 수 없는 이러한 참조 픽쳐의 경계를 너머 가로지르는 부분들을 가리키는 상황에 주목해야 한다. 경계선을 넘어서 확장되거나 완전히 참조 픽쳐 밖에 놓인 하위 부분을 패딩하기 위해, 본 발명의 실시 예들에 따라 복수의 화면 내 예측 모드 중 하나를 선택한다. 그 목적은 예측 블록의 특성을 기반으로 패딩에 가장 적합한 방향성 화면 내 예측 모드를 선택하여 시간적 화면 간 예측 품질을 향상시키는 것이다.
이하의 설명에서 "참조 된 픽셀 영역"이라는 용어는 "참조 된 부분"에 해당하고, "참조 프레임"은 "참조 픽쳐"에 해당하며, "프레임 경계"(frame border)는 "참조 픽쳐의 경계"(border of the reference picture)에 해당하고, "경계 픽셀"(border pixel)은 "경계 샘플"(border sample)에 해당하고, "템플릿 영역"은 "프로브 영역"에 해당한다. 각 해당 용어들은 설명에 사용할 수 있다. 또한 이 출원문서에서 "패딩"(padding)은 "경계 패딩"(boundary padding)과 동일한 의미이다. 또한, 이하의 실시 예에서, 패딩을 위한 화면 내 예측 모드의 예로서 복수의 방향성 화면 내 예측 모드 중 하나가 선택된다. 그러나, 본 발명의 화면 내 예측 모드는 방향성 화면 내 예측 모드에 국한되지 않고 복수의 화면 내 예측 모드는 DC 및/또는 평면 모드들 및/또는 다른 화면 내 예측 모드들을 패딩하기 위한 모드를 포함 할 수 있다. 예를 들어, DC 및 평면 모드의 경우, 경계 샘플들을 대해 수직 방향(프레임 경계에 수직)이 사용될 수 있다.
도 4는 본 출원의 실시 예들에 사용되는 33개의 상이한 방향성 화면 내 예측 모드를 도시한다. 여기서, 참조 픽쳐(참조 프레임)(101)의 참조 부분(참조 픽셀 영역)(100)에서의 예측 각도는 도 4와 같이 프레임 경계(참조 픽쳐의 경계)(106)에 대해 45°와 135°사이 범위에 있다.
구현된 방향성 경계, 패딩은 참조 2에 설명된 대로 JEM (Joint Exploration Test Model)의 방향성 화면 내 예측을 따른다. JEM의 방향성 화면 내 예측 알고리즘은 영역의 좌측 및 상측 경계 픽셀이 항상 예측에 사용할 수 있다고 가정한다. 그럼에도 불구하고 기본 예측 알고리즘은 모든 경계 픽셀을 직선으로 가정하므로 좌측 또는 상측 경계 픽셀의 변환(translation)이 JEM에서 수행된다. 이 변환 단계는 본 출원의 바람직한 실시 예에서 생략된다. 또한 JEM은 33개의 수직 및 33개의 수평 모드로 구성된 65개의 방향성 화면 내 예측 모드를 사용한다. 이 출원의 바람직한 실시 예에서, 도 4에 도시된 바와 같이 33개의 수직 모드들이 사용된다. 또한 JEM에서 수직 방향성 예측을 위한 방법은 0°, 90°, 180° 또는 270°로 시계방향으로 회전되어야 한다는 점에 유의한다. 시계 방향으로 각각 하측, 좌측, 상측 또는 우측 참조 프레임 경계(106)의 경계 패딩을 수행한다.
참조된 픽셀 영역(100)이 수평 및 수직 방향으로 참조 프레임(101) 외측에 부분 또는 전체가 놓여있는 경우, 예를 들어, 참조 프레임 가장자리(즉, 프레임 모서리)에서 바람직한 경계 패딩 측면이 계산된다. 이하에서, NHor 및 NVer 는 참조 프레임 영역 외측에 있는 참조 픽셀 영역(101)의 수평 및 수직 라인의 개수를 나타낸다. 프레임 가장자리와 NHor 및 NVer 에 따라 선호되는 경계 패딩 측면은 다음과 같이 계산할 수 있다:
If edge == Top-Left-Edge then
If NVer > NHor then Top-Side else Left-Side
Else if edge == Top-Right-Edge then
If NVer > NHor then Top-Side else Right-Side
Else if edge == Bottom-Right-Edge then
If NVer > NHor then Bottom-Side else Right-Side
Else if edge == Bottom-Left-Edge then
If NVer > NHor then Bottom-Side else Left-Side
이렇게 계산된 선호 경계 패딩 측면에 대해, 청구항에 따라 선택된 방향성 화면 내 예측 모드가 적용된다. 나머지 측에 대해서는 도 5와 같이 원래의 수직 경계 패딩 프로세스가 적용된다.
도 5에서, 프레임 경계(106)에서 중첩된 참조 픽셀 영역(100)은 다중 모드 경계 패딩 (Multi-mode boundary padding, MMBP)이 사용되는 영역과 디폴트 패딩이 사용되는 나머지 영역으로 나뉜다. 이 경우 수직 패딩이 기본 패딩으로 사용된다.
대안적으로, 참조 프레임(101)의 밖에 있는 참조된 픽셀 영역(100)은 도 6에 도시된 바와 같이 MMBP에 의해 완전히 패딩된다. 이 경우, 모든 방향성 화면 내 예측 모드가 사용될 수 있는 것은 아니다. 왜냐하면 예측 각도에 따라 MMBP 패딩은 예를 들어, 도 6에서 점선 화살표로 도시된 바와 같이 이용할 수 없는 경계 픽셀(102)이 필요할 수 있기 때문이다. 추가로, 방향성 화면 내 예측 모드들의 제한은 제한된 서브셋을 시그널링할 필요 없이 인코더(10) 및 디코더(20)에 의해 암묵적으로 결정될 수 있다는 점에 유의해야 한다. 이를 위해, 참조된 픽셀 영역의 예측된 부분의 코너 픽셀의 예측 방향을 180° 반전시켜 필요한 모든 경계 픽셀을 사용할 수 있는지를 테스트한다.
본 실시 예에서, 경계 패딩을 위한 가장 적절한 방향성 화면간-예측 모드(angular inter-prediction mode)는 참조된 픽셀 영역이 부분적으로 또는 전체가 참조 프레임 영역 외측에 있을 때마다 비디오 인코더(10) 및 비디오 디코더(20)에서 도출된다. 전제 조건으로, 참조된 픽셀 영역 (100)은 도 7에 도시 된 바와 같이 참조 프레임(101) 외측의 영역(100')과 참조 프레임 (101) 내측의 영역(100")으로 나뉜다. 참조 프레임 안쪽에 있는 모든 픽셀(101)은 현재 예측된 블록의 모션 보상 예측을 위한 입력 픽셀들로 직접 사용된다. 영역(100')에서 참조 프레임(101)의 외측에 있는 모든 픽셀은 후술하는 바와 같이 참조 프레임(101)의 인접한 경계 픽셀들(102)로부터의 화면 내 예측의 도움으로 예측된다. 90°의 수직 각도를 갖는 방향성 화면 내 예측은 H.265 및 JEM에서 사용되는 최신의 참조 프레임 경계 패딩에 해당함을 유의해야 한다.
인코더(10) 및 디코더(20)에서 복수의 방향성 화면 내 예측 모드 중 하나를 선택하기 위해, 각 화면 내 예측의 방향은 참조 프레임(101)의 안쪽을 가리키도록 180 °회전될 수 있다. 그런 다음, 템플릿 영역, 즉 프로브 영역(104)은 회전된 화면 내 예측에 기초하여 정의되며, 이는 도 7에 도시 된 바와 같이 참조 프레임(101) 내측에 있다. 템플릿 영역(104)의 크기 및 형태는 제한되지 않는다. 예를 들어 가능한 모양 중 하나는 직사각형 블록일 수 있다. 각각의 모드 및 관련 템플릿 영역(104)에 대해, 템플릿 영역(104) 내의 모든 픽셀 값을 예측하기 위해 인접한 경계 픽셀들(102)로부터 회전 된 화면 내 예측이 수행된다. 가장 적절한 방향성 화면 내 예측 모드는 전술한 예측의 결과 평가함으로써 선택된다.
평가를 위해, 예측된 픽셀들은 템플릿 영역(104) 내에 있는 참조 프레임(101)의 이미 재구성된 픽셀들과 비교되어 최종 방향성 화면 내 예측 모드를 도출한다. 청구된 문구로, 프로브 영역(템플릿 영역)(104)이 채워지고, 채움 프로브를 프로브 영역(104)의 재구성된 채움과 비교하여 그들 사이의 유사성을 측정한다. 이 비교를 위해 블록들 간의 유사성의 측정으로, 예를 들어 절대 차이 합계(sum of absolute differences, SAD), 절대 변환 차이 합계(sum of absolute transformed differences, SATD), 제곱 오차 합계(sum of squared errors, SSE), 하마드(Hadamard) 변환 등을 사용할 수 있다. 예측을 개선하기 위해, 콘텐츠 종속 변환(content dependent transforms)을 사용하여 정보를 예를 들어, 위치에 덜 민감한 다른 도메인으로 변환 할 수 있다. 이러한 콘텐츠 종속 변환들은 학습될 수 있다. 템플릿 영역(104) 안에서 재구성된 픽셀들과 예측된 픽셀 사이의 가장 높은 유사성 측정값을 갖는 방향성 화면 내 예측 모드는, 참조 화상(101)의 경계(106)를 넘어 확장하는 참조 픽쳐(101)의 참조 부분(100)의 영역(100')의 패딩에 사용되도록 최종적으로 선택될 수 있다.
상기 실시 예의 변형으로서, 선택 정확도를 더욱 향상시키기 위해 각 방향성 화면 내 예측 모드에 대해, 다음에서 N = 2라고 가정하고, 복수의(예를 들어, N 개의) 상이한 템플릿 영역(프로브 영역)이 사용될 수 있다. 예를 들어, 제 1 템플릿 영역은 도 8에 도시된 바와 같이 프레임 경계(106)에 대해 참조된 픽셀 영역(100)의 가장 바깥쪽 픽셀 라인(112)에 의존하여 정의된다. 제 2 템플릿 영역은 참조된 픽셀 영역(100)의 제1 픽셀 라인(110)에 의존하여 정의되는데, 이는 도 8에 도시된 바와 같이 참조 프레임(101)의 영역(100')에 놓여 있다.
참조된 픽셀 영역(100) 내의 이들 두 픽셀 라인(110, 112)에 대해, 방향성 화면 내 예측 모드는 방향성 화면 내 예측을 위해 사용되어야 하는 맨왼쪽 및 맨오른쪽 프레임 경계 픽셀들을 결정하기 위해 반전된다. 어떤 종류의 제한 없이, 참조된 픽셀 영역(100)이 프레임 경계(106)의 상부에서 참조 프레임(101)과 중첩되는 것으로 가정된다(또는 바람직한 패딩 측면은 상측이다). 이 경우 맨왼쪽 및 맨오른쪽 프레임 경계 픽셀의 좌표는 도 9에 도시된 바와 같이 {xleft-most; 0} 및 {xright-most; 0}이다. 그러면 연관된 템플릿 영역이 왼쪽-상단 및 오른쪽-하단 좌표인 {xleft-most-1; 1} 및 {xright-most+1; 3}로 이루어진 직사각형 모양으로 정의된다. 이것은 템플릿 영역이 사용된 프레임 경계 픽셀(102) 아래의 참조 프레임 내부의 다음 2 개의 픽셀 라인을 포함하고, 하나의 추가 픽셀에 의해 좌우 방향으로 연장됨을 의미한다. 참조된 픽셀 영역(100)이 좌측, 우측 또는 하측 프레임 경계에서 참조 프레임(101)과 겹치는 경우(또는 바람직한 패딩 측면은 좌측, 우측, 또는 하측임), 템플릿 영역은 그에 따라 회전해야 하며 도 9에 도시된 바와 같이 테이블에 의해 정의된다. 즉, 영역(100')은 참조 픽쳐(101)의 상측, 즉 경계(106)의 위까지 연장되며, 템플릿 영역은 위에서 설명 된 바와 같이 정의된다. 영역 (100')이 참조 픽쳐 (101)의 좌측으로 확장되는 경우, 템플릿 영역은 참조 픽쳐(101)의 좌측 경계를 기준으로 회전된다. 정의된 템플릿 영역의 좌표는 도 9의 테이블을 기반으로 도출되며, 도 9의 표에서 높이와 너비는 참조 픽쳐(101)의 크기이다.
위에서 언급 한 바와 같이, 도 9의 표를 고려하여 제1 픽셀 라인(110)을 기반으로 하는 제1 템플릿 영역과 최외각 픽셀 라인(120)을 기반으로 하는 제2 템플릿 영역을 정의하였다. 그 다음, 두 개의 템플릿 영역의 내부 픽셀 값들은 원래 방향성 화면 내 예측을 180°회전시킴으로써 예측된다. 즉, 두 템플릿 영역(프로브 영역들)이 경계(106)의 부분에서 참조 픽쳐(101)의 경계 샘플들(경계 픽셀들)(102)을 기반으로 도 7에 도시된 각각의 방향성 화면 내 예측 모드에 관련된 채움 방향의 반대 방향을 따라서 채워진다. 따라서 방향성 예측 기법은 참고 문헌 2에 설명된 JEM(Joint Exploration Test Model)의 방향성 화면 내 예측을 따른다. 그 다음, 두 템플릿 영역 내의 픽셀 값들은 SAD(Sum of Absolute Difference) 유사성 측정을 사용하여 재구성 된 참조 픽셀과 비교된다. 최종 방향성 화면 내 예측 모드는 N=2 인 경우 두 템플릿 영역의 SAD 값의 최소 합을 가진 모드로 선택 될 수 있다. 즉, 방향성 화면 내 예측 모드는 충전 프로브와 재구성된 충전 간에 가장 유사성이 높도록 선택될 수 있다. 참조된 픽셀 영역의 다른 픽셀 라인들도 템플릿 영역들을 정의하는 데 사용될 수 있음을 유의해야 한다. 또한, 예를 들어 가장 바깥쪽 픽셀 라인과 첫 번째 윤곽라인 사이의 중간 픽셀 라인도 템플릿 영역을 정의하는 데 사용될 수 있다. 또한 유사성 측정에는 루마(luma) 강도 또는 에지 감지와 같은 특성에 대한 각 프로브 영역 내의 샘플 가중치를 포함하여 샘플의 중요성을 구분할 수 있으므로, 각 샘플의 유사성 측정에 대한 유사성 기여도에 동일하지 않은 가중치를 부여하는 것은 수행된 심리-시각적(psycho-visual) 가중치를 기반으로 한다.
또한, 패딩을 위한 방향성 화면 내 예측 모드를 유도하여 경계 패딩의 거동을 제어하는 하이-레벨 파리미터(high-level parameter )는 템플릿 영역의 크기 및 모양을 포함 할 수 있다. 이는 프레임 경계에 수직인 추가 픽셀 라인의 개수와 템플릿 영역의 선택적 확장은 좌측 및 우측으로 프레임 경계와 평행할 수 있음을 의미한다. 추가적으로, 템플릿 영역을 정의하는 데 사용되는 참조된 픽셀 영역의 라인들, 예컨대 참조 프레임을 벗어난 첫번째 라인과 가장 바깥 쪽 라인, 첫 번째 라인과 가장 바깥 쪽 라인 사이의 중간 라인을 지정하기 위해 하이-레벨 파라미터가 도입 될 수 있다. 또한 사용된 방향성 화면 내 삽입 모드의 개수의 감소가 시그널링될 수 있다. 패딩을 위한 방향성 화면 내 예측 모드를 선택하기 위해, 참조된 픽셀 영역이 얼마나 많이 참조 프레임 외부에 있어야 하는지 정의하는 최소 및/또는 최대 임계 값을 지정하기 위해 추가적인 하이-레벨 파라미터가 도입 될 수 있다. 즉, 임계값은 참조 픽쳐 외부의 참조 부분의 확장 영역의 양을 정의 할 수 있다.하이-레벨 파라미터는 픽쳐 파라미터 집합(picture parameter set, PPS), 시퀀스 파라미터 집합(sequence parameter set, SPS), 슬라이스 헤더 또는 기타 하이-레벨 구문 구조(high-level syntax structure )로 시그널링 될 수 있다.
또한, 프로브 영역 선택을 위한 프로세스와 관련하여 수직 경계 확장을 특징으로 하는 알려진 코덱을 사용할 수 있다. 수직 경계 확장의 구현에서, 움직임 벡터(motion vector, MV) 클리핑으로 알려진 기술은 일반적으로 경계 확장 샘플들의 샘플 값들을 저장하는 것과 관련된 메모리 비용을 낮추는 데 사용된다. 수직 경계 확장에서 샘플 값들의 반복적인 특성에 대해서는, 경계 확장 샘플들만 포함하는 참조 블록을 생성하는 모션 벡터들을 클리핑하는 것이 좋다. 클립된 MV로부터 생성된 참조 블록의 내용은 원래 참조 블록과 유사하다. 그러나 디코더 구현은 제한된 크기의 경계 확장을 생성함으로써 이러한 샘플을 사용하여 리소스를 절약 할 수 있다. 일반적으로, 보간 필터 커널의 크기와 가장 큰 코딩 단위의 크기의 합과 같은 고정된 크기 제한은 도 10에 도시된 생성된 경계 확장 샘플의 제한된 양에 모든 잠재적 참조 블록 크기를 맞출 수 있도록 사용된다.
도 11에 도시된 바와 같이, 다중 모드 경계 패딩(Multi-mode boundary padding, MMBP)에서 프레임 경계로부터 참조된 픽셀 영역의 거리는 디코더(20) 측에서 프로브 영역의 선택 프로세스에 영향을 미친다. 따라서, MV 클리핑이 인코더(10) 및 디코더(20) 측에서 조정된 방식으로 수행되어 상이한 프로브 영역들의 사용으로 인한 불일치를 방지하는 것이 필요하다. 따라서, 본 발명의 한 양태는 위에서 언급 한 바와 같이, 사용된 클리핑 절차를 인코더(10)가 지시할 수 있는 파라미터 세트, 슬라이스 헤더 등이나 디코더(20)에 나타내는 대응하는 비트스트림 제약과 같은 비트스트림 구조의 하이-레벨 구문 요소들이다. 이러한 구문(syntax) 요소에는 예를 들어 MV 클리핑이 수행되는 프레임 경계에서 참조 블록까지의 MV 거리, 최대 MV 길이뿐만 아니라, 클리핑된 모션 벡터에서 발생하는 참조 픽셀 영역과 프레임 경계 사이의 거리, 또는 MV가 클리핑되는 크기가 포함된다. 포함된 정보는 위에서 언급 한 정보에 국한되지 않고 추가 정보 또는 기타 정보도 포함할 수 있다.
또한, 적응형 MV 클리핑은 참조된 픽셀 영역의 크기, 즉 참조된 블록 크기로 클리핑 양을 조정하여 유익한 방법으로 프로브 영역 선택을 제어하는데 사용될 수 있다. 도 12에 도시된 바와 같이, 동일한 MV가 크기가 다른 B>A의 두 블록에 사용되며, 적응형 MV 클리핑은 붉은 색인 두 개의 다른 MV를 생성하며, 예를 들어, 참조된 영역이 프레임 경계에 최대한 근접하게 되어 선택된 프로브 영역까지의 거리도 최소화된다. 즉, 소형 스킵 참조된 부분(110') 즉, 블록 크기 A(더 작은 블록)의 경우, 모션 벡터의 양이 더 큰 크기 참조된 부분(110') 즉, 블록 크기 B(더 큰 블록)의 경우보다 크다. 따라서 현재 픽쳐의 화면 간 예측 블록의 모션 벡터의 좌표를 참조된 부분의 크기에 따라 양으로 클리핑하는 것은, 크기가 작을수록 양이 커지게 된다. 따라서, 이 발명의 또 다른 측면은 인코더(10)이 참조 블록 크기에 적응적인 방식으로 MV 클리핑이 수행된다는 것을 인코더(10)가 지시할 수 있는 파라미터 세트, 슬라이스 헤더 등이나 디코더가 지시하는 대응하는 비트스트림 제약과 같은 비트스트림 구조의 하이-레벨 구문 요소들이다.
인코더 측에서 평가할 코딩 옵션의 양은 코덱의 복잡성에 중요한 요소이다. 따라서 본 발명의 한 측면은 여기에 설명하는 경계 패딩의 복잡성의 영향을 제어하기 위한 측정이다. 이 측정은 인코더에서 모션 추정, 즉 알려진 모션 추정을 두번째 스테이지까지 확장하여, 화면 간 예측을 위한 서로 다른 모션 보상 예측 샘플들의 검색 및 코딩 비용 평가를 수행함으로써 구성된다. 첫 번째 움직임 보상 스테이지는 알려진 움직임 보상의 모든 단계를 포함하지만(예를 들어, 알려진 경계 패딩 샘플들을 생성하고 주어진 예측(predictor)에 대한 잔차 데이터의 코딩 비용을 평가함), 두번째 스테이지는 알려진 모션 보상으로 수정되며, 여기서 최상의 예측(predictor)은 여기에 설명된 것과 같이 보다 정교한 경계 샘플 패딩 방식을 통해 더욱 향상된다.
참조된 부분이 참조 픽쳐의 일부 또는 전체에 놓여 있는 경우, 다음의 다른 실시예가 또한 적용된다. 앞서 언급했듯이 전제 조건으로 참조된 픽셀 영역은 참조 프레임 영역 외측에 있는 영역과 참조 프레임 영역 내측에 있는 영역으로 구분된다. 참조 프레임 영역 내측에 있는 모든 픽셀은 현재 예측 블록의 모션 보상 예측을 위한 입력 픽셀들로서 직접 사용된다. 참조 프레임 영역 외측에 있는 모든 픽셀은 도 13 및 14에 도시된 바와 같이, 참조 프레임의 인접 경계 픽셀로부터 방향성 화면 내 예측의 도움으로 예측된다. 즉, 참조된 부분(100)의 영역(100'), 즉, 참조된 부분(100) 안에 있는 참조 픽쳐(101)의 경계(106) 외측 영역(100')은 경계 샘플들(110)에 기초하여 채워진다. 채움 방향은 33개의 상이한 방향성 화면 내 모드로부터 선택된다. 이 경우, 33개의 방향성 화면 내 모드들 중에서 선택할 필요는 없으며, 미리 파라미터로 정의된 제한된 수의 방향성 화면 내 예측 모드들 중에서 선택될 수 있다. 도 13은 하나의 방향성 화면 내 예측 모드(120)를 나타내고, 도 14는 또 다른 방향성 화면 내 예측 모드(122)를 나타낸다. 도 13 및 14에서, 사용된 경계 픽셀(110')은 선택된 방향성 화면 내 예측 모드(120 및 122)에 각각 직접적으로 의존한다. 추가로, 90°의 수직 각도를 갖는 방향성 화면 내 예측 모드는 H.265 및 JEM에서 사용되는 최신 참조 프레임 경계 패딩에 해당함을 유의해야 한다. 선택된 방향성 화면 내 예측 모드는 인코딩된 비트 스트림 내의 디코더에 시그널링된다.
또한, 선택된 방향성 화면 내 예측 모드는 상황 기반 적응적 산술 코딩(context-based adaptive arithmetic coding, CABAC)을 사용하여 코딩 될 수 있다. 또한 선택된 방향성 화면 내 예측 모드를 기반으로 한 경계 패딩 또는 디폴트 수직 경계 패딩이 적용되는지 여부를 나타내기 위해 활성화 플래그가 사용된다, 디폴트 수직 모드가 33개의 방향성 화면 내 예측 모드 중 하나이기 때문에, 나머지 32개의 방향성 화면 내 예측 모드는 5개의 추가 CABAC 빈들(bins)로 코딩될 수 있다. 활성화 플래그와 나머지 방향성 모드들은 적응형 이항 확률 모델들을 사용하여 일련의 이항 결정(binary decisions)으로 코딩된다(이들 빈들(bins)의 서브셋, 예를 들어, 방향성 화면 내 예측 모드는 비적응 확률 모델들로 코딩 될 수도 있음). 활성화 플래그를 모델링하기 위해, 참조된 픽셀 영역이 참조 프레임을 벗어나는 양에 기초하여 선택될 수 있는 상이한 컨텍스트 모델들이 사용될 수 있다. 예를 들어, 참조된 픽셀 영역의 ¼ 미만, ½ 미만, ¾ 미만 또는 ¾ 초과가 참조 프레임 밖에 있는 경우에 상이한 컨텍스트 모델들이 사용될 수 있다.
대안적으로, MPM(most probable mode) 목록을 사용하여 경계 패딩에 대해 자주 발생하는 방향성 화면 내 예측 모드를 신호화한다. 가능한 MPM 후보들은, 경계 패딩에 대한 방향성 화면 내 예측 모드를 이들 블록들에 대해 사용할 수 있는 경우, 이전에 코딩된 인접 블록들의 경계 패딩에 대한 방향성 화면 내 예측 모드일 수 있다. 다른 MPM 후보들로는, 만약 이용 가능하다면, 인접한 이전에 코딩된 블록의 방향성 화면 내 예측 모드 일 수 있다. 또한 참조된 픽쳐에 배치된(collocated) 참조 프레임에서의 코딩된 블록의 방향성 화면 내 예측 모드들이 MPM 후보로 사용될 수 있다. 또한, 참조된 픽쳐 영역에 배치된(collocated) 연관된 랜덤 액세스 포인트 픽쳐에서의 코딩된 블록의 방향성 화면 내 예측 모드들이 MPM 후보로 사용될 수 있다. 33개의 방향성 화면 내 예측 모드의 경우, MPM 후보 목록에는 하나의 MPM 후보 모드가 포함된다. CABAC 이진 플래그는 어떤 MPM 후보를 사용해야 하는지 여부를 신호화 하기 위해 사용된다. 나머지 32개의 방향성 화면 내 모드들은 5개의 CABAC 빈으로 신호화할 수 있다. MPM 플래그와 나머지 방향성 화면 내 예측 모드들은 전술한 보와 같이 적응형 이항 확률 모델을 사용하여 일련의 이항 결정으로 코딩된다.
경계 모드에 대한 방향성 화면 내 예측 모드는 코딩된 블록의 모션 정보의 일부이다. 따라서, 모션 정보가 다른 코딩된 블록에서 사용/복사되는 경우, 예를 들어, 병합 모드 또는 모션 벡터 예측이 사용되는 경우, 복사된 모션 벡터와 관련된 경계 패딩에 대한 방향성 화면 내 예측 모드도 또한 복사 될 수 있고, 참조된 픽셀 영역이 참조 프레임 영역 밖에 있는 경우에 적용될 수 있다. MMBP가 활성화 된 블록으로부터 모션 벡터가 예측되는 경우, 만약 MMBP가 코딩된 블록에 사용되는 경우, 패딩을 위해 선택된 방향성 화면 내 예측 모드가 현재 코딩된 블록의 패딩 방향의 코딩을 위한 MPM이 될 수 있다. 대안적으로, 가능한 모션 예측 후보가 가능한 MPM 목록을 제공 할 수 있다.
패딩을 위한 선택된 방향성 화면 내 예측 모드의 시그널링과 함께, 부분적인 경계 패딩의 수행을 제어하는 하이-레벨 파라미터들은 경계 패딩을 위해 이용되는 방향성 화면 내 예측 모드들의 서브셋을 정의하기 위한 파라미터를 포함할 수 있다. 이 경우, 패딩을 위한 지원되는 방향성 화면 내 예측 모드들의 수는 더 적은 수로 제약될 수 있고, 더 적은 CABAC 빈들(bins)이 경계 패딩을 위한 선택된 방향성 화면 내 예측 모드들을 시그널링하기 위하여 사용되어야 한다. 예를 들어, 2개 모드들의 MPM 후보 리스트와 조합하여 18개의 방향성 모드들의 오직 하나의 서브셋을 이용한다면, 4 CABAC 빈들로 인코딩될 수 있는 오직 16개의 방향성 모드들이 유지된다(따라서, MPM 모드의 시그널링을 위한 2개 빈들(bins) 및 잔존 non-MPM 모드들을 시그널링하기 위한 5개 빈들(bins)을 초래한다). 추가적인 하이-레벨 파라미터들이 얼마나 많은 참조 필셀 영역이 전술된 바와 같이 패딩을 위한 가장 적절한 방향성 화면 내 예측 모드를 선택하기 위하여, 참조 프레임 영역 외측에 있어야 하는지를 규정하는 최소 및/또는 최대 문턱값을 지정하기 위하여 도입될 수 있다. 상기 하이-레벨 파라미터들은 픽쳐 파라미터 세트(Picture Parameter Set, PPS), 시퀀스 파라미터 세트(Sequence Parameter Set, SPS), 슬라이스 헤더(slice header) 또는 다른 임의의 하이-레벨 구문 구조 내에서 시그널링될 수 있다.
전술된 실시예들은 결합될 수 있는데, 예컨대, 템플릿을 이용하는 실시예 및 전술한 상기 선택된 방향성 화면 내 예측 모드를 시그널링하는 다른 실시예가 이하에서 설명하는 다른 실시예에서와 같이 결합될 수 있다.
방향성 화면 내 예측 모드들의 선택은 도7에서 설명되는 바와 같은 실시예를 뒤따른다. 이 실시예에서, 패딩을 위한 방향성 화면 내 예측 모드들의 지시된 리스트가 전술한 바와 같은 유사성 측정에 기초하여 생성된다. 패딩을 위한 생성된 방향성 화면 내 예측 모드들의 이 지시된 리스트는 패딩을 위한 최대 시그널링된 방향성 화면 내 예측 모드들의 미리 정의된 값에 의해 길이가 짧아진다(truncated). 결국, 이 짧아진 지시된 리스트 안에서 패딩을 위한 상기 선택된 방향성 화면 내 예측 모드들은 전술한 바와 같은 상황 기반 적응적 산술 코딩(CABAC)을 이용하여 시그널링된다.
이미 전술된 바와 같이, 인에이블 플래그는 디폴트 수직 경계 패딩 또는 선택된 패딩 모드들의 짧아진 지시된 리스트가 이용되는지를 지시하는데 이용될 수 있다. 또한, 시그널링된 패딩 모드들의 수는 N개의 CABAC 빈들(bins)로 시그널링될 수 있는 2N으로 설정된다. 선택된 방향성 화면 내 예측 모드들은 적응형 이항 확률 모델들을 사용하여 일련의 이항 결정(binary decisions)으로 코딩된다(이 빈들의 서브셋이 또한 비적응성 확률 모델들로 코딩될 수 있다). 이항 확률 모델들이 선택된 방향성 화면 내 예측 모드들을 인코딩하는데 이용되는 경우, 전술된 바와 같이 참조 프레임 영역의 외측에 위치하는 참조 부분의 영역의 크기에 기초하여 선택될 수 있는 상이한 상황 모델들(context models)이 이용될 수 있다. 또한, 패딩을 위한 선택된 방향성 화면 내 예측 모드들의 짧아진 지시된 리스트가 MPM 후보 리스트로서 이용된다. 여기에서, MPM 후보 리스트 및 패딩을 위한 남아있는 방향성 화면 내 예측 모드들이 전술된 바와 같이 인코딩될 수 있다. 더욱이, 전술한 바와 같은 동일한 하이-레벨 파라미터들 예컨대, 방향성 화면 내 예측 모드들의 서브셋을 정의하기 위한 파라미터, 상기 선택된 방향성 화면 내 예측 모들의 적용을 위한 문턱값들, 및 템플릿 영역의 크기 및 형상을 정의하는 파라미터들이 또한 이용될 수 있다. 또한, 전술한 바와 같이, 하이-레벨 파라미터들이 픽쳐 파라미터 세트(PPS), 시퀀스 파라미터 세트(SPS), 슬라이스 헤더 또는 다른 임의의 하이-레벨 구문 구조 내에서 시그널링될 수 있다.
본 출원의 바람직한 실시예에서, 하이-레벨 구문은 멀티-모드 경계 패딩을 제어하는 구문 원소들을 포함한다. 하이-레벨 구문 원소들은 하나 이상의 하이-레벨 구문 구조들 예컨대 시퀀스 파라미터 세트(SPS: 코딩된 비디오 시퀀스 내의 모든 픽쳐들에 대해서 유효함), 픽쳐 파라미터 세트(PPS: 하나 이상의 픽쳐들에 대해서 유효함), 슬라이스 헤더(슬라이스에 대해서 유효함) 등 내에서 전송된다.
방향성 화면 내 예측 모드를 선택하기 위하여 상기 인가를 제어하는 하이-레벨 구문 원소들이 다음의 파라미터들 중 하나 이상을 포함할 수 있으나 이에 한정되는 것은 아니다:
ㆍ패딩(MMBP, 수직 또는 전방향 패딩)을 위해 어느 방향성 화면간 예측 모드가 적용되어야 하는지를 시그널링하는 플래그 또는 IDC
ㆍ패딩 모드들의 프레임-경계-방식의 조합들을 나타내는 제약 또는 시그널링하는 파라미터; 그것은 예컨대, 전방향 패딩이 이용되거나 MMBP가 이용되는지에 관해 외부 참조 픽쳐의 프레임 경계 또는 외측 픽쳐 경계를 따르는 부분에 대하여 데이터 스트림 내에 시그널링될 수 있다; 하나의 옵션으로, 두 옵션들이 가용하다는 것이 시그널링될 수 있다; 인코더 및 디코더가 참조 영역이 참조 픽쳐의 프레임 경계 중 어느 부분과 중첩하는지를 체크하거나 참조 영역이 횡단하는 부분이 어디인지를 체크하기 위하여, 상이한 부분들에 대해서, 다른 가용한 모드들이 시그널링되어, 어느 화면 내 예측 모드를 이용할지를 결정할 수 있다:
ㆍ전술한 실시예 중 어느 선택 프로세스가 이용되는지를 시그널링하는 파라미터
ㆍ어느 방향성 화면 내 예측 모드들이 MMBP에 대해 이용될 수 있는지를 시그널링하는 파라미터
ㆍ어느 정확한 방향성 화면 내 예측 모드들이 특정 참조 프레임 경계 영역들에 대해서 이용될 수 있는지를 지정하는 파라미터
ㆍ방향성 화면 내 예측 모드를 선택하는데 적용하기 위하여, 참조 프레임 영역의 외측에 참조 픽셀 영역이 얼마나 많이 위치해야 하는지를 규정하는 최소 및/또는 최대 문턱값
ㆍ템플릿 영역의 크기 및 모양을 시그널링하는 파라미터들
ㆍ템플릿 영역들을 결정하기 위해 사용되는 참조 픽셀 영역 내의 선들의 세트를 시그널링하는 파라미터
제2 대안에 관하여, 다음을 추가적으로 주목한다: 앞서 강조된 실시예들이 예시들로서 방향성 화면 내 예측 모드들을 사용하였고, 이로부터 패딩을 위한 화면 내 예측 모드가 최종적으로 선택되었지만, 전방향성 패딩 모드가 즉, 이로부터 프레임 외측에 위치하는 영역이 동일한 프레임, 즉 참조 프레임의 내측 샘플들을 이용하여 채움/패딩 되는 전방향성 패딩 모드가 화면 내 예측 모드인 것처럼, 수직적 패딩 모드 패딩은 또한 화면 내 예측 모드이며, 이로부터 경계 샘플들을 프레임 경계를 넘어서는 영역들로 수직적으로 추정함으로써 패딩이 수행된다. 따라서, 하이 레벨 구문은 어느 화면 내 예측 모드가 이용되어야 하는지, 또는 어느 화면 내 예측 모드(들)가 프레임 경계의 어느 부분에 대하여 가능한지에 대하여 드러내고, 여기에서 우측 및 좌측 경계와 같은 일 부분에 대해서는 전방향 모드 및 상측 및 하측 경계와 같은 프레임 경계의 나머지 부분에 대해서는 수직 모드와 같이, 상이한 것들이 프레임 경계의 상이한 부분들에 대하여 가용한지 또는 이용될 것인지 시그널링될 수 있다. 인코더 및 디코더는 화면 내 예측 블록의 특정 참조 영역(80)이 넘어서는 프레임 경계의 일부를 인식해야 하고, 이것이 패딩을 위해서 데이터 스트림 내의 하이 레벨 구문에 따라서, 어느 화면 내 예측 모드와 연관되는지를 알아야 한다. 앞서 열거된 파라미터들은 하나 이상의 하이-레벨 구문 구조들에 포함될 수 있다. 예를 들어, SPS 에서 지정된 전역 파라미터들은 PPS에서 지정된 변수들에 의해 치환될 수 있다.
본 출원의 실시예들에 대해서, 그것은 참조 픽셀 영역이 부분적으로 또는 전체적으로 참조 프레임 영역의 외측에 위치할 때마다 요구된다. 전제 조건으로서, 참조 픽셀 영역이 전술된 바와 같이, 참조 프레임 영역의 외측 영역과 참조 프레임 영역의 내측 영역으로 나누어진다. 참조 프레임 영역의 내측의 모든 픽셀들은 현재 예측 블록의 모션 보상 예측에 대한 입력 픽셀로서 직접 이용된다. 참조 프레임 영역의 외측 모든 픽셀들은 전술한 바와 같이, 참조 프레임의 인접 경계 픽셀들로부터 화면 내 예측의 도움으로 예측된다.
즉, 다음의 단계들은 다시 예시적으로, 인코더 및 디코더에서 패딩을 위해 이용될 바람직한 화면 내 예측 각도 또는 바람직한 화면 내 예측 모드가 복수의 가용한 화면 내 예측 각도들로부터 어떻게 선택될 수 있는지를 기술한다. 선택 프로세스는 예측할 각각의 블록에 대해서 및 휘도(Y) 컬러 평면에 대한 각각의 연관된 모션 벡터에 대해서 수행될 수 있다:
ㆍ참조 영역(100)의 위치 결정: 현재 블록과 연관된 모션 벡터를 현재 블록의 영역에 더함으로써, 참조 영역(100)을 산출. 모션 벡터는 부분을 가질 수 있다는 것을 주의. 따라서, 모션 벡터를 가장 인접한 정수 부분으로 내림(round down). 모션 벡터를 현재 블록 위치에 더함. 참조 영역(100)을 각각의 방향으로 1 샘플만큼 증가시킴. 즉, 영역(100)은 MMBP가 수행되는 화면 간 예측 블록보다, 모든 방향들(좌,우,상,하)로 한 샘플 더 커질 수 있음.
ㆍ바람직한 IntraBP 측면 결정: 참조 영역(100)이 참조 프레임(101)과 일 측에서 중첩된다면 오직 이 측면을 사용하고, 그렇지 않으면 참조 영역(100)이 참조 프레임(101)과 두 측면에서 중첩됨(도5 참조). 다음, 더 적은 샘플 라인들만큼 참조 프레임과 중첩하는 측면에 대해 디폴트 수직 패딩을 사용. 나머지 측면에 대해서는 IntraBP 패딩을 이용.
ㆍ상위 및 하위 라인의 결정: 하위 라인은 바람직한 IntraBP 측면과 평행한, 참조 프레임(101)의 외측 참조 영역(100)의 첫번째 샘플 라인임(도8에서 110). 상위 라인은 바람직한 IntraBP 측면과 평행한 참조 프레임 외측 참조 영역의 마지막 샘플 라인임(도8에서 112). 즉, 참조 프레임의 경계(106)로부터 가장 먼 것이 선택됨.
ㆍ복수의 가용한 화면 내 예측 모드들의 제약: 상위 라인 및 각각의 화면 내 예측 모드에 대해서, 예측 방향을 반대로 함으로써, 화면 내 예측에 사용되어야 하는 관련된/영향을 받는 경계 픽셀들을 산출. 수직 화면 내 예측 모드로부터 경계 픽셀들의 최대 변위가 예측 블록의 폭 * 1.25 보다 크다면, 이 화면 내 예측 각도를 사용하지 말고 건넘 뜀. 이 단계를 선택적임. 즉, 선택적으로, 그러한 방향성 모드들은 선택 가능한 모드들의 리스트에서 배제되고, 이는 샘플들의 최외각 라인을 경계 샘플들에 역-투영할 때 경계 샘플들(110)이 미리 결정된 문턱값 이상으로 최외각 샘플 라인의 수직 역-투영 풋프린트로부터 보상되도록 함.
ㆍ하위 및 상위 라인에 대한 프로브 영역의 산출: 하위 (상위) 라인 및 화면 내 예측 모드들의 제약된 세트 중 각각의 화면 내 예측 모드에 대해, 예측 방향을 뒤바꾸어 화면 내 예측을 위해 사용되어야 하는 관련된/ 영향을 받는 경계 픽셀들(110')을 결정함. 참조 프레임 내측의 영향을 받는 경계 픽셀들 아래에 프로브 영역(104)을 위치시킴(도7의 104). 바람직한 IntraBP 측면에 수직인 프로브 높이를 2개의 샘플들 라인들로 설정.
ㆍ유사성 측정치 산출: 역 화면 내 예측(inverted intra prediction)에 의해 관련된/영향을 받는 경계 픽셀들로부터 프로브 영역의 샘플 값들을 예측. 프로브 영역의 예측된 샘플 값들과, 프로브 영역의 위치에서 참조 프레임의 재구성된 샘플 값들 사이에서 SAD 측정을 산출. 하위 및 상위 프로브 영역으로부터 SAD 측정치들을 결합/가산.
ㆍ바람직한 화면 내 예측 각도를 선택: 제약된 화면 내 예측 각도들의 세트 중에서, 바람직한 화면 내 예측 각도인 가장 작은 유사성 측정치를 갖는 각도를 선택. 화면 내 예측 각도들이 동일한 유사성 측정치를 갖는다면, 수직 예측 각도에 더 근접한 각도를 선호.
선택된 바람직한 화면 내 예측 각도가 수직의 화면 내 예측 각도와 같지 않다면, 인코더 및 디코더에서 상기 선택된 화면 내 예측 각도 및 상기 바람직한 IntraBP 측면에 대해서 IntraBP 수행하라.
ㆍ참조 영역의 위치 결정: 상기 설명과 유사한 참조 영역을 산출. 참조 영역을 각각의 방향으로 하나의 샘플만큼 증가시킬 뿐만 아니라, 대신하여 각각의 방향으로 보간 필터 탭들의 크기의 절반만큼 증가시킴.
ㆍ참조 프레임 내측에 위치하는 참조 영역의 부분을 채움: 참조 프레임의 샘플 값들과 함께 참조 프레임 내측에 위치하는 참조 영역의 부분을 채움
ㆍ바람직하지 않은 IntraBP 측면을 선택적으로 채움: 참조 영역이 두 측면에서 참조 프레임과 중첩된다면, 더 적은 샘플 라인들만큼 참조 프레임과 중첩되는 참조 영역의 부분에 대해서 디폴트 수직 패딩을 수행.
ㆍ바람직한 IntraBP 측면에 대해서 IntraBP를 수행 : 참조 프레임의 외측에 위치하는 참조 영역(100')을 채우기 위하여, 바람직한 화면 내 예측 각도를 이용하여, 바람직한 IntraBP 측면의 경계 샘플들 상에 화면 내 예측을 수행.
현재 블록의 모션 보상 예측에 대한 입력 값들로서, 각각의 컬러 평면에 대해서 전술한 바와 같은 참조 영역 샘플 값들 산출을 이용하라.
추가적으로, MPEG OMAF 표준에 기초한 360° 비디오 스트리밍 서비스들과 같은 기존 응용은 공간 비디오 분할 또는 세그멘테이션 기술들에 매우 많이 의존한다. 이러한 응용에서, 공간 비디오 세그먼트들은 클라이언트에게 전송되고, 현재 클라이언트가 바라보는 방향에 적응적인 방식으로 결합적으로 디코딩된다. 비디오 평면의 공간 세그먼트에 의존하는 또다른 관련 응용은 예컨대, 멀티-코어를 가능하게 하는 인코딩 및 디코딩 동작의 평행화(parallelization) 및 현대 컴퓨터 플랫폼들의 평행화 능력들이다.
공간 세그멘테이션 기술과 같은 기술 중 하나는 HEVC에서 구현되고, 픽쳐 평면을 사각형 그리드를 형성하는 세그먼트들로 나누는 타일들로 알려져 있다. 결과적인 공간 세그먼트들은 엔트로피 코딩 및 화면 내 예측에 관하여 독립적으로 코딩된다. 또한, 화면 간 예측에 관하여 공간 세그먼트들이 또한 독립적으로 코딩된다는 것을 나타내는 수단이 존재한다. 이는 또한 화상들에 걸쳐 정적인 공간 세그멘테이션과 결합할 수 있다. 이와 함께, 이들 제약들은 2개의 이러한 이웃하고 독립적으로 코딩된 공간 세그먼트들을 갖는 예시적인 픽쳐의 공간 세그멘테이션의 진짜 독립적인 코딩을 허용한다.
더욱 상세하게, 화면 간 예측을 통해 전술된 공간 세그멘테이션을 이용하여 참조 픽쳐를 가능하게 하는 도15에 개시된 공간 세그멘테이션을 이용하여 현재 픽쳐를 인코딩하는 경우, 교차-공간 세그멘트들(A)이 공간 세그먼트(B) 내에 위치하는 참조 픽쳐의 샘플에 대한 참조를 통해 예측되는 것 및 그 반대의 경우를 회피하는 방식으로 모션 벡터들이 제약된다.
공간 세그먼트들의 독립적인 코딩은 전술한 바와 같은 기존 응용들에 대한 조력자(enabler)인 반면, 연관된 코딩 제약들은 주요한 코딩 비용이 될 수 있다. 이 비트율 오버헤드(bitrate overhead)는 예컨대, 비교적 더 큰 모션 벡터 차이들(motion vector differences, MVD)을 시그널링하는 것으로부터 기인하고, 이 차이들은 가용한 모션 벡터 후보들을 정정하는데, 그렇지 않으면 MVD 없이 주어진 공간 세그먼트 외측의 샘플 위치들을 이용하게 된다. 또한, 잔존 데이터의 증가된 양은 퇴화된 화면 간 예측 예측기에 대한 보상을 위하여 시그널링될 필요가 있다. 따라서, 이러한 공간 세그먼트들의 경계들에서 코덱 동작을 향상시키는 것이 매우 요구된다.
이러한 독립적인 공간 세그먼트들에 대한 종래 기술 솔루션들의 코딩 비용을 완화시키는 한 방법은 여기에서 설명된 약간의 수정 버전 및 확장 버전을 이용하여 픽쳐 경계들에 기초하여 전술한 MMBP 컨셉과 유사한 또는 이에 따라, 외측 프레임 경계들에 부가하여, 인-픽쳐(in-picture) 경계들 예컨대, 픽쳐의 내부에 위치하는 세그먼트 경계 의 패딩을 위한 기술을 채용하는 것이고, 또는 2 이상의 화면 내 예측 모드들 중 어느 것이 공간 세그먼트 경계에 대해서 또는 수직한 것들(vertical ones)과 같은 공간 세그먼트의 경계의 특정 부분에 대해서 이용될 인지를 시그널링하는 하이 레벨 구문 기반 패딩 모드 선택을 이용하는 것이다. 즉, 시그널링된 모션 벡터들이 공간 세그먼트의 경계들을 너머 확장하는 또는 너머 위치하는 참조 부분들을 참조하지 않도록 인코더가 제약하는 대신, 그러한 부분들은 인코더 및 디코더에서 패딩될 것이고, 그러한 참조 부분이 공간 세그먼트 경계의 미리 결정된 부분을 교차하거나 또는 넘어서 위치한다면, 시그널링된 화면 내 예측 모드가 패딩을 위해서 이용된다. 코딩 비용을 완화시키는 것은 일반적으로 수직, 전방향, 또는 방향성 화면 내 예측 모드 중 하나와 같은 어느 화면 내 코딩 모드를 이용하는 것에 의해 즉, 멀티-모드 선택없이 달성될 수 있다. 이에 의해, 블록-기반의 비디오 코딩을 위한 인코더 및 디코더가, 화면 간 예측 블록에 대해, 화면 간 예측 블록이 내부에 위치하는 참조 픽쳐 내의 미리 결정된 공간 세그먼트의 인-픽쳐 세그먼트 경계를 너머 확장한 또는 위치하는 참조 픽쳐(101)의 참조 부분(100)을 참조하는 모션 벡터를 데이터 스트림으로 인코딩하고 및 이를 데이터 스트림으로부터 디코딩하도록 구성되도록 하고, 인-픽쳐 세그먼트 경계를 너머 즉, 미리 결정된 공간 세그먼트 외측으로 확장하거나 그 곳에 위치하는 참조 부분(100)의 영역(100')을 패딩하도록 구성된다. 인코더는 시그널링된 모션 벡터가 공간 세그먼트들의 미리 결정된 공간 세그먼트 내에서 유지하도록 하는 모션 벡터의 모션 벡터 예측기에 현재 픽쳐를 포함하는 비디오의 픽쳐들이 일정하게 분할되는 방식으로, 참조 픽쳐가 분할되었음을 재전송할 필요가 없다. 인코더는 이 벡터에 대한 재전송 모션 벡터 차이를 시그널링할 필요가 없다. 시그널링되는 모션 벡터 차이는 모션 벡터가 미리 결정된 공간 세그먼트 외측의 부분을 참조하도록 한다. 특히, 인코더는 현재 및 참조 픽쳐들 내의 공간적으로 오프셋 공간 세그먼트들의 공간 세그먼트 코딩 독립성을 강요하는 디코더의 패딩 메커니즘에 의존할 수 있고, 디코더는 동일하게 즉, 디코딩되는 픽쳐 버퍼를 채우기 위하여 화면 간 예측 블록을 재구성하기 위한 패딩을 수행한다.
제1 양태로서, 비트스트림 구조들 내에서 파라미터 세트들, 슬라이스 헤더들 또는 그 밖의 것들과 같은 하이-레벨 구문 요소들은 일반적으로 공간 세그먼트 경계들 상에 멀티-모드 경계 패딩을 적용하는 것을 제어한다. 이 구문의 한 값은 다음을 디코더에게 지시한다:
ㆍ공간 세그먼트의 샘플들의 화면 간 예측은 다른 공간 세그먼트들에 속하는 샘플들에 독립적이다. 및
ㆍ공간 세그먼트 경계들 외측의 샘플 위치들은 공간 세그먼트 내의 샘플들의 화면 간 예측에 이용된다. 및
ㆍ공간 세그먼트 경계들 외측의 샘플 위치들 상의 샘플들의 값들은 공간 세그먼트에 속하는 샘플들로부터 공간 세그먼트 경계들 상에 MMBP 절차를 이용하여 생성된다.
몇몇 양태들은 장치의 맥락에서 설명되었지만, 이 양태들은 또한 대응하는 방법의 설명을 나타내는 것이 분명하며, 여기에서 블록 또는 디바이스는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계의 맥락에서 설명된 양태들은 또한 대응하는 블록 또는 아이템 또는 대응하는 장치의 특징의 설명을 나타낸다. 방법 단계들 전부 또는 일부는 예컨대, 마이크로프로세서, 프로그래머블 컴퓨터, 또는 전자 회로와 같은 하드웨어 장치에 의해 실행될 수 있다. 몇몇 실시예에서, 가장 중요한 방법 단계들 중 하나 이상은 이러한 장치에 의해서 실행될 수 있다.
본 발명의 데이터 스트림은 디지털 저장매체에 저장될 수 있고, 또는 인터넷과 같은 유선 전송 매체 또는 무선 전송 매체와 같은 전송 매체 상으로 전송될 수 있다.
특정 구현 요건들에 따라서, 본 발명의 실시예들은 하드웨어 또는 소프트웨어로 구현될 수 있다. 이 구현은 각각의 방법이 수행되도록 프로그래머블 컴퓨터 시스템과 함께 동작하고(할 수 있고), 그 위에 전자적으로 판독 가능한 제어 신호를 갖는 디지털 저장 매체 예를 들어, 플로피 디스크, DVD, 블루레이, CD, ROM, PROM, EPROM, EEPROM 또는 플래시 메모리를 이용하여 수행될 수 있다.
본 발명에 따른 몇몇 실시예들은 여기에서 설명된 방법들 중 하나가 수행되도록 프로그래머블 컴퓨터 시스템과 함께 동작 가능한 전자적으로 판독 가능한 제어 신호들을 갖는 데이터 캐리어를 포함한다.
일반적으로, 본 발명의 실시예들은 컴퓨터 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있고, 여기에서 프로그램 코드는 컴퓨터 프로그램 제품이 컴퓨터에서 실행될 때 상기 방법들 중 하나를 수행하도록 동작한다. 프로그램 코드는 예를 들어 기계 판독가능한 캐리어 상에 저장될 수 있다.
다른 실시예들은 기계 판독가능한 캐리어 상에 저장되는, 여기에서 기술된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다.
즉, 본 발명의 방법들의 실시예는 그러므로, 컴퓨터 프로그램이 컴퓨터에서 실행될 때 여기에서 언급된 방법들 중 하나를 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
본 발명의 방법의 또다른 실시예는 그러므로, 여기에서 설명된 방법들 중 하나를 실행하기 위한 컴퓨터 프로그램이 그 위에 기록된 데이터 캐리어(또는 디지털 저장 매체 또는 컴퓨터 판독가능한 매체)이다. 데이터 캐리어, 디지털 저장 매체 또는 기록된 매체들은 전형적으로 유형(tangible)이며 비휘발성(non-transitory)이다.
본 발명의 방법의 또다른 실시예는 그러므로, 여기에서 언급된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타내는 신호들의 시퀀스 또는 데이터 스트림이다. 데이터 스트림 또는 신호들의 시퀀스는 예컨대 인터넷과 같은 데이터 통신 연결을 통해 전송될 수 있도록 구성될 수 있다.
또다른 실시예는 여기에서 언급된 방법들 중 하나를 수행하도록 구성된 또는 적응된 예컨대, 컴퓨터 또는 프로그래머블 로직 디바이스와 같은 프로세싱 수단을 포함한다.
또다른 실시예는 여기에서 언급된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 그 위에 장착하는 컴퓨터를 포함한다.
본 발명에 따른 또다른 실시예는 여기에서 언급된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 (예컨대, 전자적으로 또는 광학적으로) 수신기에 전송하도록 구성된 장치 또는 시스템을 포함한다. 상기 수신기는 예컨대, 컴퓨터, 모바일 디바이스, 메모리 디바이스 등일 수 있다. 상기 장치 또는 시스템은 예를 들어, 컴퓨터 프로그램을 상기 수신기에 전송하는 파일 서버를 포함할 수 있다.
몇몇 실시예들에서, 프로그래머블 로직 디바이스 (예컨대, 필드 프로그래머블 게이트 어레이)는 여기에서 언급된 방법들의 기능들 모두 또는 일부를 수행하는데 이용될 수 있다. 몇몇 실시예들에서, 필드 프로그래머블 게이트 어레이는 여기에서 언급된 방법들 중 하나를 수행하기 위하여 마이크로프로세서와 함께 동작할 수 있다. 일반적으로 상기 방법들은 임의의 하드웨어 장치들에 의해 수행된다.
여기에서 설명된 상기 장치는 하드웨어 장치를 이용하여 또는 컴퓨터를 이용하여, 또는 하드웨어 장치 및 컴퓨터의 조합을 이용하여 구현될 수 있다.
여기에서 설명된 상기 장치는 또는 여기에서 설명된 상기 장치의 임의의 구성요소들은 적어도 부분적으로 하드웨어 및/또는 소프트웨어로 구현될 수 있다.
여기에서 설명된 상기 방법들은 하드웨어 장치를 이용하여 또는 컴퓨터를 이용하여, 또는 하드웨어 장치 및 컴퓨터의 조합을 이용하여 수행될 수 있다.
여기에서 설명된 방법들 또는 여기에서 설명된 장치들의 임의의 구성요소들은 적어도 부분적으로 하드웨어 및/또는 소프트웨어에 의해 수행될 수 있다.
상기 설명된 실시예들은 본 발명의 원리들을 설명하기 위한 것이다. 여기에서 설명된 장치들 및 상세들의 수정 및 변형들은 본 기술분야의 숙련자들에게 자명한 것임을 이해할 수 있을 것이다. 그러므로, 첨부된 특허 청구항들의 범위에 의해서만 한정되고, 여기에서의 실시예들의 설명 및 기술에 의해 제공되는 특정한 상세들에 의해서는 한정되지 않게 하려는 의도이다.

Claims (64)

  1. 시간적 화면 간 예측을 지원하기 위한 비디오 인코더(10)에 있어서,
    참조 픽쳐의 경계(106) 너머 위치하는 또는 너머 확장된 상기 참조 픽쳐(101)의 참조 부분(100)의 영역(100')의 패딩을 수행하도록 구성되고,
    복수의 화면 내 예측 모드들 중 하나를 선택하고 상기 선택된 화면 내 예측 모드를 이용하여 상기 영역(100')을 패딩함으로써 상기 참조 부분(100)은 현재 픽쳐(12)의 화면 간 예측된 블록에 의해 참조되는, 비디오 인코더(10).
  2. 제1항에 있어서,
    상기 참조 부분(100)이 상기 경계(106)를 가로지르는, 상기 참조 픽쳐의 상기 경계(106)의 일부에서 상기 참조 픽쳐(101)의 영역의 평가에 기초하여 상기 선택을 수행하도록 구성되는, 비디오 인코더(10).
  3. 제2항에 있어서,
    프로브 채움을 얻기 위하여, 상기 경계(106)의 상기 일부에서의 상기 참조 픽쳐(101)의 경계 샘플들(102)에 기초하여, 상기 각각의 화면 내 예측 모드와 연관된 채움 방향과 반대되는 방향을 따라 상기 경계 샘플(102)보다 상기 경계(106)로부터 먼 곳에 위치하는 프로브 영역(104)을 채우고; 및
    상호 유사성을 측정하기 위해 상기 프로브 채움과 상기 프로브 영역(104)의 재구성된 채움을 비교함으로써 상기 복수의 화면 내 예측 모드들 중 적어도 하나의 서브셋 각각에 대해서 상기 평가를 수행하도록 구성되는 비디오 인코더(10).
  4. 제3항에 있어서,
    상기 복수의 화면 내 예측 모드들의 상기 서브셋 가운데 가장 높은 유사성을 갖는 하나를 선택하도록 구성되는 비디오 인코더(10).
  5. 제3항에 있어서,
    상기 복수의 화면 내 예측 모드들의 상기 서브셋 각각에 대해서, 상기 복수의 프로브 영역들(104)에 대한 상기 평가를 수행하도록 구성되는 비디오 인코더(10).
  6. 제5항에 있어서,
    상기 데이터 스트림에서 프로브 영역들(104)의 수를 매개변수로 표시하도록 구성되는 비디오 인코더(10).
  7. 제5항에 있어서,
    상기 프로브 영역들(104)에 대해서 수행된 상기 평가들의 조합을 수행하도록 구성되는 비디오 인코더(10).
  8. 제3항에 있어서,
    상기 참조 부분(100)의 상기 영역(100') 또는 영역 일부가 상기 방향을 따라서 투영되는 상기 경계의 부분을 결정함으로써 상기 경계 샘플들을 결정하도록 구성되는 비디오 인코더(10).
  9. 제8항에 있어서,
    상기 데이터 스트림에서 상기 영역 일부의 위치를 매개변수로 표시하도록 구성되는 비디오 인코더(10).
  10. 제3항에 있어서,
    절대차의 합, 절대 변환 차의 합, 제곱 오차의 합, 또는 하다마르 변환 중 하나를 이용함으로써 상기 비교를 수행하도록 구성되는 비디오 인코더(10).
  11. 제1항에 있어서,
    명시적 신호방식(explicit signaling)을 이용하여 상기 선택된 화면 내 예측 모드를 시그널링 하도록 구성된 비디오 인코더(10).
  12. 제1항에 있어서,
    상황 기반 적응적 산술 코딩을 이용하여 인덱스를 상기 선택된 화면 내 예측 모드로 코딩하도록 구성되는 비디오 인코더(10).
  13. 제1항에 있어서,
    상기 비디오 인코더(10)에 의해 지원되는, 지원되는 화면 내 예측 모드들의 서브셋으로서, 화면 내 예측된 블록들에 대해 상기 복수의 화면 내 예측 모드들을 시그널링 하도록 구성되는 비디오 인코더(10).
  14. 제1항에 있어서,
    상기 참조 부분(100)이 상기 경계(106)를 너머 확장될 필요가 있는 정도를 나타내는 파라미터를 시그널링 하도록 구성되어 상기 복수의 화면 내 모드들 중 하나를 선택함으로써 상기 패딩의 상기 수행을 시작하도록 하고,
    상기 참조 부분(100)이 상기 정도보다 작게 상기 경계를 너머 확장되는 경우, 디폴트 패딩 모드를 이용하여 상기 참조 부분(100)을 패딩하도록 구성되는 비디오 인코더(10).
  15. 제13항에 있어서,
    픽쳐 파라미터 세트, 시퀀스 파라미터 세트, 슬라이스 헤더 또는 구문 구조 중 적어도 하나에 상기 서브셋 및/또는 파라미터들을 시그널링 하도록 구성되는 비디오 인코더(10).
  16. 제1항에 있어서,
    상기 참조 부분(100)이 상기 참조 픽쳐(101)의 가장자리를 덮는다면, 상기 참조 부분(100)을 아래와 같이 취급하도록 구성되는 비디오 인코더(10)로서,
    상기 참조 부분(100)에 의해 덮어지는 가로 경계 부분이 상기 참조 부분(100)에 의해 덮어지는 세로 경계 부분보다 크다면, 상기 참조 부분(100)이 가로 경계를 가로지르는 것처럼 취급, 및
    상기 참조 부분(100)에 의해 덮어지는 상기 수직 경계 부분이 상기 참조 부분(100)에 의해 덮어지는 상기 가로 경계 부분보다 더 크다면, 상기 참조 부분(100)이 세로 경계를 가로지르는 것처럼 취급하고,
    또는, 상기 참조 부분(100)의 적어도 일부는 상기 가로 및 세로 경계 부분들 중 더 큰 것을 포함하는, 비디오 인코더(10).
  17. 제1항에 있어서,
    상기 경계는 상이한 픽쳐 콘텐트의 부분들을 분리하는 내부 픽쳐 경계 또는 외측 픽쳐 경계인, 비디오 인코더(10).
  18. 제1항에 있어서,
    상기 참조 픽쳐가 너머 확장되거나 위치하는 경계 부분에 상이하게 기초하여 상기 참조 부분들(100)에 대해서 패딩을 수행하도록 구성되는 비디오 인코더(10).
  19. 제18항에 있어서,
    상기 데이터 스트림에서 상기 경계 부분의 상응하는 패딩 및 배열을 파라미터로 나타내도록 구성되는 비디오 인코더(10).
  20. 제1항에 있어서,
    상기 참조 부분(100)이 완전히 상기 경계를 너머 위치하는 경우, 상기 참조 부분은 상기 경계에 더 가깝게 되도록, 상기 참조 부분을 가리키는 상기 현재 픽쳐(12)의 상기 화면 간 예측된 블록의 모션 벡터의 좌표를 클립(clip)하도록 구성되는 비디오 인코더(10)로서, 상기 좌표는 상기 경계에 수직인 차원 축에 대응하는, 비디오 인코더(10).
  21. 제20항에 있어서,
    상기 참조 부분의 크기에 기초하는 양(amount)만큼 상기 현재 픽쳐(12)의 상기 화면 간 예측된 블록의 상기 모션 벡터의 상기 좌표를 클립하도록 구성되는 비디오 인코더(10)로서, 상기 양(amount)은 더 작은 크기들에 대해서도 더 큰, 비디오 인코더(10).
  22. 제1항에 있어서,
    상기 화면 간 예측된 블록에 대한 모션 벡터 후보들을 테스트하는 경우,
    모션 벡터 후보들과 연관되고, 상기 경계를 너머 확장되는 또는 너머 위치하는 참조 부분들(100)을 디폴트 화면 내 예측 모드를 이용하여 패딩함으로써, 모션 벡터 후보들 중 최선의 모션 벡터 후보를 찾아내고, 및
    상기 최선의 모션 벡터 후보에 의해 지시되는 상기 참조 부분(100)이 상기 경계를 너머 확장되거나 너머 위치한다면, 상기 최선의 모션 벡터 후보에 대해서 상기 복수의 화면 내 예측 모드들 중 최선의 화면 내 예측 모드의 찾음을 수행하고, 상기 선택된 화면 내 예측 모드와 같은 것을 선택하도록 구성되는 비디오 인코더(10).
  23. 제1항에 있어서,
    상기 복수의 화면 간 예측 모드들 중 하나의 상기 선택은 공간적 및/또는 시간적 예측에 의해 얻어지는 추산된 화면 내 예측 모드에 기초하여 수행하도록 구성되는 비디오 인코더(10).
  24. 제1항에 있어서,
    상기 복수의 화면 내 예측 모드들은 방향성(angular) 화면 내 예측 모드들인, 비디오 인코더(10).
  25. 제1항에 있어서,
    상기 현재 픽쳐 및 상기 참조 픽쳐를 포함하는 비디오의 픽쳐 평면을 상기 비디오의 픽쳐들에 걸쳐 정적인 방식으로 공간적 세그먼트들로 분할하고, 엔트로피 코딩 및 화면 내 예측에 대하여 독립적으로 상기 공간적 세그먼트들을 코딩하도록 구성되는 비디오 인코더(10)로서,
    상기 참조 픽쳐의 상기 경계는 상기 화면 간 예측된 블록이 내부에 위치하는, 상기 참조 픽쳐의 미리 결정된 공간적 세그먼트의 세그먼트 경계인, 비디오 인코더(10).
  26. 제1항에 있어서,
    상기 현재 픽쳐 및 상기 참조 픽쳐를 포함하는 비디오의 픽쳐 평면을 상기 비디오의 픽쳐들에 걸쳐 정적인 방식으로 공간적 세그먼트들로 분할하고, 엔트로피 코딩, 화면 내 예측, 및 화면 간 예측에 대하여 독립적으로 상기 공간적 세그먼트들을 코딩하도록 구성되는 비디오 인코더(10)로서,
    상기 선택된 화면 내 예측 모드를 이용하여 상기 미리 졀정된 공간적 세그먼트를 너머 확장하는 또는 너머 존재하는 상기 참조 픽쳐(101)의 상기 참조 부분(100)의 상기 영역(100')을 패딩하기 위하여, 상기 참조 픽쳐의 상기 경계로서 상기 미리 결정된 공간적 세그먼트의 상기 세그먼트 경계를 이용함으로써, 상기 참조 픽쳐 내에 상기 미리 결정된 공간적 세그먼트의 세그먼트 경계를 가로지르는 상기 화면 간 예측된 블록의 모션 벡터에도 불구하고, 상기 화면 내 예측된 블록이 내부에 위치하는 미리 결정된 공간적 세그먼트 독립적으로 코딩하도록 구성되는, 비디오 인코더(10).
  27. 제1항에 있어서,
    상기 복수의 화면 내 예측 모드들 중 하나 이상의 연관된 화면 내 예측 모드과
    상기 참조 픽쳐의 상기 경계의 서로 다른 부분들 각각의 연관에 정보를 상기 데이터 스트림 내에 시그널링하고,
    상기 참조 부분이 너머 확장 또는 위치하는 경계인 상기 부분과 연계된 상기 하나 이상의 연관된 화면 내 예측 모드들 중에서 하나가 되도록, 상기 참조 부분이 너머 확장하는 또는 위치하는 경계인 상기 참조 픽쳐의 부분에 따라서 상기 화면 간 예측된 블록에 대해 상기 하나의 화면 내 예측 모드를 선택하도록 구성되는 비디오 인코더(10),
  28. 제1항에 있어서,
    상기 참조 픽쳐의 상기 경계의 미리 결정된 부분에 대해서 , 상기 참조 부분이 상기 미리 결정된 부분을 너머 확장하거나 너머 위치하는 경우, 패딩을 위해서 복수의 화면 내 예측 모드들 중 제1 또는 제2 화면 내 예측 모드가 이용되는지를 상기 데이터 스트림 내에 시그널링 하도록 하고, 상기 제1 화면 내 예측 모드가 패딩을 위해 사용되도록 시그널링 된다면 상기 선택된 화면 내 예측 모드로서 상기 제1 화면 내 예측 모드, 및 상기 제2 화면 내 예측 모드가 패딩을 위해 사용되도록 시그널링 된다면, 상기 선택된 화면 내 예측 모드로서 상기 제2 화면 내 예측 모드를 선택하도록 구성되는 비디오 인코더(10).
  29. 시간적 화면 간 예측을 지원하기 위한 비디오 디코더(20)에 있어서,
    복수의 화면 내 예측 모드들 중 하나를 선택하고 상기 선택된 화면 내 예측 모드를 이용하여 영역(100')을 패딩함으로써, 참조 픽쳐(101)의 경계(106) 너머 확장 또는 위치하는 상기 참조 픽쳐(101)의 참조 부분(100)의 상기 영역(100')의 패딩을 수행하도록 구성된 비디오 디코더(20)로서, 상기 참조 부분(100)은 현재 픽쳐(12)의 화면간 예측된 블록에 의해 참조되는, 비디오 디코더(20)..
  30. 제29항에 있어서,
    상기 참조 픽쳐(100)의 상기 경계(106)의 일부에서 상기 참조 픽쳐(101)의 영역의 평가에 기초하여 상기 선택을 수행하도록 구성되는 비디오 디코더(20)로서, 상기 참조 부분(100)은 상기 경계를 가로지르는 비디오 디코더(20).
  31. 제30항에 있어서,
    프로브 채움을 얻기 위하여, 상기 경계(106)의 상기 일부에서의 상기 참조 픽쳐(101)의 경계 샘플들(102)에 기초하여, 상기 각각의 화면 내 예측 모드와 연관된 채움 방향과 반대되는 방향을 따라 상기 경계 샘플(102)보다 상기 경계(106)로부터 먼 곳에 및 상기 참조 픽쳐(101) 내부에 위치하는 프로브 영역(104)을 채우고; 및
    상호 유사성을 측정하기 위해 상기 프로브 채움과 상기 프로브 영역(104)의 재구성된 채움을 비교함으로써
    복수의 화면 내 예측 모드들 중 적어도 하나의 서브셋 각각에 대해서, 상기 평가를 수행하도록 구성된 비디오 디코더(20).
  32. 제31항에 있어서,
    상기 복수의 화면 내 예측 모드들의 상기 서브셋 가운데 가장 높은 유사성을 갖는 하나를 선택하도록 구성되는 비디오 디코더(10).
  33. 제31항에 있어서,
    상기 복수의 화면 내 예측 모드들의 상기 서브셋 각각에 대해서, 상기 복수의 프로브 영역들에 대한 상기 평가를 수행하도록 구성되는 비디오 디코더(20).
  34. 제33항에 있어서,
    상기 데이터 스트림에서 프로브 영역들의 수를 매개변수로 표시하도록 구성되는 비디오 디코더(20).
  35. 제33항에 있어서,
    상기 프로브 영역들(104)에 대해서 수행된 상기 평가들의 조합을 수행하도록 구성되는 비디오 디코더(20).
  36. 제31항에 있어서,
    상기 참조 부분(100)의 상기 영역(100') 또는 영역 일부가 상기 방향을 따라서 투영되는 상기 경계의 부분을 결정함으로써 상기 경계 샘플들을 결정하도록 구성되는 비디오 디코더(20).
  37. 제36항에 있어서,
    상기 데이터 스트림에서 상기 영역 일부의 위치를 매개변수로 표시하도록 구성되는 비디오 디코더(20).
  38. 제31항에 있어서,
    절대차의 합, 절대 변환 차의 합, 제곱 오차의 합, 또는 하다마르 변환 중 하나를 이용함으로써 상기 비교를 수행하도록 구성되는 비디오 디코더(20).
  39. 제29항에 있어서,
    명시적 신호방식(explicit signaling)을 이용하여 상기 선택된 화면 내 예측 모드를 시그널링 하도록 구성된 비디오 디코더(10).
  40. 제29항에 있어서,
    상황 기반 적응적 산술 코딩을 이용하는 상기 선택된 화면 내 예측 모드로 인덱스를 코딩하도록 구성되는 비디오 디코더(20).
  41. 제29항에 있어서,
    상기 비디오 디코더(20)에 의해 지원되는, 지원되는 화면 내 예측 모드들의 서브셋으로서, 화면 내 예측된 블록들에 대해 상기 복수의 화면 내 예측 모드들을 시그널링 하도록 구성되는 비디오 디코더(20).
  42. 제29항에 있어서,
    상기 참조 부분(100)이 상기 경계(106)를 너머 확장될 필요가 있는 정도를 나타내는 파라미터를 시그널링 하도록 구성되어 상기 복수의 화면 내 모드들 중 하나를 선택함으로써 상기 패딩의 상기 수행을 시작하도록 하고,
    상기 참조 부분(100)이 상기 정도보다 작게 상기 경계를 너머 확장되는 경우, 디폴트 패딩 모드를 이용하여 상기 참조 부분(100)을 패딩하도록 구성되는 비디오 디코더(20).
  43. 제41항에 있어서,
    픽쳐 파라미터 세트, 시퀀스 파라미터 세트, 슬라이스 헤더 또는 구문 구조 중 적어도 하나에 상기 서브셋 및/또는 파라미터들을 시그널링 하도록 구성되는 비디오 디코더(20).
  44. 제29항에 있어서,
    상기 참조 부분(100)이 상기 참조 픽쳐(101)의 가장자리를 덮는다면, 상기 참조 부분(100)을 아래와 같이 취급하도록 구성되는 비디오 디코더(20)로서,
    상기 참조 부분(100)에 의해 덮어지는 가로 경계 부분이 상기 참조 부분(100)에 의해 덮어지는 세로 경계 부분보다 크다면, 상기 참조 부분(100)이 가로 경계를 가로지르는 것처럼 취급, 및
    상기 참조 부분(100)에 의해 덮어지는 상기 수직 경계 부분이 상기 참조 부분(100)에 의해 덮어지는 상기 가로 경계 부분보다 더 크다면, 상기 참조 부분(100)이 세로 경계를 가로지르는 것처럼 취급하고,
    또는, 상기 참조 부분(100)의 적어도 일부는 상기 가로 및 세로 경계 부분들 중 더 큰 것을 포함하는, 비디오 디코더(20).
  45. 제29항에 있어서,
    상기 경계는 상이한 픽쳐 콘텐트의 부분들을 분리하는 내부 픽쳐 경계 또는 외측 픽쳐 경계인, 비디오 디코더(20).
  46. 제29항에 있어서,
    상기 참조 픽쳐가 너머 확장되거나 위치하는 경계 부분에 상이하게 기초하여 상기 참조 부분들(100)에 대해서 패딩을 수행하도록 구성되는 비디오 디코더(20).
  47. 제46항에 있어서,
    상기 데이터 스트림에서 상기 경계 부분의 상응하는 패딩 및 배열을 파라미터로 나타내도록 구성되는 비디오 디코더(20).
  48. 제29항에 있어서,
    상기 참조 부분(100)이 완전히 상기 경계를 너머 위치하는 경우, 상기 참조 부분은 상기 경계에 더 가깝게 되도록, 상기 참조 부분을 가리키는 상기 현재 픽쳐(12)의 상기 화면 간 예측된 블록의 모션 벡터의 좌표를 클립(clip)하도록 구성되는 비디오 디코더(20)로서, 상기 좌표는 상기 경계에 수직인 차원 축에 대응하는, 비디오 디코더(20).
  49. 제48항에 있어서,
    상기 참조 부분의 크기에 기초하는 양(amount)만큼 상기 현재 픽쳐(12)의 상기 화면 간 예측된 블록의 상기 모션 벡터의 상기 좌표를 클립하도록 구성되는 비디오 디코더(20)로서, 상기 양(amount)은 더 작은 크기들에 대해서도 더 큰, 비디오 디코더(20).
  50. 제29항에 있어서,
    상기 복수의 화면 간 예측 모드들의 상기 선택, 결정은 공간적 및/또는 시간적 예측에 의해 얻어지는 추정된 화면 내 예측 모드에 기초하여 수행하도록 구성되는 비디오 디코더(10).
  51. 제29항에 있어서,
    상기 복수의 화면 내 예측 모드들은 방향성(angular) 화면 내 예측 모드들인, 비디오 디코더(20).
  52. 제29항에 있어서,
    상기 현재 픽쳐 및 상기 참조 픽쳐를 포함하는 비디오의 픽쳐 평면을 상기 비디오의 픽쳐들에 걸쳐 정적인 방식으로 공간적 세그먼트들로 분할하도록 구성되는 비디오 디코더(20)로서,
    상기 공간적 세그먼트들은 엔트로피 코딩 및 화면 내 예측에 대하여 독립적으로 코딩되고,
    상기 참조 픽쳐의 상기 경계는 상기 화면 간 예측된 블록이 내부에 위치하는, 상기 참조 픽쳐의 미리 결정된 공간적 세그먼트의 세그먼트 경계인, 비디오 디코더(20).
  53. 제29항에 있어서,
    상기 현재 픽쳐 및 상기 참조 픽쳐를 포함하는 비디오의 픽쳐 평면을 상기 비디오의 픽쳐들에 걸쳐 정적인 방식으로 공간적 세그먼트들로 분할하도록 구성되는 비디오 디코더(20)로서,
    상기 공간적 세그먼트들은 엔트로피 코딩, 화면 내 예측, 및 화면 간 예측에 대하여 독립적으로 코딩되고,
    상기 선택된 화면 내 예측 모드를 이용하여 상기 미리 졀정된 공간적 세그먼트를 너머 확장하는 또는 너머 존재하는 상기 참조 픽쳐(101)의 상기 참조 부분(100)의 상기 영역(100')을 패딩하기 위하여, 상기 참조 픽쳐의 상기 경계로서 상기 미리 결정된 공간적 세그먼트의 상기 세그먼트 경계를 이용함으로써, 상기 참조 픽쳐 내에 상기 미리 결정된 공간적 세그먼트의 세그먼트 경계를 가로지르는 상기 화면 간 예측된 블록의 모션 벡터에도 불구하고, 상기 화면 내 예측된 블록이 내부에 위치하는 미리 결정된 공간적 세그먼트 독립적으로 디코딩하도록 구성되는, 비디오 디코더(20).
  54. 제29항에 있어서,
    상기 복수의 화면 내 예측모드들 중 하나 이상의 연관된 화면 내 예측 모드들과 상기 참조 픽쳐의 상기 경계의 서로 다른 부분들 각각의 연관에 관한 정보를 상기 데이터 스트림으로부터 유도하고(derive), 및
    상기 참조 부분이 너머 확장 또는 위치하는 경계인 상기 부분과 연계된 상기 하나 이상의 연관된 화면 내 예측 모드들 중에서 하나가 되도록, 상기 참조 부분이 너머 확장하는 또는 위치하는 경계인 상기 참조 픽쳐의 부분에 따라서 상기 화면 간 예측된 블록에 대해 상기 하나의 화면 내 예측 모드를 선택하도록 구성되는 비디오 인코더(10),
  55. 제29항에 있어서,
    상기 참조 픽쳐의 상기 경계의 미리 결정된 부분에 대해서 , 상기 참조 부분이 상기 미리 결정된 부분을 너머 확장하거나 너머 위치하는 경우, 패딩을 위해서 복수의 화면 내 예측 모드들 중 제1 또는 제2 화면 내 예측 모드가 이용되는지를 상기 데이터 스트림으로부터 유도하고, 상기 제1 화면 내 예측 모드가 패딩을 위해 사용되도록 시그널링 된다면 상기 선택된 화면 내 예측 모드로서 상기 제1 화면 내 예측 모드, 및 상기 제2 화면 내 예측 모드가 패딩을 위해 사용되도록 시그널링 된다면 상기 선택된 화면 내 예측 모드로서 상기 제2 화면 내 예측 모드를 선택하도록 구성되는 비디오 디코더(20).
  56. 시간적 화면 간 예측을 지원하기 위한 인코딩 방법에 있어서,
    복수의 화면 내 예측 모드들 중 하나를 선택하고 상기 선택된 화면 내 예측 모드를 이용하여 영역을 패딩함으로써, 참조 픽쳐(101)의 경계(106) 너머 확장 또는 위치하는 상기 참조 픽쳐(101)의 참조 부분(100)의 상기 영역의 패딩을 수행하는 단계를 포함하는 방법으로서, 상기 참조 부분(100)은 현재 픽쳐(12)의 화면 간 예측된 블록에 의해 참조되는, 인코딩 방법.
  57. 제56항에 있어서,
    상기 화면 간 예측된 블록에 대한 모션 벡터 후보들을 테스트하는 경우,
    모션 벡터 후보들과 연관되고, 상기 경계를 너머 확장되는 또는 너머 위치하는 참조 부분들(100)을 디폴트 화면 내 예측 모드를 이용하여 패딩함으로써, 모션 벡터 후보들 중 최선의 모션 벡터 후보를 찾아내는 단계, 및
    상기 최선의 모션 벡터 후보에 의해 지시되는 상기 참조 부분(100)이 상기 경계를 너머 확장되거나 너머 위치한다면, 상기 최선의 모션 벡터 후보에 대해서 상기 복수의 화면 내 예측 모드들 중 최선의 화면 내 예측 모드의 찾음을 수행하고, 상기 선택된 화면 내 예측 모드와 같은 것을 선택하는 단계를 포함하는 인코딩 방법.
  58. 제56항에 있어서,
    상기 복수의 화면 간 예측 모드들의 상기 선택, 결정은 공간적 및/또는 시간적 예측에 의해 얻어지는 추정된 화면 내 예측 모드에 기초하여 수행하도록 구성되는 인코딩 방법.
  59. 제56항에 있어서,
    상기 복수의 화면 내 예측 모드들은 방향성(angular) 화면 내 예측 모드들인, 인코딩 방법.
  60. 시간적 화면 간 예측을 지원하기 위한 디코딩 방법에 있어서,
    복수의 방향성 화면 내 예측 모드들 중 하나를 선택하고 상기 선택된 방향성 화면 내 예측 모드를 이용하여 영역을 패딩함으로써, 참조 픽쳐(101)의 경계(106)너머 확장 또는 위치하는 상기 참조 픽쳐(101)의 참조 부분(100)의 상기 영역의 패딩을 수행하는 단계를 포함하는 방법으로서, 상기 참조 부분(100)은 현재 픽쳐(12)의 화면 간 예측된 블록에 의해 참조되는, 디코딩 방법.
  61. 제60항에 있어서,
    상기 복수의 화면 간 예측 모드들 중 하나의 상기 선택은 공간적 및/또는 시간적 예측에 의해 얻어지는 추정된 화면 내 예측 모드에 기초하여 수행하도록 구성되는 디코딩 방법.
  62. 제60항에 있어서,
    상기 복수의 화면 내 예측 모드들은 방향성(angular) 화면 내 예측 모드들인, 디코딩 방법.
  63. 컴퓨터에서 동작할 때, 제56항 또는 제60항에 따른 방법을 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램.
  64. 제56항 또는 제62항에 다른 방법에 의해 생성되는 데이터 스트림.
KR1020237021599A 2018-03-29 2019-03-29 패딩을 위한 화면내-예측 모드 선택을 위한 장치 KR20230098721A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP18165221.5 2018-03-29
EP18165221 2018-03-29
KR1020207031185A KR102549936B1 (ko) 2018-03-29 2019-03-29 패딩을 위한 화면내-예측 모드 선택을 위한 장치
PCT/EP2019/058044 WO2019185884A1 (en) 2018-03-29 2019-03-29 Apparatus for selecting an intra-prediction mode for padding

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207031185A Division KR102549936B1 (ko) 2018-03-29 2019-03-29 패딩을 위한 화면내-예측 모드 선택을 위한 장치

Publications (1)

Publication Number Publication Date
KR20230098721A true KR20230098721A (ko) 2023-07-04

Family

ID=61868351

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020207031185A KR102549936B1 (ko) 2018-03-29 2019-03-29 패딩을 위한 화면내-예측 모드 선택을 위한 장치
KR1020237021599A KR20230098721A (ko) 2018-03-29 2019-03-29 패딩을 위한 화면내-예측 모드 선택을 위한 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020207031185A KR102549936B1 (ko) 2018-03-29 2019-03-29 패딩을 위한 화면내-예측 모드 선택을 위한 장치

Country Status (7)

Country Link
US (3) US11233989B2 (ko)
EP (1) EP3777177A1 (ko)
JP (2) JP7253564B2 (ko)
KR (2) KR102549936B1 (ko)
CN (1) CN112204981A (ko)
TW (2) TWI730311B (ko)
WO (1) WO2019185884A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11736713B2 (en) * 2018-11-14 2023-08-22 Tencent America LLC Constraint on affine model motion vector
EP4037320A1 (en) * 2021-01-29 2022-08-03 Lemon Inc. Boundary extension for video coding
WO2022174782A1 (en) * 2021-02-20 2022-08-25 Beijing Bytedance Network Technology Co., Ltd. On boundary padding samples generation in image/video coding
CN116998155A (zh) * 2021-02-20 2023-11-03 抖音视界有限公司 图像/视频编解码中的边界填充运动矢量剪裁
WO2022174801A1 (en) * 2021-02-20 2022-08-25 Beijing Bytedance Network Technology Co., Ltd. On boundary padding size in image/video coding
WO2024043813A1 (en) * 2022-08-22 2024-02-29 Telefonaktiebolaget Lm Ericsson (Publ) Motion compensation boundary padding
WO2024069040A1 (en) * 2022-09-29 2024-04-04 Nokia Technologies Oy A method, an apparatus and a computer program product for video encoding and decoding

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5597968B2 (ja) * 2009-07-01 2014-10-01 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US20110122950A1 (en) * 2009-11-26 2011-05-26 Ji Tianying Video decoder and method for motion compensation for out-of-boundary pixels
PL3226560T3 (pl) * 2010-07-14 2019-12-31 Ntt Docomo, Inc. Predykcja wewnątrzramkowa o małej złożoności do kodowania wideo
US20120314767A1 (en) * 2011-06-13 2012-12-13 Qualcomm Incorporated Border pixel padding for intra prediction in video coding
US9693070B2 (en) * 2011-06-24 2017-06-27 Texas Instruments Incorporated Luma-based chroma intra-prediction for video coding
JP2013017128A (ja) * 2011-07-06 2013-01-24 Nippon Hoso Kyokai <Nhk> イントラ予測モード推定装置、画像符号化装置、画像復号装置、及びプログラム
US9083983B2 (en) 2011-10-04 2015-07-14 Qualcomm Incorporated Motion vector predictor candidate clipping removal for video coding
CN104685881B (zh) * 2012-09-28 2018-05-15 夏普株式会社 图像解码装置、图像编码装置以及图像解码方法
KR101789954B1 (ko) * 2013-12-27 2017-10-25 인텔 코포레이션 차세대 비디오 코딩을 위한 콘텐츠 적응적 이득 보상된 예측
EP3158734A4 (en) * 2014-06-19 2017-04-26 Microsoft Technology Licensing, LLC Unified intra block copy and inter prediction modes
US10554968B2 (en) * 2015-06-10 2020-02-04 Lg Electronics Inc. Method and apparatus for inter prediction on basis of virtual reference picture in video coding system
US10244994B2 (en) 2015-08-07 2019-04-02 Woodlark Circle, Inc. CT scan inflatable mattress
CN108293110B (zh) * 2015-11-23 2022-07-05 韩国电子通信研究院 多视点视频编码/解码方法
US20170214937A1 (en) * 2016-01-22 2017-07-27 Mediatek Inc. Apparatus of Inter Prediction for Spherical Images and Cubic Images
FI20165256L (fi) * 2016-03-24 2017-09-25 Nokia Technologies Oy Laitteisto, menetelmä ja tietokoneohjelma videokoodaukseen ja -dekoodaukseen
US10523949B2 (en) * 2016-05-25 2019-12-31 Arris Enterprises Llc Weighted angular prediction for intra coding
US20170353737A1 (en) * 2016-06-07 2017-12-07 Mediatek Inc. Method and Apparatus of Boundary Padding for VR Video Processing
TWI775760B (zh) * 2016-07-08 2022-09-01 美商Vid衡器股份有限公司 使用幾何投影360度視訊編碼
WO2019125093A1 (ko) * 2017-12-22 2019-06-27 주식회사 윌러스표준기술연구소 비디오 신호 처리 방법 및 장치
KR102356262B1 (ko) * 2018-03-27 2022-02-08 주식회사 윌러스표준기술연구소 모션 보상을 이용하는 비디오 신호 처리 방법 및 장치

Also Published As

Publication number Publication date
TWI730311B (zh) 2021-06-11
KR20200140844A (ko) 2020-12-16
KR102549936B1 (ko) 2023-07-03
US11233989B2 (en) 2022-01-25
JP2021520103A (ja) 2021-08-12
WO2019185884A1 (en) 2019-10-03
US11683485B2 (en) 2023-06-20
TWI799861B (zh) 2023-04-21
TW202209890A (zh) 2022-03-01
US20220132108A1 (en) 2022-04-28
JP7253564B2 (ja) 2023-04-06
TW201943275A (zh) 2019-11-01
JP2023052788A (ja) 2023-04-12
CN112204981A (zh) 2021-01-08
US20210029353A1 (en) 2021-01-28
EP3777177A1 (en) 2021-02-17
US20230276047A1 (en) 2023-08-31

Similar Documents

Publication Publication Date Title
KR102549936B1 (ko) 패딩을 위한 화면내-예측 모드 선택을 위한 장치
US10880575B2 (en) Method and apparatus for decoding video signal
US20210281854A1 (en) Method and apparatus for encoding/decoding an image
US20180176587A1 (en) Constrained position dependent intra prediction combination (pdpc)
US10715811B2 (en) Method and apparatus for determining merge mode
US20200137413A1 (en) Error resilience and parallel processing for decoder side motion vector derivation
KR20200005648A (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
CN110832854B (zh) 利用插值进行帧内预测的方法和装置
WO2020247577A1 (en) Adaptive motion vector resolution for affine mode
US20240129519A1 (en) Motion refinement with bilateral matching for affine motion compensation in video coding
CN117813816A (zh) 用于解码器侧帧内模式推导的方法和设备
US20240146906A1 (en) On temporal motion vector prediction
US20240187624A1 (en) Methods and devices for decoder-side intra mode derivation
US20240195957A1 (en) Methods and devices for decoder-side intra mode derivation
US20240171735A1 (en) Geometry partitioning for affine motion compensated prediction in video coding
WO2024044404A1 (en) Methods and devices using intra block copy for video coding
CN117981318A (zh) 用于在视频编解码中进行帧内预测的自适应编解码顺序
WO2022271756A1 (en) Video coding using multi-direction intra prediction
KR20240051257A (ko) 디코더 측 인트라 모드 도출을 위한 방법 및 장치
KR20230131768A (ko) 비디오 프레임 경계에서 예측블록 생성

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right