KR20200006908A - 변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템 - Google Patents

변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템 Download PDF

Info

Publication number
KR20200006908A
KR20200006908A KR1020190053058A KR20190053058A KR20200006908A KR 20200006908 A KR20200006908 A KR 20200006908A KR 1020190053058 A KR1020190053058 A KR 1020190053058A KR 20190053058 A KR20190053058 A KR 20190053058A KR 20200006908 A KR20200006908 A KR 20200006908A
Authority
KR
South Korea
Prior art keywords
sample value
block
current sample
entropy coding
classification
Prior art date
Application number
KR1020190053058A
Other languages
English (en)
Inventor
비자야락하반 띠루마라이
Original Assignee
삼성디스플레이 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성디스플레이 주식회사 filed Critical 삼성디스플레이 주식회사
Publication of KR20200006908A publication Critical patent/KR20200006908A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

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

Abstract

본 발명의 한 실시예에 따른 엔트로피 부호화 그룹 생성 방법은, 변환 모드에서 동작하는 엔트로피 부호기에서 엔트로피 부호화 그룹을 생성하는 방법으로서, 상기 변환 모드로 생성된 제1 개수의 양자 변환 계수 블록을 현재 표본 값 블록으로 수신하는 단계, 하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하는 단계, 상기 현재 표본 값 블록의 평가에 기초하여 복수의 분류 방법 중 하나를 선택하는 단계, 상기 선택된 분류 방법을 사용하여 제1 엔트로피 부호화 그룹을 포함하는 제2 개수의 엔트로피 부호화 그룹을 생성하는 단계, 상기 각각의 엔트로피 부호화 그룹의 표본 값을 비트 기반 표현으로 변환하는 단계, 그리고 상기 비트 기반 표현을 출력하는 단계를 포함하며, 상기 복수의 분류 방법 중 하나를 선택하는 단계는, 상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제1 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 DC 변환 계수를 포함하는 하나의 표본 값을 포함하는 제1 분류 방법을 선택하는 단계, 그리고 상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제2 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함하는 제2 분류 방법을 선택하는 단계를 포함한다.

Description

