KR101918904B1 - 화상 처리 장치 및 방법 - Google Patents

화상 처리 장치 및 방법 Download PDF

Info

Publication number
KR101918904B1
KR101918904B1 KR1020187002964A KR20187002964A KR101918904B1 KR 101918904 B1 KR101918904 B1 KR 101918904B1 KR 1020187002964 A KR1020187002964 A KR 1020187002964A KR 20187002964 A KR20187002964 A KR 20187002964A KR 101918904 B1 KR101918904 B1 KR 101918904B1
Authority
KR
South Korea
Prior art keywords
unit
quantization
quantization parameter
coding
image
Prior art date
Application number
KR1020187002964A
Other languages
English (en)
Other versions
KR20180014249A (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 KR20180014249A publication Critical patent/KR20180014249A/ko
Application granted granted Critical
Publication of KR101918904B1 publication Critical patent/KR101918904B1/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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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
    • 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/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/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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of 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/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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/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

Abstract

본 기술은, 화상의 내용에 보다 적합한 양자화 처리 또는 역양자화 처리를 행할 수 있게 하는 화상 처리 장치 및 방법에 관한 것이다. 가역 복호부(202)는, 축적 버퍼(201)로부터 소정의 타이밍에서 읽어내어진 부호화 데이터를 복호한다. 서브 매크로 블록 역양자화부(221)는, 역양자화부(203)로부터 공급된 양자화 파라미터를 사용하여 서브 매크로 블록마다의 양자화값을 구하고, 그것을 역양자화부(203)로 되돌려보낸다. 역양자화부(203)는, 서브 매크로 블록 역양자화부(221)로부터 공급되는 서브 매크로 블록마다의 양자화값을 사용하여, 가역 복호부(202)에 의해 복호되어 얻어진 양자화 계수를 역양자화한다. 본 기술은, 예를 들어, 화상 처리 장치에 적용할 수 있다.

Description

화상 처리 장치 및 방법{IMAGE PROCESSING DEVICE AND METHOD}
본 기술은, 화상 처리 장치 및 방법에 관한 것으로, 양자화 처리 또는 역양자화 처리를 행하는 화상 처리 장치 및 방법에 관한 것이다.
최근, 화상 정보를 디지털로서 취급하고, 그때, 효율이 높은 정보의 전송, 축적을 목적으로 하고, 화상 정보 특유의 용장성을 이용하여, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축하는 MPEG(Moving Picture Experts Group) 등의 방식에 준거한 장치가, 방송국 등의 정보 배신 및 일반 가정에 있어서의 정보 수신의 양쪽에 있어서 보급되어 있다.
요즘, 하이비전 화상의 4배인, 4096×2048화소 정도의 화상을 압축하고 싶다, 혹은, 인터넷과 같은, 한정된 전송 용량의 환경에 있어서, 하이비전 화상을 송신하고 싶다는 등의 한층 더한 고압축률 부호화에 대한 요구가 높아지고 있다. 이로 인해, ITU-T 산하의 VCEG에 있어서, 부호화 효율의 개선에 관한 검토가 계속해서 행해지고 있다.
지금까지의 화상 부호화 방식인, MPEG1, MPEG2, 및 ITU-T H.264, MPEG4-AVC에 있어서의 화상 부호화 시의 화상의 분할 단위(부호화 처리 단위)로 되는, 화상의 부분 영역인 매크로 블록의 화소 사이즈는, 모두 16×16화소이었다. 한편, 비특허 문헌 1 문헌에 따르면, 차세대의 화상 부호화 규격의 요소 기술로서, 매크로 블록의 수평 및 수직 방향의 화소수를 확장하는 제안이 이루어져 있다. 이 제안에 따르면 MPEG1, MPEG2, 및 ITU-T H.264, MPEG4-AVC 등에서 규정되어 있는 16×16화소의 매크로 블록의 화소 사이즈 이외에, 32×32화소, 64×64화소로 이루어지는 매크로 블록을 사용하는 것도 제안되어 있다. 이것은, 예를 들어, UHD(Ultra High Definition;4000화소×2000화소)와 같이, 장래적으로 부호화하는 화상의 수평·수직 방향의 화소 사이즈가 증대될 것이 예상되지만, 그 경우에, 움직임이 서로 비슷한 영역에 있어서, 보다 큰 영역을 단위로 해서 움직임 보상 및 직교 변환을 행함으로써 부호화 효율을 향상시키는 것을 목적으로 하고 있다.
비특허 문헌 1에 있어서는, 계층 구조를 채용함으로써, 16×16화소 블록 이하에 관해서는, 현재의 AVC에 있어서의 매크로 블록과 호환성을 유지하면서, 그 수퍼세트로서, 보다 큰 블록이 정의되어 있다.
비특허 문헌 1은, 인터 슬라이스에 대하여 확장된 매크로 블록을 적용하는 제안이지만, 비특허 문헌 2에 있어서는, 확장된 매크로 블록을, 인트라 슬라이스에 적용하는 것이 제안되어 있다.
: Peisong Chenn, Yan Ye, Marta Karczewicz, "Video Coding Using Extended Block Sizes", COM16-C123-E, Qualcomm Inc : Sung-Chang Lim, Hahyun Lee, Jinho Lee, Jongho Kim, Haechul Choi, Seyoon Jeong, Jin Soo Choi, "Intra coding using extended block size", VCEG-AL28, 2009年7月
그런데, 비특허 문헌 1 혹은 비특허 문헌 2에 있어서 제안되어 있는 바와 같은, 확장된 크기의 매크로 블록이 적용되면, 단일의 매크로 블록 내에, 평탄한 영역과, 텍스쳐를 포함하는 영역이 혼재할 가능성이 높아진다.
그러나, 비특허 문헌 1 혹은 비특허 문헌 2에 있어서는, 1개의 매크로 블록에 대하여, 단일의 양자화 파라미터를 지정하는 것밖에 할 수 없기 때문에, 면 내의 각각의 영역의 특성에 따른, 적응 양자화를 행하는 것이 곤란해진다.
본 기술은, 이러한 상황을 감안해서 이루어진 것으로, 보다 적절한 양자화 처리를 행하여, 복호 화상의 주관 화질의 저감을 억제하는 것을 목적으로 한다.
본 기술의 일측면은, 부호화 스트림을 복호해서 양자화 데이터를 생성하는 복호부와, 화상 데이터를 부호화할 때의 부호화 처리 단위인 코딩 유닛의 기준층에 있는 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 상기 복호부에 의해 생성된 양자화 데이터를 역양자화할 때에 사용하는 양자화 파라미터를 설정하는 설정부와, 상기 설정부에 의해 설정된 양자화 파라미터를 사용하여, 상기 복호부에 의해 생성된 양자화 데이터를 역양자화하는 역양자화부를 구비하는 화상 처리 장치이다.
상기 설정부는, 역양자화 처리의 대상으로 되는 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛과 동일한 계층에 있는 코딩 유닛에 설정된 양자화 파라미터의 차분값을 나타내는 차분 양자화 파라미터를 사용하여, 상기 커런트 코딩 유닛의 양자화 파라미터를 설정할 수 있다.
상기 차분 양자화 파라미터는, 상기 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛보다도 복호 처리순에서 전에 복호된 코딩 유닛에 설정된 양자화 파라미터의 차분값이도록 할 수 있다.
상기 차분 양자화 파라미터는, 상기 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛보다도 복호 처리순에서 1개 전에 복호된 코딩 유닛에 설정된 양자화 파라미터의 차분값이도록 할 수 있다.
상기 기준 코딩 유닛은, 최상위층의 코딩 유닛인 최대 코딩 유닛이도록 할 수 있다.
상기 부호화 스트림과 상기 차분 양자화 파라미터를 설정하는 코딩 유닛의 최소 사이즈를 나타내는 최소 코딩 유닛 사이즈 데이터를 수취하는 수취부를 더 구비하고, 상기 설정부는, 상기 수취부에 의해 수취된 최소 코딩 유닛 사이즈 데이터에 따라서, 상기 커런트 코딩 유닛의 양자화 파라미터를 설정할 수 있다.
상기 수취부는, 상기 부호화 스트림의 슬라이스 헤더로부터, 상기 최소 코딩 유닛 사이즈 데이터를 취득할 수 있다.
상기 최소 코딩 유닛 사이즈 데이터가 나타내는 사이즈가 16화소인 경우에, 사이즈가 16화소 미만인 코딩 유닛의 차분 양자화 파라미터는 0으로 설정되어 있도록 할 수 있다.
상기 설정부는, 복호 처리의 대상으로 되는 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛이 속하는 슬라이스에 설정된 양자화 파라미터의 차분값을 나타내는 차분 양자화 파라미터를 사용하여, 상기 커런트 코딩 유닛의 양자화 파라미터를 설정할 수 있다.
상기 설정부는, 상기 커런트 코딩 유닛이 상기 기준 코딩 유닛의 계층에 있어서 복호 처리순에서 최초인 경우에, 상기 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛이 속하는 슬라이스에 설정된 양자화 파라미터의 차분값을 나타내는 차분 양자화 파라미터를 사용하여, 상기 커런트 코딩 유닛의 양자화 파라미터를 설정할 수 있다.
상기 기준 코딩 유닛은, 최상위층의 코딩 유닛인 최대 코딩 유닛이도록 할 수 있다.
상기 부호화 스트림과 상기 차분 양자화 파라미터를 설정하는 코딩 유닛의 최소 사이즈를 나타내는 최소 코딩 유닛 사이즈 데이터를 수취하는 수취부를 더 구비하고, 상기 설정부는, 상기 수취부에 의해 수취된 최소 코딩 유닛 사이즈 데이터에 따라서, 상기 커런트 코딩 유닛의 양자화 파라미터를 설정할 수 있다.
상기 수취부는, 상기 부호화 스트림의 슬라이스 헤더로부터, 상기 최소 코딩 유닛 사이즈 데이터를 취득할 수 있다.
상기 최소 코딩 유닛 사이즈 데이터가 나타내는 사이즈가 16화소인 경우에, 사이즈가 16화소 미만인 코딩 유닛의 차분 양자화 파라미터는 0으로 설정되어 있도록 할 수 있다.
상기 설정부는, 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 상기 차분 양자화 파라미터의 값이 0인 경우에, 상기 기준 코딩 유닛에 설정된 양자화 파라미터를, 상기 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛에 설정된 양자화 파라미터로서 설정할 수 있다.
기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 상기 차분 양자화 파라미터의 값이 0인지를 식별하는 차분 식별 데이터를 수취하는 수취부를 더 구비하고, 상기 설정부는, 상기 수취부에 의해 수취된 차분 식별 데이터를 사용하여, 상기 기준 코딩 유닛에 설정된 양자화 파라미터를, 상기 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛에 설정된 양자화 파라미터로서 설정할 수 있다.
본 기술의 일측면은, 또한, 부호화 스트림을 복호해서 양자화 데이터를 생성하고, 화상 데이터를 부호화할 때의 부호화 처리 단위인 코딩 유닛의 기준층에 있는 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 생성된 양자화 데이터를 역양자화할 때에 사용하는 양자화 파라미터를 설정하고, 설정된 양자화 파라미터를 사용하여, 생성된 양자화 데이터를 역양자화하는 화상 처리 방법이다.
본 기술의 다른 측면은, 화상 데이터를 부호화할 때의 부호화 처리 단위인 코딩 유닛의 기준층에 있는 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 화상 데이터를 양자화할 때에 사용하는 양자화 파라미터를 설정하는 설정부와, 상기 설정부에 의해 설정된 양자화 파라미터를 사용하여, 화상 데이터를 양자화해서 양자화 데이터를 생성하는 양자화부와, 상기 양자화부에 의해 생성된 양자화 데이터를 부호화해서 부호화 스트림을 생성하는 부호화부를 구비하는 화상 처리 장치이다.
상기 설정부는, 부호화 처리의 대상으로 되는 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛과 동일한 계층에 있는 코딩 유닛에 설정된 양자화 파라미터의 차분값을 나타내는 차분 양자화 파라미터를 설정하고, 상기 설정부에 의해 설정된 차분 양자화 파라미터와 상기 부호화부에 의해 생성된 부호화 스트림을 전송하는 전송부를 더 구비할 수 있다.
상기 설정부는, 상기 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛보다도 부호화 처리순에서 전에 부호화된 코딩 유닛에 설정된 양자화 파라미터의 차분값을, 상기 차분 양자화 파라미터로서 설정할 수 있다.
상기 설정부는, 상기 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛보다도 부호화 처리순에서 1개 전에 부호화된 코딩 유닛에 설정된 양자화 파라미터의 차분값을, 상기 차분 양자화 파라미터로서 설정할 수 있다.
상기 기준 코딩 유닛은, 최상위층의 코딩 유닛인 최대 코딩 유닛이도록 할 수 있다.
상기 설정부는, 상기 차분 양자화 파라미터를 설정하는 코딩 유닛의 최소 사이즈를 나타내는 최소 코딩 유닛 사이즈 데이터를 설정하고, 상기 전송부는, 상기 설정부에 의해 설정된 최소 코딩 유닛 사이즈 데이터를 전송할 수 있다.
상기 전송부는, 상기 설정부에 의해 설정된 최소 코딩 유닛 사이즈 데이터를, 상기 부호화부에 의해 생성된 부호화 스트림의 신택스에, 슬라이스 헤더로서 추가할 수 있다.
상기 설정부는, 상기 최소 코딩 유닛 사이즈 데이터가 나타내는 사이즈를 16화소로 설정하는 경우에, 사이즈가 16화소 미만인 코딩 유닛의 차분 양자화 파라미터를 0으로 설정할 수 있다.
상기 설정부는, 부호화 처리의 대상으로 되는 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛이 속하는 슬라이스에 설정된 양자화 파라미터의 차분값을 나타내는 차분 양자화 파라미터를 설정하고, 상기 설정부에 의해 설정된 차분 양자화 파라미터와 상기 부호화부에 의해 생성된 부호화 스트림을 전송하는 전송부를 더 구비할 수 있다.
상기 설정부는, 상기 커런트 코딩 유닛이 상기 기준 코딩 유닛의 계층에 있어서 부호화 처리순에서 최초인 경우에, 상기 커런트 코딩 유닛에 설정된 양자화 파라미터와 상기 커런트 코딩 유닛이 속하는 슬라이스에 설정된 양자화 파라미터의 차분값을, 상기 차분 양자화 파라미터로서 설정할 수 있다.
상기 기준 코딩 유닛은, 최상위층의 코딩 유닛인 최대 코딩 유닛이도록 할 수 있다.
상기 설정부는, 상기 차분 양자화 파라미터를 설정하는 코딩 유닛의 최소 사이즈를 나타내는 최소 코딩 유닛 사이즈 데이터를 설정하고, 상기 전송부는, 상기 설정부에 의해 설정된 최소 코딩 유닛 사이즈 데이터를 전송할 수 있다.
상기 전송부는, 상기 설정부에 의해 설정된 최소 코딩 유닛 사이즈 데이터를, 상기 부호화부에 의해 생성된 부호화 스트림의 신택스에, 슬라이스 헤더로서 추가할 수 있다.
상기 설정부는, 상기 최소 코딩 유닛 사이즈 데이터가 나타내는 사이즈를 16화소로 설정하는 경우에, 사이즈가 16화소 미만인 코딩 유닛의 차분 양자화 파라미터를 0으로 설정할 수 있다.
상기 설정부는, 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 상기 차분 양자화 파라미터의 값을 0으로 설정하는 경우에, 상기 기준 코딩 유닛에 설정된 양자화 파라미터를, 상기 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛에 설정된 양자화 파라미터로서 설정할 수 있다.
상기 설정부는, 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 상기 차분 양자화 파라미터의 값이 0인지를 식별하는 차분 식별 데이터를 설정하고, 상기 설정부에 의해 설정된 차분 식별 데이터와 상기 부호화부에 의해 생성된 부호화 스트림을 전송하는 전송부를 더 구비할 수 있다.
본 기술의 다른 측면은, 또한, 화상 데이터를 부호화할 때의 부호화 처리 단위인 코딩 유닛의 기준층에 있는 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 화상 데이터를 양자화할 때에 사용하는 양자화 파라미터를 설정하고, 설정된 양자화 파라미터를 사용하여, 화상 데이터를 양자화해서 양자화 데이터를 생성하고, 생성된 양자화 데이터를 부호화해서 부호화 스트림을 생성하는 화상 처리 방법이다.
본 기술의 일측면에 있어서는, 부호화 스트림이 복호되어 양자화 데이터가 생성되고, 화상 데이터가 부호화될 때의 부호화 처리 단위인 코딩 유닛의 기준층에 있는 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 생성된 양자화 데이터가 역양자화될 때에 사용하는 양자화 파라미터가 설정되고, 설정된 양자화 파라미터가 사용되어, 생성된 양자화 데이터가 역양자화된다.
본 기술의 다른 측면에 있어서는, 화상 데이터를 부호화할 때의 부호화 처리 단위인 코딩 유닛의 기준층에 있는 기준 코딩 유닛보다도 하위층에 있는 코딩 유닛을 대상으로 하여, 화상 데이터를 양자화할 때에 사용하는 양자화 파라미터가 설정되고, 설정된 양자화 파라미터가 사용되어, 화상 데이터가 양자화되어 양자화 데이터가 생성되고, 생성된 양자화 데이터가 부호화되어 부호화 스트림이 생성된다.
본 기술에 따르면, 보다 적절하게 양자화 처리 또는 역양자화 처리를 행할 수 있다.
도 1은 본 기술을 적용한 화상 부호화 장치의 주된 구성예를 도시하는 블록도.
도 2는 휘도 신호의 양자화 파라미터와 색차 신호의 양자화 파라미터의 대응 관계의 예를 도시하는 도면.
도 3은 매크로 블록의 예를 도시하는 도면.
도 4는 매크로 블록의 다른 예를 도시하는 도면.
도 5는 양자화부의 상세한 구성예를 도시하는 블록도.
도 6은 매크로 블록 단위의 화상의 예를 설명하는 도면.
도 7은 부호화 처리의 흐름의 예를 설명하는 플로우차트.
도 8은 양자화 파라미터 산출 처리의 흐름의 예를 설명하는 플로우차트.
도 9는 본 기술을 적용한 화상 복호 장치의 주된 구성예를 도시하는 블록도.
도 10은 역양자화부의 상세한 구성예를 도시하는 블록도.
도 11은 복호 처리의 흐름의 예를 설명하는 플로우차트.
도 12는 역양자화 처리의 흐름의 예를 설명하는 플로우차트.
도 13은 양자화 파라미터 산출 처리의 흐름의 다른 예를 설명하는 플로우차트.
도 14는 역양자화 처리의 흐름의 다른 예를 설명하는 플로우차트.
도 15는 코딩 유닛의 구성예를 설명하는 도면.
도 16은 코딩 유닛마다 할당된 양자화 파라미터의 예를 도시하는 도면.
도 17은 신택스의 예를 도시하는 도면.
도 18은 본 기술을 적용한 화상 부호화 장치의 다른 구성예를 도시하는 블록도.
도 19는 코딩 유닛 양자화부 및 레이트 제어부의 상세한 구성예를 도시하는 블록도.
도 20은 양자화 파라미터 산출 처리의 흐름의, 또 다른 예를 설명하는 플로우차트.
도 21은 본 기술을 적용한 화상 복호 장치의 다른 구성예를 도시하는 블록도.
도 22는 코딩 유닛 역양자화부의 상세한 구성예를 도시하는 블록도.
도 23은 역양자화 처리의 흐름의, 또 다른 예를 도시하는 플로우차트.
도 24는 양자화 파라미터 dQP의 각 산출 방법의 특징을 비교하는 도면.
도 25는 코딩 유닛마다 할당된 양자화 파라미터의 예를 도시하는 도면.
도 26은 슬라이스 헤더의 신택스의 예를 도시하는 도면.
도 27은 액티비티의 산출 방법의 예를 설명하는 도면.
도 28은 양자화 파라미터와 양자화 스케일의 관계를 설명하는 도면.
도 29는 본 기술을 적용한 화상 부호화 장치의, 또 다른 구성예를 도시하는 블록도.
도 30은 코딩 유닛 양자화부, 양자화부, 및 레이트 제어부의 상세한 구성예를 도시하는 블록도.
도 31은 부호화 처리의 흐름의 다른 예를 설명하는 플로우차트.
도 32는 양자화 처리의 흐름의 예를 설명하는 플로우차트.
도 33은 다(多)시점 화상 부호화 방식의 예를 도시하는 도면.
도 34는 본 기술을 적용한 다시점 화상 부호화 장치의 주된 구성예를 도시하는 도면.
도 35는 본 기술을 적용한 다시점 화상 복호 장치의 주된 구성예를 도시하는 도면.
도 36은 계층 화상 부호화 방식의 예를 도시하는 도면.
도 37은 본 기술을 적용한 계층 화상 부호화 장치의 주된 구성예를 도시하는 도면.
도 38은 본 기술을 적용한 계층 화상 복호 장치의 주된 구성예를 도시하는 도면.
도 39는 본 기술을 적용한 컴퓨터의 주된 구성예를 도시하는 블록도.
도 40은 본 기술을 적용한 텔레비전 장치의 주된 구성예를 도시하는 블록도.
도 41은 본 기술을 적용한 모바일 단말기의 주된 구성예를 도시하는 블록도.
도 42는 본 기술을 적용한 기록 재생기의 주된 구성예를 도시하는 블록도.
도 43은 본 기술을 적용한 촬상 장치의 주된 구성예를 도시하는 블록도.
이하, 본 기술을 실시하기 위한 형태(이하 실시 형태라고 함)에 대해서 설명한다. 또한, 설명은 이하의 순서로 행한다.
1. 제1 실시 형태(화상 부호화 장치)
2. 제2 실시 형태(화상 복호 장치)
3. 제3 실시 형태(화상 부호화 장치·화상 복호 장치)
4. 제4 실시 형태(화상 부호화 장치·화상 복호 장치)
5. 제5 실시 형태(화상 부호화 장치)
6. 제6 실시 형태(다시점 화상 부호화·다시점 화상 복호 장치)
7. 제7 실시 형태(계층 화상 부호화·계층 화상 복호 장치)
8. 제8 실시 형태(응용예)
<1. 제1 실시 형태>
[화상 부호화 장치]
도 1은, 본 기술을 적용한 화상 처리 장치로서의 화상 부호화 장치의 일 실시 형태의 구성을 도시하고 있다.
도 1에 도시되는 화상 부호화 장치(100)는, 예를 들어, H.264 및 MPEG(Moving Picture Experts Group) 4 Part 10(AVC(Advanced Video Coding))(이하H.264/AVC라고 칭함) 방식과 마찬가지로 화상을 부호화하는 부호화 장치이다. 단, 화상 부호화 장치(100)는, 서브 매크로 블록마다 양자화 파라미터를 지정한다.
매크로 블록이란, 화상을 부호화할 때의 처리 단위로 되는 상기 화상의 부분 영역이다. 서브 매크로 블록이란, 그 매크로 블록을 복수로 분할하는 소 영역이다.
도 1의 예에 있어서, 화상 부호화 장치(100)는, A/D(Analog / Digital) 변환부(101), 화면 재배열 버퍼(102), 연산부(103), 직교 변환부(104), 양자화부(105), 가역 부호화부(106), 및 축적 버퍼(107)를 갖는다. 또한, 화상 부호화 장치(100)는, 역양자화부(108), 역직교 변환부(109), 연산부(110), 디블록 필터(111), 프레임 메모리(112), 선택부(113), 인트라 예측부(114), 움직임 예측·보상부(115), 선택부(116), 및 레이트 제어부(117)를 갖는다.
화상 부호화 장치(100)는, 또한, 서브 매크로 블록 양자화부(121)와 서브 매크로 블록 역양자화부(122)를 갖는다.
A/D 변환부(101)는, 입력된 화상 데이터를 A/D 변환하고, 화면 재배열 버퍼(102)에 출력하고, 기억시킨다.
화면 재배열 버퍼(102)는, 기억한 표시의 순서의 프레임의 화상을, GOP(Group of Picture) 구조에 따라, 부호화를 위한 프레임의 순서대로 재배열한다. 화면 재배열 버퍼(102)는, 프레임의 순서를 재배열한 화상을, 연산부(103)에 공급한다. 또한, 화면 재배열 버퍼(102)는, 프레임의 순서를 재배열한 화상을, 인트라 예측부(114) 및 움직임 예측·보상부(115)에도 공급한다.
연산부(103)는, 화면 재배열 버퍼(102)로부터 읽어내어진 화상으로부터, 선택부(116)를 통해서 인트라 예측부(114) 혹은 움직임 예측·보상부(115)로부터 공급되는 예측 화상을 감산하고, 그 차분 정보를 직교 변환부(104)에 출력한다.
예를 들어, 인트라 부호화가 행해지는 화상의 경우, 연산부(103)는, 화면 재배열 버퍼(102)로부터 읽어내어진 화상으로부터, 인트라 예측부(114)로부터 공급되는 예측 화상을 감산한다. 또한, 예를 들어, 인터 부호화가 행해지는 화상의 경우, 연산부(103)는, 화면 재배열 버퍼(102)로부터 읽어내어진 화상으로부터, 움직임 예측·보상부(115)로부터 공급되는 예측 화상을 감산한다.
직교 변환부(104)는, 연산부(103)로부터 공급되는 차분 정보에 대하여, 이산 코사인 변환, 카루넨·루베 변환 등의 직교 변환을 실시하고, 그 변환 계수를 양자화부(105)에 공급한다.
양자화부(105)는, 직교 변환부(104)가 출력하는 변환 계수를 양자화한다. 양자화부(105)는, 레이트 제어부(117)로부터 공급되는 정보에 기초하여, 서브 매크로 블록 양자화부(121)와 연계하면서, 매크로 블록보다도 작은 영역인 서브 매크로 블록마다 양자화 파라미터를 설정하고, 양자화를 행한다. 양자화부(105)는, 양자화된 변환 계수를 가역 부호화부(106)에 공급한다.
가역 부호화부(106)는, 그 양자화된 변환 계수에 대하여, 가변길이 부호화, 산술 부호화 등의 가역 부호화를 실시한다.
가역 부호화부(106)는, 인트라 예측을 나타내는 정보 등을 인트라 예측부(114)로부터 취득하고, 인터 예측 모드를 나타내는 정보나 움직임 벡터 정보 등을 움직임 예측·보상부(115)로부터 취득한다. 또한, 인트라 예측(화면내 예측)을 나타내는 정보는, 이하, 인트라 예측 모드 정보라고도 칭한다. 또한, 인터 예측(화면간 예측)을 나타내는 정보 모드를 나타내는 정보는, 이하, 인터 예측 모드 정보라고도 칭한다.
가역 부호화부(106)는, 양자화된 변환 계수를 부호화함과 함께, 필터 계수, 인트라 예측 모드 정보, 인터 예측 모드 정보, 및 양자화 파라미터 등의 각종 정보를, 부호화 데이터의 헤더 정보의 일부로 한다(다중화함). 가역 부호화부(106)는, 부호화해서 얻어진 부호화 데이터를 축적 버퍼(107)에 공급해서 축적시킨다.
예를 들어, 가역 부호화부(106)에 있어서는, 가변길이 부호화 또는 산술 부호화 등의 가역 부호화 처리가 행해진다. 가변길이 부호화로서는, H.264/AVC 방식으로 정해져 있는 CAVLC(Context-Adaptive Variable Length Coding) 등을 들 수 있다. 산술 부호화로서는, CABAC(Context-Adaptive Binary Arithmetic Coding) 등을 들 수 있다.
축적 버퍼(107)는, 가역 부호화부(106)로부터 공급된 부호화 데이터를, 일시적으로 보유하고, 소정의 타이밍에 있어서, H.264/AVC 방식으로 부호화된 부호화 화상으로서, 예를 들어, 후단의 도시하지 않는 기록 장치나 전송로 등에 출력한다.
또한, 양자화부(105)에 있어서 양자화된 변환 계수는, 역양자화부(108)에도 공급된다. 역양자화부(108)는, 그 양자화된 변환 계수를, 양자화부(105)에 의한 양자화에 대응하는 방법으로 역양자화한다. 역양자화부(108)는, 서브 매크로 블록 역양자화부(122)와 연계하면서, 양자화부(105)에 있어서 설정된 서브 매크로 블록마다의 양자화 파라미터를 사용하여 역양자화를 행한다. 역양자화부(108)는, 얻어진 변환 계수를, 역직교 변환부(109)에 공급한다.
역직교 변환부(109)는, 공급된 변환 계수를, 직교 변환부(104)에 의한 직교 변환 처리에 대응하는 방법으로 역직교 변환한다. 역직교 변환된 출력(복원된 차분 정보)은, 연산부(110)에 공급된다.
연산부(110)는, 역직교 변환부(109)로부터 공급된 역직교 변환 결과, 즉, 복원된 차분 정보에, 선택부(116)를 통해서 인트라 예측부(114) 혹은 움직임 예측·보상부(115)로부터 공급되는 예측 화상을 가산하고, 국부적으로 복호된 화상(복호 화상)을 얻는다.
예를 들어, 차분 정보가, 인트라 부호화가 행해지는 화상에 대응하는 경우, 연산부(110)는, 그 차분 정보에 인트라 예측부(114)로부터 공급되는 예측 화상을 가산한다. 또한, 예를 들어, 차분 정보가, 인터 부호화가 행해지는 화상에 대응하는 경우, 연산부(110)는, 그 차분 정보에 움직임 예측·보상부(115)로부터 공급되는 예측 화상을 가산한다.
그 가산 결과는, 디블록 필터(111) 또는 프레임 메모리(112)에 공급된다.
디블록 필터(111)는, 적절하게 디블록 필터 처리를 행함으로써 복호 화상의 블록 왜곡을 제거함과 함께, 예를 들어 위너 필터를 사용하여 적절하게 루프 필터 처리를 행함으로써 화질 개선을 행한다. 디블록 필터(111)는, 각 화소를 클래스 분류하고, 클래스마다 적절한 필터 처리를 실시한다. 디블록 필터(111)는, 그 필터 처리 결과를 프레임 메모리(112)에 공급한다.
프레임 메모리(112)는, 소정의 타이밍에 있어서, 축적되어 있는 참조 화상을, 선택부(113)를 통해서 인트라 예측부(114) 또는 움직임 예측·보상부(115)에 출력한다.
예를 들어, 인트라 부호화가 행해지는 화상의 경우, 프레임 메모리(112)는, 참조 화상을, 선택부(113)를 통해서 인트라 예측부(114)에 공급한다. 또한, 예를 들어, 인터 부호화가 행해지는 경우, 프레임 메모리(112)는, 참조 화상을, 선택부(113)를 통해서 움직임 예측·보상부(115)에 공급한다.
선택부(113)는, 프레임 메모리(112)로부터 공급되는 참조 화상이 인트라 부호화를 행하는 화상일 경우, 그 참조 화상을 인트라 예측부(114)에 공급한다. 또한, 선택부(113)는, 프레임 메모리(112)로부터 공급되는 참조 화상이 인터 부호화를 행하는 화상일 경우, 그 참조 화상을 움직임 예측·보상부(115)에 공급한다.
인트라 예측부(114)는, 화면 내의 화소값을 사용하여 예측 화상을 생성하는 인트라 예측(화면내 예측)을 행한다. 인트라 예측부(114)는, 복수의 모드(인트라 예측 모드)에 의해 인트라 예측을 행한다.
인트라 예측부(114)는, 모든 인트라 예측 모드에서 예측 화상을 생성하고, 각 예측 화상을 평가하고, 최적인 모드를 선택한다. 인트라 예측부(114)는, 최적인 인트라 예측 모드를 선택하면, 그 최적의 모드에서 생성된 예측 화상을, 선택부(116)를 통해서 연산부(103)나 연산부(110)에 공급한다.
또한, 상술한 바와 같이, 인트라 예측부(114)는, 채용한 인트라 예측 모드를 나타내는 인트라 예측 모드 정보 등의 정보를, 적절하게 가역 부호화부(106)에 공급한다.
움직임 예측·보상부(115)는, 인터 부호화가 행해지는 화상에 대해서, 화면 재배열 버퍼(102)로부터 공급되는 입력 화상과, 선택부(113)를 통해서 프레임 메모리(112)로부터 공급되는 참조 화상을 사용하여, 움직임 예측을 행하고, 검출된 움직임 벡터에 따라서 움직임 보상 처리를 행하고, 예측 화상(인터 예측 화상 정보)을 생성한다.
움직임 예측·보상부(115)는, 후보로 되는 모든 인터 예측 모드의 인터 예측 처리를 행하고, 예측 화상을 생성한다. 움직임 예측·보상부(115)는, 생성된 예측 화상을, 선택부(116)를 통해서 연산부(103)이나 연산부(110)에 공급한다.
또한, 움직임 예측·보상부(115)는, 채용된 인터 예측 모드를 나타내는 인터 예측 모드 정보나, 산출한 움직임 벡터를 나타내는 움직임 벡터 정보를 가역 부호화부(106)에 공급한다.
선택부(116)는, 인트라 부호화를 행하는 화상의 경우, 인트라 예측부(114)의 출력을 연산부(103)나 연산부(110)에 공급하고, 인터 부호화를 행하는 화상의 경우, 움직임 예측·보상부(115)의 출력을 연산부(103)나 연산부(110)에 공급한다.
레이트 제어부(117)는, 축적 버퍼(107)에 축적된 압축 화상에 기초하여, 오버플로 혹은 언더플로가 발생하지 않도록, 양자화부(105)의 양자화 동작의 레이트를 제어한다. 레이트 제어부(117)는, 매크로 블록이 복수로 분할된 소영역인 서브 매크로 블록마다, 화상의 복잡함을 나타내는 정보를 양자화부(105)에 공급한다.
예를 들어, 레이트 제어부(117)는, 이 화상의 복잡함을 나타내는 정보로서, 화소값의 분산을 나타내는 정보인 액티비티를 양자화부(105)에 제공한다. 물론, 이 화상의 복잡함을 나타내는 정보는 어떤 정보이어도 된다.
서브 매크로 블록 양자화부(121)는, 양자화부(105)로부터, 서브 매크로 블록마다의 화상의 복잡함을 나타내는 정보를 취득하고, 그 정보에 기초하여 서브 매크로 블록마다의 양자화값(양자화 스텝)을 설정하고, 그 값을 양자화부(105)에 되돌려보낸다.
서브 매크로 블록 역양자화부(122)는, 역양자화부(108)로부터 양자화 파라미터를 취득하고, 그들의 값을 사용하여 서브 매크로 블록마다의 양자화값을 구하고, 그것을 역양자화부(108)에 되돌려보낸다.
[AVC의 양자화]
여기서, 종래의 양자화 처리로서, AVC(Advanced Video Coding)에 있어서 정해져 있는 양자화를 예로 설명한다.
AVC에 있어서 정해져 있는 정수 변환 행렬[H]은, 이하의 식(1)에 나타내지는 직교 변환 행렬의 조건을 만족하지 않지만, 정수 변환 후, 각 성분에 대하여 다른 양자화 처리를 행하고, 정수 변환과, 양자화를 조합함으로써, 직교 변환 처리가 행해지게 된다.
[H][H]T=[I] …(1)
AVC에 있어서는, 양자화를 행하기 위해서, 「0」 내지 「51」의 값을 취할 수 있는, 양자화 파라미터 QP(Quantization Parameter)를, 각 매크로 블록에 대하여 정의하는 것이 가능하다.
예를 들어, A(QP)와 B(QP)k, QP의 값에 의하지 않고, 이하의 식(2)를 만족하는 값이라고 하자.
A(QP)*B(QP)=2m+n …(2)
AVC에 있어서의 직교 변환 및 역직교 변환은, 이하의 식(3) 및 식(4)와 같은 연산에 의해 실현할 수 있다.
d=c*A(QP)/2m …(3)
c'=d*B(QP)/2n …(4)
또한, c는 양자화전의 직교 변환 계수, d는 양자화 후의 직교 변환 계수, c'는 역양자화 후의 직교 변환 계수이다.
이와 같은 처리를 행함으로써, AVC에 있어서는, 제산이 아니라 시프트 연산에 의해서만, 양자화 및 역양자화 처리를 실현하는 것이 가능하다.
또한, A 및 B의 값은, 성분마다 다른 값을 갖게 된다.
양자화 파라미터 QP는, 예를 들어 6으로부터 12로와 같이, 그 값이 6 증가했을 때, 2배 거친 양자화 처리가 행해지도록 설계되어 있다.
또한, 특히, 보다 낮은 비트 레이트, 즉, 보다 높은 QP에 있어서는, 색차 신호에 있어서의 열화가 눈에 띄기 쉽다. 따라서, 휘도 신호에 대한 양자화 파라미터 QPY에 대하여, 색차 신호에 대한 디폴트의 양자화 파라미터 QPC가, 도 2에 도시되는 표와 같이 정의되어 있다.
사용자는, 화상 압축 정보 중에 포함되는 ChromaQPOffset에 관한 정보를 설정함으로써, 이 관계를 제어할 수 있다.
또한, High Profile 이상에 있어서는, ChromaQPOffset 및 2ndChromaQPOffset를 사용하여, Cb/Cr 성분에 대한 양자화 파라미터를 독립적으로 설정하는 것이 가능하다.
[양자화 파라미터 산출]
AVC 부호화 방식, 및, 비특허 문헌 1이나 비특허 문헌 2에 기재된 부호화 방식에 있어서는, 각각의 매크로 블록에 대한 양자화 파라미터 MB_QP는, 이하와 같이 산출된다.
즉, 우선, 시퀀스 파라미터 세트에 존재하는 bit_depth_luma_minus8로부터, QpBdOffsetY가, 이하의 식(5)와 같이 산출된다.
QpBdOffsetY=6*bit_depth_luma_minus8 …(5)
다음에, 픽쳐 파라미터 세트에 있어서의 pic_init_qp_minus26에 의해, 각 픽쳐에 있어서의 양자화 파라미터의 초기값이 지정된다.
다음에, 슬라이스 레이어에 있어서 규정되는 slice_qp_delta에 의해, 당해 슬라이스에 있어서의 양자화 파라미터 SliceQPY가, 이하의 식(6)과 같이 산출된다.
SliceQPY=26+pic_init_qp_minus26+slice_qp_delta …(6)
최후에, 매크로 블록 레이어에 있어서의 mb_qp_delta를 사용하여, 각각의 매크로 블록에 대한 양자화 파라미터 MB_QP가, 이하의 식(7)과 같이 산출된다.
MB_QP=((MB_QPPrev+mb_qp_delta+52+2*QpBdOffsetYY)%(52+QpBdOffsetY))-QpBdOffsetY …(7)
여기서, MB_QPPrev는, 직전의 매크로 블록에 있어서의 양자화 파라미터이다.
본 기술에 있어서는, 이것에 부가하여, 또한, 화상 압축 중에 있어서의, 서브 매크로 블록에, submb_qp_delta에 관한 정보가 포함되어 있다.
이 정보를 사용하여, 각 서브 매크로 블록에 대한 양자화 파라미터 SubMB_QP가, 이하의 식(8)과 같이 산출된다.
SubMB_QP=Clip(0,51, MB_QP+submb_qp_delta) …(8)
여기서, Clip(min, max, value)는, 이하의 수학식 1과 같은 반환값을 갖는 함수이다.
Figure 112018010660635-pat00001
즉, 각 서브 매크로 블록에 대한 양자화 파라미터 SubMB_QP는, 이하의 수학식 2와 같이 산출된다. 단, 미리 정의되어 있는 최소의 양자화 파라미터를 minQP로 하고, 미리 정의되어 있는 최대의 양자화 파라미터를 maxQP로 한다.
Figure 112018010660635-pat00002
또한, 화상 압축 정보 내에 있어서, submb_qp_delta가 존재하지 않는 경우, 그 값은 「0」인 것으로 해서, 당해 매크로 블록에 있어서의 양자화 파라미터가, 당해 서브 매크로 블록에도 적용되게 된다.
[양자화부]
도 5는, 도 1의 양자화부(105)의 상세한 구성예를 설명하는 블록도이다. 도 5에 도시되는 바와 같이, 양자화부(105)는, 서브 매크로 블록 액티비티 버퍼(151), 양자화 파라미터 산출부(152), 및 양자화 처리부(153)를 갖는다.
서브 매크로 블록 액티비티 버퍼(151)는, 레이트 제어부(117)로부터 공급되는 액티비티를 보유한다. AVC 부호화 방식에 있어서는, MPEG-2 Test Model에 있어서 규정되어 있는 바와 같은, 액티비티에 기초하는 적응 양자화가 행해지지만, 레이트 제어부(117)는, 서브 매크로 블록마다 액티비티(서브 매크로 블록 액티비티라고도 칭함)의 산출을 행한다. 서브 매크로 블록 액티비티의 산출 방법은, 매크로 블록마다 액티비티를 산출하는 종래의 경우와 마찬가지이다.
서브 매크로 블록 액티비티 버퍼(151)는, 레이트 제어부(117)로부터 공급되는 서브 매크로 블록 액티비티를 보유하고, 소정량(예를 들어 1화면분)마다, 그 보유하고 있는 서브 매크로 블록 액티비티를 서브 매크로 블록 양자화부(121)에 공급한다.
서브 매크로 블록 양자화부(121)는, 서브 매크로 블록 액티비티 버퍼(151)로부터 공급되는 서브 매크로 블록 액티비티를 사용하여, 각 서브 매크로 블록에 대해서, 양자화값을 산출한다. 이 서브 매크로 블록마다의 양자화값은, 매크로 블록마다의 액티비티로부터 매크로 블록마다의 양자화값을 산출하는 경우와 마찬가지의 방법에 의해 산출할 수 있다.
각 서브 매크로 블록에 대해서 양자화값을 구하면, 서브 매크로 블록 양자화부(121)는, 그 서브 매크로 블록마다의 양자화값을, 양자화 파라미터 산출부(152)에 공급한다.
양자화 파라미터 산출부(152)는, 서브 매크로 블록 양자화부(121)로부터 공급되는 서브 매크로 블록마다의 양자화값을 사용하여, 각종 양자화 파라미터를 산출한다.
예를 들어, 양자화 파라미터 산출부(152)는, pic_init_qp_minus26, slice_qp_delta, 및 mb_qp_delta 등의 양자화 파라미터를 산출한다. 양자화 파라미터 산출부(152)는, 서브 매크로 블록마다의 양자화값으로부터, 매크로 블록마다의 양자화값을 구할 수 있으므로, 종래의 AVC 부호화 방식 등의 경우와 마찬가지로, 이들의 각종 양자화 파라미터를 산출하고, 설정한다.
양자화 파라미터 산출부(152)는, 또한, 매크로 블록마다의 양자화 파라미터 MB_QP와, 서브 매크로 블록마다의 양자화 파라미터 SubMB_QP의 차분을 나타내는 양자화 파라미터 submb_qp_delta를 구한다. 이 서브 매크로 블록마다의 양자화 파라미터는 복호측에 전송시킬 필요가 있다. 그래서, 이와 같이 차분값으로 함으로써, 이 서브 매크로 블록마다의 양자화 파라미터의 부호량을 저감시킬 수 있다. 말하자면, 이 양자화 파라미터 submb_qp_delta는, 양자화 파라미터 SubMB_QP의 전송용 포맷이다. 서브 매크로 블록마다의 양자화 파라미터 SubMB_QP는, 서브 매크로 블록마다의 양자화값을 변환함으로써 얻어진다. 마찬가지로, 매크로 블록마다의 양자화 파라미터 MB_QP는, 매크로 블록마다의 양자화값을 변환함으로써 얻어진다. 양자화 파라미터 산출부(152)는, 예를 들어, 상술한 식(35)를 사용하여, 각 서브 매크로 블록에 대해서 submb_qp_delta를 산출한다.
양자화 파라미터 산출부(152)는, 서브 매크로 블록마다의 양자화값을 양자화 처리부(153)에 공급한다. 또한, 양자화 파라미터 산출부(152)는, 산출한 각종 양자화 파라미터(구체적으로는, pic_init_qp_minus26, slice_qp_delta, 및 mb_qp_delta 등)를 가역 부호화부(106)에 공급하고, 화상을 부호화한 부호화 스트림과 함께 전송시킨다. 또한, 상술한 바와 같이, submb_qp_delta의 값이 「0」인 경우, submb_qp_delta의 전송은 생략된다. 즉, 그 경우, submb_qp_delta 이외의 양자화 파라미터가 가역 부호화부(106)에 공급된다.
또한, 양자화 파라미터 산출부(152)는, 서브 매크로 블록마다의 양자화값을 역양자화부(108)에도 공급한다.
양자화 처리부(153)는, 직교 변환부(104)로부터 공급되는 직교 변환 계수를, 서브 매크로 블록마다의 양자화값을 사용하여 양자화한다.
양자화 처리부(153)는, 양자화된 직교 변환 계수를, 가역 부호화부(106)와 역양자화부(108)에 공급한다.
또한, 역양자화부(108)는, 서브 매크로 블록 역양자화부(122)를 사용하여, 상술한 양자화부(105)에 의해 양자화된 직교 변환 계수를 역양자화한다. 화상 부호화 장치(100)에 대응하는 화상 복호 장치에 있어서도, 이 역양자화 처리와 마찬가지의 처리가 행해지므로, 역양자화의 상세에 관한 설명은, 화상 복호 장치의 설명 시에 행한다.
AVC 부호화 방식 등의 종래의 경우, 1매크로 블록에 대하여 1개의 양자화 파라미터밖에 설정할 수 없었다. 따라서, 1개의 매크로 블록 내에, 평탄한 영역과, 텍스쳐를 포함하는 영역이 혼재하는 경우, 그 양쪽의 영역에 적절한 양자화 파라미터를 설정하는 것이 곤란해진다.
특히, 비특허 문헌 2 등에 있어서 제안되어 있는 확장된 매크로 블록(확장 부분 영역)과 같이, 매크로 블록의 사이즈가 커질수록, 그 영역 내에 서로 다른 특징을 갖는 화상이 혼재할 가능성이 높아져, 그 각 영역의 특성에 따른, 적응 양자화를 행하는 것이 보다 곤란해진다.
이에 반해, 화상 부호화 장치(100)는, 레이트 제어부(117)에 있어서 서브 매크로 블록마다 화상의 복잡함을 나타내는 지표를 산출하고, 서브 매크로 블록 양자화부(121)에 있어서 서브 매크로 블록마다 양자화값을 산출할 수 있다. 즉, 양자화 처리부(153)는, 서브 매크로 블록마다 적절한 양자화값을 사용하여 양자화 처리를 행할 수 있다.
이에 의해, 화상 부호화 장치(100)는, 화상의 내용에 보다 적합한 양자화 처리를 행할 수 있다. 특히, 매크로 블록 사이즈가 확장되고, 단일의 매크로 블록 내에, 편평한 에어리어와 텍스쳐를 포함하는 에어리어의 양쪽을 포함하고 있는 경우라도, 화상 부호화 장치(100)는, 각각의 에어리어에 적합한 적응 양자화 처리를 행하여, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
예를 들어, 도 6에 도시되는 화상(160)에 있어서, 매크로 블록(161)에는 플랫 영역밖에 포함되지 않는다. 따라서, 가령, 화상 부호화 장치(100)가, 이러한 매크로 블록(161)에 대하여 단일의 양자화 파라미터를 사용한 양자화 처리를 행해도, 특히 화질상 문제로 되는 일이 없다.
이에 반해, 매크로 블록(162)에는, 플랫 영역과, 텍스쳐 영역의 양쪽을 포함하고 있다. 단일의 양자화 파라미터를 사용한 양자화 처리에서는, 플랫 영역과 텍스쳐 영역의 양쪽에 대하여 적절한 적응 양자화를 행할 수 없다. 따라서, 가령, 화상 부호화 장치(100)가, 이러한 매크로 블록(161)에 대하여 단일의 양자화 파라미터를 사용한 양자화 처리를 행하는 경우, 복호 화상의 주관 화질이 저감할 우려가 있다.
이러한 경우라도, 화상 부호화 장치(100)는, 상술한 바와 같이 서브 매크로 블록 단위로 양자화값을 산출할 수 있으므로, 보다 적절한 양자화 처리를 행하여, 복호 화상의 주관 화질의 저감을 억제시킬 수 있다.
또한, 축적 버퍼(107)에 있어서, 각각의 픽쳐에 대한 총 부호량이 오버플로를 일으키려고 할 때에도, 양자화 파라미터에 의한 제어가 행해진다. 따라서, 이때에 상술한 바와 같이, 양자화부(105)가 서브 매크로 블록 단위로 양자화값을 산출하고, 양자화를 행하도록 함으로써, 화상 부호화 장치(100)는, 보다 미세한 단위로 오버플로 대책의 제어를 행할 수 있다.
또한, submb_qp_delta의 값이 「0」인 경우, 그 submb_qp_delta의 전송을 생략하도록 했으므로, 불필요한 부호화 효율의 저감을 억제할 수 있다. submb_qp_delta의 값이 「0」인 경우, 서브 매크로 블록마다의 양자화 파라미터 SubMB_QP와 매크로 블록마다의 양자화 파라미터 MB_QP가 서로 동일하므로, 복호측에 있어서, 매크로 블록마다의 양자화 파라미터 MB_QP를 서브 매크로 블록마다의 양자화 파라미터 SubMB_QP로 할 수 있으므로, submb_qp_delta의 값(「0」)은 불필요하다. 따라서, 상술한 바와 같이 submb_qp_delta의 전송을 생략할 수 있다. 물론, 값이 「0」인 submb_qp_delta를 전송하도록 할 수도 있지만, submb_qp_delta의 전송을 생략함으로써, 그만큼 부호화 효율을 향상시킬 수 있다.
[부호화 처리의 흐름]
다음에, 이상과 같은 화상 부호화 장치(100)에 의해 실행되는 각 처리의 흐름에 대해서 설명한다. 최초에, 도 7의 플로우차트를 참조하여, 부호화 처리의 흐름의 예를 설명한다.
스텝 S101에 있어서, A/D 변환부(101)는 입력된 화상을 A/D 변환한다. 스텝 S102에 있어서, 화면 재배열 버퍼(102)는, A/D 변환된 화상을 기억하고, 각 픽쳐가 표시하는 순서로부터 부호화할 순서로의 재배열을 행한다.
스텝 S103에 있어서, 연산부(103)는, 스텝 S102의 처리에 의해 재배열된 화상과, 예측 화상의 차분을 연산한다. 예측 화상은, 인터 예측하는 경우에는 움직임 예측·보상부(115)로부터, 인트라 예측하는 경우에는 인트라 예측부(114)로부터, 선택부(116)를 통해서 연산부(103)에 공급된다.
차분 데이터는 원래의 화상 데이터에 비해서 데이터량이 저감된다. 따라서, 화상을 그대로 부호화하는 경우에 비해서, 데이터량을 압축할 수 있다.
스텝 S104에 있어서, 직교 변환부(104)는, 스텝 S103의 처리에 의해 생성된 차분 정보를 직교 변환한다. 구체적으로는, 이산 코사인 변환, 카루넨·루베 변환 등의 직교 변환이 행해지고, 변환 계수가 출력된다.
스텝 S105에 있어서, 양자화부(105) 및 서브 매크로 블록 양자화부(121)는, 양자화 파라미터를 구한다. 양자화 파라미터 산출 처리의 흐름의 상세에 대해서는 후술한다.
스텝 S106에 있어서, 양자화부(105)의 양자화 처리부(153)는, 스텝 S105의 처리에 의해 산출된 서브 매크로 블록마다의 양자화값을 사용하여, 스텝 S104의 처리에 의해 얻어진 직교 변환 계수를 양자화한다.
스텝 S106의 처리에 의해 양자화된 차분 정보는, 다음과 같이 해서 국부적으로 복호된다. 즉, 스텝 S107에 있어서, 역양자화부(108)는 스텝 S106의 처리에 의해 생성된 양자화된 직교 변환 계수(양자화 계수라고도 칭함)를 양자화부(105)의 특성에 대응하는 특성으로 역양자화한다. 스텝 S108에 있어서, 역직교 변환부(109)는, 스텝 S107의 처리에 의해 얻어진 직교 변환 계수를, 직교 변환부(104)의 특성에 대응하는 특성으로 역직교 변환한다.
스텝 S109에 있어서, 연산부(110)는, 예측 화상을 국부적으로 복호된 차분 정보에 가산하고, 국부적으로 복호된 화상(연산부(103)에의 입력에 대응하는 화상)을 생성한다. 스텝 S110에 있어서 디블록 필터(111)는, 스텝 S109의 처리에 의해 생성된 화상을 필터링한다. 이에 의해 블록 왜곡이 제거된다.
스텝 S111에 있어서, 프레임 메모리(112)는, 스텝 S110의 처리에 의해 블록 왜곡이 제거된 화상을 기억한다. 또한, 프레임 메모리(112)에는 디블록 필터(111)에 의해 필터 처리되어 있지 않은 화상도 연산부(110)로부터 공급되고, 기억된다.
스텝 S112에 있어서, 인트라 예측부(114)는, 인트라 예측 모드의 인트라 예측 처리를 행한다. 스텝 S113에 있어서, 움직임 예측·보상부(115)는, 인터 예측 모드에서의 움직임 예측이나 움직임 보상을 행하는 인터 움직임 예측 처리를 행한다.
스텝 S114에 있어서, 선택부(116)는, 인트라 예측부(114) 및 움직임 예측·보상부(115)로부터 출력된 각 코스트 함수값에 기초하여, 최적 예측 모드를 결정한다. 즉, 선택부(116)는, 인트라 예측부(114)에 의해 생성된 예측 화상과, 움직임 예측·보상부(115)에 의해 생성된 예측 화상 중 어느 한쪽을 선택한다.
또한, 이 어떠한 예측 화상이 선택되었는지를 나타내는 선택 정보는, 인트라 예측부(114) 및 움직임 예측·보상부(115) 중, 예측 화상이 선택된 쪽에 공급된다. 최적 인트라 예측 모드의 예측 화상이 선택된 경우, 인트라 예측부(114)는, 최적 인트라 예측 모드를 나타내는 정보(즉, 인트라 예측 모드 정보)를, 가역 부호화부(106)에 공급한다.
최적 인터 예측 모드의 예측 화상이 선택된 경우, 움직임 예측·보상부(115)는, 최적 인터 예측 모드를 나타내는 정보와, 필요에 따라서, 최적 인터 예측 모드에 따른 정보를 가역 부호화부(106)에 출력한다. 최적 인터 예측 모드에 따른 정보로서는, 움직임 벡터 정보나 플래그 정보, 참조 프레임 정보 등을 들 수 있다.
스텝 S115에 있어서, 가역 부호화부(106)는, 스텝 S106의 처리에 의해 양자화된 변환 계수를 부호화한다. 즉, 차분 화상(인터의 경우, 2차 차분 화상)에 대하여, 가변길이 부호화나 산술 부호화 등의 가역 부호화가 행해진다.
또한, 가역 부호화부(106)는, 스텝 S105에 있어서 산출된 양자화 파라미터를 부호화하고, 부호화 데이터에 부가한다.
또한, 가역 부호화부(106)는, 스텝 S114의 처리에 의해 선택된 예측 화상의 예측 모드에 관한 정보를 부호화하고, 차분 화상을 부호화해서 얻어지는 부호화 데이터에 부가한다. 즉, 가역 부호화부(106)는, 인트라 예측부(114)로부터 공급되는 인트라 예측 모드 정보, 또는, 움직임 예측·보상부(115)로부터 공급되는 최적 인터 예측 모드에 따른 정보 등도 부호화하고, 부호화 데이터에 부가한다.
스텝 S116에 있어서 축적 버퍼(107)는, 가역 부호화부(106)로부터 출력되는 부호화 데이터를 축적한다. 축적 버퍼(107)에 축적된 부호화 데이터는, 적절하게 읽어내어져, 전송로를 통해서 복호측에 전송된다.
스텝 S117에 있어서 레이트 제어부(117)는, 스텝 S116의 처리에 의해 축적 버퍼(107)에 축적된 압축 화상에 기초하여, 오버플로 혹은 언더플로가 발생하지 않도록, 양자화부(105)의 양자화 동작의 레이트를 제어한다.
스텝 S117의 처리가 종료하면, 부호화 처리가 종료된다.
[양자화 파라미터 산출 처리의 흐름]
다음에, 도 8의 플로우차트를 참조하여, 도 7의 스텝 S105에 있어서 실행되는 양자화 파라미터 산출 처리의 흐름의 예를 설명한다.
양자화 파라미터 산출 처리가 개시되면, 스텝 S131에 있어서, 서브 매크로 블록 액티비티 버퍼(151)는, 레이트 제어부(117)로부터 공급되는 서브 매크로 블록 액티비티를 취득한다. 서브 매크로 블록 액티비티 버퍼(151)는, 그 취득한 서브 매크로 블록 액티비티를, 예를 들어 1화면분 보유한다.
스텝 S132에 있어서, 서브 매크로 블록 양자화부(121)는, 서브 매크로 블록 액티비티 버퍼(151)로부터, 서브 매크로 블록 액티비티를, 예를 들어 1화면분 취득한다. 그리고, 서브 매크로 블록 양자화부(121)는, 취득한 서브 매크로 블록 액티비티를 사용하여, 서브 매크로 블록마다의 양자화값을 산출한다.
스텝 S133에 있어서, 양자화 파라미터 산출부(152)는, 스텝 S132에 있어서 산출된 서브 매크로 블록마다의 양자화값을 사용하여, 양자화 파라미터 pic_init_qp_minus26을 구한다.
스텝 S134에 있어서, 양자화 파라미터 산출부(152)는, 스텝 S132에 있어서 산출된 서브 매크로 블록마다의 양자화값을 사용하여, 양자화 파라미터 slice_qp_delta를 구한다.
스텝 S135에 있어서, 양자화 파라미터 산출부(152)는, 스텝 S132에 있어서 산출된 서브 매크로 블록마다의 양자화값을 사용하여, 양자화 파라미터 mb_qp_delta를 구한다.
스텝 S136에 있어서, 양자화 파라미터 산출부(152)는, 스텝 S132에 있어서 산출된 서브 매크로 블록마다의 양자화값을 사용하여, 양자화 파라미터 submb_qp_delta를 구한다.
이상과 같이 각종 양자화 파라미터를 구하면, 양자화부(105)는, 양자화 파라미터 산출 처리를 종료하고, 처리를 도 7의 스텝 S105로 복귀시키고, 스텝 S106 이후의 처리를 실행시킨다.
이상과 같이 부호화 처리나 양자화 파라미터 산출 처리를 행하므로, 화상 부호화 장치(100)는, 서브 매크로 블록마다 양자화값을 설정할 수 있어, 보다 적절한 양자화 처리를 행할 수 있다.
또한, 이와 같이 산출된 양자화 파라미터를 화상 복호 장치에 전송하므로, 화상 부호화 장치(100)는, 그 화상 복호 장치가 서브 매크로 블록마다 양자화값을 구하고, 그것을 사용하여 역양자화를 행하도록 할 수 있다.
<2. 제2 실시 형태>
[화상 복호 장치]
도 9는, 본 기술을 적용한 화상 복호 장치의 주된 구성예를 도시하는 블록도이다. 도 9에 도시되는 화상 복호 장치(200)는, 화상 부호화 장치(100)에 대응하는 복호 장치이다.
화상 부호화 장치(100)로부터 부호화된 부호화 데이터는, 소정의 전송로를 통하여, 이 화상 부호화 장치(100)에 대응하는 화상 복호 장치(200)에 전송되고, 복호되는 것으로 한다.
도 9에 도시되는 바와 같이, 화상 복호 장치(200)는, 축적 버퍼(201), 가역 복호부(202), 역양자화부(203), 역직교 변환부(204), 연산부(205), 디블록 필터(206), 화면 재배열 버퍼(207), 및 D/A 변환부(208)를 갖는다. 또한, 화상 복호 장치(200)는, 프레임 메모리(209), 선택부(210), 인트라 예측부(211), 움직임 예측·보상부(212), 및 선택부(213)를 갖는다.
또한, 화상 복호 장치(200)는, 서브 매크로 블록 역양자화부(221)를 갖는다.
축적 버퍼(201)는, 전송되어 온 부호화 데이터를 축적한다. 이 부호화 데이터는, 화상 부호화 장치(100)에 의해 부호화된 것이다. 가역 복호부(202)는, 축적 버퍼(201)로부터 소정의 타이밍에서 읽어내어진 부호화 데이터를, 도 1의 가역 부호화부(106)의 부호화 방식에 대응하는 방식으로 복호한다.
역양자화부(203)는, 서브 매크로 블록 역양자화부(221)와 연계해서 동작하고, 가역 복호부(202)에 의해 복호되어 얻어진 계수 데이터(양자화 계수)를, 도 1의 양자화부(105)의 양자화 방식에 대응하는 방식으로 역양자화한다. 즉, 역양자화부(203)는, 화상 부호화 장치(100)로부터 공급된, 서브 매크로 블록마다 산출된 양자화 파라미터를 사용하여, 도 1의 역양자화부(108)와 마찬가지의 방법으로 양자화 계수의 역양자화를 행한다.
역양자화부(203)는, 역양자화된 계수 데이터, 즉, 직교 변환 계수를, 역직교 변환부(204)에 공급한다. 역직교 변환부(204)는, 도 1의 직교 변환부(104)의 직교 변환 방식에 대응하는 방식으로, 그 직교 변환 계수를 역직교 변환하고, 화상 부호화 장치(100)에 있어서 직교 변환되기 전의 잔차 데이터에 대응하는 복호 잔차 데이터를 얻는다.
역직교 변환되어 얻어진 복호 잔차 데이터는, 연산부(205)에 공급된다. 또한, 연산부(205)에는, 선택부(213)를 통하여, 인트라 예측부(211) 혹은 움직임 예측·보상부(212)로부터 예측 화상이 공급된다.
연산부(205)는, 그 복호 잔차 데이터와 예측 화상을 가산하고, 화상 부호화 장치(100)의 연산부(103)에 의해 예측 화상이 감산되기 전의 화상 데이터에 대응하는 복호 화상 데이터를 얻는다. 연산부(205)는, 그 복호 화상 데이터를 디블록 필터(206)에 공급한다.
디블록 필터(206)는, 공급된 복호 화상의 블록 왜곡을 제거한 후, 화면 재배열 버퍼(207)에 공급한다.
화면 재배열 버퍼(207)는, 화상의 재배열을 행한다. 즉, 도 1의 화면 재배열 버퍼(102)에 의해 부호화의 순서를 위해 재배열된 프레임의 순서가, 원래의 표시의 순서대로 재배열된다. D/A 변환부(208)는, 화면 재배열 버퍼(207)로부터 공급된 화상을 D/A 변환하고, 도시하지 않는 디스플레이에 출력하고, 표시시킨다.
디블록 필터(206)의 출력은, 또한, 프레임 메모리(209)에 공급된다.
프레임 메모리(209), 선택부(210), 인트라 예측부(211), 움직임 예측·보상부(212), 및 선택부(213)는, 화상 부호화 장치(100)의 프레임 메모리(112), 선택부(113), 인트라 예측부(114), 움직임 예측·보상부(115), 및 선택부(116)에 각각 대응한다.
선택부(210)는, 인터 처리되는 화상과 참조되는 화상을 프레임 메모리(209)로부터 읽어내고, 움직임 예측·보상부(212)에 공급한다. 또한, 선택부(210)는, 인트라 예측에 사용되는 화상을 프레임 메모리(209)로부터 읽어내고, 인트라 예측부(211)에 공급한다.
인트라 예측부(211)에는, 헤더 정보를 복호해서 얻어진 인트라 예측 모드를 나타내는 정보 등이 가역 복호부(202)로부터 적절하게 공급된다. 인트라 예측부(211)는, 이 정보에 기초하여, 프레임 메모리(209)로부터 취득한 참조 화상으로부터 예측 화상을 생성하고, 생성한 예측 화상을 선택부(213)에 공급한다.
움직임 예측·보상부(212)는, 헤더 정보를 복호해서 얻어진 정보(예측 모드 정보, 움직임 벡터 정보, 참조 프레임 정보, 플래그, 및 각종 파라미터 등)를 가역 복호부(202)로부터 취득한다.
움직임 예측·보상부(212)는, 가역 복호부(202)로부터 공급되는 그들의 정보에 기초하여, 프레임 메모리(209)로부터 취득한 참조 화상으로부터 예측 화상을 생성하고, 생성한 예측 화상을 선택부(213)에 공급한다.
선택부(213)는, 움직임 예측·보상부(212) 또는 인트라 예측부(211)에 의해 생성된 예측 화상을 선택하고, 연산부(205)에 공급한다.
서브 매크로 블록 역양자화부(221)는, 역양자화부(203)로부터, 양자화 파라미터를 취득하고, 수학식 2를 사용하여, 서브 매크로 블록마다의 양자화값을 구하고, 그것을 역양자화부(203)에 되돌려보낸다.
[역양자화부]
도 10은, 역양자화부(203)의 상세한 구성예를 설명하는 블록도이다.
도 10에 도시되는 바와 같이, 역양자화부(203)는, 양자화 파라미터 버퍼(251), 직교 변환 계수 버퍼(252), 및 역양자화 처리부(253)를 갖는다.
화상 부호화 장치(100)로부터 공급된 부호화 데이터의 픽쳐 파라미터 세트나, 슬라이스 헤더와 같은, 각각의 레이어에 있어서의, 양자화에 관한 파라미터는, 가역 복호부(202)에 있어서 복호되어, 양자화 파라미터 버퍼(251)에 공급된다. 양자화 파라미터 버퍼(251)는, 그 양자화 파라미터를 적절하게 보유하고, 소정의 타이밍에서 서브 매크로 블록 역양자화부(221)에 공급한다.
서브 매크로 블록 역양자화부(221)는, 양자화 파라미터 버퍼(251)로부터 공급되는 양자화 파라미터를 사용하여, 예를 들어, 식(5) 내지 수학식 2와 같이 해서, 각 서브 매크로 블록에 대해서 양자화 파라미터 SubMB_QP를 산출하고, 그것을 서브 매크로 블록마다의 양자화값으로 변환하고, 그것을 역양자화 처리부(253)에 공급한다.
또한, 제1 실시 형태에 있어서 상술한 바와 같이, submb_qp_delta의 값이 「0」인 경우, submb_qp_delta는 전송되지 않는다. 서브 매크로 블록 역양자화부(221)는, 양자화 파라미터 버퍼(251)로부터 공급되는 양자화 파라미터에 submb_qp_delta가 존재하지 않는 경우, 매크로 블록마다의 양자화 파라미터 MB_QP의 값을, 서브 매크로 블록마다의 양자화 파라미터 SubMB_QP에 적용한다.
또한, 가역 복호부(202)에 있어서, 화상 부호화 장치(100)로부터 공급된 부호화 데이터가 복호되어 얻어진, 양자화된 직교 변환 계수는, 직교 변환 계수 버퍼(252)에 공급된다. 직교 변환 계수 버퍼(252)는, 그 양자화된 직교 변환 계수를 적절하게 보유하고, 소정의 타이밍에서 역양자화 처리부(253)에 공급한다.
역양자화 처리부(253)는, 서브 매크로 블록 역양자화부(221)로부터 공급되는 서브 매크로 블록마다의 양자화값을 사용하여, 직교 변환 계수 버퍼(252)로부터 공급되는, 양자화된 직교 변환 계수를 역양자화한다. 역양자화 처리부(253)는, 역양자화에 의해 얻어진 직교 변환 계수를 역직교 변환부(204)에 공급한다.
이상과 같이, 역양자화부(203)는, 서브 매크로 블록마다 산출된 양자화값을 사용하여 역양자화 처리를 행할 수 있다. 이에 의해, 화상 복호 장치(200)는, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있다. 특히, 매크로 블록 사이즈가 확장되고, 단일의 매크로 블록 내에, 편평한 에어리어와 텍스쳐를 포함하는 에어리어의 양쪽을 포함하고 있는 경우라도, 화상 복호 장치(200)는, 각각의 에어리어에 적합한 적응 역양자화 처리를 행하여, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
또한, 도 1에 도시되는 화상 부호화 장치(100)의 역양자화부(108)도, 이 역양자화부(203)와 마찬가지의 구성을 갖고, 마찬가지의 처리를 행한다. 단, 역양자화부(108)는, 양자화부(105)로부터 공급되는 양자화 파라미터와, 양자화된 직교 변환 계수를 취득하고, 역양자화를 행한다.
또한, 역양자화부(108)는, 서브 매크로 블록 역양자화부(221)와 마찬가지의 처리를 행하는 서브 매크로 블록 역양자화부(122)에, 양자화 파라미터를 제공하고, 서브 매크로 블록마다의 양자화값을 생성시킨다.
[복호 처리의 흐름]
다음에, 이상과 같은 화상 복호 장치(200)에 의해 실행되는 각 처리의 흐름에 대해서 설명한다. 최초에, 도 11의 플로우차트를 참조하여, 복호 처리의 흐름의 예를 설명한다.
복호 처리가 개시되면, 스텝 S201에 있어서, 축적 버퍼(201)는, 전송되어 온 부호화 데이터를 축적한다. 스텝 S202에 있어서, 가역 복호부(202)는, 축적 버퍼(201)로부터 공급되는 부호화 데이터를 복호한다. 즉, 도 1의 가역 부호화부(106)에 의해 부호화된 I픽쳐, P픽쳐, 및 B픽쳐가 복호된다.
이때, 움직임 벡터 정보, 참조 프레임 정보, 예측 모드 정보(인트라 예측 모드, 또는 인터 예측 모드), 및, 플래그나 양자화 파라미터 등의 정보도 복호된다.
예측 모드 정보가 인트라 예측 모드 정보인 경우, 예측 모드 정보는, 인트라 예측부(211)에 공급된다. 예측 모드 정보가 인터 예측 모드 정보인 경우, 예측 모드 정보와 대응하는 움직임 벡터 정보는, 움직임 예측·보상부(212)에 공급된다.
스텝 S203에 있어서, 역양자화부(203)는, 가역 복호부(202)에 의해 복호되어 얻어진, 양자화된 직교 변환 계수를 역양자화한다. 스텝 S204에 있어서 역직교 변환부(204)는 역양자화부(203)에 의해 역양자화되어 얻어진 직교 변환 계수를, 도 1의 직교 변환부(104)에 대응하는 방법으로 역직교 변환한다. 이에 의해 도 1의 직교 변환부(104)의 입력(연산부(103)의 출력)에 대응하는 차분 정보가 복호되게 된다.
스텝 S205에 있어서, 연산부(205)는, 스텝 S204의 처리에 의해 얻어진 차분 정보에, 예측 화상을 가산한다. 이에 의해 원래의 화상 데이터가 복호된다.
스텝 S206에 있어서, 디블록 필터(206)는, 스텝 S205의 처리에 의해 얻어진 복호 화상을 적절하게 필터링한다. 이에 의해 적절하게 복호 화상으로부터 블록 왜곡이 제거된다.
스텝 S207에 있어서, 프레임 메모리(209)는, 필터링된 복호 화상을 기억한다.
스텝 S208에 있어서, 인트라 예측부(211), 또는 움직임 예측·보상부(212)는, 가역 복호부(202)로부터 공급되는 예측 모드 정보에 대응하여, 각각 화상의 예측 처리를 행한다.
즉, 가역 복호부(202)로부터 인트라 예측 모드 정보가 공급된 경우, 인트라 예측부(211)는, 인트라 예측 모드의 인트라 예측 처리를 행한다. 또한, 가역 복호부(202)로부터 인터 예측 모드 정보가 공급된 경우, 움직임 예측·보상부(212)는, 인터 예측 모드의 움직임 예측 처리를 행한다.
스텝 S209에 있어서, 선택부(213)는 예측 화상을 선택한다. 즉, 선택부(213)에는, 인트라 예측부(211)에 의해 생성된 예측 화상, 혹은, 움직임 예측·보상부(212)에 의해 생성된 예측 화상이 공급된다. 선택부(213)는, 그 예측 화상이 공급된 측을 선택하고, 그 예측 화상을 연산부(205)에 공급한다. 이 예측 화상은, 스텝 S205의 처리에 의해 차분 정보에 가산된다.
스텝 S210에 있어서, 화면 재배열 버퍼(207)는, 복호 화상 데이터의 프레임의 재배열을 행한다. 즉, 복호 화상 데이터의, 화상 부호화 장치(100)의 화면 재배열 버퍼(102)(도 1)에 의해 부호화를 위해 재배열된 프레임의 순서가, 원래의 표시의 순서로 재배열된다.
스텝 S211에 있어서, D/A 변환부(208)는, 화면 재배열 버퍼(207)에 있어서 프레임이 재배열된 복호 화상 데이터를 D/A 변환한다. 이 복호 화상 데이터가 도시하지 않는 디스플레이에 출력되고, 그 화상이 표시된다.
[역양자화 처리]
다음에, 도 12의 플로우차트를 참조하여, 역양자화 처리의 흐름의 예를 설명한다.
역양자화 처리가 개시되면, 양자화 파라미터 버퍼(251)는, 스텝 S231에 있어서, 가역 복호부(202)로부터 공급되는 양자화 파라미터 pic_init_qp_minus26을 취득한다.
스텝 S232에 있어서, 양자화 파라미터 버퍼(251)는, 가역 복호부(202)로부터 공급되는 양자화 파라미터 slice_qp_delta를 취득한다.
스텝 S233에 있어서, 양자화 파라미터 버퍼(251)는, 가역 복호부(202)로부터 공급되는 양자화 파라미터 mb_qp_delta를 취득한다.
스텝 S234에 있어서, 양자화 파라미터 버퍼(251)는, 가역 복호부(202)로부터 공급되는 양자화 파라미터 submb_qp_delta를 취득한다. 단, submb_qp_delta가 존재하지 않는 경우, 스텝 S234의 처리는 생략된다.
스텝 S235에 있어서, 서브 매크로 블록 역양자화부(221)는, 스텝 S231 내지 스텝 S234의 처리에 의해 취득된 각종 양자화 파라미터를 사용하여, 서브 매크로 블록마다 양자화값을 산출한다. 단, 화상 부호화 장치(100)로부터 submb_qp_delta가 공급되지 않고, 스텝 S234의 처리가 생략된 경우, 서브 매크로 블록 역양자화부(221)는, 매크로 블록마다의 양자화값을, 서브 매크로 블록마다의 양자화값에 적용한다.
스텝 S236에 있어서, 역양자화 처리부(253)는, 직교 변환 계수 버퍼(252)에 보유되는, 양자화된 직교 변환 계수를, 스텝 S235의 처리에 의해 산출된 서브 매크로 블록마다의 양자화값을 사용하여 역양자화한다.
스텝 S236의 처리가 종료하면, 역양자화부(203)는, 처리를 스텝 S203으로 복귀시키고, 스텝 S204 이후의 처리를 실행시킨다.
이상과 같이, 복호 처리 및 역양자화 처리를 행함으로써, 화상 복호 장치(200)는, 서브 매크로 블록마다 산출된 양자화값을 사용하여 역양자화 처리를 행할 수 있어, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있다.
<3. 제3 실시 형태>
[submb_qp_present_flag]
이상에 있어서는, 양자화 파라미터로서 submb_qp_delta를 적절하게 전송하도록 설명했지만, 또한, submb_qp_delta의 존재의 유무를 매크로 블록마다 통지하는 플래그를 전송하도록 해도 된다.
그 경우, 화상 부호화 장치(100)의 구성은, 도 1에 도시되는 구성예와 마찬가지이다. 또한, 양자화부(105)의 구성도 도 5에 도시되는 구성예와 마찬가지이다. 단, 양자화 파라미터 산출부(152)는, 또한, 매크로 블록마다, 값이 「0」이 아닌 submb_qp_delta가 존재하는지의 여부를 나타내는 플래그 정보인 submb_qp_present_flag를 산출한다. 당해 매크로 블록에 속하는 서브 매크로 블록의 submb_qp_delta가 1개라도 「0」이 아닌 값을 갖는 경우, submb_qp_present_flag가 예를 들어 「1」로 세트된다. 또한, 당해 매크로 블록에 속하는 모든 서브 매크로 블록의 submb_qp_delta가 「0」인 경우, submb_qp_present_flag가 예를 들어 「0」으로 세트된다.
물론, submb_qp_present_flag의 값은 임의이며, submb_qp_delta가 1개라도 「0」이 아닌 값을 갖는 경우와, 모든 서브 매크로 블록의 submb_qp_delta가 「0」인 경우를 식별할 수 있으면, 어떠한 값이어도 된다.
양자화 파라미터 산출부(152)는, 이렇게 값을 설정하면, submb_qp_present_flag를 양자화 파라미터의 1개로서, 가역 부호화부(106)에 공급한다. 가역 부호화부(106)는, 이 submb_qp_present_flag를, 예를 들어 매크로 블록 헤더에 부가하고, 부호화한다. 즉, submb_qp_present_flag는, 다른 양자화 파라미터와 마찬가지로, 부호화 데이터와 함께 전송된다.
따라서, 이 경우의 부호화 처리는, 도 7의 플로우차트를 참조해서 상술한 것과 마찬가지로 행해진다. 또한, 이 경우의, 양자화 파라미터 산출 처리의 흐름의 예를 도 13의 플로우차트를 참조해서 설명한다. 양자화 파라미터 산출 처리는, 이 경우도, 도 8의 플로우차트를 참조해서 설명한 경우와 기본적으로 마찬가지로 행해진다.
즉, 스텝 S331 내지 스텝 S336의 각 처리는, 도 8의 스텝 S131 내지 스텝 S136의 각 처리와 마찬가지로 행해진다. 단, 이 경우, 양자화 파라미터 산출부(152)는, 스텝 S337에 있어서, 양자화 파라미터 submb_qp_present_flag를 다시 산출한다.
이상과 같이 하여, 양자화 파라미터 submb_qp_present_flag가 산출되고, 전송된다.
즉, 데이터의 각 매크로 블록 헤더에는, submb_qp_present_flag가 존재한다. 그리고, 그 submb_qp_present_flag의 값이 「1」인 매크로 블록의 서브 매크로 블록 헤더에는, submb_qp_delta가 존재하고, submb_qp_present_flag의 값이 「0」인 매크로 블록의 서브 매크로 블록 헤더에는, submb_qp_delta가 존재하지 않는다.
이와 같은 부호화 데이터가, 화상 부호화 장치(100)로부터 화상 복호 장치(200)에 전송된다.
이 경우의 화상 복호 장치(200)의 구성은, 도 9에 도시되는 구성예와 마찬가지이다. 또한, 역양자화부(203)의 구성도 도 10에 도시되는 구성예와 마찬가지이다. 단, 서브 매크로 블록 역양자화부(221)는, submb_qp_present_flag가 「0」으로 세트된 매크로 블록에 대해서는, submb_qp_delta의 공급을 대기하지 않고, 매크로 블록마다의 양자화값을 산출하고, 그것을 서브 매크로 블록마다의 양자화값에 적용한다.
환언하면, 서브 매크로 블록 역양자화부(221)는, submb_qp_present_flag가 「1」인 경우만, submb_qp_delta를 취득하고, 서브 매크로 블록마다의 양자화값의 산출을 행한다.
이 경우의 복호 처리는, 도 11의 플로우차트를 참조해서 상술한 것과 마찬가지로 행해진다. 또한, 이 경우의, 역양자화 처리의 흐름의 예를 도 14의 플로우차트를 참조해서 설명한다. 역양자화 처리는, 이 경우도, 도 12의 플로우차트를 참조해서 설명한 경우와 기본적으로 마찬가지로 행해진다.
즉, 스텝 S431 내지 스텝 S433의 각 처리는, 도 12의 스텝 S231 내지 스텝 S233의 각 처리와 마찬가지로 행해진다. 단, 이 경우, 양자화 파라미터 버퍼(251)는, 스텝 S434에 있어서, 매크로 블록 헤더에 저장되는 양자화 파라미터 submb_qp_present_flag를 취득한다.
스텝 S435에 있어서, 서브 매크로 블록 역양자화부(221)는, 양자화 파라미터 submb_qp_present_flag의 값이 「1」인지의 여부를 판정한다. 양자화 파라미터 submb_qp_present_flag의 값이 「1」인 경우, 양자화 파라미터 버퍼(251)는, 스텝 S436에 있어서, 양자화 파라미터 submb_qp_delta를 취득한다. 스텝 S437에 있어서, 서브 매크로 블록 역양자화부(221)는, 서브 매크로 블록마다의 양자화값을 산출한다. 즉, 도 12의 스텝 S234 및 스텝 S235와 마찬가지의 처리가 행해진다.
또한, 스텝 S435에 있어서, 양자화 파라미터 submb_qp_present_flag의 값이 「0」이라고 판정된 경우, 서브 매크로 블록 역양자화부(221)는, 스텝 S438에 있어서, 매크로 블록마다의 양자화값을 산출하고, 그것을 서브 매크로 블록마다의 양자화값으로서 적용한다.
이상과 같이 양자화값이 산출되면, 역양자화 처리부(253)는, 스텝 S439에 있어서, 그 양자화값을 사용하여 역양자화를 행한다.
이상과 같이, 양자화 파라미터 submb_qp_delta의 존재의 유무를 매크로 블록마다 나타내는 submb_qp_present_flag를 전송하고, 역양자화 시에 이용하도록 함으로써, 화상 복호 장치(200)는, 양자화 파라미터 submb_qp_delta의 존재의 유무를 보다 용이하게 파악할 수 있고, 존재하지 않는 submb_qp_delta를 검색하는 등의 불필요한 처리를 필요로 하지 않고, 보다 용이하게 양자화값을 산출할 수 있다.
이상, 제1 실시 형태 내지 제3 실시 형태에 있어서, AVC에 준하는 방식에 의한 부호화를 행하는 화상 부호화 장치, 및, AVC에 준하는 방식에 의한 복호를 행하는 화상 복호 장치를 예로 해서 설명하였지만, 본 기술의 적용 범위는 이에 한하지 않고, 도 4에 도시되는 바와 같은, 계층 구조에 의한 블록에 기초하는 부호화 처리를 행하는 모든 화상 부호화 장치 및 화상 복호 장치에 적용하는 것이 가능하다.
또한, 이상으로 설명한 각종 양자화 파라미터는, 예를 들어, 부호화 데이터의 임의의 위치에 부가되도록 해도 되고, 부호화 데이터와는 달리 복호측에 전송되도록 해도 된다. 예를 들어, 가역 부호화부(106)가, 이들 정보를, 비트 스트림에 신택스로서 기술하도록 해도 된다. 또한, 가역 부호화부(106)가, 이들 정보를, 보조 정보로서 소정의 영역에 저장해서 전송하도록 해도 된다. 예를 들어, 이들 정보가, SEI(Suplemental Enhancement Information) 등의 파라미터 세트(예를 들어 시퀀스나 픽쳐의 헤더 등)에 저장되도록 해도 된다.
또한, 가역 부호화부(106)가, 이들 정보를, 부호화 데이터와는 별도로(다른 파일로서), 화상 부호화 장치로부터 화상 복호 장치에 전송시키도록 해도 된다. 그 경우, 이들 정보와 부호화 데이터의 대응 관계를 명확하게 할(복호측에서 파악할 수 있게 할) 필요가 있지만, 그 방법은 임의이다. 예를 들어, 별도로, 대응 관계를 나타내는 테이블 정보를 작성해도 되고, 대응처의 데이터를 나타내는 링크 정보를 서로의 데이터에 매립하거나 해도 된다.
또한, 상술한 서브 매크로 블록마다의 양자화값을 사용한 양자화(서브 매크로 블록마다의 양자화 파라미터의 산출)은, 32×32 이상의 확장 매크로 블록에 대해서만 행하도록 해도 된다.
예를 들어, 레이트 제어부(117)는, 처리 대상 매크로 블록이 확장 매크로 블록의 경우만, 서브 매크로 블록마다 액티비티를 산출하고, 처리 대상 매크로 블록이 AVC 등의 기존의 부호화 규격으로 규정되는 종래의 16×16 이하의 매크로 블록의 경우, 매크로 블록마다 액티비티를 산출한다.
서브 매크로 블록 양자화부(121)는, 예를 들어, 확장 매크로 블록에 대해서만, 서브 매크로 블록마다의 양자화값을 산출하고, 종래의 16×16 이하의 매크로 블록에 대해서는, 매크로 블록마다의 양자화값을 산출한다.
양자화 파라미터 산출부(152)는, 예를 들어, 확장 매크로 블록에 대해서만, 양자화 파라미터 Submb_qp_delta를 산출하고, 종래의 16×16 이하의 매크로 블록에 대해서는, 양자화 파라미터 submb_qp_delta를 산출하지 않는다.
양자화 처리부(153)는, 예를 들어, 확장 매크로 블록에 대해서만, 서브 매크로 블록마다의 양자화값을 사용하여 양자화를 행하고, 종래의 16×16 이하의 매크로 블록에 대해서는, 매크로 블록마다의 양자화값을 사용하여 양자화를 행한다.
이상과 같이 함으로써, 화상 부호화 장치(100)는, 복호 화상의 주관 화질의 열화의 억제 효과를 충분히 기대할 수 있는, 큰 영역의 확장 매크로 블록에 대해서만 서브 매크로 블록마다의 양자화값을 사용한 양자화를 행하고, 효과의 기대가 비교적 작은, 종래의 크기의 매크로 블록에 대해서는, 매크로 블록마다의 양자화값을 사용한 양자화를 행할 수 있다. 이에 의해, 화상 부호화 장치(100)는, 서브 매크로 블록마다의 양자화값을 사용한 양자화를 행하는 것에 의한 부하의 증대를 억제할 수 있다.
물론, 이 경우, 화상 복호 장치(200)는, 화상 부호화 장치(100)와 마찬가지로, 확장 매크로 블록에 대해서만, 서브 매크로 블록마다의 양자화값을 사용한 역양자화를 행하도록 해도 된다.
예를 들어, 서브 매크로 블록 역양자화부(221)는, 확장 매크로 블록에 대해서만, 서브 매크로 블록마다 양자화값을 산출하고, 종래의 16×16 이하의 매크로 블록에 대해서는, 매크로 블록마다의 양자화값을 산출한다.
따라서, 역양자화 처리부(253)는, 예를 들어, 확장 매크로 블록에 대해서만, 서브 매크로 블록마다의 양자화값을 사용하여 역양자화를 행하고, 종래의 16×16 이하의 매크로 블록에 대해서는, 매크로 블록마다의 양자화값을 사용하여 역양자화를 행한다.
이와 같이 함으로써, 화상 복호 장치(200)는, 복호 화상의 주관 화질의 열화의 억제 효과를 충분히 기대할 수 있는, 큰 영역의 확장 매크로 블록에 대해서만 서브 매크로 블록마다의 양자화값을 사용한 역양자화를 행하고, 효과의 기대가 비교적 작은, 종래의 크기의 매크로 블록에 대해서는, 매크로 블록마다의 양자화값을 사용한 역양자화를 행할 수 있다. 이에 의해, 화상 복호 장치(200)는, 서브 매크로 블록마다의 양자화값을 사용한 역양자화를 행하는 것에 의한 부하의 증대를 억제할 수 있다.
또한, 제3 실시 형태와 같이, submb_qp_present_flag를 전송시키는 경우, 확장 매크로 블록에 대해서만, 이 양자화 파라미터 submb_qp_present_flag를 전송시키도록 하면 된다. 환언하면, 종래의 크기의 매크로 블록에 대해서는, 이 양자화 파라미터 submb_qp_present_flag의 전송을 생략할 수 있다. 물론, 종래의 크기의 매크로 블록에 대하여, 값이 「0」 이외인 양자화 파라미터 submb_qp_delta가 존재하지 않는 것을 나타내는 값의 양자화 파라미터 submb_qp_present_flag를 전송시키도록 해도 된다.
<4. 제4 실시 형태>
[개요]
이상에 있어서는, 양자화 파라미터를 서브 매크로 블록 단위로 지정하도록 설명했지만, 서브 매크로 블록에 대한 양자화 파라미터의 할당법은, 상술한 것 이외이어도 된다. 예를 들어, 서브 매크로 블록마다의 양자화 파라미터 submb_qp_delta와, 그 직전에 부호화된 서브 매크로 블록의 양자화 파라미터 previous_qp를 사용하여, 각 서브 매크로 블록에 할당하는 양자화 파라미터 SubMB_QP를 이하의 식(11)과 같이 정의하도록 해도 된다.
SubMB_QP=Clip(0,51, previous_qp+submb_qp_delta) …(11)
[코딩 유닛]
이와 같은 방법에 대해서, 이하에 설명하지만, 이하에 있어서는, 상술한 매크로 블록이나 서브 매크로 블록 대신에 코딩 유닛(Coding Unit)이라고 하는 단위를 사용하여 설명한다.
예를 들어, "Test Model Under Consideration"(JCTVC-B205)에 있어서는, 도 4을 참조해서 설명한 확장 매크로 블록이, 코딩 유닛(Coding Unit)이라고 하는 개념에 의해 정의되어 있다.
코딩 유닛은, 화상 데이터의 부호화 처리 등의 처리 단위로 되는, 화상(1픽쳐)의 분할 단위이다. 즉, 코딩 유닛은, 화상(1픽쳐)이 복수로 분할된 블록(부분 영역)이다. 즉, 코딩 유닛은, 상술한 매크로 블록이나 서브 매크로 블록에 상당한다.
도 15는, 코딩 유닛의 구성예를 도시하는 도면이다. 도 15에 도시되는 바와 같이, 코딩 유닛은, 그 영역을 더욱 복수로 분할하고, 각 영역을 1계층 아래의 코딩 유닛으로 할 수 있다. 즉, 코딩 유닛은, 계층 형상으로 구성되도록 할(나무 구조로 구성될) 수 있다. 부언하면, 코딩 유닛의 사이즈는 임의이며, 1개의 픽쳐 내에 서로 상이한 사이즈의 코딩 유닛이 존재할 수도 있다.
도 15의 예에 있어서는, 최상위층(Depth=0)의 코딩 유닛의 사이즈가 128화소×128화소로 되고, 그것을 종횡으로 2등분씩(4분할)한 64화소×64화소의 영역이 1계층 아래(Depth=1)의 코딩 유닛으로 되고, 이하 마찬가지로 코딩 유닛의 계층화가 반복되어, 8화소×8화소의 영역이 최하위층(Depth=4)의 코딩 유닛으로 되어 있다.
이때, 최상위층의 코딩 유닛을 LCU(Largest Coding Unit)라고 칭하고, 최하위층의 코딩 유닛을 SCU(Smallest Coding Unit)라고 칭한다. 즉, LCU는, 매크로 블록에 상당하고, 그것보다 하위층의 코딩 유닛은, 서브 매크로 블록에 상당한다.
또한, 각 계층의 코딩 유닛의 사이즈나 형상 및 계층수는 임의이다. 즉, 화상(1픽쳐) 내에 있어서, LCU나 SCU의 사이즈나 형상이 모두 일치되어 있을 필요는 없고, 화상 내의 위치에 따라 코딩 유닛의 계층수가 상이해도 되고, 영역의 분할의 방법도 임의이다. 즉, 코딩 유닛의 나무 구조는, 임의의 구조로 할 수 있다.
물론, 예를 들어, 영역의 분할 방법은 공통이며, 계층수만 상이할 수 있게 하는 등, 코딩 유닛의 계층 구조의 자유도를 일부 제한하도록 해도 된다. 예를 들어, 도 15에 도시되는 바와 같이, 어느 위치에 있어서도, 1영역(1픽쳐 혹은 1코딩 유닛)이 종횡으로 2등분(즉 4분할)되도록 하고, 각 위치의 LCU와 SCU의 크기를 정의함으로써, 코딩 유닛의 계층 구조를 정의하도록 해도 된다.
LCU 및 SCU의 크기는, 예를 들어, 화상 압축 정보 중, 시퀀스 파라미터 세트에 있어서 지정되도록 할 수 있다. 물론, 그 밖의 메타데이터 등에 있어서 지정되도록 해도 된다.
[양자화 파라미터의 할당]
본 실시 형태에 있어서는, 매크로 블록이나 서브 매크로 블록 대신에, 각 코딩 유닛에 양자화 파라미터 submb_qp_delta가 할당된다. 단, 이 경우, 양자화 파라미터 submb_qp_delta는, 매크로 블록마다의 양자화 파라미터 MB_QP와 서브 매크로 블록마다의 양자화 파라미터 SubMB_QP의 차분값이 아니고, 직전에 부호화된 코딩 유닛의 양자화 파라미터 previous_qp와, 현재의 처리 대상의 코딩 유닛의 양자화 파라미터 SubMB_QP의 차분값이다.
환언하면, 각 코딩 유닛에는, 직전의 부호화에 사용된 양자화 파라미터 previous_qp와, 현재의 처리 대상의 코딩 유닛의 양자화 파라미터 SubMB_QP의 차분값을 나타내는 양자화 파라미터 submb_qp_delta가 할당된다. 즉, 상술한 식(11)을 만족하는 양자화 파라미터 submb_qp_delta가 각 코딩 유닛에 할당된다.
또한, 화상 내의 전체 영역을 양자화할 수 있으면 되므로, 실제로는, 예를 들어 SCU만 등과 같이, 일부의 코딩 유닛에 대하여 양자화 파라미터 submb_qp_delta가 할당된다.
상술한 다른 실시 형태와 마찬가지로, 현재 처리 대상의 코딩 유닛의 양자화 파라미터 SubMB_QP는, 그 코딩 유닛의 액티비티로부터 구한 양자화값을 변환해서 얻을 수 있다. 따라서, 코딩 유닛마다의 양자화 파라미터 submb_qp_delta는, 식(11)을 사용하여 산출할 수 있다.
도 16에 1LCU 내의 코딩 유닛의 구성예와, 각 코딩 유닛에 할당되는 양자화 파라미터의 예를 도시한다. 도 16에 도시되는 바와 같이, 각 코딩 유닛(CU)에는, 직전의 부호화에 사용된 양자화 파라미터 previous_qp와, 현재 처리 대상의 코딩 유닛의 양자화 파라미터 SubMB_QP의 차분값 ΔQP가 양자화 파라미터로서 할당되어 있다.
보다 구체적으로는, 이 LCU 내의 좌측 상부의 코딩 유닛0(Coding Unit 0)에 양자화 파라미터 ΔQP0이 할당되어 있다. 또한, 이 LCU 내의 우측 상부의 4개의 코딩 유닛 중의, 좌측 상부의 코딩 유닛10(Coding Unit 10)에 양자화 파라미터 ΔQP10이 할당되어 있다. 또한, 이 LCU 내의 우측 상부의 4개의 코딩 유닛 중의, 우측 상부의 코딩 유닛11(Coding Unit 11)에 양자화 파라미터 ΔQP11이 할당되어 있다. 또한, 이 LCU 내의 우측 상부의 4개의 코딩 유닛 중의, 좌측 하부의 코딩 유닛12(Coding Unit 12)에 양자화 파라미터 ΔQP12가 할당되어 있다. 또한, 이 LCU 내의 우측 상부의 4개의 코딩 유닛 중의, 우측 하부의 코딩 유닛13(Coding Unit 13)에 양자화 파라미터 ΔQP13이 할당되어 있다.
이 LCU 내의 좌측 하부의 4개의 코딩 유닛 중의, 좌측 상부의 코딩 유닛20(Coding Unit 20)에 양자화 파라미터 ΔQP20이 할당되어 있다. 또한, 이 LCU 내의 좌측 하부의 4개의 코딩 유닛 중의, 우측 상부의 코딩 유닛21(Coding Unit 21)에 양자화 파라미터 ΔQP21이 할당되어 있다. 또한, 이 LCU 내의 좌측 하부의 4개의 코딩 유닛 중의, 좌측 하부의 코딩 유닛22(Coding Unit 22)에 양자화 파라미터 ΔQP22가 할당되어 있다. 또한, 이 LCU 내의 좌측 하부의 4개의 코딩 유닛 중의, 우측 하부의 코딩 유닛23(Coding Unit 23)에 양자화 파라미터 ΔQP23이 할당되어 있다. 그리고, 이 LCU 내의 우측 하부의 코딩 유닛3(Coding Unit 3)에 양자화 파라미터 ΔQP3이 할당되어 있다.
이 LCU의 직전에 처리된 코딩 유닛의 양자화 파라미터를 PrevQP라 한다. 또한, 이 LCU 내의 좌측 상부의 코딩 유닛0(Coding Unit 0)이, 이 LCU 내에 있어서 최초에 처리되는 코딩 유닛이며, 현재의 처리 대상인 것으로 한다.
현재의 처리 대상의 코딩 유닛의 양자화 파라미터 CurrentQP는, 이하의 식(12)와 같이 산출된다.
CurrentQP=PrevQP+ΔQP0 …(12)
이 코딩 유닛0의 다음에 처리되는 코딩 유닛이, 도 16에 도시되는 LCU 내의 우측 상부의 4개의 코딩 유닛 중의 좌측 상부의 코딩 유닛10(Coding Unit 10)인 것으로 한다.
이 코딩 유닛10이 처리 대상으로 되면, 현재의 처리 대상의 코딩 유닛의 양자화 파라미터 CurrentQP는, 이하의 식(13) 및 식(14)와 같이 산출된다.
PrevQP=CurrentQP …(13)
CurrentQP=PrevQP+ΔQP10 …(14)
이와 같이, 각 코딩 유닛에 할당하는 양자화 파라미터를, 직전에 부호화된 코딩 유닛의 양자화 파라미터와 현재의 처리 대상의 양자화 파라미터의 차분값으로 함으로써, 매크로 블록마다의 양자화 파라미터를 산출할 필요가 없어지므로, 보다 용이하게 양자화 처리를 행할 수 있다.
또한, 부호화필의 코딩 유닛의 양자화 파라미터와 현재의 처리 대상의 양자화 파라미터의 차분값을 산출하는 경우, 현재의 처리 대상의 코딩 유닛보다도 전에 부호화된 코딩 유닛(LCU 내에 있어서 직전에 부호화된 코딩 유닛보다도 전에 부호화된 코딩 유닛)과의 차분값을 산출하는 것도 가능하다. 단, 직전에 부호화된 코딩 유닛의 양자화 파라미터와 현재의 처리 대상의 양자화 파라미터의 차분값을 취하면 적합하다.
즉, 직전에 부호화된 코딩 유닛의 양자화 파라미터와 현재의 처리 대상의 양자화 파라미터의 차분값을 산출할 때는, 직전에 부호화된 코딩 유닛의 양자화 파라미터만을 메모리에 보존해 두면 되고, FIFO(First In First Out: 선입 선출) 형식으로 양자화 파라미터를 관리하면 된다. 따라서, 양자화 파라미터의 차분값을 산출할 때는, 양자화 파라미터의 관리가 용이해져, 사용하는 메모리량도 적어지므로, 실장면에 있어서 장점이 있다.
또한, 이러한 코딩 유닛마다의 양자화 파라미터 cu_qp_delta는, 예를 들어 도 17에 도시되는 바와 같이, 코딩 유닛의 신택스에 있어서 정의되어, 복호측에 전송된다. 즉, 이 코딩 유닛마다의 양자화 파라미터 cu_qp_delta는, 상술한 양자화 파라미터 sub_qp_delta에 상당한다.
[화상 부호화 장치]
도 18은, 본 기술을 적용한 화상 부호화 장치의 주된 구성예를 도시하는 블록도이다. 도 18에 도시되는 화상 부호화 장치(300)는, 상술한 바와 같이, 코딩 유닛마다 양자화 파라미터 cu_qp_delta의 할당을 행한다.
도 18에 도시되는 바와 같이, 화상 부호화 장치(300)는, 기본적으로, 도 1의 화상 부호화 장치(100)와 마찬가지의 구성을 갖는다. 단, 화상 부호화 장치(300)는, 화상 부호화 장치(100)의 양자화부(105), 레이트 제어부(117), 및 서브 매크로 블록 양자화부(121) 대신에, 코딩 유닛 양자화부(305) 및 레이트 제어부(317)를 갖는다. 또한, 화상 부호화 장치(300)는, 화상 부호화 장치(100)의 역양자화부(108) 및 서브 매크로 블록 역양자화부(122) 대신에, 코딩 유닛 역양자화부(308)를 갖는다.
레이트 제어부(317)는, 축적 버퍼(107)에 축적된 압축 화상에 기초하여, 오버플로 혹은 언더플로가 발생하지 않도록, 코딩 유닛 양자화부(305)의 양자화 동작의 레이트를 제어한다. 또한, 레이트 제어부(317)는, 코딩 유닛마다 화상의 복잡함을 나타내는 정보를 코딩 유닛 양자화부(305)에 제공한다. 코딩 유닛 양자화부(305)는, 그 액티비티를 사용하여 코딩 유닛마다 양자화를 행한다. 또한, 코딩 유닛 양자화부(305)는, 코딩 유닛마다 양자화 파라미터를 산출한다. 코딩 유닛 양자화부(305)는, 코딩 유닛마다 양자화된 직교 변환 계수(계수 데이터)와, 산출한 코딩 유닛마다의 양자화 파라미터를, 가역 부호화부(106)에 공급하고, 부호화해서 전송시킨다. 또한, 코딩 유닛 양자화부(305)는, 코딩 유닛마다 양자화한 직교 변환 계수(계수 데이터)와, 산출한 코딩 유닛마다의 양자화 파라미터를, 코딩 유닛 역양자화부(308)에도 제공한다.
코딩 유닛 역양자화부(308)는, 코딩 유닛 양자화부(305)로부터 공급된, 코딩 유닛마다의 양자화 파라미터를 사용하여, 코딩 유닛마다 역양자화를 행한다. 코딩 유닛 역양자화부(308)는, 코딩 유닛마다 역양자화한 직교 변환 계수(계수 데이터)를 역직교 변환부(109)에 공급한다. 코딩 유닛 역양자화부(308)의 상세에 대해서는, 화상 복호 장치의 설명에 있어서 후술한다.
[양자화에 관한 상세한 구성]
도 19는, 레이트 제어부(317) 및 코딩 유닛 양자화부(305)의 상세한 구성예를 도시하는 블록도이다.
도 19에 도시되는 바와 같이, 레이트 제어부(317)는, 액티비티 산출부(321) 및 액티비티 버퍼(322)를 갖는다.
액티비티 산출부(321)는, 화면 재배열 버퍼(102)로부터 부호화 처리 대상의 화상(처리 대상의 코딩 유닛)을 취득하고, 그 화상의 복잡함을 나타내는 정보로서, 화소값의 분산을 나타내는 정보인 액티비티를 산출한다. 즉, 액티비티 산출부(321)는, 코딩 유닛마다 액티비티를 산출한다. 또한, 양자화 처리가 화상 전체에 대해서 행해지도록 하면 되므로, 액티비티의 산출은, 예를 들어, SCU만 등과 같이, 일부의 코딩 유닛에 대해서만 행하도록 해도 된다.
액티비티 버퍼(322)는, 액티비티 산출부(321)에 의해 산출된 코딩 유닛마다의 액티비티를 보유하고, 소정의 타이밍에서 그것을 양자화부(105)에 제공한다. 액티비티 버퍼(322)는, 취득한 코딩 유닛마다의 액티비티를, 예를 들어 1화면분 보유한다.
액티비티의 산출 방법은, 임의이며, 예를 들어, 상술한 MPEG 2 Test Model과 마찬가지의 방법이어도 된다. 또한, 화상의 복잡함을 나타내는 정보의 내용도 임의이며, 이러한 액티비티 이외의 정보이어도 된다.
코딩 유닛 양자화부(305)는, 코딩 유닛 양자화값 산출부(331), 픽쳐 양자화 파라미터 산출부(332), 슬라이스 양자화 파라미터 산출부(333), 코딩 유닛 양자화 파라미터 산출부(334), 및 코딩 유닛 양자화부(335)를 갖는다.
코딩 유닛 양자화값 산출부(331)는, 레이트 제어부(317)로부터 공급되는 코딩 유닛마다의 액티비티(코딩 유닛마다의 화상의 복잡함을 나타내는 정보)에 기초하여, 코딩 유닛마다의 양자화값을 산출한다. 이 코딩 유닛마다의 양자화값은, LCU마다의 액티비티로부터 LCU마다의 양자화값을 산출하는 경우와 마찬가지의 방법에 의해 산출할 수 있다. 또한, 양자화 처리가 화상 전체에 대해서 행해지도록 하면 되므로, 코딩 유닛마다의 양자화값의 산출은, 일부의 코딩 유닛에 대해서만 행하도록 해도 된다. 이하에 있어서는, 일례로서, SCU에 대해서만 코딩 유닛마다의 양자화값이 산출되는 것으로 한다.
각 코딩 유닛에 대해서 양자화값을 구하면, 코딩 유닛 양자화값 산출부(331)는, 그 코딩 유닛마다의 양자화값을, 픽쳐 양자화 파라미터 산출부(332)에 공급한다.
픽쳐 양자화 파라미터 산출부(332)는, 코딩 유닛마다의 양자화값을 사용하여, 픽쳐마다의 양자화 파라미터 pic_init_qp_minus26을 구한다.
슬라이스 양자화 파라미터 산출부(333)는, 코딩 유닛마다의 양자화값을 사용하여, 슬라이스 마다의 양자화 파라미터 slice_qp_delta를 구한다.
코딩 유닛 양자화 파라미터 산출부(334)는, 직전의 부호화에 사용된 양자화 파라미터 prevQP를 사용하여, 코딩 유닛마다의 양자화 파라미터 cu_qp_delta를 구한다.
픽쳐 양자화 파라미터 산출부(332) 내지 코딩 유닛 양자화 파라미터 산출부(334)가 생성한 양자화 파라미터는, 가역 부호화부(106)에 공급되어, 부호화되고, 복호측에 전송됨과 함께, 코딩 유닛 역양자화부(308)에도 공급된다.
코딩 유닛 양자화부(335)는, 코딩 유닛마다의 양자화값을 사용하여, 처리 대상의 코딩 유닛의 직교 변환 계수를 양자화한다.
코딩 유닛 양자화부(335)는, 코딩 유닛마다 양자화한 직교 변환 계수를, 가역 부호화부(106) 및 코딩 유닛 역양자화부(308)에 공급한다.
[부호화 처리의 흐름]
화상 부호화 장치(300)는, 도 6을 참조해서 설명한, 도 1의 화상 부호화 장치(100)의 경우와 기본적으로 마찬가지로 부호화 처리를 행한다.
[양자화 파라미터 산출 처리의 흐름]
도 20의 플로우차트를 참조하여, 그 부호화 처리에 있어서 실행되는 양자화 파라미터 산출 처리의 흐름의 예를 설명한다.
양자화 파라미터 산출 처리가 개시되면, 스텝 S531에 있어서, 코딩 유닛 양자화값 산출부(331)는, 레이트 제어부(317)로부터 공급되는 코딩 유닛마다의 액티비티를 취득한다.
스텝 S532에 있어서, 코딩 유닛 양자화값 산출부(331)는, 코딩 유닛마다의 액티비티를 사용하여, 코딩 유닛마다의 양자화값을 산출한다.
스텝 S533에 있어서, 픽쳐 양자화 파라미터 산출부(332)는, 스텝 S532에 있어서 산출된 코딩 유닛마다의 양자화값을 사용하여, 양자화 파라미터 pic_init_qp_minus26을 구한다.
스텝 S534에 있어서, 슬라이스 양자화 파라미터 산출부(333)는, 스텝 S532에 있어서 산출된 코딩 유닛마다의 양자화값을 사용하여, 양자화 파라미터 slice_qp_delta를 구한다.
스텝 S535에 있어서, 코딩 유닛 양자화 파라미터 산출부(334)는, 직전의 부호화에 사용된 양자화 파라미터 prevQP를 사용하여, 코딩 유닛마다의 양자화 파라미터 cu_qp_delta(도 16의 ΔQP0 내지 ΔQP23 등)를 구한다.
이상과 같이 각종 양자화 파라미터를 구하면, 코딩 유닛 양자화부(305)는, 양자화 파라미터 산출 처리를 종료하고, 부호화 처리의 후속 처리를 행한다.
이상과 같이 부호화 처리나 양자화 파라미터 산출 처리를 행하므로, 화상 부호화 장치(300)는, 코딩 유닛마다 양자화값을 설정할 수 있어, 화상의 내용에 따라, 보다 적절한 양자화 처리를 행할 수 있다.
또한, 이와 같이 산출된 양자화 파라미터를 화상 복호 장치에 전송하므로, 화상 부호화 장치(300)는, 그 화상 복호 장치가 코딩 유닛마다 역양자화를 행하도록 할 수 있다.
또한, 화상 부호화 장치(300)가 갖는 코딩 유닛 역양자화부(308)는, 화상 부호화 장치(300)에 대응하는 화상 복호 장치가 갖는 코딩 유닛 역양자화부와 마찬가지의 처리를 행한다. 즉, 화상 부호화 장치(300)도, 코딩 유닛마다 역양자화를 행할 수 있다.
[화상 복호 장치]
도 21은, 본 기술을 적용한 화상 복호 장치의 주된 구성예를 도시하는 블록도이다. 도 21에 도시되는 화상 복호 장치(400)는, 상술한 화상 부호화 장치(300)에 대응하고, 화상 부호화 장치(300)가 화상 데이터를 부호화해서 생성한 코드 스트림(부호화 데이터)을 올바르게 복호하여, 복호 화상을 생성한다.
도 21에 도시되는 바와 같이, 화상 복호 장치(400)는, 기본적으로 도 8의 화상 복호 장치(200)와 마찬가지의 구성을 갖고, 마찬가지의 처리를 행한다. 단, 화상 복호 장치(400)는, 화상 복호 장치(200)의 역양자화부(203) 및 서브 매크로 블록 역양자화부(221) 대신에, 코딩 유닛 역양자화부(403)를 갖는다.
코딩 유닛 역양자화부(403)는, 화상 부호화 장치(300)에 있어서 코딩 유닛마다 양자화된 직교 변환 계수를, 그 화상 부호화 장치(300)로부터 공급되는 코딩 유닛마다의 양자화 파라미터 등을 사용하여 역양자화한다.
도 22는, 코딩 유닛 역양자화부(403)의 주된 구성예를 도시하는 블록도이다. 도 22에 도시되는 바와 같이, 코딩 유닛 역양자화부(403)는, 양자화 파라미터 버퍼(411), 직교 변환 계수 버퍼(412), 코딩 유닛 양자화값 산출부(413), 및 코딩 유닛 역양자화 처리부(414)를 갖는다.
화상 부호화 장치(300)로부터 공급된 부호화 데이터의 픽쳐 파라미터 세트나, 슬라이스 헤더와 같은, 각각의 레이어에 있어서의, 양자화 파라미터는, 가역 복호부(202)에 있어서 복호되어, 양자화 파라미터 버퍼(411)에 공급된다. 양자화 파라미터 버퍼(411)는, 그 양자화 파라미터를 적절하게 보유하고, 소정의 타이밍에서 코딩 유닛 양자화값 산출부(413)에 공급한다.
코딩 유닛 양자화값 산출부(413)는, 양자화 파라미터 버퍼(411)로부터 공급되는 양자화 파라미터를 사용하여, 예를 들어, 식(36) 내지 식(39)와 같이 해서, 각 코딩 유닛에 대해서 양자화값을 산출하고, 그것을 코딩 유닛 역양자화 처리부(414)에 공급한다.
또한, 가역 복호부(202)에 있어서, 화상 부호화 장치(300)로부터 공급된 부호화 데이터가 복호되어 얻어진, 양자화된 직교 변환 계수는, 직교 변환 계수 버퍼(412)에 공급된다. 직교 변환 계수 버퍼(412)는, 그 양자화된 직교 변환 계수를 적절하게 보유하고, 소정의 타이밍에서 코딩 유닛 역양자화 처리부(414)에 공급한다.
코딩 유닛 역양자화 처리부(414)는, 코딩 유닛 양자화값 산출부(413)로부터 공급되는 코딩 유닛마다의 양자화값을 사용하여, 직교 변환 계수 버퍼(412)로부터 공급되는, 양자화된 직교 변환 계수를 역양자화한다. 코딩 유닛 역양자화 처리부(414)는, 역양자화에 의해 얻어진 직교 변환 계수를 역직교 변환부(204)에 공급한다.
이상과 같이, 코딩 유닛 역양자화부(403)는, 코딩 유닛마다 산출된 양자화값을 사용하여 역양자화 처리를 행할 수 있다. 이에 의해, 화상 복호 장치(400)는, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있다. 특히, 매크로 블록 사이즈가 확장되어(LCU의 사이즈가 크게), 단일의 LCU 내에, 편평한 에어리어와 텍스쳐를 포함하는 에어리어의 양쪽을 포함하고 있는 경우라도, 화상 복호 장치(400)는, 각각의 에어리어에 적합한 적응 역양자화 처리를 행하여, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
또한, 도 18에 도시되는 화상 부호화 장치(300)의 코딩 유닛 역양자화부(308)도, 이 코딩 유닛 역양자화부(403)와 마찬가지의 구성을 갖고, 마찬가지의 처리를 행한다. 단, 코딩 유닛 역양자화부(308)는, 코딩 유닛 양자화부(305)로부터 공급되는 양자화 파라미터와, 양자화된 직교 변환 계수를 취득하고, 역양자화를 행한다.
[복호 처리의 흐름]
화상 복호 장치(400)는, 도 10의 플로우차트를 참조해서 설명한, 도 8의 화상 복호 장치(200)의 경우와 기본적으로 마찬가지로 복호 처리를 행한다.
[역양자화 처리의 흐름]
도 23의 플로우차트를 참조하여, 이 화상 복호 장치(400)에 의한 복호 처리에 있어서 실행되는 역양자화 처리의 흐름의 예를 설명한다.
역양자화 처리가 개시되면, 양자화 파라미터 버퍼(411)는, 스텝 S631에 있어서, 가역 복호부(202)로부터 공급되는 양자화 파라미터 pic_init_qp_minus26을 취득한다.
스텝 S632에 있어서, 양자화 파라미터 버퍼(411)는, 가역 복호부(202)로부터 공급되는 양자화 파라미터 slice_qp_delta를 취득한다.
스텝 S633에 있어서, 양자화 파라미터 버퍼(411)는, 가역 복호부(202)로부터 공급되는 양자화 파라미터 cu_qp_delta를 취득한다.
스텝 S634에 있어서, 코딩 유닛 양자화값 산출부(413)는, 스텝 S631 내지 스텝 S633의 처리에 의해 취득된 각종 양자화 파라미터나, 직전에 사용된 양자화 파라미터 PrevQP를 사용하여, 코딩 유닛마다의 양자화값을 산출한다.
스텝 S635에 있어서, 코딩 유닛 역양자화 처리부(414)는, 직교 변환 계수 버퍼(412)에 보유되는, 양자화된 직교 변환 계수를, 스텝 S634의 처리에 의해 산출된 코딩 유닛마다의 양자화값을 사용하여 역양자화한다.
스텝 S635의 처리가 종료하면, 코딩 유닛 역양자화부(403)는, 처리를 복호 처리로 복귀시키고, 그 이후의 처리를 실행시킨다.
이상과 같이, 복호 처리 및 역양자화 처리를 행함으로써, 화상 복호 장치(400)는, 코딩 유닛마다 산출된 양자화값을 사용하여 역양자화 처리를 행할 수 있고, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있다.
이상으로 설명한 바와 같이, 코딩 유닛(서브 매크로 블록)마다의 양자화 파라미터의 부호량을 저감시키기 위해서, 양자화 파라미터 SubMB_QP 그 자체를 전송시키는 것이 아니고, 소정의 양자화 파라미터와 양자화 파라미터 SubMB_QP의 차분값 dQP(양자화 파라미터 submb_qp_delta)를 구하고, 이것을 전송시킨다. 이상에 있어서는, 이 양자화 파라미터 dQP의 산출 방법으로서, 이하의 식(15) 및 식(16)에 나타내지는 2개의 방법에 대해서 설명하였다.
dQP=CurrentQP-LCUQP …(15)
dQP=CurrentQP-PreviousQP …(16)
식(15) 및 식(16)에 있어서, CurrentQP는, 처리 대상의 코딩 유닛(CU)의 양자화 파라미터이다. 또한, LCUQP는, 처리 대상의 CU가 속하는 LCU(즉 처리 대상의 LCU)의 양자화 파라미터이다. 또한, PreviousQP는, 현재의 처리 대상의 CU 직전에 처리된 CU의 양자화 파라미터이다.
즉, 식(15)의 경우, 처리 대상의 LCU의 양자화 파라미터와, 처리 대상의 CU의 양자화 파라미터의 차분값을 전송시킨다. 또한, 식(16)의 경우, 직전에 처리된 CU의 양자화 파라미터와, 현재의 처리 대상의 CU의 양자화 파라미터의 차분값을 전송시킨다.
이와 같은 전송용의 양자화 파라미터 dQP의 산출 방법은, 임의이며, 상술한 2개의 예 이외이어도 된다.
예를 들어, 이하의 식(17)에 나타내지는 바와 같이, 처리 대상의 CU가 속하는 슬라이스(즉 처리 대상의 슬라이스)의 양자화 파라미터 SliceQP와, 처리 대상의 CU의 양자화 파라미터의 차분값을 전송시키도록 해도 된다.
dQP=CurrentQP-SliceQP …(17)
양자화 파라미터 CurrentQP는, 예를 들어, 도 19의 코딩 유닛 양자화 파라미터 산출부(334)가, 코딩 유닛 양자화값 산출부(331)가 산출한 처리 대상의 CU의 양자화값을 변환함으로써 얻을 수 있다. 또한, 양자화 파라미터 SliceQP는, 예를 들어, 도 19의 슬라이스 양자화 파라미터 산출부(333)가, 픽쳐 양자화 파라미터 산출부(332)가 구한 양자화 파라미터 pic_init_qp_minus26, 및, 자신이 구한 양자화 파라미터 slice_qp_delta를 사용하여 구할 수 있다.
따라서, 예를 들어, 도 19의 코딩 유닛 양자화 파라미터 산출부(334)는, 이들의 값을 사용하여 양자화 파라미터 dQP를 구할 수 있다. 코딩 유닛 양자화 파라미터 산출부(334)는, 이 양자화 파라미터 dQP를 가역 부호화부(106)에 공급하고, 복호측에 전송시킨다.
양자화 파라미터 pic_init_qp_minus26이나 양자화 파라미터 slice_qp_delta에 대해서는, 예를 들어, "Test Model Under Consideration"(JCTVC-B205)에 정의되고 있고, 종래의 부호화 방식과 마찬가지의 방법으로 설정할 수 있다.
복호측에 있어서는, 부호화측에서 전송된 양자화 파라미터 dQP로부터 CU의 양자화 파라미터를 구할 수 있다.
예를 들어, 코딩 유닛 양자화값 산출부(413)는, 양자화 파라미터 dQP로부터, 이하의 식(18)과 같이, CU의 양자화 파라미터 SubMB_QP를 구하고, 그것을 변환함으로써, 양자화값을 구한다.
SubMB_QP=Clip(minQP, maxQP, SliceQP+submb_qp_delta) …(18)
식(18)에 있어서, minQP는, 미리 정의되어 있는 최소의 양자화 파라미터이며, maxQP는, 미리 정의되어 있는 최대의 양자화 파라미터이다.
이와 같이, 양자화 파라미터 dQP를 구하는데 양자화 파라미터 SliceQP를 사용하는 경우도, 상술한 2개의 방법의 경우와 마찬가지로, 양자화·역양자화를 행할 수 있다. 즉, 화상의 내용에 보다 적합한 양자화·역양자화를 행할 수 있을 뿐만 아니라, 양자화 파라미터의 부호량을 저감시킬 수 있다.
이들 각 방법의 처리의 특징을 비교하는 표를 도 24에 도시한다. 도 24에 도시되는 표에 있어서, 가장 위의 방법(제1 방법이라고 칭함)은, LCU의 양자화 파라미터를 사용하여 양자화 파라미터 dQP를 구하는 방법이다. 위에서 2번째의 방법(제2 방법이라고 칭함)은, 처리 대상의 CU의 직전에 처리된 CU의 양자화 파라미터를 사용하여 양자화 파라미터 dQP를 구하는 방법이다. 그리고, 가장 아래의 법(제3 방법이라고 칭함)은, 처리 대상의 슬라이스의 양자화 파라미터를 사용하여 양자화 파라미터 dQP를 구하는 방법이다.
도 24의 표는, 각 방법의 특징으로서, 파이프라인 처리의 용이함과, 부호화 효율을 비교하고 있다. 도 24의 표에 도시되는 바와 같이, 제2 방법보다도 제1 방법 쪽이 파이프라인 처리가 용이하다. 또한, 그 제1 방법보다도 제3 방법 쪽이 파이프라인 처리가 용이하다. 또한, 제3 방법보다도 제1 방법 쪽이 부호화 효율이 좋다. 또한, 그 제1 방법보다도 제2 방법 쪽이 부호화 효율이 좋다.
즉, 일반적으로, 처리 대상의 영역(코딩 유닛이나 서브 매크로 블록 등)과의 상관성은, 그 처리 대상의 영역에 보다 근방의 영역일수록 높다. 따라서, 처리 대상의 영역에 대하여 보다 근방의 영역을 이용해서 양자화 파라미터 dQP를 구하는 것에 의해, 양자화 파라미터 dQP의 부호화 효율을 보다 향상시킬 수 있다.
일반적으로, 처리 대상의 영역에 대하여 보다 이격된 영역일수록, 처리 순서가 빠르다. 따라서, 처리 대상의 영역이 처리될 때까지의 시간이 길어진다. 즉, 처리 지연 등에 대한 허용 시간이 길어진다. 따라서, 처리 대상의 영역에 대하여 보다 이격된 영역을 이용해서 양자화 파라미터 dQP를 구하는 것에 의해, 지연이 발생하기 어려워져, 파이프라인 처리에는 유리해진다.
이상과 같이, 각 방법은 서로 상이한 특징을 가지므로, 어느 방법이 보다 적절한지는 우선되는 조건에 따라서 상이하다. 또한, 각 방법을 선택할 수 있게 해도 된다. 이 선택 방법은 임의이다. 예를 들어, 어느 방법을 적용할지를 예를 들어 사용자 등이 미리 정하도록 해도 된다. 또한, 예를 들어, 임의의 조건에 따라(예를 들어 임의의 처리 단위마다나 임의의 이벤트 발생시 등에), 적응적으로 어느 하나의 방법이 선택되도록 해도 된다.
또한, 어느 하나의 방법을 적절하게 선택하는 경우, 어느 방법을 선택했는지를 나타내는 플래그 정보를 생성하고, 그 플래그 정보를, 부호화측(양자화측)으로부터 복호측(역양자화측)으로 전송시키도록 해도 된다. 그 경우, 복호측(역양자화측)은, 그 플래그 정보를 참조함으로써, 부호화측(양자화측)과 동일한 방법을 선택할 수 있다.
또한, 양자화 파라미터 dQP의 산출 방법은, 임의이며, 상술한 것 이외이어도 된다. 준비하는 산출 방법의 수도 임의이다. 또한, 그 수를 가변으로 해도 된다. 또한, 양자화 파라미터 dQP를 정의하는 정보를, 부호화측(양자화측)으로부터 복호측(역양자화측)으로 전송시키도록 해도 된다.
상술한 각 방법의 특징을 고려하여, 양자화 파라미터의 차분값의 산출 방법을 예시한다. 도 25는, LCU와 CU의 구성의 일례를 도시하고 있다. (번호)는 코딩 유닛의 부호화(복호)의 처리순을 나타내고 있다.
LCU(0)에 있어서, 코딩 유닛의 부호화순은 하기와 같이 된다:
Figure 112018010660635-pat00003
이 경우, 양자화 파라미터의 차분값은 이하와 같이 된다:
LCU 내에서 선두의 코딩 유닛 CU(0)는, 식(17)을 사용하여, CU(0)가 속하는 슬라이스(즉 처리 대상의 슬라이스)의 양자화 파라미터 SliceQP와, 처리 대상의 CU(0)의 양자화 파라미터의 차분값을 전송시킨다.
dQP(CU(0))=CurrentQP(CU0)-SliceQP
다음에, LCU 내의 선두 이외의 코딩 유닛 CU(10) 내지 CU(3)는, 식(16)을 사용하여, 처리 대상의 CU의 양자화 파라미터(CurrentCU)와 직전에 부호화된 CU(PrevisousCU)의 차분값을 전송시킨다.
dQP=CurrentQP(CUi)-PreviousQP(CUi-1)
즉, 도 25를 사용하여 설명하면, 양자화 파라미터의 차분값은 이하와 같이 된다:
dQP(CU(10))=CurrentQP(CU(10))-PrevisouQP(CU(0))
dQP(CU(11))=CurrentQP(CU(11))-PrevisouQP(CU(10))
dQP(CU(12))=CurrentQP(CU(12))-PrevisouQP(CU(11))
dQP(CU(13))=CurrentQP(CU(13))-PrevisouQP(CU(12))
dQP(CU(20))=CurrentQP(CU(20))-PrevisouQP(CU(13))
dQP(CU(21))=CurrentQP(CU(21))-PrevisouQP(CU(20))
dQP(CU(30))=CurrentQP(CU(30))-PrevisouQP(CU(21))
dQP(CU(31))=CurrentQP(CU(31))-PrevisouQP(CU(30))
dQP(CU(32))=CurrentQP(CU(32))-PrevisouQP(CU(31))
dQP(CU(33))=CurrentQP(CU(33))-PrevisouQP(CU32))
dQP(CU(23))=CurrentQP(CU(23))-PrevisouQP(CU33))
dQP(CU(3))=CurrentQP(CU(3))-PrevisouQP(CU23)
다른 LCU(1) 내지 LCU(N)에 대해서도 마찬가지로 양자화 파라미터의 차분값을 산출·전송한다.
이와 같이, 양자화 파라미터의 차분값을 산출·전송함으로써, 각 방법의 특징의 장점(도면 중 이중원)을 채용함으로써, 파이프라인 처리의 용이함과 부호화 효율을 함께 양립할 수 있다.
또한, 실장상의 관점에서, LUC 내에서 폐쇄된 제어를 행하는 경우에는, LCU 내의 선두의 코딩 유닛 CU(0)는, 식(15)를 사용하여, 양자화 파라미터의 차분값을 산출하면 된다.
또한, 이제까지 설명한 양자화 파라미터 dQP는, 모든 코딩 유닛에 설정할 필요는 없고, LCUQP, PreviousQP, SliceQP 등과 같은 기준으로 되는 양자화 파라미터와 상이한 값을 설정하고 싶은 CU만 설정하면 된다.
그 때문에, 예를 들어, 슬라이스 헤더(SliceHeader)에, MinCUForDQPCoded인 신택스를 추가하도록 해도 된다.
도 26은, 슬라이스 헤더의 신택스의 예를 도시하는 도면이다. 각 행의 좌측 단부의 숫자는 설명을 위해 붙인 행 번호이다.
도 26의 예에 있어서, 제22행째에 MinCUForDQPCoded가 설정되어 있다. 이 MinCUForDQPCoded는, dQP를 설정하는 최소 CU 사이즈를 지정한다. 예를 들어, CU의 최소 사이즈가 8×8이었다고 해도, MinCUForDQPCoded=16으로 지정되어 있는 경우, 화상 부호화 장치(300)의 코딩 유닛 양자화 파라미터 산출부(334)는, 16×16 이상의 사이즈의 CU만 dQP를 설정하고, 8×8의 CU에는 dQP를 설정하지 않도록 한다. 즉, 이 경우, 16×16 이상의 사이즈의 CU의 dQP가 전송된다. 또한, MinCUForDQPCoded는, dQP를 설정하는 최소 CU 사이즈를 지정하는 방법으로서, 부호화(복호) 시에 설정되는 CU 사이즈(4×4, 8×8, 16×16, 32×32 등)로부터, dQP를 설정하는 최소 CU 사이즈를 식별(선택)하는 플래그(예를 들어, 0:4×4, 1:8×8, 2:16×16 등)로서 설정할 수도 있다.
예를 들어, 인코더를 만드는 사람이, 16×16 사이즈의 CU에서의 제어밖에 바라고 있지 않으면, 8×8 사이즈의 CU에서는, dQP를 모두 0으로 전송할 필요가 있고, 이에 의해 부호화 효율이 저감할 우려가 있다.
그래서 이러한 신택스 MinCUForDQPCoded를 설정함으로써, 이러한 경우에 8×8 사이즈의 CU의 dQP의 전송을 생략할 수 있어, 부호화 효율의 저감을 억제할 수 있다.
화상 복호 장치(400)의 코딩 유닛 양자화값 산출부(413)는, 이러한 신택스에 따라서, 8×8의 CU의 dQP는 전송되고 있지 않은 것을 파악하고, LCUQP, PreviousQP, SliceQP 등과 같은 기준으로 되는 양자화 파라미터를 사용하여 양자화값을 산출한다.
또한, MinCUForDQPCoded는, 슬라이스 헤더 이외에 저장하도록 해도 된다. 예를 들어, 픽쳐 파라미터 세트(PictureParameterSet)에 저장하도록 해도 된다. 슬라이스 헤더 혹은 픽쳐 파라미터 세트에 저장함으로써, 예를 들어, 씬 체인지 후에 이 값을 변경하는 등의 조작에 대응할 수 있다.
단, MinCUForDQPCoded를, 슬라이스 헤더에 저장함으로써, 픽쳐를 멀티 슬라이스화하고, 슬라이스마다 병렬로 처리하는 경우에도 대응할 수 있으므로, 보다 바람직하다.
<5. 제5 실시 형태>
[개요]
이상에 있어서는, 서브 매크로 블록(LCU보다 작은 코딩 유닛)마다의 양자화 파라미터를 화상 부호화 장치로부터 화상 복호 장치에 전송하도록 설명했지만, 이 경우, 화상 복호 장치도, 그 서브 매크로 블록(LCU보다 작은 코딩 유닛)마다의 양자화 파라미터를 취득하고, 그것을 사용하여 서브 매크로 블록(LCU보다 작은 코딩 유닛)마다 양자화를 행할 수 있어야만 한다.
그래서, 화상 부호화 장치가, 양자화 처리를 서브 매크로 블록(LCU보다 작은 코딩 유닛)마다 행하지만, 양자화 파라미터의 설정은 매크로 블록(LCU)마다 행하고, 그 매크로 블록(LCU)마다의 양자화 파라미터를 화상 복호 장치에 제공하도록 해도 된다.
예를 들어, 화상 부호화 장치가, 전술한 TestModel5에 의해 각 매크로 블록(LCU)의 액티비티를 산출할 때, 매크로 블록(LCU)의 크기가, 64×64이라든가, 128×128이어도, 그 매크로 블록(LCU)보다 작은, 8×8이라든가 16×16과 같은 블록(코딩 유닛) 단위로 액티비티를 산출하도록 한다.
그리고, 화상 부호화 장치가, 이, 각 8×8 혹은 16×16 블록 단위의 액티비티에 기초하여, 8×8 블록 혹은 16×16 블록 단위의 양자화 파라미터값을 TestModel5의 방법에 기초하여 결정하도록 한다.
단, 양자화 파라미터는, 매크로 블록(LCU)마다 설정하도록 한다.
예를 들어, 도 27에 도시되는 바와 같이, LCU(매크로 블록)의 사이즈가 64×64화소인 것으로 한다. 이 LCU에 대하여 화상 부호화 장치가, 16×16의 코딩 유닛마다 액티비티를 산출하고, 양자화 파라미터를 산출하면, 각각의 코딩 유닛(블록)의 액티비티가 QP00 내지 QP33으로 되는 것으로 한다.
AVC의 경우, 양자화 파라미터 QP는, 도 28에 도시되는 바와 같이, 예를 들어, 6으로부터 12로와 같이, 그 값이 6 증가했을 때에 2배 거친 양자화 처리가 행해지도록 설계되어 있다.
또한, 특히, 보다 낮은 비트 레이트, 즉, 보다 높은 QP에 있어서는, 색차 신호에 있어서의 열화가 눈에 띄기 쉽다. 그래서, 휘도 신호에 대한 양자화 파라미터 QPY에 대하여, 색차 신호에 대한 디폴트의 양자화 파라미터 QPC가, 미리 정의되어 있다.
사용자는, 화상 압축 정보 중에 포함되는 ChromaQPOffset에 관한 정보를 설정함으로써, 이 관계를 제어하는 것이 가능하다.
이에 반해, 본 실시 형태의 경우, 화상 부호화 장치는, 제1 스텝으로서, 매크로 블록에 대한 양자화 파라미터 QPMB를, 이하의 수학식 3과 같이 결정한다.
Figure 112018010660635-pat00004
제2 스텝으로서, 각 블록의 양자화 처리를, QP00 내지 QP33의 값을 사용하여 행한다. 이 결과, 각 블록에 있어서, 비 0(제로)으로 되는 계수의 위치를, 메모리에 기억한다.
제3 스텝으로서, 각 블록의 양자화 처리를, QPMB의 값을 사용하여 행한다.
제4 스텝으로서, 제3 스텝에 의해 얻어지는 비 0 중, 제2 스텝에 있어서도 비 0 계수인 계수 위치의 값만을, 부호화 정보로서, 가역 부호화 정보에 전송한다.
이러한 처리를 행함으로써, 화상 압축 정보에 전송되는 양자화 파라미터로서는, QPMB뿐이지만, 각각의 블록을, 의사적으로, QP00 내지 QP33의 값을 사용하여 행함으로써, 적응 양자화를 실현하고, 출력으로 되는 화상 압축 정보의 주관 화질을 향상시키는 것이 가능해진다.
[화상 부호화 장치]
도 29는, 본 기술을 적용한 화상 부호화 장치의 주된 구성예를 도시하는 블록도이다. 도 29에 도시되는 바와 같이, 이 경우의 화상 부호화 장치(500)는, 도 1의 화상 부호화 장치(100)와 기본적으로 마찬가지의 구성을 갖고, 마찬가지의 처리를 행한다.
단, 화상 부호화 장치(500)는, 화상 부호화 장치(100)의 양자화부(105), 레이트 제어부(117), 및 서브 매크로 블록 양자화부(121) 대신에, 레이트 제어부(317), 코딩 유닛 양자화부(504), 및 양자화부(505)를 갖는다.
또한, 화상 부호화 장치(500)는, 도 1의 화상 부호화 장치(100)가 역양자화부(108)에 부가해서 서브 매크로 블록 역양자화부(122)를 갖는 것에 대해서, 역양자화부(108)만을 갖는다. 즉, 역양자화 처리는, 종래의 AVC 등과 마찬가지로 LCU(매크로 블록)마다 행해진다. 이것은, 이 화상 부호화 장치(500)에 대응하는 화상 복호 장치에 있어서도 마찬가지이다.
코딩 유닛 양자화부(504)는, 레이트 제어부(317)에 의해 구해진 코딩 유닛마다의 액티비티를 사용하여, 코딩 유닛(예를 들어 SCU)마다 양자화를 행한다.
양자화부(505)는, LCU마다의 양자화 파라미터를 구하고, 그것을 사용하여 각 코딩 유닛의 양자화를 행한다. 그리고, 양자화부(505)는, 코딩 유닛 양자화부(504)가 구한 각 코딩 유닛의, 양자화된 직교 변환 계수 중, 비 제로의 계수를, 그것과 동일한 위치의, 양자화부(505)에 의한 양자화 처리 결과(양자화된 직교 변환 계수)로 치환한다.
이 치환이 행해진 결과가, 양자화 결과로서 가역 부호화부(106)나 역양자화부(108)에 공급된다. 또한, 양자화부(505)에 의해 산출된 LCU마다의 양자화 파라미터가, 가역 부호화부(106)나 역양자화부(108)에 공급된다.
역양자화부(108)나 화상 복호 장치의 역양자화부(도시하지 않음)는, 종래의 AVC 등의 경우와 마찬가지로, 이 LCU마다의 양자화 파라미터를 사용하여 역양자화를 행한다.
[레이트 제어부, 코딩 유닛 양자화부, 양자화부의 구성]
도 30은, 도 29의 레이트 제어부, 코딩 유닛 양자화부, 및 양자화부의 상세의 구성예를 도시하는 블록도이다.
도 30에 도시되는 바와 같이, 코딩 유닛 양자화부(504)는, 코딩 유닛 양자화 파라미터 결정부(511), 코딩 유닛 양자화 처리부(512), 및 비 제로 계수 위치 버퍼(513)를 갖는다.
코딩 유닛 양자화 파라미터 결정부(511)는, 레이트 제어부(317)의 액티비티 버퍼(322)로부터 공급되는, LCU보다도 하위층의 코딩 유닛(예를 들어 SCU)마다의 액티비티를 사용하여, LCU보다도 하위층의 코딩 유닛(예를 들어 SCU)마다 양자화 파라미터 CU_QP를 결정한다. 코딩 유닛 양자화 파라미터 결정부(511)는, 그 코딩 유닛마다의 양자화 파라미터 CU_QP를, 코딩 유닛 양자화 처리부(512) 및 양자화부(505)의 LCU 양자화 파라미터 결정부(522)에 공급한다.
코딩 유닛 양자화 처리부(512)는, 코딩 유닛 양자화 파라미터 결정부(511)로부터 공급되는 코딩 유닛마다의 양자화 파라미터 CU_QP를 사용하여, 양자화부(505)의 직교 변환 계수 버퍼(521)로부터 공급되는 직교 변환 계수를, LCU보다도 하위층의 코딩 유닛(예를 들어 SCU)마다 양자화한다. 코딩 유닛 양자화 처리부(512)는, 그 양자화에 의해 얻어진, 코딩 유닛마다의, 양자화된 직교 변환 계수 중, 값이 제로가 아닌(비 제로 계수인) 코딩 유닛의 위치를 비 제로 계수 위치 버퍼(513)에 공급하고, 보유시킨다.
비 제로 계수 위치 버퍼(513)는, 소정의 타이밍에서, 보유하고 있는, 비 제로 계수의 위치를 양자화부(505)의 계수 치환부(524)에 공급한다.
도 30에 도시되는 바와 같이, 양자화부(505)는, 직교 변환 계수 버퍼(521), LCU 양자화 파라미터 결정부(522), LCU 양자화 처리부(523), 및 계수 치환부(524)를 갖는다.
직교 변환 계수 버퍼(521)는, 직교 변환부(104)로부터 공급되는 직교 변환 계수를 보유하고, 소정의 타이밍에 있어서, 보유하고 있는 직교 변환 계수를 코딩 유닛 양자화 처리부(512) 및 LCU 양자화 처리부(523)에 공급한다.
LCU 양자화 파라미터 결정부(522)는, 상술한 식(19)와 같이, 코딩 유닛 양자화 파라미터 결정부(511)로부터 공급되는 코딩 유닛마다의 양자화 파라미터 CU_QP의, 그 LCU 내의 최소값을, LCU마다의 양자화 파라미터 LCU_QP로 결정한다. LCU 양자화 파라미터 결정부(522)는, 그 LCU마다의 양자화 파라미터 LCU_QP(처리 대상LCU 내에 있어서의 CU_QP의 최소값)를 LCU 양자화 처리부(523)에 공급한다.
LCU 양자화 처리부(523)는, LCU 양자화 파라미터 결정부(522)로부터 공급되는 LCU마다의 양자화 파라미터 LCU_QP를 사용하여, 직교 변환 계수 버퍼(521)로부터 공급되는 직교 변환 계수를, LCU보다도 하위층의 코딩 유닛(예를 들어 SCU)마다 양자화한다. LCU 양자화 처리부(523)는, 그 양자화에 의해 얻어진, 코딩 유닛마다의, 양자화된 직교 변환 계수를 계수 치환부(524)에 공급한다.
계수 치환부(524)는, LCU 양자화 처리부(523)에 의해 양자화된 직교 변환 계수의, 값이 제로가 아닌 계수(비 제로 계수) 중, 비 제로 계수 위치 버퍼(513)로부터 공급되는 비 제로 계수의 위치와 상이한 위치의 계수를, 제로로 치환한다.
즉, 계수 치환부(524)는, LCU보다도 하위층의 코딩 유닛마다 결정된 양자화 파라미터 CU_QP를 사용하는 양자화와, LCU마다 결정된 양자화 파라미터 LCU_QP를 사용하는 양자화의 양쪽에 있어서, 얻어지는 양자화 결과의 값이 비 제로이었던(LCU보다도 하위층의) 코딩 유닛에 대해서만, 그 양자화 결과의 값을, 양자화된 직교 변환 계수로서 채용한다. 이에 반해, 그 밖의(LCU보다도 하위층의) 코딩 유닛에 대해서는, 계수 치환부(524)는, 양자화된 직교 변환 계수의 값을 모두 제로로 한다.
계수 치환부(524)는, 이렇게 적절하게, 값의 치환을 행한, 양자화된 직교 변환 계수를, LCU마다 결정된 양자화 파라미터 LCU_QP와 함께, 가역 부호화부(106) 및 역양자화부(108)에 공급한다.
가역 부호화부(106)는, 공급된 계수 데이터나 양자화 파라미터를 부호화하고, 화상 부호화 장치(500)에 대응하는(화상 부호화 장치(500)에 의해 생성된 부호화 데이터를 복호할 수 있는) 화상 복호 장치에 공급시킨다. 그 화상 복호 장치는, 종래의 AVC 등과 마찬가지로, 화상 부호화 장치(500)로부터 공급된 LCU마다의 양자화 파라미터 LCU_QP를 사용하여 역양자화를 행한다.
역양자화부(108)도 마찬가지로, 계수 치환부(524)로부터 공급된 LCU마다의 양자화 파라미터 LCU_QP를 사용하여, 계수 치환부(524)로부터 공급된 계수 데이터의 역양자화를 행한다.
또한, 이 역양자화부(108)의 구성은, 도 10을 참조해서 설명한 역양자화부(203)와 기본적으로 마찬가지의 구성을 갖는다. 단, 역양자화부(108)의 경우, 역양자화 처리부(253)는, 양자화 파라미터 버퍼(251)로부터 공급되는 양자화 파라미터(LCU마다의 양자화 파라미터 LCU_QP)를 사용하여, 직교 변환 계수 버퍼(252)로부터 공급되는, 양자화된 직교 변환 계수를 역양자화한다.
[부호화 처리의 흐름]
다음에, 이 화상 부호화 장치(500)에 의해 실행되는 부호화 처리의 흐름의 예를, 도 31의 플로우차트를 참조해서 설명한다. 이 경우, 부호화 처리의 각 처리는, 도 7의 플로우차트를 참조해서 설명한 부호화 처리의 각 처리와, 기본적으로 마찬가지로 행해진다.
즉, 도 7의 스텝 S101 내지 스텝 S104의 각 처리와 마찬가지로, 스텝 S701 내지 스텝 S704의 각 처리가 행해진다. 단, 도 7의 스텝 S105 및 스텝 S106 대신에, 스텝 S705의 양자화 처리가 행해진다. 또한, 스텝 S106 내지 스텝 S117의 각 처리와 마찬가지로, 스텝 S706 내지 스텝 S716의 각 처리가 행해진다.
[양자화 처리의 흐름]
다음에, 도 32의 플로우차트를 참조하여, 도 31의 스텝 S705에 있어서 실행되는 양자화 처리의 흐름의 예를 설명한다.
양자화 처리가 개시되면, 스텝 S731에 있어서, 액티비티 산출부(321)는, 코딩 유닛마다의 액티비티를 산출한다.
스텝 S732에 있어서, 코딩 유닛 양자화 파라미터 결정부(511)는, LCU보다도 하위층의 코딩 유닛 단위에서의 양자화 파라미터 CU_QP를 결정한다.
스텝 S733에 있어서, LCU 양자화 파라미터 결정부(522)는, LCU 단위에서의 양자화 파라미터 LCU_QP를 결정한다.
스텝 S734에 있어서, 코딩 유닛 양자화 처리부(512)는, LCU보다도 하위층의 코딩 유닛 단위의 양자화 파라미터 CU_QP를 사용하여, 양자화를 행한다.
스텝 S735에 있어서, 비 제로 계수 위치 버퍼(513)는, 스텝 S734의 양자화 처리에 의해 생성된 비 제로 계수의 위치를 보유한다.
스텝 S736에 있어서, LCU 양자화 처리부(523)는, LCU 단위에서의 양자화 파라미터 LCU_QP를 사용하여, 양자화를 행한다.
스텝 S737에 있어서, 계수 치환부(524)는, 스텝 S735의 처리에 의해 보유된 비 제로 계수의 위치와 상이한 위치의, LCU보다도 하위층의 코딩 유닛의, 양자화된 직교 변환 계수의 값을 제로로 치환한다.
치환이 종료하면, 양자화 처리가 종료되고, 도 31의 스텝 S705로 처리를 복귀시키고, 스텝 S706 이후의 처리가 실행된다.
이상과 같이, 확장된 매크로 블록을 사용한 부호화 방식에 기초하는 화상 압축 정보를 출력으로 하는 화상 정보 부호화 장치 및 입력으로 하는 화상 정보 복호화 장치에 있어서, LCU보다도 하위층의 코드 유닛(서브 매크로 블록) 단위에서의 양자화 처리를 의사적으로 행함으로써, 단일 LCU(매크로 블록) 내에, 편평한 에어리어와 텍스쳐 에어리어가 혼재하는 경우라도, 각각의 특성에 기초한 적응 양자화를 행하여, 주관 화질을 향상시킬 수 있다.
<6. 제6 실시 형태>
[다시점 화상 부호화·다시점 화상 복호에의 적용]
상술한 일련의 처리는, 다시점 화상 부호화·다시점 화상 복호에 적용할 수 있다. 도 33은, 다시점 화상 부호화 방식의 일례를 도시한다.
도 33에 도시되는 바와 같이, 다시점 화상은, 복수의 시점의 화상을 포함하고, 그 복수의 시점 중 소정의 1개의 시점의 화상이, 베이스 뷰의 화상으로 지정되어 있다. 베이스 뷰의 화상 이외의 각 시점의 화상은, 논 베이스 뷰의 화상으로서 취급된다.
도 33와 같은 다시점 화상 부호화를 행하는 경우, 각 뷰(동일 뷰)에 있어서, 양자화 파라미터의 차분을 취할 수도 있다:
(1) base-view:
(1-1) dQP(base view)=Current_CU_QP(base view)-LCU_QP(base view)
(1-2) dQP(base view)=Current_CU_QP(base view)-Previsous_CU_QP(base view)
(1-3) dQP(base view)=Current_CU_QP(base view)-Slice_QP(base view)
(2) non-base-view:
(2-1) dQP(non-base view)=Current_CU_QP(non-base view)-LCU_QP(non-base view)
(2-2) dQP(non-base view)=CurrentQP(non-base view)-PrevisousQP(non-base view)
(2-3) dQP(non-base view)=Current_CU_QP(non-base view)-Slice_QP(non-base view)
다시점 화상 부호화를 행하는 경우, 각 뷰(상이한 뷰)에 있어서, 양자화 파라미터의 차분을 취할 수도 있다:
(3) base-view/non-base view:
(3-1) dQP(inter-view)=Slice_QP(base view)-Slice_QP(non-base view)
(3-2) dQP(inter-view)=LCU_QP(base view)-LCU_QP(non-base view)
(4) non-base view/non-base view:
(4-1) dQP(inter-view)=Slice_QP(non-base view i)-Slice_QP(non-base view j)
(4-2) dQP(inter-view)=LCU_QP(non-base view i)-LCU_QP(non-base view j)
이 경우, 상기 (1) 내지 (4)를 조합해서 사용할 수도 있다. 예를 들어, 논 베이스 뷰에서는, 베이스 뷰와 논 베이스 뷰 사이에 있어서 슬라이스 레벨에서 양자화 파라미터의 차분을 취하는 방법(3-1과 2-3을 조합함), 베이스 뷰와 논 베이스 뷰 사이에 있어서 LCU 레벨에서 양자화 파라미터의 차분을 취하는 방법(3-2와 2-1을 조합함)이 생각된다. 이와 같이, 차분을 반복해서 적용함으로써, 다시점 부호화를 행한 경우에 있어서도, 부호화 효율을 향상시킬 수 있다.
상술한 방법과 마찬가지로, 상기한 각 dQP에 대하여, 값이 0이 아닌 dQP가 존재하는지의 여부를 식별하는 플래그를 세트할 수도 있다.
[다시점 화상 부호화 장치]
도 34는, 상술한 다시점 화상 부호화를 행하는 다시점 화상 부호화 장치를 도시하는 도면이다. 도 34에 도시되는 바와 같이, 다시점 화상 부호화 장치(600)는, 부호화부(601), 부호화부(602), 및 다중화부(603)를 갖는다.
부호화부(601)는, 베이스 뷰 화상을 부호화하고, 베이스 뷰 화상 부호화 스트림을 생성한다. 부호화부(602)는, 논 베이스 뷰 화상을 부호화하고, 논 베이스 뷰 화상 부호화 스트림을 생성한다. 다중화부(603)는, 부호화부(601)에 있어서 생성된 베이스 뷰 화상 부호화 스트림과, 부호화부(602)에 있어서 생성된 논 베이스 뷰 화상 부호화 스트림을 다중화하고, 다시점 화상 부호화 스트림을 생성한다.
이 다시점 화상 부호화 장치(600)의 부호화부(601) 및 부호화부(602)에 대하여, 화상 부호화 장치(100)(도 1), 화상 부호화 장치(300)(도 18), 또는 화상 부호화 장치(500)(도 29)를 적용할 수 있다. 이 경우, 다시점 화상 부호화 장치(600)는, 부호화부(601)가 설정하는 양자화 파라미터와 부호화부(602)가 설정하는 양자화 파라미터의 차분값을 설정하고, 전송시킨다.
[다시점 화상 복호 장치]
도 35는, 상술한 다시점 화상 복호를 행하는 다시점 화상 복호 장치를 도시하는 도면이다. 도 35에 도시되는 바와 같이, 다시점 화상 복호 장치(610)는, 역다중화부(611), 복호부(612), 및 복호부(613)를 갖는다.
역다중화부(611)는, 베이스 뷰 화상 부호화 스트림과 논 베이스 뷰 화상 부호화 스트림이 다중화된 다시점 화상 부호화 스트림을 역 다중화하고, 베이스 뷰 화상 부호화 스트림과, 논 베이스 뷰 화상 부호화 스트림을 추출한다. 복호부(612)는, 역다중화부(611)에 의해 추출된 베이스 뷰 화상 부호화 스트림을 복호 하고, 베이스 뷰 화상을 얻는다. 복호부(613)는, 역다중화부(611)에 의해 추출된 논 베이스 뷰 화상 부호화 스트림을 복호하고, 논 베이스 뷰 화상을 얻는다.
이 다시점 화상 복호 장치(610)의 복호부(612) 및 복호부(613)에 대하여, 화상 복호 장치(200)(도 9), 혹은, 화상 복호 장치(400)(도 21)를 적용할 수 있다. 이 경우, 다시점 화상 복호 장치(610)는, 부호화부(601)가 설정하는 양자화 파라미터와 부호화부(602)가 설정하는 양자화 파라미터의 차분값으로부터 양자화 파라미터를 설정하여, 역양자화를 행한다.
<7. 제7 실시 형태>
[계층 화상 부호화·계층 화상 복호에의 적용]
상술한 일련의 처리는, 계층 화상 부호화·계층 화상 복호에 적용할 수 있다. 도 36은, 다시점 화상 부호화 방식의 일례를 도시한다.
도 36에 도시되는 바와 같이, 계층 화상은, 복수의 계층(해상도)의 화상을 포함하고, 그 복수의 해상도 중 소정의 1개의 계층의 화상이, 베이스 레이어의 화상으로 지정되어 있다. 베이스 레이어의 화상 이외의 각 계층의 화상은, 논 베이스 레이어의 화상으로서 취급된다.
도 36과 같은 계층 화상 부호화(공간 스케일러빌리티)를 행하는 경우, 각 레이어(동일 레이어)에 있어서, 양자화 파라미터의 차분을 취할 수도 있다:
(1) base-layer:
(1-1) dQP(base layer)=Current_CU_QP(base layer)-LCU_QP(base layer)
(1-2) dQP(base layer)=Current_CU_QP(base layer)-Previsous_CU_QP(base layer)
(1-3)dQP(base layer)=Current_CU_QP(base layer)-Slice_QP(base layer)
(2) non-base-layer:
(2-1) dQP(non-base layer)=Current_CU_QP(non-base layer)-LCU_QP(non-base layer)
(2-2) dQP(non-base layer)=CurrentQP(non-base layer)-PrevisousQP(non-base layer)
(2-3) dQP(non-base layer)=Current_CU_QP(non-base layer)-Slice_QP(non-base layer)
계층 부호화를 행하는 경우, 각 레이어(상이한 레이어)에 있어서, 양자화 파라미터의 차분을 취할 수도 있다:
(3) base-layer/non-base layer:
(3-1) dQP(inter-layer)=Slice_QP(base layer)-Slice_QP(non-base layer)
(3-2) dQP(inter-layer)=LCU_QP(base layer)-LCU_QP(non-base layer)
(4) non-base layer/non-base layer:
(4-1) dQP(inter-layer)=Slice_QP(non-base layer i)-Slice_QP(non-base layer j)
(4-2) dQP(inter-layer)=LCU_QP(non-base layer i)-LCU_QP(non-base layer j)
이 경우, 상기 (1) 내지 (4)를 조합해서 사용할 수도 있다. 예를 들어, 논 베이스 레이어에서는, 베이스 레이어와 논 베이스 레이어 사이에 있어서 슬라이스 레벨에서 양자화 파라미터의 차분을 취하는 방법(3-1과 2-3을 조합함), 베이스 레이어와 논 베이스 레이어 사이에 있어서 LCU 레벨에서 양자화 파라미터의 차분을 취하는 방법(3-2와 2-1을 조합함)이 생각된다. 이와 같이, 차분을 반복해서 적용함으로써, 계층 부호화를 행한 경우에 있어서도, 부호화 효율을 향상시킬 수 있다.
상술한 방법과 마찬가지로, 상기한 각 dQP에 대하여, 값이 0이 아닌 dQP가 존재하는지의 여부를 식별하는 플래그를 세트할 수도 있다.
[계층 화상 부호화 장치]
도 37은, 상술한 계층 화상 부호화를 행하는 계층 화상 부호화 장치를 도시하는 도면이다. 도 37에 도시되는 바와 같이, 계층 화상 부호화 장치(620)는, 부호화부(621), 부호화부(622), 및 다중화부(623)를 갖는다.
부호화부(621)는, 베이스 레이어 화상을 부호화하고, 베이스 레이어 화상 부호화 스트림을 생성한다. 부호화부(622)는, 논 베이스 레이어 화상을 부호화하고, 논 베이스 레이어 화상 부호화 스트림을 생성한다. 다중화부(623)는, 부호화부(621)에 있어서 생성된 베이스 레이어 화상 부호화 스트림과, 부호화부(622)에 있어서 생성된 논 베이스 레이어 화상 부호화 스트림을 다중화하고, 계층 화상 부호화 스트림을 생성한다.
이 계층 화상 부호화 장치(620)의 부호화부(621) 및 부호화부(622)에 대하여, 화상 부호화 장치(100)(도 1), 화상 부호화 장치(300)(도 18), 또는 화상 부호화 장치(500)(도 29)를 적용할 수 있다. 이 경우, 계층 화상 부호화 장치(600)는, 부호화부(621)가 설정하는 양자화 파라미터와 부호화부(622)가 설정하는 양자화 파라미터의 차분값을 설정하여, 전송시킨다.
[계층 화상 복호 장치]
도 38은, 상술한 계층 화상 복호를 행하는 계층 화상 복호 장치를 도시하는 도면이다. 도 38에 도시되는 바와 같이, 계층 화상 복호 장치(630)는, 역다중화부(631), 복호부(632), 및 복호부(633)를 갖는다.
역다중화부(631)는, 베이스 레이어 화상 부호화 스트림과 논 베이스 레이어 화상 부호화 스트림이 다중화된 계층 화상 부호화 스트림을 역 다중화하고, 베이스 레이어 화상 부호화 스트림과, 논 베이스 레이어 화상 부호화 스트림을 추출한다. 복호부(632)는, 역다중화부(631)에 의해 추출된 베이스 레이어 화상 부호화 스트림을 복호하고, 베이스 레이어 화상을 얻는다. 복호부(633)는, 역다중화부(631)에 의해 추출된 논 베이스 레이어 화상 부호화 스트림을 복호하고, 논 베이스 레이어 화상을 얻는다.
이 계층 화상 복호 장치(630)의 복호부(632) 및 복호부(633)에 대하여, 화상 복호 장치(200)(도 9), 혹은, 화상 복호 장치(400)(도 21)를 적용할 수 있다. 이 경우, 계층 화상 복호 장치(630)는, 부호화부(631)가 설정하는 양자화 파라미터와 부호화부(632)가 설정하는 양자화 파라미터의 차분값으로부터 양자화 파라미터 설정하여, 역양자화를 행한다.
<8. 제8 실시 형태>
[컴퓨터]
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있고, 소프트웨어에 의해 실행시킬 수도 있다. 이 경우, 예를 들어, 도 39에 도시되는 바와 같은 컴퓨터로서 구성되도록 해도 된다.
도 39에 있어서, 퍼스널 컴퓨터(700)의 CPU(Central Processing Unit)(701)는, ROM(Read Only Memory)(702)에 기억되어 있는 프로그램, 또는 기억부(713)로부터 RAM(Random Access Memory)(703)에 로드된 프로그램에 따라서 각종 처리를 실행한다. RAM(703)에는 또한, CPU(701)가 각종 처리를 실행함에 있어서 필요한 데이터 등도 적절하게 기억된다.
CPU(701), ROM(702), 및 RAM(703)은, 버스(704)를 통해서 서로 접속되어 있다. 이 버스(704)에는 또한, 입출력 인터페이스(710)도 접속되어 있다.
입출력 인터페이스(710)에는, 키보드, 마우스 등으로 이루어지는 입력부(711), CRT(Cathode Ray Tube)나 LCD(Liquid Crystal Display) 등으로 이루어지는 디스플레이, 및 스피커 등으로 이루어지는 출력부(712), 하드 디스크 등으로 구성되는 기억부(713), 모뎀 등으로 구성되는 통신부(714)가 접속되어 있다. 통신부(714)는, 인터넷을 포함하는 네트워크를 통한 통신 처리를 행한다.
입출력 인터페이스(710)에는 또한, 필요에 따라서 드라이브(715)가 접속되고, 자기 디스크, 광 디스크, 광자기 디스크, 혹은 반도체 메모리 등의 리무버블 미디어(721)가 적절하게 장착되며, 그들로부터 읽어내어진 컴퓨터 프로그램이, 필요에 따라서 기억부(713)에 인스톨된다.
상술한 일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 네트워크나 기록 매체로부터 인스톨된다.
이 기록 매체는, 예를 들어, 도 39에 도시되는 바와 같이, 장치 본체와는 별도로, 사용자에 프로그램을 송신하기 위해서 배포되는, 프로그램이 기록되어 있는 자기 디스크(플렉시블 디스크를 포함함), 광 디스크(CD-ROM(Compact Disc-Read Only Memory), DVD(Digital Versatile Disc)를 포함함), 광자기 디스크(MD(Mini Disc)를 포함함), 혹은 반도체 메모리 등으로 이루어지는 리무버블 미디어(721)에 의해 구성될 뿐만 아니라, 장치 본체에 미리 내장된 상태에서 사용자에게 송신되는, 프로그램이 기록되어 있는 ROM(702)이나, 기억부(713)에 포함되는 하드 디스크 등으로 구성된다.
또한, 컴퓨터가 실행하는 프로그램은, 본 명세서에서 설명하는 순서에 따라 시계열로 처리가 행해지는 프로그램이어도 되고, 병렬로, 혹은 호출이 행해졌을 때 등의 필요한 타이밍에서 처리가 행해지는 프로그램이어도 된다.
또한, 본 명세서에 있어서, 기록 매체에 기록되는 프로그램을 기술하는 스텝은, 기재된 순서에 따라 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않더라도, 병렬적 혹은 개별로 실행되는 처리도 포함하는 것이다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 디바이스(장치)에 의해 구성되는 장치 전체를 나타내는 것이다.
또한, 이상에 있어서, 1개의 장치(또는 처리부)로서 설명한 구성을 분할하고, 복수의 장치(또는 처리부)로서 구성하도록 해도 된다. 반대로, 이상에 있어서 복수의 장치(또는 처리부)로서 설명한 구성을 통합해서 1개의 장치(또는 처리부)로서 구성되도록 해도 된다. 또한, 각 장치(또는 각 처리부)의 구성에 상술한 것 이외의 구성을 부가하도록 해도 물론 된다. 또한, 시스템 전체적으로의 구성이나 동작이 실질적으로 동일하면, 어떤 장치(또는 처리부)의 구성의 일부를 다른 장치(또는 다른 처리부)의 구성에 포함시키도록 해도 된다. 즉, 본 기술의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니고, 본 기술의 요지를 일탈하지 않는 범위에 있어서 다양한 변경이 가능하다.
상술한 실시 형태에 따른 화상 부호화 장치(100)(도 1), 화상 부호화 장치(300)(도 18), 화상 부호화 장치(500)(도 29), 다시점 화상 부호화 장치(600)(도 34), 계층 화상 부호화 장치(620)(도 37), 화상 복호 장치(200)(도 9), 화상 복호 장치(400)(도 21), 다시점 화상 복호 장치(610)(도 35), 및, 계층 화상 복호 장치(630)(도 38)는, 위성 방송, 케이블 TV 등의 유선 방송, 인터넷 상에서의 배신 및 셀룰러 통신에 의한 단말에의 배신 등에 있어서의 송신기 혹은 수신기, 광 디스크, 자기 디스크 및 플래시 메모리 등의 매체에 화상을 기록하는 기록 장치, 또는, 이들 기억 매체로부터 화상을 재생하는 재생 장치 등의 다양한 전자 기기에 응용될 수 있다. 이하, 4개의 응용예에 대해서 설명한다.
[텔레비전 장치]
도 40은, 상술한 실시 형태를 적용한 텔레비전 장치의 개략적인 구성의 일례를 도시하고 있다. 텔레비전 장치(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)는, 부호화 비트 스트림이 스크램블(scramble) 되어 있는 경우에는, 디스크램블을 행해도 된다.
디코더(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)는, 상술한 실시 형태에 따른 화상 복호 장치(200)(도 9), 화상 복호 장치(400)(도 21), 다시점 화상 복호 장치(610)(도 35), 또는 계층 화상 복호 장치(630)(도 38)의 기능을 갖는다. 따라서, 텔레비전 장치(900)에서 복호되는 영상에 대해서, 부호화 측으로부터 공급되는 submb_qp_delta 등의 양자화 파라미터를 사용하여, 서브 매크로 블록마다 양자화값을 산출하고, 역양자화를 행한다. 따라서, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
[휴대 전화기]
도 41은, 상술한 실시 형태를 적용한 휴대 전화기의 개략적인 구성의 일례를 도시하고 있다. 휴대 전화기(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)는, 상술한 실시 형태에 따른 화상 부호화 장치(100)(도 1), 화상 부호화 장치(300)(도 18), 화상 부호화 장치(500)(도 29), 다시점 화상 부호화 장치(600)(도 34), 또는 계층 화상 부호화 장치(620)(도 37)의 기능과, 화상 복호 장치(200)(도 9), 화상 복호 장치(400)(도 21), 다시점 화상 복호 장치(610)(도 35), 또는 계층 화상 복호 장치(630)(도 38)의 기능을 갖는다. 따라서, 휴대 전화기(920)에서 부호화 및 복호 되는 영상에 대해서, 서브 매크로 블록마다 양자화값을 산출하고, 그 서브 매크로 블록마다의 양자화값을 사용하여 직교 변환 계수의 양자화를 행한다. 이와 같이 함으로써, 화상의 내용에 보다 적합한 양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시키도록 부호화 데이터를 생성할 수 있다. 또한, 부호화 측으로부터 공급되는 submb_qp_delta 등의 양자화 파라미터를 사용하여, 서브 매크로 블록마다 양자화값을 산출하고, 역양자화를 행한다. 따라서, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
또한, 이상에 있어서는 휴대 전화기(920)로서 설명했지만, 예를 들어, PDA(Personal Digital Assistants), 스마트 폰, UMPC(Ultra Mobile Personal Computer), 넷북, 노트형 퍼스널 컴퓨터 등, 이 휴대 전화기(920)와 마찬가지의 촬상 기능이나 통신 기능을 갖는 장치이면, 어떤 장치이어도 휴대 전화기(920)의 경우와 마찬가지로, 본 기술을 적용한 화상 부호화 장치 및 화상 복호 장치를 적용할 수 있다.
[기록 재생 장치]
도 42는, 상술한 실시 형태를 적용한 기록 재생 장치의 개략적인 구성의 일례를 나타내고 있다. 기록 재생 장치(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)는, 상술한 실시 형태에 따른 화상 부호화 장치(100)(도 1), 화상 부호화 장치(300)(도 18), 화상 부호화 장치(500)(도 29), 다시점 화상 부호화 장치(600)(도 34), 또는 계층 화상 부호화 장치(620)(도 37)의 기능을 갖는다. 또한, 디코더(947)는, 상술한 실시 형태에 따른 화상 복호 장치(200)(도 9), 화상 복호 장치(400)(도 21), 다시점 화상 복호 장치(610)(도 35), 또는 계층 화상 복호 장치(630)(도 38)의 기능을 갖는다. 따라서, 기록 재생 장치(940)에서 부호화 및 복호되는 영상에 대해서, 서브 매크로 블록마다 양자화값을 산출하고, 그 서브 매크로 블록마다의 양자화값을 사용하여 직교 변환 계수의 양자화를 행한다. 이와 같이 함으로써, 화상의 내용에 보다 적합한 양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시키도록 부호화 데이터를 생성할 수 있다. 또한, 부호화 측으로부터 공급되는 submb_qp_delta 등의 양자화 파라미터를 사용하여, 서브 매크로 블록마다 양자화값을 산출하고, 역양자화를 행한다. 따라서, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
[촬상 장치]
도 43은, 상술한 실시 형태를 적용한 촬상 장치의 개략적인 구성의 일례를 도시하고 있다. 촬상 장치(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)로부터 입력되는 화상 신호에 대하여 니(knee) 보정, 감마 보정, 색 보정 등의 여러 가지의 카메라 신호 처리를 행한다. 신호 처리부(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)는, 상술한 실시 형태에 따른 화상 부호화 장치(100)(도 1), 화상 부호화 장치(300)(도 18), 화상 부호화 장치(500)(도 29), 다시점 화상 부호화 장치(600)(도 34), 또는 계층 화상 부호화 장치(620)(도 37)의 기능과, 화상 복호 장치(200)(도 9), 화상 복호 장치(400)(도 21), 다시점 화상 복호 장치(610)(도 35), 또는 계층 화상 복호 장치(630)(도 38)의 기능을 갖는다. 따라서, 촬상 장치(960)에서 부호화 및 복호되는 영상에 대해서, 서브 매크로 블록마다 양자화값을 산출하고, 그 서브 매크로 블록마다의 양자화값을 사용하여 직교 변환 계수의 양자화를 행한다. 이와 같이 함으로써, 화상의 내용에 보다 적합한 양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시키도록 부호화 데이터를 생성할 수 있다. 또한, 부호화 측으로부터 공급되는 submb_qp_delta 등의 양자화 파라미터를 사용하여, 서브 매크로 블록마다 양자화값을 산출하고, 역양자화를 행한다. 따라서, 화상의 내용에 보다 적합한 역양자화 처리를 행할 수 있어, 복호 화상의 주관 화질의 열화를 억제시킬 수 있다.
물론, 본 기술을 적용한 화상 부호화 장치 및 화상 복호 장치는, 상술한 장치 이외의 장치나 시스템에도 적용 가능하다.
또한, 본 명세서에서는, 양자화 파라미터가, 부호화 측으로부터 복호 측으로 전송되는 예에 대해서 설명하였다. 양자화 행렬 파라미터를 전송하는 방법은, 부호화 비트 스트림으로 다중화되는 일없이, 부호화 비트 스트림과 관련지어진 별개의 데이터로서 전송되거나 또는 기록되어도 된다. 여기서, 「관련짓는다」라고 하는 용어는, 비트 스트림에 포함되는 화상(슬라이스 혹은 블록 등, 화상의 일부이어도 됨)과 당해 화상에 대응하는 정보를 복호 시에 링크시킬 수 있도록 하는 것을 의미한다. 즉, 정보는, 화상(또는 비트 스트림)과는 다른 전송로 상에서 전송되어도 된다. 또한, 정보는, 화상(또는 비트 스트림)과는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되어도 된다. 또한, 정보와 화상(또는 비트 스트림)은, 예를 들어, 복수 프레임, 1프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어져도 된다.
이상, 첨부 도면을 참조하면서 본 개시의 적합한 실시 형태에 대해서 상세하게 설명했지만, 본 개시의 기술적 범위는 이러한 예에 한정되지 않는다. 본 개시의 기술 분야에 있어서의 통상의 지식을 갖는 자이면, 특허청구의 범위에 기재된 기술적 사상의 범주 내에 있어서, 각종 변경예 또는 수정예에 상도할 수 있는 것은 명백하며, 이들에 대해서도, 당연히 본 개시의 기술적 범위에 속하는 것으로 양해된다.
100 : 화상 부호화 장치
105 : 양자화부
108 : 역양자화부
117 : 레이트 제어부
121 : 서브 매크로 블록 양자화부
122 : 서브 매크로 블록 역양자화부
151 : 서브 매크로 블록 액티비티 버퍼
152 : 양자화 파라미터 산출부
153 : 양자화 처리부
200 : 화상 복호 장치
203 : 역양자화부
221 : 서브 매크로 블록 역양자화부
251 : 양자화 파라미터 버퍼
252 : 직교 변환 계수 버퍼
253 : 역양자화 처리부

