KR101982829B1 - 팔레트 테이블 예측 및 시그널링을 위한 방법과 장치 - Google Patents

팔레트 테이블 예측 및 시그널링을 위한 방법과 장치 Download PDF

Info

Publication number
KR101982829B1
KR101982829B1 KR1020167035711A KR20167035711A KR101982829B1 KR 101982829 B1 KR101982829 B1 KR 101982829B1 KR 1020167035711 A KR1020167035711 A KR 1020167035711A KR 20167035711 A KR20167035711 A KR 20167035711A KR 101982829 B1 KR101982829 B1 KR 101982829B1
Authority
KR
South Korea
Prior art keywords
value
palette
code
run length
current
Prior art date
Application number
KR1020167035711A
Other languages
English (en)
Other versions
KR20170007461A (ko
Inventor
추-더 추앙
유-첸 선
Original Assignee
에이치에프아이 이노베이션 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에이치에프아이 이노베이션 인크. filed Critical 에이치에프아이 이노베이션 인크.
Publication of KR20170007461A publication Critical patent/KR20170007461A/ko
Application granted granted Critical
Publication of KR101982829B1 publication Critical patent/KR101982829B1/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/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/93Run-length 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/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/172Methods 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 picture, frame or field
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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

이미지 및 비디오 데이터의 예측 팔레트 부호화 방법 및 장치가 개시된다. 재사용 플래그는 현재 팔레트 테이블 내의 개별 팔레트 값들이 팔레트 예측자 테이블에서 사용되는지 표시하기 위해 사용된다. 본 발명은 부호화 효율을 개선하기 위해 런렝스에 런렝스 부호화를 적용한다. 일 실시형태에 따르면, 재사용 플래그는 만일 현재 팔레트 테이블 내의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되지 않으면 제1 값이 지정되고, 재사용 플래그는 만일 현재 팔레트 테이블 내의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되면 제2 값이 지정된다. 예를 들면, 제1 값은 "0"에 대응하고 제2 값은 "1"에 대응한다. 런렝스는 제1 값을 가진 연속적 재사용 플래그의 수에 대응한다.

Description

팔레트 테이블 예측 및 시그널링을 위한 방법과 장치{METHOD AND APPARATUS FOR PALETTE TABLE PREDICTION AND SIGNALING}
관련 출원에 대한 교차 참조
본 출원은 2014년 5월 23일자 출원된 미국 가특허 출원 제62/002,221호 및 2014년 8월 21일자 출원된 미국 가특허 출원 제62/040,020호에 대하여 우선권을 주장한다. 상기 미국 가특허 출원들은 인용에 의해 그 전부가 본원에 통합된다.
기술 분야
본 발명은 비디오 데이터의 색지수 부호화에 관한 것으로, 특히 팔레트 예측 기술을 이용한 팔레트 테이블 부호화에 관한 것이다.
고효율 영상 부호화(High Efficiency Video Coding, HEVC)는 최근에 개발된 새로운 부호화 표준이다. 고효율 영상 부호화(HEVC) 시스템에서는 H.264/AVC의 고정 크기 매크로블록이 부호화 단위(coding unit, CU)라고 부르는 플렉시블 블록(flexible block)으로 교체된다. CU 내의 픽셀들은 부호화 효율을 개선하기 위해 동일한 부호화 파라미터들을 공유한다. CU는 HEVC에서 부호화 트리 단위(coded tree unit, CTU)라고도 부르는 최대 CU(LCU)로 시작할 수 있다. 부호화 단위의 개념 외에, 예측 단위(prediction unit, PU)의 개념이 또한 HEVC에 도입된다. CU 계층 트리의 분할이 이루어진 때, 각각의 잎(leaf) CU는 예측 유형 및 PU 구획(partition)에 따라 하나 이상의 예측 단위로 추가로 분할된다.
고효율 영상 부호화(HEVC) 표준 개발과 함께, HEVC의 확장판 개발이 또한 시작되었다. HEVC 확장판은 4:2:2 및 4:4:4와 같은 비-4:2:0 컬러 포맷 및 샘플당 12, 14 및 16 비트와 같은 더 높은 비트 깊이 영상을 목표로 하는 범위 확장(range extension, RExt)을 포함한다. RExt를 이용하는 가능한 응용 중의 하나는 유선 또는 무선 접속을 통한 화면 공유(screen sharing)이다. 화면 콘텐츠의 특성에 기인해서, 부호화 툴이 개발되었고 부호화 효율에 있어서 중요한 이득을 나타낸다. 이들 중에서, 색지수 부호화(주요 색 기반 부호화라고도 부름) 기술은 팔레트에 대한 지수를 이용하여 픽셀들의 블록을 표시하고(주요 색), 공간 용장성을 활용하여 팔레트 및 지수를 인코딩한다. 가능한 색 조합의 총 수가 거대하지만, 화상 영역에서 색의 수는 일반적으로 전형적인 화면 콘텐츠에 대하여 매우 제한된다. 그러므로, 색지수 부호화는 화면 콘텐츠 자료에 대하여 매우 효과적으로 된다.
HEVC 범위 확장(RExt)의 초기 개발 중에, 팔레트 기반 부호화를 다루기 위한 몇 가지 제안이 있었다. 예를 들면, 팔레트 예측 및 공유 기술은 JCTVC-N0247(2013년 7월 25일부터 8월 2일까지 오스트리아 비엔나에서 개최된 ITU-T SG 16 WP 3 및 ISO/IEC JTC 1/SC 29/WG 11의 영상 부호화에 대한 합동 협력팀(JCT-VC)의 14차 회의에서 구오(Guo) 등이 "RCE3: 화면 내용 부호화를 위한 팔레트 모드에서 테스트 3.1의 결과"(RCE3: Results of Test 3.1 on Palette Mode for Screen Content Coding)의 명칭으로 발표한 문서 JCTVC-N0247) 및 JCTVC-O0218(2013년 10월 23일부터 11월 1일까지 스위스 제네바에서 개최된 ITU-T SG 16 WP 3 및 ISO/IEC JTC 1/SC 29/WG 11의 영상 부호화에 대한 합동 협력팀(JCT-VC)의 15차 회의에서 구오(Guo) 등이 "HM-12.0+RExt-4.1에서 팔레트 모드 부호화의 평가"(Evaluation of Palette Mode Coding on HM-12.0+RExt-4.1)의 명칭으로 발표한 문서 JCTVC-O0218)에 개시되어 있다. JCTVC-N0247에서, 각각의 색 성분의 팔레트가 구성되고 전송된다. 팔레트는 비트레이트를 줄이기 위해 그 좌측의 이웃 CU로부터 예측(또는 공유)될 수 있다. 그 다음에, 주어진 블록 내의 모든 픽셀들이 그들의 팔레트 지수를 이용하여 부호화된다. JCTVC-N0247에 따른 인코딩 처리의 예가 다음과 같이 나타난다.
1. 팔레트의 전송: 색지수 테이블 크기가 먼저 전송되고 그 다음에 팔레트 요소들이 전송된다.
2. 픽셀 값의 전송: CU 내의 픽셀들이 라스터 스캔 순으로 인코딩된다. 하나 이상 픽셀들의 각 그룹에 대하여, 런(run) 기반 모드의 플래그가 먼저 전송되어 "런" 모드가 사용되는지 또는 "카피 어보브"(copy above) 모드가 사용되는지 표시한다.
2.1 "런(run)" 모드: "런" 모드에서, 팔레트 지수가 먼저 시그널링되고 그 다음에 런 값을 표시하는 "팔레트 런"(palette_run)(예를 들면, M)이 시그널링된다. 런 값은 총 M개의 샘플이 모두 "런" 모드를 이용하여 부호화되는 것을 표시한다. 현재 위치와 다음의 M개의 위치는 비트스트림으로 시그널링된 것과 동일한 팔레트 지수를 갖기 때문에 상기 현재 위치와 다음의 M개의 위치에 대하여 추가의 정보를 전송할 필요가 없다. 팔레트 지수(예를 들면, i)는 또한 3개의 색성분 모두에 의해 공유되고, 이것은 YUV 색 공간의 경우에 재구성된 픽셀 값이 (Y. U. V) = (paletteY[i], paletteU[i], paletteV[i])임을 의미한다.
2.2 "카피 어보브 ( copy above)" 모드: "카피 어보브" 모드에서, 다음의 N개의 위치(현재 위치를 포함함)에 대하여 팔레트 지수가 위의 행에 있는 대응하는 팔레트 지수와 동일하다는 것을 표시하기 위해 값 "카피 런"(copy_run)(예를 들면, N)이 전송된다.
3. 나머지의 전송: 스테이지 2에서 전송된 팔레트 지수는 픽셀 값으로 다시 변환되고 예측으로서 사용된다. 나머지 정보는 HEVC 잔여 부호화를 이용하여 전송되고 재구성을 위한 예측에 추가된다.
JCTVC-N0247에 개시된 연구물의 원래 버전에서, 각 성분의 팔레트가 구성되고 전송된다. 팔레트는 비트레이트를 줄이기 위해 그 좌측의 이웃 CU로부터 예측(공유)될 수 있다. JCTVC-N0218에서, 팔레트의 각 요소는 3개의 색성분의 특수 조합을 표시하는 3개 한벌(triplet)이다. CU를 가로지르는 팔레트의 예측 부호화는 제거된다.
다른 하나의 주요 색 기반 부호화(색지수 부호화) 방법은 구오(Guo) 등에 의해 JCTVC-O0182(2013년 10월 23일부터 11월 1일까지 스위스 제네바에서 개최된 ITU-T SG 16 WP 3 및 ISO/IEC JTC 1/SC 29/WG 11의 영상 부호화에 대한 합동 협력팀(JCT-VC)의 15차 회의에서 구오(Guo) 등이 "AHG8: 주요 색 기반 화면 내용 부호화"(AHG8: Major-color-based screen content coding)의 명칭으로 발표한 문서 JCTVC-O0182)에 개시되어 있다. JCTVC-O0182에 따르면, 각 성분의 팔레트가 구성되고 전송된다. 그러나 좌측 CU로부터 전체 팔레트를 예측하는 대신에, 팔레트에서의 개별 엔트리가 상측 CU 또는 좌측 CU의 정확히 대응하는 팔레트 엔트리로부터 예측될 수 있다.
JCTVC-O0182에 따르면, 예측 부호화 방법이 픽셀 값의 전송을 위해 지수에 적용되고, 이때 픽셀 라인은 다른 모드에 의해 예측될 수 있다. 구체적으로, 픽셀 라인마다 3종의 라인 모드, 즉 수평 모드, 수직 모드 및 정상 모드가 사용된다. 수평 모드에서, 동일 라인 내의 모든 픽셀은 동일 값을 갖는다. 만일 값이 상측 픽셀 라인의 제1 픽셀과 동일하면, 라인 모드 시그널링 비트만이 전송된다. 그렇지 않으면 지수 값이 또한 전송된다. 수직 모드에서는 현재 픽셀 라인이 상측 픽셀 라인과 동일하다. 그러므로 라인 모드 시그널링 비트만이 전송된다. 정상 모드에서는 라인 내의 픽셀들이 개별적으로 예측된다. 각 픽셀에 대하여, 좌측 또는 상측 이웃 픽셀이 예측자로서 사용되고, 예측 심벌이 디코더에 전송된다. 또한, 픽셀들은 주요 색 픽셀과 이스케이프 픽셀(escape pixel)로 분류된다. 주요 색 픽셀에 대하여, 디코더는 주요 색 지수 및 팔레트를 이용하여 픽셀 값을 재구성한다. 이스케이프 픽셀에 대하여, 인코더는 픽셀 값을 추가로 보낼 것이다.
색 지수 부호화와 연관된 부호화 효율을 추가로 개선하기 위한 방법을 개발하는 것이 요망된다.
이미지 및 비디오 데이터의 예측 팔레트 부호화 방법 및 장치가 개시된다. 팔레트 예측에 있어서, 현재 팔레트 테이블은 기준으로 팔레트 예측자 테이블을 이용하여 예측적으로 부호화된다. 재사용 플래그는 현재 팔레트 테이블 내의 개별 팔레트 값들이 팔레트 예측자 테이블에서 사용되는지 표시하기 위해 사용된다. 본 발명은 부호화 효율을 개선하기 위해 재사용 플래그의 런렝스에 런렝스 부호화를 적용한다. 일 실시형태에 따르면, 재사용 플래그는 만일 현재 팔레트 테이블 내의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되지 않으면 제1 값이 지정되고, 재사용 플래그는 만일 현재 팔레트 테이블 내의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되면 제2 값이 지정된다. 예를 들면, 제1 값은 "0"에 대응하고 제2 값은 "1"에 대응한다. 런렝스는 제1 값을 가진 연속적 재사용 플래그의 수에 대응한다.
일 실시형태에 있어서, 현재 재사용 플래그 후의 하나 이상의 나머지 재사용 플래그 중 어느 것도 제2 값을 갖지 않는다는 것을 표시하기 위해 엔드 코드(end-code, EC)를 사용할 수 있다. EC 코드 값이 엔드 코드에 지정될 수 있고, EC 코드 값 이상인 런렝스 값을 가진 임의의 런렝스는 수정 런렝스를 형성하기 위해 1만큼 증가된다. 디코더 측에서, 만일 디코드된 런렝스가 EC 코드 값과 동일한 런렝스 값을 가지면, 현재 부호화 단위에 대한 영상 비트스트림의 파싱 처리가 종료된다. 만일 디코드된 런렝스가 EC 코드 값보다 더 큰 런렝스 값을 가지면, 디코드된 런렝스의 런렝스 값이 1만큼 감소된다. EC 코드 값은 현재 부호화 단위에 관한 정보, 현재 부호화 단위의 부호화 파라미터, 이전에 부호화된 정보 또는 이들의 임의 조합에 응답하여 엔드 코드에 적응적으로 지정될 수 있다. 예를 들면, EC 코드 값은 부호화 단위 크기, 이전에 예측된 팔레트의 팔레트 지수, 또는 이들 둘 다에 따라 엔드코드에 적응적으로 지정될 수 있다.
EC 코드 값을 가진 런렝스 또는 수정 런렝스는 오더-K를 가진 지수 골롬(Exponential-Golomb) 코드(EG-K 코드), 오더-K를 가진 절단(truncated) 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법(unary) 코드 + EG-K 코드를 이용하여 이진화될 수 있다. K와 N은 {0, 1, 2, 3}으로 이루어진 그룹으로부터 선택될 수 있다.
EC를 이용하는 것 외에, 다른 실시형태는 명시적 엔딩 플래그(ending_flag)를 이용하여 현재 부호화 단위와 연관된 압축 데이터의 끝을 표시한다. 재사용 플래그의 런렝스 중 하나에 대한 런렝스 코드 값이 엔딩 플래그로서 지정되고, 런렝스 코드 값은 {0, 1, 2, 3, 4, 5, 6}으로 이루어진 그룹으로부터 선택된다. EC 부호화와 유사하게, 명시적 엔딩 플래그가 또한 적응적으로 부호화될 수 있다.
또 다른 실시형태에 있어서, 구문 '재사용된 팔레트의 수'(num_of_reused_palette)가 최종 부호화 팔레트 테이블로부터 재사용된 팔레트 값의 수를 표시하기 위해 시그널링된다. 구문 'num_of_reused_palette'는 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), N-비트 절단 일진법 코드 + EG-K 코드 또는 절단 일진법 코드를 이용하여 이진화될 수 있다. K와 N은 {0, 1, 2, 3}으로 이루어진 그룹으로부터 선택될 수 있다. 구문 'num_of_reused_palette'는 재사용 플래그의 런렝스를 시그널링하기 전에 시그널링될 수 있다. 만일 최종 부호화 팔레트 테이블로부터 재사용된 팔레트 값의 수가 0이면, 재사용 플래그의 런렝스는 시그널링될 필요가 없다.
또 다른 실시형태에 있어서, 구문 'M인 제로 런의 수'(num_of_zero_run_M)가 현재 부호화 단위의 재사용 플래그에 대한 M-값 런렝스의 수를 표시하기 위해 시그널링되거나, 또는 구문 'M 이상 제로 런의 수'(num_of_zero_run_equal_larger_M)가 현재 부호화 단위의 M 이상 값 런렝스의 수를 표시하기 위해 시그널링될 수 있다. M-값 런렝스는 M과 동일한 다수의 부호화 런렝스 값을 갖는다. M은 정수이다. M 이상 값 런렝스는 M과 동일하거나 더 큰 다수의 부호화 런렝스 값을 갖는다. 구문 'num_of_zero_run_M' 또는 구문 'num_of_zero_run_equal_larger_M'은 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), N-비트 절단 일진법 코드 + EG-K 코드 또는 절단 일진법 코드를 이용하여 이진화될 수 있다. K와 N은 {0, 1, 2, 3}으로 이루어진 그룹으로부터 선택될 수 있다. 엔드 코드(EC)는 현재 재사용 플래그 뒤의 하나 이상의 나머지 재사용 플래그 중 어느 것도 제2 값을 갖지 않는다는 것을 표시하기 위해 사용될 수 있고 M과 동일한 EC 코드 값이 엔드 코드에 지정될 수 있다. 구문 'num_of_zero_run_M' 또는 구문 'num_of_zero_run_equal_larger_M'은 현재 부호화 단위의 런렝스 전에 디코드될 수 있다. 만일 M과 동일한 런렝스 값을 가진 디코드된 런렝스의 수가 구문 'num_of_zero_run_M'보다 더 크거나, M 이상인 런렝스 값을 가진 디코드된 런렝스의 수가 구문 'num_of_zero_run_equal_larger_M'보다 더 크면, 현재 부호화 단위에 대한 영상 비트스트림의 파싱 처리가 종료된다.
도 1은 0의 값을 가진 재사용 플래그의 런렝스가 팔레트 예측에 사용되는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 2는 엔드 코드를 이용하여 최종 제로런을 표시하는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 3은 엔드 코드(EC)를 이용하여 최종 제로런을 표시하고 EC 코드 값 이상의 런렝스 값을 가진 제로런에 대한 런렝스 값이 1만큼 증가되는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 4는 엔드 코드(EC)를 이용하여 최종 제로런을 표시하고 EC가 적응적으로 부호화되는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 5는 명시적 엔딩 플래그를 이용하여 최종 제로런을 표시하는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 6은 재사용된 예측 팔레트 엔트리의 수를 표시하는 구문 요소가 시그널링되는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 7은 M과 동일한 런렝스 값을 가진 제로런의 수를 표시하는 구문 요소가 시그널링되는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 8은 M 이상의 런렝스 값을 가진 제로런의 수를 표시하는 구문 요소가 시그널링되는, 본 발명의 실시형태에 따른 팔레트 예측 부호화의 예를 보인 도이다.
도 9는 본 발명의 실시형태에 따른 팔레트 예측을 통합한 영상 부호화 시스템의 예시적인 흐름도이다.
도 10은 본 발명의 실시형태에 따른 팔레트 예측을 통합한 영상 디코딩 시스템의 예시적인 흐름도이다.
팔레트 예측 부호화의 수행을 개선하기 위한 본 발명의 각종 실시형태가 개시된다. 팔레트 예측에 있어서, 현재 팔레트 테이블의 개별적인 팔레트 값이 팔레트 예측 테이블에서 사용되는지 표시하기 위해 재사용 플래그가 사용된다. 본 발명은 런렝스에 런렝스 부호화를 적용하여 부호화 효율을 개선한다.
팔레트 예측 부호화
JCTVC-O0218 및 JCTVC-N0247에서, 팔레트 예측 플래그는 최종 팔레트 부호화된 부호화 단위(CU)로부터 팔레트를 예측하기 위해 사용된다. 각 엔트리마다 1비트가 사용된다. JCTVC-Q0063((2014년 3월 27일부터 4월 4일까지 스페인의 발렌시아에서 개최된 ITU-T SG 16 WP 3 및 ISO/IEC JTC 1/SC 29/WG 11의 영상 부호화에 대한 합동 협력팀(JCT-VC)의 17차 회의에서 기스켓(Gisquet) 등이 "AhG10: 팔레트 예측자 채우기(AhG10: palette predictor stuffing)"의 명칭으로 발표한 문서 JCTVC-Q0063)에서는 부호화 효율을 개선하기 위해 예측 종료(end-of-prediction) 플래그가 도입된다.
수행을 개선하기 위해, 본 발명의 실시형태에 따라 코드워드에 대한 각종 이진화 처리가 개시된다. 이진화 처리는 다른 엔트리마다 다를 수 있다(예를 들면, EG-K 코드 또는 절단 EG-K 코드). 또한, 팔레트 예측자는 복수의 영역으로 나누어질 수 있다. 예를 들면, 팔레트 예측자는 각각 8개, 8개 및 16개 엔트리로 이루어진 3개의 그룹으로 나누어질 수 있다. 다른 영역에서는 팔레트 예측 플래그를 부호화하기 위해 다른 부호화 방법을 적용한다.
본 발명에서는 각각의 엔트리마다 하나의 팔레트 예측 플래그를 사용하는 대신에, 각각의 예측된 팔레트 엔트리 사이의 제로런이 부호화되어 전송되는 데이터를 줄인다. 제로런 i의 코드워드는 1인 다음 팔레트 재사용 플래그 전에 i개의 제로가 있음을 의미한다. 예를 들면, "0"은 다음의 하나의 팔레트가 재사용되는 것을 의미하고(즉, 현재 재사용 플래그와 다음 재사용 플래그 1 사이에 0이 없다), "1"은 제2의 다음 팔레트가 재사용되는 것을 의미한다. 12개의 팔레트를 가진 예시적인 팔레트 예측 테이블이 도 1에 도시되어 있다. 팔레트 예측자 지수 0, 2, 3, 5 및 8에 의해 표시된 팔레트 엔트리가 현재 CU에 의해 재사용되고, 대응하는 재사용 플래그는 1의 값을 갖는다. 팔레트 예측자 지수 1, 4, 6, 7, 9, 10 및 11에 의해 표시된 팔레트 엔트리는 현재 CU에 의해 재사용되지 않고, 대응하는 재사용 플래그는 0의 값을 갖는다. 예측된 팔레트 엔트리에 대한 재사용 플래그의 런렝스(즉, 제로런)은 도 1에 나타낸 바와 같이 {0, 1, 0, 1, 2, 3}이다.
이진화 방법은 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법 코드 + EG-K 코드일 수 있다. K는 0, 1, 2 또는 3일 수 있고, N은 0, 1, 2 또는 3일 수 있다. 도 1에는 예로서 EG-0 코드에 기초한 이진화가 도시되어 있다.
최종 사용된 팔레트를 시그널링하기 위해, 코드워드에 엔드 코드(EC)를 삽입하는 방법이 JCTVC-R0228(2014년 6월 30일부터 7월 9일까지 일본 삿포로에서 개최된 ITU-T SG 16 WP 3 및 ISO/IEC JTC 1/SC 29/WG 11의 영상 부호화에 대한 합동 협력팀(JCT-VC)의 18차 회의에서 세레진(Seregin) 등이 "비-SCCE3: 팔레트 예측자의 런렝스 부호화(Non-SCCE3: Run-length coding for palette predictor)"의 명칭으로 발표한 문서 JCTVC-R0228)에 개시되어 있다. 엔드 코드를 이용한 팔레트 예측의 예는 도 2에 도시되어 있고, 여기에서는 0의 값을 가진 후행(trailing) 재사용 플래그가 엔드 코드에 의해 표시된다(즉, 도 2에서 "최종").
본 발명의 일 실시형태에 따르면, EC 코드 값이 엔드 코드에 지정되고, 재사용 플래그의 각각의 런렝스(즉, 제로런)가 수정되어야 하는지를 결정하기 위해 런렝스 수정 처리가 수행된다. EC 코드 값 이상인 제로런은 각각의 런렝스 값을 1만큼 증가시킴으로써 수정될 것이다. 디코더 측에서, 만일 디코드된 제로런이 EC 코드 값과 동일한 런렝스 값을 가지면, 이것은 현재 CU에 대한 부호화 데이터의 끝이고 현재 CU에 대한 다른 예측된 팔레트 데이터가 없음을 의미한다. 만일 디코드된 제로런이 EC 코드 값보다 더 큰 런렝스 값을 가지면, 이것은 디코드된 제로런이 수정된 제로런이고 실제 런렝스 값은 1만큼 감소한 디코드된 런렝스 값이어야 한다는 것을 의미한다.
예를 들면, EC 코드 값은 1로 지정될 수 있다. 그 다음에, 도 2의 예에서 삽입 엔드 코드를 가진 런렝스는 도 3에 도시된 것처럼 {0, 2, 0, 2, 3, 1}로서 수정되어야 하고, 여기에서 각각의 수정된 런렝스는 굵은 숫자로 표시된다. 만일 EC 코드 값이 2로 설정되면, 도 2의 예에서 삽입 엔드 코드를 가진 런렝스는 {0, 1, 0, 1, 3, 2}로서 수정되어야 한다. 런렝스 수정 처리 후에, 각각의 런렝스(수정되었거나 수정되지 않은 것에 상관없이) 및 EC 코드 값은 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법 코드 + EG-K 코드를 이용하여 이진화될 수 있다. K와 N은 {0, 1, 2, 3}으로 이루어진 그룹으로부터 선택될 수 있다.
본 발명의 다른 실시형태는 제로런을 부호화하기 위해 적응 EC 부호화를 통합한다. EC 코드 값은 현재 부호화 단위에 관한 정보, 현재 부호화 단위의 부호화 파라미터, 미리 부호화된 정보 또는 이들의 임의 조합에 의존할 수 있다. 예를 들면, EC 부호화는 만일 CU 크기가 16 이하이면 EC 코드 값이 1로 설정되도록 CU 크기에 의존할 수 있다. 그렇지 않으면 EC 코드 값은 3으로 설정된다. 제로런의 이진화는 EG-0 코드에 따를 수 있다.
EC 코드 값은 이전의 예측 팔레트의 팔레트 예측자 지수에 또한 의존할 수 있다. 다시 말하면, EC 코드 값은 이전의 예측 팔레트 테이블의 엔트리 위치에 의존한다. 예를 들어서 만일 이전의 예측 팔레트의 팔레트 예측자 지수가 역치 이하이면, EC 값은 1의 값으로 설정된다. 만일 이전의 예측 팔레트의 팔레트 예측자 지수가 역치보다 더 크면, EC 코드 값은 다른 값으로 설정된다. 예를 들면, 역치는 16이고 EC 코드 값은 만일 팔레트 예측자 지수가 16 이하이면 3으로 설정된다. 그렇지 않으면 EC 코드 값은 1로 설정된다. 제로런의 이진화는 EG-0 코드에 따를 수 있다.
다른 예로서, 이전의 예측 팔레트의 팔레트 예측자 지수의 역치는 4이다. 도 4에 도시된 것처럼, 4 이하의 팔레트 예측자 지수에 대한 제로런은 {0, 1, 0, 1}이다. 모든 제로런이 EC 코드 값(즉, 3)보다 작기 때문에, 제로런을 수정할 필요는 없다. 역치(즉, 4)보다 더 큰 팔레트 예측자 지수에 대한 나머지 제로런은 {2, EC}이다. EC 코드 값은 팔레트 예측자 지수가 4보다 크기 때문에 이 영역에서 1로 설정된다. 그러므로 런렝스 값 2를 가진 제로런은 1만큼 증가되어야 한다. 따라서, 제로런은 도 4에 도시된 바와 같이 {0, 1, 0, 1, 3, 1}로 수정된다.
본 발명의 다른 실시형태에 있어서, 최종 예측된 팔레트의 부호화는 명시적 '엔딩 플래그'(ending_flag)의 시그널링에 대응한다. 예를 들면, 부호화된 제로런이 값 K와 같을 때, 'ending_flag'는 명시적으로 시그널링된다. 이것은 예측된 팔레트의 끝을 표시한다. K는 0, 1, 2, 3, 4, 5 또는 6과 같은 정수일 수 있다. 예를 들어서 만일 K가 2와 같고 EG-0 코드가 제로런의 이진화를 위해 사용되면, 도 1의 예에서 제로런의 수정된 집합은 도 5에 도시된 것처럼 {0, 1, 0, 1, 2+(0의 1 비트), 2+(1의 1 비트)}로 된다. 2와 동일한 런렝스를 가진 제로런에 대한 코드를 구별하기 위해, 추가의 비트가 2의 값을 가진 런렝스에 대한 이진 코드의 끝 및 도 5에서 밑줄 친 비트로 나타낸 'ending_flag'에 첨부된다.
파라미터 K는 CU 크기에 의존할 수 있다. 예를 들어서 만일 CU 크기가 16 이하이면, K는 2일 수 있다. 그렇지 않으면 K는 6일 수 있다. 제로런의 이진화는 EG-0 코드에 따를 수 있다.
파라미터 K는 이전 예측 팔레트의 지수에 또한 의존할 수 있다. 예를 들어서 만일 이전 예측 팔레트의 팔레트 예측자 지수가 16 이하이면, K는 2로 설정된다. 그렇지 않으면 K는 6으로 설정된다. 제로런의 이진화는 EG-0 코드에 따를 수 있다.
또 다른 실시형태에 있어서, 최종 예측된 팔레트 엔트리의 부호화는 최종 부호화된 팔레트 테이블로부터 재사용된 팔레트 엔트리의 수를 표시하는 구문 요소 '재사용 팔레트의 수'(num_of_reused_palette)의 시그널링에 대응한다. 'num_of_reused_palette'의 이진화는 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), N-비트 절단 일진법 코드 + EG-K 코드, 또는 절단 일진법 코드일 수 있다. 여기에서 K는 0, 1, 2 또는 3일 수 있고, N은 0, 1, 2 또는 3일 수 있다.
일 예가 도 6에 도시되어 있다. 5개의 예측된 팔레트 엔트리가 최종 부호화된 팔레트 테이블로부터 재사용된다. 5와 동일한 구문 'num_of_reused_palette'가 예측된 팔레트 엔트리의 수를 표시하기 위해 시그널링된다. 그 다음에, {0, 1, 0, 1, 2}에 대응하는 제로런이 구문 'num_of_reused_palette' 다음에 시그널링된다. 만일 'num_of_reused_palette'가 0과 같으면 제로런을 시그널링할 필요가 없다.
다른 실시형태에 있어서, 최종 예측된 팔레트 엔트리의 부호화는 M과 동일한 런렝스 값을 가진 제로런의 수에 대응하는 구문 'M인 제로런의 수'(num_of_zero_run_M)의 시그널링에 대응한다. M은 0, 1, 2, 3 또는 6과 같은 정수일 수 있다. 'num_of_zero_run_M'의 이진화는 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), N-비트 절단 일진법 코드 + EG-K 코드, 또는 절단 일진법 코드일 수 있다. 여기에서 K는 0, 1, 2 또는 3일 수 있고, N은 0, 1, 2 또는 3일 수 있다. 제로런의 엔드 코드는 M과 같다.
전술한 구문 'num_of_zero_run_M'을 사용하는 예는 도 7에 도시되어 있고, 여기에서 M은 1과 동일하며 1과 동일한 2개의 제로런이 있다(굵은 숫자로 표시됨). 따라서, 2와 동일한 'num_of_zero_run_M'이 먼저 부호화된다. 그 다음에 {0, 1, 0, 1, 2, 1}에 대응하는 제로런이 시그널링된다. 최종 코드워드 "1"은 엔드 코드이다.
디코더 측에서, 'num_of_zero_run_M'이 먼저 디코드되고, 그 다음에 제로런이 디코드된다. 만일 런렝스 값 M을 가진 디코드된 제로런의 수가 'num_of_zero_run_M'보다 더 크면 파싱 처리가 종료된다. 예를 들어서 만일 'num_of_zero_run_M'이 2와 같고 M이 1과 같으면, M과 동일한 제3 제로런이 디코드된 때 이것은 엔드 코드임을 표시한다. 그러므로 팔레트 예측의 파싱이 종료된다.
또 다른 실시형태에 있어서, 최종 예측된 팔레트 엔트리의 부호화는 M 이상인 제로런의 수에 대응하는 구문 'M 이상인 제로런의 수'(num_of_zero_run_equal_larger_M)의 시그널링에 대응하고, 여기에서 M은 0, 1, 2, 3 또는 6과 같은 정수이다. 'num_of_zero_run_equal_larger_M'의 이진화는 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), N-비트 절단 일진법 코드 + EG-K 코드, 또는 절단 일진법 코드일 수 있다. 여기에서 K는 0, 1, 2 또는 3일 수 있고, N은 0, 1, 2 또는 3일 수 있다. 제로런의 엔드 코드는 M과 같다.
전술한 구문 'num_of_zero_run_equal_larger_M'을 사용하는 예는 도 8에 도시되어 있고, 여기에서 M은 1이며 1 이상인 3개의 제로런이 있다(굵은 숫자로 표시됨). 3과 동일한 구문 'num_of_zero_run_equal_larger_M'이 먼저 시그널링된다. 그 다음에 {0, 1, 0, 1, 2, 1}에 대응하는 제로런이 시그널링된다. 최종 코드워드 "1"은 엔드 코드이다.
디코더 측에서, 'num_of_zero_run_equal_larger_M'이 먼저 디코드되고, 그 다음에 제로런이 디코드된다. 디코더는 M 이상인 제로런의 수를 카운트할 것이다. 만일 M 이상인 디코드된 제로런 값의 수가 'num_of_zero_run_equal_larger_M'보다 더 크면 파싱 처리가 종료된다. 예를 들어서 만일 'num_of_zero_run_equal_larger_M'이 3과 같고 제4의 디코드된 제로런이 1 이상이면, 이것은 엔드 코드를 표시한다. 팔레트 예측의 파싱이 종료된다.
팔레트 예측 부호화에 관한 다른 양태들이 또한 이 명세서에서 개시된다.
지수 맵을 위한 영역 기반 BWT
샘플 값을 주요 색으로 양자화한 후에, 지수 맵(index map)이 하나 이상의 선택된 변환에 의해 처리될 수 있다. CU는 복수의 영역(예를 들면, 라인)으로 나누어질 수 있고, 각 영역 내의 샘플 지수들은 미리 규정된 방법에 의해 재정리되고 변환에 의해 처리될 수 있다. 예를 들면, 변환은 데이터 압축용으로 업계에 알려진 버로우즈-휠러 변환(Burrows-Wheeler transform, BWT)일 수 있다. 예를 들면, 인코더 측에서, CU는 복수의 라인으로 나누어질 수 있다. 각 라인 내의 지수들은 순방향 BWT에 의해 재정리될 수 있다. 재정리된 지수들은 최초 지수 맵 부호화에 의해 처리될 수 있다. 디코더 측에서는 지수들이 먼저 디코드되고 재구성된다. 그 다음에, 상기 재구성된 지수들이 역방향 BWT에 의해 재정리되어 최종 샘플 지수를 얻는다.
지수 맵을 위한 영역 기반 런 부호화
CU의 지수 맵은 복수의 영역(예를 들면, 라인)으로 나누어질 수 있다. 각 영역 내에서, JCTVC-O0218에 설명되어 있는 런 기반 부호화가 적용될 수 있다. 각 영역 내의 샘플의 수가 제한되기 때문에, 런의 최대 수가 결정될 수 있다. 런의 코드워드는 절단 이진법, 절단 일진법 및 절단 EG 코드와 같은 절단 코드워드를 이용할 수 있다. 런의 최대수에 따라서, 만일 빈(bin)이 추론될 수 있으면 런 코드워드의 빈은 생략될(skipped) 수 있다.
예측 모드 후의 이스케이프 플래그
JCTVC-O0218에서, 이스케이프 샘플 지수가 명시적 이스케이프 플래그에 의해 시그널링된다. 이스케이프 플래그는 예측 모드(즉, 런 모드 또는 카피 어보브 모드) 구문 전에 시그널링된다. 본 발명의 실시형태는 이 플래그를 예측 모드 구문 뒤의 위치에 재배치한다. 따라서, 이스케이프 플래그는 예측 모드가 런 모드일 때에만 시그널링된다.
예측 모드 전의 런
JCTVC-O0218에서, 런 코드워드는 예측 모드 후에 시그널링된다. 그러나 예측 모드의 확률은 팔레트 런 값에 의존할 수 있다. 그러므로 본 발명에 따른 실시형태는 예측 모드 전에 런 코드워드를 시그널링한다.
숏컷
JCTVC-O0218에 설명되어 있는 런 기반 지수 맵 부호화에 대한 대안예로서, 팔레트 런 코드워드에 대한 일부 숏컷(short cut)이 본 발명의 실시형태에 따라 개시된다. 일 실시형태에 있어서, 팔레트 지수 맵 부호화에서 CU 폭과 동일한 런의 숏컷이 추가될 수 있다. 라인의 수에 대한 구문 요소는 동일한 예측 모드를 이용하는 라인의 수를 표시하기 위해 이 런 숏컷 뒤에 추가될 수 있다. 다른 숏컷은 라인의 끝까지의 샘플의 수와 동일한 런 번호에 대응한다.
숏컷의 다른 예로서, 현재 위치 더하기 런이 현재 라인 폭보다 더 크면(또는 동일하면), 동일한 예측 모드를 이용하는 라인의 수를 표시하기 위해 추가의 구문이 시그널링된다. 런 숏컷의 또 다른 예로서, 런이 라인 폭보다 더 크면(또는 동일하면), 동일한 예측 모드를 이용하는 라인의 수를 표시하기 위해 추가의 구문이 시그널링된다.
수평 모드에 대한 지수 빼기 1
JCTVC-N0247에 설명되어 있는 라인 샘플 기반 지수 맵에 있어서, 수평 라인 모드는 라인 내의 모든 샘플들이 동일한 지수를 공유하는 것을 표시하기 위해 사용된다. 지수는 수평 라인 모드에 대하여 시그널링된다. 그러나 수평 라인 모드에서 지수는 이스케이프 지수가 될 수 없다. 그러므로 본 발명의 실시형태에 따르면, 이스케이프 지수는 지수 부호화로부터 제거된다. 시그널링을 위한 지수의 수는 1만큼 감소될 수 있다.
팔레트 모드 플래그를 위한 콘텍스트 형성
팔레트 모드 부호화에서는 다른 모드 또는 구성을 표시하기 위해 사용되는 몇 가지 플래그가 있다. 예를 들면, '팔레트 모드 플래그'(palette_mode_flag)를 이용하여 CU가 팔레트 모드를 이용하는지 표시하고; '팔레트 스캔 플래그'(palette_scan_flag)를 이용하여 지수 스캔이 수직 스캔인지 수평 스캔인지 표시하며; '팔레트 공유 플래그'(palette_share_flag)를 이용하여 최종 부호화된 모든 팔레트 엔트리가 현재 CU에 대하여 재사용되는지 표시한다. 이러한 플래그에 대하여, 콘텍스트 형성은 임의의 이웃 정보 없이 하나의 콘텍스트만을 이용하거나 이웃 정보와 함께 복수의 콘텍스트를 이용할 수 있다. 예를 들면, '팔레트 모드 플래그'는 2개의 콘텍스트를 이용할 수 있다. 콘텍스트 지수는 좌측 CU가 팔레트 모드에서 부호화되는지 여부에 의존한다.
이러한 플래그의 콘텍스트 정보는 CU 깊이와 같은 현재 CU 정보에 의존할 수 있다. 예를 들면, 콘텍스트 지수는 max(2, CU_depth) 또는 max(2, max_CU_depth - CU_depth)일 수 있다.
절단 이진법(TB) 코드의 최초 빈에 대한 콘텍스트 부호화 빈
절단 이진법은 색지수 값(샘플 값) 및 색지수 부호화를 위해 사용될 수 있다. 본 발명의 실시형태에 따르면, 콘텍스트 부호화는 색지수 값 및/또는 색지수의 최초 빈(즉, 최상위 빈(MSB 빈))에 적용된다.
쿼터-TB 코드
본 발명의 다른 실시형태는 색지수 값 및 색지수 부호화에 대하여 쿼터(quarter) 절단 이진법 이진화 방법을 이용한다. 예를 들면, 지수는 3개의 영역으로 나누어질 수 있다. 제1 영역은 [0, (N>>2)-1]에 지수들을 내포하고, 여기에서 N은 지수의 총 수이고 ">>"은 우측 시프트 동작을 표시한다. 제1 영역의 크기는 N>>2이다. 제1 영역 내 지수들의 코드워드는 "1"+TB(index, N>>2)이고, 여기에서 TB(x,y)는 x와 동일한 입력 및 y와 동일한 크기에 의한 절단 이진법 이진화에 따른 이진화 결과이다.
제2 영역은 [(N>>2), (N>>1)-1]에 지수들을 내포한다. 제2 영역의 크기는 (N>>1)-(N>>2)이다. 제2 영역 내 지수들의 코드워드는 "01" + TB(index-(N>>2), (N>>1)-(N>>2))이다.
제3 영역은 [(N>>1), N-1]에 지수들을 내포한다. 제3 영역의 크기는 N - (N>>1)이다. 제3 영역 내 지수들의 코드워드는 "00" + TB(index-(N>>1), N-(N>>1))이다.
코드워드 선택
색지수 값 및/또는 색지수 부호화에 대한 또다른 실시형태에 있어서, 복수의 이진화 방법이 사용된다. 색지수 값 및/또는 색지수 부호화에 대한 이진화 방법을 표시하기 위해 '코드워드 모드'(codeword_mode) 구문이 시그널링될 수 있다.
도 9는 본 발명의 실시형태에 따른 팔레트 예측을 통합한 영상 부호화 시스템의 예시적인 흐름도이다. 시스템은 단계 910에 나타낸 것처럼 현재 부호화 단위의 현재 팔레트 테이블과 연관된 입력 데이터를 수신한다. 입력 데이터는 메모리(예를 들면, 컴퓨터 메모리, 버퍼(RAM 또는 DRAM) 또는 다른 매체)로부터 또는 프로세서로부터 검색될 수 있다. 팔레트 예측자 테이블이 단계 920에서 식별된다. 현재 팔레트 테이블의 개별적인 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되는지를 표시하기 위한 재사용 플래그가 단계 930에서 결정된다. 재사용 플래그는 만일 현재 팔레트 테이블의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되지 않으면 제1 값이 지정된다. 재사용 플래그는 만일 현재 팔레트 테이블의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되면 제2 값이 지정된다. 현재 팔레트 테이블의 정보는 단계 940에서 현재 부호화 단위에 대한 제1 값을 가진 재사용 플래그의 런렝스에 따라 시그널링된다. 각각의 런렝스는 제2 값을 가진 2개의 이웃하는 재사용 플래그 사이의 제1 값을 가진 다수의 제로 이상의 연속적인 재사용 플래그로서, 또는 제1 값을 가진 현재 블록의 제로 이상의 선행(leading) 재사용 플래그로서 또는 제1 값을 가진 현재 블록의 제로 이상의 후행(trailing) 재사용 플래그로서 카운트된다.
도 10은 본 발명의 실시형태에 따른 팔레트 예측을 통합한 영상 디코딩 시스템의 예시적인 흐름도이다. 시스템은 단계 1010에 나타낸 것처럼 현재 부호화 단위와 연관된 압축 데이터를 포함한 영상 비트스트림을 수신한다. 영상 비트스트림은 메모리(예를 들면, 컴퓨터 메모리, 버퍼(RAM 또는 DRAM) 또는 다른 매체)로부터 또는 프로세서로부터 검색될 수 있다. 팔레트 예측자 테이블이 단계 1020에서 식별된다. 제1 값을 가진 재사용 플래그의 런렝스가 단계 1030에서 영상 비트스트림으로부터 결정되고, 이때 각각의 런렝스는 제2 값을 가진 2개의 이웃하는 재사용 플래그 사이의 제1 값을 가진 제1 수의 제로 이상의 연속적인 재사용 플래그로서, 또는 제1 값을 가진 현재 부호화 단위의 제로 이상의 선행 재사용 플래그로서 또는 제1 값을 가진 현재 부호화 단위의 제로 이상의 후행 재사용 플래그로서 카운트된다. 현재 부호화 단위의 현재 팔레트 테이블에 대한 재사용 플래그는 단계 1040에서 재사용 플래그의 런렝스에 기초하여 결정되고, 이때 재사용 플래그는 현재 팔레트 테이블의 개별적인 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되는지를 표시한다. 재사용 플래그는 만일 현재 팔레트 테이블의 하나의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되지 않으면 제1 값이 지정된다. 재사용 플래그는 만일 현재 팔레트 테이블의 대응하는 현재 팔레트 값이 팔레트 예측자 테이블에서 사용되면 제2 값이 지정된다. 현재 팔레트 테이블은 그 다음에 단계 1050에서 재사용 플래그 및 팔레트 예측자 테이블에 기초하여 재구성된다.
도시된 흐름도는 본 발명에 따른 팔레트 예측 부호화의 예를 설명하기 위한 것으로 의도된다. 당업자라면 본 발명의 정신으로부터 벗어나지 않고 본 발명을 실시하기 위해 각 단계를 수정하거나, 단계들을 재배열하거나, 단계를 분할하거나 또는 단계들을 결합할 수 있다. 본 명세서에서 특정 구문 및 어의론은 본 발명의 실시형태를 구현하는 예를 설명하기 위해 사용되었다. 당업자라면 본 발명의 정신으로부터 벗어나지 않고 상기 구문 및 어의론을 등가적인 구문 및 어의론으로 대체하여 본 발명을 실시할 수 있다.
전술한 설명은 당업자가 특정 응용 및 그 필요조건과 관련하여 제공된 대로 본 발명을 실시할 수 있게 하기 위해 제시된다. 당업자에게는 설명한 실시형태에 대한 각종 수정이 명백할 것이고, 여기에서 규정된 일반 원리는 다른 실시형태에 적용될 수 있다. 그러므로 본 발명은 도시되고 설명된 특정 실시형태로 제한되지 않고, 여기에서 개시된 원리 및 신규 특징과 일치하는 최광의의 범위로 고려되어야 한다. 전술한 상세한 설명에서, 본 발명의 완전한 이해를 제공하기 위해 각종의 특정 세부들이 설명되었다. 그러나 당업자라면 그러한 세부 없이 본 발명이 실시될 수 있다는 것을 이해할 것이다.
전술한 본 발명의 실시형태는 각종 하드웨어, 소프트웨어 코드 또는 이들의 조합으로 구현될 수 있다. 예를 들면, 본 발명의 실시형태는 여기에서 설명한 처리를 수행하도록 영상 압축 칩에 집적된 하나 이상의 회로 또는 영상 압축 소프트웨어에 통합된 프로그램 코드일 수 있다. 본 발명의 실시형태는 또한 여기에서 설명한 처리를 수행하도록 디지털 신호 프로세서(Digital Signal Processor; DSP)에서 실행되는 프로그램 코드일 수 있다. 본 발명은 컴퓨터 프로세서, 디지털 신호 프로세서, 마이크로프로세서 또는 현장 프로그램가능 게이트 어레이(FPGA)에 의해 수행되는 다수의 기능을 또한 수반할 수 있다. 이러한 프로세서들은 본 발명에 의해 구현되는 특수 방법들을 규정하는 기계 판독가능 소프트웨어 코드 또는 펌웨어 코드를 실행함으로써, 본 발명에 따른 특정 태스크를 수행하도록 구성될 수 있다. 상기 소프트웨어 코드 또는 펌웨어 코드는 상이한 프로그래밍 언어 및 상이한 포맷 또는 스타일로 개발될 수 있다. 상기 소프트웨어 코드는 다른 타겟 플랫폼용으로 또한 컴파일될 수 있다. 그러나 소프트웨어 코드의 다른 코드 포맷, 스타일 및 언어, 및 본 발명에 따른 태스크를 수행하도록 코드를 구성하는 다른 수단은 본 발명의 정신 및 범위로부터 벗어나지 않을 것이다.
본 발명은 그 정신 또는 본질적 특성으로부터 벗어나지 않고 다른 특정 형태로 구현될 수 있다. 전술한 예들은 모든 점에서 예시하는 것이지 제한하는 것이 아닌 것으로 생각하여야 한다. 그러므로 본 발명의 범위는 전술한 상세한 설명보다는 첨부된 특허 청구범위에 의해 규정된다. 특허 청구범위의 균등물의 의미 및 범위 내에 있는 모든 변화들은 본 발명의 범위 내에 포함되어야 한다.