변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템{METHOD AND SYSTEM OF GROUPING ENTROPY CODING GROUP FOR TRANSFORM MODE}
본 발명은 변환 모드를 사용하는 엔트로피 부호화 방법 및 시스템, 특히, 엔트로피 부호화 그룹의 분류 방법 및 시스템에 관한 것이다.
본 출원은 2018년 7월 10일에 미국 특허청에 출원한 미국 특허출원번호 제62/696,266호를 우선권 주장하며, 여기에 인용함으로써 이 출원의 전체 내용을 본원에 포함한다.
VESA(Video Electronics Standard Association)는 이른바 VDC-M(VESA Display Compression - Mobile)이라는 모바일 또는 스마트폰 표시 장치 또는 핸드-헬드(hand-held) 장치용의 새로운 표시 인터페이스 압축 규격을 개발하였다. VDC-M 은 DSC (Display Stream Compression)와 동일한 시각 정보 손실 없는 품질을 유지하면서도 DSC 보다 높은 압축률을 목표로 하며 이와 같이 하려면 난이도가 높아진다. VDC-M 은 MIPI DSI(display serial interface) 등의 디스플레이 링크를 사용하는 모바일 장치에 적용된다. VDC-M 표시 인터페이스 압축 규격은 Jacobson 등의 논문 "A new display stream compression standard under development in VESA", Proc. SPIE 10396, Applications of Digital Image Processing XL, 103960U (19 September 2017)에 기재되어 있다.
특히, VDC-M 압축 규격은 고정 속도 코덱(fixed rate codec)(부호기-복호기)이며, 색 성분 당 8 비트의 RGB 4:4:4 신호원에 대해서 화소당 6 비트까지 압축 속도를 늦추게 할 수 있다. VDC-M 은 블록 크기가 8x2 화소인 블록 기준 코덱(block based codec)이다. 동작 시에는, VDC-M 코덱은 각 블록에 복수의 부호화 모드를 적용 또는 시험하고, 속도-왜곡 코스트(rate-distortion cost)에 기반한 블록에 대하여 최적 부호화 모드를 선택한다. 각 블록에 대해서 서로 다른 부호화 모드가 선택될 수 있다. 선택된 부호화 모드 하에서 데이터 샘플은 엔트로피 부호기(엔트로피 부호기)에 의하여 부호화되어 압축된 비트스트림을 생성한다. 비트스트림 멀티플렉싱을 수행하여 압축된 비트스트림의 병렬 파싱(parallel parsing)이 가능하도록 함으로써, 높은 복호화 처리율을 얻을 수 있다.
본 발명이 해결하고자 하는 과제는 효율이 높은 변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템을 제공하는 것이다.
본 발명의 한 실시예에 따른 엔트로피 부호화 그룹 생성 방법은, 변환 모드에서 동작하는 엔트로피 부호기에서 엔트로피 부호화 그룹을 생성하는 방법으로서, 상기 변환 모드로 생성된 제1 개수의 양자 변환 계수 블록을 현재 표본 값 블록으로 수신하는 단계, 하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하는 단계, 상기 현재 표본 값 블록의 평가에 기초하여 복수의 분류 방법 중 하나를 선택하는 단계, 상기 선택된 분류 방법을 사용하여 제1 엔트로피 부호화 그룹을 포함하는 제2 개수의 엔트로피 부호화 그룹을 생성하는 단계, 상기 각각의 엔트로피 부호화 그룹의 표본 값을 비트 기반 표현으로 변환하는 단계, 그리고 상기 비트 기반 표현을 출력하는 단계를 포함하며, 상기 복수의 분류 방법 중 하나를 선택하는 단계는, 상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제1 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 DC 변환 계수를 포함하는 하나의 표본 값을 포함하는 제1 분류 방법을 선택하는 단계, 그리고 상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제2 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함하는 제2 분류 방법을 선택하는 단계를 포함한다.
본 발명의 한 실시예에 따른 엔트로피 부호화 그룹 생성 시스템은, 변환 모드에서 동작하는 엔트로피 부호기에서 엔트로피 부호화 그룹을 생성하는 시스템으로서, 프로세서, 그리고 상기 프로세서와 연결되어 있으며 인스트럭션을 상기 프로세서에 공급하는 메모리를 포함하며, 상기 프로세서는 상기 인스트럭션에 따라, 상기 변환 모드로 생성된 제1 개수의 양자 변환 계수 블록을 현재 표본 값 블록으로 수신하고, 하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하고, 상기 현재 표본 값 블록의 평가에 기초하여 복수의 분류 방법 중 하나를 선택하고, 상기 선택된 분류 방법을 사용하여 제1 엔트로피 부호화 그룹을 포함하는 제2 개수의 엔트로피 부호화 그룹을 생성하고, 상기 각각의 엔트로피 부호화 그룹의 표본 값을 비트 기반 표현으로 변환하고, 상기 비트 기반 표현을 출력하며, 상기 복수의 분류 방법 중 하나의 선택은, 상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제1 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 DC 변환 계수를 포함하는 하나의 표본 값을 포함하는 제1 분류 방법을 선택하고, 상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제2 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함하는 제2 분류 방법을 선택한다.
본 발명의 다른 실시예에 따른 압축 비트스트림 복호화 방법은, 변환 모드 동작에서 복수의 분류 방법을 사용하는 엔트로피 부호기가 부호화 방법을 사용하여 부호화한 압축 비트 스트림을 수신하는 단계, 상기 수신한 압축 스트림 내의 현재 표본 값 블록을 처리하는 단계, 하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하는 단계, 상기 현재 표본 값 블록을 부호화하는 데 사용한 복수의 분류 방법 중 하나의 분류 방법을 판단하는 단계, 상기 결정 결과에 기초하여, 상기 결정된 분류 방법을 사용하여 상기 현재 표본 값 블록을 복호화하는 단계, 그리고 각 성분에 대한 양자 변환 계수를 출력으로 생성하는 단계를 포함하며, 상기 복수의 분류 방법은 제1 엔트로피 부호화 그룹을 포함하는 복수의 엔트로피 부호화 그룹을 생성하고, 제1 분류 방법과 제2 분류 방법을 포함하며, 상기 제1 분류 방법에서 상기 제1 엔트로피 부호화 그룹은 DC 변환 계수를 포함하는 하나의 표본 값을 포함하고, 상기 제2 분류 방법에서 상기 제1 엔트로피 부호화 그룹은 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함한다.
이와 같이 함으로써 성능이 우수한 엔트로피 부호화 방법 및 시스템을 제공할 수 있다.
도 1은 본 발명의 실시예에 따라 표시 인터페이스 코덱을 수행하는 시스템 구성을 도시한 블록도이다.
도 2는 본 발명의 실시예에 따른 표시 스트림 부호기의 동작을 나타내는 블록도이다.
도 3은 본 발명의 실시예에 따른 표시 스트림 부호기에서의 변환 모드 동작을 나타내는 블록도이다.
도 4는 본 발명의 실시예에 따른 변환 부호화 모드에 사용할 수 있는 8개의 내적 예측기로 이루어진 세트를 나타낸다.
도 5는 본 발명의 실시예에 따른 엔트로피 부호기의 동작을 나타내는 흐름도이다.
도 6a 내지 6d를 포함하는 도 6은 본 발명의 실시예에 따른 엔트로피 부호화 그룹 구조 및 공통 머리값 엔트로피 부호화 출력(CPEC)을 도시한다.
도 7a 및 7b를 아우르는 도 7은 변환 모드에 의하여 부호화되는 표본 값 블록 내의 한 성분에 대한 엔트로피 부호화 그룹을 형성하는 데 사용되는 종래의 분류 방법을 도시하고 있다.
도 8a 및 8b를 아우르는 도 8은 변환 모드에 의하여 부호화되는 8 개의 표본 값으로 이루어진 하나의 블록 내의 한 성분에 대한 엔트로피 부호화 그룹을 형성하는 데 사용되는 종래의 분류 방법을 도시하고 있다.
도 9a 내지 9d를 아우르는 도 9는 본 발명의 실시예에 따른 변환 모드용 엔트로피 부호화 그룹을 생성하는 데 적용될 수 있는 3개의 분류 방법을 도시한다.
도 10a 내지 10c를 아우르는 도 10은 본 발명의 실시예에 따른 4:2:2 영상 정보에 대한 변환 모드의 크로마 성분용 엔트로피 부호화 그룹을 생성하는 데 적용될 수 있는 2개의 분류 방법을 도시한 것이다.
도 11은 본 발명의 실시예에 따른 변환 모드용 엔트로피 부호기에서 수행되는 엔트로피 부호화 분류 방법을 도시한 흐름도이다.
도 12는 본 발명의 다른 실시예에 따른 변환 모드용 엔트로피 부호기에서 수행되는 엔트로피 부호화 분류 방법을 도시한 흐름도이다.
도 13은 본 발명의 다른 실시예에 따른 변환 모드용 엔트로피 부호기에서 수행되는 엔트로피 부호화 분류 방법을 도시한 흐름도이다.
도 14는 본 발명의 실시예에 따른 표시 스트림 복호기에 구현된 복호화 방법을 도시한 흐름도이다.
본 발명은 실질적으로 적어도 하나의 도면을 참고하여 다음에서 설명하는 엔트로피 부호화 그룹을 형성하는 장치 및 방법에 관한 것이며, 청구범위에 완전하게 기재한다.
본 발명의 효과, 변형 및 새로운 특징들에 대하여 실시예를 예로 들어 설명하며, 첨부한 도면과 다음의 설명으로 더욱 자세하게 본 발명을 이해할 수 있을 것이다.
본 발명의 실시예에 따른 표시 인터페이스 코덱(display interface codec)은 변환 부호화 모드(transform coding mode)를 사용하여 화소 값 블록을 부호화하고 두 개 이상의 분류 방법을 적용하여 엔트로피 부호화를 수행하여 화소 값 블록의 성분으로부터 생성된 양자 변환 계수 블록의 각 성분에 대하여 엔트로피 부호화 그룹(entropy coding group: ECG)을 형성한다. 본 발명의 실시예에 따르면, 표시 인터페이스 코덱은 다중 분류 방법(multiple grouping methods)을 수행하여 양자화된 변환 계수(quantized transform coefficient) 블록에 있는 각각의 성분에 대하여 엔트로피 부호화 그룹(entropy coding group: ECG)을 형성하는 표시 스트림 부호기를 포함한다. 본 발명의 실시예에 따르면, 이러한 분류 방법은 DC 계수만을 가지는 제1 엔트로피 부호화 그룹을 생성하는 제1 분류 방법, 그리고 DC 계수와 몇몇 AC 계수를 가지는 제1 엔트로피 부호화 그룹을 생성하는 제2 분류 방법을 포함한다. 표시 스트림 부호기 내의 엔트로피 부호기는 하나 이상의 인자를 적용하여 각 블록에 대해서 사용할 분류 방법을 선택함으로써 생성된 엔트로피 부호화 그룹 내의 샘플 값이 비슷한 범위의 샘플 값을 가지도록 한다. 이와 같이, 복호기 동작이 더욱 효과적이고 복호 처리율이 높아질 수 있다.
본 발명의 실시예에 따르면, 표시 인터페이스 코덱은 부호화 엔트로피 부호화 그룹 분류 방법을 실행하여 압축 비트스트림을 복호화하는 표시 스트림 복호기(display stream decoder)를 포함한다. 특히, 표시 스트림 복호기는 부호기에서 다중 분류 방법을 사용하여 생성된 압축 비트스트림을 수신한다. 복호기는 부호기에서 분류 방법을 선택하는 데 사용한 하나 이상의 인자를 적용하여 압축 비트스트림의 각 블록에 사용되는 분류 방법을 결정한다. 복호기는 이어 부호기에서 사용한 분류 방법에 기초하여 각 블록을 복호화한다.
본 발명의 실시예에 따르면, 표시 인터페이스 코덱은 VDC-M(VESA Display Compression Mobile)이라는 모바일 또는 스마트폰 표시 장치용 표시 인터페이스 압축 규격에 기반한 영상 신호 압축을 수행한다. VDC-M은 고정 속도 코덱(fixed rate codec)(부호기-복호기)이며, RGB 4:4:4 신호원에 대해서 화소당 6 비트까지 압축 속도를 늦추게 할 수 있다. 도 1은 본 발명의 실시예에 따라 표시 인터페이스 코덱을 수행하는 시스템 구성을 도시한 블록도이다. 도 1을 참고하면, 전자 장치(10)는 표시 링크(13)를 통하여 표시 구동 집적 회로(16)과 통신하는 기기 프로세서(application processor)(12)를 포함한다. 기기 프로세서(12)는 영상 정보(video contents)를 수신하며 표시 스트림 부호기(15), 예를 들면 VDC-M 표시 인터페이스 압축 규격에 기반한 표시 스트림 부호기를 구현하는 표시 엔진(14)을 포함한다. 부호화된 비트스트림은 부호기(15)로부터 표시 링크(13)를 거쳐 표시 구동 집적 회로(16)로 전송된다. 표시 링크(13)는 물리적인 링크 또는 무선 링크일 수 있다. 표시 구동 집적 회로(16)는 입력 비트스트림을 저장하고 수신한 비트스트림을 표시 스트림 복호기(18), 예를 들면 VDC-M 표시 인터페이스 압축 규격에 기반한 표시 스트림 복호기에 제공하는 프레임 버퍼(17)을 포함한다.
본 발명의 실시예에 따르면, 표시 스트림 부호기(15) 및 표시 스트림 복호기(18) 모두 반도체 집적 회로 등의 하드웨어 성분으로 구현될 수 있다. 본 발명의 실시예에 따르면, 표시 스트림 부호기(15) 및 표시 스트림 복호기(18)는 응용은 ASIC(application specific integrated circuits)으로 구현될 수 있다. 본 발명의 다른 실시예에 따르면, 표시 스트림 복호기(18)는 하드웨어로 구현되고 표시 스트림 부호기(15)는 호스트 시스템의 기기 프로세서(12) 내의 소프트웨어 또는 펌웨어로 구현될 수 있다.
도 2는 본 발명의 실시예에 따른 표시 스트림 부호기의 동작을 나타내는 블록도이다. VDC-M 표시 인터페이스 압축 규격은 블록 크기가 8x2 화소인 블록 기준 코덱(block based codec)이다. 따라서, 표시 스트림 부호기(15)는 8x2 화소, 예를 들면, 8 열 및 2 행 블록의 영상 데이터에 작용한다. 도 2를 참고하면, 표시 스트림 부호기(15)는 8x2 화소의 현재 블록(20)에 대한 화소값을 수신한다. 각 화소 블록은 하나 이상의 색성분에 대한 화소값을 포함한다. 예를 들면, 각 화소 블록은 3 개의 색성분에 대한 화소값을 포함하는 것이 일반적이다. 부호기(15)는 편평도 감지를 수행하고 속도 제어 상태 갱신(21)을 수행한다. 부호기(15)는 이어 현재 화소 블록(20)에 대한 화소값에 대하여 모든 세트의 부호화 모드를 병렬로 테스트한다(22). 본 실시예에서는, 부호화 모드(23-27)가 적용된다. 각각의 부호화 모드에 대해서, 부호기(15)는 그 모드가 요구하는 모든 신택스 비트(syntax bits)의 총합인 모드 속도(R) 및 왜곡(distortion)(D)를 결정한다. 부호기(15)는 각 부호화 모드에 대해서 RD 코스트(cost)를 결정한다. 부호기(15)는 속도 제어 제한(rate control constraints)에 걸려 RD 코스트가 가장 작은 부호화 모드를 선택한다(28). 부호기(15)는 이어 엔트로피 부호기(30)을 사용하여 선택된 부호화 모드를 부호화한다. 엔트로피 부호기(30)는 표시 링크(13) 위에 전송될 수 있는 압축 비트스트림을 생성한다. 표시 스트림 부호기(15)는 이어 다음 화소 블록으로 이동한다. 동작 과정에서, 영상 정보의 한 프레임 내에 있는 각 화소 블록에 대해서 서로 다른 부호화 모드가 선택될 수 있다.
본 명세서에서, "성분(component)" 또는 "색 성분(color components)"은 영상 신호를 표현하는 데 사용되는 색 성분을 나타내며, RGB 또는 YCbCr 또는 YUV일 수 있다.
표시 스트림 부호기(15)의 각 부호화 모드는 특정 유형의 영상 정보에 특화된 특성을 가질 수 있다. 본 실시예에서는, 표시 스트림 부호기(15)가 다음의 부호화 모드를 수행한다.
(1) 변환(transform) 모드(23) - 변환 모드는 입력 영상원에서 자연적 내용물(natural contents)을 잡아 내는 데 유용하다. 변환 모드의 예로는 이산 코사인 변환(discrete cosine transform)이 있다.
(2) 블록 예측(block prediction: BP) 모드(24) - 블록 예측 모드는 입력 영상원에서 그래픽 및 텍스트 정보를 잡아 내는 데 유용하다.
(3) 중간점 예측(midpoint prediction: MPP) 모드(25) - 중간점 예측 모드는 입력 영상원에서 비상관(uncorrelated) 노이즈 정보를 잡아 내는 데 유용하다.
(4) 예비(fallback) 모드(26, 27) - 알맞은 다른 모드가 없을 때에 고정 속도 압축을 보장하기 위하여 하나 이상의 예비 모드를 둔다. 본 실시예에서는, 중간점 예측 예비(midpoint prediction fallback: MPPF) 모드(26) 및 블록 예측 생략(block prediction skip: BP-Skip) 모드(27)를 구비한다.
변환 모드 (transform mode)
표시 스트림 부호기의 변환 부호화 모드에 대하여 상세하게 설명한다. 도 3은 본 발명의 실시예에 따른 표시 스트림 부호기에서의 변환 모드 동작을 나타내는 블록도이다. 변환 모드(23)는 현재 화소 값 블록에 내적 예측(intra prediction)을 적용하여 화소 값 예측 블록(predicted block)을 생성한다(32). 특히, 변환 부호화 모드에서, 부호기(15)는 현재 블록에 대하여 한 세트의 내적 예측기(내적 예측기)을 시험하여 어떤 내적 예측기가 가장 낮은 RD 코스트를 생성하는지를 결정한다. 내적 예측기 세트에서 가장 적합한 하나의 내적 예측기를 선택한다. 선택한 내적 예측기에 기초하여, 변환 모드의 부호기(15)는 현재 블록의 화소 값 및 선택된 내적 예측기로 생성된 예측 블록의 화소 값의 차이인 잔여 블록(residue block)을 생성한다(34). 부호기(15)는 이어 잔여 블록의 화소 값에 이산 코사인 변환(DCT)을 적용하여 변환 계수 블록(block of transform coefficients)을 생성한다(36). 변환 계수 블록을 양자화하여 양자 변환 계수 블록(양자 변환 계수 블록)을 생성한다(38). 변환 모드가 부호기에 의하여 선택된 부호화 모드이면, 엔트로피 부호기(30)가 양자 변환 계수를 부호화하여 표시 링크(13)에 전송한다.
도 4는 본 발명의 실시예에 따른 변환 부호화 모드에 사용할 수 있는 8개의 내적 예측기로 이루어진 세트를 나타낸다. 도 4를 참고하면, 내적 예측을 수행하기 위한 변환 부호화 모드에 적용될 수 있는 8개의 내적 예측기로 이루어진 세트는 DC, 수직(Vertical), 수직 좌측(Vertical Left), 수직 우측(Vertical Right), 대각 좌측(Diagonal Left), 대각 우측(Diagonal Right), 수평 좌측(Horizontal Left) 및 수평 우측(Horizontal Right)을 포함한다. 본 실시예에서, H.264 영상 부호기에 사용된 것과 비슷한 내적 예측기를 변경하여 사용한다. 특히, 변경 시에는 바로 옆 블록의 예를 사용하지 않는데 이는 복잡함과 지연/대기를 줄이기 위해서이다.
각 화소 블록에 대해서, 각각의 내적 예측기는 도 4에서 화소(A-4 ~ A11)로 도시한 전행(previous line)의 화소 값을 이용하여 예측 화소 (값) 블록을 생성한다. 현재 블록이 슬라이스 또는 프레임에서 첫 행이면, 현재 블록은 사용 가능한 인접 블록이 없다. 이 경우에는, DC 예측기를 사용한다. 즉, 원 데이터의 동적 범위의 절반과 동일한 DC 값을 현재 블록의 예측 값으로서 사용한다. 예를 들면, 채널 당 8 비트(8 bpc) 영상 원에 대해서는 DC 값 128이 사용될 것이다. 첫 행에 있지 않은 블록에 대해서는, 수직 또는 수직 좌측 등의 다른 내적 예측기가 사용될 수 있는데, 여기에서는 전행의 화소 값을 현재 블록의 화소 값 예측에 사용한다.
엔트로피 부호기(Entropy Coder)
도 2를 다시 참고하면, 선택된 부호화 모드에서, 표시 스트림 부호기(15)는 엔트로피 부호기(30)를 사용하여 표본(sample)을 부호화한다. 엔트로피 부호기(30)의 동작에 대하여 설명한다. 도 5는 본 발명의 실시예에 따른 엔트로피 부호기의 동작을 나타내는 흐름도이다. 엔트로피 부호기(40)는 블록의 각 색 성분 상의 표본을 별개의 무리로 나눔으로써 복호기에서 높은 수율이 나오도록 한다. 도 5를 참고하면, 엔트로피 부호기(40)는 선택된 부호화 모드가 생성한 색 성분 당 16 데이터 값의 현재 블록을 수신한다. 본 실시예에 따르면, 각 색 성분에 대한 현재 블록의 데이터 값은 표본이라고도 하며, 엔트로피 부호기는 각 색 성분당 16 표본의 블록을 수신할 수 있다. 한 색 성분과 연관된 각각의 데이터 값 블록에 대하여, 엔트로피 부호기(40)는 하나 이상의 표본을 엔트로피 부호화 그룹(엔트로피 부호화 그룹: ECG)으로 묶는다(42). 특히, 각 각 색 성분에 대한 현재 블록에 있는 표본들은 소정 수의 엔트로피 부호화 그룹에 분포한다. 예를 들면, 4:4:4 영상 정보에 대하여, 하나의 색 성분에 대하여 16 표본 블록은 4 개의 4 개의 엔트로피 부호화 그룹에 분포할 수 있다. 엔트로피 부호기(40)는 이어 각 그룹의 표본 값을 소정의 비트 기반 표현(비트 기반 표현)으로 변환한다(44). 예를 들면, 엔트로피 부호기(40)는 데이터 값을 이보수 표현(이보수 표현)으로 변환할 수 있다. 이와는 달리, 엔트로피 부호기(40)는 데이터 값을 사인-크기 표현(사인-크기 표현)으로 변환할 수 있다. 엔트로피 부호기(40)는 이어 블록의 각 그룹에 대하여 머리값(prefix value)를 결정한다(46). 각 그룹에 대하여 이 머리값 및 이로부터 결정된 꼬리값(suffix)와 함께, 엔트로피 부호기(40)는 엔트로피 부호화 그룹을 전송될 압축 비트 스트림으로 묶는다(package)(48). 이러한 방식으로, 영상 정보의 각 색 성분에 대한 부호화 데이터가 엔트로피 부호화 그룹의 세트로서 압축 비트스트림으로 전송될 것이다.
엔트로피 부호기(40)가 부호화하는 데이터 값은 선택된 부호화 모드의 기능/함수이다. 한 실시예에 따르면, 변환 부호화 모드(23)가 선택되면, 엔트로피 부호기는 양자 변환 계수를 부호화한다. 즉, 데이터 값은 양자 변환 계수이다. 다른 실시예에 따르면, 블록 예측 모드(24)가 선택되면, 엔트로피 부호기(40)는 양자 예측 잔여(quantized prediction residuals)를 부호화한다.
앞의 설명에서 영상 정보는 4:4:4 영상 정보인 것으로 가정하였다. 이 경우에는, 각각의 색 성분(보기: RGB)에 대하여 블록 당 16 표본이 있다. 다른 실시예에 따르면, 영상 정보는 4:2:2 영상 정보일 수 있다. 4:2:2 영상 정보에 대해서는, 루마(luma) 성분이 16 표본으로 이루어진 블록을 포함하고, 2 개의 크로마(chroma) 성분이 8개의 표본 또는 4x2 블록 사이즈만을 포함한다. 또다른 실시예에 따르면, 영상 정보는 4:2:0 영상 정보일 수 있다. 4:2:0 영상 정보에 대해서는, 루마 성분은 16 표본으로 이루어진 블록을 포함하고, 2 개의 크로마(chroma) 성분이 4개의 표본 또는 2x2 블록 사이즈만을 포함한다.
엔트로피 부호기(40) 데이터 값의 현재 블록에 있는 각 색 성분에 대한 16 표본을 수신하고 표본들을 엔트로피 부호화 그룹으로 나눈다. 각 엔트로피 부호화 그룹 내의 표본 값은 비트 기반 표현(비트 기반 표현)으로 부호화된다. 본 실시예에서, 엔트로피 부호화 그룹은 공통 머리값 엔트로피 부호화(common prefix entropy code: CPEC)을 사용하여 비트 기반 표현으로 변환된다. 도 6은, 도 6a 내지 6d를 포함하며, 본 발명의 실시예에 따른 엔트로피 부호화 그룹 구조 및 공통 머리값 엔트로피 부호화 출력(CPEC)을 도시한다. 도 6a를 참고하면, 엔트로피 부호기(40)는 표본을 엔트로피 부호화 그룹으로 나누는데, 각 엔트로피 부호화 그룹은 가변 길이(variable-length) 머리값 및 하나 이상의 고정 길이(fixed-length) 꼬리값을 포함한다. 도 6(a)에 도시한 예에서, 엔트로피 부호화 그룹은 4개의 표본과 관련된 4 개의 꼬리값을 포함한다.
각 엔트로피 부호화 그룹에 대하여, CPEC를 적용하여 표본 값을 비트 기반 표현으로 변환한다. 특히, 그룹 크기가 N이거나 N개의 표본을 가지는 하나의 엔트로피 부호화 그룹은 하나의 가변 길이 머리값을 포함하며, 머리값 뒤에 N 개의 고정 길이 꼬리값이 뒤따른다. CPEC를 사용하는 경우, 머리값은 유너리 코드(unary code)와 같은 가변 길이 코드로 부호화되고, 각각의 꼬리값을 부호화하는 데 사용되는 비트 수를 나타낸다. 그룹 내에서의 실제 표본 값은 꼬리값으로 표현되며, 그룹 내의 각 표본에 대해서 하나의 꼬리값이 있다. 그룹 내의 N개의 꼬리값은 동일한 비트 수, 즉 고정 길이 코드에 할당된다. 예를 들면, 표본은 이보수(two's complement) 또는 사인-크기(sign-magnitude) 표현으로 표현될 수 있다. 특히, CPEC를 사용하는 엔트로피 부호화 그룹 내의 각 꼬리값은 주어진 비트 기반 표현으로 부호화된 하나의 표본 값에 해당한다.
도 6b는 표본 값이 {1, -2, -1, 0}인 4 개의 표본이 있는 엔트로피 부호화 그룹에 대한 CPEC의 예를 도시한다. 이 실시예에 따르면, 이보수 표현을 사용하여 엔트로피 부호화 그룹에 대한 비트를 생성한다. 이 그룹을 신뢰성 있게 재건하는 데 필요한 비트 수는 2이다. 특히, 이보수 표현에서, [-2(n-1), 2(n-1) - 1] 범위의 데이터를 나타내는 데에는 n 비트가 필요하다. 도 6b에 도시한 예에서는, 머리값은 값 2를 나타낸다. 표본 값이 {1, -2, -1, 0}인 그룹에 대해서, CPEC 동작에 따라 출력된 비트는 머리값이 110 (unary code of 2) 및 4 개의 꼬리값이며, 각 표본은 2 비트를 사용하여 부호화되는데, 예를 들면 도 6b에 도시한 것처럼 "01 10 11 00"으로 부호화된다. 도 6b에 도시한 예에서 CPEC 동작의 출력은 하나의 예일 뿐이며, CPEC 동작의 실제 출력은 실제로 구현한 결과에 달라질 것이다.
이와 같이, 엔트로피 부호기(40)는 한 블록의 각 성분의 표본을 나누어 엔트로피 부호화 그룹 세트를 생성하며, 이는 압축 비트스트림으로 전송된다. 엔트로피 복호기에서, 현재 그룹의 가변 길이 머리값이 파싱(parsing)되며, 현재 그룹의 나머지 꼬리값 비트 수는 알려져 있다. 따라서, 도 6c에 도시한 것처럼 복호기가 이전 그룹의 꼬리값을 복호화하는 동안, 엔트로피 복호기는 뛰어 넘어 다음 그룹의 머리값에 대한 파싱을 시작할 수 있다. 가변 길이 코드의 제한된 수(8x2 크기의 블록에서 하나의 색 성분에 대하여 최대 4임)로 인하여 복호기는 높은 수율을 얻을 수 있다.
도 6b에 도시한 예는 이보수 표현을 사용한다. 그러나 CPEC 동작에서 사인-크기 표현과 같은 다른 표현을 사용하여 각 엔트로피 부호화 그룹의 비트를 생성할 수도 있다. 사인-크기 표현을 사용한 CPEC 출력은 도 6d에 도시되어 있다. 도 6d를 참고하면, 사인-크기 표현을 사용하는 경우, 각 표본에 대해서 n 비트가 필요하며, 그룹 내의 모든 표본의 절대값(즉, 크기)은 [0, 2n - 1]의 데이터 범위 내에 있다. 사인-크기 표현에서, 사인 비트는 0 아닌 값만을 나타낸다. 표본 값이 {1, -2, -1, 0}인 입력 그룹에 대해서, 사인-크기 표현에서의 CPEC 동작 출력은 머리값 110 (unary code of 2)일 수 있으며 머리값 뒤에는 꼬리값이 뒤따르고 마지막에는 사인 비트가 따라간다. 꼬리값은 2 비트를 사용하여 각 표본에 대한 절대값을, 예를 들면 01 10 01 00로 부호화하며, 사인 비트는 1 0 0 일 수 있는데, 양수는 1로 음수는 0으로 나타낸다. 여기에서 입력 그룹의 마지막 표본 값 0에 대해서는 사인 값이 표현되지 않는다는 점을 주목해야 한다.
그룹 내의 표본이 모두 0 값을 가지면, 그룹 전체에 대하여 1 비트만 표현하며, 본 실시예에서는 이를 그룹 생략(group skip)이라 한다. 그룹 생략은 사인-크기 및 이보수 표현을 사용하는 CPEC에 대하여 적용할 수 있다.
엔트로피 부호기(40) 표본 그룹을 표본 블록의 각 성분에 대한 엔트로피 부호화 그룹으로 결정한다. ECG의 크기, 즉, ECG에 포함된 표본의 수는 부호화 모드, 색상 성분 및 크로마 샘플링 방식(chroma sampling format)에 따라 달라질 수 있다. 엔트로피 부호화 그룹 내의 표본 분포 또한 부호화 모드에 따라 달라진다.
도 7a 및 도 7b를 아우르는 도 7은 변환 모드에 의하여 부호화되는 표본 값 블록 내의 한 성분에 대한 엔트로피 부호화 그룹을 형성하는 데 사용되는 종래의 분류 방법을 도시하고 있다. 도 7a를 참고하면, 변환 부호화 모드의 경우, 한 성분에 대한 각 표본 값 블록은 8x2 or 16 양자 변환 계수(S0 ~ S15)를 포함한다. 엔트로피 부호기는 16 개의 표본을 into 4 개의 엔트로피 부호화 그룹(ECG0 ~ ECG3)으로 분포시키며, 각 그룹은 도 7b에 도시한 것처럼 CPEC 구조를 이용하여 부호화된다. 특히, 변환 모드에 대해서는, 불균일 분류 방법(non-uniform 분류 방법)이 사용되며 각 엔트로피 부호화 그룹의 표본 크기 또는 표본 수는 동일하지 않다. 불균일 표본 분포를 변환 모드에 사용하여 변환 도메인(domain)에서 비슷한 주파수를 가진 표본들이 모이도록 한다. 도 7b를 사용하면, 변환 모드에서 표본에 대한 종래의 분류 방법은 크기가 1, 3, 5 및 7인 엔트로피 부호화 그룹을 형성한다. DC 값(S0)은 별개의 그룹(ECG0)으로 취급한다. 그룹(ECG1)은 3개의 표본(S1, S2, S8)을 포함한다. 그룹(ECG2)은 5개의 표본(S3, S4, S9, S10, S11)을 포함한다. 그룹(ECG3)은 7개의 표본 (S5, S6, S7, S12, S13, S14, S15)을 포함한다. 특히, 각 그룹에 할당되는 표본은 8x2 블록 내에서 지그재그(zig-zag) 형태로 선택할 수 있다.
4:4:4 영상 정보의 경우에는, 각 색 성분(보기: RGB)이 동일한 수의 표본, 즉 블록 당 16 개의 표본을 포함한다. 따라서, 도 7에 도시한 분류 방법은 모든 색 성분에 사용될 수 있다. 4:2:2 영상 정보의 경우, 루마(luma) 성분은 16 개의 표본으로 이루어진 블록을 포함하고 이에 따라 도 7에 도시한 분류 방법이 사용될 수 있다. 그러나 크로마(chroma) 성분은 8 개의 표본 또는 4x2 블록 사이즈만을 포함한다. 그 경우에는, 다른 분류 방법이 적용될 수 있다. 도 8a 및 도 8b를 아우르는 도 8은 변환 모드에 의하여 부호화되는 8 개의 표본 값으로 이루어진 하나의 블록 내의 한 성분에 대한 엔트로피 부호화 그룹을 형성하는 데 사용되는 종래의 분류 방법을 도시하고 있다. 도 8a를 참고하면, 4:2:2 영상 정보에 대하여, 크로마 성분은 4x2 또는 8 표본 블록 사이즈로 표현된다. 그 경우, 종래의 분류 방법은 도 8b에 도시한 것처럼 1 개 및 7 개의 표본을 각각 가지는 2 개의 엔트로피 부호화 그룹(ECG0, ECG1)을 형성할 수 있다.
설명을 완벽하게 하기 위하여, 블록 예측 모드의 경우에는, 균일 분류 방법이 사용되며, 각 엔트로피 부호화 그룹은 동일한 수의 양자 잔여 표본을 포함한다. 예를 들면, 이 분류 방법은 성분 당 8x2 표본 값 블록에 대하여 그룹 당 4 개의 표본을 둔다. 한 실시예에 따르면, 제1 그룹(ECG0)은 표본 {S0, S1, S8, S9}을 포함할 수 있고, 제2 그룹(ECG1)은 표본 {S2, S3, S10, S11}을 포함할 수 있다.
도 7을 참고하면, 종래의 엔트로피 부호기는 변환 모드에서 생성되고 CPEC를 사용하여 부호화되는 표본에 대하여 동일한 분류 방법을 적용한다. 종래의 분류 방법은 한 그룹 내의 모든 표본이 비슷한 범위여서 모든 꼬리값 길이가 동일할 때 효과적이다. 그러나 종래의 분류 방법은 한 그룹 내의 표본 값이 넓은 범위에 퍼져 있을 경우에는 비효율적이다. 예를 들면, 한 그룹 내의 한 표본 값이 나머지 표본 값보다 매우 크면 큰 비트 수가 필요할 것이다.
아래의 예는 CPEC 구조를 사용하여 부호화되는 2개의 표본 그룹을 보여준다. 첫 번째 예에서는, 그룹 내의 표본 값이 동일한 범위에 있다. 두 번째 예에서는, 한 표본 값이 다른 표본 값과 다른 범위에 있다.
시나리오 1 시나리오 2
표본값: {1, -2, -1, 0}꼬리값 당 비트: 2
머리값 길이: 3
꼬리값 길이: 4x2 = 8
총 길이: 11
표본값: {1, -15, -1, 0}
꼬리값 당 비트: 5
머리값 길이: 6
꼬리값 길이: 4x5 = 20
총 길이: 26
앞의 예에서 설명한 것처럼, 표본 값이 동일한 범위 내에 있는 경우 (시나리오 1), 그 그룹을 표현하는 데 사용되는 그룹 길이는 11 비트이다. 그러나 표본 값이 동일한 범위 내에 있지 않은 경우(Scenario 2), 그 그룹을 표현하는 데 필요하는 그룹 길이는 26 비트이다. 그룹 길이가 길면 엔트로피 부호기가 비효율적이 된다.
종래의 엔트로피 부호기에서는, 변환 모드에서도 동일한 분류 방법을 사용하여, 슬라이스 또는 프레임 내에 블록의 위치와 관계 없이, 또한 변환 모드에 사용되는 내적 예측 모드와 관계 없이 엔트로피 부호화 그룹을 형성한다. 동일한 분류 방법을 사용하여 엔트로피 부호화 그룹을 형성하는 것은 슬라이스의 제1행(first line of slice: FLS)에 있거나 FLS에 없는(NFLS) 블록에 비효율적이다.
본 실시예에 따르면, 영상 정보는 영상 프레임으로 표현되며, 하나의 프레임은 전체 동영상을 이루는 수많은 정지 영상 중 하나이다. 또한, 본 실시예에 따르면, 슬라이스는 한 프레임 내에서 공간적으로 구분되는 영역으로서 동일한 프레임의 다른 영역과 별개로 부호화될 수 있다. 본 실시예에 따르면, 하나의 화소 또는 하나의 화소 블록을 가끔씩 "슬라이스의 제1행(first line of the slice)"에 있다고 기재한다. 여기에서, "슬라이스의 제1행"은 하나의 영상 프레임 내에 있는 하나의 슬라이스의 첫 번째 행에 있는 블록을 뜻하거나 하나의 영상 프레임의 첫 번째 행에 있는 블록을 뜻할 수 있다.
하나의 영상 프레임에서, 프레임의 제1행 또는 슬라이스의 제1행(FLS)에 있는 블록은 전행의 영상 데이터를 가지지 않는다. 즉, 슬라이스의 제1행에 있는 블록에 대해서는, 인접 화소 값이 없거나 제한되어 있다. 이 경우에는, 변환 모드의 내적 예측 동작에 대해서, DC 내적 예측기가 유일한 선택지이다. 내적 예측기에 사용되는 DC 값은 보통 동적 범위의 절반, 예를 들면 8 비트 영상에 대해서 DC 값 128 이다. DC 예측 값은 현재 블록의 실제 DC 값을 엄밀하게 반영하지 않는다. DC 내적 예측기를 사용하면 높은 DC 계수 값이 생성된다. 따라서, 분류 과정에서 DC를 별개의 그룹으로 다루는 것이 좋다.
이와는 달리, 프레임 또는 슬라이스의 제1행에 있지 않은 블록(NFLS)에 대해서는, 인접 화소 값을 사용할 수 있다. 따라서, 그 블록의 실제 DC 값을 인접 화소로부터 올바르게 예측할 수 있다. 이 경우에는, 계수가 0 이거나 0에 가깝다고 예상할 수 있다. 이 경우에는, 계수를 별개의 그룹으로 다루는 것이 비효율적이다. DC 계수를 몇몇 AC 계수와 함께 모으는 것이 실제로 더욱 효과적이다.
본 발명의 실시예에 따르면, 표시 인터페이스 코덱(display interface codec)은 변환 부호화 모드를 사용하고 다중 분류 방법을 적용한 엔트로피 부호화를 실행하여 영상 신호 압축을 수행함으로써 엔트로피 부호화 그룹을 형성한다. 더욱 상세하게는, 표시 스트림 부호기는 변환 모드용 다중 분류 방법을 실행하는 엔트로피 부호기를 병합한다. 하나 이상의 인자에 기초하여 한 그룹에 대해서 한 특정한 분류 방법을 선택한다. 표시 인터페이스 코덱은 코덱의 난이도를 높이지 않고 복호기에서의 수율을 동일하게 유지하면서 압축 성능을 개선한다.
앞서 설명한 바와 같이, 종래 기술은 변환 모드에 대해서 고정 분류 방식(fixed grouping scheme)을 사용하여 모든 블록에 대한 엔트로피 부호화 그룹을 생성한다. 즉, 모든 블록에 대한 엔트로피 부호화 그룹은 동일한 분류 방법을 사용하여 생성된다. 이와는 달리, 본 실시예에 따른 표시 스트림 부호기는 변환 모드에 대해서 다중 분류 방법을 제시하고 하나 이상의 인자에 기초하여 하나의 블록에 대해서 특정한 분류 방법을 선택한다.
본 발명의 실시예에 따르면, 각 블록에 대해서 분류 방법을 선택하는 기초가 되는 하나 이상의 인자는 다음과 같다.
(1) 슬라이스 또는 영상 프레임 내의 블록 위치,
(2) 변환 모드 처리 과정에서 선택한 내적 예측 모드, 또는
(3) 입력 영상원의 색 성분.
한 실시예에 따르면, 표시 스트림 부호기는 M 개의 분류 방법을 실행하여 한 블록에 있는 한 성분의 표본을 변환 모드용 엔트로피 부호화 그룹으로 묶는다. 도 9a 내지 도 9d를 아우르는 도 9는 본 발명의 실시예에 따른 변환 모드용 엔트로피 부호화 그룹을 생성하는 데 적용될 수 있는 3개의 분류 방법을 도시한다. 도 9를 참고하면, 변환 모드 과정으로부터, 각 성분에 대하여 16 개의 양자 변환 계수로 이루어진 하나의 블록이 생성되며, 이는 도 9a에 도시한 바와 같이 표본 값 S0 내지 S15로 표현되어 있다. 표시 스트림 부호기는 다양한 분류 방법을 실행하여 16 개의 표본을 4 개의 엔트로피 부호화 그룹으로 묶는다. 각 분류 방법은 각 엔트로피 부호화 그룹의 크기에 따라 달라질 수 있으나 모든 분류 방법은 동일한 수의 엔트로피 부호화 그룹, 즉, 4 개의 엔트로피 부호화 그룹을 생성한다.
본 실시예에서, 표시 스트림 부호기는 제1 분류 방법을 실행하여 DC 계수만을 가지는 제1 엔트로피 부호화 그룹(ECG0)을 생성한다(S0) (도 9b 참고). 즉, 제1 엔트로피 부호화 그룹(ECG0)은 크기가 1이고 표본(S0)만을 포함한다. 다른 엔트로피 부호화 그룹(ECG1, ECG2, ECG3)은 각각 크기가 3, 5, 7이다. 도 9b에 도시한 바와 같이 그룹(ECG1, ECG2, ECG3)에 할당된 표본은 8x2 블록 내에서 지그재그 모양으로 선택될 수 있다.
도 9c를 참고하면, 표시 스트림 부호기는 제2 분류 방법을 실행하여 DC 계수 및 다중 AC 계수를 가지는 제1 엔트로피 부호화 그룹(ECG0)을 생성한다. 본 실시예에서, 제1 엔트로피 부호화 그룹(ECG0)은 크기가 3이고 표본(S0, S1, S2)를 포함한다. 다른 엔트로피 부호화 그룹(ECG1, ECG2, ECG3)은 크기가 각각 3, 4, 6이다. 엔트로피 부호화 그룹(ECG1, ECG2, ECG3)에 할당된 표본은 도 9c에 도시한 바와 같이 8x2 블록 내에서 지그재그 모양으로 선택될 수 있다.
마지막으로 도 9d를 참고한 본 발명의 실시예에 따르면, 표시 스트림 부호기는 제3 분류 방법을 수행하여 DC 계수 및 단일 AC 계수를 가지는 제1 엔트로피 부호화 그룹(ECG0)을 생성한다. 본 실시예에서, 제1 엔트로피 부호화 그룹(ECG0)은 크기가 2이고 표본(S0, S1)을 포함한다. 다른 엔트로피 부호화 그룹(ECG1, ECG2, ECG3)은 크기가 각각 4, 4, 6이다. 엔트로피 부호화 그룹(ECG1, ECG2, ECG3)에 할당된 표본은 도 9d에 도시한 바와 같이 8x2 블록 내에서 지그재그 모양으로 선택될 수 있다.
표시 스트림 부호기 내의 엔트로피 부호기는 하나 이상의 인자를 적용하여 각 블록에 사용될 분류 방법을 선택함으로써 하나의 ECG 그룹 내에 있는, 이와 같이 생성된 표본 값이 비슷한 범위 내에 있도록 한다. 도 9에 도시한 3 개의 분류 방법은 단지 예시일 뿐이며 이에 한정되는 것은 아니다. 본 발명의 다른 실시예에 따르면, 2 이상의 분류 방법을 실행할 수 있으며, 각 엔트로피 부호화 그룹은 동일하거나 서로 다른 수의 표본을 가질 수 있고, 그룹 내에서의 표본의 분포는 다를 수 있다. 모든 분류 방법은 동일한 수의 그룹, 예를 들면 4 개의 그룹을 생성할 수 있나, 4 개 그룹에서의 표본의 분포는 서로 다를 수 있다.
앞에서 설명한 도 9는 4:4:4 영상 정보의 분류 방법을 도시한 것으로서 한 블록에 있는 3 개의 성분 모두가 16 개의 표본을 포함한다. 4:2:2 영상 정보의 경우, 크로마 성분은 8 개의 표본만을 포함하고 루마 성분은 16 개의 표본을 포함한다. 도 10a 내지 도 10c를 아우르는 도 10은 본 발명의 실시예에 따른 4:2:2 영상 정보에 대한 변환 모드의 크로마 성분용 엔트로피 부호화 그룹을 생성하는 데 적용될 수 있는 2개의 분류 방법을 도시한 것이다. 도 10a를 참고하면, 변환 모드 과정으로부터, 8 개의 양자 변환 계수로 이루어진 블록이 크로마 성분에 대한 표본 값(S0 ~ S7)으로 제공된다. 표시 스트림 부호기는 제1 분류 방법을 수행하여 DC 계수만을 가지는 제1 엔트로피 부호화 그룹(ECG0)을 생성한다 (도 10b 참고). 본 실시예에서, 제1 엔트로피 부호화 그룹(ECG0)은 크기가 1이고 표본(S0)만을 포함한다. 다른 엔트로피 부호화 그룹(ECG1)은 크기가 7이다.
도 10c를 참고하면, 표시 스트림 부호기는 제2 분류 방법을 실행하여 DC 계수 및 다중 AC 계수를 가지는 제1 엔트로피 부호화 그룹(ECG0)을 생성한다. 본 실시예에서, 제1 엔트로피 부호화 그룹(ECG0)은 크기가 3이고 표본(S0, S1, S2)을 포함한다. 다른 엔트로피 부호화 그룹(ECG1)은 크기가 5이다. 표시 스트림 부호기 내의 엔트로피 부호기는 하나 이상의 인자를 적용하여 각 블록에 사용될 분류 방법을 선택함으로써 하나의 ECG 그룹 내에 있는, 이와 같이 생성된 표본 값이 비슷한 범위 내에 있도록 한다.
도 11은 본 발명의 실시예에 따른 변환 모드용 엔트로피 부호기에서 수행되는 엔트로피 부호화 분류 방법을 도시한 흐름도이다. 본 발명의 실시예에 따르면, 엔트로피 부호화 분류 방법은 도 2의 표시 스트림 부호기에 있는 엔트로피 부호기(30)에서 수행될 수 있다. 변환 부호화 모드에서는, 화소 값 블록의 각 성분에 대해서 양자 변환 계수 블록이 생성된다. 도 11을 참고하면, 엔트로피 부호화 분류 방법(1100)은 화소 값 현재 블록의 각 성분에 대한 변환 부호화 모드 과정에서 생성된 S 개의 양자 변환 계수로 이루어진 한 블록을 수신한다(1102). 이 방법(1100)은 하나 이상의 분류 인자를 사용하여 표본을 평가한다(1104). 예를 들면, 방법(1100)은 슬라이스 또는 영상 프레임 내에서 현재 블록의 위치를 결정할 수 있다. 이와는 달리, 방법(1100)은 변환 모드 과정에서 선택한 내측 예측 모드를 결정할 수 있다. 마지막으로, 방법(1100)은 처리할 표본의 색 성분을 결정할 수 있다.
분류 인자의 평가에 기초하여, 방법(1100)은 DC 계수만을 가지는 제1 엔트로피 부호화 그룹을 포함하는 제1 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성할 수 있다(1106). 즉, 제1 엔트로피 부호화 그룹은 크기가 1이고 DC 계수와 관련된 블록의 제1 표본 값만을 포함한다. 한 실시예에 따르면, 제1 분류 방법은 도 9b에 도시한 분류 방법이다.
이와는 달리, 분류 인자의 평가에 기초하여, 방법(1100)은 DC 계수 및 하나 이상의 AC 계수를 가지는 제1 엔트로피 부호화 그룹을 포함하는 제2 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성할 수 있다(1108). 즉, 제1 엔트로피 부호화 그룹은 크기가 1보다 크고 DC 계수와 관련된 블록의 제1 표본 값과 AC 계수와 관련된 하나 이상의 다른 표본 값을 포함한다. 한 실시예에 따르면, 제2 분류 방법은 도 9c에 도시한 분류 방법이다.
선택된 분류 방법을 사용하여, 방법(1100)은 그 블록 내에 있는 S 개의 표본을 G 개의 엔트로피 부호화 그룹에 배분한다. 두 분류 방법은 모두 동일한 수, 즉, G 개의 엔트로피 부호화 그룹을 생성한다. 분류 방법은 G 개의 엔트로피 부호화 그룹 각각으로 표본을 서로 다르게 배분한다.
이렇게 형성된 엔트로피 부호화 그룹으로, 방법(1100)은 각 엔트로피 부호화 그룹의 표본 값을 CPEC 를 사용하여 현재 블록의 현재 성분에 대한 비트 기반 표현으로 변환한다(1110). CPEC를 사용하면, 각 엔트로피 부호화 그룹의 표본 값은 사인-크기 표현 또는 이보수 표현 등 선택된 비트 기반 표현을 사용하여 표현된다.
이와 같이 형성된 G 개의 엔트로피 부호화 그룹으로 이루어진 세트로, 방법(1100)은 엔트로피 부호화 그룹 세트를 출력으로 제공하고(1112), 방법(1100)은 다음 표본 값 블록을 선택한다(1114). 이 방법은 1102에서 반복되어, 새로운 화소 값 블록의 한 성분과 관련된 다음 양자 변환 계수 블록을 수신한다. 한 블록의 모든 색 성분이 동일한 분류 방법을 사용할 것이라는 점을 주목하는 것이 좋다. 즉, 한 블록의 모든 색 성분에 대하여 그 블록의 표본 값에 동일한 분류 방법이 적용될 것이다.
한 실시예에 따르면, 이 방법에서는 16 개의 표본으로 이루어진 하나의 블록을 수신하여 4 개의 그룹으로 나눈다. 제1 분류 방법은 크기가 1인 제1 엔트로피 부호화 그룹을 포함한다. 즉, 제1 엔트로피 부호화 그룹은 DC 계수만을 가지는 하나의 표본을 가진다. 제2 분류 방법은 크기가 1보다 큰 제1 엔트로피 부호화 그룹을 포함한다. 즉, 제1 엔트로피 부호화 그룹은 DC 계수 및 적어도 하나의 AC 계수를 가지는 둘 이상의 표본을 포함한다.
본 발명의 실시예에 따르면, 엔트로피 부호화 분류 방법은 영상 프레임 또는 영상 슬라이스 내의 현재 블록 위치를 이용하여, 사용할 분류 방법을 결정한다. 도 12는 본 발명의 다른 실시예에 따른 변환 모드용 엔트로피 부호기에서 수행되는 엔트로피 부호화 분류 방법을 도시한 흐름도이다. 본 발명의 실시예에 따르면, 엔트로피 부호화 분류 방법은 도 2의 표시 스트림 부호기에 있는 엔트로피 부호기(30)에서 수행될 수 있다. 변환 부호화 모드에서는, 각 화소 블록의 각 성분에 대해서 양자 변환 계수 블록이 생성된다. 도 12를 참고하면, 엔트로피 부호화 분류 방법(1200)은 화소 값 현재 블록의 한 성분에 대한 변환 부호화 모드 과정에서 생성된 S 개의 양자 변환 계수로 이루어진 한 블록을 수신한다(1202). 이 방법(1200)은 이어 영상 프레임 또는 영상 슬라이스 내의 현재 블록 위치를 평가한다(1204). 특히, 이 방법(1200)은 현재 블록이 프레임의 제1행 또는 슬라이스의 제1행에 있는지 여부를 판단한다(1206).
현재 블록이 프레임 또는 슬라이스의 제1행이라는 결정에 응답하여, 방법(1200)은 DC 계수만을 가지는 제1 엔트로피 부호화 그룹을 포함하는 제1 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성한다(1208). 즉, 제1 엔트로피 부호화 그룹은 크기가 1이고 DC 계수와 관련된 블록의 제1 표본 값만을 포함한다. 한 실시예에 따르면, 제1 분류 방법은 도 9b에 도시한 분류 방법이다.
현재 블록이 프레임 또는 슬라이스의 제1행이 아니라는 결정에 응답하여, 방법(1200)은 DC 계수 및 하나 이상의 AC 계수를 가지는 제1 엔트로피 부호화 그룹을 포함하는 제2 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성할 수 있다(1210). 즉, 제1 엔트로피 부호화 그룹은 크기가 1보다 크고 DC 계수와 관련된 블록의 제1 표본 값과 AC 계수와 관련된 하나 이상의 다른 표본 값을 포함한다. 한 실시예에 따르면, 제2 분류 방법은 도 9c에 도시한 분류 방법이다.
선택된 분류 방법을 사용하여, 방법(1200)은 그 블록 내에 있는 S 개의 표본을 G 개의 엔트로피 부호화 그룹에 배분한다. 두 분류 방법은 모두 동일한 수, 즉, G 개의 엔트로피 부호화 그룹을 생성한다. 분류 방법은 G 개의 엔트로피 부호화 그룹 각각으로 표본을 서로 다르게 배분한다.
이렇게 형성된 엔트로피 부호화 그룹으로, 방법(1200)은 각 엔트로피 부호화 그룹의 표본 값을 CPEC 를 사용하여 현재 블록의 현재 성분에 대한 비트 기반 표현으로 변환한다(1212). CPEC를 사용하면, 각 엔트로피 부호화 그룹의 표본 값은 사인-크기 표현 또는 이보수 표현 등 선택된 비트 기반 표현을 사용하여 표현된다.
이와 같이 형성된 G 개의 엔트로피 부호화 그룹으로 이루어진 세트로, 방법(1200)은 엔트로피 부호화 그룹 세트를 출력으로 제공하고(1214), 방법(1200)은 다음 블록을 선택한다(1216). 이 방법은 1202에서 반복되어, 새로운 화소 값 블록의 한 성분과 관련된 다음 양자 변환 계수 블록을 수신한다. 한 블록의 모든 색 성분이 동일한 분류 방법을 사용할 것이라는 점을 주목하는 것이 좋다. 즉, 한 블록의 모든 색 성분에 대하여 그 블록의 표본 값에 동일한 분류 방법이 적용될 것이다.
한 실시예에 따르면, 이 방법(1200)에서는 16 개의 표본으로 이루어진 하나의 블록을 수신하여 4 개의 그룹으로 나눈다. 제1 분류 방법은 크기가 1인 제1 엔트로피 부호화 그룹을 포함한다. 즉, 제1 엔트로피 부호화 그룹은 DC 계수만을 가지는 하나의 표본을 가진다. 제2 분류 방법은 크기가 1보다 큰 제1 엔트로피 부호화 그룹을 포함한다. 즉, 제1 엔트로피 부호화 그룹은 DC 계수 및 적어도 하나의 AC 계수를 가지는 둘 이상의 표본을 포함한다.
이와 같이 만들어지는 엔트로피 부호화 분류 방법(1200)은 영상 프레임 또는 슬라이스의 제1행에 대해서 제1 분류 방법을 사용하고, 영상 프레임 및 슬라이스의 다른 모든 행에 대해서는 제2 분류 방법을 사용한다. 엔트로피 부호화 분류 방법(1200)은 프레임 또는 슬라이스 내의 블록 위치에 관계 없이 모든 블록에 대해서 동일한 분류 방법을 적용하는 종래의 분류 방법에 비하여 효율이 개선된다. 특히, 프레임 또는 슬라이스의 제1행에 있지 않은 블록에 대해서는, 그 블록의 실제 DC 값을 인접 표본으로부터 올바르게 추산할 수 있다. 그러므로 DC 계수가 다른 AC 변환 계수와 동일한 범위에 있을 확률이 크다. 따라서, DC 계수를 별개의 엔트로피 부호화 그룹으로 분리할 필요가 없다. 그 대신, DC 계수가 하나 이상의 AC 계수와 결합될 수 있다. 제1 엔트로피 부호화 그룹(ECG0)을 생성한 후에, 나머지 계수들은 (균일 또는 불균일) 그룹으로 쪼개져서 제1 분류 방법의 총 그룹 수와 과 제2 분류 방법의 총 그룹 수가 동일하게 되도록 한다.
본 발명의 실시예에 따르면, 두 가지 조건이 충족되는 경우, 즉, 현재 블록이 프레임 또는 슬라이스의 제1행이 아니고, 변환 모드 내적 예측기가 DC 예측기이면, 엔트로피 부호화 분류 방법은 제2 분류 방법(도 9c)을 적용한다. 이와는 달리, 제1 분류 방법(도 9b)이 사용될 수도 있다. 즉, 영상 프레임 또는 슬라이스의 제1행에 있는 블록이거나 변환 모드 내적 예측기가 DC 예측기가 아니면 제1 분류 방법이 사용될 수 있다.
도 13은 본 발명의 다른 실시예에 따른 변환 모드용 엔트로피 부호기에서 수행되는 엔트로피 부호화 분류 방법을 도시한 흐름도이다. 본 발명의 실시예에 따르면, 엔트로피 부호화 분류 방법은 도 2의 표시 스트림 부호기에 있는 엔트로피 부호기(30)에서 수행될 수 있다. 변환 부호화 모드에서는, 각 화소 블록의 각 성분에 대해서 양자 변환 계수 블록이 생성된다. 도 13을 참고하면, 엔트로피 부호화 분류 방법(1300)은 화소 값 현재 블록의 한 성분에 대한 변환 부호화 모드 과정에서 생성된 S 개의 양자 변환 계수로 이루어진 한 블록을 수신한다(1302). 이 방법(1300)은 이어 영상 프레임 또는 영상 슬라이스 내의 현재 블록 위치를 평가한다(1304). 특히, 이 방법(1300)은 현재 블록이 프레임의 제1행 또는 슬라이스의 제1행에 있는지 여부를 판단한다(1304).
현재 블록이 프레임 또는 슬라이스의 제1행이라는 결정에 응답하여, 방법(1300)은 DC 계수만을 가지는 제1 엔트로피 부호화 그룹을 포함하는 제1 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성한다(1308). 즉, 제1 엔트로피 부호화 그룹은 크기가 1이고 DC 계수와 관련된 블록의 제1 표본 값만을 포함한다. 한 실시예에 따르면, 제1 분류 방법은 도 9b에 도시한 분류 방법이다.
현재 블록이 프레임 또는 슬라이스의 제1행이 아니라는 결정에 응답하여, 방법(1300)은 현재 블록에 사용되는 변환 모드 내적 예측기가 DC 예측기인지 아닌지를 결정한다(1306). 현재 블록이 변환 모드에서 DC 예측기를 사용하지 않는다는 결정에 응답하여, 방법(1300)은 제1 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성한다(1308).
현재 블록에 변환 모드 DC 예측기를 사용한다는 결정에 응답하여, 방법(1300)은 DC 계수 및 하나 이상의 AC 계수를 가지는 제1 엔트로피 부호화 그룹을 포함하는 제2 분류 방법을 적용하여 엔트로피 부호화 그룹을 생성할 수 있다(1310). 즉, 제1 엔트로피 부호화 그룹은 크기가 1보다 크고 DC 계수와 관련된 블록의 제1 표본 값과 AC 계수와 관련된 하나 이상의 다른 표본 값을 포함한다. 한 실시예에 따르면, 제2 분류 방법은 도 9c에 도시한 분류 방법이다. 이러한 방식으로, 프레임 또는 슬라이스의 제1행에 있지 않고 DC 예측기를 사용하지 않는 블록에 대해서만 제2 분류 방법을 적용한다.
선택된 분류 방법을 사용하여, 방법(1300)은 그 블록 내에 있는 S 개의 표본을 G 개의 엔트로피 부호화 그룹에 배분한다. 두 분류 방법은 모두 동일한 수, 즉, G 개의 엔트로피 부호화 그룹을 생성한다. 분류 방법은 G 개의 엔트로피 부호화 그룹 각각으로 표본을 서로 다르게 배분한다.
이렇게 형성된 엔트로피 부호화 그룹으로, 방법(1300)은 각 엔트로피 부호화 그룹의 표본 값을 CPEC 를 사용하여 현재 블록의 현재 성분에 대한 비트 기반 표현으로 변환한다(1312). CPEC를 사용하면, 각 엔트로피 부호화 그룹의 표본 값은 선택된 비트 기반 표현을 사용하여 표현된다. 본 발명의 한 실시예에 따르면, 표본 값은 이보수 표현을 사용하여 표현될 수 있다. 본 발명의 다른 실시예에 따르면, 표본 값은 사인-크기 표현을 사용하여 표현될 수 있다.
이와 같이 형성된 G 개의 엔트로피 부호화 그룹으로 이루어진 세트로, 방법(1300)은 엔트로피 부호화 그룹 세트를 출력으로 제공하고(1314), 방법(1300)은 다음 블록을 선택한다(1316). 이 방법은 1302에서 반복되어, 새로운 화소 값 블록의 한 성분과 관련된 다음 양자 변환 계수 블록을 수신한다. 한 블록의 모든 색 성분이 동일한 분류 방법을 사용할 것이라는 점을 주목하는 것이 좋다. 즉, 한 블록의 모든 색 성분에 대하여 그 블록의 표본 값에 동일한 분류 방법이 적용될 것이다.
한 실시예에 따르면, 이 방법(1300)에서는 16 개의 표본으로 이루어진 하나의 블록을 수신하여 4 개의 그룹으로 나눈다. 제1 분류 방법은 크기가 1인 제1 엔트로피 부호화 그룹을 포함한다. 즉, 제1 엔트로피 부호화 그룹은 DC 계수만을 가지는 하나의 표본을 가진다. 제2 분류 방법은 크기가 1보다 큰 제1 엔트로피 부호화 그룹을 포함한다. 즉, 제1 엔트로피 부호화 그룹은 DC 계수 및 적어도 하나의 AC 계수를 가지는 둘 이상의 표본을 포함한다.
이와 같이 만들어지는 엔트로피 부호화 분류 방법(1300)은 영상 프레임 또는 슬라이스의 제1행과 사용되는 내적 예측기가 DC 예측기가 아닌 다른 행에 대해서 제1 분류 방법을 사용하고, 사용되는 내적 예측기가 DC 예측기인 영상 프레임 및 슬라이스의 다른 모든 행에 대해서는 제2 분류 방법을 사용한다. 엔트로피 부호화 분류 방법(1300)은 프레임 또는 슬라이스 내의 블록 위치에 관계 없이 또는 사용되는 내적 예측기에 관계 없이 모든 블록에 대해서 동일한 분류 방법을 적용하는 종래의 분류 방법에 비하여 효율이 개선된다. 특히, DC 예측기가 최적 내적 예측기로 선택되는 블록에 대해서는 DC 계수가 다른 AC 변환 계수와 동일한 범위에 있을 것이라고 추정할 수 있다. 따라서, 이 경우에는 DC 계수와 하나 이상의 AC 계수를 가지는 제1 엔트로피 부호화 그룹을 생성하는 것이 더욱 효율적이다.
이와는 달리, 프레임 또는 슬라이스의 제1행에 있는 모든 블록과 제1행이 아니지만 DC 예측기가 아닌 다른 내적 예측기가 사용되는 블록에 대해서는 DC 계수가 자신의 그룹과 분리되는 제1 ECG 방법을 사용한다.
앞에서 설명한 엔트로피 부호화 분류 방법은 예시일 뿐이다. 본 발명의 다른 실시예에 따르면, 다른 분류 방법을 사용하여 엔트로피 부호화 그룹을 생성할 수 있다. 앞에서 설명한 실시예에서는, 8x2 또는 4x2 화소의 블록 크기에 엔트로피 부호화 분류 방법을 적용한다. 본 발명의 다른 실시예에 따르면, 다중 분류 방법을 사용하는 변환 모드 기술을 모든 블록 사이즈에 대해 적용할 수 있다.
또한, 앞에서 설명한 실시예에서는, 변환 모드 CPEC 동작을 표본 값에 대한 이보수 표현을 사용하는 것으로 설명한다. 본 발명의 다른 실시예에 따르면, 변환 모드 CPEC 동작은 표본 값에 대한 이보수 표현 또는 사인-크기 표현, 또는 두 표현 모두를 사용할 수 있다.
도 1을 다시 참고하면, 표시 스트림 부호기(15)가 압축 비트스트림을 생성하고, 생성된 압축 비트스트림은 표시 링크(13)를 통하여 표시 구동 집적 회로(16)에 전송된다. 표시 구동 집적 회로(16)의 표시 스트림 복호기(18)는 압축 비트스트림을 복호화한다. 본 발명의 실시예에 따르면, 표시 스트림 복호기(18)는 수신한 압축 비트스트림을 복호화하기 위하여 부호기(15)가 사용한 엔트로피 부호화 그룹 분류 방법을 실행한다. 도 14는 본 발명의 실시예에 따른 표시 스트림 복호기에 구현된 복호화 방법을 도시한 흐름도이다. 도 14를 참고하면, 복호화 방법(1400)은 압축 비트스트림을 수신한다(1402). 복호화 방법(1400)은 앞서 설명한 엔트로피 부호화 분류 방법을 사용하여 부호화된 압축 비트스트림을 복호화하는데, 수신한 데이터는 변환 모드에서 다중 분류 방법으로 부호화된 블록을 포함한다.
복호화 방법(1400)은 압축 비트스트림으로부터 각 표본 값 블록을 처리한다(1404). 처리하고자 하는 현재 표본 값 블록에 대하여, 복호화 방법(1400)은 하나 이상의 분류 인자를 사용하여 현재 블록을 평가한다(1406). 특히, 복호화 방법(1400)은 부호기가 그 블록을 부호화하는 데 사용한 것과 동일한 분류 인자 세트를 사용한다. 예를 들면, 복호화 방법(1400)은 슬라이스 또는 영상 프레임 내에서 현재 블록의 위치를 결정할 수 있다. 이와는 달리, 복호화 방법(1400)은 변환 모드 과정에서 선택된 내적 예측 모드를 결정할 수 있다. 마지막으로, 복호화 방법(1400)은 입력 신호원의 색 성분을 결정할 수 있다.
분류 인자의 평가에 기초하여, 복호화 방법(1400)은 그 블록을 부호화하는 데 사용된 특정 분류 방법을 판단/결정한다(1408). 예를 들면, 복호화 방법(1400)은 그 블록이 앞서 설명한 제1 분류 방법 또는 제2 분류 방법을 사용하여 부호화되었는지를 판단한다. 예를 들면, 제1 분류 방법은 DC 계수만을 가지는 제1 엔트로피 부호화 그룹을 포함하고, 제2 분류 방법은 DC 계수 및 하나 이상의 AC 계수를 가지는 제1 엔트로피 부호화 그룹을 포함한다.
분류 방법을 결정한 후에, 복호화 방법(1400)은 결정된 분류 방법을 사용하여 현재 블록을 복호화한다(1410). 특히, 복호화 방법(1400)은 한 블록의 한 성분의 양자 변환 계수와 관련된 비트들을 파싱하고, 각 그룹에 대한 표본 값을 복호화한다. 그런 다음, 각 그룹의 표본 값을 사용하여 부호화가 수행한 분류 동작의 역동작을 적용함으로써 각 성분에 대한 8x2 블록 양자 변환 계수를 생성한다. 예를 들면, 도 9a 및 도 9c에 도시한 분류 동작의 역동작을 수행하여 표본 값 of the 엔트로피 부호화 그룹의 표본 값을 8x2 블록 순서로 되돌린다. 결국, 현재 블록의 한 성분에 대한 8x2 양자 변환 계수 블록을 구한다.
복호화 방법(1400)은 이어 8x2 양자 변환 계수를 처리하여 현재 블록의 화소값을 구한다(1412). 예를 들면, 복호화 방법(1400)은 도 3에 도시한 동작의 역동작을 적용하여 양자 변환 계수 블록으로부터 화소 값 블록을 구한다. 복호화 방법(1400)은 화소 데이터를 영상 데이터 출력으로서 제공하는데, 예를 들면 화소 데이터는 표시 장치에 공급되어 영상으로 재생될 수 있다. 복호화 방법(1400)은 이어 다음 블록을 선택하고(1414), 1404에서부터 선택된 블록의 처리를 반복한다.
한 실시예에 따르면, 복호화 방법은 프레임 또는 슬라이스 내의 블록 위치를 이용하여 현재 블록을 평가한다. 프레임 또는 슬라이스의 제1행에 있는 블록에 대해서는, 제1 분류 방법을 사용하여 그 블록을 부호화한 것으로 판단하고, 제1 분류 방법의 분류 방식을 사용하여 현재 블록을 복호화한다. 프레임 또는 슬라이스의 제1행에 있지 않은 블록에 대해서는, 제2 분류 방법을 사용하여 그 블록을 부호화한 것으로 판단하고 제2 분류 방법의 분류 방식을 사용하여 현재 블록을 복호화한다.
본 발명은 여러 가지 방식으로 구현될 수 있는데, 예를 들면, 방법, 장치, 시스템, 물질 조합(composition of matter), 컴퓨터로 읽을 수 있는 저장 매체에 구현된 컴퓨터 프로그램 및/또는 메모리와 연결되어 메모리로부터 제공 받거나 메모리에 저장된 인스트럭션을 실행하는 하드웨어 프로세서 또는 프로세서 장치 등으로 구현될 수 있다. 본 명세서에서 이러한 구현 또는 본 발명이 취할 수 있는 다른 형태는 기술(technique)이라고 할 수 있다. 일반적으로, 앞서 설명한 과정의 단계들의 순서는 발명의 요지 내에서 바뀔 수 있다. 별다른 언급이 있지 않은 한, 과제를 수행하는 것으로 설명한 프로세서나 메모리 등의 부품은 주어진 시간에 과제를 수행하도록 일시적으로 구성된 범용 부품일 수도 있고, 과제를 수행하도록 제작된 전용 부품일 수도 있다. 여기에서, '프로세서(processor)'라는 용어는 컴퓨터 프로그램 인스트럭션 등 데이터를 처리하도록 구성된 하나 이상의 장치, 회로 및/또는 처리 코어(processing core)일 수 있다.
본 발명의 하나 이상의 실시예에 대하여 본 발명의 원리를 보여주는 첨부 도면과 함께 상세하게 설명하였다. 본 발명을 이러한 실시예와 연결 지어 설명하였으나, 본 발명은 어떤 실시예에 한정되지 않는다. 본 발명의 범위는 청구범위에 의해서만 한정되며, 수많은 대체물, 변형물 및 등가물을 포괄한다. 본 발명의 완전한 이해를 위하여 많은 상세한 내용들을 설명하였다. 이러한 상세한 내용들은 실시예를 보여주기 위한 것이며, 이러한 상세한 내용의 일부 또는 전체가 없어도 청구범위에 따라 본 발명을 구현할 수 있다. 본 발명을 명확하게 하기 위하여, 본 발명이 속하는 기술 분야에서 알려진 내용들은 상세하게 설명하지 않았는데 이러한 설명들로 인하여 본 발명이 불필요하게 불명료해질 수 있기 때문이다.
이상의 설명은 본 발명의 특정한 실시예를 설명한 것이지 본 발명을 한정하고자 하는 것은 아니다. 본 발명의 범위 내에서 여러 가지 수정 및 변형이 가능하다. 본 발명은 다음의 청구범위에 의하여 정의된다.
10: 전자 장치
12: 기기 프로세서
13: 표시 링크
14: 표시 엔진
15: 표시 스트림 부호기
16: 표시 구동 집적 회로
17: 프레임 버퍼
18: 표시 스트림 복호기
30, 40: 엔트로피 부호기

Claims (10)

  1. 변환 모드에서 동작하는 엔트로피 부호기에서 엔트로피 부호화 그룹을 생성하는 방법으로서,
    상기 변환 모드로 생성된 제1 개수의 양자 변환 계수 블록을 현재 표본 값 블록으로 수신하는 단계,
    하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하는 단계,
    상기 현재 표본 값 블록의 평가에 기초하여 복수의 분류 방법 중 하나를 선택하는 단계,
    상기 선택된 분류 방법을 사용하여 제1 엔트로피 부호화 그룹을 포함하는 제2 개수의 엔트로피 부호화 그룹을 생성하는 단계,
    상기 각각의 엔트로피 부호화 그룹의 표본 값을 비트 기반 표현으로 변환하는 단계, 그리고
    상기 비트 기반 표현을 출력하는 단계
    를 포함하며,
    상기 복수의 분류 방법 중 하나를 선택하는 단계는,
    상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제1 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 DC 변환 계수를 포함하는 하나의 표본 값을 포함하는 제1 분류 방법을 선택하는 단계, 그리고
    상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제2 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함하는 제2 분류 방법을 선택하는 단계
    를 포함하는
    방법.
  2. 제1항에서,
    상기 비트 기반 표현으로 변환하는 단계는, 상기 각각의 엔트로피 부호화 그룹의 표본 값을 공통 머리값 엔트로피 코드(common prefix entropy code: CPEC)를 사용하여 이보수 비트 기반 표현 또는 사인-크기 비트 기반 표현으로 변환하는 단계를 포함하는 방법.
  3. 제1항에서,
    상기 현재 표본 값 블록을 평가하는 단계는, 상기 현재 표본 값 블록을 평가하여 영상 프레임 또는 영상 슬라이스 내의 상기 현재 표본 값 블록 위치를 판단하는 단계를 포함하고,
    상기 제1 분류 방법을 선택하는 단계는, 상기 현재 표본 값 블록이 상기 영상 프레임 또는 영상 슬라이스의 제1행에 위치한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 분류 방법을 선택하는 단계를 포함하고,
    상기 제2 분류 방법을 선택하는 단계는, 상기 현재 표본 값 블록이 상기 영상 프레임 또는 영상 슬라이스의 제1행이 아닌 곳에 위치한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제2 분류 방법을 선택하는 단계를 포함하는
    방법.
  4. 제1항에서,
    상기 제1 개수의 양자 변환 계수 블록은 주어지는 영상 정보 양식에 대하여 16 개의 양자 변환 계수를 포함하고, 상기 제2 개수의 엔트로피 부호화 그룹은 4 개의 엔트로피 부호화 그룹을 포함하는 방법.
  5. 제1항에서,
    상기 제2 분류 방법으로 생성되는 상기 두 개 이상의 표본 값 중 적어도 하나는 AC 변환 계수를 포함하는 방법.
  6. 제1항에서,
    상기 현재 표본 값 블록을 평가하는 단계는, 상기 현재 표본 값 블록을 평가하여 영상 프레임 또는 영상 슬라이스 내의 상기 현재 표본 값 블록 위치를 판단하고 상기 변환 모드 과정에 사용되는 내적 예측기를 판단하는 단계를 포함하고,
    상기 제1 분류 방법을 선택하는 단계는, 상기 현재 표본 값 블록이 상기 영상 프레임 또는 영상 슬라이스의 제1행에 위치하거나 상기 현재 표본 값 블록이 상기 변환 모드 과정에서 사용되는 상기 내적 예측기가 DC 예측기가 아니라고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 분류 방법을 선택하는 단계를 포함하며,
    상기 제2 분류 방법을 선택하는 단계는, 상기 현재 표본 값 블록이 상기 영상 프레임 또는 영상 슬라이스의 제1행에 위치하지 않고 상기 현재 표본 값 블록이 상기 변환 모드 과정에서 사용되는 상기 내적 예측기가 상기 DC 예측기라고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제2 분류 방법을 선택하는 단계를 포함하는
    방법.
  7. 제6항에서,
    상기 양자 변환 계수 블록은 복수의 성분을 가지는 화소값 블록으로부터 유도되고 상기 화소값 블록의 한 성분과 관련 있으며,
    상기 방법은 다른 성분들 각각과 관련된 상기 양자 변환 계수 블록에 대하여 상기 선택된 분류 방법을 사용하여 상기 제2 개수의 엔트로피 부호화 그룹을 생성하는 단계를 더 포함하는
    방법.
  8. 변환 모드에서 동작하는 엔트로피 부호기에서 엔트로피 부호화 그룹을 생성하는 시스템으로서,
    프로세서, 그리고
    상기 프로세서와 연결되어 있으며 인스트럭션을 상기 프로세서에 공급하는 메모리
    를 포함하며,
    상기 프로세서는 상기 인스트럭션에 따라
    상기 변환 모드로 생성된 제1 개수의 양자 변환 계수 블록을 현재 표본 값 블록으로 수신하고,
    하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하고,
    상기 현재 표본 값 블록의 평가에 기초하여 복수의 분류 방법 중 하나를 선택하고,
    상기 선택된 분류 방법을 사용하여 제1 엔트로피 부호화 그룹을 포함하는 제2 개수의 엔트로피 부호화 그룹을 생성하고,
    상기 각각의 엔트로피 부호화 그룹의 표본 값을 비트 기반 표현으로 변환하고,
    상기 비트 기반 표현을 출력하며,
    상기 복수의 분류 방법 중 하나의 선택은,
    상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제1 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 DC 변환 계수를 포함하는 하나의 표본 값을 포함하는 제1 분류 방법을 선택하고,
    상기 현재 표본 값 블록이 상기 하나 이상의 분류 인자에 기초한 제2 분류 조건을 충족한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 엔트로피 부호화 그룹이 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함하는 제2 분류 방법을 선택하는
    시스템.
  9. 제8항에서,
    상기 프로세서는 상기 인스트럭션에 따라,
    상기 현재 표본 값 블록을 평가하여 영상 프레임 또는 영상 슬라이스 내의 상기 현재 표본 값 블록 위치를 판단하고,
    상기 현재 표본 값 블록이 상기 영상 프레임 또는 영상 슬라이스의 제1행에 위치한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제1 분류 방법을 선택하고,
    상기 현재 표본 값 블록이 상기 영상 프레임 또는 영상 슬라이스의 제1행이 아닌 곳에 위치한다고 판단하면, 상기 현재 표본 값 블록에 대하여 상기 제2 분류 방법을 선택하는
    시스템.

  10. 변환 모드 동작에서 복수의 분류 방법을 사용하는 엔트로피 부호기가 부호화 방법을 사용하여 부호화한 압축 비트 스트림을 수신하는 단계,
    상기 수신한 압축 스트림 내의 현재 표본 값 블록을 처리하는 단계,
    하나 이상의 분류 인자를 사용하여 상기 현재 표본 값 블록을 평가하는 단계,

    상기 현재 표본 값 블록을 부호화하는 데 사용한 복수의 분류 방법 중 하나의 분류 방법을 판단하는 단계,
    상기 결정 결과에 기초하여, 상기 결정된 분류 방법을 사용하여 상기 현재 표본 값 블록을 복호화하는 단계, 그리고
    각 성분에 대한 양자 변환 계수를 출력으로 생성하는 단계
    를 포함하며,
    상기 복수의 분류 방법은 제1 엔트로피 부호화 그룹을 포함하는 복수의 엔트로피 부호화 그룹을 생성하고, 제1 분류 방법과 제2 분류 방법을 포함하며,
    상기 제1 분류 방법에서 상기 제1 엔트로피 부호화 그룹은 DC 변환 계수를 포함하는 하나의 표본 값을 포함하고,
    상기 제2 분류 방법에서 상기 제1 엔트로피 부호화 그룹은 두 개 이상의 표본 값을 포함하고 상기 두 개 이상의 표본 값 중 하나는 상기 DC 변환 계수를 포함하는
    압축 비트스트림 복호화 방법.
KR1020190053058A 2018-07-10 2019-05-07 변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템 KR20200006908A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862696266P 2018-07-10 2018-07-10
US62/696,266 2018-07-10
US16/121,444 2018-09-04
US16/121,444 US10602147B2 (en) 2018-07-10 2018-09-04 Efficient entropy coding group grouping methodology for transform mode

Publications (1)

Publication Number Publication Date
KR20200006908A true KR20200006908A (ko) 2020-01-21

Family

ID=69139819

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190053058A KR20200006908A (ko) 2018-07-10 2019-05-07 변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템

Country Status (3)

Country Link
US (1) US10602147B2 (ko)
KR (1) KR20200006908A (ko)
CN (1) CN110708547B (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10904532B2 (en) * 2019-05-20 2021-01-26 Samsung Display Co., Ltd. Differential prefix coding for high throughput entropy coder in display compression
US11082168B1 (en) * 2020-03-19 2021-08-03 Western Digital Technologies, Inc. Entropy driven endurance for normalized quality of service

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278735B1 (en) * 1998-03-19 2001-08-21 International Business Machines Corporation Real-time single pass variable bit rate control strategy and encoder
JP3711762B2 (ja) * 1998-09-16 2005-11-02 富士ゼロックス株式会社 画像符号化装置および方法
US7327786B2 (en) * 2003-06-02 2008-02-05 Lsi Logic Corporation Method for improving rate-distortion performance of a video compression system through parallel coefficient cancellation in the transform
US7570827B2 (en) 2004-07-14 2009-08-04 Slipstream Data Inc. Method, system and computer program product for optimization of data compression with cost function
BRPI0621892A2 (pt) * 2006-08-04 2011-12-20 Thomson Licensing métodos para codificação de uma sequência de imagens e dispositivo implementando o referido método
US8625681B2 (en) * 2008-07-09 2014-01-07 Intel Corporation Rate-distortion cost reducing video encoding techniques
US9232226B2 (en) * 2008-08-19 2016-01-05 Marvell World Trade Ltd. Systems and methods for perceptually lossless video compression
JP2011091575A (ja) * 2009-10-21 2011-05-06 Sony Corp 符号化装置および方法
US20120014433A1 (en) * 2010-07-15 2012-01-19 Qualcomm Incorporated Entropy coding of bins across bin groups using variable length codewords
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
US9350988B1 (en) * 2012-11-20 2016-05-24 Google Inc. Prediction mode-based block ordering in video coding
EP2952003B1 (en) * 2013-01-30 2019-07-17 Intel Corporation Content adaptive partitioning for prediction and coding for next generation video
US20170085886A1 (en) * 2015-09-18 2017-03-23 Qualcomm Incorporated Variable partition size for block prediction mode for display stream compression (dsc)
US10362310B2 (en) * 2015-10-21 2019-07-23 Qualcomm Incorporated Entropy coding techniques for display stream compression (DSC) of non-4:4:4 chroma sub-sampling

Also Published As

Publication number Publication date
US20200021809A1 (en) 2020-01-16
CN110708547A (zh) 2020-01-17
CN110708547B (zh) 2024-04-09
US10602147B2 (en) 2020-03-24

Similar Documents

Publication Publication Date Title
US7724827B2 (en) Multi-layer run level encoding and decoding
US8867614B2 (en) Image coding method and image decoding method
US7916959B2 (en) Image encoding method, image decoding method, image encoding apparatus, image decoding apparatus, image encoding program, and image decoding program
KR102120571B1 (ko) 넌-4:4:4 크로마 서브-샘플링의 디스플레이 스트림 압축 (dsc) 을 위한 엔트로피 코딩 기법들
US20040136457A1 (en) Method and system for supercompression of compressed digital video
KR20140027932A (ko) 변환을 이용하는 비디오 인코딩 및 디코딩
US8879838B2 (en) Image coding method and apparatus and image decoding method and apparatus, based on characteristics of regions of image
JP2005525006A (ja) 複数スキャンを使用する変換係数圧縮
TWI815936B (zh) 在顯示介面壓縮技術中形成熵編碼組的方法和系統
JP5221430B2 (ja) 画像圧縮装置および画像伸張装置
KR20220019285A (ko) 프레임들의 시퀀스를 인코딩하는 방법 및 인코더
KR20200006908A (ko) 변환 모드용 엔트로피 부호화 그룹의 분류 방법 및 시스템
KR102657172B1 (ko) 데이터 표본의 엔트로피 부호화 방법
US20230326087A1 (en) Systems and methods for scalable throughput entropy coders
US20060278725A1 (en) Image encoding and decoding method and apparatus, and computer-readable recording medium storing program for executing the method
KR20100013142A (ko) 프레임 메모리 압축방법

Legal Events

Date Code Title Description
A201 Request for examination