Claims (3)

  1. 화상 처리 장치로서,
    계층 구조를 포함하는 단위로 부호화 스트림을 복호하여 양자화 데이터를 생성하는 복호부;
    커런트 코딩 유닛에 대해 설정된 커런트 양자화 파라미터와 상기 커런트 코딩 유닛이 속하는 커런트 슬라이스에 대해 설정된 커런트 슬라이스 양자화 파라미터 사이의 차분값을 나타내는 차분 양자화 파라미터를 사용함으로써, 상기 코딩 유닛의 최상위층인 최대 코딩 유닛보다 낮은 계층의 상기 커런트 코딩 유닛에 대해 커런트 양자화 파라미터를 설정하는 설정부; 및
    상기 설정부에 의해 설정된 상기 커런트 양자화 파라미터를 사용함으로써 상기 복호부에 의해 생성된 상기 양자화 데이터를 역양자화하는 역양자화부
    를 포함하고,
    상기 부호화 스트림은, 상기 차분 양자화 파라미터가 존재하는지 여부를 식별하는 식별 데이터를, 상기 차분 양자화 파라미터가 설정되는 계층보다 상위층의 파라미터로서 포함하고,
    상기 복호부는 상기 부호화 스트림으로부터 상기 식별 데이터를 취득하고,
    상기 복호부는 취득한 상기 식별 데이터에 의해 상기 차분 양자화 파라미터가 존재하는 것이 나타내어져 있는 경우에, 상기 차분 양자화 파라미터를 상기 부호화 스트림으로부터 취득하고, 상기 부호화 스트림을 복호하여 상기 양자화 데이터를 생성하는, 화상 처리 장치.
  2. 제1항에 있어서,
    상기 설정부는 커런트 픽쳐에 대한 커런트 픽쳐 양자화 파라미터의 초기값을 사용하는 상기 커런트 슬라이스 양자화 파라미터를 설정하는, 화상 처리 장치.
  3. 화상 처리 방법으로서,
    계층 구조를 포함하는 단위로 부호화 스트림을 복호함으로써 양자화 데이터를 생성하는 단계;
    커런트 코딩 유닛에 대해 설정된 커런트 양자화 파라미터와 상기 커런트 코딩 유닛이 속하는 커런트 슬라이스에 대해 설정된 커런트 슬라이스 양자화 파라미터 사이의 차분값을 나타내는 차분 양자화 파라미터를 사용함으로써, 상기 코딩 유닛의 최상위층인 최대 코딩 유닛보다 낮은 계층의 상기 커런트 코딩 유닛에 대해 커런트 양자화 파라미터를 설정하는 단계; 및
    상기 설정된 커런트 양자화 파라미터를 사용함으로써 상기 생성된 양자화 데이터를 역양자화하는 단계
    를 포함하고,
    상기 부호화 스트림은, 상기 차분 양자화 파라미터가 존재하는지 여부를 식별하는 식별 데이터를, 상기 차분 양자화 파라미터가 설정되는 계층보다 상위층의 파라미터로서 포함하고,
    상기 생성하는 단계는, 상기 부호화 스트림으로부터 상기 식별 데이터를 취득하는 단계를 포함하고,
    상기 생성하는 단계는, 취득한 상기 식별 데이터에 의해 상기 차분 양자화 파라미터가 존재하는 것이 나타내어져 있는 경우에, 상기 차분 양자화 파라미터를 상기 부호화 스트림으로부터 취득하고, 상기 부호화 스트림을 복호하여 상기 양자화 데이터를 생성하는 단계를 포함하는, 화상 처리 방법.