Claims (37)

  1. 복수의 부호화 단위(coding unit; CU)들로 나누어지는 화상을 위한 팔레트 부호화 방법에 있어서,
    현재 부호화 단위에 대한 현재 팔레트 테이블과 연관된 입력 데이터를 수신하는 단계;
    팔레트 예측자 테이블을 식별하는 단계;
    상기 팔레트 예측자 테이블 내의 개별적인 팔레트 값이 상기 현재 팔레트 테이블에서 사용되는지 여부를 표시하기 위한 재사용 플래그를 결정하는 단계로서, 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되지 않으면, 제1 값이 지정되고, 상기 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 상기 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되면, 제2 값이 지정되는 것인, 상기 결정하는 단계;
    상기 현재 부호화 단위에 대한 상기 제1 값을 가진 상기 재사용 플래그의 런렝스(run-length)에 따라 상기 현재 팔레트 테이블의 정보를 시그널링하는 단계로서, 각각의 런렝스는, 상기 제2 값을 가진 2개의 이웃하는 재사용 플래그들 사이의 상기 제1 값을 가진 제로 이상의 연속적인 재사용 플래그의, 또는 상기 제1 값을 가진 현재 블록의 제로 이상의 선행(leading) 재사용 플래그의, 또는 상기 제1 값을 가진 상기 현재 블록의 제로 이상의 후행(trailing) 재사용 플래그의 제1 수로서 카운트되는 것인, 상기 시그널링하는 단계
    를 포함한, 팔레트 부호화 방법.
  2. 제1항에 있어서, 상기 제1 값은 "0"에 대응하고, 상기 제2 값은 "1"에 대응한 것인, 팔레트 부호화 방법.
  3. 제1항에 있어서, 상기 런렝스는 오더-K를 가진 지수 골롬(Exponential-Golomb) 코드(EG-K 코드), 오더-K를 가진 절단(truncated) 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법 코드 + EG-K 코드를 사용하여 이진화되는 것인, 팔레트 부호화 방법.
  4. 제1항에 있어서, 현재 재사용 플래그 후의 하나 이상의 나머지 재사용 플래그 중 어느 것도 제2 값을 갖지 않음을 표시하기 위해 엔드 코드(end-code; EC)가 사용되는 것인, 팔레트 부호화 방법.
  5. 제4항에 있어서, 상기 엔드 코드에 EC 코드 값이 지정되고, 상기 EC 코드 값 이상인 런렝스 값을 가진 임의의 런렝스가, 수정(modified) 런렝스를 형성하기 위해 1만큼 증가되는 것인, 팔레트 부호화 방법.
  6. 제5항에 있어서, 상기 EC 코드 값은, 부호화 단위 크기, 이전에 예측된 팔레트의 팔레트 지수, 또는 이들 둘 다에 응답해서 상기 엔드 코드에 적응적으로 지정되는 것인, 팔레트 부호화 방법.
  7. 제5항에 있어서, 상기 런렝스 및 상기 EC 코드 값은, 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법 코드 + EG-K 코드를 사용하여 이진화되고, 상기 런렝스는, 하나 이상의 비수정 런렝스 및 하나 이상의 수정 런렝스 중 하나 이상으로 구성된 것인, 팔레트 부호화 방법.
  8. 제1항에 있어서, 상기 현재 팔레트 테이블의 정보를 시그널링하는 단계가 완료되었는지 여부를 표시하기 위해 명시적 'ending_flag'가 사용되는 것인, 팔레트 부호화 방법.
  9. 제1항에 있어서, 상기 현재 부호화 단위의 재사용 플래그에 대한 M 값 런렝스 또는 M 이상 값 런렝스의 제2 수를 각각 표시하기 위해, 구문 'num_of_zero_run_M' 또는 구문 'num_of_zero_run_equal_larger_M'이 시그널링되고, 각각의 M 값 런렝스는 M과 동일한 제1 런렝스 값을 갖거나, 각각의 M 이상 값 런렝스는 M 이상인 제2 런렝스 값을 가지며, M은 정수인 것인, 팔레트 부호화 방법.
  10. 복수의 부호화 단위(coding unit; CU)들로 나누어지는 화상을 위한 팔레트 디코딩 방법에 있어서,
    현재 부호화 단위와 연관된 압축 데이터를 포함한 영상 비트스트림을 수신하는 단계;
    팔레트 예측자 테이블을 식별하는 단계;
    제1 값을 가진 재사용 플래그의 런렝스를 상기 영상 비트스트림으로부터 결정하는 단계로서, 각각의 런렝스는 제2 값을 가진 2개의 이웃하는 재사용 플래그들 사이의 상기 제1 값을 가진 제로 이상의 연속적인 재사용 플래그의, 또는 상기 제1 값을 가진 상기 현재 부호화 단위에 대한 제로 이상의 선행 재사용 플래그의, 또는 상기 제1 값을 가진 현재 부호화 단위에 대한 제로 이상의 후행 재사용 플래그의 제1 수로서 카운트되는 것인, 상기 결정하는 단계;
    상기 현재 부호화 단위의 현재 팔레트 테이블에 대한 재사용 플래그를 상기 재사용 플래그의 런렝스에 기초하여 도출하는 단계로서, 상기 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 개별적인 팔레트 값이 상기 현재 팔레트 테이블에서 사용되는지 여부를 표시하고, 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되지 않으면, 상기 제1 값이 지정되고, 상기 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 상기 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되면, 상기 제2 값이 지정되는 것인, 상기 도출하는 단계; 및
    상기 재사용 플래그 및 상기 팔레트 예측자 테이블에 기초하여 상기 현재 팔레트 테이블을 재구성하는 단계
    를 포함한, 팔레트 디코딩 방법.
  11. 제10항에 있어서, 상기 제1 값은 "0"에 대응하고, 상기 제2 값은 "1"에 대응하는 것인, 팔레트 디코딩 방법.
  12. 제10항에 있어서, 상기 런렝스는 오더-K를 가진 지수 골롬(Exponential-Golomb) 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법 코드 + EG-K 코드를 사용하여 이진화되는 것인, 팔레트 디코딩 방법.
  13. 제12항에 있어서, K는 {0, 1, 2, 3}으로 이루어진 제1 그룹으로부터 선택되고, N은 {0, 1, 2, 3}으로 이루어진 제2 그룹으로부터 선택되는 것인, 팔레트 디코딩 방법.
  14. 제10항에 있어서, 현재 재사용 플래그 후의 하나 이상의 나머지 재사용 플래그 중 어느 것도 제2 값을 갖지 않음을 표시하기 위해, 엔드 코드(end-code; EC)가 사용되고, 상기 엔드 코드에 EC 코드 값이 지정되며, 상기 EC 코드 값 이상인 런렝스 값을 가진 임의의 런렝스가, 수정 런렝스를 형성하기 위해 1만큼 증가되는 것인, 팔레트 디코딩 방법.
  15. 제14항에 있어서, 디코드된 런렝스가 상기 EC 코드 값과 동일한 런렝스 값을 갖는 경우, 상기 현재 부호화 단위에 대한 상기 영상 비트스트림의 파싱이 종료되는 것인, 팔레트 디코딩 방법.
  16. 제14항에 있어서, 디코드된 런렝스가 상기 EC 코드 값보다 더 큰 런렝스 값을 갖는 경우, 상기 디코드된 런렝스에 대한 런렝스 값이 1만큼 감소되는 것인, 팔레트 디코딩 방법.
  17. 제14항에 있어서, 상기 EC 코드 값은, 상기 현재 부호화 단위와 관련된 정보, 상기 현재 부호화 단위의 부호화 파라미터, 이전에 부호화된 정보, 또는 이들의 임의 조합에 응답해서 상기 엔드 코드에 적응적으로 지정되는 것인, 팔레트 디코딩 방법.
  18. 제17항에 있어서, 상기 EC 코드 값은, 부호화 단위 크기, 이전에 예측된 팔레트의 팔레트 지수, 또는 이들 둘 다에 응답해서 상기 엔드 코드에 적응적으로 지정되는 것인, 팔레트 디코딩 방법.
  19. 제14항에 있어서, 상기 런렝스 및 상기 EC 코드 값은, 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), 또는 N-비트 절단 일진법 코드 + EG-K 코드를 사용하여 이진화되고, 상기 런렝스는, 하나 이상의 비수정(non-modified) 런렝스 및 하나 이상의 수정 런렝스 중 하나 이상으로 구성된 것인, 팔레트 디코딩 방법.
  20. 제10항에 있어서, 상기 현재 부호화 단위와 연관된 상기 압축 데이터의 끝을 표시하기 위해 명시적 'ending_flag'가 사용되는 것인, 팔레트 디코딩 방법.
  21. 제20항에 있어서, 상기 재사용 플래그의 런렝스 중 하나에 대한 런렝스 코드 값이 상기 'ending_flag'로서 지정되고, 상기 런렝스 코드 값은 {0, 1, 2, 3, 4, 5, 6}으로 이루어진 그룹으로부터 선택되는 것인, 팔레트 디코딩 방법.
  22. 제10항에 있어서, 상기 현재 부호화 단위의 재사용 플래그에 대한 M 값 런렝스 또는 M 이상 값 런렝스의 제2 수를 각각 표시하기 위해, 구문 'num_of_zero_run_M' 또는 구문 'num_of_zero_run_equal_larger_M'이 시그널링되고, 각각의 M 값 런렝스는 M과 동일한 제1 런렝스 값을 갖거나, 각각의 M 이상 값 런렝스는 M 이상인 제2 런렝스 값을 가지며, M은 정수인 것인, 팔레트 디코딩 방법.
  23. 제22항에 있어서, M은 {0, 1, 2, 3, 6}으로 이루어진 제1 그룹으로부터 선택되는 것인, 팔레트 디코딩 방법.
  24. 제22항에 있어서, 상기 구문 'num_of_zero_run_M' 또는 상기 구문 'num_of_zero_run_equal_larger_M'은, 오더-K를 가진 지수 골롬 코드(EG-K 코드), 오더-K를 가진 절단 지수 골롬 코드(절단 EG-K 코드), N-비트 절단 일진법 코드 + EG-K 코드, 또는 절단 일진법 코드를 사용하여 이진화되는 것인, 팔레트 디코딩 방법.
  25. 제24항에 있어서, K는 {0, 1, 2, 3}으로 이루어진 제1 그룹으로부터 선택되고, N은 {0, 1, 2, 3}으로 이루어진 제2 그룹으로부터 선택되는 것인, 팔레트 디코딩 방법.
  26. 제22항에 있어서, 상기 구문 'num_of_zero_run_M' 또는 상기 구문 'num_of_zero_run_equal_larger_M'은 상기 현재 부호화 단위에 대한 런렝스 전에 디코드되는 것인, 팔레트 디코딩 방법.
  27. 제22항에 있어서, M과 동일한 제3 런렝스 값을 가진 디코드된 런렝스의 제3 수가 상기 구문 'num_of_zero_run_M'보다 더 크거나, M 이상인 제4 런렝스 값을 가진 디코드된 런렝스의 제4 수가 상기 구문 'num_of_zero_run_equal_larger_M'보다 더 큰 경우, 상기 현재 부호화 단위에 대한 상기 영상 비트스트림의 파싱이 종료되는 것인, 팔레트 디코딩 방법.
  28. 복수의 부호화 단위(coding unit; CU)들로 나누어지는 화상을 영상 부호화 시스템에서 팔레트 인코딩하는 장치에 있어서,
    하나 이상의 전자 회로를 포함하고,
    상기 하나 이상의 전자 회로는,
    현재 부호화 단위와 연관된 입력 데이터를 수신하고;
    상기 현재 부호화 단위의 픽셀 값에 기초하여 현재 팔레트 테이블을 결정하고;
    팔레트 예측자 테이블을 식별하고;
    상기 팔레트 예측자 테이블 내의 개별적인 팔레트 값이 상기 현재 팔레트 테이블에서 사용되는지 여부를 표시하기 위한 재사용 플래그를 결정하고 - 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되지 않으면, 제1 값이 지정되고, 상기 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 상기 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되면, 제2 값이 지정됨 -;
    상기 현재 부호화 단위에 대한 상기 제1 값을 가진 상기 재사용 플래그의 런렝스에 따라 상기 현재 팔레트 테이블의 정보를 시그널링하도록 - 각각의 런렝스는, 상기 제2 값을 가진 2개의 이웃하는 재사용 플래그들 사이의 상기 제1 값을 가진 제로 이상의 연속적인 재사용 플래그의, 또는 상기 제1 값을 가진 현재 블록의 제로 이상의 선행 재사용 플래그의, 또는 상기 제1 값을 가진 상기 현재 블록의 제로 이상의 후행 재사용 플래그의 제1 수로서 카운트됨 -
    구성된 것인, 팔레트 인코딩하는 장치.
  29. 복수의 부호화 단위(coding unit; CU)들로 나누어지는 화상을 팔레트 디코딩 하는 장치에 있어서,
    하나 이상의 전자 회로를 포함하고,
    상기 하나 이상의 전자 회로는,
    현재 부호화 단위와 연관된 압축 데이터를 포함한 영상 비트스트림을 수신하고;
    팔레트 예측자 테이블을 식별하고;
    제1 값을 가진 재사용 플래그의 런렝스를 상기 영상 비트스트림으로부터 결정하고 - 각각의 런렝스는, 제2 값을 가진 2개의 이웃하는 재사용 플래그들 사이의 상기 제1 값을 가진 제로 이상의 연속적인 재사용 플래그의, 또는 상기 제1 값을 가진 상기 현재 부호화 단위에 대한 제로 이상의 선행 재사용 플래그의, 또는 상기 제1 값을 가진 상기 현재 부호화 단위에 대한 제로 이상의 후행 재사용 플래그의 제1 수로서 카운트됨 -;
    상기 현재 부호화 단위의 현재 팔레트 테이블에 대한 상기 재사용 플래그를, 상기 재사용 플래그의 런렝스에 기초하여 도출하고 - 상기 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 개별적인 팔레트 값이 상기 현재 팔레트 테이블에서 사용되는지 여부를 표시하고, 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되지 않으면, 상기 제1 값이 지정되고, 상기 하나의 재사용 플래그는, 상기 팔레트 예측자 테이블 내의 상기 하나의 대응하는 팔레트 값이 상기 현재 팔레트 테이블에서 사용되면, 상기 제2 값이 지정됨 -;
    상기 재사용 플래그 및 상기 팔레트 예측자 테이블에 기초하여 상기 현재 팔레트 테이블을 재구성하도록
    구성된 것인, 팔레트 디코딩하는 장치.
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
KR1020167035711A 2014-05-23 2015-05-22 팔레트 테이블 예측 및 시그널링을 위한 방법과 장치 KR101982829B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462002221P 2014-05-23 2014-05-23
US62/002,221 2014-05-23
US201462040020P 2014-08-21 2014-08-21
US62/040,020 2014-08-21
PCT/CN2015/079566 WO2015176683A1 (en) 2014-05-23 2015-05-22 Method and apparatus for palette table prediction and signaling

