KR20210118166A - 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환 - Google Patents

적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환 Download PDF

Info

Publication number
KR20210118166A
KR20210118166A KR1020217027274A KR20217027274A KR20210118166A KR 20210118166 A KR20210118166 A KR 20210118166A KR 1020217027274 A KR1020217027274 A KR 1020217027274A KR 20217027274 A KR20217027274 A KR 20217027274A KR 20210118166 A KR20210118166 A KR 20210118166A
Authority
KR
South Korea
Prior art keywords
region
current block
decoder
bitstream
line segment
Prior art date
Application number
KR1020217027274A
Other languages
English (en)
Inventor
보리보제 퍼트
하리 칼바
벨리보르 아지치
Original Assignee
오피 솔루션즈, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 오피 솔루션즈, 엘엘씨 filed Critical 오피 솔루션즈, 엘엘씨
Publication of KR20210118166A publication Critical patent/KR20210118166A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • 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/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Abstract

디코더는 회로망을 포함하고, 회로망은 비트스트림을 수신하고, 기하학적 파티셔닝 모드에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하고, 현재 블록을 디코딩하도록 구성된다. 관련된 장치들, 시스템들, 기술들 및 물품들 또한 설명된다. 디코더는, 비트스트림에 포함된 신호로부터, 제1 영역, 제2 영역 및/또는 제3 영역을 디코딩하기 위한 코딩 변환 타입을 결정할 수 있고 - 코딩 변환 타입은 적어도 역 블록 이산 코사인 변환 및 역 모양 적응 이산 코사인 변환을 특징화함 -, 현재 블록을 디코딩하는 것은 제1 영역, 제2 영역 및/또는 제3 영역 각각에 대한 역 변환을 위해 결정된 변환 타입을 사용하는 것을 포함할 수 있다.

Description

