KR102074601B1 - 화상 처리 장치 및 방법, 및 기록 매체 - Google Patents

화상 처리 장치 및 방법, 및 기록 매체 Download PDF

Info

Publication number
KR102074601B1
KR102074601B1 KR1020187003084A KR20187003084A KR102074601B1 KR 102074601 B1 KR102074601 B1 KR 102074601B1 KR 1020187003084 A KR1020187003084 A KR 1020187003084A KR 20187003084 A KR20187003084 A KR 20187003084A KR 102074601 B1 KR102074601 B1 KR 102074601B1
Authority
KR
South Korea
Prior art keywords
coefficient
unit
difference
matrix
data
Prior art date
Application number
KR1020187003084A
Other languages
English (en)
Other versions
KR20180017210A (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 KR20180017210A publication Critical patent/KR20180017210A/ko
Application granted granted Critical
Publication of KR102074601B1 publication Critical patent/KR102074601B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

본 발명은, 스케일링 리스트의 부호량의 증대를 억제할 수 있도록 하는 화상 처리 장치 및 방법에 관한 것이다. 본 발명의 화상 처리 장치는, 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를, 양자화 행렬의 선두에 위치하는 계수에 가산함으로써, 양자화 행렬의 선두에 위치하는 계수를 설정하고, 설정된 양자화 행렬을 업 컨버트하고, 그 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환 계수로 치환한 업 컨버트 양자화 행렬을 사용하여, 양자화 데이터를 역양자화한다. 본 발명은 화상 처리 장치에 적용할 수 있다.

Description

화상 처리 장치 및 방법, 및 기록 매체{IMAGE PROCESSING DEVICE AND METHOD, AND RECORDING MEDIUM}
본 발명은, 화상 처리 장치 및 방법에 관한 것이다.
영상 부호화 방식의 표준 사양의 하나인 H.264/AVC(Advanced Video Coding)에서는, High Profile 이상의 프로파일에 있어서, 화상 데이터의 양자화 시에, 직교 변환 계수의 성분마다 상이한 양자화 스텝을 사용할 수 있다. 직교 변환 계수의 성분마다의 양자화 스텝은, 직교 변환의 단위와 동등한 사이즈로 정의되는 양자화 행렬(스케일링 리스트라고도 함) 및 기준의 스텝 값에 기초하여 설정될 수 있다.
양자화 행렬의 규정 값은, 예측 모드(인트라 예측 모드, 인터 예측 모드)와 변환 단위의 사이즈(4x4, 8x8)마다 준비된다. 또한, 유저는, 시퀀스 파라미터 세트 또는 픽처 파라미터 세트에 있어서, 기정 값과는 상이한 독자의 양자화 행렬을 지정할 수 있다. 양자화 행렬이 사용되지 않는 경우에는, 양자화 시에 사용되는 양자화 스텝은, 모든 성분에 대하여 동등한 값이 된다.
H.264/AVC에 이어지는 차세대의 영상 부호화 방식으로서 표준화가 진행되고 있는 HEVC(High Efficiency Video Coding)에서는, 종래의 매크로 블록에 상당하는 부호화 단위(CU(Coding Unit))라는 개념이 도입되어 있다(예를 들어, 비특허문헌 1 참조). 부호화 단위의 사이즈의 범위는, 시퀀스 파라미터 세트에 있어서, LCU(Largest Coding Unit) 및 SCU(Smallest Coding Unit)라는 2의 멱승 값의 세트로 지정된다. 그리고, split_flag를 사용하여, LCU 및 SCU로 지정된 범위 내의 구체적인 부호화 단위의 사이즈가 특정된다.
HEVC에서는, 하나의 부호화 단위는, 1개 이상의 직교 변환의 단위, 즉 1개 이상의 변환 단위(TU(Transform Unit))로 분할될 수 있다. 변환 단위의 사이즈로서는, 4x4, 8x8, 16x16 및 32x32 중 어느 하나가 이용 가능하다.
그런데, 양자화 행렬(스케일링 리스트(Scaling List))은, 전송 시의 부호량의 저감 등을 목적으로, 그 DC 성분(직류 성분이라고도 함)이, AC 성분(교류 성분이라고도 함)과는 다른 데이터로서 전송된다. 즉, 스케일링 리스트의 DC 성분은, 스케일링 리스트의 AC 성분인 각 AC 계수(교류 계수라고도 함)와는 다른, DC 계수(직류 계수라고도 함)로서 전송된다.
이 DC 계수에 대해서, 전송 시의 부호량을 저감시키기 위해서, DC 계수의 값으로부터 상수(예를 들어 8)가 차감되고, 그 값(scaling_list_dc_coef_minus8)이, 부호가 달린 지수 골롬 부호화(signed exponential golomb coding)되도록 하는 것이 제안되어 있다(예를 들어, 비특허문헌 1 참조).
Benjamin Bross, Fraunhofer HHI, Woo-Jin Han, Gachon University, Jens-Rainer Ohm, RWTH Aachen, Gary J. Sullivan, Microsoft, Thomas Wiegand, Fraunhofer HHI/TU Berlin, JCTVC-H1003, "High Efficiency Video Coding (HEVC) text specification draft 6", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG117th Meeting: Geneva, CH, 21-30 November, 2011
그러나, 이 방법의 경우, 처리는 용이하기는 하지만, 압축 효율이 충분하지 않을 우려가 있었다.
본 발명은, 이러한 상황을 감안하여 제안된 것이며, 스케일링 리스트의 부호량의 증가를 억제할 수 있도록 하는 것을 목적으로 한다.
본 발명의 일 측면은, 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트(up-converting)한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를, 상기 양자화 행렬의 선두에 위치하는 계수에 가산함으로써, 상기 양자화 행렬의 선두에 위치하는 계수를 설정하는 설정부와, 상기 설정부에 의해 설정된 양자화 행렬을 업 컨버트하여, 상기 업 컨버트 양자화 행렬을 설정하는 업 컨버트부와, 상기 업 컨버트부에 의해 설정된 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 상기 치환 계수로 치환한 업 컨버트 양자화 행렬을 사용하여, 부호화 데이터를 복호한 양자화 데이터를 역양자화하는 역양자화부를 구비하는 화상 처리 장치이다.
상기 설정부는, 상기 치환 계수와 상기 양자화 행렬에 설정된 초기값과의 차분을, 상기 초기값에 가산함으로써, 상기 치환 계수를 설정할 수 있다.
상기 설정부는, 상기 치환 차분 계수와 상기 양자화 행렬의 계수끼리의 차분인 차분 계수를 사용하여, 상기 양자화 행렬의 계수를 설정할 수 있다.
상기 치환 차분 계수와 상기 양자화 행렬의 계수끼리의 차분인 차분 계수는, 통합하여 전송되고, 상기 설정부는, 통합하여 전송된 치환 차분 계수와 차분 계수를 사용하여, 상기 양자화 행렬의 계수를 설정할 수 있다.
상기 치환 차분 계수와 상기 양자화 행렬의 계수끼리의 차분인 차분 계수는, 부호화되어 있고, 상기 설정부는, 부호화된 치환 차분 계수와 차분 계수를 복호할 수 있다.
상기 업 컨버트부는, 상기 양자화 행렬의 행렬 요소에 대하여 최근방 보간 처리를 행함으로써, 상기 전송 사이즈 이하로 제한된 양자화 행렬을 업 컨버트할 수 있다.
상기 전송 사이즈는 8x8이며, 상기 업 컨버트부는, 8x8 사이즈의 양자화 행렬의 행렬 요소에 대하여 상기 최근방 보간 처리를 행함으로써, 16x16 사이즈의 양자화 행렬로 업 컨버트할 수 있다.
상기 업 컨버트부는, 8x8 사이즈의 양자화 행렬의 행렬 요소에 대하여 상기 최근방 보간 처리를 행함으로써, 32x32 사이즈의 양자화 행렬로 업 컨버트할 수 있다.
복호 처리할 때의 처리 단위인 코딩 유닛과 변환 처리를 할 때의 처리 단위인 변환 유닛이 계층 구조를 갖고, 상기 부호화 데이터를, 계층 구조를 갖는 단위로 복호 처리하여 상기 양자화 데이터를 생성하는 복호부를 더 구비하고, 상기 업 컨버트부는, 상기 양자화 행렬을, 상기 전송 사이즈로부터 역양자화를 행하는 처리 단위인 변환 유닛의 사이즈로 업 컨버트할 수 있다.
본 발명의 일 측면은, 또한, 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를, 상기 양자화 행렬의 선두에 위치하는 계수에 가산함으로써, 상기 양자화 행렬의 선두에 위치하는 계수를 설정하고, 설정된 양자화 행렬을 업 컨버트하고, 상기 업 컨버트 양자화 행렬을 설정하고, 설정된 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 상기 치환 계수로 치환한 업 컨버트 양자화 행렬을 사용하여, 부호화 데이터를 복호한 양자화 데이터를 역양자화하는 화상 처리 방법이다.
본 발명의 다른 측면은, 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를 설정하는 설정부와, 화상을 양자화하여, 양자화 데이터를 생성하는 양자화부와, 상기 양자화부에 의해 생성된 양자화 데이터를 부호화한 부호화 데이터와, 상기 치환 계수를 부호화한 치환 계수 데이터와, 상기 설정부에 의해 설정된 치환 차분 계수를 부호화한 치환 차분 계수화 데이터를 전송하는 전송부를 구비하는 화상 처리 장치이다.
상기 설정부는, 상기 치환 계수와 상기 양자화 행렬에 설정된 초기값과의 차분을 설정할 수 있다.
상기 설정부는, 상기 양자화 행렬의 계수끼리의 차분인 차분 계수를 설정하고, 상기 전송부는, 상기 설정부에 의해 설정된 차분 계수를 부호화한 차분 계수 데이터를 전송할 수 있다.
상기 전송부는, 상기 치환 계수 데이터와 상기 치환 차분 계수화 데이터를 통합하여 전송할 수 있다.
상기 전송부는, 상기 치환 계수 데이터부터 상기 치환 차분 계수화 데이터의 순서대로 전송할 수 있다.
상기 양자화부는, 상기 양자화 행렬 또는 상기 업 컨버트 양자화 행렬을 사용하여, 상기 화상을 양자화할 수 있다.
부호화 처리할 때의 처리 단위인 코딩 유닛과 변환 처리를 할 때의 처리 단위인 변환 유닛이 계층 구조를 갖고, 상기 양자화부에 의해 생성된 양자화 데이터를 부호화하는 부호화부를 더 구비할 수 있다.
본 발명의 다른 측면은, 또한, 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를 설정하고, 화상을 양자화하여, 양자화 데이터를 생성하고, 생성된 양자화 데이터를 부호화한 부호화 데이터와, 상기 치환 계수를 부호화한 치환 계수 데이터와, 설정된 치환 차분 계수를 부호화한 치환 차분 계수화 데이터를 전송하는 화상 처리 방법이다.
본 발명의 또 다른 측면은, 부호화 데이터를 복호하여 양자화 데이터를 생성하는 복호부와, 양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 사용하여, 상기 복호부에 의해 생성된 양자화 데이터를 역양자화하는 역양자화부를 구비하는 화상 처리 장치이다.
상기 역양자화부는, 상기 양자화 매트릭스 참조 데이터와 상기 양자화 매트릭스 식별 데이터가 일치하는 경우에 상기 디폴트 양자화 매트릭스를 참조하도록 시멘틱스(semantics)가 설정된 신택스(syntax)를 퍼스(parsing)하여, 상기 양자화 데이터를 역양자화할 수 있다.
상기 역양자화부는, 상기 양자화 매트릭스 참조 데이터와 상기 양자화 매트릭스 식별 데이터와의 차분이 0인 경우에, 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를 퍼스하여, 상기 양자화 데이터를 역양자화할 수 있다.
본 발명의 또 다른 측면은, 또한, 부호화 데이터를 복호하여 양자화 데이터를 생성하고, 양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 사용하여, 상기 복호에 의해 생성된 양자화 데이터를 역양자화하는 화상 처리 방법이다.
본 발명의 또 다른 측면은, 화상을 부호화하여 부호화 데이터를 생성하는 부호화부와, 양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를, 상기 부호화부에 의해 생성된 부호화 데이터의 신택스로서 설정하는 설정부를 구비하는 화상 처리 장치이다.
본 발명의 또 다른 측면은, 또한, 화상을 부호화하여 부호화 데이터를 생성하고, 양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를, 생성된 부호화 데이터의 신택스로서 설정하는 화상 처리 방법이다.
본 발명의 일 측면에서는, 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수가, 양자화 행렬의 선두에 위치하는 계수에 가산됨으로써, 양자화 행렬의 선두에 위치하는 계수가 설정되고, 설정된 양자화 행렬이 업 컨버트되고, 업 컨버트 양자화 행렬이 설정되고, 설정된 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환 계수로 치환한 업 컨버트 양자화 행렬이 사용되어, 부호화 데이터를 복호한 양자화 데이터가 역양자화된다.
본 발명의 다른 측면에서는, 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수가 설정되고, 화상이 양자화되고, 양자화 데이터가 생성되고, 생성된 양자화 데이터를 부호화한 부호화 데이터와, 치환 계수를 부호화한 치환 계수 데이터와 설정부에 의해 설정된 치환 차분 계수를 부호화한 치환 차분 계수화 데이터가 전송된다.
본 발명의 한 다른 측면에서는, 부호화 데이터가 복호되어 양자화 데이터가 생성되고, 양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스가 사용되어, 복호에 의해 생성된 양자화 데이터가 역양자화된다.
본 발명의 또 다른 측면에서는, 화상이 부호화되어 부호화 데이터가 생성되고, 양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스가, 생성된 부호화 데이터의 신택스로서 설정된다.
본 발명에 의하면, 화상을 처리할 수 있다. 특히, 양자화 행렬의 부호량의 증가를 억제할 수 있다.
도 1은 스케일링 리스트의 예를 나타내는 도면이다.
도 2는 업 컨버트의 예를 설명하는 도면이다.
도 3은 디코더에서의 스케일링 리스트의 사용예를 설명하는 도면이다.
도 4는 스케일링 리스트의 부호화 예를 설명하는 도면이다.
도 5는 본 기술을 적용한 스케일링 리스트의 부호화 예를 설명하는 도면이다.
도 6은 지수 골롬 부호의 예를 나타내는 도면이다.
도 7은 스케일링 리스트에 관한 신택스의 예를 나타내는 도면이다.
도 8은 디폴트 매트릭스에 관한 신택스의 예를 나타내는 도면이다.
도 9는 디폴트 매트릭스에 관한 시멘틱스의 예를 나타내는 도면이다.
도 10은 스케일링 리스트에 관한 신택스의 예를 나타내는 도면이다.
도 11은 본 기술을 적용한 스케일링 리스트에 관한 신택스의 예를 나타내는 도면이다.
도 12는 종래의 스케일링 리스트의 신택스 예를 나타내는 도면이다.
도 13은 스케일링 리스트의 신택스 예를 나타내는 도면이다.
도 14는 화상 부호화 장치의 주된 구성예를 도시하는 블록도이다.
도 15는 직교 변환·양자화부의 주된 구성예를 도시하는 블록도이다.
도 16은 행렬 처리부의 주된 구성예를 도시하는 블록도이다.
도 17은 다운 샘플의 예를 설명하는 도면이다.
도 18은 중복 부분을 삭제하는 모습의 예를 설명하는 도면이다.
도 19는 DPCM부의 주된 구성예를 도시하는 블록도이다.
도 20은 양자화 행렬 부호화 처리의 흐름의 예를 설명하는 흐름도이다.
도 21은 DPCM 처리의 흐름의 예를 나타내는 흐름도이다.
도 22는 화상 복호 장치의 주된 구성예를 도시하는 블록도이다.
도 23은 역양자화·역직교 변환부의 주된 구성예를 도시하는 블록도이다.
도 24는 행렬 생성부의 주된 구성예를 도시하는 블록도이다.
도 25는 최근방 보간 처리의 예를 설명하는 도면이다.
도 26은 역DPCM부의 주된 구성예를 도시하는 블록도이다.
도 27은 행렬 생성 처리의 흐름의 예를 설명하는 흐름도이다.
도 28은 잔차 신호 복호 처리의 흐름의 예를 설명하는 흐름도이다.
도 29는 역DPCM 처리의 흐름의 예를 설명하는 흐름도이다.
도 30은 스케일링 리스트의 신택스의, 다른 예를 나타내는 도면이다.
도 31은 DPCM부의 다른 구성예를 도시하는 블록도이다.
도 32는 DPCM 처리의 흐름의, 다른 예를 나타내는 흐름도이다.
도 33은 역DPCM부의 다른 구성예를 도시하는 블록도이다.
도 34는 역DPCM 처리의 흐름의, 다른 예를 설명하는 흐름도이다.
도 35는 스케일링 리스트의 신택스의, 또 다른 예를 도시하는 도면이다.
도 36은 역DPCM 처리의 흐름의, 또 다른 예를 설명하는 흐름도이다.
도 37은 스케일링 리스트의 신택스의, 또 다른 예를 도시하는 도면이다.
도 38은 DPCM부의 또 다른 구성예를 도시하는 블록도이다.
도 39는 DPCM 처리의 흐름의, 또 다른 예를 나타내는 흐름도이다.
도 40은 역DPCM부의 또 다른 구성예를 도시하는 블록도이다.
도 41은 역DPCM 처리의 흐름의, 또 다른 예를 설명하는 흐름도이다.
도 42는 역DPCM 처리의 흐름의, 또 다른 예를 설명하는, 도 41에 이어지는 흐름도이다.
도 43은 스케일링 리스트의 신택스의, 또 다른 예를 도시하는 도면이다.
도 44는 스케일링 리스트의 신택스의, 또 다른 예를 도시하는 도면이다.
도 45는 스케일링 리스트의 신택스의, 또 다른 예를 도시하는 도면이다.
도 46은 다시점 화상 부호화 방식의 예를 나타내는 도면이다.
도 47은 본 기술을 적용한 다시점 화상 부호화 장치의 주된 구성예를 도시하는 도면이다.
도 48은 본 기술을 적용한 다시점 화상 복호 장치의 주된 구성예를 도시하는 도면이다.
도 49는 계층 화상 부호화 방식의 예를 나타내는 도면이다.
도 50은 본 기술을 적용한 계층 화상 부호화 장치의 주된 구성예를 도시하는 도면이다.
도 51은 본 기술을 적용한 계층 화상 복호 장치의 주된 구성예를 도시하는 도면이다.
도 52는 컴퓨터의 주된 구성예를 도시하는 블록도이다.
도 53은 텔레비전 장치의 주된 구성예를 도시하는 블록도이다.
도 54는 모바일 단말기의 주된 구성예를 도시하는 블록도이다.
도 55는 기록 재생기의 주된 구성예를 도시하는 블록도이다.
도 56은 촬상 장치의 주된 구성예를 도시하는 블록도이다.
도 57은 스케일러블 부호화 이용의 일례를 나타내는 블록도이다.
도 58은 스케일러블 부호화 이용의 다른 예를 나타내는 블록도이다.
도 59는 스케일러블 부호화 이용의 또 다른 예를 도시하는 블록도이다.
이하, 본 발명을 실시하기 위한 형태(이하, 실시 형태라 함)에 대하여 설명한다. 또한, 설명은 이하의 순서로 행한다.
1. 제1 실시 형태(본 기술의 대표적인 적용예)
2. 제2 실시 형태(화상 부호화 장치, 화상 복호 장치: 방법 1)
3. 제3 실시 형태(화상 부호화 장치, 화상 복호 장치: 방법 2)
4. 제4 실시 형태(화상 부호화 장치, 화상 복호 장치: 방법 3)
5. 제5 실시 형태(화상 부호화 장치, 화상 복호 장치: 방법 4)
6. 제6 실시 형태(화상 부호화 장치, 화상 복호 장치: 기타 방법)
7. 제7 실시 형태(다시점 화상 부호화 장치, 다시점 화상 복호 장치)
8. 제8 실시 형태(계층 화상 부호화 장치, 계층 화상 복호 장치)
9. 제9 실시 형태(컴퓨터)
10. 응용예
11. 스케일러블 부호화의 응용예
<1. 제1 실시 형태>
본 실시 형태에서는, 제2 이후의 각 실시 형태에서 상세를 설명하는 본 기술의, 대표적인 적용예에 대하여 설명한다.
<1-1 본 기술을 적용하는 케이스의 대표적인 일례>
먼저, 본 기술을 적용하는 케이스에 대해서, 대표적인 일례를 설명한다. 본 기술은, 화상 데이터의 부호화·복호에서 행하여지는 양자화·역양자화의 처리에 사용되는 스케일링 리스트의 부호화·복호에 관한 기술이다.
화상 데이터의 부호화나 복호에서는, 계수 데이터의 양자화나 역양자화가 행하여지는 경우가 있다. 이러한 양자화·역양자화는, 소정의 크기의 블록마다 행하여지고, 그 블록 사이즈에 따른 사이즈의 스케일링 리스트(양자화 매트릭스)가 사용된다. 예를 들어, HEVC(High Efficiency Video Coding)의 경우, 4x4, 8x8, 16x16, 32x32 등의 사이즈로 양자화(역양자화)가 행하여진다. HEVC의 경우, 4x4와 8x8의 사이즈의 양자화 매트릭스가 준비된다.
도 1에 8x8의 스케일링 리스트의 예를 나타낸다. 도 1에 도시되는 바와 같이, 스케일링 리스트는, DC 계수(DC coefficient)와 AC 계수(AC coefficient)를 포함한다. 1개의 값을 포함하는 DC 계수는, 양자화 매트릭스의 (0, 0) 계수이며, 이산 코사인 변환(DCT(Discrete Cosine Transform))의 DC 계수에 상당한다. AC 계수는, 양자화 매트릭스의 (0, 0) 계수 이외의 계수이며, DCT의 DC 계수 이외의 계수에 상당한다. 단, 도 1에 도시되는 바와 같이, AC 계수는 매트릭스(행렬)로서 표현된다. 즉, AC 계수에는 (0, 0) 계수도 포함되는데(이하, AC 계수 (0, 0)이라고도 지칭함), 양자화·역양자화에 사용될 때에는, 이 양자화 매트릭스의 선두에 위치하는 계수인 (0, 0) 계수는, DC 계수로 치환된다. 따라서, DC 계수는, 치환 계수라고도 한다. 도 1의 예의 경우, AC 계수는 8x8의 매트릭스(행렬)를 형성하고 있다.
또한, HEVC의 경우, 16x16이나 32x32의 양자화(역양자화)에는, 8x8의 양자화 매트릭스를 업 컨버트(확대 변환)한 것이 이용된다.
도 2에, 8x8의 스케일링 리스트를 16x16으로 업 컨버트하는 모습의 예를 나타낸다. 도 2에 도시된 바와 같이, 스케일링 리스트의 업 컨버트에는, 예를 들어 최근방 보간 처리가 적용된다. 최근방 보간 처리의 상세에 대해서는, 예를 들어 도 25 등을 참조하여 후술한다. 도 2에 도시된 바와 같이, 업 컨버트는, 스케일링 리스트의 AC 계수에 대하여 행하여진다. 그리고, 이 업 컨버트된 AC 계수의 (0, 0) 계수가 DC 계수로 치환된다.
8x8의 스케일링 리스트는, 16x16으로 업 컨버트하기 위한 것(8x8 for 16x16)과, 32x32로 업 컨버트하기 위한 것(8x8 for 32x32)의 2종류가 준비된다.
부호화(인코더)에서의 양자화에 사용된 스케일링 리스트는, 복호(디코더)에서의 역양자화에도 사용된다. 즉, 스케일링 리스트는, 부호화측(인코더)으로부터 복호측(디코더)으로 전송된다. 도 3에 그 모습의 예를 나타낸다.
도 3에 도시되는 예와 같이, 상술한, 16x16 사이즈로의 업 컨버트용과, 32x32 사이즈로의 업 컨버트용의, 2종류의 8x8의 스케일링 리스트가 전송된다. 또한, 도시는 생략하지만, 그 밖에, 4x4의 스케일링 리스트도 전송된다.
이렇게 전송된 16x16 사이즈로의 업 컨버트용의 8x8의 스케일링 리스트의 AC 계수는, 복호측(디코더)에 있어서, 상술한 바와 같이 최근방 보간 처리에 의해 16x16 사이즈로 업 컨버트되고, (0, 0) 계수가 DC 계수로 치환되어, 16x16 사이즈의 블록 역양자화에 사용된다.
마찬가지로, 이와 같이 전송된 32x32 사이즈로의 업 컨버트용의 8x8의 스케일링 리스트의 AC 계수는, 복호측(디코더)에 있어서, 상술한 바와 같이 최근방 보간 처리에 의해 32x32 사이즈로 업 컨버트되고, (0, 0) 계수가 DC 계수로 치환되어, 32x32 사이즈의 블록 역양자화에 사용된다.
<1-2. 스케일링 리스트의 부호화>
이상과 같이 스케일링 리스트를 전송함으로써, 그만큼 부호량이 증대하게 된다. 따라서, 부호화 효율 저감을 억제하기 위해서, 스케일링 리스트는 소정의 방법으로 부호화되어, 그 부호량의 저감이 도모된다. 도 4에 그 예를 나타낸다. 즉, 8x8의 스케일링 리스트는, 이하와 같이 전송된다.
8x8 매트릭스를 16x16 매트릭스로 업 컨버트하는 경우:
(1) 8x8 매트릭스의 (0, 0) 계수(즉, AC 계수 (0, 0))와, 미리 정해진 초기값 「8」과의 차분을 취한다.
(2) 8x8 매트릭스의 계수(즉, AC 계수)끼리(스캔순으로 1차원으로 배열된 계수 열에서 이웃끼리)의 차분을 취한다.
(3) 16x16 매트릭스의 (0, 0) 계수(즉, DC 계수)와, 미리 정해진 초기값 「8」과의 차분을 취한다.
(4) (1)의 차분 및 (2)의 차분과, (3)의 차분을 따로따로 전송한다.
8x8 매트릭스를 32x32 매트릭스로 업 컨버트하는 경우:
(1) 8x8 매트릭스의 (0, 0) 계수(즉, AC 계수 (0, 0))와, 미리 정해진 초기값 「8」과의 차분을 취한다.
(2) 8x8 매트릭스의 계수(즉, AC 계수)끼리(스캔순으로 1차원으로 배열된 계수 열에서 이웃끼리)의 차분을 취한다.
(3) 32x32 매트릭스의 (0, 0) 계수(즉, DC 계수)와, 미리 정해진 초기값 「8」과의 차분을 취한다.
(4) (1)의 차분 및 (2)의 차분과, (3)의 차분을 따로따로 전송한다.
그러나, 이 방법의 경우, (4)에서, 각 차분은, 지수 골롬 부호화(signed exponential golomb coding)되어 전송된다. 상술한 바와 같이 (1)의 차분은, AC 계수 (0, 0)과 초기값 「8」과의 차분이므로, 이 AC 계수 (0, 0)의 값이, 초기값 「8」에 가까운 값이 아닌 경우, 부호량이 증대될 우려가 있었다.
예를 들어, 도 4의 경우, AC 계수 (0, 0)의 값은 「12」이며, (1)의 차분으로서 값 「4」가 지수 골롬 부호화되어 전송되게 된다. 즉, (1)의 차분의 전송을 위해서 7비트(bit)를 필요로 하며, 그만큼 부호화 효율을 저감시킬 우려가 있다. 이 (1)의 차분의 값이 더욱 크면, 더욱 부호화 효율을 저감시킬 우려가 있다. 이것은, 16x16 사이즈로의 업 컨버트용의 8x8의 스케일링 리스트의 경우도, 32x32 사이즈로의 업 컨버트용의 8x8의 스케일링 리스트의 경우도 마찬가지이다.
그런데, 일반적으로, DCT 계수는, DC 계수와 그 주변의 저차의 계수에 파워가 집중된다. 따라서, 일반적으로, 양자화 매트릭스도 DC 계수와 그 주변의 계수에 대하여 작은 값이 사용된다. 또한, 주파수마다 극단적으로 상이한 값을 사용한 경우, 양자화 오차가 주관적으로 눈에 띄는 경우가 있다. 그러한 시각적인 화질의 열화를 억제하기 위해서, DC 계수와 그 주변의 계수에 대하여 연속적인 값이 적용된다.
업 컨버트 후의 (0, 1) 계수, (1.0) 계수 및 (1.1) 계수는, 업 컨버트하기 전의 AC 계수 (0, 0)에 대응한다. 또한, 업 컨버트 후의 (0, 0) 계수는, DC 계수에 대응한다.
따라서, 일반적으로, 스케일링 리스트에 있어서, AC 계수 (0, 0)의 값과 DC 계수의 값은, 서로 가까운 값을 취한다. 예를 들어, MPEG2, AVC 및 HEVC의 디폴트 매트릭스는 그러한 값으로 되어 있다. 도 4의 예에서도, DC 계수의 값은, AC 계수 (0, 0)과 같은 「12」이다. 따라서, (3)의 차분, 즉, DC 계수와 초기값 「8」과의 차분의 값도 「4」이다.
즉, 서로 가까운 값을 갖는 DC 계수와 AC 계수 (0, 0)을 각각, 초기값과 차분을 취하는 것은, 그 차분값이 커질 우려가 있을 뿐만 아니라, 용장(redundancy)일 가능성이 높아, 부호화 효율을 더욱 저감시킬 우려가 있다고도 할 수 있다.
따라서, 스케일링 리스트의 전송을, 도 4의 방법 대신에, 이하와 같은 방법으로 행하기로 한다. 도 5에 그 예를 나타낸다.
8x8 매트릭스를 16x16 매트릭스로 업 컨버트하는 경우:
(1) 8x8 매트릭스의 (0, 0) 계수(즉, AC 계수 (0, 0))와 16x16 매트릭스의 (0, 0) 계수(즉, DC 계수)의 차분을 취한다.
(2) 8x8 매트릭스의 계수(즉, AC 계수)끼리(스캔순으로 1차원으로 배열된 계수 열에서 이웃끼리)의 차분을 취한다.
(3) 16x16 매트릭스의 (0, 0) 계수(즉, DC 계수)와, 미리 정해진 초기값 「8」과의 차분을 취한다.
(4) (1) 내지 (3)의 차분을 통합하여 전송한다.
8x8 매트릭스를 32x32 매트릭스로 업 컨버트하는 경우:
(1) 8x8 매트릭스의 (0, 0) 계수(즉, AC 계수 (0, 0))와 32x32 매트릭스의 (0, 0) 계수(즉, DC 계수)의 차분을 취한다.
(2) 8x8 매트릭스의 계수(즉, AC 계수)끼리(스캔순으로 1차원으로 배열된 계수 열에서 이웃끼리)의 차분을 취한다.
(3) 32x32 매트릭스의 (0, 0) 계수(즉, DC 계수)와, 미리 정해진 초기값 「8」과의 차분을 취한다.
(4) (1) 내지 (3)의 차분을 통합하여 전송한다.
도 4의 경우와 마찬가지로, (4)에서, 각 차분은, 지수 골롬 부호화되어 지수 골롬 부호로서 전송된다.
지수 골롬 부호로서 전송되는 각 차분의 전송처는, 그 지수 골롬 부호를 수취하면, 수취한 지수 골롬 부호를 복호하여, 얻어진 각 차분을, 상술한 (1) 내지 (3)의 역 처리를 행함으로써, 각 계수(DC 계수 및 AC 계수)를 구한다.
<1-3. 본 기술의 대표적인 특징>
이상과 같은 전송 방법에 관한 본 기술의 대표적인 특징에 대해서, 이하에 설명한다.
<1-3-1. AC 계수 (0, 0)과 DC 계수의 DPCM>
스케일링 리스트는, 차분 펄스 부호 변조(DPCM(Differential Pulse-Code Modulation))되어서 전송된다. 도 4의 예의 경우, AC 계수와 DC 계수는, 각각 독립하여 DPCM 되는 것에 반해, 본 기술의 특징의 하나는, 도 5의 예와 같이, AC 계수 (0, 0)과 DC 계수의 차분(치환 차분 계수라고도 함)을 구하여 전송하는 것이다.
상술한 바와 같이, 일반적으로, AC 계수 (0, 0)과 DC 계수는, 가까운 값을 취한다. 따라서, AC 계수 (0, 0)과 DC 계수의 차분이, AC 계수 (0, 0)과 초기값 「8」과의 차분보다도 더 작은 값이 될 가능성이 높다. 즉, 본 기술을 적용하여, AC 계수 (0, 0)과 DC 계수의 차분인 치환 차분 계수를 전송하도록 하는 것이, 부호량이 저감될 가능성이 더 높다.
예를 들어, 도 5의 예의 경우, (1)의 차분의 값은 「0」이다.
도 6은, 지수 골롬 부호화(signed exponential golomb coding)의 예를 나타내는 도면이다. 도 6의 표에 나타낸 바와 같이, 값 「4」의 지수 골롬 부호의 부호 길이는 7비트인 것에 비해, 값 「0」의 지수 골롬 부호의 부호 길이는 1비트이다. 즉, 도 5의 경우가, 도 4의 경우에 비해, 부호량을 6비트 삭감할 수 있다.
일반적으로, 8x8 사이즈의 양자화 매트릭스를 전송하는 데, 100비트 내지 200비트 정도의 부호량이 필요하게 된다. 따라서, 6비트는, 전체의 6% 정도에 상당한다. 하이레벨 신택스(High Level Syntax)에 있어서, 6%의 부호량 저감은, 매우 큰 효과라고 할 수 있다.
<1-3-2. DC 계수와 AC 계수를 통합하여 전송>
도 7에 스케일링 리스트의 신택스의 예를 나타낸다. 도 4의 예의 경우, 신택스는, 도 7의 A의 예와 같이 된다. 즉, AC 계수 (0, 0)과 초기값 「8」의 차분, 및 AC 계수끼리의 차분(scaling_list_delta_coef)이 전송되고, 그 후, 그것과는 별도로, DC 계수와 초기값 「8」의 차분(scaling_list_dc_coef_minus8)이 전송된다.
이에 대해 본 기술의 특징의 하나는, DC 계수와 AC 계수 (0, 0)의 차분, 및 AC 계수끼리의 차분을 이 순서대로 배열하여, 통합하여 전송하는 것이다. 즉, 도 5에 도시되는 바와 같이, DC 계수, 및 소정의 스캔순의 각 AC 계수가 1차원으로 배열되어, DC 계수와 초기값 「8」의 차분이 구해진 후, 그 계수 열의 인접하는 계수끼리의 차분이 구해진다. 그리고, 얻어진 각 차분(계수끼리의 차분)이 그 얻어진 순서대로 1차원으로 배열된 상태에서 통합하여 전송된다.
이 경우의 신택스는, 도 7의 B의 예와 같이 된다. 즉, 최초에 DC 계수와 초기값 「8」의 차분(scaling_list_dc_coef_minus8)이 전송되고, 계속해서, DC 계수와 AC 계수 (0, 0)의 차분, 및 AC 계수끼리의 차분(scaling_list_delta_coef)이 전송된다. 즉, DC 계수와 AC 계수가 통합하여 부호화되어 전송된다.
이와 같이, 각 차분을 얻어진 순서대로 배열하여 통합하여 전송함으로써, 전송처의 복호측(디코더)은, 전송되는 순서대로 복호하여, 각 계수를 얻을 수 있다. 즉, DPCM된 스케일링 리스트를 용이하게 복호할 수 있다. 보다 구체적으로는, 처리의 부하를 저감시킬 수 있다. 또한, 차분의 재배열 등이 불필요해지므로 버퍼의 용량을 저감시킬 수 있다. 또한, 각 차분의 공급순으로 복호를 행할 수 있으므로, 처리 시간의 증대를 억제할 수 있다.
<1-3-3. 디폴트 매트릭스의 전송>
도 8은, 디폴트 매트릭스의 전송에 관한 신택스의 예를 나타내는 도면이다. 종래, 디폴트 매트릭스를 사용하는 것을 나타내는 정보를 전송하기 위해서, 도 8에 도시된 바와 같이, 최초의 계수(DC 계수)를 「0」으로 해서 전송하고 있었다. 즉, DC 계수와 초기값 「8」의 차분(scaling_list_dc_coef_minus8)의 값은 「-8」이 된다. 그러나, 도 6에 도시된 바와 같이, 값 「-8」의 지수 골롬 부호의 부호 길이는 9비트이다. 즉, 부호화 효율을 대폭으로 저감시킬 우려가 있었다. 일반적으로, 하이레벨 신택스(High Level Syntax)는, 1비트라도 적은 쪽이 바람직하다. 또한, 도 8에 도시된 바와 같이 신택스도 복잡해지고, 처리의 부하를 증대시킬 우려가 있었다.
따라서, 최초의 계수를 「0」으로 하는 것이 아니라, scaling_list_pred_matrix_id_delta의 시멘틱스(semantics)를 변경하기로 한다. 보다 구체적으로는, scaling_list_pred_matrix_id_delta의 시멘틱스를 도 9의 A 내지 도 9의 B와 같이 변경한다. 즉, 종래, 도 9의 A에 도시된 바와 같이, 이값이 「0」인 경우, 1개 전의 매트릭스(MatrixID-1)를 참조하는 것을 나타내고 있었다. 이것을, 도 9의 B에 도시된 바와 같이, 이 scaling_list_pred_matrix_id_delta의 값이 「0」인 경우, 디폴트 매트릭스를 의미하는 것으로 하기로 한다.
이와 같이 함으로써, 디폴트 매트릭스를 사용하는 것을 나타내는 정보를 전송하기 위한 지수 골롬 부호의 부호 길이를 1비트로 할 수 있어, 부호화 효율의 저감을 억제할 수 있다. 또한, 스케일링 리스트에 대해서, 종래, 도 10의 A 및 도 10의 B에 나타낸 바와 같은 신택스가 필요했지만, 이것을 도 11에 도시되는 예와 같이 간략화할 수 있다. 즉, 스케일링 리스트의 부호화·복호에 관한 처리의 부하를 저감시킬 수 있다.
<1-4. 본 기술을 적용함으로 인한 신택스의 특징>
신택스에 대해서, 보다 구체적으로 설명한다.
도 10의 A 및 도 10의 B에 나타내는 종래의 예의 경우, scaling_list_dc_coef_minus8과 scaling_list_delta_coef의 2군데에서 디폴트를 판정해야만 하였다. 또한, scaling_list_delta_coef에 대해서는, for 루프의 도중에 판정을 행하여, useDefaultScalingMatrixFlag=1이 되면, 루프를 빼는 처리로 되어 있었다. 또한, stopNow라는 중간 플래그를 필요로 하여, 이 조건에 의해 nextCoef를 scalingList의 값에 대입하는 등의 분기도 존재한다. 이와 같이, 종래의 신택스에서는, 복잡한 처리가 필요하였다.
따라서, 본 기술에서는, 도 11에 도시되는 예와 같이, scaling_list_dc_coef_minus8로부터 계산되는 DC 계수를 nextCoef에 대입함으로써, scaling_list_delta_coef의 초기값을 DC 계수로 한다.
또한, 시멘틱스로서, scaling_list_pred_matrix_id_delta의 값을 종래 「+1」로 표현한 것을 그대로의 값으로 하고, 값 「0」을 특별 취급하기로 하였다.
즉, 종래, ScalingList[0][2]를 복호할 때(matrixId=2), scaling_list_pred_matrix_id_delta=0으로 하면, refMatrixId=matrixId-(1+scaling_list_pred_matrix_id_delta)에서 matrixId=2이므로, refMatrixId=1이 되어 ScalingList[0][1]의 값을 카피하게 되어 있었다.
이에 반해 본 기술에서는, refMatrixId=matrixId-scaling_list_pred_matrix_id_delta로 하고, ScalingList[0][2]를 복호할 때(matrixId=2), ScalingList[0][1]을 카피하고 싶은 경우(refMatrixId=1로 하고 싶은 경우), scaling_list_pred_matrix_id_delta=1로 하면 되도록 하였다.
이와 같이 함으로써, 도 11에 도시되는 바와 같이, 스케일링 리스트에 관한 신택스의 행수를 대폭으로 저감시킬 수 있다. 또한, 중간 데이터로서 가져야만 하는, UseDefaultScalingMatrix 및 stopNow의 2개의 변수를 생략할 수 있다. 또한, 도 10에 도시되는 바와 같은 for 루프 내의 분기를 불필요하게 할 수 있다. 따라서, 스케일링 리스트의 부호화·복호에 관한 처리의 부하를 저감시킬 수 있다.
<1-5. 본 기술을 실현하는 처리부>
스케일링 리스트의 전송에 있어서 본 기술을 적용하는 경우, 이상과 같은 스케일링 리스트의 부호화·복호가 행하여진다. 즉, 도 14를 참조하여 후술하는 화상 부호화 장치(10)가 스케일링 리스트를 부호화하여 전송하고, 도 22를 참조하여 후술하는 화상 복호 장치(300)가 그 부호화된 스케일링 리스트를 수취하여, 복호한다.
스케일링 리스트의 부호화는, 화상 부호화 장치(10)의 직교 변환·양자화부(14)(도 14)의, 행렬 처리부(150)(도 15)의, 엔트로피 부호화부(164)(도 16)의, DPCM부(192) 및 expG부(193)(모두 도 16)에서 행하여진다. 즉, DPCM부(192)에서, 스케일링 리스트의 각 계수(DC 계수나 AC 계수)끼리의 차분이 구해지고, expG부(193)에서, 각 차분이 지수 골롬 부호화된다.
상술한 바와 같은 본 기술을 적용한 스케일링 리스트의 부호화를 행하기 위해서는, DPCM부(192)가, 예를 들어 도 19에 나타낸 바와 같은 구성예를 갖고, 도 21에 나타내는 예와 같은 DPCM 처리를 행하면 된다. 또한, 시멘틱스는, 도 44의 C나 도 45의 C의 예와 같이 하면 된다.
환언하면, 본 기술을 적용한 스케일링 리스트의 부호화를 실현하기 위해서는, 이 DPCM부(192) 및 expG부(193)만 있으면 되며, 그 밖에는, 어떤 구성이어도 된다. 예를 들어, 스케일링 리스트의 업 컨버트를 행하는 처리부나, 스케일링 리스트를 사용한 양자화를 행하는 처리부 등, 실시 형태에 따라 필요한 구성을 설치하도록 하면 된다.
또한, 스케일링 리스트의 복호는, 화상 복호 장치(300)의 역양자화·역직교 변환부(313)(도 22)의, 행렬 생성부(410)(도 23)의, 엔트로피 복호부(533)(도 24)의, expG부(551) 및 역DPCM부(552)(모두 도 24)에서 행하여진다. 즉, expG부(551)에서, 지수 골롬 부호가 복호되어 차분이 얻어지고, 역DPCM부(552)에서, 각 차분으로부터 스케일링 리스트의 각 계수(DC 계수나 AC 계수)가 구해진다.
상술한 바와 같은 본 기술을 적용한, 부호화된 스케일링 리스트의 복호를 행하기 위해서는, 역DPCM부(552)가, 예를 들어 도 26에 나타낸 바와 같은 구성예를 갖고, 도 29에 나타내는 예와 같은 역DPCM 처리를 행하면 된다. 또한, 시멘틱스는, 도 44의 C나 도 45의 C의 예와 같이 하면 된다.
환언하면, 본 기술을 적용한 스케일링 리스트의 복호를 실현하기 위해서는, 이 expG부(551) 및 역DPCM부(552)만 있으면 되고, 그 밖에는, 어떤 구성이어도 된다. 예를 들어, 스케일링 리스트의 업 컨버트를 행하는 처리부나, 스케일링 리스트를 사용한 역양자화를 행하는 처리부 등, 실시 형태에 따라 필요한 구성을 설치하도록 하면 된다.
이하에, 본 기술에 관한 보다 상세한 설명을 하기 위해서, 본 기술을 적용한 각 실시 형태에 대하여 설명한다.
<2. 제2 실시 형태>
<2-1. 신택스: 방법 1>
(1) 종래 신택스
먼저, 양자화 행렬(스케일링 리스트(Scaling List))의 종래의 신택스 예를 도 12에 나타내었다. 또한, 실제로는, 스케일링 리스트 대신에 스케일링 리스트와 그 예측 행렬의 차분 행렬이 전송되는 경우가 많다. 따라서, 이하의 신택스 등의 설명에 있어서, 스케일링 리스트의 설명은, 차분 행렬에도 적용할 수 있는 것으로 한다.
도 12의 A는, 스케일링 리스트 데이터에 관한 신택스(Scaling list data syntax)이며, 도 12의 B는, 스케일링 리스트의 신택스(Scaling list syntax)이다.
(1-1) Scaling list data syntax
도 12의 A에 도시된 바와 같이, 스케일링 리스트 데이터에 관한 신택스에서는, 스케일링 리스트가 제공되는지 여부를 나타내는 플래그(scaling_list_present_flag), 카피 모드인지 여부를 나타내는 플래그(scaling_list_pred_mode_flag), 카피 모드인 경우, 어느 스케일링 리스트를 참조할지를 나타내는 정보(scaling_list_pred_matrix_id_delta) 등이 판독되는 것이 정해져 있다.
(1-2) Scaling list syntax
도 12의 B에 도시된 바와 같이, 스케일링 리스트의 신택스에서는, 상수(예를 들어 8)가 값으로부터 감산된 DC 계수(scaling_list_dc_coef_minus8)나, AC 계수의 차분값(scaling_list_delta_coef) 등이 판독되어, DC 계수나 AC 계수가 복원되는 것이 정해져 있다.
그러나, 이러한 신택스에서는, 처리는 용이하기는 하지만, DC 계수의 압축 효율이 충분하지 않을 우려가 있었다.
따라서, DC 성분(직류 성분)의 계수인 DC 계수(직류 계수라고도 함)의 압축 효율을 충분한 것으로 하기 위해서, DC 계수와 그 밖의 계수의 차분을 구하고, 그 차분값을 DC 계수 대신에 전송하기로 한다. 즉, 이 차분값은, DC 계수를 산출하기 위한 정보이며, 즉, 실질적으로 DC 계수와 등가이다. 단, 일반적으로, DC 계수 그 자체보다, 이 차분이 값이 더 작아진다. 즉, DC 계수 대신에 이 차분값을 전송함으로써 부호량이 저감된다.
또한, 이하에서는, 설명의 편의상, 스케일링 리스트(양자화 행렬)의 사이즈는 8x8로 한다. 상술한 DC 계수 대신에 DC 계수와 그 밖의 계수의 차분을 전송하는 방법의 구체예를 이하에 설명한다.
(2) 방법 1 신택스
예를 들어, DC 계수를 8x8 매트릭스(AC 계수)의 선두의 요소라고 생각하고, 65 계수의 DPCM(Differential Pulse Code Modulation: 차분 펄스 부호 변조)으로 전송하도록 해도 된다(방법 1).
즉, 먼저, 소정의 상수와 DC 계수의 차분이 산출되고, 그것이 DPCM 데이터의 최초의 계수가 된다. 이어서, DC 계수와 최초의 AC 계수의 차분이 산출되고, 그것이 DPCM 데이터의 2번째의 계수가 된다. 이어서, 최초의 AC 계수와 2번째의 AC 계수의 차분이 산출되고, 그것이 DPCM 데이터의 3번째의 계수가 된다. 이후, 마찬가지로 1개 앞의 AC 계수와의 차분이 산출되어, DPCM 데이터의 4번째 이후의 계수가 된다. 이렇게 생성된 DPCM 데이터가, 최초의 계수부터 순서대로 전송된다.
이와 같이 함으로써, 8x8 매트릭스의 (0, 0) 계수(AC 계수)와 DC 계수가 가까운 값인 경우에 압축률을 보다 향상시킬 수 있다. 이 방법 1을 실현함으로써, 화상 부호화 장치는, DC 계수를, AC 성분(교류 성분)의 계수인 AC 계수(교류 계수라고도 함)와 마찬가지로 처리할 수 있다. 단, 이 방법 1을 실현하기 위해서는, 이 계수 군이 전송되는 화상 복호 장치는, 최초의 계수만 특별 취급할 필요가 있다. 즉, 화상 복호 장치는, AC 계수 군 중에서 DC 계수를 추출할 필요가 있다.
그 경우의, 스케일링 리스트의 신택스를, 도 13에 나타내었다. 도 13의 예의 경우, 계수끼리의 차분값(scaling_list_delta_coef)이 65개 판독되고, 그것들의 차분값으로부터 구해진 각 계수(nextcoef) 중, 선두의 계수(nextcoef)가 DC 계수(scaling_list_dc_coef)가 되고, 그 이외의 계수가, AC 계수(ScalingList[i])가 된다.
이러한 방법 1의 신택스를 실현하는 화상 부호화 장치에 대하여 이하에 설명한다.
<2-2. 화상 부호화 장치>
도 14는, 본 발명의 1 실시 형태에 따른 화상 부호화 장치(10)의 구성의 일례를 나타내는 블록도이다. 도 14에 도시되는 화상 부호화 장치(10)는 입력된 화상 데이터를 부호화하고, 얻어진 부호화 데이터를 출력하는, 본 기술을 적용한 화상 처리 장치이다. 도 14를 참조하면, 화상 부호화 장치(10)는, A/D(Analogue to Digital) 변환부(11)(A/D), 재배열 버퍼(12), 감산부(13), 직교 변환·양자화부(14), 가역 부호화부(16), 축적 버퍼(17), 레이트 제어부(18), 역양자화부(21), 역직교 변환부(22), 가산부(23), 디블록 필터(24), 프레임 메모리(25), 셀렉터(26), 인트라 예측부(30), 움직임 탐색부(40) 및 모드 선택부(50)를 구비한다.
A/D 변환부(11)는, 아날로그 형식으로 입력되는 화상 신호를 디지털 형식의 화상 데이터로 변환하고, 일련의 디지털 화상 데이터를 재배열 버퍼(12)에 출력한다.
재배열 버퍼(12)는, A/D 변환부(11)로부터 입력되는 일련의 화상 데이터에 포함되는 화상을 재배열한다. 재배열 버퍼(12)는, 부호화 처리에 관한 GOP(Group of Pictures) 구조에 따라서 화상을 재배열한 후, 재배열 후의 화상 데이터를 감산부(13), 인트라 예측부(30) 및 움직임 탐색부(40)에 출력한다.
감산부(13)에는, 재배열 버퍼(12)로부터 입력되는 화상 데이터 및 후에 설명하는 모드 선택부(50)에 의해 선택되는 예측 화상 데이터가 공급된다. 감산부(13)는, 재배열 버퍼(12)로부터 입력되는 화상 데이터와 모드 선택부(50)로부터 입력되는 예측 화상 데이터와의 차분인 예측 오차 데이터를 산출하고, 산출한 예측 오차 데이터를 직교 변환·양자화부(14)에 출력한다.
직교 변환·양자화부(14)는, 감산부(13)로부터 입력되는 예측 오차 데이터에 대하여 직교 변환 및 양자화를 행하고, 양자화된 변환 계수 데이터(이하, 양자화 데이터라고 함)를 가역 부호화부(16) 및 역양자화부(21)에 출력한다. 직교 변환·양자화부(14)로부터 출력되는 양자화 데이터의 비트 레이트는, 레이트 제어부(18)로부터의 레이트 제어 신호에 기초하여 제어된다. 직교 변환·양자화부(14)의 상세한 구성에 대해서 재차 후술한다.
가역 부호화부(16)에는, 직교 변환·양자화부(14)로부터 입력되는 양자화 데이터, 복호측에서 스케일링 리스트(양자화 행렬)를 생성하기 위한 정보, 및 모드 선택부(50)에 의해 선택되는 인트라 예측 또는 인터 예측에 관한 정보가 공급된다. 인트라 예측에 관한 정보는, 예를 들어 블록 마다의 최적의 인트라 예측 모드를 나타내는 예측 모드 정보를 포함할 수 있다. 또한, 인터 예측에 관한 정보는, 예를 들어 블록마다의 움직임 벡터 예측을 위한 예측 모드 정보, 차분 움직임 벡터 정보 및 참조 화상 정보 등을 포함할 수 있다. 또한, 복호측에서 스케일링 리스트를 생성하기 위한 정보에는, 전송하는 스케일링 리스트(또는, 스케일링 리스트(양자화 행렬)와 그 예측 행렬의 차분 행렬)의 최대 사이즈를 나타내는 식별 정보를 포함할 수 있다.
가역 부호화부(16)는, 양자화 데이터에 대하여 가역 부호화 처리를 행함으로써 부호화 스트림을 생성한다. 가역 부호화부(16)에 의한 가역 부호화는, 예를 들어 가변 길이 부호화 또는 산술 부호화 등이면 된다. 또한, 가역 부호화부(16)는, 스케일링 리스트를 생성하기 위한 정보를, 부호화 스트림의 헤더(예를 들어 시퀀스 파라미터 세트 및 픽처 파라미터 세트) 내에 다중화한다. 또한, 가역 부호화부(16)는, 상술한 인트라 예측 또는 인터 예측에 관한 정보를, 부호화 스트림의 헤더 내에 다중화한다. 그리고, 가역 부호화부(16)는, 생성한 부호화 스트림을 축적 버퍼(17)에 출력한다.
축적 버퍼(17)는, 가역 부호화부(16)로부터 입력되는 부호화 스트림을 반도체 메모리 등의 기억 매체를 사용하여 일시적으로 축적한다. 그리고, 축적 버퍼(17)는, 축적한 부호화 스트림을, 전송로(또는 화상 부호화 장치(10)로부터의 출력선)의 대역에 따른 레이트로 출력한다.
레이트 제어부(18)는, 축적 버퍼(17)의 빈 용량을 감시한다. 그리고, 레이트 제어부(18)는, 축적 버퍼(17)의 빈 용량에 따라서 레이트 제어 신호를 생성하고, 생성한 레이트 제어 신호를 직교 변환·양자화부(14)에 출력한다. 예를 들어, 레이트 제어부(18)는, 축적 버퍼(17)의 빈 용량이 적을 때에는, 양자화 데이터의 비트 레이트를 저하시키기 위한 레이트 제어 신호를 생성한다. 또한, 예를 들어 레이트 제어부(18)는, 축적 버퍼(17)의 빈 용량이 충분히 클 때에는, 양자화 데이터의 비트 레이트를 높이기 위한 레이트 제어 신호를 생성한다.
역양자화부(21)는, 직교 변환·양자화부(14)로부터 입력되는 양자화 데이터에 대하여 역양자화 처리를 행한다. 그리고, 역양자화부(21)는, 역양자화 처리에 의해 취득되는 변환 계수 데이터를, 역직교 변환부(22)에 출력한다.
역직교 변환부(22)는, 역양자화부(21)로부터 입력되는 변환 계수 데이터에 대하여 역직교 변환 처리를 행함으로써, 예측 오차 데이터를 복원한다. 그리고, 역직교 변환부(22)는, 복원한 예측 오차 데이터를 가산부(23)에 출력한다.
가산부(23)는, 역직교 변환부(22)로부터 입력되는 복원된 예측 오차 데이터와 모드 선택부(50)로부터 입력되는 예측 화상 데이터를 가산함으로써, 복호 화상 데이터를 생성한다. 그리고, 가산부(23)는, 생성한 복호 화상 데이터를 디블록 필터(24) 및 프레임 메모리(25)에 출력한다.
디블록 필터(24)는, 화상의 부호화 시에 발생하는 블록 왜곡을 감소시키기 위한 필터링 처리를 행한다. 디블록 필터(24)는, 가산부(23)로부터 입력되는 복호 화상 데이터를 필터링함으로써 블록 왜곡을 제거하고(또는 적어도 감소시켜, 필터링 후의 복호 화상 데이터를 프레임 메모리(25)에 출력한다.
프레임 메모리(25)는, 가산부(23)로부터 입력되는 복호 화상 데이터 및 디블록 필터(24)로부터 입력되는 필터링 후의 복호 화상 데이터를, 기억 매체를 사용하여 기억한다.
셀렉터(26)는, 인트라 예측을 위해 사용되는 필터링 전의 복호 화상 데이터를 프레임 메모리(25)로부터 판독하고, 판독한 복호 화상 데이터를 참조 화상 데이터로서 인트라 예측부(30)에 공급한다. 또한, 셀렉터(26)는, 인터 예측을 위해 사용되는 필터링 후의 복호 화상 데이터를 프레임 메모리(25)로부터 판독하고, 판독한 복호 화상 데이터를 참조 화상 데이터로서 움직임 탐색부(40)에 공급한다.
인트라 예측부(30)는, 재배열 버퍼(12)로부터 입력되는 부호화 대상의 화상 데이터 및 셀렉터(26)를 통해 공급되는 복호 화상 데이터에 기초하여, 각 인트라 예측 모드의 인트라 예측 처리를 행한다. 예를 들어, 인트라 예측부(30)는, 각 인트라 예측 모드에 의한 예측 결과를 소정의 비용 함수를 사용하여 평가한다. 그리고, 인트라 예측부(30)는, 비용 함수값이 최소가 되는 인트라 예측 모드, 즉 압축률이 가장 높아지는 인트라 예측 모드를, 최적의 인트라 예측 모드로서 선택한다. 또한, 인트라 예측부(30)는, 당해 최적의 인트라 예측 모드를 나타내는 예측 모드 정보, 예측 화상 데이터 및 비용 함수값 등의 인트라 예측에 관한 정보를, 모드 선택부(50)에 출력한다.
움직임 탐색부(40)는, 재배열 버퍼(12)로부터 입력되는 부호화 대상의 화상 데이터 및 셀렉터(26)를 통해 공급되는 복호 화상 데이터에 기초하여, 인터 예측 처리(프레임간 예측 처리)를 행한다. 예를 들어, 움직임 탐색부(40)는, 각 예측 모드에 의한 예측 결과를 소정의 비용 함수를 사용하여 평가한다. 이어서, 움직임 탐색부(40)는, 비용 함수값이 최소가 되는 예측 모드, 즉 압축률이 가장 높아지는 예측 모드를, 최적의 예측 모드로서 선택한다. 또한, 움직임 탐색부(40)는, 당해 최적의 예측 모드에 따라서 예측 화상 데이터를 생성한다. 그리고, 움직임 탐색부(40)는, 선택한 최적의 예측 모드를 나타내는 예측 모드 정보를 포함하는 인터 예측에 관한 정보, 예측 화상 데이터 및 비용 함수값 등의 인터 예측에 관한 정보를, 모드 선택부(50)에 출력한다.
모드 선택부(50)는, 인트라 예측부(30)로부터 입력되는 인트라 예측에 관한 비용 함수값과 움직임 탐색부(40)로부터 입력되는 인터 예측에 관한 비용 함수값을 비교한다. 그리고, 모드 선택부(50)는, 인트라 예측 및 인터 예측 중 비용 함수값이 보다 적은 예측 방법을 선택한다. 모드 선택부(50)는, 인트라 예측을 선택한 경우, 인트라 예측에 관한 정보를 가역 부호화부(16)에 출력함과 함께, 예측 화상 데이터를 감산부(13) 및 가산부(23)에 출력한다. 또한, 모드 선택부(50)는, 인터 예측을 선택한 경우, 인터 예측에 관한 상술한 정보를 가역 부호화부(16)에 출력함과 함께, 예측 화상 데이터를 감산부(13) 및 가산부(23)에 출력한다.
<2-3. 직교 변환·양자화부의 구성예>
도 15는, 도 14에 도시한 화상 부호화 장치(10)의 직교 변환·양자화부(14)의 상세한 구성의 일례를 나타내는 블록도이다. 도 15를 참조하면, 직교 변환·양자화부(14)는, 선택부(110), 직교 변환부(120), 양자화부(130), 스케일링 리스트 버퍼(140) 및 행렬 처리부(150)를 갖는다.
(1) 선택부
선택부(110)는, 사이즈가 상이한 복수의 변환 단위로부터, 부호화되는 화상 데이터의 직교 변환을 위해 사용되는 변환 단위(TU)를 선택한다. 선택부(110)에 의해 선택될 수 있는 변환 단위의 사이즈의 후보는, 예를 들어 H.264/AVC(Advanced Video Coding)에서는 4x4 및 8x8을 포함하고, HEVC(High Efficiency Video Coding)에서는 4x4, 8x8, 16x16 및 32x32를 포함한다. 선택부(110)는, 예를 들어 부호화되는 화상의 사이즈 또는 화질, 또는, 화상 부호화 장치(10)의 성능 등에 따라서 어느 하나의 변환 단위를 선택해도 된다. 선택부(110)에 의한 변환 단위의 선택은, 화상 부호화 장치(10)를 개발하는 유저에 의해 핸드 튜닝되어도 된다. 그리고, 선택부(110)는, 선택한 변환 단위의 사이즈를 지정하는 정보를, 직교 변환부(120), 양자화부(130), 가역 부호화부(16) 및 역양자화부(21)에 출력한다.
(2) 직교 변환부
직교 변환부(120)는, 선택부(110)에 의해 선택된 변환 단위로, 감산부(13)로부터 공급되는 화상 데이터(즉, 예측 오차 데이터)를 직교 변환한다. 직교 변환부(120)에 의해 실행되는 직교 변환은, 예를 들어 이산 코사인 변환(DCT(Discrete Cosine Transform)) 또는 카루넨 루베 변환 등이어도 된다. 그리고, 직교 변환부(120)는, 직교 변환 처리에 의해 취득되는 변환 계수 데이터를 양자화부(130)에 출력한다.
(3) 양자화부
양자화부(130)는, 선택부(110)에 의해 선택된 변환 단위에 대응하는 스케일링 리스트를 사용하여, 직교 변환부(120)에 의해 생성된 변환 계수 데이터를 양자화한다. 또한, 양자화부(130)는, 레이트 제어부(18)로부터의 레이트 제어 신호에 기초하여 양자화 스텝 사이즈를 전환함으로써, 출력되는 양자화 데이터의 비트 레이트를 변화시킨다.
또한, 양자화부(130)는, 선택부(110)에 의해 선택될 수 있는 복수의 변환 단위에 각각 대응하는 스케일링 리스트의 세트를, 스케일링 리스트 버퍼(140)에 기억시킨다. 예를 들어, HEVC와 같이 4x4, 8x8, 16x16 및 32x32라는 4종류의 사이즈의 변환 단위의 후보가 존재하는 경우, 이들 4종류의 사이즈에 각각 대응하는 4종류의 스케일링 리스트의 세트가, 스케일링 리스트 버퍼(140)에 의해 기억될 수 있다. 또한, 어떤 사이즈에 대하여 미리 정해진 스케일링 리스트가 사용되는 경우, 미리 정해진 스케일링 리스트가 사용되는 것(유저에 의해 정의된 스케일링 리스트를 사용하지 않는 것)을 나타내는 플래그만이, 당해 사이즈와 관련지어서 스케일링 리스트 버퍼(140)에 의해 기억되도록 해도 된다.
양자화부(130)에 의해 사용될 가능성이 있는 스케일링 리스트의 세트는, 전형적으로는, 부호화 스트림의 시퀀스마다 설정될 수 있다. 또한, 양자화부(130)는, 시퀀스마다 설정한 스케일링 리스트의 세트를, 픽처마다 갱신해도 된다. 이러한 스케일링 리스트의 세트 설정 및 갱신을 제어하기 위한 정보는, 예를 들어 시퀀스 파라미터 세트 및 픽처 파라미터 세트에 삽입될 수 있다.
(4) 스케일링 리스트 버퍼
스케일링 리스트 버퍼(140)는, 반도체 메모리 등의 기억 매체를 사용하여, 선택부(110)에 의해 선택될 수 있는 복수의 변환 단위에 각각 대응하는 스케일링 리스트의 세트를 일시적으로 기억한다. 스케일링 리스트 버퍼(140)에 의해 기억되는 스케일링 리스트의 세트는, 다음에 설명하는 행렬 처리부(150)에 의한 처리 시에 참조된다.
(5) 행렬 처리부
행렬 처리부(150)는, 부호화(양자화)에 사용되는 스케일링 리스트의 부호화를 행한다. 그리고, 행렬 처리부(150)에 의해 생성된 스케일링 리스트의 부호화 데이터(이하에서, 스케일링 리스트 부호화 데이터라고 함)는, 가역 부호화부(16)에 출력되어, 부호화 스트림의 헤더 내에 삽입될 수 있다.
<2-4. 행렬 처리부의 상세한 구성예>
도 16은, 행렬 처리부(150)의 더욱 상세한 구성의 일례를 나타내는 블록도이다. 도 16을 참조하면, 행렬 처리부(150)는, 예측부(161), 차분 행렬 생성부(162), 차분 행렬 사이즈 변환부(163), 엔트로피 부호화부(164), 복호부(165) 및 출력부(166)를 갖는다.
(1) 예측부
예측부(161)는 예측 행렬을 생성한다. 도 16에 도시된 바와 같이, 예측부(161)는, 카피부(171) 및 예측 행렬 생성부(172)를 갖는다.
카피 모드의 경우, 카피부(171)는, 과거에 전송한 스케일링 리스트를 복제하고, 그것을 예측 행렬로 한다(처리 대상의 직교 변환 단위의 스케일링 리스트를 예측함). 보다 구체적으로는, 카피부(171)는, 과거에 전송한 스케일링 리스트의 사이즈와 리스트 ID(ListID)를 복호부(165)의 기억부(202)로부터 취득한다. 사이즈는, 스케일링 리스트의 크기(예를 들어 4x4 내지 32x32 등)를 나타내는 정보이다. 리스트 ID는, 양자화의 대상이 되는 예측 오차 데이터의 종류를 나타내는 정보이다.
예를 들어, 리스트 ID는, 그 양자화 대상이, 인트라 예측된 예측 화상을 사용하여 생성되는 휘도 성분의 예측 오차 데이터(IntraLuma)인지, 인트라 예측된 예측 화상을 사용하여 생성되는 색차 성분(Cr)의 예측 오차 데이터(IntraCr)인지, 인트라 예측된 예측 화상을 사용하여 생성되는 색차 성분(Cb)의 예측 오차 데이터(IntraCb)인지, 또는, 인터 예측된 예측 화상을 사용하여 생성되는 휘도 성분의 예측 오차 데이터(InterLuma)인지를 나타내는 식별 정보를 포함한다.
카피부(171)는, 행렬 처리부(150)에 입력된 스케일링 리스트(처리 대상의 직교 변환 단위의 스케일링 리스트)와 동일한 사이즈의 과거에 전송한 스케일링 리스트를 복제 대상으로서 선택하고, 그 복제 대상으로 하는 스케일링 리스트의 리스트 ID를 출력부(166)에 공급하고, 행렬 처리부(150)의 외부(가역 부호화부(16)나 역양자화부(21))에 출력시킨다. 즉, 이 경우, 과거에 전송한 스케일링 리스트를 복제하여 생성한 예측 행렬을 나타내는 정보로서, ListID만이 복호측에 전송되므로(부호화 데이터에 포함되므로), 화상 부호화 장치(10)는, 스케일링 리스트의 부호량의 증대를 억제할 수 있다.
또한 통상의 경우, 예측 행렬 생성부(172)는, 과거에 전송한 스케일링 리스트를 복호부(165)의 기억부(202)로부터 취득하고, 그 스케일링 리스트를 사용하여 예측 행렬을 생성한다(처리 대상의 직교 변환 단위의 스케일링 리스트를 예측함). 예측 행렬 생성부(172)는, 생성한 예측 행렬을 차분 행렬 생성부(162)에 공급한다.
(2) 차분 행렬 생성부
차분 행렬 생성부(162)는, 예측부(161)(예측 행렬 생성부(172))로부터 공급된 예측 행렬과, 행렬 처리부(150)에 입력되는 스케일링 리스트와의 차분인 차분 행렬(잔차 행렬)을 생성한다. 도 16에 도시된 바와 같이, 차분 행렬 생성부(162)는, 예측 행렬 사이즈 변환부(181), 연산부(182) 및 양자화부(183)를 갖는다.
예측 행렬 사이즈 변환부(181)는, 예측 행렬 생성부(172)로부터 공급되는 예측 행렬의 사이즈를, 행렬 처리부(150)에 입력되는 스케일링 리스트의 사이즈에 맞추도록 변환(이하, 컨버트라고도 함)한다.
예를 들어, 예측 행렬의 사이즈가 스케일링 리스트의 사이즈보다 큰 경우, 예측 행렬 사이즈 변환부(181)는, 예측 행렬을 축소 변환(이하, 다운 컨버트라고도 함)한다. 보다 구체적으로는, 예를 들어 예측 행렬이 16x16이며, 스케일링 리스트가 8x8인 경우, 예측 행렬 사이즈 변환부(181)는, 예측 행렬을 8x8로 다운 컨버트한다. 또한, 이 다운 컨버트의 방법은 임의이다. 예를 들어, 예측 행렬 사이즈 변환부(181)가 필터를 사용해서(연산에 의해) 예측 행렬의 요소 수를 저감시키도록 해도 된다(이하, 다운 샘플이라고도 함). 또한, 예를 들어 도 17에 도시된 바와 같이, 예측 행렬 사이즈 변환부(181)가 필터를 사용하지 않고, 일부의 요소(예를 들어, 2차원의 요소의 짝수 부분(도 17의 검은 부분)만)를 씨닝함으로써, 예측 행렬의 요소 수를 저감시키도록 해도 된다(이하, 서브 샘플이라고도 함).
또한, 예를 들어 예측 행렬의 사이즈가 스케일링 리스트의 사이즈보다 작은 경우, 예측 행렬 사이즈 변환부(181)는, 예측 행렬을 확대 변환(이하, 업 컨버트라고도 함)한다. 보다 구체적으로는, 예를 들어 예측 행렬이 8x8이며, 스케일링 리스트가 16x16인 경우, 예측 행렬 사이즈 변환부(181)는, 예측 행렬을 16x16으로 업 컨버트한다. 또한, 이 업 컨버트의 방법은 임의이다. 예를 들어, 예측 행렬 사이즈 변환부(181)가 필터를 사용해서(연산에 의해) 예측 행렬의 요소 수를 증가시키도록 해도 된다(이하, 업 샘플이라고도 함). 또한, 예를 들어 예측 행렬 사이즈 변환부(181)가 필터를 사용하지 않고, 예측 행렬의 각 요소를 복제함으로써, 예측 행렬의 요소 수를 증가시키도록 해도 된다(이하, 역서브 샘플이라고도 함).
예측 행렬 사이즈 변환부(181)는, 사이즈를 스케일링 리스트에 맞춘 예측 행렬을 연산부(182)에 공급한다.
연산부(182)는, 예측 행렬 사이즈 변환부(181)로부터 공급되는 예측 행렬에서, 행렬 처리부(150)에 입력된 스케일링 리스트를 감산하여, 차분 행렬(잔차 행렬)을 생성한다. 연산부(182)는, 산출한 차분 행렬을 양자화부(183)에 공급한다.
양자화부(183)는, 연산부(182)로부터 공급된 차분 행렬을 양자화한다. 양자화부(183)는, 그 차분 행렬의 양자화 결과를, 차분 행렬 사이즈 변환부(163)에 공급한다. 또한, 양자화부(183)는, 이 양자화에 사용한 양자화 파라미터 등의 정보를, 출력부(166)에 공급하고, 행렬 처리부(150)의 외부(가역 부호화부(16)나 역양자화부(21))에 출력시킨다. 또한, 이 양자화부(183)를 생략하도록(즉, 차분 행렬의 양자화를 행하지 않도록) 해도 된다.
(3) 차분 행렬 사이즈 변환부
차분 행렬 사이즈 변환부(163)는, 차분 행렬 생성부(162)(양자화부(183))로부터 공급되는 차분 행렬(양자화 데이터)의 사이즈를, 필요에 따라, 전송 시에 허용되는 최대 사이즈(이하, 전송 사이즈라고도 함) 이하로 변환한다. 이 최대 사이즈는 임의인데, 예를 들어 8x8이다.
화상 부호화 장치(10)로부터 출력되는 부호화 데이터는, 예를 들어 전송로나 기억 매체를 통해, 화상 부호화 장치(10)에 대응하는 화상 복호 장치에 전송되고, 그 화상 복호 장치에 의해 복호된다. 화상 부호화 장치(10)에서는, 이러한 전송에서의, 즉, 화상 부호화 장치(10)로부터 출력되는 부호화 데이터에서의, 차분 행렬(양자화 데이터)의 사이즈의 상한(최대 사이즈)이 설정되어 있다.
차분 행렬 사이즈 변환부(163)는, 차분 행렬의 사이즈가, 이 최대 사이즈보다 큰 경우, 최대 사이즈 이하가 되도록, 차분 행렬을 다운 컨버트한다.
또한, 이 다운 컨버트의 방법은, 상술한 예측 행렬의 다운 컨버트의 경우와 마찬가지로 임의이다. 예를 들어, 필터 등을 사용하는 다운 샘플이어도 되고, 요소를 씨닝하는 서브 샘플이어도 된다.
또한, 다운 컨버트 후의 차분 행렬의 사이즈는, 최대 사이즈보다 작으면 어느 사이즈이어도 된다. 단, 일반적으로는, 컨버트 전후의 사이즈 차가 클수록 오차가 커지므로, 최대 사이즈로 다운 컨버트하는 것이 바람직하다.
차분 행렬 사이즈 변환부(163)는, 다운 컨버트한 차분 행렬을, 엔트로피 부호화부(164)에 공급한다. 또한, 차분 행렬의 사이즈가 최대 사이즈보다 작은 경우, 이 다운 컨버트는 불필요하므로, 차분 행렬 사이즈 변환부(163)는, 입력된 차분 행렬을 그대로 엔트로피 부호화부(164)에 공급한다(즉, 다운 컨버트가 생략된다).
(4) 엔트로피 부호화부
엔트로피 부호화부(164)는, 차분 행렬 사이즈 변환부(163)로부터 공급된 차분 행렬(양자화 데이터)을 소정의 방법으로 부호화한다. 도 16에 도시된 바와 같이 엔트로피 부호화부(164)는, 중복 판정부(135degree부)(191), DPCM(Differential Pulse Code Modulation)부(192) 및 expG부(193)를 갖는다.
중복 판정부(191)는, 차분 행렬 사이즈 변환부(163)로부터 공급된 차분 행렬의 대칭성을 판정하고, 그 잔차(차분 행렬)가 135도의 대칭 행렬인 경우, 예를 들어 도 18에 도시된 바와 같이, 중복되어 있는 데이터인 대칭 부분의 데이터(행렬 요소)를 삭제한다. 잔차가 135도의 대칭 행렬이 아닌 경우, 중복 판정부(191)는, 이 데이터(행렬 요소)의 삭제를 생략한다. 중복 판정부(191)는, 필요에 따라 대칭 부분이 삭제된 차분 행렬의 데이터를, DPCM부(192)에 공급한다.
DPCM부(192)는, 중복 판정부(191)로부터 공급된, 필요에 따라 대칭 부분이 삭제된 차분 행렬의 데이터를 DPCM 부호화하고, DPCM 데이터를 생성한다. DPCM부(192)는, 생성한 DPCM 데이터를, expG부(193)에 공급한다.
expG부(193)는, DPCM부(192)로부터 공급되는 DPCM 데이터에 대하여 부호 딸린·부호 없는 exponential golomb 부호(이하, 지수 골롬 부호라고도 함)를 행한다. expG부(193)는, 그 부호화 결과를 복호부(165) 및 출력부(166)에 공급한다.
(5) 복호부
복호부(165)는, expG부(193)로부터 공급되는 데이터로부터, 스케일링 리스트를 복원한다. 복호부(165)는, 복원한 스케일링 리스트에 관한 정보를, 과거에 전송한 스케일링 리스트로서, 예측부(161)에 공급한다.
도 16에 도시된 바와 같이, 복호부(165)는, 스케일링 리스트 복원부(201) 및 기억부(202)를 갖는다.
스케일링 리스트 복원부(201)는, 엔트로피 부호화부(164)(expG부(193))로부터 공급되는 지수 골롬 부호를 복호하고, 행렬 처리부(150)에 입력되는 스케일링 리스트를 복원한다. 예를 들어, 스케일링 리스트 복원부(201)는, 지수 골롬 부호를 엔트로피 부호화부(164)의 부호화 방법에 대응하는 방법으로 복호하고, 차분 행렬 사이즈 변환부(163)에 의한 사이즈 변환의 역변환을 행하고, 양자화부(183)에 의한 양자화에 대응하는 역양자화를 행하여, 얻어진 차분 행렬을, 예측 행렬로부터 감산함으로써, 스케일링 리스트를 복원한다.
스케일링 리스트 복원부(201)는, 복원한 스케일링 리스트를 기억부(202)에 공급하고, 그 사이즈나 리스트 ID와 관련지어서 기억시킨다.
기억부(202)는, 스케일링 리스트 복원부(201)로부터 공급되는 스케일링 리스트에 관한 정보를 기억한다. 이 기억부(202)에 기억되는 스케일링 리스트에 관한 정보는, 시간적으로 후에 처리되는 다른 직교 변환 단위의 예측 행렬 생성에 이용된다. 즉, 기억부(202)는, 기억하고 있는 스케일링 리스트에 관한 정보를, 과거에 전송한 스케일링 리스트에 관한 정보로서, 예측부(161)에 공급한다.
또한, 기억부(202)는, 이렇게 복원된 스케일링 리스트에 관한 정보를 기억하는 대신에, 행렬 처리부(150)에 입력되는 스케일링 리스트를, 그 사이즈나 리스트 ID와 관련지어서 기억하도록 해도 된다. 그 경우, 스케일링 리스트 복원부(201)를 생략할 수 있다.
(6) 출력부
출력부(166)는, 공급되는 각종 정보를 행렬 처리부(150)의 외부에 출력한다. 예를 들어, 카피 모드의 경우, 출력부(166)는, 카피부(171)로부터 공급되는 예측 행렬의 리스트 ID를, 가역 부호화부(16) 및 역양자화부(21)에 공급한다. 또한, 예를 들어 통상의 경우, 출력부(166)는, expG부(193)로부터 공급되는 지수 골롬 부호 및 양자화부(183)로부터 공급되는 양자화 파라미터를, 가역 부호화부(16) 및 역양자화부(21)에 공급한다.
또한, 출력부(166)는, 스케일링 리스트(또는, 스케일링 리스트와 그 예측 행렬의 차분 행렬)의 전송 시에 허용되는 최대 사이즈(전송 사이즈)를 나타내는 식별 정보를, 복호측에서 스케일링 리스트를 생성하기 위한 정보로서 가역 부호화부(16)에 공급한다. 가역 부호화부(16)는, 상술한 바와 같이, 그 스케일링 리스트를 생성하기 위한 정보를 부호화 스트림에 포함하여, 복호측에 제공한다. 또한, 이 전송 사이즈를 나타내는 식별 정보를 레벨이나 프로파일 등에 따라 미리 규정하도록 해도 된다. 그 경우, 그 전송 사이즈에 관한 정보가, 부호화측의 장치와 복호측의 장치에서 미리 공유되므로, 상술한 식별 정보의 전송을 생략할 수 있다.
<2-5. DPCM부의 상세한 구성예>
도 19는, DPCM부(192)의 더욱 상세한 구성의 일례를 나타내는 블록도이다. 도 19를 참조하면, DPCM부(192)는, DC 계수 부호화부(211) 및 AC 계수 DPCM부(212)를 갖는다.
DC 계수 부호화부(211)는, 중복 판정부(191)로부터 공급되는 계수 군 중에서 DC 계수를 취득하고, 소정의 초기값(예를 들어 8)에서, 그 DC 계수의 값을 감산하여, 그 차분값을 최초(i=0)의 차분값(scaling_list_delta_coef)으로 한다. DC 계수 부호화부(211)는, 산출한 차분값(scaling_list_delta_coef(i=0))을 처리 중인 당해 영역에 대응하는 스케일링 리스트의 최초의 계수로서 expG부(193)에 공급한다.
AC 계수 DPCM부(212)는, 중복 판정부(191)로부터 공급되는 계수 군 중에서 AC 계수를 취득하고, 1개 전에 처리된 계수로부터, 그 AC 계수의 값을 감산하여, 그 차분값(scaling_list_delta_coef(i>0))으로 한다. AC 계수 DPCM부(212)는, 산출한 차분값(scaling_list_delta_coef(i>0))을 처리 중인 당해 영역에 대응하는 스케일링 리스트의 계수로서 expG부(193)에 공급한다. 또한, i=1의 경우, 1개 전의 계수는i=0이므로, 「DC 계수」가 1개 전에 처리된 계수가 된다.
이와 같이 하여, DPCM부(192)는, DC 계수를 스케일링 리스트(AC 계수)의 선두의 요소로서 전송할 수 있다. 이에 의해, 스케일링 리스트의 부호화 효율을 향상시킬 수 있다.
<2-6. 양자화 행렬 부호화 처리의 흐름>
이어서, 도 20의 흐름도를 참조하여, 도 16의 행렬 처리부(150)에 의해 실행되는 양자화 행렬 부호화 처리의 흐름의 예를 설명한다.
양자화 행렬 부호화 처리가 개시되면, 스텝 S101에서, 예측부(161)는, 처리 대상의 직교 변환 단위인 커런트 영역(주목 영역이라고도 함)의 스케일링 리스트(양자화 행렬)를 취득한다.
스텝 S102에서, 예측부(161)는 카피 모드인지 여부를 판정한다. 카피 모드가 아니라고 판정했을 경우, 예측부(161)는 처리를 스텝 S103으로 진행시킨다.
스텝 S103에서, 예측 행렬 생성부(172)는, 과거에 전송된 스케일링 리스트를 기억부(202)로부터 취득하고, 그 스케일링 리스트를 사용하여, 예측 행렬을 생성한다.
스텝 S104에서, 예측 행렬 사이즈 변환부(181)는, 스텝 S103에서 생성된 예측 행렬의 사이즈가, 스텝 S101에서 취득된 커런트 영역(주목 영역)의 스케일링 리스트와 상이한지 여부를 판정한다. 사이즈가 상이하다고 판정했을 경우, 예측 행렬 사이즈 변환부(181)는, 처리를 스텝 S105로 진행시킨다.
스텝 S105에서, 예측 행렬 사이즈 변환부(181)는, 스텝 S103에서 생성된 예측 행렬의 사이즈를, 스텝 S101에서 취득된 커런트 영역의 스케일링 리스트의 사이즈로 변환한다.
스텝 S105의 처리가 종료되면, 예측 행렬 사이즈 변환부(181)는, 처리를 스텝 S106으로 진행시킨다. 또한, 스텝 S104에서, 예측 행렬의 사이즈와 스케일링 리스트의 사이즈가 동일하다고 판정했을 경우, 예측 행렬 사이즈 변환부(181)는, 스텝 S105의 처리를 생략하고(스텝 S105의 처리를 행하지 않고), 처리를 스텝 S106으로 진행시킨다.
스텝 S106에서, 연산부(182)는, 예측 행렬에서 스케일링 리스트를 감산하고, 예측 행렬과 스케일링 리스트의 차분 행렬을 산출한다.
스텝 S107에서, 양자화부(183)는, 스텝 S106에서 생성된 차분 행렬을 양자화한다. 또한, 이 처리는 생략하도록 해도 된다.
스텝 S108에서, 차분 행렬 사이즈 변환부(163)는, 양자화된 차분 행렬의 사이즈가 전송 사이즈(전송 시에 허용되는 최대 사이즈)보다 큰지 여부를 판정한다. 전송 사이즈보다 크다고 판정했을 경우, 차분 행렬 사이즈 변환부(163)는, 처리를 스텝 S109로 진행시키고, 차분 행렬을 전송 사이즈 이하로 다운 컨버트한다.
스텝 S109의 처리를 종료하면, 차분 행렬 사이즈 변환부(163)는, 처리를 스텝 S110으로 진행시킨다. 또한, 스텝 S108에서, 양자화된 차분 행렬의 사이즈가 전송 사이즈 이하라고 판정했을 경우, 차분 행렬 사이즈 변환부(163)는, 스텝 S109의 처리를 생략하고(스텝 S109의 처리를 행하지 않고), 처리를 스텝 S110으로 진행시킨다.
스텝 S110에서, 중복 판정부(191)는, 양자화된 차분 행렬이, 135도의 대칭성을 갖는지 여부를 판정한다. 135도의 대칭성을 가진다고 판정한 경우, 중복 판정부(191)는 처리를 스텝 S111로 진행시킨다.
스텝 S111에서, 중복 판정부(191)는, 양자화된 차분 행렬의 중복 부분(중복 데이터)을 삭제한다. 중복 데이터를 삭제하면, 중복 판정부(191)는, 처리를 스텝 S112로 진행시킨다.
또한, 스텝 S110에서, 양자화된 차분 행렬이 135도의 대칭성을 갖지 않는다고 판정했을 경우, 중복 판정부(191)는, 스텝 S111의 처리를 생략하고(스텝 S111의 처리를 행하지 않고), 처리를 스텝 S112로 진행시킨다.
스텝 S112에서, DPCM부(192)는, 적절히 중복 부분이 삭제된 차분 행렬을 DPCM 부호화한다.
스텝 S113에서, expG부(193)는, 스텝 S112에서 생성된 DPCM 데이터에, 정부를 나타내는 부호가 존재하는지 여부를 판정한다. 부호가 존재한다고 판정한 경우, expG부(193)는 처리를 스텝 S114로 진행시킨다.
스텝 S114에서, expG부(193)는, DPCM 데이터에 대하여 부호 딸린 지수 골롬 부호화를 행한다. 출력부(166)는, 생성된 지수 골롬 부호를, 가역 부호화부(16) 및 역양자화부(21)에 출력한다. 스텝 S114의 처리가 종료되면, expG부(193)는 처리를 스텝 S116으로 진행시킨다.
또한, 스텝 S113에서, 부호가 존재하지 않는다고 판정한 경우, expG부(193)는 처리를 스텝 S115로 진행시킨다.
스텝 S115에서, expG부(193)는, DPCM 데이터에 대하여 부호 없는 지수 골롬 부호화를 행한다. 출력부(166)는, 생성된 지수 골롬 부호를, 가역 부호화부(16) 및 역양자화부(21)에 출력한다. 스텝 S115의 처리가 종료되면, expG부(193)는, 처리를 스텝 S116으로 진행시킨다.
또한, 스텝 S102에서, 카피 모드라고 판정했을 경우, 카피부(171)는, 과거에 전송된 스케일링 리스트를 복제하여 그것을 예측 행렬로 한다. 출력부(166)는, 그 예측 행렬에 대응하는 리스트 ID를, 예측 행렬을 나타내는 정보로서, 가역 부호화부(16) 및 역양자화부(21)에 출력한다. 그리고, 카피부(171)는, 처리를 스텝 S116으로 진행시킨다.
스텝 S116에서, 스케일링 리스트 복원부(201)는, 스케일링 리스트를 복원한다. 스텝 S117에서, 기억부(202)는, 스텝 S116에서 복원된 스케일링 리스트를 기억한다.
스텝 S117의 처리가 종료되면, 행렬 처리부(150)는 양자화 행렬 부호화 처리를 종료한다.
<2-7. DPCM 처리의 흐름>
이어서, 도 21의 흐름도를 참조하여, 도 20의 스텝 S112에서 실행되는 DPCM 처리의 흐름의 예를 설명한다.
DPCM 처리가 개시되면, DC 계수 부호화부(211)는, 스텝 S131에서, DC 계수와 상수의 차분을 구한다. 스텝 S132에서, AC 계수 DPCM부(212)는, DC 계수와 최초의 AC 계수의 차분을 구한다.
스텝 S133에서, AC 계수 DPCM부(212)는, 모든 AC 계수를 처리했는지 여부를 판정한다. 미처리의 AC 계수가 존재한다고 판정한 경우, AC 계수 DPCM부(212)는, 처리를 스텝 S134로 진행시킨다.
스텝 S134에서, AC 계수 DPCM부(212)는, 다음의 AC 계수를 처리 대상으로 한다. 스텝 S135에서, AC 계수 DPCM부(212)는, 전회 처리한 AC 계수와 처리 대상의 AC 계수의 차분을 구한다. 스텝 S135의 처리가 종료되면, AC 계수 DPCM부(212)는 처리를 스텝 S133으로 되돌린다.
이와 같이, 스텝 S133에서, 미처리의 AC 계수가 존재한다고 판정되는 동안에, AC 계수 DPCM부(212)는, 스텝 S133 내지 스텝 S135의 처리를 반복해서 실행한다. 스텝 S133에서, 미처리의 AC 계수가 존재하지 않는다고 판정된 경우, AC 계수 DPCM부(212)는 DPCM 처리를 종료하고, 처리를 도 20으로 되돌린다.
이상과 같이, DC 계수와, AC 계수 군의 선두의 AC 계수와의 차분을 구하고, 그 차분을 DC 계수 대신에 화상 복호 장치에 전송함으로써, 화상 부호화 장치(10)는 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
이어서, 본 발명의 일 실시 형태에 따른 화상 복호 장치의 구성예에 대하여 설명한다.
<2-8. 화상 복호 장치>
도 22는, 본 발명의 일 실시 형태에 따른 화상 복호 장치(300)의 구성의 일례를 나타내는 블록도이다. 도 22에 나타내는 화상 복호 장치(300)는, 화상 부호화 장치(10)에 의해 생성된 부호화 데이터를 복호하는, 본 기술을 적용한 화상 처리 장치이다. 도 22를 참조하면, 화상 복호 장치(300)는, 축적 버퍼(311), 가역 복호부(312), 역양자화·역직교 변환부(313), 가산부(315), 디블록 필터(316), 재배열 버퍼(317), D/A(Digital to Analogue) 변환부(318), 프레임 메모리(319), 셀렉터(320 및 321), 인트라 예측부(330), 및 움직임 보상부(340)를 갖는다.
축적 버퍼(311)는, 전송로를 통해 입력되는 부호화 스트림을, 기억 매체를 사용하여 일시적으로 축적한다.
가역 복호부(312)는, 축적 버퍼(311)로부터 입력되는 부호화 스트림을, 부호화 시에 사용된 부호화 방식에 따라서 복호한다. 또한, 가역 복호부(312)는, 부호화 스트림의 헤더 영역에 다중화되어 있는 정보를 복호한다. 부호화 스트림의 헤더 영역에 다중화되어 있는 정보란, 예를 들어 상술한 스케일링 리스트를 생성하기 위한 정보, 및 블록 헤더 내의 인트라 예측에 관한 정보 및 인터 예측에 관한 정보를 포함할 수 있다. 가역 복호부(312)는, 복호 후의 양자화 데이터 및 스케일링 리스트를 생성하기 위한 정보를, 역양자화·역직교 변환부(313)에 출력한다. 또한, 가역 복호부(312)는, 인트라 예측에 관한 정보를 인트라 예측부(330)에 출력한다. 또한, 가역 복호부(312)는, 인터 예측에 관한 정보를 움직임 보상부(340)에 출력한다.
역양자화·역직교 변환부(313)는, 가역 복호부(312)로부터 입력되는 양자화 데이터에 대하여 역양자화 및 역직교 변환을 행함으로써, 예측 오차 데이터를 생성한다. 그리고, 역양자화·역직교 변환부(313)는, 생성한 예측 오차 데이터를 가산부(315)에 출력한다.
가산부(315)는, 역양자화·역직교 변환부(313)로부터 입력되는 예측 오차 데이터와, 셀렉터(321)로부터 입력되는 예측 화상 데이터를 가산함으로써, 복호 화상 데이터를 생성한다. 그리고, 가산부(315)는, 생성한 복호 화상 데이터를 디블록 필터(316) 및 프레임 메모리(319)에 출력한다.
디블록 필터(316)는, 가산부(315)로부터 입력되는 복호 화상 데이터를 필터링함으로써 블록 왜곡을 제거하고, 필터링 후의 복호 화상 데이터를 재배열 버퍼(317) 및 프레임 메모리(319)에 출력한다.
재배열 버퍼(317)는 디블록 필터(316)로부터 입력되는 화상을 재배열함으로써, 시계열의 일련의 화상 데이터를 생성한다. 그리고, 재배열 버퍼(317)는, 생성한 화상 데이터를 D/A 변환부(318)에 출력한다.
D/A 변환부(318)는, 재배열 버퍼(317)로부터 입력되는 디지털 형식의 화상 데이터를 아날로그 형식의 화상 신호로 변환한다. 그리고, D/A 변환부(318)는, 예를 들어 화상 복호 장치(300)와 접속되는 디스플레이(도시하지 않음)에 아날로그 화상 신호를 출력함으로써, 화상을 표시시킨다.
프레임 메모리(319)는, 가산부(315)로부터 입력되는 필터링 전의 복호 화상 데이터 및 디블록 필터(316)로부터 입력되는 필터링 후의 복호 화상 데이터를, 기억 매체를 사용하여 기억한다.
셀렉터(320)는, 가역 복호부(312)에 의해 취득되는 모드 정보에 따라, 화상 내의 블록마다, 프레임 메모리(319)로부터의 화상 데이터의 출력처를 인트라 예측부(330)와 움직임 보상부(340) 사이에서 전환한다. 예를 들어, 셀렉터(320)는, 인트라 예측 모드가 지정된 경우, 프레임 메모리(319)로부터 공급되는 필터링 전의 복호 화상 데이터를 참조 화상 데이터로서 인트라 예측부(330)에 출력한다. 또한, 셀렉터(320)는, 인터 예측 모드가 지정된 경우, 프레임 메모리(319)로부터 공급되는 필터링 후의 복호 화상 데이터를 참조 화상 데이터로서 움직임 보상부(340)에 출력한다.
셀렉터(321)는, 가역 복호부(312)에 의해 취득되는 모드 정보에 따라, 화상 내의 블록마다, 가산부(315)에 공급해야 할 예측 화상 데이터의 출력원을 인트라 예측부(330)와 움직임 보상부(340) 사이에서 전환한다. 예를 들어, 셀렉터(321)는, 인트라 예측 모드가 지정된 경우, 인트라 예측부(330)로부터 출력되는 예측 화상 데이터를 가산부(315)에 공급한다. 셀렉터(321)는, 인터 예측 모드가 지정된 경우, 움직임 보상부(340)로부터 출력되는 예측 화상 데이터를 가산부(315)에 공급한다.
인트라 예측부(330)는, 가역 복호부(312)로부터 입력되는 인트라 예측에 관한 정보와 프레임 메모리(319)로부터의 참조 화상 데이터에 기초하여 화소값의 화면 내 예측을 행하여, 예측 화상 데이터를 생성한다. 그리고, 인트라 예측부(330)는, 생성한 예측 화상 데이터를 셀렉터(321)에 출력한다.
움직임 보상부(340)는, 가역 복호부(312)로부터 입력되는 인터 예측에 관한 정보와 프레임 메모리(319)로부터의 참조 화상 데이터에 기초하여 움직임 보상 처리를 행하고, 예측 화상 데이터를 생성한다. 그리고, 움직임 보상부(340)는, 생성한 예측 화상 데이터를 셀렉터(321)에 출력한다.
<2-9. 역양자화·역직교 변환부의 구성예>
도 23은, 도 22에 나타낸 화상 복호 장치(300)의 역양자화·역직교 변환부(313)의 주된 구성의 일례를 나타내는 블록도이다. 도 23을 참조하면, 역양자화·역직교 변환부(313)는, 행렬 생성부(410), 선택부(430), 역양자화부(440) 및 역직교 변환부(450)를 갖는다.
(1) 행렬 생성부
행렬 생성부(410)는, 가역 복호부(312)에서 비트 스트림으로부터 추출되고, 공급된 스케일링 리스트 부호화 데이터를 복호하여, 스케일링 리스트를 생성한다. 행렬 생성부(410)는, 생성한 스케일링 리스트를 역양자화부(440)에 공급한다.
(2) 선택부
선택부(430)는, 사이즈가 상이한 복수의 변환 단위로부터, 복호되는 화상 데이터의 역직교 변환을 위해 사용되는 변환 단위(TU)를 선택한다. 선택부(430)에 의해 선택될 수 있는 변환 단위의 사이즈의 후보는, 예를 들어 H.264/AVC에서는 4x4 및 8x8을 포함하고, HEVC에서는 4x4, 8x8, 16x16 및 32x32를 포함한다. 선택부(430)는, 예를 들어 부호화 스트림의 헤더 내에 포함되는 LCU, SCU 및 split_flag에 기초하여, 변환 단위를 선택해도 된다. 그리고, 선택부(430)는, 선택한 변환 단위의 사이즈를 지정하는 정보를, 역양자화부(440) 및 역직교 변환부(450)에 출력한다.
(3) 역양자화부
역양자화부(440)는, 선택부(430)에 의해 선택된 변환 단위에 대응하는 스케일링 리스트를 사용하여, 화상의 부호화 시에 양자화된 변환 계수 데이터를 역양자화한다. 그리고, 역양자화부(440)는, 역양자화한 변환 계수 데이터를 역직교 변환부(450)에 출력한다.
(4) 역직교 변환부
역직교 변환부(450)는, 부호화 시에 사용된 직교 변환 방식에 따라, 역양자화부(440)에 의해 역양자화된 변환 계수 데이터를 상기 선택된 변환 단위로 역직교 변환함으로써, 예측 오차 데이터를 생성한다. 그리고, 역직교 변환부(450)는, 생성한 예측 오차 데이터를 가산부(315)에 출력한다.
<2-10. 행렬 생성부의 상세한 구성예>
도 24는, 도 23에 나타낸 행렬 생성부(410)의 상세한 구성의 일례를 나타내는 블록도이다. 도 24를 참조하면, 행렬 생성부(410)는, 파라미터 해석부(531), 예측부(532), 엔트로피 복호부(533), 스케일링 리스트 복원부(534), 출력부(535) 및 기억부(536)를 갖는다.
(1) 파라미터 해석부
파라미터 해석부(531)는, 가역 복호부(312)로부터 공급되는, 스케일링 리스트에 관한 각종 플래그나 파라미터를 해석한다. 또한, 파라미터 해석부(531)는, 그 해석 결과에 따라, 가역 복호부(312)로부터 공급되는, 차분 행렬의 부호화 데이터 등, 각종 정보를 예측부(532) 또는 엔트로피 복호부(533)에 공급한다.
예를 들어, 파라미터 해석부(531)는, pred_mode가 0이라면, 카피 모드라 판단하여, pred_matrix_id_delta를 카피부(541)에 공급한다. 또한, 예를 들어 파라미터 해석부(531)는, pred_mode가 1이라면, 전체 스캔 모드(통상의 경우)라고 판단하여, pred_matrix_id_delta 및 pred_size_id_delta를 예측 행렬 생성부(542)에 공급한다.
또한, 파라미터 해석부(531)는, 예를 들어 residual_flag가 true인 경우, 가역 복호부(312)로부터 공급되는 스케일링 리스트의 부호화 데이터(지수 골롬 부호)를 엔트로피 복호부(533)의 expG부(551)에 공급한다. 또한, 파라미터 해석부(531)는, residual_symmetry_flag를 expG부(551)에 공급한다.
또한, 파라미터 해석부(531)는, residual_down_sampling_flag를 스케일링 리스트 복원부(534)의 차분 행렬 사이즈 변환부(562)에 공급한다.
(2) 예측부
예측부(532)는, 파라미터 해석부(531)의 제어에 따라, 예측 행렬을 생성한다. 도 24에 도시된 바와 같이, 예측부(532)는, 카피부(541) 및 예측 행렬 생성부(542)를 갖는다.
카피부(541)는, 카피 모드의 경우, 과거에 전송된 스케일링 리스트를 복제하고, 그것을 예측 행렬로 한다. 보다 구체적으로는, 카피부(541)는, pred_matrix_id_delta에 대응하는, 커런트 영역의 스케일링 리스트와 동일 사이즈의, 과거에 전송된 스케일링 리스트를 기억부(536)로부터 판독하고, 그 스케일링 리스트를 예측 화상으로 하여, 그 예측 화상을 출력부(535)에 공급한다.
예측 행렬 생성부(542)는, 통상의 경우, 과거에 전송된 스케일링 리스트를 사용하여 예측 행렬을 생성한다(예측함). 보다 구체적으로는, 예측 행렬 생성부(542)는, pred_matrix_id_delta 및 pred_size_id_delta에 대응하는 과거에 전송된 스케일링 리스트를 기억부(536)로부터 판독하고, 그것을 사용하여 예측 행렬을 생성한다. 즉, 예측 행렬 생성부(542)는, 화상 부호화 장치(10)의 예측 행렬 생성부(172)(도 16)가 생성하는 예측 행렬과 마찬가지의 예측 행렬을 생성한다. 예측 행렬 생성부(542)는, 생성한 예측 행렬을 스케일링 리스트 복원부(534)의 예측 행렬 사이즈 변환부(561)에 공급한다.
(3) 엔트로피 복호부
엔트로피 복호부(533)는, 파라미터 해석부(531)로부터 공급되는 지수 골롬 부호로부터 차분 행렬을 복원한다. 도 24에 도시된 바와 같이, 엔트로피 복호부(533)는, expG부(551), 역DPCM부(552) 및 역중복 판정부(553)를 갖는다.
expG부(551)는, 부호 딸린 또는 부호 없는 exponential golomb 복호(이하, 지수 골롬 복호라고도 함)를 행하여, DPCM 데이터를 복원한다. expG부(551)는, 복원한 DPCM 데이터를, residual_symmetry_flag와 함께, 역DPCM부(552)에 공급한다.
역DPCM부(552)는, 중복 부분이 삭제된 데이터에 대하여 DPCM 복호하여, DPCM 데이터로부터 잔차 데이터를 생성한다. 역DPCM부(552)는, 생성한 잔차 데이터를, residual_symmetry_flag와 함께, 역중복 판정부(553)에 공급한다.
역중복 판정부(553)는, residual_symmetry_flag가 true인 경우, 즉, 잔차 데이터가 135도의 대칭 행렬의, 중복하는 대칭 부분의 데이터(행렬 요소)가 삭제된 것인 경우, 그 대칭 부분의 데이터를 복원한다. 즉, 135도의 대칭 행렬의 차분 행렬이 복원된다. 또한, residual_symmetry_flag가 true가 아닌 경우, 즉, 잔차 데이터가 135도의 대칭 행렬이 아닌 행렬인 경우, 역중복 판정부(553)는, 대칭 부분의 데이터 복원을 행하지 않고, 그 잔차 데이터를 차분 행렬로 한다. 역중복 판정부(553)는, 이와 같이 하여 복원한 차분 행렬을 스케일링 리스트 복원부(534)(차분 행렬 사이즈 변환부(562))에 공급한다.
(4) 스케일링 리스트 복원부
스케일링 리스트 복원부(534)는 스케일링 리스트를 복원한다. 도 24에 도시된 바와 같이, 스케일링 리스트 복원부(534)는, 예측 행렬 사이즈 변환부(561), 차분 행렬 사이즈 변환부(562), 역양자화부(563) 및 연산부(564)를 갖는다.
예측 행렬 사이즈 변환부(561)는, 예측부(532)(예측 행렬 생성부(542))로부터 공급되는 예측 행렬의 사이즈가, 복원되는 커런트 영역의 스케일링 리스트의 사이즈와 상이한 경우, 그 예측 행렬의 사이즈를 변환한다.
예를 들어, 예측 행렬의 사이즈가 스케일링 리스트의 사이즈보다 큰 경우, 예측 행렬 사이즈 변환부(561)는 예측 행렬을 다운 컨버트한다. 또한, 예를 들어 예측 행렬의 사이즈가 스케일링 리스트의 사이즈보다 작은 경우, 예측 행렬 사이즈 변환부(561)는 예측 행렬을 업 컨버트한다. 컨버트의 방법은, 화상 부호화 장치(10)의 예측 행렬 사이즈 변환부(181)(도 16)와 동일한 방법이 선택된다.
예측 행렬 사이즈 변환부(561)는, 사이즈를 스케일링 리스트에 맞춘 예측 행렬을 연산부(564)에 공급한다.
차분 행렬 사이즈 변환부(562)는, residual_down_sampling_flag가 true인 경우, 즉, 전송된 차분 행렬의 사이즈가 역양자화하는 커런트 영역의 사이즈보다 작은 경우, 그 차분 행렬의 사이즈를 역양자화하는 커런트 영역에 따른 사이즈로 업 컨버트한다. 업 컨버트의 방법은 임의이다. 예를 들어, 화상 부호화 장치(10)의 차분 행렬 사이즈 변환부(163)(도 16)가 행한 다운 컨버트의 방법에 대응하도록 해도 된다.
예를 들어, 차분 행렬 사이즈 변환부(163)가 차분 행렬을 다운 샘플했을 경우, 차분 행렬 사이즈 변환부(562)는, 그 차분 행렬을 업 샘플하도록 해도 된다. 또한, 차분 행렬 사이즈 변환부(163)가 차분 행렬을 서브 샘플했을 경우, 차분 행렬 사이즈 변환부(562)는 그 차분 행렬을 역서브 샘플하도록 해도 된다.
예를 들어, 차분 행렬 사이즈 변환부(562)는, 일반적인 선형 보간이 아니라, 도 25에 도시된 바와 같이, 최근방 보간 처리(nearest neighbor)로 보간하도록 해도 된다. 이 최근방 보간 처리를 사용함으로써, 유지하는 메모리를 저감시킬 수 있다.
이에 의해, 사이즈가 큰 스케일링 리스트를 전송하지 않는 경우에도, 사이즈가 작은 스케일링 리스트로부터 업 샘플링할 때에, 업 샘플링 후의 데이터를 유지할 필요가 없어지고, 업 샘플링할 때의 연산에 수반하는 데이터를 저장할 때에도, 중간 버퍼 등도 불필요하게 된다.
또한, residual_down_sampling_flag가 true가 아닌 경우, 즉, 차분 행렬이 양자화 처리에 사용되었을 때의 사이즈로 전송되는 경우, 차분 행렬 사이즈 변환부(562)는, 차분 행렬의 업 컨버트를 생략한다(또는, 1배의 업 컨버트를 행하도록 해도 된다).
차분 행렬 사이즈 변환부(562)는, 이렇게 필요에 따라서 업 컨버트한 차분 행렬을 역양자화부(563)에 공급한다.
역양자화부(563)는, 화상 부호화 장치(10)의 양자화부(183)(도 16)의 양자화에 대응하는 방법으로, 공급된 차분 행렬(양자화 데이터)을 역양자화하고, 역양자화된 차분 행렬을 연산부(564)에 공급한다. 또한, 양자화부(183)가 생략되는 경우, 즉, 차분 행렬 사이즈 변환부(562)로부터 공급되는 차분 행렬이 양자화 데이터가 아닌 경우, 이 역양자화부(563)를 생략할 수 있다.
연산부(564)는, 예측 행렬 사이즈 변환부(561)로부터 공급되는 예측 행렬과, 역양자화부(563)로부터 공급되는 차분 행렬을 가산하여, 커런트 영역의 스케일링 리스트를 복원한다. 연산부(564)는, 복원한 스케일링 리스트를 출력부(535) 및 기억부(536)에 공급한다.
(5) 출력부
출력부(535)는, 공급되는 정보를 행렬 생성부(410)의 외부에 출력한다. 예를 들어, 카피 모드의 경우, 출력부(535)는, 카피부(541)로부터 공급되는 예측 행렬을 커런트 영역의 스케일링 리스트로서, 역양자화부(440)에 공급한다. 또한, 예를 들어 통상의 경우, 출력부(535)는, 스케일링 리스트 복원부(534)(연산부(564))로부터 공급되는 커런트 영역의 스케일링 리스트를, 역양자화부(440)에 공급한다.
(6) 기억부
기억부(536)는, 스케일링 리스트 복원부(534)(연산부(564))로부터 공급되는 스케일링 리스트를, 그 사이즈나 리스트 ID와 함께 기억한다. 이 기억부(536)에 기억되는 스케일링 리스트에 관한 정보는, 시간적으로 후에 처리되는 다른 직교 변환 단위의 예측 행렬 생성에 이용된다. 즉, 기억부(536)는, 기억하고 있는 스케일링 리스트에 관한 정보를, 과거에 전송된 스케일링 리스트에 관한 정보로서, 예측부(532)에 공급한다.
<2-11. 역DPCM부의 상세한 구성예>
도 26은, 도 24에 나타낸 역DPCM부(552)의 상세한 구성의 일례를 나타내는 블록도이다. 도 26을 참조하면, 역DPCM부(552)는, 초기 설정부(571), DPCM 복호부(572) 및 DC 계수 추출부(573)를 갖는다.
초기 설정부(571)는, sizeID나 MatrixID를 취득하거나, 각종 변수에 초기값을 설정하거나 한다. 초기 설정부(571)는, 취득하거나, 설정하거나 한 정보를 DPCM 복호부(572)에 공급한다.
DPCM 복호부(572)는, 초기 설정부(571)로부터 공급된 초기 설정 등을 사용하여, DC 계수나 AC 계수의 차분값(scaling_list_delta_coef)으로부터, 각 계수(DC 계수 및 각 AC 계수)를 구한다. DPCM 복호부(572)는, 구한 각 계수를 DC 계수 추출부(573)에 공급한다(ScalingList[i]).
DC 계수 추출부(573)는, DPCM 복호부(572)로부터 공급된 계수 군(ScalingList[i]) 중에서 DC 계수를 추출한다. DC 계수는, AC 계수 군의 선두에 배치되어 있다. 즉, DPCM 복호부(572)로부터 공급된 계수 군의 최초의 계수(ScalingList[0])가 DC 계수이다. DC 계수 추출부(573)는, 선두의 계수를 DC 계수로서 추출하여, 역중복 판정부(553)에 출력한다(DC_coef). DC 계수 추출부(573)는, 그 밖의 계수(ScalingList[i](i>0))를 AC 계수로서 역중복 판정부(553)에 출력한다.
이와 같이 함으로써, 역DPCM부(552)는, 정확하게 DPCM 복호할 수 있고, DC 계수나 AC 계수를 얻을 수 있다. 즉, 화상 복호 장치(300)는, 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<2-12. 양자화 행렬 복호 처리의 흐름>
도 27의 흐름도를 참조하여, 이상과 같은 행렬 생성부(410)에 의해 실행되는 양자화 행렬 복호 처리의 흐름의 예를 설명한다.
양자화 행렬 복호 처리가 개시되면, 스텝 S301에서, 파라미터 해석부(531)는, 영역 0 내지 영역 3의 양자화 값(Qscale0 내지 Qscale3)을 판독한다.
파라미터 해석부(531)는, 스텝 S302에서, pred_mode를 판독하고, 스텝 S303에서, pred_mode가 0인지 여부를 판정한다. pred_mode가 0이라고 판정했을 경우, 파라미터 해석부(531)는, 카피 모드라 판정하고, 처리를 스텝 S304로 진행시킨다.
스텝 S304에서, 파라미터 해석부(531)는, pred_matrix_id_delta를 판독한다. 스텝 S305에서, 카피부(541)는, 전송 완료의 스케일링 리스트를 복제하여, 예측 행렬로 한다. 카피 모드의 경우, 그 예측 행렬이 커런트 영역의 스케일링 리스트로서 출력된다. 스텝 S305의 처리가 종료되면, 카피부(541)는, 양자화 행렬 복호 처리를 종료한다.
또한, 스텝 S303에서, pred_mode가 0이 아니라고 판정했을 경우, 파라미터 해석부(531)는, 전체 스캔 모드(통상의 경우)라고 판정하고, 처리를 스텝 S306으로 진행시킨다.
스텝 S306에서, 파라미터 해석부(531)는, pred_matrix_id_delta, pred_size_id_delta 및 residual_flag를 판독한다. 스텝 S307에서, 예측 행렬 생성부(542)는, 전송 완료의 스케일링 리스트로부터 예측 행렬을 생성한다.
스텝 S308에서, 파라미터 해석부(531)는, residual_flag가 true인지 여부를 판정한다. residual_flag가 true가 아니라고 판정된 경우, 잔차 행렬이 존재하지 않으므로, 스텝 S307에서 생성된 예측 행렬이, 커런트 영역의 스케일링 리스트로서 출력된다. 따라서, 이 경우, 파라미터 해석부(531)는, 양자화 행렬 복호 처리를 종료한다.
또한, 스텝 S308에서, residual_flag가 true라고 판정했을 경우, 파라미터 해석부(531)는 처리를 스텝 S309로 진행시킨다.
스텝 S309에서, 파라미터 해석부(531)는, residual_down_sampling_flag 및 residual_symmetry_flag를 판독한다.
스텝 S310에서, expG부(551) 및 역DPCM부(552)는, 잔차 행렬의 지수 골롬 부호를 복호하여, 잔차 데이터를 생성한다.
스텝 S311에서, 역중복 판정부(553)는, residual_symmetry_flag가 true인지 여부를 판정한다. residual_symmetry_flag가 true라고 판정했을 경우, 역중복 판정부(553)는 처리를 스텝 S312로 진행시키고, 그 잔차 데이터의, 삭제된 중복 부분을 복원한다(inverse symmetry 처리를 행함). 이와 같이 하여 135도로 대칭 행렬인 차분 행렬이 생성되면, 역중복 판정부(553)는 처리를 스텝 S313으로 진행시킨다.
또한, 스텝 S311에서, residual_symmetry_flag가 true가 아니라고 판정했을 경우(잔차 데이터가, 135도로 대칭 행렬이 아닌 차분 행렬인 경우), 역중복 판정부(553)는 스텝 S312의 처리를 생략하고(inverse symmetry 처리를 행하지 않고), 처리를 스텝 S313으로 진행시킨다.
스텝 S313에서, 차분 행렬 사이즈 변환부(562)는, residual_down_sampling_flag가 true인지 여부를 판정한다. residual_down_sampling_flag가 true라고 판정했을 경우, 차분 행렬 사이즈 변환부(562)는 처리를 스텝 S314로 진행시키고, 차분 행렬을, 역양자화하는 커런트 영역에 따른 사이즈로 업 컨버트한다. 차분 행렬을 업 컨버트하면 차분 행렬 사이즈 변환부(562)는 처리를 스텝 S315로 진행시킨다.
또한, 스텝 S313에서, residual_down_sampling_flag가 true가 아니라고 판정했을 경우, 차분 행렬 사이즈 변환부(562)는 스텝 S314의 처리를 생략하고(차분 행렬을 업 컨버트하지 않고), 처리를 스텝 S315로 진행시킨다.
스텝 S315에서, 연산부(564)는, 예측 행렬에 차분 행렬을 가산하여, 커런트 영역의 스케일링 리스트를 생성한다. 스텝 S315의 처리가 종료되면, 양자화 행렬 복호 처리가 종료된다.
<2-13. 잔차 신호 복호 처리의 흐름>
이어서, 도 27의 스텝 S310에서 실행되는 잔차 신호 복호 처리의 흐름의 예를, 도 28의 흐름도를 참조하여 설명한다.
잔차 신호 복호 처리가 개시되면, expG부(551)는, 스텝 S331에서, 공급되는 지수 골롬 부호를 복호한다.
스텝 S332에서, 역DPCM부(552)는, expG부(551)에서 복호되어 얻어진 DPCM 데이터에 대하여 역DPCM 처리를 행한다.
역DPCM 처리가 종료되면, 역DPCM부(552)는 잔차 신호 복호 처리를 종료하고, 처리를 도 27로 되돌린다.
<2-14. 역DPCM 처리의 흐름>
이어서, 도 28의 스텝 S332에서 실행되는 역DPCM 처리의 흐름의 예를, 도 29의 흐름도를 참조하여 설명한다.
역DPCM 처리가 개시되면, 초기 설정부(571)는, 스텝 S351에서, sizeID 및 MatrixID를 취득한다.
스텝 S352에서, 초기 설정부(571)는 coefNum을 이하와 같이 설정한다.
coefNum=min((1<<(4+(sizeID<<1))), 65)
스텝 S353에서, 초기 설정부(571)는, 변수 i와 변수 nextcoef를 이하와 같이 설정한다.
i=0
nextcoef=8
스텝 S354에서, DPCM 복호부(572)는 변수 i<coefNum인지 여부를 판정한다. 변수 i가 coefNum보다 작은 경우, 초기 설정부(571)는 처리를 스텝 S355로 진행시킨다.
스텝 S355에서, DPCM 복호부(572)는, 계수의 DPCM 데이터(scaling_list_delta_coef)를 판독한다.
스텝 S356에서, DPCM 복호부(572)는, 판독한 DPCM 데이터를 사용하여 이하와 같이 nextcoef를 구하고, 또한, scalingList[i]를 구한다.
nextcoef=(nextcoef+scaling_list_delta_coef+256)%256
scalingList[i]=nextcoef
스텝 S357에서, DC 계수 추출부(573)는, sizeID가 1보다 크고, 또한, 변수 i가 0(즉, 선두의 계수)인지 여부를 판정한다. sizeID가 1보다 크고, 또한, 선두의 계수라고 판정했을 경우, DC 계수 추출부(573)는 처리를 스텝 S358로 진행시키고, 그 계수를 DC 계수로 한다(DC_coef=nextcoef). 스텝 S358의 처리를 종료하면, DC 계수 추출부(573)는 처리를 스텝 S360으로 진행시킨다.
또한, 스텝 S357에서, DC 계수 추출부(573)는, sizeID가 1 이하이거나, 또는, 선두의 계수가 아니라고 판정했을 경우, 처리를 스텝 S359로 진행시키고, DC 계수를 추출한 분만큼, 각 계수의 변수 i를 1개 어긋나게 한다. (ScalingList[(i-(sizeID)>1)?1;0]=nextcoef) 스텝 S359의 처리가 종료되면, DC 계수 추출부(573)는 처리를 스텝 S360으로 진행시킨다.
스텝 S360에서, DPCM 복호부(572)는 변수 i를 인크리먼트하고, 처리의 대상을 다음의 계수로 바꾸어, 처리를 스텝 S354로 되돌린다.
스텝 S354에서, 변수 i가 coefNum 이상이라고 판정될 때까지, 스텝 S354 내지 스텝 S360의 처리가 반복된다. 스텝 S354에서, 변수 i가 coefNum 이상이라고 판정된 경우, DPCM 복호부(572)는 역DPCM 처리를 종료하고, 처리를 도 28로 되돌린다.
이상과 같이 함으로써, DC 계수와, AC 계수 군의 선두의 AC 계수와의 차분을 정확하게 복호할 수 있으므로, 화상 복호 장치(300)는 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<3. 제3 실시 형태>
<3-1. 신택스: 방법 2>
DC 계수 대신에 DC 계수와 그 밖의 계수와의 차분을 전송하는 방법으로서, 예를 들어 DC 계수와 8x8 매트릭스의 (0, 0) 성분의 차분을, 8x8 매트릭스의 DPCM 데이터와는 다른 DPCM 데이터로서 전송하도록 해도 된다(방법 2). 예를 들어, 8x8 매트릭스의 DPCM 전송 후, DC 계수와 8x8 매트릭스의 (0, 0) 성분의 차분을 전송하도록 해도 된다.
이와 같이 함으로써, 방법 1의 경우와 마찬가지로, 8x8 매트릭스의 (0, 0) 계수(AC 계수)와 DC 계수가 가까운 값인 경우에 압축률을 보다 향상시킬 수 있다.
방법 2의 경우, 스케일링 리스트의 신택스를, 도 30에 나타내었다. 도 30의 예의 경우, 계수끼리의 차분값(scaling_list_delta_coef)이 64개 판독되고, 마지막으로 DC 계수와 (0, 0) 계수(AC 계수)의 차분(scaling_list_dc_coef_delta)이 판독되어, 그 차분으로부터 DC 계수가 구해진다.
따라서, 방법 2의 경우, AC 계수의 복호에 관한 신택스를, 도 12에 나타내는 종래의 경우와 마찬가지로 할 수 있다. 즉, 방법 2의 신택스는, 종래의 예로부터 변경을 적게 할 수 있어, 방법 1의 경우보다 실현이 용이하다.
단, 화상 복호 장치는, 방법 2의 경우, 계수를 모두 수취하여, DPCM을 모두 풀 때까지, DC 계수를 얻을 수 없는 것에 반해, 방법 1의 경우, 최초의 계수를 수취한 시점에서 DC 계수를 복원하는 것이 가능하다.
이러한 방법 2의 신택스를 실현하는 화상 부호화 장치에 대하여 이하에 설명한다.
<3-2. DPCM부의 상세한 구성예>
방법 2의 경우, 화상 부호화 장치(10)의 구성은, 기본적으로, 상술한 방법 1의 경우와 마찬가지이다. 즉, 화상 부호화 장치(10)는, 도 14에 도시되는 예와 같이 구성된다. 또한, 직교 변환·양자화부(14)는, 도 15에 도시되는 예와 같이 구성된다. 또한, 행렬 처리부(150)는, 도 16에 나타내는 예와 같이 구성된다.
이 경우의 DPCM부(192)의 구성예를 도 31에 나타내었다. 도 31에 도시된 바와 같이, 이 경우, DPCM부(192)는, AC 계수 버퍼(611), AC 계수 부호화부(612), AC 계수 DPCM부(613) 및 DC 계수 DPCM부(614)를 갖는다.
AC 계수 버퍼(611)는, 중복 판정부(191)로부터 공급되는 최초의 AC 계수(즉, (0, 0) 계수)를 기억한다. AC 계수 버퍼(611)는, 모든 AC 계수를 DPCM 처리한 후의 소정의 타이밍에서, 또는 요구에 따라, 기억하고 있는 최초의 AC 계수(AC 계수 (0, 0))를 DC 계수 DPCM부(614)에 공급한다.
AC 계수 부호화부(612)는, 중복 판정부(191)로부터 공급되는 최초의 AC 계수(AC 계수 (0, 0))를 취득하고, 상수(예를 들어 8)에서 그 값을 감산한다. AC 계수 부호화부(612)는, 그 감산 결과(차분)를 AC 계수의 DPCM 데이터의 최초의 계수(scaling_list_delta_coef(i=0))로서, expG부(193)에 공급한다.
AC 계수 DPCM부(613)는, 중복 판정부(191)로부터 공급되는 각 AC 계수를 취득하고, 2번째 이후의 각 AC 계수에 대해서, 1개 전의 AC 계수와의 차분(DPCM)을 구하여, DPCM 데이터(scaling_list_delta_coef(i=1 내지 63))로서, expG부(193)에 공급한다.
DC 계수 DPCM부(614)는, 중복 판정부(191)로부터 공급되는 DC 계수를 취득한다. 또한, DC 계수 DPCM부(614)는, AC 계수 버퍼(611)에 의해 유지되어 있는 최초의 AC 계수(AC 계수 (0, 0))를 취득한다. DC 계수 DPCM부(614)는, DC 계수에서 최초의 AC 계수(AC 계수 (0, 0))를 감산함으로써 그것들의 차분을 구하고, 그 차분을 DC 계수의 DPCM 데이터(scaling_list_dc_coef_delta)로서, expG부(193)에 공급한다.
이상과 같이, 방법 2에서는, DC 계수와 그 밖의 계수(최초의 AC 계수)와의 차분이 구해진다. 그리고, 그 차분이, AC 계수의 DPCM 데이터와 상이한, DC 계수의 DPCM 데이터(scaling_list_dc_coef_delta)로서, AC 계수끼리의 차분인 AC 계수의 DPCM 데이터(scaling_list_delta_coef) 전송 후에 전송된다. 이와 같이 함으로써, 화상 부호화 장치(10)는, 방법 1의 경우와 마찬가지로, 스케일링 리스트의 부호화 효율을 향상시킬 수 있다.
<3-3. DPCM 처리의 흐름>
방법 2의 경우도, 화상 부호화 장치(10)는, 양자화 행렬 부호화 처리를, 도 20의 흐름도를 참조하여 설명한 방법 1의 경우와 마찬가지로 실행한다.
도 32의 흐름도를 참조하여, 도 20의 스텝 S112에서 실행되는, 방법 2의 경우의 DPCM 처리의 흐름의 예를 설명한다.
DPCM 처리가 개시되면, AC 계수 버퍼(611)는, 스텝 S401에서, 최초의 AC 계수를 유지한다.
스텝 S402에서, AC 계수 부호화부(612)는, 소정의 상수(예를 들어 8)에서 최초의 AC 계수를 감산하여, 그 차분(최초의 DPCM 데이터)을 구한다.
스텝 S403 내지 스텝 S405의 각 처리는, AC 계수 DPCM부(613)에 의해, 도 21의 스텝 S133 내지 스텝 S135의 각 처리와 마찬가지로 실행된다. 즉, 스텝 S403 내지 스텝 S405의 처리가 반복해서 실행됨으로써, 모든 AC 계수의 DPCM 데이터(1개 전의 AC 계수와의 차분)가 생성된다.
스텝 S403에서, 모든 AC 계수가 처리되었다고(즉, 미처리의 AC 계수가 존재하지 않는다고) 판정했을 경우, AC 계수 DPCM부(613)는, 처리를 스텝 S406으로 진행시킨다.
스텝 S406에서, DC 계수 DPCM부(614)는, DC 계수에서, 스텝 S401에서 유지된 최초의 AC 계수를 감산하고, 그것들의 차분(DC 계수의 DPCM 데이터)을 구한다.
스텝 S406의 처리가 종료되면, DC 계수 DPCM부(614)는 DPCM 처리를 종료하고, 처리를 도 20으로 되돌린다.
이상과 같이, DC 계수에 대해서도, 다른 계수와의 차분을 구하고, 그것을 DPCM 데이터로서 화상 복호 장치에 전송함으로써, 화상 부호화 장치(10)는 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<3-4. 역DPCM부의 상세한 구성예>
방법 2의 경우의 화상 복호 장치(300)의 구성은, 기본적으로, 방법 1의 경우와 마찬가지이다. 즉, 방법 2의 경우도, 화상 복호 장치(300)는, 도 22에 나타내는 예와 같이 구성된다. 또한, 역양자화·역직교 변환부(313)는, 도 23에 나타내는 예와 같이 구성된다. 또한, 행렬 생성부(410)는, 도 24에 나타내는 예와 같이 구성된다.
도 33은, 방법 2의 경우, 도 24에 나타낸 역DPCM부(552)의 상세한 구성의 일례를 나타내는 블록도이다. 도 33을 참조하면, 역DPCM부(552)는, 초기 설정부(621), AC 계수 DPCM 복호부(622), AC 계수 버퍼(623) 및 DC 계수 DPCM 복호부(624)를 갖는다.
초기 설정부(621)는, sizeID나 MatrixID를 취득하거나, 각종 변수에 초기값을 설정하거나 한다. 초기 설정부(621)는, 취득하거나, 설정하거나 한 정보를 AC 계수 DPCM 복호부(622)에 공급한다.
AC 계수 DPCM 복호부(622)는, expG부(551)로부터 공급되는 AC 계수의 DPCM 데이터(scaling_list_delta_coef)를 취득한다. AC 계수 DPCM 복호부(622)는, 초기 설정부(621)로부터 공급된 초기 설정 등을 사용하여, 취득한 AC 계수의 DPCM 데이터를 복호하여, AC 계수를 구한다. AC 계수 DPCM 복호부(622)는, 구한 각 AC 계수(ScalingList[i])를 역중복 판정부(553)에 공급한다. 또한, AC 계수 DPCM 복호부(622)는, 구한, 최초의 AC 계수(ScalingList[0], 즉 AC 계수 (0, 0))를 AC 계수 버퍼(623)에 공급하여 유지시킨다.
AC 계수 버퍼(623)는, AC 계수 DPCM 복호부(622)로부터 공급되는 최초의 AC 계수(ScalingList[0], 즉 AC 계수 (0, 0))를 기억한다. AC 계수 버퍼(623)는, 그 최초의 AC 계수(ScalingList[0], 즉 AC 계수 (0, 0))를 소정의 타이밍에서, 또는 요구에 따라, DC 계수 DPCM 복호부(624)에 공급한다.
DC 계수 DPCM 복호부(624)는, expG부(551)로부터 공급되는 DC 계수의 DPCM 데이터(scaling_list_dc_coef_delta)를 취득한다. 또한, DC 계수 DPCM 복호부(624)는, AC 계수 버퍼(623)에 기억되어 있는 최초의 AC 계수(ScalingList[0], 즉 AC 계수 (0, 0))를 취득한다. DC 계수 DPCM 복호부(624)는, 그 최초의 AC 계수를 사용하여 DC 계수의 DPCM 데이터를 복호하여, DC 계수를 구한다. DC 계수 DPCM 복호부(624)는, 구한 DC 계수(DC_coef)를 역중복 판정부(553)에 공급한다.
이와 같이 함으로써, 역DPCM부(552)는 정확하게 DPCM 복호할 수 있고, DC 계수나 AC 계수를 얻을 수 있다. 즉, 화상 복호 장치(300)는, 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<3-5. 역DPCM 처리의 흐름>
방법 2의 경우도, 화상 복호 장치(300)는, 양자화 행렬 복호 처리를, 도 27의 흐름도를 참조하여 설명한 방법 1의 경우와 마찬가지로 실행한다. 마찬가지로, 화상 복호 장치(300)는, 잔차 신호 복호 처리를, 도 28의 흐름도를 참조하여 설명한 방법 1의 경우와 마찬가지로 실행한다.
도 34의 흐름도를 참조하여, 역DPCM부(552)에 의해 실행되는 역DPCM 처리의 흐름의 예를 설명한다.
역DPCM 처리가 개시되면, 초기 설정부(621)는, 스텝 S421에서, sizeID 및 MatrixID를 취득한다.
스텝 S422에서, 초기 설정부(621)는 coefNum을 이하와 같이 설정한다.
coefNum=min((1<<(4+(sizeID<<1))), 64)
스텝 S423에서, 초기 설정부(621)는, 변수 i와 변수 nextcoef를 이하와 같이 설정한다.
i=0
nextcoef=8
스텝 S424에서, DPCM 복호부(572)는, 변수 i<coefNum인지 여부를 판정한다. 변수 i가 coefNum보다 작은 경우, 초기 설정부(621)는 처리를 스텝 S425로 진행시킨다.
스텝 S425에서, AC 계수 DPCM 복호부(622)는, AC 계수의 DPCM 데이터(scaling_list_delta_coef)를 판독한다.
스텝 S426에서, AC 계수 DPCM 복호부(622)는, 판독한 DPCM 데이터를 사용하여 이하와 같이 nextcoef를 구하고, 또한, scalingList[i]를 구한다.
nextcoef=(nextcoef+scaling_list_delta_coef+256)%256
scalingList[i]=nextcoef
또한, 산출된 최초의 AC 계수(ScalingList[0], 즉, AC 계수 (0, 0))는, AC 계수 버퍼(623)에 유지된다.
스텝 S427에서, AC 계수 DPCM 복호부(622)는, 변수 i를 인크리먼트하고, 처리의 대상을 다음의 계수로 바꾸어, 처리를 스텝 S424로 되돌린다.
스텝 S424에서, 변수 i가 coefNum 이상이라고 판정될 때까지, 스텝 S424 내지 스텝 S427의 처리가 반복된다. 스텝 S424에서, 변수 i가 coefNum 이상이라고 판정된 경우, AC 계수 DPCM 복호부(622)는 처리를 스텝 S428로 진행시킨다.
스텝 S428에서, DC 계수 DPCM 복호부(624)는, sizeID가 1보다 큰지 여부를 판정한다. sizeID가 1보다 크다고 판정했을 경우, DC 계수 DPCM 복호부(624)는, 처리를 스텝 S429로 진행시키고, DC 계수의 DPCM 데이터(scaling_list_dc_coef_delta)를 판독한다.
스텝 S430에서, DC 계수 DPCM 복호부(624)는, AC 계수 버퍼(623)에 의해 유지되어 있는 최초의 AC 계수(ScalingList[0], 즉, AC 계수 (0, 0))를 취득하고, 그 최초의 AC 계수를 사용하여, DC 계수(DC_coef)의 DPCM 데이터를, 이하와 같이 복호한다.
DC_coef=scaling_list_dc_coef_delta+ScalingList[0]
DC 계수(DC_coef)가 얻어지면, DC 계수 DPCM 복호부(624)는 역DPCM 처리를 종료하고, 처리를 도 28로 되돌린다.
또한, 스텝 S428에서, sizeID가 1 이하라고 판정했을 경우, DC 계수 DPCM 복호부(624)는, 역DPCM 처리를 종료하고, 처리를 도 28로 되돌린다.
이상과 같이 함으로써, DC 계수와, AC 계수 군의 선두의 AC 계수와의 차분을 정확하게 복호할 수 있으므로, 화상 복호 장치(300)는 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<4. 제4 실시 형태>
<4-1. 신택스: 방법 3>
상술한 방법 2에서, 또한, DC 계수를, 최초의 AC 계수(AC 계수 (0, 0))보다 작은 값으로 한정하도록 해도 된다(방법 3).
이와 같이 함으로써, DC 계수의 DPCM 데이터, 즉, DC 계수에서 최초의 AC 계수를 감산하여 얻어지는 차분값을, 반드시 양의 값으로 할 수 있다. 따라서, 이 DPCM 데이터는, 부호 없는 지수 골롬 부호에 의해 부호화할 수 있다. 따라서, 방법 3의 경우, DC 계수를 최초의 AC 계수보다 큰 값으로 할 수가 없게 되기는 하지만, 방법 1이나 방법 2의 경우보다 부호량을 저감시킬 수 있다.
방법 3의 경우, 스케일링 리스트의 신택스를 도 35에 나타내었다. 도 35에 도시된 바와 같이, 이 경우, DC 계수의 DPCM 데이터(scaling_list_dc_coef_delta)가 양의 값으로 제한된다.
이러한 방법 3의 신택스는, 방법 2의 경우와 마찬가지의 화상 부호화 장치(10)에 의해 실현할 수 있다. 단, 방법 3의 경우, expG부(193)는 DC 계수의 DPCM 데이터를, 부호 없는 지수 골롬 부호에 의해 부호화할 수 있다. 또한, 화상 부호화 장치(10)는, 양자화 행렬 부호화 처리나 DPCM 처리 등의 각 처리를, 방법 2의 경우와 마찬가지로 실행할 수 있다.
또한, 이러한 방법 3의 신택스는, 방법 2의 경우와 마찬가지의 화상 복호 장치(300)에 의해 실현할 수 있다. 또한, 화상 복호 장치(300)는, 양자화 행렬 복호 처리를, 방법 2의 경우와 마찬가지로 실행할 수 있다.
<4-2. 역DPCM 처리의 흐름>
도 36의 흐름도를 참조하여, 역DPCM부(552)에 의해 실행되는 역DPCM 처리의 흐름의 예를 설명한다.
스텝 S451 내지 스텝 S459의 각 처리는, 도 34의 스텝 S421 내지 스텝 S429의 각 처리와 마찬가지로 행하여진다.
스텝 S460에서, DC 계수 DPCM 복호부(624)는, AC 계수 버퍼(623)에 의해 유지되어 있는 최초의 AC 계수(ScalingList[0], 즉, AC 계수 (0, 0))를 취득하고, 그 최초의 AC 계수를 사용하여, DC 계수(DC_coef)의 DPCM 데이터를 이하와 같이 복호한다.
DC_coef=ScalingList[0]-scaling_list_dc_coef_delta
DC 계수(DC_coef)가 얻어지면, DC 계수 DPCM 복호부(624)는 역DPCM 처리를 종료하고, 처리를 도 28로 되돌린다.
또한, 스텝 S458에서, sizeID가 1 이하라고 판정했을 경우, DC 계수 DPCM 복호부(624)는 역DPCM 처리를 종료하고, 처리를 도 28로 되돌린다.
이상과 같이 함으로써, DC 계수와, AC 계수 군의 선두의 AC 계수와의 차분을 정확하게 복호할 수 있으므로, 화상 복호 장치(300)는 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<5. 제5 실시 형태>
<5-1. 신택스: 방법 4>
DC 계수 대신에 DC 계수와 그 밖의 계수의 차분을 전송하는 방법으로서, 예를 들어 복수의 스케일링 리스트의 DC 계수만을 모아, 각 스케일링 리스트의 AC 계수와는 별도로, DC 계수끼리 차분을 취하는 DPCM을 행하도록 해도 된다(방법 4). 이 경우, DC 계수의 DPCM 데이터는, 복수의 스케일링 리스트 분의 데이터가 통합되어, 각 스케일링 리스트의 AC 계수의 DPCM 데이터와는 다른 데이터로서 전송된다.
이와 같이 함으로써, 예를 들어 각 스케일링 리스트(각 MatrixID)의 사이에 DC 계수끼리 상관이 있는 경우에, 압축률을 보다 향상시킬 수 있다.
방법 4의 경우의, 스케일링 리스트의 DC 계수에 관한 신택스를, 도 37에 나타내었다. 이 경우, DC 계수의 처리를 각 스케일링 리스트의 AC 계수의 처리와는 다른 사이클로 행할 필요가 있기 때문에, 도 37의 예에 도시된 바와 같이, AC 계수와 DC 계수의 처리를 서로 독립시킬 필요가 있다.
따라서, DPCM 처리나 역DPCM 처리가 번잡해질 우려가 있지만, 보다 다양한 스케일링 리스트의 부호화·복호 처리 방법을 실현할 수 있다. 예를 들어, 카피 모드 시에, AC 계수만을 카피하여 DC 계수를 서로 다른 값으로 하는 처리도 용이하게 실현할 수 있다.
또한, 이렇게 DC 계수를 통합하여 처리하는 스케일링 리스트의 수는 임의이다.
<5-2. DPCM부의 상세한 구성예>
방법 4의 경우, 화상 부호화 장치(10)의 구성은, 기본적으로, 상술한 방법 1의 경우와 마찬가지이다. 즉, 화상 부호화 장치(10)는, 도 14에 도시되는 예와 같이 구성된다. 또한, 직교 변환·양자화부(14)는, 도 15에 도시되는 예와 같이 구성된다. 또한, 행렬 처리부(150)는 도 16에 나타내는 예와 같이 구성된다.
이 경우의 DPCM부(192)의 구성예를 도 38에 나타내었다. 도 38에 도시된 바와 같이, 이 경우, DPCM부(192)는 AC 계수 DPCM부(631), DC 계수 버퍼(632) 및 DC 계수 DPCM부(633)를 갖는다.
AC 계수 DPCM부(631)는, 각 스케일링 리스트에 대해서, 중복 판정부(191)로부터 공급되는 각 AC 계수의 DPCM 처리를 행한다. 즉, AC 계수 DPCM부(631)는, 각 스케일링 리스트에 대해서, 소정의 상수(예를 들어 8)에서 최초의 AC 계수를 감산하거나, 1개 전의 AC 계수에서 처리 대상의 AC 계수(커런트 AC 계수)를 감산하거나 한다. AC 계수 DPCM부(631)는, 각 스케일링 리스트에 대해서, 생성한 DPCM 데이터(scaling_list_delta_coef)를 expG부(193)에 공급한다.
DC 계수 버퍼(632)는, 중복 판정부(191)로부터 공급되는 각 스케일링 리스트의 DC 계수를 기억한다. DC 계수 버퍼(632)는, 소정의 타이밍에서, 또는 요구에 기초하여, 기억하고 있는 복수의 DC 계수를 DC 계수 DPCM부(633)에 공급한다.
DC 계수 DPCM부(633)는, DC 계수 버퍼(632)에 축적된 DC 계수를 취득한다. DC 계수 DPCM부(633)는, 취득한 각 DC 계수의 DPCM 데이터를 구한다. 즉, DC 계수 DPCM부(633)는, 소정의 상수(예를 들어 8)에서 최초의 DC 계수를 감산하거나, 1개 전의 DC 계수에서 처리 대상의 DC 계수(커런트 DC 계수)를 감산하거나 한다. DC 계수 DPCM부(633)는, 생성한 DPCM 데이터(scaling_list_delta_coef)를 expG부(193)에 공급한다.
이와 같이 함으로써, 화상 부호화 장치(10)는 스케일링 리스트의 부호화 효율을 향상시킬 수 있다.
<5-3. DPCM 처리의 흐름>
방법 4의 경우도, 화상 부호화 장치(10)는, 양자화 행렬 부호화 처리를, 도 20의 흐름도를 참조하여 설명한 방법 1의 경우와 마찬가지로 실행한다.
도 39의 흐름도를 참조하여, 도 20의 스텝 S112에서 실행되는, 방법 4의 경우의 DPCM 처리의 흐름의 예를 설명한다.
스텝 S481 내지 스텝 S485의 각 처리는, AC 계수 DPCM부(631)에 의해, 도 32의 스텝 S401 내지 스텝 S405의 각 처리(방법 2의 경우의 처리)와 마찬가지로 실행된다.
스텝 S483에서, 모든 AC 계수를 처리했다고 판정했을 경우, AC 계수 DPCM부(631)는 처리를 스텝 S486으로 진행시킨다.
스텝 S486에서, AC 계수 DPCM부(631)는, DC 계수를 통합하여 DPCM 부호화하는 스케일링 리스트(또는 차분 행렬)를 모두 처리했는지 여부를 판정한다. 미처리의 스케일링 리스트(또는 차분 행렬)가 존재한다고 판정한 경우, AC 계수 DPCM부(631)는 처리를 스텝 S481로 되돌린다.
스텝 S486에서, 모든 스케일링 리스트(또는 차분 행렬)를 처리했다고 판정했을 경우, AC 계수 DPCM부(631)는 처리를 스텝 S487로 진행시킨다.
DC 계수 DPCM부(633)는, DC 계수 버퍼(632)에 기억되어 있는 DC 계수에 대해서, 스텝 S487 내지 스텝 S491의 각 처리를, 스텝 S481 내지 스텝 S485의 각 처리와 마찬가지로 실행한다.
스텝 S489에서, DC 계수 버퍼(632)에 기억되어 있는 모든 DC 계수를 처리했다고 판정했을 경우, DC 계수 DPCM부(633)는 DPCM 처리를 종료하고, 처리를 도 20으로 되돌린다.
이렇게 DPCM 처리를 실행함으로써, 화상 부호화 장치(10)는 스케일링 리스트의 부호화 효율을 향상시킬 수 있다.
<5-4. 역DPCM부의 상세한 구성예>
방법 4의 경우의 화상 복호 장치(300)의 구성은, 기본적으로, 방법 1의 경우와 마찬가지이다. 즉, 방법 4의 경우도 화상 복호 장치(300)는, 도 22에 나타내는 예와 같이 구성된다. 또한, 역양자화·역직교 변환부(313)는, 도 23에 나타내는 예와 같이 구성된다. 또한, 행렬 생성부(410)는, 도 24에 나타내는 예와 같이 구성된다.
도 40은, 방법 4의 경우, 도 24에 나타낸 역DPCM부(552)의 상세한 구성의 일례를 나타내는 블록도이다. 도 40을 참조하면, 역DPCM부(552)는, 초기 설정부(641), AC 계수 DPCM 복호부(642) 및 DC 계수 DPCM 복호부(643)를 갖는다.
초기 설정부(641)는, sizeID나 MatrixID를 취득하거나, 각종 변수에 초기값을 설정하거나 한다. 초기 설정부(641)는, 취득하거나, 설정하거나 한 정보를 AC 계수 DPCM 복호부(642) 및 DC 계수 DPCM 복호부(643)에 공급한다.
AC 계수 DPCM 복호부(642)는, expG부(551)로부터 공급되는 AC 계수의 DPCM 데이터(scaling_list_delta_coef(ac))를 취득한다. AC 계수 DPCM 복호부(642)는, 초기 설정부(641)로부터 공급된 초기 설정 등을 사용하여, 취득한 AC 계수의 DPCM 데이터를 복호하여, AC 계수를 구한다. AC 계수 DPCM 복호부(642)는, 구한 각 AC 계수(ScalingList[i])를 역중복 판정부(553)에 공급한다. AC 계수 DPCM 복호부(642)는 이러한 처리를, 복수의 스케일링 리스트에 대하여 실행한다.
DC 계수 DPCM 복호부(643)는, expG부(551)로부터 공급되는 DC 계수의 DPCM 데이터(scaling_list_delta_coef(dc))를 취득한다. DC 계수 DPCM 복호부(643)는, 초기 설정부(641)로부터 공급된 초기 설정 등을 사용하여, 취득한 DC 계수의 DPCM 데이터를 복호하여, 각 스케일링 리스트의 DC 계수를 구한다. DC 계수 DPCM 복호부(643)는, 구한 각 DC 계수(scaling_list_dc_coef)를 역중복 판정부(553)에 공급한다.
이와 같이 함으로써, 역DPCM부(552)는 정확하게 DPCM 복호할 수 있고, DC 계수나 AC 계수를 얻을 수 있다. 즉, 화상 복호 장치(300)는, 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<5-5. 역DPCM 처리의 흐름>
방법 4의 경우도, 화상 복호 장치(300)는 양자화 행렬 복호 처리를, 도 27의 흐름도를 참조하여 설명한 방법 1의 경우와 마찬가지로 실행한다. 마찬가지로, 화상 복호 장치(300)는, 잔차 신호 복호 처리를, 도 28의 흐름도를 참조하여 설명한 방법 1의 경우와 마찬가지로 실행한다.
도 41 및 도 42의 흐름도를 참조하여, 역DPCM부(552)에 의해 실행되는 역DPCM 처리의 흐름의 예를 설명한다.
역DPCM 처리가 개시되면, 초기 설정부(641) 및 AC 계수 DPCM 복호부(642)는, 스텝 S511 내지 스텝 S517의 각 처리를, 도 34의 스텝 S421 내지 스텝 S427의 각 처리와 마찬가지로 실행한다.
스텝 S514에서, 변수 i가 coefNum 이상이라고 판정된 경우, AC 계수 DPCM 복호부(642)는 처리를 스텝 S518로 진행시킨다.
스텝 S518에서, AC 계수 DPCM 복호부(642)는, DC 계수를 통합하여 DPCM 처리하는 모든 스케일링 리스트(차분 행렬)를 처리했는지 여부를 판정한다. 미처리의 스케일링 리스트(차분 행렬)가 존재한다고 판정된 경우, AC 계수 DPCM 복호부(642)는 처리를 스텝 S511로 되돌리고, 그 이후의 처리를 반복한다.
또한, 미처리의 스케일링 리스트(차분 행렬)가 존재하지 않는다고 판정된 경우, AC 계수 DPCM 복호부(642)는 처리를 도 42로 진행시킨다.
도 42의 스텝 S521에서, 초기 설정부(641)는, sizeID와 변수 nextcoef를 이하와 같이 설정한다.
sizeID=2
nextcoef=8
또한, 스텝 S522에서, 초기 설정부(641)는 MatrixID를 이하와 같이 설정한다.
MatrixID=0
스텝 S523에서, DC 계수 DPCM 복호부(643)는, sizeID<4인지 여부를 판정한다. sizeID가 4보다 작다고 판정했을 경우, DC 계수 DPCM 복호부(643)는 처리를 스텝 S524로 진행시킨다.
스텝 S524에서, DC 계수 DPCM 복호부(643)는, MatrixID<(sizeID==3)?2:6인지 여부를 판정한다. MatrixID<(sizeID==3)?2:6이라고 판정했을 경우, DC 계수 DPCM 복호부(643)는 처리를 스텝 S525로 진행시킨다.
스텝 S525에서, DC 계수 DPCM 복호부(643)는, DC 계수의 DPCM 데이터(scaling_list_delta_coef)를 판독한다.
스텝 S526에서, DC 계수 DPCM 복호부(643)는, 판독한 DPCM 데이터를 사용하여 이하와 같이 nextcoef를 구하고, 또한, scaling_dc_coef를 구한다.
nextcoef=(nextcoef+scaling_list_delta_coef+256)%256
scaling_dc_coef[sizeID-2][MatrixID]=nextcoef
스텝 S527에서, DC 계수 DPCM 복호부(643)는 MatrixID를 인크리먼트하여, 처리의 대상을 다음의 DC 계수(다음의 스케일링 리스트 또는 잔차 행렬)로 바꾸고, 처리를 스텝 S524로 되돌린다.
스텝 S524에서, MatrixID<(sizeID==3)?2:6이 아니라고 판정했을 경우, DC 계수 DPCM 복호부(643)는 처리를 스텝 S528로 진행시킨다.
스텝 S528에서, DC 계수 DPCM 복호부(643)는 sizeID를 인크리먼트하여, 처리의 대상을 다음의 DC 계수(다음의 스케일링 리스트 또는 잔차 행렬)로 바꾸고, 처리를 스텝 S523으로 되돌린다.
스텝 S523에서, sizeID가 4 이상이라고 판정했을 경우, DC 계수 DPCM 복호부(643)는 역DPCM 처리를 종료하고, 처리를 도 28로 되돌린다.
이상과 같이 함으로써, DC 계수끼리의 차분을 정확하게 복호할 수 있으므로, 화상 복호 장치(300)는 스케일링 리스트의 부호량의 증가를 억제할 수 있다.
<6. 제6 실시 형태>
<6-1. 신택스 다른 예 1>
도 43에, 스케일링 리스트에 관한 신택스의 다른 예를 나타낸다. 이 도는, 도 12에 대응하는 것이다. 도 12의 예에서는, nextcoef의 초기값이 소정의 상수(예를 들어 8)로 설정되지만, 그 대신에, 도 43에 도시된 바와 같이, nextcoef의 초기값을 DC 계수의 DPCM 데이터(scaling_list_dc_coef_minus8)로 덮어쓰도록 해도 된다.
이와 같이 함으로써, 16x16의 스케일링 리스트 및 32x32의 스케일링 리스트의, 최초의 AC 계수((0, 0)의 AC 계수)의 부호량을 저감시킬 수 있다.
<6-2. 신택스 다른 예 2>
도 44에, 스케일링 리스트에 관한 신택스의 다른 예를 나타낸다. 이 도는, 도 12에 대응하는 것이다.
도 12의 예에서는, 카피 모드에서의 참조처를 지정하는 정보인 scaling_list_pred_matrix_id_delta의 값이 「0」인 경우, 1개 전의 스케일링 리스트가 참조되고, 「1」인 경우, 2개 전의 스케일링 리스트가 참조된다.
이에 반해, 도 44의 예에서는, 도 44의 C에 도시된 바와 같이, 카피 모드에서의 참조처를 지정하는 정보인 scaling_list_pred_matrix_id_delta의 값이 「0」인 경우, 디폴트의 스케일링 리스트가 참조되게 되고, 「1」인 경우, 1개 전의 스케일링 리스트가 참조되게 되어 있다.
이와 같이, scaling_list_pred_matrix_id_delta의 시멘틱스를 변경함으로써, 도 44의 B에 도시된 바와 같이, 신택스를 간략화할 수 있어, DPCM 처리나 역DPCM 처리의 부하를 저감시킬 수 있다.
<6-3. 신택스 다른 예 3>
도 45에, 스케일링 리스트에 관한 신택스의 다른 예를 나타낸다. 이 도는, 도 12에 대응하는 것이다.
도 45의 예에서는, 상술한, 도 43에 나타내는 예와, 도 44에 나타내는 예의 양쪽이 적용되어 있다.
따라서, 도 45의 예의 경우, 16x16의 스케일링 리스트 및 32x32의 스케일링 리스트의, 최초의 AC 계수((0, 0)의 AC 계수)의 부호량을 저감시킬 수 있음과 함께, 신택스를 간략화할 수 있어, DPCM 처리나 역DPCM 처리의 부하를 저감시킬 수 있다.
이상의 각 실시 형태에서, 소정의 상수의 값은 임의이다. 또한, 스케일링 리스트의 사이즈도 임의이다.
또한, 이상에서는, 스케일링 리스트, 예측 행렬, 또는 그것들의 차분 행렬의 사이즈 변환 처리에 대하여 설명했지만, 이 사이즈 변환 처리는, 실제로, 사이즈를 변환한 행렬을 생성하는 처리이어도 되지만, 실제로는 행렬의 데이터를 생성하지 않고, 메모리로부터의 행렬의 각 요소의 판독 방법을 설정하는 처리(행렬 데이터의 판독 제어)이어도 된다.
상술한 사이즈 변환 처리의 경우, 사이즈 변환 후의 행렬의 각 요소는, 사이즈 변환 전의 행렬의 어느 하나의 요소에 의해 구성된다. 즉, 예를 들어 일부의 요소만을 판독하거나, 1개의 요소를 복수 회 판독하거나 하는 등의 소정의 방법으로, 메모리에 저장되어 있는 사이즈 변환 전의 행렬의 요소를 판독하면, 사이즈 변환 후의 행렬을 생성할 수 있다. 환언하면, 그 각 요소의 판독 방법을 정의함(행렬 데이터의 판독 제어를 행함)으로써, 상술한 사이즈 변환이 실질적으로 실현된다. 이러한 방법을 사용함으로써, 사이즈 변환 후의 행렬 데이터를 메모리에 기입하는 등의 처리가 불필요해진다. 또한, 사이즈 변환 후의 행렬 데이터의 판독 방법은, 기본적으로 최근방 보간의 방법 등으로 정해지므로, 미리 준비되어 있는 복수의 선택지 중에서 적절한 것을 선택하는 정도의, 비교적 저부하의 처리로 실현 가능하다. 따라서, 이러한 방법을 사용함으로써, 사이즈 변환의 부하가 저감된다.
즉, 이상에서 설명한 사이즈 변환 처리는, 실제로 사이즈 변환 후의 행렬 데이터의 생성 처리도 포함하지만, 이러한 행렬 데이터의 판독 제어도 포함한다.
또한, 이상에서는 차분 행렬이 부호화되어 전송되도록 설명했지만, 이에 한정하지 않고, 스케일링 리스트가 부호화되어 전송되도록 해도 된다. 환언하면, 이상에서, 처리되는 계수로서 설명한 스케일링 리스트의 AC 계수나 DC 계수는, 스케일링 리스트와 예측 행렬의 차분 행렬의 AC 계수나 DC 계수이어도 된다.
또한, 예를 들어 스케일링 리스트의 사이즈나 리스트 ID 등의, 스케일링 리스트에 관한 파라미터나 플래그 등의 정보도, 예를 들어 전회 전송한 정보와의 차분을 취하여, 그 차분을 전송하거나 해서, 그 부호량을 저감시키도록 해도 된다.
또한, 이상에서는, 큰 사이즈의 양자화 행렬 또는 차분 행렬을 다운 컨버트하여 전송하는 것으로 설명했지만, 이에 한정하지 않고, 양자화 행렬 또는 차분 행렬을, 다운 컨버트하지 않고, 양자화에 사용된 양자화 행렬의 사이즈 그대로 전송하도록 해도 된다.
본 기술의 적용 범위는, 양자화·역양자화를 사용하는 모든 화상의 부호화·복호에 적용할 수 있다.
또한, 본 기술은, 예를 들어 MPEG, H.26x 등과 같이, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축된 화상 정보(비트 스트림)를, 위성 방송, 케이블 텔레비전, 인터넷 또는 휴대 전화기 등의 네트워크 미디어를 통해 수신할 때에 사용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 기술은, 광, 자기 디스크 및 플래시 메모리와 같은 기억 미디어 상에서 처리할 때에 사용되는 화상 부호화 장치 및 화상 복호 장치에 적용할 수 있다. 또한, 본 기술은, 그것들의 화상 부호화 장치 및 화상 복호 장치 등에 포함되는 양자화 장치·역양자화 장치에도 적용할 수 있다.
<7. 제7 실시 형태>
<다시점 화상 부호화·다시점 화상 복호에 대한 적용>
상술한 일련의 처리는, 다시점 화상 부호화·다시점 화상 복호에 적용할 수 있다. 도 46은, 다시점 화상 부호화 방식의 일례를 나타낸다.
도 46에 도시된 바와 같이, 다시점 화상은, 복수의 시점(뷰(view))의 화상을 포함한다. 이 다시점 화상의 복수의 뷰는, 다른 뷰의 화상을 이용하지 않고 자신의 뷰 화상만을 사용하여 부호화·복호를 행하는 베이스(base) 뷰와, 다른 뷰의 화상을 이용하여 부호화·복호를 행하는 논베이스(non-base) 뷰를 포함한다. 논베이스 뷰는, 베이스 뷰의 화상을 이용하도록 해도 되고, 다른 논베이스 뷰의 화상을 이용하도록 해도 된다.
도 46과 같은 다시점 화상을 부호화·복호하는 경우, 각 뷰의 화상을 부호화·복호하는데, 이 각 뷰의 부호화·복호에 대하여 이상의 각 실시 형태에서 설명한 방법을 적용하도록 해도 된다. 이와 같이 함으로써, 각 뷰의 화질 저감을 억제할 수 있다.
또한, 각 뷰의 부호화·복호에 있어서, 이상의 각 실시 형태에서 설명한 방법에서 사용되는 플래그나 파라미터를 공유하도록 해도 된다. 이와 같이 함으로써, 부호화 효율의 저감을 억제할 수 있다.
보다 구체적으로는, 예를 들어 스케일링 리스트에 관한 정보(예를 들어 파라미터나 플래그 등)를 각 뷰의 부호화·복호에서 공유하도록 해도 된다.
물론, 이것들 이외의 필요한 정보도, 각 뷰의 부호화·복호에서 공유하도록 해도 된다.
예를 들어, 스케일링 리스트나 스케일링 리스트에 관한 정보를 시퀀스 파라미터 세트(SPS(Sequence Parameter Set))나 픽처 파라미터 세트(PPS(Picture Parameter Set))에서 전송하는 경우, 그러한 (SPS나 PPS)가 뷰 간에서 공유되는 것이라면, 스케일링 리스트나 스케일링 리스트에 관한 정보도 저절로 공유되게 된다. 이와 같이 함으로써, 부호화 효율의 저감을 억제할 수 있다.
또한, 베이스 뷰의 스케일링 리스트(양자화 매트릭스)의 행렬 요소를 뷰 간의 시차 값에 따라서 변경하도록 해도 된다. 또한, 베이스 뷰의 스케일링 리스트(양자화 매트릭스)의 행렬 요소에 관해서, 논베이스 뷰용의 행렬 요소를 조정하기 위한 오프셋값을 전송하도록 해도 된다. 이와 같이 함으로써, 부호량의 증대를 억제할 수 있다.
예를 들어, 뷰 마다의 스케일링 리스트를 미리 별도로 전송하도록 해도 된다. 뷰마다 스케일링 리스트를 변경하는 경우, 그 미리 전송한 스케일링 리스트와의 차분을 나타내는 정보만을 전송하면 된다. 이 차분을 나타내는 정보는 임의이다. 예를 들어, 4x4이나 8x8을 단위로 하는 정보이어도 되고, 행렬끼리의 차분이어도 된다.
또한, 뷰 간에서, SPS나 PPS를 공유하지 않지만, 스케일링 리스트나 스케일링 리스트에 관한 정보를 공유할 때는, 다른 뷰의 SPS나 PPS를 참조할 수 있도록(즉, 다른 뷰의, 스케일링 리스트나 스케일링 리스트에 관한 정보를 이용할 수 있도록) 해도 된다.
또한, 이러한 다시점 화상을, YUV의 각 화상과, 뷰 간의 시차량에 대응하는 깊이 화상(Depth)을 각각 컴포넌트로 하는 화상으로서 나타내는 경우, 각 컴포넌트(Y, U, V, Depth)의 화상에 대하여 서로 독립된 스케일링 리스트나 스케일링 리스트에 관한 정보를 사용하도록 해도 된다.
예를 들어, 깊이 화상(Depth)은, 에지의 화상이므로, 스케일링 리스트는 불필요하다. 따라서, SPS나 PPS에서 스케일링 리스트의 이용이 지정되어 있는 경우에도, 깊이 화상(Depth)에 대해서는, 스케일링 리스트를 적용하지 않도록(또는 행렬 요소가 모두 동일(FLAT)한 스케일링 리스트를 적용하도록) 해도 된다.
<다시점 화상 부호화 장치>
도 47은, 상술한 다시점 화상 부호화를 행하는 다시점 화상 부호화 장치를 도시하는 도면이다. 도 47에 도시된 바와 같이, 다시점 화상 부호화 장치(700)는, 부호화부(701), 부호화부(702) 및 다중화부(703)를 갖는다.
부호화부(701)는, 베이스 뷰 화상을 부호화하여, 베이스 뷰 화상 부호화 스트림을 생성한다. 부호화부(702)는, 논베이스 뷰 화상을 부호화하여, 논베이스 뷰 화상 부호화 스트림을 생성한다. 다중화부(703)는, 부호화부(701)에서 생성된 베이스 뷰 화상 부호화 스트림과, 부호화부(702)에서 생성된 논베이스 뷰 화상 부호화 스트림을 다중화하여, 다시점 화상 부호화 스트림을 생성한다.
이 다시점 화상 부호화 장치(700)의 부호화부(701) 및 부호화부(702)에 대하여 화상 부호화 장치(10)(도 14)를 적용할 수 있다. 즉, 각 뷰에 대한 부호화에 있어서, 스케일링 리스트에 관한 부호량의 증대를 억제할 수 있어, 각 뷰의 화질 저감을 억제할 수 있다. 또한, 부호화부(701) 및 부호화부(702)는, 서로 동일한 플래그나 파라미터를 사용하여, 양자화나 역양자화 등의 처리를 행할 수 있으므로(즉, 플래그나 파라미터를 공유할 수 있으므로), 부호화 효율의 저감을 억제할 수 있다.
<다시점 화상 복호 장치>
도 48은, 상술한 다시점 화상 복호를 행하는 다시점 화상 복호 장치를 도시하는 도면이다. 도 48에 도시된 바와 같이, 다시점 화상 복호 장치(710)는, 역다중화부(711), 복호부(712) 및 복호부(713)를 갖는다.
역다중화부(711)는, 베이스 뷰 화상 부호화 스트림과 논베이스 뷰 화상 부호화 스트림이 다중화된 다시점 화상 부호화 스트림을 역다중화하여, 베이스 뷰 화상 부호화 스트림과, 논베이스 뷰 화상 부호화 스트림을 추출한다. 복호부(712)는, 역다중화부(711)에 의해 추출된 베이스 뷰 화상 부호화 스트림을 복호하여, 베이스 뷰 화상을 얻는다. 복호부(713)는, 역다중화부(711)에 의해 추출된 논베이스 뷰 화상 부호화 스트림을 복호하여, 논베이스 뷰 화상을 얻는다.
이 다시점 화상 복호 장치(710)의 복호부(712) 및 복호부(713)에 대하여 화상 복호 장치(300)(도 22)를 적용할 수 있다. 즉, 각 뷰에 대한 복호에 있어서, 스케일링 리스트에 관한 부호량의 증대를 억제할 수 있어, 각 뷰의 화질 저감을 억제할 수 있다. 또한, 복호부(712) 및 복호부(713)는, 서로 동일한 플래그나 파라미터를 사용하여, 양자화나 역양자화 등의 처리를 행할 수 있으므로(즉, 플래그나 파라미터를 공유할 수 있으므로), 부호화 효율의 저감을 억제할 수 있다.
<8. 제8 실시 형태>
<계층 화상 부호화·계층 화상 복호에 대한 적용>
상술한 일련의 처리는, 계층 화상 부호화·계층 화상 복호(스케일러블 부호화·스케일러블 복호)에 적용할 수 있다. 도 49는, 계층 화상 부호화 방식의 일례를 나타낸다.
계층 화상 부호화(스케일러블 부호화)는, 화상 데이터를, 소정의 파라미터에 대하여 스케일러빌리티(scalability) 기능을 갖도록, 화상을 복수 레이어화(계층화)하여, 레이어마다 부호화하는 것이다. 계층 화상 복호(스케일러블 복호)는, 그 계층 화상 부호화에 대응하는 복호이다.
도 49에 도시된 바와 같이, 화상의 계층화에서는, 스케일러빌리티 기능을 갖는 소정의 파라미터를 기준으로 해서 하나의 화상이 복수의 화상(레이어)으로 분할된다. 즉, 계층화된 화상(계층 화상)은, 그 소정의 파라미터의 값이 서로 상이한 복수의 계층(레이어)의 화상을 포함한다. 이 계층 화상의 복수의 레이어는, 다른 레이어의 화상을 이용하지 않고 자신의 레이어 화상만을 사용하여 부호화·복호를 행하는 베이스 레이어와, 다른 레이어의 화상을 이용하여 부호화·복호를 행하는 논베이스 레이어(인핸스먼트 레이어라고도 함)를 포함한다. 논베이스 레이어는, 베이스 레이어의 화상을 이용하도록 해도 되고, 다른 논베이스 레이어의 화상을 이용하도록 해도 된다.
일반적으로, 논베이스 레이어는, 용장성이 저감되도록, 자신의 화상과, 다른 레이어의 화상과의 차분 화상의 데이터(차분 데이터)에 의해 구성된다. 예를 들어, 하나의 화상을 베이스 레이어와 논베이스 레이어(인핸스먼트 레이어라고도 함)로 2 계층화했을 경우, 베이스 레이어의 데이터만으로 원래의 화상보다 저품질의 화상이 얻어지고, 베이스 레이어의 데이터와 논베이스 레이어의 데이터를 합성함으로써, 원래의 화상(즉 고품질의 화상)이 얻어진다.
이렇게 화상을 계층화함으로써, 상황에 따라서 다양한 품질의 화상을 용이하게 얻을 수 있다. 예를 들어 휴대 전화와 같은, 처리 능력이 낮은 단말기에 대해서는, 베이스 레이어(base layer)만의 화상 압축 정보를 전송하여, 공간 시간 해상도가 낮거나, 또는, 화질이 좋지 않은 동화상을 재생하고, 텔레비전이나 퍼스널 컴퓨터와 같은, 처리 능력이 높은 단말기에 대해서는, 베이스 레이어(base layer) 외에도, 인핸스먼트 레이어(enhancement layer)의 화상 압축 정보를 전송하여, 공간 시간 해상도가 높거나, 또는, 화질이 높은 동화상을 재생하는 것과 같이, 트랜스 코드 처리를 행하지 않고, 단말기나 네트워크의 능력에 따른 화상 압축 정보를, 서버로부터 송신하는 것이 가능하게 된다.
도 49의 예와 같은 계층 화상을 부호화·복호하는 경우, 각 레이어의 화상을 부호화·복호하는데, 이 각 레이어의 부호화·복호에 대하여 이상의 각 실시 형태에서 설명한 방법을 적용하도록 해도 된다. 이와 같이 함으로써, 각 레이어의 화질 저감을 억제할 수 있다.
또한, 각 레이어의 부호화·복호에 있어서, 이상의 각 실시 형태에서 설명한 방법에서 사용되는 플래그나 파라미터를 공유하도록 해도 된다. 이와 같이 함으로써, 부호화 효율의 저감을 억제할 수 있다.
보다 구체적으로는, 예를 들어 스케일링 리스트에 관한 정보(예를 들어, 파라미터나 플래그 등)를 각 레이어의 부호화·복호에서 공유하도록 해도 된다.
물론, 이것들 이외의 필요한 정보도, 각 레이어의 부호화·복호에서 공유하도록 해도 된다.
이러한 계층 화상의 예로서, 공간 해상도에 의해 계층화한 것(공간 해상도 스케일러빌리티라고도 함)이 있다(spatial scalability). 공간 해상도 스케일러빌리티를 갖는 계층 화상의 경우, 계층마다 화상의 해상도가 상이하다. 예를 들어, 공간적으로 가장 저해상도의 화상 계층이 베이스 레이어가 되고, 베이스 레이어보다 고해상도의 화상 계층이 논베이스 레이어(인핸스먼트 레이어)가 된다.
논베이스 레이어(인핸스먼트 레이어)의 화상 데이터는, 다른 계층으로부터 독립된 데이터로서, 베이스 레이어의 경우와 마찬가지로, 그 화상 데이터에 의해서만 그 계층의 해상도의 화상을 얻을 수 있도록 해도 되지만, 그 계층의 화상과 다른 계층(예를 들어 1개 아래의 계층)의 화상과의 차분 화상에 대응하는 데이터로 하는 것이 일반적이다. 이 경우, 베이스 레이어의 계층의 해상도의 화상은, 그 베이스 레이어의 화상 데이터에 의해서만 얻어지지만, 논베이스 레이어(인핸스먼트 레이어)의 계층의 해상도의 화상은, 그 계층의 화상 데이터와, 다른 계층(예를 들어 1개 아래의 계층)의 화상 데이터를 합성함으로써 얻어진다. 이와 같이 함으로써, 계층간의 화상 데이터의 용장성을 억제할 수 있다.
이러한 공간 해상도 스케일러빌리티를 갖는 계층 화상은, 계층마다 화상의 해상도가 상이하므로, 각 계층의 부호화·복호의 처리 단위의 해상도도 서로 상이하다. 따라서, 각 계층의 부호화·복호에서 스케일링 리스트(양자화 매트릭스)를 공유하는 경우, 스케일링 리스트(양자화 매트릭스)를 각 계층의 해상도비에 따라서 업 컨버트하도록 해도 된다.
예를 들어, 베이스 레이어의 화상의 해상도를 2K(예를 들어 1920x1080)로 하고, 논베이스 레이어(인핸스먼트 레이어)의 화상의 해상도를 4K(예를 들어, 3840x2160)로 한다. 이 경우, 예를 들어 베이스 레이어의 화상(2K 화상)의 16x16은, 논베이스 레이어의 화상(4K 화상)의 32x32에 상당한다. 스케일링 리스트(양자화 매트릭스)도 이러한 해상도비에 따라서 적절히 업 컨버트한다.
예를 들어, 베이스 레이어의 양자화·역양자화에 사용되는 4x4의 스케일링 리스트는, 논베이스 레이어의 양자화·역양자화에서 8x8으로 업 컨버트되어 사용된다. 마찬가지로, 베이스 레이어의 8x8의 스케일링 리스트는, 논베이스 레이어에서 16x16으로 업 컨버트된다. 마찬가지로, 베이스 레이어에서 16x16으로 업 컨버트되어 사용되는 스케일링 리스트는, 논베이스 레이어에서 32x32로 업 컨버트된다.
또한, 스케일러빌리티성을 갖게 하는 파라미터는, 공간 해상도에 한하지 않고, 예를 들어 시간 해상도가 있다(temporal scalability). 시간 해상도 스케일러빌리티를 갖는 계층 화상의 경우, 계층마다 화상의 프레임 레이트가 상이하다. 또한, 그 밖에도, 예를 들어 계층마다 화상 데이터의 비트 심도가 상이한 비트 심도 스케일러빌리티(bit-depth scalability)나, 계층마다 컴포넌트의 포맷이 상이한 크로마 스케일러빌리티(chroma scalability) 등이 있다.
또한, 그 밖에도, 예를 들어 계층마다 화상의 신호 잡음비(SNR(Signal to Noise ratio))가 상이한 SNR 스케일러빌리티(SNR scalability)가 있다.
화질 향상을 위해서는, 신호 잡음비가 낮은 화상일수록, 양자화 오차를 보다 작게 하는 것이 바람직하다. 그 때문에, SNR 스케일러빌리티의 경우, 각 계층의 양자화·역양자화에는, 신호 잡음비에 따른, 서로 다른 스케일링 리스트(공통이 아닌 스케일링 리스트)가 사용되도록 하는 것이 바람직하다. 그 때문에, 상술한 바와 같이 스케일링 리스트를 계층 간에서 공유하는 경우, 베이스 레이어의 스케일링 리스트의 행렬 요소에 관해서, 인핸스먼트 레이어의 행렬 요소를 조정하기 위한 오프셋값을 전송하도록 해도 된다. 보다 구체적으로는, 그 공통의 스케일링 리스트와, 실제로 사용되는 스케일링 리스트의 차분을 나타내는 정보를, 계층마다 전송하도록 해도 된다. 예를 들어, 각 계층의 시퀀스 파라미터 세트(SPS(Sequence Parameter Set))나 픽처 파라미터 세트(PPS(Picture Parameter Set))에 있어서, 그 차분을 나타내는 정보를 전송하도록 해도 된다. 이 차분을 나타내는 정보는 임의이다. 예를 들어, 양쪽 스케일링 리스트의 요소마다의 차분값을 요소로 하는 행렬이어도 되고, 차분을 나타내는 함수이어도 된다.
<계층 화상 부호화 장치>
도 50은, 상술한 계층 화상 부호화를 행하는 계층 화상 부호화 장치를 도시하는 도면이다. 도 50에 도시된 바와 같이, 계층 화상 부호화 장치(720)는, 부호화부(721), 부호화부(722) 및 다중화부(723)를 갖는다.
부호화부(721)는, 베이스 레이어 화상을 부호화하여, 베이스 레이어 화상 부호화 스트림을 생성한다. 부호화부(722)는, 논베이스 레이어 화상을 부호화하여, 논베이스 레이어 화상 부호화 스트림을 생성한다. 다중화부(723)는, 부호화부(721)에서 생성된 베이스 레이어 화상 부호화 스트림과, 부호화부(722)에서 생성된 논베이스 레이어 화상 부호화 스트림을 다중화하여, 계층 화상 부호화 스트림을 생성한다.
이 계층 화상 부호화 장치(720)의 부호화부(721) 및 부호화부(722)에 대하여 화상 부호화 장치(10)(도 14)를 적용할 수 있다. 즉, 각 레이어에 대한 부호화에 있어서, 스케일링 리스트에 관한 부호량의 증대를 억제할 수 있어, 각 레이어의 화질 저감을 억제할 수 있다. 또한, 부호화부(721) 및 부호화부(722)는, 서로 동일한 플래그나 파라미터를 사용하여, 양자화나 역양자화 등의 처리를 행할 수 있으므로(즉, 플래그나 파라미터를 공유할 수 있으므로), 부호화 효율의 저감을 억제할 수 있다.
<계층 화상 복호 장치>
도 51은, 상술한 계층 화상 복호를 행하는 계층 화상 복호 장치를 도시하는 도면이다. 도 51에 도시된 바와 같이, 계층 화상 복호 장치(730)는, 역다중화부(731), 복호부(732) 및 복호부(733)를 갖는다.
역다중화부(731)는, 베이스 레이어 화상 부호화 스트림과 논베이스 레이어 화상 부호화 스트림이 다중화된 계층 화상 부호화 스트림을 역다중화하여, 베이스 레이어 화상 부호화 스트림과, 논베이스 레이어 화상 부호화 스트림을 추출한다. 복호부(732)는, 역다중화부(731)에 의해 추출된 베이스 레이어 화상 부호화 스트림을 복호하여, 베이스 레이어 화상을 얻는다. 복호부(733)는, 역다중화부(731)에 의해 추출된 논베이스 레이어 화상 부호화 스트림을 복호하여, 논베이스 레이어 화상을 얻는다.
이 계층 화상 복호 장치(730)의 복호부(732) 및 복호부(733)에 대하여 화상 복호 장치(300)(도 22)를 적용할 수 있다. 즉, 각 레이어에 대한 복호에 있어서, 스케일링 리스트에 관한 부호량의 증대를 억제할 수 있어, 각 레이어의 화질 저감을 억제할 수 있다. 또한, 복호부(712) 및 복호부(713)는, 서로 동일한 플래그나 파라미터를 사용하여, 양자화나 역양자화 등의 처리를 행할 수 있으므로(즉, 플래그나 파라미터를 공유할 수 있으므로), 부호화 효율의 저감을 억제할 수 있다.
<9. 제9 실시 형태>
<컴퓨터>
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 이 경우, 예를 들어 도 52에 나타낸 바와 같은 컴퓨터로서 구성되도록 해도 된다.
도 52에서, 컴퓨터(800)의 CPU(Central Processing Unit)(801)는, ROM(Read Only Memory)(802)에 기억되어 있는 프로그램 또는 기억부(813)로부터 RAM(Random Access Memory)(803)에 로딩된 프로그램에 따라서 각종 처리를 실행한다. RAM(803)에는 또한, CPU(801)가 각종 처리를 실행함에 있어서 필요한 데이터 등도 적절히 기억된다.
CPU(801), ROM(802) 및 RAM(803)은, 버스(804)를 통해 서로 접속되어 있다. 이 버스(804)에는 또한, 입출력 인터페이스(810)도 접속되어 있다.
입출력 인터페이스(810)에는, 키보드, 마우스, 터치 패널 및 입력 단자 등을 포함하는 입력부(811), CRT(Cathode Ray Tube), LCD(Liquid Crystal Display) 및 OELD(Organic ElectroLuminescence Display) 등을 포함하는 디스플레이, 및 스피커 등의 임의의 출력 디바이스나 출력 단자 등을 포함하는 출력부(812), 하드 디스크나 플래시 메모리 등의 임의의 기억 매체나 그 기억 매체의 입출력을 제어하는 제어부 등에 의해 구성되는 기억부(813), 모뎀, LAN 인터페이스, USB(Universal Serial Bus), 및 Bluetooth(등록 상표) 등, 유선이나 무선의 임의의 통신 디바이스를 포함하는 통신부(814)가 접속되어 있다. 통신부(814)는 예를 들어 인터넷을 포함하는 네트워크를 통해 다른 통신 디바이스와의 통신 처리를 행한다.
입출력 인터페이스(810)에는 또한, 필요에 따라 드라이브(815)가 접속된다. 그 드라이브(815)에는, 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등의 리무버블 미디어(821)가 적절히 장착된다. 드라이브(815)는 예를 들어 CPU(801)의 제어에 따라, 자신에게 장착된 리무버블 미디어(821)로부터 컴퓨터 프로그램이나 데이터 등을 판독한다. 그 판독된 데이터나 컴퓨터 프로그램은, 예를 들어 RAM(803)에 공급된다. 또한, 리무버블 미디어(821)로부터 판독된 컴퓨터 프로그램은, 필요에 따라 기억부(813)에 인스톨된다.
상술한 일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 네트워크나 기록 매체로부터 인스톨된다.
이 기록 매체는, 예를 들어 도 52에 도시된 바와 같이, 장치 본체와는 별도로, 유저에게 프로그램을 배신(配信)하기 위해 배포되는, 프로그램이 기록되어 있는 자기 디스크(플렉시블 디스크를 포함함), 광 디스크(CD-ROM(Compact Disc-Read Only Memory), DVD(Digital Versatile Disc)를 포함함), 광자기 디스크(MD(Mini Disc)를 포함함), 또는 반도체 메모리 등을 포함하는 리무버블 미디어(821)에 의해 구성될 뿐만 아니라, 장치 본체에 미리 내장된 상태에서 유저에게 배신되는, 프로그램이 기록되어 있는 ROM(802)이나, 기억부(813)에 포함되는 하드 디스크 등으로 구성된다.
또한, 컴퓨터(800)가 실행하는 프로그램은, 본 명세서에서 설명하는 순서를 따라 시계열로 처리가 행하여지는 프로그램이어도 되고, 병렬로, 또는 호출이 행하여졌을 때 등의 필요한 타이밍에서 처리가 행하여지는 프로그램이어도 된다.
또한, 본 명세서에서, 기록 매체에 기록되는 프로그램을 기술하는 스텝은, 기재된 순서를 따라 시계열적으로 행하여지는 처리는 물론, 반드시 시계열적으로 처리되지 않아도, 병렬적 또는 개별로 실행되는 처리도 포함하는 것이다.
또한, 본 명세서에서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하며, 모든 구성 요소가 동일 하우징 중에 있는지 여부는 상관없다. 따라서, 별개의 하우징에 수납되어, 네트워크를 통해 접속되어 있는 복수의 장치 및 1개의 하우징 중에 복수의 모듈이 수납되어 있는 1개의 장치는, 모두 시스템이다.
또한, 이상에서, 1개의 장치(또는 처리부)로서 설명한 구성을 분할하여, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에서 복수의 장치(또는 처리부)로서 설명한 구성을 통합하여 1개의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 좋다. 또한, 시스템 전체로서의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함하도록 해도 된다. 즉, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것이 아니라, 본 기술의 요지를 일탈하지 않는 범위에서 다양한 변경이 가능하다.
이상, 첨부 도면을 참조하면서 본 발명의 적합한 실시 형태에 대하여 상세하게 설명했지만, 본 발명의 기술적 범위는 이와 같은 예에 한정되지 않는다. 본 발명의 기술분야에서의 통상의 지식을 갖는 사람이라면, 특허 청구 범위에 기재된 기술적 사상의 범주 내에서, 각종 변경예 또는 수정예에 상도할 수 있음은 명백하며, 이들에 대해서도, 당연히 본 발명의 기술적 범위에 속하는 것이라고 이해된다.
예를 들어, 본 기술은, 1개의 기능을, 네트워크를 통해 복수의 장치에서 분담, 공동으로 처리하는 클라우드 컴퓨팅의 구성을 취할 수 있다.
또한, 상술한 흐름도에서 설명한 각 스텝은, 1개의 장치에서 실행하는 것 외에, 복수의 장치에서 분담하여 실행할 수 있다.
또한, 1개의 스텝에 복수의 처리가 포함되는 경우에는, 그 1개의 스텝에 포함되는 복수의 처리는, 1개의 장치에서 실행하는 것 외에, 복수의 장치에서 분담하여 실행할 수 있다.
상술한 실시 형태에 따른 화상 부호화 장치(10)(도 14) 및 화상 복호 장치(300)(도 22)는, 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신 및 셀룰러 통신에 의한 단말기로의 배신 등에서의 송신기 또는 수신기, 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하는 기록 장치, 또는, 이들 기억 매체로부터 화상을 재생하는 재생 장치 등의 다양한 전자 기기에 응용될 수 있다. 이하, 4개의 응용예에 대하여 설명한다.
<10. 응용예>
<제1 응용예: 텔레비전 수상기>
도 53은, 상술한 실시 형태를 적용한 텔레비전 장치의 개략적인 구성의 일례를 나타내고 있다. 텔레비전 장치(900)는, 안테나(901), 튜너(902), 디멀티 플렉서(903), 디코더(904), 영상 신호 처리부(905), 표시부(906), 음성 신호 처리부(907), 스피커(908), 외부 인터페이스(909), 제어부(910), 유저 인터페이스(911) 및 버스(912)를 구비한다.
튜너(902)는, 안테나(901)를 통해 수신되는 방송 신호로부터 원하는 채널의 신호를 추출하고, 추출한 신호를 복조한다. 그리고, 튜너(902)는 복조에 의해 얻어진 부호화 비트 스트림을 디멀티플렉서(903)에 출력한다. 즉, 튜너(902)는, 화상이 부호화되어 있는 부호화 스트림을 수신하는, 텔레비전 장치(900)에서의 전송부로서의 역할을 한다.
디멀티플렉서(903)는, 부호화 비트 스트림으로부터 시청 대상인 프로그램의 영상 스트림 및 음성 스트림을 분리하고, 분리한 각 스트림을 디코더(904)에 출력한다. 또한, 디멀티플렉서(903)는, 부호화 비트 스트림으로부터 EPG(Electronic Program Guide) 등의 보조적인 데이터를 추출하고, 추출한 데이터를 제어부(910)에 공급한다. 또한, 디멀티플렉서(903)는, 부호화 비트 스트림이 스크램블되어 있는 경우에는, 디스크램블을 행해도 된다.
디코더(904)는, 디멀티플렉서(903)로부터 입력되는 영상 스트림 및 음성 스트림을 복호한다. 그리고, 디코더(904)는, 복호 처리에 의해 생성되는 영상 데이터를 영상 신호 처리부(905)에 출력한다. 또한, 디코더(904)는, 복호 처리에 의해 생성되는 음성 데이터를 음성 신호 처리부(907)에 출력한다.
영상 신호 처리부(905)는, 디코더(904)로부터 입력되는 영상 데이터를 재생하여, 표시부(906)에 영상을 표시시킨다. 또한, 영상 신호 처리부(905)는, 네트워크를 통해 공급되는 애플리케이션 화면을 표시부(906)에 표시시켜도 된다. 또한, 영상 신호 처리부(905)는, 영상 데이터에 대해서, 설정에 따라, 예를 들어 노이즈 제거 등의 추가적인 처리를 행해도 된다. 또한, 영상 신호 처리부(905)는, 예를 들어 메뉴, 버튼 또는 커서 등의 GUI(Graphical User Interface)의 화상을 생성하고, 생성한 화상을 출력 화상에 중첩해도 된다.
표시부(906)는, 영상 신호 처리부(905)로부터 공급되는 구동 신호에 의해 구동되어, 표시 디바이스(예를 들어, 액정 디스플레이, 플라즈마 디스플레이 또는 OELD(Organic ElectroLuminescence Display)(유기 EL 디스플레이) 등)의 영상면 위에 영상 또는 화상을 표시한다.
음성 신호 처리부(907)는, 디코더(904)로부터 입력되는 음성 데이터에 대하여 D/A 변환 및 증폭 등의 재생 처리를 행하여, 스피커(908)로부터 음성을 출력시킨다. 또한, 음성 신호 처리부(907)는, 음성 데이터에 대하여 노이즈 제거 등의 추가적인 처리를 행해도 된다.
외부 인터페이스(909)는, 텔레비전 장치(900)와 외부 기기 또는 네트워크를 접속하기 위한 인터페이스이다. 예를 들어, 외부 인터페이스(909)를 통해 수신되는 영상 스트림 또는 음성 스트림이, 디코더(904)에 의해 복호되어도 된다. 즉, 외부 인터페이스(909)도 또한, 화상이 부호화되어 있는 부호화 스트림을 수신하는, 텔레비전 장치(900)에서의 전송부로서의 역할을 한다.
제어부(910)는, CPU 등의 프로세서, 및 RAM 및 ROM 등의 메모리를 갖는다. 메모리는, CPU에 의해 실행되는 프로그램, 프로그램 데이터, EPG 데이터, 및 네트워크를 통해 취득되는 데이터 등을 기억한다. 메모리에 의해 기억되는 프로그램은, 예를 들어 텔레비전 장치(900)의 기동 시에 CPU에 의해 판독되어 실행된다. CPU는, 프로그램을 실행함으로써, 예를 들어 유저 인터페이스(911)로부터 입력되는 조작 신호에 따라, 텔레비전 장치(900)의 동작을 제어한다.
유저 인터페이스(911)는 제어부(910)와 접속된다. 유저 인터페이스(911)는, 예를 들어 유저가 텔레비전 장치(900)를 조작하기 위한 버튼 및 스위치, 및 원격 제어 신호의 수신부 등을 갖는다. 유저 인터페이스(911)는, 이들 구성 요소를 통해 유저에 의한 조작을 검출하여 조작 신호를 생성하고, 생성한 조작 신호를 제어부(910)에 출력한다.
버스(912)는 튜너(902), 디멀티플렉서(903), 디코더(904), 영상 신호 처리부(905), 음성 신호 처리부(907), 외부 인터페이스(909) 및 제어부(910)를 서로 접속한다.
이렇게 구성된 텔레비전 장치(900)에 있어서, 디코더(904)는 상술한 실시 형태에 따른 화상 복호 장치(300)(도 22)의 기능을 한다. 따라서, 텔레비전 장치(900)는 스케일링 리스트의 부호량의 증대를 억제할 수 있다.
<제2 응용예: 휴대 전화기>
도 54는, 상술한 실시 형태를 적용한 휴대 전화기의 개략적인 구성의 일례를 나타내고 있다. 휴대 전화기(920)는, 안테나(921), 통신부(922), 음성 코덱(923), 스피커(924), 마이크로폰(925), 카메라부(926), 화상 처리부(927), 다중 분리부(928), 기록 재생부(929), 표시부(930), 제어부(931), 조작부(932) 및 버스(933)를 구비한다.
안테나(921)는 통신부(922)에 접속된다. 스피커(924) 및 마이크로폰(925)은, 음성 코덱(923)에 접속된다. 조작부(932)는 제어부(931)에 접속된다. 버스(933)는 통신부(922), 음성 코덱(923), 카메라부(926), 화상 처리부(927), 다중 분리부(928), 기록 재생부(929), 표시부(930) 및 제어부(931)를 서로 접속한다.
휴대 전화기(920)는 음성 통화 모드, 데이터 통신 모드, 촬영 모드 및 텔레비전 전화 모드를 포함하는 다양한 동작 모드에서, 음성 신호의 송수신, 전자 메일 또는 화상 데이터의 송수신, 화상의 촬상 및 데이터의 기록 등의 동작을 행한다.
음성 통화 모드에서, 마이크로폰(925)에 의해 생성되는 아날로그 음성 신호는, 음성 코덱(923)에 공급된다. 음성 코덱(923)은, 아날로그 음성 신호를 음성 데이터로 변환하고, 변환된 음성 데이터를 A/D 변환해서 압축한다. 그리고, 음성 코덱(923)은, 압축 후의 음성 데이터를 통신부(922)에 출력한다. 통신부(922)는 음성 데이터를 부호화 및 변조하여, 송신 신호를 생성한다. 그리고, 통신부(922)는 생성한 송신 신호를, 안테나(921)를 통해 기지국(도시하지 않음)에 송신한다. 또한, 통신부(922)는, 안테나(921)를 통해 수신되는 무선 신호를 증폭하고 및 주파수 변환하여, 수신 신호를 취득한다. 그리고, 통신부(922)는, 수신 신호를 복조 및 복호하여 음성 데이터를 생성하고, 생성한 음성 데이터를 음성 코덱(923)에 출력한다. 음성 코덱(923)은, 음성 데이터를 신장하고 및 D/A 변환하여, 아날로그 음성 신호를 생성한다. 그리고, 음성 코덱(923)은, 생성한 음성 신호를 스피커(924)에 공급하여 음성을 출력시킨다.
또한, 데이터 통신 모드에서, 예를 들어 제어부(931)는 조작부(932)를 통해 유저에 의한 조작에 따라, 전자 메일을 구성하는 문자 데이터를 생성한다. 또한, 제어부(931)는 문자를 표시부(930)에 표시시킨다. 또한, 제어부(931)는, 조작부(932)를 통한 유저로부터의 송신 지시에 따라서 전자 메일 데이터를 생성하고, 생성한 전자 메일 데이터를 통신부(922)에 출력한다. 통신부(922)는, 전자 메일 데이터를 부호화 및 변조하여, 송신 신호를 생성한다. 그리고, 통신부(922)는, 생성한 송신 신호를, 안테나(921)를 통해 기지국(도시하지 않음)에 송신한다. 또한, 통신부(922)는, 안테나(921)를 통해 수신되는 무선 신호를 증폭하고 및 주파수 변환하여, 수신 신호를 취득한다. 그리고, 통신부(922)는, 수신 신호를 복조 및 복호하여 전자 메일 데이터를 복원하고, 복원한 전자 메일 데이터를 제어부(931)에 출력한다. 제어부(931)는 표시부(930)에 전자 메일의 내용을 표시시킴과 함께, 전자 메일 데이터를 기록 재생부(929)의 기억 매체에 기억시킨다.
기록 재생부(929)는, 판독 기입 가능한 임의의 기억 매체를 갖는다. 예를 들어, 기억 매체는, RAM 또는 플래시 메모리 등의 내장형의 기억 매체이어도 되고, 하드 디스크, 자기 디스크, 광자기 디스크, 광 디스크, USB 메모리, 또는 메모리 카드 등의 외부 장착형의 기억 매체이어도 된다.
또한, 촬영 모드에서, 예를 들어 카메라부(926)는, 피사체를 촬상하여 화상 데이터를 생성하고, 생성한 화상 데이터를 화상 처리부(927)에 출력한다. 화상 처리부(927)는, 카메라부(926)로부터 입력되는 화상 데이터를 부호화하고, 부호화 스트림을 기록 재생부(929)의 기억 매체에 기억시킨다.
또한, 텔레비전 전화 모드에서, 예를 들어 다중 분리부(928)는, 화상 처리부(927)에 의해 부호화된 영상 스트림과, 음성 코덱(923)으로부터 입력되는 음성 스트림을 다중화하여, 다중화한 스트림을 통신부(922)에 출력한다. 통신부(922)는, 스트림을 부호화 및 변조하여, 송신 신호를 생성한다. 그리고, 통신부(922)는, 생성한 송신 신호를, 안테나(921)를 통해 기지국(도시하지 않음)에 송신한다. 또한, 통신부(922)는, 안테나(921)를 통해 수신되는 무선 신호를 증폭하고 및 주파수 변환하여, 수신 신호를 취득한다. 이들 송신 신호 및 수신 신호에는, 부호화 비트 스트림이 포함될 수 있다. 그리고, 통신부(922)는, 수신 신호를 복조 및 복호하여 스트림을 복원하고, 복원한 스트림을 다중 분리부(928)에 출력한다. 다중 분리부(928)는, 입력되는 스트림으로부터 영상 스트림 및 음성 스트림을 분리하고, 영상 스트림을 화상 처리부(927), 음성 스트림을 음성 코덱(923)에 출력한다. 화상 처리부(927)는, 영상 스트림을 복호하여, 영상 데이터를 생성한다. 영상 데이터는, 표시부(930)에 공급되어, 표시부(930)에 의해 일련의 화상이 표시된다. 음성 코덱(923)은, 음성 스트림을 신장하고 및 D/A 변환하여, 아날로그 음성 신호를 생성한다. 그리고, 음성 코덱(923)은, 생성한 음성 신호를 스피커(924)에 공급하여 음성을 출력시킨다.
이렇게 구성된 휴대 전화기(920)에 있어서, 화상 처리부(927)는, 상술한 실시 형태에 따른 화상 부호화 장치(10)(도 14)의 기능 및 화상 복호 장치(300)(도 22)의 기능을 한다. 따라서, 휴대 전화기(920)는, 스케일링 리스트의 부호량의 증대를 억제할 수 있다.
또한, 이상에서는 휴대 전화기(920)로서 설명했지만, 예를 들어 PDA(Personal Digital Assistants), 스마트폰, UMPC(Ultra Mobile Personal Computer), 넷북, 노트북형 퍼스널 컴퓨터 등, 이 휴대 전화기(920)와 마찬가지의 촬상 기능이나 통신 기능을 갖는 장치라면, 어떤 장치이어도 휴대 전화기(920)의 경우와 마찬가지로, 본 기술을 적용한 화상 부호화 장치 및 화상 복호 장치를 적용할 수 있다.
<제3 응용예: 기록 재생 장치>
도 55는, 상술한 실시 형태를 적용한 기록 재생 장치의 개략적인 구성의 일례를 나타내고 있다. 기록 재생 장치(940)는, 예를 들어 수신한 방송 프로그램의 음성 데이터 및 영상 데이터를 부호화하여 기록 매체에 기록한다. 또한, 기록 재생 장치(940)는, 예를 들어 다른 장치로부터 취득되는 음성 데이터 및 영상 데이터를 부호화하여 기록 매체에 기록해도 된다. 또한, 기록 재생 장치(940)는, 예를 들어 유저의 지시에 따라, 기록 매체에 기록되어 있는 데이터를 모니터 및 스피커 상에서 재생한다. 이때, 기록 재생 장치(940)는, 음성 데이터 및 영상 데이터를 복호한다.
기록 재생 장치(940)는, 튜너(941), 외부 인터페이스(942), 인코더(943), HDD(Hard Disk Drive)(944), 디스크 드라이브(945), 셀렉터(946), 디코더(947), OSD(On-Screen Display)(948), 제어부(949) 및 유저 인터페이스(950)를 구비한다.
튜너(941)는, 안테나(도시하지 않음)를 통해 수신되는 방송 신호로부터 원하는 채널의 신호를 추출하고, 추출한 신호를 복조한다. 그리고, 튜너(941)는 복조에 의해 얻어진 부호화 비트 스트림을 셀렉터(946)에 출력한다. 즉, 튜너(941)는, 기록 재생 장치(940)에서의 전송부로서의 역할을 한다.
외부 인터페이스(942)는, 기록 재생 장치(940)와 외부 기기 또는 네트워크를 접속하기 위한 인터페이스이다. 외부 인터페이스(942)는, 예를 들어 IEEE1394 인터페이스, 네트워크 인터페이스, USB 인터페이스, 또는 플래시 메모리 인터페이스 등이어도 된다. 예를 들어, 외부 인터페이스(942)를 통해 수신되는 영상 데이터 및 음성 데이터는, 인코더(943)에 입력된다. 즉, 외부 인터페이스(942)는 기록 재생 장치(940)에서의 전송부로서의 역할을 한다.
인코더(943)는, 외부 인터페이스(942)로부터 입력되는 영상 데이터 및 음성 데이터가 부호화되어 있지 않은 경우에, 영상 데이터 및 음성 데이터를 부호화한다. 그리고, 인코더(943)는 부호화 비트 스트림을 셀렉터(946)에 출력한다.
HDD(944)는, 영상 및 음성 등의 콘텐츠 데이터가 압축된 부호화 비트 스트림, 각종 프로그램 및 그 밖의 데이터를 내부의 하드 디스크에 기록한다. 또한, HDD(944)는, 영상 및 음성의 재생 시에, 이들 데이터를 하드 디스크로부터 판독한다.
디스크 드라이브(945)는, 장착되어 있는 기록 매체에 대한 데이터의 기록 및 판독을 행한다. 디스크 드라이브(945)에 장착되는 기록 매체는, 예를 들어 DVD 디스크(DVD-Video, DVD-RAM, DVD-R, DVD-RW, DVD+R, DVD+RW 등) 또는 Blu-ray(등록 상표) 디스크 등이어도 된다.
셀렉터(946)는, 영상 및 음성의 기록 시에는, 튜너(941) 또는 인코더(943)로부터 입력되는 부호화 비트 스트림을 선택하고, 선택한 부호화 비트 스트림을 HDD(944) 또는 디스크 드라이브(945)에 출력한다. 또한, 셀렉터(946)는 영상 및 음성의 재생 시에는, HDD(944) 또는 디스크 드라이브(945)로부터 입력되는 부호화 비트 스트림을 디코더(947)에 출력한다.
디코더(947)는 부호화 비트 스트림을 복호하여, 영상 데이터 및 음성 데이터를 생성한다. 그리고, 디코더(947)는 생성한 영상 데이터를 OSD(948)에 출력한다. 또한, 디코더(904)는 생성한 음성 데이터를 외부의 스피커에 출력한다.
OSD(948)는, 디코더(947)로부터 입력되는 영상 데이터를 재생하여, 영상을 표시한다. 또한, OSD(948)는, 표시하는 영상에, 예를 들어 메뉴, 버튼 또는 커서 등의 GUI의 화상을 중첩해도 된다.
제어부(949)는, CPU 등의 프로세서, 및 RAM 및 ROM 등의 메모리를 갖는다. 메모리는, CPU에 의해 실행되는 프로그램 및 프로그램 데이터 등을 기억한다. 메모리에 의해 기억되는 프로그램은, 예를 들어 기록 재생 장치(940)의 기동 시에 CPU에 의해 판독되어 실행된다. CPU는, 프로그램을 실행함으로써, 예를 들어 유저 인터페이스(950)로부터 입력되는 조작 신호에 따라, 기록 재생 장치(940)의 동작을 제어한다.
유저 인터페이스(950)는 제어부(949)와 접속된다. 유저 인터페이스(950)는, 예를 들어 유저가 기록 재생 장치(940)를 조작하기 위한 버튼 및 스위치, 및 원격제어 신호의 수신부 등을 갖는다. 유저 인터페이스(950)는 이들 구성 요소를 통해 유저에 의한 조작을 검출하여 조작 신호를 생성하고, 생성한 조작 신호를 제어부(949)에 출력한다.
이렇게 구성된 기록 재생 장치(940)에 있어서, 인코더(943)는 상술한 실시 형태에 따른 화상 부호화 장치(10)(도 14)의 기능을 한다. 또한, 디코더(947)는 상술한 실시 형태에 따른 화상 복호 장치(300)(도 22)의 기능을 한다. 따라서, 기록 재생 장치(940)는 스케일링 리스트의 부호량의 증대를 억제할 수 있다.
<제4 응용예: 촬상 장치>
도 56은, 상술한 실시 형태를 적용한 촬상 장치의 개략적인 구성의 일례를 나타내고 있다. 촬상 장치(960)는, 피사체를 촬상하여 화상 데이터를 생성하고, 화상 데이터를 부호화하여 기록 매체에 기록한다.
촬상 장치(960)는, 광학 블록(961), 촬상부(962), 신호 처리부(963), 화상 처리부(964), 표시부(965), 외부 인터페이스(966), 메모리(967), 미디어 드라이브(968), OSD(969), 제어부(970), 유저 인터페이스(971) 및 버스(972)를 구비한다.
광학 블록(961)은 촬상부(962)에 접속된다. 촬상부(962)는 신호 처리부(963)에 접속된다. 표시부(965)는 화상 처리부(964)에 접속된다. 유저 인터페이스(971)는 제어부(970)에 접속된다. 버스(972)는 화상 처리부(964), 외부 인터페이스(966), 메모리(967), 미디어 드라이브(968), OSD(969) 및 제어부(970)를 서로 접속한다.
광학 블록(961)은, 포커스 렌즈 및 조리개 기구 등을 갖는다. 광학 블록(961)은, 피사체의 광학상을 촬상부(962)의 촬상면에 결상시킨다. 촬상부(962)는 CCD 또는 CMOS 등의 이미지 센서를 갖고, 촬상면에 결상한 광학상을 광전 변환에 의해 전기 신호로서의 화상 신호로 변환한다. 그리고, 촬상부(962)는, 화상 신호를 신호 처리부(963)에 출력한다.
신호 처리부(963)는 촬상부(962)로부터 입력되는 화상 신호에 대하여 니 보정, 감마 보정, 색 보정 등의 다양한 카메라 신호 처리를 행한다. 신호 처리부(963)는, 카메라 신호 처리 후의 화상 데이터를 화상 처리부(964)에 출력한다.
화상 처리부(964)는, 신호 처리부(963)로부터 입력되는 화상 데이터를 부호화하여, 부호화 데이터를 생성한다. 그리고, 화상 처리부(964)는, 생성한 부호화 데이터를 외부 인터페이스(966) 또는 미디어 드라이브(968)에 출력한다. 또한, 화상 처리부(964)는, 외부 인터페이스(966) 또는 미디어 드라이브(968)로부터 입력되는 부호화 데이터를 복호하여, 화상 데이터를 생성한다. 그리고, 화상 처리부(964)는, 생성한 화상 데이터를 표시부(965)에 출력한다. 또한, 화상 처리부(964)는, 신호 처리부(963)로부터 입력되는 화상 데이터를 표시부(965)에 출력하여 화상을 표시시켜도 된다. 또한, 화상 처리부(964)는, OSD(969)로부터 취득되는 표시용 데이터를, 표시부(965)에 출력하는 화상에 중첩해도 된다.
OSD(969)는, 예를 들어 메뉴, 버튼 또는 커서 등의 GUI의 화상을 생성하고, 생성한 화상을 화상 처리부(964)에 출력한다.
외부 인터페이스(966)는, 예를 들어 USB 입출력 단자로서 구성된다. 외부 인터페이스(966)는, 예를 들어 화상의 인쇄 시에, 촬상 장치(960)과 프린터를 접속한다. 또한, 외부 인터페이스(966)에는, 필요에 따라 드라이브가 접속된다. 드라이브에는, 예를 들어 자기 디스크 또는 광 디스크 등의 리무버블 미디어가 장착되어, 리무버블 미디어로부터 판독되는 프로그램이, 촬상 장치(960)에 인스톨될 수 있다. 또한, 외부 인터페이스(966)는, LAN 또는 인터넷 등의 네트워크에 접속되는 네트워크 인터페이스로서 구성되어도 된다. 즉, 외부 인터페이스(966)는 촬상 장치(960)에서의 전송부로서의 역할을 한다.
미디어 드라이브(968)에 장착되는 기록 매체는, 예를 들어 자기 디스크, 광자기 디스크, 광 디스크, 또는 반도체 메모리 등의, 판독 기입 가능한 임의의 리무버블 미디어이면 된다. 또한, 미디어 드라이브(968)에 기록 매체가 고정적으로 장착되어, 예를 들어 내장형 하드디스크 드라이브 또는 SSD(Solid State Drive)와 같은 비가반성의 기억부가 구성되어도 된다.
제어부(970)는 CPU 등의 프로세서, 및 RAM 및 ROM 등의 메모리를 갖는다. 메모리는, CPU에 의해 실행되는 프로그램 및 프로그램 데이터 등을 기억한다. 메모리에 의해 기억되는 프로그램은, 예를 들어 촬상 장치(960)의 기동 시에 CPU에 의해 판독되어 실행된다. CPU는, 프로그램을 실행함으로써, 예를 들어 유저 인터페이스(971)로부터 입력되는 조작 신호에 따라, 촬상 장치(960)의 동작을 제어한다.
유저 인터페이스(971)는 제어부(970)와 접속된다. 유저 인터페이스(971)는, 예를 들어 유저가 촬상 장치(960)를 조작하기 위한 버튼 및 스위치 등을 갖는다. 유저 인터페이스(971)는 이들 구성 요소를 통해 유저에 의한 조작을 검출하여 조작 신호를 생성하고, 생성한 조작 신호를 제어부(970)에 출력한다.
이렇게 구성된 촬상 장치(960)에 있어서, 화상 처리부(964)는 상술한 실시 형태에 따른 화상 부호화 장치(10)(도 14)의 기능 및 화상 복호 장치(300)(도 22)의 기능을 한다. 따라서, 촬상 장치(960)는, 스케일링 리스트의 부호량의 증대를 억제할 수 있다.
<7. 스케일러블 부호화의 응용예>
<제1 시스템>
이어서, 스케일러블 부호화(계층(화상) 부호화)된 스케일러블 부호화 데이터의 구체적인 이용예에 대하여 설명한다. 스케일러블 부호화는, 예를 들어 도 57에 나타내는 예와 같이, 전송하는 데이터의 선택을 위해 이용된다.
도 57에 나타내는 데이터 전송 시스템(1000)에 있어서, 배신 서버(1002)는, 스케일러블 부호화 데이터 기억부(1001)에 기억되어 있는 스케일러블 부호화 데이터를 판독하고, 네트워크(1003)를 통해, 퍼스널 컴퓨터(1004), AV 기기(1005), 태블릿 디바이스(1006) 및 휴대 전화기(1007) 등의 단말 장치에 배신한다.
그때, 배신 서버(1002)는, 단말 장치의 능력이나 통신 환경 등에 따라, 적절한 품질의 부호화 데이터를 선택하여 전송한다. 배신 서버(1002)가 불필요하게 고품질의 데이터를 전송해도, 단말 장치에서 고화질의 화상을 얻을 수 있다고는 할 수 없으며, 지연이나 오버플로우의 발생 요인이 될 우려가 있다. 또한, 불필요하게 통신 대역을 점유하거나, 단말 장치의 부하를 불필요하게 증대시키거나 해버릴 우려도 있다. 반대로, 배신 서버(1002)가 불필요하게 저품질의 데이터를 전송해도, 단말 장치에서 충분한 화질의 화상을 얻을 수 없을 우려가 있다. 그 때문에, 배신 서버(1002)는, 스케일러블 부호화 데이터 기억부(1001)에 기억되어 있는 스케일러블 부호화 데이터를, 적절히, 단말 장치의 능력이나 통신 환경 등에 대하여 적절한 품질의 부호화 데이터로서 판독하고 전송한다.
예를 들어, 스케일러블 부호화 데이터 기억부(1001)는, 스케일러블하게 부호화된 스케일러블 부호화 데이터(BL+EL)(1011)를 기억한다고 하자. 이 스케일러블 부호화 데이터(BL+EL)(1011)는, 베이스 레이어와 인핸스먼트 레이어의 양쪽을 포함하는 부호화 데이터이며, 복호함으로써, 베이스 레이어의 화상 및 인핸스먼트 레이어의 화상 양쪽을 얻을 수 있는 데이터이다.
배신 서버(1002)는, 데이터를 전송하는 단말 장치의 능력이나 통신 환경 등에 따라, 적절한 레이어를 선택하고, 그 레이어의 데이터를 판독한다. 예를 들어, 배신 서버(1002)는, 처리 능력이 높은 퍼스널 컴퓨터(1004)나 태블릿 디바이스(1006)에 대해서는, 고품질의 스케일러블 부호화 데이터(BL+EL)(1011)를 스케일러블 부호화 데이터 기억부(1001)로부터 판독하여, 그대로 전송한다. 이에 반해, 예를 들어 배신 서버(1002)는, 처리 능력이 낮은 AV 기기(1005)나 휴대 전화기(1007)에 대해서는, 스케일러블 부호화 데이터(BL+EL)(1011)로부터 베이스 레이어의 데이터를 추출하여, 스케일러블 부호화 데이터(BL+EL)(1011)와 동일한 콘텐츠의 데이터이지만, 스케일러블 부호화 데이터(BL+EL)(1011)보다 저품질의 스케일러블 부호화 데이터(BL)(1012)로서 전송한다.
이렇게 스케일러블 부호화 데이터를 사용함으로써, 데이터량을 용이하게 조정할 수 있으므로, 지연이나 오버플로우의 발생을 억제하거나, 단말 장치나 통신 매체의 부하의 불필요한 증대를 억제하거나 할 수 있다. 또한, 스케일러블 부호화 데이터(BL+EL)(1011)는, 레이어 간의 용장성이 저감되어 있으므로, 각 레이어의 부호화 데이터를 개별의 데이터로 하는 경우보다 그 데이터량을 저감시킬 수 있다. 따라서, 스케일러블 부호화 데이터 기억부(1001)의 기억 영역을 보다 효율적으로 사용할 수 있다.
또한, 퍼스널 컴퓨터(1004) 내지 휴대 전화기(1007)와 같이, 단말 장치에는 다양한 장치를 적용할 수 있으므로, 단말 장치의 하드웨어 성능은, 장치에 따라 상이하다. 또한, 단말 장치가 실행하는 애플리케이션도 다양하므로, 그 소프트웨어의 능력도 다양하다. 또한, 통신 매체가 되는 네트워크(1003)도, 예를 들어 인터넷이나 LAN(Local Area Network) 등, 유선 또는 무선, 또는 그 양쪽을 포함하는 모든 통신 회선망을 적용할 수 있어, 그 데이터 전송 능력은 다양하다. 또한, 다른 통신 등에 의해서도 변화할 우려가 있다.
따라서, 배신 서버(1002)는, 데이터 전송을 개시하기 전에, 데이터의 전송처가 되는 단말기 장치와 통신을 행하여, 단말 장치의 하드웨어 성능이나, 단말 장치가 실행하는 애플리케이션(소프트웨어)의 성능 등과 같은 단말 장치의 능력에 관한 정보, 및 네트워크(1003)의 이용 가능 대역폭 등의 통신 환경에 관한 정보를 얻도록 해도 된다. 그리고, 배신 서버(1002)가, 여기에서 얻은 정보를 기초로, 적절한 레이어를 선택하도록 해도 된다.
또한, 레이어의 추출은, 단말 장치에서 행하도록 해도 된다. 예를 들어, 퍼스널 컴퓨터(1004)가, 전송된 스케일러블 부호화 데이터(BL+EL)(1011)를 복호하여, 베이스 레이어의 화상을 표시해도 되고, 인핸스먼트 레이어의 화상을 표시해도 된다. 또한, 예를 들어 퍼스널 컴퓨터(1004)가, 전송된 스케일러블 부호화 데이터(BL+EL)(1011)로부터, 베이스 레이어의 스케일러블 부호화 데이터(BL)(1012)를 추출하여 기억하거나, 다른 장치에 전송하거나, 복호하여 베이스 레이어의 화상을 표시하거나 하도록 해도 된다.
물론, 스케일러블 부호화 데이터 기억부(1001), 배신 서버(1002), 네트워크(1003) 및 단말 장치의 수는 모두 임의이다. 또한, 이상에서는, 배신 서버(1002)가 데이터를 단말 장치에 전송하는 예에 대하여 설명했지만, 이용예는 이것에 한정되지 않는다. 데이터 전송 시스템(1000)은, 스케일러블 부호화된 부호화 데이터를 단말 장치에 전송할 때, 단말 장치의 능력이나 통신 환경 등에 따라, 적절한 레이어를 선택하여 전송하는 시스템이라면, 임의의 시스템에 적용할 수 있다.
그리고, 이상과 같은 도 57과 같은 데이터 전송 시스템(1000)에서도, 도 49 내지 도 51을 참조하여 상술한 계층 부호화·계층 복호에 대한 적용과 마찬가지로 본 기술을 적용함으로써, 도 49 내지 도 51을 참조하여 상술한 효과와 마찬가지의 효과를 얻을 수 있다.
<제2 시스템>
또한, 스케일러블 부호화는, 예를 들어 도 58에 나타내는 예와 같이, 복수의 통신 매체를 통해 전송을 위해 이용된다.
도 58에 나타내는 데이터 전송 시스템(1100)에 있어서, 방송국(1101)은, 지상파 방송(1111)에 의해, 베이스 레이어의 스케일러블 부호화 데이터(BL)(1121)를 전송한다. 또한, 방송국(1101)은, 유선 또는 무선 또는 그 양쪽의 통신망을 포함하는 임의의 네트워크(1112)를 통해, 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(1122)를 전송한다(예를 들어 패킷화하여 전송함).
단말 장치(1102)는, 방송국(1101)이 방송하는 지상파 방송(1111)의 수신 기능을 갖고, 이 지상파 방송(1111)을 통해 전송되는 베이스 레이어의 스케일러블 부호화 데이터(BL)(1121)를 수취한다. 또한, 단말 장치(1102)는, 네트워크(1112)를 통한 통신을 행하는 통신 기능을 더 갖고, 이 네트워크(1112)를 통해 전송되는 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(1122)를 수취한다.
단말 장치(1102)는, 예를 들어 유저 지시 등에 따라, 지상파 방송(1111)을 통해 취득한 베이스 레이어의 스케일러블 부호화 데이터(BL)(1121)를, 복호하여 베이스 레이어의 화상을 얻거나, 기억하거나, 다른 장치에 전송하거나 한다.
또한, 단말 장치(1102)는, 예를 들어 유저 지시 등에 따라, 지상파 방송(1111)을 통해 취득한 베이스 레이어의 스케일러블 부호화 데이터(BL)(1121)와, 네트워크(1112)를 통해 취득한 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(1122)를 합성하여, 스케일러블 부호화 데이터(BL+EL)를 얻거나, 그것을 복호하여 인핸스먼트 레이어의 화상을 얻거나, 기억하거나, 다른 장치에 전송하거나 한다.
이상과 같이, 스케일러블 부호화 데이터는, 예를 들어 레이어마다 상이한 통신 매체를 통해 전송시킬 수 있다. 따라서, 부하를 분산시킬 수 있고, 지연이나 오버플로우의 발생을 억제할 수 있다.
또한, 상황에 따라, 전송에 사용하는 통신 매체를, 레이어마다 선택할 수 있도록 해도 된다. 예를 들어, 데이터량이 비교적 많은 베이스 레이어의 스케일러블 부호화 데이터(BL)(1121)를, 대역폭이 넓은 통신 매체를 통해 전송시키고, 데이터량이 비교적 적은 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(1122)를, 대역폭이 좁은 통신 매체를 통해 전송시키도록 해도 된다. 또한, 예를 들어 인핸스먼트 레이어의 스케일러블 부호화 데이터(EL)(1122)를 전송하는 통신 매체를, 네트워크(1112)로 할지, 지상파 방송(1111)으로 할지를, 네트워크(1112)의 이용 가능 대역폭에 따라서 전환하도록 해도 된다. 물론, 임의의 레이어의 데이터에 대하여 마찬가지이다.
이렇게 제어함으로써, 데이터 전송에서의 부하의 증대를 보다 억제할 수 있다.
물론, 레이어 수는 임의이며, 전송에 이용하는 통신 매체의 수도 임의이다. 또한, 데이터 배신처가 되는 단말 장치(1102)의 수도 임의이다. 또한, 이상에서는, 방송국(1101)으로부터의 방송을 예로 들어 설명했지만, 이용예는 이것에 한정되지 않는다. 데이터 전송 시스템(1100)은, 스케일러블 부호화된 부호화 데이터를, 레이어를 단위로 해서 복수로 분할하여, 복수의 회선을 통해 전송하는 시스템이라면, 임의의 시스템에 적용할 수 있다.
그리고, 이상과 같은 도 58과 같은 데이터 전송 시스템(1100)에서도, 도 49 내지 도 51을 참조하여 상술한 계층 부호화·계층 복호에 대한 적용과 마찬가지로 본 기술을 적용함으로써, 도 49 내지 도 51을 참조하여 상술한 효과와 마찬가지의 효과를 얻을 수 있다.
<제3 시스템>
또한, 스케일러블 부호화는, 예를 들어 도 59에 나타내는 예와 같이, 부호화 데이터의 기억에 이용된다.
도 59에 나타내는 촬상 시스템(1200)에 있어서, 촬상 장치(1201)는, 피사체(1211)를 촬상하여 얻어진 화상 데이터를 스케일러블 부호화하고, 스케일러블 부호화 데이터(BL+EL)(1221)로서, 스케일러블 부호화 데이터 기억 장치(1202)에 공급한다.
스케일러블 부호화 데이터 기억 장치(1202)는, 촬상 장치(1201)로부터 공급되는 스케일러블 부호화 데이터(BL+EL)(1221)를, 상황에 따른 품질로 기억한다. 예를 들어, 통상시의 경우, 스케일러블 부호화 데이터 기억 장치(1202)는, 스케일러블 부호화 데이터(BL+EL)(1221)로부터 베이스 레이어의 데이터를 추출하여, 저품질로 데이터량이 적은 베이스 레이어의 스케일러블 부호화 데이터(BL)(1222)로서 기억한다. 이에 반해, 예를 들어 주목시의 경우, 스케일러블 부호화 데이터 기억 장치(1202)는, 고품질로 데이터량이 많은 스케일러블 부호화 데이터(BL+EL)(1221) 그대로 기억한다.
이와 같이 함으로써, 스케일러블 부호화 데이터 기억 장치(1202)는, 필요한 경우에만, 화상을 고화질로 보존할 수 있으므로, 화질 열화에 의한 화상의 가치의 저감을 억제하면서, 데이터량의 증대를 억제할 수 있어, 기억 영역의 이용 효율을 향상시킬 수 있다.
예를 들어, 촬상 장치(1201)가 감시 카메라라고 하자. 촬상 화상에 감시 대상(예를 들어 침입자)이 찍히지 않는 경우(통상시의 경우), 촬상 화상의 내용은 중요하지 않을 가능성이 높으므로, 데이터량의 저감이 우선되어, 그 화상 데이터(스케일러블 부호화 데이터)는 저품질로 기억된다. 이에 반해, 촬상 화상에 감시 대상이 피사체(1211)로서 찍혀 있는 경우(주목시의 경우), 그 촬상 화상의 내용은 중요할 가능성이 높으므로, 화질이 우선되어, 그 화상 데이터(스케일러블 부호화 데이터)는 고품질로 기억된다.
또한, 통상시인지 주목시인지는, 예를 들어 스케일러블 부호화 데이터 기억 장치(1202)가 화상을 해석함으로써 판정해도 된다. 또한, 촬상 장치(1201)가 판정하고, 그 판정 결과를 스케일러블 부호화 데이터 기억 장치(1202)에 전송하도록 해도 된다.
또한, 통상시인지 주목시 인지의 판정 기준은 임의이며, 판정 기준으로 하는 화상의 내용은 임의이다. 물론, 화상의 내용 이외의 조건을 판정 기준으로 할 수도 있다. 예를 들어, 수록한 음성의 크기나 파형 등에 따라서 전환하도록 해도 되고, 소정의 시일마다 전환하도록 해도 되고, 유저 지시 등의 외부로부터의 지시에 의해 전환하도록 해도 된다.
또한, 이상에서는, 통상시와 주목시의 2개의 상태를 전환하는 예를 설명했지만, 상태의 수는 임의이어서, 예를 들어 통상시, 약간 주목시, 주목시, 매우 주목시 등과 같이, 3개 이상의 상태를 전환하도록 해도 된다. 단, 이 전환하는 상태의 상한 수는, 스케일러블 부호화 데이터의 레이어 수에 의존한다.
또한, 촬상 장치(1201)가, 스케일러블 부호화의 레이어 수를, 상태에 따라서 결정하도록 해도 된다. 예를 들어, 통상시의 경우, 촬상 장치(1201)가 저품질로 데이터량이 적은 베이스 레이어의 스케일러블 부호화 데이터(BL)(1222)를 생성하여, 스케일러블 부호화 데이터 기억 장치(1202)에 공급하도록 해도 된다. 또한, 예를 들어 주목시의 경우, 촬상 장치(1201)가 고품질로 데이터량이 많은 베이스 레이어의 스케일러블 부호화 데이터(BL+EL)(1221)를 생성하여, 스케일러블 부호화 데이터 기억 장치(1202)에 공급하도록 해도 된다.
이상에서는, 감시 카메라를 예로 들어 설명했지만, 이 촬상 시스템(1200)의 용도는 임의이며, 감시 카메라에 한정되지 않는다.
그리고, 이상과 같은 도 59와 같은 촬상 시스템(1200)에서도, 도 49 내지 도 51을 참조하여 상술한 계층 부호화·계층 복호에 대한 적용과 마찬가지로 본 기술을 적용함으로써, 도 49 내지 도 51을 참조하여 상술한 효과와 마찬가지의 효과를 얻을 수 있다.
또한, 본 기술은, 미리 준비된 해상도 등이 서로 다른 복수의 부호화 데이터 중에서 적절한 것을 세그먼트 단위로 선택하여 사용하는, 예를 들어 MPEG DASH 등과 같은 HTTP 스트리밍에도 적용할 수 있다. 즉, 이러한 복수의 부호화 데이터 간에서, 부호화나 복호에 관한 정보를 공유할 수도 있다.
물론, 본 기술을 적용한 화상 부호화 장치 및 화상 복호 장치는, 상술한 장치 이외의 장치나 시스템에도 적용 가능하다.
또한, 본 명세서에서는, 양자화 행렬(또는 양자화 행렬을 구성할 때에 사용하는 계수)이 부호화측에서 복호측으로 전송되는 예에 대하여 설명하였다. 양자화 행렬을 전송하는 방법은, 부호화 비트 스트림에 다중화되지 않고, 부호화 비트 스트림과 관련지어진 별개의 데이터로서 전송되거나 또는 기록되어도 된다. 여기서, 「관련짓는다」라는 용어는, 비트 스트림에 포함되는 화상(슬라이스 또는 블록 등, 화상의 일부이어도 된다)과 당해 화상에 대응하는 정보를 복호 시에 링크시킬 수 있도록 하는 것을 의미한다. 즉, 정보는, 화상(또는 비트 스트림)과는 다른 전송로 상에서 전송되어도 된다. 또한, 정보는, 화상(또는 비트 스트림)과는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에리어)에 기록되어도 된다. 또한, 정보와 화상(또는 비트 스트림)은, 예를 들어 복수 프레임, 1 프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어져도 된다.
또한, 본 기술은 이하와 같은 구성도 취할 수 있다.
(1) 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를, 상기 양자화 행렬의 선두에 위치하는 계수에 가산함으로써, 상기 양자화 행렬의 선두에 위치하는 계수를 설정하는 설정부와,
상기 설정부에 의해 설정된 양자화 행렬을 업 컨버트하고, 상기 업 컨버트 양자화 행렬을 설정하는 업 컨버트부와,
상기 업 컨버트부에 의해 설정된 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 상기 치환 계수로 치환한 업 컨버트 양자화 행렬을 사용하여, 부호화 데이터를 복호한 양자화 데이터를 역양자화하는 역양자화부를 구비하는, 화상 처리 장치.
(2) 상기 설정부는, 상기 치환 계수와 상기 양자화 행렬에 설정된 초기값과의 차분을, 상기 초기값에 가산함으로써, 상기 치환 계수를 설정하는,
(1), (3) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(3) 상기 설정부는, 상기 치환 차분 계수와 상기 양자화 행렬의 계수끼리의 차분인 차분 계수를 사용하여, 상기 양자화 행렬의 계수를 설정하는,
(1), (2), (4) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(4) 상기 치환 차분 계수와 상기 양자화 행렬의 계수끼리의 차분인 차분 계수는, 통합하여 전송되고,
상기 설정부는, 통합하여 전송된 치환 차분 계수와 차분 계수를 사용하여, 상기 양자화 행렬의 계수를 설정하는,
(1) 내지 (3), (5) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(5) 상기 치환 차분 계수와 상기 양자화 행렬의 계수끼리의 차분인 차분 계수는, 부호화되어 있고,
상기 설정부는, 부호화된 치환 차분 계수와 차분 계수를 복호하는,
(1) 내지 (4), (6) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(6) 상기 업 컨버트부는, 상기 양자화 행렬의 행렬 요소에 대하여 최근방 보간 처리를 행함으로써, 상기 전송 사이즈 이하로 제한된 양자화 행렬을 업 컨버트하는,
(1) 내지 (5), (7) 내지 (9) 중 어느 하나에 기재된 화상 처리 장치.
(7) 상기 전송 사이즈는 8x8이며,
상기 업 컨버트부는, 8x8 사이즈의 양자화 행렬의 행렬 요소에 대하여 상기 최근방 보간 처리를 행함으로써, 16x16 사이즈의 양자화 행렬로 업 컨버트하는,
(1) 내지 (6), (8), (9) 중 어느 하나에 기재된 화상 처리 장치.
(8) 상기 업 컨버트부는, 8x8 사이즈의 양자화 행렬의 행렬 요소에 대하여 상기 최근방 보간 처리를 행함으로써, 32x32 사이즈의 양자화 행렬로 업 컨버트하는,
(1) 내지 (7), (9) 중 어느 하나에 기재된 화상 처리 장치.
(9) 복호 처리할 때의 처리 단위인 코딩 유닛과 변환 처리를 할 때의 처리 단위인 변환 유닛이 계층 구조를 갖고,
상기 부호화 데이터를, 계층 구조를 갖는 단위로 복호 처리하여 상기 양자화 데이터를 생성하는 복호부를 더 구비하고,
상기 업 컨버트부는, 상기 양자화 행렬을, 상기 전송 사이즈로부터 역양자화를 행하는 처리 단위인 변환 유닛의 사이즈로 업 컨버트하는,
(1) 내지 (8) 중 어느 하나에 기재된 화상 처리 장치.
(10) 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를, 상기 양자화 행렬의 선두에 위치하는 계수에 가산함으로써, 상기 양자화 행렬의 선두에 위치하는 계수를 설정하고,
설정된 양자화 행렬을 업 컨버트하여, 상기 업 컨버트 양자화 행렬을 설정하고,
설정된 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 상기 치환 계수로 치환한 업 컨버트 양자화 행렬을 사용하여, 부호화 데이터를 복호한 양자화 데이터를 역양자화하는, 화상 처리 방법.
(11) 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를 설정하는 설정부와,
화상을 양자화하여, 양자화 데이터를 생성하는 양자화부와,
상기 양자화부에 의해 생성된 양자화 데이터를 부호화한 부호화 데이터와, 상기 치환 계수를 부호화한 치환 계수 데이터와, 상기 설정부에 의해 설정된 치환 차분 계수를 부호화한 치환 차분 계수화 데이터를 전송하는 전송부를 구비하는, 화상 처리 장치.
(12) 상기 설정부는, 상기 치환 계수와 상기 양자화 행렬에 설정된 초기값과의 차분을 설정하는,
(11), (13) 내지 (17) 중 어느 하나에 기재된 화상 처리 장치.
(13) 상기 설정부는, 상기 양자화 행렬의 계수끼리의 차분인 차분 계수를 설정하고,
상기 전송부는, 상기 설정부에 의해 설정된 차분 계수를 부호화한 차분 계수 데이터를 전송하는,
(11), (12), (14) 내지 (17) 중 어느 하나에 기재된 화상 처리 장치.
(14) 상기 전송부는, 상기 치환 계수 데이터와 상기 치환 차분 계수화 데이터를 통합하여 전송하는,
(11) 내지 (13), (15) 내지 (17) 중 어느 하나에 기재된 화상 처리 장치.
(15) 상기 전송부는, 상기 치환 계수 데이터부터 상기 치환 차분 계수화 데이터의 순서대로 전송하는,
(11) 내지 (14), (16), (17) 중 어느 하나에 기재된 화상 처리 장치.
(16) 상기 양자화부는, 상기 양자화 행렬 또는 상기 업 컨버트 양자화 행렬을 사용하여 상기 화상을 양자화하는,
(11) 내지 (15), (17) 중 어느 하나에 기재된 화상 처리 장치.
(17) 부호화 처리할 때의 처리 단위인 코딩 유닛과 변환 처리를 할 때의 처리 단위인 변환 유닛이 계층 구조를 갖고,
상기 양자화부에 의해 생성된 양자화 데이터를 부호화하는 부호화부를 더 구비하는,
(11) 내지 (16) 중 어느 하나에 기재된 화상 처리 장치.
(18) 전송 시에 허용되는 최대 사이즈인 전송 사이즈 이하로 제한된 양자화 행렬을 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈로 업 컨버트한 업 컨버트 양자화 행렬의 선두에 위치하는 계수를 치환할 때에 사용하는 치환 계수와 상기 양자화 행렬의 선두에 위치하는 계수와의 차분인 치환 차분 계수를 설정하고,
화상을 양자화하여, 양자화 데이터를 생성하고,
생성된 양자화 데이터를 부호화한 부호화 데이터와, 상기 치환 계수를 부호화한 치환 계수 데이터와, 설정된 치환 차분 계수를 부호화한 치환 차분 계수화 데이터를 전송하는, 화상 처리 방법.
(19) 부호화 데이터를 복호하여 양자화 데이터를 생성하는 복호부와,
양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 사용하여, 상기 복호부에 의해 생성된 양자화 데이터를 역양자화하는 역양자화부를 구비하는, 화상 처리 장치.
(20) 상기 역양자화부는, 상기 양자화 매트릭스 참조 데이터와 상기 양자화 매트릭스 식별 데이터가 일치하는 경우에 상기 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를 퍼스하여, 상기 양자화 데이터를 역양자화하는,
(19) 또는 (21)에 기재된 화상 처리 장치.
(21) 상기 역양자화부는, 상기 양자화 매트릭스 참조 데이터와 상기 양자화 매트릭스 식별 데이터와의 차분이 0인 경우에, 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를 퍼스하여, 상기 양자화 데이터를 역양자화하는,
(19) 또는 (20)에 기재된 화상 처리 장치.
(22) 부호화 데이터를 복호하여 양자화 데이터를 생성하고,
양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 역양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 사용하여, 상기 복호에 의해 생성된 양자화 데이터를 역양자화하는, 화상 처리 방법.
(23) 화상을 부호화하여 부호화 데이터를 생성하는 부호화부와,
양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를, 상기 부호화부에 의해 생성된 부호화 데이터의 신택스로서 설정하는 설정부를 구비하는, 화상 처리 장치.
(24) 화상을 부호화하여 부호화 데이터를 생성하고,
양자화 매트릭스를 카피하는 카피 모드를 사용할 때에 양자화 매트릭스의 참조처를 식별하는 양자화 매트릭스 참조 데이터와 양자화 매트릭스를 식별하는 양자화 매트릭스 식별 데이터가 일치하는 경우에, 양자화할 때의 처리 단위인 블록 사이즈와 동일한 사이즈에 대응하는 디폴트 양자화 매트릭스를 참조하도록 시멘틱스가 설정된 신택스를, 생성된 부호화 데이터의 신택스로서 설정하는, 화상 처리 방법.
10 : 화상 부호화 장치 14 : 직교 변환·양자화부
16 : 가역 부호화부 150 : 행렬 처리부
192 : DPCM부 211 : DC 계수 부호화부
212 : AC 계수 DPCM부 300 : 화상 복호 장치
312 : 가역 복호부 313 : 역양자화·역직교 변환부
410 : 행렬 생성부 552 : 역DPCM부
571 : 초기 설정부 572 : DPCM 복호부
573 : DC 계수 추출부 611 : AC 계수 버퍼
612 : AC 계수 부호화부 613 : AC 계수 DPCM부
614 : DC 계수 DPCM부 621 : 초기 설정부
622 : AC 계수 DPCM 복호부 623 : AC 계수 버퍼
624 : DC 계수 DPCM 복호부 631 : AC 계수 DPCM부
632 : DC 계수 버퍼 633 : DC 계수 DPCM부
641 : 초기 설정부 642 : AC 계수 DPCM 복호부
643 : DC 계수 DPCM 복호부

Claims (19)

  1. 8x8의 양자화 행렬에 대하여 최근방 보간 처리를 행함으로써 업 컨버트된 32x32의 양자화 행렬의 (0, 0) 계수를 치환할 때에 사용하는 치환 계수와 상기 8x8의 양자화 행렬의 (0, 0) 계수의 차분인 치환 차분 계수를 포함하는 부호화 데이터를 복호하여 양자화 데이터를 생성하는 복호부와,
    상기 치환 계수와 상기 치환 차분 계수를 가산한 계수가 상기 8x8의 양자화 행렬의 (0, 0) 계수로서 설정된 상기 8x8의 양자화 행렬에 대하여 상기 최근방 보간 처리를 행하여, 상기 32x32의 양자화 행렬을 설정하는 설정부와,
    상기 설정부에 의해 설정된 상기 32x32의 양자화 행렬의 (0, 0) 계수를 상기 치환 계수로 치환하는 치환부와,
    상기 치환부에 의해 (0, 0) 계수가 상기 치환 계수로 치환된 상기 32x32의 양자화 행렬을 사용하여, 상기 복호부에 의해 생성된 양자화 데이터를 역양자화하여 변환 계수 데이터를 생성하는 역양자화부
    를 구비하는 화상 처리 장치.
  2. 제1항에 있어서, 상기 복호부는, 상기 8x8의 양자화 행렬의 계수를 스캔하는 순서에 있어서 인접한 계수끼리의 차분인 차분 계수를 포함하는 상기 부호화 데이터를 복호하고,
    상기 설정부는, 상기 차분 계수에 대하여 가산 처리를 행함으로써, 상기 8x8의 양자화 행렬을 설정하는
    화상 처리 장치.
  3. 제2항에 있어서, 상기 복호부는, 상기 치환 차분 계수와 상기 차분 계수를 통합한 차분 계수군을 신택스로 하는 상기 부호화 데이터를 복호하는
    화상 처리 장치.
  4. 제3항에 있어서, 상기 치환 차분 계수와 상기 차분 계수는, 상기 치환 차분 계수, 상기 차분 계수의 순서로 신택스로서 상기 부호화 데이터에 포함되어 있고,
    상기 복호부는, 상기 치환 차분 계수와 상기 차분 계수를, 상기 치환 차분 계수, 상기 차분 계수의 순서로 복호하는
    화상 처리 장치.
  5. 제4항에 있어서, 상기 복호부는, 상기 치환 계수와 양자화 행렬에 설정된 계수의 초기값의 차분인 초기 차분 계수를 포함하는 상기 부호화 데이터를 복호하고,
    상기 설정부는, 상기 초기 차분 계수에 상기 초기값을 가산함으로써, 상기 치환 계수를 설정하는
    화상 처리 장치.
  6. 제5항에 있어서, 상기 초기 차분 계수와 상기 차분 계수군은, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 신택스로서 부호화 데이터에 포함되어 있고,
    상기 복호부는, 상기 초기 차분 계수와 상기 차분 계수군을, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 복호하는
    화상 처리 장치.
  7. 제6항에 있어서, 상기 초기 차분 계수와 상기 차분 계수군은, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 지수 골롬 부호화되어서 상기 부호화 데이터에 포함되어 있고,
    상기 복호부는, 지수 골롬 부호화된 상기 초기 차분 계수와 지수 골롬 부호화된 상기 차분 계수군을, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 지수 골롬 복호하는
    화상 처리 장치.
  8. 제7항에 있어서, 상기 역양자화부에 의해 생성된 상기 변환 계수 데이터를 역직교 변환하는 역직교 변환부를 더 구비하는
    화상 처리 장치.
  9. 제8항에 있어서, 상기 역직교 변환부는, 32x32의 변환 단위로 역직교 변환을 행하는
    화상 처리 장치.
  10. 8x8의 양자화 행렬에 대하여 최근방 보간 처리를 행함으로써 업 컨버트된 32x32의 양자화 행렬의 (0, 0) 계수를 치환할 때에 사용하는 치환 계수와 상기 8x8의 양자화 행렬의 (0, 0) 계수의 차분인 치환 차분 계수를 포함하는 부호화 데이터를 복호하여 양자화 데이터를 생성하고,
    상기 치환 계수와 상기 치환 차분 계수를 가산한 계수가 상기 8x8의 양자화 행렬의 (0, 0) 계수로서 설정된 상기 8x8의 양자화 행렬에 대하여 상기 최근방 보간 처리를 행하여, 상기 32x32의 양자화 행렬을 설정하고,
    설정된 상기 32x32의 양자화 행렬의 (0, 0) 계수를 상기 치환 계수로 치환하고,
    (0, 0) 계수가 상기 치환 계수로 치환된 상기 32x32의 양자화 행렬을 사용하여, 생성된 양자화 데이터를 역양자화하여 변환 계수 데이터를 생성하는
    화상 처리 방법.
  11. 제10항에 있어서, 상기 8x8의 양자화 행렬의 계수를 스캔하는 순서에 있어서 인접한 계수끼리의 차분인 차분 계수를 포함하는 상기 부호화 데이터를 복호하고,
    상기 차분 계수에 대하여 가산 처리를 행함으로써, 상기 8x8의 양자화 행렬을 설정하는
    화상 처리 방법.
  12. 제11항에 있어서, 상기 치환 차분 계수와 상기 차분 계수를 통합한 차분 계수군을 신택스로 하는 상기 부호화 데이터를 복호하는
    화상 처리 방법.
  13. 제12항에 있어서, 상기 치환 차분 계수와 상기 차분 계수는, 상기 치환 차분 계수, 상기 차분 계수의 순서로 신택스로서 상기 부호화 데이터에 포함되어 있고,
    상기 치환 차분 계수와 상기 차분 계수를, 상기 치환 차분 계수, 상기 차분 계수의 순서로 복호하는
    화상 처리 방법.
  14. 제13항에 있어서, 상기 치환 계수와 양자화 행렬에 설정된 계수의 초기값의 차분인 초기 차분 계수를 포함하는 상기 부호화 데이터를 복호하고,
    상기 초기 차분 계수에 상기 초기값을 가산함으로써, 상기 치환 계수를 설정하는
    화상 처리 방법.
  15. 제14항에 있어서, 상기 초기 차분 계수와 상기 차분 계수군은, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 신택스로서 부호화 데이터에 포함되어 있고,
    상기 초기 차분 계수와 상기 차분 계수군을, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 복호하는
    화상 처리 방법.
  16. 제15항에 있어서, 상기 초기 차분 계수와 상기 차분 계수군은, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 지수 골롬 부호화되어서 상기 부호화 데이터에 포함되어 있고,
    지수 골롬 부호화된 상기 초기 차분 계수와 지수 골롬 부호화된 상기 차분 계수군을, 상기 초기 차분 계수, 상기 차분 계수군의 순서로 지수 골롬 복호하는
    화상 처리 방법.
  17. 제16항에 있어서, 생성된 상기 변환 계수 데이터를 역직교 변환하는
    화상 처리 방법.
  18. 제17항에 있어서, 32x32의 변환 단위로 역직교 변환을 행하는
    화상 처리 방법.
  19. 컴퓨터를,
    8x8의 양자화 행렬에 대하여 최근방 보간 처리를 행함으로써 업 컨버트된 32x32의 양자화 행렬의 (0, 0) 계수를 치환할 때에 사용하는 치환 계수와 상기 8x8의 양자화 행렬의 (0, 0) 계수의 차분인 치환 차분 계수를 포함하는 부호화 데이터를 복호하여 양자화 데이터를 생성하는 복호부와,
    상기 치환 계수와 상기 치환 차분 계수를 가산한 계수가 상기 8x8의 양자화 행렬의 (0, 0) 계수로서 설정된 상기 8x8의 양자화 행렬에 대하여 상기 최근방 보간 처리를 행하여, 상기 32x32의 양자화 행렬을 설정하는 설정부와,
    상기 설정부에 의해 설정된 상기 32x32의 양자화 행렬의 (0, 0) 계수를 상기 치환 계수로 치환하는 치환부와,
    상기 치환부에 의해 (0, 0) 계수가 상기 치환 계수로 치환된 상기 32x32의 양자화 행렬을 사용하여, 상기 복호부에 의해 생성된 양자화 데이터를 역양자화하여 변환 계수 데이터를 생성하는 역양자화부
    로서 기능시키는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020187003084A 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체 KR102074601B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012044009 2012-02-29
JPJP-P-2012-044009 2012-02-29
PCT/JP2013/054126 WO2013129203A1 (ja) 2012-02-29 2013-02-20 画像処理装置および方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020147023142A Division KR102090344B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체

Publications (2)

Publication Number Publication Date
KR20180017210A KR20180017210A (ko) 2018-02-20
KR102074601B1 true KR102074601B1 (ko) 2020-02-06

Family

ID=49082403

Family Applications (13)

Application Number Title Priority Date Filing Date
KR1020187003082A KR102074600B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207001309A KR102154966B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207000719A KR102153271B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207001032A KR102154964B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207000591A KR102153270B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020187003085A KR102074602B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020147023142A KR102090344B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207002275A KR102154967B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207001141A KR102154965B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207000414A KR102153269B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207002278A KR102154968B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207024486A KR102248057B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020187003084A KR102074601B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체

Family Applications Before (12)

Application Number Title Priority Date Filing Date
KR1020187003082A KR102074600B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207001309A KR102154966B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207000719A KR102153271B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207001032A KR102154964B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207000591A KR102153270B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020187003085A KR102074602B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020147023142A KR102090344B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207002275A KR102154967B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207001141A KR102154965B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207000414A KR102153269B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207002278A KR102154968B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체
KR1020207024486A KR102248057B1 (ko) 2012-02-29 2013-02-20 화상 처리 장치 및 방법, 및 기록 매체

Country Status (21)

Country Link
US (13) US9838682B2 (ko)
EP (9) EP3432582B1 (ko)
JP (14) JP5904266B2 (ko)
KR (13) KR102074600B1 (ko)
CN (12) CN107277516B (ko)
AR (4) AR090124A1 (ko)
AU (1) AU2013227608B2 (ko)
BR (1) BR112014020801B1 (ko)
CA (2) CA2862282C (ko)
DK (4) DK3694214T3 (ko)
ES (1) ES2725674T3 (ko)
HK (1) HK1243572A1 (ko)
HU (3) HUE049148T2 (ko)
IN (1) IN2015DN00926A (ko)
MX (4) MX339576B (ko)
MY (6) MY190756A (ko)
PL (2) PL3300370T3 (ko)
RU (4) RU2597509C2 (ko)
TW (4) TWI612798B (ko)
WO (4) WO2013129203A1 (ko)
ZA (1) ZA201405569B (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR122014031521B1 (pt) 2011-02-10 2022-08-23 Velos Media International Limited Dispositivo e método de processamento de imagem
CN107580230B (zh) 2012-01-20 2021-08-20 韩国电子通信研究院 视频解码方法和视频编码方法
EP3432582B1 (en) 2012-02-29 2020-04-01 Sony Corporation Image processing device and method
JP6287035B2 (ja) * 2013-10-11 2018-03-07 ソニー株式会社 復号装置および復号方法
GB2520002B (en) * 2013-11-04 2018-04-25 British Broadcasting Corp An improved compression algorithm for video compression codecs
US10863188B2 (en) * 2014-09-19 2020-12-08 Futurewei Technologies, Inc. Method and apparatus for non-uniform mapping for quantization matrix coefficients between different sizes of quantization matrices in image/video coding
US10302463B2 (en) * 2015-11-19 2019-05-28 Corning Incorporated Distributed fiber sensors and systems employing multicore optical fibers
FR3047379A1 (fr) * 2016-01-29 2017-08-04 Orange Procede de codage et decodage de donnees, dispositif de codage et decodage de donnees et programmes d'ordinateur correspondants
GB2547442B (en) * 2016-02-17 2022-01-12 V Nova Int Ltd Physical adapter, signal processing equipment, methods and computer programs
WO2018008387A1 (ja) * 2016-07-04 2018-01-11 ソニー株式会社 画像処理装置および方法
CN109661820A (zh) * 2016-09-13 2019-04-19 联发科技股份有限公司 用于视频编解码的多个量化矩阵集合的方法
US10567768B2 (en) * 2017-04-14 2020-02-18 Apple Inc. Techniques for calculation of quantization matrices in video coding
EP3782365A1 (en) * 2018-04-16 2021-02-24 InterDigital VC Holdings, Inc. Quantization parameter prediction for video encoding and decoding
CN109031440B (zh) * 2018-06-04 2020-02-21 南京航空航天大学 一种基于深度学习的伽马放射性成像方法
JP2020098984A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
JP2020098986A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
CN109714132B (zh) * 2019-01-23 2021-04-20 中国电子科技集团公司第二十八研究所 一种用于复杂电磁环境下的多链路抗干扰实时传输方法
EP3918797A4 (en) * 2019-03-10 2023-01-25 HFI Innovation Inc. METHOD AND DEVICE FOR CALCULATION AND REPRESENTATION OF QUANTIZATION MATRICES FOR VIDEO CODING
US20220159250A1 (en) * 2019-03-20 2022-05-19 V-Nova International Limited Residual filtering in signal enhancement coding
SG11202110936PA (en) 2019-04-12 2021-11-29 Beijing Bytedance Network Technology Co Ltd Chroma coding mode determination based on matrix-based intra prediction
JP7403555B2 (ja) 2019-04-16 2023-12-22 北京字節跳動網絡技術有限公司 イントラコーディングモードにおけるマトリクスの導出
CN113728640A (zh) * 2019-04-23 2021-11-30 北京字节跳动网络技术有限公司 帧内预测和残差编解码
CN113812150B (zh) 2019-05-01 2023-11-28 北京字节跳动网络技术有限公司 使用滤波的基于矩阵的帧内预测
CN117097912A (zh) 2019-05-01 2023-11-21 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文编码
WO2020231228A1 (ko) * 2019-05-15 2020-11-19 현대자동차주식회사 영상 복호화 장치에서 이용하는 역양자화장치 및 방법
BR112021022868A2 (pt) 2019-05-22 2022-01-04 Beijing Bytedance Network Tech Co Ltd Método de processamento de vídeos, aparelho para processar dados de vídeo e meios de armazenamento e gravação não transitórios legíveis por computador
CN113924775B (zh) 2019-05-31 2023-11-14 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的限制的上采样
WO2020244610A1 (en) 2019-06-05 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Context determination for matrix-based intra prediction
WO2020251279A1 (ko) * 2019-06-11 2020-12-17 엘지전자 주식회사 스케일링 리스트 데이터의 시그널링 기반 비디오 또는 영상 코딩
WO2020251275A1 (ko) * 2019-06-11 2020-12-17 엘지전자 주식회사 스케일링 리스트 기반 비디오 또는 영상 코딩
US20220337849A1 (en) * 2019-06-11 2022-10-20 Lg Electronics Inc. Scaling list parameter-based video or image coding
CN114521327A (zh) * 2019-07-05 2022-05-20 威诺瓦国际有限公司 视频译码中的残差的量化
CN110334316A (zh) * 2019-07-08 2019-10-15 张军 一种多路数据分块浮点量化处理器原型
CN114270838B (zh) 2019-08-20 2024-04-12 北京字节跳动网络技术有限公司 变换跳过模式的信令通知
WO2021060846A1 (ko) * 2019-09-23 2021-04-01 엘지전자 주식회사 양자화 매트릭스를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
US11206395B2 (en) * 2019-09-24 2021-12-21 Mediatek Inc. Signaling quantization matrix
EP4042689A4 (en) 2019-10-28 2023-06-07 Beijing Bytedance Network Technology Co., Ltd. SIGNALING AND SYNTAX ANALYSIS BASED ON A COLOR COMPONENT
US11954821B1 (en) 2022-10-27 2024-04-09 Xerox Corporation Altering pixels to scale images

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2753091B2 (ja) 1990-01-09 1998-05-18 株式会社リコー 画像データ伸張回路

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100287624B1 (ko) * 1992-09-28 2001-04-16 야스카와 히데아키 화상데이타의압축,해제방법및그장치
US6865291B1 (en) * 1996-06-24 2005-03-08 Andrew Michael Zador Method apparatus and system for compressing data that wavelet decomposes by color plane and then divides by magnitude range non-dc terms between a scalar quantizer and a vector quantizer
US8625665B2 (en) * 1996-09-20 2014-01-07 At&T Intellectual Property Ii, L.P. Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video
US6125201A (en) * 1997-06-25 2000-09-26 Andrew Michael Zador Method, apparatus and system for compressing data
JP2900927B2 (ja) * 1997-10-30 1999-06-02 日本ビクター株式会社 符号化方法及び符号化装置
FI974244A (fi) * 1997-11-14 1999-05-15 Nokia Mobile Phones Ltd Kuvan kompressointimenetelmä
KR100281967B1 (ko) * 1998-08-31 2001-02-15 전주범 공간 상관성을 이용한 영상 부호화 장치 및 그 방법
US6993076B1 (en) * 1999-05-11 2006-01-31 Thomson Licensing S.A. Apparatus and method for deriving an enhanced decoded reduced-resolution video signal from a coded high-definition video signal
US7295609B2 (en) 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
JP2004147095A (ja) * 2002-10-24 2004-05-20 Canon Inc 復号方法
US7206355B2 (en) * 2002-12-02 2007-04-17 Nortel Networks Limited Digitally convertible radio
KR100584552B1 (ko) * 2003-01-14 2006-05-30 삼성전자주식회사 동영상 부호화 및 복호화 방법과 그 장치
KR100999221B1 (ko) * 2003-02-21 2010-12-07 파나소닉 주식회사 픽처 코딩 방법 및 디코딩 방법
US7233703B2 (en) * 2003-03-25 2007-06-19 Sharp Laboratories Of America, Inc. Computation-reduced IDCT method for video coding
US20050002337A1 (en) * 2003-07-01 2005-01-06 Nokia Corporation Reducing effects caused by transmission channel errors during a streaming session
US7426308B2 (en) * 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
JP2007535191A (ja) * 2004-01-30 2007-11-29 松下電器産業株式会社 画像符号化方法、画像復号化方法、画像符号化装置、画像復号化装置およびプログラム
US7933327B2 (en) * 2004-01-30 2011-04-26 Panasonic Corporation Moving picture coding method and moving picture decoding method
US7460596B2 (en) * 2004-04-29 2008-12-02 Mediatek Incorporation Adaptive de-blocking filtering apparatus and method for MPEG video decoder
CN100571389C (zh) * 2004-06-29 2009-12-16 奥林巴斯株式会社 用于图像编码/解码和扩展图像压缩解压缩的方法和设备
DE102004059978B4 (de) * 2004-10-15 2006-09-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen einer codierten Videosequenz und zum Decodieren einer codierten Videosequenz unter Verwendung einer Zwischen-Schicht-Restwerte-Prädiktion sowie ein Computerprogramm und ein computerlesbares Medium
EP1675402A1 (en) * 2004-12-22 2006-06-28 Thomson Licensing Optimisation of a quantisation matrix for image and video coding
JP2007140200A (ja) * 2005-11-18 2007-06-07 Yamaha Corp 語学学習装置およびプログラム
RU2369038C1 (ru) * 2005-11-30 2009-09-27 Кабусики Кайся Тосиба Способ кодирования изображения/декодирования изображения, устройство кодирования изображения/декодирования изображения
KR100763205B1 (ko) * 2006-01-12 2007-10-04 삼성전자주식회사 모션 역변환을 사용하여 모션 예측을 수행하는 방법 및장치
US8711925B2 (en) * 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
RU2419855C2 (ru) * 2006-06-26 2011-05-27 Квэлкомм Инкорпорейтед Снижение ошибок в ходе вычисления обратного дискретного косинусного преобразования
US8463061B2 (en) 2006-07-13 2013-06-11 Nec Corporation Encoding and decoding two-dimensional signal using a wavelet transform
JP4274234B2 (ja) * 2006-12-04 2009-06-03 ソニー株式会社 圧縮データ量制御方法及び画像データ圧縮装置
CN100520732C (zh) * 2006-12-26 2009-07-29 中国电信股份有限公司 性能测试脚本生成方法
JPWO2008120577A1 (ja) * 2007-03-29 2010-07-15 株式会社東芝 画像符号化及び復号化の方法及び装置
WO2008132890A1 (ja) * 2007-04-16 2008-11-06 Kabushiki Kaisha Toshiba 画像符号化と画像復号化の方法及び装置
US8213498B2 (en) * 2007-05-31 2012-07-03 Qualcomm Incorporated Bitrate reduction techniques for image transcoding
KR101365441B1 (ko) * 2007-10-11 2014-02-19 삼성전자주식회사 영상 부호화장치 및 방법과 그 영상 복호화장치 및 방법
AU2008229753A1 (en) 2007-10-11 2009-04-30 Aristocrat Technologies Australia Pty Limited A gaming system and a method of gaming
DE102007053038A1 (de) * 2007-11-07 2009-05-14 Robert Bosch Gmbh Ansteuerschaltung
KR101375663B1 (ko) * 2007-12-06 2014-04-03 삼성전자주식회사 영상을 계층적으로 부호화/복호화하는 방법 및 장치
KR101426272B1 (ko) * 2008-03-10 2014-08-07 삼성전자주식회사 영상 부호화장치 및 영상 복호화장치
US8238675B2 (en) * 2008-03-24 2012-08-07 Microsoft Corporation Spectral information recovery for compressed image restoration with nonlinear partial differential equation regularization
BRPI0904325A2 (pt) * 2008-06-27 2015-06-30 Sony Corp Dispositivo e método de processamento de imagem.
WO2009157577A1 (ja) * 2008-06-27 2009-12-30 ソニー株式会社 画像処理装置及び画像処理方法
US8325796B2 (en) * 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
CN101771868B (zh) * 2008-12-31 2016-03-02 华为技术有限公司 对图像的量化处理方法及装置
TW201028018A (en) 2009-01-07 2010-07-16 Ind Tech Res Inst Encoder, decoder, encoding method and decoding method
WO2010085125A2 (ko) * 2009-01-22 2010-07-29 삼성전자 주식회사 영상의 변환 방법 및 장치, 역변환 방법 및 장치
FR2944936A1 (fr) * 2009-04-23 2010-10-29 Thomson Licensing Procedes de codage et de decodage d'un bloc de donnees images, dispositifs de codage et de decodage implementant lesdits procedes
JP2010288166A (ja) * 2009-06-15 2010-12-24 Panasonic Corp 動画像符号化装置、放送波記録装置及び、プログラム
JP2011029956A (ja) * 2009-07-27 2011-02-10 Sony Corp 画像符号化装置および画像符号化方法
JP5233897B2 (ja) * 2009-07-31 2013-07-10 ソニー株式会社 画像処理装置および方法
KR101675116B1 (ko) * 2009-08-06 2016-11-10 삼성전자 주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
KR20110069740A (ko) * 2009-12-17 2011-06-23 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치
US8588536B2 (en) * 2010-02-22 2013-11-19 Texas Instruments Incorporated Guaranteed-rate tiled image data compression
JP5213896B2 (ja) * 2010-03-03 2013-06-19 日本電信電話株式会社 画像処理方法及び画像処理装置及びプログラム
EP2375745A1 (en) * 2010-04-12 2011-10-12 Panasonic Corporation Efficient storing of picture representation using adaptive non-uniform quantizer
CN102933678B (zh) * 2010-06-08 2014-12-31 Dic株式会社 封装材料、太阳能电池组件及发光二极管
JP2011259205A (ja) * 2010-06-09 2011-12-22 Sony Corp 画像復号化装置と画像符号化装置およびその方法とプログラム
CN105512093A (zh) * 2010-09-28 2016-04-20 三星电子株式会社 视频编码方法和装置以及解码方法和装置
US9167252B2 (en) * 2010-12-01 2015-10-20 Texas Instruments Incorporated Quantization matrix compression in video coding
CN101984669A (zh) * 2010-12-10 2011-03-09 河海大学 一种帧层次自适应维纳插值滤波器的迭代方法
BR122014031521B1 (pt) 2011-02-10 2022-08-23 Velos Media International Limited Dispositivo e método de processamento de imagem
US20140010284A1 (en) * 2011-02-25 2014-01-09 Samsung Electronics Co., Ltd. Image transform and inverse transform method, and image encoding and decoding device using same
CN102281075B (zh) * 2011-03-21 2013-03-06 中国人民解放军信息工程大学 孔径为4的六边形格网层次编码、运算与索引方法
US9641840B2 (en) * 2011-05-20 2017-05-02 Sony Corporation Processing device and image processing method for encoding and decoding image
US9143802B2 (en) * 2011-10-31 2015-09-22 Qualcomm Incorporated Fragmented parameter set for video coding
US10277915B2 (en) * 2011-11-07 2019-04-30 Qualcomm Incorporated Signaling quantization matrices for video coding
JP2013129616A (ja) 2011-12-21 2013-07-04 Shikoku Chem Corp 臭素化剤及びその利用
CN107580230B (zh) 2012-01-20 2021-08-20 韩国电子通信研究院 视频解码方法和视频编码方法
EP3432582B1 (en) 2012-02-29 2020-04-01 Sony Corporation Image processing device and method
JPWO2013154028A1 (ja) * 2012-04-13 2015-12-17 ソニー株式会社 画像処理装置および方法
JP5559372B2 (ja) 2013-02-01 2014-07-23 キヤノン株式会社 画像形成装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2753091B2 (ja) 1990-01-09 1998-05-18 株式会社リコー 画像データ伸張回路

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Benjamin Bross, et al. High efficiency video coding (HEVC) text specification draft 6. JCTVC-H1003. 2012.02.10.*
Minhua Zhou, et al. Non-CE04: Carriage of large block size quantization matrices with up-sampling. JCTVC-G094. 2011.11.19.*

Also Published As

Publication number Publication date
US20180176566A1 (en) 2018-06-21
DK3300370T3 (da) 2019-05-20
KR20140143138A (ko) 2014-12-15
US10264258B2 (en) 2019-04-16
US9686541B2 (en) 2017-06-20
RU2016120989A (ru) 2017-11-28
JP2016131383A (ja) 2016-07-21
AR112716A2 (es) 2019-12-04
CN109379589B (zh) 2021-06-15
MX2014010113A (es) 2014-10-14
US20200045314A1 (en) 2020-02-06
KR102090344B1 (ko) 2020-03-17
CN104170391B (zh) 2018-06-29
CN107743240B (zh) 2020-03-17
CN110913224A (zh) 2020-03-24
US20150010075A1 (en) 2015-01-08
KR20180017210A (ko) 2018-02-20
EP3432582A1 (en) 2019-01-23
CN107743240A (zh) 2018-02-27
JP2016105658A (ja) 2016-06-09
JP6075487B2 (ja) 2017-02-08
KR102153271B1 (ko) 2020-09-07
WO2013129203A1 (ja) 2013-09-06
JPWO2013129616A1 (ja) 2015-07-30
AR112641A2 (es) 2019-11-20
AR112588A2 (es) 2019-11-13
CN104126304A (zh) 2014-10-29
JP2016131384A (ja) 2016-07-21
JP6635184B2 (ja) 2020-01-22
TWI568246B (zh) 2017-01-21
AU2013227608B2 (en) 2016-07-21
EP3694214B1 (en) 2021-08-25
MY172126A (en) 2019-11-14
KR102153269B1 (ko) 2020-09-07
KR20200009125A (ko) 2020-01-29
CN107592536A (zh) 2018-01-16
HUE043260T2 (hu) 2019-08-28
CN107257491B (zh) 2019-10-18
KR102154965B1 (ko) 2020-09-10
BR112014020801B1 (pt) 2018-09-25
CA3041408C (en) 2021-06-08
CN104170391A (zh) 2014-11-26
JP2016131382A (ja) 2016-07-21
EP3709652B1 (en) 2021-09-22
US10574990B2 (en) 2020-02-25
CN107592536B (zh) 2020-02-11
MX2021015792A (es) 2022-06-14
KR20200008018A (ko) 2020-01-22
KR20200013789A (ko) 2020-02-07
CA2862282C (en) 2021-03-30
CN104137552A (zh) 2014-11-05
US20190174129A1 (en) 2019-06-06
MX352223B (es) 2017-11-15
JP5904269B2 (ja) 2016-04-13
PL3300370T3 (pl) 2019-07-31
EP3930334A1 (en) 2021-12-29
DK3432584T3 (da) 2020-06-15
JP5904268B2 (ja) 2016-04-13
US20180020219A1 (en) 2018-01-18
US20170214919A1 (en) 2017-07-27
US10404985B2 (en) 2019-09-03
RU2016120989A3 (ko) 2019-10-23
KR102074600B1 (ko) 2020-02-06
US10225553B2 (en) 2019-03-05
RU2020107177A (ru) 2021-08-17
AU2013227608A1 (en) 2014-08-21
ZA201405569B (en) 2014-11-26
CN104137552B (zh) 2019-01-11
ES2725674T3 (es) 2019-09-26
CN104126306B (zh) 2017-09-19
KR20200014435A (ko) 2020-02-10
KR102154968B1 (ko) 2020-09-10
CN109803149A (zh) 2019-05-24
KR20200008662A (ko) 2020-01-28
EP3694214A1 (en) 2020-08-12
JP2018110431A (ja) 2018-07-12
EP3432584A1 (en) 2019-01-23
EP3432583A1 (en) 2019-01-23
TW201519638A (zh) 2015-05-16
CN104126304B (zh) 2017-11-21
RU2014134533A (ru) 2016-03-20
WO2013129617A1 (ja) 2013-09-06
EP3282708B1 (en) 2019-04-03
US20170142413A1 (en) 2017-05-18
JP6075486B2 (ja) 2017-02-08
US20140369407A1 (en) 2014-12-18
MY190756A (en) 2022-05-12
EP3300370B1 (en) 2019-04-03
BR112014020801A8 (pt) 2018-02-14
TWI612797B (zh) 2018-01-21
KR20180015756A (ko) 2018-02-13
JP2019071653A (ja) 2019-05-09
JP2018110430A (ja) 2018-07-12
CN107277516A (zh) 2017-10-20
DK3694214T3 (da) 2021-09-27
RU2597509C2 (ru) 2016-09-10
JP6299889B2 (ja) 2018-03-28
RU2718415C2 (ru) 2020-04-02
CN107277516B (zh) 2020-02-18
RU2015103531A (ru) 2015-06-20
US11539954B2 (en) 2022-12-27
EP2822275B1 (en) 2018-09-12
AR090124A1 (es) 2014-10-22
JP2017085640A (ja) 2017-05-18
MY190758A (en) 2022-05-12
KR102248057B1 (ko) 2021-05-04
CN109379589A (zh) 2019-02-22
EP2822275A4 (en) 2015-12-02
US9838682B2 (en) 2017-12-05
HK1243572A1 (zh) 2018-07-13
CA3041408A1 (en) 2013-09-06
KR20180017209A (ko) 2018-02-20
US20180098071A1 (en) 2018-04-05
RU2582057C2 (ru) 2016-04-20
CN107257491A (zh) 2017-10-17
EP3709652A1 (en) 2020-09-16
KR102154967B1 (ko) 2020-09-10
MY195141A (en) 2023-01-11
EP3432584B1 (en) 2020-05-13
KR102154964B1 (ko) 2020-09-10
HUE049148T2 (hu) 2020-09-28
WO2013129616A1 (ja) 2013-09-06
MY195140A (en) 2023-01-11
EP3432582B1 (en) 2020-04-01
TW201336315A (zh) 2013-09-01
KR20200008015A (ko) 2020-01-22
JPWO2013129617A1 (ja) 2015-07-30
KR102154966B1 (ko) 2020-09-10
US9955164B2 (en) 2018-04-24
WO2013129618A1 (ja) 2013-09-06
JP6075485B2 (ja) 2017-02-08
CA2862282A1 (en) 2013-09-06
US10277898B2 (en) 2019-04-30
KR20200103875A (ko) 2020-09-02
US20150023412A1 (en) 2015-01-22
CN113286155A (zh) 2021-08-20
JPWO2013129203A1 (ja) 2015-07-30
JP6075484B2 (ja) 2017-02-08
US10349053B2 (en) 2019-07-09
KR102074602B1 (ko) 2020-02-06
MY176387A (en) 2020-08-05
IN2015DN00926A (ko) 2015-07-10
JP6465226B2 (ja) 2019-02-06
HUE056281T2 (hu) 2022-02-28
CN113286155B (zh) 2022-12-13
MX339576B (es) 2016-05-31
JP6299890B2 (ja) 2018-03-28
JPWO2013129618A1 (ja) 2015-07-30
US9813714B2 (en) 2017-11-07
EP2822275A1 (en) 2015-01-07
EP3300370A1 (en) 2018-03-28
CN109803149B (zh) 2021-10-01
JP5904267B2 (ja) 2016-04-13
US20180103254A1 (en) 2018-04-12
CN110913224B (zh) 2022-05-03
EP3432583B1 (en) 2020-04-01
PL3432584T3 (pl) 2020-09-07
DK3282708T3 (da) 2019-05-20
MX2021015794A (es) 2022-06-14
BR112014020801A2 (ko) 2017-06-20
US9648316B2 (en) 2017-05-09
US20190260993A1 (en) 2019-08-22
KR20200008013A (ko) 2020-01-22
JP5904266B2 (ja) 2016-04-13
EP3282708A1 (en) 2018-02-14
JP2017085639A (ja) 2017-05-18
US20140369408A1 (en) 2014-12-18
US9967566B2 (en) 2018-05-08
TW201715885A (zh) 2017-05-01
JP6465227B2 (ja) 2019-02-06
TW201715884A (zh) 2017-05-01
CN104126306A (zh) 2014-10-29
TWI519133B (zh) 2016-01-21
KR102153270B1 (ko) 2020-09-07
TWI612798B (zh) 2018-01-21
JP2020036372A (ja) 2020-03-05
KR20200010571A (ko) 2020-01-30

Similar Documents

Publication Publication Date Title
JP6635184B2 (ja) 画像処理装置および方法

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right