KR20210096279A - 화상 부호화 장치 및 화상 복호 장치 및 그것들의 제어 방법 및 프로그램 - Google Patents

화상 부호화 장치 및 화상 복호 장치 및 그것들의 제어 방법 및 프로그램 Download PDF

Info

Publication number
KR20210096279A
KR20210096279A KR1020217021605A KR20217021605A KR20210096279A KR 20210096279 A KR20210096279 A KR 20210096279A KR 1020217021605 A KR1020217021605 A KR 1020217021605A KR 20217021605 A KR20217021605 A KR 20217021605A KR 20210096279 A KR20210096279 A KR 20210096279A
Authority
KR
South Korea
Prior art keywords
encoding
quantization matrix
quantization
image
unit
Prior art date
Application number
KR1020217021605A
Other languages
English (en)
Inventor
마사토 시마
Original Assignee
캐논 가부시끼가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 캐논 가부시끼가이샤 filed Critical 캐논 가부시끼가이샤
Publication of KR20210096279A publication Critical patent/KR20210096279A/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/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

본 발명은 부호화에서 이용하는 양자화 매트릭스의 부호량을 억제하면서, 화상의 부호화를 행한다. 이 때문에, 본 발명의, 화상 데이터를 부호화하는 화상 부호화 장치는, 부호화 대상의 화상 데이터를 미리 설정된 사이즈의 기본 블록으로 분할하고, 당해 기본 블록을, 미리 설정된 복수의 서브블록 분할 패턴 중 어느 것을 사용하여 1 이상의 서브블록으로 더 분할하고, 각 서브블록 단위로 주파수 변환, 양자화, 엔트로피 부호화를 행하는 제1 부호화부와, 해당 제1 화상 부호화부에서 이용하는 서브블록 분할 패턴에 포함되는 서브블록의 사이즈에 대응하는 복수의 양자화 매트릭스를 보유하는 보유부와, 해당 보유부에서 보유되는 복수의 양자화 매트릭스를 부호화하는 제2 부호화부와, 해당 제2 부호화부에서 생성된 부호화 데이터와, 제1 부호화부에서 얻은 부호화 데이터를 통합하는 통합부를 갖는다. 여기서, 보유부는, 기본 블록의 수평, 수직 방향 중 어느 것의 사이즈와 동일한 사이즈를 갖는 양자화 매트릭스에 대해서는, 직류 성분의 요소의 저장 위치로부터 미리 설정된 소정 범위의 위치의 요소를 독립된 값으로서 보유하고, 소정 범위를 초과하는 위치에서는 미리 설정된 개수 단위로 동일한 요소를 보유한다.

Description