적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환
관련 출원들에 대한 상호참조
본 출원은 2019년 1월 28일에 출원되고 발명의 명칭이 "SHAPE ADAPTIVE DISCRETE COSINE TRANSFORM FOR GEOMETRIC PARTITIONING WITH AN ADAPTIVE NUMBER OF REGIONS"인 미국 임시 특허 출원 일련 번호 제62/797,799호에 대한 우선권의 혜택을 주장하며, 이는 본원에 전체적으로 참조로 포함된다.
발명의 분야
본 발명은 일반적으로 비디오 압축 분야에 관한 것이다. 특히, 본 발명은 적응형 개수의 영역들을 갖는 기하학적 파티셔닝(geometric partitioning)을 위한 모양 적응 이산 코사인 변환(shape adaptive discrete cosine transform)에 관한 것이다.
비디오 코덱은 디지털 비디오를 압축하거나 압축해제하는 전자 회로 또는 소프트웨어를 포함할 수 있다. 그것은 비압축된 비디오를 압축된 포맷으로 변환할 수 있거나 그 역도 또한 같다. 비디오 압축의 맥락에서, 비디오를 압축하는(및/또는 그것의 일부 기능을 수행하는) 디바이스는 전형적으로 인코더로 칭해질 수 있고, 비디오를 압축해제하는(및/또는 그것의 일부 기능을 수행하는) 디바이스는 디코더로 칭해질 수 있다.
압축된 데이터의 포맷은 표준 비디오 압축 사양에 합치할 수 있다. 압축된 비디오에는 원래 비디오 내에 존재하는 일부 정보가 결핍된다는 점에서 압축이 손실될 수 있다. 이것의 결과는 원래 비디오를 정확히 재구성하기에 불충분한 정보가 있기 때문에 압축해제된 비디오가 원래 비압축된 비디오보다 더 낮은 품질을 가질 수 있는 것을 포함할 수 있다.
비디오 품질, 비디오를 표현하기 위해 사용되는 데이터의 양(예를 들어, 비트 레이트에 의해 결정됨), 인코딩 및 디코딩 알고리즘들의 복잡성, 데이터 손실들 및 에러들에 대한 감도, 편집의 용이성, 랜덤 액세스, 엔드 투 엔드 지연(예를 들어, 레이턴시) 등 사이에 복잡한 관계들이 있을 수 있다.
양태에서, 디코더는 회로망을 포함하고, 회로망은 비트스트림을 수신하고, 기하학적 파티셔닝 모드에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하고, 제1 영역, 제2 영역 및 제3 영역 각각에 대해 역 이산 코사인 변환(inverse discrete cosine transformation)을 사용하여 현재 블록을 디코딩하도록 구성된다.
다른 양태에서, 디코더는 회로망을 포함하고, 회로망은 비트스트림을 수신하고, 기하학적 파티셔닝 모드에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하고, 비트스트림에 포함된 신호로부터, 제1 영역, 제2 영역 및/또는 제3 영역 각각을 디코딩하기 위한 코딩 변환 타입을 결정하고 - 코딩 변환 타입은 적어도 역 블록 이산 코사인 변환(inverse block discrete cosine transformation) 및 역 모양 적응 이산 코사인 변환(inverse shape adaptive discrete cosine transformation)을 특징화함 -, 현재 블록을 디코딩하도록 - 현재 블록을 디코딩하는 것은 제1 영역, 제2 영역 및/또는 제3 영역 각각에 대한 역 변환을 위해 결정된 변환 타입을 사용하는 것을 포함함 - 구성된다.
다른 양태에서, 방법은, 디코더에 의해, 비트스트림을 수신하는 단계; 기하학적 파티셔닝 모드에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하는 단계; 비트스트림에 포함된 신호로부터, 제1 영역, 제2 영역 및/또는 제3 영역을 디코딩하기 위한 코딩 변환 타입을 결정하는 단계 - 코딩 변환 타입은 적어도 역 블록 이산 코사인 변환 또는 역 모양 적응 이산 코사인 변환을 특징화함 -; 및 현재 블록을 디코딩하는 단계 - 현재 블록을 디코딩하는 단계는 제1 영역, 제2 영역 및/또는 제3 영역 각각에 대한 역 변환을 위해 결정된 변환 타입을 사용하는 단계를 포함함 - 를 포함한다.
본원에 설명되는 발명 대상의 하나 이상의 변형의 상세들은 아래의 첨부 도면들 및 설명에 제시된다. 본원에 설명되는 발명 대상의 다른 특징들 및 장점들은 설명 및 도면들로부터 분명하고, 청구항들로부터 분명할 것이다.
본 발명을 예시하기 위해, 도면들은 본 발명의 하나 이상의 실시예의 양태들을 도시한다. 그러나, 본 발명은 도면들에 도시된 정확한 배열들 및 도구들에 제한되지 않는다는 것이 이해되어야 한다.
도 1은 상이한 예측 에러(prediction error)들을 갖는 3개의 세그먼트가 있는 지수 파티셔닝(exponential partitioning)을 갖는 잔차 블록(residual block)(예를 들어, 현재 블록)의 예를 도시하는 예시이다.
도 2는 비디오 인코딩 및 디코딩에 대한 복잡성 및 처리 성능을 향상시킬 수 있는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환(shape adaptive discrete cosine transformation)(SA-DCT)이 가능한 예시적인 비디오 인코더를 예시하는 시스템 블록도이다.
도 3은 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT로 비디오를 인코딩하는 예시적인 프로세스를 예시하는 프로세스 흐름도이다.
도 4는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT를 사용하여 비트스트림을 디코딩할 수 있는 예시적인 디코더를 예시하는 시스템 블록도이다.
도 5는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT를 사용하여 비트스트림을 디코딩하는 예시적인 프로세스를 예시하는 프로세스 흐름도이다.
도 6은 본원에 개시된 방법론들 중 임의의 하나 이상 및 그것의 임의의 하나 이상의 부분을 구현하는 데 사용될 수 있는 컴퓨팅 시스템의 블록도이다.
도면들은 반드시 축척대로 도시된 것은 아니며, 가상 선들, 도식적 표현들 및 단편적인 뷰들에 의해 예시될 수 있다. 특정 사례들에서, 실시예들의 이해에 필요하지 않거나 다른 세부 사항들을 인지하기 어렵게 만드는 세부 사항들은 생략되었을 수 있다. 다양한 도면들에서 유사한 참조 기호들은 유사한 요소들을 나타낸다.
본 개시내용에서 제시되는 실시예들은 기하학적 파티셔닝으로 블록들을 인코딩 및 디코딩하는 것에 관한 것으로, 여기서 모든 블록들이 반드시 직사각형일 필요는 없다. 실시예들은 이산 코사인 변환들(discrete cosine transformations)(DCT) 및/또는 역 DCT들을 사용하여 인코딩 및/또는 디코딩을 수행하는 것을 포함하고/하거나 이를 수행하도록 구성될 수 있다. 본원에서 제시되는 일부 실시예들에서, DCT의 선택은 기하학적 파티셔닝된 블록들의 정보 컨텐츠의 함수로서 이루어진다. 일부 기존의 비디오 인코딩 및 디코딩 접근법들에서는, 모든 블록들이 직사각형이고, 전체 직사각형 블록에 대해 규칙적인 블록 DCT(Block DCT)(B-DCT)를 사용하여 잔차가 인코딩된다. 그러나, 블록이 다수의 비-직사각형(non-rectangular) 영역들로 파티셔닝될 수 있는 기하학적 파티셔닝에서는, 규칙적인 B-DCT를 사용하면 일부 블록들에 대한 기본 픽셀 정보를 비효율적으로 표현할 수 있고, 수행하는 데 불필요한 컴퓨팅 자원들이 필요할 수 있다. 본 발명 대상의 일부 구현들에서는, 기하학적 파티셔닝 모드를 사용할 때, 인코더가 B-DCT에 대안적으로 또는 이에 추가적으로 모양 적응 DCT(Shape Adaptive DCT)(SA-DCT)를 사용할 수 있다. 일부 실시예들에서, 인코더는 해당 영역의 예측 에러의 레벨에 기초하여 기하학적 파티셔닝된 블록과 같은 블록의 각각의 영역에 대해 B-DCT와 SA-DCT 사이에서 선택할 수 있고, 선택은 디코딩에 사용하기 위해 비트스트림으로 시그널링될 수 있다. B-DCT 또는 SA-DCT 중 어느 하나를 사용하여 비-직사각형 영역을 인코딩 및/또는 디코딩하고 이러한 선택을 시그널링함으로써, 비트스트림의 송신 비트 레이트는 감소될 수 있는데, 왜냐하면 잔차가 더 효율적으로 표현될 수 있고, 결과적으로 처리를 수행하는 데 필요한 계산 자원들이 감소될 수 있기 때문이다. 본 발명 대상은, 예를 들어, 128x128 또는 64x64의 크기의 블록들과 같은 비교적 더 큰 블록들에 적용 가능할 수 있다. 일부 구현들에서, 기하학적 파티셔닝은 현재 블록을 주어진 현재 블록에 대한 3개 이상의 영역과 같은 적응형 개수의 영역들로 파티셔닝하는 것을 수반할 수 있고, 각각의 영역에 대해 DCT 변환 타입(예를 들어, B-DCT 또는 SA-DCT)이 시그널링될 수 있다.
실시예에서, B-DCT는 제한없이 픽셀들의 대응하는 NXN 어레이의 크로마 및/또는 루마 값들과 같은 수치 값들의 NXN 블록에 대해 NXN 가역 행렬을 사용하여 수행되는 DCT일 수 있다. 예를 들어, 비-제한적인 예로서, NxN 행렬 X가 변환되어야 하는 경우, "DCT-I" 변환은 변환된 행렬의 각각의 요소를 다음과 같이 계산할 수 있다:
Figure pct00001
k = 0,…,N-1이다. 추가의 비-제한적인 예로서, "DCT-II" 변환은 변환된 행렬 값들을 다음과 같이 계산할 수 있다:
Figure pct00002
k = 0,…,N-1이다. 예시적인 예로서, 블록들이 4x4 픽셀 블록들인 경우, 일반화된 이산 코사인 변환 행렬은 다음과 같은 형태를 취하는 일반화된 이산 코사인 변환 II 행렬을 포함할 수 있다:
Figure pct00003
여기서, a는
Figure pct00004
이고, b는
Figure pct00005
이고, c는
Figure pct00006
이다.
일부 구현들에서는, 효율적인 하드웨어 및 소프트웨어 구현들을 위해 사용될 수 있는 변환 행렬의 정수 근사가 활용될 수 있다. 예를 들어, 블록들이 4x4 픽셀 블록들인 경우, 일반화된 이산 코사인 변환 행렬은 다음과 같은 형태를 취하는 일반화된 이산 코사인 변환 II 행렬을 포함할 수 있다:
Figure pct00007
역 B-DCT는 동일한 NxN 변환 행렬을 사용하는 제2 행렬 곱에 의해 계산될 수 있고, 결과 출력은 원래 값들을 복구하기 위해 정규화될 수 있다. 예를 들어, 역 DCT-I는 정규화를 위해
Figure pct00008
가 곱해질 수 있다.
SA-DCT는 비-직사각형 픽셀 어레이에 대해 수행될 수 있다. 실시예에서, SA-DCT는 관심 모양의 픽셀 값들의 수직 열들을 표현하는 벡터들에 대해 DCT-I, DCT-II 등과 같은 DCT의 1차원 버전을 수행하고, 다음으로 결과 값들이 수평 벡터들로 그룹화되고 다시 1차원 DCT를 거침으로써 계산될 수 있으며, 두 번째 DCT는 픽셀 값들의 완전한 변환을 생성할 수 있다. SA-DCT의 변형들은 상기 변환, 상기 변환의 출력들의 양자화 및/또는 변환 출력들 및/또는 양자화된 변환 출력들의 역에 의해 도입되는 평균 가중 결함(mean weighting defect)들 및/또는 비-정규직교 결함(non-orthonormal defect)들을 수정하기 위해 계수들에 의해 추가로 스케일링 및/또는 정규화할 수 있다. 변환, 양자화 및/또는 역 변환 전 및/또는 후에 적용되는 스케일링 프로세스들 중 하나 또는 다른 것과 잠재적으로 조합하여 각각의 픽셀 값 또는 그것의 스케일링된 버전으로부터 대상 이미지 영역의 개별 평균값을 감산함으로써 상기 SA-DCT 프로세스에 선행하여 추가 보정들이 제한없이 수행될 수 있다. 본 기술분야의 통상의 기술자는, 본 개시내용 전체를 검토할 때, 상기 설명과 일관되게 적용될 수 있는 SA-DCT 프로세스에 대한 다양한 대안적 또는 추가적 변형들을 인식할 것이다.
모션 보상은 현재, 이전 및/또는 장래 프레임들을 포함하고/하거나 이에 의해 표현되는 비디오 내의 객체들 및/또는 카메라의 모션을 설명함으로써 이전 및/또는 장래 프레임들을 고려하여 비디오 프레임 또는 그것의 일부를 예측하는 접근법을 포함할 수 있다. 모션 보상은 비디오 압축을 위한 비디오 데이터의 인코딩 및 디코딩, 예를 들어, 모션 픽처 전문가 그룹(Motion Picture Experts Group)(MPEG)-2(또한 고급 비디오 코딩(advanced video coding)(AVC)으로 지칭됨) 표준을 사용하는 인코딩 및 디코딩에 채택될 수 있다. 모션 보상은 참조 픽처를 현재 픽처로 변환하는 측면에서 픽처를 기술할 수 있다. 참조 픽처는 현재 픽처와 비교할 때 시간상 이전일 수도 있고 또는 장래로부터의 것일 수도 있다. 이미지들이 이전에 송신된 및/또는 저장된 이미지들로부터 정확히 합성될 수 있을 때, 압축 효율이 향상될 수 있다.
블록 파티셔닝은, 본 개시내용에서 사용될 때, 유사한 모션의 영역들을 발견하기 위한 비디오 코딩의 방법을 지칭할 수 있다. 블록 파티셔닝의 일부 형태는 MPEG-2, H.264(또한 AVC 또는 MPEG-4 파트 10으로 지칭됨), 및 H.265(또한 고효율 비디오 코딩(High Efficiency Video Coding)(HEVC)으로 지칭됨)를 포함하는 비디오 코덱 표준들에서 발견될 수 있다. 예시적인 블록 파티셔닝 접근법들에서, 비디오 프레임의 비-중첩 블록들은 유사한 모션을 갖는 픽셀들을 포함하는 블록 파티션들을 발견하기 위해 직사각형 서브-블록들로 파티셔닝될 수 있다. 이러한 접근법은 블록 파티션의 모든 픽셀들이 유사한 모션을 가질 때 좋게 작업될 수 있다. 블록 내의 픽셀들의 모션은 이전에 코딩된 프레임들에 대해 결정될 수 있다.
모양 적응 DCT 및/또는 B-DCT는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝에 효과적으로 사용될 수 있다. 도 1은 상이한 예측 에러들을 갖는 3개의 세그먼트 S0, S1, 및 S2가 있는 기하학적 파티셔닝을 갖는 64x64 또는 128x128 크기의 잔차 블록(예를 들어, 현재 블록)(100)의 비-제한적인 예를 도시하는 예시이며, 예시적인 목적들을 위해 도 1에는 3개의 세그먼트가 예시되어 있지만, 더 많거나 더 적은 수의 세그먼트들이 대안적으로 또는 추가적으로 채택될 수 있다. 현재 블록은 2개의 라인 세그먼트(P1P2 및 P3P4)에 따라 기하학적 파티셔닝될 수 있으며, 이는 현재 블록을 3개의 영역 S0, S1 및 S2로 분할할 수 있다. 이 예에서, S0은 상대적으로 높은 예측 에러를 가질 수 있는 반면, S1 및 S2는 상대적으로 더 낮은 예측 에러를 가질 수 있다. 세그먼트 S0(영역이라고도 지칭됨)에 대해, 인코더는 잔차 코딩을 위해 B-DCT를 선택하고 사용할 수 있다. 예측 에러가 낮은 세그먼트들 S1 및 S2에 대해, 인코더는 SA-DCT를 선택하고 사용할 수 있다. 잔차 인코딩 변환의 선택은 예측 에러(예를 들어, 잔차의 크기)에 기초할 수 있다. SA-DCT 알고리즘은 복잡성 측면에서 비교적 더 간단하고 B-DCT만큼 많은 계산을 필요로 하지 않기 때문에, 더 낮은 예측 에러 잔차 코딩을 위해 SA-DCT를 활용하면 비디오 인코딩 및 디코딩에 대한 복잡성 및 처리 성능을 향상시킬 수 있다.
따라서, 여전히 도 1을 참조하면, SA-DCT는 예측 에러들이 낮은 세그먼트들에 대해 전체 블록 DCT에 대한 추가 변환 선택으로서 시그널링될 수 있다. 낮거나 높은 에러로 간주되는 것은 인코더에서 설정될 수 있는 파라미터일 수 있으며, 애플리케이션에 기초하여 변할 수 있다. 변환 타입의 선택은 비트스트림으로 시그널링될 수 있다. 디코더에서, 비트스트림이 파싱될 수 있고, 주어진 현재 블록에 대해, 비트스트림으로 시그널링된 변환 타입을 사용하여 잔차가 디코딩될 수 있다. 일부 구현들에서는, 변환과 연관된 계수들의 수가 대안적으로 또는 추가적으로 비트스트림으로 시그널링될 수 있다.
보다 구체적으로, 계속해서 도 1을 참조하면, 적응형 개수의 영역들을 갖는 기하학적 파티셔닝은 직사각형 블록이 비-직사각형일 수 있는 2개 이상의 영역으로 추가로 분할되는 비디오 인코딩 및 디코딩을 위한 기술들을 포함할 수 있다. 예를 들어, 도 1은 적응형 개수의 영역들을 갖는 픽셀 레벨에서의 기하학적 파티셔닝의 비-제한적인 예를 예시한다. 예시적인 직사각형 블록(100)(M개의 픽셀의 폭 및 N개의 픽셀의 높이를 가질 수 있으며, MxN 픽셀들로 표시됨)은 라인 세그먼트 P1P2 및 P3P4를 따라 3개의 영역(S0, S1 및 S2)으로 분할될 수 있다. S0의 픽셀들이 유사한 모션을 가질 때, 모션 벡터는 해당 영역의 모든 픽셀들의 모션을 기술할 수 있으며, 모션 벡터는 영역 S0을 압축하는 데 사용될 수 있다. 유사하게, 영역 S1의 픽셀들이 유사한 모션을 가질 때, 연관된 모션 벡터는 영역 S1의 픽셀들의 모션을 기술할 수 있다. 유사하게, 영역 S2의 픽셀들이 유사한 모션을 가질 때, 연관된 모션 벡터는 영역 S2의 픽셀들의 모션을 기술할 수 있다. 이러한 기하학적 파티션은 비디오 비트스트림으로 포지션들 P1, P2, P3, P4 (및/또는 제한없이 극좌표들, 데카르트 좌표들 등과 같은 좌표들, 미리 정의된 템플릿들에 대한 인덱스들 또는 파티션들의 다른 특성화들을 사용하는 것과 같은 이들 포지션들의 표현들)을 인코딩함으로써 수신기(예를 들어, 디코더)에 시그널링될 수 있다.
여전히 도 1을 참조하면, 픽셀 레벨에서의 기하학적 파티셔닝을 활용하여 비디오 데이터를 인코딩할 때, 라인 세그먼트 P1P2(또는 더 구체적으로는 지점들 P1 및 P2)가 결정될 수 있다. 픽셀 레벨에서의 기하학적 파티셔닝을 활용할 때 블록을 가장 잘 분할하는 라인 세그먼트 P1P2(또는 더 구체적으로는 지점들 P1 및 P2)를 결정하기 위해, 지점들 P1 및 P2의 가능한 조합들은 블록 폭 및 높이인 M 및 N에 따라 달라진다. 크기 MxN의 블록의 경우, (M-1)x(N-1)x3개의 가능한 파티션이 존재한다. 따라서, 올바른 파티션을 식별하는 것은 모든 가능한 파티션들에 대해 모션 추정을 평가하는 계산 비용이 많이 드는 태스크가 될 수 있으며, 이는 (예를 들어, 픽셀 레벨에서의 기하학적 파티셔닝 없이) 직사각형 파티셔닝을 사용하는 인코딩과 비교하여 비디오를 인코딩하는 데 필요한 시간 및/또는 처리 능력의 양을 증가시킬 수 있다. 가장 우수한 또는 올바른 파티션을 구성하는 것이 메트릭에 따라 결정될 수 있으며, 구현에 따라 변경될 수 있다.
일부 구현들에서, 여전히 도 1을 참조하면, 파티셔닝은 2개의 영역을 형성하는 제1 파티션이 결정될 수 있고(예를 들어, 라인 P1P2 및 연관된 영역들 결정) 그 후 해당 영역들 중 하나가 추가로 파티셔닝된다는 점에서 반복적으로 발생한다. 예를 들어, 도 1을 참조하여 설명되는 파티셔닝은 블록을 2개의 영역으로 파티셔닝하기 위해 수행될 수 있다. 해당 영역들 중 하나는 (예를 들어, 새로운 영역 S1 및 영역 S2를 형성하기 위해) 추가로 파티셔닝될 수 있다. 프로세스는 중지 기준에 도달할 때까지 블록 레벨 기하학적 파티셔닝을 계속 수행할 수 있다.
도 2는 비디오 인코딩 및 디코딩에 대한 복잡성 및 처리 성능을 향상시킬 수 있는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT 및/또는 B-DCT가 가능한 예시적인 비디오 인코더(200)를 예시하는 시스템 블록도이다. 예시적인 비디오 인코더(200)는 입력 비디오(205)를 수신하며, 이는 트리-구조 매크로 블록 파티셔닝 스킴(tree-structured macro block partitioning scheme)(예를 들어, 쿼드 트리 + 이진 트리(quad-tree plus binary tree))과 같은 처리 스킴에 따라 초기에 세그먼트화되거나 분할될 수 있다. 트리-구조 매크로 블록 파티셔닝 스킴의 예는 픽처 프레임을 코딩 트리 유닛들(coding tree units)(CTU)로 칭해지는 큰 블록 요소들로 파티셔닝하는 것을 포함할 수 있다. 일부 구현들에서, 각각의 CTU는 코딩 유닛들(coding units)(CU)로 칭해지는 다수의 서브-블록들로 일회 이상 추가로 파티셔닝될 수 있다. 이러한 파티셔닝의 최종 결과는 예측 유닛들(predictive units)(PU)로 칭해질 수 있는 서브-블록들의 그룹을 포함할 수 있다. 변환 유닛들(transform units)(TU)이 또한 활용될 수 있다. 그러한 파티셔닝 스킴은 본 발명 대상의 일부 양태들에 따른 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 수행하는 것을 포함할 수 있다.
계속해서 도 2를 참조하면, 예시적인 비디오 인코더(200)는 인트라 예측 프로세서(215), 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 지원 가능할 수 있는 모션 추정/보상 프로세서(220)(또한 인터 예측 프로세서로 지칭됨), 변환/양자화 프로세서(225), 역 양자화/역 변환 프로세서(230), 인-루프 필터(235), 디코딩된 픽처 버퍼(240), 및 엔트로피 코딩 프로세서(245)를 포함한다. 일부 구현들에서, 모션 추정/보상 프로세서(220)는 기하학적 파티셔닝을 수행할 수 있다. 기하학적 파티셔닝 모드들을 시그널링하는 비트스트림 파라미터들은 출력 비트스트림(250)에서의 포함을 위해 엔트로피 코딩 프로세서(245)에 입력될 수 있다.
동작에서, 계속해서 도 2를 참조하면, 입력 비디오(205)의 프레임의 각각의 블록에 대해, 인트라 픽처 예측을 통해 블록을 처리할 것인지 또는 모션 추정/보상을 사용하여 블록을 처리할 것인지가 결정될 수 있다. 블록은 인트라 예측 프로세서(210) 또는 모션 추정/보상 프로세서(220)에 제공될 수 있다. 블록이 인트라 예측을 통해 처리되는 경우, 인트라 예측 프로세서(210)는 예측자(predictor)를 출력하기 위한 처리를 수행할 수 있다. 블록이 모션 추정/보상을 통해 처리되는 경우, 모션 추정/보상 프로세서(220)는 예측자를 출력하기 위해 기하학적 파티셔닝의 사용을 포함하는 처리를 수행할 수 있다.
여전히 도 2를 참조하면, 입력 비디오로부터 예측자를 차감함으로써 잔차가 형성될 수 있다. 잔차는 변환/양자화 프로세서(225)에 의해 수신될 수 있으며, 이는 (예를 들어, 잔차의 크기 또는 에러 메트릭을 임계치와 비교함으로써) 예측 에러(예를 들어, 잔차 크기)가 "높은" 또는 "낮은" 에러로 간주되는지를 결정할 수 있다. 결정에 기초하여, 변환/양자화 프로세서(225)는 B-DCT 및 SA-DCT를 포함할 수 있는 변환 타입을 선택할 수 있다. 일부 구현들에서, 변환/양자화 프로세서(225)는 잔차가 높은 에러를 갖는 것으로 간주되는 경우에는 B-DCT의 변환 타입을 선택하고, 잔차가 낮은 에러를 갖는 것으로 간주되는 경우에는 SA-DCT의 변환 타입을 선택한다. 선택된 변환 타입에 기초하여, 변환/양자화 프로세서(225)는 양자화될 수 있는 계수들을 생성하기 위해 변환 처리(예를 들어, SA-DCT 또는 B-DCT)를 수행할 수 있다. 양자화된 계수들 및 임의의 연관된 시그널링 정보(선택된 변환 타입 및/또는 사용된 계수들의 수를 포함할 수 있음)는 엔트로피 인코딩 및 출력 비트스트림(250)에서의 포함을 위해 엔트로피 코딩 프로세서(245)에 제공될 수 있다. 엔트로피 인코딩 프로세서(245)는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT와 관련된 시그널링 정보의 인코딩을 지원할 수 있다. 또한, 양자화된 계수들은 역 양자화/역 변환 프로세서(230)에 제공될 수 있으며, 이는 예측자와 조합되고 인-루프 필터(235)에 의해 처리될 수 있는 픽셀들을 재생할 수 있고, 그것의 출력은 적응형 개수의 영역들을 갖는 기하학적 파타셔닝을 지원할 수 있는 모션 추정/보상 프로세서(220)에 의한 사용을 위해 디코딩된 픽처 버퍼(240)에 저장된다.
이제 도 3을 참조하면, 비디오 인코딩 및 디코딩에 대한 복잡성 및 처리 성능을 향상시킬 수 있는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT로 비디오를 인코딩하는 예시적인 프로세스(300)를 예시하는 프로세스 흐름도가 예시된다. 단계(310)에서, 비디오 프레임은, 예를 들어, 픽처 프레임을 CTU들 및 CU들로 파티셔닝하는 단계를 포함할 수 있는 트리-구조 매크로 블록 파티셔닝 스킴을 사용하여 초기 블록 세그먼트화를 겪을 수 있다. 단계(320)에서, 기하학적 파티셔닝을 위해 블록이 선택될 수 있다. 선택은 블록이 기하학적 파티셔닝 모드에 따라 처리되어야 하는 것을 메트릭 규칙에 따라 식별하는 단계를 포함할 수 있다. 단계(330)에서, 선택된 블록이 기하학적 파티셔닝 모드에 따라 3개 이상의 비-직사각형 영역으로 파티셔닝될 수 있다.
단계(340)에서, 여전히 도 3을 참조하면, 각각의 기하학적 파티셔닝된 영역에 대한 변환 타입(transform type)(변환 타입(transformation type)으로도 지칭됨)이 결정될 수 있다. 이는 (예를 들어, 잔차의 크기 또는 에러 메트릭을 임계치와 비교함으로써) 예측 에러(예를 들어, 잔차 크기)가 "높은" 또는 "낮은" 에러로 간주되는지를 결정하는 단계를 포함할 수 있다. 결정에 기초하여, 변환 타입이, 예를 들어, 아래에서 설명되는 쿼드트리 + 이진 결정 트리 프로세스를 사용하여 선택될 수 있으며, 변환 타입은 제한없이 B-DCT 또는 SA-DCT를 포함할 수 있다. 일부 구현들에서, B-DCT의 변환 타입은 잔차가 높은 에러를 갖는 것으로 간주되는 경우 선택되고, SA-DCT의 변환 타입은 잔차가 낮은 에러를 갖는 것으로 간주되는 경우 선택된다. 선택된 변환 타입에 기초하여, 양자화될 수 있는 계수들을 생성하기 위해 변환 처리(예를 들어, SA-DCT 또는 B-DCT)가 수행될 수 있다.
단계(350)에서, 계속해서 도 3을 참조하면, 결정된 변환 타입은 비트스트림으로 시그널링될 수 있다. 변환되고 양자화된 잔차는 비트스트림에 포함될 수 있다. 일부 구현들에서, 변환 계수들의 수는 비트스트림으로 시그널링될 수 있다.
도 4는 비디오 인코딩 및 디코딩에 대한 복잡성 및 처리 성능을 향상시킬 수 있는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT 및/또는 B-DCT를 제한없이 포함하는 DCT를 사용하여 비트스트림(470)을 디코딩할 수 있는 디코더(400)의 비-제한적인 예를 예시하는 시스템 블록도이다. 디코더(400)는 엔트로피 디코더 프로세서(410), 역 양자화 및 역 변환 프로세서(420), 블록해제 필터(deblocking filter)(430), 프레임 버퍼(440), 모션 보상 프로세서(450) 및 인트라 예측 프로세서(460)를 포함한다. 일부 구현들에서, 비트스트림(470)은 기하학적 파티셔닝 모드 및 변환 타입을 시그널링하는 파라미터들을 포함한다. 일부 구현들에서, 비트스트림(470)은 변환 계수들의 수를 시그널링하는 파라미터들을 포함한다. 모션 보상 프로세서(450)는 본원에 설명된 바와 같이 기하학적 파티셔닝을 사용하여 픽셀 정보를 재구성할 수 있다.
동작에서, 여전히 도 4를 참조하면, 비트스트림(470)은 디코더(400)에 의해 수신되고, 비트스트림을 양자화된 계수들로 엔트로피 디코딩할 수 있는 엔트로피 디코더 프로세서(410)에 입력될 수 있다. 양자화된 계수들은 역 양자화 및 역 변환 프로세서(420)에 제공될 수 있으며, 이는 코딩 변환 타입(예를 들어, B-DCT 또는 SA-DCT)을 결정할 수 있고 결정된 코딩 변환 타입에 따라 역 양자화 및 역 변환을 수행하여 잔차 신호를 생성할 수 있다. 일부 구현들에서, 역 양자화 및 역 변환 프로세서(420)는 변환 계수들의 수를 결정하고 결정된 수의 변환 계수들에 따라 역 변환을 수행할 수 있다.
여전히 도 4를 참조하면, 잔차 신호는 처리 모드에 따라 모션 보상 프로세서(450) 또는 인트라 예측 프로세서(460)의 출력에 추가될 수 있다. 모션 보상 프로세서(450) 및 인트라 예측 프로세서(460)의 출력은 이전에 디코딩된 블록에 기초한 블록 예측을 포함할 수 있다. 예측 및 잔차의 합은 블록해제 필터(430)에 의해 처리되고 프레임 버퍼(440)에 저장될 수 있다. 주어진 블록(예를 들어, CU 또는 PU)에 대해, 비트스트림(470)이 파티셔닝 모드가 블록 레벨 기하학적 파티셔닝임을 시그널링할 때, 모션 보상 프로세서(450)는 본원에 설명되는 기하학적 파티션 접근법에 기초하여 예측을 구성할 수 있다.
도 5는 비디오 인코딩 및 디코딩에 대한 복잡성 및 처리 성능을 향상시킬 수 있는 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 SA-DCT를 사용하여 비트스트림을 디코딩하는 예시적인 프로세스(500)를 예시하는 프로세스 흐름도이다. 단계(510)에서, 현재 블록(예를 들어, CTU, CU, PU)을 포함할 수 있는 비트스트림이 수신된다. 수신하는 단계는 비트스트림으로부터 현재 블록 및 연관된 시그널링 정보를 추출 및/또는 파싱하는 단계를 포함할 수 있다. 디코더는 기하학적 파티셔닝을 특징화하는 하나 이상의 파라미터를 추출하거나 결정할 수 있다. 이러한 파라미터들은, 예를 들어, 라인 세그먼트의 시작 및 끝의 인덱스들(예를 들어, P1, P2, P3, P4)을 포함할 수 있고, 추출 또는 결정은 비트스트림으로부터 파라미터들을 식별하고 검색하는 것(예를 들어, 비트스트림을 파싱하는 것)을 포함할 수 있다.
단계(520)에서, 여전히 도 5를 참조하면, 현재 블록의 제1 영역, 제2 영역 및 제3 영역이 기하학적 파티셔닝 모드에 따라 결정될 수 있다. 결정하는 단계는 현재 블록에 대해 기하학적 파티셔닝 모드가 인에이블되는지(예를 들어, 참) 결정하는 단계를 포함할 수 있다. 기하학적 파티셔닝 모드가 인에이블되지 않은 경우(예를 들어, 거짓), 디코더는 대체 파티셔닝 모드를 사용하여 현재 블록을 처리할 수 있다. 기하학적 파티셔닝 모드가 인에이블되는 경우(예를 들어, 참), 3개 이상의 영역이 결정 및/또는 처리될 수 있다.
임의적 단계(530)에서, 계속해서 도 5를 참조하면, 코딩 변환 타입이 결정될 수 있다. 코딩 변환 타입은 비트스트림으로 시그널링될 수 있다. 예를 들어, 비트스트림은 B-DCT 또는 SA-DCT를 지정할 수 있는 코딩 변환 타입을 결정하기 위해 파싱될 수 있다. 결정된 코딩 변환 타입은 제1 영역, 제2 영역 및/또는 제3 영역을 디코딩하기 위한 것일 수 있다.
단계(540)에서, 여전히 도 5를 참조하면, 현재 블록이 디코딩될 수 있다. 현재 블록을 디코딩하는 것은 제1 영역, 제2 영역 및/또는 제3 영역 각각에 대한 역 변환을 위해 결정된 변환 타입을 사용하는 것을 포함할 수 있다. 디코딩은 기하학적 파티셔닝 모드에 따라 각각의 영역에 대한 연관된 모션 정보를 결정하는 것을 포함할 수 있다.
수개의 변형들이 위에 상세히 설명되었지만, 다른 수정들 또는 추가들이 가능하다. 예를 들어, 기하학적 파티셔닝은 인코더에서의 레이트-왜곡 결정들에 기초하여 비트스트림으로 시그널링될 수 있다. 코딩은 규칙적인 미리-정의된 파티션들(예를 들어, 템플릿들), 파티셔닝의 시간 및 공간 예측, 및 부가 오프셋들의 조합에 기초할 수 있다. 각각의 기하학적 파티셔닝된 영역은 모션 보상 예측 또는 인트라-예측을 활용할 수 있다. 예측된 영역들의 경계는 잔차가 추가되기 전에 평활화될 수 있다.
일부 구현들에서, 쿼드트리 + 이진 결정 트리(quadtree plus binary decision tree)(QTBT)가 구현될 수 있다. QTBT에서, 코딩 트리 유닛 레벨에서, QTBT의 파티션 파라미터들은 임의의 오버헤드를 송신하는 것 없이 국부 특성들에 적응되도록 동적으로 도출된다. 그 후에, 코딩 유닛 레벨에서, 조인트-분류기 결정 트리 구조는 불필요한 반복들을 제거하고 잘못된 예측의 위험을 제어할 수 있다. 일부 구현들에서, 적응형 개수의 영역들을 갖는 기하학적 파티셔닝은 QTBT의 모든 리프 노드(leaf node)에서 이용 가능한 부가 파티셔닝 옵션으로서 이용 가능할 수 있다.
일부 구현들에서, 디코더는 현재 블록에 대한 기하학적 파티션을 발생시키고 종속 프로세스들을 위한 모든 파티션-관련 정보를 제공하는 파티션 프로세서를 포함할 수 있다. 파티션 프로세서는 블록이 기하학적 파티셔닝되는 경우에 세그먼트 방식으로(segment-wise) 수행될 수 있으므로 모션 보상에 직접 영향을 미칠 수 있다. 게다가, 파티션 프로세서는 모양 정보를 인트라-예측 프로세서 및 변환 코딩 프로세서에 제공할 수 있다.
일부 구현들에서, 부가 신택스 요소들이 비트스트림의 상이한 계층 레벨들에서 시그널링될 수 있다. 전체 시퀀스에 대한 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 가능하게 하기 위해, 인에이블 플래그가 시퀀스 파라미터 세트(Sequence Parameter Set)(SPS)에서 코딩될 수 있다. 게다가, CTU 플래그가 임의의 코딩 유닛들(CU)이 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 사용하는지를 표시하기 위해 코딩 트리 유닛(CTU) 레벨에서 코딩될 수 있다. CU 플래그가 현재 코딩 유닛이 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 활용하는지를 표시하기 위해 코딩될 수 있다. 블록 상에 라인 세그먼트를 지정하는 파라미터들이 코딩될 수 있다. 각각의 영역에 대해, 현재 영역이 인터- 또는 인트라-예측되는지를 지정할 수 있는 플래그가 디코딩될 수 있다.
일부 구현들에서, 최소 영역 크기가 지정될 수 있다.
본원에 설명되는 발명 대상은 많은 기술적 장점들을 제공한다. 예를 들어, 본 발명 대상의 일부 구현들은 압축 효율을 증가시키면서 복잡성을 감소시키는 블록들의 파티셔닝을 제공할 수 있다. 일부 구현들에서는, 객체 경계들에서의 블로킹 아티팩트(blocking artifact)들이 감소될 수 있다.
본원에 설명되는 양태들 및 실시예들 중 임의의 하나 이상은, 컴퓨터 기술분야의 통상의 기술자에게 명백한 바와 같이, 본 명세서의 교시들에 따라 프로그램된 하나 이상의 머신(예를 들어, 전자 문서를 위한 사용자 컴퓨팅 디바이스, 문서 서버와 같은 하나 이상의 서버 디바이스 등으로서 활용되는 하나 이상의 컴퓨팅 디바이스)에서 실현 및/또는 구현되는 바와 같은 디지털 전자 회로망, 집적 회로망, 특별히 설계된 주문형 집적 회로(application specific integrated circuit)(ASIC)들, 필드 프로그램가능 게이트 어레이(field programmable gate array)(FPGA)들 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 그것의 조합들을 사용하여 편리하게 구현될 수 있다는 것에 유의해야 한다. 이러한 다양한 양태들 또는 특징들은 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령어들을 수신하고, 이들에 데이터 및 명령어들을 송신하도록 커플링되는, 특수 또는 일반 목적일 수 있는, 적어도 하나의 프로그램가능 프로세서를 포함하는 프로그램가능 시스템 상에서 실행가능하고 그리고/또는 해석가능한 하나 이상의 컴퓨터 프로그램 및/또는 소프트웨어에서의 구현을 포함할 수 있다. 소프트웨어 분야의 통상의 기술자에게 명백한 바와 같이, 적절한 소프트웨어 코딩은 본 개시내용의 교시들에 기초하여 숙련된 프로그래머들에 의해 쉽게 준비될 수 있다. 소프트웨어 및/또는 소프트웨어 모듈들을 채택하는 위에서 논의된 양태들 및 구현들은 또한 소프트웨어 및/또는 소프트웨어 모듈의 머신 실행 가능 명령어들의 구현을 지원하기 위한 적절한 하드웨어를 포함할 수 있다.
이러한 소프트웨어는 머신 판독 가능 저장 매체를 채택하는 컴퓨터 프로그램 제품일 수 있다. 머신 판독 가능 저장 매체는 머신(예를 들어, 컴퓨팅 디바이스)에 의한 실행을 위한 명령어들의 시퀀스를 저장 및/또는 인코딩할 수 있고 머신으로 하여금 본원에 설명된 방법론들 및/또는 실시예들 중 임의의 하나를 수행하게 하는 임의의 매체일 수 있다. 머신 판독 가능 저장 매체의 예들은 자기 디스크, 광 디스크(예를 들어, CD, CD-R, DVD, DVD-R 등), 광-자기 디스크, 판독 전용 메모리 "ROM" 디바이스, 랜덤 액세스 메모리 "RAM" 디바이스, 마그네틱 카드, 광학 카드, 솔리드 스테이트 메모리 디바이스, EPROM, EEPROM, 프로그램가능 로직 디바이스(Programmable Logic Device)(PLD)들 및/또는 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 본원에 사용된 머신 판독 가능 매체는 단일 매체뿐만 아니라, 예를 들어, 컴퓨터 메모리와 결합된 하나 이상의 하드 디스크 드라이브 또는 컴팩트 디스크들의 모음과 같은 물리적으로 분리된 매체의 모음을 포함하도록 의도된다. 본원에서 사용되는 바와 같이, 머신 판독 가능 저장 매체는 일시적인 형태들의 신호 송신을 포함하지 않는다.
이러한 소프트웨어는 또한 반송파와 같은 데이터 캐리어 상에서 데이터 신호로서 운반되는 정보(예를 들어, 데이터)를 포함할 수 있다. 예를 들어, 머신 실행 가능 정보는 데이터 캐리어에서 구체화되는 데이터-운반 신호로서 포함될 수 있으며, 여기서 신호는 머신(예를 들어, 컴퓨팅 디바이스)에 의한 실행을 위한 명령어의 시퀀스 또는 그 일부, 및 머신으로 하여금 본원에 설명된 방법론들 및/또는 실시예들 중 임의의 하나를 수행하게 하는 임의의 관련된 정보(예를 들어, 데이터 구조들 및 데이터)를 인코딩한다.
컴퓨팅 디바이스의 예들은 전자 책 판독 디바이스, 컴퓨터 워크스테이션, 단말기 컴퓨터, 서버 컴퓨터, 핸드헬드 디바이스(예를 들어, 태블릿 컴퓨터, 스마트폰 등), 웹 기기, 네트워크 라우터, 네트워크 스위치, 네트워크 브리지, 해당 머신에 의해 취해질 액션을 지정하는 명령어들의 시퀀스를 실행할 수 있는 임의의 머신 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 일 예에서, 컴퓨팅 디바이스는 키오스크를 포함하고/하거나 그에 포함될 수 있다.
도 6은 컴퓨팅 디바이스의 일 실시예의 도식적 표현을, 제어 시스템으로 하여금 본 개시내용의 양태들 및/또는 방법론들 중 임의의 하나 이상을 수행하게 하기 위한 명령어들의 세트가 실행될 수 있는 예시적인 형태의 컴퓨터 시스템(600)으로 도시한다. 또한, 다수의 컴퓨팅 디바이스들이 디바이스들 중 하나 이상으로 하여금 본 개시내용의 양태들 및/또는 방법론들 중 임의의 하나 이상을 수행하게 하기 위해 특별히 구성된 명령어들의 세트를 구현하는 데 활용될 수 있다는 것이 고려된다. 컴퓨터 시스템(600)은 버스(612)를 통해 서로 및 다른 구성요소들과 통신하는 프로세서(604) 및 메모리(608)를 포함한다. 버스(612)는 다양한 버스 아키텍처들 중 임의의 것을 사용하는 메모리 버스, 메모리 제어기, 주변 버스, 로컬 버스 및 이들의 임의의 조합들을 포함하되, 이에 제한되는 않는 수개의 타입들의 버스 구조들 중 임의의 것을 포함할 수 있다.
메모리(608)는 랜덤 액세스 메모리 구성요소, 판독 전용 구성요소 및 이들의 임의의 조합들을 포함하되, 이에 제한되지 않는 다양한 구성요소들(예를 들어, 머신 판독 가능 매체)를 포함할 수 있다. 일 예에서, 예를 들어, 시동 동안 컴퓨터 시스템(600) 내의 요소들 사이에서 정보를 전송하는 것을 돕는 기본 루틴들을 포함하는 기본 입/출력 시스템(616)(BIOS)이 메모리(608)에 저장될 수 있다. 메모리(608)는 또한 본 개시내용의 양태들 및/또는 방법론들 중 임의의 하나 이상을 구체화하는 명령어들(예를 들어, 소프트웨어)(620)을 포함할 수 있다(예를 들어, 하나 이상의 머신 판독 가능 매체 상에 저장할 수 있다). 다른 예에서, 메모리(608)는 운영 체제, 하나 이상의 애플리케이션 프로그램, 다른 프로그램 모듈들, 프로그램 데이터 및 이들의 임의의 조합들을 포함하되, 이에 제한되지 않는 임의의 수의 프로그램 모듈들을 추가로 포함할 수 있다.
컴퓨터 시스템(600)은 또한 저장 디바이스(624)를 포함할 수 있다. 저장 디바이스(예를 들어, 저장 디바이스(624))의 예들은 하드 디스크 드라이브, 자기 디스크 드라이브, 광학 매체와 결합된 광 디스크 드라이브, 솔리드 스테이트 메모리 디바이스 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 저장 디바이스(624)는 적절한 인터페이스(도시 생략)에 의해 버스(612)에 연결될 수 있다. 예시적인 인터페이스들은 SCSI, ATA(advanced technology attachment), 직렬 ATA, USB(universal serial bus), IEEE 1394(FIREWIRE) 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 일 예에서, 저장 디바이스(624)(또는 그것의 하나 이상의 구성요소)는 (예를 들어, 외부 포트 커넥터(도시 생략)를 통해) 컴퓨터 시스템(600)과 이동식으로 인터페이스될 수 있다. 특히, 저장 디바이스(624) 및 연관된 머신 판독 가능 매체(628)는 컴퓨터 시스템(600)에 대한 머신 판독 가능 명령어들, 데이터 구조들, 프로그램 모듈들 및/또는 다른 데이터의 비휘발성 및/또는 휘발성 저장을 제공할 수 있다. 일 예에서, 소프트웨어(620)는 머신 판독 가능 매체(628) 내에 완전히 또는 부분적으로 상주할 수 있다. 다른 예에서, 소프트웨어(620)는 프로세서(604) 내에 완전히 또는 부분적으로 상주할 수 있다.
컴퓨터 시스템(600)은 또한 입력 디바이스(632)를 포함할 수 있다. 일 예에서, 컴퓨터 시스템(600)의 사용자는 입력 디바이스(632)를 통해 컴퓨터 시스템(600)에 명령들 및/또는 다른 정보를 입력할 수 있다. 입력 디바이스(632)의 예들은 영숫자 입력 디바이스(예를 들어, 키보드), 포인팅 디바이스, 조이스틱, 게임 패드, 오디오 입력 디바이스(예를 들어, 마이크로폰, 음성 응답 시스템 등), 커서 제어 디바이스(예를 들어, 마우스), 터치 패드, 광학 스캐너, 비디오 캡처 디바이스(예를 들어, 스틸 카메라, 비디오 카메라), 터치 스크린 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 입력 디바이스(632)는 직렬 인터페이스, 병렬 인터페이스, 게임 포트, USB 인터페이스, FIREWIRE 인터페이스, 버스(612)에 대한 직접 인터페이스 및 이들의 임의의 조합들을 포함하되, 이에 제한되지 않는 다양한 인터페이스들(도시 생략) 중 임의의 것을 통해 버스(612)에 인터페이스될 수 있다. 입력 디바이스(632)는 아래에서 추가로 논의되는 디스플레이(636)의 일부이거나 이와 별개일 수 있는 터치 스크린 인터페이스를 포함할 수 있다. 입력 디바이스(632)는 위에서 설명된 바와 같이 그래픽 인터페이스에서 하나 이상의 그래픽 표현을 선택하기 위한 사용자 선택 디바이스로서 활용될 수 있다.
사용자는 또한 저장 디바이스(624)(예를 들어, 이동식 디스크 드라이브, 플래시 드라이브 등) 및/또는 네트워크 인터페이스 디바이스(640)를 통해 컴퓨터 시스템(600)에 명령들 및/또는 다른 정보를 입력할 수 있다. 네트워크 인터페이스 디바이스(640)와 같은 네트워크 인터페이스 디바이스는 컴퓨터 시스템(600)을 네트워크(644)와 같은 다양한 네트워크들 및 그에 연결된 하나 이상의 원격 디바이스(648) 중 하나 이상에 연결하기 위해 활용될 수 있다. 네트워크 인터페이스 디바이스의 예들은 네트워크 인터페이스 카드(예를 들어, 모바일 네트워크 인터페이스 카드, LAN 카드), 모뎀 및 이들의 임의의 조합을 포함하지만, 이에 제한되지 않는다. 네트워크의 예들은 광역 네트워크(예를 들어, 인터넷, 기업 네트워크), 근거리 네트워크(예를 들어, 사무실, 건물, 캠퍼스 또는 다른 비교적 작은 지리적 공간과 연관된 네트워크), 전화 네트워크, 전화/음성 공급자와 연관된 데이터 네트워크(예를 들어, 이동 통신 공급자 데이터 및/또는 음성 네트워크), 두 컴퓨팅 디바이스 사이의 직접 연결, 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 네트워크(644)와 같은 네트워크는 유선 및/또는 무선 통신 모드를 채택할 수 있다. 일반적으로, 임의의 네트워크 토폴로지가 사용될 수 있다. 정보(예를 들어, 데이터, 소프트웨어(620) 등)는 네트워크 인터페이스 디바이스(640)를 통해 컴퓨터 시스템(600)으로 및/또는 컴퓨터 시스템(600)으로부터 통신될 수 있다.
컴퓨터 시스템(600)은 디스플레이 디바이스(636)와 같은 디스플레이 디바이스에 디스플레이 가능한 이미지를 전달하기 위한 비디오 디스플레이 어댑터(652)를 추가로 포함할 수 있다. 디스플레이 디바이스의 예들은 액정 디스플레이(liquid crystal display)(LCD), 음극선관(cathode ray tube)(CRT), 플라즈마 디스플레이, 발광 다이오드(light emitting diode)(LED) 디스플레이 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다. 디스플레이 어댑터(652) 및 디스플레이 디바이스(636)는 프로세서(604)와 결합하여 본 개시내용의 양태들의 그래픽 표현을 제공하는 데 활용될 수 있다. 디스플레이 디바이스에 추가하여, 컴퓨터 시스템(600)은 오디오 스피커, 프린터 및 이들의 임의의 조합들을 포함하되, 이에 제한되지 않는 하나 이상의 다른 주변 출력 디바이스를 포함할 수 있다. 이러한 주변 출력 디바이스들은 주변 인터페이스(656)를 통해 버스(612)에 연결될 수 있다. 주변 인터페이스의 예들은 직렬 포트, USB 연결, FIREWIRE 연결, 병렬 연결 및 이들의 임의의 조합들을 포함하지만, 이에 제한되지 않는다.
전술한 내용은 본 발명의 예시적인 실시예들에 대한 상세한 설명이었다. 본 발명의 사상 및 범위를 벗어나지 않고 다양한 수정들 및 추가들이 이루어질 수 있다. 위에서 설명된 다양한 실시예들 각각의 특징들은 연관된 새로운 실시예들에서 다수의 특징 결합들을 제공하기 위해 적절한 다른 설명된 실시예들의 특징들과 결합될 수 있다. 또한, 전술한 내용은 다수의 개별적인 실시예들을 설명하지만, 본원에 설명된 것은 단지 본 발명의 원리들의 적용을 예시한 것에 불과하다. 또한, 본원의 특정 방법들이 특정 순서로 수행되는 것으로 예시 및/또는 설명될 수 있지만, 본원에 개시된 실시예들을 달성하기 위해 순서는 통상의 기술 내에서 매우 가변적이다. 따라서, 이 설명은 단지 예로서 취해지는 것을 의미하며, 본 발명의 범위를 달리 제한하지 않는다.
상기 설명들 및 청구항들에서, "중 적어도 하나" 또는 "중 하나 이상"과 같은 구들은 요소들 또는 특징들의 연결 리스트 후에 발생할 수 있다. 용어 "및/또는" 또한 2개 이상의 요소 또는 특징의 리스트에서 발생할 수 있다. 그것이 사용되는 맥락에 의해 암시적으로 또는 명시적으로 달리 모순되지 않는 한, 그러한 구는 열거된 요소들 또는 특징들 중 어느 것을 개별적으로 의미하거나 다른 열거된 요소들 또는 특징들 중 어느 것과 조합하여 열거된 요소들 또는 특징들 중 어느 것을 의미하도록 의도된다. 예를 들어, 구들 "A 및 B 중 적어도 하나"; "A 및 B 중 하나 이상"; 및 "A 및/또는 B"는 "A 단독, B 단독, 또는 A 및 B 함께"를 의미하도록 각각 의도된다. 유사한 해석은 또한 3개 이상의 아이템을 포함하는 리스트들을 위해 의도된다. 예를 들어, 구들 "A, B, 및 C 중 적어도 하나"; "A, B, 및 C 중 하나 이상"; 및 "A, B, 및/또는 C"는 "A 단독, B 단독, C 단독, A 및 B 함께, A 및 C 함께, B 및 C 함께, 또는 A 및 B 및 C 함께"를 의미하도록 각각 의도된다. 게다가, 용어 "기초하여"의 사용은 위에서 그리고 청구항들에서 "에 적어도 부분적으로 기초하여"를 의미하도록 의도되어, 비열거된 특징 또는 요소가 또한 허용가능하다.
본원에 설명되는 발명 대상은 원하는 구성에 따라 시스템들, 장치, 방법들, 및/또는 물품들로 구체화될 수 있다. 상술한 설명에 제시되는 구현들은 본원에 설명되는 발명 대상과 일치하는 모든 구현들을 표현하지는 않는다. 대신에, 그들은 설명된 발명 대상과 관련된 양태들과 일치하는 일부 예들일 뿐이다. 수개의 변형들이 위에 상세히 설명되었지만, 다른 수정들 또는 추가들이 가능하다. 특히, 추가 특징들 및/또는 변형들이 본원에 제시되는 것들에 더하여 제공될 수 있다. 예를 들어, 위에 설명된 구현들은 개시된 특징들의 다양한 조합들 및 서브조합들 및/또는 위에 개시된 수개의 추가 특징들의 조합들 및 서브조합들에 관한 것일 수 있다. 게다가, 첨부 도면들에 도시되고 그리고/또는 본원에 설명되는 논리 흐름들은 바람직한 결과들을 달성하기 위해, 도시되는 특정 순서, 또는 순차적 순서를 반드시 필요로 하는 것은 아니다. 다른 구현들은 이하의 청구항들의 범위 내에 있을 수 있다.

