KR20180010260A - 화상 및 비디오 데이터의 팔레트 코딩 방법 - Google Patents

화상 및 비디오 데이터의 팔레트 코딩 방법 Download PDF

Info

Publication number
KR20180010260A
KR20180010260A KR1020177037101A KR20177037101A KR20180010260A KR 20180010260 A KR20180010260 A KR 20180010260A KR 1020177037101 A KR1020177037101 A KR 1020177037101A KR 20177037101 A KR20177037101 A KR 20177037101A KR 20180010260 A KR20180010260 A KR 20180010260A
Authority
KR
South Korea
Prior art keywords
palette
block
color
current block
index
Prior art date
Application number
KR1020177037101A
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 KR20180010260A publication Critical patent/KR20180010260A/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/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/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/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/423Methods 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 characterised by memory arrangements
    • 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
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

요구되는 코딩 프로세스를 감소시키기 위한 팔레트 코딩 방법이 개시된다. 하나의 방법에 따르면, 더 작은 블록은 큰 블록으로부터 유도된다. 큰 블록의 히스토그램은 큰 블록 내의 작은 블록의 히스토그램을 기초하여 유도된다. 다른 방법에 따르면, 하나 이상의 팔레트 테이블은 복수의 블록에 기초하여 유도된다. 하나의 팔레트 테이블은 복수의 블록의 각각에 사용된다. 또 다른 방법에 따르면, 인덱스 맵 전치는 인덱스 맵의 전치 플래그에 따라서 파싱 단계에서 수행된다. 따라서, 전치 플래그를 저장하는 버퍼가 절약될 수 있다. 또 다른 방법에 따르면, 팔레트 예측자 업데이트는 팔레트 버퍼에 저장된 팔레트 예측자의 내용을 셔플링할 필요가 없도록 인덱스 매핑 테이블을 사용하여 수행된다.

Description