화상 부호화 장치 및 화상 복호 장치 및 그것들의 제어 방법 및 프로그램
본 발명은, 화상 부호화 장치 및 화상 복호 장치 및 그것들의 제어 방법 및 프로그램에 관한 것이다.
동화상의 압축 기록의 부호화 방식으로서, HEVC(High Efficiency Video Coding) 부호화 방식(이하, HEVC라 기재함)이 알려져 있다. HEVC에서는 부호화 효율 향상을 위해, 종래의 매크로 블록(16×16화소)보다 큰 사이즈의 기본 블록이 채용되었다. 이 큰 사이즈의 기본 블록은 CTU(Coding Tree Unit)라 불리며, 그 사이즈는 최대 64×64화소이다. CTU는 또한 예측이나 변환을 행하는 단위가 되는 서브블록으로 분할된다.
또한, HEVC에 있어서는, 양자화 매트릭스라 불리는, 직교 변환을 실시한 후의 계수(이하, 직교 변환 계수라 기재함)를, 주파수 성분에 따라서 가중치 부여를 하는 처리가 사용되고 있다. 인간의 시각에는 열화가 눈에 띄기 어려운 고주파 성분의 데이터를 보다 삭감함으로써, 화질을 유지하면서 압축 효율을 높이는 것이 가능하게 되어 있다. 특허문헌 1에는, 이와 같은 양자화 매트릭스를 부호화하는 기술이 개시되어 있다.
일본 특허 공개 제2013-38758호 공보
HEVC에서는, 16×16화소나 32×32화소와 같은, 종래 8×8화소의 직교 변환보다도 큰 직교 변환이 사용되고 있고, 또한 그러한 큰 직교 변환에 대응한 양자화 매트릭스도 사용되고 있다. 양자화 매트릭스의 부호량 자체의 증대를 방지하기 위해, 16×16화소의 직교 변환에 대응하는 256개의 양자화 매트릭스의 요소 모두를 부호화하는 대신에, 64개분의 요소만을 부호화하고, 복호측에서 업 샘플링 처리에 의해 확장하는 구성으로 하고 있다. 또한, 주파수 영역에서 DC 성분에 상당하는 양자화 매트릭스의 좌측 상단 위치에 있는 요소는 별도로 부호화된다. 이 때문에 HEVC에 있어서는, 큰 직교 변환을 사용하였을 때, DC 성분 이외의 주파수 성분의 양자화 처리를 세세하게 제어할 수 없다는 과제가 있었다.
본 발명은 상술한 과제를 해결하기 위해 이루어진 것이며, 부호화에서 이용하는 양자화 매트릭스의 부호량을 억제하면서, 화상의 부호화를 행하는 기술을 제공하려고 하는 것이다.
이 과제를 해결하기 위해, 예를 들어 본 발명의 화상 부호화 장치는 이하의 구성을 구비한다. 즉,
화상 데이터를 부호화하는 화상 부호화 장치이며,
부호화 대상의 화상 데이터를 미리 설정된 사이즈의 기본 블록으로 분할하고, 당해 기본 블록을, 미리 설정된 복수의 서브블록 분할 패턴 중 어느 것을 사용하여 1 이상의 서브블록으로 더 분할하고, 각 서브블록 단위로 주파수 변환, 양자화, 엔트로피 부호화를 행하는 제1 부호화 수단과,
해당 제1 부호화 수단에서 이용하는 상기 서브블록 분할 패턴에 포함되는 서브블록의 사이즈에 대응하는 복수의 양자화 매트릭스를 보유하는 보유 수단과,
해당 보유 수단에 의해 보유되는 복수의 양자화 매트릭스 중 적어도 하나를 부호화하는 제2 부호화 수단과,
해당 제2 부호화 수단에 의해 생성된 부호화 데이터와, 제1 부호화 수단에 의해 얻은 부호화 데이터를 통합하는 통합 수단을 갖고,
상기 보유 수단은,
상기 기본 블록의 수평, 수직 방향 중 어느 것의 사이즈와 동일한 사이즈를 갖는 양자화 매트릭스에 대해서는, 직류 성분에 대응하는 요소의 저장 위치로부터 미리 설정된 소정 범위의 위치의 요소를 독립된 값으로서 보유하고, 상기 소정 범위를 초과하는 위치에서는 미리 설정된 개수 단위로 동일한 요소를 보유하는 것을 특징으로 한다.
본 발명에 따르면, 부호화에서 이용하는 양자화 매트릭스의 부호량을 억제하면서, 화상의 부호화를 행하는 것이 가능해진다.
본 발명의 그 밖의 특징 및 이점은, 첨부 도면을 참조로 한 이하의 설명에 의해 명백하게 될 것이다. 또한, 첨부 도면에 있어서는, 동일하거나 혹은 마찬가지의 구성에는, 동일한 참조 번호를 부여한다.
첨부 도면은 명세서에 포함되어, 그 일부를 구성하고, 본 발명의 실시 형태를 나타내고, 그 기술과 함께 본 발명의 원리를 설명하기 위해 사용된다.
도 1은 제1 실시 형태에 있어서의 화상 부호화 장치의 블록 구성도.
도 2는 제2 실시 형태에 있어서의 화상 복호 장치의 블록 구성도
도 3은 제1 실시 형태에 관한 화상 부호화 장치에 있어서의 화상 부호화 처리를 나타내는 흐름도.
도 4는 제2 실시 형태에 관한 화상 복호 장치에 있어서의 화상 복호 처리를 나타내는 흐름도.
도 5는 화상 부호화 장치, 복호 장치로서 적용 가능한 컴퓨터의 하드웨어 구성예를 도시하는 블록도.
도 6a는 제1 실시 형태에 의해 생성되는 비트 스트림 구조의 일례를 도시하는 도면.
도 6b는 제1 실시 형태에 의해 생성되는 비트 스트림 구조의 일례를 도시하는 도면.
도 7a는 실시 형태에서 사용되는 서브블록 분할의 일례를 도시하는 도면.
도 7b는 실시 형태에서 사용되는 서브블록 분할의 일례를 도시하는 도면.
도 7c는 실시 형태에서 사용되는 서브블록 분할의 일례를 도시하는 도면.
도 7d는 실시 형태에서 사용되는 서브블록 분할의 일례를 도시하는 도면.
도 7e는 실시 형태에서 사용되는 서브블록 분할의 일례를 도시하는 도면.
도 7f는 실시 형태에서 사용되는 서브블록 분할의 일례를 도시하는 도면.
도 8a는 실시 형태에서 사용되는 양자화 매트릭스의 일례를 도시하는 도면.
도 8b는 실시 형태에서 사용되는 양자화 매트릭스의 일례를 도시하는 도면.
도 8c는 실시 형태에서 사용되는 양자화 매트릭스의 일례를 도시하는 도면.
도 8d는 실시 형태에서 사용되는 양자화 매트릭스의 일례를 도시하는 도면.
도 9a는 실시 형태에서 사용되는 양자화 매트릭스의 일례를 도시하는 도면.
도 9b는 실시 형태에서 사용되는 양자화 매트릭스의 일례를 도시하는 도면.
도 10a는 실시 형태에서 사용되는 양자화 매트릭스의 요소의 주사 방법을 도시하는 도면.
도 10b는 실시 형태에서 사용되는 양자화 매트릭스의 요소의 주사 방법을 도시하는 도면.
도 10c는 실시 형태에서 사용되는 양자화 매트릭스의 요소의 주사 방법을 도시하는 도면.
도 10d는 실시 형태에서 사용되는 양자화 매트릭스의 요소의 주사 방법을 도시하는 도면.
도 11a는 실시 형태에서 생성되는 양자화 매트릭스의 차분값 행렬을 도시하는 도면.
도 11b는 실시 형태에서 생성되는 양자화 매트릭스의 차분값 행렬을 도시하는 도면.
도 11c는 실시 형태에서 생성되는 양자화 매트릭스의 차분값 행렬을 도시하는 도면.
도 11d는 실시 형태에서 생성되는 양자화 매트릭스의 차분값 행렬을 도시하는 도면.
도 12a는 양자화 매트릭스의 차분값의 부호화에 사용되는 부호화 테이블의 일례를 도시하는 도면.
도 12b는 양자화 매트릭스의 차분값의 부호화에 사용되는 부호화 테이블의 일례를 도시하는 도면.
이하, 첨부 도면에 따라서 본 발명에 관한 실시 형태를 상세하게 설명한다. 또한, 이하에 기재하는 실시 형태에 있어서의 구성은 일례에 지나지 않고, 본 발명은 도시된 구성에 한정되는 것은 아니다.
[제1 실시 형태]
도 1은 제1 실시 형태의 화상 부호화 장치를 나타내는 블록 구성도이다. 화상 부호화 장치는, 이하에 설명하는 구성 요소를 제어하고, 장치 전체의 제어를 담당하는 제어부(150)를 갖는다. 이 제어부(150)는, CPU, CPU가 실행하는 프로그램이나 각종 파라미터 등을 기억하고 있는 ROM, CPU의 워크 에어리어로서 사용되는 RAM을 포함한다. 또한, ROM이나 다른 불휘발성 기억 장치에 저장된 OS(오퍼레이팅 시스템), 프로그램, 파라미터를 RAM에 로드한 후에, OS의 제어 하에서 프로그램을 실행하도록 해도 된다.
또한, 화상 부호화 장치는, 입력 단자(101), 블록 분할부(102), 양자화 매트릭스 보유부(103), 예측부(104), 변환·양자화부(105), 역양자화·역변환부(106), 화상 재생부(107), 프레임 메모리(108), 인루프 필터부(109), 부호화부(110), 통합 부호화부(111), 출력 단자(112), 및 양자화 매트릭스 부호화부(113)를 갖는다.
상기 구성에 있어서, 도시하지 않은 화상 발생원으로부터 화상 데이터(예를 들어 30프레임/초)가, 본 장치의 입력 단자(101)에 공급된다. 또한, 화상 발생원의 종류는 불문하지만, 간단하게는 촬상부 혹은 비디오 카메라, 혹은, 부호화 대상의 화상 데이터를 기억하는 하드 디스크나 기억 매체이다.
블록 분할부(102)는, 입력 단자(101)를 통해 입력된 화상 데이터를 복수의 기본 블록으로 분할하고, 기본 블록 단위의 화상 데이터를 후단의 예측부(104)에 공급한다.
양자화 매트릭스 보유부(103)는, 양자화 처리에서 사용하는 복수 종류의 양자화 매트릭스를 보유하고 있다. 이 양자화 매트릭스의 생성 방법의 상세에 대해서는 후술한다.
예측부(104)는, 블록 분할부(102)로부터의 기본 블록 단위의 화상 데이터를 입력하여, 보다 작은 복수의 서브블록으로의 분할법을 결정하고, 각 서브블록 단위로 프레임 내 예측인 인트라 예측이나, 프레임간 예측인 인터 예측 등을 행하여, 예측 화상 데이터를 생성한다. 또한, 예측부(104)는, 서브블록의 화상 데이터와, 그 예측 화상 데이터의 차분인 예측 오차 데이터를 산출하여, 공급한다. 또한, 예측부(104)는, 예측에 필요한 정보, 예를 들어 서브블록 분할에 관한 정보, 예측 모드나 움직임 벡터 등의 정보도, 예측 오차 데이터와 아울러 출력한다. 이하에서는 이 예측에 필요한 정보를 예측 정보라 호칭한다.
변환·양자화부(105)는, 예측부(104)로부터 공급된 예측 오차 데이터를 서브블록 단위로 직교 변환(주파수 변환)하여 변환 계수를 얻는다. 그리고, 변환·양자화부(105)는, 주목 서브블록의 변환 계수를, 양자화 매트릭스 보유부(103)가 보유하는 해당 양자화 매트릭스를 사용하여 양자화를 행하여, 양자화 계수를 얻는다.
역양자화·역변환부(106)는, 변환·양자화부(105)로부터 입력된 양자화 계수를, 양자화 매트릭스 보유부(103)가 보유하는 해당 양자화 매트릭스를 사용하여 역양자화함으로써 변환 계수를 재생하고, 또한 그 변환 계수를 역직교 변환하여 예측 오차 데이터를 재생한다.
화상 재생부(107)는, 예측부(104)로부터 입력된 예측 정보에 기초하여, 프레임 메모리(108)를 적절히 참조하여 예측 화상 데이터를 생성한다. 그리고, 화상 재생부(107)는, 생성한 예측 화상 데이터와, 역양자화·역변환부(106)로부터의 예측 오차 데이터로부터, 재생 화상 데이터를 생성하여, 다시 프레임 메모리(108)에 출력한다.
인루프 필터부(109)는, 프레임 메모리(108)에 저장된 화상 재생부(107)로부터의 재생 화상 데이터에 대하여 디블로킹 필터나 샘플 어댑티브 오프셋 등의 인루프 필터 처리를 행하고, 필터 처리 후의 화상 데이터를, 다시 프레임 메모리(109)에 저장한다.
부호화부(110)는, 변환·양자화부(105)로부터 입력된 양자화 계수 및 예측부(104)로부터 입력된 예측 정보를 부호화하여, 부호 데이터를 생성하여 출력한다.
양자화 매트릭스 부호화부(113)는, 양자화 매트릭스 보유부(103)로부터 입력된 양자화 매트릭스를 부호화하여, 양자화의 부호화 데이터를 생성하여 출력한다.
통합 부호화부(111)는, 양자화 매트릭스 부호화부(113)에서 부호화된 양자화 매트릭스의 부호화 데이터를 사용하여, 헤더 부호 데이터를 생성한다. 또한 통합 부호화부(111)는, 생성한 헤더 부호 데이터에, 부호화부(110)로부터 입력된 화상의 부호 데이터를 결합함으로써 비트 스트림을 형성하여, 출력 단자(112)를 통해 외부에 출력한다.
또한, 출력처는 특별히 상관없지만, 기록 매체 등의 기억 장치나, 네트워크상의 파일 서버 등이어도 상관없다.
이하, 실시 형태의 화상 부호화 장치에 있어서의 화상의 부호화 동작을 더욱 상세하게 설명한다.
본 실시 형태에서는 동화상 데이터를 프레임 단위로 입력하는 구성으로 하지만, 1프레임분의 정지 화상 데이터를 입력하는 구성으로 해도 상관없다. 또한, 본 실시 형태에서는, 설명을 용이하게 하기 위해, 인트라 예측 부호화의 처리만을 설명하지만, 이것에 한정되지 않고 인터 예측 부호화의 처리에 있어서도 적용 가능하다. 또한 본 실시 형태에서는 설명을 위해, 블록 분할부(101)에 있어서는 1프레임의 화상을 분할하는 기본 블록의 사이즈를 수평 16화소×수직 16화소(이하, 간단히 16×16화소로 표기함)로서 설명하지만, 이것은 어디까지나 예시이며, 다른 사이즈여도 상관없다.
화상의 부호화에 앞서, 양자화 매트릭스의 부호화가 행해진다.
처음에, 양자화 매트릭스 보유부(103)는, 부호화에서 이용하는 복수의 사이즈의 서브블록에 따른, 복수의 양자화 매트릭스를 생성하여, 보유한다. 도 8a의 참조 부호 800이 나타내는 굵은 프레임은, 8×8화소의 사이즈에 대응하는 양자화 매트릭스의 일례이며, 매트릭스 내의 값은 그 요소를 나타내고 있다. 양자화 매트릭스(800)의 좌측 위 코너의 0행 0열의 요소가 DC 성분(직류 성분)의 변환 계수에 대응하고 있고, 그 이외의 요소는 AC 성분(교류 성분)의 변환 계수에 각각 대응하고 있다. 이 양자화 매트릭스를 구성하는 각 요소의 결정 방법은 특별히 한정되지 않는다. 예를 들어, 소정의 초깃값을 사용해도 되고, 개별로 설정해도 된다. 또한, 화상의 특성에 따라서 생성되어도 상관없다.
마찬가지로, 양자화 매트릭스 보유부(103)는, 다른 서브블록의 사이즈에 따른 양자화 매트릭스도 생성한다. 도 8b는, 본 실시 형태에 있어서의 16×8화소의 직교 변환에 대응하는 양자화 매트릭스(801)이다. DC 성분에 대응하는 0행 0열의 요소는 "4", 그 우측 옆의 0행 1열의 요소는 "5"라고 하는 개별의 값이 설정되어 있다. 도 8b의 양자화 매트릭스(801)의 0행 1열의 요소는, 서브블록의 형상에 있어서 가장 저주파라고 추정되는 AC 성분의 변환 계수에 대응하는 요소이다. 한편, 나머지 요소는 부호량 삭감을 위해, 수평 방향으로 인접하는 2개의 요소에 대하여 1개의 값이 설정되는 구성으로 되어 있다. 예를 들어, 0행 2열 및 0행 3열의 요소에는 "9"라고 하는 동일한 값이 설정되고, 마찬가지로 1행 2열 및 1행 3열의 요소에는 "10"이라고 하는 동일한 값이 설정되어 있다.
도 8c는 본 실시 형태에 있어서의 8×16화소의 직교 변환에 대응하는 양자화 매트릭스(802)이다. DC 성분에 대응하는 0행 0열의 요소는 "4", 그 아래의 1행 0열의 요소는 "5"라고 하는 개별의 값이 설정되어 있다. 도 8c의 양자화 매트릭스(802)의 1행 0열의 요소는, 서브블록의 형상에 있어서 가장 저주파라고 추정되는 AC 성분의 변환 계수에 대응하는 요소이다. 한편, 나머지 요소는 부호량 삭감을 위해, 수직 방향으로 인접하는 2개의 요소에 대하여 1개의 값이 설정되는 구성으로 되어 있다. 예를 들어, 2행 0열 및 3행 0열의 요소에는 "9"라고 하는 동일한 값이 설정되고, 마찬가지로 2행 1열 및 3행 1열의 요소에는 "10"이라고 하는 동일한 값이 설정되어 있다.
도 8d는, 본 실시 형태에 있어서의 16×16화소의 직교 변환에 대응하는 양자화 매트릭스(803)이다. DC 성분에 대응하는 0행 0열의 요소는 "4", 그 우측 옆의 1행 0열 및 바로 아래의 0행 1열의 요소는 "5", 우측 아래의 1행 1열의 요소는 "6"이라고 하는 개별의 값이 DC 성분에 인접한 AC 성분에 대응하는 요소로서 설정되어 있다. 한편, 나머지 요소는 부호량 삭감을 위해, 수평 및 수직으로 인접하는 2×2의 4개의 요소에 대하여 1개의 값이 설정되는 구성으로 되어 있다.
상기와 같이, 양자화 매트릭스 내의 DC 성분에 대응하는 요소와, 그 부근의 복수의 저주파 성분에 대응하는 요소는 개별의 값을 설정하고, 나머지 요소에는 복수의 요소 단위로 값을 설정함으로써, 양자화 매트릭스의 부호량이 삭감되기 쉬워지고, 또한, 인간의 시각이 민감한 저주파 부분의 양자화를 세세하게 제어할 수 있다.
양자화 매트릭스 보유부(103)는, 이와 같이 하여 생성된 양자화 매트릭스(800 내지 803)가 보유되어 있다. 본 실시 형태에서는, 도 8a 내지 도 8d에 도시된 4종의 양자화 매트릭스(800 내지 803)가 이차원의 형상으로 보유되어 있는 것으로 하지만, 양자화 매트릭스 내의 각 요소는 물론 이것에 한정되지 않는다. 또한, 후술하는 예측 방법, 예를 들어 인트라 예측을 사용할지 인터 예측을 사용할지에 따라, 혹은 부호화 대상이 휘도 블록인지 색차 블록인지에 따라, 동일한 크기의 직교 변환에 대하여 복수의 양자화 매트릭스를 보유하는 것도 가능하다. 일반적으로, 인간의 시각 특성에 따른 양자화 처리를 실현하기 위해, 도 8a 내지 도 8d에 도시한 바와 같이 양자화 매트릭스(800 내지 803)의 좌측 상단 부분에 상당하는 저주파 부분의 요소는 작고, 우측 아래 부분에 상당하는 고주파 부분의 요소는 크게 되어 있다.
양자화 매트릭스 부호화부(113)는, 이차원 형상으로 저장되어 있는 양자화 매트릭스(800 내지 803)를 양자화 매트릭스 보유부(106)로부터 차례로 판독하고, 각 요소를 주사하여 차분을 계산하여, 일차원의 행렬을 생성한다. 본 실시 형태에서는, 도 8a 내지 도 8d에 도시된 양자화 매트릭스(800 내지 803) 각각이 부호화되게 된다. 구체적으로는, 양자화 매트릭스 부호화부(113)는, 먼저 도 8a에 도시된 양자화 매트릭스(800)에 대해서는, 도 10a에 도시된 화살표를 따른 주사 방법을 사용하여, 요소마다 주사순으로 인접하는 요소와의 차분을 계산해 간다. 예를 들어 도 8a에서 도시된 8×8화소분의 양자화 매트릭스(800)는 도 10a에서 도시된 대각선 스캔에 의해 주사되지만, 좌측 위 코너에 위치하는 최초의 요소 "4"의 다음은 그 바로 아래에 위치하는 요소 "9"가 주사되어, 차분인 +5가 계산된다. 또한, 양자화 매트릭스의 최초의 요소(본 실시 형태에서는 "4")의 부호화에는, 소정의 초깃값(예를 들어 "8")과의 차분을 계산하는 것으로 하지만, 물론 이것에 한정되지 않고, 임의의 값과의 차분이나, 최초의 요소의 값 그 자체를 사용해도 된다.
마찬가지로, 양자화 매트릭스 부호화부(113)는, 도 8b에 도시된 양자화 매트릭스(801)에 대해서는, 도 10b에 도시된 화살표를 따른 주사 방법을 사용하여, 요소마다 주사순으로 직전의 요소와의 차분을 계산하는 것으로 한다. 예를 들어 도 8b에 도시된 16×8화소분의 양자화 매트릭스(801)는 도 10b에 도시된 주사 방법에 의해 주사되지만, 좌측 상단에 위치하는 최초의 요소 「4」 다음은 그 바로 우측에 위치하는 요소 「5」가 주사되어, 차분인 +1이 부호화된다. 다음에 그 아래에 위치하는 요소 「9」가 주사되어, 차분인 +4가 부호화된다.
도 8c에 도시된 8×16화소분의 양자화 매트릭스(802)는 도 10c에 도시된 주사 방법에 의해 주사된다. 좌측 상단에 위치하는 최초의 요소 「4」 다음은 그 바로 아래에 위치하는 요소 「5」가 주사되어, 차분인 +1이 부호화된다. 그리고 그 아래에 위치하는 요소 「9」가 주사되어, 차분인 +4가 부호화된다.
도 8d에 도시된 16×16화소분의 양자화 매트릭스(803)에 있어서는, 도 10d에 도시된 주사 방법에 의해 주사된다. 좌측 상단에 위치하는 최초의 요소 4의 다음은, 그 바로 아래에 위치하는 요소 5가 주사되어, 차분인 +1이 부호화된다. 다음에 좌측 상단의 우측 옆에 위치하는 요소 5가 주사되어, 차분인 0이 부호화된다. 그리고, 그 아래에 위치하는 요소 6이 주사되어, 차분인 +1이 부호화된다.
이와 같이 하여, 본 실시 형태에서는, 도 8a 내지 도 8d의 양자화 매트릭스(800 내지 803)는, 각각 도 10a 내지 도 10d의 주사 방법을 사용하여, 도 11a 내지 도 11d에 도시된 일차원의 차분 행렬(1000 내지 1003)이 생성된다. 양자화 매트릭스 부호화부(113)는 또한 상기 차분 행렬을 부호화하여 양자화 매트릭스 부호 데이터를 생성한다. 본 실시 형태에서는 도 12a에 도시된 부호화 테이블을 사용하여 부호화하는 것으로 하지만, 부호화 테이블은 이것에 한정되지 않고, 예를 들어 도 12b에 도시된 부호화 테이블을 사용해도 된다. 이와 같이 하여 생성된 양자화 매트릭스 부호 데이터는 후단의 통합 부호화부(111)에 공급된다.
도 1로 되돌아가, 통합 부호화부(111)는, 화상 데이터의 부호화에 필요한 헤더 정보를 부호화하여, 양자화 매트릭스의 부호 데이터를 통합한다. 계속해서, 화상 데이터의 부호화를 설명한다.
블록 분할부(102)는, 입력 단자(101)로부터 입력된 1프레임분의 화상 데이터를, 복수의 기본 블록으로 분할하고, 기본 블록 단위의 화상 데이터를 예측부(104)에 공급한다. 앞서 설명한 바와 같이 본 실시 형태에서의 기본 블록의 사이즈는 16×16화소이다.
예측부(104)는, 블록 분할부(102)로부터 입력된 기본 블록 단위의 화상 데이터에 대해, 예측 처리를 실행한다. 구체적으로는, 예측부(104)는, 기본 블록을 더 미세한 서브블록으로 분할하는 서브블록 분할법을 결정하고, 또한 서브블록 단위로 수평 예측이나 수직 예측 등의 인트라 예측 모드를 결정한다. 또한, 서브블록 분할법은, 직전의 프레임 부호화 데이터양 등으로부터 결정하는 것으로 한다.
도 7a 내지 도 7d는 서브블록 분할 패턴의 예를 도시하고 있다. 도 7a 내지 도 7d의 외측의 굵은 프레임을 나타내는 참조 부호 700이 기본 블록을 나타내고 있고, 실시 형태의 경우에는 16×16화소의 사이즈이다. 그리고, 굵은 프레임 내의 직사각형이 서브블록을 나타내고 있다. 도 7a는 기본 블록=1서브블록의 예를 나타내고 있다. 도 7b는 종래의 정사각형 서브블록 분할의 일례를 나타내고 있고, 16×16화소의 기본 블록은, 8×8화소 사이즈의 4개의 서브블록으로 분할되어 있다. 한편, 도 7c, 도 7d는 직사각형 서브블록 분할의 일례를 나타내고 있고, 도 7c에서는 기본 블록이 8×16화소의 세로로 긴 2개의 서브블록으로, 도 7d에서는 16×8화소의 가로로 긴 2개의 서브블록으로 분할되어 있다.
본 실시 형태에서는, 16×16화소의 기본 블록을, 분할하지 않고(도 7a), 수직 방향으로 긴 2개의 서브블록으로 분할하고(도 7c), 수평 방향으로 긴 2개의 서브블록으로 분할하고(도 7d), 및 4분목 분할하는(도 7b) 것 중 어느 것이 결정되는 것으로 한다. 단, 서브블록 분할 방법은 이것에 한정되지 않는다. 도 7e, 도 7f와 같이 1:2:1의 비로 분할하는 3분목 분할을 사용해도 상관없다.
결정된 인트라 예측 모드 및 부호화 완료된 화소로부터 예측 화상 데이터가 생성된다. 그리고, 예측부(104)는, 서브블록 단위로, 입력된 화상 데이터와, 생성된 예측 화상 데이터의 차분인 예측 오차 데이터를 생성하고, 그 예측 오차 데이터를 변환·양자화부(105)에 공급한다. 또한, 서브블록 분할이나 인트라 예측 모드 등의 정보는 예측 정보로서, 부호화부(110), 화상 재생부(107)에 공급된다.
변환·양자화부(105)에서는, 입력된 예측 오차 데이터에 대하여 직교 변환·양자화를 행하여, 양자화 계수를 생성한다. 구체적으로는, 변환·양자화부(105)는, 먼저, 서브블록의 사이즈에 대응한 직교 변환 처리를 실시하여, 직교 변환 계수를 생성한다. 그리고, 변환·양자화부(105)는, 서브블록 단위로, 직교 변환 계수를 양자화 매트릭스 보유부(103)에 저장되어 있는, 대응하는 사이즈의 양자화 매트릭스를 사용하여 양자화하여, 양자화 계수를 생성한다. 본 실시 형태에서는, 도 7a에 대응한 16×16화소의 서브블록 분할에 대해서는 도 8d의 양자화 매트릭스가 사용되는 것으로 한다. 마찬가지로 하여, 도 7c의 8×16화소의 서브블록 분할에 대해서는 도 8c, 도 7d의 16×8의 서브블록 분할에 대해서는 도 8b의 양자화 매트릭스가 사용되는 것으로 한다. 또한, 도 7b에 도시한, 수직, 수평 모두 기본 블록의 1/2의 사이즈의 서브블록 분할(4분목 분할)에는, 도 8a에서 도시된 양자화 매트릭스가 사용되는 것으로 한다. 변환·양자화부(105)는, 생성된 양자화 계수(양자화 후의 변환 계수)를 부호화부(110) 및 역양자화·역변환부(106)에 공급한다.
역양자화·역변환부(106)는, 서브블록 단위로, 입력된 양자화 계수를, 양자화 매트릭스 보유부(103)에 저장되어 있는, 대응하는 양자화 매트릭스를 사용하여 역양자화함으로써, 변환 계수를 재생한다. 그리고, 역양자화·역변환부(106)는, 서브블록 단위로, 재생된 변환 계수를 역직교 변환하여 예측 오차 데이터를 재생하고, 재생된 예측 오차 데이터를 화상 재생부(107)에 공급한다.
화상 재생부(107)는, 서브블록 단위로, 예측부(104)로부터 입력되는 예측 정보에 기초하여, 프레임 메모리(108)를 적절히 참조하여, 예측 화상 데이터를 재생한다. 화상 재생부(107)는, 서브블록 단위로, 재생된 예측 화상 데이터와, 역양자화·역변환부(106)로부터 입력된 예측 오차 데이터를 가산함으로써, 서브블록의 화상 데이터를 재생하고, 재생한 화상 데이터를 프레임 메모리(108)에 저장한다.
인루프 필터부(109)는, 서브블록 단위로, 프레임 메모리(108)로부터 재생 화상 데이터를 판독하여, 디블로킹 필터 등의 인루프 필터 처리를 행한다. 그리고, 인루프 필터부(109)는, 필터 처리된 화상 데이터를 프레임 메모리(108)에 재저장한다.
부호화부(110)는, 서브블록 단위로, 변환·양자화부(105)에서 생성된 양자화 계수, 예측부(104)로부터 입력된 예측 정보를 엔트로피 부호화하여, 부호 데이터를 생성한다. 엔트로피 부호화의 방법은 특별히 상관없지만, 골롬 부호화, 산술 부호화, 허프만 코딩화 등을 사용할 수 있다. 생성된 부호 데이터는 통합 부호화부(111)에 공급된다.
통합 부호화부(111)에서는, 전술한 헤더의 부호 데이터와 함께 부호화부(110)로부터 입력된 부호 데이터 등을 다중화하여 비트 스트림을 형성한다. 최종적으로는, 비트 스트림은 단자(112)로부터 외부에 출력된다.
도 6a는 제1 실시 형태에서 출력되는 비트 스트림의 데이터 구조예를 나타내고 있다. 시퀀스 헤더에 도 8a 내지 도 8d의 양자화 매트릭스(800 내지 803)에 대응하는 부호 데이터가 포함되고, 각 요소의 부호화 결과로 구성되어 있다. 단, 부호화되는 위치는 이것에 한정되지 않고, 픽처 헤더부나 그 밖의 헤더부에 부호화되는 구성을 취해도 물론 상관없다. 또한, 1개의 시퀀스 중에서 양자화 매트릭스의 변경을 행하는 경우, 양자화 매트릭스를 새롭게 부호화함으로써 갱신하는 것도 가능하다. 이때, 모든 양자화 매트릭스를 재기입해도 되고, 재기입할 양자화 매트릭스의 변환 블록 사이즈를 지정함으로써 그 일부를 변경하도록 하는 것도 가능하다.
이하, 제1 실시 형태에 관한 화상 부호화 장치에 있어서의 1프레임의 부호화 처리의 처리 수순을 도 3의 흐름도를 참조하여 설명한다. 또한, 이하의 설명에 있어서의 각 공정은, 그 주체가 제어부(150)에 의한 제어 하에서 각각의 처리를 실행하는 것으로 한다.
먼저, 화상의 부호화에 앞서, S301에서, 양자화 매트릭스 보유부(103)는, 복수 종류의 양자화 매트릭스를 생성하여, 보유한다. 본 실시 형태에서는, 양자화 매트릭스 보유부(103)는 도 8a 내지 도 8d에 도시된 4종류의 양자화 매트릭스(800 내지 803)를 생성하여, 보유하는 것으로 한다.
S302에서, 양자화 매트릭스 부호화부(113)는, S301에서 생성·보유된 양자화 매트릭스를 주사하여 각 요소의 차분을 산출하여, 1차원의 차분 행렬을 생성한다. 본 실시 형태에서는, 양자화 매트릭스 부호화부(113)는, 도 8a 내지 도 8d의 양자화 매트릭스(800 내지 803)를, 도 10a 내지 도 10d의 주사순에 따라서, 연속하는 2개의 요소의 차분값을 구하여, 도 11a 내지 도 11d에 도시된 차분값의 1차원 행렬을 생성한다. 그리고, 양자화 매트릭스 부호화부(113)는, 생성된 행렬에 있어서의 개개의 차분값을, 도 12a(또는 도 12b)에 도시한 부호화 테이블을 참조하여 2진 부호를 생성하여, 부호화 데이터를 생성해 간다.
S303에서, 통합 부호화부(111)는, 생성된 양자화 매트릭스 부호 데이터와 함께, 화상 데이터의 부호화에 필요한 헤더 정보를 생성하여, 출력한다.
S304에서, 블록 분할부(102)는, 프레임 단위의 입력 화상을 기본 블록 단위로 분할한다. 그리고, S305에서, 예측부(104)는, S304에서 생성된 1개의 기본 블록의 화상 데이터를 입력하여, 1 이상의 서브블록으로의 변환을 행한다. 그리고, 예측부(104)는, 각 서브블록에 대한 예측 처리를 실행하여, 서브블록 분할 정보나 인트라 예측 모드 등의 예측 정보 및 예측 화상 데이터를 생성한다. 그리고, 예측부(104)는, 각 서브블록의 화상 데이터와 그 예측 화상 데이터로부터 예측 오차 데이터를 산출한다.
S306에서, 변환·양자화부(105)는, S305에서 산출된 각 서브블록의 예측 오차 데이터 각각을 직교 변환하여 변환 계수를 생성한다. 또한, 변환·양자화부(105)는, S301에서 생성·보유된 양자화 매트릭스를 사용하여, 각 서브블록의 예측 오차 데이터를 양자화하여, 양자화 계수를 생성한다. 본 실시 형태에서는, 도 7a에 대응한 서브블록 분할로 얻은 각 서브블록에 대해서는 도 8d의 양자화 매트릭스(803)가 사용되는 것으로 한다. 마찬가지로 하여, 도 7c의 서브블록 분할로 얻은 각 서브블록에 대해서는 도 8c의 양자화 매트릭스(802)가 사용된다. 도 7d의 서브블록 분할로 얻은 각 서브블록에 대해서는 도 8b의 양자화 매트릭스(801)가 사용된다. 또한, 도 7b와 같이 4분목 분할된 4개 서브블록에 대해서는 도 8a에 도시된 양자화 매트릭스(800)가 사용되는 것으로 한다.
S307에서, 역양자화·역변환부(106)는, S305에서 생성된 각 서브블록의 양자화 계수를, S301에서 생성·보유된 양자화 매트릭스를 사용하여 역양자화를 행하여, 변환 계수를 재생한다. 그리고, 역양자화·역변환부(106)는, 또한, 각 서브블록의 변환 계수에 대하여 역직교 변환하여, 서브블록마다의 예측 오차 데이터를 재생한다.
S308에서, 화상 재생부(107)는, S305에서 생성된 예측 정보에 기초하여, 서브블록마다의 예측 화상 데이터를 재생한다. 화상 재생부(107)는, 또한 재생된 각 서브블록의 예측 화상 데이터에, S307에서 생성된 대응하는 서브블록의 예측 오차 데이터를 가산함으로써, 서브블록마다의 화상 데이터를 재생한다.
S309에서, 부호화부(110)는, 서브블록마다, S305에서 생성된 예측 정보, 및 S306에서 생성된 양자화 계수를 부호화하여, 부호 데이터를 생성한다. 또한, 다른 부호 데이터도 포함시켜, 비트 스트림을 생성한다.
S310에서, 제어부(150)는, 프레임 내의 모든 기본 블록의 부호화가 종료되었는지 여부의 판정을 행하여, 종료되었으면 S311로 진행하고, 그렇지 않으면 다음 기본 블록을 대상으로 하는 부호화를 행하기 위해, 처리를 S305로 되돌린다.
S311에서, 인루프 필터부(109)는, S308에서 재생된 화상 데이터에 대해, 인루프 필터 처리를 행하여, 필터 처리된 화상을 생성하고, 처리를 종료한다.
상기 처리에 있어서, 동화상의 2번째 이후의 프레임의 부호화를 행하는 경우에는, S304 내지 S311을, 부호화해야 할 최후의 프레임의 입력까지 반복하게 된다.
이상의 구성과 동작에 의해, 특히 S302에 있어서 양자화 매트릭스의 처음의 소정 수의 요소(DC 성분용의 요소 및 그것에 인접하는 비교적 저주파 성분용의 요소)에 대해서는 개별로 부호화하고, 나머지 요소를 복수의 요소 단위로 부호화함으로써, 양자화 매트릭스의 부호량을 삭감할 수 있다. 또한, 인간의 시각이 민감한 저주파 부분의 양자화를 세세하게 제어할 수도 있다.
또한, 본 실시 형태에서는, 도 8a 내지 도 8d의 4종류의 양자화 매트릭스(800 내지 803) 모두를 부호화하는 구성으로 하였지만, 4종류의 양자화 매트릭스를 독립적으로 부호화하는 대신에, 복호측의 장치에 있어서, 다른 양자화 매트릭스를 사용하여 당해 양자화 매트릭스를 생성하는 구성으로 해도 상관없다. 예를 들어, 16×8의 양자화 매트릭스 자체를 부호화하지 않고, 부호화된 16×16의 양자화 매트릭스를 사용하여 생성하는 구성으로 한 경우, 복호측의 장치에 있어서, 도 8d의 양자화 매트릭스(803)로부터 일부의 요소를 씨닝하여 도 8b의 양자화 매트릭스(801)를 생성하게 된다. 마찬가지로, 복호측의 장치에 있어서, 도 8d의 양자화 매트릭스(803)로부터 일부의 요소를 씨닝하여 도 8c의 양자화 매트릭스(802)를 생성하는 것도 가능하다. 또한, 도 8b의 0행 1열의 요소 「5」나 도 8c의 1행 0열의 요소 「5」의 산출 방법을 부호화측 및 복호측의 장치간에 있어서 정해 두면, 도 8a의 양자화 매트릭스(800)를 사용하여 도 8b의 양자화 매트릭스(801)나 도 8c의 양자화 매트릭스(802)를 생성하는 것도 가능하다. 이 경우의 산출 방법은 특별히 한정되지 않고, 0행 0열의 요소 「4」에 특정 차분값(본 실시 형태에서는 +1)을 가산하여 산출해도 되고, 주변의 요소와의 보간을 사용하여 산출해도 된다. 또한, 도 8c에 대해서는, 변환 계수의 DC 성분에 대응하는 요소의 우측 및 하측의 요소에 대해서는, DC 성분에 대응하는 요소에 +1을 가하고, 우측 아래의 요소에 대해서는 +2를 가하고 있다.
또한, 16×16의 양자화 매트릭스의 요소와 함께, 도 8b의 0행 1열의 요소 「5」나 도 8c의 1행 0열의 요소 「5」 자체를 부호화해도 된다.
이에 의해, 양자화 매트릭스의 부호량을 더욱 삭감한 비트 스트림을 부호화할 수 있다.
나아가, 양자화 매트릭스마다 다른 양자화 매트릭스로부터 생성할지, 각 요소를 부호화할지를 선택하여, 식별자를 헤더 내에 부호화하는 구성으로 해도 상관없다. 예를 들어, 양자화 매트릭스의 각 요소를 다른 양자화 매트릭스로부터 생성할지, 개별로 부호화할지를 나타내는 정보를, 양자화 매트릭스 부호화 방법 정보 부호로서 헤더 부분에 부호화하여, 도 6b에 도시된 비트 스트림을 생성하는 구성으로 해도 된다. 이에 의해, 서브블록의 크기에 따른 화질 제어를 우선한 비트 스트림인지, 양자화 매트릭스의 부호량이 보다 적은 비트 스트림인지를 선택적으로 생성할 수 있다.
또한 본 실시 형태에서는, 도 7a 내지 도 7d의 서브블록 분할·직교 변환에 대응하는 도 8a 내지 도 8d의 양자화 매트릭스가 사용되는 구성으로 하였지만, 사용되는 직교 변환 사이즈나 양자화 매트릭스는 이것에 한정되지 않는다. 예를 들어, 도 7e, 도 7f와 같이 1:2:1의 비로 분할하는 3분목 분할이 더 사용된 경우, 도 9a, 도 9b의 양자화 매트릭스(900, 901)를 더 사용하는 구성으로 해도 상관없다.
이상 설명한 바와 같이, 실시 형태에 있어서의 양자화 매트릭스 보유부(103)는, 기본 블록(실시 형태에서는 16×16의 사이즈)의 수평, 수직 방향 중 어느 한쪽만이 동일한 사이즈를 갖고, 다른 쪽이 다른 도 8b, 도 8c에 도시한 바와 같은 양자화 매트릭스(801, 802)의 긴 변 방향에 대해서는, 직류 성분에 대응하는 요소의 저장 위치로부터 미리 설정된 소정 범위(실시 형태에서는 거리 "1"의 범위)에서는, 각 변환 계수에 대응하는 위치마다의 요소를 독립적으로 보유하고, 긴 변 방향에 있어서의 소정 범위를 초과하는 위치에서는, 변환 계수의 미리 설정된 개수 단위(실시 형태에서는 2개)로 동일한 요소를 보유한다. 한편, 도 8b, 도 8c에 도시한 바와 같은 양자화 매트릭스의 짧은 변 방향에 대해서는, 변환 계수마다 양자화 매트릭스의 요소가 배치된다.
그리고, 수평, 수직 방향 모두 기본 블록의 사이즈와 동일한 사이즈인 양자화 매트릭스에 대해서는, 도 8d에 도시한 바와 같이, 직류 성분에 대응하는 요소의 위치 및 그 위치에 대하여 우측, 아래, 우측 아래에 인접하는 4개의 요소(실시 형태에서는 거리 "1"의 범위)를 대응하는 변환 계수마다 개별로 보유한다. 그리고, 그 이외의 변환 계수에 대해서는, 서로 인접하는 4개의 변환 계수마다 1개의 동일한 요소를 보유한다. 그리고, 도 8a에 도시한 바와 같은 8x8의 사이즈의 양자화 매트릭스의 경우, 변환 계수마다 요소를 보유하게 된다.
이와 같이 양자화 매트릭스의 사이즈에 따라서, 변환 계수에 대한 요소의 할당을 적응적으로 변화시키고 있기 때문에, 양자화 매트릭스의 부호량을 억제할 수 있고, 또한, 화질 열화를 억제할 수 있게 된다.
또한, 양자화 매트릭스의 요소를 부호화할 때의 도 10a 내지 도 10d에 도시한 바와 같은 주사순에 기초하여 「소정 범위」를 정의해도 된다. 8x16 혹은 16x8의 변환 계수의 블록 사이즈에 대해서는, 도 10b, 도 10c의 주사가 양자화 매트릭스의 요소의 부호화/복호를 위해 행해지게 된다. 이때, 이후에 기재되는 복호 장치의 처리에 있어서, 변환 계수의 DC 성분에 대응하는 요소로부터 1주사(거리 "1"의 범위)하여 얻어지는 요소를 변환 계수마다 할당을 행하고, 그 이후에는 2개의 변환 계수마다 1개의 요소가 할당되게 된다. 즉, 도 8b, 도 8c에 도시한 바와 같은 양자화 매트릭스(801, 802)가 복호 장치의 처리에 있어서 얻어지게 된다. 또한, 16x16의 변환 계수의 블록 사이즈의 경우, 변환 계수의 DC 성분에 대응하는 요소로부터 3주사(거리 "3"의 범위)하여 얻어지는 요소를 변환 계수마다 할당을 행하고, 그 이후에는 4개의 변환 계수마다 1개의 요소가 할당되게 된다. 즉, 도 8d에 도시한 바와 같은 양자화 매트릭스(803)가 얻어지게 된다. 또한, 8x8의 변환 계수의 블록 사이즈의 경우, 변환 계수의 DC 성분에 대응하는 요소로부터 모든 주사에 의해 얻어지는 요소가 변환 계수마다 할당되게 된다. 즉, 도 8a에 도시한 바와 같은 양자화 매트릭스(800)가 복호 장치의 처리에 있어서 얻어지게 된다. 이와 같이, 양자화 매트릭스에 대한 주사에 기초하여, 양자화 매트릭스의 사이즈에 대하여 적응적으로 변환 계수에 대한 요소의 할당을 변화시켜도 된다. 이 경우, 요소간의 위치 관계를 특별히 고려할 필요가 없어진다.
[제2 실시 형태]
제2 실시 형태에서는, 상기 제1 실시 형태의 화상 부호화 장치에서 생성된 부호화 데이터를 복호하는 화상 복호 장치를 설명한다. 도 2는 그 화상 복호 장치의 블록 구성도이다.
화상 복호 장치는, 이하에 설명하는 구성 요소를 제어하고, 장치 전체의 제어를 담당하는 제어부(250)를 갖는다. 이 제어부(250)는, CPU, CPU가 실행하는 프로그램이나 각종 파라미터 등을 기억하고 있는 ROM, CPU의 워크 에어리어로서 사용되는 RAM을 포함한다. 또한, ROM이나 다른 불휘발성 기억 장치에 저장된 OS(오퍼레이팅 시스템), 프로그램, 파라미터를 RAM에 로드한 후에, OS의 제어 하에서 프로그램을 실행하도록 해도 된다.
또한, 화상 복호 장치는, 입력 단자(201), 분리 복호부(202), 복호부(203), 역양자화·역변환부(204), 화상 재생부(205), 프레임 메모리(206), 인루프 필터부(207), 출력 단자(208), 및 양자화 매트릭스 복호부(209)를 갖는다.
상기 화상 복호 장치의 구성에 있어서의 화상 복호 장치의 구성과 그 동작을 이하에 설명한다. 또한, 화상 복호 장치는, 앞서 설명한 화상 부호화 장치가 생성한 비트 스트림을 프레임 단위로 입력하는 구성으로 되어 있지만, 1프레임분의 정지 화상 비트 스트림을 입력하는 구성으로 해도 상관없다. 또한, 본 제2 실시 형태에서는 설명을 용이하게 하기 위해, 인트라 예측 복호 처리만을 설명하지만, 이것에 한정되지 않고 인터 예측 복호 처리에 있어서도 적용 가능하다.
분리 복호부(202)는, 입력 단자(201)를 통해 부호화 비트 스트림을 입력하여, 비트 스트림으로부터 복호 처리에 관한 정보나 계수에 관한 부호 데이터로 분리하고, 또한 비트 스트림의 헤더부에 존재하는 부호 데이터를 복호한다. 본 실시 형태의 분리 복호부(202)는, 부호화 비트 스트림으로부터 양자화 매트릭스의 부호화 데이터를 분리하여, 그 부호화 데이터를 양자화 매트릭스 복호부(209)에 공급한다. 또한, 분리 복호부(202)는, 부호화 비트 스트림으로부터 화상 데이터의 부호화 데이터를 분리하여, 복호부(203)에 공급한다. 요컨대, 분리 복호부(202)는, 도 1의 통합 부호화부(111)와 반대의 동작을 행한다.
양자화 매트릭스 복호부(209)는, 분리 복호부(202)로부터 공급된 양자화 매트릭스의 부호화 데이터를 복호하여, 양자화 매트릭스(800 내지 803)를 재생, 보유한다.
복호부(203)는, 분리 복호부(202)로부터 입력된 화상 데이터의 부호 데이터를 복호하여, 양자화 계수 및 예측 정보를 재생한다.
역양자화·역변환부(204)는, 도 1의 역양자화·역변환부(106)와 마찬가지로, 재생된 양자화 매트릭스(800 내지 803) 중 어느 것을 사용하여 양자화 계수에 역양자화를 행하여 변환 계수를 얻고, 또한 역직교 변환을 행하여, 예측 오차 데이터를 재생한다.
화상 재생부(205)는, 입력된 예측 정보에 기초하여 프레임 메모리(206)를 적절히 참조하여 예측 화상 데이터를 생성한다. 그리고, 화상 재생부(205)는, 이 예측 화상 데이터에, 역양자화·역변환부(204)에서 재생된 예측 오차 데이터를 가산함으로써, 화상 데이터를 재생하여, 프레임 메모리(206)에 저장한다.
인루프 필터부(207)는, 도 1의 인루프 필터부(109)와 마찬가지로, 프레임 메모리(207)에 저장된 재생 화상 데이터에 대해, 디블로킹 필터 등의 인루프 필터 처리를 행하고, 필터 처리된 화상 데이터를 프레임 메모리에 재저장한다. 그리고, 출력 단자(208)는, 재생된 화상 데이터를 외부 장치(예를 들어 표시 장치)에 출력한다.
다음에, 도 2의 화상 복호 장치에 있어서의 각 구성 요소의 동작을 더욱 상세하게 설명한다.
본 제2 실시 형태에서는, 제1 실시 형태에서 생성된 비트 스트림을 프레임 단위로 입력하는 구성으로 되어 있지만, 1프레임분의 정지 화상 비트 스트림을 입력하는 구성으로 해도 상관없다. 또한, 본 실시 형태에서는 설명을 용이하게 하기 위해, 인트라 예측 복호 처리만을 설명하지만, 이것에 한정되지 않고 인터 예측 복호 처리에 있어서도 적용 가능하다.
입력 단자(201)를 통해 입력된 1프레임분의 비트 스트림은 분리 복호부(202)에 공급된다. 분리 복호부(202)는, 비트 스트림으로부터 복호 처리에 관한 정보나 계수에 관한 부호 데이터로 분리하여, 비트 스트림의 헤더부에 존재하는 부호 데이터를 복호한다. 보다 구체적으로는, 분리 복호부(202)는, 양자화 매트릭스의 부호 데이터를 재생한다. 본 실시 형태의 분리 복호부(202)는, 먼저, 도 6a에 도시된 비트 스트림의 시퀀스 헤더로부터 양자화 매트릭스의 부호 데이터를 추출하여, 양자화 매트릭스 복호부(209)에 공급한다. 분리 복호부(202)는, 계속해서, 픽처 데이터의 기본 블록의 서브블록 단위의 부호 데이터를 재생하여, 복호부(203)에 공급한다.
양자화 매트릭스 복호부(209)는, 먼저 입력된 양자화 매트릭스의 부호 데이터를 복호하여, 복수의 일차원의 차분 행렬을 재생한다. 본 실시 형태에서는, 제1 실시 형태와 마찬가지로, 도 12a(또는 도 12b)에 도시된 부호화 테이블을 사용하여 복호하는 것으로 하지만, 부호화 테이블은 이것에 한정되지 않고, 제1 실시 형태와 동일한 것을 사용하는 한은 다른 부호화 테이블을 사용해도 된다. 또한 양자화 매트릭스 복호부(209)는, 재생된 복수의 일차원의 차분 행렬을 역주사하여, 복수의 이차원의 양자화 매트릭스를 재생한다. 여기에서는 제1 실시 형태의 양자화 매트릭스 부호화부(113)의 주사와는 반대의 동작을 행한다. 즉, 본 실시 형태의 양자화 매트릭스 복호부(209)는, 도 11a 내지 도 11d에 도시된 차분 행렬(1000 내지 1003)은 각각, 도 10a 내지 도 10d에 도시된 주사 방법을 사용하여, 도 8a 내지 도 8d에 도시된 양자화 매트릭스(800 내지 803)를 재생하여, 보유한다.
본 실시 형태에서의 구체적인 양자화 매트릭스의 복호 처리를, 도 8b의 16×8의 양자화 매트릭스(801)의 복호 처리를 예로 들어 설명한다. 양자화 매트릭스 복호부(209)는, 도 11b에 도시된 차분 행렬(1001)을 도 10b에 도시된 주사 방법을 사용하여, 도 8b에 도시된 양자화 매트릭스를 재생한다. 양자화 매트릭스 복호부(209)는, 초깃값인 "8"과, 도 11b의 최초의 차분값 "-4"로부터, 최초의 요소인 「4」를 산출하여, 도 10b의 최초의 주사 위치인 0행 0열의 위치의 요소의 값 "4"를 결정하고, 도 8b의 0행 0열의 부분에 요소 "4"를 배치한다. 다음에, 양자화 매트릭스 복호부(209)는, 도 8b의 0행 0열의 요소 "4"와, 도 11b의 2번째의 차분값 "1"로부터 2번째의 요소인 "5"를 산출하여, 도 10b의 2번째의 주사 위치인 0행 1열의 부분에 "5"를 배치한다. 마찬가지로 하여, 도 8b의 0행 1열의 요소 "5"와 도 10b의 3번째의 차분값 "4"로부터 3번째의 요소인 "9"를 산출하여, 도 8b의 3번째의 주사 위치인 1행 0열 및 1행 1열의 부분에 "9"를 배치한다. 마찬가지의 처리를 반복하여, 도 8b에 도시된 양자화 매트릭스(801)를 재생할 수 있다.
이렇게 하여, 양자화 매트릭스의 저주파 성분에 대응하는 복수의 요소에 개별의 값을 배치하고, 나머지 요소에는 복수의 요소 단위로 값을 배치함으로써, 부호량을 삭감하면서, 인간의 시각이 민감한 저주파 부분의 양자화를 세세하게 제어한 비트 스트림을 복호할 수 있다.
도 2로 되돌아가, 복호부(203)는, 기본 블록 내의 각 서브블록의 부호 데이터를 복호하여, 양자화 계수 및 예측 정보를 재생한다. 복호부(203)는, 재생된 양자화 계수를 역양자화·역변환부(204)에, 재생된 예측 정보를 화상 재생부(205)에 각각 공급한다.
역양자화·역변환부(204)는, 서브블록 단위로, 입력된 양자화 계수에 대해, 양자화 매트릭스 복호부(209)에서 재생, 보유하고 있는 양자화 매트릭스(800 내지 803) 중 1개를 사용하여 역양자화를 행하여, 직교 변환 계수를 생성한다. 역양자화·역변환부(204)는 또한, 서브블록 단위로, 생성한 직교 변환 계수에 대하여 역직교 변환을 실시하여 예측 오차 데이터를 재생하여, 화상 재생부(205)에 공급한다. 이때, 복호 대상의 서브블록의 크기에 따라서 사용되는 양자화 매트릭스가 정해지고, 본 실시 형태에서는, 도 7a에 대응한 서브블록 분할에 대해서는 도 8d의 양자화 매트릭스(803)가 사용되는 것으로 한다. 마찬가지로 하여, 도 7c의 서브블록 분할에 대해서는 도 8c의 양자화 매트릭스(802)가 사용된다. 도 7d의 서브블록 분할에 대해서는 도 8b의 양자화 매트릭스(801)가 사용되는 것으로 한다. 또한, 도 7b의 4분목의 서브블록 분할에는 도 8a에서 도시된 양자화 매트릭스가 사용되는 것으로 한다.
화상 재생부(205)는, 서브블록 단위로, 복호부(203)로부터 입력된 예측 정보에 기초하여, 프레임 메모리(206)를 적절히 참조하여, 예측 화상 데이터를 재생한다. 그리고, 화상 재생부(205)는, 이 예측 화상 데이터에, 역양자화·역변환부(204)로부터 공급된 예측 오차 데이터를 가산함으로써, 서브블록의 화상 데이터를 재생하여, 프레임 메모리(206)에 저장한다. 이 프레임 메모리(206)에 저장된 화상 데이터는, 다른 서브블록을 복호할 때의 예측 참조 후보가 된다.
인루프 필터부(207)는, 도 1의 인루프 필터부(109)와 마찬가지로, 서브블록 단위로, 프레임 메모리(206)로부터 재생 화상 데이터를 판독하여, 디블로킹 필터 등의 인루프 필터 처리를 행한다. 그리고, 인루프 필터부(207)는, 필터 처리된 화상은 다시 프레임 메모리(206)에 저장한다.
프레임 메모리(206)에 저장된 재생 화상은, 최종적으로는 단자(208)로부터 외부에 출력된다.
이하, 제2 실시 형태에 관한 화상 복호 장치에 있어서의 1프레임의 복호 처리의 처리 수순을 도 4의 흐름도를 참조하여 설명한다. 또한, 이하의 설명에 있어서의 각 공정은, 그 주체가 제어부(250)에 의한 제어 하에서, 각각의 처리를 실행하는 것으로 한다.
먼저, S401에서, 분리 복호부(202)는, 비트 스트림으로부터 복호 처리에 관한 정보나 계수에 관한 부호 데이터로 분리하여, 헤더 부분의 부호 데이터를 복호한다. 보다 구체적으로는, 양자화 매트릭스의 부호 데이터를 재생한다.
S402에서, 양자화 매트릭스 복호부(209)는, S401에서 재생된 양자화 매트릭스의 부호 데이터를 복호하여, 도 11a 내지 도 11d에서 도시된 바와 같은 일차원의 차분 행렬(1000 내지 1003)을 재생한다. 또한 양자화 매트릭스 복호부(209)는, 재생된 일차원의 차분 행렬(1000 내지 1003)을 역주사하여, 이차원의 양자화 매트릭스를 재생한다. 즉, 양자화 매트릭스 복호부(209)는, 도 11a 내지 도 11d에 도시된 차분 행렬(1000 내지 1003)을 각각, 도 10a 내지 도 10d에 도시된 주사 방법을 사용하여, 도 8a 내지 도 8d에 도시된 양자화 매트릭스(800 내지 803)를 재생하여, 보유한다. 또한, 도 10a 내지 도 10d에 도시된 주사 방법 및 양자화 매트릭스의 요소의 변환 계수에 대한 할당은 복호측 장치에 있어서 기지의 것으로 한다. 즉, 변환 계수의 DC 성분에 대응하는 요소로부터의 거리에 따라서, 양자화 매트릭스의 각 요소가 변환 계수에 할당된다.
즉, 기본 블록(실시 형태에서는 16×16의 사이즈)의 수평, 수직 방향 중 어느 한쪽만이 동일한 사이즈를 갖고, 다른 쪽이 다른 도 8b, 도 8c에 도시한 바와 같은 양자화 매트릭스의 긴 변 방향에 대해서는, 직류 성분에 대응하는 요소의 저장 위치로부터 미리 설정된 소정 범위(실시 형태에서는 거리 "1"의 범위)에서는, 양자화 매트릭스 복호부(209)는, 각 변환 계수에 대응하는 위치마다 요소 1개의 요소를 할당하고, 긴 변 방향에 있어서의 소정 범위를 초과하는 위치에서는, 변환 계수의 미리 설정된 개수 단위(실시 형태에서는 2개)로 동일한 요소를 할당한다. 한편, 도 8b, 도 8c에 도시한 바와 같은 양자화 매트릭스의 짧은 변 방향에 대해서는, 변환 계수마다 양자화 매트릭스의 요소를 할당한다.
그리고, 수평, 수직 방향 모두 기본 블록의 사이즈와 동일한 사이즈인 양자화 매트릭스에 대해서는, 양자화 매트릭스 복호부(209)는, 도 8d에 도시한 바와 같이, 직류 성분에 대응하는 요소의 위치 및 그 위치에 대하여, 우측, 아래, 우측 아래에 인접하는 4개의 요소(실시 형태에서는 거리 "1"의 범위)를 대응하는 변환 계수마다 개별로 할당한다. 그리고, 그 이외의 변환 계수에 대해서는, 서로 인접하는 4개의 변환 계수마다 1개의 동일한 요소를 할당한다. 그리고, 도 8a에 도시한 바와 같은 8x8의 사이즈의 양자화 매트릭스(800)의 경우, 변환 계수마다 요소를 보유하게 된다.
이와 같이 양자화 매트릭스의 사이즈에 따라서, 변환 계수에 대한 요소의 할당을 적응적으로 변화시키고 있기 때문에, 양자화 매트릭스의 부호량을 억제할 수 있고, 또한, 화질 열화를 억제할 수 있게 된다.
또한, 양자화 매트릭스의 요소를 복호할 때의 도 10a 내지 도 10d에 도시한 바와 같은 주사순에 기초하여 「소정 범위」를 정의해도 된다. 8x16 혹은 16x8의 변환 계수의 블록 사이즈에 대해서는, 도 10b, 도 10c의 주사가 양자화 매트릭스의 요소의 복호를 위해 행해지게 된다. 이때, 양자화 매트릭스 복호부(209)는, 변환 계수의 DC 성분에 대응하는 요소로부터 1주사(거리 "1"의 범위) 하여 얻어지는 요소를 변환 계수마다 할당을 행하고, 그 이후에는 2개의 변환 계수마다 1개의 요소를 할당한다. 즉, 도 8b, 도 8c에 도시한 바와 같은 양자화 매트릭스(801, 802)가 얻어지게 된다. 또한, 16x16의 변환 계수의 블록 사이즈의 경우, 양자화 매트릭스 복호부(209)는, 변환 계수의 DC 성분에 대응하는 요소로부터 3주사(거리 "3"의 범위)하여 얻어지는 요소를 변환 계수마다 할당을 행하고, 그 이후에는 4개의 변환 계수마다 1개의 요소를 할당한다. 즉, 도 8d에 도시한 바와 같은 양자화 매트릭스(803)가 얻어지게 된다. 또한, 8x8의 변환 계수의 블록 사이즈의 경우, 양자화 매트릭스 복호부(209)는, 변환 계수의 DC 성분에 대응하는 요소로부터 모든 주사에 의해 얻어지는 요소를 변환 계수마다 할당한다. 즉, 도 8a에 도시한 바와 같은 양자화 매트릭스가 얻어지게 된다. 이와 같이, 양자화 매트릭스에 대한 주사에 기초하여, 양자화 매트릭스의 사이즈에 대하여 적응적으로 변환 계수에 대한 요소의 할당을 변화시켜도 된다. 이 경우, 요소간의 위치 관계를 특별히 고려할 필요가 없어진다.
S403에서, 복호부(203)는, S401에서 분리된 부호 데이터를 복호하여, 서브블록마다의 양자화 계수 및 예측 정보를 재생한다.
S404에서, 역양자화·역변환부(204)는, 서브블록마다, 양자화 계수에 대하여 S402에서 재생된 양자화 매트릭스(800 내지 803) 중 1개를 사용하여, 역양자화를 행하여 변환 계수를 얻는다. 역양자화·역변환부(204)는, 또한, 변환 계수에 대하여 역직교 변환을 행하여, 각 서브블록의 예측 오차 데이터를 재생한다.
S405에서, 화상 재생부(205)는, S403에서 생성된 서브블록마다의 예측 정보와 예측 화상 데이터를 재생한다. 그리고, 화상 재생부(205)는, 서브블록마다, 재생된 예측 화상 데이터에, S404에서 생성된 예측 오차 데이터를 가산함으로써, 화상 데이터를 재생한다.
S406에서, 제어부(250)는, 프레임 내의 모든 기본 블록의 복호가 종료되었는지 여부의 판정을 행하여, 종료되었으면 S407로 진행하고, 그렇지 않으면 다음 기본 블록의 복호를 행하기 위해, 처리를 S403으로 되돌린다.
S407에서, 인루프 필터부(207)는, S405에서 재생된 화상 데이터에 대하여 인루프 필터 처리를 행하여, 필터 처리된 화상을 생성하고, 처리를 종료한다.
또한, 동화상의 2프레임째 이후를 복호하는 경우에는, S403 내지 S407의 처리를, 부호화 비트 스트림의 마지막까지, 혹은, 도시하지 않은 조작부를 통한 유저로부터 정지 지시가 있을 때까지 반복하게 된다.
이상의 구성과 동작에 의해, 제1 실시 형태에서 생성된, 양자화 매트릭스의 처음의 복수의 요소만이 개별로 부호화되고, 나머지 요소는 복수의 요소 단위로 부호화된 양자화 매트릭스의 부호량을 삭감한 비트 스트림을 복호할 수 있다.
또한, 본 제2 실시 형태에서는, 도 8a 내지 도 8d의 4종류의 양자화 매트릭스(800 내지 803) 모두를 비트 스트림으로부터 복호하는 구성으로 하였지만, 그 대신에, 비트 스트림으로부터 복호된 1개의 양자화 매트릭스로부터 다른 양자화 매트릭스를 생성하는 구성으로 해도 상관없다. 예를 들어, 16×8의 양자화 매트릭스 자체를 비트 스트림으로부터 복호하지 않고, 비트 스트림으로부터 복호된 16×16의 양자화 매트릭스를 사용하여 생성해도 된다. 이 경우, 도 8d의 양자화 매트릭스로부터 일부의 요소를 씨닝하여 도 8b의 양자화 매트릭스를 생성하게 된다. 마찬가지로, 도 D의 양자화 매트릭스로부터 일부의 요소를 씨닝하여 도 8c의 양자화 매트릭스를 생성하는 것도 가능하다. 또한, 상술한 「소정 범위」인 부분의 도 8b의 0행 1열의 요소 「5」나 도 8c의 1행 0열의 요소 「5」의 산출 방법을 정해 두면, 도 8a의 양자화 매트릭스(800)를 사용하여 도 8b나 도 8c의 양자화 매트릭스(801, 802)를 생성하는 것도 가능하다. 이 경우의 산출 방법은 특별히 한정되지 않고, 0행 0열의 요소 「4」에 특정 차분값(본 실시 형태에서는 +1)을 가산하여 산출해도 되고, 주변의 요소와의 보간을 사용하여 산출해도 된다. 또한, 16×16의 양자화 매트릭스의 요소와 함께, 도 8b의 0행 1열의 요소 「5」나 도 8c의 1행 0열의 요소 「5」 자체를 비트 스트림으로부터 복호해도 된다. 이에 의해, 양자화 매트릭스의 부호량을 더욱 삭감한 비트 스트림을 복호할 수 있다.
나아가, 양자화 매트릭스마다 다른 양자화 매트릭스로부터 생성할지, 각 요소를 복호할지를 선택하는 식별자를 헤더로부터 복호하는 구성으로 해도 상관없다. 예를 들어, 양자화 매트릭스의 각 요소를 다른 양자화 매트릭스로부터 생성할지, 개별로 복호할지를 나타내는 정보를, 도 6b에 도시된 비트 스트림의 헤더 부분으로부터 양자화 매트릭스 부호화 방법 정보 부호로서 복호하는 구성으로 해도 된다. 이에 의해, 서브블록의 크기에 따른 화질 제어를 우선할지, 양자화 매트릭스의 부호량을 보다 적게 할지가 선택된 비트 스트림을 복호할 수 있다.
또한 본 실시 형태에서는, 도 7a 내지 도 7d의 서브블록 분할·직교 변환에 대응하는 도 8a 내지 도 8d의 양자화 매트릭스(800 내지 803)가 사용되는 구성으로 하였지만, 사용되는 직교 변환 사이즈나 양자화 매트릭스는 이것에 한정되지 않는다. 예를 들어, 도 7e, 도 7f와 같이 1:2:1의 비로 분할하는 3분목 분할이 더 사용된 경우, 도 9a, 도 9b의 양자화 매트릭스(900, 901)를 더 사용하는 구성으로 해도 상관없다.
[제3 실시 형태]
도 1, 도 2에 도시한 각 처리부는 하드웨어로써 구성되어 있는 것으로서 상기 실시 형태에서는 설명하였다. 그러나, 이들 도면에 도시한 각 처리부에서 행하는 처리를 컴퓨터 프로그램으로써 구성해도 된다.
도 5는 상기 각 실시 형태에 관한 화상 표시 장치에 적용 가능한 컴퓨터의 하드웨어의 구성예를 도시하는 블록도이다.
CPU(501)는, RAM(502)나 ROM(503)에 저장되어 있는 컴퓨터 프로그램이나 데이터를 사용하여 컴퓨터 전체의 제어를 행함과 함께, 상기 각 실시 형태에 관한 화상 처리 장치가 행하는 것으로서 상술한 각 처리를 실행한다. 즉, CPU(501)는, 도 1, 도 2에 도시한 각 처리부로서 기능하게 된다.
RAM(502)은, 외부 기억 장치(506)로부터 로드된 컴퓨터 프로그램이나 데이터, I/F(인터페이스)(507)를 통해 외부로부터 취득한 데이터 등을 일시적으로 기억하기 위한 에어리어를 갖는다. 또한, RAM(502)은, CPU(501)가 각종 처리를 실행할 때 사용하는 워크 에어리어를 갖는다. 즉, RAM(502)은, 예를 들어 프레임 메모리로서 할당되거나, 그 밖의 각종 에어리어를 적절히 제공하거나 할 수 있다.
ROM(503)에는, 본 컴퓨터의 설정 데이터나, 부트 프로그램 등이 저장되어 있다. 조작부(504)는, 키보드나 마우스 등에 의해 구성되어 있고, 본 컴퓨터의 유저가 조작함으로써, 각종 지시를 CPU(501)에 대하여 입력할 수 있다. 표시부(505)는, CPU(501)에 의한 처리 결과를 표시한다. 또한 표시부(505)는, 예를 들어 액정 디스플레이로 구성된다.
외부 기억 장치(506)는, 하드디스크 드라이브 장치로 대표되는, 대용량 정보 기억 장치이다. 외부 기억 장치(506)에는, OS(오퍼레이팅 시스템)나, 도 1, 도 2에 도시한 각 부의 기능을 CPU(501)에 실현시키기 위한 컴퓨터 프로그램이 저장되어 있다. 나아가, 외부 기억 장치(506)에는, 처리 대상으로서의 각 화상 데이터가 저장되어 있어도 된다.
외부 기억 장치(506)에 저장되어 있는 컴퓨터 프로그램이나 데이터는, CPU(501)에 의한 제어에 따라서 적절히, RAM(502)에 로드되어, CPU(501)에 의한 처리 대상이 된다. I/F(507)에는, LAN이나 인터넷 등의 네트워크, 투영 장치나 표시 장치 등의 다른 기기를 접속할 수 있고, 본 컴퓨터는 이 I/F(507)를 통해 다양하게 정보를 취득하거나, 송출하거나 할 수 있다. 참조 부호 508은 상술한 각 부를 연결하는 버스이다.
상기 구성에 있어서, 본 장치의 전원이 ON으로 되면, CPU(501)는 ROM(503)의 부트 프로그램을 실행하고, 외부 기억 장치(506)에 저장된 OS를 RAM(502)에 로드하여, OS를 기동한다. 이 결과, 본 장치가, 인터페이스(507)를 통한 통신이 가능해져, 정보 처리 장치로서 기능한다. 그리고, OS의 제어 하에서, CPU(501)는 화상 부호화에 관한 애플리케이션(도 3에 상당함)을 외부 기억 장치(506)로부터 RAM(502)에 로드하여 실행함으로써, CPU(501)가 도 1에 도시한 각종 처리부로서 기능하게 되어, 본 장치가 화상 부호화 장치로서 기능하게 된다. 한편, CPU(501)는 화상 복호에 관한 애플리케이션(도 4에 상당함)을 외부 기억 장치(506)로부터 RAM(502)에 로드하여 실행한 경우, CPU(501)는 도 2에 도시한 각종 처리부로서 기능하게 되어, 본 장치가 화상 복호 장치로서 기능하게 된다.
(그 밖의 실시예)
본 발명은, 상술한 실시 형태의 1 이상의 기능을 실현하는 프로그램을, 네트워크 또는 기억 매체를 통해 시스템 또는 장치에 공급하고, 그 시스템 또는 장치의 컴퓨터에 있어서의 1개 이상의 프로세서가 프로그램을 판독하여 실행하는 처리에서도 실현 가능하다. 또한, 1 이상의 기능을 실현하는 회로(예를 들어, ASIC)에 의해서도 실현 가능하다.
본 발명은 상기 실시 형태에 제한되는 것은 아니고, 본 발명의 정신 및 범위로부터 이탈하지 않고, 다양한 변경 및 변형이 가능하다. 따라서, 본 발명의 범위를 공표하기 위해, 이하의 청구항을 첨부한다.
본원은, 2018년 12월 17일에 제출된 일본 특허 출원 제2018-235910호를 기초로 하여 우선권을 주장하는 것이며, 그 기재 내용 모두를, 여기에 원용한다.