Claims (36)

  1. 디코더로서,
    회로망
    을 포함하고, 상기 회로망은,
    비트스트림을 수신하고,
    기하학적 파티셔닝 모드(geometric partitioning mode)에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하고,
    상기 제1 영역, 상기 제2 영역 및 상기 제3 영역 각각에 대해 역 이산 코사인 변환(inverse discrete cosine transformation)을 사용하여 상기 현재 블록을 디코딩하도록
    구성되는, 디코더.
  2. 제1항에 있어서, 상기 현재 블록은 128x128 또는 64x64의 크기를 갖는, 디코더.
  3. 제1항에 있어서, 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역의 역 변환을 위한 계수들의 수가 상기 비트스트림으로 시그널링되는, 디코더.
  4. 제1항에 있어서,
    상기 기하학적 파티셔닝 모드가 인에이블되는지를 결정하고,
    상기 현재 블록에 대한 제1 라인 세그먼트를 결정하고,
    상기 현재 블록에 대한 제2 라인 세그먼트를 결정하도록
    추가로 구성되고,
    상기 현재 블록을 디코딩하는 것은 상기 제1 라인 세그먼트 및 상기 제2 라인 세그먼트를 사용하여 픽셀 데이터를 재구성하는 것을 포함하고,
    상기 제1 라인 세그먼트 및 상기 제2 라인 세그먼트는 상기 현재 블록을 상기 제1 영역, 상기 제2 영역 및 상기 제3 영역으로 파티셔닝하는, 디코더.
  5. 제4항에 있어서, 상기 제1 라인 세그먼트는 상기 제1 영역을 특징화하고, 상기 제2 라인 세그먼트는 상기 제2 영역 및 상기 제3 영역을 특징화하는, 디코더.
  6. 제4항에 있어서, 픽셀 데이터를 재구성하는 것은 상기 비트스트림에 포함된 연관된 모션 벡터를 사용하여 상기 제1 영역에 대한 예측자(predictor)를 계산하는 것을 포함하는, 디코더.
  7. 제1항에 있어서,
    상기 비트스트림을 수신하고 상기 비트스트림을 양자화된 계수들로 디코딩하도록 구성되는 엔트로피 디코더 프로세서;
    결정된 코딩 변환 타입에 따라 역 이산 코사인을 수행하는 것을 포함하여 상기 양자화된 계수들을 처리하도록 구성되는 역 양자화 및 역 변환 프로세서;
    블록해제 필터(deblocking filter);
    프레임 버퍼; 및
    인트라 예측 프로세서
    를 추가로 포함하는, 디코더.
  8. 제1항에 있어서, 상기 비트스트림은 상기 현재 블록에 대해 기하학적 파티셔닝 모드가 인에이블되는지를 표시하는 파라미터를 포함하는, 디코더.
  9. 제1항에 있어서, 상기 현재 블록은 쿼드트리 + 이진 결정 트리(quadtree plus binary decision tree)의 일부를 형성하는, 디코더.
  10. 제1항에 있어서, 상기 현재 블록은 쿼드트리 + 이진 결정 트리의 비-리프 노드(non-leaf node)인, 디코더.
  11. 제1항에 있어서, 상기 현재 블록은 코딩 트리 유닛 또는 코딩 유닛인, 디코더.
  12. 제1항에 있어서, 상기 제1 영역은 코딩 유닛 또는 예측 유닛인, 디코더.
  13. 디코더로서,
    회로망
    을 포함하고, 상기 회로망은,
    비트스트림을 수신하고,
    기하학적 파티셔닝 모드에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하고,
    상기 비트스트림에 포함된 신호로부터, 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역 각각을 디코딩하기 위한 코딩 변환 타입을 결정하고 - 상기 코딩 변환 타입은 적어도 역 블록 이산 코사인 변환(inverse block discrete cosine transformation) 및 역 모양 적응 이산 코사인 변환(inverse shape adaptive discrete cosine transformation)을 특징화함 -,
    상기 현재 블록을 디코딩하도록 - 상기 현재 블록을 디코딩하는 것은 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역 각각에 대한 역 변환을 위해 상기 결정된 변환 타입을 사용하는 것을 포함함 -
    구성되는, 디코더.
  14. 제13항에 있어서, 상기 현재 블록은 128x128 또는 64x64의 크기를 갖는, 디코더.
  15. 제13항에 있어서, 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역의 역 변환을 위한 계수들의 수가 상기 비트스트림으로 시그널링되는, 디코더.
  16. 제13항에 있어서,
    상기 기하학적 파티셔닝 모드가 인에이블되는지를 결정하고,
    상기 현재 블록에 대한 제1 라인 세그먼트를 결정하고,
    상기 현재 블록에 대한 제2 라인 세그먼트를 결정하도록
    추가로 구성되고,
    상기 현재 블록을 디코딩하는 것은 상기 제1 라인 세그먼트 및 상기 제2 라인 세그먼트를 사용하여 픽셀 데이터를 재구성하는 것을 포함하고,
    상기 제1 라인 세그먼트 및 상기 제2 라인 세그먼트는 상기 현재 블록을 상기 제1 영역, 상기 제2 영역 및 상기 제3 영역으로 파티셔닝하는, 디코더.
  17. 제16항에 있어서, 상기 제1 라인 세그먼트는 상기 제1 영역을 특징화하고, 상기 제2 라인 세그먼트는 상기 제2 영역 및 상기 제3 영역을 특징화하는, 디코더.
  18. 제16항에 있어서, 픽셀 데이터를 재구성하는 것은 상기 비트스트림에 포함된 연관된 모션 벡터를 사용하여 상기 제1 영역에 대한 예측자를 계산하는 것을 포함하는, 디코더.
  19. 제13항에 있어서,
    상기 비트스트림을 수신하고 상기 비트스트림을 양자화된 계수들로 디코딩하도록 구성되는 엔트로피 디코더 프로세서;
    상기 결정된 코딩 변환 타입에 따라 역 이산 코사인을 수행하는 것을 포함하여 상기 양자화된 계수들을 처리하도록 구성되는 역 양자화 및 역 변환 프로세서;
    블록해제 필터;
    프레임 버퍼; 및
    인트라 예측 프로세서
    를 추가로 포함하는, 디코더.
  20. 제13항에 있어서, 상기 비트스트림은 상기 현재 블록에 대해 기하학적 파티셔닝 모드가 인에이블되는지를 표시하는 파라미터를 포함하는, 디코더.
  21. 제13항에 있어서, 상기 현재 블록은 쿼드트리 + 이진 결정 트리의 일부를 형성하는, 디코더.
  22. 제13항에 있어서, 상기 현재 블록은 쿼드트리 + 이진 결정 트리의 비-리프 노드인, 디코더.
  23. 제13항에 있어서, 상기 현재 블록은 코딩 트리 유닛 또는 코딩 유닛인, 디코더.
  24. 제13항에 있어서, 상기 제1 영역은 코딩 유닛 또는 예측 유닛인, 디코더.
  25. 방법으로서,
    디코더에 의해, 비트스트림을 수신하는 단계;
    기하학적 파티셔닝 모드에 따라 현재 블록의 제1 영역, 제2 영역 및 제3 영역을 결정하는 단계;
    상기 비트스트림에 포함된 신호로부터, 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역을 디코딩하기 위한 코딩 변환 타입을 결정하는 단계 - 상기 코딩 변환 타입은 적어도 역 블록 이산 코사인 변환 또는 역 모양 적응 이산 코사인 변환을 특징화함 -; 및
    상기 현재 블록을 디코딩하는 단계 - 상기 현재 블록을 디코딩하는 단계는 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역 각각에 대한 역 변환을 위해 상기 결정된 변환 타입을 사용하는 단계를 포함함 -
    를 포함하는, 방법.
  26. 제25항에 있어서, 상기 현재 블록은 128x128 또는 64x64의 크기를 갖는, 방법.
  27. 제25항에 있어서, 상기 제1 영역, 상기 제2 영역 및/또는 상기 제3 영역의 역 변환을 위한 계수들의 수가 상기 비트스트림으로 시그널링되는, 방법.
  28. 제25항에 있어서,
    상기 디코더에 의해, 상기 기하학적 파티셔닝 모드가 인에이블되는지를 결정하는 단계;
    상기 디코더에 의해, 상기 현재 블록에 대한 제1 라인 세그먼트를 결정하는 단계; 및
    상기 디코더에 의해, 상기 현재 블록에 대한 제2 라인 세그먼트를 결정하는 단계
    를 추가로 포함하고,
    상기 현재 블록을 디코딩하는 단계는 상기 제1 라인 세그먼트 및 상기 제2 라인 세그먼트를 사용하여 픽셀 데이터를 재구성하는 단계를 포함하고,
    상기 제1 라인 세그먼트 및 상기 제2 라인 세그먼트는 상기 현재 블록을 상기 제1 영역, 상기 제2 영역 및 상기 제3 영역으로 파티셔닝하는, 방법.
  29. 제28항에 있어서, 상기 제1 라인 세그먼트는 상기 제1 영역을 특징화하고, 상기 제2 라인 세그먼트는 상기 제2 영역 및 상기 제3 영역을 특징화하는, 방법.
  30. 제28항에 있어서, 픽셀 데이터를 재구성하는 단계는 상기 비트스트림에 포함된 연관된 모션 벡터를 사용하여 상기 제1 영역에 대한 예측자를 계산하는 단계를 포함하는, 방법.
  31. 제25항에 있어서, 상기 디코더는,
    상기 비트스트림을 수신하고 상기 비트스트림을 양자화된 계수들로 디코딩하도록 구성되는 엔트로피 디코더 프로세서;
    상기 결정된 코딩 변환 타입에 따라 역 이산 코사인을 수행하는 것을 포함하여 상기 양자화된 계수들을 처리하도록 구성되는 역 양자화 및 역 변환 프로세서;
    블록해제 필터;
    프레임 버퍼; 및
    인트라 예측 프로세서
    를 포함하는, 방법.
  32. 제25항에 있어서, 상기 비트스트림은 상기 블록에 대해 블록 레벨 기하학적 파티셔닝 모드가 인에이블되는지를 표시하는 파라미터를 포함하는, 방법.
  33. 제25항에 있어서, 상기 현재 블록은 쿼드트리 + 이진 결정 트리의 일부를 형성하는, 방법.
  34. 제25항에 있어서, 상기 현재 블록은 쿼드트리 + 이진 결정 트리의 비-리프 노드인, 방법.
  35. 제25항에 있어서, 상기 현재 블록은 코딩 트리 유닛 또는 코딩 유닛인, 방법.
  36. 제25항에 있어서, 상기 제1 영역은 코딩 유닛 또는 예측 유닛인, 방법.