Publications (2)

Publication Number Publication Date
KR20170007461A KR20170007461A (ko) 2017-01-18
KR101982829B1 true KR101982829B1 (ko) 2019-05-28

Family

ID=54553449

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167035711A KR101982829B1 (ko) 2014-05-23 2015-05-22 팔레트 테이블 예측 및 시그널링을 위한 방법과 장치

Country Status (6)

Country Link
US (1) US9860548B2 (ko)
EP (1) EP3135036B1 (ko)
JP (1) JP6310152B2 (ko)
KR (1) KR101982829B1 (ko)
CN (1) CN106464912B (ko)
WO (1) WO2015176683A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10237557B2 (en) * 2014-06-20 2019-03-19 Hfi Innovation Inc. Method of run-length coding for palette predictor
KR101943770B1 (ko) * 2014-06-20 2019-01-29 에이치에프아이 이노베이션 인크. 영상 부호화를 위한 팔레트 예측자 신호 방법
WO2016057444A2 (en) * 2014-10-06 2016-04-14 Vid Scale, Inc. Improved palette coding for screen content coding
US9986248B2 (en) * 2015-01-29 2018-05-29 Qualcomm Incorporated Palette mode coding for video coding
US10425659B2 (en) 2015-01-30 2019-09-24 Qualcomm Incorporated Coding escape pixels for palette coding
CN107211149A (zh) * 2015-02-05 2017-09-26 联发科技股份有限公司 调色板语法的解码操作装置与方法
US11259047B2 (en) 2016-04-06 2022-02-22 Kt Corporation Method and apparatus for processing video signal
CN110290391B (zh) * 2019-07-19 2021-09-17 苏州浪潮智能科技有限公司 一种指数哥伦布码解码方法、***及电子设备和存储介质
US20220295046A1 (en) * 2019-08-30 2022-09-15 Kt Corporation Method and device for processing video signal
US11451801B2 (en) * 2019-12-26 2022-09-20 Alibaba Group Holding Limited Methods for coding video data in palette mode
CN115211118A (zh) * 2019-12-31 2022-10-18 抖音视界有限公司 用于视频编解码的基于聚类的调色板模式
WO2021187946A1 (ko) * 2020-03-19 2021-09-23 엘지전자 주식회사 팔레트 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0946630A (ja) * 1995-07-28 1997-02-14 Matsushita Electric Ind Co Ltd 画像情報記録装置及び画像情報再生装置及び光ディスク
US7792828B2 (en) * 2003-06-25 2010-09-07 Jericho Systems Corporation Method and system for selecting content items to be presented to a viewer
US7769819B2 (en) * 2005-04-20 2010-08-03 Videoegg, Inc. Video editing with timeline representations
JP5036844B2 (ja) * 2010-04-15 2012-09-26 シャープ株式会社 画像圧縮装置、画像出力装置、画像読取装置、画像圧縮方法、コンピュータプログラム及び記録媒体
US8483500B2 (en) * 2010-09-02 2013-07-09 Sony Corporation Run length coding with context model for image compression using sparse dictionaries
CN103098466B (zh) * 2010-09-13 2016-08-17 索尼电脑娱乐公司 图像处理装置和图像处理方法
KR101425772B1 (ko) * 2010-11-23 2014-08-06 엘지전자 주식회사 영상 부호화 및 복호화 방법과 이를 이용한 장치
US9106918B2 (en) * 2012-01-20 2015-08-11 Sony Corporation Coefficient coding harmonization in HEVC
CN102447907A (zh) 2012-01-31 2012-05-09 北京工业大学 一种针对hevc的视频序列的编码方法
CN102740078B (zh) 2012-07-12 2014-10-22 北方工业大学 基于hevc标准的自适应空间可伸缩编码
CN103297781B (zh) 2013-06-07 2016-02-17 安科智慧城市技术(中国)有限公司 一种基于纹理方向的hevc帧内编码方法、装置和***
CN103763570B (zh) * 2014-01-20 2017-02-01 华侨大学 一种基于satd的hevc快速帧内预测方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
C. Gisquet, et al., ‘AhG10: palette predictor stuffing’, (JCTVC-Q0063), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 17th Meeting: Valencia, ES, 17 March 2014
Liwei Guo, et al., ‘RCE3: Results of Test 3.1 on Palette Mode for Screen Content Coding’, (JCTVC-N0247), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 14th Meeting: Vienna, AT, 15 July 2013
M. Karczewicz, et al., "SCCE3: Test A.8 - Improvements on Palette Prediction Vector Signaling", (JCTVC-R0063), 18th Meeting: Sapporo, JP, 30 June - 9 July 2014
Vadim Seregin, et al., ‘Non-SCCE3: Run-length coding for palette predictor’, (JCTVC-R0228), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 18th Meeting: Sapporo, JP, 21 June 2014