Claims (7)

  1. 화상 데이터를 부호화하는 화상 부호화 장치이며,
    부호화 대상의 화상 데이터를 미리 설정된 사이즈의 기본 블록으로 분할하고, 당해 기본 블록을, 미리 설정된 복수의 서브블록 분할 패턴 중 어느 것을 사용하여 1 이상의 서브블록으로 더 분할하고, 각 서브블록 단위로 주파수 변환, 양자화, 엔트로피 부호화를 행하는 제1 부호화 수단과,
    해당 제1 부호화 수단에서 이용하는 상기 서브블록 분할 패턴에 포함되는 서브블록의 사이즈에 대응하는 복수의 양자화 매트릭스를 보유하는 보유 수단과,
    해당 보유 수단에 의해 보유되는 복수의 양자화 매트릭스 중 적어도 하나를 부호화하는 제2 부호화 수단과,
    해당 제2 부호화 수단에 의해 생성된 부호화 데이터와, 제1 부호화 수단에 의해 얻은 부호화 데이터를 통합하는 통합 수단을 갖고,
    상기 보유 수단은,
    상기 기본 블록의 수평, 수직 방향 중 어느 것의 사이즈와 동일한 사이즈를 갖는 양자화 매트릭스에 대해서는, 직류 성분에 대응하는 요소의 저장 위치로부터 미리 설정된 소정 범위의 위치의 요소를 독립된 값으로서 보유하고, 상기 소정 범위를 초과하는 위치에서는 미리 설정된 개수 단위로 동일한 요소를 보유하는 것을 특징으로 하는, 화상 부호화 장치.
  2. 제1항에 있어서,
    상기 보유 수단은,
    수평, 수직 방향 중 어느 한쪽이 상기 기본 블록의 사이즈와 동일하고, 다른 쪽이 상기 기본 블록의 사이즈보다 작은 양자화 매트릭스에 대해서는, 상기 직류 성분의 저장 위치를 포함하고, 상기 기본 블록과 동일한 사이즈가 되는 방향으로 인접하는 위치의 2개의 요소를 개별로 보유하고, 그 이외의 상기 동일한 사이즈가 되는 방향으로 인접하는 2개에 대하여 동일한 요소를 보유하고,
    수평, 수직 방향 모두 상기 기본 블록의 사이즈와 동일한 양자화 매트릭스에 대해서는, 상기 직류 성분의 저장 위치를 포함하고, 수평, 수직 방향으로 인접하는 4개의 요소를 개별로 보유하고, 그 이외의 상기 수평, 수직으로 인접하는 4개에 대하여 동일한 요소를 보유하는 것을 특징으로 하는, 화상 부호화 장치.
  3. 제2항에 있어서,
    상기 보유 수단은, 추가로, 상기 기본 블록의 수평, 수직 방향 모두 1/2의 사이즈의 양자화 매트릭스를 보유하고, 당해 양자화 매트릭스에 대해서는, 개개의 위치마다 요소를 보유하는 것을 특징으로 하는, 화상 부호화 장치.
  4. 화상 데이터를 부호화하는 화상 부호화 장치의 제어 방법이며,
    부호화 대상의 화상 데이터를 미리 설정된 사이즈의 기본 블록으로 분할하고, 당해 기본 블록을, 미리 설정된 복수의 서브블록 분할 패턴 중 어느 것을 사용하여 1 이상의 서브블록으로 더 분할하고, 각 서브블록 단위로 주파수 변환, 양자화, 엔트로피 부호화를 행하는 제1 부호화 공정과,
    해당 제1 화상 부호화 공정에서 이용하는 상기 서브블록 분할 패턴에 포함되는 서브블록의 사이즈에 대응하는 복수의 양자화 매트릭스를 보유하는 보유 공정과,
    해당 보유 공정에서 보유되는 복수의 양자화 매트릭스 중 적어도 하나를 부호화하는 제2 부호화 공정과,
    해당 제2 부호화 공정에서 생성된 부호화 데이터와, 제1 부호화 공정에서 얻은 부호화 데이터를 통합하는 통합 공정을 갖고,
    상기 보유 공정은,
    상기 기본 블록의 수평, 수직 방향 중 어느 것의 사이즈와 동일한 사이즈를 갖는 양자화 매트릭스에 대해서는, 직류 성분의 요소의 저장 위치로부터 미리 설정된 소정 범위의 위치의 요소를 독립된 값으로서 보유하고, 상기 소정 범위를 초과하는 위치에서는 미리 설정된 개수 단위로 동일한 요소를 보유하는 것을 특징으로 하는, 화상 부호화 장치의 제어 방법.
  5. 제1항 내지 제3항 중 어느 한 항에 기재된 화상 부호화 장치에서 생성된 부호화 데이터를 복호하는 화상 복호 장치이며,
    부호화 데이터로부터, 양자화 매트릭스의 부호화 데이터와, 화상 데이터의 부호화 데이터를 분리하는 분리 수단과,
    해당 분리 수단에 의해 분리된 양자화 매트릭스의 부호화 데이터를 복호하여, 각 서브블록의 사이즈에 대응하는 복수의 양자화 매트릭스를 생성하고, 보유하는 제1 복호 수단과,
    상기 분리 수단에 의해 분리된 화상 데이터의 부호화 데이터를, 상기 제1 복호 수단으로부터 얻은 각 서브블록의 양자화 매트릭스를 사용하여 복호하여, 화상 데이터를 재생하는 제2 복호 수단을 갖는 것을 특징으로 하는, 화상 복호 장치.
  6. 제4항에 기재된 제어 방법으로 생성된 부호화 데이터를 복호하는 화상 복호 장치의 제어 방법이며,
    부호화 데이터로부터, 양자화 매트릭스의 부호화 데이터와, 화상 데이터의 부호화 데이터를 분리하는 분리 공정과,
    해당 분리 공정에서 분리된 양자화 매트릭스의 부호화 데이터를 복호하여, 각 서브블록의 사이즈에 대응하는 복수의 양자화 매트릭스를 생성하고, 보유하는 제1 복호 공정과,
    상기 분리 공정에서 분리된 화상 데이터의 부호화 데이터를, 상기 제1 복호 공정으로부터 얻은 각 서브블록의 양자화 매트릭스를 사용하여 복호하여, 화상 데이터를 재생하는 제2 복호 공정을 갖는 것을 특징으로 하는, 화상 복호 장치의 제어 방법.
  7. 컴퓨터가 읽어들여 실행함으로써, 상기 컴퓨터에, 제4항 또는 제6항에 기재된 제어 방법의 각 공정을 실행시키기 위한, 프로그램.
KR1020217021605A 2018-12-17 2019-11-14 화상 부호화 장치 및 화상 복호 장치 및 그것들의 제어 방법 및 프로그램 KR20210096279A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2018-235910 2018-12-17
JP2018235910A JP2020098984A (ja) 2018-12-17 2018-12-17 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
PCT/JP2019/044754 WO2020129489A1 (ja) 2018-12-17 2019-11-14 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム

Publications (1)

Publication Number Publication Date
KR20210096279A true KR20210096279A (ko) 2021-08-04

Family

ID=71101173

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217021605A KR20210096279A (ko) 2018-12-17 2019-11-14 화상 부호화 장치 및 화상 복호 장치 및 그것들의 제어 방법 및 프로그램

Country Status (8)

Country Link
US (1) US11997276B2 (ko)
EP (1) EP3902254A4 (ko)
JP (2) JP2020098984A (ko)
KR (1) KR20210096279A (ko)
CN (1) CN113228652B (ko)
BR (1) BR112021010308A2 (ko)
TW (3) TW202312733A (ko)
WO (1) WO2020129489A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013038758A (ja) 2011-07-13 2013-02-21 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6882685B2 (en) 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
JP4956612B2 (ja) * 2006-10-12 2012-06-20 株式会社東芝 画像符号化装置及び画像符号化方法
JP2011029956A (ja) * 2009-07-27 2011-02-10 Sony Corp 画像符号化装置および画像符号化方法
US9661338B2 (en) 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
JP5741076B2 (ja) * 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
CN106937126B (zh) * 2011-05-20 2019-11-15 索尼公司 图像处理装置和图像处理方法
KR20140046055A (ko) 2011-09-08 2014-04-17 모토로라 모빌리티 엘엘씨 계수들의 직사각형 블록의 양자화 및 역양자화를 위한 방법들 및 장치
US10277915B2 (en) * 2011-11-07 2019-04-30 Qualcomm Incorporated Signaling quantization matrices for video coding
EP2779646A4 (en) 2011-11-07 2015-08-19 Samsung Electronics Co Ltd INVERSE TRANSFORM METHOD FOR REVERSE QUANTIFICATION DATA STRETCHING, REVERSE TRANSFORMATION DURING VIDEO DECODING STEP AND CORRESPONDING DEVICE
JP2013146038A (ja) * 2011-12-13 2013-07-25 Canon Inc 画像量子化装置、画像量子化方法及びプログラム、画像逆量子化装置、画像逆量子化方法及びプログラム
KR102094557B1 (ko) * 2011-12-19 2020-03-27 소니 주식회사 화상 처리 장치 및 방법
MY190756A (en) * 2012-02-29 2022-05-12 Sony Corp Image processing device and method
KR101527445B1 (ko) * 2012-04-16 2015-06-11 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
WO2013158669A1 (en) * 2012-04-16 2013-10-24 Huawei Technologies Co., Ltd. Method and apparatus of quantization matrix coding
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
TWI535222B (zh) 2012-06-29 2016-05-21 Sony Corp Image processing apparatus and method
CN106663209B (zh) * 2014-09-19 2020-05-08 华为技术有限公司 用于非均匀映射图像/视频编码中不同尺寸的量化矩阵之间的量化矩阵系数的方法和装置
WO2016103542A1 (ja) * 2014-12-26 2016-06-30 パナソニックIpマネジメント株式会社 符号化方法、復号方法、符号化装置および復号装置
CN104796609B (zh) * 2015-04-17 2018-01-05 南京理工大学 基于最优哈达玛编码的大视场高分辨率显微成像方法
JP6566865B2 (ja) * 2015-12-28 2019-08-28 Kddi株式会社 動画像復号装置、動画像復号方法、動画像符号化装置、動画像符号化方法及びコンピュータ可読記録媒体
CN106612439A (zh) * 2016-02-04 2017-05-03 四川用联信息技术有限公司 一种自适应快速分形图像压缩方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013038758A (ja) 2011-07-13 2013-02-21 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム

Also Published As

Publication number Publication date
TWI770441B (zh) 2022-07-11
WO2020129489A1 (ja) 2020-06-25
BR112021010308A2 (pt) 2021-08-24
US20210306633A1 (en) 2021-09-30
CN113228652A (zh) 2021-08-06
TWI788268B (zh) 2022-12-21
JP2024023793A (ja) 2024-02-21
TW202029759A (zh) 2020-08-01
EP3902254A1 (en) 2021-10-27
US11997276B2 (en) 2024-05-28
EP3902254A4 (en) 2022-08-31
TW202312733A (zh) 2023-03-16
TW202239207A (zh) 2022-10-01
JP2020098984A (ja) 2020-06-25
CN113228652B (zh) 2024-04-12

Similar Documents

Publication Publication Date Title
JP2023105156A (ja) 画像符号化装置、画像符号化方法、及びプログラム
JP2023113858A (ja) 画像復号装置、画像復号方法、及びプログラム
KR20220011175A (ko) 화상 복호 장치, 복호 방법, 및 컴퓨터 프로그램
WO2020003740A1 (ja) 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
CN113228652B (zh) 图像编码装置和方法、图像解码装置和方法以及存储介质
CN113196759B (zh) 图像编码设备和方法、图像解码设备和方法以及存储介质
CN113196760B (zh) 图像编码设备、图像解码设备、控制方法和存储介质
JP7267785B2 (ja) 画像復号装置、画像復号方法、及びプログラム
CN118175316A (zh) 图像编码装置和方法、图像解码装置和方法以及存储介质
CN118175315A (zh) 图像编码装置和方法、图像解码装置和方法以及存储介质
CN118175317A (zh) 图像编码装置和方法、图像解码装置和方法以及存储介质
CN118175318A (zh) 图像编码装置和方法、图像解码装置和方法以及存储介质
WO2020183859A1 (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、及びプログラム
TW202418801A (zh) 圖像編碼裝置、圖像解碼裝置、其等之控制方法及程式
KR20220058959A (ko) 화상 부호화 장치, 화상 복호 장치 및 그것들의 제어 방법 및 프로그램
JP2021150723A (ja) 画像符号化装置、画像符号化方法、及びプログラム、画像復号装置、画像復号方法、及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal