KR20220113369A - 화상 처리 장치 및 방법 - Google Patents
화상 처리 장치 및 방법 Download PDFInfo
- Publication number
- KR20220113369A KR20220113369A KR1020227017819A KR20227017819A KR20220113369A KR 20220113369 A KR20220113369 A KR 20220113369A KR 1020227017819 A KR1020227017819 A KR 1020227017819A KR 20227017819 A KR20227017819 A KR 20227017819A KR 20220113369 A KR20220113369 A KR 20220113369A
- Authority
- KR
- South Korea
- Prior art keywords
- encoding
- unit
- color difference
- encoding mode
- transform
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/12—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
본 개시는 부호화의 부하의 증대를 억제할 수 있도록 하는 화상 처리 장치 및 방법에 관한 것이다. 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정한다. 본 개시는, 예를 들어 화상 처리 장치, 화상 부호화 장치, 정보 처리 장치, 전자 기기, 화상 처리 방법 또는 정보 처리 방법 등에 적용할 수 있다.
Description
본 개시는 화상 처리 장치 및 방법에 관한 것으로, 특히 부호화의 부하의 증대를 억제할 수 있도록 한 화상 처리 장치 및 방법에 관한 것이다.
종래, 동화상의 예측 잔차를 도출하고, 계수 변환하고, 양자화해서 부호화하는 부호화 방법이 제안되었다(예를 들어, 비특허문헌 1 및 비특허문헌 2 참조). 비특허문헌 1에 기재된 VVC(Versatile Video Coding) Working Draft에서는, 조인트 색차 부호화 모드(Joint CbCr mode)에 구애되지 않고, 색차의 변환 스킵을 적용할 수 있었다. 이에 대해, 비특허문헌 2에 기재된 VVC VTM 소프트웨어의 실장에서는, 조인트 색차 부호화 모드에 있어서, 색차 변환 스킵의 적용이 제한되었다.
비특허문헌 2에 기재와 같이 조인트 색차 부호화 모드에 있어서 색차 변환 스킵의 적용을 제한하는 경우, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그의 시그널링은 불필요하다. 즉, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그의 시그널링에 의해, 부호량이 불필요하게 증대하여, 부호화 효율이 저감될 우려가 있었다. 즉, 부호화 효율이 저감될 우려가 있었다. 이에 반해, 비특허문헌 1에 기재된 방법의 경우, 조인트 색차 부호화 모드에 있어서 색차 변환 스킵의 적용이 제한되지 않으므로, 그 변환 스킵 플래그의 용장에 의한 부호화 효율의 저감이 억제되었다.
Benjamin Bross, Jianle Chen, Shan Liu, Ye-Kui Wang, "Versatile Video Coding(Draft 7)", JVET-P2001-vE, Joint Video Experts Team (JVET)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1116th Meeting: Feneva, CH, 1-11 Oct 2019
Jianle Chen, Yan Ye, Seung Hwan Kim, "Algorithm description for Versatile Video Coding and Test Model 7(VTM 7)", JVET-P2002-v1, Joint Video Experts Team(JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1116th Meeting: Geneva, CH, 1-11 Oct. 2019
그러나, 비특허문헌 1에 기재된 방법의 경우, 조인트 색차 부호화 모드에 대해서, 변환 스킵을 적용하는 경우와 하지 않는 경우의 양쪽을 평가할 필요가 있다. 그 때문에, 부호화의 복잡도가 증대하고, 부호화의 부하가 증대할 우려가 있었다.
본 개시는, 이러한 상황을 감안하여 이루어진 것으로, 부호화의 부하의 증대를 억제할 수 있도록 하는 것이다.
본 기술의 일 측면의 화상 처리 장치는, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 상기 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는 부호화 모드 설정부를 구비하는 화상 처리 장치이다.
본 기술의 일 측면의 화상 처리 방법은, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 상기 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는 화상 처리 방법이다.
본 기술의 일 측면의 화상 처리 장치 및 방법에 있어서는, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입이, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정되고, 그 조인트 색차 부호화 모드에 있어서의 부호화 비용이 도출됨으로써, 화상의 부호화의 부호화 모드가 설정된다.
도 1은 변환 스킵 플래그의 설정에 대해서 설명하는 도면이다.
도 2는 부호화 비용 도출을 위한 변환 스킵 플래그의 설정의 예를 나타내는 도면이다.
도 3은 화상 부호화 장치의 주된 구성예를 도시하는 블록도이다.
도 4는 화상 부호화 처리의 흐름의 예를 나타내는 흐름도이다.
도 5는 부호화 모드 설정 처리의 흐름의 예를 나타내는 흐름도이다.
도 6은 부호화 모드 설정 처리의 흐름의 예를 나타내는, 도 5에 이은 흐름도이다.
도 7은 화상 복호 장치의 주된 구성예를 도시하는 블록도이다.
도 8은 화상 복호 처리의 흐름의 예를 나타내는 흐름도이다.
도 9는 컴퓨터의 주된 구성예를 도시하는 블록도이다.
도 2는 부호화 비용 도출을 위한 변환 스킵 플래그의 설정의 예를 나타내는 도면이다.
도 3은 화상 부호화 장치의 주된 구성예를 도시하는 블록도이다.
도 4는 화상 부호화 처리의 흐름의 예를 나타내는 흐름도이다.
도 5는 부호화 모드 설정 처리의 흐름의 예를 나타내는 흐름도이다.
도 6은 부호화 모드 설정 처리의 흐름의 예를 나타내는, 도 5에 이은 흐름도이다.
도 7은 화상 복호 장치의 주된 구성예를 도시하는 블록도이다.
도 8은 화상 복호 처리의 흐름의 예를 나타내는 흐름도이다.
도 9는 컴퓨터의 주된 구성예를 도시하는 블록도이다.
이하, 본 개시를 실시하기 위한 형태(이하 실시 형태로 한다)에 대해서 설명한다. 또한, 이하의 순서로 설명한다.
1. 부호화 모드의 설정
2. 제1 실시 형태(화상 부호화 장치)
3. 제2 실시 형태(화상 복호 장치)
4. 부기
<1. 부호화 모드의 설정>
<기술 내용 및 기술 용어를 서포트하는 문헌 등>
본 기술에서 개시되는 범위는, 실시 형태에 기재되어 있는 내용뿐만 아니라, 출원 당시에 있어서 공지인 이하의 비특허문헌 등에 기재되어 있는 내용이나 이하의 비특허문헌에 있어서 참조되고 있는 다른 문헌의 내용 등도 포함된다.
비특허문헌 1: (상술)
비특허문헌 2: (상술)
비특허문헌 3: Recommendation ITU-T H.264(04/2017)" Advanced video coding for generic audiovisual services", April 2017
비특허문헌 4: Recommendation ITU-T H.265(02/18)" High efficiency video coding", February 2018
즉, 상술한 비특허문헌에 기재되어 있는 내용도 서포트 요건을 판단할 때의 근거가 될 수 있다. 예를 들어, 상술한 비특허문헌에 기재되어 있는 Quad-Tree Block Structure, QTBT(Quad Tree Plus Binary Tree)Block Structure가 실시예에 있어서 직접적인 기재가 없는 경우에도, 본 기술의 개시 범위 내이며, 청구범위의 서포트 요건을 충족시키는 것으로 한다. 또한, 예를 들어 파싱(Parsing), 신택스(Syntax), 시맨틱스(Semantics) 등의 기술 용어에 대해서도 마찬가지로, 실시예에 있어서 직접적인 기재가 없는 경우에도, 본 기술의 개시 범위 내이며, 청구범위의 서포트 요건을 충족시키는 것으로 한다.
또한, 본 명세서에 있어서, 화상(픽처)의 부분 영역이나 처리 단위로서 설명에 사용하는 「블록」(처리부를 나타내는 블록이 아니다)은, 특별히 언급하지 않는 한, 픽처 내의 임의의 부분 영역을 나타내고, 그 크기, 형상 및 특성 등은 한정되지 않는다. 예를 들어, 「블록」에는, 상술한 비특허문헌에 기재되어 있는 TB(Transform Block), TU(Transform Unit), PB(Prediction Block), PU(Prediction Unit), SCU(Smallest Coding Unit), CU(Coding Unit), LCU(Largest Coding Unit), CTB(Coding Tree Block), CTU(Coding Tree Unit), 서브블록, 매크로 블록, 타일 또는 슬라이스 등, 임의의 부분 영역(처리 단위)이 포함되는 것으로 한다.
또한, 이러한 블록의 사이즈를 지정하는데 있어서, 직접적으로 블록 사이즈를 지정할뿐만 아니라, 간접적으로 블록 사이즈를 지정하도록 해도 된다. 예를 들어 사이즈를 식별하는 식별 정보를 사용해서 블록 사이즈를 지정하도록 해도 된다. 또한, 예를 들어 기준이 되는 블록(예를 들어 LCU나 SCU 등)의 사이즈와의 비 또는 차분에 의해 블록 사이즈를 지정하도록 해도 된다. 예를 들어, 신택스 요소 등으로서 블록 사이즈를 지정하는 정보를 전송하는 경우에, 그 정보로서, 상술한 바와 같은 간접적으로 사이즈를 지정하는 정보를 사용하게 해도 된다. 이와 같이 함으로써, 그 정보의 정보량을 저감시킬 수 있고, 부호화 효율을 향상시킬 수 있는 경우도 있다. 또한, 이 블록 사이즈의 지정에는, 블록 사이즈의 범위 지정(예를 들어, 허용되는 블록 사이즈의 범위 지정 등)도 포함한다.
또한, 본 명세서에 있어서, 부호화란, 화상을 비트 스트림으로 변환하는 전체의 처리뿐만 아니라, 일부의 처리도 포함한다. 예를 들어, 예측 처리, 직교 변환, 양자화, 산술 부호화 등을 포괄한 처리를 포함할뿐만 아니라, 양자화와 산술 부호화를 총칭한 처리, 예측 처리와 양자화와 산술 부호화를 포괄한 처리, 등을 포함한다. 마찬가지로, 복호란, 비트 스트림을 화상으로 변환하는 전체의 처리뿐만 아니라, 일부의 처리도 포함한다. 예를 들어, 역산술 복호, 역양자화, 역직교 변환, 예측 처리 등을 포괄한 처리를 포함할뿐만 아니라, 역산술 복호와 역양자화를 포괄한 처리, 역산술 복호와 역양자화와 예측 처리를 포괄한 처리, 등을 포함한다.
<조인트 색차 부호화 모드와 변환 스킵>
비특허문헌 1이나 비특허문헌 2에 기재된 VVC(Versatile Video Coding)에서는, 직교 변환을 스킵(생략)하는 모드인 변환 스킵을 적용할지의 여부를 나타내는 플래그 정보인 변환 스킵 플래그(transform_skip_flag)가 규정되어 있다. 도 1의 A는 색차 컴포넌트 Cb에 관한 변환 스킵 플래그의 신택스의 예를 나타낸다. 도 1의 B는 색차 컴포넌트 Cr에 관한 변환 스킵 플래그의 신택스의 예를 나타낸다.
또한, 비특허문헌 1이나 비특허문헌 2에 기재된 VVC에서는, Cb와 Cr의 양쪽의 잔차 샘플을 단일의 변환 블록으로서 부호화하는 모드인 조인트 색차 부호화 모드(Joint CbCr mode)가 준비되어 있다. 환언하면, 조인트 색차 부호화 모드는, Cb와 Cr의 양쪽의 잔차를 도출 가능한 직교 변환 계수를 부호화하는 모드이다. 이 조인트 색차 부호화 모드에서는, 예를 들어 Cb의 계수가 부호화된다. 그리고, 복호 시, 복호된 Cb의 계수를 사용해서 Cr의 계수가 도출된다. 이와 같이 함으로써, 부호화 효율의 향상이 기대될 수 있다.
<부호화 모드의 설정에 있어서의 부하의 증대>
그런데, 비특허문헌 2에 기재된 VVC VTM 소프트웨어의 실장에서는, 조인트 색차 부호화 모드에 있어서, 색차에 적용되는 변환 타입이 제한되었다. 도 1의 C에 그 예를 나타낸다. tu_joint_cbcr_residual_flag는, 조인트 색차 부호화 모드가 적용될지 여부를 나타내는 플래그 정보이다. tu_joint_cbcr_residual_flag =1인 경우, 조인트 색차 부호화 모드가 적용되는 것을 나타낸다. tu_joint_cbcr_residual_flag =0인 경우, 조인트 색차 부호화 모드가 적용되지 않는 것을 나타낸다(비조인트 색차 부호화 모드라고도 칭한다).
도 1의 C에 도시되는 바와 같이, 비조인트 색차 부호화 모드의 경우, 적용 가능한 변환 타입은, DCT2(Discrete Cosine Transform 2)와 변환 스킵(TS)이다. 이에 대해, 조인트 색차 부호화 모드의 경우, 적용 가능한 변환 타입은 DCT2뿐이다. 이와 같이 변환 스킵의 적용을 제한하면, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그의 시그널링은 불필요하다. 즉, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그의 시그널링에 의해, 부호량이 불필요하게 증대하여, 부호화 효율이 저감될 우려가 있었다.
이에 반해, 비특허문헌 1에 기재된 VVC(Versatile Video Coding) Working Draft에서는, 조인트 색차 부호화 모드(Joint CbCr mode)에 구애되지 않고, 색차의 변환 스킵을 적용할 수 있었다. 도 1의 D에 그 예를 나타낸다. 도 1의 D에 도시되는 바와 같이, 이 경우, 조인트 색차 부호화 모드에 구애되지 않고 DCT2와 변환 스킵이 적용 가능하다. 그 때문에, 비특허문헌 2에 기재된 방법에 비하여, 그 변환 스킵 플래그의 용장에 의한 부호화 효율의 저감을 억제할 수 있었다.
그러나, 비특허문헌 1이나 비특허문헌 2에 기재된 VVC에서는, 복수의 부호화 모드가 준비되어 있고, 그 중에서 부호화 비용이 최소가 되는 부호화 모드가 선택되어, 적용된다. 즉, 비특허문헌 1에 기재된 방법의 경우, 부호화 시에, 조인트 색차 부호화 모드와 비조인트 색차 부호화 모드의 각각에 대해서, 변환 스킵을 적용하는 경우와 하지 않는 경우의 양쪽 부호화 비용을 평가할 필요가 있었다. 따라서, 부호화의 복잡도가 증대하고, 부호화의 부하가 증대할 우려가 있었다.
<변환 타입 설정의 유용>
그래서, 부호화 모드를 설정할 때에 비조인트 색차 부호화 모드일 때에 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 조인트 색차 부호화 모드에 있어서의 부호화 비용을 구하도록 한다. 여기서, 변환 타입은, 상술한 바와 같이 DCT2 및 변환 스킵의 어느 것이도록 해도 된다. 그 경우, 비조인트 색차 부호화 모드일 때에 최소 부호화 비용이 되는 색차 변환 스킵 플래그의 값을, 조인트 색차 부호화 모드에 있어서의 색차 변환 스킵 플래그로 설정하면 된다. 그 신택스의 예를, 도 2에 나타낸다. 도 2에 있어서, 「bestTsFlag[codedCIdx] in non-JointCbCr mode」가, 비조인트 색차 부호화 모드일 때에 최소 부호화 비용이 되는 색차 변환 스킵 플래그를 나타낸다. 또한, 「transform_skip_flag[codedCIdx] in JointCbCr mode」가 조인트 색차 부호화 모드에 있어서의 색차 변환 스킵 플래그를 나타낸다.
예를 들어, 화상 처리 방법에 있어서, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정한다.
예를 들어, 화상 처리 장치에 있어서, 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는 부호화 모드 설정부를 구비하도록 한다.
이와 같이 함으로써, 조인트 색차 모드에 있어서, DCT2와 변환 스킵의 양쪽 모드를 탐색하지 않고, 조인트 색차 부호화 모드의 변환 타입을 설정할 수 있다. 따라서, 조인트 색차 부호화 모드와 비조인트 색차 부호화 모드의 각각에 대해서, 변환 스킵을 적용하는 경우와 하지 않는 경우의 양쪽의 부호화 비용을 도출하는 경우에 비하여, 부호화의 복잡도의 증대를 억제하고, 부호화의 부하의 증대를 억제할 수 있다. 따라서, 예를 들어 고속으로 변환 타입을 설정할 수 있다. 또한, 인코더의 비용 증대를 억제할 수 있다.
부언하면, 비특허문헌 2에 기재와 같이 조인트 색차 부호화 모드에 있어서 변환 스킵의 적용을 제한하는 경우에 비하여, 부호화 효율의 저감을 억제할 수 있다.
<2. 제1 실시 형태>
<화상 부호화 장치>
도 3은 본 기술을 적용한 화상 처리 장치의 일 양태인 화상 부호화 장치의 구성의 일례를 도시하는 블록도이다. 도 3에 도시되는 화상 부호화 장치(300)는, 동화상의 화상 데이터를 부호화하는 장치이다. 예를 들어, 화상 부호화 장치(300)는, 상술한 비특허문헌의 어느 것에 기재된 부호화 방식으로 동화상의 화상 데이터를 부호화할 수 있다.
또한, 도 3에 있어서는, 처리부(블록)나 데이터의 흐름 등의 주된 것을 나타내고 있고, 도 3에 도시되는 것이 전부인 것만은 아니다. 즉, 화상 부호화 장치(300)에 있어서, 도 3에 있어서 블록으로서 나타나지 않은 처리부가 존재하거나, 도 3에 있어서 화살표 등으로서 나타나지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 3에 도시되는 바와 같이 화상 부호화 장치(300)는, 제어부(301), 재배열 버퍼(311), 연산부(312), 직교 변환부(313), 양자화부(314), 부호화부(315), 축적 버퍼(316), 역양자화부(317), 역직교 변환부(318), 연산부(319), 인루프 필터부(320), 프레임 메모리(321), 예측부(322) 및 레이트 제어부(323)를 갖는다.
<제어부>
제어부(301)는 외부 또는 미리 지정된 처리 단위의 블록 사이즈에 기초하여, 재배열 버퍼(311)에 의해 보유되어 있는 동화상 데이터를 처리 단위의 블록(CU, PU, 변환 블록 등)으로 분할한다. 또한, 제어부(301)는, 각 블록에 공급할 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등)를, 예를 들어 RDO(Rate-Distortion Optimization)에 기초하여, 결정한다.
이들 부호화 파라미터의 상세에 대해서는 후술한다. 제어부(301)는, 이상과 같은 부호화 파라미터를 결정하면, 그것을 각 블록에 공급한다. 예를 들어, 헤더 정보 Hinfo는, 각 블록에 공급된다. 예측 모드 정보 Pinfo는, 부호화부(315)와 예측부(322)에 공급된다. 변환 정보 Tinfo는, 부호화부(315), 직교 변환부(313), 양자화부(314), 역양자화부(317) 및 역직교 변환부(318)에 공급된다. 필터 정보 Finfo는, 인루프 필터부(320)에 공급된다.
<재배열 버퍼>
화상 부호화 장치(300)에는, 동화상 데이터의 각 필드(입력 화상)가 그 재생순(표시순)으로 입력된다. 재배열 버퍼(311)는, 각 입력 화상을 그 재생순(표시순)으로 취득하여, 보유(기억)한다. 재배열 버퍼(311)는, 제어부(301)의 제어에 기초하여, 그 입력 화상을 부호화순(복호순)으로 재배열하거나, 처리 단위의 블록으로 분할한다. 재배열 버퍼(311)는, 처리 후의 각 입력 화상을 연산부(312)에 공급한다. 또한, 재배열 버퍼(311)는, 그 각 입력 화상(원화상)을, 예측부(322)와 인루프 필터부(320)에도 공급한다.
<연산부>
연산부(312)는, 처리 단위의 블록에 대응하는 화상I 및 예측부(322)로부터 공급되는 예측 화상 P를 입력으로서 화상 I로부터 예측 화상 P를 이하의 식에 나타나는 바와 같이 감산하고, 예측 잔차 D를 도출하고, 그것을 직교 변환부(313)에 공급한다.
D =I - P
<직교 변환부>
직교 변환부(313)는, 계수 변환에 관한 처리를 실행한다. 예를 들어, 직교 변환부(313)는, 연산부(312)로부터 공급되는 예측 잔차 D를 취득한다. 또한, 직교 변환부(313)는, 제어부(301)로부터 공급되는 변환 정보 Tinfo를 취득한다.
직교 변환부(313)는, 그 변환 정보 Tinfo에 기초하여, 예측 잔차 D에 대하여 직교 변환을 행하여, 변환 계수 Coeff를 도출한다. 예를 들어, 직교 변환부(313)는, 예측 잔차 D를 프라이머리 변환해서 프라이머리 변환 계수를 생성한다. 그리고, 직교 변환부(313)는, 그 프라이머리 변환 계수를 세컨더리 변환해서 세컨더리 변환 계수를 생성한다. 직교 변환부(313)는, 그 얻어진 세컨더리 변환 계수를 변환 계수 Coeff로서 양자화부(314)에 공급한다.
또한, 직교 변환은, 계수 변환의 일례이며, 이 예에 한정되지 않는다. 즉, 직교 변환부(313)는, 예측 잔차 D에 대하여 임의의 계수 변환을 실행할 수 있다. 부언하면, 직교 변환부(313)는, 프라이머리 변환 및 세컨더리 변환으로서, 각각, 임의의 계수 변환을 실행할 수 있다.
<양자화부>
양자화부(314)는, 양자화에 관한 처리를 실행한다. 예를 들어, 양자화부(314)는, 직교 변환부(313)로부터 공급되는 변환 계수 Coeff를 취득한다. 또한, 양자화부(314)는, 제어부(301)로부터 공급되는 변환 정보 Tinfo를 취득한다. 또한, 양자화부(314)는, 그 변환 정보 Tinfo에 기초하여, 변환 계수 Coeff를 스케일링(양자화)한다. 또한, 이 양자화의 방법은 임의이다. 또한, 이 양자화의 레이트는, 레이트 제어부(323)에 의해 제어된다. 양자화부(314)는, 이러한 양자화에 의해 얻어진 양자화 후의 변환 계수, 즉 양자화 변환 계수 레벨 level을, 부호화부(315) 및 역양자화부(317)에 공급한다.
<부호화부>
부호화부(315)는, 부호화에 관한 처리를 실행한다. 예를 들어, 부호화부(315)는, 양자화부(314)로부터 공급된 양자화 변환 계수 레벨 level을 취득한다. 또한, 부호화부(315)는, 제어부(301)로부터 공급되는 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등)를 취득한다. 또한, 부호화부(315)는 인루프 필터부(320)로부터 공급되는 필터 계수 등의 필터에 관한 정보를 취득한다. 또한, 부호화부(315)는 예측부(322)로부터 공급되는 최적의 예측 모드에 관한 정보를 취득한다.
부호화부(315)는, 양자화 변환 계수 레벨 level을 가변 길이 부호화(예를 들어, 산술 부호화)하여, 비트열(부호화 데이터)을 생성한다. 또한, 부호화부(315)는, 그 양자화 변환 계수 레벨 level로부터 잔차 정보 Rinfo를 도출한다. 그리고, 부호화부(315)는, 그 도출한 잔차 정보 Rinfo를 부호화하여, 비트열을 생성한다.
부호화부(315)는, 인루프 필터부(320)로부터 공급되는 필터에 관한 정보를 필터 정보 Finfo에 포함시킨다. 또한, 부호화부(315)는, 예측부(322)로부터 공급되는 최적의 예측 모드에 관한 정보를 예측 모드 정보 Pinfo에 포함시킨다. 그리고, 부호화부(315)는, 상술한 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등)를 부호화하여, 비트열을 생성한다.
부호화부(315)는, 이상과 같이 생성된 각종 정보의 비트열을 다중화하고, 부호화 데이터를 생성한다. 부호화부(315)는, 그 부호화 데이터를 축적 버퍼(316)에 공급한다.
<축적 버퍼>
축적 버퍼(316)는, 부호화부(315)에 있어서 얻어진 부호화 데이터를, 일시적으로 보유한다. 축적 버퍼(316)는, 소정의 타이밍에 있어서, 보유하고 있는 부호화 데이터를, 예를 들어 비트 스트림 등으로서 화상 부호화 장치(300)의 외부로 출력한다. 예를 들어, 이 부호화 데이터는, 임의의 기록 매체, 임의의 전송 매체, 임의의 정보 처리 장치 등을 통해 복호측에 전송된다. 즉, 축적 버퍼(316)는, 부호화 데이터(비트 스트림)를 전송하는 전송부이기도 한다.
<역양자화부>
역양자화부(317)는, 역양자화에 관한 처리를 실행한다. 예를 들어, 역양자화부(317)는, 양자화부(314)로부터 공급되는 양자화 변환 계수 레벨 level을 취득한다. 또한, 역양자화부(317)는, 제어부(301)로부터 공급되는 변환 정보 Tinfo를 취득한다.
역양자화부(317)는, 그 변환 정보 Tinfo에 기초하여, 양자화 변환 계수 레벨 level의 값을 스케일링(역양자화)한다. 또한, 이 역양자화는, 양자화부(314)에 있어서 실행되는 양자화의 역 처리이다. 역양자화부(317)는, 이러한 역양자화에 의해 얻어진 변환 계수 Coeff_IQ를, 역직교 변환부(318)에 공급한다.
<역직교 변환부>
역직교 변환부(318)는, 역 계수 변환에 관한 처리를 실행한다. 예를 들어, 역직교 변환부(318)는, 역양자화부(317)로부터 공급되는 변환 계수 Coeff_IQ를 취득한다. 또한, 역직교 변환부(318)는, 제어부(301)로부터 공급되는 변환 정보 Tinfo를 취득한다.
역직교 변환부(318)는, 그 변환 정보 Tinfo에 기초하여, 변환 계수 Coeff_IQ에 대하여 역직교 변환을 실행하여, 예측 잔차 D'를 도출한다. 또한, 이 역직교 변환은, 직교 변환부(313)에 있어서 실행되는 직교 변환의 역 처리이다. 예를 들어, 역직교 변환부(318)는, 변환 계수 Coeff_IQ(세컨더리 변환 계수)을 역 세컨더리 변환해서 프라이머리 변환 계수를 생성한다. 또한, 역직교 변환부(318)는, 그 프라이머리 변환 계수를 역 프라이머리 변환해서 예측 잔차 D'를 생성한다. 또한, 역 세컨더리 변환은, 직교 변환부(313)에 있어서 실행되는 세컨더리 변환의 역 처리이다. 또한, 역 프라이머리 변환은, 직교 변환부(313)에 있어서 실행되는 프라이머리 변환의 역 처리이다.
역직교 변환부(318)는, 이러한 역직교 변환에 의해 얻어진 예측 잔차 D'를 연산부(319)에 공급한다. 또한, 역직교 변환부(318)는, 복호측의 역직교 변환부(후술한다)와 마찬가지이므로, 역직교 변환부(318)에 대해서는, 복호측에 대해서 행하는 설명(후술한다)을 적용할 수 있다.
<연산부>
연산부(319)는, 역직교 변환부(318)로부터 공급되는 예측 잔차 D'와, 예측부(322)로부터 공급되는 예측 화상 P를 입력으로 한다. 연산부(319)는, 그 예측 잔차 D'와, 그 예측 잔차 D'에 대응하는 예측 화상 P를 가산하여, 국소 복호 화상 Rlocal을 도출한다. 연산부(319)는, 도출한 국소 복호 화상 Rlocal을 인루프 필터부(320) 및 프레임 메모리(321)에 공급한다.
<인루프 필터부>
인루프 필터부(320)는, 인루프 필터 처리에 관한 처리를 실행한다. 예를 들어, 인루프 필터부(320)는, 연산부(319)로부터 공급되는 국소 복호 화상 Rlocal과, 제어부(301)로부터 공급되는 필터 정보 Finfo와, 재배열 버퍼(311)로부터 공급되는 입력 화상(원화상)을 입력으로 한다. 또한, 인루프 필터부(320)에 입력되는 정보는 임의이고, 이들 정보 이외의 정보가 입력되어도 된다. 예를 들어, 필요에 따라, 예측 모드, 움직임 정보, 부호량 목표값, 양자화 파라미터 QP, 픽처 타입, 블록(CU, CTU 등)의 정보 등이 인루프 필터부(320)에 입력되도록 해도 된다.
인루프 필터부(320)는, 그 필터 정보 Finfo에 기초하여, 국소 복호 화상 Rlocal에 대하여 적절히 필터 처리를 실행한다. 인루프 필터부(320)는, 필요에 따라 입력 화상(원화상)이나, 기타 입력 정보도 그 필터 처리에 사용한다.
예를 들어, 인루프 필터부(320)는, 필터 처리로서, 양방향 필터를 적용할 수 있다. 또한, 인루프 필터부(320)는, 필터 처리로서, 디블로킹 필터(DBF(DeBlocking Filter))를 적용할 수 있다. 또한, 인루프 필터부(320)는, 필터 처리로서, 적응 오프셋 필터(SAO(Sample Adaptive Offset))를 적용할 수 있다. 또한, 인루프 필터부(320)는, 필터 처리로서, 적응 루프 필터(ALF(Adaptive Loop Filter))를 적용할 수 있다. 또한, 인루프 필터부(320)는, 필터 처리로서, 이들 중 복수의 필터를 조합해서 적용할 수 있다. 또한, 어느 필터를 적용할지, 어느 순으로 적용할지는 임의이고, 적절히 선택 가능하다. 예를 들어, 인루프 필터부(320)는, 필터 처리로서, 양방향 필터, 디블로킹 필터, 적응 오프셋 필터, 적응 루프 필터의 4개의 인루프 필터를 이 순으로 적용한다.
물론, 인루프 필터부(320)가 실행하는 필터 처리는 임의이고, 상술한 예에 한정되지 않는다. 예를 들어, 인루프 필터부(320)가 위너 필터 등을 적용하도록 해도 된다.
인루프 필터부(320)는, 필터 처리된 국소 복호 화상 Rlocal을 프레임 메모리(321)에 공급한다. 또한, 예를 들어 필터 계수 등의 필터에 관한 정보를 복호측에 전송하는 경우, 인루프 필터부(320)는, 그 필터에 관한 정보를 부호화부(315)에 공급한다.
<프레임 메모리>
프레임 메모리(321)는, 화상에 관한 데이터의 기억에 관한 처리를 실행한다. 예를 들어, 프레임 메모리(321)는, 연산부(319)로부터 공급되는 국소 복호 화상 Rlocal이나, 인루프 필터부(320)로부터 공급되는 필터 처리된 국소 복호 화상 Rlocal을 입력으로 하고, 그것을 보유(기억)한다. 또한, 프레임 메모리(321)는, 그 국소 복호 화상 Rlocal을 사용해서 픽처 단위마다의 복호 화상 R을 재구축하여, 보유한다(프레임 메모리(321) 내의 버퍼에 저장한다). 프레임 메모리(321)는, 예측부(322)의 요구에 따라, 그 복호 화상 R(또는 그 일부)을 예측부(322)에 공급한다.
<예측부>
예측부(322)는, 예측 화상의 생성에 관한 처리를 실행한다. 예를 들어, 예측부(322)는, 제어부(301)로부터 공급되는 예측 모드 정보 Pinfo를 취득한다. 또한, 예측부(322)는, 재배열 버퍼(311)로부터 공급되는 입력 화상(원화상)을 취득한다. 또한, 예측부(322)는, 프레임 메모리(321)로부터 판독하는 복호 화상 R(또는 그 일부)을 취득한다.
예측부(322)는, 예측 모드 정보 Pinfo나 입력 화상(원화상)을 사용해서 인터 예측과 인트라 예측 등의 예측 처리를 실행한다. 즉, 예측부(322)는, 복호 화상 R을 참조 화상으로서 참조하여 예측과 움직임 보상을 실행하여, 예측 화상 P를 생성한다.
예측부(322)는 생성한 예측 화상 P를 연산부(312) 및 연산부(319)에 공급한다. 또한, 예측부(322)는, 이상의 처리에 의해 선택한 예측 모드, 즉 최적의 예측 모드에 관한 정보를, 필요에 따라 부호화부(315)에 공급한다.
<레이트 제어부>
레이트 제어부(323)는, 레이트 제어에 관한 처리를 실행한다. 예를 들어, 레이트 제어부(323)는, 축적 버퍼(316)에 축적된 부호화 데이터의 부호량에 기초하여, 오버플로우 혹은 언더플로우가 발생하지 않도록, 양자화부(314)의 양자화 동작의 레이트를 제어한다.
<부호화 모드의 제어>
이상과 같은 구성의 화상 부호화 장치(300)에 대하여, <1. 부호화 모드의 설정>에 있어서 설명한 본 기술을 적용한다. 즉, <변환 타입 설정의 유용>에 있어서 상술한 바와 같이, 부호화 모드의 설정 시에, 조인트 색차 부호화 모드에 구애되지 않고, 색차의 변환 스킵을 적용할 수 있는 것으로 한다. 그리고, 비조인트 색차 부호화 모드일 때에 최소 부호화 비용이 되는 변환 타입이, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정되어서, 조인트 색차 부호화 모드에 있어서의 부호화 비용이 도출되도록 한다.
예를 들어, 제어부(301)는, 화상의 부호화의 부호화 모드를 설정하는 부호화 모드 설정부로서 작용한다. 그리고, 제어부(301)는, 그 부호화 모드의 설정에 있어서, 조인트 색차 부호화 모드에 구애되지 않고, 색차의 변환 스킵을 적용할 수 있다. 또한, 제어부(301)는, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정한다.
이와 같이 함으로써, 제어부(301)는, 조인트 색차 모드에 있어서, DCT2와 변환 스킵의 양쪽 모드를 탐색하지 않고, 조인트 색차 부호화 모드의 변환 타입을 설정할 수 있다. 따라서, 화상 부호화 장치(300)는, 비특허문헌 1에 기재와 같이 조인트 색차 부호화 모드에 있어서 색차 변환 스킵의 적용을 제한하지 않는 경우에 비하여, 부호화의 복잡도의 증대를 억제하고, 부호화의 부하의 증대를 억제할 수 있다. 따라서, 예를 들어 화상 부호화 장치(300)는 고속으로 변환 타입을 설정 할 수 있다. 또한, 화상 부호화 장치(300)의 비용 증대를 억제할 수 있다.
부언하면, 화상 부호화 장치(300)는, 비특허문헌 2에 기재와 같이 조인트 색차 부호화 모드에 있어서 변환 스킵의 적용을 제한하는 경우에 비하여, 부호화 효율의 저감을 억제할 수 있다.
또한, 도 1의 D에 도시되는 예에서는, 부호화 모드의 설정으로서, 조인트 색차 부호화 모드에 관한 설정과 변환 타입의 설정이 실행된다. 이 예와 마찬가지로, 제어부(301)는, 부호화 모드의 설정으로서, 조인트 색차 부호화 모드에 관한 설정과 변환 타입의 설정을 실행해도 된다.
예를 들어, 제어부(301)는, 조인트 색차 부호화 모드를 적용할지의 여부 (즉, 조인트 색차 부호화 모드를 적용할지, 비조인트 색차 부호화 모드를 적용할지)를 설정해도 된다. 또한, 제어부(301)는 조인트 색차 부호화 모드를 적용하는 경우, 또한 복수의 후보 중 어느 모드를 적용할지(조인트 색차 부호화의 내용)를 설정해도 된다. 예를 들어, 조인트 색차 부호화 모드에는, Cr에 Cb와 동일한 계수를 적용하는 모드, Cr에 Cb의 계수의 부호 반전한 것을 적용하는 모드, Cr에 Cb의 계수에 1/2을 승산한 것을 적용하는 모드 등, 복수의 모드를 후보로서 마련할 수 있다. 또한, 제어부(301)는 변환 타입을 무엇으로 할지를 설정해도 된다.
또한, 도 1의 D에 도시되는 예에서는, 조인트 색차 부호화 모드에 있어서도 변환 스킵을 적용할 수 있다. 이 예와 마찬가지로, 제어부(301)가, 조인트 색차 부호화 모드에 있어서의 변환 타입으로서, 변환 스킵을 적용할지의 여부를 설정해도 된다. 즉, 조인트 색차 부호화 모드를 적용하는 경우, 제어부(301)가, 변환 스킵을 적용할지의 여부를 나타내는 플래그 정보인 변환 스킵 플래그의 값을 설정해도 된다.
그 경우, 제어부(301)는, 도 2에 도시되는 바와 같이, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 스킵 플래그의 값(bestTsFlag)을, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그(transform_skip_flag)에 설정해도 된다.
또한, 도 1의 D에 도시되는 예의 경우, 조인트 색차 부호화 모드가 적용되고, 변환 스킵이 적용되지 않는 경우(비변환 스킵의 경우), 변환 타입으로서 DCT2가 적용된다. 이 예와 마찬가지로, 제어부(301)가, 조인트 색차 부호화 모드에 있어서 변환 스킵을 적용하지 않는 경우, 변환 타입으로서 DCT2를 적용해도 된다.
이상과 같이 제어부(301)가 설정한 부호화 모드에 관한 정보는, 예를 들어 Tinfo 등으로서, 직교 변환부(313)와 부호화부(315)에 공급된다. 예를 들어, 제어부(301)는, 조인트 색차 부호화 모드를 적용할지의 여부를 나타내는 플래그 정보인 tu_joint_residual_flag, 조인트 색차 부호화 모드의 내용을 나타내는 파라미터인 TuCResMode, 변환 스킵 플래그(transform_skip_flag(tsFlag이라고도 칭한다)) 등의 정보를, Tinfo로서, 직교 변환부(313)와 부호화부(315)에 공급한다.
직교 변환부(313)는, 그 정보에 기초하여(즉 설정된 부호화 모드에 따라), 연산부(312)에 의해 도출된 예측 잔차 D를 직교 변환한다. 양자화부(314)는, 직교 변환부(313)에 의해 도출된 변환 계수 Coeff를 양자화한다. 또한, 부호화부(315)는, 그 정보에 기초하여(즉 설정된 부호화 모드에 따라), 양자화부(314)에 의해 도출된 양자화 변환 계수 레벨 level을 부호화하여, 부호화 데이터를 생성한다. 또한, 부호화부(315)는, 그 정보(예를 들어 변환 스킵 플래그 등)를 부호화하여, 양자화 변환 계수 레벨 level의 부호화 데이터에 포함시킨다.
<구성예>
또한, 이들 처리부(도 3에 도시되는 제어부(301)등의 각 처리부)는, 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 된다. 예를 들어, 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<화상 부호화 처리의 흐름>
이어서, 이상과 같은 구성의 화상 부호화 장치(300)에 의해 실행되는 화상 부호화 처리의 흐름의 예를, 도 4의 흐름도를 참조하여 설명한다.
화상 부호화 처리가 개시되면, 스텝 S301에 있어서, 재배열 버퍼(311)는, 제어부(301)에 제어되어, 입력된 동화상 데이터의 프레임의 순을 표시순으로부터 부호화순으로 재배열한다.
스텝 S302에 있어서, 제어부(301)는, 재배열 버퍼(311)가 보유하는 입력 화상에 대하여, 처리 단위를 설정한다(블록 분할한다).
스텝 S303에 있어서, 제어부(301)는, 재배열 버퍼(311)가 보유하는 입력 화상에 관한 부호화 파라미터를 결정(설정)한다.
스텝 S304에 있어서, 예측부(322)는 예측 처리를 실행하여, 최적의 예측 모드의 예측 화상 등을 생성한다. 예를 들어, 이 예측 처리에 있어서, 예측부(322)는, 인트라 예측을 실행해서 최적의 인트라 예측 모드의 예측 화상 등을 생성한다. 또한, 예측부(322)는, 인터 예측을 실행해서 최적의 인터 예측 모드의 예측 화상 등을 생성한다. 또한, 예측부(322)는, 그들 중에서 비용 함수값 등에 기초하여 최적의 예측 모드를 선택한다.
스텝 S305에 있어서, 연산부(312)는, 입력 화상과, 스텝 S304의 예측 처리에 의해 선택된 최적의 모드의 예측 화상의 차분을 연산한다. 즉, 연산부(312)는, 입력 화상과 예측 화상의 예측 잔차 D를 생성한다. 이와 같이 해서 구해진 예측 잔차 D는, 원래의 화상 데이터에 비하여 데이터양이 저감된다. 따라서, 화상을 그대로 부호화하는 경우에 비하여, 데이터양을 압축할 수 있다.
스텝 S306에 있어서, 직교 변환부(313)는, 스텝 S305의 처리에 의해 생성된 예측 잔차 D에 대한 직교 변환 처리를 실행하여, 변환 계수 Coeff를 도출한다. 예를 들어, 직교 변환부(313)는, 예측 잔차 D에 대하여 프라이머리 변환을 실행해서 프라이머리 변환 계수를 생성한다. 또한, 직교 변환부(313)는, 그 프라이머리 변환 계수에 대하여 세컨더리 변환을 실행해서 세컨더리 변환 계수(변환 계수 Coeff)를 생성한다.
스텝 S307에 있어서, 양자화부(314)는, 제어부(301)에 의해 산출된 양자화 파라미터를 사용하거나 해서, 스텝 S306의 처리에 의해 얻어진 변환 계수 Coeff를 양자화하여, 양자화 변환 계수 레벨 level을 도출한다.
스텝 S308에 있어서, 역양자화부(317)는, 스텝 S307의 처리에 의해 생성된 양자화 변환 계수 레벨 level을, 그 스텝 S307의 양자화의 특성에 대응하는 특성으로 역양자화하여, 변환 계수 Coeff_IQ를 도출한다.
스텝 S309에 있어서, 역직교 변환부(318)는, 스텝 S308의 처리에 의해 얻어진 변환 계수 Coeff_IQ를, 스텝 S306의 직교 변환 처리에 대응하는 방법으로 역직교 변환하여, 예측 잔차 D'를 도출한다. 예를 들어, 역직교 변환부(318)는, 변환 계수 Coeff_IQ(세컨더리 변환 계수)에 대하여 역 세컨더리 변환을 실행해서 프라이머리 변환 계수를 생성한다. 또한, 역직교 변환부(318)는, 그 프라이머리 변환 계수에 대하여 역 프라이머리 변환을 실행해서 예측 잔차 D'를 생성한다.
또한, 이 역직교 변환 처리는, 복호측에 있어서 실행되는 역직교 변환 처리와 마찬가지이다. 따라서, 이 스텝 S309의 역직교 변환 처리에 대해서는, 후술하는 복호측에 관한 설명을 적용할 수 있다.
스텝 S310에 있어서, 연산부(319)는, 스텝 S309의 처리에 의해 도출된 예측 잔차 D'에, 스텝 S304의 예측 처리에 의해 얻어진 예측 화상을 가산함으로써, 국소적으로 복호된 복호 화상을 생성한다.
스텝 S311에 있어서, 인루프 필터부(320)는, 스텝 S310의 처리에 의해 도출된, 국소적으로 복호된 복호 화상에 대하여, 인루프 필터 처리를 실행한다.
스텝 S312에 있어서, 프레임 메모리(321)는 스텝 S310의 처리에 의해 도출된, 국소적으로 복호된 복호 화상이나, 스텝 S311에 있어서 필터 처리된, 국소적으로 복호된 복호 화상을 기억한다.
스텝 S313에 있어서, 부호화부(315)는, 스텝 S307의 처리에 의해 얻어진 양자화 변환 계수 레벨 level을 부호화한다. 예를 들어, 부호화부(315)는, 화상에 관한 정보인 양자화 변환 계수 레벨 level을, 산술 부호화 등에 의해 부호화하여, 부호화 데이터를 생성한다. 또한, 이때, 부호화부(315)는, 각종 부호화 파라미터(헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo)를 부호화한다. 또한, 부호화부(315)는, 양자화 변환 계수 레벨 level로부터 잔차 정보 RInfo를 도출하고, 그 잔차 정보 RInfo를 부호화한다.
스텝 S314에 있어서, 축적 버퍼(316)는, 이와 같이 해서 얻어진 부호화 데이터를 축적하여, 예를 들어 비트 스트림으로서, 그것을 화상 부호화 장치(300)의 외부로 출력한다. 이 비트 스트림은, 예를 들어 전송로나 기록 매체를 통해 복호측에 전송된다. 또한, 레이트 제어부(323)는, 필요에 따라 레이트 제어를 실행한다.
스텝 S314의 처리가 종료되면, 화상 부호화 처리가 종료된다.
<부호화 모드의 제어>
이상과 같은 흐름의 화상 부호화 처리에 대하여 <1. 부호화 모드의 설정>에 있어서 설명한 본 기술을 적용한다. 즉, <변환 타입 설정의 유용>에 있어서 상술한 바와 같이, 부호화 모드의 설정 시에, 조인트 색차 부호화 모드에 구애되지 않고, 색차의 변환 스킵을 적용할 수 있는 것으로 한다. 그리고, 비조인트 색차 부호화 모드일 때에 최소 부호화 비용이 되는 변환 타입이, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정되어, 조인트 색차 부호화 모드에 있어서의 부호화 비용이 도출되도록 한다.
예를 들어, 스텝 S303에 있어서, 제어부(301)는, 부호화 모드 설정 처리를 실행하여, 화상의 부호화의 부호화 모드를 설정한다. 그 부호화 모드의 설정에 있어서, 조인트 색차 부호화 모드에 구애되지 않고, 색차의 변환 스킵을 적용할 수 있다. 또한, 제어부(301)는, 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 부호화 모드를 설정한다.
직교 변환부(313)는, 스텝 S306에 있어서, 그 설정된 부호화 모드에 따라서, 예측 잔차 D를 직교 변환한다. 또한, 부호화부(315)는 스텝 S313에 있어서, 그 설정된 부호화 모드에 따라서, 양자화 변환 계수 레벨 level을 부호화하여, 부호화 데이터를 생성한다. 또한, 부호화부(315)는, 그 부호화 모드에 관한 정보(예를 들어 변환 스킵 플래그 등)를 부호화하여, 양자화 변환 계수 레벨 level의 부호화 데이터에 포함시킨다.
이와 같이 함으로써, 제어부(301)는, 조인트 색차 모드에 있어서, DCT2와 변환 스킵의 양쪽 모드를 탐색하지 않고, 조인트 색차 부호화 모드의 변환 타입을 설정할 수 있다. 따라서, 화상 부호화 장치(300)는, 비특허문헌 1에 기재와 같이 조인트 색차 부호화 모드에 있어서 색차 변환 스킵의 적용을 제한하지 않는 경우에 비하여, 부호화의 복잡도의 증대를 억제하고, 부호화의 부하의 증대를 억제할 수 있다. 따라서, 예를 들어 화상 부호화 장치(300)는, 고속으로 변환 타입을 설정 할 수 있다. 또한, 화상 부호화 장치(300)의 비용 증대를 억제할 수 있다.
부언하면, 화상 부호화 장치(300)는, 비특허문헌 2에 기재와 같이 조인트 색차 부호화 모드에 있어서 변환 스킵의 적용을 제한하는 경우에 비하여, 부호화 효율의 저감을 억제할 수 있다.
<부호화 모드 설정 처리의 흐름>
도 4의 스텝 S303에 있어서 실행되는 부호화 모드 설정 처리의 흐름의 예를, 도 5 및 도 6의 흐름도를 참조하여 설명한다.
부호화 모드 설정 처리가 개시되면, 제어부(301)는, 스텝 S351에 있어서, 비조인트 색차 부호화 모드로 설정한다. 예를 들어, 제어부(301)는, tu_joint_cbcr_residual_flag을 거짓(예를 들어 「0」)으로 설정하고, TuCResMode[xTbY][yTbY]를 「0」으로 설정한다.
스텝 S352에 있어서, 제어부(301)는, 그 비조인트 색차 부호화 모드에 대해서, 각 변환 타입의 부호화 비용을 도출한다. 예를 들어, 제어부(301)는, 비조인트 색차 부호화 모드에 있어서, 변환 타입이 DCT2인 경우와, 변환 타입이 변환 스킵(TS)인 경우의 각각의 부호화 비용을 도출한다. 제어부(301)는, 이 처리를 각 색차 컴포넌트 Cb, Cr에 대해서 실행한다.
스텝 S353에 있어서, 제어부(301)는, 스텝 S352의 처리에 있어서 도출한 부호화 비용 중에서 최소가 되는 변환 타입을 설정한다. 예를 들어, 제어부(301)는, 스텝 S352의 처리에 있어서 도출한 부호화 비용이 최소가 되는 변환 타입에 대응하는 변환 스킵 플래그의 값을 bestFlag[cIdx]로 설정한다. 제어부(301)는, 이 처리를 각 색차 컴포넌트 Cb, Cr에 대해서 실행한다.
스텝 S354에 있어서, 제어부(301)는, 비조인트 색차 부호화 모드에 있어서의 색차 cbf(coded block flag)에 기초하여 조인트 색차 부호화 모드를 설정한다. 색차 cbf는, 그 블록의 변환 계수를 부호화할 것인지 여부를 나타내는 플래그 정보이다. 환언하면, 색차 cbf는, 그 블록에 0이 아닌 변환 계수가 포함되는지의 여부를 나타내는 플래그 정보이다.
예를 들어, 제어부(301)는, tu_joint_cbcr_residual_flag을 참(예를 들어 「1」)으로 설정한다. 그리고, 제어부(301)는, 색차 컴포넌트 Cb의 처리 대상TU의 cbf인 tu_cbf_cb와, 색차 컴포넌트 Cr의 처리 대상TU의 cbf인 tu_cbf_cr에 기초하여, TuCResMode[xTbY][yTbY]를 설정한다.
예를 들어, tu_cbf_cb ==1이고, 또한 tu_cbf_cr ==0인 경우, 제어부(301)는, TuCResMode[xTbY][yTbY]를 「1」로 설정한다. 또한,tu_cbf_cb ==1이고, 또한 tu_cbf_cr ==1인 경우, 제어부(301)는, TuCResMode[xTbY][yTbY]를 「2」로 설정한다. 또한, tu_cbf_cb ==0이고, 또한 tu_cbf_cr ==1인 경우, 제어부(301)는, TuCResMode[xTbY][yTbY]를 「3」으로 설정한다.
스텝 S354의 처리가 종료되면, 처리는 도 6으로 진행한다. 도 6의 스텝 S361에 있어서, 제어부(301)는, 스텝 S354에 있어서 설정된 조인트 색차 부호화 모드에 기초하여 부호화 컴포넌트 식별자 codedCIdx를 설정한다. 예를 들어, 제어부(301)는, TuCResMode[xTbY][yTbY]이 「1」 또는 「2」인 경우 codedCIdx를 「1」(즉 Cb)로 설정하고, 그 이외의 경우 codedCIdx를 「2」(즉 Cr)로 설정한다.
스텝 S362에 있어서, 제어부(301)는, 스텝 S353에 있어서 설정한 bestTsFlag[cIdx]를, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그 tsFlag[codedCIdx]로 설정한다(tsFlag[codedCIdx]=bestTsFlag[cIdx]).
스텝 S363에 있어서, 제어부(301)는, 조인트 색차 부호화 모드의 부호화 비용을 도출한다. 상술한 바와 같이, 스텝 S362에 있어서, 조인트 색차 부호화 모드에 있어서의 변환 스킵 플래그에는, 비조인트 색차 부호화 모드에 있어서의 부호화 비용이 최소가 되는 변환 타입에 대응하는 변환 스킵 플래그의 값이 설정된다. 따라서, 제어부(301)는, 조인트 색차 부호화 모드에 대해서는, 그 변환 스킵 플래그의 값에 대응하는 모드의 부호화 비용을 도출하면 된다. 즉, 이 경우, 제어부(301)는, 변환 스킵을 적용하는 경우와 하지 않는 경우의 양쪽에 대해서 부호화 비용을 도출할 필요가 없다. 따라서, 제어부(301)는, 조인트 색차 모드에 관한 부호화 비용을 보다 용이하게 도출할 수 있다.
스텝 S364에 있어서, 제어부(301)는, 비조인트 색차 부호화 모드의 최소 부호화 비용과 조인트 색차 부호화 모드의 부호화 비용을 비교하여, 그 부호화 비용이 최소가 되는 모드를 선택한다.
스텝 S364의 처리가 종료되면, 부호화 모드 설정 처리가 종료하고, 처리는, 도 4로 되돌아간다.
이와 같이 함으로써, 화상 부호화 장치(300)는, 비특허문헌 1에 기재와 같이 조인트 색차 부호화 모드에 있어서 색차 변환 스킵의 적용을 제한하지 않는 경우에 비하여, 부호화의 복잡도의 증대를 억제하고, 부호화의 부하의 증대를 억제할 수 있다. 따라서, 예를 들어 화상 부호화 장치(300)는, 고속으로 변환 타입을 설정 할 수 있다. 또한, 화상 부호화 장치(300)의 비용 증대를 억제할 수 있다.
부언하면, 화상 부호화 장치(300)는, 비특허문헌 2에 기재와 같이 조인트 색차 부호화 모드에 있어서 변환 스킵의 적용을 제한하는 경우에 비하여, 부호화 효율의 저감을 억제할 수 있다.
<3. 제2 실시 형태>
<화상 복호 장치>
도 7은 본 기술을 적용한 화상 처리 장치의 일 양태인 화상 복호 장치의 구성의 일례를 도시하는 블록도이다. 도 7에 도시되는 화상 복호 장치(400)는 동화상의 부호화 데이터를 부호화하는 장치이다. 예를 들어, 화상 복호 장치(400)는 상술한 비특허문헌의 어느 것에 기재된 복호 방식으로 부호화 데이터를 복호할 수 있다. 예를 들어, 화상 복호 장치(400)는 상술한 화상 부호화 장치(300)에 의해 생성된 부호화 데이터(비트 스트림)를 복호한다.
또한, 도 7에 있어서는, 처리부(블록)나 데이터의 흐름 등의 주된 것을 나타내고 있고, 도 7에 도시되는 것이 전부인 것만은 아니다. 즉, 화상 복호 장치(400)에 있어서, 도 7에 있어서 블록으로서 나타나지 않은 처리부가 존재하거나, 도 7에 있어서 화살표 등으로서 나타나지 않은 처리나 데이터의 흐름이 존재해도 된다.
도 7에 있어서, 화상 복호 장치(400)는 축적 버퍼(411), 복호부(412), 역양자화부(413), 역직교 변환부(414), 연산부(415), 인루프 필터부(416), 재배열 버퍼(417), 프레임 메모리(418) 및 예측부(419)를 구비하고 있다. 또한, 예측부(419)는, 도시하지 않은 인트라 예측부 및 인터 예측부를 구비하고 있다. 화상 복호 장치(400)는 부호화 데이터(비트 스트림)를 복호함으로써, 동화상 데이터를 생성하기 위한 장치이다.
<축적 버퍼>
축적 버퍼(411)는, 화상 복호 장치(400)에 입력된 비트 스트림을 취득하고, 보유(기억)한다. 축적 버퍼(411)는, 소정의 타이밍에 있어서 또는, 소정의 조건이 갖추어지거나 하는 경우, 축적하고 있는 비트 스트림을 복호부(412)에 공급한다.
<복호부>
복호부(412)는, 화상에 관한 복호에 관한 처리를 실행한다. 예를 들어, 복호부(412)는, 축적 버퍼(411)로부터 공급되는 비트 스트림을 취득한다. 또한, 복호부(412)는, 신택스 테이블의 정의에 따라, 그 비트열로부터, 각 신택스 요소의 신택스값을 가변 길이 복호하여, 파라미터를 도출한다.
신택스 요소 및 신택스 요소의 신택스 값으로부터 도출되는 파라미터에는, 예를 들어 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 잔차 정보 Rinfo, 필터 정보 Finfo 등의 정보가 포함된다. 즉, 복호부(412)는 비트 스트림으로부터, 이들 정보를 파싱한다(해석해서 취득한다). 이들 정보에 대해서 이하에 설명한다.
<헤더 정보 Hinfo>
헤더 정보 Hinfo는, 예를 들어 VPS(Video Parameter Set), SPS(Sequence Parameter Set), PPS(Picture Parameter Set), SH(슬라이스 헤더) 등의 헤더 정보를 포함한다. 헤더 정보 Hinfo에는, 예를 들어 화상 사이즈(가로폭 PicWidth, 세로폭 PicHeight), 비트 심도(휘도 bitDepthY, 색차 bitDepthC), 색차 어레이 타입ChromaArrayType, CU 사이즈의 최댓값 MaxCUSize나 최솟값 MinCUSize, 4분목 분할(Quad-tree 분할이라고도 한다)의 최대 심도 MaxQTDepth나 최소 심도 MinQTDepth, 2분목 분할(Binary-tree 분할)의 최대 심도 MaxBTDepth나 최소 심도 MinBTDepth, 변환 스킵 블록의 최댓값 MaxTSSize(최대 변환 스킵 블록 사이즈라고도 한다), 각 부호화 툴의 온/오프 플래그(유효 플래그라고도 한다) 등을 규정하는 정보가 포함된다.
예를 들어, 헤더 정보 Hinfo에 포함되는 부호화 툴의 온/오프 플래그로서는, 이하에 나타내는 변환 처리 및 양자화 처리에 관련된 온/오프 플래그가 있다. 또한, 부호화 툴의 온/오프 플래그는, 해당 부호화 툴에 관련된 신택스가 부호화 데이터 중에 존재하는지의 여부를 나타내는 플래그로도 해석할 수 있다. 또한, 온/오프 플래그의 값이 1(참)인 경우, 해당 부호화 툴이 사용 가능한 것을 나타낸다. 온/오프 플래그의 값이 0(거짓)인 경우, 해당 부호화 툴이 사용 불가인 것을 나타낸다. 또한, 플래그값의 해석은 반대여도 된다.
예를 들어, 헤더 정보 Hinfo에는, 컴포넌트간 예측 유효 플래그(ccp_enabled_flag)가 포함될 수 있다. 컴포넌트간 예측 유효 플래그는, 컴포넌트간 예측(CCP(Cross-Component Prediction), CC 예측이라고도 칭한다)이 사용 가능한지의 여부를 나타내는 플래그 정보이다. 예를 들어, 이 플래그 정보가 「1」(참)인 경우, 사용 가능함을 보여 주고, 「0」(거짓)인 경우, 사용 불가임을 보여 준다.
또한, 이 CCP는 컴포넌트간 선형 예측(CCLM 또는 CCLMP)이라고도 칭한다.
<예측 모드 정보 Pinfo>
예측 모드 정보 Pinfo에는, 예를 들어 처리 대상 PB(예측 블록)의 사이즈 정보 PBSize(예측 블록 사이즈), 인트라 예측 모드 정보 IPinfo, 움직임 예측 정보 MVinfo 등의 정보가 포함된다.
인트라 예측 모드 정보 IPinfo에는, 예를 들어 JCTVC-W1005, 7.3.8.5 Coding Unit syntax 중의 prev_intra_luma_pred_flag, mpm_idx, rem_intra_pred_mode 및 그 신택스로부터 도출되는 휘도 인트라 예측 모드 IntraPredModeY 등이 포함될 수 있다.
또한, 인트라 예측 모드 정보 IPinfo에는, 예를 들어 컴포넌트간 예측 플래그(ccp_flag(cclmp_flag))가 포함될 수 있다. 컴포넌트간 예측 플래그(ccp_flag(cclmp_flag))는, 컴포넌트간 선형 예측을 적용할지의 여부를 나타내는 플래그 정보이다. 예를 들어, ccp_flag==1일 때, 컴포넌트간 예측을 적용하는 것을 나타내고, ccp_flag==0일 때, 컴포넌트간 예측을 적용하지 않는 것을 나타낸다.
또한, 인트라 예측 모드 정보 IPinfo에는, 다클래스 선형 예측 모드 플래그(mclm_flag)가 포함될 수 있다. 다클래스 선형 예측 모드 플래그(mclm_flag)는, 선형 예측의 모드에 관한 정보(선형 예측 모드 정보)이다. 보다 구체적으로는, 다클래스 선형 예측 모드 플래그(mclm_flag)는, 다클래스 선형 예측 모드로 할지의 여부를 나타내는 플래그 정보이다. 예를 들어, 「0」인 경우, 1 클래스 모드(단일클래스 모드)(예를 들어 CCLMP)인 것을 나타내고, 「1」인 경우, 2 클래스 모드(다클래스 모드)(예를 들어 MCLMP)인 것을 나타낸다.
또한, 인트라 예측 모드 정보 IPinfo에는, 색차 샘플 위치 타입 식별자(chroma_sample_loc_type_idx)가 포함될 수 있다. 색차 샘플 위치 타입 식별자(chroma_sample_loc_type_idx)는, 색차 컴포넌트의 화소 위치의 타입(색차 샘플 위치 타입이라고도 칭한다)을 식별하는 식별자이다. 예를 들어 색 포맷에 관한 정보인 색차 어레이 타입(ChromaArrayType)이 420 형식을 나타내는 경우, 색차 샘플 위치 타입 식별자는, 이하의 식과 같은 할당 방식으로 된다.
chroma_sample_loc_type_idx ==0:Type2
chroma_sample_loc_type_idx ==1:Type3
chroma_sample_loc_type_idx ==2:Type0
chroma_sample_loc_type_idx ==3:Type1
또한, 이 색차 샘플 위치 타입 식별자(chroma_sample_loc_type_idx)는, 색차 컴포넌트의 화소 위치에 관한 정보(chroma_sample_loc_info())로서(즉, 색차 컴포넌트의 화소 위치에 관한 정보에 저장되어) 전송된다.
또한, 인트라 예측 모드 정보 IPinfo에는, 색차 MPM 식별자(chroma_mpm_idx)가 포함될 수 있다. 색차 MPM 식별자(chroma_mpm_idx)는, 색차 인트라 예측 모드 후보 리스트(intraPredModeCandListC) 중의 어느 예측 모드 후보를 색차 인트라 예측 모드로서 지정하는지를 나타내는 식별자이다.
또한, 인트라 예측 모드 정보 IPinfo에는, 이들 신택스로부터 도출되는 휘도 인트라 예측 모드(IntraPredModeC)가 포함될 수 있다.
움직임 예측 정보 MVinfo에는, 예를 들어 merge_idx, merge_flag, inter_pred_idc, ref_idx_LX, mvp_lX_ flag, X={0, 1}, mvd 등의 정보가 포함된다(예를 들어, JCTVC-W1005, 7.3.8.6 Prediction Unit Syntax를 참조).
물론, 예측 모드 정보 Pinfo에 포함되는 정보는 임의이고, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<변환 정보 Tinfo>
변환 정보 Tinfo에는, 예를 들어 처리 대상 변환 블록의 가로폭 사이즈 TBWSize 및 세로폭 TBHSize가 포함될 수 있다. 또한, 이 처리 대상 변환 블록의 가로폭 사이즈 TBWSize 대신에, 2를 밑으로 하는 대수값 log2TBWSize를 적용해도 된다. 또한, 이 처리 대상 변환 블록의 세로폭 TBHSize 대신에, 2를 밑으로 하는 대수값 log2TBHSize를 적용해도 된다.
[0132]
또한, 변환 정보 Tinfo에는, 변환 스킵 플래그(transform_skip_flag(또는 ts_flag))가 포함될 수 있다. 이 변환 스킵 플래그는, 계수 변환(또는 역 계수 변환)을 스킵할 것인지 여부를 나타내는 플래그이다. 또한, 이 변환 스킵 플래그는, Y, Cb, Cr의 컴포넌트마다 시그널링되어도 된다(transform_skip_flag[0], transform_skip_flag[1], transform_skip_flag[2]).
또한, 변환 정보 Tinfo에는, 스캔 식별자(scanIdx), 양자화 파라미터(qp), 양자화 매트릭스(scaling_matrix(예를 들어, JCTVC-W1005, 7.3.4 Scaling list data syntax)) 등의 파라미터가 포함될 수 있다.
물론, 변환 정보 Tinfo에 포함되는 정보는 임의이고, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<잔차 정보 Rinfo>
잔차 정보 Rinfo(예를 들어, JCTVC-W1005에 7.3.8.11 Residual Coding syntax를 참조)에는, 예를 들어 잔차 데이터 유무 플래그(cbf(coded_block_flag))가 포함될 수 있다. 또한, 잔차 정보 Rinfo에는, 라스트 비제로 계수 X 좌표(last_sig_coeff_x_pos)와 라스트 비제로 계수 Y 좌표(last_sig_coeff_y_pos)가 포함될 수 있다. 또한, 잔차 정보 Rinfo에는, 서브블록 비제로 계수 유무 플래그(coded_sub_block_flag)나 비제로 계수 유무 플래그(sig_coeff_flag)가 포함될 수 있다.
또한, 잔차 정보 Rinfo에는, 비제로 계수의 레벨이 1보다 큰지를 나타내는 플래그인 GR1 플래그(gr1_flag)와, 비제로 계수의 레벨이 2보다 큰지를 나타내는 플래그인 GR2 플래그(gr2_flag)가 포함될 수 있다. 또한, 잔차 정보 Rinfo에는, 비제로 계수의 정부를 나타내는 부호인 사인 부호(sign_flag)가 포함될 수 있다. 또한, 잔차 정보 Rinfo에는, 비제로 계수의 잔여 레벨인 비제로 계수 잔여 레벨(coeff_abs_level_remaining)가 포함될 수 있다.
물론, 잔차 정보 Rinfo에 포함되는 정보는 임의이고, 이들 정보 이외의 정보가 포함되도록 해도 된다.
<필터 정보 Finfo>
필터 정보 Finfo에는, 필터 처리에 관한 제어 정보가 포함된다. 예를 들어, 필터 정보 Finfo에는, 디블로킹 필터(DBF)에 관한 제어 정보가 포함될 수 있다. 또한, 필터 정보 Finfo에는, 화소 적응 오프셋(SAO)에 관한 제어 정보가 포함될 수 있다. 또한, 필터 정보 Finfo에는, 적응 루프 필터(ALF)에 관한 제어 정보가 포함될 수 있다. 또한, 필터 정보 Finfo에는, 기타 선형 필터나 비선형 필터에 관한 제어 정보가 포함될 수 있다.
예를 들어, 필터 정보 Finfo에는, 각 필터를 적용하는 픽처나, 픽처 내의 영역을 지정하는 정보가 포함될 수 있다. 또한, 필터 정보 Finfo에는, CU 단위의 필터 On 제어 정보 또는 Off 제어 정보가 포함될 수 있다. 또한, 필터 정보 Finfo에는, 슬라이스나 타일의 경계에 관한 필터 On 제어 정보나 Off 제어 정보가 포함될 수 있다.
물론, 필터 정보 Finfo에 포함되는 정보는 임의이고, 이들 정보 이외의 정보가 포함되도록 해도 된다.
복호부(412)의 설명으로 되돌아간다. 복호부(412)는, 잔차 정보 Rinfo를 참조하여, 각 변환 블록 내의 각 계수 위치의 양자화 변환 계수 레벨 level을 도출한다. 복호부(412)는, 그 양자화 변환 계수 레벨 level을, 역양자화부(413)에 공급한다.
또한, 복호부(412)는, 파싱한 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 양자화 변환 계수 레벨 level, 변환 정보 Tinfo, 필터 정보 Finfo를 각 블록에 공급한다. 구체적으로는 이하와 같다.
헤더 정보 Hinfo는, 역양자화부(413), 역직교 변환부(414), 예측부(419), 인루프 필터부(416)에 공급된다. 예측 모드 정보 Pinfo는, 역양자화부(413) 및 예측부(419)에 공급된다. 변환 정보 Tinfo는, 역양자화부(413) 및 역직교 변환부(414)에 공급된다. 필터 정보 Finfo는, 인루프 필터부(416)에 공급된다.
물론, 상술한 예는 일례이며, 이 예에 한정되지 않는다. 예를 들어, 각 부호화 파라미터가 임의의 처리부에 공급되도록 해도 된다. 또한, 기타 정보가, 임의의 처리부에 공급되도록 해도 된다.
<역양자화부>
역양자화부(413)는, 역양자화에 관한 처리를 실행한다. 예를 들어, 역양자화부(413)는, 복호부(412)로부터 공급되는 변환 정보 Tinfo 및 양자화 변환 계수 레벨 level을 취득한다. 또한, 역양자화부(413)는, 그 변환 정보 Tinfo에 기초하여, 양자화 변환 계수 레벨 level의 값을 스케일링(역양자화)하여, 역양자화 후의 변환 계수 Coeff_IQ를 도출한다.
또한, 이 역양자화는, 화상 부호화 장치(300)의 양자화부(314)에 의한 양자화의 역 처리로서 실행된다. 또한, 이 역양자화는 화상 부호화 장치(300)의 역양자화부(317)에 의한 역양자화와 마찬가지의 처리이다. 환언하면, 역양자화부(317)는, 역양자화부(413)와 마찬가지의 처리(역양자화)를 실행한다.
역양자화부(413)는 도출한 변환 계수 Coeff_IQ를 역직교 변환부(414)에 공급한다.
<역직교 변환부>
역직교 변환부(414)는, 역직교 변환에 관한 처리를 실행한다. 예를 들어, 역직교 변환부(414)는, 역양자화부(413)로부터 공급되는 변환 계수 Coeff_IQ를 취득한다. 또한, 역직교 변환부(414)는, 복호부(412)로부터 공급되는 변환 정보 Tinfo를 취득한다.
역직교 변환부(414)는, 그 변환 정보 Tinfo에 기초하여, 변환 계수 Coeff_IQ에 대하여 역직교 변환 처리를 실행하여, 예측 잔차 D'를 도출한다. 예를 들어, 역직교 변환부(414)는, 변환 계수 Coeff_IQ를 역 세컨더리 변환해서 프라이머리 변환 계수를 생성한다. 또한, 역직교 변환부(414)는, 그 프라이머리 변환 계수를 역 프라이머리 변환해서 예측 잔차 D'를 생성한다.
또한, 이 역직교 변환은, 화상 부호화 장치(300)의 직교 변환부(313)에 의한 직교 변환의 역 처리로서 실행된다. 또한, 이 역직교 변환은, 화상 부호화 장치(300)의 역직교 변환부(318)에 의한 역직교 변환과 마찬가지의 처리이다. 환언하면, 역직교 변환부(318)는, 역직교 변환부(414)와 마찬가지의 처리(역직교 변환)를 실행한다.
역직교 변환부(414)는, 도출한 예측 잔차 D'를 연산부(415)에 공급한다.
<연산부>
연산부(415)는, 화상에 관한 정보의 가산에 관한 처리를 실행한다. 예를 들어, 연산부(415)는, 역직교 변환부(414)로부터 공급되는 예측 잔차 D'를 취득한다. 또한, 연산부(415)는, 예측부(419)로부터 공급되는 예측 화상 P를 취득한다. 연산부(415)는, 이하의 식에 나타나는 바와 같이, 예측 잔차 D'와 그 예측 잔차 D'에 대응하는 예측 화상 P(예측 신호)를 가산하여, 국소 복호 화상 Rlocal을 도출한다.
Rlocal=D'+P
연산부(415)는 도출한 국소 복호 화상 Rlocal을, 인루프 필터부(416) 및 프레임 메모리(418)에 공급한다.
<인루프 필터부>
인루프 필터부(416)는, 인루프 필터 처리에 관한 처리를 실행한다. 예를 들어, 인루프 필터부(416)는, 연산부(415)로부터 공급되는 국소 복호 화상 Rlocal을 취득한다. 또한, 인루프 필터부(416)는, 복호부(412)로부터 공급되는 필터 정보 Finfo를 취득한다. 또한, 인루프 필터부(416)에 입력되는 정보는 임의이고, 이들 정보 이외의 정보가 입력되어도 된다.
인루프 필터부(416)는, 그 필터 정보 Finfo에 기초하여, 국소 복호 화상 Rlocal에 대하여 적절히 필터 처리를 실행한다. 예를 들어, 인루프 필터부(416)는, 필터 처리로서, 양방향 필터를 적용할 수 있다. 또한, 인루프 필터부(416)는, 필터 처리로서, 디블로킹 필터를 적용할 수 있다. 또한, 인루프 필터부(416)는, 필터 처리로서, 적응 오프셋 필터를 적용할 수 있다. 또한, 인루프 필터부(416)는, 필터 처리로서, 적응 루프 필터를 적용할 수 있다. 또한, 인루프 필터부(416)는, 필터 처리로서, 이들 중 복수의 필터를 조합해서 적용할 수 있다. 또한, 어느 필터를 적용할지, 어느 순으로 적용할지는 임의이고, 적절히 선택 가능하다. 예를 들어, 인루프 필터부(416)는, 필터 처리로서, 양방향 필터, 디블로킹 필터, 적응 오프셋 필터, 적응 루프 필터의 4개의 인루프 필터를 이 순으로 적용한다.
인루프 필터부(416)는, 부호화측(예를 들어 화상 부호화 장치(300)의 인루프 필터부(320))에 의해 실행된 필터 처리에 대응하는 필터 처리를 실행한다. 물론, 인루프 필터부(416)가 실행하는 필터 처리는 임의이고, 상술한 예에 한정되지 않는다. 예를 들어, 인루프 필터부(416)가 위너 필터 등을 적용하도록 해도 된다.
인루프 필터부(416)는 필터 처리된 국소 복호 화상 Rlocal을 재배열 버퍼(417) 및 프레임 메모리(418)에 공급한다.
<재배열 버퍼>
재배열 버퍼(417)는 인루프 필터부(416)로부터 공급된 국소 복호 화상 Rlocal을 입력으로 하고, 그것을 보유(기억)한다. 재배열 버퍼(417)는, 그 국소 복호 화상 Rlocal을 사용해서 픽처 단위마다의 복호 화상 R을 재구축하여, 보유한다(버퍼 내에 저장한다). 재배열 버퍼(417)는, 얻어진 복호 화상 R을, 복호순으로부터 재생순으로 재배열한다. 재배열 버퍼(417)는, 재배열한 복호 화상 R군을 동화상 데이터로서 화상 복호 장치(400)의 외부로 출력한다.
<프레임 메모리>
프레임 메모리(418)는 화상에 관한 데이터의 기억에 관한 처리를 실행한다. 예를 들어, 프레임 메모리(418)는 연산부(415)로부터 공급되는 국소 복호 화상 Rlocal을 취득한다. 그리고, 프레임 메모리(418)는, 그 국소 복호 화상 Rlocal을 사용해서 픽처 단위마다의 복호 화상 R을 재구축한다. 프레임 메모리(418)는 재구축한 복호 화상 R을 프레임 메모리(418) 내의 버퍼에 저장한다.
또한, 프레임 메모리(418)는, 인루프 필터부(416)로부터 공급되는, 인루프 필터 처리된 국소 복호 화상 Rlocal을 취득한다. 그리고, 프레임 메모리(418)는, 그 인루프 필터 처리된 국소 복호 화상 Rlocal을 사용하여, 픽처 단위마다의 복호 화상 R을 재구축한다. 프레임 메모리(418)는 재구축한 복호 화상 R을 프레임 메모리(418) 내의 버퍼에 저장한다.
또한, 프레임 메모리(418)는, 적절히, 그 기억하고 있는 복호 화상 R(또는 그 일부)을 참조 화상으로서 예측부(419)에 공급한다.
또한, 프레임 메모리(418)가, 복호 화상의 생성에 관한 헤더 정보 Hinfo, 예측 모드 정보 Pinfo, 변환 정보 Tinfo, 필터 정보 Finfo 등을 기억하도록 해도 된다.
<예측부>
예측부(419)는, 예측 화상의 생성에 관한 처리를 실행한다. 예를 들어, 예측부(419)는, 복호부(412)로부터 공급되는 예측 모드 정보 Pinfo를 취득한다. 또한, 예측부(419)는, 그 예측 모드 정보 Pinfo에 의해 지정되는 예측 방법에 의해 예측 처리를 실행하여, 예측 화상 P를 도출한다. 그 도출 시, 예측부(419)는, 그 예측 모드 정보 Pinfo에 의해 지정되는, 프레임 메모리(418)에 저장된 복호 화상 R(또는 그 일부)을, 참조 화상으로서 이용한다. 이 복호 화상 R은, 필터 전의 것이어도 되고, 필터 후의 것이어도 된다. 예측부(419)는, 도출한 예측 화상 P를, 연산부(415)에 공급한다.
<구성예>
또한, 이들 처리부(축적 버퍼(411) 내지 예측부(419))는, 임의의 구성을 갖는다. 예를 들어, 각 처리부가, 상술한 처리를 실현하는 논리 회로에 의해 구성되도록 해도 된다. 또한, 각 처리부가, 예를 들어 CPU, ROM, RAM 등을 갖고, 그들을 사용해서 프로그램을 실행함으로써, 상술한 처리를 실현하도록 해도 된다. 물론, 각 처리부가, 그 양쪽의 구성을 갖고, 상술한 처리의 일부를 논리 회로에 의해 실현하고, 그 외를, 프로그램을 실행함으로써 실현하도록 해도 된다. 각 처리부의 구성은 서로 독립되어 있어도 된다. 예를 들어, 일부의 처리부가 상술한 처리의 일부를 논리 회로에 의해 실현하고, 다른 일부의 처리부가 프로그램을 실행함으로써 상술한 처리를 실현하고, 또 다른 처리부가 논리 회로와 프로그램의 실행의 양쪽에 의해 상술한 처리를 실현하도록 해도 된다.
<화상 복호 처리의 흐름>
이어서, 이상과 같은 구성의 화상 복호 장치(400)에 의해 실행되는 화상 복호 처리의 흐름의 예를, 도 8의 흐름도를 참조하여 설명한다.
화상 복호 처리가 개시되면, 축적 버퍼(411)는, 스텝 S401에 있어서, 화상 복호 장치(400)의 외부로부터 공급되는 부호화 데이터(비트 스트림)를 취득해서 보유한다(축적한다).
스텝 S402에 있어서, 복호부(412)는, 그 부호화 데이터(비트 스트림)를 복호하여, 양자화 변환 계수 레벨 level을 얻는다. 또한, 복호부(412)는, 이 복호에 의해, 부호화 데이터(비트 스트림)로부터 각종 부호화 파라미터를 파싱한다(해석해서 취득한다).
스텝 S403에 있어서, 역양자화부(413)는, 스텝 S402의 처리에 의해 얻어진 양자화 변환 계수 레벨 level에 대하여, 부호화측에서 실행된 양자화의 역 처리인 역양자화를 실행하여, 변환 계수 Coeff_IQ를 얻는다.
스텝 S404에 있어서, 역직교 변환부(414)는, 스텝 S403에 있어서 얻어진 변환 계수 Coeff_IQ에 대하여, 부호화측에서 실행된 직교 변환 처리의 역 처리인 역직교 변환 처리를 실행하여, 예측 잔차 D'를 얻는다. 예를 들어, 역직교 변환부(414)는, 변환 계수 Coeff_IQ(세컨더리 변환 계수)를 역 세컨더리 변환해서 프라이머리 변환 계수를 생성한다. 또한, 역직교 변환부(414)는, 그 프라이머리 변환 계수를 역 프라이머리 변환해서 예측 잔차 D'를 생성한다.
스텝 S405에 있어서, 예측부(419)는, 스텝 S402에 있어서 파싱된 정보에 기초하여, 부호화측에서 지정되는 예측 방법으로 예측 처리를 실행하고, 프레임 메모리(418)에 기억되어 있는 참조 화상을 참조하거나 하여, 예측 화상 P를 생성한다.
스텝 S406에 있어서, 연산부(415)는, 스텝 S404에 있어서 얻어진 예측 잔차 D'와, 스텝 S405에 있어서 얻어진 예측 화상 P를 가산하여, 국소 복호 화상 Rlocal을 도출한다.
스텝 S407에 있어서, 인루프 필터부(416)는, 스텝 S406의 처리에 의해 얻어진 국소 복호 화상 Rlocal에 대하여, 인루프 필터 처리를 실행한다.
스텝 S408에 있어서, 재배열 버퍼(417)는, 스텝 S407의 처리에 의해 얻어진 「필터 처리된 국소 복호 화상 Rlocal」을 사용해서 복호 화상 R을 도출하고, 그 복호 화상 R군의 순서를 복호순으로부터 재생순으로 재배열한다. 재생순으로 재배열된 복호 화상 R군은, 동화상으로서 화상 복호 장치(400)의 외부로 출력된다.
또한, 스텝 S409에 있어서, 프레임 메모리(418)는, 스텝 S406의 처리에 의해 얻어진 국소 복호 화상 Rlocal 및, 스텝 S407의 처리에 의해 얻어진 필터 처리 후의 국소 복호 화상 Rlocal 중, 적어도 한쪽을 기억한다.
스텝 S409의 처리가 종료되면, 화상 복호 처리가 종료된다.
<4. 부기>
<컴퓨터>
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 컴퓨터에 인스톨된다. 여기서 컴퓨터에는, 전용의 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 9는 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어 구성예를 도시하는 블록도이다.
도 9에 도시되는 컴퓨터(800)에 있어서, CPU(Central Processing Unit)(801), ROM(Read Only Memory)(802), RAM(Random Access Memory)(803)은, 버스(804)를 통해 서로 접속되어 있다.
버스(804)에는 또한, 입출력 인터페이스(810)도 접속되어 있다. 입출력 인터페이스(810)에는, 입력부(811), 출력부(812), 기억부(813), 통신부(814) 및 드라이브(815)가 접속되어 있다.
입력부(811)는, 예를 들어 키보드, 마우스, 마이크로폰, 터치 패널, 입력 단자 등으로 이루어진다. 출력부(812)는, 예를 들어 디스플레이, 스피커, 출력 단자 등으로 이루어진다. 기억부(813)는, 예를 들어 하드 디스크, RAM 디스크, 불휘발성의 메모리 등으로 이루어진다. 통신부(814)는, 예를 들어 네트워크 인터페이스로 이루어진다. 드라이브(815)는 자기 디스크, 광 디스크, 광자기 디스크 또는 반도체 메모리 등의 리무버블 미디어(821)를 구동한다.
이상과 같이 구성되는 컴퓨터에서는, CPU(801)가, 예를 들어 기억부(813)에 기억되어 있는 프로그램을, 입출력 인터페이스(810) 및 버스(804)를 통해, RAM(803)에 로드해서 실행함으로써, 상술한 일련의 처리가 실행된다. RAM(803)에는 또한, CPU(801)가 각종 처리를 실행함에 있어서 필요한 데이터 등도 적절히 기억된다.
컴퓨터가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(821)에 기록해서 적용할 수 있다. 그 경우, 프로그램은, 리무버블 미디어(821)를 드라이브(815)에 장착함으로써, 입출력 인터페이스(810)를 통해, 기억부(813)에 인스톨할 수 있다.
또한, 이 프로그램은, 로컬 에어리어 네트워크, 인터넷, 디지털 위성 방송과 같은, 유선 또는 무선의 전송 매체를 통해 제공할 수도 있다. 그 경우, 프로그램은, 통신부(814)에서 수신하여, 기억부(813)에 인스톨할 수 있다.
기타, 이 프로그램은 ROM(802)이나 기억부(813)에, 미리 인스톨해 둘 수도 있다.
<본 기술의 적용 대상>
본 기술은, 임의의 화상 부호화 방식에 적용할 수 있다. 즉, 상술한 본 기술과 모순되지 않는 한, 변환(역변환), 양자화(역양자화), 부호화, 예측 등, 화상 부호화에 관한 각종 처리의 사양은 임의이고, 상술한 예에 한정되지 않는다. 또한, 상술한 본 기술과 모순되지 않는 한, 이들 처리 중 일부를 생략해도 된다.
또한 본 기술은, 복수의 시점(뷰(view))의 화상을 포함하는 다시점 화상의 부호화나 복호를 실행하는 다시점 화상 부호화 시스템(또는 다시점 화상 복호 시스템)에 적용할 수 있다. 그 경우, 각 시점(뷰(view))의 부호화나 복호에 있어서, 본 기술을 적용하도록 하면 된다.
또한 본 기술은, 소정의 파라미터에 대해서 스케일러빌리티(scalability) 기능을 갖도록 복수 레이어화(계층화)된 계층 화상의 부호화를 실행하는 계층 화상 부호화(스케일러블 부호화) 시스템(또는 계층 화상 복호 시스템)에 적용할 수 있다. 그 경우, 각 계층(레이어)의 부호화나 복호에 있어서, 본 기술을 적용하도록 하면 된다.
또한, 이상에 있어서는, 본 기술의 적용예로서, 화상 부호화 장치(300) 및 화상 복호 장치(400)에 대해서 설명했지만, 본 기술은 임의의 구성에 적용할 수 있다.
예를 들어, 본 기술은, 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신, 및 셀룰러 통신에 의한 단말기로의 배신 등에 있어서의 송신기나 수신기(예를 들어 텔레비전 수상기나 휴대 전화기), 또는 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하거나, 이들 기억 매체로부터 화상을 재생하거나 하는 장치(예를 들어 하드 디스크 레코더나 카메라) 등의, 여러가지 전자 기기에 응용될 수 있다.
또한, 예를 들어 본 기술은, 시스템 LSI(Large Scale Integration) 등으로서의 프로세서(예를 들어 비디오 프로세서), 복수의 프로세서 등을 사용하는 모듈(예를 들어 비디오 모듈), 복수의 모듈 등을 사용하는 유닛(예를 들어 비디오 유닛), 또는 유닛에 추가로 기타 기능을 부가한 세트(예를 들어 비디오 세트) 등, 장치의 일부의 구성으로서 실시할 수도 있다.
또한, 예를 들어 본 기술은, 복수의 장치에 의해 구성되는 네트워크 시스템에도 적용할 수도 있다. 예를 들어, 본 기술을, 네트워크를 통해서 복수의 장치에서 분담, 공동해서 처리하는 클라우드 컴퓨팅으로서 실시하도록 해도 된다. 예를 들어, 컴퓨터, AV(Audio Visual) 기기, 휴대형 정보 처리 단말기, IoT(Internet of Things) 디바이스 등의 임의의 단말기에 대하여, 화상(동화상)에 관한 서비스를 제공하는 클라우드 서비스에 있어서 본 기술을 실시하도록 해도 된다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하고, 모든 구성 요소가 동일 하우징 중에 있는지의 여부는 묻지 않는다. 따라서, 별개의 하우징에 수납되어, 네트워크를 통해서 접속되어 있는 복수의 장치, 및 1개의 하우징 중에 복수의 모듈이 수납되어 있는 1개의 장치는, 모두 시스템이다.
<본 기술을 적용 가능한 분야나 용도>
본 기술을 적용한 시스템, 장치, 처리부 등은, 예를 들어 교통, 의료, 방범, 농업, 축산업, 광업, 미용, 공장, 가전, 기상, 자연 감시 등, 임의의 분야에 이용할 수 있다. 또한, 그 용도도 임의이다.
예를 들어, 본 기술은, 관상용 콘텐츠 등의 제공의 용도로 제공되는 시스템이나 디바이스에 적용할 수 있다. 또한, 예를 들어 본 기술은, 교통 상황의 감리나 자동 운전 제어 등, 교통의 용도로 제공되는 시스템이나 디바이스에도 적용할 수 있다. 또한, 예를 들어 본 기술은, 시큐리티의 용도로 제공되는 시스템이나 디바이스에도 적용할 수 있다. 또한, 예를 들어 본 기술은, 기계 등의 자동 제어의 용도로 제공되는 시스템이나 디바이스에 적용할 수 있다. 또한, 예를 들어 본 기술은, 농업이나 축산업의 용도로 제공되는 시스템이나 디바이스에도 적용할 수 있다. 또한, 본 기술은, 예를 들어 화산, 삼림, 해양 등의 자연의 상태나 야생 생물 등을 감시하는 시스템이나 디바이스에도 적용할 수 있다. 또한, 예를 들어 본 기술은, 스포츠의 용도로 제공되는 시스템이나 디바이스에도 적용할 수 있다.
<기타>
또한, 본 명세서에 있어서 「플래그」란, 복수의 상태를 식별하기 위한 정보이며, 참(1) 또는 거짓(0)의 2 상태를 식별할 때에 사용하는 정보뿐만 아니라, 3 이상의 상태를 식별하는 것이 가능한 정보도 포함된다. 따라서, 이 「플래그」가 취할 수 있는 값은, 예를 들어 1/0의 2치여도 되고, 3치 이상이어도 된다. 즉, 이 「플래그」를 구성하는 bit수는 임의이고, 1bit나 복수bit여도 된다. 또한, 식별 정보(플래그도 포함한다)는, 그 식별 정보를 비트 스트림에 포함시키는 형뿐만 아니라, 어떤 기준이 되는 정보에 대한 식별 정보의 차분 정보를 비트 스트림에 포함하는 형도 상정되기 때문에, 본 명세서에 있어서는, 「플래그」나 「식별 정보」는, 그 정보뿐만 아니라, 기준이 되는 정보에 대한 차분 정보도 포함한다.
또한, 부호화 데이터(비트 스트림)에 관한 각종 정보(메타 데이터 등)는, 부호화 데이터에 관련지어져 있으면, 어떤 형태로 전송 또는 기록되도록 해도 된다. 여기서, 「관련짓는다」라고 하는 용어는, 예를 들어 한쪽의 데이터를 처리할 때에 다른 쪽의 데이터를 이용할 수 있도록(링크시킬 수 있도록) 하는 것을 의미한다. 즉, 서로 관련지어진 데이터는, 하나의 데이터로서 통합되어도 되고, 각각 개별의 데이터로 해도 된다. 예를 들어, 부호화 데이터(화상)에 관련지어진 정보는, 그 부호화 데이터(화상)와는 다른 전송로 상에서 전송되도록 해도 된다. 또한, 예를 들어 부호화 데이터(화상)에 관련지어진 정보는, 그 부호화 데이터(화상)와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되도록 해도 된다. 또한, 이 「관련지음」은, 데이터 전체가 아니고, 데이터의 일부여도 된다. 예를 들어, 화상과 그 화상에 대응하는 정보가, 복수 프레임, 1 프레임 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련짓도록 해도 된다.
또한, 본 명세서에 있어서, 「합성하다」, 「다중화하다」, 「부가하다」, 「일체화하다」, 「포함시키다」, 「저장하다」, 「집어 넣는다」, 「끼워 넣는다」, 「삽입한다」 등의 용어는, 예를 들어 부호화 데이터와 메타 데이터를 하나의 데이터로 통합한다고 하는, 복수의 물을 하나로 통합하는 것을 의미하고, 상술한 「관련짓는다」의 하나의 방법을 의미한다.
또한, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니고, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
예를 들어, 1개의 장치(또는 처리부)로서 설명한 구성을 분할하여, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합해서 1개의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함시키도록 해도 된다.
또한, 예를 들어 상술한 프로그램은, 임의의 장치에 있어서 실행되도록 해도 된다. 그 경우, 그 장치가, 필요한 기능(기능 블록 등)을 갖고, 필요한 정보를 얻을 수 있도록 하면 된다.
또한, 예를 들어 1개의 흐름도의 각 스텝을, 1개의 장치가 실행하도록 해도 되고, 복수의 장치가 분담해서 실행하도록 해도 된다. 또한, 1개의 스텝에 복수의 처리가 포함되는 경우, 그 복수의 처리를, 1개의 장치가 실행하도록 해도 되고, 복수의 장치가 분담해서 실행하도록 해도 된다. 환언하면, 1개의 스텝에 포함되는 복수의 처리를, 복수의 스텝의 처리로서 실행할 수도 있다. 반대로, 복수의 스텝으로서 설명한 처리를 1개의 스텝으로서 통합해서 실행할 수도 있다.
컴퓨터가 실행하는 프로그램은, 예를 들어 그 프로그램을 기술하는 스텝의 처리가, 본 명세서에서 설명하는 순서를 따라 시계열로 실행되도록 해도 된다. 또한, 컴퓨터가 실행하는 프로그램은, 그 프로그램을 기술하는 스텝의 처리가, 병렬로 실행되도록 해도 된다. 또한, 컴퓨터가 실행하는 프로그램은, 그 프로그램을 기술하는 스텝의 처리가, 호출되었을 때 등의 필요한 타이밍에 개별로 실행되도록 해도 된다. 즉, 모순이 발생하지 않는 한, 각 스텝의 처리가 상술한 순서와 상이한 순서로 실행되도록 해도 된다. 또한, 이 프로그램을 기술하는 스텝의 처리가, 다른 프로그램의 처리와 병렬로 실행되도록 해도 되고, 다른 프로그램의 처리와 조합해서 실행되도록 해도 된다.
또한, 예를 들어 본 기술에 관한 복수의 기술은, 모순이 발생하지 않는 한, 각각 독립적으로 단체로 실시할 수 있다. 물론, 임의의 복수의 본 기술을 병용해서 실시할 수도 있다. 예를 들어, 어느 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부를, 다른 실시 형태에 있어서 설명한 본 기술의 일부 또는 전부와 조합해서 실시할 수도 있다. 또한, 상술한 임의의 본 기술의 일부 또는 전부를, 상술하지 않은 다른 기술과 병용해서 실시할 수도 있다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 상기 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는 부호화 모드 설정부
를 구비하는 화상 처리 장치.
(2) 상기 부호화 모드 설정부는, 상기 부호화 모드의 설정으로서, 상기 조인트 색차 부호화 모드에 관한 설정과 상기 변환 타입의 설정을 실행하는
(1)에 기재된 화상 처리 장치.
(3) 상기 부호화 모드 설정부는, 상기 조인트 색차 부호화 모드에 있어서 상기 변환 타입으로서, 변환 스킵을 적용할 것인지를 설정하는
(2)에 기재된 화상 처리 장치.
(4) 상기 부호화 모드 설정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 변환 타입으로서 DCT2를 적용하는
(3)에 기재된 화상 처리 장치.
(5) 상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 스킵 플래그의 값을, 상기 조인트 색차 부호화 모드에 있어서의 상기 변환 스킵 플래그로 설정하는
(3) 또는 (4)에 기재된 화상 처리 장치.
(6) 상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드에 있어서의 색차 부호화 블록 플래그에 기초하여 상기 조인트 색차 부호화 모드를 설정하는
(2) 내지 (5)의 어느 것에 기재된 화상 처리 장치.
(7) 상기 부호화 모드 설정부는, 설정한 상기 조인트 색차 부호화 모드에 기초하여 부호화 컴포넌트 식별자를 설정하는
(6)에 기재된 화상 처리 장치.
(8) 상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드에 있어서, 각 변환 타입의 부호화 비용을 도출하고, 도출한 상기 부호화 비용 중에서 최소가 되는 상기 변환 타입을 설정하고, 설정한 상기 변환 타입을 상기 조인트 색차 부호화 모드에 있어서의 상기 변환 타입으로 설정하는
(1) 내지 (7)의 어느 것에 기재된 화상 처리 장치.
(9) 상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드의 최소 부호화 비용과 상기 조인트 색차 부호화 모드의 부호화 비용을 비교하여, 상기 부호화 비용이 최소가 되는 모드를 선택하는
(1) 내지 (8)의 어느 것에 기재된 화상 처리 장치.
(10) 상기 부호화 모드 설정부에 의해 설정된 상기 부호화 모드에 따라서, 상기 화상의 계수 데이터를 직교 변환하는 직교 변환부를 더 구비하는
(1) 내지 (9)의 어느 것에 기재된 화상 처리 장치.
(11) 상기 부호화 모드 설정부에 의해 설정된 상기 부호화 모드에 따라서, 상기 직교 변환부에 의해 직교 변환된 상기 계수 데이터를 부호화하는 부호화부를 더 구비하는
(10)에 기재된 화상 처리 장치.
(12) 상기 부호화 모드 설정부는, 상기 부호화 모드로서, 변환 스킵을 적용할 것인지를 나타내는 변환 스킵 플래그를 설정하고,
상기 부호화부는, 상기 부호화 모드 설정부에 의해 설정된 상기 변환 스킵 플래그를 부호화하는
(11)에 기재된 화상 처리 장치.
(13) 상기 직교 변환부에 의해 직교 변환된 상기 계수 데이터를 양자화하는 양자화부를 더 구비하고,
상기 부호화부는, 상기 양자화부에 의해 양자화된 상기 계수 데이터를 부호화하는
(11) 또는 (12)에 기재된 화상 처리 장치.
(14) 상기 화상과 예측 화상의 잔차를 생성하는 연산부를 더 구비하고,
상기 직교 변환부는, 상기 잔차의 계수 데이터를 직교 변환하는
(10) 내지 (13)의 어느 것에 기재된 화상 처리 장치.
(15) 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 상기 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는
화상 처리 방법.
300: 화상 부호화 장치
301: 제어부
312: 연산부
313: 직교 변환부
314: 양자화부
315: 부호화부
301: 제어부
312: 연산부
313: 직교 변환부
314: 양자화부
315: 부호화부
Claims (15)
- 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 상기 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는 부호화 모드 설정부
를 구비하는 화상 처리 장치. - 제1항에 있어서,
상기 부호화 모드 설정부는, 상기 부호화 모드의 설정으로서, 상기 조인트 색차 부호화 모드에 관한 설정과 상기 변환 타입의 설정을 실행하는, 화상 처리 장치. - 제2항에 있어서,
상기 부호화 모드 설정부는, 상기 조인트 색차 부호화 모드에 있어서 상기 변환 타입으로서, 변환 스킵을 적용할 것인지를 설정하는, 화상 처리 장치. - 제3항에 있어서,
상기 부호화 모드 설정부는, 상기 변환 스킵을 적용하지 않는 경우, 상기 변환 타입으로서 DCT2를 적용하는, 화상 처리 장치. - 제3항에 있어서,
상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 스킵 플래그의 값을, 상기 조인트 색차 부호화 모드에 있어서의 상기 변환 스킵 플래그로 설정하는, 화상 처리 장치. - 제2항에 있어서,
상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드에 있어서의 색차 부호화 블록 플래그에 기초하여 상기 조인트 색차 부호화 모드를 설정하는, 화상 처리 장치. - 제6항에 있어서,
상기 부호화 모드 설정부는, 설정한 상기 조인트 색차 부호화 모드에 기초하여 부호화 컴포넌트 식별자를 설정하는, 화상 처리 장치. - 제1항에 있어서,
상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드에 있어서, 각 변환 타입의 부호화 비용을 도출하고, 도출한 상기 부호화 비용 중에서 최소가 되는 상기 변환 타입을 설정하고, 설정한 상기 변환 타입을 상기 조인트 색차 부호화 모드에 있어서의 상기 변환 타입으로 설정하는, 화상 처리 장치. - 제1항에 있어서,
상기 부호화 모드 설정부는, 상기 비조인트 색차 부호화 모드의 최소 부호화 비용과 상기 조인트 색차 부호화 모드의 부호화 비용을 비교하여, 상기 부호화 비용이 최소가 되는 모드를 선택하는, 화상 처리 장치. - 제1항에 있어서,
상기 부호화 모드 설정부에 의해 설정된 상기 부호화 모드에 따라서, 상기 화상의 계수 데이터를 직교 변환하는 직교 변환부를 더 구비하는, 화상 처리 장치. - 제10항에 있어서,
상기 부호화 모드 설정부에 의해 설정된 상기 부호화 모드에 따라서, 상기 직교 변환부에 의해 직교 변환된 상기 계수 데이터를 부호화하는 부호화부를 더 구비하는, 화상 처리 장치. - 제11항에 있어서,
상기 부호화 모드 설정부는, 상기 부호화 모드로서, 변환 스킵을 적용할 것인지를 나타내는 변환 스킵 플래그를 설정하고,
상기 부호화부는, 상기 부호화 모드 설정부에 의해 설정된 상기 변환 스킵 플래그를 부호화하는, 화상 처리 장치. - 제11항에 있어서,
상기 직교 변환부에 의해 직교 변환된 상기 계수 데이터를 양자화하는 양자화부를 더 구비하고,
상기 부호화부는, 상기 양자화부에 의해 양자화된 상기 계수 데이터를 부호화하는, 화상 처리 장치. - 제10항에 있어서,
상기 화상과 예측 화상의 잔차를 생성하는 연산부를 더 구비하고,
상기 직교 변환부는, 상기 잔차의 계수 데이터를 직교 변환하는, 화상 처리 장치. - 비조인트 색차 부호화 모드에 있어서의 최소 부호화 비용이 되는 변환 타입을, 조인트 색차 부호화 모드에 있어서의 변환 타입으로 설정하여, 상기 조인트 색차 부호화 모드에 있어서의 부호화 비용을 도출함으로써, 화상의 부호화의 부호화 모드를 설정하는, 화상 처리 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962947304P | 2019-12-12 | 2019-12-12 | |
US62/947,304 | 2019-12-12 | ||
PCT/JP2020/046263 WO2021117866A1 (ja) | 2019-12-12 | 2020-12-11 | 画像処理装置および方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220113369A true KR20220113369A (ko) | 2022-08-12 |
Family
ID=76329997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227017819A KR20220113369A (ko) | 2019-12-12 | 2020-12-11 | 화상 처리 장치 및 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220394256A1 (ko) |
EP (2) | EP4401407A3 (ko) |
JP (2) | JP7517348B2 (ko) |
KR (1) | KR20220113369A (ko) |
CN (1) | CN114762327A (ko) |
WO (1) | WO2021117866A1 (ko) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12022082B2 (en) * | 2019-09-27 | 2024-06-25 | Sk Telecom Co., Ltd. | Method for reconstructing residual blocks of chroma blocks, and video decoding apparatus |
WO2021071339A1 (ko) * | 2019-10-10 | 2021-04-15 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
AU2019275552B2 (en) * | 2019-12-03 | 2022-10-13 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding a coding tree unit |
AU2019275553B2 (en) * | 2019-12-03 | 2022-10-06 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding a coding tree unit |
-
2020
- 2020-12-11 CN CN202080083856.3A patent/CN114762327A/zh active Pending
- 2020-12-11 EP EP24179078.1A patent/EP4401407A3/en active Pending
- 2020-12-11 KR KR1020227017819A patent/KR20220113369A/ko unknown
- 2020-12-11 EP EP20898348.6A patent/EP4050896B1/en active Active
- 2020-12-11 WO PCT/JP2020/046263 patent/WO2021117866A1/ja unknown
- 2020-12-11 US US17/775,583 patent/US20220394256A1/en active Pending
- 2020-12-11 JP JP2021564060A patent/JP7517348B2/ja active Active
-
2024
- 2024-06-12 JP JP2024095120A patent/JP2024113189A/ja active Pending
Non-Patent Citations (2)
Title |
---|
Benjamin Bross, Jianle Chen, Shan Liu, Ye-Kui Wang, "Versatile Video Coding(Draft 7)", JVET-P2001-vE, Joint Video Experts Team (JVET)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1116th Meeting: Feneva, CH, 1-11 Oct 2019 |
Jianle Chen, Yan Ye, Seung Hwan Kim, "Algorithm description for Versatile Video Coding and Test Model 7(VTM 7)", JVET-P2002-v1, Joint Video Experts Team(JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1116th Meeting: Geneva, CH, 1-11 Oct. 2019 |
Also Published As
Publication number | Publication date |
---|---|
EP4401407A2 (en) | 2024-07-17 |
CN114762327A (zh) | 2022-07-15 |
EP4050896A4 (en) | 2022-12-21 |
US20220394256A1 (en) | 2022-12-08 |
EP4050896B1 (en) | 2024-06-12 |
JP7517348B2 (ja) | 2024-07-17 |
EP4050896A1 (en) | 2022-08-31 |
JP2024113189A (ja) | 2024-08-21 |
EP4401407A3 (en) | 2024-10-09 |
WO2021117866A1 (ja) | 2021-06-17 |
JPWO2021117866A1 (ko) | 2021-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021125309A1 (ja) | 画像処理装置および方法 | |
US20210144376A1 (en) | Image processing apparatus and method | |
JP7235030B2 (ja) | 画像処理装置および方法 | |
KR20220053563A (ko) | 화상 처리 장치 및 방법 | |
JP2024105675A (ja) | 画像処理装置および方法 | |
JP7235031B2 (ja) | 画像処理装置および方法 | |
WO2019188465A1 (ja) | 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法 | |
WO2019188464A1 (ja) | 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法 | |
WO2022255395A1 (ja) | 画像処理装置および方法 | |
JP2022002352A (ja) | 画像処理装置および方法 | |
US20230007265A1 (en) | Image processing device, bit stream generation method, coefficient data generation method, and quantization coefficient generation method | |
JP7517348B2 (ja) | 画像処理装置および方法 | |
US20240275970A1 (en) | Image processing device and method | |
US20240163437A1 (en) | Image processing device and method | |
US20240357129A1 (en) | Image processing apparatus and method | |
US20230045106A1 (en) | Image processing apparatus and method | |
WO2020129636A1 (ja) | 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法 | |
KR20220053560A (ko) | 화상 처리 장치 및 방법 |