KR1020217027274A 2019-01-28 2020-01-28 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환 KR20210118166A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962797799P 2019-01-28 2019-01-28
US62/797,799 2019-01-28
PCT/US2020/015401 WO2020159982A1 (en) 2019-01-28 2020-01-28 Shape adaptive discrete cosine transform for geometric partitioning with an adaptive number of regions

Publications (1)

Publication Number Publication Date
KR20210118166A true KR20210118166A (ko) 2021-09-29

Family

ID=71840394

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217027274A KR20210118166A (ko) 2019-01-28 2020-01-28 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환

Country Status (8)

Country Link
US (1) US20210360246A1 (ko)
EP (1) EP3918784A4 (ko)
KR (1) KR20210118166A (ko)
CN (1) CN113597757A (ko)
BR (1) BR112021014671A2 (ko)
MX (1) MX2021009030A (ko)
SG (1) SG11202107974YA (ko)
WO (1) WO2020159982A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10733766B2 (en) * 2016-10-19 2020-08-04 Google, Llc Methods and apparatus to encode and/or decode normals of geometric representations of surfaces
US11323748B2 (en) * 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
US11876973B2 (en) 2021-04-12 2024-01-16 Alibaba (China) Co., Ltd. Method, apparatus, and non-transitory computer-readable storage medium for motion vector refinement for geometric partition mode
WO2023195762A1 (ko) * 2022-04-05 2023-10-12 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19719383A1 (de) * 1997-05-07 1998-11-19 Siemens Ag Verfahren und Vorrichtung zur Codierung und Decodierung eines digitalisierten Bildes
JP4313710B2 (ja) * 2004-03-25 2009-08-12 パナソニック株式会社 画像符号化方法および画像復号化方法
US8879632B2 (en) * 2010-02-18 2014-11-04 Qualcomm Incorporated Fixed point implementation for geometric motion partitioning
US9747255B2 (en) * 2011-05-13 2017-08-29 Texas Instruments Incorporated Inverse transformation using pruning for video coding
KR101892329B1 (ko) * 2011-11-03 2018-08-27 톰슨 라이센싱 이미지 정교화에 기초한 비디오 인코딩 및 디코딩
EP4161078A1 (en) * 2011-11-11 2023-04-05 GE Video Compression, LLC Effective wedgelet partition coding using spatial prediction
US20130287109A1 (en) * 2012-04-29 2013-10-31 Qualcomm Incorporated Inter-layer prediction through texture segmentation for video coding
FI2869557T3 (fi) * 2012-06-29 2023-11-02 Electronics & Telecommunications Res Inst Menetelmä ja laite kuvien koodaamiseksi/dekoodaamiseksi
US9883198B2 (en) * 2012-11-13 2018-01-30 Intel Corporation Video codec architecture for next generation video
US10477232B2 (en) * 2014-03-21 2019-11-12 Qualcomm Incorporated Search region determination for intra block copy in video coding
US11042643B2 (en) * 2015-12-24 2021-06-22 Intel Corporation Trusted deployment of application containers in cloud data centers
WO2018141416A1 (en) * 2017-02-06 2018-08-09 Huawei Technologies Co., Ltd. Video encoder and decoder for predictive partitioning
CN111373757B (zh) * 2017-11-24 2022-10-21 索尼公司 图像处理设备和方法
JP7036123B2 (ja) * 2017-12-05 2022-03-15 株式会社ソシオネクスト 符号化方法、復号方法、符号化装置、復号装置、符号化プログラム及び復号プログラム
US11695967B2 (en) * 2018-06-22 2023-07-04 Op Solutions, Llc Block level geometric partitioning
SG11202108103WA (en) * 2019-01-28 2021-08-30 Op Solutions Llc Inter prediction in geometric partitioning with an adaptive number of regions

Also Published As

Publication number Publication date
MX2021009030A (es) 2021-10-13
CN113597757A (zh) 2021-11-02
JP2022524916A (ja) 2022-05-11
EP3918784A4 (en) 2022-04-13
EP3918784A1 (en) 2021-12-08
BR112021014671A2 (pt) 2021-09-28
SG11202107974YA (en) 2021-08-30
US20210360246A1 (en) 2021-11-18
WO2020159982A1 (en) 2020-08-06

Similar Documents

Publication Publication Date Title
KR20210118166A (ko) 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환
KR20220088680A (ko) 프레임 타입에 기반한 적응적 해상도 관리의 묵시적 시그널링
US20210360271A1 (en) Inter prediction in exponential partitioning
US11695922B2 (en) Inter prediction in geometric partitioning with an adaptive number of regions
KR20220088681A (ko) 적응적 해상도 관리 시그널링
KR20220002990A (ko) 인터 예측에서의 글로벌 모션 제약 모션 벡터
KR20210153128A (ko) 인터 예측에서의 병합 모드 후보들에 대한 글로벌 모션
KR20220016266A (ko) 글로벌 모션 벡터에 기초한 병합 후보 재정렬기
US20230239464A1 (en) Video processing method with partial picture replacement
KR20220090493A (ko) 블록-기반 적응적 해상도 관리
KR20220002996A (ko) 글로벌 모션을 갖는 프레임들에서의 후보들
KR20220002991A (ko) 글로벌 모션을 갖는 프레임들에서의 적응적 모션 벡터 예측 후보들
KR20210153129A (ko) 글로벌 모션을 갖는 프레임들에서의 선택적 모션 벡터 예측 후보들
CN114503583A (zh) 使用子帧的自适应分辨率管理
KR20220002987A (ko) 모션 벡터 인터 예측을 위한 글로벌 모션 모델들
JP7482536B2 (ja) 適応的な数の領域を伴う幾何学的分割のための形状適応離散コサイン変換
US11825075B2 (en) Online and offline selection of extended long term reference picture retention
KR20210118155A (ko) 연장된 장기 참조 픽처 보유의 명시적 시그널링
KR20210152567A (ko) 픽처 헤더 내의 글로벌 모션 벡터의 시그널링
WO2023137217A1 (en) Sign prediction for block-based video coding

Legal Events

Date Code Title Description
A201 Request for examination