화상 및 비디오 데이터의 팔레트 코딩 방법
관련 출원에 대한 상호 참조
본 발명은, 2015년 6월 3일자로 출원된 미국 가출원 제62/170,267호 및 2015년 9월 2일자로 출원된 미국 가출원 제62/213,254호에 대한 우선권을 주장한다. 미국 가출원은 그 전체가 참고로 본 명세서에 통합된다.
발명의 분야
본 발명은 팔레트 코딩 모드를 사용하는 비디오 코딩에 관한 것이다. 특히, 본 발명은 팔레트 코딩과 연관되는 요구된 처리를 감소시키는 기술에 관한 것이다.
고효율 비디오 코딩(High Efficiency Video Coding; HEVC)은 최근에 개발된 새로운 코딩 표준이다. 고효율 비디오 코딩(HEVC) 시스템에서, H.264/AVC의 고정 크기 매크로 블록은, 코딩 유닛(coding unit; CU)으로 명명된 가변 블록으로 대체된다. CU의 픽셀은 코딩 효율을 향상시키기 위해 동일한 코딩 파라미터를 공유한다. CU는 HEVC에서 코드 트리 단위(coded tree unt; CTU)로도 지칭되는, 가장 큰 CU(largest LCU)로 시작될 수도 있다. 코딩 단위의 개념 이외에도, 예측 단위(prediction unit; PU)의 개념이 또한 HEVC에 도입된다. CU 계층적 트리의 분할이 완료되면, 각 리프(leaf) CU는 예측 타입 및 PU 파티션에 따라 하나 이상의 예측 단위(PU)로 더 분할된다.
HEVC(High Efficiency Video Coding) 표준 개발과 함께, HEVC의 확장 개발도 시작되었다. HEVC 확장은 SCC(screen content coding)를 포함한다. 화면 내용의 특정 특성으로 인해, 코딩 도구가 개발되어 코딩 효율에 있어서의 큰 이득을 증명하였다. 이들 중에서, 컬러 인덱스 코딩(주요 컬러 기반 코딩으로도 알려짐) 기술은 팔레트에 인덱스들을 사용하여 픽셀의 블록(주요 컬러)을 나타내고, 공간적 중복을 이용하여 팔레트 및 인덱스를 인코딩한다. 가능한 컬러 조합의 총수는 크지만, 화상 영역의 컬러 수는 일반적으로 전형적인 스크린 내용에 대해 매우 제한된다. 따라서, 컬러 인덱스 코딩은 스크린 내용 재료에 매우 효과적이다. 관련된 키 컬러 인덱스 코딩 기술은 다음과 같이 간략하게 검토된다.
팔레트 코딩
HEVC 범위 확장(RExt)의 개발 중에, 팔레트 기반 코딩을 처리하기 위한 몇 가지 제안이 개시되어 있다. 예를 들어, 팔레트 예측 및 공유 기술은, JCTVC-N0247(Guo et al., "RCE3 : Results of Test 3.1 on Palette Mode for Screen Content Coding", Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 14th Meeting: Vienna, AT, 25 July ― 2 Aug. 2013 Document: JCTVC-N0247) 및 JCTVC-O0218(Guo et al., "Evaluation of Palette Mode Coding on HM -12.0+ RExt -4.1", Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 15th Meeting: Geneva, CH, 23 Oct. ― 1 Nov. 2013, Document: JCTVC-O0218)에 개시되어 있다. JCTVC-N0247 및 JCTVC-O0218에서는, 각 컬러 성분의 팔레트가 구성되어 송신된다. 팔레트는 왼쪽의 이웃 CU에서 예측(또는 공유)되어 비트레이트를 감소시킬 수 있다. 그 후, 주어진 블록 내의 모든 픽셀은 팔레트 인덱스를 사용하여 코딩된다. JCTVC-N0247에 따른 인코딩 프로세스의 예는 아래와 같이 도시된다.
1. 팔레트의 송신: 컬러 인덱스 테이블(팔레트 테이블로도 불려짐) 크기가 먼저 송신되고 이어서 팔레트 요소(즉, 컬러 값)가 송신된다.
2. 픽셀 값의 송신: CU의 픽셀은 래스터 스캔 순서로 인코딩된다. 하나 이상의 픽셀의 각 그룹에 대하여, “인덱스 모드 복사” 또는 “상위(above) 모드 복사”가 사용되는지 여부를 나타내기 위해 런 기반 모드에 대한 플래그가 먼저 송신된다.
2.1 “인덱스 모드 복사”: 인덱스 모드 복사에서, 먼저 팔레트 인덱스가 시그널링되고 이어서 실행(run) 값을 나타내는 “palette_run”(예: M)이 표시된다. 용어 palette_run은 또한 본 명세서에서 pixel_run으로 지칭될 수도 있다. 실행 값은 총 M개의 샘플이 모두 복사 인덱스 모드를 사용하여 코딩됨을 나타낸다. 비트 스트림에서 시그널링된 것과 동일한 팔레트 인덱스를 가지므로, 현재 위치 및 다음 M 위치에 대해 추가 정보를 송신할 필요가 없다. 또한, YUV 컬러 공간의 경우에 대하여 재구성된 픽셀 값이 (Y, U, V)=(paletteY[i], paletteU[i], paletteV[i])이라는 것을 의미하는, 3개의 컬러 성분 모두에 의해 팔레트 인덱스(예를 들어, i)가 또한 공유될 수도 있다.
2.2 “상위 모드 복사”: 상위 모드 복사에서, 다음 N 개의 위치(현재 위치를 포함함)에 대해, 팔레트 인덱스가 위의 행에 있어서 대응하는 팔레트 인덱스와 동일하다는 것을 나타내기 위해 값 “copy_run”(예를 들어, N)이 송신된다.
3. 잔여물의 송신: 단계 2에서 송신된 팔레트 인덱스는 픽셀 값으로 다시 변환되어 예측으로 사용된다. 잔여 정보는 HEVC 잔여 코딩을 사용하여 송신되고 재구성을 위한 예측에 추가된다.
본 명세서에서, “인덱스 모드 복사” 및 “상위 모드 복사” 양자는 모두 팔레트 인덱스 코딩을 위한 복사 모드로 지칭된다. 또한, 이하의 설명에서는 팔레트 모드가 팔레트 코딩 모드로 지칭된다.
JCTVC-N0247에 있어서, 각 성분의 팔레트가 구성되고 송신된다. 팔레트는 비트레이트를 감속시키기 위하여 팔레트의 왼쪽 이웃 CU로부터 예측(공유)될 수 있다. JCTVC-O0218에서, 상기 팔레트의 각 요소는, 트리플릿이며, 이는 3개의 컬러 성분의 특정 조합을 나타낸다. 또한, CU에 걸친 팔레트의 예측 코딩이 제거된다.
주요 컬러 기반(또는 팔레트) 코딩
JCTVC-O0218과 유사한 다른 팔레트 코딩 기술이 또한 개시되어 있다. 왼쪽 CU로부터 전체 팔레트 테이블을 예측하는 대신에, 팔레트의 개별 팔레트 컬러 항목은 위의 CU 또는 왼쪽 CU의 정확한 대응하는 팔레트 컬러 항목으로부터 예측된다.
]픽셀 팔레트 인덱스 값의 송신을 위해, 예측 코딩 방법은, JCTVC-O0182(Guo et al., "AHG8 : Major- colour -based screen content coding", Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 15th Meeting: Geneva, CH, 23 Oct. ― 1 Nov. 2013, Document: JCTVC-O0182)에 개시된 바와 같이 인덱스에 적용된다. 각 인덱스 라인을 코딩하기 위해 3 가지 유형의 라인 모드 즉, 수평 모드, 수직 모드 및 일반 모드가 사용된다. 수평 모드에서는, 동일한 라인의 모든 인덱스가 동일한 값을 갖는다. 상기 값이 상위 픽셀 라인의 제1 픽셀과 동일하면, 라인 모드 시그널링 비트만이 송신된다. 그렇지 않으면, 인덱스 값도 송신된다. 수직 모드에서는, 현재 인덱스 라인이 상위 인덱스 라인과 동일하다는 것을 나타낸다. 따라서, 라인 모드 시그널링 비트만이 송신된다. 일반 모드에서는, 라인의 인덱스는 개별적으로 예측된다. 각각의 인덱스 위치에 대하여, 좌측 또는 상위 이웃들이 예측자로서 사용되며, 예측 기호는 디코더에 송신된다.
또한, 픽셀은 JCTVC-O0182에 따라 주요 컬러 픽셀(팔레트 컬러를 가리키는 팔레트 인덱스를 가짐)과 이스케이프 픽셀로 분류된다. 주요 컬러 픽셀에 있어서, 픽셀 값은 디코더 측의 주요 컬러 인덱스(즉, 팔레트 인덱스) 및 팔레트 테이블에 따라 재구성된다. 이스케이프 픽셀에 있어서, 픽셀 값이 비트스트림에서 추가로 시그널링된다.
팔레트 테이블 시그널링
스크린 내용 코딩(SCC) 표준의 참조 소프트웨어 즉, SCM-2.0(Joshi et al., Screen content coding test model 2(SCM 2), Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 18th Meeting: Sapporo, JP, July 2014, Document No.: JCTVC-R1014)에서, 개선된 팔레트 방식은, JCTVC-R0348(Onno, et al., Suggested combined software and text for run-based palette mode, Joint Collaborative Team on Video Coding(JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 18th Meeting: Sapporo, JP, July 2014, Document No.: JCTVC-R0348)에 통함된다. 이전 팔레트-코딩된 CU의 팔레트 테이블은 현재 팔레트 테이블 코딩에 대한 예측자로서 사용된다. 팔레트 테이블 코딩에서, 이전의 코딩된 팔레트 테이블(팔레트 예측자)에서 재사용되는 어떤 팔레트 컬러를 선택하거나 또는 새로운 팔레트 컬러를 송신함으로써 현재 팔레트 테이블이 시그널링된다. 현재 팔레트의 크기는 예측된 팔레트의 크기(즉, numPredPreviousPalette) 더하기 송신된 팔레트의 크기(즉, num_signalled_palette_entries)로 설정된다. 예측된 팔레트는 이전에 재구성된 팔레트 코딩된 CU로부터 유도된 팔레트이다. 현재 CU를 팔레트 모드로 코딩할 때, 예측된 팔레트를 사용하여 예측되지 않은 팔레트 컬러는 비트스트림(즉, 시그널링된 항목)에 직접 송신된다.
팔레트 업데이팅의 예가 아래와 같이 도시된다. 이 예에서, 현재 CU는 팔레트 크기가 6과 동일한 팔레트 모드로 코딩된다. 6 가지 주요 컬러 중 3 가지 컬러는 팔레트 예측자(numPredPreviousPalette = 3)로부터 예측되고, 3 가지 컬러는 비트스트림을 통해 직접 송신된다. 송신된 3 가지 컬러는 아래에 도시된 예시적인 구문을 사용하여 시그널링될 수 있다.
num _ signalled _palette_ entries = 3
for(cIdx = 0; cIdx < 3; cIdx++)//상이한 성분에 대한 신호 컬러
for(i = 0; i < num_signalled_palette_entries; i++ )
palette_entries[ cIdx ][ numPredPreviousPalette + i ]
이 예에서는 팔레트 크기가 6이므로, 팔레트 컬러 테이블에서 주요 컬러 항목을 나타내는데 0 내지 5의 팔레트 인덱스가 사용된다. 3 개의 예측된 팔레트 컬러는 0 내지 2의 인덱스로 표시된다. 따라서, 인덱스(3 내지 5)에 대하여 3 개의 새로운 팔레트 항목이 송신된다.
SCM-2.0에서, 파면 병렬 처리(wavefront parallel processing; WPP)가 적용되지 않으면, 팔레트 예측자 테이블이 각 슬라이스의 시작 부분 또는 각 타일의 시작 부분에서 초기화(재설정)된다. WPP가 적용되면. 마지막으로 코딩된 팔레트 테이블은 각 슬라이스의 시작 부분 또는 각 타일의 시작 부분에서 초기화(재설정)될 뿐만 아니라 각 CTU 행의 시작 부분에서 초기화(재설정)된다.
팔레트 인덱스 맵 스캔 순서
SCM-3.0 팔레트 모드 코딩에서, 횡단 스캔은 도 1a 내지 도 1c에 도시된 바와 같이 인덱스 맵 코딩을 위해 사용된다. 도 1a는 8x8 블록에 대한 수평 횡단 스캔을 도시한다. 횡단 스캔에서, 짝수 행에 대한 스캔은 왼쪽에서 오른쪽으로 수행되며, 홀수 행에 대한 스캔은 오른쪽에서 왼쪽으로 수행된다. 횡단 스캔은 팔레트 모드의 모든 블록 크기에 적용된다. 도 1b는 8x8 블록에 대한 리버스 수평 횡단 스캔을 도시한다. 도 1c는 각각 8×8 블록에 대한 회전된(즉, 180°) 수평 횡단 스캔을 도시한다.
SCM-4.0의 팔레트 인덱스 맵 코딩
SCM-4.0(Joshi et al., Screen content coding test model 4(SCM 4), JCTVC -T1014, ITU-T SG16 WP3 및 ISO/IEC JTC1 /SC29/WG11, 20 th Meeting: Geneva, CH, Feb. 2015, Document: JCTVC-T1014)에 따른 팔레트 모드 코딩에 있어서, 팔레트 인덱스는 그룹화되어 전방(즉, palette_run_mode 및 palette_run 코딩 전)에 코딩되고, 이스케이프 픽셀은 말단에 코딩된다. palette_run_mode 및 palette_run은 팔레트 인덱스와 이스케이프 픽셀 간에 코딩된다.
팔레트 실행 구문의 경우, 연관된 기호(symbol)의 이진화는 MSB(Most Significant Bit) 인덱스와 이진 형식의 값의 개량(refinement) 비트로 분할된다. 값 0에 대한 MSB 인덱스는 -1에 할당된다. 결과적인 코드워드는 접두사 파트와 접미사 파트의 연결이다. 접두사 파트는, 최대 구문 값이 알려진 경우 단항(unary) 코드 또는 절단형(truncated) 단항 코드에서, msb _id_ plus1로 표시된, 기호 값에 1이 더해진 MSB 인덱스를 나타낸다. 부호없는 기호 x의 msb _id_ plus1는,
Figure pct00001
에 의해 주어진다.
접미사 빈(bin) 파트는 개량 비트를 나타내고, msb_id_plus1 > 1이면 존재한다. refinement_bits로 표시된, 개량 비트의 값은, msb_id_plus1와 동일한 문자열 길이(string length)를 가진 고정 길이 이진 코드로 또는 최대 구문 값이 알려진 경우에 절단형 이진 코드에 의해 이진화된다. 디코딩된 구문 값 x는, 아래와 같이 주어진다.
x =
Figure pct00002
비디오 인코더에 의해 수행되는 팔레트 코딩의 방법이 개시된다. 제1 방법에 따르면, 더 작은 블록은 더 큰 블록으로부터 유도된다. 큰 블록의 히스토그램은 작은 블록의 히스토그램을 합산함으로써 작은 블록의 히스토그램에 기초하여 유도된다. 히스토그램은 대응하는 팔레트 테이블을 유도하는데 사용된다. 따라서, 히스토그램을 유도하는데 필요한 계산을 감소시킬 수 있다. 프로세스는 더 작은 블록을 추가로 유도함으로써 반복될 수 있다.
종래의 접근법에서, 팔레트 테이블은 각 블록에 대해 유도된다. 필요한 계산을 감소시키기 위하여, 하나의 팔레트 테이블은 다른 방법에 따라서 공동으로 복수의 블록에 기초하여 유도된다. 이 팔레트 테이블은 복수의 블록의 각각에 의해 사용될 것이다. 또한, 복수의 팔레트 테이블은 블록 그룹에 대해 유도될 수 있고, 그 후, 팔레트 테이블은 블록 그룹의 각각에 대한 복수의 팔레트 테이블로부터 선택된다.
또 다른 방법에 따르면, 전치(transpose) 플래그 및 인덱스 맵 전치를 수행하기 위해 요구되는 연산을 저장하기 위한 추가 버퍼는, 전치 플래그가 인덱스 맵 전치를 나타내는 경우, 전치 스캔 순서에 따라서 팔레트 버퍼에 파싱된 팔레트 인덱스를 저장함으로써 절약된다. 프로세스는 수평 또는 수직 방향 스캔에 적용될 수 있다.
또 다른 방법에 따르면, 팔레트 예측기 업데이트와 연관된 팔레트 셔플링은, 팔레트 버퍼에 저장된 팔레트 예측기의 내용을 물리적으로 재배치해야 할 필요성을 피하기 위해 인덱스 매핑 테이블을 사용하여 수행된다. 인덱스 맵핑 테이블은 팔레트 인덱스를 팔레트 컬러에 대응하는 팔레트 버퍼의 물리적 어드레스와 관련시킨다. 인덱스 매핑 테이블은 인코더 측 또는 디코더 측에서 유지된다. 팔레트 버퍼는 FIFO(first in and first out) 레지스터에 기초하여 구현될 수 있다.
도 1a는 고효율 비디오 코딩(high efficiency video coding; HEVC)에 기초한 소프트웨어 테스트 모델에 따른 8x8 블록에 대한 수평 횡단 스캔을 도시하며, 여기서 짝수 행에 대한 스캔은 좌측에서 우측으로 행해지며, 홀수 행에 대한 스캔은 우측에서 좌측으로 행해진다.
도 1b는 도 1a의 수평 횡단 스캔에 대응하는 리버스된 수평 횡단 스캔을 도시한다.
도 1c는 도 1a의 수평 횡단의 스캔에 대응하는 회전된(즉, 180°) 수평 횡단 스캔을 도시한다.
도 2는 팔레트 예측자 업데이트 프로세스의 예를 도시하며, 여기서 버퍼에 저장된 팔레트 예측자의 내용은 재배열된다.
도 3은 4x4 블록의 경우에 대한 계수 버퍼 재사용의 예를 도시하며, 여기서 각각의 작은 정사각형은 하나의 픽셀을 나타내고, 라벨 “E”는 이탈 픽셀을 나타낸다.
도 4는 4x4 블록의 경우에 대한 계수 버퍼 재사용의 예를 도시하며, 여기서 이스케이프 값은 버퍼의 말단에 위치된다.
도 5는 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 인코더의 흐름도를 도시하며, 여기서 큰 블록의 히스토그램은 큰 블록 내의 작은 블록의 히스토그램에 기초하여 유도된다.
도 6은 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 인코더 또는 디코더의 흐름도를 도시하며, 여기서 하나 이상의 팔레트 테이블은 복수의 블록에 기초하여 함께 유도된다.
도 7은 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 디코더의 흐름도를 도시하며, 여기서 인덱스 맵 전치가 파싱 스테이지에서 수행된다.
도 8은 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 인코더 또는 디코더의 흐름도를 도시하며, 여기서 팔레트 예측자가 업데이트된다.
이하의 설명은 본 발명을 수행하는 최상으로 고려된 모드에 관한 것이다. 이 설명은 본 발명의 일반적인 원리를 예시하기 위하여 행해지며, 제한적인 의미로 해석되어서는 안된다. 본 발명의 범위는 첨부된 청구 범위를 참조함으로써 가장 잘 결정된다.
팔레트 히스토그램 공유
팔레트 모드의 경우, 각 코딩 단위(coding unit; CU)에 대한 팔레트 컬러가 먼저 생성된다. 팔레트 컬러를 유도하기 위하여, 코딩 단위의 컬러 분포가 먼저 분석되어 컬러 히스토그램에 저장된다. 주요 컬러는 팔레트 컬러로서 히스토그램으로부터 선택된다. 즉, 팔레트 테이블은 대응하는 코딩 단위의 히스토그램에 기초하여 유도될 수 있다. 팔레트 컬러 인덱스 매핑 및 엔트로피 코딩은 팔레트 테이블에 시그널링하기 위하여 수행된다. 각 코딩 단위에 대한 컬러 히스토그램의 계산은 팔레트 프로세스에서 매우 시간 소모적이다. 따라서, 컬러 히스토그램을 가속화하는 방법을 개발하는 것이 바람직하다.
컬러 히스토그램 계산을 가속화하는 방법이 개시되며, 여기서 작은 코딩 유닛의 컬러 히스토그램이 보다 큰 코딩 유닛의 컬러 히스토그램을 유도하는데 사용된다. 예를 들어, 하나의 32×32 블록은 하나의 32×32 코딩 유닛, 4 개의 16×16 코딩 유닛, 16 개의 8×8 코딩 유닛, 또는 16×16 및 8×8 코딩 유닛의 조합으로 나뉠 수 있다. 환언하면, 하나의 32 × 32 블록으로부터, 하나의 32×32 코딩 유닛, 4 개의 16×16 코딩 유닛, 16 개의 8×8 코딩 유닛, 또는 16×16 및 8×8 코딩 유닛의 조합이 유도될 수 있다. HEVC에 기초한 SCC(screen content coding)에 대한 소프트웨어 테스트 모델에서, 다양한 블록 파티션 중에서 최상의 코딩 모드를 선택하기 위해 RDO(rate-distortion optimization) 프로세스가 사용된다. 총 21 개의 컬러 히스토그램을 계산해야 하며, 이들 21 가지 컬러 히스토그램을 얻기 위하여 이 32x32 블록의 각 픽셀을 세 번 액세스해야 한다.
본 발명의 일 실시형태에 따르면, 16 개의 8×8 코딩 유닛에 대한 16 개의 컬러 히스토그램이 먼저 각각 유도된다. 이들 16 개의 컬러 히스토그램은 4 개의 16×16 코딩 유닛에 대한 4 가지 컬러 히스토그램을 유도하기 위해 재사용된다. 하나의 16×16 코딩 유닛에서 대응하는 4 개의 8×8 코딩 단위의 4 가지 컬러 히스토그램을 합하여 더 큰 컬러 히스토그램(즉, 16×16)를 유도할 수 있다. 이와 유사하게, 이 32×32 코딩 유닛의 컬러 히스토그램은, 32×32 코딩 유닛에서 대응하는 4 개의 16×16 코딩 유닛의 4 개의 컬러 히스토그램을 합산함으로써 유도될 수 있다. 따라서, 32×32 코딩 유닛 내의 각각의 픽셀은 오직 한번 액세스된다. 또한, 히스토그램에 대한 픽셀 컬러의 카운트를 누적하는 것은, 블록 크기가 가장 작은 블록에 대해서만 수행하면 된다. 따라서, 필요한 계산 및 메모리 액세스가 실질적으로 감소된다.
팔레트 테이블 공유
SCM-4.0에서는, 인코더가 각 CU의 픽셀을 분석하고 그에 따라 팔레트 테이블을 구성한다. 즉, 팔레트 테이블은 CU에 대해 개별적으로 유도된다. 위에서 언급한 바와 같이, 각 CU에 대한 팔레트 테이블의 유도는 전적으로 계산 집약적이다. 그러나, CU의 팔레트 테이블은 유사할 수도 있다. 따라서, 본 발명의 실시형태에 따르면, 단일 팔레트 테이블은 복수의 CU에 기초하여 유도된다. 그 후, 유도된 단일 팔레트 테이블은 복수의 CU 각각에 의해 사용된다. 또한 복수의 팔레트 테이블은 복수의 CU에 기초하여 유도될 수 있다. 각각의 팔레트 테이블이 대응하는 CU에 개별적으로 기초하여 유도되는 종래의 팔레트 테이블 유도와는 달리, 본 발명의 일 실시형태에 따른 적어도 하나의 팔레트 테이블은 복수의 CU에 기초하여 함께 유도된다. 하나의 팔레트 테이블은 복수의 CU 각각에 대해 복수의 팔레트 테이블로부터 선택될 수 있다. 또한, 이전 프레임과 연관된 이전 팔레트 테이블의 정보는 팔레트 유도의 복잡성을 감소시키기 위하여 사용될 수 있다. 예를 들어, 인코더는 이전 프레임과 연관된 하나 이상의 이전 팔레트 테이블로부터 현재 CU에 대한 팔레트 테이블을 선택할 수도 있다.
파싱 단계에서 인덱스 맵 전치를 수행
SCM-4.0에서는, 팔레트 인덱스 맵 전치가 재구성 단계에서 수행된다. 전치 플래그가 파싱된 후에 전치 플래그를 저장하기 위해서는 추가 버퍼가 필요하다. 또한 인덱스 맵을 전치시키기 위하여 추가 작업이 필요하다. 그러나, 파싱 단계에서 팔레트 인덱스는 샘플별로 디코딩된다. 본 발명의 일 실시형태에서, 인덱스 맵 전치는 파싱 단계에서 수행된다. 따라서, 파싱 단계에서, palette_transpose_flag가 1이면, 팔레트 인덱스는 전치된 순서에 따라 버퍼에 저장된다. 디폴트 스캔 순서가 수평 래스터/횡단 스캔인 경우, palette_transpose_flag가 1이면, 인덱스 맵이 수직 래스터/횡단 스캔 순서로 저장된다. 이 경우, 어드레스 생성기만 변경할 필요가 있다. 재구성된 인덱스 맵은 재구성 단계에서 전치될 필요가 없다.
SEI에 따른 수평 또는 수직 스캔을 결정
팔레트 코딩에서, 2 개의 샘플 스캔 순서(즉, 수평 횡단 스캔 및 수직 횡단 스캔)가 사용된다. SCM-4.0에서, 인코더는 2 개의 스캔을 테스트하고 RDO 프로세스에 의해 최상의 스캔을 선택한다. 본 발명의 실시형태는 양쪽 스캔을 시도하는 대신에 최상의 스캔 순서를 선택하기 위해 부가적인 정보를 사용한다. 예를 들어, 선택은 비디오 비트 스트림에서 시그널링된 SEI(supplemental enhancement information)에 기초할 수도 있다. 자이로-스코프 및 가속도계에 의한 측정 값, 전화 위치, 및 텍스트 언어와 같은 SEI 정보는, 스캔 선택을 돕는 데 사용될 수 있다. 예를 들어, 휴대 전화가 90도 회전하면, 세로 스캔을 적용할 수 있다.
팔레트 셔플링을 피하기 위하여 인덱스 매핑을 사용
SCM-4.0에서는, 다음 팔레트 예측자가 현재 팔레트 예측자와 현재 팔레트 테이블로부터 생성된다. 차례로, 이전 팔레트의 정보를 사용하여 현재 팔레트 예측자가 생성된다. 현재 CU가 팔레트 코딩된 후에 팔레트 버퍼에 저장된 팔레트 예측자를 업데이트할 필요가 있다. 팔레트 예측자 업데이트는 팔레트 예측자 업데이트 프로세스를 반영하기 위해 내용을 주변으로 이동시키는 것을 포함한다. 도 2는 팔레트 예측자 업데이트 프로세스의 예를 예시한다. 현재 팔레트 예측(210)은 컬러 인덱스 및 연관된 컬러를 포함한다. 또한, 예측자의 컬러가 현재 팔레트 테이블(230)에 의해 사용되는지 여부를 나타내기 위하여 팔레트 예측자와 연관된 재사용 플래그 필드(220)가 존재한다. 이 예에서, 예측자의 2 개의 컬러(즉, colour0 및 colour2)만이 현재 CU에 의해 사용된다. 현재 CU에는 Nnew 개의 새로운 컬러(240)가 있다. 팔레트 예측자를 업데이트하기 위해, 버퍼 내의 컬러는 재정렬되어 업데이트된 팔레트 예측자(250)를 생성할 필요가 있다. 이 동작은 복잡하다. 본 발명의 실시형태는 인덱스 맵핑 방법을 사용하여 버퍼 내의 컬러를 셔플링하는 것을 방지한다. 인코더/디코더는 팔레트 예측을 저장하기 위해 팔레트 인덱스와 물리적 버퍼(또는 팔레트 버퍼라고도 함)의 컬러(즉, 어드레스) 간의 매핑 테이블을 유지할 수 있다. 팔레트 버퍼는 FIFO(first in and first out) 레지스터에 기초하여 구현될 수 있다. 팔레트 예측자 셔플링을 수행하기 위하여, 인코더 또는 디코더는 팔레트 버퍼의 주변으로 컬러를 물리적으로 이동시키지 않고 버퍼의 팔레트 인덱스와 컬러 사이의 매핑 테이블을 수정하기만 하면 된다.
팔레트 모드에 대한 파싱 단계에서 팔레트 정보에 대한 잔여 버퍼의 재사용
HEVC 계수 파싱에서, TU의 디코딩된 계수는 계수 버퍼에 저장된다. SCC 코딩에서는, 팔레트 모드에 대한 잔류 코딩이 없다. 따라서, 계수 버퍼는, 팔레트 실행 유형, 팔레트 인덱스, 팔레트 실행, 및 이스케이프 값을 포함하는 팔레트 인덱스 맵 정보를 저장하는데 사용될 수 있다.
일 실시형태에서, 샘플의 파싱된 팔레트 인덱스는 파싱 단계에서 재구성된다. 계수 버퍼는 재구성된 팔레트 인덱스 및 이스케이프 값을 저장하는데 사용된다.
다른 실시형태에서, 각 샘플의 파싱된 팔레트 인덱스는 파싱 단계에서 재구성되고, 상이한 컬러 구성요소의 재구성 값은 또한 파싱 단계에서 팔레트 테이블 룩업에 의해 재구성된다. 따라서, 계수 버퍼는 재구성된 픽셀 값과 이스케이프 값을 저장하는데 사용되거나, 재구성된 픽셀 값, 이스케이프 값, 및 이스케이프 플래그를 저장하는데 사용된다. 이 방법에 따르면, 팔레트 테이블은 파싱 단계에만 저장될 필요가 있다. 재구성 단계에서, 팔레트 테이블은 저장되고 유지될 필요가 없다. 일 예에서, MSB에 대한 버퍼 영역은 이스케이프 플래그를 저장하는데 사용된다. 나머지 비트는 재구성된 픽셀 값 또는 이스케이프 값을 저장하는데 사용된다. 재구성 단계에서, MSB 버퍼 영역에 저장된 이스케이프 플래그는 이스케이프 값을 재구성하는데 사용될 수 있거나 또는 재구성된 픽셀 값 또는 계수 버퍼의 나머지 비트 영역에 저장된 이스케이프 값은 이스케이프 값을 재구성하는데 직접 사용될 수 있다.
또 다른 실시형태에서, 파싱된 팔레트 인덱스의 샘플은 파싱 단계에서 재구성되고, 다른 컬러 성분의 재구성 값은 또한 파싱 단계에서 팔레트 테이블 룩업을 사용하여 재구성된다. 이스케이프 샘플의 픽셀 값도 파싱 단계의 이스케이프 값에 의해 재구성된다. 따라서, 계수 버퍼는 재구성된 픽셀 값을 저장하는데 사용된다. 이 방법에 따르면, 팔레트 테이블은 파싱 단계에만 저장될 필요가 있다. 재구성 단계에서, 팔레트 테이블은 저장되어 유지될 필요가 없다.
SCM-5.1[Joshi 등, 스크린 컨텐츠 코딩 테스트 모델 5(SCM 5), JCTVC-T1014, ITU-T SG16 WP3 및 ISO/IEC JTC1/SC29/WG11, 21st Meeting: Warsaw, PL, 19-26 2015년 6월, 문서: JCTVC-U1014]에서, 이스케이프 픽셀은 컬러 평면별로 파싱된다. 제1 컬러 성분의 이스케이프 값은 함께 파싱된다. 그 후, 제1 및 제3 컬러 성분의 이스케이프 값이 각각 파싱된다. 계수 버퍼는 팔레트 실행 유형, 팔레트 인덱스, 팔레트 실행, 및 이스케이프 값을 포함하는 팔레트 인덱스 맵 정보를 저장하는데 사용될 수 있다. 그러나, 파싱 단계에서 계수 버퍼가 하나만 있고 핑-퐁(ping-pong) 버퍼가 파이프라인 버퍼를 위해 사용되는 경우, 이스케이프 픽셀 위치를 저장하기 위해 CU_width * CU_height * 1-비트 버퍼가 필요할 수 있다. 도 3은 4x4 블록의 경우에 대한 계수 버퍼 재사용의 예를 도시하며, 여기서 각각의 작은 정사각형은 하나의 픽셀을 나타내고 라벨 “E”는 이스케이프 픽셀을 나타낸다. 각 이스케이프 픽셀에 대하여, 픽셀 값이 보내져야 한다. 32x32 블록의 경우, 32x32x1 비트 버퍼가 필요하게 된다. 이 위치 버퍼에 있어서, 제1 컬러 성분의 인덱스, 픽셀 값, 및 이스케이프 값이 다음 파이프라인 단계로 전달될 때, 제2 및 제3 컬러 성분의 이스케이프 값이 정확한 위치에 채워질 수 있다. 이 방법에서, 팔레트 인덱스는 제1 컬러 성분 버퍼에만 저장된다. 제1 컬러 성분에 있어서, MSB의 버퍼 영역이 이스케이프 플래그를 저장하는데 사용된다. 이 플래그를 사용하면, 제1 컬러 성분 버퍼에 저장된 팔레트 인덱스는 크로스-컬러 예측(cross-colour prediction; CCP) 단계/모듈 또는 적응형 컬러 변환(adaptive colour transform; ACT) 단계/모듈에서 제2 및 제3 컬러 성분 버퍼에 채워질 수 있다. 다른 실시형태에 따르면, 제2 및 제3 컬러 성분의 픽셀 값을 재구성할 때, 디코더는 팔레트 인덱스를 얻기 위해 데이터를 제1 컬러 성분 버퍼에 로딩할 수 있다.
다른 실시형태에 따르면, 도 4에 도시된 바와 같이, 제2 및 제3 컬러 성분의 이스케이프 값이 버퍼의 말단에 저장되며, 여기서, 버퍼(410)는 제1 컬러 성분을 저장하고 버퍼(420)는 제2 및 제3 컬러 성분을 저장한다. 제1 컬러 성분에 대한 파싱 단계 동안에, 이스케이프 픽셀의 위치가 알려진다. 그러므로, 이스케이프 픽셀은 버퍼(410)에서 "E"로 표시된 대응 위치에 저장될 수 있다. 제2 및 제3 컬러 성분에 대해, 이들은 버퍼의 말단에서 시작하여 버퍼(420)에 저장된다. 순서는 팔레트 스캔 순서를 따를 수 있다. 다른 실시형태에 따르면, CU_width * CU_height * 1 -비트 버퍼는 필요하지 않다. 팔레트 인덱스는 제1 컬러 성분 버퍼에만 저장된다. 제1 컬러 성분의 경우, MSB의 버퍼 영역이 이스케이프 플래그를 저장하는데 사용된다. 이 플래그를 사용하여, 제1 컬러 성분 버퍼에 저장된 팔레트 인덱스는 크로스 컬러 예측(cross-color prediction; CCP) 스테이지/모듈 또는 적응형 컬러 변환(adaptive color transform; ACT) 스테이지/모듈에서 제2 및 제3 컬러 성분 버퍼에 채워질 수 있다. 또한, 제2 및 제3 컬러 성분 버퍼의 말단에 저장된 이스케이프 값을 올바른 위치에 배치할 수 있다. 예를 들어, 제1 컬러 성분에서, 상위 오른쪽 픽셀이 이스케이프 픽셀인 경우(E0), 제2 및 제3 컬러 성분 버퍼의 EO 픽셀(제3 행의 마지막 위치)이 상위 오른쪽 픽셀에 로딩된다. 또 다른 실시형태에 따르면, 제2 및 제3 컬러 성분의 픽셀 값을 재구성할 때, 디코더는 팔레트 인덱스를 얻기 위해 데이터를 제1 컬러 성분 버퍼에 로딩할 수 있다.
또 다른 실시형태에서, 핑-퐁 파이프라인 버퍼가 사용되지 않으면, 엔트로피 디코더 스테이지 버퍼 내의 데이터가 판독되어 IT/IQ(역 변환/역 양자화) 스테이지 버퍼에 기록될 수 있다. 이 실시형태에서, 계수 버퍼에서 이스케이프 픽셀 위치를 유지하기 위해, MSB에 대한 버퍼 영역이 이스케이프 플래그를 저장하는데 사용된다. 제2 및 제3 컬러 성분 데이터를 파싱할 때, 이스케이프 플래그는 리셋되지 않는다. 나머지 비트만 변경될 수 있다. 이러한 방식으로, 디코더는 제2 및 제3 컬러 성분에서 이스케이프 픽셀 위치를 알 수 있다.
도 5는 본 발명의 실시형예에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 인코더의 흐름도를 도시한다. 제1 블록 크기를 갖는 화상의 제1 블록은 단계 510에서 수신되며, 상기 제1 블록으로부터 제2 블록 크기를 갖는 복수의 제2 블록이 유도되며, 제2 블록 크기는 제1 블록 크기보다 작다. 제2 컬러 히스토그램은 단계 520에서 복수의 제2 블록에 대해 각각 결정된다. 제1 컬러 히스토그램은 단계 530에서 복수의 제2 블록에 대해 각각 결정된다. 제1 컬러 히스토그램은, 단계 530에서 제1 블록 내의 모든 제2 블록에 대한 제2 컬러 히스토그램을 합산함으로써 제1 블록에 대하여 결정된다. 제1 블록에 대한 제1 컬러 팔레트 테이블은 단계 540에서 제1 컬러 히스토그램에 기초하여 유도된다.
도 6은 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 인코더 또는 디코더의 흐름도를 도시한다. 제1 블록 크기를 갖는 화상의 현재 블록은 단계 610에서 수신된다. 단계 620에서 하나 이상의 팔레트 테이블은 복수의 블록에 기초하여 함께 유도된다. 그 후, 팔레트 인코딩 또는 디코딩은 단계 630에서 상기 하나 이상의 팔레트 테이블을 사용하여 현재 블록에 적용된다.
도 7은 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 디코더의 흐름도이다. 단계 710에서, 화상의 현재 블록과 연관된 코딩된 데이터를 포함하는 비디오 비트스트림이 수신된다. 단계 720에서, 현재 블록의 전치 플래그가 결정된다. 단계 730에서, 현재 블록의 팔레트 인덱스는 현재 블록의 파싱된 팔레트 인덱스로 파싱된다. 현재 블록의 전치 플래그가 팔레트 전치를 나타낼 경우에, 단계 740에서, 리버스 스캔 순서에 따라 현재 블록의 파싱된 팔레트 인덱스가 버퍼에 저장된다. 팔레트 재구성은 단계 750에서 현재 블록의 파싱된 팔레트 인덱스를 전치시키지 않고 버퍼 내의 현재 블록의 파싱된 팔레트 인덱스를 사용하여 현재 블록에 적용된다.
도 8은 본 발명의 실시형태에 따른 팔레트 코딩 모드를 사용하는 예시적인 비디오 인코더 또는 디코더의 흐름도를 도시한다. 단계 810에서 화상 내의 현재 블록과 연관된 입력 데이터가 수신된다. 단계 820에서, 팔레트 버퍼에 저장된 현재 팔레트 예측자가 결정된다. 단계 8930에서, 현재 블록과 연관되는 현재 블록 테이블이 결정되고, 현재 팔레트 테이블은, 현재 팔레트 예측자에 속하는 0 이상의 이전 팔레트 컬러와 현재 팔레트 예측자에 속하지 않는 0 이상의 새로운 팔레트 컬러로 구성된다. 다음 블록에 대한 업데이트된 팔레트 예측자는 팔레트 버퍼의 원래 위치에 상기 0 이상의 이전 팔레트 컬러를 보유하고 현재 팔레트 예측자에 속하지 않는 상기 0 이상의 새로운 팔레트 컬러를 인덱스 매핑 테이블을 사용하여 팔레트 버퍼의 미사용된 예측자 항목에 입력함으로써 단계 840에서 생성된다.
도시된 흐름도는 본 발명에 따른 비디오 코딩의 예를 예시하기 위하여 의도된다. 당업자는, 본 발명의 사상을 벗어나지 않고 본 발명을 실행하도록 각 단계를 변경할 수 있고, 단계들을 재배열할 수 있고, 단계를 분할할 수 있고, 또는 단계들을 조합할 수도 있다. 본 명세서에서, 특정 구문 및 의미는 본 발명의 실시형태를 구현하는 예를 예시하기 위해 사용되었다. 당업자는 본 발명의 사상을 벗어나지 않고 상기 구문 및 의미를 동등한 구문과 의미로 대체함으로써 본 발명을 실행할 수도 있다.
상기 설명은 당업자가 특정 애플리케이션 및 그 요구 사항의 맥락에서 제공된 바와 같은 본 발명을 실시할 수 있도록 제시된다. 설명된 실시형태에 대한 다양한 변경들이 당업자에게 명백할 것이며, 본 명세서에서 정의된 일반적인 원리들은 다른 실시형태들에 적용될 수도 있다. 따라서, 본 발명은 도시되고 설명된 특정 실시형태로 한정되도록 의도되지 않고, 본 명세서에서 개시된 원리들 및 신규한 특징들과 일치하는 가장 넓은 범위와 부합될 것이다. 상기 상세한 설명에서는, 본 발명의 완전한 이해를 제공하기 위해 다양한 특정 세부사항이 예시된다. 그럼에도 불구하고, 당업자는 본 발명이 실시될 수도 있음을 이해할 것이다.
전술한 바와 같은 본 발명의 실시형태는 다양한 하드웨어, 소프트웨어 코드들, 또는 이들의 조합으로 구현될 수도 있다. 예를 들어, 본 발명의 실시형태는 본 명세서에서 설명된 처리를 수행하기 위해 비디오 압축 칩에 통합된 하나 이상의 회로, 또는 비디오 압축 소프트웨어에 통합된 프로그램 코드일 수 있다. 본 발명의 실시형태는 또한 여기에 설명된 처리를 수행하기 위해 디지털 신호 프로세서(Digital Signal Processor; DSP) 상에서 실행될 프로그램 코드일 수도 있다. 본 발명은 또한 컴퓨터 프로세서, 디지털 신호 프로세서, 마이크로프로세서, 또는 필드 프로그래머블 게이트 어레이(field programmable gate array; FPGA)에 의해 수행되는 복수의 기능을 포함할 수도 있다. 이러한 프로세서는 본 발명에 의해 구체화된 특정 방법을 정의하는 머신 판독 가능한 소프트웨어 코드 또는 펌웨어 코드를 실행함으로써, 본 발명에 따른 특정 작업들을 수행하도록 구성될 수 있다. 소프트웨어 코드 또는 펌웨어 코드는 상이한 프로그래밍 언어 및 상이한 포맷 또는 스타일로 개발될 수도 있다. 소프트웨어 코드는 또한, 다른 타겟 플랫폼을 위해 컴파일될 수도 있다. 그러나, 본 발명에 따른 작업을 수행하기 위한 다른 코드 포맷, 소프트웨어 코드의 스타일 및 언어 및 코드를 구성하는 다른 수단은 본 발명의 사상 및 범위를 벗어나지 않는다.
본 발명은 본 발명의 사상 또는 본질적인 특징으로부터 벗어나지 않고 다른 특정 형태로 구현될 수도 있다. 설명된 예는 제한적이 아니라 단지 예시적인 것으로 모든 점에서 고려되어야 한다. 본 발명의 범위는 따라서 앞의 설명보다는 첨부된 청구 범위에 의해 나타내어진다. 청구 범위의 균등 의미 및 범위 내에 있는 모든 변경은 본 발명의 범위 내에 포함되어야 한다.

Claims (17)

  1. 비디오 인코더에 의해 수행되는 팔레트 코딩 방법에 있어서,
    제1 블록 크기를 갖는 화상(picture)에서 제1 블록을 수신하는 단계 - 상기 제1 블록으로부터 제2 블록 크기를 갖는 복수의 제2 블록이 유도되고, 상기 제2 블록 크기는 상기 제1 블록 크기보다 작음 - 와,
    상기 복수의 제2 블록에 대한 제2 컬러 히스토그램을 각각 결정하는 단계와,
    상기 제1 블록 내의 모든 제2 블록에 대한 상기 제2 컬러 히스토그램을 합산함으로써 상기 제1 블록에 대한 제1 컬러 히스토그램을 결정하는 단계와,
    상기 제1 컬러 히스토그램에 기초하여 상기 제1 블록에 대한 제1 컬러 팔레트 테이블을 유도하는 단계를 포함하는 비디오 인코더에 의해 수행되는 팔레트 코딩 방법.
  2. 제1항에 있어서, 제3 블록 크기를 갖는 복수의 제3 블록은 적어도 하나의 제2 블록으로부터 유도되고, 상기 제3 블록 크기는 상기 제2 블록 크기보다 작으며, 상기 방법은,
    복수의 제2 블록에 대한 제3 컬러 히스토그램을 각각 결정하는 단계를 더 포함하며,
    상기 적어도 하나의 제2 블록에 대한 상기 제2 컬러 히스토그램은 상기 적어도 하나의 제2 블록 내의 모든 제3 블록에 대한 제3 컬러 히스토그램을 합산함으로써 결정되는 것인 비디오 인코더에 의해 수행되는 팔레트 코딩 방법.
  3. 제2항에 있어서, 상기 제2 컬러 히스토그램에 각각 기초하여 상기 복수의 제2 블록에 대한 제2 컬러 팔레트 테이블을 각각 유도하고, 상기 제3 컬러 히스토그램에 각각 기초하여 상기 복수의 제3 블록에 대한 제3 컬러 팔레트 테이블을 각각 유도하는 단계를 더 포함하는 비디오 인코더에 의해 수행되는 팔레트 코딩 방법.
  4. 제1항에 있어서, 상기 제2 컬러 히스토그램에 각각 기초하여 상기 복수의 제2 블록에 대한 제2 컬러 팔레트 테이블을 각각 유도하는 단계를 더 포함하는 비디오 인코더에 의해 수행되는 팔레트 코딩 방법.
  5. 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법에 있어서,
    화상의 현재 블록과 연관되는 입력 데이터를 수신하는 단계와,
    복수의 블록에 기초하여 하나 이상의 팔레트 테이블을 함께 유도하는 단계와,
    상기 하나 이상의 팔레트 테이블을 사용하여 상기 현재 블록에 팔레트 인코딩 또는 디코딩을 적용하는 단계를 포함하는 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  6. 제5항에 있어서, 상기 하나 이상의 팔레트 테이블은 하나의 단일 팔레트 테이블에 대응하며; 상기 단일 팔레트 테이블은 상기 현재 블록을 포함하는 상기 복수의 블록에 기초하여 유도되며; 상기 단일 팔레트 테이블은 상기 팔레트 인코딩 또는 디코딩을 수행하도록 상기 현재 블록에 대하여 사용되는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  7. 제5항에 있어서, 상기 하나 이상의 팔레트 테이블은 상기 현재 블록을 포함하는 상기 복수의 블록에 기초하여 유도된 복수의 팔레트 테이블에 대응하고, 하나의 팔레트 테이블은 상기 팔레트 인코딩 또는 디코딩을 수행하도록 상기 현재 블록에 대한 상기 복수의 팔레트 테이블로부터 선택되는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  8. 제5항에 있어서, 상기 하나 이상의 팔레트 테이블은 하나 이상의 이전 화상의 복수의 블록으로부터 유도된 하나 이상의 이전 팔레트 테이블에 대응하는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  9. 제5항에 있어서, 상기 하나 이상의 팔레트 테이블은 복수의 이전 팔레트 테이블에 대응하고, 하나의 이전 팔레트 테이블은 상기 팔레트 인코딩 또는 디코딩을 수행하도록 상기 현재 블록에 대한 상기 복수의 이전 팔레트 테이블로부터 선택되는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  10. 비디오 디코더에 의해 수행되는 팔레트 디코딩 방법에 있어서,
    화상 내의 현재의 블록과 연관되는 코딩된 데이터를 구비하는 비디오 비트스트림을 수신하는 단계와,
    상기 현재 블록의 전치(transpose) 플래그를 결정하는 단계와,
    상기 현재 블록의 팔레트 인덱스를 상기 현재 블록의 파싱된 팔레트 인덱스로 파싱하는 단계와,
    상기 현재 블록의 전치 플래그가 팔레트 전치를 지시하면 리버스 스캔 순서에 따라 상기 현재의 블록의 상기 파싱된 팔레트 인덱스를 버퍼에 저장하는 단계와,
    상기 현재의 블록의 상기 파싱된 팔레트 인덱스를 전치시키지 않고 상기 버퍼 내의 상기 현재 블록의 상기 파싱된 팔레트 인덱스를 사용하여 상기 현재 블록에 팔레트 재구성을 적용하는 단계
    를 포함하는 비디오 디코더에 의해 수행되는 팔레트 디코딩 방법.
  11. 제10항에 있어서, 디폴트 스캔 방향이 수평 또는 수평 횡단 스캔인 경우에, 상기 현재 블럭의 전치 플래그가 팔레트 전치를 나타내면, 상기 현재 블럭의 파싱된 팔레트 인덱스는 수직 또는 수직 횡단 스캔 순서에 따라 버퍼에 저장되는 것인 비디오 디코더에 의해 수행되는 팔레트 디코딩 방법.
  12. 제10항에 있어서, 디폴트 스캔 방향이 수직 또는 수직 횡단 스캔인 경우에, 상기 현재 블럭의 전치 플래그가 팔레트 전치를 나타내면, 상기 현재 블럭의 파싱된 팔레트 인덱스는 수평 또는 수평 횡단 스캔 순서에 따라 버퍼에 저장되는 것인 비디오 디코더에 의해 수행되는 팔레트 디코딩 방법.
  13. 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법에 있어서,
    화상의 현재 블록과 연관된 입력 데이터를 수신하는 단계와,
    팔레트 버퍼에 저장된 현재 팔레트 예측자를 결정하는 단계와,
    상기 현재 블록과 연관되는 현재 팔레트 테이블을 결정하는 단계 - 상기 현재 팔레트 테이블은 상기 현재 팔레트 예측자에 속하는 0 이상의 이전(old) 팔레트 컬러 및 상기 현재 팔레트 예측자에 속하는 0 이상의 새로운 팔레트 컬러로 구성됨 -
    상기 팔레트 버퍼의 원래 위치에 상기 0 이상의 이전 팔레트 컬러를 유지하고 상기 현재 팔레트 예측자에 속하지 않는 상기 0 이상의 새로운 팔레트 컬러를 인덱스 매핑 테이블을 사용하여 상기 팔레트 버퍼의 미사용된 예측자 항목(entry)에 입력함으로써, 다음 블록에 대한 업데이트된 팔레트 예측자를 생성하는 단계
    를 포함하는 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  14. 제13항에 있어서, 상기 인덱스 매핑 테이블은 팔레트 컬러에 대응하는 상기 팔레트 버퍼의 물리적 어드레스에 대한 팔레트 인덱스에 관련되는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  15. 제13항에 있어서, 상기 인덱스 매핑 테이블은 인코더 측 또는 디코더 측에서 유지되는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  16. 제13항에 있어서, 상기 업데이트된 팔레트 예측자에 따라서 상기 인덱스 매핑 테이블을 업데이트하는 단계를 더 포함하는 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
  17. 제13항에 있어서, 상기 팔레트 버퍼 FIFO(first in and first out) 레지스터에 기초하여 구현되는 것인 비디오 인코더 또는 디코더에 의해 수행되는 팔레트 코딩 방법.
KR1020177037101A 2015-06-03 2016-06-03 화상 및 비디오 데이터의 팔레트 코딩 방법 KR20180010260A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562170267P 2015-06-03 2015-06-03
US62/170,267 2015-06-03
US201562213254P 2015-09-02 2015-09-02
US62/213,254 2015-09-02
PCT/CN2016/084784 WO2016192678A1 (en) 2015-06-03 2016-06-03 Methods for palette coding of image and video data

Publications (1)

Publication Number Publication Date
KR20180010260A true KR20180010260A (ko) 2018-01-30

Family

ID=57440179

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177037101A KR20180010260A (ko) 2015-06-03 2016-06-03 화상 및 비디오 데이터의 팔레트 코딩 방법

Country Status (6)

Country Link
US (2) US10390028B2 (ko)
EP (2) EP3295660A4 (ko)
KR (1) KR20180010260A (ko)
CN (2) CN107637057A (ko)
MY (1) MY183484A (ko)
WO (2) WO2016192662A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021187946A1 (ko) * 2020-03-19 2021-09-23 엘지전자 주식회사 팔레트 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846597B (zh) * 2016-09-20 2019-12-10 上海澜至半导体有限公司 用于视频解码器的数据缓存方法和装置
US10798402B2 (en) * 2017-10-24 2020-10-06 Google Llc Same frame motion estimation and compensation
US10687071B2 (en) * 2018-02-05 2020-06-16 Tencent America LLC Method and apparatus for video coding
US11012715B2 (en) * 2018-02-08 2021-05-18 Qualcomm Incorporated Intra block copy for video coding
WO2019234606A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Interaction between ibc and atmvp
US11477474B2 (en) * 2018-06-08 2022-10-18 Mediatek Inc. Methods and apparatus for multi-hypothesis mode reference and constraints
CN110636298B (zh) 2018-06-21 2022-09-13 北京字节跳动网络技术有限公司 对于Merge仿射模式和非Merge仿射模式的统一约束
WO2019244118A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Component-dependent sub-block dividing
CN110945872A (zh) * 2018-08-01 2020-03-31 深圳市大疆创新科技有限公司 视频处理设备和方法
CN110855993A (zh) * 2018-08-21 2020-02-28 华为技术有限公司 一种图像块的运动信息的预测方法及装置
WO2020042990A1 (zh) * 2018-08-28 2020-03-05 华为技术有限公司 帧间预测方法、装置及其应用的编/解方法及装置
CN117319650A (zh) * 2018-08-28 2023-12-29 华为技术有限公司 编码方法、解码方法以及编码装置、解码装置
CN111010565B (zh) * 2018-10-04 2023-05-16 华为技术有限公司 帧间预测方法、装置及其应用的编/解方法及装置
WO2020047807A1 (zh) * 2018-09-05 2020-03-12 华为技术有限公司 帧间预测方法、装置以及编解码器
US10848782B2 (en) 2018-09-21 2020-11-24 Tencent America LLC Method and apparatus for video coding
CN117768651A (zh) 2018-09-24 2024-03-26 北京字节跳动网络技术有限公司 处理视频数据的方法、装置、介质、以及比特流存储方法
WO2020094150A1 (en) 2018-11-10 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Rounding in current picture referencing
CN113170192B (zh) * 2018-11-15 2023-12-01 北京字节跳动网络技术有限公司 仿射的merge与mvd
CN113424528A (zh) * 2019-02-01 2021-09-21 北京字节跳动网络技术有限公司 环路整形和块差分脉冲编解码调制之间的相互作用
EP3900362A4 (en) 2019-02-01 2022-03-02 Beijing Bytedance Network Technology Co., Ltd. SIGNALING LOOP SHAPED INFORMATION USING PARAMETER SETS
KR20210123300A (ko) 2019-02-02 2021-10-13 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사를 위한 버퍼 관리
WO2020156540A1 (en) * 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Buffer management for intra block copy in video coding
WO2020177662A1 (en) 2019-03-01 2020-09-10 Beijing Bytedance Network Technology Co., Ltd. Implementation aspects in intra block copy in video coding
US10924750B2 (en) * 2019-03-01 2021-02-16 Alibaba Group Holding Limited Palette size constraint in palette mode for video compression system
KR102688366B1 (ko) 2019-03-01 2024-07-24 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사를 위한 방향 기반 예측
KR20210125506A (ko) 2019-03-04 2021-10-18 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사를 위한 버퍼 관리
US11202101B2 (en) * 2019-03-13 2021-12-14 Qualcomm Incorporated Grouped coding for palette syntax in video coding
CN113574889B (zh) 2019-03-14 2024-01-12 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
CN113632476B (zh) 2019-03-23 2024-03-19 北京字节跳动网络技术有限公司 默认的环内整形参数
WO2020228744A1 (en) 2019-05-16 2020-11-19 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods using ibc dedicated buffer and default value refreshing for luma and chroma component
JP7324065B2 (ja) * 2019-06-26 2023-08-09 キヤノン株式会社 動きベクトル検出装置、撮像装置、動きベクトル検出方法、及びプログラム
CN117294841A (zh) 2019-07-06 2023-12-26 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的虚拟预测缓冲
JP7359934B2 (ja) 2019-07-10 2023-10-11 北京字節跳動網絡技術有限公司 映像符号化におけるイントラブロックコピーのためのサンプル識別
EP3981146A4 (en) 2019-07-11 2022-08-03 Beijing Bytedance Network Technology Co., Ltd. BITSTREAM CONFORMITY RESTRICTIONS FOR INTRA-BLOCK COPY IN VIDEO ENCODING
EP4011080A4 (en) * 2019-09-12 2023-04-12 ByteDance Inc. USING PALETTE PREDICTION IN VIDEO CODING
US11120289B2 (en) * 2019-09-30 2021-09-14 Ati Technologies Ulc Parallel histogram calculation with application to palette table derivation
CN114902666A (zh) * 2019-10-28 2022-08-12 Lg电子株式会社 使用自适应颜色变换的图像编码/解码方法和装置以及发送比特流的方法
MX2022005103A (es) 2019-10-29 2022-07-11 Lg Electronics Inc Método de codificación de imágenes a base de transformación y aparato para el mismo.
AU2020374347B2 (en) 2019-10-29 2023-11-23 Lg Electronics Inc. Transform-based image coding method and device therefor
WO2021133529A1 (en) * 2019-12-26 2021-07-01 Alibaba Group Holding Limited Methods for coding video data in palette mode
KR20220097513A (ko) * 2019-12-29 2022-07-07 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
CN112514391A (zh) * 2019-12-31 2021-03-16 深圳市大疆创新科技有限公司 视频处理的方法与装置
US12132917B2 (en) 2020-09-23 2024-10-29 Ati Technologies Ulc Palette mode video encoding utilizing hierarchical palette table generation
US11463716B2 (en) * 2021-02-25 2022-10-04 Qualcomm Incorporated Buffers for video coding in palette mode
US12052484B2 (en) * 2021-04-27 2024-07-30 Apple Inc. Camera integration for portable electronic devices
US11800122B2 (en) * 2021-08-17 2023-10-24 Mediatek Inc. Video processing apparatus using internal prediction buffer that is shared by multiple coding tools for prediction
US12063360B2 (en) * 2021-08-30 2024-08-13 Mediatek Inc. Prediction processing system using reference data buffer to achieve parallel non-inter and inter prediction and associated prediction processing method
US11789352B2 (en) * 2021-11-01 2023-10-17 GM Global Technology Operations LLC Camera system laminated into glass using microsensor and lens
CN113997868B (zh) * 2021-11-15 2023-07-04 武汉华星光电技术有限公司 车载显示装置
US12126888B2 (en) * 2022-05-20 2024-10-22 Sony Interactive Entertainment Inc. Near infrared (NIR) transparent organic light emitting diode (OLED) display
CN115086706B (zh) * 2022-08-19 2023-01-06 摩尔线程智能科技(北京)有限责任公司 数据缓存方法及芯片

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2286507B (en) * 1993-08-31 1998-01-14 Ericsson Ge Mobile Communicat Apparatus for storing messages in a cellular mobile terminal
JP2671820B2 (ja) * 1994-09-28 1997-11-05 日本電気株式会社 両方向予測方法及び両方向予測装置
US5793883A (en) * 1995-09-29 1998-08-11 Siemens Medical Systems, Inc. Method for enhancing ultrasound image
US6037982A (en) 1996-03-28 2000-03-14 Intel Corporation Multi-pass video compression
JP2001231044A (ja) * 2000-02-14 2001-08-24 Nec Corp Mpeg画像復号装置および方法
US7162080B2 (en) * 2001-02-23 2007-01-09 Zoran Corporation Graphic image re-encoding and distribution system and method
KR100436760B1 (ko) 2001-12-20 2004-06-23 삼성전자주식회사 잉크젯 프린터의 헤드 및 그 제조방법
US8428349B2 (en) * 2003-05-21 2013-04-23 Broadcom Corporation Method and apparatus for DRAM 2D video word formatting
KR100842557B1 (ko) * 2006-10-20 2008-07-01 삼성전자주식회사 동영상 처리 장치에서 메모리 액세스 방법
US8341338B2 (en) * 2009-05-06 2012-12-25 Samsung Electronics Co., Ltd. Data storage device and related method of operation
JP5636507B2 (ja) 2011-01-07 2014-12-03 メディア テック シンガポール ピーティーイー.リミテッド 改良されたイントラ予測モード符号化の方法及び装置
KR101567467B1 (ko) 2011-05-10 2015-11-09 미디어텍 인크. 루프내 필터 버퍼의 감소를 위한 방법 및 장치
US8655086B1 (en) * 2011-11-01 2014-02-18 Zynga, Inc. Image compression with alpha channel data
WO2013094706A1 (ja) * 2011-12-22 2013-06-27 帝人株式会社 ランダムマット、および強化繊維複合材料
US9712817B1 (en) * 2013-02-15 2017-07-18 Apple Inc. Lossless video coding systems and methods
KR20140116992A (ko) * 2013-03-25 2014-10-07 삼성전자주식회사 외부 메모리 접근의 대역폭을 감소시키는 lcu단위의 인-루프 필터링 장치 및 방법
US10904551B2 (en) * 2013-04-05 2021-01-26 Texas Instruments Incorporated Video coding using intra block copy
US9654777B2 (en) * 2013-04-05 2017-05-16 Qualcomm Incorporated Determining palette indices in palette-based video coding
US10015515B2 (en) * 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
US9774879B2 (en) * 2013-08-16 2017-09-26 Sony Corporation Intra-block copying enhancements for HEVC in-range-extension (RExt)
US20150071357A1 (en) 2013-09-12 2015-03-12 Qualcomm Incorporated Partial intra block copying for video coding
GB2519514A (en) 2013-10-11 2015-04-29 Canon Kk Method and apparatus for displacement vector component prediction in video coding and decoding
EP3033878A4 (en) * 2013-10-14 2017-04-05 HFI Innovation Inc. Method of residue differential pulse-code modulation for hevc range extension
RU2654129C2 (ru) * 2013-10-14 2018-05-16 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений
US10291827B2 (en) * 2013-11-22 2019-05-14 Futurewei Technologies, Inc. Advanced screen content coding solution
JP6465890B2 (ja) * 2013-12-10 2019-02-06 キヤノン株式会社 画素ブロックの符号化または復号の方法および装置
WO2015135509A1 (en) * 2014-03-14 2015-09-17 Mediatek Inc. Method for palette table initialization and management
CN110572678B (zh) * 2014-03-14 2024-03-12 Vid拓展公司 调色板编码及解码视频数据的方法、编码设备及编码器
US20150312573A1 (en) * 2014-03-17 2015-10-29 Nokia Technologies Oy Method and technical equipment for video encoding and decoding
EP3055830B1 (en) * 2014-03-21 2024-08-21 Huawei Technologies Co., Ltd. Advanced screen content coding with improved color table and index map coding methods
US9654806B2 (en) * 2014-03-26 2017-05-16 Qualcomm Incorporated Determining palette size, palette entries and filtering of palette coded blocks in video coding
US9877034B2 (en) * 2014-04-14 2018-01-23 Avago Technologies General Ip (Singapore) Pte. Ltd. Pipelined video decoder system
US10091512B2 (en) * 2014-05-23 2018-10-02 Futurewei Technologies, Inc. Advanced screen content coding with improved palette table and index map coding methods
US20150381994A1 (en) * 2014-06-27 2015-12-31 Futurewei Technologies, Inc. Advanced screen content coding with improved palette table and index map coding methods
US10687064B2 (en) * 2014-08-04 2020-06-16 Qualcomm Incorporated Palette mode encoding and decoding with inferred pixel scan order
US9544607B2 (en) * 2014-08-25 2017-01-10 Hfi Innovation Inc. Method of palette index signaling for image and video coding
KR20200051066A (ko) * 2014-10-06 2020-05-12 브이아이디 스케일, 인크. 화면 콘텐츠 코딩에 대한 개선된 팔레트 코딩
US20160100177A1 (en) * 2014-10-06 2016-04-07 Qualcomm Incorporated Non-uniform exponential-golomb codes for palette mode coding
US9596479B2 (en) * 2014-10-07 2017-03-14 Hfi Innovation Inc. Method of pulse-code modulation and palette coding for video coding
KR102422484B1 (ko) * 2015-01-29 2022-07-20 주식회사 케이티 비디오 신호 처리 방법 및 장치
US9986248B2 (en) * 2015-01-29 2018-05-29 Qualcomm Incorporated Palette mode coding for video coding
WO2016123388A1 (en) * 2015-01-29 2016-08-04 Vid Scale, Inc. Palette coding modes and palette flipping
WO2016119726A1 (en) * 2015-01-30 2016-08-04 Mediatek Inc. Method and apparatus for entropy coding of source samples with large alphabet
US20160227254A1 (en) * 2015-01-30 2016-08-04 Qualcomm Incorporated Coding palette run in palette-based video coding
CN107211149A (zh) * 2015-02-05 2017-09-26 联发科技股份有限公司 调色板语法的解码操作装置与方法
KR102691340B1 (ko) * 2015-04-02 2024-08-02 주식회사 케이티 비디오 신호 처리 방법 및 장치
US20160323600A1 (en) * 2015-04-30 2016-11-03 Zhan Ma Methods and Apparatus for Use of Adaptive Prediction Resolution in Video Coding
US10448058B2 (en) * 2015-05-21 2019-10-15 Qualcomm Incorporated Grouping palette index at the end and index coding using palette size and run value
GB2547047B (en) * 2016-02-08 2018-07-18 Canon Kk Encoder optimizations for palette lossless encoding of content with subsampled colour component

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021187946A1 (ko) * 2020-03-19 2021-09-23 엘지전자 주식회사 팔레트 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체

Also Published As

Publication number Publication date
CN107637057A (zh) 2018-01-26
CN107615765A (zh) 2018-01-19
EP3295660A4 (en) 2019-05-29
EP3295660A1 (en) 2018-03-21
EP3298785A4 (en) 2019-02-13
EP3298785A1 (en) 2018-03-28
US10397588B2 (en) 2019-08-27
WO2016192662A1 (en) 2016-12-08
US20180152714A1 (en) 2018-05-31
US10390028B2 (en) 2019-08-20
WO2016192678A1 (en) 2016-12-08
MY183484A (en) 2021-02-20
US20180103260A1 (en) 2018-04-12

Similar Documents

Publication Publication Date Title
KR20180010260A (ko) 화상 및 비디오 데이터의 팔레트 코딩 방법
US11265537B2 (en) Method for palette table initialization and management
JP6689338B2 (ja) パレットサイズシグナリング、および、条件付きのパレットエスケープフラグシグナリングの方法及び装置
KR102051197B1 (ko) 비디오 코딩에서의 인터 예측으로의 팔레트 코딩 방법
US9788004B2 (en) Method of color index coding with palette stuffing
EP4460006A2 (en) Advanced coding techniques for high efficiency video coding (hevc) screen content coding (scc) extensions
US10542271B2 (en) Method and apparatus for major color index map coding
KR101982829B1 (ko) 팔레트 테이블 예측 및 시그널링을 위한 방법과 장치
KR20190008435A (ko) 영상 부호화를 위한 팔레트 예측자 신호 방법
CN106797468A (zh) 高效视频编码(hevc)屏幕内容编码(scc)中改进的调色板模式
CN113841402B (zh) 视频编解码中大块的变换设计
US20190273930A1 (en) Method and Apparatus of Palette Index Map Coding for Screen Content Coding
CN114830655B (zh) 视频编解码的方法与装置
WO2020182113A1 (en) Combined screen content coding mode
EP3266217B1 (en) Method and apparatus for video or image decoding using palette coding mode and method for video or image coding

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application