KR20190124341A - 저-지연을 위한 샘플 배치 코딩 - Google Patents

저-지연을 위한 샘플 배치 코딩 Download PDF

Info

Publication number
KR20190124341A
KR20190124341A KR1020197031689A KR20197031689A KR20190124341A KR 20190124341 A KR20190124341 A KR 20190124341A KR 1020197031689 A KR1020197031689 A KR 1020197031689A KR 20197031689 A KR20197031689 A KR 20197031689A KR 20190124341 A KR20190124341 A KR 20190124341A
Authority
KR
South Korea
Prior art keywords
entropy
fragment
piece
probability estimates
decoding
Prior art date
Application number
KR1020197031689A
Other languages
English (en)
Other versions
KR102085171B1 (ko
Inventor
발레리 게오르게
아나스타샤 헨켈
하이너 키르흐호퍼
데트레브 마르페
토마스 쉬를
Original Assignee
지이 비디오 컴프레션, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=46548436&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR20190124341(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 지이 비디오 컴프레션, 엘엘씨 filed Critical 지이 비디오 컴프레션, 엘엘씨
Publication of KR20190124341A publication Critical patent/KR20190124341A/ko
Application granted granted Critical
Publication of KR102085171B1 publication Critical patent/KR102085171B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3068Precoding preceding compression, e.g. Burrows-Wheeler transformation
    • H03M7/3071Prediction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/97Matching pursuit 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/98Adaptive-dynamic-range coding [ADRC]
    • 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/99Methods 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 involving fractal coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4031Fixed length to variable length coding
    • H03M7/4037Prefix coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Analysis (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)
  • Networks Using Active Elements (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Dc Digital Transmission (AREA)

Abstract

미리 결정된 엔트로피 조각의 현재 부분의 엔트로피 코딩은 미리 결정된 엔트로피 조각의 이전에 코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들 뿐만 아니라, 그들의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서에서 공간적으로 인접한 것의 엔트로피 코딩에서 이용될 때 개연성 추정들에도 기반한다. 그에 의해, 엔트로피 코딩에서 이용되는 개연성 추정들은 실제 기호 통계들에 더 가까이 적응되며, 더 낮은 지연 개념들에 의해 일반적으로 야기되는 코딩 효율을 낮추는 것이 감소한다. 시간적 상호관련성은 추가적으로 또는 대안적으로 이용된다.

Description

저-지연을 위한 샘플 배치 코딩{SAMPLE ARRAY CODING FOR LOW-DELAY}
본 발명은 그림 또는 비디오 코딩처럼 샘플 배치 코딩과 관련된다.
인코더 및 디코더의 병렬화(평행화, Parallelization)는 비디오 해상도의 예상되는 증가에 의해서 뿐만 아니라 HEVC 기준에 의한 증가된 프로세싱 요구 때문에 매우 중요하다. 멀티-코어 구조는 현대 전자 장치들의 넓은 범위에서 이용가능하게 되었다. 결과적으로, 다중-코어 구조의 이용을 가능하게 하는 효율적인 방법들이 필요하다.
LCU들의 인코딩 또는 디코딩은 래스터 스캔(raster scan)에서, CABAC 개연성이 각 이미지의 특성들에 적용되며, 일어난다. 공간적 의존도들이 인접 LCU들 사이에 존재한다. 각 LCU (가장 큰 코딩 유닛)은 그것의 왼쪽, 위쪽, 위-왼쪽, 및 위-오른쪽 인접 LCU들에 의존하고, 이는 예를 들어, 모션-예측, 예측, 내부-예측 및 다른 것들 같은, 상이한 구성요소들 때문이다. 디코딩에서 병렬화를 가능하게 하기 때문에, 이러한 의존도들은 일반적으로 최신 응용들에서 간섭받을 필요가 있거나 간섭받는다.
병행화의 몇몇 개념들이, 즉 파면(wavefront) 처리가 제안되었다. 추가 연구에 대한 동기는, 코딩 효율 손실을 낮추고 그래서 인코더 및 디코더에서 병행화 접근에 대한 비트스트림상의 부담을 감소시키는, 기술을 수행하는 것이다. 게다가, 저-지연 프로세싱은 이용가능한 기술들과 함께 가능하지 않았다.
이와 같이, 코딩 효율에서 비교적 적은 페널티들에서 더 낮은 지연은 가능하게 하는 샘플 배치들에 대한 코딩 개념을 제공하는 것이 본 발명의 목적이다.
이 목적은 포함된 독립 청구항들의 주제에 의해 달성된다.
미리 결정된 엔트로피 조각(슬라이스, slice)의 현재 부분의 엔트로피 코딩이, 미리 결정된 엔트로피 조각의 이전에 코딩된 부분을 이용하여 적용되는 것에 따라 미리 결정된 엔트로피 조각의 각 개연성 추정들만이 아니라, 그것의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한것의 엔트로피 코딩에서 이요되는 것에 따른 개연성 추정들에도 기반하는 경우, 엔트로피 코딩에서 이용되는 개연성 추정들은 실제 기호 통계들에 더 가까이 적용되며, 그래서 저-지연 개념들에 의해 일반적으로 야기되는 코딩 효율 감소를 낮춘다. 시간적 상호관련성이 추가적으로 또는 대안적으로 이용될 수 있다.
본 발명의 실시예들의 유리한 실행들은 종속항들의 주제이다. 게다가, 바람직한 실시예들은 다음 도면들과 관련하여 설명된다.
도 1은 예시적 인코더의 블록 다이어그램을 보여준다.
도 2는 그것들 중 정의된 코딩 순서에 따라 조각들 및 조각 부분들(즉 블록들 또는 코딩 유닛들)의 그림의 분할의 개략도를 보여준다.
도 3은 도 1 중 하나처럼 예시적 인코더의 기능의 흐름도를 보여준다.
도 4는 도 1중 하나처럼 예시적 인코더의 기능을 설명하는 개략도를 보여준다.
도 5는 인코더 및 디코더의 병행 작동 실행에 대한 개략도를 보여준다.
도 6은 예시적 디코더의 블록 다이어그램을 보여준다.
도 7은 도 6중 하나처럼 예시적 디코더의 기능의 흐름도를 보여준다.
도 8은 도 1 내지 6의 코딩 설계로부터 도출되는 예시적 비트스트림에 대한 개략도를 보여준다.
도 9는 어떻게 개연성을 다른 LCU들의 도움과 함께 계산하는지에 대한 예를 개략적으로 보여준다.
도 10은 HM3.0과 비교하여, 인트라(4 Threads(스레드))에 대한 RD 결과들을 도시하는 그래프를 보여준다.
도 11은 HM3.0와 비교하여, 낮은 지연 (1 Thread(스레드))에 RD 결과들을 도시하는 그래프를 보여준다.
도 12는 HM3.0과 비교하여, 랜덤 엑세스(1 스레드)에 대해 RD 결과들을 도시하는 그래프를 보여준다.
도 13은 HM3.0과 비교하여, 저지연(4 스레드)에 대한 RD 결과들을 도시하는 그래프를 보여준다.
도 14는 엔트로피 조각들의 가능한 혼합을 예시적으로 그리고 개략적으로 도시한다.
도 15는 엔트로피 조각의 가능한 시그널링을 개략적으로 그리고 시각적으로 도시한다.
도 16은 청크(chunk, 덩어리)를 통해 엔트로피 조각 데이터의 삽입 및 디코딩, 분할(segmentation), 인코딩을 예시적으로 그리고 개략적으로 도시한다.
도 17은 프레임들 사이의 가능한 혼합을 예시적으로 그리고 개략적으로 도시한다.
도 18은 병치된(collocated) 정보의 가능한 이용을 예시적으로 그리고 개략적으로 도시한다.
도 19는 연속 샘플 배치들에 걸친 공간적/시간적 공간 내에 비스듬히 지속되는 파면의 가능성을 개략적으로 보여준다.
도 20은 청크로 엔트로피 조각들을 세분하기 위한 또다른 예를 개략적으로 보여준다.
예를 들어, 공간적 인접성의 엔트로피 코딩에서 이용되는 것처럼 개연성 추정들에의 의존은, 엔트로피 조각을 선행하는 엔트로피 조각 순서로 미리 결정된 엔트로피 조각을 엔트로피 코딩하는 시작에서 개연성 추정들의 초기화를 포함할 수 있다. 일반적으로, 개연성 추정들은 샘플 배치 재료의 각 혼합의 기호 통계들에 적용되는 값들에 초기화된다. 개연성 추정들의 초기화 값들의 전송을 피하기 위해, 그것들은 전통적인 방식 의해 엔코더 및 디코더에 알려진다. 그러나, 그러한 미리-정의된 초기화 값들은, 자연적으로, 초기화 값들이 자연적으로 - 더 많이 또는 더 적게 - 현재 코딩된 샘플 배치 재료의 실제 샘플 통계들로부터 벗어나는 것처럼 한편으로는 부가 정보 비트레이트 및 다른 한편으로 코딩 효율성 사이의 단순한 타협이다. 엔트로피 조각을 코딩하는 코스 동안 개연성 적응(probability adaptation)은 실제 기호 통계들에 개연성 추정들을 적응시킨다. 이 프로세스는, 현재 가까이에 샘플 배치의 실제 기호 통계들에, 몇몇 확장들까지, 이미 적용된 나중의 값들에 따른 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 방금-언급된 공간적 인접의 이미 적용된 개연성 추정들을 이용하여 현재/미리 결정된 엔트로피 조각을 엔트로피 코딩하는 것의 시작에서 개연성 추정을 초기화하는 것에 의해 가속된다. 저-지연 코딩은 그럼에도, 미리 결정된/현재 엔트로피 조각들에 대한 개연성 추정을 초기화하는 데 있어, 선행 엔트로피 조각을 엔트로피 코딩하는 것의 끝에서 그 자신들을 드러내는 것보다, 그것들의 인접 부분에서 이용되는 개연성 추정을 이용하는 것에 의해 이용 가능해질 수 있다. 이 방식에 의해, 파면 프로세싱이 여전히 가능하다.
게다가, 공간적으로 인접한 것의 엔트로피 코딩에서 이용되는 것처럼 개연성 추정들에 대한 위에서-언급된 의존도는, 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 선행 엔트로피 조각이 현재/미리 결정된 엔트로피 조각 그 자체를 엔트로피 코딩하는데 이용되는 개연성 추정들을 적용하는 것의 적용 프로세스를 포함할 수 있다. 개연성 추정 적용은, 실제 기호 통계들에 대한 개연성 추정의 현재 상태를 적응(adapt)시키기 위해, 방금-코딩된 부분, 즉 방금-코딩된 기호(들),의 이용을 포함한다. 이 방식에 의해, 초기화된 개연성 추정들은 실제 기호 통계에 몇몇 적응 레이트(rate)로 적응된다. 이 적응 레이트는, 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 현재/미리 결정된 엔트로피 조각의 현재 코딩된 기호에 기반할 뿐만 아니라 공간적 인접한 인접 부분에서 그 자체들을 드러내는 것에 따라 개연성 추정들에도 의존하는 방금-언급된 개연성 추정 적응을 수행하는 것에 의해 증가된다. 다시, 현재 엔트로피 조각의 현재 부분의 공간적인 인접 및 선행 엔트로피 조각의 인접 부분을 적절히 선택하는 것에 의해, 파면 프로세싱은 여전히 가능하다. 현재 엔트로피 조각을 따라 자신의 개연성 추정 적응을 커플링하는 것으로부터의 이점은, 선행 엔트로피 조각의 개연성 조각과 함께, 실제 기호 통계들에 대한 적응이 현재 및 이전 엔트로피 조각들을 넘는 기호들의 숫자에 따라 일어나는 증가된 레이트(rate)이며 단지 현재 엔트로피 조각 기호들보다 적응에 기여한다.
코딩의 관점에서 더 낮은 페널티들에서의 저-지연의 달성을 향상시키기 위한 아래 설명되는 방법들의 이해를 더 쉽게 하기 위해, 도 1의 인코더는, 도 1의 실시예로 동일한 것이 어떻게 구축될 수 있는지 본 출원의 실시예들의 유리한 개념들을 사전에 논의함 없이 더 일반적인 용어들로 먼저 설명된다.
그러나, 도 1에서 보여진 구조들은, 단지 본 출원의 실시예들이 이용될 수 있는 설명적 환경으로 기능할 뿐이라는 것이 언급되어야 한다. 본 발명의 실시예들에 따른 인코더들 및 디코더들에 대한 일반화 및 대안들은 또한 간략히 논의된다.
도 1은 엔트로피 인코딩된 데이터 스트림(20)으로 샘플 배치(10)를 인코딩하기 위한 인코더를 보여준다. 도 1에서 보여지는 것처럼, 샘플 배치(10)는 샘플 배치들의 시퀀스(30) 중 하나일 수 있고 인코더는 데이터 스트림(20)으로 시퀀스(30)를 인코딩하도록 구성될 수 있다.
도 1의 인코더는 도면 부호 40에 의해 표시되고, 그것의 출력이 데이터 스트림(20)을 출력하는, 엔트로피 인코딩 스테이지(44)가 뒤따르는 프리코더(precoder, 42)를 포함한다. 프리코더(42)는, 차례로, 각 의미에 관련되는 구문 요소 타입들의 미리 결정된 집합 중 각 하나인 각 구문 요소와 미리 결정된 구문의 구문 요소들의 방식에 의해 그것들의 컨텐츠를 설명하기 위해 샘플 배치(10)를 작동하고 수신하도록 구성된다.
구문 요소들을 이용하여 샘플 배치(10)를 설명하는데 있어, 프리코더(42)는 샘플 배치(10)를 코딩 유닛들(50)로 서브분할(subdivide, 세분) 수 있다. "코딩 유닛" 용어는, 아래에서 더 자세히 설명될 이유 때문에, 대안적으로 "코딩 트리 유닛들"(CTU)들이라고 불릴 수 있다. 프리코더(42)가 어떻게 샘플 배치(10)를 코딩 유닛들(50)로 세분할 수 있는지의 하나의 가능성은 도 2에서 예시적으로 보여진다. 이 예에 따라, 세분은 샘플 배치(10)를 코딩 유닛들(50)로 정기적으로 세분하고, 나중의 것(latter)은 중첩(overlap)없이 완전한 샘플 배치(10)를 갭 없이 커버하도록 열과 행으로 배치된다. 다른 말로, 프리코더(42)는 구문 요소들의 방식으로 각 코딩 유닛(50)을 설명하도록 구성될 수 있다. 이러한 구문 요소들 중 몇몇은 각 코딩 유닛(50)을 더 세분하기 위한 세분 정보(서브분할 정보)를 형성할 수 있다. 예를 들어, 멀티-트리 세분의 방식에 의해, 세분 정보는 이러한 예측 블록들(52)의 각각에 대해 관련 예측 파라미터들과 예측 모드를 관련시키는 프리코더(42)와 함께 예측 블록(52)들로 각 코딩 유닛(50)의 세분을 설명할 수 있다. 이 예측 세분은 도 2에서 도시되는 것처럼 크기가 다른 예측 블록들(52)에 대해 허용될 수 있다. 프리코더(42)는 예측 블록(52) 당 예측 잔류물을 설명하기 위해 잔류 블록들(54)로 예측 블록들(52)를 더 세분하기 위해 예측 블록들(52)와 잔류물 세분 정보를 연관시킬 수도 있다. 이와 같이, 프리코더는 하이브리드 코딩 설계에 따라 샘플 배치(10)의 구문 설명을 발생시키도록 구성될 수 있다. 그러나, 위에서 설명된 것처럼, 프리코더(42)는 구문 요소들의 방식에 의해 샘플 배치(10)를 설명하는 방금 언급된 방식은 설명 목적을 위해 단지 존재하였고 다르게 실행될 수도 있다.
프리코더(42)는 샘플 배치(10)의 인접 코딩 유닛들(50)의 컨텐츠 사이의 공간적 상호관련성을 이용할 수 있다. 예를 들어, 프리코더(42)는 현재 코딩된 코딩 유닛(50)에 공간적으로 인접한 이전에 코딩된 코딩 유닛(50)에 대해결정된 구문 요소들로부터 특정 코딩 유닛(50)에 대해 구문 요소들을 예측할 수 있다. 도 1 및 2에서, 예를 들어, 위쪽 및 왼쪽 인접한 것들은 화살표 60 및 62에 의해 도시되는 것처럼 예측을 위해 기능한다. 게다가, 프리코더(42)는, 내부-예측 모드에서, 현재 코딩 유닛(50)의 샘플들의 예측을 얻기 위해 현재 코딩 유닛(50)으로 인접 코딩 유닛들(50)의 이미 코딩된 컨텐츠를 추론할 수 있다. 도 1에서 보여진 것처럼, 프리코더(42)는 화살표 64에 의해 도 1에서 설명적으로 보여지는 것처럼 이전에 코딩된 샘플 배치들로부터 현재 코딩 유닛(50)에 대해, 공간적 상호 관련성을 추론하는 것을 넘어, 샘플들 및/또는 구문 요소들을 일시적으로 예측할 수 있다. 그것은, 모션-보상 예측이 이용될 수 있고 프리코더(42)일 수 있고, 모션 벡터 그 자체들은 이전 코딩된 샘플 배치들의 모션 벡터로부터 시간적 예측의 대상이 될 수 있다는 것이다.
그것은, 프리코더(42)는 샘플 배치(10) 코딩 유닛 방향의 컨텐츠를 설명할 수 있고, 이를 위해, 공간적 예측을 이용할 수 있다는 것이다. 공간적 예측은, 샘플 배치(10)의 코딩 유닛들(50) 중 코딩 순서(66)를 따를 때, 공간적 예측에 대한 예측 레퍼런스로 기능하는 인접 코딩 유닛들이, 현재 코딩 유닛(50)에 우선하여 코딩 순서(66)에 의해 일반적으로 가로질러 지도록(순회되도록, traversed) 동일 샘플 배치(10)의 공간적 인접 코딩 유닛들에 각 코딩 유닛(50)에 대해 제한된다. 도 2에서 도시되는 것처럼, 코딩 유닛들(50) 중에서 정의되는 코딩 순서(66)는, 예를 들어, 코딩 유닛들(50)이 위에서부터 아래로 열별로(row by row) 순회되는 것에 따른 래스터 스캔 순서일 수 있다. 선택적으로, 타일들의 배치로의 배치(10)의 세분은 차례로, 래서트 스캔 타입일 수도 있는 타일 순서로 다음에 대해 선행하기 전에 먼저 하나의 타일(tile)을 작성하는 코딩 유닛(50)을 - 래스터 스캔 순서로 - 순회하기(traverse) 위한 스캔 순서(66)를 야기할 수 있다. 예를 들어, 공간적 예측은 현재 코딩 유닛(50)이 있는, 코딩 유닛 열 위의 코딩 유닛 열 내의 인접 코딩 유닛, 및 현재 코딩 유닛에 관계된 왼쪽에 대해, 동일 코딩 유닛 열 내의 코딩 유닛,을 단지 포함할 수 있다. 아래에서 더 자세히 설명될 것처럼, 공간적 상호관련성/공간적 예측에의 이 제한은 병행 파면 프로세싱을 가능하게 한다.
프리코더(42)는 엔트로피 코딩 스테이지(44)에 구문 요소들을 포워딩시킨다. 방금 설명된 것처럼, 이러한 구문 요소들의 몇몇은 예측적으로 코딩되었고, 즉, 예측 잔류물들을 표현한다. 프리코더(42)는, 이와 같이, 예측 코더로 간주될 수 있다. 이를 넘어, 프리코더(42)는 코딩 유닛들(50)의 컨텐츠의 예측의 잔류물들을 변형 코딩하도록 구성되는 변형 코더일 수 있다.
엔트로피 코딩 스테이지(44)의 예시적 내부 구조는 도 1에서도 보여진다. 보여지는 것처럼, 엔트로피 코딩 스테이지(44)는, 선택적으로, 프리코더(42)로부터 수신되는 구문 요소들 각각을 변환시키기 위한 심볼라이저, 엔트로피 코딩 엔진(44)이 족당하는 것에 기반한 기호 알파벳의 기호 si의 시퀀스로 기호 알파벳들의 카디널리티(cardinality)를 초과하는 가능한 상태들의 숫자를 포함할 수 있다. 선택적 심볼라이저(70)를 넘어, 엔트로피 코딩 엔진(44)은 컨텍스트 선택기(72)를 포함할 수 있고, 초기화기(74), 개연성 추정 관리자(76), 개연성 추정 어댑터(78) 및 엔트로피 코딩 코어(80)를 포함할 수 있다. 엔트로피 코딩 코어의 출력은 엔트로피 코딩 스테이지(44)의 출력을 형성한다. 게다가, 엔트로피 코딩 코어(80)는 즉 기호들의 시퀀스의 기호 si를 수신하기 위한 하나, 및 기호들의 각각에 대한 개연성 추정 pi를 수신하기 위한 또다른 하나를 포함한다.
엔트로피 코딩의 특성 때문에, 압축 레이트의 관점에서 코딩 효율은, 개연성 추정의 향상을 증가시킨다: 개연성 추정이 실제 기호 통계들에 더 잘 맞을수록, 더 좋은 압축률이 달성된다.
도 1의 예에서, 컨텍스트 선택기(72)는, 각 기호 si에 대해, 관리자(76)에 의해 관리되는 이용가능한 컨텍스트들의 집합 중 대응하는 컨텍스트 ci를 선택하도록 구성된다. 그러나, 컨텍스트 선택은 단지 선택적 특징을 형성하고, 예를 들어, 각 기호들에 대해 동일 컨텍스트를 이용하여, 중단될 수 있다는 것이 주목되어야 한다. 그러나, 만약 컨텍스트 선택을 이용한다면, 컨텍스트 선택(72)은 현재 코딩 유닛 밖의 코딩 유닛들에 관련한, 즉 위에서 논의된 제한된 인접한 것들 내에서 인접 코딩 유닛들에 관련된, 정보에 기반하여 적어도 부분적으로 컨텍스트 선택을 수행하도록 구성될 수 있다.
관리자(76)는 각 이용가능한 컨텍스트에 대해, 관련 개연성 추정을 저장하는 저장소(storage)를 포함한다. 예를 들어, 기호 알파벳은 단지 하나의 개연성 값이 각 이용가능한 컨텍스트에 저장되어야 할 수 있도록 이진 알파벳일 수 있다.
초기화기(74)는, 간헐적으로, 이용가능한 컨텍스트들에 대해 관리자(76) 내에서 저장되는 개연성 추정들을 초기화하고 재-설치할 수 있다. 그러한 초기화가 수행될 수 있는 가능한 시간 인스턴트들이 아래에서 더 설명된다.
어댑터(78)는 대응하는 개연성 추정들 pi 및 기호들 si 의 쌍들에 대한 접근을 갖고 따라서 관리자들(76) 내에 개연성 추정들을 적응시킨다. 그것은, 각 시간마다 개연성 추정은 데이터 스트림(20)으로, 각 기호 si를 엔트로피 코딩하기 위해 엔트로피 코딩 코어(80)에 의해 적용된다는 것이고, 어댑터(adaptor, 78)는 이 현재 기호 si의 값에 따라 개연성 추정을 변화시킬 수 있고, 이 개연성 추정 pi는 (그것의 컨텍스트의 방식에 의해) 개연성 추정과 관련된 다음 기호를 인코딩할 때 실제 기호에 더 잘 적응된다는 것이다. 그것은, 어댑터(78)는 대응하는 기호 si를 따라 관리자(76)으로부터 선택된 컨텍스트에 대한 개연성 추정을 수신하고 따라서 개연성 추정 pi를 적응시키며, 동일 컨텍스트 ci의 다음 기호 si에 대해, 적응 개연성 추정(adaptive probability estimation)이 이용된다.
엔트로피 코딩 코어(80)는, 예를 들어, 산술 코딩 설계에 따라 또는 개연성-인터벌-분할-엔트로피(probability-interval-partitioning-entropy) 코딩 설계에서 작동하도록 구성된다. 산술 코딩에서, 엔트로피 코딩 코어(80)는, 예를 들어, 개연성 인터벌 오프셋 값 및 개연성 인터벌 너비에 의해 정의되는 개연성 인터벌에 의해 정의되는 상태와 함께, 기호들의 시퀀스를 코딩할 때 그것의 상태를, 예를 들어, 지속적으로 업데이트할 것이다. 파이프 개념에서 작동할 때, 엔트로피 코딩 코어(80)는, 예를 들어, 이러한 인터벌들 각각에 관한 고정-개연성 엔트로피 코딩을 수행하는 것과 함께 다른 인터벌들로 개연성 추정들의 가능한 값들의 영역을 서브분할(세분, subdivide), 그렇게 함으로써 서브-인터벌들 각각에 대해 서브스트림을 얻으면서 그것의 코딩 효율이 관련 개연성 인터벌에 각각 맞추어진다. 엔트로피 코딩의 경우에, 데이터 스트림(20) 출력은 인터벌 서브분할 프로세스를 모방하거나 다시 실행하는 것을 가능하게 하는 디코딩 부가 정보(decoding side information)에 시그널링하는 산술적으로 코딩된 데이터 스트림일 것이다.
자연스럽게, 그것의 시작에서 단지 한번 개연성 추정들을 초기화하는 것과 함께 샘플 배치(10)에 관련한, 그리고 어댑터(78)에 의해 개연성 추정들을 계속 업데이트하는, 모든 정보를, 즉 모든 구문 요소들/기호들 si, 엔트로피 코딩하기 위해 엔트로피 코딩 상태(44)에 대해 가능할 것이다. 이는, 그러나, 디코딩 측면에서 순차적으로 디코딩되어야 하는 데이터 스트림(20)을 도출한다. 다른 말로, 병행으로 서브-부분들을 디코딩하고 몇몇 서브-부분들로 결과 데이터 스트림을 세분하기 위한 어떠한 디코더에 대한 가능성이 없을 것이다.
따라서, 아래에서 더 자세히 설명될 것처럼, 엔트로피라 불리는 것들로 샘플 배치(10)를 설명하는 데이터의 양을 세분하는 것이 바람직하다. 이러한 엔트로피 조각들 각각은, 따라서, 샘플 배치(10)에 관련된 구문 요소들의 상이한 집합을 커버한다. 그러나, 엔트로피 코딩 스테이지(44)가 한번 개연성 추정을 먼저 초기화하고 그 후 각 엔트로피 조각에 대해 개별적으로 개연성 추정을 지속적으로 업데이트하는 것에 의해 서로 완전히 독립적으로 각 엔트로피 조각을 엔트로피 인코딩하는 경우, 코딩 효율은 이용되는 개연성 추정들이 실제 기호 통계들에 (아직) 덜 정확히 적응되는 것에 대한 샘플 배치(10)를 설명하는, 그리고 관련된 데이터의 증가된 백분율 때분에 감소될 것이다.
한편으로 낮은 코딩 지연 및 다른 한편으로 높은 코딩 효율을 원하는 것을 수용하면서 방금 언급된 문제들을 극복하기 위해, 다음 인코딩 설계가 이용될 수 있고, 이는 도 3에서 관련하여 이제 설명된다.
먼저, 샘플 배치(10)를 설명하는 데이터가 다음에서 "엔트로피 조각들"로 불리는 부분들로 서브분할(subdivided)된다. 서브분할(80)은 오버랩이 없어야 할 필요가 없다. 다른 한편으로, 이 서브분할은 상이한 부분들로 샘플 배치(10)의 공간적 서브분할에 적어도 부분적으로 대응할 수 있다. 그것은, 서브분할(80)에 따라, 샘플 배치(10)를 설명하는 구문 요소들은 각 구문 요소들이 관련되는 코딩 유닛(50)의 위치에 의존하여 상이한 엔트로피 조각들 상에 분배될 수 있다. 예를 들어, 도 2를 보자. 도 2는 상이한 부분들(12)로 샘플 배치(10)의 예시적 서브분할을 보여준다. 각 부분은 각 엔트로피 조각에 대응한다. 예시적으로 보여지는 것처럼, 각 부분(12)은 코딩 유닛들(50)의 열에 대응한다. 다른 서브분할들은, 그러나, 또한 실현 가능하다. 그러나, 부분들(12)이 코딩 순서(66)를 따라 코딩 유닛들(12)의 연속적인 구동(runs)을 커버하기 위해 부분들(12)로의 샘플 배치(10)의 서브분할이 먼저 언급된 코딩 순서(66)를 따르는 경우 유리하다. 그럼에도 불구하고, 코딩 순서(66)을 따라 부분(12)의 시작 및 끝 위치들은 코딩 유닛들(50)의 열의 왼쪽 및 오른쪽과 각각 일치할 필요가 없다. 심지어 코딩 유닛들(50)의 경계들과의 일치(coincidence)는 즉시 서로를 따르며 코딩 순서(66)가 강제될 필요가 없다.
샘플 배치(10)를 그런 방식으로 서브분할 하는 것에 의해, 엔트로피 조각 순서(16)는 부분들(12)이 코딩 순서에 따라 서로를 따르는(follow) 부분들(12) 중에서 정의된다. 게다가, 각 엔트로피 조각에 대해, 각 엔트로피 코딩 경로(14)가 정의되며, 즉 코딩 경로(66)의 조각은 각 부분(12)에 달한다. 도 2의 예에서 여기서 부분(12)은 코딩 유닛들(50)의 열과 일치하고, 열 방향을 따라 각 엔트로피 조각 포인트의 엔트로피 코딩 경로들(14)은, 서로 평행(병렬)으로, 즉 여기서 왼쪽 측면에서 오른쪽 측면으로이다.
조각 바운더리(경계들)을 넘지 않기 위해, 즉 공간 예측들 및 컨텍스트 선택들은 또다른 엔트로피 조각에 대응하는 데이터에 의존하지 않기 위해, 컨텍스트 선택기(72)에 의해 수행되는 컨텍스트 유도들 및 프리코더(42)에 의해 수행되는 공간적 예측들을 제한하는 것이 가능하다는 것이 주목되어야 한다. 이러한 방식은, "엔트로피 조각들"은 H.264에서 "조각들(slices)"의 일반적 정의에 대응하고, 예를 들어, 그것은 다만 아래에서 설명되는 개연성 초기화/적응 의존도를 제외하고 서로 독립적으로 완전히 디코딩 가능하다. 그러나, 프리코딩(precoding)의 반전(reversal) 즉, 구문 요소들에 기반한 복원, 및 엔트로피 컨텍스트 선택이 관련되는 한 WPP 프로세싱이 여전히 실현가능하기 때문에 로컬/공간적 상호-의존도들을 이용하기 위해 조각 경계들을 가로지르기 위해, 공간적 예측들 및 컨텍스트 선택들, 즉 일반적으로 말하는 의존도들, 을 허용하는 것 또한 실현가능할 것이다. 그러는 한, 엔트로피 조각들은 어떻게든 "의존 조각들(dependent slices)"에 대응할 것이다.
서브분할(80)은, 예를 들어, 엔트로피 코딩 스테이지(44)에 의해 수행될 수 있다. 서브분할은 시퀀스(30)의 배치 중 변화할 수 있고 또는 고정될 수 있다. 서브분할은 컨벤션(convention) 당 고정될 수 있고 또는 데이터 스트림(20) 내에서 시그널링 될 수 있다.
엔트로피 조각들에 기반하여, 즉 82처럼, 실제 엔트로피 코딩이 일어날 수 있다. 시작 위상(84)는, 예를 들어, 각 엔트로피 조각에 대해 실제 엔트로피 코딩 프로세스의 촉발(triggering) 뿐만 아니라 개연성 추정들의 초기화(initialization)를 포함한다. 실제 엔트로피 코딩은 그 후 지속 위상(86) 동안 수행된다. 지속 위상(86) 동안 엔트로피 코딩이 각 엔트로피 코딩 경로(14)를 따라 수행된다. 각 엔트로피 조각에 대한 시작 위상(84)은 엔트로피 조각 순서(16)을 순차적으로 이용하여 복수의 엔트로피 조각들의 엔트로피 코딩이 시작하는 것처럼 제어된다.
이제, 서로 완전히 독립적인 각 엔트로피 조각을 엔트로피 코딩하는 것으로부터 도출하는 위에서 설명된 페널티를 피하기 위해, 엔트로피 코딩 프로세스(82)는 현재 부분이, 예를 들어, 현재 엔트로피 조각의 현재 코딩 유닛이, 즉 도 2의 경우 현재 코딩 유닛(50)의 왼쪽에 대해 현재 엔트로피 조각의 부분인, 현재 엔트로피 조각의 이전에 인코딩된 부분을 이용하여 적응되는 것처럼 현재 엔트로피 조각의 각 개연성 추정, 및 공간적으로 인접한 것을 엔트로피 코딩하는데 있어, 이용되는 때 개연성 추정들,을 이용하여 적응되는 것처럼 현재 엔트로피 조각의 각 개연성 추정들에 기반하여 엔트로피 코딩되고, 그것들의, 인접 부분, 즉 인접 코딩 유닛,에서 엔트로피 조각을 선행하는 엔트로피 조각 순서(16)로 제어된다.
앞에서 언급된 의존도를 더 자세히 설명하기 위해, 도 4에 대한 레퍼런스가 제공된다. 도 4는 도면 부호 90과 함께 엔트로피 조각 순서(16)로 n-1, n 및 n+1 번째(th) 엔트로피 조각들을 도시한다. 각 엔트로피 조각(90)은 각 엔트로피 조각(90)이 관련되는 샘플 배치(10)의 부분(12)를 설명하는 구문 요소들의 시퀀스를 아우른다. 엔트로피 코딩 경로(14)를 따라, 엔트로피 조각(19)은 세그먼트들(92)의 시퀀스로 세그먼트화되고, 그 각각은 엔트로피 조각(90)이 관련되는 부분(12)의 코딩 유닛들(50) 중 각 하나에 대응한다.
위에서 설명된 것처럼, 엔트로피 코딩에서 이용되는 개연성 추정들 엔트로피 조각들(90)은 개연성 추정들이 각 엔트로피 조각(90)의 실제 기호 통계들에 더 작 적응하도록 엔트로피 코딩 경로(14)를 따라 지속 위상(86) 동안 지속적으로 업데이트된다 - 즉 개연성 추정들은 각 엔트로피 조각과 관련된다. 도 4에서, 지속 위상(86) 동안 엔트로피 조각(90)을 엔트로피 코딩하기 위해 이용되는 개연성 추정들(94)이 지속적으로 업데이트 되는 동안, 세그먼트들(92)의 시작 및 끝 위치들에서 일어나는 개연성 추정들(94)의 상태는 아래에서 더 언급되고 설명된다. 특히, 시작 위상(84) 동안 초기화되는 것처럼 첫번째 세그먼트(92)를 엔트로피 코딩하는 것에 앞선 상태가 (96)에서 보여지며, 첫번째 세그먼트를 코딩한 후에 그 자체를 나타내는 상태는 (98)에서 도시되며, 처음 두개의 세그먼트들을 인코딩한 후에 그 자체를 나타내는 상태는 (100)에서 표시된다. 동일 요소들이 도 4에서 엔트로피 조각 순서(16)로 n-1 엔트로피 조각에 대해서도, 그리고 다음 엔트로피 조각, 즉 엔트로피 조각 n+1에 대해서도 보여진다.
이제, 위에서-설명된 의존도를 달성하기 위해,엔트로피 코딩 n-번째(n-th) 엔트로피 조각(90)을 엔트로피 코딩하기 위한 초기 상태(96)은 선행 엔트로피 조각 n-1을 인코딩하는 동안 그 자체를 드러내는 개연성 추정들(94)의 어떠한 중간 상태에 의존하여 설정된다. "중간 상태"는 개연성 추정들(94)의 어떠한 상태를 나타낼 것이고, 완전한 엔트로피 조각 n-1을 엔트로피 코딩한 후에 그 자체를 나타내는 최종 상태 및 초기 상태(96)을 제외한다. 그렇게 함으로써, 엔트로피 조각 순서(16)를 따라 엔트로피 조각들(90)의 시퀀스를 코딩하는 엔트로피는 다음 엔트로피 조각을 엔트로피 코딩하기 위해 개연성 추정들(94)의 초기화에 대해 이용되는 상태를 선행하는 세그먼트들(92)의 숫자의 비율에 의해 결정되는 병렬화(평행화)의 정도로 병렬화(평행화)될 수 있고, 즉, b이다. 특히, 도 4에서 즉 초기화와 함께, a가 동일하도록 예시적으로 설정되며, 즉 화살표 (104)로 설명되는, 선행 엔트로피 조각의 상태(100)에 동일하도록 현재 엔트로피 조각의 상태(96)을 설정하기 위한 상태(100)의 적응이다.
이 방법에 의해, 엔트로피 코딩 경로 순서(14)로 상태(100)을 따르는 어떠한 세그먼트(92)의 엔트로피 코딩은 선행 엔트로피 조각(90)의 세번째 세그먼트(92)를 엔트로피 코딩하는데 이용되는 것 같은 개연성 추정 뿐만 아니라 동일 엔트로피 조각의 선행 세그먼트들에 기반하여 지속 위상(86) 동안 적응되는 것 같은 개연성 추정(94)에 의존할 것이다.
따라서, 엔트로피 조각들(90)의 엔트로피 코딩은 파이프라인된 스케쥴링에서 동시에 수행될 수 있다. 오직 시간 스케쥴링 상에 도입되는 제한들은 몇몇 엔트로피 조각의 엔트로피 코딩은 선행 엔트로피 조각의 a-번째(a-th) 세그먼트(92)의 엔트로피 코딩을 끝낸 후에 단지 시작할 수 있다는 것이다. 엔트로피 조각 순서(16)로 서로를 즉시 따르는 엔트로피 조각들(90)은, 지속 위상(86) 동안 엔트로피 코딩 절차의 시간-정렬에 관해 어떠한 다른 제한들의 대상이 아니다.
또다른 실시예에 따라, 그러나, 더 강한 커플링이 추가적으로 및/또는 대안적으로 이용된다. 특히, 표시 화살 (106)에 의해 도 4에서 도시되는 것처럼, 지속 위상(86) 동안 개연성 추정 적응은 특정 세그먼트(92)에 대응하는 코딩 유닛의 데이터가 각 세그먼트(92)의 시작에서 세그먼트(92)의 끝까지 개연성 추정들(94)를 변화시키는 것을 야기하며, 그것에 의해 위에서 표시된 것처럼 실제 기호 통계들의 근사를 향상시킨다. 그것은, 적응(106)이 단지 엔트로피 조각 n-1 의 데이터에 의존하여 엔트로피 조각 n-1에 대해 수행되며, 동일한 것이 엔트로피 조각 n의 개연성 추정 적응(106)에 적용된다는 것 등이다. 예를 들어, 엔트로피 조각들(90) 사이의 어떠한 추가 간섭 없이 개연성 추정 적응(106)을 수행하는 것과 함께 화살표(104)에 관해 위에서 설명된 것처럼 초기화를 수행하는 것이 가능할 것이다. 그러나, 실제 기호 통계들의 개연성 추정 근사를 촉진하기 위해, 현재 엔트로피 조각 n의 개연성 추정 적응을 적용할 때, 연속 엔트로피 조각들의 개연성 추정 적응(106)은 선행 엔트로피 조각 n-1 의 개연성 추정 적응 (106)도 영향을 미치도록 연결되거나, 또는 고려된다. 이는 도 4에서 n-번째 엔트로피 조각 (90)을 엔트로피 코딩하기 위한 개연성 추정 (94)의 상태(100)에 n-1-번째 엔트로피 조각(90)을 엔트로피 코딩하기 위한 공간적 인접 개연성 추정들(84)의 상태(110)을 가리키는 화살표 (108)에 의해 설명된다. 상태(96)의 위에서 설명된 초기화를 이용할 때, 개연성 적응 커플링(probability adaptation coupling, 108)은, 예를 들어, 선행 엔트로피 조각의 b 세그먼트들 (92)를 엔트로피 코딩 한 후에 그 자체를 나타내는 b 개연성 추정 상태들 중 어느 것에서 이용될 수 있다. 더 정확히 하기 위해, 현재 엔트로피 조각의 첫번째 세그먼트(92)를 엔트로피 코딩한 후 그리고 선행 엔트로피 조각 n-1의 (a+1)-번째 세그먼트(92)를 엔트로피 코딩하는 동안 개연성 추정 적응(106)으로부터 도출되는 개연성 추정 상태들의 고려에 의해(108) 그 자체를 나타내는 개연성 추정들은 보통의 개연성 적응(106)의 결과일 수 있다. "고려하다(taking into account)"는, 예를 들어, 몇몇 평균 작업들을 포함할 수 있다. 예시가 아래에서 더 자세히 설명될 것이다. 다른 말로, 그것의 엔트로피 코딩 세그먼트(92)의 시작에서 n-번째 엔트로피 조각(90)을 엔트로피 코딩하기 위한 개연성 추정(94)의 상태(98)는, 적응(106)을 이용하여 적응되는 것처럼 현재 엔트로피 조각 n을 엔트로피 코딩하기 위해 개연성 추정들(94)의 선행 상태(95)을 평균내는 결과일 수 있고, 개연성 적응(106)에 따라 수정된 선행 엔트로피 조각 n-1 의 (a+1)-번째 세그먼트 (92)를 엔트로피 코딩하기 전의 상태일 수 있다. 유사하게, 상태(100)는 선행 엔트로피 조각 n-1의 (a+2)-번째 세그먼트(92)를 엔트로피 코딩하는 동안 개연성 적응의 결과 및 현재 엔트로피 조각 n을 엔트로피 코딩하는 동안 수행되는 적응(106)의 결과를 평균내는 결과, 등등 일 수 있다.
더 구체적으로,
(왼쪽, 위쪽인 (0,0) 및 오른쪽, 아래쪽 위치인 (I,J)와 함께) 어떠한 코딩유닛의 위치를 나타내는 i, j와 함께, p(n)->{i,j}, i∈{1...I} 및 j∈{1...J}이고, I는 줄(컬럼, columns)의 숫자이고, J는 열(row)의 숫자이며 p()는 경로 순서(66)을 정의한다고 해보자.
엔트로피 코딩 유닛{i,j}에서 이용되는 P{i,j} 개연성 추정;
코딩 유닛 {i,j}에 기반한 P{i, j}의 개연성 적응(106)의 결과 T(P{i,j});
그 후, 연속 엔트로피 조각들(90)의 개연성 추정(106)은,
에 의해, 일반적인 것들, Pp(n+1)=T(Pp(n)) 에 따른 엔트로피 조각 내부 적응을, 대체하기 위해 결합될 수 있다.
여기서 N은 1 또는 1보다 클 수 있고, {i,j}1...N은 각각, 그것의 관련 부분(12) 및 (엔트로피 조각 순서(16)에서) 이전 엔트로피 조각(90)으로부터 선택된다(에 있다). 기능 "평균"은 가중 합계(weighted sum), 중간 기능, 등등 중 하나일 수 있다. p(n)={i,j}는 현재 코딩 유닛이고 p(n+1) 은 각각 코딩 순서 (14) 및 (66)을 따른다. 현재 실시예에서 p(n+1)={i+1,j} 이다.
바람직하게, {i,j}1...N은, 각각에 대해 현재 코딩 유닛인(즉 현재 엔트로피 조각의 코딩 유닛들 또는 두번째 중 어떤 것) k∈{1...N}, {i,j}1...N = {ik,jk} 및 p(n)={i,j} 와 함께 ik<i+3 및 jk<j 을 충족시키고, 즉 그것들은 파면 넘어 위치하지 않는다.
나중의 대안에서, 엔트로피 코딩 시간 스케쥴링은 엔트로피 조각들(90)을 병행으로 엔트로피 코딩할 때, 서로 더 가까이 연결된다. 그것은, 지속 위상(86)동안, 현재 엔트로피 조각의 라인에서 다음 세그먼트(92)는, 추가로 엔트로피 코딩 경로 순서(14)에서 랭킹 위치(ranking position)인 선행 엔트로피 조각의 대응하는 세그먼트를 끝내는 것에서 단지 시작될 수 있다.
다른 말로, 위 논의는 디코더(40)이 특히, 엔트로피 코딩 스테이지(44)가 n-번째 같은 엔트로피 조각(90)에 대해, 각 인코딩 경로(14)를 따라 선행 엔트로피 조각에 대해, 엔트로피 조각 순서(16)에서, 대응하는 부분(12)의 엔트로피 디코딩된 두번째 코딩 유닛/블록(50)을 가진 후에 그 자체를 나타내는 개연성 추정들을 갖는 각 인코딩 경로(14)를 따라 n-번째 엔트로피 조각에 대응하는 부분(12)의 제1코딩 유닛/제1블록(50)에 대응하는 제1세그먼트(92)를 디코딩하기 전에 그것의 개연성 추정들(94)의 초기화를 수행하도록 구성되는 곳에서의 예를 보여주었다. 추가적으로, 또는 대안적으로, 디코더(40) 및, 특히 엔트로피 코딩 스테이지(44)는, 각 엔트로피 조각(90)에 대해, 현재 엔트로피 조각의 현재 부분/블록/코딩 유닛(50)이 현재 엔트로피 조각의 각 개연성 추정들(94)에 기반하여 엔트로피 디코딩된 후에 개연성 추정 적응 및 엔트로피 디코딩이 수행되도록 구성될 수 있고, 현재 엔트로피 조각의 현재 부분/블록/코딩의 오른쪽에 대한 두번째 줄에서 인접 열 위의 하나처럼, 선행하는 엔트로피 조각, 공간적으로 인접한 것의 인접 부분/블록/코딩 유닛(50)을 엔트로피 디코딩하는 데 있어 그 자신들을 나타내는 것처럼 개연성 추정들 및 현재 엔트로피의 이 현재 부분에 의존하여 현재 엔트로피 조각의 각 개연성 추정들(94)이 적응된다.
위 논의로부터 명백해진 것처럼, 개연성 추정은 각 엔트로피 조각(50)에 개별적으로 적응되고/관리되어야 한다. 이는 각 개연성 추정 저장소(120) (도 1 참조)에서, 도 4에 관해 언급되고 예시적으로 보여지는 것처럼, 즉 96, 98, 100, 110 및 102 처럼 개연성 추정 상태들을 저장하고 엔트로피 조각들을 순차적으로 프로세싱하는 것에 의해 수행될 수 있다. 대안적으로, 하나 이상의 엔트로피 코딩 스테이지(44)는 엔트로피 조각을 병행하여 디코딩하기 위해 제공될 수 있다. 이는 도 5에서 도시되며, 여기서 엔트로피 코딩 스테이지(44)의 복수의 예시화가 보여지며, 각각은 엔트로피 조각들 중 각 하나와 관련되고 및 샘플 배치(10)의 부분들(12)과 각각 대응한다. 도 5는 또한 각 엔트로피 디코딩 스테이지들(130)의 병행 예시화를 이용하여 그것의 가능한 실시예들 및 디코딩 프로세스를 도시한다. 이러한 엔트로피 디코딩 스테이지들(130) 각각은 데이터 스트림(20)을 통해 운반되는 엔트로피 조각들 중 각 하나와 함께 입력된다.
도 5는 엔트로피 코딩 스테이지들(44) 및 각 디코딩 스테이지들(130)이 병행하여 서로 독립적으로 완전히 작동하지 않는다는 것을 보여준다. 오히려, 저장소(120)에 저장된 것들처럼 저장된 개연성 추정 상태들은, 각 엔트로피 조각에, 엔트로피 조각 순서(16)에 따르는 엔트로피 조각에 관련된 또다른 스테이지에 대응하는 하나의 스테이지로부터 통과된다.(passed) 도 5는 설명 목적을 위해, 하나의 코딩 유닛(50) 내에서 예측 블록들(52) 중 정의된 검색 순서(140)처럼 코딩 유닛들(50)의 순회 가능 서브분할에 대한 가능한 순회 순서를 또한 보여준다. 이러한 모든 예측 블록들(52)에 대해 대응하는 구문 요소들은 각 세그먼트(92) 내에 포함되고 이러한 구문 요소들의 값들에 대응하며, 개연성 추정들(94)은 위에서-언급된 "T" 를 정의하는 순회 코딩 유닛(40) 동안 적응을 갖는 경로(140)의 순회 동안 적응된다. H.264 및 HEVC에 따라 CABAC 에서, "T" 는 테이블-기반으로 수행되고, 즉 그 컨텍스트와 관련된 현재 기호 값에 의존하여 다음 상태에 현재 컨텍스트를 위한 개연성 추정의 현재 상태로부터의 전이(transitions)를 정의하는 "표 워크(table walk)"에 의해서이다.
도 1의 인코더 실시예에 대응하는 디코더 실시예를 보여주는 도 6과 진행하기 전에, 프리코더(42)의 예측 성질은 단지 설명적 실시예에 따라 기능한다는 것이 숙지되어야 한다. 대안적 실시예들에 따라, 프리코더(42)는 예를 들어, 샘플 배치(10)의 원래 샘플 값들인, 엔트로피 코딩 스테이지(44)가 작동하는 구문 요소들과 남겨질 수도 있다. 더 대안적으로, 프리코더(42)는 JPEG처럼 샘플 배치(10)의 부대역 분해를 형성하도록 구성될 수 있다. 컨텍스트 선택기(72)의 선택적 성질이 위에서 이미 언급되었다. 동일한 것들이 초기화기(74)에 관해 적용된다. 동일한 것이 다르게 계장화될(instrumented) 수 있다.
도 6은 도 1의 인코더(40)에 대응하는 디코더(200)를 보여준다. 디코더(200)의 구축(construction)이 인코더(40)의 구축을 실질적으로 반영한다는 것이 도 6에서 보여질 수 있다. 그것은, 디코더(200)가, 엔트로피 디코딩 스테이지(204) 및 구성자(206)의 연속이 뒤따르는, 데이터 스트림(20)을 수신하기 위해 입력(202)를 포함한다는 것이다. 엔트로피 디코딩 스테이지(204)는 데이터 스트림(202) 내로 운반되는 엔트로피 조각들을 엔트로피 디코딩하고, 각 요청(208)에 의해 엔트로피 디코딩 스테이지(204)로부터 구문 요소들을, 차례로, 요청하는 구성자(constructor, 206)에 대해, 각각 구문 요소들 및 디코딩된 기호들 si를 차례로 포워딩한다. 다른 말로, 구성자(206)는 또한 인코더 내에서 프리코더(42)에 의해 생성되는 구문 요소 스트림을 파싱(parsing)하기 위한 책임을 가정한다. 따라서, 구성자(206)는 엔트로피 디코딩 스테이지(204)로부터 구문 요소들을 순차적으로 요청한다. 엔트로피 디코딩 스테이지(204)는 실질적으로 엔트로피 인코딩 스테이지(44)가 하는 것과 동일한 방식으로 구조화된다. 따라서, 엔트로피 디코딩 스테이지(204)의 내부 블록들의 동일 도면 부호들이 재사용된다. 심볼라이저(70)는, 존재하는 경우, 구문 요소들을 위한 요청을 기호들에 대한 요청으로 바꾸고 엔트로피 디코딩 코어(80)는 각 기호 값 si로 대답하며, 심볼라이저(70)는 유효 기호 단어들을 형성하는 수신된 기호들의 시퀀스들을 구문 요소들로 맵핑하며 동일한 것을 구성자(206)로 포워딩한다. 구성자(206)는, 위에서 설명된 것처럼, 예측 디코딩 등을 이용하여 엔트로피 디코딩 스테이지(204)로부터 수시노딘 구문 요소 스트림으로부터 샘플 배치(10)를 재구성한다. 더 정확히 하기 위해, 구성자(206)는 또한 코딩 순서(66)를 이용하고 예측들(60, 62 및 64)를 수행하는 것과 함께 코딩-유닛-방향 디코딩을 수행한다. 구문 요소들에 대한 또는 샘플 값들에 대한 하나 이상의 예측들은, 선택적으로 구문 요소 스트림의 구문 요소들로부터 얻어지는 예측 잔류물을 이용하는 것과 함께, 합쳐지는 것처럼 결합된다. 엔트로피 디코딩 코어(80)는, 엔트로피 코딩 코어(80)처럼, 산술 디코딩 개념 또는 엔트로피 디코딩 개념을 분할하는 개연성 인터벌을 따를 수 있다. 산술 디코딩의 경우, 엔트로피 디코딩 코어(80)는 이 공간 인터벌을 가리키는, 오프셋 값 같은 값 및 부분 인터벌 너비 값의 형태로 인터벌 상태를 지속적으로 업데이트할 수 있다. 상기 업데이트는 인바운드 데이터 스트림(inbound data stream)을 이용하여 수행된다. 현재 부분 인터벌은 개연성 추정 관리자(76)을 따라 컨텍스트 선택기(72)의 방식에 의해 각 기호 si에 대해 제공되는 개연성 추정 pi를 이용하여 엔트로피 코딩 코어(80)에 유사하게 서브분할된다. 어댑터(78)는 컨텍스트 선택기(72)에 의해 기호 si와 관련된 컨텍스트 ci의 개연성 추정 값들 pi를 업데이트하기 위해 디코딩된 기호 값들 si를 이용하여 개연성 추정 적응을 수행한다. 초기화기(74)에 의해 초기화들은 인코딩 측면에서 동일한 방식으로 그리고 동일한 인스턴스들(instances)에서 수행된다.
도 6의 디코더는 도 3에 관해 설명되는 것처럼 인코더의 기능과 아주 유사한 방식으로 작동한다. 단계(230)에서, 샘플 배치(10)는 엔트로피 조각들로 서브분할된다. 예를 들어, 도 8을 보라. 도 8은 입력(202)에 도착하는 데이터 스트림(20) 및 특히 거기에 포함된 엔트로피 조각(90)을 보여준다. 단계(230)에서, 이러한 엔트로피 조각들(90) 각각은 각 진행하는 엔트로피 조각에 기반하여 위에서-설명된 개연성 추정 초기화 및 개연성 추정 적응이 수행될 수 있도록 관련된다. 샘플 배치 서브분할, 또는 더 정확히 언급하여, 그들의 각 부분들(12)의 엔트로피 조각들(90)의 연관(association)은, 구성자(206)에 의해 수행될 수 있다. 상기 연관은, 엔트로피 코딩되지 않은 부분들에서 데이터 스트림(20) 내에 포함된 부가 정보 처럼, 다른 방법들에 의해, 또는 종래방법에 의해 달성될 수 있다.
엔트로피 조각들(90)은 그래서, 엔트로피 디코딩 프로세스(232)에서, 인코딩 프로세스(82)를 반영하며, 즉 각 엔트로피 조각(90)에 대해 , 인코딩 절차에서처럼 동일한 인스턴스들에서 그리고 동일한 방식으로 개연성 추정 초기화 및 적응과 함께 시작 위상(234) 및 지속 위상(236)을 수행하는 방식으로 엔트로피 디코딩된다.
인코딩과 관련하여 위에서 설명된 것과 동일한 병행화는, 디코딩 측면에서 가능하다. 도 5에서 보여지는 엔트로피 디코딩 스테이지 예시화(130)는 도 6에서 엔트로피 디코딩 스테이지(204)에 관해 보여지는 것처럼 각각 구현될 수 있다. 개연성 추정 저장소(240)는 엔트로피 코딩 순서(16)에서 다음 엔트로피 조각의 엔트로피 디코딩에 대해 책임이 있는 엔트로피 디코딩 스테이지(130)에서 이용을 위한 개연성 추정들의 상태들을 저장하기 위해 이용될 수 있다.
본 출원의 실시예들을 설명한 뒤에, 지금까지 논의된 개념들이 다음에서 다른 표현들을 이용하여 다시 설명된다. 이하에, 본 출원의 몇몇 추가 관점들이 설명된다. 다음에서, 미리 언급된 코딩 유닛들(50)은 LCU(최대 코딩 유닛, largest coding unit)라 불리고, 그에 의해 따라오는 HEVC 기준에 표현을 적응시킨다.
먼저, 위에서 논의된 개연성 적응(106)은 도 9에 관해 간략히 다시 논의된다.
현재 LCU는 선행 LCU를 코딩한 후에 이용가능한, CABAC 개연성들처럼 개연성 추정들을 이용한다. 예를 들어, x로 표시되는, 도 9의 LCU는, 왼쪽 측면 LCU를 LCUx의 왼쪽에 대해 엔트로피 코딩하는 것의 끝(end) 전에 적용되는 때 개연성 추정 p1을 이용하여 엔트로피 코딩되어야 한다. 그러나, 이미 처리되고 이용가능한, 하나 이상의 LCU들로부터 만약 정보가 왼쪽 것으로부터만 이용되지 않는다면, 개연성 적응에서 더 나은 결과들이 달성될 수 있다.
위에서 설명되는 것처럼, 엔트로피 디코딩 및 엔트로피 인코딩에서 엔트로피 조각들, 새로운 개연성 추정들은, 다른 LCU들로부터 이미 존재하는 개연성들(개연성 추정들)의 도움으로, 각 LCU를 디코딩 또는 인코딩하기 전에 계산된다. 더 정확히는, 개연성 적응은 현재 엔트로피 조각의 어떠한 선행 LCU들로부터만 수행되지 않는 것이 아니라, 엔트로피 조각 순서를 선행하는 엔트로피 조각들의 LCU들로부터도 수행되지 않는다. 이 접근은 도 9에서 다시 표시된다. 도 9에서 표시되는 현재 LCU의 시작 개연성은, 다음에 따라 계산될 수 있다:
pnew = a1·p1 + a2·p2+ a3·p3+ a4·p4 + a5·p5 + a(5+1)·p(5+1)...+ ak·pk, (1)
여기서 a1, ... ak 는 LCU들의 가중 인수들(weighting factors)이다. 어떤 개연성의 가중들이 가장 좋은 결과들을 제공하는지가 테스트되었다. 이 실험에서 인접 LCU들만이 이용되었다. 이 연구는 다음 가중을 이용한다 : 왼쪽 LCU로부터 75% 및 오른쪽-위 LCU로부터 25%. 도 10-13에서, 결과가 제시된다. ,,prob. Adapt.“를 이용하는 제목의 그래프는 위에서 설명되는 개연성 적응을 이용한다.
그러나, 개연성 추정 적응에서, 인접 블록들만이 이용될 수 있는 것은 아니다. 각 가장 근접한 LCU는 특히 그것의 인접한 것들을 가지며, 개연성 최적화를 위한 그것의 이용은 중요할 수 있다. 다른 말로, 위쪽 가장 근접한 열로부터의 LCU들만이 적용될 수 있는 것은 아니다.
도 9에서, 하나는 개연성 추정들의 유도들이 인접한 것들로부터 먼저 취해지는 곳에서 볼 수 있고 각 다음 위쪽 열, 참고로 p5 및 pk, 각각의 위-오른쪽 LCU 각각으로부터 취해질 수 있다. 몇몇 복잡성이 설명된 개연성 재계산 또는 개연성 추정 적응에 의해 도입된다는 것이 인정되어야 한다. 개연성 추정의 새로운 계산은, 예를 들어, 세 단계로 일어난다 : 첫번째로, 각 후보의 개연성 추정들이 각 컨텍스트 상태로부터 얻어져야 한다. 이는 저장소(120 및 240)에서, 각각, 저장되는 것에 의해, 또는 병행 엔트로피 조각 n을 스티어링(조정)하는 것/이러한 상태들이 동시에 이용가능한 디코딩 프로세스들을 이용하여 수행된다. 두번째로, 방정식(1)을 이용하여, 최적화된 개연성 (pnew)이 생성될 것이다. 그것은, 몇몇 평균이, 예를 들어, 다른 엔트로피 조각들의 적응된 개연성 추정들을 결합하기 위해 이용될 수 있다는 것이다. 마지막 단계에 따라, 새로운 컨텍스트 상태는 pnew로부터 변환되고 오래된 것을 교체한다. 그것은, 개연성 추정 관리자(76)가 이와 같이 얻어진 새로운 개연성 추정들을 채택한다는 것이다. 특히 곱셈 작동을 이용하는, 각 구문 요소들에 대한 이 행위는, 복잡성을 크게 증가시킬 수 있다. 이러한 페널티를 감소시킬 수 있는 유일한 방법은 이러한 세 단계들을 피하려고 노력하는 것이다. 후보들의 숫자 및 그들의 가중이 결정되는 경우, 각 상황에 대해 미리-계산된 것에 근사될 수 있다. 이와 같이, 후보 지수들(컨텍스트 상태들) 도움과 함께 표 날짜들에 대한 오직 하나의 단순한 접근이 필요하다.
이러한 기술은 엔트로피 조각들을 이용하고 그리고 이용하지 않고 양쪽 응용들에 대한 좋은 결과들을 공급할 수 있다는 것이 주장된다. 첫번째 응용은 프레임 당 오직 하나의 조각을 이용하고, 이와 같이 개연성 적응은 어떠한 다른 변화 없이 최적화된다. 엔트로피 조각들의 경우에, 개연성들의 적응은 다른 조각들로부터 독립적으로 각 조각 내에서 발생한다. 이는 현재 CLU의 개연성들의 빠른 학습(fast learning)을 허용한다.
위 설명에서, 위쪽 라인의 두번째 LCU의 이용이 또한 제시되었고, 즉 개연성 추정 초기화에 대한 두번째 LCU의 이용이다. 만약 (엔트로피 조각들) 위에서 언급된 비트스트림의 몇몇 조건들이 달성되는 경우, 인코딩 및 디코딩의 병행화(Parallelization)이 가능하다. LCU들 사이의 CABAC 개연성 의존은 깨져야 한다. 파면 평행 프로세싱은 각 라인의 첫번째 LCU를 이전 라인의 마지막 LCU로부터 독립적으로 만드는 것이 중요하다. 그것은, 예를 들어, CABAC 개연성들이 LCU들의 각 라인의 시작에서 재-초기화되는 경우 달성될 수 있다. 그러나, 이 방법이 최상은 아니며, 이는 각 재-초기화가, 이미지의 특수함에 적응되는, 달성된 CABAC 개연성들을 잃기 때문이다. 이 페널티는, 각 라인의 첫번째 LCU의 CABAC 개연성들의 초기화가 이전 라인의 두번째 LCU 후에 얻어지는 개연성들과 함께 발생하는 경우에, 감소될 수 있다. 위에서 설명되는 것처럼, 개연성 적응 속도에서의 이득(gain)이 공간적으로 인접 엔트로피 조각들의 개연성 적응들을 연동하는 것에 의해 달성가능하다. 특히, 다른 말로, 공간적으로 인접 엔트로피 조각의 인접 부분(p4처럼) 엔트로피 조각 순서에서, 공간적으로 인접한 것의 엔트로피 디코딩에서 이용되는 것처럼 개연성 추정들, (예를 들어, p1을 포함하는) 이미 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응되는 것처럼 이미 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 이미 결정된 엔트로피 조각의 현재 부분 (x)를 엔트로피 디코딩하고, 이미 결정된 엔트로피 조각을 엔트로피 디코딩하는 데 있어, 수행하는, 그리고 엔트로피 조각 순서(16)을 이용하여 순차적으로 복수의 엔트로피 조각들을 엔트로피 디코딩하기 시작하고, 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 (어댑터 78에 의해 수행되는) 적응시키고, 각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 각각, 수행하는 것과 함께 엔트로피 조각들과 관련된 샘플 배치의 상이한 부분들(12)를 복원하기 위해 엔트로피 인코더 데이터 스트림 내에서 복수의 엔트로피 조각들을 (엔트로피 디코딩 스테이지에 의해 수행되는) 엔트로피 디코딩하도록 구성되는, 엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위해 상기 논의는 또한 도 6 중 하나처럼 디코더를 예측한다.
상이한 부분(portions)들은 샘플 배치의 블록들의 열들일 수 있다(예를 들어, LCU들 또는 매크로블록들(mnacroblocks)). 후자는 비디오의 그림일 수 있다. 엔트로피 코딩 경로는 열-방향으로 확장할 수 있다. 엔트로피 코딩은, 이와 같이, 개연성 적응 뿐만 아니라, 컨텍스트 적응적(context adaptive)일 수 있다. 상이한 부분이 서로 병행하여 실질적으로 차례로 확장하는, 엔트로피 조각들의 엔트로피 코딩 경로들(14)에 관련되어 치우친(angled) 방향(16)으로 서로를 따르는(follow), 엔트로피 조각 순서를 따라, 엔트로피 조각 순서는 일반적으로 선택될 수 있다. 이 방식에 의해, 엔트로피 조각들의 (도면에서 p1, p4, p5+1 및 pk 같은) 현재 디코딩된 부분들의 "파면"은 부분들의 시퀀스 방향보다 더 작은 엔트로피 조각 경로들에 대한 각도를 형성하는 라인을 따라 일반적으로 배치될 수 있다. 파면은 병행으로 조각들을 처리하는 모든 스레드(threads)에 대해, 거기에 언제나 있을 위쪽 왼쪽 레퍼런스에 대한 순서로 2x 당 1y의 블록 위치들의 기울기를 가져야 할 수 있다.
엔트로피 조각들이 각각 부분(parts)들의 동일 숫자로 구성되고, 엔트로피 조각 경로들을 따른 부분(portions)들의 부분들(parts)의 시퀀스는 엔트로피 조각 경로들에 대해 옆 방향으로 서로 정렬되도록, 각 엔트로피 조각에 대해, 각 엔트로피 조각의 샘플 배치 부분의 부분들의 유닛들에서 각 엔트로피 코딩 경로를 따른 엔트로피 디코딩을 수행하도록 구성될 수 있다. 이미 결정된 엔트로피 조각의 부분들의 현재 부분은 부분의 결과 그리드(grid)에 속한다(예를 들어 LCU들 또는 매크로블록들). 각 엔트로피 조각에 대해, 각 엔트로피 코딩 경로를 따라 엔트로피 디코딩을 수행함에 있어, 디코더는 엔트로피 조각 순서 및 엔트로피 조각 경로들에 관해 0.x 블록 위치들의 기울기를 갖는 라인까지처럼 엔트로피 조각들의 현재 디코딩된 부분들의 파면이 대각선을 형성하도록 엔트로피 조각 순서로 즉각 연속적인 엔트로피 조각들 사이에서 시작하는 시간들 사이에서 오프셋들/시프트들(offsets/shifts)을 보존할 수 있다. 오프셋/시프트는 즉각 연속 엔트로피 조각들의 모든 쌍들에 대해 두개의 부분들에 대응한다. 대안적으로, 디코더는 단지 즉각 연속 (및 그들의 샘플 배치 부분들(12)이 관련되는 한 즉각 인접한) 엔트로피 조각들의 현재 디코딩된 부분들의 거리가 두 부분들(parts)보다 더 낮아지는 것을 단지 예방하고자 한다. 위 도면을 보자 : 파트/블록 p4가 디코딩되자마자, 그것의 오른쪽에 대한 부분/블록이 경로 순서(16)에 따라 디코딩되고, 동시에, 만약 있다면, X는 디코딩되고 또는 동일한 것을 선행하는 부분/블록들 중 어느 것이다. 이 방법에 의해, 디코더는 X를 디코딩하는데 이용될 개연성 추정들을 결정하기 위한 순서로, 경로 순서(16)에서 현재 부분 X를 후행하는 이미 결정된 엔트로피 조각의 부분(portion, 12)의 부분(part)에 정렬되는, 부분/블록 p4의 컨텐츠에 기반하여 이미 적응되는 것처럼 개연성 추정을 이용할 수 있다. 두개의 부분들의 즉각 엔트로피 조각들을 디코딩하는 데 있어 일정한 오프셋의 경우, 디코더는 공간적으로 인접한 엔트로피 조각의 이후 부분(즉 p4의 오른쪽에 대한 부분)을 엔트로피 디코딩하기 위해 동시에 부분/블록 p4의 컨텐츠에 기반하여 이미 적응되는 것처럼 개연성 추정들을 이용하는 것이 가능하다.
위에서 설명되는 것처럼, 이미 적응된 개연성 추정들의 가중된 합은 X를 디코딩하기 위해 이용될 개연성 추정들을 결정하기 위해 이용될 수 있다.
위에서 설명된 거서럼, 엔트로피 조각 순서는 프레임 경계(바운더리)를 넘어갈 수도 있다.
선행 엔트로피 조각들로부터 방금 언급된 개연성 채택은 선행 엔트로피 조각들에서 그러한 인접 부분들이 이용가능한 것에 대해 현재/미리 결정된 엔트로피 조각의 모든 부분에 대해 수행될 수 있다는 것이 주지되어야 한다. 그것은 위에서 설명된 초기화를 동등하게 만드는 첫번째 부분/블록 채택(도면의 각 엔트로피 조각에서 제일 왼쪽)에 대해, 그리고 경로 방향 16을 따라 첫번째 부분에 대해서도 참이라는(true) 것이다.
더 나은 적응을 위해, 이 경우에서도, 위에서 언급된 2 방법들이 함께 결합될 수 있다. 1 및 4 스레드와의 이 프로세스의 결과는, 즉 병행이 이용된 프로세싱 유닛들은, 도 10 - 도 13에서 도시된다(2LCU+개연성 적응(2LCU+Prob.Adap) 또는 2LCU 그래프들).
위 실시예들의 컨텍스트를 더 잘 이해하기 위해, 특히 아래에서 설명되는 실시예들은, 특히 LCU들의 이용에서, H.264/AVC 의 구조를 먼저 살펴볼 수 있다. H.264/AVC 에서 코딩된 비디오 시퀀스는 NAL 유닛 스트림에서 수집(모음)되는 엑세스 유닛들의 시리즈로 구성되고 그것들은 하나의 시퀀스 파라미터 집합만을 이용한다. 각 비디오 시퀀스는 독립적으로 디코딩될 수 있다. 코딩된 시퀀스는 코딩된 그림들의 시퀀스로 구성된다. 코딩된 프레임은 단일 필드 또는 전체 프레임이 될 수 있다. 각 그림은 (HEVC: LCUs 에서) 고정된-크기 매크로블록들로 분할된다. 몇몇 매크로블록들 또는 LCU들은 하나의 조각으로 함께 병합될 수 있다. 하나의 그림은 그래서 하나 이상의 조각들의 모음이다. 이 데이터 분리의 목적은, 다른 조각들로부터 데이터의 이용 없이, 조각에 의해 표현되는, 그림의 영역에서 샘플들의 독립적인 디코딩을 허용하는 것이다.
"엔트로피 조각들"에 관해 언급된 기술은 추가 서브-조각들로 종래의 조각의 분할이다. 특정적으로, 그것은 단일 조각의 엔트로피 코딩된 데이터의 조각화를 의미한다. 조각에서 엔트로파 조각들의 배치는 다른 다양성들을 가질 수 있다. 가장 단순한 것은 하나의 엔트로피 조각에 따라 프레임에서 LCU들 / 매크로블록들의 각 열을 이용하는 것이다. 대안적으로, 줄(컬럼) 또는 개별 영역들은, 예를 들어 도 14에서 조각 1처럼, 서로 토글되고(toggled) 방해될 수 있는, 엔트로피 조각들에 따라 활용될 수 있다.
엔트로피 조각 개념의 명백한 목적은 디코딩 프로세스의 시간을 향상시키기 위한, 즉 프로세스를 스피드-업 하기 위한, 병렬 CPU/GPU 및 멀티-코어 구조들의 이용을 가능하게 하는 것이다. 현재 조각은 다른 조각 데이터에 레퍼런스 없이 복원되고 파싱될 수 있는 파티션들(partitions)로 나뉠 수 있다. 비록 몇몇 이점들이 엔트로피 조각 접근과 함께 달성될 수 있지만, 그것에 의해 몇몇 페널티들이 발생한다.
무엇보다도, 주 목적은 병행 인코딩 및 디코딩 프로세스에 적합한 비트스트림을 생성하는 것이다. 하나는 반드시 고려되어야 하는데, 그것은 예측에 대한 공간 및 모션 정보를 이용하기 위해, 코딩된 버젼에 따라 이미 인접 LCU들(왼쪽, 위쪽, 위-오른쪽)이 이용가능한 경우 LCU가 인코딩될 수 있다는 것이다. 슬라이싱(slicing)에 의한 병행화를 가능하게 하기 위해, 조각들의 프로세싱 사이의 시프트가 실현되어야 한다(예를 들어, 파면 접근에 대해 일반적인 것처럼, 2 LCU들의 시프트). CABAC 개연성 적응 때문에, LCU는 이전 인코딩된 LCU로부터 이용가능한 개연성들을 이용한다. 래스터 스캔 순서에 관해, 그림을 슬라이싱하는 것에 의해 발생하는 문제는, 병행화의 방지(예방)이고, 이는 각 라인의 첫번째 LCU가 이전 라인의 마지막 LCU에 의존하기 때문이다. 이러한 영향을 받으면 조각들 사이의 CABAC 개연성 의존도들이 반드시 깨어져야 한다는 것이고, 그래서 몇몇 조각들은 동시에 시작될 수 있다. 이렇게 하는 하나의 방법은 일반적 CABAC 재-초기화이고, 그러나 모든 채택된 데이터는 손실될 것이다. 결과적으로, 비트레이트는 증가할 수 있다.
두번째로, 각 조각은 주 메인스트림으로 연속하여 넣어질 수 있는 그 자체의 서브-비트스트림을 발생시킨다. 그러나 이러한 조각들 및 주 스트림에서 그들의 위치들이 제대로 식별되기 위해 디코더 특별 정보를 지나가는 것이 필요하다. 시그널링을 위한 두개의 시나리오들이 지원된다. 위치 정보는 그림 헤더에서 (조각 길이 정보) 또는 각 조각 헤더에서(시작 코드에서 포인트들) 저장될 수 있다. 각 엔트로피 조각 및 위치 정보의 끝에서 바이트 정렬은 손실을 발생시킨다. 엔트로피 조각들에 대한 시그널링에 의해 도입된 페널티를 감소시키기 위해, 시그널링을 위한 좋은 코딩 기술을 이용하는 것이 필수적이다. 엔트로피 조각 시그널링에 대한 뚜렷한 페널티는 프레임에서 도입되며, 스타트 코드들이 각 조각들에 대해 이용되는 경우, 즉 너무 많은 추가 바이트들(예를 들어, 조각 당 최소 4 바이트들)이 비트스트림에 더해지는 경우이다. 틀림없이, 스타트 코드들을 이용하는 엔트로피 조각들(90)의 삽입은 인코더가 엔트로피 조각들을 즉시 출력할 수 있는 곳에서 저 지연 시나리오들에서의 이득을 갖는다. 그러한 케이스들에서는, 가능한 입력 포인트들의 선행 시그널링이 없다. 더 적은 낮은-지연 구역 시나리오들에서, 그러나, 조각 길이들(오프셋들)을 저장하기 위한 기회는 더 적합하게 보인다. 그러한 정보를 코딩하기 위해 하나의 잘 알려진 방법은 가변 길이 코드(Variable Length Code (VLC)) 또는 지수-골롬 코딩(Exponential-Golomb coding)이다. VLC의 주 특징은 실제 정보 전에 빈 정보들(0들, zeros)을 더하는 것이다. 이러한 영들(제로들, zeros)의 도움으로, 오프셋 길이에 대한 정보를 저장하는 코드는 결정될 수 있다. 우리는 이를 실현하기 위해 또다른 기술을 제안하고, 그것의 개요는 도 15에서 보여지며, 거기서 X=EntropySliceSize 는 엔트로피 조각에 포함된 바이트들(bytes)의 양이다. 각 다음 X (오프셋)은 이전의, 이미 인코딩되고 시그널링된, 엔트로피 조각 오프셋 및 현재 것 사이의 크기 차이에 따라 정의된다. 이러한 개념의 주 특징들은 차이들을 형성하는 것이고, 크기 X에 의존하여, 데이터의 양이 줄어들 수 있고, 3 비트까지 더할 수 있고, 그것은 디코더에 의해 각 엔트로피 조각의 크기에 대한 적절한 정보를 추출하는 것을 가능하게 한다. VLC와 비교하여 엔트로피 조각 헤더에서 비트 량을 절약하는 것이 얻어질 수 있다.
그것은, 도 15의 관점에 따라, 예를 들어, 정보 신호를 엔트로피 인코딩하기 위한 개념이 제공되며 그것은 지금까지 이용가능한 개념과 비교하여 병행 프로세싱 능력에 불구하고 더 높은 압축률을 가능하게 한다. 이러한 관점에 딸, 샘플 배치가 인코딩되는 곳으로 엔트로피 인코딩되는 데이터 스트림 섹션(20)은, 샘플 배치의 다른 부분들(12)이 엔트로피 인코딩되는 곳으로 도 8에서 90 같은 엔트로피 조각들을 포함하고, 도 9에서 점선 300으로 표시된 헤더는, 엔트로피-인코딩된 데이터-스트림 내에서, 엔트로피 디코딩된 영역에서 측정된, 엔트로피 조각들 (90)의 시작 위치들(302)을 드러내는 정보를 포함하고, 상기 정보는, 미리 결정된 엔트로피 조각에 대해, 미리 결정된 엔트로피 조각 n의 시작 위치 및 선행 엔트로피 조각 n-1의 시작 위치 사이의 차이를 드러내며, 상기 차이는 VLC 비트 시퀀스에 따라 데이터 스트림에 포함된다.
특히, VLC 비트 시퀀스는, 차이 x가 인터벌들 [0,2a-1], [2a,2b+2a-1], [2b+2a, 2c+2b+2a-1] 등등의 숫자 z의 시퀀스의 y-번째로 나뉘는 것을 표시하는, 가변 길이 y의 접두사 및, 길이들 a, b, c...의 시퀀스의 y-번째의 PCM 코딩된 접미사를 가질 수 있고, 이는 a, b, c...가 2제곱으로 선택되는 경우이고, 대응하는 y가 더해지는 경우이며, 즉 a+1, b+2, c+3 및 등등이 모두 2제곱이며, 그래서 바이트 정렬이 보존될 수 있다. 숫자 z는 도 15에서 예시적으로 선택되는 것으로 3에 제한되지 않는다.
도 1의 하나처럼, 인코더,는 VLC 비트 시퀀스로 연속 시작 위치들의 차이를 전환하도록, 즉 접두사를 먼저 결정하는 것에 의해, 즉 차이들이 위치하는(y-번째) 어느 서브-인터벌로, 전환하도록 적절히 설계되고 그리고 0, 2a, 2b+2a 등등의 y-번째를 빼는 시작 위치 차이와 동일하게 될 접미사를 더하는 것을 설정한다.
도 6에서처럼, 디코더는, VLC 비트 시퀀스로부터 현재 엔트로피 조각 n의 시작 위치를 유도하도록 적절히 설계되고, 즉 y를 얻기 위해 접두사를 먼저 조사하는 것에 의해서이고, 이후 0, 2a, 2b+2a 등등의 y-번째를 더하는 접미사의 값에 대한 차이를 설정하고, 이후 선행 엔트로피 조각 n-1의 시작 포인트에 대한 차이를 더한다.
추가 이점이 엔트로피 조각들의 세그먼트화에 의해 달성될 수 있고, 즉 저-지연 전송 및 디코딩 스피드-업을 위해서이다.
비디오-스트리밍에서, 더 높은 해상도를 가능하게 하는 것은(Full-HD, QUAD-HD 등등) 전송되어야 할 데이터의 더 높은 양을 이끌어낸다.
저-지연 이용-케이스라 불리는(<145ms), 시간-민감 시나리오들에 대해, 전송 시간은 중요한 요소가 된다. 비디오 컨퍼런싱 응용에 대해 ADSL의 업-로드 링크를 고려한다. 여기서 스트림의 소위 랜덤 엑세스 포인트들은, 일반적으로 이러한 것들은 I-frames(I-프레임들)을 언급하며, 전송 동안 병목(bottleneck)을 야기하는 후보가 될 것이다.
그러함 문제를 풀기 위해 그리고 전송 및 디코딩 시간의 지연을, 즉 말단간 지연(end-to-end delay)을, 최소화하기 위해, 병행 전송 및 프로세싱을 위한 삽입되는(인터리브, interleaved) 엔트로피 조각 설계에 대한 새로운 기술이 적용될 수 있다.
HEVC는 디코더 측면에서 소위 파면-프로세싱이라 불리는 것을 가능하게 할 것이다. 그것은 엔트로피 조각들의 이용에 의해 이용가능해질 것이다. 일반적인 케이스에서 전체 조각의 데이터는 한번에 전송 될 것이다. 디코딩 프로세스는 인코딩된 데이터가 파면-디코더-엔진(Wavefront-decoder-engines)에서 도달하자마자 시작할 것이다. 디코더가 프레임을 시작하고 끝낼 수 있을 때 시간을 감소시키기 위해, 인터리빙(interleaving) 접근을 이용하여 조그만 청크들로 엔트로피 조각들의 세그먼테이션(분할)이 본 실시예에 따라 이용된다. 이런 이유로 인코더는, 일반적인 케이스에서보다 더 일찍 레이어를 전송하기 위해, 특정 엔트로피 조각에 대응하는, 데이터를 전달할 수 있다. 그것은 클라이언트에서 병행 디코딩 프로세스의 더 빠른 시작 및 더 빠른 전송을 도출한다.
조각의 청크들을 생성하는 것은 모든 의존들을(의존하는 조각들) 유지하는 추가 조각들에서 엔트로피 조각을 세부-분할하는 것에 의해 더 달성될 수 있다. 각 가장 큰 코딩 유닛(Largest Coding Unit (LCU))/코딩 트리 유닛(Coding tree unit (CTU))에서 그렇게 되는 경우, 이러한 청크들은 추가 시그널링을 통해 청크들의 원래 디코딩 순서의 지식을 적어도 공급하거나 복원하고 삽입된 형식으로 청크들을 전송하는 것을 허용하는 시스템 레이어 기술들을 추가적으로 이용하여 인터리브(삽입, interleaved) 될 수 있다. 그러한 시그널링은, H.264/AVC (RFC 3984)에 대해 IETF RTP 페이로드 포맷(Payload Format)에서 정의되는 것처럼, 디코딩 순서 숫자 (decoding order number (DON))일 수 있다. 또다른 시스템 방법은, MEPG-2 시스템들에서처럼, 전송 채널에서 그들을 인터리빙하는 것에 의해 추가 멀티플렉싱(다중화)하면서, 그들 각각으로 상이한 PID를 할당하는 것에 의해, 상이한 전송스트림으로 파면 서브스트림의 청크들을 적용시키는 것일 수 있다.
프레임간 레퍼런스들의 이용가능성 때문에 다음 프레임의 엔트로피 조각을 디코딩하기 위해 요구되는 정보에 기반하여, 예를 들어 파면 방식으로, 만약 다음 프레임들의 조각(들) 또는 엔트로피 조각(들)이 이미 디코딩될 수 있다면, 상기 접근은 프레임 바운더리를 넘어 적용될 수도 있다. 디코딩 순서에서 후행하는 프레임의 이미 디코딩 가능한 데이터들은, 파라미터 집합처럼 시퀀스-고정되어 시그널링되는 위치를 표시하는, 고정된 레퍼런스 설계 또는, 선행 프레임(들)에 대한 데이터 부분의 의존도를 표시하는 스트림에서 추가 정보 또는 최대 허용/시그널링 모션 벡터 길이로부터 유도될 수 있다.
그림은 도 2 및 9에서 표시되는 것처럼 최대 코딩 유닛(LCU)-열(들) 당 하나의 엔트로피 조각과 함께 인코딩될 수 있다. 그것은 디코더 측면에서 파면-기술의 이용에 대해 이점이 있다. 이후 결과 세그먼트들은 인터리브되고 전송으로 넘겨질 수 있다. 세그먼트들의 일정한 크기는 그것의 가변 길이 때문에 비트스트림의 RMx에서 문제를 야기할 수 있다.
두개의 일반적으로 가능한 해법이 있다. 첫번째 것은 1-바이트 세그먼트들의 발생(일반적으로 조각의 비트스트림 표현은 바이트-정렬이다) 그리고 각 디코더 엔진에 의한 바이트들의 소비를 제어하는 것이며, 즉 디코더는 엔트로피 조각의 완성을 발견한다.
두번째 것은 조각의 끝에서 코드를 종결하는 것의 이용이다. 마지막 케이스에서, 가변 길이 세그먼트들이 가능하지만, 그것은 또한 더 높은 데이터의 양을 야기한다. 또다른 방법은 엔트로피 조각 길이의 시그널링이다. 그러한 대안의 하나의 방법은 아래에서 설명된다.
세그먼트의 크기 및 인터리빙 모드는 하나의 SEI-메시지 또는 SPS에서 각각 시그널링 될 수 있다.
전송 설계는 도 16에서 보여진다.
이와 같이, 도 16의 관점에 따라, 예를 들어, 샘플 배치를 엔트로피 인코딩하는 개념은 지금까지 이용가능한 개념들과 비교하여 더 낮은 지연을 가능하게 하는 것이 제공된다. 이러한 관점에 따라, 정보 신호가 인코딩되는 곳으로의 인코딩 데이터 스트림(20)은 엔트로피 조각(90)같은 조각들 또는 정보 신호의 상이한 부분들(12)이 (예측적으로 및/또는 엔트로피) 인코딩되는 곳으로의 완전히 독립적인 디코딩가능한 조각들(왼쪽 측면에서 보여짐)을 포함하고, 여기서 조각(90)은 인터리브 방식으로(오른쪽 측면에서 보여짐) 인코딩된 데이터 스트림(20) 내에서 배치되는 청크들(음영된 박스 (310))으로 서브-분할되며, 인터리빙은 브래킷(braket, 312)에 의해 표현된다.
위에서 언급되고 다른 관점들에 관해 설명된 것처럼, 상기 조각들은, 차례로, 프레임들의 조각들의 적당한 부분집합들이 될 수 있는 엔트로피 조각들(90)일 수 있고, 인코딩된 데이터 스트림은 엔트로피 인코딩된 데이터 스트림(20)일 수 있다. 조각들(90)의 인터리빙(312)은 조각들(90) 중 어느 것을 디코딩하는데 책임이 있는 디코더가 (조각 순서 16에 따라) 다른 디코더들의 이전 조각들에 의해 소비되는 시간 지속을 기다릴 필요가 없기 때문에 더 낮은 지연을 이용가능하게 한다. 오히려, 모든 이용가능한 디코더들은, 참고로 파면 접근처럼, 그것의 첫번째 청크(31)가 이용가능하고 잠재적인 상호-조각 의존도들이 해결되자마자 그들의 관련 조각들을 디코딩하기 시작할 수 있다.
상이한 부분들(12)은 엔트로피 조각들 사이에서 독립적으로 설정되는 개연성 추정들을 이용하여, 또는 위에서 설명되는 개연성 추정들의 상호-엔트로피-조각 채택을 이용하여 엔트로피 조각들(90)로 엔트로피 인코딩될 수 있고, 이는 위에서 설명한 대로이며, 예를 들어, 즉 상이한 부분들(12)이 각 엔트로피 코딩 경로들(14)을 따라 엔트로피 조각들(90)으로 인코딩되고, 종속 엔트로피 조각들이 유도된 개연성 추정들을 이용하여 거기에서 인코딩된 그들의 대응 부분들(12), 이전에 설명된 것처럼, 대응 부분들의 공간적으로 인접 부분들에서 더 높이 랭크된 엔트로피 조각들에서 이용디는 개연성 추정들로부터의, 인터 앨리어스(inter alias), 를 갖는다는 점이다.
엔트로피 인코딩된 데이터 스트림(20)은 추가적으로 도 16에서 옵션으로 보여진 것처럼 헤더(header)를 포함할 수 있다. 헤더(300)는 시퀀스의 프레임(샘플 배치)와 관련될 수 있고, 헤더(300)는 엔트로피 조각들의 길이를 드러내는 정보를 포함한다. 엔트로피 조각들(90)의 길이에 관한 정보는 VLC 코드들을 이용하여 위에서 설명된 것처럼 헤더(300) 내에서 코딩될 수 있다. 엔트로피 조각들의 길이에 대한 지식을 이용하여, 디코딩 측면에서, 각 엔트로피 조각들(90)과 관련된 마지막 청크(chunk) 및 그들의 길이를 식별하는 것이 가능하다. 그러나, 스타트코드들(startcodes) 또는 다른 표시 설계가 이용될 수도 있다. 조각들의 시작 위치들은 단지 조각의 종료를 아는 디코딩 프로세스에 의해 식별될 수도 있다. 그래서 디코더의 표시에 의존하는 것이 단지 가능할 수도 있고, 그러나 이는 디코더들 사이의 시그널링을 요구하며 몇몇 케이스에서, "더 빠른" 엔트로피 조각이 스트림에서 "나중" 조각을 더 나중에 종결(terminates later)시키는 경우에서이다. 이는 특정 케이스에 대해 스트림에서 "적응적(adaptive)" 시그널링을 요구할 수 있고, 이는 스타트코드들에 기반할 수 있다.
예를 들어, 엔트로피 조각들(90)은 도 16에서 도시되는 것처럼 헤더(300) 뒤에 배치될 수 있다.
청크들이 엔트로피 인코딩된 데이터 스트림(20) 내에서 배치되는 어떤 순서에 따라 청크들 중 첫번째 것으로부터 청크들(310)의 시퀀스의 시작 인접 부분이 관련되는 한 적어도, 청크들(310)은 동일 길이일 수 있다. 이후 청크들은 길이가 변할 수 있다. 이후 청크들(chunks)은 이 길이보다 더 작거나 또는 시퀀스의 시작 인접 부분의 길이와 동일할 수 있다. 이후 청크들의 길이는 시작 위치 또는 엔트로피 조각들(90)의 길이를 드러내는 헤더(300) 내에서 앞에서 언급된 정보로부터 유도될 수 있다. 청크들(310)은 엔트로피 조각들 중에서 정의되는 순서에 따라 순환하는 방식으로 엔트로피 인코딩된 데이터 스트림(20)내에서 배치될 수 있다. 엔트로피 조각들에 대해, 완전히 이전 사이클 내에 있는 청크들은, 현재 및 이후 사이클들에서 생략될 수 있다.
다른 정보는 이후 비디오 신호가 데이터 스트림(20)을 통해 운반될 수 있는 것처럼 샘플 배치 시퀀스를 시그널링할 수 있다. 상이한 부분들(12)은, 이와 같이, 그림/프레임처럼 미리 결정된 샘플 배치의 부분들을 필요로 하지 않는다.
위에서 설명된 것처럼, 엔트로피 조각들(90)은 상호-엔트로피-조각(inter-entropy-slice) 예측 및/또는 상호-프레임 예측(inter-frame prediction)을 이용하여 예측 코딩을 통해 상호-엔트로피 조각 예측 및/또는 상호-프레임 예측의 예측 잔류물의 엔트로피 인코딩으로 인코딩되는 샘플 배치(10)의 상이한 부분들(12)을 가질 수 있고 그것은, 위에서 설명된 것처럼, 상이한 부분들은 프레임(10) 또는 다중 프레임(30)의 공간적으로 구별되는 부분들일 수 있다. 나중의 케이스는, 다음 프레임(들)의 조각(들) 또는 엔트로피 조각(들)이 이미 디코딩될 수 있는 경우, 예를 들어, 파면 방식에서, 이용가능한 상호-프레임 레퍼런스들 때문에 다음 프레임의 엔트로피 조각을 디코딩하기 위해 요구되는 정보의 지식에 기반하여 적용한다. 디코딩 순서에서 후행하는 프레임의 이미 디코딩가능한 그러한 데이터는 선행하는 프레임(들)에 대한 데이터 부분들의 의존도들을 표시하는 스트림에서 추가 정보 또는 최대 허용되는/시그널링되는 모션 벡터 길이로부터 유도될 수 있고, 상호-엔트로피-조각 예측은 내부 예측을 포함하고, 반면 상호-프레임 예측은 모션-보상 예측을 포함할 수 있다. 예시가 아래에서 설명된다.
엔트로피 조각들 중에서 설정하는 개연성 추정의 미리 언급된 독립성은, 컨텍스트 모델링 뿐만 아니라 개연성 적응 양쪽에 관련될 수 있다.
그것은, 엔트로피 조각 내에서 선택된 컨텍스트는, 다른 엔트로피 조각들로부터 독립적으로 선택될 수 있고, 그리고 컨텍스트의 개연성 추정은 어떠한 다른 엔트로피 조각으로부터도 독립적으로 초기화되고 적응될 수 있다는 것이다.
대응 엔트로피 디코더는 다음에 따라 구성될 수 있다.
프레임의 다른 부분들이 엔트로피 인코딩되는 엔트로피 조각들(90)을 포함하는 엔트로피 인코딩되는 데이터 스트림(20)을 디코딩하도록 구성되는 엔트로피 디코더는, 도 16에서 (314)로 기호화되는, 청크를 디-인터리브(de-interleave)하도록 구성되는 디-인터리버(de-interleaver)를 추가적으로 포함할 수 있으며, 여기서 엔트로피 조각들은 인터리브되는 방식으로 엔트로피 인코딩된 데이터 스트림(20) 내에서 배치되는 청크들(310)로 서브-분할된다.
특히, 도 5에서 도시되는 것처럼, 엔트로피 디코더는 다른 프로세싱 커널들(kernels)에서 작동하는 스레드들처럼 복수의 엔트로피 디코더들(130)을 포함할 수 있고, 여기서 디-인터리버는, 각 엔트로피 조각에 대해, 각 엔트로피 조각과 관련되는 엔트로피 디코더(44)에 그들의 청크들(310)을 포워딩시키도록 구성될 수 있다.
다른 말로, 엔트로피 조각들은, 차례로, 인터리브될 수 있는, 청크들로 서브-분할될 수 있고, 디코더는 청크들을 디-인터리브하기 위한 디-인터리버를 포함할 수 있고 전체로 엔트로피 조각들 중 어느 것의 수용(reception) 전에 경로들(16)을 따라 병행으로 엔트로피 조각들 상에서의 작동을 시작할 수 있다. 예를 들어, 비록 나중의 옵션 또한 이용가능하지만 그림 또는 유사한 것들에서 어떤 공간적 부분들/블록들의 숫자에 대응하기 위해, 청크들의 길이는, 바람직하게는 구문 영역에서보다 엔트로피 인코딩된 영역에서 측정된다는 것이 기억되어야 한다.
다음으로, 시간적 의존도들의 가능한 이용이 설명된다. 동일한 것이 지금까지 설명된 개연성 추정 향상 실시예들에 대해 추가로, 또는 대안적으로 이용될 수 있다.
파면 프로세싱 패턴은, 지금 설명되는 것처럼, 프레임들 사이의 시간적 의존도들을 이용하기 위해 각 LCU에 대한 새로운 개연성 계산과 함께 엔트로피 코딩에 확장될 수 있다.
잘 알려진 것처럼, 개연성들은 각 프레임(첫번째 LCU) 의 시작에서 재-초기화될 것이다. 그렇게 함으로써 이전 프레임에서 이미 얻어진 개연성들이 손실된다. 코딩 효율성의 손실을 줄이기 위해, 하나는 그림의 끝 상태를(cp. 320) 지나갈 수 있고 또는, 엔트로피 조각 이용의 경우에, 엔트로피 조각(12) 또는 현재 프레임(10)의 첫번째 LCU (50)에 대한 레퍼런스 프레임(324)로부터의 개연성의 조각 의 끝 상태를(cp. 322) 지나갈 수 있다. 레퍼런스 프레임에서 대응하는 조각의 그러한 데이터는 끝 위치에서뿐만 아니라 레퍼런스된 조각들에서 선행 위치로부터도 유도될 수 있고, 이는 병행 파면 프로세싱이 프레임 경계를 넘어갈수도 있기 때문이고, 즉 프레임의 조각을 코딩하는 동안, 선행 프레임의 조각의 코딩 프로세스는 이미 종료되지 않았을 수 있다. 그래서, 시그널링은 레퍼런스 위치를 표시하도록 이용될 수도 있고, 또는 설계에 의해 표시될 수도 있다.
위 표기법을 이용하여, 이와 같이, 각각, 시작 위상 (84 및 234)에서 초기화하기 위하여, 하나는 현재 샘플 배치의 k-번째 엔트로피 조각에서 첫번째 CU를 나타내는 {i,j}를 갖는 P{i,j} 가, 몇몇 T(P{i,j}’)’들의 조합 또는 선행하는 (표시 순서에 동일할 수 있는 샘플 배치 코딩 순서에서) 샘플 배치를 표시하는 {i,j}’를 갖는 어떠한 T(P{i,j}’)에 동일하거나, 적어도 의존하도록, 설정된다.
이는 k=0에 대해서만, 또는 각 엔트로피에 대해 현재 프레임에서 엔트로피 조각들의 숫자를 나타내는 K와 함께 조각 k∈{1...K}에 대해서 수행될 수 있다. 시간적 초기화는 위에서 설명된 공간적 초기화에 추가적으로 또는 대안적으로 수행될 수 있다. 그것은, k-번째 엔트로피 조각에서 첫번째 CU(50)을 표현하는 {i,j}를 갖는 P{i,j} 는 현재 샘플 배치의 선행하는 엔트로피 조각 내에 CU를 공간적 표현하는 {i, j} 및 몇몇 T(P{i,j}’)’의 결합 또는 선행하는 (이전의 디코딩/코딩된) 샘플 배치의 (sme 평균처럼) 몇몇 배치와 동일하도록 설정될 수 있다는 것이다. {i,j}’의 위치가 관련되는 한, 현재 샘플 배치의 (엔트로피 코딩 순서 14에서) k-번째 엔트로피 조각에서 (엔트로피 코딩 순서 14에서) 첫번째 CU (50)을 나타내는 {i, j}를 갖는 P{i,j}는 (샘플 배치 코딩 순서에서) 선행하는 샘플 배치에서 (엔트로피 조각 순서에서) 마지막 엔트로피 조각 내의 마지막 CU 또는 (샘플 배치 코딩 순서에서) 선행하는 샘플 배치에서 (엔트로피 조각 순서로) k-번째인 엔트로피 조각 내에 (엔트로피 코딩 순서 14에서) 마지막인 CU를 나타내는 {i,j}’를 갖는 T(P{i,j}’)와 동일하도록 설정될 수 있다. 다시, 이 시간적 초기화는 샘플 배치에서만 첫번째 엔트로피 조각에 대해 수행될 수 있다.
레퍼런스 프레임의 끝 상태의 파싱(parsing) 프로세스는 개연성 적응의 방법으로 테스트되었고, 그 결과들은 도 10 - 도 19 (시간적 그래프)에서 도시된다.
다른 프레임들로부터 날짜들을 이용하는 또다른 기회는 병치된(collocated) LCU들 사이의 얻어진 개연성들을 교환하는 것이다. 주 아이디어는 레퍼런스 프레임의 특성이 현재 프레임으로부터 그리 크게 다르지 않다는 주장에 기반한다. 프레임에서 LCU들을 따라 개연성들의 학습을 더 빠르게 하기 위해, 하나는 현재 프레임에서 적절한 LCU에 대해 각 LCU의 끝 상태를 지나가도록 시도할 수 있다. 이 제안은 도 18에서 도시된다.
레퍼런스 프레임 하에서, 다른 기회들이 이해될 수 있다. 예를 들어, 마지막으로 코딩된, 프레임,은 레퍼런스 프레임으로 이용될 수 있다. 반면 동일 시간적 레이어로부터로의 마지막 코딩된 프레임은 오직 레퍼런스에 대해서 적절할 수 있다.
게다가, 이 접근은 위쪽 라인의 두번째 LCU의 활용 및 개연성 적응, 레퍼런스 프레임으로부터의 마지막 (조각) 정보의 활용, 이미 위에서 제안된 방법들과 병합될 수 있다.
위 공간적 적응 프로세스는
Pp(n+1)= average(T(Pp(n)), T(P{i,j}1 ),...,T(P{i,j}N ), T(P{i,j}'1 ),...,T(P{i,j}'M ),)
로 수정될 수 있고,
거기서 N은 1 또는 1보다 클 수 있고 {i,j}'1...M은, 각각, 그것의 관련된 부분(12) 및 현재 샘플 배치(10)에서 어떠한 (엔트로피 조각 순서 16에서) 이전 엔트로피 조각(90)으로부터 선택되고 (그 안에 위치하며), M은 1 또는 1 이상일 수 있고 {i,j}’1...M는 선행 샘플 배치(350) 내에 위치한다.
그것은 적어도 CU들 50 {i,j}' 1...M 중 하나는 p(n)에 대해 함께-위치될 수 있다는 것이다. CU들 50 {i,j}1...N 의 가능한 선택에 관하여 레퍼런스가 위 설명에 제공된다. "average(평균)" 기능은 가중된 합 중, 중간값 기능, 등등 중 하나일 수 있다.
위 공간적 적응 프로세스는
Pp(n+1)= average(T(Pp(n)), T(P{i,j}'1 ),...,T(P{i,j}'M ))
에 의해 교체될 수 있고
여기서 M은 1 또는 1 이상일 수 있고 {i,j}'1...M 은 선행 샘플 배치 내에 있다.
그것은 적어도 {i,j}'1...M 이 p(n)에 함께 위치할 수 있다는 것이다. "average" 기능은 가중된 합, 중간값 기능 등등 중 하나일 수 있다.
병치된 정보의 활용의 특정한 확장에 따라, 하나 또는 그 이상의 레퍼런스 프레임들로부터 다른 블록들로부터의 얻어진 날짜들(dates)을 활용하기 위한 접근이 적용될 수 있다. 더 일찍 언급된 기술들은 레퍼런스 프레임들에서 EH는 현재 프레임에서 직접 인접한 것들로부터 얻어진 정보만을 이용한다. 그러나 그것이 이 경우에서 얻어진 개연성들이 최선의 것이라는 것을 의미하지는 않는다. 그림 분할(잔류물)에 따른 인접 LCU들은, 최선의 개연성 모델들을 언제나 갖는 것은 아니다. 최선의 결과들은, 예측이 수행될, 블록들의 도움으로 달성될 수 있다는 것으로 생각된다. 이와 같이, 이 적절한 블록은 현재 LCU에 대해 레퍼런스에 따라 이용될 수 있다.
이와 같이, 적응 예에서, {i,j}1...N 및/또는 {i,j}'1...M 은 p(n)에 대한 예측기들의 공급자들로 기능하는 CU들에 의존하여 선택될 수 있다.
표현되는 시간적 개연성 적응/초기화 설계들은 또한 프레임 당 단일 엔트로피 조각 또는 엔트로피 조각들 없이 이용될 수도 있다.
나중의 관점에 따라, 개연성 적응 속도에서의 이득은 시간적 인접/관련 프레임들의 개연성 적응들과 커플링(연동)하는 것에 의해 달성된다.
거기에서 설명되는 것은, 도 6 중 하나같은 디코더가 있으며, 여기서 디코더는 엔트로피 인코더 데이터 스트림으로부터 샘플 배치들의 시퀀스를 복원하도록 구성되고, 샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하기 위해 엔트로피 인코더 데이터 스트림의 현재 프레임을 엔트로피 디코딩하도록 개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 디코딩을 수행하고 현재 프레임의 이전 디코딩된 부분을 이용하여 엔트로피 코딩 경로를 따라 개연성 추정을 적응시키도록 구성되고, 여기서 엔트로피 코딩 스테이지는 엔트로피 인코딩된 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들에 기반하여 현재 프레임에 대한 개연성 추정들을 결정하거나 초기화하도록 구성된다.
그것은, 예를 들어, 현재 프레임에 대한 개연성 추정들은 엔트로피 인코딩된 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 것을 종료시킨 다음에 개연성 추정 결과들에 기반하여 초기화된다는 것이다. 버퍼 요구사항들은, 그래서 낮고, 이는 단지 개연성 추정들의 끝 상태(end state)가 현재 프레임의 디코딩의 시작까지 버퍼링되어야 하기 때문이다. 물론, 각 부분(12)의 첫번째 부분들에 대해 선행 엔트로피 조각들에서(만약 이용가능한 경우) 공간적으로 인접 부분들에 대해 이용되는 개연성 추정들 뿐만 아니라, 예를 들어, 가중된 방식에서, 이전 프레임에서 (예를 들어, 공간적으로) 대응하는 엔트로피 조각의 개연성 추정들의 끝 상태가 이용된다는 점에서, 이 관점은 도 1 내지 9의 관점과 결합 가능하다. 레퍼런스 프레임에서 대응하는 조각의 그러한 데이터는 레퍼런스된 조각들에서 끝 부분만이 아니라 선행 위치로부터도 유도될 수 있고, 이는 병행 파면 프로세싱이 프레임 경계를 넘어갈 수도 있기 때문이며, 즉 프레임의 조각을 코딩하는 동안데, 선행 프레임의 조각의 코딩 프로세스가 이미 종료되지 않을 수 있다는 것이다. 그래서, 시그널링은 레퍼런스 위치를 표시하기 위해 이용될 수 있고, 또는 설계에 의해 표시될 수 있다.
게다가, 예를 들어, 이전에 디코딩된 프레임의 부분들/블록들을 코딩하기 위해 이용되는 개연성 추정들은, 끝 상태 뿐만 아니라, 모두 버퍼링되고, 디코더는, 미리 결정된 엔트로피 조각을 엔트로피 디코딩하는 데 있어(공간적 연동 개연성 유도의 위 설명과 관련하여), 위에서 언급된 것처럼, 공간적으로 인접한 엔트로피 조각의 인접 부분(p4 같은) 에서 엔트로피 조각(예를 들어, X를 포함하는 조각)을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 디코딩에서 이용되는 것처럼, 선택적으로, 추가적으로 개연성 추정들을 이용하여, 이전에 디코딩된 프레임의 엔트로피 조각의 공간적으로 대응하는 부분의 엔트로피 디코딩에서 이용되는 것처럼 개연성 추정들, 그리고 이미 결정된 엔트로피 조각(예를 들어, p1을 포함) 의 이전에 디코딩된 부분을 이용하여 적용되는 것처럼 미리 결정된 엔트로피의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분(X)를 엔트로피 디코딩하는 것을 수행한다. 위에서 설명된 것처럼, 부분들 중 공간적 대응, 및 이전에 디코딩된 프레임 중 현재 프레임에 대한 개연성 채택을 위해 적절한 것의 식별은 현재 부분/블록의, 모션 벡터들, 모션 지수들, 및 유사한 것들 같은 모션 정보의 도움에 의해 정의될 수 있다.
지금까지, 파면 프로세싱 동안 파면 확장이 다른 것 뒤에 수행된 하나의 샘플 배치인 코딩/디코딩과 함께 하나의 샘플 배치(10)를 통해 비스듬히 확장하는 것처럼 주로 설명되었다. 그러나, 이는 강제가 아니다. 레퍼런스가 도 19에 대해 제공된다. 도 19는 샘플 배치의 시퀀스로부터의 부분을 보여주며, 여기서 시퀀스의 샘플 배치들은 그들 중에서 정의되고, 표현 시간 순서와 일치할 수 있거나 일치하지 않을 수 있는 샘플 배치 코딩 순서(380)에서 배치되는 것처럼 묘사된다. 도 19는 네개의 엔트로피 조각들 각각으로 샘플 배치들(10)의 서브분할을 예시적으로 보여준다. 이미 코딩된/디코딩된 엔트로피 조각들은 보여지는 평행선의 음영이다. 네개의 코딩/디코딩 스레드들(코딩/디코딩 스테이지들) (382)는 지수 n을 갖는 샘플 배치의 네개의 엔트로피 조각들(12)에서 현재 구동한다. 그러나, 도 19는 왼쪽인 스레드 숫자 5를 보여주고, 그것은 도 19에서 숫자 5를 갖는 이 추가 스레드(382)가 라인, 즉 n+1,에서 다음 샘플 배치를 코딩/디코딩하도록 작동하고, 현재 코딩된/디코딩된 프레임 n에서 각 레퍼런스 부분들이 이미 이용가능하다는 것을, 즉 스레드 1 내지 4 중 어느 것에 의해 이미 처리된 것들이라는 것을, 보장하는 부분들에서이다. 이러한 부분들은, 예를 들어, 도 1에서 (64)에에서 보여지는 예측들에서 언급된다.
도 19는 예시적으로 이미 처리(프로세스)된 것들, 즉 샘플 배치 n의 이미 코딩/디코딩된 부분, 즉 한편으로는 샘플 배치 n 내에서 평행선이 그어진 부분, 및 아직 처리되지 않은 부분, 즉 다른 한편으로 샘플 배치 n의 평행선이 그어지지 않은 부분 사이의 경계에 함께 위치되는 샘플 배치 n+1을 통해 확장하는 라인(line), 점선(384)를 보여준다. 더블 헤드 화살표와 함께, 도 19는 세로줄 및 가로줄 방향에서, 즉 ymax 및 xmax, 각각에서 측정된 모션 벡터들의 최대 가능 길이를 또한 보여준다. 따라서, 도 19는 또한 점선 라인(386) 라인(384)의 표시된 버젼, 즉 세로줄 방향에서 xmax 및 가로줄 방향에서 ymax 아래로 거리가 떨어지지 않도록 최소 가능 거리에서 라인(384)로부터 떨어진 공간을 갖는 라인(386)을 보여준다. 보여질 수 있는 것처럼, 샘플 배치에서 어떠한 레퍼런스 부분이 이 샘플 배치 n의 이미 처리된 부분 내에 완전히 포함된 것처럼 발견되는 것이 보장되는 것에 대해 샘플 배치 n+1 에서 코딩 유닛들(50)이 있고, 즉 그것들은 라인(386)에 관해 업스트림(upstream) 측면에서 위치하는 샘플 배치 n+1의 반(in the half)에 위치한다. 따라서, 스레드 5는 도 19에서 보여지는 것처럼 이러한 코딩 유닛들을 디코딩/코딩하도록 이미 작동하는 것이 가능하다. 보여질 수 있는 것처럼, 6번째 스레드도 샘플 배치 n+1의 엔트로피 조각 순서(16)에서 두번째 엔트로피 조각에서 작동할 수 있다. 그렇게 함으로써, 파면은 샘플 배치들의 시퀀스(30)에 의해 지속되는 공간적-시간적 자리(spatio-temporal space)를 통해 공간적 뿐만 아니라 시간적으로 확장한다.
방금 언급된 파면 관점은 엔트로피 조각 경계들을 넘어 위에서 설명된 개연성 추정 커플링들과의 결합에서 또한 작동한다는 것을 기억하라.
게다가, 위에서 설명된 청크 관점에서, 더 작은 조각들, 즉 청크들(chunks)들로 엔트로피 조각들을 서브분할하는 것은, 엔트로피 코딩된 영역, 즉 엔트로피 압축 영역에서 수행되는 것에 제한되지 않는다. 위 논의를 생각해보자 : 위에서 설명된 엔트로피 조각들은 이전에 코딩/디코딩된 프레임 또는 동일한 것의 이전의 코딩된/디코딩된 엔트로피 조각들로부터 개연성 추정들의 유도 때문에, 즉 그러한 이전 엔트로피 조각들의 개연성 추정들에 기반하여 개연성 추정들의 초기화 및/또는 적응 때문에, 파면 프로세싱을 가능하게 하는 것에도 불구하고 코딩 효율 손실을 감소시키는 이점을 갖는다. 이러한 엔트로피 조각들 각각은 파면 프로세싱의 경우에 하나의 스레드에 의해 엔트로피 코딩/디코딩되어야 한다. 그것은, 엔트로피 조각들을 서브분할할 때, 그것은 병행으로 코딩가능/디코딩가능한 청크들을 수정하는 것이 필요하지는 않다는 것이다. 오히려, 인코더는 단지 엔트로피 인코딩을 종결하는 것에 우선하여 그것의 엔트로피 조각의 비트스트림의 서브파트(subparts)를 출력하는 기회가 제공되며, 디코더는, 동일 엔트로피 조각의 잔여 청크들의 수용에 앞서, 이러한 서브파트들, 즉 청크들, 상에서 작동할 기회가 제공된다. 게다가, 인터리빙(interleaving)은 수용 측면에서 이용가능할 것이다. 나중의 디-인터리빙(de-interleaving)을 가능하게 하기 위해, 그러나, 엔트로피 코딩된 영역에서 서브분할을 수행하는 것이 필요한 것은 아니다. 특히, 개연성 인터벌(probability interval)의 내부 상태, 즉 엔트로피 코딩/디코딩 코어의 각각, 오프셋 값 및, 개연성 인터벌 너비 값,을 간헐적으로 재설정 하는 것에 의해, 심각한 코딩 효율 손실 없이 엔트로피 조각들의 더 작은 청크들로의 위에서 제시된 서브분할을 수행하는 것이 가능하다. 개연성 추정들은, 그러나 다시 설정되지 않는다. 오히려, 그것들은 각각 엔트로피 조각들의 시작으로부터 끝까지 지속적으로 업데이트되고/적응된다(updated/adapted). 이러한 방법에 의해, 압축된 비트스트림 영역보다 구문 요소 영역에서 수행되는 서브분할과 함께 엔트로피 조각들을 개별 청크들로 서브분할하는 것이 가능하다. 서브-분할은 디코더에 청크 인터페이스들의 시그널링을 용이하게 하기 위해 아래에 설명된 것처럼 공간적 서브-분할을 따를 수 있다. 청크들 각각은 예를 들어, 위쪽 왼쪽 코너처럼 샘플 배치(10)의 중요한 위치에 관해, 또는 그것의 엔트로피 조각에 대한 지수에 따른 각 엔트로피 조각들의 시작 위치에 관해 코딩 순서(14)에 관해, 측정되고, 예를 들어, 샘플 배치의 시작 위치를 드러내는 그 자신의 청크 헤더(chunk header)가 제공될 수 있다.
나중의 실시예에 따라 청크들로 엔트로피 조각들의 서브분할을 더 정확히 설명하기 위해, 레퍼런스는 도 20에 대해 제공된다. 도 20은, 네개의 엔트로피 조각들로 서브분할되는 것 같은 샘플 배치(10)를, 단지 설명적 목적을 위해 보여준다. 샘플 배치(10)의 현재 코딩된 부분들이 평행선으로 음영처리된 것으로 보여진다. 세개의 스레드들(threads)은 샘플 배치(10)의 엔트로피 인코딩 상에서 현재 작동하고 즉각-대처 기반으로 엔트로피 조각들의 청크들을 출력한다: 예를 들어 샘플 배치(10)의 부분(12)에 대응하는 엔트로피 조각 순서(16)에서 첫번째 엔트로피 조각을 보자. 부분(12)의 서브파트(12a)를 인코딩 시킨 후에, 인코더는 그것으로부터 청크들(390)을 형성하며, 즉 엔트로피 코딩 코어(80)는 지금까지 청크(390)를 형성하기 위한 산술 코딩의 경우에 서브-부분(12a)으로부터 생산된 산술 비트스트림을 종결하기 위해 몇몇 종결 절차를 수행한다. 인코딩 절차는 이후 새로운 엔트로피 비트스트림을 시작하는 동안 코딩 순서 (14)로 엔트로피 조각(12)의 다음 서브-부분(12b)에 관해 재개된다. 이는, 예를 들어, 엔트로피 코딩 코어(80)의 개연성 내부 오프셋 및 개연성 인터벌 너비 값 같은, 내부 상태들,이 리셋(재설정)된다는 것을 의미한다. 개연성 추정들은, 그러나 리셋되지 않는다. 그것들은 변하지 않은채로 남겨진다. 이는 화살표 (392)에 의해 도 20에서 도시된다. 도 20에서, 엔트로피 조각 또는 부분(12)는 두개의 서브-부분들 이상으로 서브분할된다는 것이 보여지고, 따라서 두번째 청크(1b)는 코딩 순서(14)를 따라 부분(12)의 끝에 도달하기 전에 몇몇 엔트로피 종결의 대상이 되며, 그래서 라인에서 다음 청크는 기타들(etc.)과 함께 시작된다.
동시에, 또다른 스레드는 엔트로피 조각 순서(16)에서 두번째 엔트로피 조각 또는 부분(12)에서 작동한다. 이 두번째 엔트로피 조각/부분(12)의 첫번째 서브-부분을 종료하는데 있어, 청크(2a)가 출력되고, 그래서 두번째 엔트로피 조각의 나머지를 엔트로피 코딩하는 것은, 그러나, 개연성 추정을 청크(2a)의 끝에서 유효하게 유지하는 동안 시작된다.
시간 축(394)와 함께, 도 20은 그것들이 종결되자마자 청크(390)이 출력되는 것을 보여주려고 시도한다. 이는 도 16에서 설명된 하나에 유사한 인터리빙(interleaving)으로 이끈다. 각 청크는 어떠한 순서로 몇몇 운송 레이어를 통해 디코딩 측면에 운송되고 패킷으로 패킷화될 수 있다. 운송 레이어는 화살표(396)를 이용하여 도시된다.
디코더는 그것의 서브-부분(12a, 12b 및 등등)에 청크들(chunks)을 재할당해야 한다. 이를 위해, 각 청크(390)는 그것의 관련된 서브부분(12a 또는 12b)의 시작의 위치를 드러내는 헤더 섹션(hearder section, 398)을 가질 수 있고, 즉 서브-부분은 구문 요소들이 각 청크에서 동일한 것들이 엔트로피 코딩된다는 것을 설명한다. 이 정보를 이용하는 것에 의해, 디코더는 엔트로피 조각의 부분(12) 내에 그것의 서브-부분과 그리고 그것의 엔트로피 조각과 각 청크(390)를 관련시킬 수 있다.
도시 목적을 위해, 도 20은 엔트로피 조각(12)의 연속 서브-부분들(12a 및 12b) 사이의 연결이 연속 코딩 유닛들(50) 사이의 경계와 일치할 필요가 없다는 개연성을 예시적으로 보여준다. 오히려, 연결은 코딩 유닛들의 앞서 언급된 예시적 멀티-트리 서브분할의 더 깊은 레벨에서 정의될 수 있다. 헤더(398)에 포함된 위치 정보는 각 코딩 유닛의 각 서브-블록을 식별하기 위해 충분히 정확한 현재 청크(390)과 관련된 서브-부분의 시작을 표시할 수 있고, 즉 각 서브-블록으로부터 구문 요소 시퀀스 내의 위치가 설명된다.
위 논의로부터 명확해지는 것처럼, 코딩 효율 손실은 엔트로피 조각에서 청크들로의 서브분할로부터 거의 도출되지 않는다. 단지 엔트로피 종결 프로세스 및 패킷화(packetizing)는 몇몇 코딩 효율 손실을 포함할 수 있고, 그러나 다른 한편으로 저 지연 이득들(low delay gains)은 막대하다.
다시, 방금 언급된 공간 서브-분할 청크 관점은 또한, 공간적으로 그리고 시간적으로, 엔트로피 조각 경계들을 넘어 연동하는 위에서 설명된 개연성 추정과 결합하여 작동한다는 것을 주목하라.
도 6의 디코더같은 디코더는, 다음에서 청크 전송을 원상태로 되돌릴 수도 있다(무효로 만들 수 있다, undo). 특히, 디코더는 현재 청크가 속하는 엔트로피 조각에 관해 확인할 수도 있다. 이 확인은 앞서-언급된 위치 정보상에 기반하여 수행될 수 있다. 이후, 엔트로피 코딩 경로(14)를 따라 대응하는 엔트로피 조각의 부분의 첫번째 서브-부분에 현재 청크가 대응하는지가 확인될 수 있다. 그렇다면, 상기 디코더는 엔트로피 코딩 경로를 따라 미리 결정된 엔트로피 조각의 부분의 두번째 서브-부분에 대응하는 또다른 청크를 엔트로피 디코딩할 때 현재 청크를 엔트로피 디코딩하는 것의 끝에서 그것들을 드러내는 것처럼 각 개연성 추정들의 상태를 고려하고 각 개연성 추정들을 적응시키면서 현재 청크를 엔트로피 디코딩할 수 있다. "고려하다"라는 것은 위에서 설명된 것처럼, 청크(1a)의 시작에서 개연성 추정 상태로부터 시작하는 개연성 적응에 의해, 그것들을 드러내는 개연성 추정들에 동등한, 또는 청크의 (1a) 서브-부분 (12a)의 끝에서, 다른 엔트로피 조각들로부터 엔트로피 개연성 추정들과 그것들의 결합과 동등한, 청크(1b)의 시작에서의 개연성 추정들을 설정하는 것을 포함할 수 있다. 첫번째 청크(12a)의 시작에서 개연성 초기화가 관련되는 한, 이것이 대응하는 엔트로피 조각의 시작을 형성하는 것처럼, 레퍼런스가 위 논의에 대해 제공된다. 다른 말로, 순서(14)에서 현재 조각이 두번째 또는 다음 청크라면, 디코더는 엔트로피 코딩 경로(14)를 따라, 현재 청크에 대응하는 서브-부분을 선행하는 미리 결정된 엔트로피 조각의 부분의 서브-부분에 대응하는 청크를 엔트로피 디코딩하는 것의 끝에서 그것들을 표시하는 개연성 추정들에 의존하는 개연성 추정들을 이용하여 현재 청크를 엔트로피 디코딩할 수 있다.
위 설명은, 떠오르는 HEVC 비디오 코딩 기준에서 이미 존재하는 프로세스들의 최적화를 위해 도움이 되는 것 뿐만 아니라 병행 인코딩 및 디코딩에도 유용할 수 있는, 다른 방법들을 드러낸다. 엔트로피 조각들의 짧은 개요가 제시되었다. 그것은 그러한 기술들로부터 어떤 페널티들이 일어날 수 있는지 슬라이싱(slicing)에 의해 어떠한 이득이 달성될 수 있는지, 어떻게 그것들이 형성될 수 있는지를 보여주었다. 방법들의 숫자가 제안되었고, 이는 다른 프레임들의 LCU들 사이의 시간적 의존도들 및 LCU들 사이의 지역적 의존도들을 더 잘 이용하는 것에 의해, 프레임에서 LCU들(최대 코딩 유닛)을 따라 개연성들의 프로세스를 학습하는 것을 향상시키도록 되어 있다. 상이한 결합들이 인코딩 및 디코딩의 병행화를 갖고 그리고 갖지 않는 양 개념들에 대해 향상을 제공한다는 것이 주장된다.
예를 들어, 제안된 접근들의 최선의 혼합에 의한, 고 효율의 퍼포먼스 향상은, 엔트로피 조각들의 이용 없는 HM3.0과 비교하여 인트라(Intra)에서 -0.4 % 이고, 저 지연(Low Delay)에서는 -0.78 % 및 랜덤 접근(Random Access)에서는 -0.63 %이고, 또눈 일반 재-초기화를 갖는 엔트로피 조각 접근과의 비교에서 인트라(Intra)에서 -0.7 %, 저 지연에서 -1.95 % 및 랜덤 접근에서 -1.5 % 이다.
특히, 상호 앨리어스(inter alias), 다음 기술들은 위에서 제시되었다.
·LCU들의 지역적인 것 뿐만 아니라 시간적 의존도를 이용, 각 LCU를 코딩하기 전에 CABAC 개연성들의 적응을 최적화. 도 1 내지 9, 17 및 18을 참조하라.
·디코딩에서 더 유연성을 달성하고, 또한, 프레임의 특정 영역들이 서로 독립적이도록, 엔트로피 조각들은 활용될 수 있음.
·병행화를 위한 조각 / 엔트로피 조각 시작 위치들의 최소 시그널링을 허용, 예를 들어, 파면 프로세싱. 도 15 참조.
·엔트로피 조각들 / 조각들의 인터리브된 전송을 통해 병행화된 인코더-트랜스미터-리시버-디코더 환경에서 저 지연 전송을 가능하게 함. 도 16 참조.
위에서 언급된, 모든 방법들은, HM3.0에서 통합되고 테스트된다. 레퍼런스 포인트가 어떠한 엔트로피 조각 실행 없는 HM3.0인 곳에서, 얻어지는 결과들은 표 1 및 2에서 보여진다 (거기서 위쪽 라인의 두번째 LCU의 2LCU-활용; 개연성 적응의 방법과 함께 병합되는 2LCU+Prob.Adap(개연성 적응) - 2LCU; 각 LCU에 대한 개연성 적응과 함께 시간적 의존도의 시간적(Temporal)-활용(레퍼런스 프레임의 끝 상태)).
1 스레드를 갖는 요약 RD 결과
1 스레드(Thread) 2LCU 2LCU+Prob.Adap Prob.Adap
(개연성 적응)
시간적(Temporal)
인트라(Intra)
저지연(LowDelay)
랜덤(Random)
0.14 -0.31 -0.4
0.66 0.09 -0.12 -0.78
0.48 -0.1 -0.24 -0.63
4 스레드를 갖는 요약 RD 결과
4 스레드(Thread) 2LCU 2LCU+Prob.Adap Prob.Adap
(개연성 적응)
시간적(Temporal)
인트라(Intra)
저지연(LowDelay)
랜덤(Random)
0.19 -0.27 -0.27
1.01 0.54 0.63 0.17
0.74 0.2 0.24 0.01
그러나, LCU들의 각 라인의 시작에서 개연성들의 재-초기화와 파면 프로세싱에 제안된 접근들이 어떻게 영향을 미치는지를 아는 것은 흥미롭다. 이러한 결과들은 표 3 및 4에서 도시된다 (거기서 orig_neiInit 는 재-초기화와 엔트로피 조각들의 활용과 엔트로피 조각들의 이용 없는 비교 HM3.0이다.)
1 스레드를 갖는 요약 RD 결과. 레퍼런스는 새로운 초기화이다.
1 스레드(Thread) orig_neiInit 2LCU 2LCU+Prob.Adap Prob.Adap
(개연성 적응)
시간적
(Temporal)
인트라(Intra)
랜덤 접근
저지연(LowDelay)
0.3 -0.15 -0.62 -0.7
0.9 -0.4 -0.99 -1.13 -1.51
1.19 -0.51 -1.08 -1.29 -1.95
4 스레드를 갖는 요약 RD 결과. 레퍼런스는 새 초기화이다.
4 스레드(Thread) orig_neiInit 2LCU 2LCU+Prob.Adap Prob.Adap
(개연성 적응)
시간적
(Temporal)
인트라(Intra)
랜덤 접근
저지연(LowDelay)
0.34 -0.14 -0.61 -0.61
1.18 -0.43 -0.96 -0.96 -1.15
1.61 -0.5 -0.92 -1.05 -1.41
위 결과들은 이미 얻어진 정보의 합리적인 응용 및 프레임들 사이의 그리고 그 안에서의 의존도의 상당히 더 많은 활용이 평균 손실을 방지한다는 것을 보여준다.HEVC 비디오 인코딩 및 디코딩을 위한 파면 프로세싱에 대한 접근은 파면 병행 프로세싱의 개념과 함께 시간적 프레임 의존 뿐만 아니라 인접 LCU들 사이의 의존도들을 활용할 가능성을 병합한다. 이런 방식으로 손실은 줄어들 수 있고 성능 향상이 달성될 수 있다.
개연성 적응 속도에서의 이득은 공간적으로 인접한 엔트로피 조각들의 개연성 적응들을 계산하는 것에 의해 달성되었다.
위에서 언급된 것처럼 위 관점들 모두는 서로 결합될 수 있고, 그래서, 특정 관점에 관한 특정 실시 가능성의 언급은, 물론, 다른 관점들에 적용된다.
비록 몇몇 관점들은 장치들의 문맥에서 설명되지만, 이러한 관점들은 또한 대응하는 방법의 묘사도 나타낸다는 것이 명백하며, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 대응한다. 유사하게, 방법 단계의 문맥에서 설명된 관점들은 대응하는 장치의 대응하는 블록 또는 아이템 또는 특징의 설명 또한 나타낸다. 방법 단계들 중 몇몇 또는 모두는 예를 들어, 마이크로프로세서, 프로그램가능한 컴퓨터 또는 전자 회로 같은, 하드웨어 장치에서(또는 이용하여) 실행될 수 있다. 몇몇 실시예들에서, 가장 중요한 방법 단계들 중 몇몇 하나 이상은 그러한 장치에 의해 실행될 수 있다.
발명의 인코딩된 신호는 디지털 저장 매체에 저장될 수 있거나 또는 인터넷 같은 유선 전송 매체 또는 무선 전통 매체처럼 전송 매체에서 전송될 수도 있다.
특정한 실행의 요구들에 의존하여, 이 발명의 실시 예들은 하드웨어 또는 소프트웨어에서 실행될 수 있다. 실행들은 전자적으로 읽을 수 있는 컨트롤 신호들을 그곳에 저장하고 있는 디지털 저장매체, 예를 들어 플로피 디스크, DVD, CD, ROM, PROM, EPROM, EEPROM 또는 플래시 메모리,를 이용하여 수행될 수 있고 그것은, 각 방법이 수행되는, 프로그래밍 가능한 컴퓨터 시스템과 연동한다. 그래서, 디지털 저장 매체는 컴퓨터 판독가능할 수 있다.
본 발명에 따른 몇몇 실시 예들은 전자적 판독 가능한 컨트롤 신호들을 갖는 데이터 캐리어를 포함하며, 그것은 여기서 설명된 방법 중 하나가 수행되는 프로그래밍 가능한 컴퓨터 시스템과 연동 가능하다.
일반적으로 본 발명의 실시 예들은 프로그램 코드로 컴퓨터 프로그램 결과물에서 실행될 수 있으며, 상기 프로그램 코드는 컴퓨터 프로그램 결과물이 컴퓨터에서 수행될 때 상기 방법 중 하나를 수행하도록 작동되는 것이다. 프로그램 코드는 예시적으로 기계 판독가능 캐리어에 저장될 수도 있다.
다른 실시 예들은 여기에 설명되고, 기계 판독가능 캐리어에 저장된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 포함한다.
다른 말로, 발명의 방법의 실시 예는, 컴퓨터 프로그램이 컴퓨터에서 운영될 때 여기서 설명된 방법 중 하나를 수행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램이다.
발명의 방법의 또 다른 실시 예는, 여기서 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 그 자체에 포함하는 데이터 캐리어이다.(또는 디지털 저장 매체, 또는 컴퓨터 판독가능 매체). 데이터 캐리어, 디지털 저장 매체 또는 저장된 매체는 일반적으로 유형이고 그리고/또는 비-일시적일 수 있다.
발명의 방법의 또 다른 실시 예는, 여기서 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램을 나타내는 신호들의 순서 또는 데이터 스트림이다. 데이터 스트림 또는 신호들의 순서는, 예를 들어 인터넷같은 데이터 통신 연결을 통해 전송되기 위해 예시적으로 구성될 수 있다.
또다른 실시 예는 여기서 설명된 방법 중 하나를 수행하기 위해 구성되거나 적응되기 위하여 프로세싱 수단, 예를 들어 컴퓨터 또는 프로그래밍 가능한 논리 장치를 포함한다.
또다른 실시 예는 여기서 설명된 방법 중 하나를 수행하기 위한 컴퓨터 프로그램이 그 자체에 설치된 컴퓨터를 포함한다.
본 발명에 따른 추가 실시예는 리시버에 여기에 설명된 방법들 중 하나를 수행하기 위한 컴퓨터 프로그램을 (예를 들어, 전자적으로 또는 광학적으로) 전송하도록 구성되는 시스템 또는 장치를 포함한다. 리시버는, 예를 들어, 컴퓨터, 모바일 장치, 메모리 장치 또는 유사한 것들일 수 있다. 장치 또는 시스템은, 예를 들어, 리시버에 컴퓨터 프로그램을 전송하기 위한 파일 서버를 포함할 수 있다.
몇몇 실시 예에서, 프로그래밍 가능한 논리 장치(예를 들어 필드 프로그래밍 가능한 게이트 어레이)는 여기서 설명된 방법 중 모든 기능 또는 몇몇을 수행하도록 사용될 수 있다. 몇몇 실시 예에서, 필드 프로그래밍 가능한 게이트 어레이는 여기서 설명된 방법 중 하나를 수행하기 위해 마이크로 프로세서와 연동될 수 있다. 일반적으로, 상기 방법들은 바람직하게는 어떠한 하드웨어 장치에 의해서도 수행된다.
상기 설명된 실시 예들은 단지 본 발명의 원리를 위해 예시적일 뿐이다. 본 상기 배열의 변형, 변화, 그리고 여기서 설명된 자세한 내용들을 기술분야의 다른 숙련자에게 명백하다고 이해되어야 한다. 그것의 의도는, 따라서, 여기의 실시 예의 설명 또는 묘사의 방법에 의해 표현된 특정 세부사항들에 의해 제한되는 것이 아닌 오직 목전의 특허 청구항의 범위에 의해서만 제한된다는 것이다.
본 출원은 원출원의 최초 청구항 내용을 실시예들로 아래에 기재하였다.
[실시예 1]
각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 수행하고,
상기 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 상기 각 엔트로피 코딩 경로를 따라 상기 각 개연성 추정들을 적응시키고,
엔트로피 조각 순서(16)를 순차적으로 이용하여 상기 복수의 엔트로피 조각들을 엔트로피 디코딩하는 것을 시작하고, 그리고
미리 결정된 엔트로피 조각의 엔트로피 디코딩에 있어서, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 디코딩에 이용될 때의 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분의 엔트로피 디코딩을 수행하는 것과 함께,
각각, 엔트로피 조각들과 관련된 샘플 배치의 상이한 부분들(12)을 복원하기 위해 엔트로피 인코더 데이터 스트림 내에 복수의 엔트로피 조각들을 엔트로피 디코딩하도록 구성되는, 엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위한 디코더.
[실시예 2]
제1실시예에 따른 디코더에 있어서,
여기서 상기 상이한 부분들은 상기 샘플 배치의 블록들의 줄(row)인 디코더.
[실시예 3]
제1실시예 또는 제2실시예에 따른 디코더에 있어서,
여기서 상기 엔트로피 조각 순서는, 상기 엔트로피 조각 순서를 따라, 상기 상이한 부분들이, 차례로, 서로에 대해 실질적으로 평행하게 확장하는 엔트로피 조각들의 엔트로피 코딩 경로(14)에 관해 경사진 방향(16)으로 서로를 따라가도록 선택되는 것을 특징으로 하는 디코더.
[실시예 4]
제1실시예 내지 제3실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 각 엔트로피 조각은 샘플 배치의 대응하는 부분에 대한 거기에 엔트로피 인코딩된 데이터를 가지며, 상기 엔트로피 조각들에 대응하는 부분들이 블록들의 동일한 숫자 및 상기 블록들의 줄을 따라 병행하는 엔트로피 코딩 경로 포인트들로 구성되도록 상기 상이한 부분들은 줄 및 열로 정규적으로 배치되는 블록들과 함께 샘플 배치의 블록들의 줄을 형성하고,
여기서 상기 디코더는 상기 각 인코딩 경로를 따라 엔트로피 조각을 선행하는 엔트로피 조각 순서(16)에 대응하는 부분(12)의 상기 두번째 블록(50)을 엔트로피 디코딩시킨 후에 그 자신들을 표현하는 개연성 추정들과 함께 상기 각 인코딩 경로(14)를 따라 각 엔트로피 조각에 대응하는 부분(12)의 상기 첫번째 블록을 디코딩하기 전에, 각 엔트로피 조각(90)에 대해, 각 엔트로피 조각에 대한 상기 개연성 추정들(94)의 초기화를 수행하도록 구성되는, 디코더.
[실시예 5]
제4실시예에 따른 디코더에 있어서,
여기서 상기 디코더는 상기 각 인코딩 경로를 따라 상기 각 엔트로피 조각에 대응하는 부분의 첫번째 블록을 디코딩한 후에 상기 초기화를 위한 저장된 개연성 추정들을 이용하고, 상기 각 인코딩 경로를 따라 엔트로피 조각을 선행하는 엔트로피 조각 순서에 대응하는 부분의 두번째 블록을 엔트로피 디코딩시킨 후에 그것들을 표시하는 개연성 추정을 저장하도록 구성되는 디코더.
[실시예 6]
제1실시예 내지 제3실시예 중 어느 한 실시예에 따른 디코더에 있어서,
상기 각 조각은 상기 샘플 배치의 대응하는 부분에 대해 거기에 엔트로피 인코딩된 데이터를 가지며, 엔트로피 조각들에 대응하는 부분들이 상기 블록들의 줄을 따라 병렬적으로 엔트로피 코딩 경로 포인팅 및 블록들의 동일한 숫자로 구성되도록 상기 상이한 부분들은 줄 및 열에 정규적으로 배치되는 블록들과 함께 샘플 배치의 블록들의 줄들을 형성하며, 여기서 미리 결정된 엔트로피 조각의 현재 부분이 상기 미리 결정된 엔트로피 조각의 각 개연성 추정들(94)에 기반하여 엔트로피 디코딩된 후에, 미리 결정된 엔트로피 조각의 각 개연성 추정들(94)는 상기 공간적으로 인접한 엔트로피 조각의 인접 부분의 엔트로피 디코딩에서 그들 자신을 표현하는 개연성 추정들, 및 미리 결정된 엔트로피 조각의 현재 부분에 의존하여 적응되도록, 상기 디코더는, 각 엔트로피 조각에 대해, 각 엔트로피 코딩 경로를 따라 각 개연성 추정의 적응 및 각 엔트로피 코딩 경로를 따른 엔트로피 코딩을 수행하도록 구성되는, 디코더.
[실시예 7]
제6실시예 중 어느 실시예에 따른 디코더에 있어서,
여기서 상기 디코더는, 상기 미리 결정된 엔트로피 조각의 현재 부분이 상기 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 엔트로피 코딩된 후에, 상기 미리 결정된 엔트로피 조각의 각 개연성 추정들의 적응이, 공간적으로 인접한 엔트로피 조각의 인접 부분의 엔트로피 디코딩에서 이용되는 때 개연성 추정들을 갖는 첫번째 적응의 결과의 평균 및 상기 미리 결정된 엔트로피 조각의 현재 부분에 의존하여 첫번째 적응에 의해 수행되도록 구성되는, 디코더.
[실시예 8]
제4실시예 내지 제7실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 상기 디코더는, 상기 인코딩 경로들을 따라 블록들에서 측정되는 즉각 연속 엔트로피 조각들에 대응하는 부분들의 현재 디코딩된 블록들의 거리가 두개의 블록들보다 더 낮게 되는 것을 방지하기 위해 엔트로피 조각 순서에서 즉각 연속 엔트로피 조각들의 상기 엔트로피 디코딩을 조정하도록 구성되는, 디코더.
[실시예 9]
제4실시예 내지 제7실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 상기 디코더는 상기 인코딩 경로들을 따른 블록들에서 측정되는 즉각 연속 엔트로피 조각들에 대응하는 부분들의 현재 디코딩된 블록들의 거리가 두 블록을 유지하도록 엔트로피 조각 순서에서 즉각 연속 엔트로피 조각들의 엔트로피 디코딩을 조정하도록 구성되는, 디코더.
[실시예 10]
제1실시예 내지 제9실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 상기 엔트로피 조각들은 청크들(chunks)로 서브-분할되고, 상기 디코더는 상기 청크들을 디-인터리브(de-interleave)하기 위한 디-인터리버(de-interleaver)를 포함하며 전체로서 상기 엔트로피 조각들 중 어느 것의 수용 전에도 상기 엔트로피 디코딩 경로들을 따라 병렬로 상기 엔트로피 조각들을 엔트로피 디코딩하기 시작하도록 구성되는, 디코더.
[실시예 11]
제1실시예 내지 제10실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 상기 엔트로피 조각들은 청크들로 서브분할되며 상기 디코더는
현재 청크가 상기 엔트로피 코딩 경로를 따라 미리 결정된 엔트로피 조각의 부분의 첫번째 서브-부분에 대응하는지 여부를 확인하고,
만약 그렇다면, 상기 각 개연성 추정들을 적응시키면서 상기 현재 청크를 엔트로피 디코딩하고 그리고 상기 엔트로피 코딩 경로를 따라 상기 미리 결정된 엔트로피 조각의 부분의 두번째 서브-부분에 대응하는 또다른 청크를 엔트로피 디코딩할 때, 현재 청크를 엔트로피 디코딩하는 것의 끝에서 그들 자신을 표시할 때 상기 각 개연성 추정들의 상태를 고려하며, 그리고
만약 그렇지 않다면, 상기 엔트로피 코딩 경로를 따라, 상기 현재 청크에 대응하는 상기 서브-부분을 선행하는 상기 미리 결정된 엔트로피 조각의 부분의 서브-부분에 대응하는 청크를 엔트로피 디코딩하는 것의 끝에서 그들 자신을 표시하는 개연성 추정들에 의존하는 개연성 추정들을 이용하여 상기 현재 청크를 엔트로피 디코딩하는, 디코더.
[실시예 12]
제1실시예 내지 제11실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 상기 샘플 배치(10)는 샘플 배치들의 시퀀스의 현재 샘플 배치이고 상기 디코딩은 미리 결정된 엔트로피 조각을 엔트로피 디코딩하는 데 있어, 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들, 현재 샘플 배치보다 또다른 샘플 배치에 관계된 상기 엔트로피 디코딩 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들, 및 공간적 인접 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서에서, 공간적으로 인접한 것의 엔트로피 디코딩에서 이용될 때 개연성 추정들,에 기반하여 상기 미리 결정된 엔트로피 조각의 현재 부분을 엔트로피 디코딩하도록 구성되는 디코더.
[실시예 13]
엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치의 시퀀스를 복원하도록 구성되는 디코더에 있어서,
상기 샘플 배치의 시퀀스의 현재 샘플 배치를 복원하기 위해 상기 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 디코딩하고,
개연성 추정들을 이용하여 엔트로피 코딩 경로를 따라 상기 엔트로피 디코딩을 수행하며,
상기 현재 프레임의 이전에 디코딩된 부분을 이용하여 상기 엔트로피 코딩 경로를 따라 상기 개연성 추정들을 적응시키도록 구성되며,
여기서 상기 디코더는 상기 엔트로피 인코딩된 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들에 기반하여 상기 현재 프레임에 대한 개연성 추정들을 결정하거나 초기화하도록 구성되는, 디코더.
[실시예 14]
제13실시예에 따른 디코더에 있어서,
여기서 상기 엔트로피 디코딩 스테이지는 상기 엔트로피 인코딩 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 것을 종료시킨 후에 개연성 추정 결과에 기반하여 상기 현재 프레임에 대한 상기 개연성 추정들을 초기화시키도록 구성되는 디코더.
[실시예 15]
제13실시예 또는 제14실시예에 따른 디코더에 있어서,
여기서 상기 엔트로피 디코딩 스테이지가 이전에 디코딩된 프레임의 엔트로피 조각의 공간적으로 대응하는 부분의 엔트로피 디코딩에서 이용될 때 개연성 추정들, 그리고 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들, 및 선택적으로, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서에서, 공간적으로 인접한 것의 엔트로피 디코딩에서 이용될 때 개연성 추정들,에 기반하여 적응(adaptation)을 수행하도록 구성되는 디코더.
[실시예 16]
제13실시예 내지 제15실시예 중 어느 한 실시예에 따른 디코더에 있어서,
여기서 상기 엔트로피 디코딩 스테이지는 예측 레퍼런스들에 기반하여 공간적으로 인접한 엔트로피 조각의 인접 부분 및/또는 이전에 디코딩된 프레임의 엔트로피 조각의 공간적으로 대응하는 부분을 선택하도록 구성되는 디코더.
[실시예 17]
복수의 엔트로피 조각들을 엔트로피 인코더 데이터 스트림으로 엔트로피 인코딩도록 구성되며, 각 엔트로피 조각은, 각각, 샘플 배치의 상이한 부분(12)과 관련되고,
각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 상기 엔트로피 인코딩을, 각 엔트로피 조각에 대해, 수행하고,
상기 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 적응시키며,
엔트로피 조각 순서(16)를 이용하여 순차적으로 복수의 엔트로피 조각들을 엔트로피 인코딩하는 것을 시작하며,
미리 결정된 엔트로피 조각을 엔트로피 인코딩하는 데 있어, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 인코딩에서 이용될 때 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 인코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분을 엔트로피 인코딩하는 것을 수행하는,
엔트로피 인코딩된 데이터 스트림으로 샘플 배치(10)를 인코딩하기 위한 인코더.
[실시예 18]
엔트로피 인코딩된 데이터 스트림으로 샘플 배치들의 시퀀스를 인코딩하도록 구성되는 인코더에 있어서,
샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하도록 상기 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 인코딩하고,
개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 인코딩을 수행하고,
상기 현재 프레임의 이전에 인코딩된 부분을 이용하여 상기 엔트로피 경로를 따라 개연성 추정들을 적응시키도록, 구성되며,
여기서 상기 인코더는 상기 엔트로피 인코딩된 데이터 스트림의 이전에 인코딩된 프레임을 인코딩하는 데 이용되는 개연성 추정들에 기반하여 상기 현재 프레임에 대한 개연성 추정들을 결정하고 또는 초기화하도록 구성되는, 인코더.
[실시예 19]
엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위한 방법에 있어서,
각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 수행하고,
각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 적응시키며,
엔트로피 조각 순서(16)를 이용하여 순차적으로 복수의 엔트로피 조각들의 엔트로피 디코딩을 시작하며, 그리고
미리 결정된 엔트로피 조각을 엔트로피 디코딩하는 데 있어, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 디코딩에 이용될 때의 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분을 엔트로피 디코딩하는 것을 수행하는 것과 함께,
각, 엔트로피 조각들과 관련된 샘플 배치의 상이한 부분들(12)을 복원하기 위해 엔트로피 인코더 데이터 스트림 내에서 복수의 엔트로피 조각들을 엔트로피 디코딩하는 것을 포함하는,
엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위한 방법.
[실시예 20]
엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치들의 시퀀스를 복원하도록 구성되는 방법에 있어서,
개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 디코딩을 수행하며,
상기 현재 프레임의 이전에 디코딩된 부분을 이용하여 상기 엔트로피 코딩 경로를 따라 상기 개연성 추정들을 적응시키는 것을 포함하며,
여기서 엔트로피 인코딩된 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들에 기반하여 상기 현재 프레임에 대한 개연성 추정들을 결정하거나 초기화시키는 것을 포함하는,
샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하기 위해 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 디코딩하는 것을 포함하는,
엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치들의 시퀀스를 복원하도록 구성되는 방법.
[실시예 21]
엔트로피 인코딩된 데이터 스트림으로 샘플 배치(10)를 인코딩하기 위한 방법에 있어서,
엔트로피 인코더 데이터 스트림으로 복수의 엔트로피 조각들을 엔트로피 인코딩하는 것을 포함하고, 각 엔트로피 조각은 샘플 배치의 상이한 부분(12)과 각각 관련되며, 이와 함께,
각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 수행하고,
상기 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 적응시키며,
엔트로피 조각 순서(16)를 이용하여 순차적으로 복수의 엔트로피 조각들을 엔트로피 인코딩하기 시작하고,
미리 결정된 엔트로피 조각을 엔트로피 인코딩하는 것에 있어서, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각에서, 공간적으로 인접한 것의 엔트로피 인코딩에서 이용될 때 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 인코딩된 부분을 이용하여 적응될 때 미리 결정된 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분의 엔트로피 인코딩을 수행하는,
엔트로피 인코딩된 데이터 스트림으로 샘플 배치(10)를 인코딩하기 위한 방법.
[실시예 22]
샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하기 위해 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 인코딩하고,
개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 인코딩을 수행하고,
현재 프레임의 이전에 인코딩된 부분을 이용하여 상기 엔트로피 코딩 경로를 따라 개연성 추정들을 적응시키는 것을 포함하며,
여기서 엔트로피 인코딩된 데이터 스트림의 이전에 인코딩된 프레임을 인코딩하는 데 이용되는 개연성 추정들에 기반하여 현재 프레임에 대한 개연성 추정들을 초기화하고 또는 결정하는 것을 포함하는,
엔트로피 인코딩된 데이터 스트림으로 샘플 배치들의 시퀀스를 인코딩하는 방법.
[실시예 23]
컴퓨터상에서 구동할 때, 제19실시예 내지 제22실시예 중 어느 한 실시예에 따른 방법을 수행하도록 구성되는 프로그램 코드를 갖는 컴퓨터 프로그램.

Claims (23)

  1. 각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 수행하고,

    상기 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 상기 각 엔트로피 코딩 경로를 따라 상기 각 개연성 추정들을 적응시키고,

    엔트로피 조각 순서(16)를 순차적으로 이용하여 상기 복수의 엔트로피 조각들을 엔트로피 디코딩하는 것을 시작하고, 그리고

    미리 결정된 엔트로피 조각의 엔트로피 디코딩에 있어서, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 디코딩에 이용될 때의 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분의 엔트로피 디코딩을 수행하는 것과 함께,

    각각, 엔트로피 조각들과 관련된 샘플 배치의 상이한 부분들(12)을 복원하기 위해 엔트로피 인코더 데이터 스트림 내에 복수의 엔트로피 조각들을 엔트로피 디코딩하도록 구성되는, 엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위한 디코더.
  2. 제1항에 따른 디코더에 있어서,
    여기서 상기 상이한 부분들은 상기 샘플 배치의 블록들의 줄(row)인 디코더.
  3. 제1항에 따른 디코더에 있어서,
    여기서 상기 엔트로피 조각 순서는, 상기 엔트로피 조각 순서를 따라, 상기 상이한 부분들이, 차례로, 서로에 대해 실질적으로 평행하게 확장하는 엔트로피 조각들의 엔트로피 코딩 경로(14)에 관해 경사진 방향(16)으로 서로를 따라가도록 선택되는 것을 특징으로 하는 디코더.
  4. 제1항에 따른 디코더에 있어서,
    여기서 각 엔트로피 조각은 샘플 배치의 대응하는 부분에 대한 거기에 엔트로피 인코딩된 데이터를 가지며, 상기 엔트로피 조각들에 대응하는 부분들이 블록들의 동일한 숫자 및 상기 블록들의 줄을 따라 병행하는 엔트로피 코딩 경로 포인트들로 구성되도록 상기 상이한 부분들은 줄 및 열로 정규적으로 배치되는 블록들과 함께 샘플 배치의 블록들의 줄을 형성하고,
    여기서 상기 디코더는 상기 각 인코딩 경로를 따라 엔트로피 조각을 선행하는 엔트로피 조각 순서(16)에 대응하는 부분(12)의 상기 두번째 블록(50)을 엔트로피 디코딩시킨 후에 그 자신들을 표현하는 개연성 추정들과 함께 상기 각 인코딩 경로(14)를 따라 각 엔트로피 조각에 대응하는 부분(12)의 상기 첫번째 블록을 디코딩하기 전에, 각 엔트로피 조각(90)에 대해, 각 엔트로피 조각에 대한 상기 개연성 추정들(94)의 초기화를 수행하도록 구성되는, 디코더.
  5. 제4항에 따른 디코더에 있어서,
    여기서 상기 디코더는 상기 각 인코딩 경로를 따라 상기 각 엔트로피 조각에 대응하는 부분의 첫번째 블록을 디코딩한 후에 상기 초기화를 위한 저장된 개연성 추정들을 이용하고, 상기 각 인코딩 경로를 따라 엔트로피 조각을 선행하는 엔트로피 조각 순서에 대응하는 부분의 두번째 블록을 엔트로피 디코딩시킨 후에 그것들을 표시하는 개연성 추정을 저장하도록 구성되는 디코더.
  6. 제1항에 따른 디코더에 있어서,
    상기 각 조각은 상기 샘플 배치의 대응하는 부분에 대해 거기에 엔트로피 인코딩된 데이터를 가지며, 엔트로피 조각들에 대응하는 부분들이 상기 블록들의 줄을 따라 병렬적으로 엔트로피 코딩 경로 포인팅 및 블록들의 동일한 숫자로 구성되도록 상기 상이한 부분들은 줄 및 열에 정규적으로 배치되는 블록들과 함께 샘플 배치의 블록들의 줄들을 형성하며, 여기서 미리 결정된 엔트로피 조각의 현재 부분이 상기 미리 결정된 엔트로피 조각의 각 개연성 추정들(94)에 기반하여 엔트로피 디코딩된 후에, 미리 결정된 엔트로피 조각의 각 개연성 추정들(94)는 상기 공간적으로 인접한 엔트로피 조각의 인접 부분의 엔트로피 디코딩에서 그들 자신을 표현하는 개연성 추정들, 및 미리 결정된 엔트로피 조각의 현재 부분에 의존하여 적응되도록, 상기 디코더는, 각 엔트로피 조각에 대해, 각 엔트로피 코딩 경로를 따라 각 개연성 추정의 적응 및 각 엔트로피 코딩 경로를 따른 엔트로피 코딩을 수행하도록 구성되는, 디코더.
  7. 제6항에 따른 디코더에 있어서,
    여기서 상기 디코더는, 상기 미리 결정된 엔트로피 조각의 현재 부분이 상기 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 엔트로피 코딩된 후에, 상기 미리 결정된 엔트로피 조각의 각 개연성 추정들의 적응이, 공간적으로 인접한 엔트로피 조각의 인접 부분의 엔트로피 디코딩에서 이용되는 때 개연성 추정들을 갖는 첫번째 적응의 결과의 평균 및 상기 미리 결정된 엔트로피 조각의 현재 부분에 의존하여 첫번째 적응에 의해 수행되도록 구성되는, 디코더.
  8. 제4항에 따른 디코더에 있어서,
    여기서 상기 디코더는, 상기 인코딩 경로들을 따라 블록들에서 측정되는 즉각 연속 엔트로피 조각들에 대응하는 부분들의 현재 디코딩된 블록들의 거리가 두개의 블록들보다 더 낮게 되는 것을 방지하기 위해 엔트로피 조각 순서에서 즉각 연속 엔트로피 조각들의 상기 엔트로피 디코딩을 조정하도록 구성되는, 디코더.
  9. 제4항에 따른 디코더에 있어서,
    여기서 상기 디코더는 상기 인코딩 경로들을 따른 블록들에서 측정되는 즉각 연속 엔트로피 조각들에 대응하는 부분들의 현재 디코딩된 블록들의 거리가 두 블록을 유지하도록 엔트로피 조각 순서에서 즉각 연속 엔트로피 조각들의 엔트로피 디코딩을 조정하도록 구성되는, 디코더.
  10. 제1항에 따른 디코더에 있어서,
    여기서 상기 엔트로피 조각들은 청크들(chunks)로 서브-분할되고, 상기 디코더는 상기 청크들을 디-인터리브(de-interleave)하기 위한 디-인터리버(de-interleaver)를 포함하며 전체로서 상기 엔트로피 조각들 중 어느 것의 수용 전에도 상기 엔트로피 디코딩 경로들을 따라 병렬로 상기 엔트로피 조각들을 엔트로피 디코딩하기 시작하도록 구성되는, 디코더.
  11. 제1항에 따른 디코더에 있어서,
    여기서 상기 엔트로피 조각들은 청크들로 서브분할되며 상기 디코더는
    현재 청크가 상기 엔트로피 코딩 경로를 따라 미리 결정된 엔트로피 조각의 부분의 첫번째 서브-부분에 대응하는지 여부를 확인하고,
    만약 그렇다면, 상기 각 개연성 추정들을 적응시키면서 상기 현재 청크를 엔트로피 디코딩하고 그리고 상기 엔트로피 코딩 경로를 따라 상기 미리 결정된 엔트로피 조각의 부분의 두번째 서브-부분에 대응하는 또다른 청크를 엔트로피 디코딩할 때, 현재 청크를 엔트로피 디코딩하는 것의 끝에서 그들 자신을 표시할 때 상기 각 개연성 추정들의 상태를 고려하며, 그리고
    만약 그렇지 않다면, 상기 엔트로피 코딩 경로를 따라, 상기 현재 청크에 대응하는 상기 서브-부분을 선행하는 상기 미리 결정된 엔트로피 조각의 부분의 서브-부분에 대응하는 청크를 엔트로피 디코딩하는 것의 끝에서 그들 자신을 표시하는 개연성 추정들에 의존하는 개연성 추정들을 이용하여 상기 현재 청크를 엔트로피 디코딩하는, 디코더.
  12. 제1항에 따른 디코더에 있어서,
    여기서 상기 샘플 배치(10)는 샘플 배치들의 시퀀스의 현재 샘플 배치이고 상기 디코딩은 미리 결정된 엔트로피 조각을 엔트로피 디코딩하는 데 있어, 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들, 현재 샘플 배치보다 또다른 샘플 배치에 관계된 상기 엔트로피 디코딩 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들, 및 공간적 인접 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서에서, 공간적으로 인접한 것의 엔트로피 디코딩에서 이용될 때 개연성 추정들,에 기반하여 상기 미리 결정된 엔트로피 조각의 현재 부분을 엔트로피 디코딩하도록 구성되는 디코더.
  13. 엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치의 시퀀스를 복원하도록 구성되는 디코더에 있어서,
    상기 샘플 배치의 시퀀스의 현재 샘플 배치를 복원하기 위해 상기 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 디코딩하고,
    개연성 추정들을 이용하여 엔트로피 코딩 경로를 따라 상기 엔트로피 디코딩을 수행하며,
    상기 현재 프레임의 이전에 디코딩된 부분을 이용하여 상기 엔트로피 코딩 경로를 따라 상기 개연성 추정들을 적응시키도록 구성되며,
    여기서 상기 디코더는 상기 엔트로피 인코딩된 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들에 기반하여 상기 현재 프레임에 대한 개연성 추정들을 결정하거나 초기화하도록 구성되는, 디코더.
  14. 제13항에 따른 디코더에 있어서,
    여기서 상기 엔트로피 디코딩 스테이지는 상기 엔트로피 인코딩 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 것을 종료시킨 후에 개연성 추정 결과에 기반하여 상기 현재 프레임에 대한 상기 개연성 추정들을 초기화시키도록 구성되는 디코더.
  15. 제13항에 따른 디코더에 있어서,
    여기서 상기 엔트로피 디코딩 스테이지가 이전에 디코딩된 프레임의 엔트로피 조각의 공간적으로 대응하는 부분의 엔트로피 디코딩에서 이용될 때 개연성 추정들, 그리고 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들, 및 선택적으로, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서에서, 공간적으로 인접한 것의 엔트로피 디코딩에서 이용될 때 개연성 추정들,에 기반하여 적응(adaptation)을 수행하도록 구성되는 디코더.
  16. 제13항에 따른 디코더에 있어서,
    여기서 상기 엔트로피 디코딩 스테이지는 예측 레퍼런스들에 기반하여 공간적으로 인접한 엔트로피 조각의 인접 부분 및/또는 이전에 디코딩된 프레임의 엔트로피 조각의 공간적으로 대응하는 부분을 선택하도록 구성되는 디코더.
  17. 복수의 엔트로피 조각들을 엔트로피 인코더 데이터 스트림으로 엔트로피 인코딩도록 구성되며, 각 엔트로피 조각은, 각각, 샘플 배치의 상이한 부분(12)과 관련되고,
    각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 상기 엔트로피 인코딩을, 각 엔트로피 조각에 대해, 수행하고,
    상기 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 적응시키며,
    엔트로피 조각 순서(16)를 이용하여 순차적으로 복수의 엔트로피 조각들을 엔트로피 인코딩하는 것을 시작하며,
    미리 결정된 엔트로피 조각을 엔트로피 인코딩하는 데 있어, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 인코딩에서 이용될 때 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 인코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분을 엔트로피 인코딩하는 것을 수행하는,
    엔트로피 인코딩된 데이터 스트림으로 샘플 배치(10)를 인코딩하기 위한 인코더.
  18. 엔트로피 인코딩된 데이터 스트림으로 샘플 배치들의 시퀀스를 인코딩하도록 구성되는 인코더에 있어서,
    샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하도록 상기 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 인코딩하고,
    개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 인코딩을 수행하고,
    상기 현재 프레임의 이전에 인코딩된 부분을 이용하여 상기 엔트로피 경로를 따라 개연성 추정들을 적응시키도록, 구성되며,
    여기서 상기 인코더는 상기 엔트로피 인코딩된 데이터 스트림의 이전에 인코딩된 프레임을 인코딩하는 데 이용되는 개연성 추정들에 기반하여 상기 현재 프레임에 대한 개연성 추정들을 결정하고 또는 초기화하도록 구성되는, 인코더.
  19. 엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위한 방법에 있어서,
    각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 수행하고,
    각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 적응시키며,
    엔트로피 조각 순서(16)를 이용하여 순차적으로 복수의 엔트로피 조각들의 엔트로피 디코딩을 시작하며, 그리고
    미리 결정된 엔트로피 조각을 엔트로피 디코딩하는 데 있어, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각 순서로, 공간적으로 인접한 것의 엔트로피 디코딩에 이용될 때의 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 적응될 때 미리 결정된 엔트로피 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분을 엔트로피 디코딩하는 것을 수행하는 것과 함께,
    각, 엔트로피 조각들과 관련된 샘플 배치의 상이한 부분들(12)을 복원하기 위해 엔트로피 인코더 데이터 스트림 내에서 복수의 엔트로피 조각들을 엔트로피 디코딩하는 것을 포함하는,
    엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치(10)를 복원하기 위한 방법.
  20. 엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치들의 시퀀스를 복원하도록 구성되는 방법에 있어서,
    개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 디코딩을 수행하며,
    상기 현재 프레임의 이전에 디코딩된 부분을 이용하여 상기 엔트로피 코딩 경로를 따라 상기 개연성 추정들을 적응시키는 것을 포함하며,
    여기서 엔트로피 인코딩된 데이터 스트림의 이전에 디코딩된 프레임을 디코딩하는 데 이용되는 개연성 추정들에 기반하여 상기 현재 프레임에 대한 개연성 추정들을 결정하거나 초기화시키는 것을 포함하는,
    샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하기 위해 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 디코딩하는 것을 포함하는,
    엔트로피 인코딩된 데이터 스트림으로부터 샘플 배치들의 시퀀스를 복원하도록 구성되는 방법.
  21. 엔트로피 인코딩된 데이터 스트림으로 샘플 배치(10)를 인코딩하기 위한 방법에 있어서,
    엔트로피 인코더 데이터 스트림으로 복수의 엔트로피 조각들을 엔트로피 인코딩하는 것을 포함하고, 각 엔트로피 조각은 샘플 배치의 상이한 부분(12)과 각각 관련되며, 이와 함께,
    각 개연성 추정들을 이용하여 각 엔트로피 코딩 경로(14)를 따라 엔트로피 디코딩을, 각 엔트로피 조각에 대해, 수행하고,
    상기 각 엔트로피 조각의 이전에 디코딩된 부분을 이용하여 각 엔트로피 코딩 경로를 따라 각 개연성 추정들을 적응시키며,
    엔트로피 조각 순서(16)를 이용하여 순차적으로 복수의 엔트로피 조각들을 엔트로피 인코딩하기 시작하고,
    미리 결정된 엔트로피 조각을 엔트로피 인코딩하는 것에 있어서, 공간적으로 인접한 엔트로피 조각의 인접 부분에서 엔트로피 조각을 선행하는 엔트로피 조각에서, 공간적으로 인접한 것의 엔트로피 인코딩에서 이용될 때 개연성 추정들 및, 미리 결정된 엔트로피 조각의 이전에 인코딩된 부분을 이용하여 적응될 때 미리 결정된 조각의 각 개연성 추정들에 기반하여 미리 결정된 엔트로피 조각의 현재 부분의 엔트로피 인코딩을 수행하는,
    엔트로피 인코딩된 데이터 스트림으로 샘플 배치(10)를 인코딩하기 위한 방법.
  22. 샘플 배치들의 시퀀스의 현재 샘플 배치를 복원하기 위해 엔트로피 인코딩된 데이터 스트림의 현재 프레임을 엔트로피 인코딩하고,
    개연성 추정들을 이용하여 그리고 엔트로피 코딩 경로를 따라 엔트로피 인코딩을 수행하고,
    현재 프레임의 이전에 인코딩된 부분을 이용하여 상기 엔트로피 코딩 경로를 따라 개연성 추정들을 적응시키는 것을 포함하며,
    여기서 엔트로피 인코딩된 데이터 스트림의 이전에 인코딩된 프레임을 인코딩하는 데 이용되는 개연성 추정들에 기반하여 현재 프레임에 대한 개연성 추정들을 초기화하고 또는 결정하는 것을 포함하는,
    엔트로피 인코딩된 데이터 스트림으로 샘플 배치들의 시퀀스를 인코딩하는 방법.
  23. 컴퓨터상에서 구동할 때, 제19항 내지 제22항 중 어느 한 항에 따른 방법을 수행하도록 구성되는 프로그램 코드를 갖는 컴퓨터 프로그램.
KR1020197031689A 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩 KR102085171B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161508477P 2011-07-15 2011-07-15
US61/508,477 2011-07-15
PCT/EP2012/063929 WO2013010997A1 (en) 2011-07-15 2012-07-16 Sample array coding for low-delay

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020187021274A Division KR102039049B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020207005993A Division KR102187171B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩

Publications (2)

Publication Number Publication Date
KR20190124341A true KR20190124341A (ko) 2019-11-04
KR102085171B1 KR102085171B1 (ko) 2020-03-06

Family

ID=46548436

Family Applications (9)

Application Number Title Priority Date Filing Date
KR1020197031689A KR102085171B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020207005993A KR102187171B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020177010778A KR101882979B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020187021274A KR102039049B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020227031783A KR20220129114A (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020207034469A KR102385848B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020167010022A KR101730586B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020147003883A KR101721487B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020227011628A KR102444757B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩

Family Applications After (8)

Application Number Title Priority Date Filing Date
KR1020207005993A KR102187171B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020177010778A KR101882979B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020187021274A KR102039049B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020227031783A KR20220129114A (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020207034469A KR102385848B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020167010022A KR101730586B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020147003883A KR101721487B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩
KR1020227011628A KR102444757B1 (ko) 2011-07-15 2012-07-16 저-지연을 위한 샘플 배치 코딩

Country Status (32)

Country Link
US (13) US9596469B2 (ko)
EP (3) EP3425805B1 (ko)
JP (6) JP6177775B2 (ko)
KR (9) KR102085171B1 (ko)
CN (5) CN107995491B (ko)
AP (2) AP2016009466A0 (ko)
AU (7) AU2012285851B2 (ko)
BR (1) BR112014001026B1 (ko)
CA (1) CA2841888C (ko)
CL (1) CL2014000116A1 (ko)
CO (1) CO6880051A2 (ko)
DK (2) DK2732625T3 (ko)
ES (2) ES2694848T3 (ko)
FI (1) FI3425805T3 (ko)
HK (4) HK1254387A1 (ko)
HR (1) HRP20230228T1 (ko)
HU (2) HUE061192T2 (ko)
IL (10) IL310690A (ko)
LT (1) LT3425805T (ko)
MA (1) MA35416B1 (ko)
MX (3) MX2020003540A (ko)
MY (2) MY168583A (ko)
PH (5) PH12018500198A1 (ko)
PL (2) PL2732625T3 (ko)
PT (2) PT2732625T (ko)
RS (1) RS64037B1 (ko)
RU (5) RU2610668C2 (ko)
SI (1) SI3425805T1 (ko)
TN (1) TN2014000015A1 (ko)
UA (3) UA111362C2 (ko)
WO (1) WO2013010997A1 (ko)
ZA (1) ZA201401075B (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009142021A1 (ja) * 2008-05-23 2009-11-26 パナソニック株式会社 画像復号化装置、画像復号化方法、画像符号化装置、及び画像符号化方法
FR2972588A1 (fr) 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2977111A1 (fr) 2011-06-24 2012-12-28 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
EP3425805B1 (en) 2011-07-15 2022-12-07 GE Video Compression, LLC Sample array coding for low-delay
KR20130085389A (ko) * 2012-01-19 2013-07-29 삼성전자주식회사 서브영역별로 엔트로피 부호화의 병렬 처리가 가능한 비디오 부호화 방법 및 장치, 서브영역별로 엔트로피 복호화의 병렬 처리가 가능한 비디오 복호화 방법 및 장치
BR112014017915B1 (pt) * 2012-01-20 2021-03-16 Ge Video Compression, Llc conceito de codificação que permite o processamento parelelo, desmultiplexador de transporte e fluxo de bites de vídeo
WO2013132408A1 (en) * 2012-03-04 2013-09-12 Jeffries Adam Data systems processing
GB2513111A (en) * 2013-04-08 2014-10-22 Sony Corp Data encoding and decoding
US20140362098A1 (en) * 2013-06-10 2014-12-11 Sharp Laboratories Of America, Inc. Display stream compression
US9628792B2 (en) 2013-07-15 2017-04-18 Qualcomm Incorporated Cross-layer parallel processing and offset delay parameters for video coding
EP3084968A4 (en) * 2013-12-16 2017-11-29 McAfee, LLC Process efficient preprocessing for an encryption standard
WO2016041507A1 (en) * 2014-09-17 2016-03-24 Mediatek Inc. Syntax parsing apparatus with multiple syntax parsing circuits for processing multiple image regions within same frame or processing multiple frames and related syntax parsing method
CN105206302B (zh) * 2015-09-14 2019-05-31 联想(北京)有限公司 一种信息处理方法及电子设备
CN105939479B (zh) * 2016-06-15 2019-06-21 北京奇艺世纪科技有限公司 一种并行编码方法和装置
US10218979B2 (en) * 2016-11-01 2019-02-26 Cisco Technology, Inc. Entropy coding state segmentation and retention
EP3358754A1 (en) * 2017-02-02 2018-08-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Antenna array codebook with beamforming coefficients adapted to an arbitrary antenna response of the antenna array
US10554977B2 (en) * 2017-02-10 2020-02-04 Intel Corporation Method and system of high throughput arithmetic entropy coding for video coding
WO2019000443A1 (zh) * 2017-06-30 2019-01-03 华为技术有限公司 一种帧间预测的方法及装置
CN109558888A (zh) * 2017-09-27 2019-04-02 武汉嫦娥信息科技有限公司 一种高光谱遥感图像分类的并行化加速算法
US10664477B2 (en) * 2017-12-21 2020-05-26 Futurewei Technologies, Inc. Cardinality estimation in databases
CN112189343B (zh) * 2018-03-29 2023-10-20 弗劳恩霍夫应用研究促进协会 用于增强并行编码能力的构思
EP3780607A4 (en) * 2018-04-13 2021-02-17 Zhejiang University INFORMATION RETENTION CODING AND DECODING PROCESS AND DEVICE
EP3588800A1 (en) 2018-06-29 2020-01-01 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Antenna array codebook with beamforming coefficients adapted to an arbitrary antenna response of the antenna array
JP6982253B2 (ja) * 2018-10-31 2021-12-17 日本電信電話株式会社 復号装置、符号化装置、復号方法、符号化方法、及びプログラム
US11538221B2 (en) * 2020-05-21 2022-12-27 Samsung Electronics Co., Ltd. Re-reference aware tile walk order for primitive binner
EP4292283A1 (en) * 2021-04-26 2023-12-20 Huawei Technologies Co., Ltd. Parallel entropy coding
CN117472591B (zh) * 2023-12-27 2024-03-22 北京壁仞科技开发有限公司 用于数据计算的方法、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008011204A (ja) * 2006-06-29 2008-01-17 Toshiba Corp 符号化回路、復号回路、エンコーダ回路、デコーダ回路、cabac処理方法
WO2011042645A1 (fr) * 2009-10-05 2011-04-14 France Telecom Procedes de codage et de décodage d'images, dispositifs de codage et de decodage et programmes d'ordinateur correspondants
WO2011052142A1 (ja) * 2009-10-29 2011-05-05 パナソニック株式会社 画像符号化方法および画像復号方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9108199D0 (en) 1991-04-17 1991-06-05 Rhone Poulenc Agriculture New compositions of matter
RU2093957C1 (ru) * 1994-09-20 1997-10-20 Научно-производственное предприятие "Информационные технологии" Устройство для сжатия данных (варианты)
US6104752A (en) * 1996-10-01 2000-08-15 Victor Company Of Japan, Ltd. Apparatus and method of decoding high efficiency coded picture data with picture size resizing
US6832005B2 (en) 2001-03-23 2004-12-14 Microsoft Corporation Adaptive encoding and decoding of bi-level images
BR0304545A (pt) * 2002-01-14 2004-11-03 Nokia Corp Método de codificação das imagens em uma sequência de vìdeo digital para fornecer os dados de vìdeo codificados, codificador de vìdeo, método de decodificação dos dados indicativos de uma sequência de vìdeo digital, decodificador de vìdeo, e, sistema de decodificação de vìdeo
US8401084B2 (en) 2002-04-01 2013-03-19 Broadcom Corporation System and method for multi-row decoding of video with dependent rows
JP2003319391A (ja) * 2002-04-26 2003-11-07 Sony Corp 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
US20040258162A1 (en) 2003-06-20 2004-12-23 Stephen Gordon Systems and methods for encoding and decoding video data in parallel
US7693339B2 (en) * 2003-12-17 2010-04-06 Andreas Wittenstein Method and apparatus for faster-than-real-time lossless compression and decompression of images
US7450770B2 (en) * 2003-12-19 2008-11-11 National Taiwan University Architecture and method for parallel embedded block coding
US20070014367A1 (en) * 2005-07-13 2007-01-18 Yaxiong Zhou Extensible architecture for multi-standard variable length decoding
US8401082B2 (en) * 2006-03-27 2013-03-19 Qualcomm Incorporated Methods and systems for refinement coefficient coding in video compression
US8306125B2 (en) * 2006-06-21 2012-11-06 Digital Video Systems, Inc. 2-bin parallel decoder for advanced video processing
US8275045B2 (en) * 2006-07-12 2012-09-25 Qualcomm Incorporated Video compression using adaptive variable length codes
US8000388B2 (en) 2006-07-17 2011-08-16 Sony Corporation Parallel processing apparatus for video compression
US7365659B1 (en) 2006-12-06 2008-04-29 Silicon Image Gmbh Method of context adaptive binary arithmetic coding and coding apparatus using the same
JP5150129B2 (ja) 2007-04-20 2013-02-20 株式会社ミマキエンジニアリング プリンター装置
US9648325B2 (en) * 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
CN101389021B (zh) 2007-09-14 2010-12-22 华为技术有限公司 视频编解码方法及装置
BRPI0818444A2 (pt) 2007-10-12 2016-10-11 Qualcomm Inc codificação adaptativa de informação de cabeçalho de bloco de vídeo
US9008171B2 (en) * 2008-01-08 2015-04-14 Qualcomm Incorporated Two pass quantization for CABAC coders
US8542748B2 (en) * 2008-03-28 2013-09-24 Sharp Laboratories Of America, Inc. Methods and systems for parallel video encoding and decoding
JP4314315B1 (ja) * 2008-03-31 2009-08-12 株式会社東芝 情報処理装置および復号制御方法
FR2931280B1 (fr) 2008-05-19 2011-01-07 Envivio France Procede et dispositif de codage ou decodage d'image avec parallelisatioon du traitement sur plusieurs processeurs et coprocesseurs, programme d'ordinateur et moyen de stockage correspondants.
EP2146343A1 (en) * 2008-07-16 2010-01-20 Deutsche Thomson OHG Method and apparatus for synchronizing highly compressed enhancement layer data
US8275209B2 (en) * 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing
US7932843B2 (en) * 2008-10-17 2011-04-26 Texas Instruments Incorporated Parallel CABAC decoding for video decompression
US9467699B2 (en) 2008-12-03 2016-10-11 Hfi Innovation Inc. Method for performing parallel coding with ordered entropy slices, and associated apparatus
WO2010063184A1 (en) 2008-12-03 2010-06-10 Mediatek Inc. Method for performing parallel cabac processing with ordered entropy slices, and associated apparatus
WO2011004577A1 (ja) 2009-07-06 2011-01-13 パナソニック株式会社 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法、プログラムおよび集積回路
CN102098503B (zh) * 2009-12-14 2012-11-28 中兴通讯股份有限公司 一种多核处理器并行解码图像的方法和装置
US20110280314A1 (en) * 2010-05-12 2011-11-17 Texas Instruments Incorporated Slice encoding and decoding processors, circuits, devices, systems and processes
CN101888554B (zh) * 2010-07-09 2013-05-22 西安交通大学 并行流水运动补偿滤波器vlsi结构设计方法
US8344917B2 (en) * 2010-09-30 2013-01-01 Sharp Laboratories Of America, Inc. Methods and systems for context initialization in video coding and decoding
US8995523B2 (en) * 2011-06-03 2015-03-31 Qualcomm Incorporated Memory efficient context modeling
RU2642373C1 (ru) 2011-06-16 2018-01-24 ДжиИ Видео Компрешн, ЭлЭлСи Инициализация контекста при энтропийном кодировании
US20130003823A1 (en) * 2011-07-01 2013-01-03 Kiran Misra System for initializing an arithmetic coder
EP3425805B1 (en) 2011-07-15 2022-12-07 GE Video Compression, LLC Sample array coding for low-delay

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008011204A (ja) * 2006-06-29 2008-01-17 Toshiba Corp 符号化回路、復号回路、エンコーダ回路、デコーダ回路、cabac処理方法
WO2011042645A1 (fr) * 2009-10-05 2011-04-14 France Telecom Procedes de codage et de décodage d'images, dispositifs de codage et de decodage et programmes d'ordinateur correspondants
WO2011052142A1 (ja) * 2009-10-29 2011-05-05 パナソニック株式会社 画像符号化方法および画像復号方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
F. Henry, et al. Wavefront Parallel Processing. JCT-VC of ITU-T and ISO/IEC. JCTVC-E196 Ver.4, Mar. 19, 2011. pp.1-9 *

Also Published As

Publication number Publication date
LT3425805T (lt) 2023-03-27
TN2014000015A1 (en) 2015-07-01
JP2016187194A (ja) 2016-10-27
AP3992A (en) 2017-01-08
IL230399A (en) 2017-07-31
CA2841888A1 (en) 2013-01-24
CN103797793A (zh) 2014-05-14
FI3425805T3 (fi) 2023-03-22
IL282796B (en) 2022-04-01
IL258274B (en) 2019-03-31
CN107995491B (zh) 2021-12-28
EP4152749A1 (en) 2023-03-22
US9866857B2 (en) 2018-01-09
RU2019107150A3 (ko) 2021-10-22
RU2682922C1 (ru) 2019-03-22
EP2732625B1 (en) 2018-09-05
BR112014001026B1 (pt) 2022-05-03
AU2023258453A1 (en) 2023-11-23
HK1254424A1 (zh) 2019-07-19
CN108111854A (zh) 2018-06-01
KR20200136515A (ko) 2020-12-07
US20200021830A1 (en) 2020-01-16
UA124568C2 (uk) 2021-10-13
PH12018500195B1 (en) 2018-09-24
RU2763532C2 (ru) 2021-12-30
US20140105293A1 (en) 2014-04-17
IL299633B1 (en) 2024-03-01
KR102039049B1 (ko) 2019-11-15
HK1255113A1 (zh) 2019-08-02
US10659798B2 (en) 2020-05-19
KR101882979B1 (ko) 2018-08-24
RU2610668C2 (ru) 2017-02-14
CN108111854B (zh) 2021-04-02
KR20180086525A (ko) 2018-07-31
PL3425805T3 (pl) 2023-05-08
UA114670C2 (uk) 2017-07-10
PH12018500196A1 (en) 2018-09-24
EP3425805B1 (en) 2022-12-07
KR102187171B1 (ko) 2020-12-04
RU2643647C1 (ru) 2018-02-02
US20180084267A1 (en) 2018-03-22
AP2014007416A0 (en) 2014-02-28
IL270426B (en) 2020-08-31
EP2732625A1 (en) 2014-05-21
US20170134741A1 (en) 2017-05-11
KR20140042893A (ko) 2014-04-07
KR20220047686A (ko) 2022-04-18
US10652564B2 (en) 2020-05-12
KR20160049028A (ko) 2016-05-04
US11595675B2 (en) 2023-02-28
AU2012285851A1 (en) 2014-02-06
US10771800B2 (en) 2020-09-08
CN107959854A (zh) 2018-04-24
JP2023017786A (ja) 2023-02-07
JP2022033819A (ja) 2022-03-02
HUE039959T2 (hu) 2019-02-28
US20230179786A1 (en) 2023-06-08
PH12018500198B1 (en) 2018-09-24
AU2020280994A1 (en) 2021-01-07
HUE061192T2 (hu) 2023-05-28
EP4152749B1 (en) 2024-04-10
KR20170047405A (ko) 2017-05-04
PH12018502511A1 (en) 2020-03-16
MY168583A (en) 2018-11-14
ES2939239T3 (es) 2023-04-20
MX2022003601A (es) 2022-06-17
BR112014001026A2 (pt) 2017-02-14
PL2732625T3 (pl) 2019-02-28
CN107995491A (zh) 2018-05-04
AP2016009466A0 (ko) 2016-09-30
AU2016200182B2 (en) 2017-05-04
CA2841888C (en) 2017-01-03
AU2022202573A1 (en) 2022-05-12
RS64037B1 (sr) 2023-04-28
MX2020003540A (es) 2022-03-25
US20200280731A1 (en) 2020-09-03
US20180367810A1 (en) 2018-12-20
KR20200024959A (ko) 2020-03-09
MA35416B1 (fr) 2014-09-01
MX2014000542A (es) 2014-07-14
PH12018500195A1 (en) 2018-09-24
SI3425805T1 (sl) 2023-04-28
US20170302944A1 (en) 2017-10-19
CL2014000116A1 (es) 2014-08-01
PH12018500196B1 (en) 2018-09-24
PT2732625T (pt) 2018-12-17
AU2022202573B2 (en) 2023-08-10
KR101882979B9 (ko) 2021-10-27
IL265152A (en) 2019-05-30
CN107959854B (zh) 2021-07-23
HK1254387A1 (zh) 2019-07-19
KR102385848B1 (ko) 2022-04-14
US10085035B2 (en) 2018-09-25
US9596469B2 (en) 2017-03-14
JP2020092437A (ja) 2020-06-11
CO6880051A2 (es) 2014-02-28
DK3425805T3 (da) 2023-03-06
US20200366919A1 (en) 2020-11-19
IL276219B (en) 2021-05-31
IL253274B (en) 2018-04-30
IL310690A (en) 2024-04-01
US9860547B2 (en) 2018-01-02
IL291443A (en) 2022-05-01
AU2017208363A1 (en) 2017-08-17
JP7164692B2 (ja) 2022-11-01
IL282796A (en) 2021-06-30
JP2018152896A (ja) 2018-09-27
IL253274A0 (en) 2017-08-31
KR102085171B1 (ko) 2020-03-06
AU2019275583B2 (en) 2020-09-03
AU2012285851B2 (en) 2015-11-12
US20200236378A1 (en) 2020-07-23
IL299633A (en) 2023-03-01
US11019352B2 (en) 2021-05-25
JP2014525187A (ja) 2014-09-25
IL265152B (en) 2019-11-28
RU2014105554A (ru) 2015-08-27
KR101730586B1 (ko) 2017-04-26
US9729891B2 (en) 2017-08-08
US20170302943A1 (en) 2017-10-19
MY191000A (en) 2022-05-27
AU2016200182A1 (en) 2016-02-04
HK1254885A1 (zh) 2019-07-26
PH12018500197A1 (en) 2018-09-24
US9860544B2 (en) 2018-01-02
JP6659767B2 (ja) 2020-03-04
KR102444757B1 (ko) 2022-09-19
UA111362C2 (uk) 2016-04-25
US20170302945A1 (en) 2017-10-19
US10924754B2 (en) 2021-02-16
WO2013010997A1 (en) 2013-01-24
JP6177775B2 (ja) 2017-08-09
US11949897B2 (en) 2024-04-02
AU2020280994B2 (en) 2022-03-03
PH12018500198A1 (en) 2018-09-24
JP6985436B2 (ja) 2021-12-22
US20210211701A1 (en) 2021-07-08
ZA201401075B (en) 2015-02-25
PT3425805T (pt) 2023-03-13
AU2017208363B2 (en) 2019-09-12
DK2732625T3 (en) 2018-12-17
HRP20230228T1 (hr) 2023-04-14
CN103797793B (zh) 2018-01-09
ES2694848T3 (es) 2018-12-27
AU2019275583A1 (en) 2020-01-02
IL276219A (en) 2020-09-30
RU2666628C1 (ru) 2018-09-11
KR20220129114A (ko) 2022-09-22
IL291443B2 (en) 2023-06-01
RU2019107150A (ru) 2020-09-14
IL258274A (en) 2018-05-31
KR101721487B1 (ko) 2017-03-30
CN107948645B (zh) 2021-12-24
CN107948645A (zh) 2018-04-20
EP3425805A1 (en) 2019-01-09
PH12018500197B1 (en) 2018-09-24

Similar Documents

Publication Publication Date Title
KR102039049B1 (ko) 저-지연을 위한 샘플 배치 코딩

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right