KR102471528B1 - Adaptive partition coding - Google Patents

Adaptive partition coding Download PDF

Info

Publication number
KR102471528B1
KR102471528B1 KR1020227007636A KR20227007636A KR102471528B1 KR 102471528 B1 KR102471528 B1 KR 102471528B1 KR 1020227007636 A KR1020227007636 A KR 1020227007636A KR 20227007636 A KR20227007636 A KR 20227007636A KR 102471528 B1 KR102471528 B1 KR 102471528B1
Authority
KR
South Korea
Prior art keywords
block
coding
reference block
decoder
texture
Prior art date
Application number
KR1020227007636A
Other languages
Korean (ko)
Other versions
KR20220035274A (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 지이 비디오 컴프레션, 엘엘씨
Priority to KR1020227041021A priority Critical patent/KR102588425B1/en
Publication of KR20220035274A publication Critical patent/KR20220035274A/en
Application granted granted Critical
Publication of KR102471528B1 publication Critical patent/KR102471528B1/en

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/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/23Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation

Abstract

웨지렛 기반의 분할이 윤곽선 분할에 비해 한편으로 보조 정보 레이트와 다른 한편으로 분할 가능성의 달성 가능한 다양성 사이의 양호한 트레이드오프를 나타내는 것처럼 보이지만, 분할이 웨지렛 분할이어야 하는 정도까지 분할의 제한을 완화하는 능력은 깊이/변이 맵에서 이중 세그먼테이션에 대한 양호한 예측기를 도출하기 위해 중첩된 공간적 샘플링된 텍스처 정보 상으로의 비교적 복잡하지 않은 통계적 분석을 적용할 수 있게 한다. 따라서, 제 1 양태에 따르면, 그것은 픽처 형태의 동일 위치된 텍스처 정보가 존재할 경우에 시그널링 오버헤드를 완화하는 자유를 정확히 증가시킨다. 다른 양태는 불규칙한 분할을 지원하는 각각의 코딩 모드를 시그널링하는 것과 관련된 보조 정보 레이트를 저장할 수 있는 가능성에 관한 것이다.While Wedgelet-based segmentation seems to represent a good trade-off between the secondary information rate on the one hand and the achievable diversity of splitting possibilities on the other hand compared to contour segmentation, it relaxes the constraints of segmentation to the extent that segmentation must be Wedgelet segmentation. The ability allows to apply relatively uncomplicated statistical analysis onto overlapping spatially sampled texture information to derive good predictors for double segmentation in depth/disparity maps. Thus, according to the first aspect, it exactly increases the freedom to mitigate the signaling overhead in the presence of co-located texture information in the form of a picture. Another aspect relates to the possibility of storing the auxiliary information rate associated with signaling each coding mode supporting irregular partitioning.

Description

적응적 분할 코딩{ADAPTIVE PARTITION CODING}Adaptive Partition Coding {ADAPTIVE PARTITION CODING}

본 발명은 높은 자유도를 가능하게 하는 윤곽선(contour) 블록 분할(partitioning) 또는 블록 분할을 이용한 샘플 어레이 코딩에 관한 것이다.The present invention relates to sample array coding using contour block partitioning or block partitioning that enables a high degree of freedom.

대부분의 코딩 방식은 블록으로의 샘플 어레이의 세분(subdivision)을 이용하여 샘플 어레이 데이터를 압축한다. 샘플 어레이는 텍스처, 즉 픽처(picture)의 공간적 샘플링을 정의할 수 있지만, 물론 다른 샘플 어레이는 깊이 맵 등과 같은 유사한 코딩 기술을 사용하여 압축될 수 있다. 각각의 샘플 어레이에 의해 공간적으로 샘플링된 정보의 서로 다른 특성으로 인해, 서로 다른 코딩 개념은 서로 다른 종류의 샘플 어레이에 가장 적합하다. 그러나, 이러한 종류의 샘플 어레이와 관계없이, 이러한 코딩 개념의 대부분은 개개의 코딩 옵션을 샘플 어레이의 블록에 할당하기 위해 블록-세분(block-subdivisioning)을 이용하여, 한편으로 개개의 블록에 할당된 코딩 파라미터를 코딩하기 위한 보조(side) 정보 레이트와, 각각의 블록의 예측 실패로 인해 잔류 예측을 코딩하기 위한 잔류 코딩 레이트 사이의 양호한 트레이드오프(tradeoff)를 찾거나, 잔류 코딩을 갖거나 갖지 않고 레이트/왜곡 의미에서 양호한 타협(comprise)을 찾는다.Most coding schemes compress sample array data using subdivisions of the sample array into blocks. A sample array may define a texture, i.e., a spatial sampling of a picture, but of course other sample arrays may be compressed using similar coding techniques such as depth maps and the like. Due to the different nature of the information spatially sampled by each sample array, different coding concepts are best suited to different kinds of sample arrays. However, regardless of this kind of sample array, most of these coding concepts use block-subdivisioning to assign individual coding options to blocks of the sample array, on the one hand Find a good tradeoff between the side information rate for coding the coding parameters and the residual coding rate for coding the residual prediction due to the prediction failure of each block, with or without residual coding Find a good compromise in rate/distortion sense.

대부분, 블록은 직사각형 또는 이차의(quadratic) 형상이다. 분명히, 코딩 유닛(블록)의 형상을 코딩되도록 샘플 어레이의 콘텐츠에 적응시킬 수 있는 것이 바람직하다. 그러나, 불행하게도, 블록 또는 코딩 유닛의 형상을 샘플 어레이의 콘텐츠에 적응시키는 것은 블록 분할의 시그널링을 위한 추가적인 보조 정보를 이용하는 것을 포함한다. 블록의 웨지렛형(wedgelet-type) 분할은 가능한 블록 분할 형상과 포함된 보조 정보 오버헤드 사이의 적절한 절충인 것으로 발견되었다. 웨지렛형 분할은 예를 들어 특정 코딩 파라미터가 사용될 수 있는 웨지렛 분할으로 블록의 분할에 이르게 한다.Most of the time, blocks are rectangular or quadratic in shape. Clearly, it is desirable to be able to adapt the shape of a coding unit (block) to the content of the sample array to be coded. Unfortunately, however, adapting the shape of a block or coding unit to the contents of an array of samples involves using additional auxiliary information for signaling of block divisions. A wedgelet-type partitioning of blocks has been found to be an appropriate compromise between possible block partitioning shapes and the auxiliary information overhead involved. Wedgelet-like partitioning leads to partitioning of blocks, for example with Wedgelet partitioning in which specific coding parameters can be used.

그러나, 심지어 웨지렛 분할에 대한 제한은 블록의 분할의 시그널링을 위한 상당량의 부가적인 오버헤드에 이르게 하고, 따라서 더욱 효율적인 방식으로 샘플 어레이를 코딩할 시에 블록의 분할의 높은 자유도를 가능하게 하는 더욱 효과적인 코딩 개념을 가까이에 갖는 것이 바람직하다.However, even the limitation on Wedgelet partitioning leads to a significant amount of additional overhead for signaling of partitioning of blocks, thus enabling a higher degree of freedom in partitioning of blocks when coding sample arrays in a more efficient manner. It is desirable to have effective coding concepts at hand.

이러한 목적은 계류 중인 독립항의 발명 대상에 의해 달성된다.This object is achieved by the subject matter of the pending independent claims.

본 발명의 기초가 되는 주된 아이디어는 웨지렛 기반의 분할이 윤곽선 분할에 비해 한편으로 보조 정보 레이트와 다른 한편으로 분할 가능성의 달성 가능한 다양성 사이의 양호한 트레이드오프를 나타내는 것처럼 보이지만, 분할이 웨지렛 분할이어야 하는 정도까지 분할의 제한을 완화하는 능력은 깊이/변이(disparity) 맵에서 이중 세그먼테이션(bi-segmentation)에 대한 양호한 예측기를 도출하기 위해 중첩된 공간적 샘플링된 텍스처 정보 상으로의 비교적 복잡하지 않은 통계적 분석을 적용할 수 있게 한다. 따라서, 제 1 양태에 따르면, 그것은 픽처 형태의 동일 위치된(co-located) 텍스처 정보가 존재할 경우에 시그널링 오버헤드를 완화하는 자유를 정확히 증가시킨다.The main idea underlying the present invention is that although wedgelet-based segmentation appears to represent a good trade-off between the auxiliary information rate on the one hand and the achievable diversity of the splitting possibilities on the other hand, compared to contour segmentation, the segmentation should be a wedgelet partition. The ability to relax the constraints of segmentation to the extent that it does so is a relatively uncomplicated statistical analysis over the overlapped spatially sampled texture information to derive a good predictor for bi-segmentation in the depth/disparity map. make it possible to apply Thus, according to the first aspect, it exactly increases the freedom to mitigate the signaling overhead in the presence of co-located texture information in picture form.

본 발명의 추가의 양태가 기초가 되는 다른 구상은 이중 세그먼테이션의 도출이 깊이/변이 맵의 현재 블록 상으로의 이중 세그먼테이션의 후속 전달을 갖는 픽처 내의 동일 위치된 참조 블록에 기초한다는 방금 설명된 아이디어가 깊이/변이 맵의 현재 블록의 콘텐츠의 양호한 근사치(approximation)를 달성하는 가능성이 상당히 높아 이러한 이중 세그먼테이션 전달 모드를 트리거하기 위해 대응하는 코딩 옵션 식별자의 각각의 미리 결정된 값의 예약을 정당화할 경우에만 타당하다는 것이다. 다시 말하면, 각각의 이중 세그먼테이션 전달이 어쨌든 선택되지 않을 가능성이 높은 경우에 이러한 코딩 옵션 식별자를 엔트로피 코딩할 때 깊이/변이 맵의 현재 블록에 대한 코딩 옵션 식별자의 각각의 미리 결정된 값을 취할 필요성을 회피함으로써 보조 정보 레이트는 저장될 수 있다.Another concept on which a further aspect of the present invention is based is the just described idea that the derivation of double segmentation is based on a co-located reference block in a picture with subsequent propagation of the double segmentation onto the current block of the depth/disparity map. It is only valid if the probability of achieving a good approximation of the contents of the current block of the depth/disparity map is sufficiently high to justify the reservation of each predetermined value of the corresponding coding option identifier to trigger this dual segmentation propagation mode. that it is In other words, it avoids the need to take each predetermined value of the coding option identifier for the current block of the depth/disparity map when entropy coding these coding option identifiers in the case where it is highly likely that the respective double segmentation delivery will not be chosen anyway. By doing so, the auxiliary information rate can be saved.

추가의 보조 양태는 종속항의 발명의 대상이다.Further auxiliary aspects are the subject of the dependent claims.

본 발명의 바람직한 실시예는 도면과 관련하여 아래에서 더욱 상세히 설명된다.A preferred embodiment of the present invention is described in more detail below with reference to the drawings.

도 1은 본 발명의 실시예가 일례에 따라 구축될 수 있는 멀티뷰(multi-view) 인코더의 블록도를 도시한다.
도 2는 뷰(view) 및 비디오 깊이/변위 경계에 걸친 정보 재사용을 예시하기 위한 멀티뷰 신호의 일부의 개략도를 도시한다.
도 3은 도 1에 맞는 디코더의 블록도를 도시한다.
도 4는 연속(왼쪽) 및 이산 신호 공간(오른쪽)의 이차 블록의 웨지렛 분할을 도시한다.
도 5는 웨지렛 블록 분할의 6개의 서로 다른 방향의 개략도를 도시한다.
도 6은 블록 크기 4×4(왼쪽), 8×8(중간), 및 16×16(오른쪽)에 대한 웨지렛 분할 패턴의 일례를 도시한다.
도 7은 분할 정보와 CPV(분할 영역의 깊이 신호의 평균값)를 조합함으로써 웨지렛 모델과의 깊이 신호의 근사치를 도시한다.
도 8은 웨지렛 분할 패턴의 생성을 도시한다.
도 9는 연속(왼쪽) 및 이산 신호 공간(오른쪽)의 이차 블록의 윤곽선 분할을 도시한다.
도 10은 블록 크기 8×8에 대한 윤곽선 분할 패턴의 일례를 도시한다.
도 11은 분할 정보와 CPV(분할 영역의 깊이 신호의 평균값)를 조합함으로써 윤곽선 모델과의 깊이 신호의 근사치를 도시한다.
도 12는 위의 참조 블록이 웨지렛형 분할(왼쪽) 또는 규칙내(regular intra) 방향(오른쪽)의 어느 하나인 시나리오에 대한 웨지렛 분할(파란색)의 인트라(intra) 예측을 도시한다.
도 13은 텍스처 루마 참조(texture luma reference)으로부터의 웨지렛(파란색) 및 윤곽선 (녹색) 분할 정보의 예측을 도시한다.
도 14는 서로 다른 CPV형 사이의 관계를 보여주는 블록 분할의 CPV: 이웃한 블록의 인접한 샘플(왼쪽) 및 블록의 단면(오른쪽)으로부터의 CPV 예측을 도시한다.
도 15는 텍스처 루마 변동량(luma variance)에 기초한 모드 사전 선택을 도시한다.
도 16은 실시예에 따른 디코더의 블록도를 도시한다.
도 17은 도 16에 맞는 인코더의 블록도를 도시한다.
도 18은 실시예에 따른 디코더의 블록도를 도시한다.
도 19는 도 18에 맞는 인코더의 블록도를 도시한다.
도 20은 실시예에 따른 디코더의 블록도를 도시한다.
도 21은 도 20에 맞는 인코더의 블록도를 도시한다.
도 22은 실시예에 따른 디코더의 블록도를 도시한다.
도 23은 도 22에 맞는 인코더의 블록도를 도시한다.
도 24는 실시예에 따른 디코더의 블록도를 도시한다.
도 25는 도 24에 맞는 인코더의 블록도를 도시한다.
1 shows a block diagram of a multi-view encoder on which an embodiment of the present invention may be built according to an example.
Figure 2 shows a schematic diagram of a portion of a multiview signal to illustrate information reuse across view and video depth/displacement boundaries.
Fig. 3 shows a block diagram of a decoder consistent with Fig. 1;
Figure 4 shows Wedgelet partitioning of quadratic blocks in continuous (left) and discrete signal space (right).
Figure 5 shows a schematic diagram of six different directions of Wedgelet block division.
Figure 6 shows an example of a Wedgelet partitioning pattern for block sizes 4x4 (left), 8x8 (middle), and 16x16 (right).
Fig. 7 shows an approximation of a depth signal with a Wedgelet model by combining segmentation information and CPV (average value of depth signals of segmented areas).
8 shows the creation of a Wedgelet split pattern.
Figure 9 shows contour segmentation of a quadratic block in continuous (left) and discrete signal space (right).
Fig. 10 shows an example of a contour segmentation pattern for a block size of 8x8.
Fig. 11 shows an approximation of a depth signal with a contour model by combining segmentation information and CPV (average value of depth signals of segmented areas).
Figure 12 shows intra prediction of a Wedgelet partition (blue) for a scenario where the reference block above is either a wedgelet partition (left) or in a regular intra direction (right).
Figure 13 shows the prediction of wedgelet (blue) and contour (green) segmentation information from a texture luma reference.
Figure 14 shows the CPV of a block partition showing the relationship between different CPV types: CPV prediction from adjacent samples of neighboring blocks (left) and cross-sections of blocks (right).
15 shows mode pre-selection based on texture luma variance.
16 shows a block diagram of a decoder according to an embodiment.
Fig. 17 shows a block diagram of an encoder consistent with Fig. 16;
18 shows a block diagram of a decoder according to an embodiment.
Fig. 19 shows a block diagram of an encoder consistent with Fig. 18;
20 shows a block diagram of a decoder according to an embodiment.
Fig. 21 shows a block diagram of an encoder consistent with Fig. 20;
22 shows a block diagram of a decoder according to an embodiment.
Fig. 23 shows a block diagram of an encoder consistent with Fig. 22;
24 shows a block diagram of a decoder according to an embodiment.
Fig. 25 shows a block diagram of an encoder consistent with Fig. 24;

본 발명의 바람직한 실시예에 대한 다음의 설명은 본 발명의 실시예가 유리하게 채용될 수 있는 가능한 환경으로 시작한다. 특히, 실시예에 따른 멀티뷰 코덱은 도 1 내지 도 3에 대해 설명된다. 그러나, 이후에 설명되는 실시예는 멀티뷰 코딩으로 제한되지 않는다는 것이 강조되어야 한다. 그럼에도 불구하고, 아래에 설명되는 일부 양태는 더 잘 이해될 수 있으며, 멀티뷰 코딩과 함께 사용될 때, 아니면, 좀 더 정확히 하기 위해, 특히 깊이 맵의 코딩과 함께 사용될 때 특별한 상승 효과가 있다. 따라서, 도 1 내지 도 3 후에, 설명은 불규칙한 블록 분할로의 도입, 및 그것과 함께 포함된 문제로 진행한다. 이러한 설명은 도 4-11를 참조하고, 이 후에 설명되는 본 발명의 실시예의 설명에 대한 기초를 형성한다.The following description of preferred embodiments of the present invention begins with possible circumstances in which embodiments of the present invention may be advantageously employed. In particular, the multiview codec according to the embodiment is described with respect to FIGS. 1 to 3 . However, it should be emphasized that the embodiments described below are not limited to multiview coding. Nevertheless, some aspects described below can be better understood and have a particular synergistic effect when used with multiview coding, or, to be more precise, especially with coding of depth maps. Thus, after Figures 1-3, the description proceeds to the introduction to irregular block partitioning, and the problems involved therewith. This description is referred to FIGS. 4-11 and forms the basis for the description of embodiments of the present invention described hereafter.

상술한 바와 같이, 아래에 더 설명되는 실시예는 이미지 및 비디오 코딩 애플리케이션에서 직사각형이 아니거나 불규칙한 블록 분할 및 모델링 기능을 이용하고, 특히 이러한 실시예가 또한 종래의 이미지 및 비디오 코딩에 적용 가능할지라도 장면의 기하학적 형상을 표현하기 위한 것과 같이 깊이 맵의 코딩에 적용 가능하다. 아래에 더 설명되는 실시예는 이미지 및 비디오 코딩 애플리케이션에서 직사각형이 아닌 블록 분할 및 모델링 기능을 이용하기 위한 개념을 더 제공한다. 실시예는 특히 (장면의 기하학적 형상을 표현하기 위한) 깊이 맵의 코딩에 적용 가능하지만, 또한 종래의 이미지 및 비디오 코딩에도 적용 가능하다.As noted above, the embodiments described further below take advantage of non-rectangular or irregular block partitioning and modeling capabilities in image and video coding applications, particularly of scenes, although such embodiments are also applicable to conventional image and video coding. Applicable for coding of depth maps, such as for representing geometric shapes. Embodiments described further below further provide concepts for using non-rectangular block segmentation and modeling functionality in image and video coding applications. The embodiment is particularly applicable to the coding of depth maps (to represent the geometry of a scene), but is also applicable to conventional image and video coding.

멀티뷰 비디오 코딩에서, (다수의 카메라에 의해 동시에 캡처되는) 비디오 장면의 둘 이상의 뷰는 단일 비트스트림으로 코딩된다. 멀티뷰 비디오 코딩의 주 목적은 3차원 뷰잉 느낌(viewing impression)을 제공함으로써 향상된 멀티미디어 경험을 최종 사용자에게 제공하는 것이다. 2개의 뷰가 코딩되면, 2개의 재구성된 비디오 시퀀스는 (안경을 가진) 종래의 스테레오 디스플레이에 표시될 수 있다. 그러나, 종래의 스테레오 디스플레이를 위한 안경의 사용을 필요로 하는 것은 종종 사용자에게는 성가시다. 안경 없이 고품질의 스테레오 뷰잉 느낌을 가능하게 하는 것은 현재 연구 및 개발에서 중요한 주제이다. 이러한 오토스테레오스코픽(autostereoscopic) 디스플레이를 위한 유망한 기술은 렌티큘러 렌즈 시스템에 기초로 한다. 원칙적으로, 원통형 렌즈의 어레이는 비디오 장면의 다수의 뷰가 동시에 표시되는 식으로 종래의 디스플레이 상에 장착된다. 사용자의 각각의 눈이 서로 다른 이미지를 볼 수 있도록 각 뷰는 작은 콘(cone)에 표시되며, 이러한 효과는 특수 안경 없이 스테레오 느낌을 생성한다. 그러나, 이러한 오토스테레오스코픽 디스플레이는 통상적으로 동일한 비디오 장면의 10-30 뷰를 필요로 한다(기술이 더욱 향상될 경우에는 더 많은 뷰가 요구될 수 있다). 셋 이상의 뷰는 또한 비디오 장면에 대한 관점을 대화식으로 선택할 수 있는 가능성을 사용자에게 제공하기 위해 사용될 수 있다. 그러나, 비디오 장면의 다수의 뷰의 코딩은 기존의 단일 뷰(2차원) 비디오에 비해 필요한 비트 레이트를 크게 증가시킨다. 통상적으로, 필요한 비트 레이트는 코딩된 뷰의 수로 대략 선형 방식을 증가시킨다. 오토스테레오스코픽 디스플레이에 대한 전송된 데이터의 량을 감소시키는 개념은 소수의 뷰(아마도 2-5 뷰)만을 전송하는 것으로 되어 있지만, 부가적으로 하나 이상의 뷰에 대한 이미지 샘플의 깊이(카메라에 대한 실세계 물체의 거리)를 나타내는 소위 깊이 맵을 전송하는 것으로 되어 있다. 대응하는 깊이 맵에 소수의 코딩된 뷰가 주어지면, 고품질의 중간 뷰(코딩된 뷰 사이에 있는 가상 뷰)와, 어느 정도까지 또한 카메라 어레이의 하나 또는 두 단부에 대한 부가적인 뷰는 적절한 렌더링 기법에 의해 수신기측에 생성될 수 있다.In multiview video coding, two or more views of a video scene (captured simultaneously by multiple cameras) are coded into a single bitstream. The main purpose of multi-view video coding is to provide end users with an enhanced multimedia experience by providing a three-dimensional viewing impression. Once the two views are coded, the two reconstructed video sequences can be displayed on a conventional stereo display (with glasses). However, requiring the use of glasses for conventional stereo displays is often cumbersome for users. Enabling a high-quality stereo viewing experience without glasses is an important topic of current research and development. A promising technology for such autostereoscopic displays is based on lenticular lens systems. In principle, an array of cylindrical lenses is mounted on a conventional display in such a way that multiple views of a video scene are displayed simultaneously. Each view is displayed on a small cone so that each eye of the user sees a different image, an effect that creates a stereo feel without the need for special glasses. However, such autostereoscopic displays typically require 10-30 views of the same video scene (more views may be required as technology improves further). Three or more views can also be used to provide the user with the possibility to interactively select a viewpoint for a video scene. However, coding of multiple views of a video scene greatly increases the required bit rate compared to conventional single-view (two-dimensional) video. Typically, the required bit rate increases approximately linearly with the number of coded views. The concept of reducing the amount of transmitted data for an autostereoscopic display is to transmit only a small number of views (perhaps 2-5 views), but additionally the depth of image samples for one or more views (real world relative to the camera). distance of the object) is supposed to transmit a so-called depth map. Given a small number of coded views in the corresponding depth map, high-quality intermediate views (virtual views between the coded views) and, to some extent, also additional views on one or both ends of the camera array are suitable rendering techniques. It can be generated on the receiver side by

현재 기술 수준의 이미지 및 비디오 코딩에서, 픽처 또는 픽처에 대한 샘플 어레이의 특정 세트는 일반적으로 특정 코딩 파라미터와 관련되는 블록으로 분해된다. 픽처는 일반적으로 다수의 샘플 어레이(휘도 및 색차)로 구성된다. 게다가, 픽

Figure 112022024779445-pat00001
픽처는 또한 예를 들어 투명도 정보 또는 깊이 맵을 할당할 수 있는 부가적인 보조 샘플 어레이와 관련될 수 있다. 각각의 픽처 또는 샘플 어레이는 일반적으로 블록으로 분해된다. 블록(또는 샘플 어레이의 대응하는 블록)은 인터픽처 예측 또는 인트라픽처 예측 중 하나에 의해 예측된다. 블록은 서로 다른 크기를 가질 수 있고, 이차 또는 직사각형일 수 있다. 블록으로의 픽처의 분할은 구문(syntax)에 의해 고정될 수 있거나, (적어도 부분적으로) 비트스트림 내에 시그널링될 수 있다. 종종 미리 정의된 크기의 블록에 대한 세분을 시그널링하는 구문 요소가 전송된다. 이러한 구문 요소는 블록이 더욱 작은 블록으로 세분되고, 예를 들어 예측을 위해 관련된 코딩 파라미터인지의 여부 및 방법을 할당할 수 있다. 블록(또는 샘플 어레이의 대응하는 블록)의 모든 샘플의 경우, 관련된 코딩 파라미터의 디코딩은 어떤 방식으로 할당된다. 예에서, 블록의 모든 샘플은 (이미 코딩된 픽처의 세트의 참조 픽
Figure 112022024779445-pat00002
픽처를 식별하는) 참조 인덱스, (참조 픽처와 현재 픽처 사이에서 블록의 움직임에 대한 측정을 할당하는) 움직임 파라미터, 보간 필터를 할당하는 파라미터, 인트라 예측 모드 등과 같은 예측 파라미터의 동일한 세트를 이용하여 예측된다. 움직임 파라미터는 수평 및 수직 구성 요소을 가진 변위 벡터에 의해 나타내거나 6개의 구성 요소로 이루어지는 아핀(affine) 움직임 파라미터와 같은 고차 움직임 파라미터에 의해 나타낼 수 있다. 또한, (참조 인덱스 및 움직임 파라미터와 같은) 특정 예측 파라미터의 둘 이상의 세트는 단일의 블록과 관련되는 것이 가능하다. 그 경우에, 이러한 특정 예측 파라미터의 각 세트에 대해, 블록(또는 샘플 어레이의 대응하는 블록)에 대한 단일의 중간 예측 신호가 생성되고, 최종 예측 신호는 중간 예측 신호를 중첩하는 것을 포함하는 조합에 의해 구축된다. 대응하는 가중 파라미터 및 잠재적으로 또한 (가중된 합에 부가되는) 일정한 오프셋은 픽처 또는 참조 픽처 또는 참조 픽처의 세트에 고정될 수 있거나, 이들은 대응하는 블록에 대한 예측 파라미터의 세트에 포함될 수 있다. 또한, 잔여 신호로 지칭되는 원래의 블록(또는 샘플 어레이의 대응하는 블록)과 이의 예측 신호 사이의 차이는 일반적으로 변환되어 양자화된다. 종종, 2차원 변환은 잔여 신호(또는 잔여 블록에 대한 대응하는 샘플 어레이)에 적용된다. 변환 코딩의 경우, 예측 파라미터의 특정 세트가 이용된 블록(또는 샘플 어레이의 대응하는 블록)은 변환을 적용하기 전에 추가로 분할될 수 있다. 변환 블록은 예측에 이용되는 블록과 동일하거나 작을 수 있다. 또한, 변환 블록은 예측에 이용되는 둘 이상의 블록을 포함하는 것이 가능하다. 서로 다른 변환 블록은 서로 다른 크기를 가질 수 있고, 변환 블록은 이차 또는 직사각형 블록을 나타낼 수 있다. 변환 후에, 생성된 변환 계수는 양자화되고, 소위 변환 계수 레벨이 획득된다. 변환 계수 레벨 뿐만 아니라 예측 파라미터 및, 제공된다면 세분 정보가 엔트로피 코딩된다.In current state of the art image and video coding, a picture or a specific set of sample arrays for a picture is usually decomposed into blocks associated with specific coding parameters. A picture is usually composed of multiple arrays of samples (luminance and chrominance). Besides, pick
Figure 112022024779445-pat00001
A picture can also be associated with an additional auxiliary sample array that can be assigned, for example, transparency information or a depth map. Each picture or array of samples is usually decomposed into blocks. A block (or a corresponding block in an array of samples) is predicted by either inter-picture prediction or intra-picture prediction. Blocks can have different sizes and can be quadratic or rectangular. The division of a picture into blocks may be fixed by syntax, or may be signaled (at least partially) in the bitstream. Often a syntax element signaling the subdivision into blocks of a predefined size is transmitted. These syntax elements can assign whether and how blocks are subdivided into smaller blocks and related coding parameters, for example for prediction. For every sample of a block (or the corresponding block of the sample array), the decoding of the associated coding parameter is assigned in some way. In an example, all samples of a block (reference picture of a set of already coded pictures
Figure 112022024779445-pat00002
Prediction using the same set of prediction parameters, such as reference index (which identifies the picture), motion parameters (which assigns a measure of the block's motion between the reference picture and the current picture), parameters which assign interpolation filters, intra-prediction modes, etc. do. A motion parameter can be represented by a displacement vector with horizontal and vertical components or by a higher order motion parameter such as an affine motion parameter with six components. It is also possible that more than one set of specific prediction parameters (such as reference index and motion parameters) are associated with a single block. In that case, for each set of these particular prediction parameters, a single intermediate prediction signal for the block (or corresponding block in the sample array) is generated, and the final prediction signal is generated in a combination comprising overlapping the intermediate prediction signals. is built by Corresponding weighting parameters and potentially also constant offsets (added to the weighted sum) may be fixed to a picture or reference picture or set of reference pictures, or they may be included in a set of prediction parameters for the corresponding block. Also, the difference between the original block (or the corresponding block of the sample array), referred to as the residual signal, and its prediction signal is generally transformed and quantized. Often, a two-dimensional transform is applied to the residual signal (or the corresponding array of samples for the residual block). In the case of transform coding, the block for which a particular set of prediction parameters was used (or the corresponding block in the sample array) may be further partitioned before applying the transform. The transform block may be the same as or smaller than the block used for prediction. Also, a transform block may include two or more blocks used for prediction. Different transform blocks can have different sizes, and transform blocks can represent quadratic or rectangular blocks. After transformation, the generated transform coefficients are quantized, and so-called transform coefficient levels are obtained. The transform coefficient levels as well as prediction parameters and, if provided, granularity information are entropy coded.

또한, ITU-T Rec. H.264 | ISO/IEC JTC 1 14496-10과 같은 현재 기술 수준의 코딩 기술 또는 HEVC에 대한 작동 모델은 또한 깊이 맵에 적용 가능하고, 코딩 도구(tool)는 특히 자연 비디오의 코딩을 위해 설계되었다. 깊이 맵는 자연 비디오 시퀀스의 픽처와 다른 특성을 갖는다. 예를 들면, 깊이 맵은 적은 공간 상세 사항을 포함한다. 이들은 주로 (물체의 경계를 나타내는) 모서리(sharp edge) 및 (물체 영역을 나타내는) 거의 일정하거나 서서히 변화하는 샘플 값의 넓은 영역을 특징으로 한다. 깊이 맵으로의 멀티뷰 비디오 코딩의 전체적인 코딩 효율은 깊이 맵이 특히 깊이 맵의 특성을 이용하기 위해 설계되는 코딩 도구를 적용함으로써 더욱 효율적으로 코딩될 경우에 향상될 수 있다.Also, ITU-T Rec. H.264 | Current state-of-the-art coding techniques such as ISO/IEC JTC 1 14496-10 or working models for HEVC are also applicable to depth maps, and the coding tools are specifically designed for coding of natural video. Depth maps have different characteristics from pictures in natural video sequences. For example, depth maps contain little spatial detail. They are mainly characterized by sharp edges (representing object boundaries) and large regions of nearly constant or slowly varying sample values (representing object regions). The overall coding efficiency of multiview video coding with a depth map can be improved if the depth map is coded more efficiently by applying a coding tool specifically designed to exploit the properties of the depth map.

그 다음에 설명되는 본 발명의 실시예가 이점으로 이용될 수 있는 가능한 코딩 환경에 대한 기초로서 역할을 하기 위해, 가능한 멀티뷰 코딩 개념이 도 1 내지 도 3에 관하여 아래에 더 설명된다.In order to serve as a basis for possible coding environments in which the embodiments of the present invention described in the following may be used to advantage, possible multiview coding concepts are further described below with respect to FIGS. 1 to 3 .

도 1은 실시예에 따른 멀티뷰 신호를 인코딩하기 위한 인코더를 도시한다. 도 1의 실시예가 또한 다수의 뷰로 실현할 수 있을지라도, 도 1의 멀티뷰 신호는 2개의 뷰(121 및 122)를 포함하는 10에 예시적으로 표시된다. 더욱이, 도 1의 실시예에 따르면, 아래에 추가로 설명되는 실시예의 많은 유리한 원리가 또한 어떤 깊이/변이 맵 데이터를 포함하지 않는 뷰와 함께 멀티뷰 신호와 관련하여 이용될 경우에 유익할지라도, 각 뷰(121 및 122)는 비디오(14) 및 깊이/변이 맵 데이터(16)를 포함한다. 1 shows an encoder for encoding a multiview signal according to an embodiment. Although the embodiment of FIG. 1 can also be realized with multiple views, the multiview signal of FIG. 1 is illustratively shown at 10 comprising two views 12 1 and 12 2 . Moreover, according to the embodiment of Fig. 1, although many of the advantageous principles of the embodiments described further below are also beneficial when used in conjunction with multiview signals with views that do not contain any depth/disparity map data, Each view 12 1 and 12 2 includes video 14 and depth/disparity map data 16 .

각각의 뷰(121 및 122)의 비디오(14)는 서로 다른 투영/뷰잉 방향을 따라 일반적인 장면의 투영의 공간-시간적 샘플링을 나타낸다. 바람직하게는, 이러한 제약 조건이 반드시 충족될 필요는 없지만, 뷰(121 및 122)의 비디오(14)의 시간적 샘플링 레이트는 서로 동일하다. 도 1에 도시된 바와 같이, 바람직하게는, 각각의 비디오(14)는 프레임의 시퀀스를 포함하며, 각각의 프레임은 각각의 타임 스탬프 t, t-1, t-2,...와 관련되어 있다. 도 1에서, 비디오 프레임은 Vview number, time stamp number로 표시된다. 각 프레임 Vi,t는 각각의 타임 스탬프 t에서 각각의 뷰 방향을 따라 장면 i의 공간적 샘플링을 나타내고, 따라서, 예를 들어, 루마 샘플에 대한 하나의 샘플 어레이 및 크로마 샘플을 가진 2개의 샘플 어레이, 또는 RGB 색 공간 등의 색 구성 요소과 같은 다른 색 구성 요소에 대한 단순히 휘도 샘플 또는 샘플 어레이와 같은 하나 이상의 샘플 어레이를 포함한다. 하나 이상의 샘플 어레이의 공간적 해상도는 하나의 비디오(14) 및 서로 다른 뷰(121 및 122)의 비디오(14) 내에서 둘 다 다를 수 있다.Video 14 of each view 12 1 and 12 2 represents a spatio-temporal sampling of a projection of a typical scene along different projection/viewing directions. Preferably, the temporal sampling rates of the videos 14 of views 12 1 and 12 2 are equal to each other, although this constraint does not necessarily have to be met. As shown in Figure 1, each video 14 preferably comprises a sequence of frames, each frame being associated with a respective timestamp t, t-1, t-2,... have. In FIG. 1, a video frame is indicated by a V view number and a time stamp number . Each frame V i,t represents a spatial sampling of scene i along each view direction at each time stamp t, thus e.g. one sample array with luma samples and two sample arrays with chroma samples , or simply one or more sample arrays, such as luminance samples or sample arrays for other color components, such as color components in an RGB color space. The spatial resolution of one or more sample arrays can be different both within one video 14 and within video 14 of different views 12 1 and 12 2 .

마찬가지로, 깊이/변이 맵 데이터(16)는 뷰(121 및 122)의 각각의 뷰잉 방향을 따라 측정되는 일반적인 장면의 장면 물체의 깊이의 공간-시간적 샘플링을 나타낸다. 깊이/변이 맵 데이터의 시간적 샘플링 레이트는 도 1에 도시된 바와 같은 뷰의 관련된 비디오의 시간적 샘플링 레이트와 동일할 수 있거나 이와 다를 수 있다. 도 1의 경우에, 각 비디오 프레임 v는 각각의 뷰(121 및 122)의 깊이/변이 맵 데이터(16)의 각각의 깊이/변이 맵 d와 관련된다. 다시말하면, 도 1의 예에서, 뷰 i 및 타임 스탬프 t의 각 비디오 프레임 vi,t은 이와 관련된 깊이/변이 맵 di,t을 갖는다. 깊이/변이 맵 d의 공간적 해상도에 관하여, 비디오 프레임에 대해 상술한 바와 같이 적용된다. 즉, 공간적 해상도는 서로 다른 뷰의 깊이/변이 맵 사이에 상이할 수 있다.Similarly, depth/disparity map data 16 represents a spatio-temporal sampling of the depths of scene objects in a typical scene as measured along respective viewing directions of views 12 1 and 12 2 . The temporal sampling rate of the depth/disparity map data may be the same as or different from the temporal sampling rate of the related video of the view as shown in FIG. 1 . In the case of FIG. 1 , each video frame v is associated with a respective depth/disparity map d of the depth/disparity map data 16 of each view 12 1 and 12 2 . In other words, in the example of FIG. 1, each video frame v i,t of view i and timestamp t has a depth/disparity map d i,t associated with it. Regarding the spatial resolution of the depth/disparity map d, the same applies as described above for video frames. That is, the spatial resolution may be different between depth/disparity maps of different views.

멀티뷰 신호(10)를 효과적으로 압축하기 위하여, 도 1의 인코더는 평행하게 뷰(121 및 122)를 데이터 스트림(18)으로 인코딩한다. 그러나, 제 1 뷰(121)를 인코딩하는데 사용되는 코딩 파라미터는 제 2 뷰(122)를 인코딩하는데 사용되도록 제 2 코딩 파라미터와 동일하게 채용하거나 예측하기 위해 재사용된다. 이러한 측정에 의해, 도 1의 인코더는 뷰(121 및 122)의 병렬 인코딩이 인코더 이러한 뷰에 대한 코딩 파라미터를 유사하게 결정하게 한다는 사실을 이용하여, 이러한 코딩 파라미터 사이의 중복이 압축률 또는 레이트/왜곡 비율을 증가시키기 위해 효율적으로 이용될 수 있도록 한다(왜곡은 예를 들어 뷰 모두의 평균 왜곡으로 측정되고, 레이트는 전체 데이터 스트림(18)의 코딩 레이트로 측정된다).To effectively compress the multiview signal 10, the encoder of FIG. 1 encodes views 12 1 and 12 2 into data stream 18 in parallel. However, the coding parameters used to encode the first view 12 1 are reused to adopt or predict the same as the second coding parameters to be used to encode the second view 12 2 . By this measure, the encoder of FIG. 1 takes advantage of the fact that parallel encoding of views 12 1 and 12 2 causes the encoder to similarly determine the coding parameters for these views, so that the overlap between these coding parameters is the compression ratio or rate /to be used efficiently to increase the distortion rate (distortion is measured as the average distortion of all views, for example, and rate is measured as the coding rate of the entire data stream 18).

특히, 도 1의 인코더는 일반적으로 참조 부호(20)로 표시되고, 멀티뷰 신호(10)를 수신하는 입력 및 데이터 스트림(18)을 출력하는 출력을 포함한다. 도 2에서 알 수 있는 바와 같이, 도 1의 인코더(20)는 뷰(121 및 122) 당 2개의 코딩 브랜치, 즉 비디오 데이터에 대한 하나 및 깊이/변이 맵 데이터에 대한 다른 하나를 포함한다. 따라서, 인코더(20)는 뷰 1의 비디오 데이터에 대한 코딩 브랜치(22v,1), 뷰 1의 깊이/변이 맵 데이터에 대한 코딩 브랜치(22d,1), 제 2 뷰의 비디오 데이터에 대한 코딩 브랜치(22v,2), 및 제 2 뷰의 깊이/변이 맵 데이터에 대한 코딩 브랜치(22d,2)를 포함한다. 이러한 코딩 브랜치(22)의 각각은 유사하게 구성되어 있다. 인코더(20)의 구성 및 기능을 설명하기 위해, 다음의 설명은 코딩 브랜치(22v,1)의 구성 및 기능으로 시작한다. 이러한 기능은 모든 브랜치(22)에 공통적이다. 그 후, 브랜치(22)의 개개의 특성이 논의된다.In particular, the encoder of FIG. 1 is indicated generally by reference numeral 20 and includes an input for receiving a multiview signal 10 and an output for outputting a data stream 18 . As can be seen in FIG. 2 , the encoder 20 of FIG. 1 includes two coding branches per view 12 1 and 12 2 , one for video data and the other for depth/disparity map data. . Accordingly, the encoder 20 has a coding branch 22 v,1 for the video data of view 1, a coding branch 22 d,1 for the depth/disparity map data of view 1, and a coding branch 22 d,1 for the video data of the second view. coding branch 22 v,2 , and coding branch 22 d,2 for the depth/disparity map data of the second view. Each of these coding branches 22 is similarly configured. To describe the construction and function of the encoder 20, the following description begins with the construction and function of the coding branch 22 v,1 . This function is common to all branches 22 . After that, the individual characteristics of the branches 22 are discussed.

코딩 브랜치(22v,1)는 멀티뷰 신호(12)의 제 1 뷰(121)의 비디오(141)를 인코딩하기 위한 것이고, 따라서 브랜치(22v,1)는 비디오(141)를 수신하는 입력을 갖는다. 이 외에도, 브랜치(22v,1)는, 상술한 순서로 서로 직렬로 연결되어, 감산기(24), 양자화/변환 모듈(26), 재양자화/역변환 모듈(28), 가산기(30), 추가의 처리 모듈(32), 디코딩된 픽처 버퍼(34), 결과적으로 서로 병렬로 연결되는 2개의 예측 모듈(36 및 38), 및 한편으로 예측 모듈(36 및 38)의 출력과 다른 한편으로 감산기(24)의 반전 입력 사이에 연결되는 조합기 또는 선택기(40)를 포함한다. 조합기(40)의 출력은 또한 가산기(30)의 추가의 입력에 연결된다. 감산기(24)의 비반전 입력은 비디오(141)를 수신한다.Coding branch 22 v,1 is for encoding video 14 1 of first view 12 1 of multiview signal 12, thus branch 22 v,1 corresponds to video 14 1 . It has input to receive. In addition to this, the branches 22 v, 1 are serially connected to each other in the above-described order, the subtractor 24, the quantization/transformation module 26, the requantization/inverse transformation module 28, the adder 30, the addition of the processing module 32, the decoded picture buffer 34, consequently the two prediction modules 36 and 38 connected in parallel with each other, and the outputs of the prediction modules 36 and 38 on the one hand and the subtractor on the other hand ( and a combiner or selector 40 connected between the inverting inputs of 24). The output of combiner 40 is also connected to a further input of adder 30. The non-inverting input of subtractor 24 receives video 14 1 .

코딩 브랜치(22v,1)의 요소(24 내지 40)는 비디오(141)를 인코딩하기 위해 협력한다. 인코딩은 어떤 부분의 단위로 비디오(141)를 인코딩한다. 예를 들면, 비디오(141)를 인코딩할 시에, 프레임(v1,k)는 블록 또는 다른 샘플 그룹과 같은 세그먼트로 분할된다. 세그먼테이션(segmentation)은 시간이 지남에 따라 일정할 수 있거나 시간에 따라 변할 수 있다. 더욱이, 세그먼테이션은 기본적으로 인코더 및 디코더에 알려질 수 있거나 데이터 스트림(18) 내에 시그널링될 수 있다. 세그먼테이션은 행 및 열로 블록의 비중첩 배열과 같은 블록으로의 프레임의 정규 세그먼테이션일 수 있거나, 다양한 크기의 블록으로의 쿼드트리(quad-tree) 기반의 세그먼테이션일 수 있다. 감산기(24)의 비반전 입력에 들어가는 비디오(141)의 현재 인코딩된 세그먼트는 도 1 내지 3의 다음의 설명에서는 비디오(141)의 현재 블록이라고 한다.Elements 24 to 40 of coding branch 22 v,1 cooperate to encode video 14 1 . Encoding encodes the video 14 1 in units of certain parts. For example, when encoding video 14 1 , frame v 1,k is divided into segments such as blocks or other groups of samples. Segmentation can be constant over time or can change over time. Moreover, the segmentation may be known to the encoder and decoder by default or may be signaled within the data stream 18 . Segmentation can be a regular segmentation of a frame into blocks, such as a non-overlapping arrangement of blocks into rows and columns, or it can be a quad-tree based segmentation into blocks of various sizes. The currently encoded segment of video 14 1 entering the non-inverting input of subtractor 24 is referred to as the current block of video 14 1 in the following discussion of FIGS. 1 to 3 .

예측 모듈(36 및 38)은 현재 블록을 예측하기 위한 것이며, 이를 위해, 예측 모듈(36 및 38)은 이의 입력이 디코딩된 픽처 버퍼(34)에 연결된다. 사실상, 두 예측 모듈(36 및 38)은 감산기(24)의 비반전 입력에 들어가는 현재의 블록을 예측하기 위해 디코딩된 픽처 버퍼(34)에 존재하는 비디오(141)의 이전에 재구성된 부분을 이용한다. 이와 관련하여, 예측 모듈(36)은 비디오(141)의 동일한 프레임의 공간적으로 이웃한 이미 재구성된 부분으로부터 비디오(141)의 현재 부분을 공간적으로 예측하는 인트라 예측기의 역할을 하는 반면에, 예측 모듈(38)은 비디오(141)의 이전에 재구성된 프레임으로부터 현재 부분을 시간적으로 예측하는 인터 예측기의 역할을 한다. 모듈(36 및 38)은 둘 다 어떤 예측 파라미터에 따르거나 이에 의해 설명되는 예측을 수행한다. 좀 더 정확하게 말하면, 후자의 파라미터는 최대 비트레이트와 같은 일부 제약 하에 또는 어떤 제약 없이 레이트/왜곡 비율을 최적화하는 것과 같은 일부 최적화 목표를 최적화하기 위한 몇몇 최적화 프레임워크에서는 인코더(20)이도록 결정된다.Prediction modules 36 and 38 are for predicting the current block, for which purpose prediction modules 36 and 38 have their inputs connected to decoded picture buffer 34 . In effect, both prediction modules 36 and 38 use previously reconstructed portions of video 14 1 present in decoded picture buffer 34 to predict the current block entering the non-inverting input of subtractor 24. use In this regard, prediction module 36 acts as an intra predictor that spatially predicts the current portion of video 14 1 from a spatially neighboring already reconstructed portion of the same frame of video 14 1 , while Prediction module 38 acts as an inter predictor that temporally predicts the current portion from a previously reconstructed frame of video 14 1 . Modules 36 and 38 both perform predictions according to or described by certain prediction parameters. More precisely, the latter parameter is determined to be the encoder 20 in some optimization frameworks for optimizing some optimization goal, such as optimizing rate/distortion ratio with or without some constraint, such as maximum bitrate.

예를 들면, 인트라 예측 모듈(36)은 인트라 예측 방향과 같은 현재 부분에 대한 공간적 예측 파라미터를 결정할 수 있으며, 이에 따라 비디오(141)의 동일한 프레임의 이웃한 이미 재구성된 부분의 어떤 콘텐츠는 후자를 예측하기 위해 현재 부분으로 확장/복사된다.For example, intra-prediction module 36 can determine spatial prediction parameters for the current portion, such as the intra-prediction direction, so that any content in a neighboring already reconstructed portion of the same frame of video 14 1 can be compared to the latter. is extended/copied into the current part to predict .

인터 예측 모듈(38)은 이전에 재구성된 프레임으로부터 현재 부분을 예측하기 위해 움직임 보상을 이용할 수 있고, 이와 함께 포함된 인터 예측 파라미터는 움직임 벡터, 참조 프레임 인덱스, 현재 부분에 관한 움직임 예측 세분 정보, 가설 수 또는 이의 어떤 조합을 포함할 수 있다.Inter prediction module 38 may use motion compensation to predict the current portion from previously reconstructed frames, inter prediction parameters included therewith include motion vector, reference frame index, motion prediction refinement information about the current portion, number of hypotheses or any combination thereof.

조합기(40)는 모듈(36 및 38)에 의해 제공된 예측 중 하나 이상을 조합하거나 이 중 하나만을 선택할 수 있다. 조합기 또는 선택기(40)는 현재 부분의 생성된 예측을 제각기 감산기(24)의 삽입 입력 및 가산기(30)의 추가의 입력으로 전송한다.Combiner 40 may combine one or more of the predictions provided by modules 36 and 38 or select only one of them. The combiner or selector 40 forwards the generated prediction of the current portion to the insert input of subtractor 24 and the additional input of adder 30, respectively.

감산기(24)의 출력에서, 현재 부분의 잔여 예측은 출력되고, 양자화/변환 모듈(36)은 변환 계수를 양자화하여 이러한 잔여 신호를 변환하도록 구성된다. 변환은 DCT와 같이 어떤 스펙트럼 분해 변환일 수 있다. 양자화로 인해, 양자화/변환 모듈(26)의 처리 결과는 비가역적(irreversible)이다. 즉, 코딩 손실이 초래한다. 모듈(26)의 출력은 데이터 스트림 내에서 전송되는 잔여신호(421)이다. 모든 블록이 잔여 코딩이 될 수는 없다. 오히려, 일부 코딩 모드는 잔여 코딩을 억제할 수 있다.At the output of the subtractor 24, the residual prediction of the current part is output, and the quantization/transform module 36 is configured to transform this residual signal by quantizing the transform coefficients. The transform can be any spectral decomposition transform, such as DCT. Due to quantization, the processing result of quantization/transform module 26 is irreversible. That is, coding loss results. The output of module 26 is the residual signal 42 1 transmitted within the data stream. Not all blocks can be residual coding. Rather, some coding modes can suppress residual coding.

잔여 신호(421)는 가능한 잔여 신호를 재구성하기 위해, 즉 양자화 잡음에도 불구하고 감산기(24)에 의해 출력될 때에 잔여 신호에 대응하기 위해 역 양자화되어 모듈(28)에서 역변환된다. 가산기(30)는 이러한 재구성된 잔여 신호를 합산하여 현재 부분의 예측과 조합한다. 다른 조합이 또한 가능하다. 예를 들면, 감산기(24)는 잔류물의 비율을 측정하는 분배기로서 동작할 수 있고, 가산기는 대안에 따라 현재의 부분을 재구성하는 곱셈기로서 구현될 수 있다. 따라서, 가산기(30)의 출력은 현재 부분의 예비 재구성을 나타낸다. 그러나, 모듈(32)에서의 추가의 처리는 선택적으로 재구성을 보강하는데 사용될 수 있다. 이러한 추가의 처리는 예를 들어 디블로킹, 적응 필터링 등을 포함할 수 있다. 지금까지 이용 가능한 모든 재구성은 디코딩된 픽처 버퍼(34)에서 버퍼링된다. 따라서, 디코딩된 픽처 버퍼(34)는 비디오(141)의 이전에 재구성된 프레임 및 현재 부분이 속하는 현재 프레임의 이전에 재구성된 부분을 버퍼링한다.Residual signal 42 1 is inversely quantized and inverse transformed in module 28 to reconstruct a possible residual signal, ie to correspond to the residual signal as it is output by subtractor 24 despite quantization noise. The adder 30 sums these reconstructed residual signals and combines them with the prediction of the current part. Other combinations are also possible. For example, subtracter 24 can act as a divider to measure the ratio of the residuals, and adders can alternatively be implemented as multipliers to reconstruct the current part. Thus, the output of adder 30 represents a preliminary reconstruction of the current part. However, additional processing in module 32 may optionally be used to augment the reconstruction. Such additional processing may include, for example, deblocking, adaptive filtering, and the like. All reconstructions available so far are buffered in the decoded picture buffer 34. Thus, decoded picture buffer 34 buffers the previously reconstructed frame of video 14 1 and the previously reconstructed portion of the current frame to which the current portion belongs.

디코더가 데이터 스트림(18)으로부터 멀티뷰 신호를 재구성할 수 있도록 하기 위해, 양자화/변환 모듈(26)은 잔여 신호(421)를 인코더(20)의 멀티플렉서(44)로 전송한다. 동시에, 예측 모듈(36)은 인트라 예측 파라미터(461)를 멀티플렉서(44)로 전송하고, 인터 예측 모듈(38)은 인터 예측 파라미터(481)를 멀티플렉서(44)로 전송하며, 추가의 처리 모듈(32)은 추가의 처리 파라미터(501)를 멀티플렉서(44)로 전송하며, 멀티플렉서(44)는 결과적으로 이러한 모든 정보를 멀티플렉싱하여 데이터 스트림(18)에 삽입한다.To enable the decoder to reconstruct the multiview signal from the data stream 18, the quantization/transform module 26 sends the residual signal 42 1 to the multiplexer 44 of the encoder 20. At the same time, prediction module 36 sends intra prediction parameters 46 1 to multiplexer 44, inter prediction module 38 sends inter prediction parameters 48 1 to multiplexer 44, and further processing Module 32 sends additional processing parameters 50 1 to multiplexer 44, which in turn multiplexes all this information and inserts it into data stream 18.

도 1의 실시예에 따라 위의 논의로부터 자명하듯이, 코딩 브랜치(22v,1)에 의한 비디오(141)의 인코딩은 인코딩이 깊이/변이 맵 데이터(161) 및 다른 뷰(122)의 어떤 데이터로부터 독립적이다는 점에서 자립적이다. 보다 일반적인 관점에서, 코딩 브랜치(22v,1)는 코딩 파라미터를 결정하고, 제 1 코딩 파라미터에 따라 현재 부분의 인코딩 전에 인코더(20)에 의해 데이터 스트림(18)으로 인코딩되는 비디오(141)의 이전에 인코딩된 부분으로부터 비디오(141)의 현재 부분을 예측하며, 보정 데이터, 즉 상술한 잔여 신호(421)를 획득하기 위해 현재 부분의 예측의 예측 에러를 결정함으로써 비디오(141)를 데이터 스트림(18)으로 인코딩하는 것으로 간주될 수 있다. 코딩 파라미터 및 보정 데이터는 데이터 스트림(18)에 삽입된다.As is evident from the above discussion according to the embodiment of FIG. 1 , the encoding of video 14 1 by coding branch 22 v,1 , the encoding consists of depth/disparity map data 16 1 and other views 12 2 ) is self-contained in that it is independent of any data in From a more general point of view, the coding branch 22 v,1 determines the coding parameters, according to which the video 14 1 is encoded by the encoder 20 into the data stream 18 before the encoding of the current portion according to the first coding parameters. Predict the current portion of the video 14 1 from the previously encoded portion of the video 14 1 by determining the prediction error of the prediction of the current portion to obtain the correction data, namely the residual signal 42 1 described above. can be considered as encoding into the data stream 18. Coding parameters and correction data are inserted into the data stream 18.

코딩 브랜치(22v,1)에 의해 데이터 스트림(18)에 삽입되는 방금 언급된 코딩 파라미터는 다음의 것 중 하나, 조합 또는 모두를 포함할 수 있다:The just-mentioned coding parameters inserted into the data stream 18 by the coding branch 22 v,1 may include one, a combination, or all of the following:

- 첫째로, 비디오(141)에 대한 코딩 파라미터는 이전에 간단히 논의된 바와 같이 비디오(141)의 프레임의 세그먼테이션을 정의/시그널링할 수 있다.- Firstly, the coding parameters for video 14 1 may define/signal the segmentation of frames of video 14 1 as briefly discussed previously.

- 더욱이, 코딩 파라미터는 각각의 세그먼트 또는 현재 부분을 나타내는 코딩 모드 정보를 포함할 수 있으며, 코딩 모드는 인트라 예측, 인터 예측 또는 이의 조합과 같은 각각의 세그먼트를 예측하기 위해 사용되어야 한다.- Furthermore, the coding parameter may include coding mode information indicating each segment or current portion, and the coding mode should be used to predict each segment, such as intra prediction, inter prediction or a combination thereof.

- 코딩 파라미터는 또한 인트라 예측에 의해 예측되는 부분/세그먼트에 대한 인트라 예측 파라미터, 및 인터 예측된 부분/세그먼트에 대한 인터 예측 파라미터와 같은 방금 언급된 예측 파라미터를 포함할 수 있다.- Coding parameters may also include just mentioned prediction parameters, such as intra prediction parameters for parts/segments predicted by intra prediction, and inter prediction parameters for inter predicted parts/segments.

- 그러나, 코딩 파라미터는 추가적으로 비디오(141)의 현재 또는 다음의 부분을 예측하기 위해 동일하게 사용하기 전에 비디오(141)의 이미 재구성된 부분을 추가로 처리하는 방법을 디코딩측으로 시그널링하는 추가 처리 파라미터(501)를 포함할 수 있다. 이러한 추가 처리 파라미터(501)는 각각의 필터, 필터 계수 등을 인덱싱하는 인덱스를 포함할 수 있다.However, the coding parameters are additionally processed further signaling to the decoding side how to further process the already reconstructed part of the video 14 1 before using the same for predicting the current or next part of the video 14 1 . It can contain parameters (50 1 ). These additional processing parameters 50 1 may include an index indexing each filter, filter coefficient, and the like.

- 예측 파라미터(461, 481) 및 추가 처리 파라미터(501)는 추가적으로 모드 선택의 세분성(granularity)을 정의하거나, 추가 처리 내에서 프레임의 서로 다른 부분에 대한 서로 다른 적응 필터의 기기에 대해서와 같이 완전히 독립된 세그먼테이션을 정의하는 상술한 세그먼테이션에 대한 추가의 서브세그먼테이션을 정의하기 위해 서브세그먼테이션 데이터를 포함할 수 있다.- Prediction parameters (46 1 , 48 1 ) and further processing parameters (50 1 ) additionally define the granularity of the mode selection, or for devices of different adaptive filters for different parts of the frame within further processing. Subsegmentation data may be included to define an additional subsegmentation to the above-described segmentation that defines a completely independent segmentation, such as

- 코딩 파라미터는 또한 잔여 신호의 결정에 영향을 미칠 수 있으며, 따라서 잔여 신호(421)의 부분일 수 있다. 예를 들면, 양자화/변환 모듈(26)에 의해 출력되는 스펙트럼 변환 계수 레벨은 보정 데이터로 간주될 수 있는 반면에, 양자화 스텝 크기는 또한 데이터 스트림(18) 내에 시그널링될 수 있고, 양자화 스텝 크기 파라미터는 코딩 파라미터로 간주될 수 있다.- Coding parameters may also influence the determination of the residual signal and thus may be part of the residual signal 42 1 . For example, while the spectral transform coefficient levels output by the quantization/transform module 26 may be considered correction data, the quantization step size may also be signaled within the data stream 18, a quantization step size parameter. can be regarded as a coding parameter.

- 코딩 파라미터는 위에서 논의된 제 1 예측 단계의 예측 잔여의 2 단계 예측을 정의하는 예측 파라미터를 추가로 정의할 수 있다. 인트라/인터 예측은 이와 관련하여 사용될 수 있다.- Coding parameters may further define prediction parameters defining the two-step prediction of the prediction residual of the first prediction step discussed above. Intra/inter prediction may be used in this regard.

코딩 효율을 높이기 위해, 인코더(20)는 모든 코딩 파라미터 및 추가의 정보를 수신하는 코딩 정보 교환 모듈(52)을 포함하며, 이러한 추가의 정보는 예를 들어 각각의 모듈로부터 코딩 정보 교환 모듈(52)을 가리키는 수직 확장 화살표에 의해 예시적으로 나타내는 바와 같이 모듈(36, 38 및 32) 내의 처리에 영향을 미치거나 이에 의해 영향을 받는다. 코딩 정보 교환 모듈(52)은 브랜치가 서로로부터 코딩 파라미터를 예측하거나 채용할 수 있도록 코딩 브랜치(22) 사이에서 코딩 파라미터 및 선택적으로 추가의 코딩 정보를 공유할 책임이 있다. 도 1의 실시예에서, 순서는 이를 위해 멀티뷰 신호(10)의 뷰(121 및 122)의 데이터 엔티티, 즉 비디오 및 깊이/변이 맵 데이터 중에서 정의된다. 특히, 제 1 뷰(121)의 비디오(141)는 제 1 뷰의 깊이/변이 맵 데이터(161)에 앞서고 나서, 비디오(142)가 뒤따르고, 그 후 제 2 뷰(122)의 깊이/변이 맵 데이터(162) 등이 뒤따른다. 여기서, 멀티뷰 신호(10)의 데이터 엔티티 사이에서 이러한 엄격한 순서는 전체 멀티뷰 신호(10)의 인코딩을 위해 엄격히 적용될 필요가 없다는 것이 주목되어야 하지만, 더욱 쉬운 논의를 위해, 다음에는 이러한 순서가 일정한 것을 추정된다. 데이터 엔티티 사이의 순서는 당연히 또한 이와 관련된 브랜치(22) 사이에 순서를 정의한다 .In order to increase the coding efficiency, the encoder 20 includes a coding information exchange module 52 that receives all coding parameters and additional information, such additional information being sent to the coding information exchange module 52 from each module, for example. ) affects or is affected by processing within modules 36, 38 and 32, as exemplarily indicated by the vertically expanding arrows pointing to . Coding information exchange module 52 is responsible for sharing coding parameters and optionally additional coding information between coding branches 22 so that the branches can predict or adopt coding parameters from each other. In the embodiment of FIG. 1 , an order is defined for this among the data entities of the views 12 1 and 12 2 of the multiview signal 10 , namely video and depth/disparity map data. In particular, the video 14 1 of the first view 12 1 precedes the depth/disparity map data 16 1 of the first view, followed by the video 14 2 , then the second view 12 2 ) of depth/disparity map data (16 2 ), etc. Here, it should be noted that this strict order among the data entities of the multi-view signal 10 need not be strictly applied for the encoding of the entire multi-view signal 10, but for easier discussion, in the following, this order is constant. it is estimated The order between the data entities naturally also defines the order between the branches 22 associated with them.

이미 상술한 바와 같이, 코딩 브랜치(22d,1, 22v,2 및 22d,2)와 같은 추가의 코딩 브랜치(22)는 제각기 각각의 입력(161, 142 및 162)을 인코딩하기 위해 코딩 브랜치(22v,1)와 유사하게 작용한다. 그러나, 제각기 뷰(121 및 122)의 비디오 및 깊이/변이 맵 데이터 사이의 방금 언급된 순서, 및 코딩 브랜치(22) 사이에 정의된 대응하는 순서로 인해, 코딩 브랜치(22d,1)는 예를 들어 제 1 뷰(121)의 깊이/변이 맵 데이터(161)의 현재 부분을 인코딩하기 위해 사용되는 코딩 파라미터를 예측할 시의 추가적인 자유(freedom)를 갖는다. 이것은 서로 다른 뷰의 비디오 및 깊이/변이 맵 데이터 사이의 상술한 순서 때문이다: 예를 들면, 이러한 엔티티의 각각은 이러한 데이터 엔티티 사이의 상술한 순서에 선행하는 그 자체의 재구성된 부분을 이용할 뿐만 아니라 이의 엔티티를 이용하여 인코딩되도록 허용된다. 따라서, 깊이/변이 맵 데이터(161)를 인코딩할 시에, 코딩 브랜치(22d,1)는 대응하는 비디오(141)의 이전에 재구성된 부분으로부터 알려진 정보를 이용하도록 허용된다. 깊이/변이 맵 데이터(161)의 압축의 더욱 양호한 압축 레이트를 가능하게 하는 깊이/변이 맵 데이터(161)의 어떤 특성을 예측하기 위해 브랜치(22d,1)가 비디오(141)의 재구성된 부분을 이용하는 방법은 이론적으로 제한받지 않는다. 깊이/변이 맵 데이터(161)를 인코딩하기 위한 코딩 파라미터를 획득하기 위해 코딩 브랜치(22d,1)는 예를 들어 상술한 바와 같이 비디오(141)를 인코딩할 시에 포함되는 코딩 파라미터를 예측/채용할 수 있다. 채용의 경우에, 데이터 스트림(18) 내에서 깊이/변이 맵 데이터(161)에 관한 어떤 코딩 파라미터의 시그널링은 억제될 수 있다. 예측의 경우에는, 이러한 코딩 파라미터에 관한 예측 잔여/보정 데이터만이 데이터 스트림(18) 내에서 시그널링되어야 필요가 있을 수 있다. 코딩 파라미터의 이러한 예측/채용에 대한 예는 아래에 더 설명된다.As already mentioned above, further coding branches 22 such as coding branches 22 d,1 , 22 v,2 and 22 d,2 respectively encode respective inputs 16 1 , 14 2 and 16 2 . It acts similarly to the coding branch (22 v,1 ) to However, due to the order just mentioned between the video and depth/disparity map data of views 12 1 and 12 2 , respectively, and the corresponding order defined between coding branch 22 , coding branch 22 d,1 eg has additional freedom in predicting the coding parameters used to encode the current portion of the depth/disparity map data 16 1 of the first view 12 1 . This is due to the aforementioned ordering between the video and depth/disparity map data of the different views: for example, each of these entities not only uses its own reconstructed part that precedes the specific ordering between these data entities, It is allowed to be encoded using its entity. Thus, when encoding the depth/disparity map data 16 1 , the coding branch 22 d,1 is allowed to use known information from the previously reconstructed portion of the corresponding video 14 1 . Branch 22 d,1 of video 14 1 is used to predict certain properties of depth/disparity map data 16 1 that enable a better compression rate of compression of depth/disparity map data 16 1 . The method of using the reconstructed part is theoretically not limited. In order to obtain coding parameters for encoding the depth/disparity map data 16 1 , the coding branch 22 d,1 , for example, uses coding parameters included when encoding the video 14 1 as described above. Can predict/recruit. In case of adoption, the signaling of certain coding parameters relating to the depth/disparity map data 16 1 within the data stream 18 may be suppressed. In the case of prediction, only prediction residual/correction data relating to these coding parameters may need to be signaled within the data stream 18 . Examples of such prediction/adoption of coding parameters are described further below.

현저하게는, 모듈(36 및 38)에 대해 상술한 모드 외에, 코딩 브랜치(22d,1)는 깊이/변이 맵 데이터(161)의 코드 블록에 이용 가능한 추가적인 코딩 모드를 가질 수 있다. 이러한 추가적인 코딩 모드는 아래에 더 설명되고, 불규칙한 블록 분할 모드에 관련된다. 대안적인 관점에서, 아래 설명된 바와 같은 불규칙한 분할은 블록/분할로의 깊이/변이 맵의 세분의 연속으로 보여질 수 있다.Notably, in addition to the modes described above for modules 36 and 38, coding branch 22 d,1 may have additional coding modes available for the code blocks of depth/disparity map data 16 1 . These additional coding modes are described further below and relate to irregular block partitioning modes. In an alternative view, an irregular division as described below can be viewed as a series of subdivisions of the depth/disparity map into blocks/divisions.

어떤 경우에, 추가적인 예측 능력은 후속 데이터 엔티티, 즉 제 2 뷰(122)의 비디오(142) 및 깊이/변이 맵 데이터(162)를 위해 제공된다. 이러한 코딩 브랜치에 대하여, 이의 인터 예측 모듈은 시간적 예측을 수행할 뿐만 아니라, 인터뷰 예측을 수행할 수도 있다. 대응하는 인터 예측 파라미터는 시간적 예측, 즉 인터뷰 예측된 세그먼트 당 예측, 변이 벡터, 뷰 인덱스, 참조 프레임 인덱스 및/또는 다수의 가설의 표시(indication), 즉 예를 들어 합산으로 인터뷰 인터 예측을 형성하는데 참여하는 다수의 인터 예측의 표시에 비교되는 유사한 정보를 포함한다. 이러한 인터뷰 예측은 비디오(142)에 대한 브랜치(22v,2) 뿐만 아니라, 깊이/변이 맵 데이터(162)에 대한 브랜치(22d,2)의 인터 예측 모듈(38)에 이용 가능하다. 물론, 이러한 인터뷰 예측 파라미터는 또한 도 1에 도시되지 않는 가능한 제 3 뷰의 후속 뷰 데이터에 대한 채용/예측을 위한 기초로서 역할을 할 수 있는 코딩 파라미터를 나타낸다.In any case, additional predictive capabilities are provided for subsequent data entities, namely the video 14 2 of the second view 12 2 and the depth/disparity map data 16 2 . For this coding branch, its inter-prediction module may not only perform temporal prediction, but also inter-view prediction. Corresponding inter-prediction parameters are temporal predictions, i.e. interview-predicted per-segment predictions, disparity vectors, view indices, reference frame indices and/or indications of multiple hypotheses, i.e., summation, to form interview inter-prediction. It contains similar information compared to the indication of the number of participating inter predictions. These interview predictions are available to the inter prediction module 38 of branch 22 v,2 for video 14 2 , as well as branch 22 d,2 for depth/disparity map data 16 2 . . Of course, these interview prediction parameters also represent coding parameters that can serve as a basis for adoption/prediction for subsequent view data of a possible third view not shown in FIG. 1 .

위의 측정으로 인해, 멀티플렉서(44)에 의해 데이터 스트림(18)에 삽입되는 데이터량은 더욱 적어진다. 특히, 코딩 브랜치(22d,1, 22v,2 및 22d,2)의 코딩 파라미터의 량은 이전의 코딩 브랜치의 코딩 파라미터를 채용하거나, 단지 이에 대한 예측 잔여를 멀티플렉서(44)를 통해 데이터 스트림(28)에 삽입함으로써 크게 감소될 수 있다. 시간적 및 인터뷰 예측 사이에서 선택할 수 있는 능력으로 인해, 코딩 브랜치(22v,2 및 22d,2)의 잔여 데이터(423 및 424)의 량은 적어진다. 잔여 데이터의 량의 감소는 시간적 및 인터뷰 예측 모드를 구별할 시에 추가적인 코딩 노력을 과잉 보상을 한다.Due to the above measurements, the amount of data inserted into data stream 18 by multiplexer 44 is even smaller. In particular, the amount of coding parameters of the coding branches 22 d,1 , 22 v,2 and 22 d,2 adopt the coding parameters of the previous coding branch, or just predict residuals for them as data via the multiplexer 44. It can be greatly reduced by inserting into stream 28. Due to the ability to choose between temporal and inter-view predictions, the amount of residual data 42 3 and 42 4 in the coding branches 22 v,2 and 22 d,2 is small. The reduction in the amount of residual data overcompensates for the additional coding effort in distinguishing between temporal and inter-view prediction modes.

코딩 파라미터 채용/예측의 원리를 보다 상세히 설명하기 위해, 도 2에 대한 참조가 이루어진다. 도 2는 멀티뷰 신호(10)의 예시적인 부분을 도시한다. 도 2는 세그먼트 또는 부분(60a, 60b 및 60c)으로 분할되는 비디오 프레임(v1,t)을 도시한다. 단순화 이유로, 세그먼테이션이 프레임을 세그먼트/부분으로 균일하고 끊김 없이 나눌 수 있지만, 프레임(v1,t)의 세 부분만이 도시된다. 상술한 바와 같이, 비디오 프레임(v1,t)의 세그먼테이션은 고정되거나 시간적으로 변화할 수 있고, 세그먼테이션은 데이터 스트림 내에서 시그널링될 수 있거나 시그널링되지 않을 수 있다. 도 2는 부분(60a 및 60b)이 본 경우에 예시적인 프레임(v1,t-1)인 비디오(141)의 어떤 참조 프레임의 재구성된 버전으로부터 움직임 벡터(62a 및 62b)를 이용하여 시간적으로 예측되는 것을 도시한다. 본 기술 분야에 공지된 바와 같이, 비디오(141)의 프레임 사이의 코딩 순서는 이러한 프레임 사이의 프리젠테이션(presentation) 순서와 일치하지 않을 수 있으며, 따라서 참조 프레임은 프리젠테이션 시간 순서(64)에서 현재 프레임(v1,t)을 뒤따를 수 있다. 부분(60c)은 예를 들어 인트라 예측 파라미터가 데이터 스트림(18)에 삽입되는 인트라 예측된 부분이다.To explain the principle of coding parameter adoption/prediction in more detail, reference is made to FIG. 2 . 2 shows an exemplary portion of the multiview signal 10 . 2 shows a video frame v 1,t divided into segments or portions 60a, 60b and 60c. For simplification reasons, only three parts of the frame (v 1,t ) are shown, although segmentation can evenly and seamlessly divide a frame into segments/parts. As mentioned above, the segmentation of the video frame (v 1,t ) can be fixed or temporally variable, and the segmentation can be signaled or not signaled within the data stream. FIG. 2 shows temporal analysis using motion vectors 62a and 62b from a reconstructed version of a reference frame of video 14 1 , which is an example frame v 1,t-1 when portions 60a and 60b view it. shows what is predicted by As is known in the art, the coding order between frames of video 14 1 may not match the presentation order between such frames, so the reference frame is in presentation temporal order 64. It can follow the current frame (v 1,t ). Portion 60c is an intra-predicted portion where, for example, intra-prediction parameters are inserted into the data stream 18 .

깊이/변이 맵(d1,t)을 인코딩할 시에, 코딩 브랜치(22d,1)는 도 2에 대하여 다음에 예시되는 아래의 방식 중 하나 이상으로 상술한 가능성을 이용할 수 있다.When encoding the depth/disparity map d 1,t , the coding branch 22 d,1 may utilize the above-described possibilities in one or more of the ways below illustrated next with respect to FIG. 2 .

- 예를 들면, 깊이/변이 맵(d1,t)을 인코딩할 시에, 코딩 브랜치(22d,1)는 코딩 브랜치(22v,1)에 의해 이용되는 바와 같이 비디오 프레임(v1,t)의 세그먼테이션을 채용할 수 있다. 따라서, 비디오 프레임(v1,t)에 대한 코딩 파라미터 내에 세그멘테이션 파라미터가 있을 경우, 깊이/변이 맵 데이터(d1,t)에 대한 이의 재전송은 회피될 수 있다. 대안적으로, 코딩 브랜치(22d,1)는 데이터 스트림(18)을 통해 비디오 프레임(v1,t)에 대한 세그먼테이션의 편차를 시그널링하여 깊이/변이 맵(d1,t)에 사용될 세그멘테이션을 위한 기초/예측으로서 비디오 프레임(v1,t)의 세그먼테이션을 이용할 수 있다. 도 2는 코딩 브랜치(22d,1)가 깊이/변이 맵(d1,t)의 사전 세그먼테이션으로서 비디오 프레임(v1,t)의 세그먼테이션을 이용하는 경우를 도시한다. 즉, 코딩 브랜치(22d,1)는 비디오 프레임(v1,t)의 세그먼테이션으로부터 사전 세그먼테이션을 채용하거나 그로부터 사전 세그먼테이션을 예측한다.- For example, when encoding the depth/disparity map (d 1,t ), the coding branch (22 d,1 ) is the video frame (v 1 , as used by coding branch (22 v,1 ). t ) can be employed. Therefore, if there is a segmentation parameter in the coding parameter for the video frame (v 1,t ), its retransmission for the depth/disparity map data (d 1,t ) can be avoided. Alternatively, coding branch 22 d,1 signals the segmentation deviation for video frame v 1,t via data stream 18 to determine the segmentation to be used for depth/disparity map d 1,t . Segmentation of the video frame (v 1,t ) can be used as a basis/prediction for 2 shows the case where the coding branch 22 d,1 uses the segmentation of the video frame v 1,t as the pre-segmentation of the depth/disparity map d 1,t . That is, the coding branch 22 d,1 adopts or predicts a pre-segmentation from the segmentation of the video frame v 1,t .

- 더욱이, 코딩 브랜치(22d,1)는 비디오 프레임(v1,t) 내의 각각의 부분(60a, 60b 및 60c)에 할당된 코딩 모드로부터 깊이/변이 맵(d1,t)의 부분(66a, 66b 및 66c)의 코딩 모드를 를 채용하거나 예측할 수 있다. 비디오 프레임(v1,t)와 깊이/변이 맵(d1,t) 사이의 상이한 세그먼테이션의 경우에, 비디오 프레임(v1,t)으로부터의 코딩 모드의 채용/예측은 채용/예측이 비디오 프레임(v1,t)의 세그먼테이션의 동일 위치 부분으로부터 획득되도록 제어될 수 있다. 동일 위치(co-location)의 적절한 정의는 다음과 같을 수 있다. 깊이/변이 맵(d1,t)의 현재 부분에 대한 비디오 프레임(v1,t)의 동일 위치 부분은 예를 들어 깊이/변이 맵(d1,t)의 현재 프레임의 상위 왼쪽 코너에 있는 동일 위치 위치를 포함하는 것일 수 있다. 코딩 모드의 예측의 경우에, 코딩 브랜치(22d,1)는 데이터 스트림(18) 내에 명시적으로 시그널링되는 비디오 프레임(v1,t) 내의 코딩 모드에 대한 깊이/변이 맵(d1,t)의 부분(66a 내지 66c)의 코딩 모드 편차를 시그널링할 수 있다. - Furthermore, the coding branch 22 d,1 is a portion of the depth/disparity map d 1,t ( The coding modes of 66a, 66b and 66c) can be adopted or predicted. In the case of different segmentation between video frame (v 1,t ) and depth/disparity map (d 1,t ), the adoption/prediction of the coding mode from video frame (v 1,t ) is It can be controlled to be obtained from the co-located part of the segmentation of (v 1,t ). A suitable definition of co-location may be: The co-location portion of the video frame (v 1,t ) to the current portion of the depth/disparity map (d 1,t ) is, for example, the upper left corner of the current frame of the depth/disparity map (d 1,t ). It may include co-located locations. In the case of coding mode prediction, the coding branch 22 d,1 is the depth/disparity map d 1,t for the coding mode within the video frame v 1,t explicitly signaled in the data stream 18. The coding mode deviation of parts 66a to 66c of ) may be signaled.

- 예측 파라미터가 관계되는 한, 코딩 브랜치(22d,1)는 동일한 깊이/변이 맵(d1,t) 내의 이웃한 부분을 인코딩하는데 이용되는 예측 파라미터를 공간적으로 채용하거나 예측하며, 또는 이러한 것을, 비디오 프레임(v1,t)의 동일 위치 부분(60a 내지 60c)을 인코딩하는데 이용되는 예측 파라미터로부터 채용/예측하는 자유를 갖는다. 예를 들면, 도 2는 깊이/변이 맵(d1,t)의 부분(66a)이 인터 예측된 부분이고, 대응하는 움직임 벡터(68a)가 비디오 프레임(v1,t)의 동일 위치 부분(60a)의 움직임 벡터(62a)로부터 채용되거나 예측될 수 있다는 것을 도시한다. 예측의 경우에, 움직임 벡터의 차이만이 인터 예측 파라미터(482)의 일부로서 데이터 스트림(18)에 삽입되어야 한다.- as far as prediction parameters are concerned, the coding branch 22 d,1 spatially employs or predicts, or predicts, the prediction parameters used to encode neighboring portions within the same depth/disparity map d 1,t ; , has the freedom to adopt/predict from the prediction parameters used to encode the co-located portions 60a to 60c of the video frame v 1,t . For example, in FIG. 2 , the portion 66a of the depth/disparity map d 1,t is an inter-predicted portion, and the corresponding motion vector 68a is the co-located portion of the video frame v 1,t ( 60a) can be employed or predicted from the motion vector 62a. In the case of prediction, only the motion vector difference has to be inserted into the data stream 18 as part of the inter prediction parameters 48 2 .

- 코딩 효율의 관점에서, 코딩 브랜치(22d,1)는 불균칙한 블록 분할을 이용하여 깊이/변이 맵(d1,t)의 사전 세그먼테이션의 세그먼트를 세분할 능력을 갖는 것이 유리할 수 있다. 아래에 더 설명되는 실시예를 참조하는 일부 불균칙한 블록 분할 모드는 동일한 뷰의 재구성된 픽처(v1,t)로부터 웨지렛 분리 라인(70)과 같은 분할 정보를 도출한다. 이러한 측정에 의해, 깊이/변이 맵(d1,t)의 사전 세그먼테이션의 블록은 세분된다. 예를 들면, 깊이/변이 맵(d1,t)의 블록(66c)는 2개의 웨지렛 형상의 분할(72a 및 72b)로 세분된다. 코딩 브랜치(22d,1)는 이러한 서브세그먼트(72a 및 72b)를 인코딩하도록 구성될 수 있다. 도 2의 경우에, 서브세그먼트(72a 및 72b)는 둘 다 각각의 움직임 벡터(68c 및 68d)를 이용하여 인터 예측되도록 예시적으로 도시된다. 섹션 3 및 4에 따르면, 코딩 브랜치(22d,1)는 불규칙한 블록 분할을 위한 다수의 코딩 옵션 사이에서 선택하고, 데이터 스트림(18) 내에서 보조 정보로서 선택을 디코더로 시그널링하는 자유를 가질 수 있다. - From the point of view of coding efficiency, it may be advantageous for the coding branch 22 d,1 to have the ability to subdivide the segments of the pre-segmentation of the depth/disparity map d 1,t using non-uniform block partitioning. Some non-uniform block segmentation modes, referring to embodiments described further below, derive segmentation information such as the wedgelet separation line 70 from the reconstructed picture (v 1,t ) of the same view. By these measures, the blocks of the pre-segmentation of the depth/disparity map (d 1,t ) are subdivided. For example, block 66c of the depth/disparity map d 1,t is subdivided into two wedgelet-shaped partitions 72a and 72b. Coding branch 22 d,1 may be configured to encode these subsegments 72a and 72b. In the case of Fig. 2, subsegments 72a and 72b are both illustratively shown to be inter predicted using respective motion vectors 68c and 68d. According to sections 3 and 4, the coding branch 22 d,1 may have the freedom to choose between a number of coding options for irregular block partitioning and to signal the choice as side information to the decoder within the data stream 18. have.

비디오(142)를 인코딩할 시에, 코딩 브랜치(22v,2)는 코딩 브랜치(22v,1)에 이용 가능한 코딩 모드 옵션 외에 인터뷰 예측의 옵션을 갖는다.Upon encoding video 14 2 , coding branch 22 v,2 has the option of interview prediction in addition to the coding mode options available for coding branch 22 v,1 .

도 2는 예를 들어 비디오 프레임(v2,t)의 세그먼테이션의 부분(64b)이 변이 벡터(76)를 이용하여 제 1 뷰 비디오(141)의 시간적으로 대응하는 비디오 프레임(v1,t)으로부터 인터뷰 예측되는 것을 도시한다.FIG. 2 shows, for example, that the segmentation 64b of the video frame v 2,t uses the disparity vector 76 to temporally correspond to the video frame v 1,t of the first-view video 14 1 . ) shows what the interview predicts from.

이러한 차이에도 불구하고, 코딩 브랜치(22v,2)는 추가적으로 비디오 프레임(v1,t) 및 깊이/변이 맵(d1,t)의 인코딩으로부터 이용 가능한 모든 정보, 특히 이러한 인코딩에 이용되는 코딩 파라미터와 같은 정보를 이용할 수 있다. 따라서, 코딩 브랜치(22v,2)는 제각기 시간적으로 할당된 비디오 프레임(v1,t) 및 깊이/변이 맵(d1,t)의 동일 위치 부분(60a 및 66a)의 움직임 벡터(62a 및 68a) 중 어느 하나 또는 조합으로부터 비디오 프레임(v2,t)의 시간적으로 인터 예측된 부분(74a)에 대한 움직임 벡터(78)를 포함하는 움직임 파라미터를 채용하거나 예측할 수 있다. 어느 경우에, 예측 잔여는 부분(74a)에 대한 인터 예측 파라미터에 대해 시그널링될 수 있다. 이 점에서, 움직임 벡터(68a)은 움직임 벡터(62a) 자체로부터 이미 예측/채용되었다는 것이 상기되어야 한다.Despite this difference, the coding branch 22 v,2 additionally includes all information available from the encoding of the video frame v 1,t and the depth/disparity map d 1,t , in particular the coding used for this encoding. Information such as parameters can be used. Thus, the coding branch 22 v,2 corresponds to the motion vectors 62a and 62a of the co-located parts 60a and 66a of the temporally assigned video frame v 1,t and the depth/disparity map d 1,t , respectively. 68a) may adopt or predict motion parameters including motion vectors 78 for the temporally inter-predicted portion 74a of the video frame v 2,t from any one or combination thereof. In any case, the prediction residual may be signaled for the inter prediction parameters for portion 74a. At this point, it should be recalled that motion vector 68a has already been predicted/adopted from motion vector 62a itself.

깊이/변이 맵(d1,t)의 인코딩에 관련하여 상술한 바와 같이 비디오 프레임(v2,t)을 인코딩하기 위한 코딩 파라미터를 채용/예측하는 다른 가능성은 또한 코딩 브랜치(22v,2)에 의해 비디오 프레임(v2,t)의 인코딩에 적용 가능하지만, 모듈(52)에 의해 변동량되는 이용 가능한 공통 데이터는 비디오 프레임(v1,t) 및 대응하는 깊이/변이 맵(d1,t)의 둘 다의 코딩 파라미터가 이용 가능하기 때문에 증가된다. Another possibility to employ/predict coding parameters for encoding the video frame (v 2,t ) as described above in relation to the encoding of the depth/disparity map (d 1,t ) is also the coding branch (22 v,2 ) Applicable to the encoding of a video frame (v 2,t ) by V , but the available common data varied by module 52 is a video frame (v 1,t ) and a corresponding depth/disparity map (d 1,t ). ) is increased because both coding parameters of ) are available.

그런 다음, 코딩 브랜치(22d,2)는 코딩 브랜치(22d,1)에 의한 깊이/변이 맵(d1,t)의 인코딩과 유사하게 깊이/변이 맵(d2,t)을 인코딩한다. 이것은 예를 들어 동일한 뷰(122)의 비디오 프레임(v2,t)으로부터 코딩 파라미터 채용/예측 경우의 모두에 대해 사실이다. 그러나, 부가적으로, 코딩 브랜치(22d,2)는 이전의 뷰(121)의 깊이/변이 맵(d1,t)을 인코딩하기 위해 이용된 코딩 파라미터로부터 코딩 파라미터를 또한 채용/예측할 기회를 갖는다. 부가적으로, 코딩 브랜치(22d,2)는 코딩 브랜치(22v,2)에 대해 설명된 바와 같이 인터뷰 예측을 이용할 수 있다. Coding branch 22 d,2 then encodes the depth/disparity map d 2,t similar to the encoding of depth/disparity map d 1,t by coding branch 22 d,1 . This is true for all cases of employing/predicting coding parameters from video frame v 2,t eg of the same view 12 2 . However, additionally, the coding branch 22 d,2 has the opportunity to also adopt/predict coding parameters from the coding parameters used to encode the depth/disparity map d 1,t of the previous view 12 1 . have Additionally, coding branch 22 d,2 may use interview prediction as described for coding branch 22 v,2 .

도 1의 인코더(20)을 설명한 후, 이것은 소프트웨어, 하드웨어 또는 펌웨어, 즉 프로그램 가능한 하드웨어로 구현될 수 있다는 것이 주목되어야 한다. 도 1의 블록도는 인코더(20)가 구조적으로 병렬 코딩 브랜치, 즉 멀티뷰 신호(10)의 비디오 및 깊이/변이 데이터 당 하나의 코딩 브랜치를 포함한다는 것을 제시하지만, 이것이 그 경우일 필요는 없다. 예를 들면, 소프트웨어 루틴, 요소(24 내지 40)의 태스크를 수행하도록 구성되는 회로 부분 또는 프로그램 가능한 논리 부분은 제각기 코딩 브랜치의 각각에 대한 태스크를 순차적으로 수행하는데 사용될 수 있다. 병렬 처리 시에, 병렬 코딩 브랜치의 프로세스는 병렬 프로세서 코어 또는 병렬 실행 회로에서 수행될 수 있다.After describing the encoder 20 of FIG. 1, it should be noted that it may be implemented in software, hardware or firmware, ie programmable hardware. Although the block diagram of FIG. 1 suggests that encoder 20 structurally includes parallel coding branches, i.e., one coding branch per video and depth/disparity data of multiview signal 10, this need not be the case. . For example, a software routine, portion of circuitry configured to perform the task of elements 24-40, or portion of programmable logic may be used to sequentially perform the task for each of the respective coding branches. In parallel processing, the processes of parallel coding branches may be performed in parallel processor cores or parallel execution circuits.

도 3은 데이터 스트림(18)으로부터의 멀티뷰 신호로 나타내는 장면에 대응하는 하나 이상의 뷰 비디오를 재구성하기 위해 데이터 스트림(18)을 디코딩할 수 있는 디코더에 대한 일례를 도시한다. 대체로, 도 3의 디코더의 구조 및 기능은 도 1의 참조 부호가 도 1에 대해 위에 제공된 기능 설명이 또한 도 3에 적용하는 것을 나타내도록 가능한 재사용되도록 도 2의 인코더와 유사하다. FIG. 3 shows an example of a decoder capable of decoding a data stream 18 to reconstruct one or more view video corresponding to a scene represented by a multiview signal from the data stream 18 . In general, the structure and function of the decoder of FIG. 3 is similar to the encoder of FIG. 2 such that the reference numerals in FIG. 1 are reused as far as possible to indicate that the functional description provided above for FIG. 1 also applies to FIG. 3 .

도 3의 디코더는 일반적으로 참조 부호(100)로 나타내고, 데이터 스트림(18)에 대한 입력 및 상술한 하나 이상의 뷰(102)의 재구성을 출력하는 출력을 포함한다. 디코더(100)는 디멀티플렉서(104), 및 데이터 스트림(18)으로 나타내는 멀티뷰 신호(10)(도 1)의 데이터 엔티티의 각각에 대한 한 쌍의 디코딩 브랜치(106) 뿐만 아니라 뷰 추출기(108) 및 코딩 파라미터 교환기(110)를 포함한다. 도 1의 인코더를 가진 경우와 같이, 디코딩 브랜치(106)는 동일한 상호 연결의 동일한 디코딩 요소를 포함하며, 따라서, 이는 대표적으로 제 1 뷰(121)의 비디오(141)의 디코딩할 책임이 있는 디코딩 브랜치(106v,1)에 대해 설명된다. 특히, 각 코딩 브랜치(106)는 멀티뷰 신호(10)의 각각의 데이터 엔티티, 즉 디코딩 브랜치(106v,1)의 경우의 비디오(141)를 뷰 추출기(108)로 출력하기 위해 멀티플렉서(104)의 각각의 출력에 연결된 입력 및 뷰 추출기(108)의 각각의 입력에 연결된 출력을 포함한다. 중간에, 각 코딩 브랜치(106)는 역양자화/역변환 모듈(28), 가산기(30), 추가의 처리 모듈(32), 및 멀티플렉서(104)와 뷰 추출기(108) 사이에 직렬로 연결되는 디코딩된 픽처 버퍼(34)를 포함한다. 가산기(30), 추가의 처리 모듈(32) 및 디코딩된 픽처 버퍼(34)는 예측 모듈(36 및 38)의 병렬 연결과 함께 루프를 형성하고나서, 언급된 순서로 디코딩된 픽처 버퍼(34)와 가산기(30)의 추가의 입력 사이에 연결되는 조합기/선택기(40)를 형성한다. 도 1의 경우에서와 동일한 참조 부호를 사용하여 나타낸 바와 같이, 디코딩 브랜치(106)의 요소(28 내지 40)의 구조 및 기능은 디코딩 브랜치(106)의 요소가 데이터 스트림(18) 내에 전달된 정보를 이용하여 코딩 프로세스의 처리를 에뮬레이트(emulate)한다는 점에서 도 1의 코딩 브랜치의 대응하는 요소와 유사하다. 물론, 디코딩 브랜치(106)는 단지 인코더(20)에 의해 최종으로 선택된 코딩 파라미터에 대해 코딩 절차를 반전시키는 반면에, 도 1의 인코더(20)는 선택적으로 최대 비트 레이트 등과 같은 어떤 제한을 받는 레이트/왜곡 비용 함수를 최적화하는 코딩 파라미터와 같은 일부 최적화 의미에서의 코딩 파라미터의 최적의 세트를 찾아야 한다.The decoder of FIG. 3 is indicated generally by reference numeral 100 and includes an input to a data stream 18 and an output outputting a reconstruction of one or more views 102 described above. The decoder 100 includes a demultiplexer 104 and a pair of decoding branches 106 for each of the data entities of the multiview signal 10 (FIG. 1) represented by the data stream 18 as well as a view extractor 108. and a coding parameter exchanger (110). As with the encoder of FIG. 1 , the decoding branch 106 includes the same decoding elements of the same interconnection, and thus is typically responsible for decoding the video 14 1 of the first view 12 1 . The decoding branch 106 v,1 is described. In particular, each coding branch 106 has a multiplexer ( 104) and an output connected to each input of view extractor 108. In the middle, each coding branch 106 includes an inverse quantization/inverse transform module 28, an adder 30, a further processing module 32, and a decoding connected in series between the multiplexer 104 and the view extractor 108. and a picture buffer 34. The adder 30, the further processing module 32 and the decoded picture buffer 34 form a loop together with the parallel connection of the prediction modules 36 and 38 and then, in the order mentioned, the decoded picture buffer 34 and a further input of the adder 30 forms a combiner/selector 40. As indicated using the same reference numerals as in the case of FIG. 1 , the structure and function of the elements 28 to 40 of the decoding branch 106 indicate that the elements of the decoding branch 106 are information conveyed within the data stream 18. It is similar to the corresponding element of the coding branch of FIG. 1 in that it emulates the processing of the coding process using . Of course, while decoding branch 106 only inverts the coding procedure for the coding parameters finally selected by encoder 20, encoder 20 of FIG. /need to find an optimal set of coding parameters in some optimization sense, such as coding parameters that optimize the distortion cost function.

디멀티플렉서(104)는 데이터 스트림(18)을 다양한 디코딩 브랜치(106)로 변동량하기 위한 것이다. 예를 들면, 디멀티플렉서(104)는 역양자화/역변환 모듈(28)에 잔여 데이터(421)를 제공하고, 추가의 처리 모듈(32)에 추가의 처리 파라미터(501)를 제공하고, 인트라 예측 모듈(36)에 인트라 예측 파라미터(461)를 제공하며, 인터 예측 모듈(38)에 인터 예측 파라미터(481)를 제공한다. 코딩 파라미터 교환기(110)는 일반적인 코딩 파라미터 및 다른 일반적인 데이터를 다양한 디코딩 브랜치(106) 사이로 변동량하기 위해 도 1의 대응하는 모듈(52)과 같이 작용한다. The demultiplexer 104 is for varying the data stream 18 to the various decoding branches 106. For example, demultiplexer 104 provides residual data 42 1 to inverse quantization/inverse transform module 28, additional processing parameters 50 1 to further processing module 32, and intra prediction. Module 36 is provided with intra prediction parameters 46 1 , and inter prediction module 38 is provided with inter prediction parameters 48 1 . The coding parameter exchanger 110 acts like the corresponding module 52 of FIG. 1 to vary common coding parameters and other common data between the various decoding branches 106.

뷰 추출기(108)는 병렬 디코딩 브랜치(106)에 의해 재구성되는 멀티뷰 신호를 수신하여, 이로부터 외부에 제공된 중간 뷰 추출 제어 데이터(112)에 의해 규정된 뷰 각도 또는 뷰 방향에 대응하는 하나 이상의 뷰(102)를 추출한다.The view extractor 108 receives the multi-view signal reconstructed by the parallel decoding branch 106 and from it receives one or more view angles or view directions defined by the externally provided intermediate view extraction control data 112. Extract the view (102).

인코더(20)의 대응하는 부분에 대한 디코더(100)의 유사한 구성으로 인해, 뷰 추출기(108)에 대한 기능 내지 인터페이스는 위의 설명과 유사하여 쉽게 설명된다. Due to the similar configuration of the decoder 100 to the corresponding part of the encoder 20, the functions or interfaces for the view extractor 108 are easily described similarly to those described above.

사실상, 코딩 브랜치(106v,1 및 106d,1)는, (421 내의 스케일링 파라미터, 파라미터(461, 481, 501), 및 제 2 브랜치(16d,1)의 코딩 파라미터의 대응하는 비채용된 것 및 예측 잔여, 즉 422, 파라미터(462, 482, 502)와 같은) 데이터 스트림(18) 내에 포함된 제 1 코딩 파라미터에 따라, 제 1 뷰(121)의 현재 부분의 재구성 전에 데이터 스트림(18)으로부터 재구성되는 멀티뷰 신호(10)의 이전에 재구성된 부분으로부터 제 1 뷰(121)의 현재 부분을 예측하고, 또한 데이터 스트림(18) 내에 포함된 421 및 422 내의 제 1 보정 데이터를 이용하여 제 1 뷰(121)의 현재 부분의 예측의 예측 에러를 보정함으로써 데이터 스트림(18)으로부터 멀티뷰 신호(10)의 제 1 뷰(121)를 재구성하도록 함께 작용한다. 코딩 브랜치(106v,1)가 비디오(141)를 디코딩할 책임이 있을 동안, 코딩 브랜치(106d,1)는 깊이/변이 맵 데이터(161)를 재구성할 책임을 추정한다. 예를 들어 도 2를 참조한다: 코딩 브랜치(106v,1)는, 데이터 스트림(18)으로부터 판독된 대응하는 코딩 파라미터, 즉 421 내의 스케일링 파라미터, 파라미터(461, 481, 501)에 따라, 멀티뷰 신호(10)의 이전에 재구성된 부분으로부터 60a, 60b 또는 60c과 같은 비디오(141)의 현재 부분을 예측하고, 데이터 스트림(18), 즉 421 내의 변환 계수 레벨로부터 획득되는 대응하는 보정 데이터를 이용하여 이러한 예측의 예측 에러를 보정함으로써 데이터 스트림(18)으로부터 제 1 뷰(121)의 비디오(141)를 재구성한다. 예를 들면, 코딩 브랜치(106v,1)는 비디오 프레임 중의 코딩 순서 및, 프레임 내의 세그먼트를 코딩하기 위해, 인코더의 대응하는 코딩 브랜치가 행할 때 이러한 프레임의 세그먼트 중의 코딩 순서를 이용하여 세그먼트/부분의 단위로 비디오(141)를 처리한다. 따라서, 비디오(141)의 이전에 재구성된 모든 부분은 현재 부분에 대한 예측을 위해 이용 가능하다. 현재 부분에 대한 코딩 파라미터는 인트라 예측 파라미터(501), 인터 예측 파라미터(481), 추가의 처리 모듈(32)에 대한 필터 파라미터 등 중 하나 이상을 포함할 수 있다. 예측 에러를 보정하기 위한 보정 데이터는 잔류 데이터(421) 내의 특정 변환 계수 레벨로 나타낼 수 있다. 코딩 파라미터의 이러한 모두가 전부 전송될 필요가 없다. 이들 중 일부는 비디오(141)의 이웃한 세그먼트의 코딩 파라미터로부터 공간적으로 예측되었을 수 있다. 비디오(141)에 대한 움직임 벡터는 예를 들어 비디오(141)의 이웃한 부분/세그먼트의 움직임 벡터 사이의 움직임 벡터 차로서 비트스트림 내에 전송될 수 있다.In fact, the coding branches 106 v,1 and 106 d,1 are the scaling parameters in (42 1 , parameters 46 1 , 48 1 , 50 1 ), and the coding parameters of the second branch 16 d,1 . First view 12 1 , according to a first coding parameter included in the data stream 18 , such as the corresponding unadopted and prediction residual, i.e. 42 2 , parameters 46 2 , 48 2 , 50 2 . predicts the current part of the first view 12 1 from the previously reconstructed part of the multiview signal 10 reconstructed from the data stream 18 before reconstruction of the current part of the The first view 12 1 of the multiview signal 10 from the data stream 18 by correcting the prediction error of the prediction of the current portion of the first view 12 1 using the first correction data in 42 1 and 42 2 ) work together to reconstruct the While coding branch 106 v,1 is responsible for decoding video 14 1 , coding branch 106 d,1 assumes responsibility for reconstructing depth/disparity map data 16 1 . See Fig. 2 for example: the coding branch 106 v,1 is the corresponding coding parameter read from the data stream 18, namely the scaling parameter in 42 1 , parameters 46 1 , 48 1 , 50 1 predicting the current portion of the video 14 1 , such as 60a, 60b or 60c, from a previously reconstructed portion of the multiview signal 10 according to , obtained from the transform coefficient levels in the data stream 18, i.e. 42 1 The video 14 1 of the first view 12 1 is reconstructed from the data stream 18 by correcting the prediction error of this prediction using the corresponding correction data. For example, the coding branch 106 v,1 can use the coding order among video frames and, to code the segments within a frame, the coding order among the segments of those frames as the corresponding coding branch of the encoder does. The video 14 1 is processed in units of . Thus, all previously reconstructed parts of the video 14 1 are available for prediction on the current part. Coding parameters for the current portion may include one or more of an intra prediction parameter 50 1 , an inter prediction parameter 48 1 , a filter parameter for the further processing module 32 , and the like. Correction data for correcting the prediction error may be represented by a specific conversion coefficient level in the residual data 42 1 . All of these coding parameters need not be transmitted in their entirety. Some of these could have been spatially predicted from coding parameters of neighboring segments of video 14 1 . A motion vector for video 14 1 may be transmitted in the bitstream as a motion vector difference between motion vectors of neighboring parts/segments of video 14 1 , for example.

제 2 디코딩 브랜치(106d,1)이 관계하는 한, 이는 잔여 데이터(422) 및, 데이터 스트림(18) 내에 시그널링되고, 디멀티플렉서(104)에 의해 각각의 디코딩 브랜치(106d,1)로 변동량되는 대응하는 예측 및 필터 파라미터, 즉 인터뷰 경계에 걸쳐 예측되지 않는 코딩 파라미터 뿐만 아니라, 코딩 정보 교환 모듈(110)을 통해 변동량될 때 디멀티플렉서(104)를 통해 디코딩 브랜치(106v,1)에 제공된 코딩 파라미터 및 보정 데이터 또는 이로부터 추론 가능한 어떤 정보에 간접적으로 액세스한다. 디코딩 브랜치(106d,1)는 디멀티플렉서(104)를 통해 제 1 뷰(121)에 대한 디코딩 브랜치(106v,1 및 106d,1)의 쌍으로 전송되는 코딩 파라미터의 부분으로부터 깊이/변이 맵 데이터(161)를 재구성하는 코딩 파라미터를 결정하며, 이는 부분적으로 특히 디코딩 브랜치(106v,1)에 전용되고 전송된 이러한 코딩 파라미터의 부분을 오버랩한다. 예를 들면, 디코딩 브랜치(106d,1)는 예를 들어 한편으로 프레임(v1,t)의 다른 이웃한 부분에 대한 움직임 벡터차 및 한편으로 482 내에 명시적으로 전송된 움직임 벡터차로서 481 내에 명시적으로 전송된 움직임 벡터(62a)로부터 움직임 벡터(68a)를 결정한다. 추가적으로, 또는 대안적으로, 디코딩 브랜치(106d,1)는 디코딩 깊이/변이 맵 데이터(161)와 관련하여 간단히 상술한 바와 같이 불규칙한 블록 분할을 도출하기 위해 웨지렛 분리 라인의 예측에 대하여 상술한 바와 같이 비디오(141)의 재구성된 부분을 사용할 수 있으며, 이는 아래에 더 상세히 설명될 것이다.As far as the second decoding branch 106 d,1 is concerned, it is signaled in the residual data 42 2 , and in the data stream 18, to each decoding branch 106 d,1 by the demultiplexer 104. Provided to decoding branch 106 v,1 via demultiplexer 104 when variance via coding information exchange module 110, as well as corresponding prediction and filter parameters, i.e., coding parameters that are not predicted across interview boundaries. Indirectly access coding parameters and correction data or any information deduced from them. The decoding branch 106 d,1 is a depth/disparity from the portion of the coding parameters transmitted through the demultiplexer 104 as a pair of decoding branches 106 v,1 and 106 d,1 for the first view 12 1 . Determines the coding parameters for reconstructing the map data 16 1 , which partly overlaps the part of these coding parameters transmitted and dedicated specifically to the decoding branch 106 v,1 . For example, the decoding branch 106 d,1 can be defined as, for example, the motion vector difference to another neighboring part of the frame v 1,t on the one hand and the motion vector difference transmitted explicitly within 48 2 on the other hand. Determine motion vector 68a from motion vector 62a transmitted explicitly within 48 1 . Additionally, or alternatively, decoding branch 106 d,1 is described above for prediction of wedgelet separation lines to derive irregular block partitioning as briefly described above with respect to decoding depth/disparity map data 16 1 . As done, we can use the reconstructed portion of video 14 1 , which will be explained in more detail below.

더욱 정확하게는, 디코딩 브랜치(106d,1)는 디코딩 브랜치(106v,1)에 의해 이용되는 코딩 파라미터로부터 적어도 부분적으로 예측되고(또는 이로부터 채용되고), 및/또는 디코딩 브랜치(106v,1)의 디코딩된 픽처 버퍼(34) 내의 비디오(141)의 재구성된 부분으로부터 예측되는 코딩 파라미터를 이용하여 데이터 스트림으로부터 제 1 뷰(121)의 깊이/변이 맵 데이터(161)를 재구성한다. 코딩 파라미터의 예측 잔여는 데이터 스트림(18)으로부터 디멀티플렉서(104)를 통해 획득될 수 있다. 디코딩 브랜치(106d,1)에 대한 다른 코딩 파라미터는 전부 또는 다른 기초에 대하여, 즉 깊이/변이 맵 데이터(161) 자체의 이전에 재구성된 어떤 부분을 코딩하기 위해 사용된 코딩 파라미터를 참조하여 데이터 스트림(18) 내에 전송될 수 있다. 이러한 코딩 파라미터에 기초하여, 디코딩 브랜치(106d,1)는 깊이/변이 맵 데이터(161)의 현재 부분의 재구성 전에 디코딩 브랜치(106d,1)에 의해 데이터 스트림(18)으로부터 재구성되는 깊이/변이 맵 데이터(161)의 이전에 재구성된 부분으로부터 깊이/변이 맵 데이터(161)의 현재 부분을 예측하고, 각각의 보정 데이터(422)를 이용하여 깊이/변이 맵 데이터(161)의 현재 부분의 예측의 예측 에러를 보정한다.More precisely, the decoding branch 106 d,1 is predicted at least in part from (or is employed from) the coding parameters used by the decoding branch 106 v,1 , and/or the decoding branch 106 v, Reconstruct the depth/disparity map data 16 1 of the first view 12 1 from the data stream using coding parameters predicted from the reconstructed portion of the video 14 1 in the decoded picture buffer 34 of 1 ) do. Prediction residuals of coding parameters may be obtained via demultiplexer 104 from data stream 18 . Other coding parameters for the decoding branch 106 d,1 are all or on another basis, ie with reference to coding parameters used to code some previously reconstructed portion of the depth/disparity map data 16 1 itself. can be transmitted in the data stream 18. Based on these coding parameters, decoding branch 106 d,1 is the depth that is reconstructed from data stream 18 by decoding branch 106 d,1 before reconstruction of the current portion of depth/disparity map data 16 1 . / Predict the current portion of the depth/disparity map data (16 1 ) from the previously reconstructed portion of the disparity map data (16 1 ), and use the respective correction data (42 2 ) to estimate the depth/disparity map data (16 1 ). ) corrects the prediction error of the prediction of the current part.

제 2 뷰(122)에 대한 디코딩 브랜치(106v,2 및 106d,2)의 쌍의 기능은 인코딩에 대해 이미 상술한 바와 같이 제 1 뷰(121)에 대해서와 유사하다. 브랜치는 둘 다 자신의 코딩 파라미터를 이용하여 데이터 스트림(18)으로부터 멀티뷰 신호(10)의 제 2 뷰(122)를 재구성하도록 협력한다. 이러한 코딩 파라미터의 부분만은 디멀티플렉서(104)를 통해 이러한 두 디코딩 브랜치(106v,2 및 106d,2) 중 어느 하나로 전송되고 변동량될 필요가 있으며, 이러한 디코딩 브랜치 중 어느 하나는 뷰(121 및 122) 사이의 뷰 경계, 및 인터뷰 예측 부분의 잔여 부분에 걸쳐 채용/예측되지 않는다. 제 2 뷰(122)의 현재 부분은 제 2 뷰(122)의 각각의 현재 부분의 재구성 전에 어떤 디코딩 브랜치(106)에 의해 데이터 스트림(18)으로부터 재구성되는 멀티뷰 신호(10)의 이전에 재구성된 부분으로부터 예측되고, 이에 따라 디멀티플렉서(104)에 의해 이러한 디코딩 브랜치(106v,2 및 106d,2)의 쌍으로 전송되는 보정 데이터, 즉 423 및 424를 이용하여 예측 에러를 보정한다.The functionality of the pair of decoding branches 106 v,2 and 106 d,2 for the second view 12 2 is similar to that for the first view 12 1 as already described above for encoding. Both branches cooperate to reconstruct the second view 12 2 of the multiview signal 10 from the data stream 18 using their coding parameters. Only a portion of these coding parameters needs to be transmitted through the demultiplexer 104 to either of these two decoding branches 106 v,2 and 106 d,2 , and to be varied, either of which is the view 12 1 and 12 2 ), and not employed/predicted across the remainder of the interview prediction portion. The current part of the second view 12 2 is the previous part of the multiview signal 10 reconstructed from the data stream 18 by some decoding branch 106 before reconstruction of the respective current part of the second view 12 2 . Prediction error is calculated using the correction data, i.e., 42 3 and 42 4 , which is predicted from the reconstructed part in , and thus transmitted by the demultiplexer 104 as a pair of these decoding branches 106 v,2 and 106 d,2 . correct

디코딩 브랜치(106d,2)는 재구성된 비디오(142) 및/또는 제 1 뷰(121)의 재구성된 깊이/변이 맵 데이터(161)로부터 디코딩 브랜치(106v,1, 106d,1 및 106v,2) 중 어느 하나에 의해 사용되는 코딩 파라미터로부터의 채용/예측에 의해 코딩 파라미터를 마지막 부분적으로 결정할 수 있다. 예를 들면, 데이터 스트림(18)은 현재 부분(80b)에 대한 코딩 파라미터 및 이의 어떤 부분이 비디오(141), 깊이/변이 맵 데이터(161) 및 비디오(142) 또는 이의 적절한 서브세트 중 어느 하나의 동일 위치 부분으로 채용되거나 채택되어야 하는지 깊이/변이 맵 데이터(162)의 현재 부분(80b)에 대해 시그널링할 수 있다. 이러한 코딩 파라미터의 관심 부분은 예를 들어 84과 같은 움직임 벡터, 또는 변이 벡터(82)와 같은 변이 벡터를 포함할 수 있다. 더욱이, 불규칙하게 분할된 블록에 대한 것과 같은 다른 코딩 파라미터는 디코딩 브랜치(106d,2)에 의해 도출될 수 있다.Decoding branch 106 d,2 is derived from decoding branch 106 v,1 , 106 d , 1 and 106 v,2 ) can finally determine the coding parameters by adoption/prediction from the coding parameters used by either. For example, data stream 18 may include coding parameters for current portion 80b and any portion thereof of video 14 1 , depth/disparity map data 16 1 , and video 14 2 , or a suitable subset thereof. It is possible to signal about the current portion 80b of the depth/disparity map data 16 2 which one of the co-located portions is or should be adopted. The portion of interest of these coding parameters may include, for example, a motion vector, such as 84, or a disparity vector, such as disparity vector 82. Moreover, other coding parameters, such as for irregularly partitioned blocks, can be derived by the decoding branch 106 d,2 .

어떤 경우에, 멀티뷰 데이터(10)의 재구성된 부분은 뷰 추출기(108)에 도달하며, 뷰 추출기(108) 내에 포함된 뷰는 새로운 뷰, 즉 예를 들어 이러한 새로운 뷰와 관련된 비디오의 뷰 추출을 위한 기초가 된다. 이러한 뷰 추출은 이와 관련된 깊이/변이 맵 데이터를 사용하여 비디오(141 및 142)의 재투사를 포함할 수 있다. 솔직히 말해서, 비디오를 다른 중간 뷰로 재투사할 시에, 뷰어(viewer)에 더욱 가까이 위치된 장면 부분에 대응하는 비디오의 부분은 뷰어 위치에서 더 떨어져 위치된 장면 부분에 대응하는 비디오의 부분 이상으로 변이 방향, 즉 뷰 방향차 벡터의 방향을 따라 시프트된다. In any case, the reconstructed portion of the multiview data 10 arrives at the view extractor 108, the view contained within the view extractor 108 extracts a new view, i.e. a view of the video associated with this new view, for example. becomes the basis for This view extraction may include reprojection of videos 14 1 and 14 2 using the depth/disparity map data associated therewith. Frankly speaking, when reprojecting the video into another intermediate view, the portion of the video corresponding to the portion of the scene located closer to the viewer has a transition beyond the portion of the video corresponding to the portion of the scene located further away from the viewer's position. It is shifted along the direction, that is, the direction of the view direction difference vector.

디코더는 반드시 뷰 추출기(108)를 포함하지 않는다는 것이 언급되어야 한다. 오히려, 뷰 추출기(108)는 제공되지 않을 수 있다. 이 경우에, 디코더(100)는 단지 뷰(121 및 122) 중 하나, 수개 또는 모두와 같이 뷰(121 및 122) 중 어느 하나를 재구성하기 위한 것이다. 깊이/변이 데이터가 개개의 뷰(121 및 122)에 존재하지 않는 경우에도, 뷰 추출기(108)는 서로에 대해 이웃한 뷰의 대응하는 부분에 관련된 변이 벡터를 이용함으로써 중간 뷰 추출을 수행할 수 있다. 이웃한 뷰의 비디오와 관련된 변이 벡터 필드의 변이 벡터를 지원할 때 이러한 변이 벡터를 이용하여, 뷰 추출기(108)는 이러한 변이 벡터 필드를 적용함으로써 이웃한 뷰(121 및 122)의 이러한 비디오로부터 중간 뷰 비디오를 구축할 수 있다. 예를 들어, 비디오 프레임(v2,t)은 예측된 부분/세그먼트 인터뷰의 50 %를 갖는다는 것을 상상한다. 즉, 부분/세그먼트의 50 %에 대해, 변이 벡터가 존재하는 것이다. 나머지 부분의 경우, 변이 벡터는 공간적 의미에서 보간/외삽(interpolation/extrapolation)을 통해 뷰 추출기(108)에 의해 결정될 수 있다. 비디오(142)의 이전에 재구성된 프레임의 부분/세그먼트에 대한 변이 벡터를 이용하는 시간적 보간이 또한 사용될 수 있다. 그 후, 비디오 프레임(v2,t) 및/또는 참조 비디오 프레임(v1,t)은 중간 뷰를 만들기 위해 이러한 변이 벡터에 따라 왜곡될 수 있다. 이를 위해, 변이 벡터는 제 1 뷰(121) 및 제 2 뷰(122)의 뷰 위치 사이의 중간 뷰의 중간 뷰 위치에 따라 스케일링된다. 이러한 절차에 관한 상세 사항은 아래 더 상세히 설명된다.It should be mentioned that the decoder does not necessarily include the view extractor 108 . Rather, the view extractor 108 may not be provided. In this case, the decoder 100 is only for reconstructing any one of the views 12 1 and 12 2 , such as one, several or all of the views 12 1 and 12 2 . Even if depth/disparity data does not exist for individual views 12 1 and 12 2 , view extractor 108 performs intermediate view extraction by using disparity vectors related to corresponding parts of neighboring views relative to each other. can do. Using this disparity vector when supporting the disparity vector of the disparity vector field associated with the video of the neighboring view, view extractor 108 applies this disparity vector field to extract the disparity vector from this video of neighboring views 12 1 and 12 2 . You can build a mid-view video. For example, imagine that video frame (v 2,t ) has 50% of the predicted partial/segment interviews. That is, for 50% of parts/segments, disparity vectors exist. For the remaining parts, the disparity vector may be determined by the view extractor 108 through interpolation/extrapolation in a spatial sense. Temporal interpolation using disparity vectors for portions/segments of previously reconstructed frames of video 14 2 may also be used. The video frame (v 2,t ) and/or the reference video frame (v 1,t ) may then be distorted according to these disparity vectors to create an intermediate view. To this end, the disparity vector is scaled according to the intermediate view position of the intermediate view between the view positions of the first view 12 1 and the second view 12 2 . Details regarding these procedures are described in more detail below.

그러나, 아래에 설명되는 실시예는 유리하게도 상술한 실시예의 제 1 뷰(121)와 같이 비디오 및 대응하는 깊이/변이 맵 데이터를 포함하는 하나의 뷰의 코딩만을 고려할 경우에 도 1 내지 도 3의 프레임워크에서 사용될 수 있다. 그 경우에, 전송된 신호의 정보, 즉, 단일 뷰(121)는 뷰 합성 컴플라이언트 신호(compliant signal), 즉 뷰 합성을 가능하게 하는 신호라고 할 수 있다. 깊이/변이 맵 데이터(161)와 함께 비디오(141)의 첨부(accompanying)는 뷰 추출기(108)가 깊이/변이 맵 데이터(161)를 이용하여 뷰(121)를 이웃한 새로운 뷰로 재투사함으로써 일종의 뷰 합성을 수행할 수 있도록 한다. 다시 말하면, 코딩 효율 이득은 불규칙한 블록 분할을 이용하여 획득된다. 따라서, 아래에서 더 설명되는 불규칙한 블록 분할의 실시예는 상술한 인터뷰 코딩 정보 교환 양태로부터 독립적인 단일 뷰 코딩 개념 내에서 사용될 수 있다. 더욱 정확히 말하면, 도 1 내지 도 3의 위의 실시예는 브랜치(22, 100v/d,2) 및 관련된 뷰(122)가 없어질 정도까지 변화될 수 있다.However, the embodiment described below is advantageously shown in FIGS. 1 to 3 when considering coding of only one view comprising video and corresponding depth/disparity map data, such as the first view 12 1 of the above-described embodiment. can be used in the framework of In that case, the information of the transmitted signal, that is, the single view 12 1 , may be referred to as a view synthesis compliant signal, that is, a signal enabling view synthesis. Accompanying video 14 1 with depth/disparity map data 16 1 causes view extractor 108 to use depth/disparity map data 16 1 to move view 12 1 to a new neighboring view. Reprojection allows you to perform a kind of view synthesis. In other words, coding efficiency gains are obtained using irregular block partitioning. Thus, the embodiment of irregular block partitioning described further below can be used within a single view coding concept independent of the above-described interview coding information exchange aspect. More precisely, the above embodiment of FIGS. 1 to 3 can be varied to such an extent that the branch 22 , 100 v/d,2 and the associated view 12 2 disappear.

따라서, 도 1 내지 도 3은 연속적으로 설명된 불규칙한 블록 분할이 유리하게 사용될 수 있는 멀티뷰 코딩 개념에 대한 일례를 도시하였다. 그러나, 아래에 설명되는 코딩 모드는 또한 샘플 어레이가 깊이/변이 맵인지의 여부에 관계없이 다른 종류의 샘플 어레이 코딩과 관련하여 사용될 수 있다는 것이 다시 강조된다. 아래에 설명되는 코딩 모드의 일부는 대응하는 텍스처 맵과 함께 깊이/변이 맵의 공존을 필요로 하지 않는다.Thus, Figures 1 to 3 illustrate an example of a multiview coding concept in which the successively described irregular block partitioning can be advantageously used. However, it is emphasized again that the coding modes described below may also be used in conjunction with other types of sample array coding, whether or not the sample array is a depth/disparity map. Some of the coding modes described below do not require the coexistence of depth/disparity maps with corresponding texture maps.

특히, 아래에 설명되는 실시예는 블록의 신호가 신호의 샘플을 샘플의 두 세트로 분리하고, 샘플의 각 세트를 일정한 샘플 값으로 나타내는 모델에 의해 표현되는 몇몇 코딩 모드를 포함한다. 이하에 설명되는 코딩 모드의 일부는 블록의 신호를 직접 나타내기 위해 이용될 수 있거나, 추가적인 잔여 정보(예를 들어, 변환 계수 레벨)를 코딩함으로써 추가로 정제되는 블록에 대한 예측 신호를 생성하기 위해 이용될 수 있다. 연속하여 설명되는 코딩 모드 중 하나가 깊이 신호에 적용되는 경우에, 다른 바람직한 양태에 더하여, 깊이 신호가 주로 천천히 변화하는 영역 및 천천히 변화하는 영역 사이의 모서리를 특징으로 한다는 사실로부터 이점이 생성될 수 있다. 천천히 변화하는 영역이 (DCT에 기초하여) 변환 코딩 접근 방식에 의해 효율적으로 나타낼 수 있지만, 거의 일정한 두 영역 사이의 모서리의 표현은 코딩될 다수의 변환 계수를 필요로 한다. 모서리를 포함하는 이러한 블록은 아래에 설명되는 실시예의 일부에 대하여 설명되는 바와 같이 블록을 두 영역으로 분할하는 모델을 이용하여 더욱 양호하게 나타낼 수 있으며, 두 영역의 각각은 일정한 샘플 값을 갖는다.In particular, the embodiments described below include several coding modes in which a signal in a block is represented by a model that separates samples of the signal into two sets of samples and represents each set of samples with a constant sample value. Some of the coding modes described below can be used to directly represent the signal of a block, or to generate a prediction signal for a block that is further refined by coding additional residual information (e.g., transform coefficient levels). can be used Advantages may result from the fact that, in addition to other preferred aspects, the depth signal is mainly characterized by slowly changing regions and corners between slowly changing regions, when one of the coding modes described in succession is applied to the depth signal. have. Although slowly changing regions can be represented efficiently by a transform coding approach (based on the DCT), the representation of an edge between two nearly constant regions requires a large number of transform coefficients to be coded. Such blocks containing corners can be better represented using a model that divides the block into two regions, each of which has a constant sample value, as described for some of the embodiments described below.

다음에는, 본 발명의 여러 실시예가 더 상세히 설명된다. 섹션 1 및 2에서, 블록을 일정한 샘플 값의 두 영역으로 분할하기 위한 기본적인 개념이 설명된다. 섹션 3은 블록이 어떻게 서로 다른 영역으로 분할될 수 있는지와, 무슨 파라미터가 분할 뿐만 아니라 영역에 대한 샘플 값을 나타내기 위해 전송될 필요가 있는지를 할당하기 위한 여러 실시예를 설명한다. In the following, several embodiments of the present invention are described in more detail. In Sections 1 and 2, the basic concept for dividing a block into two regions of constant sample values is explained. Section 3 describes several embodiments for assigning how a block can be divided into different regions and what parameters need to be transmitted to indicate the division as well as the sample values for the regions.

실시예는 어떤 다른 블록과는 관계없이 분할 정보를 시그널링하고, 공간적으로 이웃한 블록을 위해 전송된 데이터에 기초하여 분할 정보를 시그널링하며, 코딩될 깊이 맵과 관련되는 이미 전송된 텍스처 픽처(종래의 비디오 픽처)에 기초하여 분할 정보를 시그널링하기 위한 개념을 포함한다. 따라서, 섹션 4는 모드 정보의 코딩, 분할 정보, 및 불규칙적으로 위치된 블록을 처리하기 위해 일부 실시예에 관련된 일정한 샘플 값에 대하여 본 발명의 실시예를 설명한다.The embodiment signals splitting information independently of any other block, signals splitting information based on data transmitted for a spatially neighboring block, and already transmitted texture pictures related to the depth map to be coded (conventional It includes a concept for signaling segmentation information based on a video picture). Accordingly, Section 4 describes embodiments of the present invention in terms of coding of mode information, segmentation information, and constant sample values related to some embodiments for processing irregularly located blocks.

다음의 설명이 주로 (특히 멀티뷰 비디오 코딩의 맥락에서) 깊이 맵의 코딩을 타겟으로 하고, 다음의 설명이 주어진 깊이 블록에 기초하지만, 본 발명의 몇몇 실시예는 또한 종래의 비디오 코딩에 적용될 수 있다. 따라서, 용어 "깊이 블록"은 일반적인 용어 "신호 블록"으로 대체되는 경우, 설명은 다른 신호 타입에 적용될 수 있다. 더욱이, 다음의 설명은 때때로 이차 블록에 집중하지만, 본 발명은 또한 직사각형 블록 또는 샘플의 다른 연결 또는 단순히 연결된 세트에 적용될 수 있다.Although the following description primarily targets coding of depth maps (particularly in the context of multiview video coding), and the following description is based on a given depth block, some embodiments of the present invention may also be applied to conventional video coding. have. Thus, if the term "depth block" is replaced with the generic term "signal block", the description may be applied to other signal types. Moreover, although the following description sometimes focuses on quadratic blocks, the present invention can also be applied to rectangular blocks or other concatenated or simply concatenated sets of samples.

1. 웨지렛1. Wedgelet

예를 들어, 도 1 내지 도 3에 도시된 바와 같은 블록 기반 하이브리드 비디오 코딩에서, 프레임은 직사각형 블록으로 세분된다. 종종 이러한 블록은 이차이며, 각 블록의 처리는 동일한 기능적 구조를 따른다. 이러한 섹션의 예의 대부분이 이차 블록을 이용하지만, 웨지렛 블록 분할 및 모든 관련된 방법은 이차 블록으로 제한되지 않고, 오히려 어떤 직사각형 블록 크기에 가능하다.For example, in block-based hybrid video coding as shown in FIGS. 1-3, a frame is subdivided into rectangular blocks. Often these blocks are secondary, and the processing of each block follows the same functional structure. Although most of the examples in this section use quadratic blocks, the Wedgelet block partitioning and all related methods are not limited to quadratic blocks, but rather are capable of any rectangular block size.

1.1 웨지렛 블록 분할1.1 Wedgelet block division

웨지렛 블록 분할의 기본 원리는 도 4에 도시된 바와 같이 블록(200)의 영역을 라인(201)에 의해 분리되는 두 영역(202a, 202b)으로 분할하는 것이며, 여기서 두 영역은 P1 및 P2이라는 라벨이 붙는다. 분리 라인은 시작점 S 및 종료점 E에 의해 결정되며, 둘 다 블록 경계에 위치된다. 때때로, 다음에서, 영역 P1은 웨지렛 분할(202a)이라고 하지만, 영역 P2은 웨지렛 분할(202b)이라고 한다.The basic principle of Wedgelet block division is to divide the region of block 200 into two regions 202a and 202b separated by line 201, as shown in Fig. 4, where the two regions are P 1 and P . 2 is labeled. The separation line is determined by the starting point S and the ending point E, both located at block boundaries. Sometimes, in the following, region P 1 is referred to as Wedgelet partition 202a, while region P 2 is referred to as Wedgelet partition 202b.

연속 신호 공간에 대해(도 4의 왼쪽 참조), 시작점 위치는

Figure 112022024779445-pat00003
이고, 종료점 위치는
Figure 112022024779445-pat00004
이며, 둘 다 블록 크기
Figure 112022024779445-pat00005
Figure 112022024779445-pat00006
로 제한된다(여기서 좌표 중 하나는 최소 값(0) 또는 최대 값(
Figure 112022024779445-pat00007
또는
Figure 112022024779445-pat00008
)과 동일해야 한다). 이러한 정의에 따르면, 분리 라인의 방정식은 다음과 같다:For continuous signal space (see left in Fig. 4), the starting point location is
Figure 112022024779445-pat00003
, and the endpoint position is
Figure 112022024779445-pat00004
, both block size
Figure 112022024779445-pat00005
and
Figure 112022024779445-pat00006
(where one of the coordinates is the minimum value (0) or maximum value (
Figure 112022024779445-pat00007
or
Figure 112022024779445-pat00008
) should be the same as). According to this definition, the equation of the separation line is:

Figure 112022024779445-pat00009
(1)
Figure 112022024779445-pat00009
(One)

이러한 방정식은

Figure 112022024779445-pat00010
에 대해서만 유효하다는 것을 주목한다. 그리고 나서, 두 영역(P1 및 P2)은 제각기 라인의 왼쪽 영역 및 오른쪽 영역으로 정의된다.These equations are
Figure 112022024779445-pat00010
Note that it is only valid for Then, the two regions P 1 and P 2 are defined as the left region and the right region of the line, respectively.

디지털 이미지 처리에서, 일반적으로 이산 신호 공간(도 4의 오른쪽 참조)이 사용되며, 여기서 블록은 그리드 사각형(grid square)으로 도시된 샘플(203)의 정수로 구성된다. 여기서, 시작점 및 종료점(S 및 E)는 위치

Figure 112022024779445-pat00011
Figure 112022024779445-pat00012
와의 블록(200)의 경계 샘플에 대응하며, 둘 다 블록 크기
Figure 112022024779445-pat00013
Figure 112022024779445-pat00014
로 제한된다. 이산 경우에, 분리 라인 방정식은 (1)에 따라 공식화될 수 있다. 그러나, 완전한 샘플만이 도 4의 오른쪽에 도시된 두 영역 중 하나의 부분으로서 할당될 수 있을 때에 영역(P1 및 P2)의 정의는 여기서 서로 다르다. 이러한 할당 문제는 섹션 1.4.1에 설명된 바와 같이 알고리즘식으로 해결될 수 있다.In digital image processing, a discrete signal space (see right side of Fig. 4) is usually used, where a block consists of an integer number of samples 203 depicted as a grid square. where the start and end points (S and E) are the positions
Figure 112022024779445-pat00011
and
Figure 112022024779445-pat00012
and correspond to the boundary samples of block 200, both of which block size
Figure 112022024779445-pat00013
and
Figure 112022024779445-pat00014
is limited to In the discrete case, the separation line equation can be formulated according to (1). However, the definitions of regions P 1 and P 2 are different here as only complete samples can be assigned as part of one of the two regions shown on the right side of FIG. 4 . This allocation problem can be solved algorithmically as described in Section 1.4.1.

웨지렛 블록 분할(202a, 202b)은 블록(200)의 서로 다른 에지에 위치될 시작 및 종료점(204)을 필요로 한다. 결과적으로, 웨지렛 블록 분할(202a, 202b)의 6개의 서로 다른 방향은 도 5에 도시된 바와 같이 직사각형 또는 이차 블록(200)에 대해 구별될 수 있다. Wedgelet block divisions 202a and 202b require start and end points 204 to be located on different edges of block 200 . As a result, six different directions of wedgelet block divisions 202a and 202b can be distinguished for a rectangular or quadratic block 200 as shown in FIG.

1.2 웨지렛 분할 패턴1.2 Wedgelet Split Pattern

코딩 프로세스에서 웨지렛 블록 분할을 이용하는 경우, 분할 정보는 분할 패턴의 형태로 저장될 수 있다. 이러한 패턴은 크기

Figure 112022024779445-pat00015
의 어레이로 구성되며, 각 요소는 부합하는(according) 샘플이 영역(P1 또는 P2)에 속하는지를 판단하는 이진 정보를 포함한다. 도 6은 서로 다른 블록 크기에 대한 예시적인 웨지렛 분할 패턴을 도시한다. 여기서, 이진 영역 정보, 즉 이중 세그먼테이션은 흑색 또는 흰색 샘플(203)로 나타낸다.When Wedgelet block division is used in the coding process, division information may be stored in the form of a division pattern. These patterns are
Figure 112022024779445-pat00015
It consists of an array of, and each element contains binary information for determining whether the matching sample belongs to the region (P 1 or P 2 ). Figure 6 shows an exemplary Wedgelet partitioning pattern for different block sizes. Here, binary region information, i.e. double segmentation, is represented by black or white samples 203.

1.3 웨지렛 모델링 및 근사1.3 Wedgelet Modeling and Approximation

웨지렛으로 블록의 깊이 신호를 모델링하기 위해, 필요한 정보는 개념적으로 2개의 요소로 구성된다. 하나는 예를 들어 분할 패턴의 형태의 분할 정보이며(섹션 1.1 참조), 이는 각각의 샘플(203)을 두 영역 중 하나에 할당한다(섹션 1.2 참조). 필요한 다른 정보 요소는 영역의 샘플에 할당되는 값이다. 두 웨지렛 영역의 각각의 값은 상수인 것으로 정의될 수 있다. 이것은 아래에 설명되는 실시예의 일부에 따른 경우이다. 따라서, 이러한 값은 일정한 분할 값(CPV)으로 지칭될 것이다. 그 경우에, 제 2 정보 요소는 할당된 영역에 대한 두 대표적인 샘플 값으로 구성된다.In order to model the depth signal of a block with a wedgelet, the necessary information conceptually consists of two elements. One is segmentation information, for example in the form of a segmentation pattern (see Section 1.1), which assigns each sample 203 to one of two regions (see Section 1.2). Another required information element is the value assigned to the samples of the region. Each value of the two Wedgelet regions can be defined as being a constant. This is the case according to some of the embodiments described below. Accordingly, this value will be referred to as the constant division value (CPV). In that case, the second information element consists of two representative sample values for the assigned region.

도 7에 도시된 바와 같이, 웨지렛에 의해 깊이 블록의 신호의 근사치를 내는 경우, 주어진 분할의 CPV는 대응하는 영역의 원래의 깊이 신호의 평균값으로서 계산될 수 있다. 도 7의 왼쪽에서, 대표적인 깊이 맵에서의 그레이스케일(grey-scaled) 부분이 도시된다. 현재 웨지렛 기반 분할의 대상인 블록(200)은 예시적으로 도시된다. 특히, 원래의 깊이 신호(205) 내의 예시적인 위치가 도시될 뿐만 아니라 확장된 그레이스케일 버전도 도시된다. 먼저, 영역(P1 및 P2)의 관점에서 분할 정보, 즉 가능한 이중 세그먼테이션은 블록(200)과 중첩된다. 그 후, 하나의 영역의 CPV는 각각의 영역으로 커버되는 모든 샘플의 평균값으로서 계산된다. 도 5의 예에서의 분할 정보가 깊이 신호(205)와 아주 잘 일치할 때, 생성된 웨지렛 모델, 즉 영역(P1)에 대한 하위 CPV(어두운 회색) 및 영역(P2)에 대한 상위 CPV(밝은 회색)으로 설명되는 웨지렛 분할 모드에 기초한 블록(200)의 예측은 깊이 블록의 양호한 근사치를 나타낸다.As shown in Fig. 7, when approximating the signal of a depth block by Wedgelet, the CPV of a given division can be calculated as the average value of the original depth signal of the corresponding region. On the left of Fig. 7, a gray-scaled portion of an exemplary depth map is shown. Block 200, which is currently the subject of Wedgelet-based partitioning, is shown as an example. In particular, an example location within the original depth signal 205 is shown, as well as an expanded grayscale version. First, segmentation information in terms of regions P 1 and P 2 , ie possible double segmentation, is overlapped with block 200 . Then, the CPV of one region is calculated as an average value of all samples covered by each region. When the segmentation information in the example of FIG. 5 matches the depth signal 205 very well, the generated Wedgelet model is the lower CPV (dark gray) for region P 1 and the upper CPV for region P 2 . The prediction of block 200 based on the Wedgelet partitioning mode described by CPV (light gray) represents a good approximation of the depth block.

1.4 웨지렛 처리1.4 Wedgelet Processing

1.4.1 웨지렛 패턴 리스트1.4.1 List of Wedgelet Patterns

웨지렛 블록 분할의 효율적인 처리 및 시그널링을 위해, 분할 패턴은 룩업(lookup) 리스트에 구성될 수 있다. 이러한 웨지렛 패턴 리스트는 영역 분리 라인에 대한 시작점 및 종료점 위치의 모든 가능한 조합에 대한 패턴을 포함하거나 모든 가능한 조합의 적절한 서브세트를 포함한다. 따라서, 하나의 룩업 리스트는 각각의 예측 블록의 크기에 대해 생성될 수 있다. 어떤 블록 크기의 리스트 내에서 특정 패턴의 위치 또는 인덱스에 의존하는 인코더와 디코더 사이의 시그널링을 가능하게 하기 위해(상세 사항을 위한 섹션 3 참조) 인코더 및 디코더에서 이용 가능한 동일한 리스트가 만들어질 수 있다. 이것은 패턴의 사전 정의된 세트를 포함하거나 인코더 및 디코더 초기화의 일부로서 동일한 생성 알고리즘을 실행함으로써 구현될 수 있다.For efficient processing and signaling of Wedgelet block partitioning, partitioning patterns can be constructed in a lookup list. This Wedgelet pattern list contains patterns for all possible combinations of start and end positions for region separation lines, or contains a suitable subset of all possible combinations. Thus, one lookup list can be created for each prediction block size. The same list can be made available at the encoder and decoder to enable signaling between the encoder and decoder that depends on the position or index of a particular pattern within the list of some block size (see Section 3 for details). This can be implemented by including a predefined set of patterns or by running the same generation algorithm as part of encoder and decoder initialization.

도 8에 도시된 바와 같이 웨지렛 분할 패턴 룩업 리스트를 생성하기 위한 핵심적인 기능은 하나의 리스트 요소를 생성시킨다. 이것은 다음에 설명되는 바와 같이 (또는 유사한 알고리즘에 의해) 실현될 수 있다. 빈(empty) 패턴(이진 요소의

Figure 112022024779445-pat00016
어레이)과 시작점 S 및 종료점 E 좌표(도 8 왼쪽)가 주어지면, 제 1 단계는 분리 라인을 그리는 것이다. 이를 위해, Bresenham 라인 알고리즘이 적용될 수 있다. 일반적으로, 알고리즘은 주어진 두 지점 사이의 직선에 대한 근사치를 형성하기 위해 샘플(203)이 도시되어야 하는지를 판단한다. 웨지렛 분할 패턴의 경우에, 시작점 S 과 종료점 E 사이의 선의 근사치를 내는 모든 요소(203)가 표시된다( 도 8의 흑색 박스, 중간 왼쪽). 마지막 단계는 표시된 샘플로 분리되는 생성된 두 영역 중 하나를 필링(filling)하는 것이다. 여기서, 상술한 할당 문제가 논의될 필요가 있다. 패턴의 요소가 이진수일 때, Bresenham 알고리즘에 의해 표시되는 분리 라인은 하나의 영역의 일부가 된다. 직관적으로, 이것은 라인 샘플이 이론적으로 두 도메인의 일부일 때 불균형이 될 것으로 보인다. 그러나, 일반성의 손실없이 하나의 영역에 분리 라인 샘플을 할당하는 것이 가능하다. 이것은 라인 표시 및 영역 필링 알고리즘이 둘 다 부합하는 방향의 루트 코너(root corner)에 대해 방향을 인식한다는 사실에 의해 보장된다. 코너 영역이 분리 라인에 의해 완전히 구분된다는 사실에 기초하여, 이러한 영역을 필링하는 것은 비교적 간단하다. 필링 알고리즘은 루트 코너 요소(206)로 시작하고, 그것이 이미 표시된 요소 및 라인(207)의 부분에 도달할 때까지(도 8 중간 오른쪽 참조) 연속으로 모든 패턴 요소 칼럼 및 라인 방향으로 표시한다. 결과적으로, 주어진 시작점 및 종료점 위치에 대한 웨지렛 분할 패턴은 이진 값으로 나타낸다(도 8 오른쪽).As shown in FIG. 8, a key function for generating a Wedgelet partitioning pattern lookup list is generating one list element. This may be realized as described below (or by a similar algorithm). An empty pattern (of binary elements)
Figure 112022024779445-pat00016
array) and the start point S and end point E coordinates (Fig. 8 left), the first step is to draw the separation line. For this, the Bresenham line algorithm can be applied. In general, the algorithm determines whether a sample 203 should be drawn to form an approximation to a straight line between two given points. In the case of the Wedgelet division pattern, all elements 203 approximating the line between the starting point S and the ending point E are indicated (black box in Fig. 8, middle left). The final step is to fill one of the two resulting regions separated by the marked sample. Here, the aforementioned allocation problem needs to be discussed. When the elements of a pattern are binary, the separation lines represented by Bresenham's algorithm become part of one region. Intuitively, this seems to be imbalanced when the line samples are theoretically part of both domains. However, it is possible to assign separate line samples to one region without loss of generality. This is ensured by the fact that both the line marking and area filling algorithms are orientation aware with respect to the root corner of the matching orientation. Based on the fact that the corner area is completely demarcated by the separation line, filling this area is relatively straightforward. The filling algorithm starts with the root corner element 206 and marks all the pattern elements column and line directions in succession until it reaches the portion of already marked elements and lines 207 (see Fig. 8 middle right). As a result, the Wedgelet split pattern for a given start and end point location is represented by a binary value (Fig. 8 right).

어떤 블록 크기의 웨지렛 분할 패턴 룩업 리스트에 대한 생성 프로세스는 가능한 라인 시작 및 종료 위치에 대한 리스트 요소를 작성한다. 이것은 도 5에 도시된 여섯 방향을 통해 반복함으로써 실현된다. 각 방향에 대해, 시작 위치는 블록의 한 에지에 위치되고, 종료 위치는 블록의 다른 에지에 위치되며, 리스트 생성 프로세스는 시작 및 종료 위치의 각각의 가능한 조합에 대해 위에 도입된 웨지렛 패턴 생성 방법을 실행한다. 효율적인 처리 및 시그널링에 대해, 웨지렛 패턴 리스트는 고유 패턴만을 포함해야 한다. 그래서, 새로운 패턴이 리스트에 추가되기 전에, 이미 리스트에 있는 어떤 패턴과 동일하거나 반대로 동일한(inverse identical) 것에 대해 체크된다. 이러한 경우에, 패턴은 중복하며, 그래서 폐기된다. 그 외에도, 평면 패턴, 즉 모든 샘플은 하나의 영역에 할당되고, 또한 이들이 유효한 웨지렛 블록 분할을 나타내지 않을 때 리스트에서 제외된다.The generation process for a Wedgelet partitioning pattern lookup list of any block size creates list elements for possible line start and end positions. This is realized by iterating through the six directions shown in FIG. 5 . For each direction, the starting location is located at one edge of the block, the ending location is located at the other edge of the block, and the list generation process is the same as the Wedgelet pattern generation method introduced above for each possible combination of starting and ending locations. run For efficient processing and signaling, the Wedgelet pattern list should contain only unique patterns. So, before a new pattern is added to the list, it is checked for being identical or inverse identical to any pattern already in the list. In this case, the pattern is redundant and is therefore discarded. Besides that, flat patterns, i.e. all samples, are assigned to one region and are also dropped from the list when they do not represent valid Wedgelet block divisions.

설명된 웨지렛 패턴 리스트에 대한 확장으로서, 패턴을 생성하는데 사용되는 라인 시작 및 종료 위치의 해상도는 예를 들어 블록 크기에 따라 적응적으로 증가되거나 감소될 수 있다. 이러한 확장의 목적은 코딩 효율성과 복잡성 사이의 양호한 트레이드오프를 찾기 위한 것이다. 정상 해상도에 비해, 해상도를 증가시키는 것은 더 많은 패턴을 가진 리스트에 이르게 하지만, 해상도를 감소시키는 것은 더 짧은 리스트를 생성시킨다. 결과적으로, 해상도는 통상적으로 작은 블록 크기에 대해서는 증가되고, 큰 블록 크기에 대해서는 감소된다. 시작 및 종료 위치에 대한 해상도와는 관계없이, 리스트에 저장된 웨지렛 분할 패턴은 항상 정상 해상도, 즉 원래의 블록 크기를 가져야 한다는 것을 주목하는 것이 중요하다. 해상도를 감소시키는 것은 상술한 바와 같이 패턴을 생성시킴으로써 간단히 실현될 수 있지만, 시작 및 종료 위치의 서브세트에 대해서만 가능하다. 예를 들면, 해상도의 절반은 패턴 생성을 매 제 2 시작 및 종료 위치로 제한하는 것을 의미한다. 이와 대조적으로, 해상도를 증가시키는 것은 더욱 어렵다. 모든 시작 및 종료 위치를 커버하기 위해, 해상도를 증가시킨 임시 패턴은 상술한 알고리즘을 이용하여 먼저 생성된다. 제 2 단계에서, 생성된 패턴은 정상 해상도로 다운샘플링된다. 이진 데이터에 대해, 다운샘플링은 증가된 해상도의 경우에 대해 다수의 동일한 패턴을 생성시키는 보간된 값을 지원하지 않는다는 것을 주목한다.As an extension to the described Wedgelet pattern list, the resolution of the line start and end positions used to create the pattern may be adaptively increased or decreased depending on the block size, for example. The purpose of this extension is to find a good tradeoff between coding efficiency and complexity. Compared to normal resolution, increasing resolution leads to lists with more patterns, while decreasing resolution results in shorter lists. As a result, resolution is typically increased for small block sizes and decreased for large block sizes. It is important to note that regardless of the resolution for the start and end positions, the Wedgelet partitioning pattern stored in the list must always have the normal resolution, i.e. the original block size. Reducing the resolution can be realized simply by generating a pattern as described above, but only for a subset of start and end positions. For example, half the resolution means limiting pattern generation to every second start and end position. In contrast, increasing the resolution is more difficult. To cover all start and end positions, a temporary pattern with increased resolution is first created using the algorithm described above. In a second step, the generated pattern is downsampled to normal resolution. Note that for binary data, downsampling does not support interpolated values that produce many identical patterns for the case of increased resolution.

상술한 웨지렛 패턴 생성의 최종 결과로서, 웨지렛 패턴의 정렬된 리스트는 인코더 및 디코더 측 둘 다에서 도출된다. 실제 구현에서, 이러한 패턴은 또한 사용된 코딩 알고리즘/코딩 표준에 의해 미리 정의될 수 있다. 더욱이, 상술한 실제 알고리즘에 의해 패턴을 생성할 필요가 없고, 이러한 알고리즘의 수정이 또한 사용될 수 있다. 인코더 및 디코더 둘 다가 인코딩 및 디코딩 프로세스를 위한 웨지렛 패턴의 동일한 리스트를 생성하였다는(나중에 사용) 것만이 중요하다. As an end result of the Wedgelet pattern generation described above, an ordered list of Wedgelet patterns is derived on both the encoder and decoder sides. In actual implementation, these patterns may also be predefined by the coding algorithm/coding standard used. Moreover, it is not necessary to generate patterns by the actual algorithms described above, and modifications of these algorithms can also be used. It only matters that both the encoder and decoder generated the same list of Wedgelet patterns for the encoding and decoding processes (used later).

1.4.2 최소 왜곡 웨지렛 검색1.4.2 Minimum Distortion Wedgelet Search

상술한 룩업 리스트에 기초하여, 웨지렛 분할에 의한 블록의 신호의 최상의 근사치는 검색 알고리즘에 의해 발견될 수 있다. 웨지렛 기반 코딩 알고리즘에 대해, 최상의 근사치는 최소 왜곡을 유발시키는 웨지렛 모델로 이해될 수 있다. 다시 말하면, 검색은 주어진 블록에 가장 일치하는 웨지렛 분할 패턴을 찾을려고 한다. 검색은 주어진 블록 크기에 대한 모든 가능한 웨지렛 분할 패턴을 포함하는 도출된 패턴 리스트을 이용한다(상세 사항을 위한 섹션 1.4.1 참조). 이러한 리스트는 최소 왜곡 웨지렛 검색이 실행될 때마다 패턴이 다시 생성될 필요가 없을 때 검색의 처리 시간을 제한하는 것을 돕는다. 각 검색 단계는 다음의 단계로 구성될 수 있다:Based on the above lookup list, the best approximation of the signal of the block by Wedgelet division can be found by the search algorithm. For Wedgelet-based coding algorithms, the best approximation can be understood as the Wedgelet model that induces the least distortion. In other words, the search tries to find the Wedgelet split pattern that best matches the given block. The search uses a derived pattern list containing all possible Wedgelet splitting patterns for a given block size (see Section 1.4.1 for details). This list helps limit the processing time of the search when the pattern does not need to be regenerated every time the least distortion Wedgelet search is run. Each search step may consist of the following steps:

Figure 112022024779445-pat00017
주어진 분할 패턴 및 원래의 블록 신호로부터의 CPV 값의 계산.
Figure 112022024779445-pat00017
Calculation of CPV values from given splitting pattern and original block signal.

Figure 112022024779445-pat00018
원래의 블록 신호와 웨지렛 모델 사이의 왜곡
Figure 112022024779445-pat00019
의 계산.
Figure 112022024779445-pat00018
Distortion between the original block signal and the Wedgelet model
Figure 112022024779445-pat00019
calculation of.

Figure 112022024779445-pat00020
Figure 112022024779445-pat00021
의 평가: 참(true)일 경우,
Figure 112022024779445-pat00022
를 설정하고, 현재 분할 패턴의 리스트 인덱스를 저장함으로써 최소 왜곡 웨지렛 정보를 업데이트한다.
Figure 112022024779445-pat00020
Figure 112022024779445-pat00021
evaluation of: if true,
Figure 112022024779445-pat00022
, and update the minimum distortion Wedgelet information by storing the list index of the current split pattern.

왜곡 대신에, 라그랑지안(Lagrangian) 비용 측정치는 이용된 웨지렛 패턴을 찾기 위해 사용될 수 있다. 라그랑지안 const 측정치는 라그랑지안 승수(multiplier)

Figure 112022024779445-pat00023
를 제공한 관련된 파라미터를 전송하기 위해 필요한 레이트 R을 가진 특정 웨지렛 패턴에 의해 얻어진 왜곡 D에 가중치를 주는 가중 합
Figure 112022024779445-pat00024
이다.Instead of distortion, a Lagrangian cost measure can be used to find the Wedgelet pattern used. The Lagrangian const measure is the Lagrangian multiplier
Figure 112022024779445-pat00023
A weighted sum weighting the distortion D obtained by a particular Wedgelet pattern with a rate R required to transmit the relevant parameters that provided
Figure 112022024779445-pat00024
to be.

철저한 검색에서 빠른 검색 전략에 이르기까지 검색 알고리즘에 대한 여러 전략이 가능하다. 철저한 검색은 웨지렛 패턴 리스트의 모든 요소가 최소 왜곡에 대해 연속적으로 테스트된다는 것을 의미한다. 이러한 전략은 (특히 인코더에 중요한) 느린 가격(price of being slow)이 아니었다면 전역 최소값(global minimum)이 확실히 발견된다. 빠른 검색은 필요한 검색 단계의 수를 줄이는 개선된 전략을 의미한다. 빠른 검색 전략은 예를 들어 연속적 정제(successive refinement)일 수 있다. 제 1 단계에서, 예를 들어, 단지 제 4 경계 샘플마다 제한된 수의 라인 시작 및 종료 위치로부터 생성하는 분할 패턴의 서브세트에 대한 최소 왜곡 웨지렛이 검색된다. 제 2 단계에서, 시작 및 종료 위치는 예를 들어 매 제 2 경계 샘플을 허용하지만, 테스트된 시작 및 종료 위치의 범위를 제 1 단계의 최상의 결과 주변의 범위로 제한함으로써 정제되어야 한다. 사이클마다 스텝 크기를 정제함으로써, 최종적으로 최소 왜곡 웨지렛이 발견된다. 전체 검색과는 대조적으로, 이러한 빠른 검색 전략만은 로컬 최소값을 찾는 것을 허용하지만, 테스트될 웨지렛 패턴의 수는 상당히 감소하여, 결과적으로 검색이 빠르다. 제 1 단계의 스텝 크기는 고정 값일 필요가 없지만, 예를 들어 블록 크기의 함수로서 적응적으로 설정될 수 있다는 것을 주목한다.Several strategies are possible for the search algorithm, from exhaustive to fast search strategies. An exhaustive search means that all elements of the Wedgelet pattern list are successively tested for minimal distortion. This strategy will definitely find a global minimum if not for the price of being slow (especially important for encoders). Fast retrieval refers to an improved strategy that reduces the number of retrieval steps required. A fast search strategy can be, for example, successive refinement. In a first step, a minimum distortion wedgelet is searched for a subset of segmentation patterns that results from a limited number of line start and end positions, for example only every fourth boundary sample. In the second step, the start and end positions must be refined, for example by allowing every second boundary sample, but limiting the range of tested start and end positions to the range around the best result of the first step. By refining the step size per cycle, the minimum distortion wedgelet is finally found. In contrast to full search, only this fast search strategy allows finding local minima, but significantly reduces the number of Wedgelet patterns to be tested, resulting in a fast search. Note that the step size of the first step need not be a fixed value, but can be set adaptively, for example as a function of the block size.

웨지렛 라인 또는 웨지렛 패턴의 프로세스을 인덱싱하는 방금 논의된 인덱스는 wedge_full_tab_idx 라고 할 수 있다.The just-discussed index indexing the process of a Wedgelet line or Wedgelet pattern can be referred to as wedge_full_tab_idx.

2 윤곽선2 outline

이러한 섹션의 예의 대부분이 이차 블록을 이용하지만, 윤곽선 블록 분할 및 모든 관련된 실시예는 이차 블록으로 제한되지 않고, 오히려 어떤 직사각형 블록의 크기에 대해 가능하다는 것을 주목한다.Note that although most of the examples in this section use quadratic blocks, the contour block segmentation and all related embodiments are not limited to quadratic blocks, but rather are possible for any rectangular block size.

2.1 윤곽선 블록 분할2.1 Split Contour Block

윤곽선 블록 분할의 기본 원리는 블록(200)의 영역을 두 영역(202a, 202b)로 분할하는 것이다. 웨지렛 블록 분할에 대해서와는 달리, 영역 사이의 분리 라인(201)은 기하학적 공식화에 의해 설명될 수 없다. 도 9에서 P1 및 P2로 표시된 두 영역에 의해 도시된 바와 같이, 윤곽선의 영역은 임의의 형상일 수 있으며, 이들은 심지어 연결될 필요는 없다.The basic principle of contour block segmentation is to divide the area of block 200 into two areas 202a and 202b. Unlike for Wedgelet block divisions, the separation line 201 between regions cannot be described by a geometric formulation. As shown by the two regions labeled P 1 and P 2 in FIG. 9 , the regions of the outline may be of any shape, and they do not even need to be connected.

도 9는 또한 윤곽선 블록 분할에 대한 연속 및 이산 신호 공간 사이의 차이를 도시한다. 다시 말하면, 완전한 샘플만이 이산 신호 공간에 대한 두 영역 중 하나의 부분으로 할당될 수 있다(도 9 오른쪽). 윤곽선 분할 정보가 기하학적 공식화에서가 아닌 이산 참조 신호에서 도출될 경우(상세 사항을 위한 섹션 3.2.2 참조), 웨지렛 블록 분할에 대해서와 같은 할당 문제는 여기에서 고려될 필요가 없다.Figure 9 also shows the difference between continuous and discrete signal space for contour block segmentation. In other words, only complete samples can be allocated as part of one of the two regions for the discrete signal space (Fig. 9 right). If the contour segmentation information is derived from a discrete reference signal rather than from a geometric formulation (see Section 3.2.2 for details), the same allocation problem as for Wedgelet block segmentation need not be considered here.

2.2 윤곽선 분할 패턴2.2 Contour Segmentation Pattern

웨지렛 분할 패턴에 순응하여(섹션 1.2 참조 ), 윤곽선 블록 분할 정보는 분할 패턴의 형태로 저장될 수 있다. 이러한 패턴은 크기

Figure 112022024779445-pat00025
의 어레이로 구성되고, 각 요소는 부합하는 샘플이 영역(P1 또는 P2)에 속하는지를 판단하는 이진 정보를 포함한다. 도 10은 흑색 또는 흰색 샘플 색상으로 이진 영역 정보를 나타내는 예시적인 윤곽선 분할 패턴을 도시한다.Conforming to the Wedgelet splitting pattern (see Section 1.2), the contour block splitting information can be stored in the form of a splitting pattern. These patterns are
Figure 112022024779445-pat00025
It consists of an array of , each element containing binary information for determining whether a matching sample belongs to the region P 1 or P 2 . 10 shows an exemplary contour segmentation pattern representing binary region information with a black or white sample color.

2.3 윤곽선 모델링 및 근사치2.3 Contour Modeling and Approximation

윤곽선으로 블록의 깊이 신호의 근사치를 내는 원리는 섹션 1.3에서 설명된 웨지렛 개념과 동일하다. 다시 말하면, 필요한 정보는 두 요소 분할 정보 및 분할 필링 명령어로 구성될 수 있으며, 이러한 명령어는 결과적으로 두 영역의 각각에 대해 하나의 일정한 분할 값(CPV)을 포함할 수 있으며, 이러한 값은 대응하는 영역의 원래의 깊이 신호의 평균값으로 계산될 수 있다.The principle of approximating a block's depth signal with a contour is the same as the Wedgelet concept described in Section 1.3. In other words, the required information may consist of two-element splitting information and a split-filling command, which in turn may include one constant splitting value (CPV) for each of the two regions, which values correspond to It can be calculated as the average value of the original depth signal of the region.

윤곽선 근사치는 도 11에 도시되어 있으며, 여기서 예측 블록(200)의 원래의 깊이 신호는 이의 주변을 보여주기 위해 강조되어 확대 도시된다. 다시 말하면, 영역(P1 및 P2)의 측면에서의 분할 정보는 먼저 블록과 중첩된 후, CPV는 영역에 의해 커버되는 모든 샘플의 평균 값으로 계산된다. 도 11의 예에서의 분할 정보가 깊이 신호와 아주 잘 일치할 때, 영역(P1)에 대한 낮은 CPV(어두운 회색) 및 영역(P2)에 대한 높은 CPV(밝은 회색)를 가진 생성된 윤곽선 모델은 깊이 블록의 양호한 근사치를 나타낸다.A contour approximation is shown in Fig. 11, where the original depth signal of the prediction block 200 is shown magnified and exaggerated to show its surroundings. In other words, the partitioning information at the side of the regions P 1 and P 2 is first overlapped with the block, and then the CPV is calculated as an average value of all samples covered by the region. When the segmentation information in the example of FIG. 11 matches the depth signal very well, the generated contours have a low CPV (dark gray) for region P 1 and a high CPV (light gray) for region P 2 . The model represents a good approximation of the depth block.

3. 블록 분할 코딩3. Block segmentation coding

도 1 내지 도 3의 코딩 환경과 같은 멀티뷰 비디오 플러스 깊이(MVD)에 대한 코딩 프레임워크 내에서 이전 섹션에 설명된 방법 및 알고리즘을 이용하는 경우, 새로운 코딩 루틴 또는 모드가 정의되어야 하고, 필요한 도구는 인코더 및 디코더에서 구현되어야 한다.When using the methods and algorithms described in the previous section within a coding framework for multiview video plus depth (MVD), such as the coding environment of FIGS. 1 to 3, a new coding routine or mode must be defined, and the necessary tools are Must be implemented in the encoder and decoder.

도 1의 인코더와 같은 하이브리드 비디오 코더 또는 코딩 브랜치 쌍 22v/d,1의 경우, 이러한 도구는 추정, 예측 또는 시그널링의 부분으로 분류될 수 있다. 추정은 도구가 원래의 입력 정보(예를 들어 압축되지 않은 픽처)에 의존할 때 단지 인코딩 프로세스의 일부인 도구를 요약한다. 이것과 대조적으로, 예측은 도구가 단지 전송 및/또는 재구성된 정보(예를 들어 디코딩된 픽처)에 의존할 때 인코딩 및 디코딩 프로세스의 일부인 도구를 요약한다. 시그널링은 비트스트림으로 인코더에서 디코더로 전송되는 정보를 코딩하기 위한 도구를 요약한다. 결과적으로, 이들은 동일한 구문 및 동일한 엔트로피 코딩 상태를 이용하는데 필요로 된다.In the case of hybrid video coders such as the encoder of Fig. 1 or coding branch pair 22 v/d,1 , these tools can be classified as part of estimation, prediction or signaling. Estimation summarizes a tool that is only part of the encoding process when the tool relies on the original input information (eg uncompressed picture). In contrast to this, prediction encapsulates a tool that is part of the encoding and decoding process when the tool only relies on transmitted and/or reconstructed information (eg a decoded picture). Signaling encapsulates the tools for coding the information transmitted from the encoder to the decoder in a bitstream. Consequently, they are required to use the same syntax and the same entropy coding state.

추정 도구의 경우, 블록의 왜곡 및 원래의 깊이 신호 사이의 차이를, 예를 들어 평균 제곱 에러(MSE) 또는 평균 절대차(MAD)로서 측정하거나, 블록의 왜곡된 깊이 신호로 인해 위치가 뒤바뀌게 되는 샘플에 의해 생성된 합성된 뷰의 차이를 합성된 뷰의 왜곡으로서 측정하는 종래의 비디오 코딩 접근 방식에서 공지된 바와 같이 왜곡은 도출될 수 있다.For estimation tools, the difference between the block's distortion and the original depth signal is measured, for example, as the mean squared error (MSE) or mean absolute difference (MAD), or the block's distorted depth signal causes it to be displaced. Distortion can be derived as is known in conventional video coding approaches that measure the difference in synthesized views produced by the samples being synthesized as the distortion of the synthesized views.

아래에 설명되는 실시예에 따른 불규칙한 블록 분할 코딩에 대한 개념은 분할 정보를 처리하기 위한 개념(섹션 3.1 및 3.2 참조) 및 CPV를 처리하기 위한 개념(섹션 3.3 참조)으로 나눌 수 있다.The concept of irregular block division coding according to an embodiment described below can be divided into a concept for processing partition information (see Sections 3.1 and 3.2) and a concept for processing CPV (see Section 3.3).

3.1 웨지렛 기반 인트라 코딩3.1 Wedgelet-based Intra Coding

이러한 섹션은 웨지렛 블록 분할에 기초하여 두 인트라 코딩 모드를 제공한다(섹션 1 참조). 두 모드는 델타 CPV 방법과 조합될 수 있다(섹션 3.3.2 참조).This section presents two intra coding modes based on Wedgelet block partitioning (see Section 1). Both modes can be combined with the delta CPV method (see Section 3.3.2).

3.1.1 웨지렛 블록 분할의 인트라 모델링3.1.1 Intra-modeling of wedgelet block division

이러한 모드의 기본 원리는 인코더에서 가장 일치하는 웨지렛 분할을 발견하고, 비트스트림으로 분할 정보를 명시적으로 전송하는 것이다. 디코더에서, 블록의 신호는 명시적으로 전송된 분할 정보를 이용하여 재구성된다. 결과적으로, 이러한 모드에 대한 주요 도구는 추정 및 시그널링의 일부이다.The basic principle of this mode is to find the best matching Wedgelet split in the encoder and send the split information explicitly in the bitstream. At the decoder, the block's signal is reconstructed using the explicitly transmitted segmentation information. As a result, the main tool for this mode is part of estimation and signaling.

이러한 모드에 대한 웨지렛 분할 정보는 예측되지 않고, 인코더에서 추정 프로세스 내에서 검색된다. 이를 위해, 섹션 1.4.2에서 설명된 바와 같이 최소 왜곡 웨지렛 검색은 참조로서 현재 블록의 원래의 깊이 신호를 이용하여 실행된다. 검색은 사용된 왜곡 방법에 대해 가장 일치하는 웨지렛 분할을 생성한다.Wedgelet split information for these modes is not predicted, but retrieved within the estimation process at the encoder. To this end, a minimum distortion Wedgelet search as described in section 1.4.2 is performed using the original depth signal of the current block as a reference. The search produces the best matching Wedgelet split for the distortion method used.

디코더에서 블록을 재구성하면, 웨지렛 분할 정보는 비트스트림으로 시그널링되어야 한다. 이것은 리스트 내에서 부합하는 패턴의 인덱스 또는 위치를 명시적으로 전송함으로써 실현된다(섹션 1.4.1 참조). 이러한 리스트 인덱스는 고정된 수의 빈(bin)으로 시그널링된다. 웨지렛 패턴 리스트에 N 요소를 제공하면, 사용된 패턴의 인덱스는 고정 길이 코드, 또는 가변 길이 코드, 또는 (콘텍스트 적응 이진 산술 코딩을 포함하는) 산술 코딩, 또는 어떤 다른 엔트로피 코딩 방법을 이용하여 코딩된다. 웨지렛 분할 정보를 시그널링하기 위한 전진된 방법은 각 분할 패턴의 확률에 기초하여 리스트를 분류하거나, 분할 정보의 대안적인 표현, 예를 들어 라인 시작 및 종료 위치 또는 라인 시작 위치 및 변화도(gradient)를 이용하는 단계를 포함할 수 있다.When reconstructing a block at the decoder, the Wedgelet partition information must be signaled in the bitstream. This is achieved by explicitly sending the index or position of the matching pattern in the list (see section 1.4.1). This list index is signaled in a fixed number of bins. Given N elements in a Wedgelet pattern list, the index of the pattern used is coded using a fixed-length code, or a variable-length code, or arithmetic coding (including context-adaptive binary arithmetic coding), or some other entropy coding method. do. An advanced method for signaling wedgelet splitting information either sorts the list based on the probability of each splitting pattern, or alternative representations of the splitting information, e.g. line start and end position or line start position and gradient It may include the step of using.

3.1.2 웨지렛 블록 분할의 인트라 예측3.1.2 Intra prediction of wedgelet block division

이러한 모드의 기본 원리는 동일한 픽처, 즉 인트라 예측에서 이전에 코딩된 블록에 이용 가능한 정보로부터 웨지렛 분할을 예측하는 것이다. 양호한 근사치를 위해, 예측된 분할은 예를 들어 라인 종료 위치를 변경함으로써 인코더에서 정제된다. 비트스트림에서의 라인 종료 위치에 대한 오프셋의 유일한 전송은 충분할 수 있고, 디코더에서 블록의 신호는 오프셋과 같이 전송된 리파인먼트 정보(refinement information)와 예측된 분할을 조합하는 것으로부터 생성된 분할 정보를 이용하여 재구성될 수 있다. 결과적으로, 이러한 모드에 대한 주요 도구는 예측, 추정, 및 시그널링의 일부이다.The basic principle of this mode is to predict the Wedgelet partition from the information available for the same picture, i.e. the previously coded block in intra prediction. For a good approximation, the predicted split is refined in the encoder, for example by changing the line end position. A single transmission of the offset for the end-of-line position in the bitstream may suffice, and the signal of the block at the decoder is the segmentation information generated from combining the predicted segmentation with the transmitted refinement information as the offset. can be reconstructed using Consequently, the main tools for this mode are parts of prediction, estimation, and signaling.

이러한 모드에 대한 웨지렛 분할 정보의 예측은 시작 위치 및 분리 라인의 변화도로 구성되는 웨지렛 표현과 함께 내부적으로 작동한다. 추가의 처리를 위해, 즉 라인 종료 위치 오프셋을 적응시키고, 블록의 신호를 재구성하기 위해, 예측 결과는 라인 시작 및 종료 위치로 이루어지는 표현으로 변환된다. 이러한 모드의 예측 프로세스는 현재 블록의 이웃한 블록의 왼쪽 및 위와 같이 이전에 코딩된 블록의 정보로부터 라인 시작 위치 및 변화도를 도출한다. 도 12에서는, 현재 블록(210) 및 위의 이웃한 블록(212)만이 도시된다. 일부 블록의 경우, 이웃한 블록 중 하나 또는 둘 다는 사용할 수 없다는 것을 주목한다. 이러한 경우에, 이러한 모드에 대한 처리는 스킵되거나 상실한 정보를 의미있는 디폴트 값으로 계속 설정된다.The prediction of Wedgelet splitting information for these modes works internally with a Wedgelet representation consisting of the starting position and the gradient of the separating line. For further processing, ie to adapt the line end position offset and to reconstruct the signal of the block, the prediction result is converted into a representation consisting of line start and end positions. This mode of prediction process derives line start positions and gradients from information in previously coded blocks, such as to the left of and above neighboring blocks of the current block. In Fig. 12, only the current block 210 and the above neighboring block 212 are shown. Note that for some blocks, one or both of the neighboring blocks are unavailable. In this case, processing for this mode continues to set the skipped or lost information to a meaningful default value.

도 12에 도시된 바와 같이, 2개의 주요 개념은 현재 제시된 실시예에 따른 웨지렛 분할 정보를 예측하기 위해 구별된다. 제 1 개념은 2개의 이웃한 참조 블록 중 하나가 도 12 왼쪽의 예에 도시된 타입 웨지렛인 경우를 커버하며, 여기서, 블록(212)은 예시적으로 웨지렛 분할된다. 제 2 개념은 2개의 이웃한 참조 블록이 타입 웨지렛이 아니고, 타입 인트라 방향일 때의 경우를 커버하며, 이는 도 12 오른쪽의 예에 도시된 디폴트 인트라 코딩 타입일 수 있으며, 여기서, 블록(212)은 예시적으로 인트라 코딩된다.As shown in Fig. 12, two main concepts are distinguished for predicting Wedgelet partitioning information according to the presently presented embodiment. The first concept covers the case where one of the two neighboring reference blocks is a Wedgelet of the type shown in the example on the left of Fig. 12, where block 212 is exemplarily Wedgelet partitioned. The second concept covers the case when the two neighboring reference blocks are not of type Wedgelet, but of type intra direction, which may be the default intra coding type shown in the example on the right of Fig. 12, where block 212 ) is illustratively intra-coded.

참조 블록(212)이 타입 웨지렛인 경우, 예측 프로세스는 다음과 같이 작동할 수 있다: 도 12 왼쪽에 따르면, 참조 웨지렛의 변화도 mref는 제 1 단계에서 시작 위치 Sref및 종료 위치 Eref로부터 도출된다. 이러한 개념의 원리는 참조 웨지렛(212)의 분리 라인(201')의 연속이 실제로 현재 블록(210)과 교차하는 경우에만 가능한 현재 블록(210) 내에서 참조 웨지렛, 즉 웨지렛 분리 라인(201')을 계속하는 것이다. 그래서, 다음 단계는 참조 웨지렛을 계속할 수 있는지를 체크하는 것이다. 도 12 왼쪽의 예는 가능하지만, 참조 웨지렛의 시작 및 종료 위치가 블록의 왼쪽 및 오른쪽 에지에 위치될 경우, 라인의 연속은 블록 아래에 교차하지 않는 시나리오를 보여준다. 체크가 긍정적인 경우에, 시작 위치 Sp 및 종료 위치 Ep는 최종 단계에서 예측된다. 변화도 mp가 정의에 의해 mref과 동일할 때, 위치는 단순히 블록 경계 샘플과 연속된 라인의 교차 지점으로 계산된다.If the reference block 212 is of type Wedgelet, the prediction process can operate as follows: According to Fig. 12 left, the gradient m ref of the reference wedgelet is the starting position S ref and the ending position E in the first step. derived from ref . The principle of this concept is that the reference wedgelet within the current block 210 is possible only if the continuation of the separation line 201′ of the reference wedgelet 212 actually intersects the current block 210, i.e. the wedgelet separation line ( 201'). So, the next step is to check if we can continue the reference wedgelet. The example on the left of Fig. 12 is possible, but shows a scenario in which the continuation of the line does not intersect under the block if the starting and ending positions of the reference wedgelet are located at the left and right edges of the block. In case the check is positive, the start position S p and the end position E p are predicted in the final step. When the gradient m p is equal to m ref by definition, the position is simply computed as the intersection of a block boundary sample and a continuous line.

참조 블록(212)이 타입 인트라 방향인 경우, 예측 프로세스는 다음과 같이 작동할 수 있다: 도 12 오른쪽에 따르면, 참조 블록(212)의 변화도 mref는 제 1 단계에서 인트라 예측 방향(214)으로부터 도출된다. 추상적 인덱스의 형태로 제공되는 인트라 예측 방향(214)만의 경우에, 매핑 또는 변환 함수는 변화도 mref를 달성하는데 필요할 수 있다. 타입 웨지렛의 참조 블록(212)으로부터 예측하기 위한 개념과는 달리, 타입 인트라 방향의 참조 블록(212)에 의해 어떠한 분리 라인 정보도 제공되지 않는다. 결과적으로, 시작 위치 Sp는 또한 디코더, 즉 왼쪽 및 위의 이웃한 블록의 인접한 샘플에서 이용 가능한 정보로부터 도출된다. 이들은 도 12 오른쪽에 해칭(hatching)되어 도시되어 있다. 해칭의 밀도는 이웃한 샘플의 값을 나타낸다. 도 12 오른쪽에 도시된 바와 같이, 이러한 인접한 샘플로부터 최대 기울기를 가진 이웃한 샘플의 쌍에 인접한 것은 시작 위치 Sp로서 선택된다. 여기서, 기울기는 2개의 연속적인 샘플의 값의 절대차로 이해된다. 웨지렛 분할에 대해, 라인 시작점 Sp은 두 영역(202a, 202b)을 블록(210)의 하나의 에지(216)에서 서로 다른 값으로 분리한다. 따라서, 이웃한 블록의 인접한 샘플 사이의 최대 기울기 지점이 Sp를 최상으로 예측한 것이다. 변화도에 관해, mp는 다시 정의에 의해 mref와 동일하고, Sp와 함께 종료 위치 Ep는 최종 단계로 계산될 수 있다.If the reference block 212 is of type intra direction, the prediction process can work as follows: According to Fig. 12 right side, the gradient m ref of the reference block 212 is the intra prediction direction 214 in the first step. is derived from In the case of only intra prediction directions 214 provided in the form of abstract indices, a mapping or transform function may be needed to achieve the gradient m ref . Contrary to the concept of predicting from the reference block 212 of the type wedgelet, no separation line information is provided by the reference block 212 of the type intra direction. Consequently, the starting position S p is also derived from the information available in the decoder, ie the adjacent samples of the left and above neighboring blocks. These are shown hatching on the right side of FIG. 12 . The density of hatching represents the values of neighboring samples. As shown on the right of Fig. 12, the adjacent pair of neighboring samples with the maximum slope from this adjacent sample is selected as the starting position S p . Here, the slope is understood as the absolute difference between the values of two successive samples. For Wedgelet division, the line start point S p separates the two regions 202a and 202b at different values at one edge 216 of block 210. Therefore, the point of maximum slope between adjacent samples of neighboring blocks is the best predictor of S p . Regarding the gradient, m p is again equal to m ref by definition, and the end position E p together with Sp can be calculated as a final step.

두 제시된 개념은 상호 보완적이다. 타입 웨지렛의 참조 블록으로부터의 예측이 더 잘 일치하는 분할 정보를 가지고 있지만, 항상 가능한 것은 아니며, 타입 인트라 방향의 참조 블록으로부터의 예측은 항상 가능하지만, 분할 정보는 적합하지 않다. 따라서, 두 개념을 하나의 예측 모드로 조합하는 것이 유리하다. 추가적인 시그널링 없이 이것을 실현하기 위해, 다음의 처리 계층이 정의될 수 있다: 위의 참조 블록이 타입 웨지렛인 경우에는 분할을 예측하려고 한다. 그렇지 않으면, 왼쪽 참조 블록이 타입 웨지렛인 경우에는 분할을 예측하려고 한다. 그렇지 않으면, 위 및 왼쪽 참조 정보로부터 분할을 예측한다. 후자의 경우, 위 및 왼쪽 방향 사이에 결정하기 위한 서로 다른 결정 기준은 공동으로 인접한 샘플의 방향 및 기울기를 평가하기 위해 단순히 위의 우선 순위에서 진보된 접근 방식에 이르기까지 가능하다. 위 및 왼쪽 참조 블록이 타입 웨지렛인 경우에 이러한 진보된 기준(criterions)이 또한 적용될 수 있다.The two presented concepts are complementary. Prediction from a reference block of type Wedgelet has better matching split information, but is not always possible, and prediction from a reference block of type intra direction is always possible, but the split information is not suitable. Therefore, it is advantageous to combine both concepts into one prediction mode. To realize this without further signaling, the following processing layer can be defined: If the above reference block is of type Wedgelet, try to predict the split. Otherwise, if the left reference block is of type Wedgelet, we try to predict the split. Otherwise, the split is predicted from the top and left reference information. In the latter case, different decision criteria for deciding between the up and left orientations are possible, ranging from simply priorities above to advanced approaches to jointly evaluate the orientation and tilt of adjacent samples. These advanced criteria can also be applied if the above and left reference blocks are of type Wedgelet.

웨지렛 분할을 정제하기 위한 라인 종료 위치 오프셋은 예측되지 않고, 인코더에서의 추정 프로세스 내에서 검색될 수 있다. 도 12에 도시된 바와 같이, 검색을 위해, 후보(candidate) 분할은 예측된 웨지렛 분할 및 라인 종료 위치 Eoff에 대한 오프셋 값으로부터 생성된다. 오프셋 값의 범위 이상으로 반복하고, 서로 다른 생성된 웨지렛 분할의 왜곡을 비교함으로써, 가장 잘 일치하는 웨지렛 분할의 오프셋 값은 사용된 왜곡 방법에 대하여 결정된다.End-of-line position offsets for refining the Wedgelet division are not predicted, but can be retrieved within the estimation process at the encoder. As shown in Fig. 12, for the search, a candidate partition is generated from the predicted Wedgelet partition and the offset value for the end-of-line position E off . By iterating over a range of offset values and comparing the distortions of different generated Wedgelet partitions, the offset value of the best matching Wedgelet partition is determined for the distortion method used.

디코더에서 블록을 재구성하기 위해, 라인 종료 위치 오프셋 값은 비트스트림에서 시그널링되어야 한다. 이는 3개의 구문 요소(syntax element), 즉 어떤 오프셋 Eoff이 존재하는지에 대한, 즉 이러한 오프셋이 0인지에 대한 제 1 시그널링 요소, 오프셋이 0이 아닌 경우에 오프셋의 부호, 즉 시계 방향 또는 시계 반대 방향 편차의 부호를 의미하는 제 2 요소, 및 절대 오프셋 값 마이너스 1: dmm_delta_end_flag, dmm_delta_end_sign_flag, dmm_delta_end_abs_minus1을 나타내는 제 3 요소를 이용하여 시그널링될 수 있다. 의사 코드에서, 이러한 구문 요소는 다음과 같은 것으로 포함될 수 있다.To reconstruct a block at the decoder, the end-of-line position offset value must be signaled in the bitstream. It consists of three syntax elements: the first signaling element whether any offset E off exists, i.e. whether this offset is zero, and the sign of the offset, if the offset is not zero, i.e. clockwise or clockwise. It can be signaled using a second element meaning the sign of the deviation in the opposite direction and a third element indicating absolute offset value minus 1: dmm_delta_end_flag, dmm_delta_end_sign_flag, dmm_delta_end_abs_minus1. In pseudocode, these syntactic elements could be included as:

dmm_delta_end_flag dmm_delta_end_flag ( dmm_delta_end_flag ) {이면 ( dmm_delta_end_flag ) if { dmm_delta_end_abs_minus1 dmm_delta_end_abs_minus1 dmm_delta_end_sign_flag} dmm_delta_end_sign_flag}

dmm_delta_end_abs_minus1 및 dmm_delta_end_sign_flag는 다음과 같이 DmmDeltaEnd, 즉 Eoff를 도출하는데 이용될 수 있다:DmmDeltaEnd [ x0 ] [ y0 ] = ( 1 - 2 * dmm_delta_end_sign_flag[ x0 ][ y0 ] ) * ( dmm_delta_end_abs_minus1 [ x0 ][ y0 ] + 1)가장 가능성이 높은 경우는 오프셋 값이 0이다는 것이다. 효율적인 시그널링의 경우, 오프셋이 0인지의 여부를 나타내는 플래그의 함수를 가진 제 1 빈이 전송된다. 오프셋이 0이 아닌 경우, k + 1의 추가적인 빈은 범위 ±2k에서 오프셋 값을 시크널링하기 위해 따르며, 여기서 제 1 빈은 부호를 나타내고, 나머지 k 빈은 오프셋의 절대 값을 나타낸다. 효율적인 코딩을 위해, k는 통상적으로 작은 수이고, 예를 들어, 블록 크기에 따라 적응적으로 설정될 수 있다. 라인 종료 위치 오프셋은 또한 고정 길이 코드, 가변 길이 코드, 또는 (콘텍스트 적응 이진 산술적 코딩을 포함하는) 산술적 코딩을 포함하는 어떤 다른 엔트로피 코딩 기술에 의해 전송될 수 있다.dmm_delta_end_abs_minus1 and dmm_delta_end_sign_flag can be used to derive DmmDeltaEnd, i.e. E off as follows: DmmDeltaEnd [ x0 ] [ y0 ] = ( 1 - 2 * dmm_delta_end_sign_flag[ x0 ] [ y0 ] ) * ( dmm_delta_end_abs_minus1 [ x0 ] [ y0 ] + 1) The most probable case is that the offset value is zero. For efficient signaling, a first bin as a function of a flag indicating whether the offset is zero is sent. If the offset is non-zero, k+1 additional bins follow to signal the offset value in the range ±2 k , where the first bin represents the sign and the remaining k bins represent the absolute value of the offset. For efficient coding, k is usually a small number and can be set adaptively according to the block size, for example. End-of-line position offsets may also be transmitted by some other entropy coding technique, including fixed-length codes, variable-length codes, or arithmetic coding (including context-adaptive binary arithmetic coding).

3.2 블록 분할 코딩에 대한 구성 요소 간 예측3.2 Intercomponent Prediction for Block Division Coding

이러한 섹션은 텍스처로부터 분할 정보를 예측하는 것에 기초하여 두 코딩 모드를 제공한다. 두 모드는 델타 CPV 방법(섹션 3.3.2 참조)과 조합될 수 있다. 텍스처 정보(즉, 종래의 비디오 픽처)는 관련된 깊이 맵 전에 전송된다는 것이 추정된다.This section presents two coding modes based on predicting segmentation information from texture. Both modes can be combined with the delta CPV method (see Section 3.3.2). It is assumed that the texture information (i.e. the conventional video picture) is transmitted before the associated depth map.

이러한 모드의 기본 원리는 웨지렛 또는 윤곽선 블록 분할로서 텍스처 참조 블록으로부터 분할 정보를 예측하는 것으로 설명될 수 있다. 이러한 타입의 예측은 구성 요소 간 예측으로 지칭될 수 있다. 시간적 또는 인터뷰 예측과는 달리, 텍스처 참조 픽처가 동시에 동일한 관점에서 장면을 보여줄 때 움직임 또는 변이 보상은 여기서 필요하지 않다. 분할 정보가 이러한 모드 동안에 전송되지 않을 때, 구성 요소 간 예측은 참조로서 재구성된 텍스처 픽처를 이용한다. 텍스처 코딩을 위해 이용된 색 공간에 따라, 텍스처 신호의 하나 이상의 구성 요소는 구성 요소 간 예측을 위해 고려된다. 비디오 코딩을 위해 통상적으로 YUV 색 공간이 사용된다. 여기서, 루마 구성 요소는 깊이 블록의 신호, 즉 객체 간의 에지를 예측하는 가장 중요한 정보를 포함한다. 따라서, 간단한 구성 요소 간 예측 접근 방식은 단지 루마 구성 요소의 정보를 이용하지만, 진보된 접근 방식은 추가적으로 공동 예측을 위해 또는 루마 예측 결과를 정제하기 위해 크로마 구성 요소를 이용한다.The basic principle of this mode can be described as predicting segmentation information from a texture reference block as a wedgelet or contour block segmentation. This type of prediction may be referred to as inter-component prediction. Unlike temporal or inter-view prediction, no motion or disparity compensation is needed here as the texture reference pictures simultaneously show the scene from the same perspective. When segmentation information is not transmitted during this mode, inter-component prediction uses the reconstructed texture picture as a reference. Depending on the color space used for texture coding, one or more components of the texture signal are considered for inter-component prediction. For video coding, the YUV color space is commonly used. Here, the luma component includes the signal of the depth block, that is, the most important information for predicting an edge between objects. Thus, the simple inter-component prediction approach only uses the information of the luma component, but the advanced approach additionally uses the chroma component for joint prediction or to refine the luma prediction result.

3.2.1 웨지렛 블록 분할의 텍스처 기반의 예측3.2.1 Texture-based prediction of wedgelet block division

이러한 모드의 기본 원리는 텍스처 참조 블록(216)으로부터 깊이 맵(213)에서 깊이 블록(210)의 웨지렛 분할을 예측하는 것이다. 이것은 도 13에 도시된 바와 같이 재구성된 텍스처 픽처에 대해 가장 잘 일치하는 웨지렛 분할을 검색함으로써 실현된다. 이를 위해, 섹션 1.4.2에서 설명된 바와 같이 최소 왜곡 웨지렛 탐색은 재구성된 텍스처 신호(215), 특히 참조로서 깊이 블록(210)과 같은 위치 및 크기를 가진 루마 블록(216)을 이용하여 실행된다. 생성된 웨지렛 분할 패턴(218)은 깊이 블록의 예측(220)에 사용된다. 도 13에서, 이것은 상부 박스에 의해 강조되고, 도시된 예의 경우, 예측된 웨지렛 분할(중간)은 깊이 블록(210)에 매우 잘 근접한다. 설명된 웨지렛 예측이 인코더 및 디코더에서 동일하게 수행될 수 있을 때, 분할 정보의 시그널링은 이러한 모드 동안에 필요로 되지 않는다.The basic principle of this mode is to predict the Wedgelet division of the depth block 210 in the depth map 213 from the texture reference block 216. This is realized by searching for the best matching Wedgelet partition on the reconstructed texture picture as shown in FIG. 13 . To this end, a minimum distortion wedgelet search as described in section 1.4.2 is performed using the reconstructed texture signal 215, specifically the luma block 216 having the same location and size as the depth block 210 as a reference. do. The generated wedgelet split pattern 218 is used for prediction 220 of the depth block. In Fig. 13, this is highlighted by the upper box, and for the example shown, the predicted Wedgelet split (middle) approximates the depth block 210 very well. Signaling of partitioning information is not needed during this mode, as the described Wedgelet prediction can be equally performed at the encoder and decoder.

3.2.2 윤곽선 블록 분할의 텍스처 기반의 예측3.2.2 Texture-based prediction of contour block segmentation

이러한 모드의 기본 원리는 텍스처 참조 블록으로부터 깊이 블록의 윤곽선 분할을 예측하는 것이다. 이것은 도 10에 도시된 바와 같이 재구성된 텍스처 픽

Figure 112022024779445-pat00026
픽처(215)에 대한 윤곽선 분할(218')을 도출함으로써 실현된다. 이를 위해, 윤곽선 근사치는 재구성된 텍스처 신호(215), 특히 참조로서 깊이 블록(210)과 같은 위치 및 크기를 가진 루마 블록(216)을 이용하여 실행된다. 이러한 윤곽선 예측이 인코더 및 디코더에서 동일하게 수행될 수 있을 때, 분할 정보의 시그널링은 이러한 모드 동안에 필요로 되지 않는다.The basic principle of this mode is to predict the contour segmentation of the depth block from the texture reference block. This is a reconstructed texture pick as shown in Figure 10.
Figure 112022024779445-pat00026
This is achieved by deriving the contour segmentation 218' for the picture 215. To this end, contour approximation is performed using the reconstructed texture signal 215, in particular the luma block 216 having the same location and size as the depth block 210 as a reference. Signaling of segmentation information is not needed during this mode as this contour prediction can be performed equally at the encoder and decoder.

윤곽선 분할 패턴은 참조 블록(216)의 평균값을 계산하여, 그것을 임계값으로 설정함으로써 생성될 수 있다. 참조 블록(216)에서의 샘플값이 임계 값의 아래인지 위인지에 따라, 부합하는 위치는 분할 패턴(218')에서 영역(P1 또는 P2)의 일부로서 표시된다. 생성된 윤곽선 분할 패턴(218')은 깊이 블록(210)의 예측(220)에 사용된다. 도 13에서, 이것은 하부 박스에 의해 강조되고, 도시된 예의 경우, 예측된 웨지렛 분할(중간)(218')은 깊이 블록(210)에 매우 잘 근접한다. 그러나, 임계값 접근 방식은 잠재적으로 깊이 신호에 잘 근접하지 않는 많은 격리된 작은 부분을 가진 마모된 패턴(frayed pattern)에 이르게 한다. 윤곽선 패턴의 일관성을 개선하기 위해, 편차 프로세스는 예를 들어 필터링 또는 세그먼테이션 접근 방식에 의해 확장될 수 있다.The contour segmentation pattern can be generated by calculating the average value of the reference block 216 and setting it as a threshold value. Depending on whether the sample value in reference block 216 is below or above the threshold, the matching location is indicated as part of region P 1 or P 2 in segmentation pattern 218'. The generated contour segmentation pattern 218' is used for prediction 220 of the depth block 210. In Fig. 13, this is highlighted by the lower box, and for the example shown, the predicted Wedgelet split (middle) 218' approximates the depth block 210 very well. However, the threshold approach potentially leads to a frayed pattern with many isolated small parts that do not closely approximate the depth signal. To improve the consistency of the contour pattern, the deviation process can be extended, for example by filtering or segmentation approaches.

윤곽선 분할 패턴, dmmWedgeletPattern[x, y]를 정의하고, x, y =0..nT-1을 가진 (x, y)가 분할될 블록 내의 샘플 위치를 나타내는 이진 분할 패턴은 다음과 같이 x, y =0..nT-1을 가진 동일 위치 텍스처 비디오 블록 videoLumaSamples[x,y]의 루마 샘플로부터 도출될 수 있다.A binary segmentation pattern that defines a contour segmentation pattern, dmmWedgeletPattern[x, y], and represents the location of the sample within the block to which (x, y) with x, y =0..nT-1 is segmented is: x, y = 0..nT-1 may be derived from the luma samples of the co-located texture video block videoLumaSamples[x,y].

임계 값 tH는 다음과 같이 도출된다:The threshold value tH is derived as follows:

tH = sumDC/(nT*nT), sumDC += videoLumaSamples[x, y], x, y = 0..nT-1 tH = sumDC/(nT*nT), sumDC += videoLumaSamples[x, y], x, y = 0..nT-1

패턴 값은 다음과 같이 설정된다:The pattern value is set as follows:

- videoLumaSamples[x, y]가 tH보다 클 경우, 다음과 같은 것이 적용된다:- If videoLumaSamples[x, y] is greater than tH, the following applies:

dmmWedgeletPattern[x, y] = 1 dmmWedgeletPattern[x, y] = 1

- 그렇지 않으면, 다음과 같은 것이 적용된다:- Otherwise, the following applies:

dmmWedgeletPattern[x, y] = 0 dmmWedgeletPattern[x, y] = 0

3.3 CPV 코딩3.3 CPV Coding

CPV 코딩에 대한 개념은 이러한 섹션에 제시되어 있다. 이들은 두 분할 타입, 즉 웨지렛 및 윤곽선이 정의에 의해 일정한 값을 가진 2개의 분할 영역을 가질 때 블록 분할 정보를 예측 또는 추정하기 위해 모두 4개의 모드에 동일하게 적용될 수 있다. 결과적으로, CPV 처리는 분할 타입 또는 코딩 모드 사이를 구별할 필요가 없지만, 오히려 분할 패턴이 현재 깊이 블록에 제공된다는 것을 추정한다.Concepts for CPV coding are presented in these sections. These can equally be applied to all four modes for predicting or estimating block partitioning information when both partitioning types, i.e., wedgelets and contours, have two partitions with constant values by definition. As a result, CPV processing does not need to differentiate between splitting types or coding modes, but rather assumes that a splitting pattern is provided for the current depth block.

3.3.1 예측 CPV3.3.1 Predicted CPV

CPV 예측에 대한 양호한 이해를 위해, 원래의 CPV, 예측된 CPV, 및 델타 CPV인 3가지 타입의 CPV가 구별된다. 이들 사이의 관계는 블록의 단면(도 14 왼쪽의 점선(230))에 대해 도 14 오른쪽에 개략적으로 도시되어 있다. 여기서, 라인(232)은 라인(230)을 따라 블록(200)의 원래의 신호를 나타낸다. 섹션 1.3 및 2.3의 설명에 따르면, 원래의 CPV(도 14 오른쪽의 라인(234 및 236)는 제각기 대응하는 영역(P1 및 P2)에 의해 커버되는 신호의 평균값으로 계산된다.For a good understanding of CPV prediction, three types of CPV are distinguished: original CPV, predicted CPV, and delta CPV. The relationship between them is shown schematically on the right side of FIG. 14 for a cross-section of the block (dotted line 230 on the left side of FIG. 14 ). Here, line 232 represents the original signal of block 200 along line 230 . According to the discussion of Sections 1.3 and 2.3, the original CPV (lines 234 and 236 on the right side of FIG. 14 ) is computed as the average value of the signals covered by the corresponding regions P 1 and P 2 , respectively.

원래의 CPV

Figure 112022024779445-pat00027
Figure 112022024779445-pat00028
는 주어진 블록 분할에 대한 원래의 신호의 최상의 근사치(도 14 왼쪽, 또는 라인(232))에 이르지만, 원래의 신호가 디코더에서 이용할 수 없을 때, 비트 스트림으로 값을 전송할 필요가 있다. 이것은 비트 레이트의 관점에서 상당히 비싸고, CPV에 대한 예측의 원리를 채용함으로써 회피될 수 있다. 원래의 CPV와는 대조적으로, 도 14 왼쪽에서 해칭된 샘플(203) 상에 예시된 바와 같이, 예측된 CPV는 또한 디코더, 즉 왼쪽 위의 이웃한 블록의 인접한 샘플에서 이용할 수 있는 정보로부터 도출된다. 여기서, 인접한 샘플은 회색으로 표시되고, 주어진 분할 패턴의 각 영역에 대한 예측된 CPV는 대응하는 영역(도 14 왼쪽의 라인(238 및 240))에 인접하는 이들 샘플의 평균값을 계산하여 생성된다. 왼쪽 또는 위의 이웃한 블록이 항상 이용 가능한 것은 아니다는 것을 주목한다. 이러한 경우에, 각각의 인접하는 샘플은 디폴트 값으로 설정될 수 있다.original CPV
Figure 112022024779445-pat00027
and
Figure 112022024779445-pat00028
arrives at the best approximation of the original signal for a given block partition (Fig. 14 left, or line 232), but when the original signal is not available at the decoder, it needs to transmit the value in the bit stream. This is quite expensive in terms of bit rate and can be avoided by employing the principle of prediction for CPV. In contrast to the original CPV, as illustrated on the hatched sample 203 on the left of FIG. 14 , the predicted CPV is also derived from information available in the decoder, i.e., adjacent samples of the upper left neighboring block. Here, adjacent samples are displayed in gray, and the predicted CPV for each region of a given split pattern is generated by calculating the average value of these samples adjacent to the corresponding region (lines 238 and 240 on the left side of Fig. 14). Note that the neighboring block to the left or above is not always available. In this case, each neighboring sample may be set to a default value.

도 14 오른쪽에서, 예측된 CPV

Figure 112022024779445-pat00029
Figure 112022024779445-pat00030
는 라인(238 및 240)으로 나타내고, 예시는 원래의 CPV 및 예측된 CPV가 상당히 서로 다를 수 있다는 것을 강조한다. 사실상, 원래의 값과 예측된 값 사이의 차이
Figure 112022024779445-pat00031
Figure 112022024779445-pat00032
는 현재 블록(200)의 원래의 신호(232)와 해칭된 샘플(203) 상에 표시된 재구성된 이웃한 블록의 경계 신호 사이의 유사성에 의존한다. 이러한 차이는 대응하는 영역의 델타 CPV로 정의된다. 이것은 델타 CPV
Figure 112022024779445-pat00033
Figure 112022024779445-pat00034
가 인코더에서 추정되고, 비트 스트림으로 전송되는 경우에 델타 CPV를 예측된 CPV에 추가함으로써 디코더에서 원래의 CPV를 재구성할 수 있다는 것을 의미한다. 원래의 값 대신에 델타를 전송하는 것만이 필요한 비트 레이트를 상당히 감소시킨다.On the right of Figure 14, the predicted CPV
Figure 112022024779445-pat00029
and
Figure 112022024779445-pat00030
is represented by lines 238 and 240, and the example highlights that the original CPV and the predicted CPV can differ significantly from each other. In effect, the difference between the original value and the predicted value
Figure 112022024779445-pat00031
and
Figure 112022024779445-pat00032
depends on the similarity between the original signal 232 of the current block 200 and the boundary signal of the reconstructed neighboring block displayed on the hatched sample 203. This difference is defined as the delta CPV of the corresponding area. This is Delta CPV
Figure 112022024779445-pat00033
and
Figure 112022024779445-pat00034
is estimated at the encoder and can reconstruct the original CPV at the decoder by adding the delta CPV to the predicted CPV when transmitted as a bit stream. Only sending the delta instead of the original value significantly reduces the bit rate needed.

예측된 일정한 분할 값 CPV는 dmmPredPartitionDC1 및 dmmPredPartitionDC2이라고 하고, 다음과 같이 이웃한 샘플 p[x, y]로부터 도출될 수 있다. 다음에서, dmmWedgeletPattern은 샘플(x,y)을 둘러싸는 현재 블록의 분할을 나타내고, 예시적으로 x, y = 0..nT-1이다. 즉, 상위 에지에 이웃한 샘플 위치는 (x, -1)에 위치되고, x = 0..nT-1, 왼쪽 에지에 이웃한 샘플 위치는 (-1, y)에 위치되고, y = 0..nT-1. 이미 재구성된 이웃한 샘플 값은 p[x, y]로 나타낸다. sumPredDC2, sumPredDC1, numSamplesPredDC2 및 numSamplesPredDC1은 처음에 0으로 설정된다:The predicted constant partition value CPVs are denoted by dmmPredPartitionDC1 and dmmPredPartitionDC2 and can be derived from neighboring samples p[x, y] as follows. In the following, dmmWedgeletPattern represents the division of the current block surrounding sample (x,y), exemplarily x, y = 0..nT-1. That is, the sample position adjacent to the upper edge is located at (x, -1), x = 0..nT-1, the sample position adjacent to the left edge is located at (-1, y), and y = 0 ..nT-1. The already reconstructed neighboring sample values are denoted by p[x, y]. sumPredDC2, sumPredDC1, numSamplesPredDC2 and numSamplesPredDC1 are initially set to 0:

x = 0..nT-1에 대해, 위의 이웃한 샘플은 다음과 같이 요약된다:For x = 0..nT-1, the above neighboring samples are summarized as:

- dmmWedgeletPattern [x, 0]이 1(예를 들어 분할 P1)과 같을 경우, 다음의 것이 적용된다:- If dmmWedgeletPattern [x, 0] is equal to 1 (eg division P 1 ), the following applies:

sumPredDC2 + = p [x, -1] 및 numSamplesPredDC2 + = 1sumPredDC2 += p[x, -1] and numSamplesPredDC2 += 1

- 그렇지 않으면(예를 들어 분할 P2), 다음의 것이 적용된다:- Otherwise (eg partition P 2 ), the following applies:

sumPredDC1 + = p [x, -1] 및 numSamplesPredDC1 + = 1sumPredDC1 += p[x, -1] and numSamplesPredDC1 += 1

y = 0..nT-1에 대해, 왼쪽 이웃한 샘플은 다음과 같이 요약된다:For y = 0..nT-1, the left neighboring samples are summarized as:

- dmmWedgeletPattern [0, y ]가 1과 같다면 ,다음의 것이 적용된다:- If dmmWedgeletPattern [0, y] is equal to 1, then the following applies:

sumPredDC2 + = p [-1, y ] 및 numSamplesPredDC2 + = 1sumPredDC2 += p[-1, y] and numSamplesPredDC2 += 1

- 그렇지 않으면, 다음의 것이 적용된다:- Otherwise, the following applies:

sumPredDC1 + = p [-1 , y ] 및 numSamplesPredDC1 + = 1sumPredDC1 += p [-1 , y ] and numSamplesPredDC1 += 1

예측된 일정한 분할 값은 다음과 같이 도출된다.The predicted constant split value is derived as follows.

- numSamplesPredDC1이 0인 경우, 다음의 것이 적용된다:- If numSamplesPredDC1 is equal to 0, the following applies:

dmmPredPartitionDC1 = 1 << ( BitDepthY - 1)dmmPredPartitionDC1 = 1 << ( BitDepth Y - 1)

- 그렇지 않으면, 다음의 것이 적용된다:- Otherwise, the following applies:

dmmPredPartitionDC1 = sumPredDC1 / numSamplesPredDC1dmmPredPartitionDC1 = sumPredDC1 / numSamplesPredDC1

- numSamplesPredDC2가 0과 같다면, 다음의 것이 적용된다:- If numSamplesPredDC2 is equal to 0, the following applies:

dmmPredPartitionDC2 = 1 << ( BitDepthY - 1)dmmPredPartitionDC2 = 1 << ( BitDepth Y - 1)

- 그렇지 않으면, 다음의 것이 적용된다:- Otherwise, the following applies:

dmmPredPartitionDC2 = sumPredDC2 / numSamplesPredDC2dmmPredPartitionDC2 = sumPredDC2 / numSamplesPredDC2

3.3.2 델타 CPV의 양자화 및 적응3.3.2 Quantization and Adaptation of Delta CPV

CPV 예측의 원리에 기초하여, 델타 CPV의 효율적인 처리를 위한 개념은 이러한 섹션에서 소개된다. 비트스트림으로 델타 CPV를 전송하는 것은 블록 분할 코딩을 위한 재구성된 신호의 왜곡을 감소시키기 위한 것이다. 그러나, 원래의 신호와 예측된 신호 사이의 차이가 또한 잔류(residuum)의 변환 코딩에 의해 커버될 때 델타 CPV 값을 시그널링하는 데 필요한 비트 레이트는 이러한 접근 방식의 이점을 제한한다. 따라서, 델타 CPV의 양자화는 다음과 같이 도입될 수 있다: 값은 인코더에서 추정 후에 선형적으로 양자화되고, 디코더에서 재구성 전에 역 양자화된다. 양자화된 델타 CPV를 전송하는 것은 비트 레이트가 감소되는 이점을 갖지만, 역 양자화된 값으로부터 재구성된 신호만은 최상의 가능한 근사치와 약간 다르다. 결과적으로, 이것은 양자화가 없는 경우에 비해 레이트 왜곡 비용을 낮게 한다. 선형 양자화의 스텝 크기에 대하여, 변환 코딩으로부터 잘 알려진 원리를 적용함으로써, 즉, 고정된 값이 아닌 QP의 함수로서 양자화 스텝 크기를 정의함으로써 성능은 더 개선될 수 있다. 효율적이고 강력한 것으로 되는

Figure 112022024779445-pat00035
을 가진
Figure 112022024779445-pat00036
로서 델타 CPV에 대한 양자화 스텝 크기를 설정한다.Based on the principles of CPV prediction, concepts for efficient processing of delta CPV are introduced in this section. Transmitting the delta CPV in the bitstream is to reduce distortion of the reconstructed signal for block divisional coding. However, the bit rate required to signal the delta CPV value limits the benefits of this approach when the difference between the original and predicted signals is also covered by transform coding of the residual. Thus, the quantization of the delta CPV can be introduced as follows: the values are linearly quantized after estimation at the encoder and inverse quantized before reconstruction at the decoder. Transmitting the quantized delta CPV has the advantage of reduced bit rate, but only the signal reconstructed from the inverse quantized value differs slightly from the best possible approximation. Consequently, this results in a lower rate distortion cost compared to the case without quantization. For the step size of linear quantization, performance can be further improved by applying well-known principles from transform coding, i.e., by defining the quantization step size as a function of QP rather than a fixed value. to be efficient and powerful
Figure 112022024779445-pat00035
with
Figure 112022024779445-pat00036
Set the quantization step size for the delta CPV as

분할된 블록의 두 영역의 비트스트림에서의 델타 CPV의 가능한 시그널링은 다음과 같이 이해될 수 있다:Possible signaling of the delta CPV in the bitstream of the two regions of the divided block can be understood as:

dmm_dc_1_abs[x0 + i][y0 + i] dmm_dc_1_abs[x0 + i][y0 + i] dmm_dc_1_sign_flag[x0 + i][y0 + i] dmm_dc_1_sign_flag[x0 + i][y0 + i] dmm_dc_2_abs[x0 + i][y0 + i] dmm_dc_2_abs[x0 + i][y0 + i] dmm_dc_2_sign_flag[x0 + i][y0 + i] dmm_dc_2_sign_flag[x0 + i][y0 + i]

어떤 블록에 대한 비트스트림에서의 전송은 몇몇 코딩 모드 구문 요소로부터 명시적으로 전송되거나 도출되는 구문 요소 DmmDeltaFlag에 의존하여 행해질 수 있다.dmm_dc_1_abs, dmm_dc_1_sign_flag, dmm_dc_2_abs, dmm_dc_2_sign_flag는 다음과 같이 DmmQuantOffsetDC1 및 DmmQuantOffsetDC2 값을 도출하는데 사용될 수 있다:DmmQuantOffsetDC1[ x0 ][ y0 ] = ( 1 - 2 *dmm_dc_1_sign_flag[ x0 ][ y0 ] )*dmm_dc_1_abs[ x0 ][ y0 ]Transmission in the bitstream for a block can be done in dependence on the syntax element DmmDeltaFlag, which is either explicitly transmitted or derived from some coding mode syntax element. can be used to: DmmQuantOffsetDC1[ x0 ][ y0 ] = ( 1 - 2 *dmm_dc_1_sign_flag[ x0 ][ y0 ] )*dmm_dc_1_abs[ x0 ][ y0 ]

DmmQuantOffsetDC2[ x0 ][ y0 ] = ( 1 - 2 *dmm_dc_2_sign_flag [ x0 ][ y0 ] )*dmm_dc_2_abs[ x0 ][ y0 ]DmmQuantOffsetDC2[ x0 ][ y0 ] = ( 1 - 2 *dmm_dc_2_sign_flag [ x0 ][ y0 ] )*dmm_dc_2_abs[ x0 ][ y0 ]

역 양자화된 오프셋 dmmOffsetDC1 및 dmmOffsetDC2는 다음과 같이 DmmQuantOffsetDC1 및 DmmQuantOffsetDC2로부터 도출될 수 있다.The inverse quantized offsets dmmOffsetDC1 and dmmOffsetDC2 may be derived from DmmQuantOffsetDC1 and DmmQuantOffsetDC2 as follows.

Figure 112022024779445-pat00037
Figure 112022024779445-pat00037

BitDepthY는 DmmQuantOffsetDC1 및 DmmQuantOffsetDC2가 인코더 및 디코더 내에서 내부적으로 표현되는 비트 깊이일 수 있으며, QP'는 예를 들어 현재 슬라이스의 코딩 예측 잔여의 변환 계수 레벨에 포함되는 상술한 양자화 파라미터 QP일 수 있다.BitDepth Y may be the bit depth at which DmmQuantOffsetDC1 and DmmQuantOffsetDC2 are internally expressed in the encoder and decoder, and QP' may be, for example, the above-mentioned quantization parameter QP included in the transform coefficient level of the coding prediction residual of the current slice.

그 후, 일정한 분할 값 CPV는 역양자화된 오프셋을 예측된 CPV에 추가함으로써 획득될 수 있다:Then, a constant split value CPV can be obtained by adding the inverse quantized offset to the predicted CPV:

제 1 분할의 경우: dmmPredPartitionDC1 + dmmOffsetDC1For the first partition: dmmPredPartitionDC1 + dmmOffsetDC1

제 2 분할의 경우: dmmPredPartitionDC2 + dmmOffsetDC2For the 2nd partition: dmmPredPartitionDC2 + dmmOffsetDC2

섹션 3의 시작 부분에서 이미 언급한 바와 같이, 추정 도구에 대한 왜곡은 2개의 서로 다른 방식으로 측정될 수 있다. 델타 CPV에 관하여, 이러한 왜곡 방법은 추정 프로세스에 상당히 영향을 미친다. 왜곡이 블록의 왜곡된 깊이 신호와 원래의 깊이 신호 사이의 차이로서 측정되는 경우에, 추정 프로세스는 상술한 바와 같이 단순히 델타 CPV를 계산하여 양자화함으로써 원래의 CPV의 가까운 근사치를 검색한다. 왜곡이 합성된 뷰에 대해 측정되는 경우에, 추정 프로세스는 델타 CPV를 합성된 뷰의 품질에 양호하게 적응시키기 위해 확장될 수 있다. 이것은 원래의 CPV의 최상의 근사치로 이어지는 이러한 델타 CPV가 반드시 최상의 합성된 뷰 품질로 이어지지 않는다는 사실에 기초한다. 최상의 합성된 뷰 품질로 이어지는 델타 CPV를 찾는 경우, 추정 프로세스는 2개의 분할을 위한 모든 가능한 델타 CPV 조합에 대해 반복하는 최소 왜곡 검색(섹션 1.4.2 참조)에 의해 확장된다. 효율적인 처리 및 시그널링을 위해, 테스트된 값의 범위는 제한될 수 있다. 검색은 합성된 뷰에서 최소 왜곡을 일으키는 델타 CPV를 조합시키고, 전송을 위해 이러한 값은 최종으로 양자화된다.As already mentioned at the beginning of Section 3, distortion for an estimation tool can be measured in two different ways. Regarding delta CPV, this distortion method significantly affects the estimation process. If distortion is measured as the difference between the block's distorted depth signal and the original depth signal, the estimation process simply calculates and quantizes the delta CPV as described above to find a close approximation of the original CPV. In cases where distortion is measured for a synthesized view, the estimation process can be extended to better adapt the delta CPV to the quality of the synthesized view. This is based on the fact that such a delta CPV leading to the best approximation of the original CPV does not necessarily lead to the best synthesized view quality. When finding the delta CPV that leads to the best synthesized view quality, the estimation process is extended by an iterative least distortion search (see section 1.4.2) for all possible delta CPV combinations for the two splits. For efficient processing and signaling, the range of tested values can be limited. The search combines the delta CPVs that cause the least distortion in the synthesized view, and these values are finally quantized for transmission.

델타 CPV 방법은 잠재적으로 (나머지) 잔류의 변환/양자화 및 전송을 스킵(skip)할 수 있다는 것을 주목한다. 제각기 원래의 깊이 신호 또는 최적의 깊이 신호의 근접한 근사치로 인해, 렌더링된(rendered) 뷰의 품질에 대해 평가될 경우에 잔류를 생략하는 임팩트(impact)는 제한된다.Note that the delta CPV method can potentially skip transform/quantization and transmission of (remaining) residuals. Due to the close approximation of the original or optimal depth signal, respectively, the impact of omitting residuals when evaluated against the quality of the rendered view is limited.

4. 모드의 코딩4. Mode Coding

4.1 모드 시그널링4.1 Mode signaling

인코딩 프로세스에서, 레이트-왜곡 최적화를 통해 블록 마다 하나의 모드가 선택되고, 모드 정보는 예를 들어 분할 및 CPV 정보에 앞서와 같이 비트스트림에서 시그널링된다. 섹션 3에 따르면, 다음과 같은 4개의 블록 분할 모드가 (예를 들어, 비불규칙한 분할 모드 외에) 정의될 수 있다:In the encoding process, one mode is selected per block through rate-distortion optimization, and the mode information is signaled in the bitstream as before the segmentation and CPV information, for example. According to Section 3, the following four block partitioning modes can be defined (e.g., in addition to non-irregular partitioning mode):

Figure 112022024779445-pat00038
Wedgelet_ModelIntra: 웨지렛 블록 분할의 인트라 모델링 (섹션 3.1.1 참조)
Figure 112022024779445-pat00038
Wedgelet_ModelIntra: Intra modeling of wedgelet block divisions (see section 3.1.1)

Figure 112022024779445-pat00039
Wedgelet_PredIntra: 웨지렛 블록 분할의 인트라 예측 (섹션 3.1.2 참조)
Figure 112022024779445-pat00039
Wedgelet_PredIntra: intra prediction of wedgelet block split (see section 3.1.2)

Figure 112022024779445-pat00040
Wedgelet_PredTexture: 웨지렛 블록 분할의 텍스처 기반의 예측 (섹션 3.2.1 참조)
Figure 112022024779445-pat00040
Wedgelet_PredTexture: Texture-based prediction of wedgelet block division (see section 3.2.1)

Figure 112022024779445-pat00041
Contour_PredTexture: 윤곽선 블록 분할의 텍스처 기반의 예측 (섹션 3.2.2 참조)
Figure 112022024779445-pat00041
Contour_PredTexture: Texture-based prediction of contour block segmentation (see section 3.2.2)

4개의 모드의 각각은 디코더를 시그널링하기 위한 8개의 서로 다른 mode_ID를 생성하는 델타 CPV 처리 방법을 갖거나 갖지 않고 적용될 수 있으며(섹션 3.3.2 참조), 어떤 타입의 처리는 블록의 예측 및 재구성에 적용되어야 한다.Each of the four modes can be applied with or without a delta CPV processing method that generates eight different mode_IDs for signaling the decoder (see section 3.3.2), some type of processing for prediction and reconstruction of blocks. should be applied

위에 소개된 블록 분할 모드가 도 1 내지 도 3의 것과 같은 기존의 코딩 프레임워크로의 블록 코딩 모드의 추가적 세트로서 구현되는 경우, 모드 정보에 앞선 추가적인 플래그는 비트 스트림으로 전송될 수 있고, 블록 분할 모드가 사용되는지의 여부를 시그널링할 수 있다. 이러한 플래그가 설정되지 않은 경우에, 보통의 블록 코딩 모드 시그널링이 따른다. 그렇지 않으면, 실제 블록 분할 모드를 할당하고, 델타 CPV가 또한 전송되는지의 여부를 할당하는 mode_ID는 시그널링된다. 비트스트림에서, mode_ID는 3개의 빈을 통해 표현된다.If the block partitioning modes introduced above are implemented as an additional set of block coding modes to existing coding frameworks such as those of FIGS. It can signal whether the mode is used or not. If this flag is not set, normal block coding mode signaling follows. Otherwise, the mode_ID that assigns the actual block partitioning mode and whether the delta CPV is also transmitted is signaled. In the bitstream, mode_ID is represented through 3 bins.

4.2 모드 사전 선택4.2 Mode pre-selection

모드 사전 선택 뒤의 아이디어는 현재 블록에 대해 선택되지 않을 가능성이 매우 높은 모드를 제외한 개념을 구현함으로써 블록 분할 코딩을 위한 처리 및 시그널링 노력을 줄이는 것이다.The idea behind mode preselection is to reduce the processing and signaling effort for block partitioned coding by implementing the concept of excluding modes that are highly unlikely to be selected for the current block.

제 1 모드 사전 선택의 개념은 가능성이 작은 블록 크기에 대해 매우 낮은 모드를 사용 가능하지 않게 한다. 이것은 대부분의 경우에 왜곡이 모드 정보를 시그널링하기 위해 필요한 레이트에 비해 높다는 것을 의미한다. 섹션 4.1에 정의된 4개의 모드 중에서, 이것은 Wedgelet_PredIntra 및 Contour_PredTexture에 적용된다. 통계적 분석에 기초하여, 이러한 2개의 모드는 블록 크기 4×4이하에 대해 사용 가능하지 않게 된다.The concept of first mode pre-selection makes very low-probability modes unavailable for small block sizes. This means that in most cases the distortion is high compared to the rate needed to signal the mode information. Of the four modes defined in section 4.1, this applies to Wedgelet_PredIntra and Contour_PredTexture. Based on statistical analysis, these two modes become unusable for block sizes 4x4 and smaller.

제 2 모드 사전 선택의 개념은 구성 요소 간 예측, 즉 Wedgelet_PredTexture 및 Contour_PredTexture에 기초하여 2개의 모드에 적용된다. 이러한 개념 뒤의 아이디어는 의미있는 블록 분할 패턴이 텍스처 참조 블록으로부터 도출될 수 있는 가능성이 매우 낮은 경우에 이러한 모드를 적절히 제외시키는 것이다. 이러한 블록은 중요한 에지 및 윤곽선 없이 비교적 평면인 것을 특징으로 한다. 이러한 블록을 식별하기 위해, 텍스처 참조 블록의 변동량(variance)이 분석된다. 두 언급된 모드를 불가능하게 하는 기준은 변동량이 어떤 임계값 이하인 것이다. 이러한 모드 사전 선택 방법은 다음과 같이 구현 된다: 변동량은 루마 샘플 및 참조 블록의 평균 값 사이의 평균 절대 에러(MAE)로서 측정된다(도 13의 216 참조). 고정된 값 대신에, 임계값은 양자화 파라미터(QP)의 함수로서 설정된다. MAE 값의 통계적 분석의 결과에 기초하여, QP가 높을 경우와 그 반대일 경우에 임계값은 이러한 2개의 모드가 더욱 많은 블록을 위해 제외된다는 사실을 가진

Figure 112022024779445-pat00042
로서 설정된다.The concept of second mode pre-selection is applied to two modes based on inter-component prediction, namely Wedgelet_PredTexture and Contour_PredTexture. The idea behind this concept is to appropriately exclude these modes in cases where the likelihood that a meaningful block division pattern can be derived from a texture reference block is very low. These blocks are characterized as being relatively planar without significant edges and contours. To identify these blocks, the variance of the texture reference block is analyzed. The criterion for disabling the two mentioned modes is that the amount of change is below a certain threshold. This mode pre-selection method is implemented as follows: The amount of variation is measured as the average absolute error (MAE) between the average value of the luma sample and the reference block (see 216 in FIG. 13). Instead of a fixed value, the threshold is set as a function of the quantization parameter (QP). Based on the results of the statistical analysis of the MAE values, the threshold value for high QP and vice versa is based on the fact that these two modes are excluded for more blocks.
Figure 112022024779445-pat00042
is set as

도 15는 2개의 텍스처 루마 블록(2501 및 2502)에 대한 상세 사항, 및 제각기 2521 및 2522에서의 오른쪽에 있는 절대 차이 대 평균값을 가진 이러한 모드 사전 선택 방법의 시각화를 도시한다. 블록(2501)은 매우 낮은 변동량에 의해 반영되어 구조를 거의 갖지 않은 매우 평면 공간적인 샘플 값의 외관(sample value appearance)을 갖는다. 의미있는 분할 정보가 이러한 블록(2501)으로부터 예측되지 않을 때, 모드 Wedgelet_PredTexture 및 Contour_PredTexture는 고려되지 않는다. 이와는 대조적으로, 블록(2502)은 상당한 에지 및 윤곽선으로부터 생성되는 높은 변동량을 갖는다. 따라서, 블록(2502)으로부터 도출되는 분할 정보가 부합하는 깊이 블록의 분할을 위한 양호한 예측기일 가능성이 있을 때 2개의 모드가 고려된다.15 shows a visualization of this mode preselection method with details for the two texture luma blocks 250 1 and 250 2 , and the absolute difference versus average value to the right at 252 1 and 252 2 , respectively. Block 250 1 has a very planar spatial sample value appearance with little structure as reflected by the very low amount of variance. When no meaningful segmentation information is predicted from this block 250 1 , the modes Wedgelet_PredTexture and Contour_PredTexture are not considered. In contrast, block 250 2 has a high amount of variance resulting from significant edges and contours. Thus, two modes are considered when the splitting information derived from block 250 2 is likely to be a good predictor for splitting of a matching depth block.

제한: 블록 크기
제한: 텍스처 참조 변동량
Limit: block size
Limit: Texture Reference Variation Amount
오프
오프
off
off

오프
On
off
오프
off
On

On
On

Figure 112022024779445-pat00043
Figure 112022024779445-pat00043
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x
x


x
x
x
x


x
x
x
x
x
x
x
x
x
x
x
x
x
x
Figure 112022024779445-pat00044
Figure 112022024779445-pat00044
8
3
8
3
4
2
4
2
4
2
4
2
2
1
2
One

테이블 1: 사전 선택 결정에 따른 모드.테이블 1은 사용 가능한 모드 상의 두 모드 사전 선택 개념의 효과를 요약한 것이다. 어떤 모드를 제외함으로써, 비트스트림에서 시그널링될 필요가 있는 mode_ID의 수는 감소된다. 테이블은 각 방법이 mode_ID를 시그널링하는 필요한 빈의 수를 1씩 감소시키고, 두 모드의 조합은 빈의 수를 2씩 감소시킬 때에 두 방법이 효율적인 방식으로 조합될 수 있다는 것을 보여준다.5. 일반화Table 1: Modes by preselection decision. Table 1 summarizes the effect of the two-mode preselection concept on the available modes. By excluding certain modes, the number of mode_IDs that need to be signaled in the bitstream is reduced. The table shows that the two methods can be combined in an efficient manner when each method reduces the number of required bins signaling mode_ID by 1, and the combination of the two modes reduces the number of bins by 2. generalization

다수의 가능한 불규칙한 분할 모드, 한편으로 이중 세그먼테이션 결정으로의 개념적 세분(3.1 및 3.2 참조), 다른 한편으로 생성된 두 분할에 대해 코딩하는 코딩 파라미터(3.3 참조) 뿐만 아니라 코딩 프레임워크에서의 가능한 채용 및 이러한 모드가 추가적으로 제공될 수 있는 가능한 코딩 환경을 설명한 후, 각각의 디코더 및 인코더에 대해 생성된 실시예는 부분적으로 더욱 일반적인 관점에서 설명되어야 한다. 특히, 다음의 섹션은 위에 설명된 특정 유리한 상세 사항을 강조하고, 이러한 상세 사항이 위에서 설명된 것보다 더 일반적인 의미에서 디코더 및 인코더 내에 이용될 수 있는 방법을 설명한다. 특히, 아래에 설명되는 바와 같이, 위의 모드에 이용된 유익한 양태의 일부는 개별적으로 이용될 수 있다.A number of possible irregular partitioning modes, on the one hand the conceptual subdivision into double segmentation decisions (see 3.1 and 3.2), on the other hand the coding parameters for coding for the two generated partitions (see 3.3) as well as possible adoption in the coding framework and After describing possible coding environments in which these modes may additionally be provided, the generated embodiments for each decoder and encoder should be partially described in a more general view. In particular, the following sections highlight certain advantageous details described above and explain how these details can be used in decoders and encoders in a more general sense than described above. In particular, as described below, some of the beneficial aspects used in the above modes may be used individually.

5.1 블록 경계에 걸친 웨지렛 분리 라인 연속5.1 Wedgelet Separation Line Continuation Across Block Boundaries

위의 논의로부터 명백해지듯이, 웨지렛 분할의 사용은 한편으로 분할을 시그널링하기 위한 시그널링 오버헤드와 다른 한편으로 불규칙한 분할에 의해 달성 가능한 다양성의 양(amount of variety) 사이에서 가능한 절충을 형성한다. 그럼에도 불구하고, 상당량의 보조 정보 데이터는 분할 정보, 즉 예를 들어 섹션 3.1.1에 대해 위에서 설명된 개념에 따르는 것과 같이 예를 들어 웨지렛 분리 라인의 위치의 인덱싱을 이용함으로써와 같은 웨지렛 분리 라인의 위치를 명시적으로 전송하기 위해 필요하다.As is evident from the discussion above, the use of Wedgelet partitioning forms a possible compromise between the signaling overhead for signaling the partitioning on the one hand and the amount of variety achievable by irregular partitioning on the other hand. Nonetheless, a significant amount of ancillary information data can be obtained by dividing information, i.e., by using the indexing of the position of the wedgelet separation line, for example according to the concept described above for section 3.1.1. This is necessary to explicitly transmit the position of the line.

따라서, 블록 경계에 걸친 웨지렛 분리 라인 연속은 방금 설명된 문제를 해결하는 하나의 가능한 방법을 형성한다. 섹션 3.1.2에서의 위의 설명은 이러한 문제의 솔루션을 이용하기 위한 특정 예를 설명하였다. 그러나, 더욱 일반적으로, 블록 경계에 걸친 웨지렛 분리 라인 연속의 아이디어를 이용할 시에, 디코더는, 본 발명의 실시예에 따라, 도 16에 대해 아래에 설명되는 바와 같이 구성될 수 있다. 그럼에도 불구하고, 섹션 3.1.2 및 3 내지 4 중에서 다른 섹션에 설명된 모든 상세 사항은 개별적으로 아래에 제시된 설명과 조합될 수 있는 가능한 실현 상세 사항으로서 이해되어야 한다.Thus, Wedgelet separation line continuation across block boundaries forms one possible way to solve the problem just described. The above description in Section 3.1.2 described a specific example for using a solution to this problem. More generally, however, when using the idea of a wedgelet-separating line continuation across block boundaries, the decoder may be configured as described below with respect to FIG. 16, in accordance with an embodiment of the present invention. Nevertheless, all details set forth in Sections 3.1.2 and any other of Sections 3 to 4 should be understood as possible implementation details that may be individually combined with the description set forth below.

도 16의 디코더는 일반적으로 참조 부호(300)로 표시되고, 데이터 스트림(304)으로부터 샘플 어레이(302)를 재구성하도록 구성된다. 디코더는 블록 기반 디코딩에 의해 재구성을 수행하도록 구성된다. 예를 들면, 샘플 어레이(302)는 샘플 어레이의 시퀀스의 부분일 수 있고, 디코더(300)는 각 블록(304)에 대해 서로 다른 코딩 모드를 지원하는 블록 기반의 하이브리드 디코더로서 구현될 수 있다. 샘플 어레이는 예를 들어 텍스처 또는 깊이 맵과 같은 어떤 공간적 샘플링된 정보일 수 있다. 예를 들면, 도 16의 디코더(300)는 샘플 어레이(302)를 나타내는 텍스처/비디오 및 깊이/변이 맵을 포함하는 하나의 뷰를 재구성하기 위해 구현될 수 있다. 디코더(300)는 디코딩 브랜치(106d,1 플러스 106v,1)의 쌍으로 구현될 수 있거나, 디코딩 브랜치(106d,1)에 따라 개별적으로 구현될 수 있다. 즉, 디코더(300)는 예측 잔여의 잔여 코딩이 있고 없고 인트라 예측, 시간적(움직임 보상) 예측 및/또는 인터뷰(변이 보상) 예측과 같은 코딩 모드를 이용하여 샘플 어레이(302)를 재구성하도록 구성될 수 있다. 코딩 모드는 예를 들어 또한 명시적 웨지렛 코딩 모드를 포함할 수 있으며, 이에 따라 각각의 블록에 대해 웨지렛 분리 라인의 위치가 섹션 3.1.1에서 설명된 모드와 같이 데이터 스트림(304) 내에 명시적으로 전송된다. The decoder of FIG. 16 is indicated generally by reference numeral 300 and is configured to reconstruct a sample array 302 from a data stream 304 . The decoder is configured to perform reconstruction by block-based decoding. For example, the sample array 302 can be part of a sequence of sample arrays, and the decoder 300 can be implemented as a block-based hybrid decoder supporting a different coding mode for each block 304. A sample array can be any spatially sampled information, for example a texture or depth map. For example, the decoder 300 of FIG. 16 can be implemented to reconstruct a view comprising a texture/video representing the sample array 302 and a depth/disparity map. The decoder 300 may be implemented as a pair of decoding branches 106 d,1 plus 106 v,1 , or may be implemented separately according to the decoding branches 106 d,1 . That is, the decoder 300 may be configured to reconstruct the sample array 302 using coding modes such as intra prediction, temporal (motion compensated) prediction, and/or interview (variation compensated) prediction, with or without residual coding of prediction residuals. can Coding modes may also include, for example, explicit Wedgelet coding modes, whereby for each block the location of the Wedgelet separation line is specified within the data stream 304, such as the mode described in Section 3.1.1. is transmitted negatively.

어떤 경우에, 이러한 디코더(300)는 미리 정해진 코딩 모드 옵션이 데이터 스트림(304) 내에서 시그널링되는 블록과 같은 현재 블록(210)에 대해 수행하도록 구성되고, 단계는 이제 설명된다. 이러한 단계에 관련된 기능은 인트라 예측 모듈(36) 또는 인트라 예측 모듈 및 교환 모듈(52) 내에 통합될 수 있다.In any case, this decoder 300 is configured to perform a predetermined coding mode option on a current block 210, such as the block signaled within the data stream 304, steps are now described. Functionality related to these steps may be incorporated within the intra prediction module 36 or the intra prediction module and exchange module 52 .

각각의 모드의 블록에 대해 디코더(300)에 의해 수행되는 단계는 웨지렛 분리 라인 위치 예측 단계(306) 후에 위치 리파인먼트(refinement) 단계(308) 및 디코딩 단계(310)가 따른다. 특히, 도 16의 디코더(16)는 예측 위치(312)에서의 웨지렛 분리 라인이 현재 블록(210)으로의 이웃한 블록(212)의 웨지렛 분리 라인(201')의 확장 또는 연속을 형성하도록 블록(210)의 이웃한 블록(212)의 웨지렛 분리 라인(201')에 따라 샘플 어레이(302)의 블록(210) 내의 웨지렛 분리 라인의 위치(312)를 단계(306)에서 예측하도록 구성된다. 다시 말하면, 디코더(300)는 데이터 스트림(304)으로부터 블록(212)에 대한 각각의 명시적인 시그널링, 또는 샘플 어레이(302)가 속하는 텍스처 샘플 어레이 내의 에지 검출 등과 같은 일부 다른 코딩 옵션에 의해 이웃한 블록(212)의 웨지렛 분리 라인(201')의 위치를 도출할 수 있다. 다른 가능성은 상술되었고, 아래에서 추가로 설명될 것이다.The steps performed by the decoder (300) for each mode of block are the wedgelet separation line position prediction step (306) followed by a position refinement step (308) and a decoding step (310). In particular, the decoder 16 of FIG. 16 allows the wedgelet separation line at the predicted position 312 to form an extension or continuation of the wedgelet separation line 201' of the neighboring block 212 into the current block 210. Predict in step 306 the position 312 of the wedgelet separation line in block 210 of sample array 302 according to the wedgelet separation line 201' of the neighboring block 212 of block 210 to is configured to In other words, the decoder 300 may perform each explicit signaling for a block 212 from the data stream 304, or by some other coding option, such as detecting an edge within the texture sample array to which the sample array 302 belongs. The location of the wedgelet separation line 201' of block 212 can be derived. Other possibilities have been described above and will be further explained below.

상술한 바와 같이, 위치(312)가 306에서 예측되는 블록(210)의 웨지렛 분리 라인은 섹션 3.1.2에서 상술한 설명의 경우와 같이 직선일 수 있다. 그러나, 대안적으로, 라인은 예를 들어 샘플 위치 홉(hop)의 시퀀스, 즉 분리 라인에 속하는 라인 내에 다음 픽셀을 정의하는 각각의 심볼의 시퀀스를 이용하여 더욱 일반적으로 정의될 수 있다. 라인은 또한 라인(201')으로부터 예측될 수 있거나 데이터 스트림(304)의 일부 다른 이전에 처리된 부분으로부터 도출될 수 있는 분석적으로 결정된 미리 정해진 곡률을 가질 수 있다.As noted above, the wedgelet separation line of block 210 where position 312 is predicted at 306 may be a straight line, as in the case described above in Section 3.1.2. Alternatively, however, a line may be defined more generally, for example using a sequence of sample location hops, i.e., a sequence of symbols each of which defines the next pixel within the line belonging to a separate line. The line may also have an analytically determined predetermined curvature that may be predicted from line 201' or may be derived from some other previously processed portion of data stream 304.

특히, 예측(306)은 나중에 블록(210)의 웨지렛 분리 라인이 일반적인 확장 방향에 대하여 미리 결정될 뿐만 아니라 웨지렛 분리 라인의 일반적인 확장 방향에 측면인 위치에 대해 결정된다. 곡선의 경우에, 예를 들어 다항식 함수를 이용하는 곡선 피팅(curve fitting)은 블록(212)의 분리 라인을 추론하여, 제각기 블록(210)의 분리 라인을 찾는데 이용될 수 있다. 직선의 경우, 웨지렛 분리 라인에 측면인 방향에서의 기울기 및 위치가 결정된다.In particular, prediction 306 is later determined for locations where the wedgelet separation line of block 210 is not only predetermined with respect to the general direction of extension, but also laterally to the general direction of extension of the wedgelet separation line. In the case of curves, curve fitting, for example using a polynomial function, can be used to infer the separation line of block 212 and find the separation line of block 210 respectively. In the case of a straight line, the slope and position in the direction lateral to the wedgelet separation line are determined.

예측(306)에 대해, 이웃한 부분 및 확장 부분은 반드시 공간적 측면에서 정의될 필요가 없다는 것이 또한 언급되어야 한다. 오히려, 블록(210 및 212)은 또한 시간적으로 인접할 수 있다. 예를 들면, 블록(212)은 시간적으로 샘플 어레이(302)에 이웃한 샘플 어레이 시퀀스의 샘플 어레이의 동일 위치의 블록일 수 있다. 그 경우에, 블록(210)으로의 웨지렛 분리 라인(201)의 확장은 "시간적 연속"이어야 한다. It should also be mentioned that for the prediction 306, the neighboring part and the extended part need not necessarily be defined in terms of space. Rather, blocks 210 and 212 may also be adjacent in time. For example, block 212 may be a co-located block of a sample array of a sequence of sample arrays temporally adjacent to sample array 302 . In that case, the extension of wedgelet separation line 201 to block 210 must be "temporal continuous".

예측(306)이 수행될 수 있다는 명시적 가능성은 섹션 3.1.2에서 상술되었고, 이의 설명은 본 명세서에서 언급된다. 위치 리파인먼트(308)는 예측된 위치(312)를 정제하기 위한 것이다. 즉, 디코더(300)는, 위치 리파인먼트(308)에서, 데이터 스트림(304) 내에서 시그널링된 리파인먼트 정보를 이용하여 블록(210)의 웨지렛 분리 라인(301)의 예측된 위치(312)를 정제하도록 구성된다. 이에 의해, 정제된 웨지렛 분리 라인(201)은 블록(210)을 제 1 및 제 2 웨지렛 분할(202a 및 202b)로 나눈다. The explicit possibility that prediction 306 can be performed is detailed in Section 3.1.2, the description of which is referred to herein. Position refinement 308 is to refine the predicted position 312 . That is, the decoder 300, in the position refinement 308, uses the refinement information signaled within the data stream 304 to determine the predicted position 312 of the wedgelet separation line 301 of block 210. It is configured to purify. Thereby, refined wedgelet separation line 201 divides block 210 into first and second wedgelet divisions 202a and 202b.

상술한 바와 같이, 디코더(300)는 예측된 위치(312)에서의 웨지렛 분리 라인(201)이 이웃한 블록(212)의 웨지렛 분리 라인(201')의 공간적 동일 직선상의 확장을 형성하도록 구성될 수 있으며, 리파인먼트는 이웃한 블록(212)에 인접하는 미리 정해진 블록(210)의 웨지렛 분리 라인의 시작 위치(314)가 리파인먼트 정보와 무관하게 예측된 위치(312)에 대해 유지되도록 제한될 수 있다. 즉, 직선 웨지렛 분리 라인의 경우에, 이의 기울기만이 정제될 수 있지만, 블록(210 및 212)을 분리하는 블록(210)의 에지(316)에서의 웨지렛 분리 라인(201)의 시작점은 변화되지 않는다. 예를 들면, 웨지렛 분리 라인(201)의 대향 단부(318)의 오프셋, 즉 웨지렛 분리 라인(201)의 종료 위치의 오프셋은 예측된 웨지렛 분리 라인의 위치(312)에 따라 종료 위치(320)로부터의 블록(210)의 주변을 따라 웨지렛 분리 라인(201)의 대향 단부(318)의 오프셋, 즉 웨지렛 분리 라인(201)의 종료 위치의 오프셋은 섹션 3.1.2에 대해 상술한 바와 같이 데이터 스트림(304) 내에서 시그널링될 수 있다.As described above, the decoder 300 causes the wedgelet separation line 201 at the predicted location 312 to form a spatially collinear extension of the wedgelet separation line 201' of the neighboring block 212. can be configured, and the refinement maintains the start position 314 of the wedgelet separation line of the predetermined block 210 adjacent to the neighboring block 212 relative to the predicted position 312 regardless of the refinement information. can be limited as much as possible. That is, in the case of a straight wedgelet separation line, only its slope can be refined, but the starting point of the wedgelet separation line 201 at the edge 316 of block 210 separating blocks 210 and 212 is It doesn't change. For example, the offset of the opposite end 318 of the wedgelet separation line 201, i.e. the offset of the end position of the wedgelet separation line 201, depends on the location 312 of the predicted wedgelet separation line, the end position ( The offset of the opposite end 318 of wedgelet separation line 201 along the perimeter of block 210 from 320, i. can be signaled within the data stream 304 as

섹션 3.1.2에서, 오프셋은 Eoff로 나타내었다. 이러한 섹션에서 설명된 바와 같이, 디코더(300)는 엔트로피 디코딩을 이용하여 데이터 스트림으로부터 리파인먼트 정보를 추출하도록 구성될 수 있으며, 여기서 주변 방향을 따라 샘플 위치 피치의 단위로 측정되는 블록(210)의 주변을 따른 직접 확장 샘플 위치(320)와의 서로 다른 가능한 오프셋이 이와 관련되고 큰 오프셋에서 작은 오프셋으로 단조롭게 증가하는 확률 추정치를 가져, 작은 오프셋이 이와 관련되고 큰 오프셋보다 높은 확률을 갖도록 한다. 예를 들면, VLC 코드워드 길이는 단조롭게 감소할 수 있다.In Section 3.1.2, the offset is denoted as E off . As described in this section, the decoder 300 can be configured to extract refinement information from the data stream using entropy decoding, where the number of blocks 210 measured in units of sample position pitch along the periphery direction. The different possible offsets from the direct extension sample position 320 along the periphery have associated with it a probability estimate that increases monotonically from large to small offsets, such that small offsets have a higher probability than large offsets associated with it. For example, the VLC codeword length may decrease monotonically.

또한, 상술한 바와 같이, 3개의 구문 요소, 어떤 오프셋 Eoff이 존재하는지, 즉 이러한 오프셋이 0인지에 대한 제 1 시그널링, 오프셋이 0이 아닐 경우에 오프셋의 부호, 즉 시계 방향 또는 시계 반대 방향 편차의 부호를 의미하는 제 2 시그널링, 및 절대 오프셋 값 마이너스 1을 나타내는 제 3 시그널링: dmm_delta_end_flag, dmm_delta_end_sign_flag, dmm_delta_end_abs_minus1은 Eoff를 전송하는데 이용될 수 있다. 의사 코드에서, 이러한 구문 요소는 다음의 것으로 포함될 수 있다.Also, as described above, three syntax elements, first signaling whether any offset E off exists, i.e. whether this offset is zero, and if the offset is not zero, the sign of the offset, i.e. clockwise or counterclockwise. The second signaling meaning the sign of the deviation, and the third signaling indicating the absolute offset value minus 1: dmm_delta_end_flag, dmm_delta_end_sign_flag, dmm_delta_end_abs_minus1 can be used to transmit E off . In pseudocode, these syntactic elements can be included as:

dmm_delta_end_flag dmm_delta_end_flag if( dmm_delta_end_flag ) { if( dmm_delta_end_flag ) { dmm_delta_end_abs_minus1 dmm_delta_end_abs_minus1 dmm_delta_end_sign_flag} dmm_delta_end_sign_flag}

dmm_delta_end_abs_minus1 및 dmm_delta_end_sign_flag는 다음과 같이 DmmDeltaEnd, 즉, Eoff를 도출하는데 이용될 수 있다:DmmDeltaEnd[ x0 ][ y0 ] = ( 1 - 2 * dmm_delta_end_sign_flag[ x0 ][ y0 ] ) * ( dmm_delta_end_abs_minus1[ x0 ][ y0 ] + 1)그 후, 디코더(300)는, 디코딩(310)에서, 제 1 및 제 2 웨지렛 분할(202a 및 202b)의 단위로 미리 정해진 블록(210)을 디코딩하도록 구성된다. 섹션 3 및 4에서, 특히 섹션 4에서 위에 앞당겨진 설명에서, 디코딩(310)은 제 1 일정한 분할 값

Figure 112022024779445-pat00045
을 제 1 웨지렛 분할(202a) 내의 샘플 어레이 위치의 샘플에 할당하고, 제 2 일정한 분할 값
Figure 112022024779445-pat00046
을 제 2 웨지렛 분할(202b) 내의 샘플 어레이 위치의 샘플에 할당함으로써 현재 블록(210)의 예측을 포함한다. 디코딩 절차(310)의 구현의 이점은 보조 정보의 량이 낮게 유지될 수 있다는 것이다. 특히, 이러한 가능한 구현은 특히 깊이 맵의 경우와 같이 급격한 에지를 가진 비교적 평평한 값 플래토(value plateau)로 구성되는 상술한 특성을 갖는 샘플 어레이에 의해 반송되는 정보의 종류의 경우에 특히 유리하다. 그러나, 심지어 디코더는 개별적으로 다른 코딩 파라미터를 웨지렛 분할(202a 및 202b)에 할당하는 것이 가능하다. 예를 들면, 움직임 및/또는 변이 보상된 예측은 디코딩(310)에서 분할(202a 및 202b)에 개별적으로 적용되어, 개별 벡터와 같이 분할(202a 및 202b)에 대해 개별적으로 각각의 움직임 및/또는 변이 파라미터를 획득할 수 있다. 대안적으로, 분할(202a 및 202b)은 예컨대 각각의 인트라 코딩 방향을 개별적으로 동일한 방향에 적용함으로써 디코딩(306)에서 개별적으로 인트라 코딩될 수 있다.dmm_delta_end_abs_minus1 and dmm_delta_end_sign_flag can be used to derive DmmDeltaEnd, i.e., E off as follows: DmmDeltaEnd[x0][y0] = ( 1 - 2 * dmm_delta_end_sign_flag[x0][y0]) * ( dmm_delta_end_abs_minus1[x0][y0 ] + 1) Then, in decoding 310, the decoder 300 is configured to decode the predetermined block 210 in units of first and second Wedgelet partitions 202a and 202b. In Sections 3 and 4, and particularly in the preceding description in Section 4 above, decoding 310 performs a first constant division value
Figure 112022024779445-pat00045
is assigned to the sample at the sample array position in the first Wedgelet division 202a, and the second constant division value
Figure 112022024779445-pat00046
includes the prediction of the current block 210 by assigning to the sample of the sample array position in the second Wedgelet partition 202b. An advantage of implementing the decoding procedure 310 is that the amount of auxiliary information can be kept low. In particular, this possible implementation is particularly advantageous for the kind of information carried by the sample array having the above-described characteristics consisting of a relatively flat value plateau with sharp edges, such as in the case of a depth map. However, it is even possible for the decoder to assign different coding parameters to Wedgelet partitions 202a and 202b individually. For example, the motion and/or disparity compensated prediction is applied separately to partitions 202a and 202b in decoding 310, so that each motion and/or disparity compensated prediction separately for partitions 202a and 202b as separate vectors. Variation parameters can be obtained. Alternatively, partitions 202a and 202b may be individually intra-coded in decoding 306, for example by applying each intra-coding direction separately to the same direction.

도 16에 따르면, 다음의 정보: 1) 단계(306-310)를 트리거하는 각각의 미리 정해진 상태를 가진 코딩 옵션 식별자, 2) 종료 위치 오프셋과 같은 리파인먼트 정보, 3) 선택적으로, 이웃한 샘플/블록으로부터 공간적 또는 시간적으로 예측되도록 허용될 수 있기 때문에 선택적으로 하나 또는 두 분할(202a, 202b)에 대해 CPV 또는 CPV 잔여와 같은 코딩 파라미터, 4) 선택적으로, DeltaCPV와 같은 코딩 파라미터 잔여는 블록(210)에 대해 데이터 스트림에 제공될 수 있다. According to Figure 16, the following information: 1) a coding option identifier with each predefined condition triggering steps 306-310, 2) refinement information such as an end position offset, and 3) optionally, a neighboring sample. /Coding parameters such as CPV or CPV residuals, optionally for one or both partitions 202a, 202b, 4) Optionally, coding parameter residuals such as DeltaCPV block ( 210) can be provided in the data stream.

더욱이, 도 16의 디코더(300)는 절차(306-310)에 의해 실현되는 코딩 모드가 단지 데이터 스트림(304) 내의 각각의 코딩 옵션 식별자의 각각의 공통의 미리 결정된 값에 의해 트리거되는 두 코딩 모드 옵션 중의 디폴트 코딩 모드 옵션이도록 구성될 수 있다. 예를 들면, 도 16의 디코더(300)는 데이터 스트림(304)으로부터 코딩 옵션 식별자를 검색하고, 코딩 옵션 식별자가 미리 결정된 값을 가질 경우, 미리 정해진 블록에 이웃한 어떤 후보 블록의 세트가 블록(210)으로 확장하는 웨지렛 분리 라인을 갖는지를 검사하도록 구성될 수 있다. 예를 들면, 후보 블록은 코딩 순서 또는 디코딩 순서로 샘플 어레이(302)의 디코딩 블록(304)에서 디코더(300)에 의해 적용되는 현재 블록(210)에 앞서는 샘플 어레이(302)의 공간적으로 이웃한 블록(304)을 포함할 수 있다. 예를 들면, 코딩 순서는 블록(304)을 행 방향로 왼쪽에서 오른쪽으로, 상부에서 하부로 스캐닝할 수 있으며, 그 경우에 후보 블록은 현재 블록(210)의 왼쪽에 바로 이웃한 블록을 포함시키고, 블록(212)과 같은 현재 블록(210)의 상부에 바로 이웃한 블록을 포함시킬 수 있다. 검사가 후보 블록의 세트 중에 이러한 웨지렛 블록이 있다는 것을 밝히면, 디코더(300)는 수정되지 않은 방식으로 예측(306), 리파인먼트(308) 및 디코딩(310)을 수행할 수 있다. 그러나, 그렇지 않은 경우, 디코더(300)는 예측(306)을 상이하게 수행할 수 있다. 섹션 3.1.2에서 상술되고, 다음 섹션에 대해 더욱 상세히 설명되는 바와 같이, 디코더(300)는 현재 블록(210)에 이웃한 재구성된 이웃한 샘플 또는 후보 블록의 하나 이상의 인트라 예측된 블록의 인트라 예측 방향에 따라 현재 블록(210) 내의 웨지렛 분리 라인(201)의 확장 방향을 설정함으로써 현재 블록(210) 내에서 웨지렛 분리 라인(201)의 위치를 예측하도록 구성될 수 있다. 디코딩(310)에서 일정한 분할 값의 예측을 위한 가능한 구현이 관계되는 한, 위 아래 설명에 대한 참조가 행해진다.Moreover, the decoder 300 of FIG. 16 has two coding modes in which the coding modes realized by procedures 306-310 are only triggered by respective common predetermined values of respective coding option identifiers within the data stream 304. It can be configured to be a default coding mode option among options. For example, the decoder 300 of FIG. 16 retrieves a coding option identifier from the data stream 304, and if the coding option identifier has a predetermined value, a set of candidate blocks neighboring the predetermined block is a block ( 210) to check if it has a wedgelet separation line. For example, a candidate block is a spatially neighboring neighbor of the sample array 302 that precedes the current block 210 applied by the decoder 300 in the decoding block 304 of the sample array 302 in coding order or decoding order. Block 304 may be included. For example, the coding order may scan block 304 row-wise from left to right and top to bottom, in which case the candidate block includes the block immediately adjacent to the left of current block 210 and , blocks immediately adjacent to the top of the current block 210, such as block 212. If the check reveals that such a Wedgelet block is among the set of candidate blocks, the decoder 300 may perform prediction 306, refinement 308, and decoding 310 in an unmodified manner. However, otherwise, decoder 300 may perform prediction 306 differently. As detailed in Section 3.1.2, and described in more detail in the next section, the decoder (300) performs intra prediction of one or more intra-predicted blocks of candidate blocks or reconstructed neighboring samples neighboring the current block (210). It can be configured to predict the position of the wedgelet separation line 201 within the current block 210 by setting the extension direction of the wedgelet separation line 201 within the current block 210 according to the direction. Reference is made to the description above and below as far as possible implementations for prediction of constant split values in decoding 310 are concerned.

더욱이, 블록 경계에 걸친 웨지렛 분리 라인 연속이 상술하고 아래에 더 설명되는 바와 같이 윤곽선 모드와 같이 현재 블록의 이중 세그먼테이션에 더욱 더 자유로울 수 있는 코딩 모드와 조합될 경우에 특정 이점이 생성한다는 것이 주목되어야 한다. 좀 더 정학히 하기 위해, 디코더(300)는 블록(306 내지 310)에 의해 실현되는 모드 뿐만 아니라 윤곽선 분할 모드를 지원하여, 블록의 요구에 코딩 오버헤드를 적절하게 적응하는 것을 가능하게 하도록 구성될 수 있다.Moreover, it is noted that the continuation of Wedgelet separation lines across block boundaries yields certain advantages when combined with coding modes that are more liberal with double segmentation of the current block, such as contour mode, as described above and further below. It should be. To be more precise, the decoder 300 can be configured to support the modes realized by blocks 306 to 310 as well as the contour segmentation mode, allowing appropriate adaptation of the coding overhead to the needs of the blocks. have.

어떤 경우에, 절차(306 내지 310)에 의해 디코딩/재구성되는 블록은 디코더(300)의 예측 루프의 참조 역할을 할 수 있다. 즉, 이중 값(bi-valued) 예측을 이용하는 경우의 예측 결과는 예를 들어 움직임 및/또는 변이 보상 예측을 위한 참조 역할을 할 수 있다. 더욱이, 디코딩(310)에 의해 획득되는 재구성된 값은 디코딩 순서에 따르는 샘플 어레이(302)의 블록(304) 중 어느 하나를 인트라 예측할 시의 공간적 이웃한 샘플 역할을 할 수 있다.In some cases, the block decoded/reconstructed by procedures 306-310 can serve as a reference for the prediction loop of decoder 300. That is, a prediction result in the case of using bi-valued prediction may serve as a reference for, for example, motion and/or disparity compensated prediction. Moreover, the reconstructed values obtained by decoding 310 may serve as spatial neighboring samples in intra-predicting any one of the blocks 304 of the sample array 302 according to the decoding order.

도 17은 도 16의 디코더에 맞는 가능한 인코더를 도시한다. 특히, 도 17은 예측된 위치에서의 웨지렛 분리 라인이 미리 정해진 블록으로의 이웃한 블록의 웨지렛 분리 라인의 확장을 형성하도록 미리 정해진 블록의 이웃한 블록의 웨지렛 분리 라인에 따라 샘플 어레이의 미리 정해진 블록 내에서 웨지렛 분리 라인의 위치를 예측하도록 구성된 데이터 스트림으로 샘플 어레이를 인코딩하기 위한 인코더(330)를 도시한다. 이러한 기능은 332에 도시되어 있다. 더욱이, 디코더(330)는 리파인먼트 정보를 이용하여 웨지렛 분리 라인의 예측 위치를 정제하는 기능(334)을 가지며, 미리 정해진 블록의 웨지렛 분리 라인은 미리 정해진 블록을 제 1 및 제 2 웨지렛 분할로 나눈다. 인코더(330)는 또한 리파인먼트 정보가 데이터 스트림 내에 삽입되는 삽입 기능(336), 및 인코더(330)가 제 1 및 제 2 웨지렛 분할의 단위로 미리 정해진 블록을 인코딩하는 인코딩 기능을 갖는다. Fig. 17 shows a possible encoder that fits the decoder of Fig. 16; In particular, FIG. 17 shows an array of samples along the Wedgelet separation line of a neighboring block of a predetermined block such that the Wedgelet separation line at the predicted location forms an extension of the Wedgelet separation line of the neighboring block into the predetermined block. It depicts an encoder 330 for encoding an array of samples into a data stream configured to predict the position of a wedgelet separation line within a predetermined block. This function is shown at 332. Furthermore, the decoder 330 has a function 334 to refine the predicted position of the wedgelet separation line using the refinement information, wherein the wedgelet separation line of the predetermined block divides the predetermined block into first and second wedgelets. Divide by division. Encoder 330 also has an insert function 336 where refinement information is inserted into the data stream, and an encoding function where encoder 330 encodes a predetermined block in units of first and second Wedgelet partitions.

5.2 이웃한 블록의 인트라 예측 방향으로부터의 웨지렛 분리 라인 확장 방향 예측5.2 Wedgelet Separation Line Extension Direction Prediction from Intra Prediction Direction of Neighboring Blocks

상술한 바와 같이, 웨지렛 기반의 블록 분할조차도 웨지렛 분리 라인의 위치에 대해 디코딩 측에 알리기 위해 상당량의 보조 정보를 필요로 한다.As mentioned above, even Wedgelet-based block division requires a significant amount of auxiliary information to inform the decoding side about the location of the Wedgelet separation line.

아래에 설명되는 실시예가 기초한다는 아이디어는 이웃한 인트라 예측 블록의 인트라 예측 방향이 현재 블록의 웨지렛 분리 라인의 확장 방향을 예측하여, 분할 정보를 전달하기 위해 필요한 보조 정보 레이트를 줄이기 위해 이용될 수 있다는 것이다.The idea on which the embodiments described below are based is that the intra-prediction direction of a neighboring intra-prediction block predicts the direction of extension of the Wedgelet separation line of the current block, so that it can be used to reduce the auxiliary information rate required to convey partition information. that there is

위의 설명에서, 섹션 3.1.2는 섹션 3 및 4에서 상술한 불규칙한 분할 모드의 글로머레이션(glomeration)에 제한되지 않도록 하기 위해 더욱 일반적인 용어로 설명되는 아래에 설명된 실시예의 가능한 구현을 보여주었다. 오히려, 방금 언급된 아이디어는 이점으로 아래에 더욱 상세히 설명되는 바와 같이 섹션 3.1.2에서 설명된 다른 상세 사항으로부터 독립적으로 이용될 수 있다. 그럼에도 불구하고, 섹션 3.1.2 및 다른 섹션에서 설명된 모든 상세 사항은 개별적으로 아래에 제시되는 설명과 조합될 수 있는 가능한 실현의 상세 사항으로 이해되어야 한다.In the description above, Section 3.1.2 has shown possible implementations of the embodiments described below, which are described in more general terms in order not to be limited to the glomeration of irregular partitioning modes described above in Sections 3 and 4. . Rather, the ideas just mentioned may advantageously be used independently of the other details discussed in Section 3.1.2, as described in more detail below. Nevertheless, all details set forth in Section 3.1.2 and other Sections should be understood as details of possible realizations that may be combined with the descriptions set out individually below.

따라서, 도 18은 방금 설명한 아이디어를 이용하고, 가능한 추가적인 기능이 관계되는 한 섹션 3.1.2 및/또는 도 1 내지 도 3에 대하여 상술한 바와 같이 구현될 수 있는 디코더(400)에 대한 실시예를 도시한다. 즉, 도 18의 디코더(400)는 데이터 스트림(304)으로부터 샘플 어레이(302)를 재구성하도록 구성된다. 일반적으로, 기능(306 내지 310)에 의해 정의되고, 도 18의 디코더에 대해 선택적인 코딩 모드를 제외하고, 도 18의 디코더(400)는 도 16의 디코더(300)에 대하여 섹션 5에서 위에 명시된 바와 같이 구현될 수 있다. 즉, 도 18의 디코더(400)는 블록 기반의 하이브리드 디코딩과 같은 블록 기반의 디코딩에 의해 도 18의 샘플 어레이(302)를 재구성하도록 동작할 수 있다. 샘플 어레이(302)의 블록(303)에 이용 가능한 코딩 모드 중에는, 디코더(400)의 기능 모듈(402)에 대하여 더 설명된 인트라 예측 모드가 있다. 도 18의 디코더(300)의 경우와 마찬가지로, 블록(303)으로의 샘플 어레이(302)의 세분은 기본적으로 고정될 수 있거나, 각각의 세분 정보에 의해 데이터 스트림(304) 내에서 시그널링될 수 있다. 특히, 도 18의 디코더(400)는 도 1 내지 도 3에 대해 상술한 바와 같이, 즉 도 3의 디코더 또는 코딩 브랜치(106v/d,1)의 쌍과 같은 어떤 뷰 디코더 처럼 구성될 수 있거나, 단순히 (106d,1)과 같은 깊이 디코더로서 구성될 수 있다.18 illustrates an embodiment of a decoder 400 that can be implemented as described above with respect to Section 3.1.2 and/or FIGS. show That is, the decoder 400 of FIG. 18 is configured to reconstruct the sample array 302 from the data stream 304. In general, the decoder 400 of FIG. 18 is defined by functions 306 to 310 and, except for the optional coding mode for the decoder of FIG. 18 , as specified above in Section 5 for the decoder 300 of FIG. can be implemented as That is, the decoder 400 of FIG. 18 is operable to reconstruct the sample array 302 of FIG. 18 by block-based decoding, such as block-based hybrid decoding. Among the coding modes available for block 303 of sample array 302 is an intra prediction mode, further described with respect to functional module 402 of decoder 400 . As in the case of the decoder 300 of FIG. 18 , the subdivision of the sample array 302 into blocks 303 may be essentially fixed, or may be signaled within the data stream 304 by respective subdivision information. . In particular, the decoder 400 of FIG. 18 may be configured as described above with respect to FIGS. 1 to 3 , i.e., the decoder of FIG. 3 or any view decoder, such as the pair of coding branches 106 v/d,1 , or , can simply be constructed as a depth decoder such as (106 d,1 ).

특히, 도 18의 디코더(400)는 기능(402)을 가지며, 이러한 기능에 따라 샘플 어레이(302)의 제 1 블록(212)은 인트라 예측을 이용하여 예측된다. 예를 들면, 인트라 예측 모드는 블록(212)에 대한 데이터 스트림(304) 내에서 시그널링된다. 디코더(400)는 인트라 예측 방향(214)을 따라 제 1 블록(212)에 이웃한 샘플 어레이(302)의 샘플(404)의 재구성된 값을 제 1 블록(212)에 복사하여 제 1 블록(212)을 필링(filling)함으로써 인트라 예측(402)을 수행하도록 구성될 수 있다. 인트라 예측 방향(214)은 또한 예컨대 다수의 가능한 방향 중 하나를 인덱싱함으로써 블록(212)에 대한 데이터 스트림(304) 내에서 시그널링될 수 있다. 대안적으로, 블록(212) 자체의 인트라 예측 방향(214)은 예측될 수 있다. 예를 들면, 디코딩 브랜치(106d,1)의 인트라 예측기(36)가 단계(402)를 수행하도록 구성될 수 있는 도 1 내지 도 3에 대한 설명을 참조한다. 구체적으로, 이웃한 샘플(404)은 블록(212)에 이웃한 샘플(404)의 재구성된 값을 포함하는 재구성이 이미 이용 가능하도록 디코더(400)에 의해 디코딩 순서로 이미 전달된 샘플 어레이(302)의 블록(303)에 속할 수 있다. 상술한 바와 같이, 다양한 코딩 모드는 디코더(400)에 의해 이전의 블록을 재구성하기 위해 이용되었을 수 있으며, 이는 디코딩 순서에서 앞선다. In particular, the decoder 400 of FIG. 18 has a function 402 according to which the first block 212 of the sample array 302 is predicted using intra prediction. For example, intra prediction mode is signaled within data stream 304 for block 212 . The decoder 400 copies the reconstructed value of the sample 404 of the sample array 302 adjacent to the first block 212 along the intra prediction direction 214 to the first block 212 to obtain the first block ( 212) to perform intra prediction 402. The intra prediction direction 214 may also be signaled within the data stream 304 for block 212, such as by indexing one of a number of possible directions. Alternatively, the intra prediction direction 214 of block 212 itself may be predicted. For example, see the description of FIGS. 1-3 in which the intra predictor 36 of the decoding branch 106 d,1 can be configured to perform step 402 . Specifically, the neighboring sample 404 is a sample array 302 already passed in decoding order by the decoder 400 such that a reconstruction containing the reconstructed value of the neighboring sample 404 in block 212 is already available. may belong to block 303 of ). As discussed above, various coding modes may have been used by decoder 400 to reconstruct the previous block, which precedes in decoding order.

더욱이, 도 18의 디코더(400)는 이웃한 블록(212)의 인트라 예측 방향(214)에 따라 제 2 블록(210) 내에 웨지렛 분리 라인(201)의 확장 방향을 설정함으로써 제 1 블록(212)에 이웃하는 제 2 블록(210) 내에서 웨지렛 분리 라인(201)의 위치(312)를 예측하도록 구성되며, 웨지렛 분리 라인(201)은 제 2 블록(212)을 제 1 및 제 2 웨지렛 분할(202a 및 202b)로 나눈다. 예를 들면, 도 18의 디코더(400)는 웨지렛 분리 라인(201)의 확장 방향의 표현의 양자화에 대하여 가능한 한 인트라 예측 방향(214)과 동일하게 웨지렛 분리 라인(201)의 확장 방향을 설정하도록 구성될 수 있다. 직선 분리 라인의 경우에, 확장 방향은 단순히 라인의 기울기에 대응한다. 곡선 분리 라인의 경우에는, 인트라 예측 방향은 예를 들어 이웃한 블록에 대한 경계에서 현재 블록의 분리 라인의 로컬 기울기로서 채용될 수 있다. 예를 들면, 도 18의 디코더(400)는 인트라 예측 방향(214)의 최상의 근사치를 형성하는 가능한 확장 방향의 세트 중에서 확장 방향을 선택한다.Moreover, the decoder 400 of FIG. 18 sets the extension direction of the Wedgelet separation line 201 in the second block 210 according to the intra prediction direction 214 of the neighboring block 212, so that the first block 212 ) is configured to predict the position 312 of the wedgelet separation line 201 within the second block 210 neighboring the second block 212, and the wedgelet separation line 201 divides the second block 212 into first and second Divide into wedgelet partitions 202a and 202b. For example, the decoder 400 of FIG. 18 sets the extension direction of the wedgelet separation line 201 to be the same as the intra prediction direction 214 as much as possible for the quantization of the representation of the extension direction of the wedgelet separation line 201. can be configured to set In the case of a straight separation line, the extension direction simply corresponds to the slope of the line. In the case of a curved separation line, the intra prediction direction may be employed as the local slope of the current block's separation line at the boundary to the neighboring block, for example. For example, the decoder 400 of FIG. 18 selects an extension direction from among a set of possible extension directions that form the best approximation of the intra prediction direction 214 .

따라서, 예측(404)에서, 디코더(400)는 적어도 확장 방향이 관계되는 한 현재 블록(210)의 웨지렛 분리 라인(201)의 위치(312)를 예측한다. 제 2 블록(210)의 웨지렛 분리 라인(201)의 위치의 도출은 확장 방향(408)을 수정하지 않은 채로 마무리될 수 있다. 예를 들면, 웨지렛 분리 라인(201)의 시작점(314)의 예측은 단계(406)에서 웨지렛 분리 라인 위치를 도출할 시에 디코더(400)에 의해 수행될 수 있다는 것이 섹션 3.1.2에서 설명되었지만, 디코더(400)는 대안적으로 데이터 스트림(304) 내에서 명시적인 시그널링에 의해 이러한 시작점(314)을 도출하도록 구성될 수 있다. 더욱이, 이전에 디코딩된 샘플 어레이에서의 동일 위치의 웨지렛 블록으로부터 횡 방향 위치의 거리를 시간적으로 예측하거나, 샘플 어레이(302)에 비해 서로 다른 뷰에 속하는 다른 샘플 어레이로부터 횡 방향의 위치를 공간적으로 예측함으로써 도 18의 디코더(400)는 확장 방향(316)과 병렬로 확장 방향(316)의 유지 하에 확장 방향(316)에 횡방향으로 도출(406) 시에 웨지렛 분리 라인(201)을 공간적으로 배치하도록 구성될 수 있다.Thus, in prediction 404, the decoder 400 predicts the location 312 of the wedgelet separation line 201 of the current block 210, at least as far as the expansion direction is concerned. The derivation of the position of the wedgelet separation line 201 of the second block 210 may be completed without modifying the extension direction 408 . For example, in section 3.1.2 it is shown that the prediction of the starting point 314 of the wedgelet separation line 201 can be performed by the decoder 400 in deriving the wedgelet separation line position in step 406. Although described, the decoder 400 may alternatively be configured to derive this starting point 314 by explicit signaling within the data stream 304 . Furthermore, temporally predicting the distance of a transverse position from a Wedgelet block of the same position in a previously decoded sample array, or spatially predicting a transverse position from another sample array belonging to a different view relative to the sample array 302. 18 decodes the wedgelet separation line 201 on derivation 406 transverse to the extension direction 316 with the extension direction 316 parallel to the extension direction 316 by predicting It can be configured to be spatially arranged.

그러나, 샘플 어레이(302)의 제 2 블록(210) 내에서 웨지렛 분리 라인(201)의 위치를 도출할 시에, 디코더(400)는 제 2 블록(210)의 주변의 부분을 따라 제 2 블록(210)에 인접한 확장 샘플의 라인의 샘플의 재구성된 값의 시퀀스의 연속적인 것 사이의 최대 변화의 위치에 웨지렛 분리 라인(201)의 시작점(314)을 배치하는 것이 바람직하다. 샘플의 라인은 샘플이 작은 십자형으로 상징되는 도 18에서 참조 부호(410)로 나타낸다. 샘플의 라인(410)은 이용 가능한 공간적으로 이웃한 블록의 샘플로 제한될 수 있다. 어떤 경우에, 도 18에 도시된 바와 같이 최대 변화가 결정되는 샘플의 라인(410)은 직사각형 블록(210)의 모서리 중 하나의 주위로 확장할 수 있다는 것이 강조되어야 한다. 따라서, 이러한 절차에 따르면, 디코더(400)는 이웃한 샘플과, 확장 방향(408)과 병렬로 재구성된 값의 최대 차이가 존재하는 샘플 라인(410) 사이에서 시작하기 위해 도출(406)에서 웨지렛 분리 라인을 배치하도록 구성될 수 있다. However, upon deriving the location of the Wedgelet separation line 201 within the second block 210 of the sample array 302, the decoder 400 uses a second block 210 along a portion around the second block 210. It is preferred to place the starting point 314 of the wedgelet separation line 201 at the location of the maximum change between successive ones of the sequence of reconstructed values of the samples of the line of extended samples adjacent to block 210. The line of samples is indicated by reference numeral 410 in FIG. 18 where samples are symbolized by small crosses. A line of samples 410 may be limited to samples of available spatially neighboring blocks. In any case, it should be emphasized that the line 410 of samples for which the maximum change is determined may extend around one of the corners of the rectangular block 210 as shown in FIG. 18 . Thus, according to this procedure, the decoder 400 wedges in derivation 406 to start between neighboring samples and sample lines 410 where there is a maximum difference in the reconstructed value parallel to the direction of extension 408. It may be configured to place a let separation line.

따라서, 양호한 예측이 데이터 스트림(304) 내에서 명시적인 신호화와 다른 수단에 의해 웨지렛 분리 라인(201)의 위치를 도출하는 것으로 발견되었으므로 보조 정보 레이트는 저장된다.Thus, the auxiliary information rate is saved since a good prediction has been found to derive the location of the wedgelet separation line 201 by means other than explicit signaling within the data stream 304.

그 후, 디코더(400)에 의해 디코딩(412)이 이루어지며, 이에 따라 디코더(400)는 도 16에 대해 설명된 것처럼 제 1 및 제 2 웨지렛 분할(202a 및 202b)의 단위로 제 2 블록을 디코딩한다.Decoding 412 is then performed by the decoder 400, whereby the decoder 400 divides the second block in units of the first and second Wedgelet partitions 202a and 202b as described with respect to FIG. decode

당연히, 도 18의 디코더(400)는 또한 도 16의 리파인먼트 기능(308)을 포함하도록 수정될 수 있다. 따라서, 상술한 바와 같이 직선이도록 제한될 수 있거나 제한될 수 없는 웨지렛 분리 라인의 위치의 종료 위치(320)에 대한 현재 블록(210)의 웨지렛 분리 라인(201)의 종료 위치(318)의 오프셋은 단계(406)에서 도출되는 바와 같이 데이터 스트림(304) 내에서 시그널링될 수 있다.Naturally, the decoder 400 of FIG. 18 can also be modified to include the refinement function 308 of FIG. 16 . Therefore, the end position 318 of the wedgelet separation line 201 of the current block 210 relative to the end position 320 of the position of the wedgelet separation line, which may or may not be constrained to be a straight line as described above. The offset may be signaled within data stream 304 as derived in step 406 .

또한 상술한 바와 같이, 3개의 구문 요소, 즉 어떤 오프셋 Eoff이 존재하는지에 대한, 즉 이러한 오프셋이 0인지에 대한 제 1 시그널링 요소, 오프셋이 0이 아닌 경우에 오프셋의 부호, 즉 시계 방향 또는 시계 반대 방향 편차의 부호를 의미하는 제 2 요소, 및 절대 오프셋 값 마이너스 1을 나타내는 제 3 요소: dmm_delta_end_flag, dmm_delta_end_sign_flag, dmm_delta_end_abs_minus1는 이러한 종료 위치 오프셋 Eoff을 전송하는데 이용될 수 있다. 의사 코드에서, 이러한 구문 요소는 다음과 같은 것으로 포함될 수 있다.Also as mentioned above, three syntax elements: the first signaling element for which offset E off exists, i.e. whether this offset is zero, the sign of the offset if the offset is not zero, i.e. clockwise or A second element meaning the sign of the counterclockwise deviation, and a third element indicating the absolute offset value minus 1: dmm_delta_end_flag, dmm_delta_end_sign_flag, dmm_delta_end_abs_minus1 can be used to transmit this end position offset E off . In pseudocode, these syntactic elements could be included as:

dmm_delta_end_flag dmm_delta_end_flag ( dmm_delta_end_flag ) {이면 ( dmm_delta_end_flag ) if { dmm_delta_end_abs_minus1 dmm_delta_end_abs_minus1 dmm_delta_end_sign_flag} dmm_delta_end_sign_flag}

dmm_delta_end_abs_minus1 및 dmm_delta_end_sign_flag는 다음과 같이 DmmDeltaEnd, 즉 Eoff를 도출하는데 이용될 수 있다:DmmDeltaEnd [ x0 ][ y0 ] = ( 1 - 2 * dmm_delta_end_sign_flag[ x0 ][ y0 ] ) * ( dmm_delta_end_abs_minus1 [ x0 ][ y0 ] + 1)그러나, 대안적인 절차는 또한 실행 가능하다. 예를 들면, 종료 위치 오프셋을 시그널링하는 대신에, 인트라 예측 방향(214)에 따라 확장 방향 세트에 대한 방향 또는 각도 오프셋은 블록(202)에 대한 데이터 스트림(304) 내에서 시그널링될 수 있다.dmm_delta_end_abs_minus1 and dmm_delta_end_sign_flag can be used to derive DmmDeltaEnd, i.e. E off as follows: DmmDeltaEnd [x0][y0] = ( 1 - 2 * dmm_delta_end_sign_flag[x0][y0]) * ( dmm_delta_end_abs_minus1 [x0][y0] + 1) However, alternative procedures are also feasible. For example, instead of signaling an end position offset, a directional or angular offset for an extension direction set according to intra prediction direction 214 may be signaled within data stream 304 for block 202 .

도 18에 따르면, 다음의 정보: 1) 단계(406-412)를 트리거하는 각각의 미리 정해진 상태를 가진 코딩 옵션 식별자, 2) 선택적으로, 종료 위치 오프셋과 같은 리파인먼트 정보, 3) 선택적으로, 이웃한 샘플/블록으로부터 공간적 또는 시간적으로 예측되도록 허용될 수 있기 때문에 선택적으로 하나 또는 두 분할(202a, 202b)에 대해 CPV 또는 CPV 잔여와 같은 코딩 파라미터, 4) 선택적으로, DeltaCPV와 같은 코딩 파라미터 잔여는 블록(210)에 대한 데이터 스트림에 제공될 수 있다.According to Fig. 18, the following information: 1) a coding option identifier with a respective predetermined condition triggering steps 406-412, 2) optionally refinement information such as an end position offset, 3) optionally, Optionally a coding parameter such as CPV or CPV residual for one or both partitions 202a, 202b, 4) optionally a coding parameter residual such as DeltaCPV, since it may be allowed to be spatially or temporally predicted from neighboring samples/blocks may be provided in the data stream for block 210.

섹션 3.3의 설명에 대한 디코딩 단계(412)의 가능한 수정에 대해서, 도 16의 단계(310)에 대한 위의 설명으로 참조가 행해진다. For possible modifications of the decoding step 412 to the description of Section 3.3, reference is made to the above description of step 310 of FIG. 16 .

도 18의 디코더(400)는 데이터 스트림(304) 내에서 코딩 옵션 식별자에 의해 활성화되는 코딩 모드 옵션으로서 단계(406 및 412)를 처리하도록 구성될 수 있으며, 웨지렛 분리 라인 위치 도출(406)은 현재 블록(210)의 이웃의 후보 블록의 세트 중 어떤 것도 이런 블록 내에 웨지렛 분리 라인을 갖지 않는 경우에 웨지렛 분리 라인 위치를 도출하기 위해 부차적인 측정을 형성하며, 웨지렛 분리 라인의 확장은 현재 블록(210)으로 계속한다.The decoder 400 of FIG. 18 can be configured to process steps 406 and 412 as coding mode options activated by coding option identifiers within the data stream 304, and the wedgelet separation line position derivation 406 If none of the set of candidate blocks in the neighborhood of the current block 210 have a Wedgelet separation line within such a block then form a secondary measure to derive the Wedgelet separation line position, the extension of the Wedgelet separation line being Continue to current block 210.

도 19는 도 18의 디코더에 맞는 인코더에 대한 실시예를 도시한다. 도 19의 인코더는 일반적으로 참조 부호(430)로 나타내고, 샘플 어레이를 데이터 스트림(304)에 인코딩하도록 구성된다. 내부적으로, 인코더(430)는 블록(432)의 인트라 예측, 및 블록(434)에서 도 18의 블록(406)의 설명에 따른 라인 도출을 이용하여 샘플 어레이의 제 1 블록을 예측하도록 구성된다. 그 후, 인코더(430)는 인코딩 블록(436)에서 제 1 및 제 2 분할의 단위로 434에서 라인 도출의 대상인 제 2 블록을 인코딩한다.FIG. 19 shows an embodiment of an encoder suitable for the decoder of FIG. 18 . The encoder of FIG. 19 is indicated generally by reference numeral 430 and is configured to encode an array of samples into a data stream 304 . Internally, the encoder 430 is configured to predict the first block of the sample array using intra prediction in block 432 and, in block 434, line derivation according to the description of block 406 of FIG. 18 . Then, the encoder 430 encodes the second block that is the target of line derivation at 434 in units of the first and second divisions at encoding block 436 .

당연히, 도 19에 도시된 기능 이상으로, 인코더(430)는 도 18의 디코더의 기능을 반영하기 위해 동작하도록 구성된다. 즉, 인코더(430)는 예를 들어 블록 기반의 하이브리드 인코딩을 이용하여 블록 기반으로 동작할 수 있다. 명시적으로 상술되지 않았지만, 도 16의 디코더에 비해 도 17의 인코더에 대해서도 적용한다.Naturally, beyond the functionality shown in FIG. 19 , the encoder 430 is configured to operate to mirror the functionality of the decoder of FIG. 18 . That is, the encoder 430 may operate on a block basis using, for example, block-based hybrid encoding. Although not explicitly described above, it also applies to the encoder of FIG. 17 compared to the decoder of FIG. 16 .

5.3 이웃한 샘플의 재구성된 값에 따라 시작점을 배치한 웨지렛 분리선 도출5.3 Derivation of the wedgelet separation line with starting points placed according to the reconstructed values of neighboring samples

웨지렛 블록의 웨지렛 분리 라인의 위치에 대한 정보를 전달하기 위해 필요한 보조 정보를 줄이기 위한 추가적인 방법은 아래에서 더 설명되는 실시예에 기초하여 형성한다. 특히, 아이디어는 이전에 재구성된 샘플, 즉 코딩/디코딩 순서에 따라 현재 블록에 앞서는 블록의 재구성된 값이 즉, 현재 블록의 주변을 따라 현재 블록에 인접한 확장 샘플의 라인의 샘플의 재구성된 값의 시퀀스의 연속적인 것 사이의 최대 변화의 위치에 웨지렛 분리 라인의 시작점을 배치함으로써 웨지렛 분리 라인의 시작점의 정확한 배치의 적어도 예측을 허용한다는 것이다. 따라서, 섹션 5.1 및 5.2에 대해 위에서 설명된 가능성과 유사하게도, 디코더가 웨지렛 분리 라인을 정확하게 위치시키도록 허용하기 위해 필요한 보조 정보 레이트는 감소될 수 있다. 아래에 설명되는 실시예를 기본으로 하는 아이디어는 섹션 3.1.2에서 위의 설명에도 이용되었으며, 이에 따라 아래에 설명되는 실시예의 가능한 구현이 설명된다. An additional method for reducing the auxiliary information needed to convey information about the position of the wedgelet separation line of the wedgelet block forms based on the embodiments described further below. In particular, the idea is that the reconstructed values of the previously reconstructed samples, i.e. the blocks preceding the current block according to the coding/decoding order, i.e. the reconstructed values of the samples of the lines of extended samples adjacent to the current block along the periphery of the current block. Placing the starting point of the wedgelet separation line at the position of maximum change between successive ones of the sequence allows at least a prediction of the exact placement of the starting point of the wedgelet separation line. Thus, similar to the possibilities described above for Sections 5.1 and 5.2, the auxiliary information rate required to allow the decoder to correctly locate the Wedgelet separation line can be reduced. The idea based on the embodiment described below is also used in the above description in section 3.1.2, whereby possible implementations of the embodiment described below are described.

따라서, 도 20은 방금 설명한 아이디어를 이용하고, 가능한 추가적인 기능이 관계되는 한 섹션 3.1.2 및/또는 도 1 내지 도 3에 대하여 상술한 바와 같이 구현될 수 있는 디코더(500)에 대한 실시예를 도시한다. 즉, 도 20의 디코더(500)는 데이터 스트림(304)으로부터 샘플 어레이(302)를 재구성하도록 구성된다. 일반적으로, 도 20의 디코더(500)는, 예를 들어 기능(306 내지 310)에 의해 정의되고, 도 18의 디코더에 대해 선택적인 코딩 모드를 제외하고는 도 16의 디코더(300)에 대하여 섹션 5.1 또는 5,2에서 위에 명시된 바와 같이 구현될 수 있고, 예를 들어 기능(402, 406 및 412)에 의해 정의되고, 도 20의 디코더에 대해 선택적인 코딩 모드를 제외하고는 도 18의 디코더(400)에 대하여 섹션 5.1 또는 5,2에서 위에 명시된 바와 같이 구현될 수 있다. 즉, 도 20의 디코더(500)는 블록 기반의 하이브리드 디코딩과 같은 블록 기반의 디코딩에 의해 도 20의 샘플 어레이(302)를 재구성하도록 동작할 수 있다. 도 18의 디코더(300)의 경우와 마찬가지로, 블록(303)으로의 샘플 어레이(302)의 세분은 기본적으로 고정될 수 있거나, 각각의 세분 정보에 의해 데이터 스트림(304) 내에서 시그널링될 수 있다. 특히, 도 20의 디코더(500)는 도 1 내지 도 3에 대해 상술한 바와 같이, 즉 도 3의 디코더 또는 코딩 브랜치(106v/d,1)의 쌍과 같은 어떤 뷰 디코더처럼 구성될 수 있거나, 단순히 (106d,1)과 같은 깊이 디코더로서 구성될 수 있다.Accordingly, FIG. 20 illustrates an embodiment of a decoder 500 that may be implemented as described above with respect to Section 3.1.2 and/or FIGS. show That is, the decoder 500 of FIG. 20 is configured to reconstruct the sample array 302 from the data stream 304. In general, the decoder 500 of FIG. 20 is defined, for example, by functions 306 to 310, and with respect to the decoder 300 of FIG. 16, except for the optional coding modes for the decoder of FIG. 18, section The decoder of FIG. 18 (except for the coding mode, which can be implemented as specified above in 5.1 or 5,2 and is defined, for example, by functions 402, 406 and 412, and which is optional for the decoder of FIG. 20) 400) may be implemented as specified above in section 5.1 or 5,2. That is, the decoder 500 of FIG. 20 may operate to reconstruct the sample array 302 of FIG. 20 by block-based decoding such as block-based hybrid decoding. As in the case of decoder 300 of FIG. 18 , the subdivision of sample array 302 into blocks 303 may be essentially fixed, or may be signaled within data stream 304 by respective subdivision information. . In particular, the decoder 500 of FIG. 20 may be configured as described above with respect to FIGS. 1 to 3 , i.e., the decoder of FIG. 3 or any view decoder, such as the pair of coding branches 106 v/d,1 , or , can simply be constructed as a depth decoder such as (106 d,1 ).

솔직히 말해서, 참조 부호(500)에 표시된 도 20의 디코더는 주로 도 18의 디코더에 대응한다. 그러나, 블록(402 및 406)에서 도 18에 대해 설명된 기능은 단지 도 20에 대해 선택적인 단계를 나타낸다. 오히려, 도 20의 디코더(500)는 미리 정해진 블록(210)의 주변의 부분을 따라 미리 정해진 블록(210)에 인접한 확장 샘플의 라인(410)의 샘플의 재구성된 값의 시퀀스의 연속적인 것 사이의 최대 변화의 위치에 웨지렛 분리 라인(201)의 시작점(314)을 배치함으로써 단계(406')에서 샘플 어레이(302)의 미리 정해진 블록(210) 내에서 웨지렛 분리 라인(201)의 위치를 도출시키도록 구성되며, 웨지렛 분리 라인(201)은 미리 정해진 블록(210)을 제 1 및 제 2 웨지렛 분할(202a 및 202b)로 나눈다. 그 후, 단계(412')에서, 디코더(500)는 도 18에 대해 위에 설명된 식으로 생성된 분할(202a 및 202b)의 디코딩을 수행한다.To be frank, the decoder of FIG. 20 indicated at reference numeral 500 mainly corresponds to the decoder of FIG. 18 . However, the functions described with respect to FIG. 18 in blocks 402 and 406 only represent optional steps with respect to FIG. Rather, the decoder 500 of FIG. 20 moves along a portion of the periphery of the predefined block 210 between successive ones of a sequence of reconstructed values of a line 410 of extended samples adjacent to the predefined block 210 . Position of the wedgelet separation line 201 within the predetermined block 210 of the sample array 302 at step 406' by placing the starting point 314 of the wedgelet separation line 201 at the location of the maximum change in and the wedgelet separation line 201 divides the predetermined block 210 into first and second wedgelet divisions 202a and 202b. Then, at step 412', the decoder 500 performs decoding of the partitions 202a and 202b generated in the equation described above with respect to FIG.

좀 더 정확하게 말하면, 도출(406')에서, 디코더(500)는 샘플을 시계 반대 방향 또는 시계 방향으로 순회할 때 발생 순서에 따라 블록(210)의 이미 디코딩된 이웃한 블록의 샘플의 재구성된 값을 주문한다. 재구성된 값의 생성된 시퀀스는 502에서 도 20에 도시되어 있다. 알 수 있는 바와 같이, 연속적인 재구성된 값 사이의 최대 차이는 제 n 및 제 (n + 1) 이웃한 샘플 사이에서 생성하며, 따라서 도 20의 디코더는 결과적으로 이웃한 샘플의 쌍에 직접 인접하는 블록(210)의 샘플 사이에 이웃한 샘플의 쌍이 인접하는 에지(316)에서의 웨지렛 분리 라인을 배치한다. 위에 설명된 바와 같이, 디코더(500)는 행 방향 블록 스캐닝 방향을 이용할 수 있으며, 따라서 샘플 라인(410)의 이웃한 샘플은 블록(210)의 왼쪽 에지 및 상부 에지를 따라 확장할 수 있다. 이는 디코딩/코딩 순서에 따라 행 방향으로 스캐닝되는 트리 루트(tree root) 블록의 행 방향 스캔의 혼합을 이용함으로써 달성될 수 있으며, 현재 방문된 각 트리 루트 블록에 대해, 쿼드 트리(quad-tree) 세분이 수행되고, 이의 리프 루트(leaf root) 블록은 깊이 우선 순회 순서(depth-first traversal order)로 스캐닝된다. 이러한 순서를 이용하는 경우, 이미 재구성된 이웃한 샘플의 최대 수를 갖는 가능성은 폭 우선 순회 순서를 사용하는 것에 비해 증가된다.More precisely, in derivation 406', the decoder 500 traverses the samples counter-clockwise or clockwise, according to the order of their occurrence, the reconstructed values of the samples of the already decoded neighboring blocks of block 210. order The resulting sequence of reconstructed values is shown in FIG. 20 at 502 . As can be seen, the maximum difference between successive reconstructed values occurs between the nth and (n + 1)th neighboring samples, so the decoder of FIG. 20 results in a pair of neighboring samples directly adjacent to each other. Between the samples in block 210, pairs of neighboring samples place wedgelet separation lines at adjacent edges 316. As described above, decoder 500 may use a row-wise block scanning direction, so that neighboring samples of sample line 410 may extend along the left edge and top edge of block 210 . This can be achieved by using a mix of row-wise scans of tree root blocks that are scanned row-wise in decoding/coding order, and for each currently visited tree-root block, a quad-tree Subdivision is performed, and its leaf root blocks are scanned in depth-first traversal order. When using this ordering, the probability of having the maximum number of already reconstructed neighboring samples is increased compared to using a breadth first traversal order.

도출(406')에서, 도 20의 디코더(500)는 도 18에 대해 섹션 3.1.2에서 선택적인 방식으로 설명된 바와 같이 웨지렛 분리 라인 확장 방향(408)의 도출을 이용할 수 있다. 대안적으로, 디코더(500)가 현재 블록(210)의 웨지렛 분리 라인(201)을 위치시키는 웨지렛 분리 라인 확장 방향은 예를 들어 샘플 어레이(302)를 포함하는 샘플 어레이 시퀀스의 이전에 디코딩된 샘플 어레이의 동일 위치 웨지렛 블록으로부터 시간적으로 서로 다르게 예측될 수 있다. 대안적으로, 웨지렛 분리 라인의 종료점(318)의 명시적 시그널링이 이용될 수 있다. 명시적 시그널링은 블록(210)의 중간점에 걸친 시작 위치(314)에 대한 대향 위치에 있는 샘플 위치로부터의 종료점(318)의 오프셋을 나타낸다. 다른 솔루션이 물론 또한 실현 가능하다.In derivation 406 ′, the decoder 500 of FIG. 20 may use the derivation of the wedgelet separation line extension direction 408 as described in an optional manner in Section 3.1.2 with respect to FIG. 18 . Alternatively, the Wedgelet separation line extension direction in which the decoder 500 locates the Wedgelet separation line 201 of the current block 210 is a previously decoded sequence of sample arrays including, for example, the sample array 302. can be predicted differently in time from co-located Wedgelet blocks of the sample array. Alternatively, explicit signaling of the endpoint 318 of the wedgelet separation line may be used. The explicit signaling indicates the offset of the end point 318 from the sample position opposite to the start position 314 across the midpoint of block 210 . Other solutions are of course also feasible.

이것과 관련하여, 시작점(314)은 제 n 샘플 위치, 제 (n + 1) 샘플 위치 또는 그 사이의 서브픽셀 위치에 대응하도록 단계(406')에서 디코더(500)에 의해 정의될 수 있다는 것이 주목되어야 한다.In this regard, it should be noted that starting point 314 may be defined by decoder 500 at step 406' to correspond to the nth sample position, the (n+1)th sample position, or a subpixel position therebetween. It should be noted.

섹션 5.1 및 5.2에서 위에 언급된 조합 가능성의 대부분은 또한 본 섹션의 실시예에 이전할 수 있다. 예를 들면, 블록(406' 및 412')에 의해 실현되는 디코더(500)의 코딩 모드는 후보 이웃한 블록의 세트 중 하나가 현재 블록(210)으로 계속하는 웨지렛 분리 라인을 가질 때마다 대신에 수행되는 기본 코딩 모드를 나타내는 섹션 5.1의 웨지렛 분리 라인 연속 개념을 가진 공통의 코딩 옵션 식별자의 공통의 미리 결정된 값과 트리거되는 부수적인 폴백(subsidiary fallback) 기능을 나타낼 수 있다. 다른 일반화 및 수정이 또한 실현 가능하다. 예를 들면, 디코더(500)는 또한 윤곽선 분할 모드 등을 지원할 수 있다.Most of the combination possibilities mentioned above in Sections 5.1 and 5.2 can also transfer to the examples in this section. For example, the coding mode of the decoder 500, realized by blocks 406' and 412', whenever one of the set of candidate neighboring blocks has a Wedgelet separation line continuing to the current block 210, instead A common predetermined value of a common coding option identifier with the Wedgelet Separation Line Continuation concept of Section 5.1 indicating the basic coding mode to be performed and a subsidiary fallback function to be triggered. Other generalizations and modifications are also feasible. For example, the decoder 500 may also support contour segmentation mode and the like.

도 20에 따르면, 다음의 정보: 1) 단계(406'-412')를 트리거하는 각각의 미리 정해진 상태를 가진 코딩 옵션 식별자, 2) 선택적으로, 종료 위치 오프셋과 같은 리파인먼트 정보, 3) 선택적으로, 이웃한 샘플/블록으로부터 공간적 또는 시간적으로 예측되도록 허용될 수 있기 때문에 선택적으로 하나 또는 두 분할(202a, 202b)에 대해 CPV 또는 CPV 잔여와 같은 코딩 파라미터, 4) 선택적으로, DeltaCPV와 같은 코딩 파라미터 잔여는 블록(210)에 대한 데이터 스트림에 제공될 수 있다.According to Fig. 20, the following information: 1) a coding option identifier with each predetermined condition triggering steps 406'-412', 2) optionally, refinement information such as an end position offset, and 3) optionally , optionally a coding parameter such as CPV or CPV residual for one or both partitions 202a, 202b, 4) optionally coding such as DeltaCPV, since it can be allowed to be spatially or temporally predicted from neighboring samples/blocks. Parameter residuals may be provided in the data stream for block 210 .

도 21은 도 20의 디코더에 맞는 인코더를 나타낸다. 이는 참조 부호(530)로 나타내고, 단계(406)에 따라 라인 도출(434')을 수행하고, 도 19에 대해 설명된 바와 같이 블록(436)에 대해 인코딩(436')을 수행하도록 구성된다.FIG. 21 shows an encoder suitable for the decoder of FIG. 20 . This is indicated by reference numeral 530 and is configured to perform line derivation 434' in accordance with step 406 and to perform encoding 436' for block 436 as described with respect to FIG.

5.4 픽처의 동일 위치의 부분의 임계화에 의한 깊이/변이 맵의 타일(픽셀) 기반의 이중 세그먼테이션5.4 Tile (pixel) based double segmentation of the depth/disparity map by thresholding the co-located parts of the picture

위의 논의에서 자명해지듯이, 웨지렛 기반의 분할은 한편으로 보조 정보 레이트와 다른 한편으로 분할 가능성에서 달성 가능한 다양성 사이의 트레이드오프의 종류를 나타낸다. 이에 비해, 윤곽선 분할은 보조 정보 레이트의 관점에서 더 복잡한 것 같다.As should be apparent from the discussion above, wedgelet-based partitioning represents a kind of tradeoff between the auxiliary information rate on the one hand and the achievable diversity in the splitting potential on the other. In comparison, contour segmentation seems more complicated in terms of auxiliary information rate.

아래에 더 설명되는 실시예를 기본으로 하는 아이디어는 분할이 웨지렛 분할이어야 한다는 정도까지 분할의 제약을 완화하는 능력이 깊이/변이 맵에서의 이중 세그먼테이션을 위한 양호한 예측을 도출하기 위해 비교적 복잡하지 않은 통계적 분석을 중첩된 공간적 샘플링된 텍스처 정보에 적용할 수 있다는 것이다. 따라서, 이러한 아이디어에 따르면, 그것은 픽처의 형태의 동일 위치의 텍스처 정보가 제공되고, 의미있는 텍스처 변화가 여기에서 가시적인 경우에 시그널링 오버헤드를 완화하는 자유를 정확히 증가시킨다. 이러한 아이디어를 이용하는 본 아이디어의 가능한 구현은 섹션 3.2.2에서 상술되었지만, 보다 일반적인 관점에서 아래에 더욱 상세히 설명된다. 다시 말하면, 섹션 3.2.2 및 다른 섹션에서 설명된 모든 상세 사항은 아래에 개별적으로 제시되는 설명과 조합될 수 있는 가능한 실현 상세 사항으로 이해되어야 한다.The idea, based on an embodiment described further below, is that the ability to relax the constraints of a split to the extent that it must be a wedgelet split is relatively uncomplicated to derive good predictions for double segmentation in depth/disparity maps. Statistical analysis can be applied to overlapping spatially sampled texture information. Thus, according to this idea, it increases the freedom to mitigate the signaling overhead precisely in the case where co-located texture information in the form of a picture is provided, and a meaningful texture change is visible here. Possible implementations of the present idea using this idea were detailed in Section 3.2.2, but are described in more detail below in a more general perspective. In other words, all details set forth in Section 3.2.2 and in other Sections are to be understood as possible implementation details that may be combined with the descriptions presented individually below.

특히, 도 22는 본 발명의 이러한 실시예에 따른 디코더(600)를 도시한다. 디코더(600)는 데이터 스트림(304)으로부터의 픽처(215)와 관련된 깊이/변이 맵(213)의 미리 정해진 블록을 재구성하기 위한 것이다. 디코더는 세그먼터(602), 공간적 이송기(604) 및 디코더(606)를 포함한다. 디코더(600)는 디코딩 브랜치(106d,1/2) 중 어느 하나에 대하여 상술한 바와 같이 구성될 수 있다. 즉, 디코더(600)는 블록에 기초하여 동작할 수 있다. 더욱이, 이는 하이브리드 비디오 디코더로서 구현될 수 있다. 블록으로의 깊이/변이 맵(213)의 세분은 블록으로의 픽처(215)의 세분으로부터 완전히 도출될 수 있거나, 이로부터 벗어날 수 있으며, 깊이/변이 맵의 세분은 데이터 스트림(304) 내에서 시그널링될 수 있거나, 그렇지 않으면 디코더(600)에 알려질 수 있다.In particular, Fig. 22 shows a decoder 600 according to this embodiment of the present invention. The decoder (600) is for reconstructing a predetermined block of the depth/disparity map (213) associated with the picture (215) from the data stream (304). The decoder includes a segmenter 602, a spatial transporter 604 and a decoder 606. Decoder 600 may be configured as described above with respect to any one of decoding branches 106 d, 1/2 . That is, the decoder 600 may operate based on blocks. Moreover, it can be implemented as a hybrid video decoder. The subdivision of the depth/disparity map 213 into blocks may derive entirely from, or may deviate from, the subdivision of the pictures 215 into blocks, the subdivision of the depth/disparity map signaling within the data stream 304. may be, or may otherwise be known to the decoder (600).

세그먼터(602)는 제 1 및 2 분할로의 참조 블록(216)의 이중 세그먼테이션을 획득하기 위해 참조 블록(216) 내의 픽처(215)의 임계화에 의해 픽처(215)의 참조 블록(216)을 세그먼트하도록 구성되고, 깊이/변이 맵(213)의 미리 정해진 블록(210)에 동일 위치되도록 구성된다. The segmenter 602 divides the reference block 216 of the picture 215 by thresholding the picture 215 within the reference block 216 to obtain a double segmentation of the reference block 216 into first and second splits. and configured to be co-located in a predetermined block 210 of the depth/disparity map 213.

그 후, 공간적 이송기(604)는 미리 정해진 블록(210)의 제 1 및 제 2 분할(202a 및 202b)을 획득하기 위해 깊이/변이 맵(213)의 미리 정해진 블록(210)으로 픽처의 참조 블록(216)의 이중 세그먼테이션을 이송한다.The spatial transporter 604 then references the picture into a predetermined block 210 of the depth/disparity map 213 to obtain the first and second divisions 202a and 202b of the predetermined block 210. Carry out the double segmentation of block 216.

디코더(606)는 제 1 및 제 2 분할(202a 및 202b)의 단위로 미리 정해진 블록(210)을 디코딩하도록 구성된다. 디코더(606)의 기능은 박스(310, 412 및 412')에 대해 상술한 기능에 대응한다.The decoder 606 is configured to decode the predetermined block 210 in units of first and second partitions 202a and 202b. The function of decoder 606 corresponds to the function described above with respect to boxes 310, 412 and 412'.

도 1 내지 도 3을 참조하면, 세그먼터 및 이송기 기능은 제각기 교환 모듈(52 및 110) 내에 포함될 수 있지만, 디코더(606)의 기능은 예를 들어 인트라 예측 모듈에서 구현될 수 있다. 1-3, the segmenter and transporter functions may be included within exchange modules 52 and 110, respectively, but the functions of decoder 606 may be implemented in an intra prediction module, for example.

설명이 개별적으로 도 22의 요소에 대한 가능한 구현 상세 사항을 나타낼 수 있는 섹션 3.2.2에 대해 상술한 바와 같이, 픽처(215)의 참조 블록(216)의 제 1 및 제 2 분할(202a 및 202b)의 각각이 픽처(215)의 참조 블록(216)을 서로 완전히 커버하고, 서로에 상보적인 타일(608)의 세트이도록 세그먼터(602)는, 임계화할 시에, 각각의 값이 각각의 미리 결정된 값보다 큰지 작은지에 대해 참조 블록(216)의 2차원 세분의 타일(608)에서 참조 블록(216) 내의 픽처(215)의 값을 개별적으로 검사하도록 구성될 수 있다. 즉, 임계화는 샘플 해상도에서 수행될 수 있으며, 이러한 경우에 타일(608)은 픽처(215)의 개별적인 샘플(610)에 대응한다. 디코더(600)는 또한 임계화에서 개별적인 검사의 대상인 값이 재구성된 픽처(215)의 재구성된 값인 픽처(215)를 재구성할 책임이 있을 수 있다. 특히, 도 1 내지 도 3에 대하여 설명한 바와 같이, 디코더(600)는 이와 관련된 깊이/변이 맵(213)에 앞서 픽

Figure 112022024779445-pat00047
픽처(215)를 재구성하도록 구성될 수 있다.First and second partitions 202a and 202b of reference block 216 of picture 215, as described above with respect to section 3.2.2, where the description may individually indicate possible implementation details for the elements of FIG. ) is a set of tiles 608 that completely cover the reference block 216 of the picture 215 and are complementary to each other, so that, when thresholding, each value has a respective pre- It may be configured to individually check the values of the pictures 215 in the reference block 216 in the two-dimensional subdivision 608 of the reference block 216 for greater or less than the determined value. That is, thresholding may be performed at sample resolution, in which case tiles 608 correspond to individual samples 610 of picture 215 . The decoder 600 may also be responsible for reconstructing a picture 215 whose values are subject to individual checks in thresholding are the reconstructed values of the reconstructed picture 215 . In particular, as described with respect to FIGS. 1-3, the decoder 600 picks prior to its associated depth/disparity map 213.
Figure 112022024779445-pat00047
may be configured to reconstruct the picture 215 .

이미 상술한 바와 같이, 제 1 및 제 2 분할로의 참조 블록(216)의 이중 세그먼테이션을 획득하기 위해 세그먼터(602)는, 세그먼트할 시에, 형태학 홀 필링(morphological hole filling) 및/또는 저역 통과 필터링을 임계화의 결과에 적용하도록 구성될 수 있다. 이것은 공간 이송기(604)에 의해 공간적으로 이송되는 참조 블록(216)으로부터 획득된 이중 세그먼테이션의 분할의 많은 격리된 두 세그먼트의 발생을 피하지만, 이러한 급격한 깊이 변화는 가시적으로 발생할 가능성이 훨씬 적다. 당연히, 인코더는 이를 수행한다.As already mentioned above, to obtain a double segmentation of the reference block 216 into first and second divisions, the segmenter 602, when segmenting, performs morphological hole filling and/or low pass It can be configured to apply pass-through filtering to the results of thresholding. This avoids the occurrence of many isolated two segments of the segmentation of the double segmentation obtained from the reference block 216 that is spatially transferred by the spatial transferor 604, but such rapid depth changes are much less likely to occur visually. Naturally, the encoder does this.

더욱이, 디코더(600) 및 세그먼터(602)는, 임계화에서, 픽처(215)의 참조 블록(216)의 재구성된 샘플 값의 중심 집중 경향(central tendency)에 대한 측정치를 결정하고, 픽처(215)의 참조 블록(216)의 각 재구성된 샘플 값을 결정된 측정치에 의존하는 각각의 임계값과 비교함으로써 임계화를 수행하도록 구성될 수 있다. 상술한 바와 같이, 임계값은 전체적으로 참조 블록(216) 내의 샘플(610) 사이에서 정의될 수 있다. 중심 집중 경향으로서, 산술 평균 또는 중간 값과 같은 일부 평균값이 이용될 수 있다. Moreover, the decoder 600 and the segmenter 602 determine, in thresholding, a measure of the central tendency of the reconstructed sample values of the reference block 216 of the picture 215, and the picture ( 215) to perform thresholding by comparing each reconstructed sample value of the reference block 216 with a respective threshold value dependent on the determined measurement. As discussed above, thresholds may be defined between samples 610 within reference block 216 as a whole. As a central tendency, some mean value such as an arithmetic mean or a median value may be used.

섹션 4.2에서 상술한 바와 같이, 디코더(600)는 미리 정해진 임계값을 초과하는 픽처(215)의 참조 블록(216) 내의 샘플의 값의 연역적인(a-priori) 결정된 분산의 경우에만 블록(602 내지 606)에 의해 나타낸 코딩 모드의 이용 가능성을 지원하도록 구성될 수 있다. 그렇지 않은 경우, 임계화에 의해 발견된 이중 세그먼테이션은 깊이/변이 맵의 블록(210)의 외관(appearance)에 대한 양호한 예측기를 형성하지 않을 가능성이 크며, 따라서 이러한 코딩 모드는 이러한 블록을 허용하지 않을 수 있다. 모드 가능성을 억제함으로써, 엔트로피 확률 추정치가 고려되어야 하는 각각의 코딩 옵션 식별자의 심볼 값의 수의 유익하지 않은 불필요한 증가가 회피된다.As described above in section 4.2, the decoder 600 uses block 602 only if the a-priori determined variance of the values of the samples in reference block 216 of picture 215 exceeds a predetermined threshold. to 606) may be configured to support the availability of coding modes indicated by. Otherwise, the double segmentation found by thresholding will most likely not form a good predictor for the appearance of block 210 of the depth/disparity map, and thus this coding mode will not allow such a block. can By suppressing the modal possibilities, an unprofitable and unnecessary increase in the number of symbol values of each coding option identifier for which the entropy probability estimate has to be considered is avoided.

도 22에 따르면, 다음의 정보: 1) 단계(602-604)를 트리거하는 각각의 미리 정해진 상태를 가진 코딩 옵션 식별자, 2) 선택적으로, 임계 후속 필터링/홀 필링 지향성(directivities) 등과 같은 이중 세그먼테이션을 스티어링(steering)하는 정보, 3) 선택적으로, 이웃한 샘플/블록으로부터 공간적 또는 시간적으로 예측되도록 허용될 수 있기 때문에 선택적으로 하나 또는 두 분할(202a, 202b)에 대해 CPV 또는 CPV 잔여와 같은 코딩 파라미터, 4) 선택적으로, DeltaCPV와 같은 코딩 파라미터 잔여는 블록(210)에 대한 데이터 스트림에 제공될 수 있다.According to Fig. 22, the following information: 1) coding option identifiers with respective pre-determined states triggering steps 602-604, 2) optionally, dual segmentation such as threshold post filtering/hole filling directivities, etc. 3) Optionally, coding such as CPV or CPV residuals for one or both partitions 202a, 202b, since they may be allowed to be spatially or temporally predicted from neighboring samples/blocks. Parameter, 4) Optionally, a coding parameter residual, such as DeltaCPV, may be provided in the data stream for block 210.

도 16, 도 18 및 도 20의 실시예에 대하여 위에서 언급된 모든 추가의 변형은 또한 도 22의 실시예에 적용 가능하다. 이것은 디코더(600)의 예측 루프에서 참조의 일부, 및 섹션 5.1 내지 5.3 중 어느 하나에서 또는 섹션 3 내지 4에서 상술한 변형에 대해 설명된 어떤 다른 코딩 모드와 도 22의 코딩 모드를 조합하는 가능성으로서 예측 결과의 이용에 특히 사실이다. All further variations mentioned above with respect to the embodiment of FIGS. 16 , 18 and 20 are also applicable to the embodiment of FIG. 22 . 22 as part of the reference in the predictive loop of the decoder 600, and the possibility of combining the coding mode of FIG. This is especially true for the use of prediction results.

도 23은 도 22의 디코더에 맞는 인코더에 대한 가능한 구성을 도시한다. 도 23의 인코더는 일반적으로 참조 부호(630)로 나타내고, 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 데이터 스트림(304)으로 인코딩하도록 구성된다. 인코더는 데이터 스트림(304)의 이전에 인코딩된 부분의 내부적으로 재구성된 버전에서 동작하는 도 22의 구성 요소(602 및 604) 처럼 동작하는 세그먼터(632) 및 공간 이송기(634)를 포함한다. 인코더(636)는 생성된 분할의 단위로 미리 정해진 블록을 인코딩한다.FIG. 23 shows a possible configuration for an encoder that fits the decoder of FIG. 22 . The encoder of FIG. 23 is indicated generally by reference numeral 630 and is configured to encode a predetermined block of a depth/disparity map associated with a picture into a data stream 304 . The encoder includes a segmenter 632 and a spatial transferor 634 that operate like components 602 and 604 of FIG. 22 operating on an internally reconstructed version of a previously encoded portion of the data stream 304. . Encoder 636 encodes a predetermined block in units of generated divisions.

5.5 픽처의 참조 블록 내의 샘플 값 분산에 대해 픽처에서 깊이/변이 맵으로의 이중 세그먼테이션 이송의 가용성의 종속성5.5 Dependence of availability of double segmentation transfer from picture to depth/disparity map on distribution of sample values within a picture's reference block

아래에 설명되는 실시예를 기본으로 하는 아이디어, 즉 깊이/변이 맵의 현재 블록으로의 이중 세그먼테이션의 후속 이송으로 픽처 내의 공동 위치의 참조 블록에 기초하는 이중 세그먼테이션의 도출이 깊이/변이 맵의 현재 블록의 콘텐츠의 양호한 근사치를 달성하는 가능성이 이러한 이중 세그먼테이션 이송 모드를 트리거하기 위해 대응하는 코딩 옵션 식별자의 각각의 미리 결정된 값의 예약을 정당화할 정도로 충분히 높을 경우에만 타당하다는 아이디어는 섹션 4.2에서 이미 상술되었다. 다시 말하면, 각각의 이중 세그먼테이션 이송이 하여간 선택되지 않을 가능성이 높은 경우에 이러한 코딩 옵션 식별자를 엔트로피 코딩할 때 깊이/변이 맵의 현재 블록에 대한 코딩 옵션 식별자의 각각의 미리 결정된 값을 고려할 필요성을 회피함으로써 보조 정보 레이트는 저장될 수 있다.The idea underlying the embodiment described below, that is, the derivation of double segmentation based on co-located reference blocks in the picture with subsequent transfer of double segmentation into the current block of the depth/disparity map, is the current block of the depth/disparity map. The idea that it is valid only if the probability of achieving a good approximation of the contents of s is high enough to justify the reservation of each predetermined value of the corresponding coding option identifier to trigger this dual segmentation transfer mode was already specified in section 4.2. . In other words, avoiding the need to consider each predetermined value of the coding option identifier for the current block of the depth/disparity map when entropy coding these coding option identifiers in the case where each double segmentation transport is highly unlikely to be selected anyway. By doing so, the auxiliary information rate can be saved.

따라서, 도 22의 디코더(600)의 수정된 실시예에 따르면, 디코더는 일반적으로 도 20의 디코더와 유사하게 구성되기 때문에, 디코더(600)의 가능한 구현이 일반적으로 관계되는 한 위의 설명에 대한 참조가 행해맵록 한다. 그러나, 세그먼터(602)는 참조 블록(216)을 웨지렛 분할로가 아니라 윤곽선 분할로 세그먼트하기 위해 구성되도록 제한되지 않는다. 오히려, 세그먼터(602)는 제 1 및 제 2 분할로의 참조 블록의 이중 세그먼테이션을 획득하기 위해 참조 블록(216) 내의 픽

Figure 112022024779445-pat00048
픽처(215)의 텍스처 특징에 따라 픽처(215)의 참조 블록(216)을 세그먼트하도록 단순히 구성된다. 예를 들면, 이러한 수정된 실시예에 따라, 세그먼터(602)는 웨지렛 분리 라인의 가능한 확장 방향을 검출하기 위해 에지 검출을 이용하여, 이와 같이 위치된 라인을 공간 이송기(604)에 의해 블록(216)에서 공간적으로 깊이/변이 블록(210)으로 이송할 수 있다. 세그먼터(602)에 의한 다른 가능한 이중 세그먼테이션이 또한 실현 가능하다.Accordingly, according to a modified embodiment of the decoder 600 of FIG. 22, since the decoder is generally constructed similarly to the decoder of FIG. Let the reference be done. However, the segmenter 602 is not limited to be configured to segment the reference block 216 with a contour segment rather than a Wedgelet segment. Rather, segmenter 602 selects a pick in reference block 216 to obtain a double segmentation of the reference block into first and second splits.
Figure 112022024779445-pat00048
It is simply configured to segment the reference block 216 of the picture 215 according to the texture characteristics of the picture 215 . For example, according to this modified embodiment, the segmenter 602 uses edge detection to detect the possible direction of extension of the wedgelet separation line, and places the line thus positioned by the spatial transferor 604. From block 216 we can transfer spatially to depth/disparity block 210. Other possible double segmentation by segmenter 602 is also feasible.

그러나, 그 외에도, 디코더(600)는, 본 실시예에 따라, 세그먼터(602)에 의한 세그먼테이션, 공간 이송기(604)에 의한 공간적 이송 및 디코딩이 디코더(600)의 코딩 옵션의 제 2 세트의 부분이 아닌 디코더(600)의 코딩 옵션의 제 1 세트 중 하나를 형성하도록 구성되며, 디코더는, 픽처(215)의 참조 블록(216) 내의 샘플의 값의 분산을 결정하고, 데이터 스트림(304)으로부터 코딩 옵션 식별자를 검색하며, 박스(602 내지 606) 내에서 인덱스가 하나의 코딩 옵션을 가리킬 경우에 미리 정해진 블록(210) 상으로의 세그먼테이션, 공간적 이송 및 디코딩의 수행으로 분산이 미리 정해진 임계값을 초과하는 경우에는 코딩 옵션의 제 1 세트로의 인덱스, 및 분산이 미리 정해진 임계값을 계승하는 경우에는 코딩 옵션의 제 2 세트로의 인덱스로서 코딩 옵션 식별자를 이용하도록 더 구성된다. 따라서, 코딩 옵션 식별자를 시그널링하기 위한 시그널링 오버헤드가 저장될 수 있다. 분산으로서, 평균 절대 차이, 표준 편차 또는 변동량이 이용될 수 있다.However, in addition to that, the decoder 600, according to the present embodiment, segmentation by the segmenter 602, spatial transfer by the spatial transferor 604, and decoding the second set of coding options of the decoder 600 and form one of a first set of coding options of a decoder (600) that is not part of , the decoder determines the variance of the values of the samples in the reference block (216) of the picture (215), and the data stream (304). ), and if the index in the boxes 602 to 606 points to one coding option, the variance is determined by performing segmentation, spatial transfer, and decoding on the predetermined block 210 to a predetermined threshold. and use the coding option identifier as an index into a first set of coding options if the value exceeds the value, and an index into a second set of coding options if the variance inherits the predetermined threshold. Accordingly, signaling overhead for signaling a coding option identifier can be saved. As the variance, mean absolute difference, standard deviation or variance can be used.

도 22의 방금 언급된 수정의 실시예의 추가 수정에 대하여, 섹션 5.4 및 섹션 4.2에 대한 설명에 대한 참조가 행해진다.For a further modification of the just-mentioned modified embodiment of Fig. 22, reference is made to the descriptions of Sections 5.4 and 4.2.

대응하는 인코더는 도 23의 인코더로부터 도출될 수 있다.The corresponding encoder can be derived from the encoder in FIG. 23 .

5.6. 이웃한 샘플로부터의 하나 또는 두 일정한 분할 값의 예측을 이용한 이중 분할에 의한 효과적인 예측5.6. Effective prediction by double splitting using prediction of one or two constant split values from neighboring samples

지금까지 설명된 다양한 실시예와 관련하여 이미 상술한 바와 같이, 일정한 분할 값을 블록의 이중 분할의 분할에 할당함으로써 현재 블록을 예측하는 방법은 특히 깊이/변이 맵과 같은 코딩 샘플 어레이의 경우에 매우 효과적이며, 이러한 샘플 어레이의 콘텐츠는 대부분 급격한 에지에 의해 서로 분리되는 비슷한 값의 플래토 또는 단순 연결된 영역으로 구성된다. 그럼에도 불구하고, 이러한 일정한 분할 값의 전송 조차도 회피되어야 하는 상당량의 보조 정보를 필요로 한다.As already described above in connection with the various embodiments described so far, the method of predicting the current block by assigning a constant split value to a split of a double split of a block is very useful, especially in the case of coding sample arrays such as depth/disparity maps. Effectively, the content of these sample arrays consists mostly of plateaus or simply connected regions of similar value separated from each other by sharp edges. Nonetheless, even the transmission of these constant partition values requires a significant amount of ancillary information that must be avoided.

아래에 더 설명되는 실시예를 기본으로 하는 아이디어는 각각의 분할과 관련되거나 인접한 이웃한 샘플의 값의 평균값이 일정한 분할 값에 대한 예측기로 이용되는 경우에 이러한 보조 정보 레이트가 감소될 수 있다는 것이다. 발명자는 샘플 어레이의 블록에 대한 이러한 코딩 모드가 심지어 각각의 일정한 분할 값의 리파인먼트의 시그널링을 남길 수 있다는 것을 발견하였다.The idea underlying the embodiment described further below is that this auxiliary information rate can be reduced if the average value of the values of the samples associated with each split or adjacent neighboring samples is used as a predictor for a given split value. The inventors have found that this coding mode for the blocks of the sample array can even leave signaling of the refinement of each constant division value.

도 24는 데이터 스트림(304)으로부터 샘플 어레이(302)를 재구성하기 위한 디코더(700)를 도시한다. 디코더(700)는 블록 기반의 디코딩을 이용하여 샘플 어레이(302)를 재구성하고, 하이브리드 디코딩을 이용하도록 구성될 수 있다. 일반적으로, 섹션 5.1 내지 5.5에서 상술한 모든 가능한 구현은 또한 도 24의 디코더(700)에 적용된다. 당연히, 현재 블록(210)을 2개의 분할로 분할하기 위한 가능한 모든 구현은 단지 이런 점에서 또한 서로 다르게 구현될 수 있는 도 700의 디코더에 대한 선택적인 대안을 나타낸다.24 shows a decoder 700 for reconstructing a sample array 302 from a data stream 304. The decoder 700 can be configured to reconstruct the sample array 302 using block-based decoding and to use hybrid decoding. In general, all possible implementations described above in Sections 5.1 to 5.5 also apply to the decoder 700 of FIG. 24 . Naturally, all possible implementations for splitting the current block 210 into two partitions represent alternative alternatives to the decoder of FIG. 700 that can only be implemented differently in this respect as well.

특히, 디코더(700)는 현재 블록(210)의 예측을 도출하기 위해 서로 다른 태스크 또는 기능을 수행하도록 구성된다. 특히, 디코더(700)는 해칭된(hatched) 샘플에 의해 예시되는 제 1 분할, 및 해칭되지 않은 샘플에 의해 예시되는 제 2 분할로의 샘플 어레이(302)의 미리 정해진 블록(210)의 이중 분할의 도출(702)을 수행하도록 구성된다. 더욱이, 디코더(700)는 각 이웃한 샘플이 관련되는 분할에 인접하도록 각각의 제 1 및 제 2 분할과, 미리 정해진 블록(210)에 인접한 샘플 어레이(302)의 이웃한 샘플의 각각의 관련(704)을 수행하도록 구성된다. 도 24에서, 관련(704)의 대상인 이웃한 샘플은 2개의 서로 다른 종류의 해칭, 즉 도트 해칭(dotted hatching) 및 크로스 해칭으로 예시된다. 도트 해칭은 블록(210)의 하나의 블록에 속하는 블록(210)의 샘플에 인접한 샘플을 나타내는 반면에, 크로스 해칭은 다른 블록에 속하는 블록(210)의 샘플에 인접한 샘플을 나타낸다. 섹션 5.1 내지 5.4에 대해 상술한 바와 같이, 디코더(700)에 의해 이미 재구성된 샘플 어레이(302)의 블록(303)의 이웃한 샘플의 가용성에 대한 높은 확률을 달성하기 위해 디코더(700)는 샘플 어레이(302)의 블록(303) 중에서 적절한 코딩/디코딩 순서를 이용할 수 있다.In particular, decoder 700 is configured to perform different tasks or functions to derive a prediction of current block 210 . In particular, the decoder 700 divides a predetermined block 210 of the sample array 302 into a dual division into a first division exemplified by hatched samples, and a second division exemplified by unhatched samples. is configured to perform derivation 702 of Moreover, the decoder 700 determines each of the first and second partitions such that each neighboring sample is adjacent to the partition to which it relates, and each association of neighboring samples of the sample array 302 adjacent to the predetermined block 210 ( 704). In FIG. 24 , neighboring samples that are the subject of association 704 are illustrated with two different kinds of hatching: dotted hatching and cross hatching. Dot hatching indicates samples adjacent to samples of block 210 belonging to one block of block 210, while cross hatching indicates samples adjacent to samples of block 210 belonging to another block. As described above with respect to Sections 5.1 to 5.4, in order to achieve a high probability of availability of a neighboring sample of block 303 of sample array 302 that has already been reconstructed by decoder 700, decoder 700 uses sample Any suitable coding/decoding order among the blocks 303 of the array 302 may be used.

물론, 이용 가능한 이웃한 샘플, 즉 샘플 어레이(302)의 이미 재구성된 블록(303) 내에 위치된 블록(210)의 이웃한 샘플은 단순히 블록(210)의 분할 중 하나에 연결한다는 것이 발생할 수 있다. 그 경우에, 데이터 스트림(304)은 이웃한 샘플의 어떤 것도 인접하지 않는 각각의 다른 분할에 대한 일정한 분할 값을 명시적으로 전송할 수 있다. 대안적으로, 일부 다른 고장 대체 절차(fallback procedure)는 그 경우에 디코더(700)에 의해 수행될 수 있다. 예를 들면, 디코더(700)는, 그 경우에, 이러한 누락한(missing) 일정한 분할 값을 미리 결정된 값, 또는 샘플 어레이(302) 및/또는 일부 다른 이전에 재구성된 샘플 어레이의 이전에 재구성된 값 중에서 장기 평균(long-term mean)으로부터 결정된 값으로 설정할 수 있다.Of course, it may happen that an available neighboring sample, i.e., a neighboring sample of block 210 located within already reconstructed block 303 of sample array 302, simply connects to one of the partitions of block 210. . In that case, data stream 304 may explicitly transmit a constant partition value for each other partition in which none of the neighboring samples are contiguous. Alternatively, some other fallback procedure may be performed by the decoder 700 in that case. For example, decoder 700 may, in that case, convert this missing constant split value to a predetermined value, or to a previously reconstructed sample array of sample array 302 and/or some other previously reconstructed sample array. Among the values, it can be set to a value determined from a long-term mean.

마지막으로, 예측(706)에서, 디코더(700)는 제 1 분할과 관련된 이웃한 샘플의 값의 평균값을 제 1 분할 내에 위치된 샘플 어레이의 샘플에 할당하고/하거나, 제 2 분할과 관련된 이웃한 샘플의 값의 평균값을 제 2 분할 내에 위치된 샘플 어레이의 샘플에 할당함으로써 미리 정해진 블록(210)을 예측한다. Finally, in prediction 706, the decoder 700 assigns the average value of the values of neighboring samples associated with the first partition to the samples in the sample array located within the first partition and/or the neighboring samples associated with the second partition. A predetermined block 210 is predicted by assigning the average value of the values of the samples to the samples of the sample array located in the second partition.

디코더(700)는, 데이터 스트림 내에서 리파인먼트 정보를 이용하여, 즉 리파인먼트 정보 내의 제 1 리파인먼트 값을 제 1 분할과 관련된 이웃한 샘플의 값의 평균값에 적용하고/하거나, 리파인먼트 정보 내의 제 2 리파인먼트 값을 제 2 분할과 관련된 이웃한 샘플의 값의 평균값에 적용함으로써 미리 정해진 블록(210)의 예측을 정제하도록 구성될 수 있다. 이와 관련하여, 디코더(700)는, 제 1 및/또는 제 2 리파인먼트 값을 적용할 시에, 제각기 제 1 분할과 관련된 이웃한 샘플의 값의 평균값, 및/또는 제 2 분할과 관련된 이웃한 샘플의 값의 평균값과 제 1 및/또는 제 2 리파인먼트 값을 부가하는 것과 같이 선형적으로 조합하도록 더 구성될 수 있다. 디코더(700)는, 제 1 및/또는 제 2 리파인먼트 값을 적용할 시에, 데이터 스트림으로부터 제 1 및/또는 제 2 리파인먼트 값을 검색하고, 샘플 어레이와 관련되는 미리 정해진 공간적 샘플링된 구성 요소, 즉 텍스처 및/또는 깊이/맵이 데이터 스트림 내에 전송되는 참조 양자화 스텝 크기에 따라 양자화 스텝 크기를 이용하여 검색될 시에 제 1 및/또는 제 2 리파인먼트 값을 스케일링하도록 구성될 수 있다. 샘플 어레이는, 예를 들어, 깊이 맵일 수 있지만, 참조 양자화 스텝 크기는 디코더(700)에 의해 깊이 맵이 관련된 비트스트림으로부터 텍스처 샘플 어레이를 재구성하기 위해 이용될 수 있다. 더욱이, 더 상세 사항을 위해 섹션 3.3.2에서의 각각의 부분에 대한 추가적인 참조가 행해진다.The decoder 700 uses the refinement information in the data stream, i.e., applies a first refinement value in the refinement information to an average value of values of neighboring samples associated with the first partition, and/or It may be configured to refine the prediction of the predetermined block 210 by applying a second refinement value to an average value of values of neighboring samples associated with the second partition. In this regard, the decoder 700, when applying the first and/or second refinement values, respectively, averages the values of the neighboring samples associated with the first partition and/or the neighboring samples associated with the second partition. It may be further configured to combine linearly, such as by adding the average value of the values of the samples and the first and/or second refinement values. The decoder (700), upon applying the first and/or second refinement values, retrieves the first and/or second refinement values from the data stream, and a predetermined spatially sampled configuration associated with the sample array. It may be configured to scale the first and/or second refinement values when the elements, ie texture and/or depth/map, are retrieved using the quantization step size according to the reference quantization step size transmitted in the data stream. The sample array can be, for example, a depth map, but the reference quantization step size can be used by the decoder 700 to reconstruct a texture sample array from the bitstream to which the depth map is associated. Moreover, further reference is made to the respective parts in section 3.3.2 for further details.

디코더는, 제 1 및 제 2 분할로의 샘플 어레이의 미리 정해진 블록의 이중 분할을 도출할 시에, 예측된 위치에서의 웨지렛 분리 라인이 미리 정해진 블록으로 이웃한 블록의 웨지렛 분리 라인의 확장을 형성하도록 미리 정해진 블록의 이웃한 블록의 웨지렛 분리 라인에 따라 샘플 어레이의 미리 정해진 블록 내의 웨지렛 분리 라인의 위치를 예측하도록 구성된다. 디코더는 데이터 스트림 내의 리파인먼트 정보를 이용하여 웨지렛 분리 라인의 예측된 위치를 정제하도록 더 구성되며, 미리 정해진 블록의 웨지렛 분리 라인은 미리 정해진 블록을 제 1 및 제 2 분할로 나눈다.The decoder, when deriving the double division of the predetermined block of the sample array into the first and second divisions, the Wedgelet separation line at the predicted position is an extension of the Wedgelet separation line of the neighboring block into the predetermined block and predict a position of a Wedgelet separation line in a predetermined block of the sample array according to a Wedgelet separation line of a neighboring block of the predetermined block to form . The decoder is further configured to use the refinement information in the data stream to refine a predicted position of the wedgelet separation line, wherein the wedgelet separation line of the predetermined block divides the predetermined block into first and second divisions.

상술한 바와 같이, 디코더(700)는 섹션 5.1 내지 5.5에 설명된 어떤 아이디어를 이용하여 이중 세그먼테이션을 행할 수 있다. 인트라 예측 방향을 따라 제 1 블록에 이웃한 샘플 어레이의 샘플의 재구성된 값을 참조 블록에 복사하여 참조 블록을 필링함으로써 디코더(700)는 인트라 예측을 이용하여 미리 정해진 블록(210)에 이웃한 샘플 어레이(302)의 참조 블록을 예측하도록 구성될 수 있다. 제 1 및 제 2 분할로의 샘플 어레이의 미리 정해진 블록의 이중 분할을 도출할 시에, 디코더(700)는 인트라 예측 방향에 따라 미리 정해진 블록 내에 웨지렛 분리 라인의 확장 방향을 설정함으로써 미리 정해진 블록(210) 내의 웨지렛 분리 라인의 위치를 예측할 수 있으며, 웨지렛 분리 라인은 미리 정해진 블록을 제 1 및 제 2 분할로 나눈다.As mentioned above, decoder 700 can do double segmentation using some of the ideas described in Sections 5.1-5.5. By filling the reference block by copying the reconstructed values of samples of the sample array adjacent to the first block along the intra-prediction direction to the reference block, the decoder 700 obtains samples adjacent to the predetermined block 210 using intra prediction. It can be configured to predict the reference block of array 302 . When deriving the dual division of the predetermined block of the sample array into the first and second divisions, the decoder 700 sets the extension direction of the wedgelet separation line within the predetermined block according to the intra prediction direction to obtain the predetermined block. The position of the wedgelet separation line within 210 can be predicted, which divides the predetermined block into first and second divisions.

대안적으로, 제 1 미리 정해진 분할로의 참조 블록의 이중 세그먼테이션을 획득하고, 제 1 및 제 2 분할을 획득하기 위해 깊이/변이 맵의 미리 정해진 블록 상으로 픽처의 참조 블록의 이중 세그먼테이션을 공간적으로 이송하도록 참조 블록 내의 픽처를 임계화함으로써 디코더(700)는 샘플 어레이(302)가 픽처와 관련된 깊이/변이 맵인 경우, 미리 정해진 블록(210)에 동일 위치된 픽처의 참조 블록을 세그먼트하도록 구성될 수 있다. Alternatively, obtain a double segmentation of the reference block into a first predetermined division, and spatially perform the double segmentation of the reference block of the picture onto a predetermined block of the depth/disparity map to obtain the first and second divisions. By thresholding the pictures within the reference block to transfer, the decoder 700 can be configured to segment the reference block of the co-located picture into a predetermined block 210 if the sample array 302 is a depth/disparity map associated with the picture. have.

디코더는 디코더의 예측 루프의 참조로서 미리 정해진 블록을 이용하도록 더 구성될 수 있다.The decoder may be further configured to use the predefined block as a reference for the decoder's prediction loop.

도 25는 도 24의 디코더(700)에 맞는 인코더(730)에 대한 가능한 실시예를 도시한다. 샘플 어레이를 데이터 스트림으로 인코딩하기 위한 인코더(730)는 제 1 및 제 2 분할로의 샘플 어레이의 미리 정해진 블록의 이중 분할을 도출하고(732), 각 이웃한 샘플이 관련되는 분할에 인접하도록 각각의 제 1 및 제 2 분할과, 미리 정해진 블록에 인접한 샘플 어레이의 이웃한 샘플의 각각을 관련시키도록(734) 구성된다. 인코더는 제 1 분할과 관련된 이웃한 샘플의 값의 평균값을 제 1 분할 내에 위치된 샘플 어레이의 샘플에 할당하고, 제 2 분할과 관련된 이웃한 샘플의 값의 평균값을 제 2 분할 내에 위치된 샘플 어레이의 샘플에 할당함으로써 미리 정해진 블록을 예측하도록(736) 더 구성된다. FIG. 25 shows a possible embodiment for an encoder 730 that fits the decoder 700 of FIG. 24 . An encoder (730) for encoding the sample array into a data stream derives (732) a dual partition of a predetermined block of the sample array into first and second partitions, each such that each neighboring sample is adjacent to the associated partition. and associate 734 each of the neighboring samples of the array of samples adjacent to the predetermined block with the first and second divisions of . The encoder assigns the average value of the values of neighboring samples associated with the first partition to the samples in the sample array located within the first partition, and assigns the average value of the values of neighboring samples associated with the second partition to the sample array located within the second partition. It is further configured to predict 736 the predetermined block by assigning to samples of .

일부 양태가 장치와 관련하여 설명되었지만, 이러한 양태는 또한 대응하는 방법의 설명을 나타내는 것이 자명하며, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게는, 방법 단계와 관련하여 설명된 양태는 또한 대응하는 블록 또는 대응하는 장치의 항목 또는 특징의 설명을 나타낸다. 방법 단계의 일부 또는 모두는 예를 들어 마이크로 프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로처럼 하드웨어 장치에 의해(또는 이용하여) 실행될 수 있다. 일부 실시예에서, 가장 중요한 방법 단계 중 일부 하나 이상은 이러한 장치에 의해 실행될 수 있다.Although some aspects have been described in relation to apparatus, it is self-evident that these aspects also represent a description of a corresponding method, wherein a block or apparatus corresponds to a method step or feature of a method step. Similarly, an aspect described in connection with a method step also represents a description of a corresponding block or item or feature of a corresponding apparatus. Some or all of the method steps may be executed by (or using) a hardware device, such as, for example, a microprocessor, programmable computer, or electronic circuitry. In some embodiments, some one or more of the most important method steps may be performed by such an apparatus.

어떤 구현 요구 사항에 따라, 본 발명의 실시예는 하드웨어 또는 소프트웨어로 구현될 수 있다. 이러한 구현은 디지털 저장 매체, 예를 들어 플로피 디스크, DVD, 블루레이, CD, ROM, PROM, EPROM, EEPROM 또는 FLASH 메모리를 이용하여 수행 될 수 있으며, 이러한 매체는 이에 저장된 전자식으로 판독 가능한 제어 신호를 가지며, 이러한 신호는 각각의 방법이 수행되도록 프로그래밍 가능한 컴퓨터 시스템과 협력한다(또는 협력할 수 있다). 따라서, 디지털 저장 매체는 컴퓨터 판독 가능할 수 있다.Depending on certain implementation requirements, embodiments of the present invention may be implemented in hardware or software. Such an implementation may be performed using a digital storage medium, for example a floppy disk, DVD, Blu-ray, CD, ROM, PROM, EPROM, EEPROM or FLASH memory, which medium has electronically readable control signals stored therein. and these signals cooperate (or may cooperate) with a programmable computer system to perform each method. Accordingly, a digital storage medium may be computer readable.

본 발명에 따른 일부 실시예는 여기에 설명된 방법 중 하나가 수행되도록 프로그램 가능한 컴퓨터 시스템과 협력할 수 있는 전자식으로 판독 가능한 제어 신호를 갖는 데이터 캐리어를 포함한다.Some embodiments according to the present invention include a data carrier having electronically readable control signals capable of cooperating with a programmable computer system to perform one of the methods described herein.

일반적으로, 본 발명의 실시예는 프로그램 코드를 가진 컴퓨터 프로그램 제품으로 구현될 수 있으며, 프로그램 코드는 컴퓨터 프로그램 제품이 컴퓨터에서 실행될 때 방법 중 하나를 수행하기 위해 동작한다. 프로그램 코드는 예를 들어 머신 판독 가능한 캐리어 상에 저장될 수 있다.Generally, an embodiment of the invention may be implemented as a computer program product having program code, which program code operates to perform one of the methods when the computer program product is executed on a computer. The program code may be stored, for example, on a machine readable carrier.

다른 실시예는 여기에 설명되고, 머신 판독 가능한 캐리어 상에 저장된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다.Another embodiment includes a computer program for performing one of the methods described herein and stored on a machine readable carrier.

그래서, 다시 말하면, 본 발명의 방법의 실시예는 컴퓨터 프로그램이 컴퓨터 상에서 실행할 때 여기에 설명된 방법 중 하나를 수행하기 위해 프로그램 코드를 갖는 컴퓨터 프로그램이다.So, in other words, an embodiment of the method of the present invention is a computer program having program code to perform one of the methods described herein when the computer program runs on a computer.

그래서, 본 발명의 방법의 추가의 실시예는 데이터 캐리어 상에 기록되어 여기에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함하는 데이터 캐리어(또는 디지털 저장 매체, 또는 컴퓨터 판독 가능한 매체)이다. 데이터 캐리어, 디지털 저장 매체 또는 기록된 매체는 통상적인 유형 및/또는 비과도기적(tangible and/or non-transitionary)이다.Thus, a further embodiment of the method of the present invention is a data carrier (or digital storage medium, or computer readable medium) recorded on the data carrier and containing a computer program for performing one of the methods described herein. Data carriers, digital storage media or recorded media are typically tangible and/or non-transitionary.

그래서, 본 발명의 추가의 실시예는 데이터 스트림, 또는 여기에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타내는 신호의 시퀀스이다. 데이터 스트림 또는 신호의 시퀀스는 예를 들어 인터넷을 통해 예를 들어 데이터 통신 연결을 통해 이송되도록 구성될 수 있다.Thus, a further embodiment of the present invention is a data stream, or sequence of signals representing a computer program for performing one of the methods described herein. A data stream or sequence of signals may be configured to be transported over a data communication connection, for example via the Internet, for example.

추가의 실시예는 처리 수단, 예를 들어 여기에 설명된 방법 중 하나를 수행하도록 구성되거나 적응되는 컴퓨터, 또는 프로그램 가능한 논리 장치를 포함한다. Additional embodiments include processing means, for example a computer configured or adapted to perform one of the methods described herein, or a programmable logic device.

추가의 실시예는 여기에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 설치한 컴퓨터를 포함한다.A further embodiment includes a computer having installed a computer program for performing one of the methods described herein.

본 발명에 따른 추가의 실시예는 여기에 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 (예를 들어, 전자식 또는 광학식으로) 수신기로 이송하도록 구성된 장치 또는 시스템을 포함한다. 수신기는, 예를 들어, 컴퓨터, 모바일 장치, 메모리 장치 등일 수 있다. 장치 또는 시스템은, 예를 들어, 컴퓨터 프로그램을 수신기로 이송하기 위한 파일 서버를 포함할 수 있다.A further embodiment according to the present invention includes an apparatus or system configured to transfer (e.g., electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may be, for example, a computer, mobile device, memory device, or the like. The device or system may include, for example, a file server for transferring computer programs to receivers.

일부 실시예에서, 프로그램 가능한 논리 장치(예를 들어 필드 프로그램 가능한 게이트 어레이)는 여기에 설명된 방법의 기능의 일부 또는 모두를 수행하기 위해 이용될 수 있다. 일부 실시예에서, 필드 프로그램 가능한 게이트 어레이는 여기에 설명된 방법 중 하나를 수행하기 위해 마이크로 프로세서와 협력할 수 있다. 일반적으로, 방법은 바람직하게는 어떤 하드웨어 장치에 의해 수행된다.In some embodiments, a programmable logic device (eg, a field programmable gate array) may be used to perform some or all of the functions of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor to perform one of the methods described herein. Generally, the method is preferably performed by some hardware device.

상술한 실시예는 단지 본 발명의 원리에 대해 예시적이다. 여기에 설명된 배치 및 상세 사항의 수정 및 변형은 당업자에게 자명할 것으로 이해된다. 그래서, 여기서 실시예의 설명에 의해 제시된 특정 상세 사항에 의해 제한되지 않고, 첨부한 특허 청구 범위에 의해서만 제한되도록 의도된다.The foregoing embodiments are merely illustrative of the principles of the present invention. It is understood that modifications and variations of the arrangements and details described herein will be readily apparent to those skilled in the art. Thus, it is intended not to be limited by the specific details presented by the description of the embodiments herein, but only by the appended claims.

Claims (24)

데이터 스트림으로부터 텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 재구성하기 위한 디코더로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하고, - 상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨 -
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 상기 텍스처 임계치를 사용하여 상기 참조 블록 내의 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하고,
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하며,
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 디코딩하도록 구성되는 디코더.
A decoder for reconstructing a predetermined block of a depth / disparity map associated with a texture picture from a data stream,
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
Segmenting the reference block of the texture picture by thresholding the texture picture in the reference block using the texture threshold to obtain a double segmentation of the reference block into first and second divisions;
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block;
A decoder configured to decode the predetermined block in units of the first and second divisions.
제 1 항에 있어서,
상기 텍스처 픽처의 상기 참조 블록의 상기 제 1 및 제 2 분할의 각각이 상기 텍스처 픽처의 상기 참조 블록을 서로 완전히 커버하고, 서로에 상보적인 타일의 세트이도록, 임계화할 시에, 각각의 값이 미리 정해진 값보다 큰지 작은지에 대해 상기 참조 블록의 2차원 세분의 상기 타일에서 상기 참조 블록 내의 상기 텍스처 픽처의 값을 개별적으로 검사하도록 구성되는 디코더.
According to claim 1,
When thresholding such that each of the first and second partitions of the reference block of the texture picture is a set of tiles that completely cover the reference block of the texture picture from each other and are complementary to each other, each value is set in advance. A decoder configured to individually check the value of the texture picture in the reference block in the tile of the two-dimensional subdivision of the reference block for greater or less than a predetermined value.
제 2 항에 있어서,
임계화할 시에, 각 타일이 상기 참조 블록의 샘플 위치에 대응하도록 샘플 해상도에서 상기 참조 블록 내의 상기 텍스처 픽처의 값을 개별적으로 검사하도록 구성되는 디코더.
According to claim 2,
When thresholding, decoder configured to individually check the value of the texture picture in the reference block at a sample resolution such that each tile corresponds to a sample position of the reference block.
제 1 항에 있어서,
상기 제 1 및 제 2 분할로의 상기 참조 블록의 상기 이중 세그먼테이션을 획득하기 위해 세그먼트할 시에 형태학 홀 필링 및/또는 저역 통과 필터링을 상기 임계화의 결과에 적용하도록 구성되는 디코더.
According to claim 1,
and apply morphological hole filling and/or low pass filtering to a result of the thresholding when segmenting to obtain the double segmentation of the reference block into the first and second divisions.
제 1 항에 있어서,
임계화에서, 상기 텍스처 픽처의 상기 참조 블록의 재구성된 샘플 값의 중심 집중 경향에 대한 측정치를 결정하고, 상기 텍스처 픽처의 상기 참조 블록의 각 재구성된 샘플 값을 상기 결정된 측정치에 의존하는 각각의 임계값과 비교함으로써 상기 임계화를 수행하도록 구성되는 디코더.
According to claim 1,
In thresholding, determining a measure of the centroid tendency of reconstructed sample values of the reference block of the texture picture, and assigning each reconstructed sample value of the reference block of the texture picture to each threshold depending on the determined measure A decoder configured to perform the thresholding by comparing with a value.
제 1 항에 있어서,
상기 세그먼테이션, 공간적 이송 및 예측이 코딩 옵션의 제 2 세트의 부분이 아닌 코딩 옵션의 제 1 세트 중 하나를 형성하고 -상기 디코더는 상기 텍스처 픽처의 상기 참조 블록 내의 샘플의 값의 분산을 결정하도록 더 구성됨-,
상기 데이터 스트림으로부터 코딩 옵션 식별자를 수신하며, 또한
인덱스가 하나의 코딩 옵션을 가리킬 경우에 상기 미리 정해진 블록 상으로의 상기 세그먼테이션, 공간적 이송 및 예측의 수행으로 상기 분산이 미리 정해진 임계값을 초과하는 경우에는 코딩 옵션의 상기 제 1 세트로의 상기 인덱스, 및 상기 분산이 상기 미리 정해진 임계값을 계승하는 경우에는 코딩 옵션의 상기 제 2 세트로의 상기 인덱스로서 상기 코딩 옵션 식별자를 이용하도록 구성되는 디코더.
According to claim 1,
wherein the segmentation, spatial transfer and prediction form one of a first set of coding options that is not part of a second set of coding options, and the decoder is further configured to determine a variance of values of samples in the reference block of the texture picture. configured-,
Receive a coding option identifier from the data stream, and
The index into the first set of coding options if the variance exceeds a predetermined threshold by performing the segmentation, spatial transfer and prediction onto the predetermined block if the index points to one coding option. , and use the coding option identifier as the index into the second set of coding options if the variance inherits the predetermined threshold.
데이터 스트림으로부터 텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 재구성하기 위한 디코더로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하고 -상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨-,
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 엣지 디텍션을 사용하여 상기 참조 블록 내의 상기 텍스처 픽처의 텍스처 특징에 따라, 또는 상기 텍스처 임계치를 사용하여 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하고,
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하고,
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 디코딩하고, - 상기 디코더는 상기 세그먼테이션, 공간적 이송 및 디코딩이 상기 디코더의 코딩 옵션의 제 2 세트의 부분이 아닌 상기 디코더의 코딩 옵션의 제 1 세트 중 하나를 형성하도록 구성되고, 상기 디코더는 상기 텍스처 픽처의 상기 참조 블록 내의 샘플의 값의 분산을 결정하도록 더 구성됨-
상기 데이터 스트림으로부터 코딩 옵션 식별자를 검색하며,
인덱스가 하나의 코딩 옵션을 가리킬 경우에 상기 미리 정해진 블록 상으로의 상기 세그먼테이션, 공간적 이송 및 디코딩의 수행으로 상기 분산이 미리 정해진 임계값을 초과하는 경우에는 코딩 옵션의 상기 제 1 세트로의 상기 인덱스, 및 상기 분산이 상기 미리 정해진 임계값을 계승하는 경우에는 코딩 옵션의 상기 제 2 세트로의 인덱스로서 상기 코딩 옵션 식별자를 이용하도록 구성되는 디코더.
A decoder for reconstructing a predetermined block of a depth / disparity map associated with a texture picture from a data stream,
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
according to a texture feature of the texture picture in the reference block using edge detection, or by thresholding the texture picture using the texture threshold to obtain a double segmentation of the reference block into first and second divisions. , segment the reference block of the texture picture,
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block;
Decode the predetermined block in units of the first and second partitions, and - the decoder determines a first set of coding options of the decoder for which the segmentation, spatial transfer and decoding are not part of a second set of coding options of the decoder. 1 set, wherein the decoder is further configured to determine a variance of values of samples in the reference block of the texture picture-
Retrieve a coding option identifier from the data stream;
The index into the first set of coding options if the variance exceeds a predetermined threshold by performing the segmentation, spatial transfer and decoding onto the predetermined block if the index points to one coding option. , and use the coding option identifier as an index into the second set of coding options if the variance inherits the predetermined threshold.
제 7 항에 있어서,
상기 디코더는 엔트로피 디코딩에 의해 상기 코딩 옵션 식별자를 검색하도록 구성되는 디코더.
According to claim 7,
wherein the decoder is configured to retrieve the coding option identifier by entropy decoding.
제 1 항에 있어서,
상기 디코더의 예측 루프의 참조로서 상기 미리 정해진 블록을 이용하도록 더 구성되는 디코더.
According to claim 1,
The decoder is further configured to use the predetermined block as a reference for a prediction loop of the decoder.
제 7 항에 있어서,
상기 디코더의 예측 루프의 참조로서 상기 미리 정해진 블록을 이용하도록 더 구성되는 디코더.
According to claim 7,
The decoder is further configured to use the predetermined block as a reference for a prediction loop of the decoder.
제 1 항에 있어서,
상기 디코더는, 상기 미리 정해진 블록을 디코딩할 시에,
제 1 일정한 분할 값을 상기 제 1 분할 내에 위치된 샘플에 할당하고, 제 2 일정한 분할 값을 상기 제 2 분할 내에 위치된 샘플에 할당함으로써 상기 미리 정해진 블록을 예측하도록 구성되는 디코더.
According to claim 1,
The decoder, when decoding the predetermined block,
A decoder configured to predict the predetermined block by assigning a first constant division value to samples located within the first division and a second constant division value to samples located within the second division.
제 7항에 있어서,
상기 디코더는, 상기 미리 정해진 블록을 디코딩할 시에,
제 1 일정한 분할 값을 상기 제 1 분할 내에 위치된 샘플에 할당하고, 제 2 일정한 분할 값을 상기 제 2 분할 내에 위치된 샘플에 할당함으로써 상기 미리 정해진 블록을 예측하도록 구성되는 디코더.
According to claim 7,
The decoder, when decoding the predetermined block,
A decoder configured to predict the predetermined block by assigning a first constant division value to samples located within the first division and a second constant division value to samples located within the second division.
제 12항에 있어서,
상기 디코더는, 상기 미리 정해진 블록을 예측할 시에, 각 이웃한 샘플이 관련되는 분할에 인접하도록 각각의 상기 제 1 및 제 2 분할 중 하나와, 상기 미리 정해진 블록에 인접한 이웃한 샘플의 각각을 관련시키고, 상기 제 1 분할과 관련된 상기 이웃한 샘플의 값의 평균값을 상기 제 1 분할 내에 위치된 샘플에 할당하고, 상기 제 2 분할과 관련된 상기 이웃한 샘플의 값의 평균값을 상기 제 2 분할 내에 위치된 샘플에 할당함으로써 상기 미리 정해진 블록을 예측하도록 구성되는 디코더.
According to claim 12,
The decoder, in predicting the predetermined block, associates each of the neighboring samples adjacent to the predetermined block with each one of the first and second partitions such that each neighboring sample is adjacent to the partition to which it relates. assigning an average value of the values of the neighboring samples associated with the first partition to samples located in the first partition, and assigning an average value of values of the neighboring samples associated with the second partition to a sample located in the second partition A decoder configured to predict the predetermined block by assigning to the selected sample.
제 11 항에 있어서,
상기 디코더는, 리파인먼트 정보 내의 제 1 리파인먼트 값을 상기 제 1 분할과 관련된 이웃한 샘플의 값의 평균값에 적용하고/하거나, 상기 리파인먼트 정보 내의 제 2 리파인먼트 값을 상기 제 2 분할과 관련된 이웃한 샘플의 값의 평균값에 적용함으로써 상기 미리 정해진 블록의 상기 예측을 정제하도록 구성되는 디코더.
According to claim 11,
The decoder applies a first refinement value in the refinement information to an average value of values of neighboring samples associated with the first division, and/or applies a second refinement value in the refinement information to an average value of values of neighboring samples associated with the second division. A decoder configured to refine the prediction of the predetermined block by applying an average value of values of neighboring samples.
제 14 항에 있어서,
상기 제 1 및/또는 제 2 리파인먼트 값을 적용할 시에, 제각기 상기 제 1 분할과 관련된 상기 이웃한 샘플의 값의 상기 평균값, 및/또는 상기 제 2 분할과 관련된 상기 이웃한 샘플의 값의 상기 평균값과 상기 제 1 및/또는 제 2 리파인먼트 값을 선형적으로 조합하도록 구성되는 디코더.
15. The method of claim 14,
When applying the first and/or second refinement values, the average value of the values of the neighboring samples associated with the first division, respectively, and/or the values of the neighboring samples associated with the second division, respectively. A decoder configured to linearly combine the average value with the first and/or second refinement value.
제 14 항에 있어서,
상기 깊이/변이 맵은 깊이 맵이고, 상기 디코더는,
상기 제 1 및/또는 제 2 리파인먼트 값을 적용할 시에,
상기 깊이 맵과 관련되는 미리 정해진 공간적 샘플링된 구성 요소가 전송되는 참조 양자화 스텝 크기에 따라 양자화 스텝 크기를 이용하여 상기 제 1 및/또는 제 2 리파인먼트 값을 스케일링하고, 상기 깊이 맵이 관련되는 상기 데이터 스트림으로부터 텍스처 샘플 어레이를 재구성하기 위해 상기 참조 양자화 스텝 크기를 이용하도록 구성되는 디코더.
15. The method of claim 14,
The depth/disparity map is a depth map, and the decoder,
When applying the first and/or second refinement values,
scaling the first and/or second refinement values using a quantization step size according to a reference quantization step size to which a predetermined spatially sampled component associated with the depth map is transmitted; A decoder configured to use the reference quantization step size to reconstruct an array of texture samples from a data stream.
텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 데이터 스트림으로 인코딩하기 위한 인코더로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하고 -상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨-,
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 상기 텍스처 임계치를 사용하여 상기 참조 블록 내의 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하고,
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하며,
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 인코딩하도록 구성되는 인코더.
An encoder for encoding a predetermined block of a depth/disparity map associated with a texture picture into a data stream,
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
Segmenting the reference block of the texture picture by thresholding the texture picture in the reference block using the texture threshold to obtain a double segmentation of the reference block into first and second divisions;
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block;
An encoder configured to encode the predetermined block in units of the first and second divisions.
텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 데이터 스트림으로 인코딩하기 위한 인코더로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하고- 상기 참조 블록은 상기 미리 정해진 블록에 동일 위치됨 -,
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 엣지 디텍션을 사용하여 상기 참조 블록 내의 상기 텍스처 픽처의 텍스처 특징에 따라, 또는 상기 텍스처 임계치를 사용하여 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하고,
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하고,
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 인코딩하고 -상기 인코더는 상기 세그먼테이션, 공간적 이송 및 인코딩이 상기 인코더의 코딩 옵션의 제 2 세트의 부분이 아닌 상기 인코더의 코딩 옵션의 제 1 세트 중 하나를 형성하도록 구성되고, 상기 인코더는 상기 텍스처 픽처의 상기 참조 블록 내의 샘플의 값의 분산을 결정하도록 더 구성됨-,
코딩 옵션 식별자를 데이터 스트림으로 인코딩하며,
인덱스가 하나의 코딩 옵션을 가리킬 경우에 상기 미리 정해진 블록 상으로의 상기 세그먼테이션, 공간적 이송 및 인코딩의 수행으로 상기 분산이 미리 정해진 임계값을 초과하는 경우에는 코딩 옵션의 상기 제 1 세트로의 상기 인덱스, 및 상기 분산이 상기 미리 정해진 임계값을 계승하는 경우에는 코딩 옵션의 상기 제 2 세트로의 상기 인덱스로서 상기 코딩 옵션 식별자를 이용하도록 구성되는 인코더.
An encoder for encoding a predetermined block of a depth/disparity map associated with a texture picture into a data stream,
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
according to a texture feature of the texture picture in the reference block using edge detection, or by thresholding the texture picture using the texture threshold to obtain a double segmentation of the reference block into first and second divisions. , segment the reference block of the texture picture,
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block;
encodes the predetermined block in units of the first and second partitions, and the encoder determines a first set of coding options of the encoder in which the segmentation, spatial transfer and encoding are not part of a second set of coding options of the encoder. configured to form one of a set, wherein the encoder is further configured to determine a variance of values of samples in the reference block of the texture picture;
encodes a coding option identifier into a data stream;
The index into the first set of coding options if the variance exceeds a predetermined threshold by performing the segmentation, spatial transfer and encoding onto the predetermined block if the index points to one coding option. , and use the coding option identifier as the index into the second set of coding options if the variance inherits the predetermined threshold.
데이터 스트림으로부터 텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 재구성하기 위한 방법으로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하는 단계 - 상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨 -;
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 상기 텍스처 임계치를 사용하여 상기 참조 블록 내의 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하는 단계;
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하는 단계; 및
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 디코딩하는 단계를 포함하는 방법.
A method for reconstructing a predetermined block of a depth/disparity map associated with a texture picture from a data stream, comprising:
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
thresholding the texture picture within the reference block using the texture threshold to obtain a double segmentation of the reference block into first and second divisions, thereby segmenting the reference block of the texture picture;
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block; and
and decoding the predetermined block in units of the first and second divisions.
데이터 스트림으로부터 텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 재구성하기 위한 방법으로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하는 단계 - 상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨 -;
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 엣지 디텍션을 사용하여 상기 참조 블록 내의 상기 텍스처 픽처의 텍스처 특징에 따라, 또는 상기 텍스처 임계치를 사용하여 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하는 단계;
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하는 단계;
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 디코딩하는 단계 - 상기 방법은 상기 세그먼테이션, 공간적 이송 및 디코딩이 상기 방법의 코딩 옵션의 제 2 세트의 부분이 아닌 코딩 옵션의 제 1 세트 중 하나를 형성하도록 수행되고, 상기 방법은 상기 텍스처 픽처의 상기 참조 블록 내의 샘플의 값의 분산을 결정하도록 더 포함함 -
상기 데이터 스트림으로부터 코딩 옵션 식별자를 검색하는 단계,
인덱스가 하나의 코딩 옵션을 가리킬 경우에 상기 미리 정해진 블록 상으로의 상기 세그먼테이션, 공간적 이송 및 디코딩의 수행으로 분산이 미리 정해진 임계값을 초과하는 경우에는 코딩 옵션의 상기 제 1 세트로의 상기 인덱스, 및 상기 분산이 상기 미리 정해진 임계값을 계승하는 경우에는 코딩 옵션의 상기 제 2 세트로의 상기 인덱스로서 상기 코딩 옵션 식별자를 이용하는 단계를 포함하는 방법.
A method for reconstructing a predetermined block of a depth/disparity map associated with a texture picture from a data stream, comprising:
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
according to a texture feature of the texture picture in the reference block using edge detection, or by thresholding the texture picture using the texture threshold to obtain a double segmentation of the reference block into first and second divisions. , segmenting the reference block of the texture picture;
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block;
decoding the predetermined block in units of the first and second partitions, the method comprising: one of a first set of coding options wherein the segmentation, spatial transfer and decoding are not part of a second set of coding options of the method; one, the method further comprising determining a variance of values of samples in the reference block of the texture picture;
Retrieving a coding option identifier from the data stream;
The index into the first set of coding options if the variance exceeds a predetermined threshold by performing the segmentation, spatial transfer and decoding onto the predetermined block when the index points to one coding option; and using the coding option identifier as the index into the second set of coding options if the variance inherits the predetermined threshold.
텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 데이터 스트림으로 인코딩하기 위한 방법으로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하는 단계 - 상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨 -;
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 상기 텍스처 임계치를 사용하여 상기 참조 블록 내의 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하는 단계,
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하는 단계, 및
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 인코딩하는 단계를 포함하는 방법.
A method for encoding a predetermined block of a depth/disparity map associated with a texture picture into a data stream,
determining a texture threshold value based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
Segmenting the reference block of the texture picture by thresholding the texture picture within the reference block using the texture threshold to obtain a double segmentation of the reference block into first and second divisions;
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block; and
and encoding the predetermined block in units of the first and second divisions.
텍스처 픽처와 관련된 깊이/변이 맵의 미리 정해진 블록을 데이터 스트림으로 인코딩하기 위한 방법으로서,
상기 텍스처 픽처의 참조 블록의 샘플 값에 기반하여 텍스처 임계치를 결정하는 단계 - 상기 미리 정해진 블록에 상기 참조 블록이 동일 위치됨 -;
제 1 및 제 2 분할로의 상기 참조 블록의 이중 세그먼테이션을 획득하기 위해 엣지 디텍션을 사용하여 상기 참조 블록 내의 상기 텍스처 픽처의 텍스처 특징에 따라, 또는 상기 텍스처 임계치를 사용하여 상기 텍스처 픽처를 임계화함으로써, 상기 텍스처 픽처의 상기 참조 블록을 세그먼트하는 단계;
상기 미리 정해진 블록의 제 1 및 제 2 분할을 획득하기 위해 상기 텍스처 픽처의 상기 참조 블록의 상기 이중 세그먼테이션을 상기 깊이/변이 맵의 상기 미리 정해진 블록 상으로 공간적으로 이송하는 단계;
상기 제 1 및 제 2 분할의 단위로 상기 미리 정해진 블록을 인코딩하는 단계 - 상기 방법은 상기 세그먼테이션, 공간적 이송 및 인코딩이 상기 방법의 코딩 옵션의 제 2 세트의 부분이 아닌 상기 방법의 코딩 옵션의 제 1 세트 중 하나를 형성하도록 수행되고, 상기 방법은 상기 텍스처 픽처의 상기 참조 블록 내의 샘플의 값의 분산을 결정하는 단계를 더 포함함 -;
코딩 옵션 식별자를 상기 데이터 스트림으로 인코딩하는 단계; 및
인덱스가 하나의 코딩 옵션을 가리킬 경우에 상기 미리 정해진 블록 상으로의 상기 세그먼테이션, 공간적 이송 및 인코딩의 수행으로 상기 분산이 미리 정해진 임계값을 초과하는 경우에는 코딩 옵션의 상기 제 1 세트로의 상기 인덱스, 및 상기 분산이 상기 미리 정해진 임계값을 계승하는 경우에는 코딩 옵션의 상기 제 2 세트로의 상기 인덱스로서 상기 코딩 옵션 식별자를 이용하는 단계를 포함하는 방법.
A method for encoding a predetermined block of a depth/disparity map associated with a texture picture into a data stream,
determining a texture threshold based on a sample value of a reference block of the texture picture, wherein the reference block is co-located with the predetermined block;
according to a texture feature of the texture picture in the reference block using edge detection, or by thresholding the texture picture using the texture threshold to obtain a double segmentation of the reference block into first and second divisions. , segmenting the reference block of the texture picture;
spatially transferring the double segmentation of the reference block of the texture picture onto the predetermined block of the depth/disparity map to obtain first and second divisions of the predetermined block;
encoding the predetermined block in units of the first and second partitions - the method comprising the first of the coding options of the method wherein the segmentation, spatial transfer and encoding are not part of a second set of coding options of the method; 1 set, wherein the method further comprises determining a variance of values of samples in the reference block of the texture picture;
encoding a coding option identifier into the data stream; and
The index into the first set of coding options if the variance exceeds a predetermined threshold by performing the segmentation, spatial transfer and encoding onto the predetermined block if the index points to one coding option. , and using the coding option identifier as the index into the second set of coding options if the variance inherits the predetermined threshold.
컴퓨터 상에서 실행할 때 제19항에 따른 방법을 수행하기 위해 프로그램 코드를 갖는 컴퓨터 프로그램을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.A non-transitory computer-readable storage medium comprising a computer program having program code for performing the method according to claim 19 when run on a computer. 컴퓨터 상에서 실행할 때 제22항에 따른 방법을 수행하기 위해 프로그램 코드를 갖는 컴퓨터 프로그램을 포함하는 비일시적 컴퓨터 판독가능 저장 매체.

A non-transitory computer-readable storage medium comprising a computer program having program code for performing the method according to claim 22 when run on a computer.

KR1020227007636A 2011-11-11 2012-11-09 Adaptive partition coding KR102471528B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227041021A KR102588425B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161558631P 2011-11-11 2011-11-11
US61/558,631 2011-11-11
PCT/EP2012/072328 WO2013068566A1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020207030494A KR102373445B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207030494A Division KR102373445B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227041021A Division KR102588425B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding

Publications (2)

Publication Number Publication Date
KR20220035274A KR20220035274A (en) 2022-03-21
KR102471528B1 true KR102471528B1 (en) 2022-11-28

Family

ID=47178013

Family Applications (7)

Application Number Title Priority Date Filing Date
KR1020147015914A KR101663394B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020227041021A KR102588425B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020207030494A KR102373445B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020167026828A KR102036175B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020237034261A KR20230145540A (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020197030492A KR102171788B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020227007636A KR102471528B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding

Family Applications Before (6)

Application Number Title Priority Date Filing Date
KR1020147015914A KR101663394B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020227041021A KR102588425B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020207030494A KR102373445B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020167026828A KR102036175B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020237034261A KR20230145540A (en) 2011-11-11 2012-11-09 Adaptive partition coding
KR1020197030492A KR102171788B1 (en) 2011-11-11 2012-11-09 Adaptive partition coding

Country Status (15)

Country Link
US (7) US9756330B2 (en)
EP (4) EP2777285B1 (en)
JP (6) JP6084627B2 (en)
KR (7) KR101663394B1 (en)
CN (5) CN104221379B (en)
BR (2) BR112014011406B1 (en)
DK (1) DK2777285T3 (en)
ES (1) ES2647514T3 (en)
HK (1) HK1202202A1 (en)
HU (1) HUE034631T2 (en)
IN (1) IN2014KN01047A (en)
NO (1) NO2806722T3 (en)
PL (1) PL2777285T3 (en)
PT (1) PT2777285T (en)
WO (1) WO2013068566A1 (en)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2777286B1 (en) 2011-11-11 2017-01-04 GE Video Compression, LLC Effective wedgelet partition coding
CN104247427B (en) * 2011-11-11 2018-10-12 Ge视频压缩有限责任公司 device and method for coding and decoding
EP3468184B1 (en) 2011-11-11 2022-07-27 GE Video Compression, LLC Effective wedgelet partition coding using prediction
PT2777285T (en) 2011-11-11 2017-12-01 Ge Video Compression Llc Adaptive partition coding
WO2013129822A1 (en) * 2012-02-27 2013-09-06 세종대학교산학협력단 Image encoding and decoding apparatus, and image encoding and decoding method
KR20130098122A (en) * 2012-02-27 2013-09-04 세종대학교산학협력단 Device and method for encoding/decoding
US9781442B2 (en) * 2012-09-17 2017-10-03 Lg Electronics Inc. Method and apparatus for processing video signal
WO2014110452A1 (en) * 2013-01-11 2014-07-17 Futurewei Technologies Co., Ltd. Method and apparatus of depth prediction mode selection
CN104427291B (en) * 2013-08-19 2018-09-28 华为技术有限公司 A kind of image processing method and equipment
US9544601B2 (en) * 2013-10-15 2017-01-10 Qualcomm Incorporated Wedgelet pattern extension for depth intra coding
US9756359B2 (en) * 2013-12-16 2017-09-05 Qualcomm Incorporated Large blocks and depth modeling modes (DMM'S) in 3D video coding
US20150189269A1 (en) * 2013-12-30 2015-07-02 Google Inc. Recursive block partitioning
KR102105535B1 (en) * 2014-01-03 2020-04-29 지이 비디오 컴프레션, 엘엘씨 Wedgelet-based coding concept
US10368097B2 (en) 2014-01-07 2019-07-30 Nokia Technologies Oy Apparatus, a method and a computer program product for coding and decoding chroma components of texture pictures for sample prediction of depth pictures
KR102399593B1 (en) * 2014-06-18 2022-05-18 삼성전자주식회사 Multi-view image encoding/decoding methods and devices
CN106464908A (en) * 2014-06-20 2017-02-22 三星电子株式会社 Method and device for transmitting prediction mode of depth image for interlayer video encoding and decoding
US20170164004A1 (en) * 2014-07-04 2017-06-08 Kt Corporation Method and device for processing multi-view video signal
JP2017532871A (en) * 2014-09-30 2017-11-02 寰發股▲ふん▼有限公司HFI Innovation Inc. Lookup table size reduction method of depth modeling mode in depth coding
WO2016049891A1 (en) * 2014-09-30 2016-04-07 Mediatek Singapore Pte. Ltd. Methods on segmentation coding in intra prediction
WO2016049913A1 (en) * 2014-09-30 2016-04-07 Mediatek Singapore Pte. Ltd. A simplified method for the depth modeling modes
WO2016123783A1 (en) * 2015-02-05 2016-08-11 华为技术有限公司 Image prediction processing method and related device
CN105519110B (en) * 2015-02-05 2018-09-28 华为技术有限公司 Template processing method and relevant device
US20160277751A1 (en) * 2015-03-19 2016-09-22 Patrick J. Sweeney Packaging/mux and unpackaging/demux of geometric data together with video data
KR20180005186A (en) 2015-05-12 2018-01-15 삼성전자주식회사 Image decoding method and apparatus for performing intra prediction and image encoding method and apparatus for performing intra prediction
EP3273694A4 (en) * 2015-05-12 2018-04-25 Samsung Electronics Co., Ltd. Image decoding method for performing intra prediction and device thereof, and image encoding method for performing intra prediction and device thereof
CN105007494B (en) * 2015-07-20 2018-11-13 南京理工大学 Wedge-shaped Fractionation regimen selection method in a kind of frame of 3D video depths image
WO2017097441A1 (en) * 2015-12-07 2017-06-15 Huawei Technologies Co., Ltd. Devices and methods for video coding using intra prediction
EP3469793A1 (en) 2016-06-24 2019-04-17 Huawei Technologies Co., Ltd. Devices and methods for video coding using segmentation based partitioning of video coding blocks
WO2017220164A1 (en) 2016-06-24 2017-12-28 Huawei Technologies Co., Ltd. Devices and methods for video coding using segmentation based partitioning of video coding blocks
US20210337202A1 (en) * 2017-06-21 2021-10-28 Vid Scale, Inc. Adaptive quantization method for 360-degree video coding
US20190096041A1 (en) * 2017-09-25 2019-03-28 Texas Instruments Incorporated Methods and system for efficient processing of generic geometric correction engine
US11145079B2 (en) 2017-09-25 2021-10-12 Texas Instruments Incorporated Method and apparatus for arbitrary output shape processing of an image
US11108841B2 (en) 2018-06-19 2021-08-31 At&T Intellectual Property I, L.P. Apparatus, storage medium and method for heterogeneous segmentation of video streaming
US11265579B2 (en) * 2018-08-01 2022-03-01 Comcast Cable Communications, Llc Systems, methods, and apparatuses for video processing
CN110809159B (en) * 2018-08-04 2022-06-07 北京字节跳动网络技术有限公司 Clipping of updated or derived MVs
US11677976B2 (en) * 2018-09-21 2023-06-13 Interdigital Vc Holdings, Inc. Method and apparatus for video encoding and decoding using bi-prediction
MX2021003854A (en) * 2018-10-01 2021-05-27 Op Solutions Llc Methods and systems of exponential partitioning.
US11317099B2 (en) 2018-10-05 2022-04-26 Tencent America LLC Method and apparatus for signaling an offset in video coding for intra block copy and/or inter prediction
WO2020070612A1 (en) 2018-10-06 2020-04-09 Beijing Bytedance Network Technology Co., Ltd. Improvement for temporal gradient calculating in bio
BR112021012949A2 (en) * 2018-12-29 2021-09-14 Huawei Technologies Co., Ltd. DEVICE, IMAGE BLOCK INTRA PREDICTION METHOD, DEVICE FOR ENCODING OR DECODING IMAGE AND NON-TRANSITORY RECORDING
US20220132109A1 (en) * 2019-02-21 2022-04-28 Lg Electronics Inc. Image decoding method and apparatus using intra prediction in image coding system
CN110363212B (en) * 2019-03-28 2022-02-15 西南石油大学 Multi-wedgelet image approximation method based on boundary scanning
US11240534B2 (en) * 2019-04-05 2022-02-01 Qualcomm Incorporated Extended multiple transform selection for video coding
CN110225339A (en) * 2019-05-10 2019-09-10 上海德衡数据科技有限公司 A kind of HEVC video sequence coding/decoding accelerated method
US20230024223A1 (en) * 2019-12-05 2023-01-26 Interdigital Vc Holdings France, Sas Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080101707A1 (en) 2006-10-30 2008-05-01 Debargha Mukherjee Method for decomposing a video sequence frame
WO2011046607A2 (en) 2009-10-14 2011-04-21 Thomson Licensing Filtering and edge encoding
WO2011127966A1 (en) 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Inter-plane prediction

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60248076A (en) 1984-05-24 1985-12-07 Matsushita Electric Ind Co Ltd Method and apparatus for coding
JPH01303888A (en) * 1988-05-31 1989-12-07 Fujitsu Ltd Inter-frame coding device
JP3353968B2 (en) * 1992-09-25 2002-12-09 オリンパス光学工業株式会社 Image processing device
JPH06153167A (en) * 1992-11-13 1994-05-31 Oki Electric Ind Co Ltd Motion vector detection circuit
JPH08298665A (en) * 1994-04-21 1996-11-12 Sanyo Electric Co Ltd Circuit and method for detecting motion vector
JPH09275565A (en) * 1996-04-05 1997-10-21 Kokusai Electric Co Ltd Image block matching method and image encoding method
JP3231618B2 (en) * 1996-04-23 2001-11-26 日本電気株式会社 3D image encoding / decoding system
US6636633B2 (en) 1999-05-03 2003-10-21 Intel Corporation Rendering of photorealistic computer graphics images
EP2290990B1 (en) 2002-05-28 2014-05-07 Sharp Kabushiki Kaisha Method and systems for image intra-prediction mode estimation, communication, and organization
JP4088205B2 (en) * 2002-06-11 2008-05-21 松下電器産業株式会社 Encoding apparatus, computer-readable program, and encoding method.
US7227901B2 (en) 2002-11-21 2007-06-05 Ub Video Inc. Low-complexity deblocking filter
US6900748B2 (en) 2003-07-17 2005-05-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for binarization and arithmetic coding of a data value
US9351013B2 (en) * 2003-11-13 2016-05-24 Qualcomm Incorporated Selective and/or scalable complexity control for video codecs
WO2006033953A1 (en) 2004-09-16 2006-03-30 Thomson Licensing Video codec with weighted prediction utilizing local brightness variation
US8948266B2 (en) * 2004-10-12 2015-02-03 Qualcomm Incorporated Adaptive intra-refresh for digital video encoding
CN1777289A (en) 2005-11-30 2006-05-24 天津大学 Method for speeding up motion estimation utilizing selective prediction
US8275037B2 (en) 2006-05-05 2012-09-25 Thomson Licensing Simplified inter-layer motion prediction for scalable video coding
JP5021739B2 (en) 2006-07-12 2012-09-12 エルジー エレクトロニクス インコーポレイティド Signal processing method and apparatus
CN101502119B (en) 2006-08-02 2012-05-23 汤姆逊许可公司 Adaptive geometric partitioning for video decoding
JP4956304B2 (en) * 2006-08-08 2012-06-20 キヤノン株式会社 Image encoding apparatus, control method therefor, computer program, and computer-readable storage medium
JP5026092B2 (en) 2007-01-12 2012-09-12 三菱電機株式会社 Moving picture decoding apparatus and moving picture decoding method
CN103501440B (en) * 2007-04-12 2017-03-01 汤姆森特许公司 Method and apparatus for the fast geometric mode decision in video encoder
KR101681443B1 (en) * 2007-10-16 2016-11-30 톰슨 라이센싱 Methods and apparatus for video encoding and decoding geometrically partitioned super blocks
JP5097523B2 (en) 2007-12-07 2012-12-12 船井電機株式会社 Voice input device
BRPI0907748A2 (en) 2008-02-05 2015-07-21 Thomson Licensing Methods and apparatus for implicit block segmentation in video encoding and decoding
JP5071721B2 (en) * 2008-02-27 2012-11-14 ソニー株式会社 Image processing apparatus and method, and program
KR20090095316A (en) 2008-03-05 2009-09-09 삼성전자주식회사 Method and apparatus for image intra prediction
CN101609548B (en) 2008-09-12 2011-04-06 西安电子科技大学 Image segmentation method of HMT model based on wavelet and wedgelet conversion
WO2010036772A2 (en) 2008-09-26 2010-04-01 Dolby Laboratories Licensing Corporation Complexity allocation for video and image coding applications
JP2012089905A (en) 2009-01-13 2012-05-10 Hitachi Ltd Image encoder and image encoding method, and image decoder and image decoding method
KR20110117075A (en) 2009-01-29 2011-10-26 엘지전자 주식회사 Method and apparatus for processing video signals using boundary intra coding
WO2011066672A1 (en) * 2009-12-04 2011-06-09 Thomson Licensing Texture-pattern-adaptive partitioned block transform
KR20110068792A (en) 2009-12-16 2011-06-22 한국전자통신연구원 Adaptive image coding apparatus and method
US8681873B2 (en) 2010-02-19 2014-03-25 Skype Data compression for video
DK2559005T3 (en) * 2010-04-13 2015-11-23 Ge Video Compression Llc Inheritance at sample array multitræsunderinddeling
PL2559166T3 (en) 2010-04-13 2018-04-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Probability interval partioning encoder and decoder
US9020043B2 (en) 2010-05-10 2015-04-28 Google Inc. Pathway indexing in flexible partitioning
US20120008684A1 (en) 2010-07-09 2012-01-12 Samsung Electronics Co., Ltd. Method and apparatus of encoding and decoding video signal
KR102331748B1 (en) 2010-08-11 2021-12-02 지이 비디오 컴프레션, 엘엘씨 Multi-view signal codec
US20140044347A1 (en) 2011-04-25 2014-02-13 Sharp Kabushiki Kaisha Mage coding apparatus, image coding method, image coding program, image decoding apparatus, image decoding method, and image decoding program
EP2521357A1 (en) 2011-05-06 2012-11-07 Siemens Aktiengesellschaft Method and device for filtering of coded image partitions
CN103765474B (en) * 2011-08-26 2017-10-24 汤姆逊许可公司 depth coding
CN104247427B (en) 2011-11-11 2018-10-12 Ge视频压缩有限责任公司 device and method for coding and decoding
PT2777285T (en) * 2011-11-11 2017-12-01 Ge Video Compression Llc Adaptive partition coding
JP6717790B2 (en) 2017-09-14 2020-07-08 ファナック株式会社 Laser processing device that adjusts the focus shift according to the contamination level of the optical system during laser processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080101707A1 (en) 2006-10-30 2008-05-01 Debargha Mukherjee Method for decomposing a video sequence frame
WO2011046607A2 (en) 2009-10-14 2011-04-21 Thomson Licensing Filtering and edge encoding
WO2011046607A3 (en) 2009-10-14 2011-06-09 Thomson Licensing Method and devices for depth map processing
WO2011127966A1 (en) 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Inter-plane prediction

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Yixiong Zhang, "Motion Compensation using Polyline based Block Partition", Image and Signal Processing, 2009. CISP '09. 2nd International Congress on, 17-19 Oct. 2009 (2009.10.19.)

Also Published As

Publication number Publication date
CN104221379A (en) 2014-12-17
KR20220035274A (en) 2022-03-21
CN109257599A (en) 2019-01-22
EP4325865A2 (en) 2024-02-21
EP3691262B1 (en) 2023-10-25
BR112014011406A8 (en) 2018-12-26
US20200128260A1 (en) 2020-04-23
US11863763B2 (en) 2024-01-02
US20190297334A1 (en) 2019-09-26
JP6788699B2 (en) 2020-11-25
JP6084627B2 (en) 2017-02-22
PT2777285T (en) 2017-12-01
JP2019134466A (en) 2019-08-08
US10986352B2 (en) 2021-04-20
JP7121093B2 (en) 2022-08-17
KR20220162859A (en) 2022-12-08
BR122020014854B1 (en) 2022-09-13
EP3691262A1 (en) 2020-08-05
EP2777285A1 (en) 2014-09-17
PL2777285T3 (en) 2018-01-31
KR102171788B1 (en) 2020-10-29
US20200404294A1 (en) 2020-12-24
EP2777285B1 (en) 2017-08-16
KR102036175B1 (en) 2019-10-24
CN109257596A (en) 2019-01-22
KR20190120444A (en) 2019-10-23
JP2017108427A (en) 2017-06-15
CN109257599B (en) 2023-05-16
BR112014011406B1 (en) 2022-06-14
KR102373445B1 (en) 2022-03-11
JP6501808B2 (en) 2019-04-17
EP3691262C0 (en) 2023-10-25
KR20160118373A (en) 2016-10-11
US20170332086A1 (en) 2017-11-16
CN109257598B (en) 2023-05-12
CN109257598A (en) 2019-01-22
CN104221379B (en) 2019-01-01
US20140247871A1 (en) 2014-09-04
US10341667B2 (en) 2019-07-02
KR102588425B1 (en) 2023-10-12
JP2021022947A (en) 2021-02-18
WO2013068566A1 (en) 2013-05-16
DK2777285T3 (en) 2017-11-27
US10771794B2 (en) 2020-09-08
NO2806722T3 (en) 2018-03-10
CN109257597A (en) 2019-01-22
CN109257596B (en) 2023-06-13
US10567776B2 (en) 2020-02-18
BR112014011406A2 (en) 2017-06-27
US10362317B2 (en) 2019-07-23
KR20140077990A (en) 2014-06-24
HK1202202A1 (en) 2015-09-18
EP3249923B1 (en) 2020-01-01
US20170332088A1 (en) 2017-11-16
JP2015502063A (en) 2015-01-19
US20210185329A1 (en) 2021-06-17
KR20230145540A (en) 2023-10-17
EP3249923A1 (en) 2017-11-29
ES2647514T3 (en) 2017-12-22
KR20200125750A (en) 2020-11-04
JP7389185B2 (en) 2023-11-29
CN109257597B (en) 2023-05-16
KR101663394B1 (en) 2016-10-06
US9756330B2 (en) 2017-09-05
HUE034631T2 (en) 2018-02-28
JP2024012629A (en) 2024-01-30
JP2022153645A (en) 2022-10-12
IN2014KN01047A (en) 2015-10-09

Similar Documents

Publication Publication Date Title
JP7389185B2 (en) Efficient partition coding with high partitioning degrees of freedom
US10771793B2 (en) Effective prediction using partition coding
US20200404315A1 (en) Effective wedgelet partition coding using spatial prediction

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
GRNT Written decision to grant