Also Published As

Publication number Publication date
CN106464912A (zh) 2017-02-22
WO2015176683A1 (en) 2015-11-26
EP3135036A1 (en) 2017-03-01
CN106464912B (zh) 2019-06-21
KR20170007461A (ko) 2017-01-18
EP3135036A4 (en) 2017-06-28
US9860548B2 (en) 2018-01-02
US20170111651A1 (en) 2017-04-20
EP3135036B1 (en) 2021-07-07
JP2017519467A (ja) 2017-07-13
JP6310152B2 (ja) 2018-04-11

Similar Documents

Publication Publication Date Title
KR101982829B1 (ko) 팔레트 테이블 예측 및 시그널링을 위한 방법과 장치
US11082695B2 (en) Method and apparatus of binarization and context-adaptive coding for syntax in video coding
US10506234B2 (en) Method of run-length coding for palette predictor
EP3087742B1 (en) Method and apparatus for syntax redundancy removal in palette coding
KR101962458B1 (ko) 인덱스 맵 부호화의 예측자로서 이스케이프 픽셀을 취급하는 방법
KR101882607B1 (ko) 팔레트 크기 시그널링 및 조건적 팔레트 이스케이프 플래그 시그널링 방법
US20180152714A1 (en) Methods for Palette Coding of Image and Video Data
CN108141621B (zh) 编解码视频数据的方法及装置
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
E701 Decision to grant or registration of patent right
GRNT Written decision to grant