KR1020187002964A 2010-06-04 2011-06-03 화상 처리 장치 및 방법 KR101918904B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
JPJP-P-2010-129414 2010-06-04
JP2010129414 2010-06-04
JPJP-P-2010-222300 2010-09-30
JP2010222300 2010-09-30
JPJP-P-2011-053479 2011-03-10
JP2011053479 2011-03-10
JP2011054816 2011-03-11
JPJP-P-2011-054816 2011-03-11
PCT/JP2011/062797 WO2011152518A1 (ja) 2010-06-04 2011-06-03 画像処理装置および方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020127030833A Division KR101828625B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20180014249A KR20180014249A (ko) 2018-02-07
KR101918904B1 true KR101918904B1 (ko) 2019-02-08

Family

ID=45066873

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020177029341A KR20170118962A (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법
KR1020177029343A KR101823316B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법
KR1020187002965A KR101918905B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법
KR1020187002964A KR101918904B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법
KR1020127030833A KR101828625B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법

Family Applications Before (3)

Application Number Title Priority Date Filing Date
KR1020177029341A KR20170118962A (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법
KR1020177029343A KR101823316B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법
KR1020187002965A KR101918905B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020127030833A KR101828625B1 (ko) 2010-06-04 2011-06-03 화상 처리 장치 및 방법

Country Status (17)

Country Link
US (7) US8849052B2 (ko)
EP (7) EP4290860A3 (ko)
JP (2) JP6048144B2 (ko)
KR (5) KR20170118962A (ko)
CN (9) CN103369323B (ko)
AU (1) AU2011259939B2 (ko)
BR (4) BR122014013355B1 (ko)
CA (3) CA2974558C (ko)
DK (1) DK3177017T3 (ko)
HK (2) HK1213409A1 (ko)
HU (1) HUE047906T2 (ko)
MX (4) MX341890B (ko)
MY (2) MY190480A (ko)
RU (4) RU2616155C1 (ko)
TW (4) TWI454149B (ko)
WO (1) WO2011152518A1 (ko)
ZA (1) ZA201208901B (ko)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
JP5359657B2 (ja) 2009-07-31 2013-12-04 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
JP5914962B2 (ja) 2010-04-09 2016-05-11 ソニー株式会社 画像処理装置および方法、プログラム、並びに、記録媒体
US20130058410A1 (en) * 2010-05-13 2013-03-07 Sharp Kabushiki Kaisha Encoding device, decoding device, and data structure
TWI600318B (zh) 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method
EP4290860A3 (en) 2010-06-04 2024-02-14 Sony Group Corporation Image processing apparatus and method
MX355733B (es) * 2010-06-10 2018-04-27 Thomson Licensing Métodos y aparatos para determinar predictores de parametro de cuantificación a partir de una pluralidad de parametros de cuantificación contiguos.
KR20120016980A (ko) 2010-08-17 2012-02-27 한국전자통신연구원 영상 부호화 방법 및 장치, 그리고 복호화 방법 및 장치
JP5707412B2 (ja) 2010-09-29 2015-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置、プログラムおよび集積回路
MX2013001774A (es) 2010-09-30 2013-03-18 Panasonic Corp Metodo de decodificacion de imagen, metodo de codificacion de imagen, aparato de decodificacion de imagen, aparato codificacion de imagen, programa, y circuito integrado.
US20120114034A1 (en) * 2010-11-08 2012-05-10 Mediatek Inc. Method and Apparatus of Delta Quantization Parameter Processing for High Efficiency Video Coding
EP3748964A1 (en) 2010-12-07 2020-12-09 Sony Corporation Image processing device and image processing method
PH12018501811A1 (en) 2010-12-07 2019-02-18 Sony Corp Image processing device and image processing method
JP5741076B2 (ja) 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
BR122019025405B8 (pt) * 2011-01-13 2023-05-02 Canon Kk Aparelho de codificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem, método de decodificação de imagem e meio de armazenamento
BR122014031521B1 (pt) 2011-02-10 2022-08-23 Velos Media International Limited Dispositivo e método de processamento de imagem
JP6327435B2 (ja) 2011-03-03 2018-05-23 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置、及び、画像復号装置
MY186854A (en) 2011-03-11 2021-08-26 Sony Corp Image processing apparatus and method
TWI530161B (zh) 2011-06-07 2016-04-11 Sony Corp Image processing apparatus and method
US20140241422A1 (en) * 2011-06-28 2014-08-28 Samsung Electronics Co., Ltd. Method and apparatus for image encoding and decoding using adaptive quantization parameter differential
JP5907367B2 (ja) 2011-06-28 2016-04-26 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
KR102010160B1 (ko) 2011-06-28 2019-08-12 소니 주식회사 화상 처리 장치, 화상 처리 방법 및 기록 매체
KR20130058524A (ko) * 2011-11-25 2013-06-04 오수미 색차 인트라 예측 블록 생성 방법
JP5900307B2 (ja) * 2011-12-13 2016-04-06 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに送信装置、送信方法及び送信プログラム
WO2013094385A1 (ja) * 2011-12-19 2013-06-27 ソニー株式会社 画像処理装置および方法
JP2014197723A (ja) 2012-01-06 2014-10-16 ソニー株式会社 画像処理装置および方法
AR092786A1 (es) * 2012-01-09 2015-05-06 Jang Min Metodos para eliminar artefactos de bloque
JP2015080002A (ja) * 2012-01-19 2015-04-23 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
CN106131561B (zh) 2012-01-20 2019-10-18 维洛媒体国际有限公司 解码装置和解码方法
BR112014018115B1 (pt) * 2012-01-30 2021-10-26 Samsung Electronics Co., Ltd Método de decodificar um vídeo
RU2607998C9 (ru) 2012-03-28 2017-07-07 ДжейВиСи КЕНВУД КОРПОРЕЙШН Устройство кодирования изображения, способ кодирования изображения и программа кодирования изображения, а также устройство декодирования изображения, способ декодирования изображения и программа декодирования изображения
JP5664584B2 (ja) * 2012-03-28 2015-02-04 株式会社Jvcケンウッド 画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム
CN111147852B (zh) 2012-04-16 2022-05-31 韩国电子通信研究院 图像解码方法和图像编码方法
JP5943757B2 (ja) * 2012-07-23 2016-07-05 キヤノン株式会社 画像符号化装置及びその方法
JP6154588B2 (ja) * 2012-08-23 2017-06-28 日本放送協会 画像符号化装置、画像復号装置及びプログラム
JP2014236264A (ja) 2013-05-31 2014-12-15 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
US9218639B2 (en) * 2013-09-27 2015-12-22 Apple Inc. Processing order in block processing pipelines
GB2520002B (en) * 2013-11-04 2018-04-25 British Broadcasting Corp An improved compression algorithm for video compression codecs
CN104754361B (zh) * 2013-12-28 2018-01-23 同济大学 图像编码、解码方法及装置
GB2523736B (en) * 2014-02-19 2020-03-25 Advanced Risc Mach Ltd Rate control in video encoding
WO2018143289A1 (ja) * 2017-02-02 2018-08-09 シャープ株式会社 画像符号化装置及び画像復号装置
EP3566440B1 (en) 2017-03-21 2020-12-02 Dolby Laboratories Licensing Corporation Quantization parameter prediction using luminance information
US10750175B2 (en) 2017-05-04 2020-08-18 Sony Corporation Quantization partitioning for enhanced image compression
WO2019050300A1 (ko) * 2017-09-06 2019-03-14 가온미디어 주식회사 효과적인 차분양자화 파라미터 전송 기반 영상 부/복호화 방법 및 장치
US10616585B2 (en) 2017-11-22 2020-04-07 Arm Limited Encoding data arrays
US11818479B2 (en) 2020-05-14 2023-11-14 Board Of Trustees Of Michigan State University Sigma Delta quantization for images
US11032546B1 (en) * 2020-07-20 2021-06-08 Tencent America LLC Quantizer for lossless and near-lossless compression
CN113010715B (zh) * 2021-03-30 2023-06-23 通威太阳能(金堂)有限公司 硅片电致发光图片分拣方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006262004A (ja) 2005-03-16 2006-09-28 Toshiba Corp 動画像符号化/復号化の方法及び装置
WO2008126135A1 (ja) 2007-03-20 2008-10-23 Fujitsu Limited 動画像符号化方法及び装置並びに動画像復号装置

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6915014B1 (en) * 1990-07-31 2005-07-05 Canon Kabushiki Kaisha Image processing apparatus and method
JP3271091B2 (ja) * 1993-03-22 2002-04-02 ソニー株式会社 画像信号符号化方法、装置、復号化方法及び装置
EP1711015A3 (en) * 1996-02-05 2006-11-08 Matsushita Electric Industrial Co., Ltd. Video signal recording apparatus, video signal regenerating apparatus, image coding apparatus and image decoding apparatus
JP4665372B2 (ja) * 2000-05-29 2011-04-06 ソニー株式会社 画像処理装置及び方法、通信システム及び方法、並びに記録媒体
JP3561485B2 (ja) * 2000-08-18 2004-09-02 株式会社メディアグルー 符号化信号分離・合成装置、差分符号化信号生成装置、符号化信号分離・合成方法、差分符号化信号生成方法、符号化信号分離・合成プログラムを記録した媒体および差分符号化信号生成プログラムを記録した媒体
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
DE10300048B4 (de) * 2002-01-05 2005-05-12 Samsung Electronics Co., Ltd., Suwon Verfahren und Vorrichtung zur Bildcodierung und -decodierung
US6975773B1 (en) * 2002-07-30 2005-12-13 Qualcomm, Incorporated Parameter selection in data compression and decompression
JP4063204B2 (ja) * 2003-11-20 2008-03-19 セイコーエプソン株式会社 画像データ圧縮装置及びエンコーダ
KR20070083677A (ko) * 2004-09-14 2007-08-24 개리 데모스 고품질 광역 다중-레이어 이미지 압축 코딩 시스템
KR101158439B1 (ko) * 2005-07-08 2012-07-13 엘지전자 주식회사 영상 신호의 코딩정보를 압축/해제하기 위해 모델링하는 방법
FR2888699A1 (fr) * 2005-07-13 2007-01-19 France Telecom Dispositif de codage/decodage hierachique
US20070230564A1 (en) * 2006-03-29 2007-10-04 Qualcomm Incorporated Video processing with scalability
US7656410B2 (en) 2006-03-31 2010-02-02 Intel Corporation Image buffering techniques
CN100530979C (zh) * 2006-09-13 2009-08-19 华为技术有限公司 一种矢量量化方法及矢量量化器
US8250618B2 (en) * 2006-09-18 2012-08-21 Elemental Technologies, Inc. Real-time network adaptive digital video encoding/decoding
JP2008193627A (ja) * 2007-01-12 2008-08-21 Mitsubishi Electric Corp 画像符号化装置、画像復号装置、および画像符号化方法、画像復号方法
US20080170793A1 (en) * 2007-01-12 2008-07-17 Mitsubishi Electric Corporation Image encoding device and image encoding method
US8767834B2 (en) * 2007-03-09 2014-07-01 Sharp Laboratories Of America, Inc. Methods and systems for scalable-to-non-scalable bit-stream rewriting
KR101366249B1 (ko) * 2007-06-28 2014-02-21 삼성전자주식회사 스케일러블 영상 부호화장치 및 방법과 그 영상 복호화장치및 방법
KR101365596B1 (ko) * 2007-09-14 2014-03-12 삼성전자주식회사 영상 부호화장치 및 방법과 그 영상 복호화장치 및 방법
CN101170701B (zh) * 2007-11-16 2010-10-27 四川虹微技术有限公司 视频编解码系统中去块滤波方法及装置
US8107754B2 (en) * 2007-12-07 2012-01-31 Mediatek Inc. Systems and methods for randomly accessing compressed images
CN101281749A (zh) * 2008-05-22 2008-10-08 上海交通大学 可分级的语音和乐音联合编码装置和解码装置
JP4768779B2 (ja) * 2008-06-02 2011-09-07 株式会社東芝 動画像符号化/復号化の方法及び装置
US8897359B2 (en) * 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
JP2010011075A (ja) * 2008-06-26 2010-01-14 Toshiba Corp 動画像符号化及び動画像復号化の方法及び装置
US8619856B2 (en) * 2008-10-03 2013-12-31 Qualcomm Incorporated Video coding with large macroblocks
TWI383684B (zh) * 2008-11-18 2013-01-21 Univ Nat Taiwan 多媒體串流之動態視訊編碼系統與方法
TWI396443B (zh) * 2008-12-22 2013-05-11 Ind Tech Res Inst 應用於網路串流之影音控制回應及頻寬調適方法與使用該方法之伺服器
CN101572817B (zh) * 2009-05-26 2011-01-05 北京邮电大学 一种用于空间可分级视频编码的编码模式选择方法
JP5344238B2 (ja) 2009-07-31 2013-11-20 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
JP5359657B2 (ja) 2009-07-31 2013-12-04 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
JP5914962B2 (ja) 2010-04-09 2016-05-11 ソニー株式会社 画像処理装置および方法、プログラム、並びに、記録媒体
TWI600318B (zh) 2010-05-18 2017-09-21 Sony Corp Image processing apparatus and image processing method
EP4290860A3 (en) 2010-06-04 2024-02-14 Sony Group Corporation Image processing apparatus and method
PH12018501811A1 (en) 2010-12-07 2019-02-18 Sony Corp Image processing device and image processing method
EP3748964A1 (en) 2010-12-07 2020-12-09 Sony Corporation Image processing device and image processing method
JP5741076B2 (ja) 2010-12-09 2015-07-01 ソニー株式会社 画像処理装置及び画像処理方法
BR122014031521B1 (pt) 2011-02-10 2022-08-23 Velos Media International Limited Dispositivo e método de processamento de imagem
MY186854A (en) 2011-03-11 2021-08-26 Sony Corp Image processing apparatus and method
TWI530161B (zh) 2011-06-07 2016-04-11 Sony Corp Image processing apparatus and method
JP5907367B2 (ja) 2011-06-28 2016-04-26 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
GB2498550B (en) * 2012-01-19 2016-02-24 Canon Kk Method and device for processing components of an image for encoding or decoding
RU2643490C2 (ru) 2012-06-29 2018-02-01 Вилос Медиа Интернэшнл Лимитед Устройство декодирования и способ декодирования

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006262004A (ja) 2005-03-16 2006-09-28 Toshiba Corp 動画像符号化/復号化の方法及び装置
WO2008126135A1 (ja) 2007-03-20 2008-10-23 Fujitsu Limited 動画像符号化方法及び装置並びに動画像復号装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Budagavi M et al: "Delta QP signaling at sub-LCU level", Daegu, JCTVC-D038, 15 January 2011.
KARCZEWICZ (QUALCOMM) M et al: "Video coding technology proposal by Qualcomm", JCT-VC Meeting, DRESDEN.

Also Published As

Publication number Publication date
EP3177017B1 (en) 2020-01-29
KR20180014249A (ko) 2018-02-07
EP3675494A1 (en) 2020-07-01
CN105245895B (zh) 2019-02-26
CN103369321B (zh) 2016-07-06
MY163789A (en) 2017-10-31
AU2011259939B2 (en) 2015-07-30
CN108366264B (zh) 2022-08-26
EP3185559A1 (en) 2017-06-28
BR122020013772B1 (pt) 2021-09-28
CN102918837B (zh) 2015-09-30
BR112012030158B1 (pt) 2021-10-05
MX2012013748A (es) 2013-01-22
RU2656718C1 (ru) 2018-06-06
MX342691B (es) 2016-10-10
BR122014013355B1 (pt) 2021-11-23
US20130071039A1 (en) 2013-03-21
TWI568245B (zh) 2017-01-21
MX341890B (es) 2016-09-07
CA2974558C (en) 2020-10-27
EP3675493A1 (en) 2020-07-01
EP2916546A1 (en) 2015-09-09
TW201215151A (en) 2012-04-01
EP2579594A1 (en) 2013-04-10
CN105245895A (zh) 2016-01-13
US9369704B2 (en) 2016-06-14
BR112012030158A2 (pt) 2016-12-13
KR20180014866A (ko) 2018-02-09
EP4290860A3 (en) 2024-02-14
US20140321537A1 (en) 2014-10-30
BR122014013355A2 (pt) 2019-08-13
CA2974558A1 (en) 2011-12-08
MY190480A (en) 2022-04-22
RU2012150834A (ru) 2014-10-27
TWI565301B (zh) 2017-01-01
JPWO2011152518A1 (ja) 2013-08-01
TW201442486A (zh) 2014-11-01
KR20130084236A (ko) 2013-07-24
AU2011259939A1 (en) 2012-12-20
ZA201208901B (en) 2013-09-25
JP2014195319A (ja) 2014-10-09
US10230964B2 (en) 2019-03-12
US20140321536A1 (en) 2014-10-30
US8849052B2 (en) 2014-09-30
US20130301739A1 (en) 2013-11-14
EP3675494B1 (en) 2021-12-15
US20180007370A1 (en) 2018-01-04
JP6024709B2 (ja) 2016-11-16
CA2974561A1 (en) 2011-12-08
HK1213714A1 (zh) 2016-07-08
RU2619720C1 (ru) 2017-05-17
CN103369320A (zh) 2013-10-23
CN103369323A (zh) 2013-10-23
KR101823316B1 (ko) 2018-01-29
BR122020013775B1 (pt) 2022-04-19
RU2616155C1 (ru) 2017-04-12
CN102918837A (zh) 2013-02-06
US20190104318A1 (en) 2019-04-04
US10375403B2 (en) 2019-08-06
CA2798927A1 (en) 2011-12-08
KR101918905B1 (ko) 2018-11-14
CN103369320B (zh) 2016-06-22
US9924177B2 (en) 2018-03-20
TWI536845B (zh) 2016-06-01
CA2798927C (en) 2019-12-31
EP2579594A4 (en) 2014-10-29
CN108366264A (zh) 2018-08-03
TW201442487A (zh) 2014-11-01
KR101828625B1 (ko) 2018-02-12
CN105245882B (zh) 2019-02-22
US8731310B2 (en) 2014-05-20
AU2011259939A2 (en) 2013-01-10
CA2974561C (en) 2019-04-30
JP6048144B2 (ja) 2016-12-21
EP4290860A2 (en) 2023-12-13
EP3185559B1 (en) 2020-02-19
US20140321538A1 (en) 2014-10-30
CN103369322B (zh) 2016-06-29
CN103369322A (zh) 2013-10-23
KR20170118962A (ko) 2017-10-25
TW201421998A (zh) 2014-06-01
HUE047906T2 (hu) 2020-05-28
TWI454149B (zh) 2014-09-21
CN103369319A (zh) 2013-10-23
CN103369321A (zh) 2013-10-23
CN103369323B (zh) 2016-12-28
DK3177017T3 (da) 2020-03-02
EP3177017A1 (en) 2017-06-07
CN105245882A (zh) 2016-01-13
RU2014115193A (ru) 2015-10-20
HK1213409A1 (zh) 2016-06-30
CN103369319B (zh) 2016-08-10
KR20170118963A (ko) 2017-10-25
US9380299B2 (en) 2016-06-28
MX362216B (es) 2019-01-09
RU2573216C2 (ru) 2016-01-20
WO2011152518A1 (ja) 2011-12-08

Similar Documents

Publication Publication Date Title
KR101918904B1 (ko) 화상 처리 장치 및 방법
AU2015221528B2 (en) Image Processing Apparatus and Method

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant