JP2012244397A - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
JP2012244397A
JP2012244397A JP2011112314A JP2011112314A JP2012244397A JP 2012244397 A JP2012244397 A JP 2012244397A JP 2011112314 A JP2011112314 A JP 2011112314A JP 2011112314 A JP2011112314 A JP 2011112314A JP 2012244397 A JP2012244397 A JP 2012244397A
Authority
JP
Japan
Prior art keywords
unit
bit width
image
horizontal
intermediate data
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
JP2011112314A
Other languages
English (en)
Inventor
Sekie SUZUKI
せきえ 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2011112314A priority Critical patent/JP2012244397A/ja
Priority to US14/114,259 priority patent/US20140056535A1/en
Priority to CN201280022963.0A priority patent/CN103535041A/zh
Priority to PCT/JP2012/062088 priority patent/WO2012157541A1/ja
Publication of JP2012244397A publication Critical patent/JP2012244397A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】直交変換処理および逆直交変換処理のメモリ使用量を低減させることができるようにする。
【解決手段】画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行う水平1次元逆変換部と、前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う垂直1次元逆変換部とを備える本開示は画像処理装置に適用することができる。
【選択図】図4

Description

本開示は、画像処理装置および方法に関し、特に、直交変換処理および逆直交変換処理のメモリ使用量を低減させることができるようにした画像処理装置および方法、並びに、プログラムに関する。
近年、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及しつつある。
特に、MPEG2(ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission) 13818-2)は、汎用画像符号化方式として定義されており、飛び越し走査画像及び順次走査画像の双方、並びに標準解像度画像及び高精細画像を網羅する標準で、プロフェッショナル用途及びコンシューマ用途の広範なアプリケーションに現在広く用いられている。MPEG2圧縮方式を用いることにより、例えば720×480画素を持つ標準解像度の飛び越し走査画像であれば4〜8Mbps、1920×1088画素を持つ高解像度の飛び越し走査画像であれば18〜22Mbpsの符号量(ビットレート)を割り当てることで、高い圧縮率と良好な画質の実現が可能である。
MPEG2は主として放送用に適合する高画質符号化を対象としていたが、MPEG1より低い符号量(ビットレート)、つまりより高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC 14496-2としてその規格が国際標準に承認された。
更に、近年、当初テレビ会議用の画像符号化を目的として、H.26L (ITU-T(International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG(Video Coding Expert Group))という標準の規格化が進んでいる。H.26LはMPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能をも取り入れ、より高い符号化効率を実現する標準化がJoint Model of Enhanced-Compression Video Codingとして行われている。
標準化のスケジュールとしては、2003年3月にはH.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)という名の元に国際標準となった。
しかしながら、マクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない恐れがあった。
そこで、現在、AVCより更なる符号化効率の向上を目的として、ITU-Tと、ISO/IECの共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている(例えば、非特許文献1参照)。
このHEVC符号化方式においては、AVCにおけるマクロブロックと同様の処理単位としてコーディングユニット(CU(Coding Unit))が定義されている。このCUは、AVCのマクロブロックのようにサイズが16×16画素に固定されず、それぞれのシーケンスにおいて、画像圧縮情報中において指定される。
ところで、これらの符号化方式においては、画像データに対して直交変換および逆直交変換が行われる。直交変換および逆直交変換は、いずれも、水平方向および垂直方向(2次元)に行われる。例えば、直交変換の場合、まず、水平方向に1次元の直交変換が行われ、その結果(中間データと称する)が転置レジスタを用いて転置され、次に、垂直方向に1次元の直交変換が行われる。逆直交変換の場合も同様である。つまり、これらの処理には、中間データを一時的に保持するために、記憶領域(転置レジスタ)が必要になる。
AVC等の直交変換および逆直交変換(Iverse Transform)の処理単位のサイズが最大8×8画素であるのに対し、HEVCの直交変換および逆直交変換の処理単位のサイズは、例えば、16×16画素、32×32画素、または64×64画素まで拡張される。
しかしながら、このように直交変換および逆直交変換の処理単位となるサイズが大きくなると、中間データを保持するための転置レジスタ(記憶領域)の容量も大幅に増大してしまう恐れがあった。
非特許文献1によると、必要となる転置レジスタのサイズは、例えば、16×16画素ブロックの場合、(21×256)bit=5,376bitとなり、32×32画素ブロックの場合(25×1024)bit=25,600bitとなる。それぞれAVCの8×8画素ブロックの場合の5.25倍と25倍である。
そこで、中間データのビット幅を一律に16bitに規定することが提案されている(例えば、非特許文献2および比特許文献3参照)。この方法の場合、必要となる転置レジスタのサイズは16×16画素ブロックの場合(16×256)bit=4,096bitとなり、32×32画素ブロックの場合(16×1024)bit=16,384bitとなる。この場合でも、それぞれAVCの8×8画素ブロックの場合の4倍と16倍の記憶領域が必要になる。
なお、直交変換・逆直交変換には、離散コサイン変換(DCT(Discrete Cosine Transform))、離散サイン変換(DST(Discrete Sine Transform))、カルーネン・レーベ変換等、様々な方式が存在する。また、例えばDCTとDSTのように、水平方向と垂直方向とで互いに異なる方式の直交変換・逆直交変換を行う方法も考えられている(例えば、非特許文献4参照)。
Thomas Wiegand, Woo-Jin Han, Benjamin Bross, Jens-Rainer Ohm, Gary J. Sullivan, "Working Draft 1 of High-Efficiency Video Coding ", JCTVC-C403, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG113rd Meeting: Guangzhou, CN, 7-15 October, 2010 A. Fuldseth, G. Bjoentegaard, "Unified transform design for HEVC with 16 bit intermediate data representation", JCTVC-D224, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG114th Meeting: Daegu, KR, 20-28 January, 2011 Kiran Misra, Louis Kerofsky, Andrew Segall, "On transform dynamic range", JCTVC-D071, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG114th Meeting: Daegu, KR, 20-28 January, 2011 Ankur Saxena, Felix C. Fernandes, "CE7: Mode-dependent DCT/DST without 4*4 full matrix multiplication for intra prediction", JCTVC-E125, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG115th Meeting: Geneva, CH, 16-23 March, 2011
しかしながら、さらなる転置レジスタの増大の抑制が求められている。
本開示は、このような状況に鑑みてなされたものであり、直交変換処理および逆直交変換処理の処理単位が増大することによるメモリ使用量の増大を抑制することができるようにすることを目的とする。
本開示の一側面は、画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行う水平1次元逆変換部と、前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う垂直1次元逆変換部とを備える画像処理装置である。
前記ビット幅処理部は、前記係数を、前記係数の周波数帯域に応じたビット幅にクリップ処理することができる。
前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた、互いに同一の周波数帯域同士の係数を減算する減算部と、前記減算部による減算により得られた差分値と、前記減算に用いた一方の係数とを加算する加算部とをさらに備え、前記ビット幅処理部は、前記減算により得られた前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、前記記憶部は、前記減算に用いられた一方の係数と、前記ビット幅処理部によりビット幅が低減された前記差分値を、前記中間データとして記憶し、前記加算部は、前記記憶部から読み出した、前記減算に用いられた一方の係数と、ビット幅が低減された前記差分値を加算して、前記減算に用いられた他方の係数を復元し、前記垂直1次元逆変換部は、前記減算に用いられた一方の係数、および、前記加算部による加算により復元された、前記減算に用いられた他方の係数に対して、垂直方向の逆直交変換を行うことができる。
前記加算部は、前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、前記記憶部は、前記減算に用いられた一方の係数を、前記加算部により最後に読み出されるラインに記憶することができる。
前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理することができる。
前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理することができる。
前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた、互いに同一の周波数帯域同士の係数の平均値を算出する平均値算出部をさらに備え、前記減算部は、前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数と、前記平均値算出部により算出された前記平均値との差分値を算出し、前記ビット幅処理部は、前記減算部により算出された前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、前記記憶部は、前記平均値と、前記ビット幅処理部によりビット幅が低減された前記差分値とを、前記中間データとして記憶し、前記加算部は、前記記憶部から読み出した、前記差分値と前記平均値とを加算して、前記減算に用いられた係数を復元し、前記垂直1次元逆変換部は、前記減算に用いられた係数に対して、垂直方向の逆直交変換を行うことができる。
前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理することができる。
前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理することができる。
前記水平1次元逆変換部と前記垂直1次元逆変換部は、互いに異なる変換方式で逆直交変換を行うことができる。
本開示の一側面は、また、画像処理装置の画像処理方法であって、水平1次元逆変換部が、画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行い、ビット幅処理部が、前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行い、記憶部が、前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶し、垂直1次元逆変換部が、記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う画像処理方法である。
本開示の他の側面は、画像データに対して、水平方向の直交変換を行う水平1次元変換部と、前記水平1次元変換部により前記水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の直交変換を行う垂直1次元変換部とを備える画像処理装置である。
前記ビット幅処理部は、前記係数を、前記係数の周波数帯域に応じたビット幅にクリップ処理することができる。
前記水平1次元変換部により前記水平方向の直交変換が行われて得られた、互いに同一の周波数帯域同士の係数を減算する減算部と、前記減算部による減算により得られた差分値と、前記減算に用いた一方の係数とを加算する加算部とをさらに備え、前記ビット幅処理部は、前記減算により得られた前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、前記記憶部は、前記減算に用いられた一方の係数と、前記ビット幅処理部によりビット幅が低減された前記差分値を、前記中間データとして記憶し、前記加算部は、前記記憶部から読み出した、前記減算に用いられた一方の係数と、ビット幅が低減された前記差分値を加算して、前記減算に用いられた他方の係数を復元し、前記垂直1次元変換部は、前記減算に用いられた一方の係数、および、前記加算部による加算により復元された、前記減算に用いられた他方の係数に対して、垂直方向の直交変換を行うことができる。
前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理することができる。
前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理することができる。
前記水平1次元変換部と前記垂直1次元変換部は、互いに異なる変換方式で直交変換を行うことができる。
本開示の他の側面は、また、画像処理装置の画像処理方法であって、水平1次元変換部が、画像データに対して、水平方向の直交変換を行い、ビット幅処理部が、前記水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行い、記憶部が、前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶し、垂直1次元変換部が、記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の直交変換を行う画像処理方法である。
本開示の一側面においては、画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換が行われ、水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理が行われ、クリップ処理が行われて、ビット幅が低減された係数が、中間データとして記憶され、記憶される中間データが垂直方向に1ラインずつ読み出され、垂直方向の逆直交変換が行われる。
本開示の他の側面においては、画像データに対して、水平方向の直交変換が行われ、水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理が行われ、クリップ処理が行われて、ビット幅が低減された係数が、中間データとして記憶され、記憶される中間データが垂直方向に1ラインずつ読み出され、垂直方向の直交変換が行われる。
本開示によれば、画像を処理することができる。特に、直交変換処理および逆直交変換処理のメモリ使用量の増大を抑制することができる。
画像復号装置の主な構成例を示すブロック図である。 マクロブロックの例を示す図である。 コーディングユニットの構成例を説明する図である。 逆直交変換部の主な構成例を示すブロック図である。 中間データの周波数分布の例を説明する図である。 中間データの例を説明する図である。 復号処理の流れの例を説明するフローチャートである。 逆直交変換処理の流れの例を説明するフローチャートである。 逆直交変換部の他の構成例を示すブロック図である。 中間データの他の例を説明する図である。 中間データのさらに他の例を説明する図である。 逆直交変換処理の流れの、他の例を説明するフローチャートである。 逆直交変換処理の流れの、さらに他の例を説明するフローチャートである。 逆直交変換部のさらに他の構成例を示すブロック図である。 中間データのさらに他の例を説明する図である。 逆直交変換処理の流れの、さらに他の例を説明するフローチャートである。 逆直交変換処理の流れの、さらに他の例を説明するフローチャートである。 画像符号化装置の主な構成例を示すブロック図である。 直交変換部の主な構成例を示すブロック図である。 中間データの周波数分布の、他の例を説明する図である。 中間データのさらに他の例を説明する図である。 符号化処理の流れの例を説明するフローチャートである。 直交変換処理の流れの例を説明するフローチャートである。 直交変換部の他の構成例を示すブロック図である。 中間データのさらに他の例を説明する図である。 中間データのさらに他の例を説明する図である。 直交変換処理の流れの、他の例を説明するフローチャートである。 直交変換処理の流れの、さらに他の例を説明するフローチャートである。 パーソナルコンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。
以下、発明を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像復号装置)
2.第2の実施の形態(逆直交変換部)
3.第3の実施の形態(逆直交変換部)
4.第4の実施の形態(画像符号化装置)
5.第5の実施の形態(直交変換部)
6.第6の実施の形態(パーソナルコンピュータ)
7.第7の実施の形態(テレビジョン受像機)
8.第8の実施の形態(携帯電話機)
9.第9の実施の形態(記録再生装置)
10.第10の実施の形態(撮像装置)
<1.第1の実施の形態>
[画像復号装置]
図1は、画像処理装置の一実施の形態である画像復号装置の主な構成例を示すブロック図である。
図1に示される画像復号装置100は、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))やHEVC(High Efficiency Video Coding)等の符号化方式のように、画像符号化装置において予測処理を用いて画像データが符号化された符号化データを、取得して復号し、復号画像を得る装置である。
図1に示されるように画像復号装置100は、蓄積バッファ101、可逆復号部102、逆量子化部103、逆直交変換部104、演算部105、ループフィルタ106、画面並べ替えバッファ107、およびD/A変換部108を有する。また、画像復号装置100は、フレームメモリ109、選択部110、イントラ予測部111、動き予測・補償部112、および選択部113を有する。
蓄積バッファ101は伝送されてきた符号化データを蓄積し、所定のタイミングにおいてその符号化データを可逆復号部102に供給する。可逆復号部102は、蓄積バッファ101より供給された、画像符号化装置の可逆符号化部により符号化された情報を、その可逆符号化部の符号化方式に対応する方式で復号する。可逆復号部102は、復号して得られた差分画像の量子化された係数データを、逆量子化部103に供給する。
また、可逆復号部102は、最適な予測モードにイントラ予測モードが選択されたかインター予測モードが選択されたかを判定し、その最適な予測モードに関する情報を、イントラ予測部111および動き予測・補償部112の内、選択されたと判定したモードの方に供給する。例えば、画像符号化装置において最適な予測モードとしてイントラ予測モードが選択された場合、そのイントラ予測モードに関する情報がイントラ予測部111に供給される。また、例えば、画像符号化装置において最適な予測モードとしてインター予測モードが選択された場合、そのインター予測モードに関する情報が動き予測・補償部112に供給される。
逆量子化部103は、可逆復号部102により復号されて得られた量子化された係数データを、画像符号化装置の量子化部の量子化方式に対応する方式で逆量子化し、得られた係数データを逆直交変換部104に供給する。
逆直交変換部104は、画像符号化装置の直交変換部の直交変換方式に対応する方式で逆量子化部103から供給される係数データを逆直交変換する。逆直交変換部104は、この逆直交変換処理により、画像符号化装置において直交変換される前の残差データに対応する復号残差データを得る。なお、詳細については後述するが、逆直交変換部104は、転置レジスタとして使用する記憶領域の容量を抑制するように逆直交変換処理を行う。
逆直交変換されて得られた復号残差データは、演算部105に供給される。また、演算部105には、選択部113を介して、イントラ予測部111若しくは動き予測・補償部112から予測画像が供給される。
演算部105は、その復号残差データと予測画像とを加算し、画像符号化装置の演算部により予測画像が減算される前の画像データに対応する復号画像データを得る。演算部105は、その復号画像データをループフィルタ106に供給する。
ループフィルタ106は、供給された復号画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜施し、それを画面並べ替えバッファ107に供給する。
ループフィルタ106は、デブロックフィルタや適応ループフィルタ等を含み、演算部105から供給される復号画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ106は、復号画像に対してデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。また、例えば、ループフィルタ106は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた復号画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
なお、ループフィルタ106が、復号画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ106が、画像符号化装置から供給されたフィルタ係数を用いてフィルタ処理を行うようにしてもよい。
ループフィルタ106は、フィルタ処理結果(フィルタ処理後の復号画像)を画面並べ替えバッファ107およびフレームメモリ109に供給する。なお、演算部105から出力される復号画像は、ループフィルタ106を介さずに画面並べ替えバッファ107やフレームメモリ109に供給することができる。つまり、ループフィルタ106によるフィルタ処理は省略することができる。
画面並べ替えバッファ107は、画像の並べ替えを行う。すなわち、画像符号化装置の画面並べ替えバッファにより符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部108は、画面並べ替えバッファ107から供給された画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
フレームメモリ109は、供給される復号画像を記憶し、所定のタイミングにおいて、若しくは、イントラ予測部111や動き予測・補償部112等の外部の要求に基づいて、記憶している復号画像を参照画像として、選択部110に供給する。
選択部110は、フレームメモリ109から供給される参照画像の供給先を選択する。選択部110は、イントラ符号化された画像を復号する場合、フレームメモリ109から供給される参照画像をイントラ予測部111に供給する。また、選択部110は、インター符号化された画像を復号する場合、フレームメモリ109から供給される参照画像を動き予測・補償部112に供給する。
イントラ予測部111には、ヘッダ情報を復号して得られたイントラ予測モードを示す情報等が可逆復号部102から適宜供給される。イントラ予測部111は、画像符号化装置のイントラ予測部において用いられたイントラ予測モードで、フレームメモリ109から取得した参照画像を用いてイントラ予測を行い、予測画像を生成する。イントラ予測部111は、生成した予測画像を選択部113に供給する。
動き予測・補償部112は、ヘッダ情報を復号して得られた情報(最適予測モード情報等)を可逆復号部102から取得する。
動き予測・補償部112は、画像符号化装置の動き予測・補償部において用いられたインター予測モードで、フレームメモリ109から取得した参照画像を用いてインター予測を行い、予測画像を生成する。動き予測・補償部112は、生成した予測画像を選択部113に供給する。
選択部113は、イントラ予測部111若しくは動き予測・補償部112から供給される予測画像を演算部105に供給し、復号残差データに加算させる。
[マクロブロック]
AVCにおいては、図2に示されるように、16×16画素により構成される1つのマクロブロックを、16×16、16×8、8×16若しくは8×8のいずれかのパーティション(サブマクロブロック)に分割し、サブマクロブロック毎に、互いに独立した動きベクトル情報を持つことが可能である。更に、8×8パーティションに関しては、図2に示されるとおり、8×8、8×4、4×8、4×4のいずれかのサブマクロブロックに分割し、それぞれ独立した動きベクトル情報を持つことが可能である。
このようなAVC、若しくは、AVCと同様の処理単位で各処理を行う符号化方式の場合、直交変換処理は、4×4画素のサブマクロブロック、若しくは、8×8画素のサブマクロブロックを処理単位として行われる。つまり、図1の逆直交変換部104は、4×4画素のサブマクロブロック、若しくは、8×8画素のサブマクロブロックを処理単位として逆直交変換処理を行う。
[コーディングユニット]
ところで、マクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない。
そこで、HEVCにおいては、図3に示されるように、コーディングユニット(CU(Coding Unit))が規定されている。
CUは、Coding Tree Block(CTB)とも呼ばれ、AVCにおけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の部分領域である。後者は、16×16画素の大きさに固定されているのに対し、前者の大きさは固定されておらず、それぞれのシーケンスにおいて、画像圧縮情報中において指定されることになる。
例えば、出力となる符号化データに含まれるシーケンスパラメータセット(SPS(Sequence Parameter Set))において、CUの最大サイズ(LCU(Largest Coding Unit))と最小サイズ((SCU(Smallest Coding Unit))が規定される。
それぞれのLCU内においては、SCUのサイズを下回らない範囲で、split-flag=1とすることにより、より小さなサイズのCUに分割することができる。図3の例では、LCUの大きさが128であり、最大階層深度が5となる。2N×2Nの大きさのCUは、split_flagの値が「1」である時、1つ下の階層となる、N×Nの大きさのCUに分割される。
更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。現在、HEVCにおいては、4×4及び8×8に加え、16×16及び32×32直交変換を用いることが可能である。
以上のHEVCのように、CUを定義し、そのCUを単位として各種処理を行うような符号化方式の場合、AVCにおけるマクロブロックはLCUに相当すると考えることができる。ただし、CUは図3に示されるように階層構造を有するので、その最上位階層のLCUのサイズは、例えば128×128画素のように、AVCのマクロブロックより大きく設定されることが一般的である。
このようなHEVC、若しくは、HEVCと同様の処理単位で各処理を行う符号化方式の場合、直交変換処理の処理単位として、4×4画素、8×8画素、に加え、16×16画素や32×32画素も適用される。つまり、図1の逆直交変換部104は、16×16画素のTU、若しくは、32×32画素のTUを処理単位として逆直交変換処理を行うこともできる。
なお、以下において、上述したマクロブロック、サブマクロブロック、CU、PU、およびTU等は、単に「領域」と称する場合もある。
[逆直交変換部]
図4は、図1の逆直交変換部104の主な構成例を示すブロック図である。
図4に示されるように、逆直交変換部104は、水平1次元逆変換部131、ビット幅処理部132、転置レジスタ133、および垂直1次元逆変換部134を有する。水平1次元逆変換部131、転置レジスタ133、および垂直1次元逆変換部134は、AVCやHEVC等の符号化方式で復号処理を行う画像復号装置の逆直交変換部も有する構成であり、逆直交変換部104は、その構成に加え、ビット幅処理部132を有する。
水平1次元逆変換部131は、逆量子化部103から業給される直交変換係数データ(以下、単に係数データとも称する)を、水平方向に逆直交変換する。水平1次元逆変換部131には、例えば16×16画素や32×32画素等のように、所定の大きさの領域毎に直交変換された係数データ群が供給される。つまり、16×16や32×32の係数データが供給される。水平1次元逆変換部131は、それらの係数データを、垂直方向の上から下に向かう順に1行ずつ水平方向に逆直交変換する。水平1次元逆変換部131は、逆直交変換して得られる中間データ(垂直方向に直交変換された係数データ)をビット幅処理部132に供給する。
ビット幅処理部132は、供給された各中間データに対してクリップ処理を行い、各中間データのビット幅を、その周波数帯域に応じた度合いで低減させる。ここで例えばnビットへのクリップ処理とは、-2n-1より小さい値は-2n-1にとし、2n-1-1より大きい値は2n-1-1とする処理である。ビット幅処理部132は、ビット幅を調整した各中間データを転置レジスタ133に供給し、保持させる。
転置レジスタ133は、供給される各中間データを、図4に示されるように、元の直交変換係数データの並び順に対応するように整列して記憶する。つまり、転置レジスタ133は、各行の各画素の中間データが水平方向に並び、各行が互いに垂直方向に並ぶように記憶する。したがって、例えば32×32の直交変換係数データから生成された中間データは、32×32×(各画素のビット幅)の記憶領域に記憶される。
垂直1次元逆変換部134は、この転置レジスタ133から、中間データを列毎に読み出して、1次元の逆直交変換処理を行う。つまり、垂直1次元逆変換部134は、転置レジスタ133に記憶される中間データを、垂直方向の並び毎に読み出す。すなわち、垂直1次元逆変換部134は、転置レジスタ133からの中間データの読み出しを、その中間データの書き込み順と異なる順で読み出すことにより、中間データの並びを水平方向から垂直方向に転置させる。垂直1次元逆変換部134は、このように列毎に読み出した中間データを、その列毎に逆直交変換を行うことにより、垂直方向の逆直交変換を実現する。
垂直1次元逆変換部134によって中間データが垂直方向に逆直交変換されることにより、直交変換係数データが2次元(水平方向および垂直方向)に逆直交変換された復号残差データが得られる。垂直1次元逆変換部134は、その復号残差データを演算部105に供給する。
以上のような処理において、転置レジスタ133に記憶される中間データは、例えば図5に示されるように、垂直方向に周波数成分毎に整列することになる。つまり、上から下に向かって、低周波成分から高周波成分が並ぶ。より低周波の成分は、より上に位置し、より高周波の成分は、より下に位置する。各行の水平方向には、互いに同じ周波数帯域の成分が並ぶ。
例えば、水平1次元逆変換部131により逆直交変換されて得られる中間データのビット幅が、図6Aに示されるように、16ビットであるとする。処理単位の領域を32×32とすると、データ量は、(32×32)×16bit=16,384bitである。
ビット幅処理部132は、例えば、図6Bに示されるように、各中間データのビット幅を、その周波数成分毎に調整する。より具体的には、ビット幅処理部132は、低周波成分ほどビット幅が長く、高周波成分ほどビット幅が狭くなるように、各中間データのビット幅を抑制する。例えば、図6Bの場合、ビット幅処理部132は、1番上の1行(1水平ライン)の中間データのビット幅を16ビットとし、上から2番目乃至4番目の3行(3水平ライン)の中間データのビット幅を14ビットとする。また、例えば、図6Bの場合、ビット幅処理部132は、上から5番目乃至16番目の12行(12水平ライン)の中間データのビット幅を12ビットとし、上から17番目乃至32番目の16行(16水平ライン)の中間データのビット幅を9ビットとする。
このようにすることにより、データ量は、(32×1)×16bit+(32×3)×14bit+(32×12)×12bit+(32×16)×9bit=11,072bitとなる。したがって、上述した全ての中間データのビット幅を16ビットとする場合に比べて、5,312bit分、転置レジスタ133としてのメモリ使用量を低減させることができる。
なお、直交変換係数データおよび中間データの各行のビット幅は、任意であり、図6Bに示される例以外であってもよい。例えば、1番上の行から4行(4水平ライン)ずつビット幅を低減させるようにしてもよい。また、例えば、上から16番目の行まで(16水平ライン)の中間データのビット幅を直交変換係数データと同一とし、残りの16行(16水平ライン)の各行のビット幅を直交変換係数データよりも低減させるようにしてもよい。
つまり、ビット幅処理部132は、中間データのビット幅を、その周波数帯域毎に制御する。例えば、ビット幅処理部132は、処理単位となる領域の画像データが2次元直交変換された直交変換係数データが水平方向に1次元逆直交変換されて得られた水平ライン毎の中間データのビット幅を、その周波数帯域に応じて低減させる。
例えば、ビット幅処理部132は、各水平ラインの中間データのビット幅を、より高周波の成分ほど、より強く低減させる。一般的に、画像は、より低周波成分ほど絶対値が大きく、より高周波成分ほど絶対値が小さい。したがって、このようにビット幅を制御することにより、ビット幅処理部132は、画質劣化を抑制しながら、逆直交変換処理において使用される転置レジスタ133のサイズを抑制することができる。
例えば、ビット幅処理部132は、直交変換された画像データの周波数特性に応じて、各水平ラインの中間データのビット幅を低減させる。このようにビット幅を制御することにより、ビット幅処理部132は、画質劣化をより抑制することができる。
なお、転置レジスタ133のサイズを低減させることにより、画像復号処理に必要なメモリ容量を低減させることができ、画像復号装置100の製造コストを低減させることができる。
なお、ビット幅処理部132のクリップ処理により、中間データが誤差を含むようになる場合も考えられるが、クリップするビット幅を十分に確保することにより、この誤差の影響を低減させることができる。換言するに、画像復号装置100は、クリップするビット幅の設定によって、画質劣化の大きさと転置レジスタ133のサイズとを制御することができる。したがって、例えば、画像の内容に応じて、これらが最善となるように、クリップするビット幅を決定するのが望ましい。
[復号処理の流れ]
次に、以上のような画像復号装置100により実行される各処理の流れについて説明する。最初に、図7のフローチャートを参照して、復号処理の流れの例を説明する。
復号処理が開始されると、ステップS101において、蓄積バッファ101は、伝送されてきたビットストリームを蓄積する。ステップS102において、可逆復号部102は、蓄積バッファ101から供給されるビットストリームを復号する。すなわち、画像符号化装置の可逆符号化部により符号化されたIピクチャ、Pピクチャ、並びにBピクチャが復号される。また、差分動き情報など、ビットストリームに含められた差分画像情報以外の各種情報も復号される。
ステップS103において、逆量子化部103は、ステップS102の処理により得られた、量子化された直交変換係数を逆量子化する。ステップS104において逆直交変換部104は、ステップS103において逆量子化された直交変換係数を逆直交変換する。
ステップS105において、イントラ予測部111若しくは動き予測・補償部112は、供給された情報を用いて予測処理を行う。ステップS106において、選択部113は、ステップS105において生成された予測画像を選択する。ステップS107において、演算部105は、ステップS104において逆直交変換されて得られた差分画像情報に、ステップS106において選択された予測画像を加算する。これにより復号画像が得られる。
ステップS108において、ループフィルタ106は、ステップS107において得られた復号画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行う。
ステップS109において、画面並べ替えバッファ107は、ステップS108においてフィルタ処理された画像の並べ替えを行う。すなわち画像符号化装置の画面並べ替えバッファにより符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
ステップS110において、D/A変換部108は、ステップS109においてフレームの順序が並べ替えられた画像をD/A変換する。この画像が図示せぬディスプレイに出力され、画像が表示される。
ステップS111において、フレームメモリ109は、ステップS108においてフィルタ処理された画像を記憶する。この画像は、ステップS105において、参照画像として、予測画像の生成に使用される。
ステップS111の処理が終了すると、復号処理が終了される。
[逆直交変換処理の流れ]
次に、図8のフローチャートを参照して、図7のステップS104において実行される逆直交変換処理の流れの例を説明する。
ステップS131において、水平1次元逆変換部131は、逆量子化された、処理対象の1水平ラインの直交変換係数データに対して、水平方向に1次元逆直交変換を行う。ステップS132において、ビット幅処理部132は、ステップS131の処理により得られた1水平ラインの中間データに対して、周波数帯域に応じたビット幅へのクリップ処理を行う。ステップS133において、ビット幅処理部132は、クリップ処理した1水平ラインの中間データを、転置レジスタ133の、前回書き込んだ1水平ラインの中間データの1行下に書き込む。
ステップS134において、水平1次元逆変換部131は、領域内の全ての水平ラインを処理したか否かを判定し、処理対象の領域において未処理の水平ラインが存在すると判定した場合、処理をステップS131に戻し、それ以降の処理を行う。
各水平ラインについて、ステップS131乃至ステップS134の処理を繰り返し、ステップS134において、処理対象領域内の全ての水平ラインを処理したと判定した場合、水平1次元逆変換部131は、処理をステップS135に進める。
ステップS135において、垂直1次元逆変換部134は、転置レジスタ133から中間データを1垂直ライン分読み出し、ステップS136において、読み出した中間データに対して、垂直方向に1次元逆直交変換を行う。
ステップS137において、垂直1次元逆変換部134は、領域内の全ての垂直ラインを処理したか否かを判定し、処理対象の領域において未処理の垂直ラインが存在すると判定した場合、処理をステップS135に戻し、それ以降の処理を行う。
各垂直ラインについて、ステップS135乃至ステップS137の処理を繰り返し、ステップS137において、処理対象領域内の全ての垂直ラインを処理したと判定した場合、垂直1次元逆変換部134は、処理をステップS138に進める。
ステップS138において、垂直1次元逆変換部134は、画像内の全ての領域を処理したか否かを判定し、未処理の領域が存在すると判定された場合、処理をステップS131に戻し、それ以降の処理を繰り返す。
以上のように、各領域について、ステップS131乃至ステップS138の処理が繰り返され、ステップS138において、全ての領域を処理したと判定された場合、垂直1次元逆変換部134は、逆直交変換処理を終了し、処理を図7に戻す。
このように各処理を行うことにより、画像復号装置100は、逆直交変換処理において得られる中間データのデータ量を低減させることができ、転置レジスタ133として使用される記憶領域のサイズを低減させることができる。これにより、画像復号処理に必要なメモリ容量を低減させることができ、画像復号装置100の製造コストを低減させることができる。
<2.第2の実施の形態>
[逆直交変換部]
なお、各中間データの値をより小さくするために、中間データは、所定の列(垂直ライン)を基準とし、その基準との差分値を転置レジスタ133に格納させるようにしてもよい。つまり、水平方向の1次元逆変換を行った結果について、互いに同一の周波数成分同士で差分をとり、その差分を中間データとするようにしてもよい。
図9は、逆直交変換部104の他の構成例を示すブロック図である。
図9に示される例の場合、逆直交変換部104は、図4を参照して説明した構成に加え、水平1次元逆変換部131とビット幅処理部132との間に減算部231を有し、転置レジスタ133と垂直1次元逆変換部134との間に加算部232を有する。
減算部231は、上述したように行列状(アレイ状)に配列される各係数の所定の1垂直ライン上の画素を基準画素とし、各水平ラインにおいて、その基準画素の係数と、それ以外の各画素の係数との差分値を求める。
ビット幅処理部132は、減算部231から出力される、その差分値に対してクリップ処理を行う。例えば、ビット幅処理部132は、供給された各差分値のビット幅を、所定のビット幅に低減し、転置レジスタ133に供給し、中間データとして記憶させる。また、ビット幅処理部132は、各基準画素の係数を、ビット幅の抑制を行わずに、そのまま転置レジスタ133に供給し、中間データとして記憶させる。
図10は、転置レジスタ133に記憶される中間データの例を示す図である。

図10の例の場合、逆直交変換処理の処理単位となる領域のサイズはn×n画素である。水平1次元逆変換部131の出力Aij(0≦i<n, 0≦j<n)のビット幅は、16ビットである。
減算部231は、このような出力対して、1番右の列(j=n-1)を基準画素のラインとし、その他の列(0≦j<n-1)について、基準画素の係数との差分値Δaijを以下の式(1)および式(2)のように算出する。
Δaij=ABS(Aij)−ABS(Ai(n−1)) ・・・(1)
ij=MBS(Aij) ・・・(2)
なお、Bijは、Aij(0≦i<n, 0≦j<n-1)の符号ビットを示す。
つまり、減算部231は、基準画素以外の各画素について、その画素と同じ水平ライン上に位置する基準画素との差分値を求める。減算部231は、基準画素以外の画素(0≦i<n, 0≦j<n-1)について、このように算出した差分値Δaijと符号ビットBijを中間データとしてビット幅処理部132に供給する。また、減算部231は、基準画素のライン(0≦i<n, j=n-1)について、16ビットの係数Aij(0≦i<n, j=n-1)を中間データとしてビット幅処理部132に供給する。
図5を参照して説明したように、水平方向に1次元逆変換された係数は、水平方向に同一の周波数成分が並び、水平方向の相関が高くなる。減算部231は、この相関性の高さを利用して、上述したように水平方向に並ぶ係数同士で差分を取ることにより、各中間データの値を小さくする。このとき、符号付きで減算を行うと、値がかえって大きくなってしまう可能性があるため、減算部231は、式(1)に示されるように、各係数の絶対値同士の差分を算出する。このようにすることにより、減算部231は、中間データの値を確実により小さくすることができる。
つまり、Δaij(0≦i<n, 0≦j<n-1)は、Aij(0≦i<n, j=n-1)より少ないビット幅で表現することができる可能性が高い。そこで、ビット幅処理部132は、供給された各差分値に対して、元の16ビットよりも少ないビット幅でクリップ処理を行う。図10の例においては、12ビットでクリップ処理が行われている。ビット幅処理部132は、このように、差分値のビット幅を低減し、それを転置レジスタ133に供給して記憶させる。
このようにすることにより、逆直交変換部104は、全ての中間データを、ビット幅16ビットのままで記憶させる場合よりも、転置レジスタ133のサイズを低減させることができる。
なお、基準画素については、ビット幅処理部132は、係数Aij(0≦i<n, j=n-1)を中間データとして転置レジスタ133に伝送し、記憶させる。図10の例の場合、ビット幅処理部132は、画質劣化を抑制するために、この中間データAij(0≦i<n, j=n-1)を、ビット幅16ビットのまま転置レジスタ133に記憶させている(斜線部分)。画質劣化が許容されるのであれば、ビット幅処理部132において、この中間データAij(0≦i<n, j=n-1)も、ビット幅を狭くするようにクリップ処理するようにしてもよい。
例えば、図10の例において、n=32とし、Aij(0≦i<32, 0≦j<32)を16bitとする。Δaij(ただし、0≦i<32, 0≦j<32)を13bit(このレンジ超えるデータは13bitにクリップする)とすると、中間データのデータ量は、(31×32)×13bit+(31×32)×1bit(符号ビット)+(32×1)×16bit=14,400bitとなる。これにより全ての中間データのビット幅を16bitのままとする場合のデータ量(32×32)×16bit=16,384bitよりも2,000bitデータ量を削減することができる。すなわち、その分、転置レジスタ133のサイズを小さくすることができる。
加算部232は、転置レジスタ133から、各基準画素の中間データを読み出すとともに、処理対象の基準画素のライン以外の垂直ラインの中間データ(差分値)を読み出し、各差分値に対して、その差分値と同じ水平ライン上の基準画素の中間データを、以下の式(3)のように加算する。
ABS(Aij)=ABS(Ai(n-1))+Δaij (ただし、0≦i<n,0≦j<n-1) ・・・(3)
加算部232は、このように算出されたAijの絶対値に、符号ビットBijを追加する。これにより、基準画素のライン以外の垂直ラインの各中間データが復元される。加算部232は、このように復元した中間データを、垂直1次元逆変換部134に供給する。なお、基準画素については、中間データが差分値ではないので、加算部232は、転置レジスタ133から読み出した中間データAijを垂直1次元逆変換部134に供給する。
垂直1次元逆変換部134は、このように供給された中間データに対して垂直方向に1次元の逆直交変換処理を行い、直交変換処理される前の画像データを復元する。なお、中間データに対して上述したようにクリップ処理が行われる場合、そのクリップ処理により誤差が含まれる可能性がある。したがって、復元された画像データは、画像符号化装置において直交変換処理される前の画像データを必ずしも完全に再現することができない場合もあるが、その誤差による画質劣化は、大きくない。換言するに、この画質劣化が許容される程度以下となるように、クリップ処理するビット幅を定義すればよい。
なお、どの列を基準画素のラインとするようにしてもよいが、1番右の列を基準画素のラインとすることにより、実装上、転置レジスタ133の利用効率を向上させることができる。
例えば、図10の例に示されるように、中間データが転置レジスタ133に格納されると、加算部232は、この転置レジスタ133から、基準画素の中間データを読み出すとともに、基準画素のライン以外の垂直ラインについて、例えば、1番左の垂直ラインから順に1ラインずつ中間データを読み出す。このとき、基準画素の中間データは、基準画素のライン以外の全ての垂直ラインの差分値の加算演算に利用される。つまり、基準画素の中間データは、最後まで、転置レジスタ133に保持する必要がある。
ところで、基準画素のライン以外の垂直ラインの中間データを読み出した後は、その領域は使用可能となる。この使用可能の領域は、次の処理単位の領域の中間データの保持に利用される。つまり、左から右に向かう順に1垂直ラインずつ中間データが読み出されることにより、左から右に向かう順に1垂直ラインずつ、次の領域の中間データを保持させることができる。
したがって、最後まで保持する必要のある基準画素のラインを、1番右の垂直ラインとすることにより、次の領域の中間データを、左から右に向かう順に1垂直ラインずつ保持させることができる。すなわち、転置レジスタ133をより効率よく利用することができる。これに対して、例えば基準画素のラインを他の垂直ラインにすると、次に処理される領域の中間データを、その垂直ラインを飛ばして書き込むようにするか、若しくは、基準画素のラインが書き込み可能となるまで待機しなければならなくなるため、処理が複雑になったり、処理時間が不要に増大したりする恐れがある。
なお、図11に示されるように、次に処理される領域の中間データは、水平方向と垂直方向(つまり、行と列)が入れ替えて書き込まれる。つまり、転置レジスタ133から1垂直ライン分の中間データが読み出されると、その1垂直ラインが書き込み可能となるが、次に処理される領域の中間データは、現在処理対象の領域の場合と同様に、1水平ラインずつ供給される。
したがって、転置レジスタ133は、その1水平ライン分の中間データを、書き込み可能な1垂直ラインに格納する。このように書き込みを行うことにより、図10において転置レジスタ133に格納されている中間データの領域の、次の領域の中間データは、図11に示されるように、水平方向と垂直方向が転置されて格納される。したがって、基準画素のラインは、一番下の水平ラインとなる。
なお、書き込み方向が変わるので、読み出し順も水平方向と垂直方向が転置される。つまり、図11の例の場合、中間データは、水平ライン毎に読み出される。つまり、基準画素のライン以外の水平ラインは、上から下に向かう順に1水平ラインずつ読み出される。基準画素の中間データは、毎度読み出され、基準画素のライン以外の各水平ラインの加算演算に利用される。
なお、さらに次の領域の中間データは、再度、水平方向と垂直方向が転置されるので、図10のように格納される。
[逆直交変換処理の流れ]
図12のフローチャートを参照して、この場合の逆直交変換処理の流れの例を説明する。
ステップS201において、水平1次元逆変換部131は、逆量子化された、処理対象の1水平ラインの直交変換係数データに対して、水平方向に1次元逆直交変換を行う。ステップS202において、減算部231は、処理対象の水平ラインについて、基準画素の係数と、その他の画素の係数との差分値Δaijを求める。
ステップS203において、ビット幅処理部132は、ステップS202において算出された差分値Δaijに対して、元のビット幅よりも短い所定のビット幅へのクリップ処理を行う。ステップS204において、ビット幅処理部132は、基準画素の係数とクリップ処理を行った差分値Δaijを転置レジスタ133に書き込む。
ステップS205において、水平1次元逆変換部131は、領域内の全ての水平ラインを処理したか否かを判定し、処理対象の領域において未処理の水平ラインが存在すると判定した場合、処理をステップS201に戻し、それ以降の処理を行う。
各水平ラインについて、ステップS201乃至ステップS205の処理を繰り返し、ステップS205において、処理対象領域内の全ての水平ラインを処理したと判定した場合、水平1次元逆変換部131は、処理をステップS206に進める。
ステップS206において、加算部232は、転置レジスタ133から各基準画素の中間データを読み出す。ステップS207において、加算部232は、基準画素のライン以外の垂直ラインの中間データ(差分値)を転置レジスタ133から読み出す。ステップS208において、加算部232は、ステップS207において読み出した各差分値に対して、ステップS206において読み出した、同じ水平ライン上に位置する基準画素の中間データを加算する。
ステップS209において、垂直1次元逆変換部134は、加算して得られた1垂直ライン分の中間データに対して、垂直方向に1次元逆直交変換を行う。
ステップS210において、垂直1次元逆変換部134は、領域内の基準画素のライン以外の垂直ラインを全て処理したか否かを判定し、処理対象の領域の基準画素のライン以外の垂直ラインにおいて未処理の垂直ラインが存在すると判定した場合、処理をステップS206に戻し、それ以降の処理を行う。
基準画素のライン以外の各垂直ラインについて、ステップS206乃至ステップS210の処理を繰り返し、ステップS210において、処理対象領域内の基準画素のライン以外の垂直ラインを全て処理したと判定した場合、垂直1次元逆変換部134は、処理をステップS211に進める。
ステップS211において、加算部232は、転置レジスタ133から、各基準画素の中間データを読み出す。垂直1次元逆変換部134は、その各基準画素の中間データに対して、垂直方向に1次元逆直交変換を行う。

ステップS212において、垂直1次元逆変換部134は、画像内の全ての領域を処理したか否かを判定し、未処理の領域が存在すると判定された場合、処理をステップS201に戻し、それ以降の処理を繰り返す。
以上のように、各領域について、ステップS201乃至ステップS212の処理が繰り返され、ステップS212において、全ての領域を処理したと判定された場合、垂直1次元逆変換部134は、逆直交変換処理を終了し、処理を図7に戻す。
このように各処理を行うことにより、画像復号装置100は、逆直交変換処理において得られる中間データのデータ量を低減させることができ、転置レジスタ133として使用される記憶領域のサイズを低減させることができる。これにより、画像復号処理に必要なメモリ容量を低減させることができ、画像復号装置100の製造コストを低減させることができる。
[逆直交変換処理の流れの他の例]
なお、以上においては、ビット幅処理部132が、全ての差分値を同じビット幅にクリップ処理するように説明したが、上述したように算出された差分値の場合も、第1の実施の形態の中間データの場合と同様に、図5に示されるような周波数分布となる。したがって、第1の実施の形態の場合と同様に、ビット幅処理部132が、周波数帯域に応じて、各中間データ(差分値)のビット幅を制御するようにしてもよい。
つまり、図9において、ビット幅処理部132は、例えば、図6Bに示されるように、各中間データのビット幅を、その周波数成分毎に調整するようにしてもよい。より具体的には、ビット幅処理部132は、低周波成分ほどビット幅が長く、高周波成分ほどビット幅が狭くなるように、各中間データのビット幅を抑制するようにしてもよい。
例えば、n=32とし、Δaij(i=0, j<31)のビット幅を12bitにし(12bitに超える値は12bitにクリップする)、Δaij(1≦i≦3, j<31)のビット幅を10bitにし(10bitに超える値は10bitにクリップする)、Δaij(4≦i≦15, j<31)のビット幅を8bitにし(8bitに超える値は8bitにクリップする)、Δaij(16≦i≦31, j<31)のビット幅を6bitにする(6bitに超える値は6bitにクリップする)。つまり、より高周波の成分ほどビット幅を低減させるようにする。
またAij(0≦i<n, j=31)に関しても同様に、Aij(i=0, j=31)のビット幅を16bitにし、Aij(1≦i≦3, j=31)のビット幅を14bitにし(14bitに超える値は14bitにクリップする)、Aij(4≦i≦15, j=31)のビット幅を12bitにし(12bitに超える値は12bitにクリップする)、Aij(16≦i≦31, j=31)のビット幅を9bitにする(9bitに超える値は9bitにクリップする)。つまり、より高周波の成分ほどビット幅を低減させるようにする。
この結果、中間データのデータ量は、(12bit×1×31+10bit×3×31+8bit×12×31+6bit×16×31)+(16bit×1+14bit×3+12bit×12+9bit×16)+1bit×32×31=8,592bitとなる。これにより元々のデータのデータ量(32×32)×16bit=16,384bitより7,792bitを低減させることができる。つまり、その分、転置レジスタ133としてのメモリ使用量を低減させることができる。
なお、第1の実施の形態の場合と同様に、直交変換係数データおよび中間データの各行のビット幅は、任意である。
つまり、この場合も、ビット幅処理部132は、中間データのビット幅を、その周波数帯域毎に制御する。例えば、ビット幅処理部132は、中間データのビット幅を、その周波数帯域に応じて低減させる。例えば、ビット幅処理部132は、各水平ラインの中間データのビット幅を、より高周波の成分ほど、より強く低減させる。このようにビット幅を制御することにより、ビット幅処理部132は、画質劣化を抑制しながら、逆直交変換処理において使用される転置レジスタ133のサイズを抑制することができる。
例えば、ビット幅処理部132は、直交変換された画像データの周波数特性に応じて、各水平ラインの中間データのビット幅を低減させる。このようにビット幅を制御することにより、ビット幅処理部132は、画質劣化をより抑制することができる。
なお、転置レジスタ133のサイズを低減させることにより、画像復号処理に必要なメモリ容量を低減させることができ、画像復号装置100の製造コストを低減させることができる。
なお、このように各水平ラインのビット幅が同一でない場合、図10や図11を参照して説明したように、水平方向と垂直方向を転置させながら、次の領域の中間データを記憶させることが困難になる可能性がある。そのような場合、水平方向と垂直方向を転置させずに、前の領域の中間データが全て読み出されてから、次の領域の中間データが転置レジスタ133に書き込まれるようにすればよい。
この場合の、逆直交変換処理の流れの例を図13のフローチャートを参照して説明する。
この場合の逆直交変換処理の流れは、図12のフローチャートを参照して上述した場合と基本的に同様である。つまり、ステップS231乃至ステップS242の各処理は、図12のステップS201乃至ステップS212の各処理と基本的に同様に行われる。
ただし、ステップS233において、ビット幅処理部132は、差分値に対して、周波数帯域に応じたビット幅へのクリップ処理を行う。また、ビット幅処理部132は、基準画素の中間データに対しても、同様に、周波数帯域に応じたビット幅へのクリップ処理を行う。
このようにすることにより、逆直交変換部104は、図12の場合よりも画質劣化をより抑制しながら転置レジスタ133のサイズを低減させることができる。
<3.第3の実施の形態>
[逆直交変換部]
なお、上述した基準画素の代わりに、各水平ラインにおいて各中間データの平均値を求め、その平均値を基準とし、各画素の係数とその平均値との差分を中間データとするようにしてもよい。
この場合の逆直交変換部104の構成例を図14に示す。
図14に示されるように、この場合の逆直交変換部104は、図9の場合の構成に加えて、水平1次元逆変換部131と減算部231との間に、平均値算出部331を有する。
平均値算出部331は、水平1次元逆変換部131の出力について、水平ライン毎に、各係数(の絶対値)の平均値を、例えば以下の式(4)のように求める。
μi=(ABS(Ai0)+ABS(Ai1)+・・・+ABS(Ain))/n (ただし、0≦i<n)
・・・(4)
平均値算出部331は、水平1次元逆変換部131の出力と、算出した平均値μiとを減算部231に供給する。
減算部231は、各水平ラインにおいて、各画素の係数と平均値との差分値を、例えば、以下式(5)と式(6)のように求める。
Δaij=ABS(Aij)−μi (ただし、0≦i<n, 0≦j<n-1) ・・・(5)
ij=MBS(Aij) (ただし、0≦i<n, 0≦j<n-1) ・・・(6)
なお、Bijは、Aij(0≦i<n, 0≦j<n-1)の符号ビットを示す。減算部231は、算出した差分値(符号ビットを含む)と平均値をビット幅処理部132に供給する。
ビット幅処理部132は、減算部231から出力される差分値に対して、ビット幅を低減させるように所定のビット幅でクリップ処理を行う。ビット幅処理部132は、クリップ処理を行った差分値と符号ビットを中間データとして転置レジスタ133に供給し、記憶させる。また、ビット幅処理部132は、減算部231から供給された平均値も転置レジスタ133に供給し、記憶させる。
つまり、この場合、図15に示されるように、全ての画素の中間データが差分値となる。また、転置レジスタ133には、水平ライン毎に算出された各平均値μiも記憶される。(符号ビットについては図示を省略する)
なお、平均値と符号ビットについては、ビット幅処理部132は、ビット幅を低減させずに転置レジスタ133に記憶させる。画質劣化が許容されるのであれば、ビット幅処理部132において、これらの値も、ビット幅を狭くするようにクリップ処理するようにしてもよい。
加算部232は、転置レジスタ133から、中間データ(差分値)を1垂直ラインずつ読み出すとともに、平均値μiも読み出す。加算部232は、読み出した差分値に対して、その差分値と同じ水平ライン上の平均値μiを、以下の式(7)のように加算する。
ABS(Aij)=Δaij+μi (ただし、0≦i<n, 0≦j<n-1) ・・・(7)
加算部232は、このように算出されたAijの絶対値に、符号ビットBijを追加する。これにより、各中間データが復元される。加算部232は、このように復元した中間データを、垂直1次元逆変換部134に供給する。
垂直1次元逆変換部134は、このように供給された中間データに対して垂直方向に1次元の逆直交変換処理を行い、直交変換処理される前の画像データを復元する。
以上のように、この方法の場合、すべての中間データを差分値として表現することができ、繰り返し処理の制御をより容易にすることができる。ただしこの場合、転置レジスタ133において平均値μiを保持する必要があるため、その分容量が増大してしまう。しかしながら、この平均値は、上述したように相関性の高い係数同士から算出されるものであり、このような平均値を用いることより、より少ない差分値が得られる可能性が高くなる。したがって、ビット幅処理部132は、画質劣化の増大を抑制しながら、ビット幅をより低減させることができる。したがって、逆直交変換部104は、転置レジスタ133のサイズをより低減させることができる。
[逆直交変換処理の流れ]
図16のフローチャートを参照して、この場合の逆直交変換処理の流れの例を説明する。
ステップS301において、水平1次元逆変換部131は、逆量子化された、処理対象の1水平ラインの直交変換係数データに対して、水平方向に1次元逆直交変換を行う。ステップS302において、平均値算出部331は、処理対象の1水平ラインの各画素の係数Aijの平均値μiを求める。
ステップS303において、減算部231は、処理対象の水平ラインについて、各係数Aijと、ステップS302において算出された平均値μiとの差分値Δaijを求める。
ステップS304において、ビット幅処理部132は、ステップS303において算出された差分値に対して、元のビット幅よりも短い所定のビット幅へのクリップ処理を行う。ステップS305において、ビット幅処理部132は、クリップ処理を行った差分値Δaij’(符号ビットBijを含む)と平均値μiを転置レジスタ133に書き込む。
ステップS306において、水平1次元逆変換部131は、領域内の全ての水平ラインを処理したか否かを判定し、処理対象の領域において未処理の水平ラインが存在すると判定した場合、処理をステップS301に戻し、それ以降の処理を行う。
各水平ラインについて、ステップS301乃至ステップS306の処理を繰り返し、ステップS306において、処理対象領域内の全ての水平ラインを処理したと判定した場合、水平1次元逆変換部131は、処理をステップS307に進める。
ステップS307において、加算部232は、転置レジスタ133から各平均値μiを読み出す。ステップS308において、加算部232は、処理対象の垂直ラインの中間データ(差分値)を転置レジスタ133から読み出す。ステップS309において、加算部232は、ステップS308において読み出した各差分値に対して、ステップS307において読み出した、同じ水平ライン上に位置する平均値を加算する。
ステップS310において、垂直1次元逆変換部134は、加算して得られた1垂直ライン分の中間データに対して、垂直方向に1次元逆直交変換を行う。
ステップS311において、垂直1次元逆変換部134は、領域内の全ての垂直ラインを処理したか否かを判定し、処理対象の領域に未処理の垂直ラインが存在すると判定した場合、処理をステップS307に戻し、それ以降の処理を行う。
領域内の各垂直ラインについて、ステップS307乃至ステップS311の各処理を繰り返し実行し、ステップS311において、処理対象領域内の全ての垂直ラインを処理したと判定した場合、垂直1次元逆変換部134は、処理をステップS312に進める。
ステップS312において、垂直1次元逆変換部134は、画像内の全ての領域を処理したか否かを判定し、未処理の領域が存在すると判定された場合、処理をステップS301に戻し、それ以降の処理を繰り返す。
以上のように、各領域について、ステップS301乃至ステップS312の各処理が繰り返し実行され、ステップS312において、全ての領域を処理したと判定された場合、垂直1次元逆変換部134は、逆直交変換処理を終了し、処理を図7に戻す。
このように各処理を行うことにより、画像復号装置100は、逆直交変換処理において得られる中間データのデータ量を低減させることができ、転置レジスタ133として使用される記憶領域のサイズを低減させることができる。これにより、画像復号処理に必要なメモリ容量を低減させることができ、画像復号装置100の製造コストを低減させることができる。
[逆直交変換処理の流れの他の例]
なお、以上においては、ビット幅処理部132が、全ての差分値を同じビット幅にクリップ処理するように説明したが、上述したように算出された差分値の場合も、第1の実施の形態の中間データの場合と同様に、図5に示されるような周波数分布となる。したがって、第1の実施の形態の場合と同様に、ビット幅処理部132が、周波数帯域に応じて、各中間データ(差分値)のビット幅を制御するようにしてもよい。
つまり、図14において、ビット幅処理部132は、例えば、図6Bに示されるように、各中間データのビット幅を、その周波数成分毎に調整するようにしてもよい。より具体的には、ビット幅処理部132は、低周波成分ほどビット幅が長く、高周波成分ほどビット幅が狭くなるように、各中間データのビット幅を抑制するようにしてもよい。
このようにすることにより、画像復号装置100は、第2の実施の形態の場合と同様に、転置レジスタ133としてのメモリ使用量を低減させることができる。
なお、第1の実施の形態の場合と同様に、直交変換係数データおよび中間データの各行のビット幅は、任意である。
つまり、この場合も、ビット幅処理部132は、中間データのビット幅を、その周波数帯域毎に制御する。例えば、ビット幅処理部132は、中間データのビット幅を、その周波数帯域に応じて低減させる。例えば、ビット幅処理部132は、各水平ラインの中間データのビット幅を、より高周波の成分ほど、より強く低減させる。このようにビット幅を制御することにより、ビット幅処理部132は、画質劣化を抑制しながら、逆直交変換処理において使用される転置レジスタ133のサイズを抑制することができる。
例えば、ビット幅処理部132は、直交変換された画像データの周波数特性に応じて、各水平ラインの中間データのビット幅を低減させる。このようにビット幅を制御することにより、ビット幅処理部132は、画質劣化をより抑制することができる。
なお、転置レジスタ133のサイズを低減させることにより、画像復号処理に必要なメモリ容量を低減させることができ、画像復号装置100の製造コストを低減させることができる。
[逆直交変換処理の流れ]
この場合の、逆直交変換処理の流れの例を図17のフローチャートを参照して説明する。
この場合の逆直交変換処理の流れは、図16のフローチャートを参照して上述した場合と基本的に同様である。つまり、ステップS331乃至ステップS342の各処理は、図16のステップS301乃至ステップS312の各処理と基本的に同様に行われる。
ただし、ステップS334において、ビット幅処理部132は、差分値に対して、周波数帯域に応じたビット幅へのクリップ処理を行う。
このようにすることにより、逆直交変換部104は、図16の場合よりも画質劣化をより抑制しながら転置レジスタ133のサイズを低減させることができる。
なお、以上においては、平均値を基準とするように説明したが、これに限らず、例えば、1水平ラインの各係数データの中央値を基準とするようにしてもよい。この場合、1水平ラインの各係数データの中から、それらの係数データの値の幅の中央に最も近い値を持つ1つが中央値として選択される。この場合も、平均値の代わりに中央値を用いること以外は、上述したのと同様の方法で行われる。一般的に、平均値の算出よりも中央値を選択する方が処理が容易である。また、1水平ラインにおいて差分値の1つを必ず0にすることができる。
<4.第4の実施の形態>
[画像符号化装置]
なお、上述した画像復号装置に対応する画像符号化装置も、上述した逆直交変換部104と同様の逆直交変換部を有する。したがって、このような画像符号化装置の逆直交変換部においても、上述した各方法と同様に処理を行うことにより、転置レジスタのサイズを低減させることができる。
また、このような画像符号化装置は、逆直交変換部104に対応する直交変換部を有する。この直交変換部において、上述した各方法と同様に処理を行うようにしてもよい。このようにすることにより、直交変換部内に設けられる転置レジスタのサイズを低減させることができる。
図18は、画像処理装置の一実施の形態である画像符号化装置の主な構成例を示すブロック図である。図18に示される画像符号化装置400は、図1の画像復号装置100に対応する装置であり、画像データを、画像復号装置100の復号方法に対応する符号化方法(例えば、MPEG、AVC、またはHEVC等)によって符号化し、符号化データ(ビットストリーム)を生成する。この符号化データは、画像復号装置100において復号することができる。
図18に示されるように、画像符号化装置400は、A/D変換部401、画面並べ替えバッファ402、演算部403、直交変換部404、量子化部405、可逆符号化部406、および蓄積バッファ407を有する。また、画像符号化装置400は、逆量子化部408、逆直交変換部409、演算部410、ループフィルタ411、フレームメモリ412、選択部413、イントラ予測部414、動き予測・補償部415、予測画像選択部416、およびレート制御部417を有する。
A/D変換部401は、入力された画像データをA/D変換し、変換後の画像データ(デジタルデータ)を、画面並べ替えバッファ402に供給し、記憶させる。画面並べ替えバッファ402は、記憶した表示の順番のフレームの画像を、GOP(Group Of Picture)に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、演算部403に供給する。また、画面並べ替えバッファ402は、フレームの順番を並び替えた画像を、イントラ予測部414および動き予測・補償部415にも供給する。
演算部403は、画面並べ替えバッファ402から読み出された画像から、予測画像選択部416を介してイントラ予測部414若しくは動き予測・補償部415から供給される予測画像を減算し、その差分情報を直交変換部404に出力する。
例えば、インター符号化が行われる画像の場合、演算部403は、画面並べ替えバッファ402から読み出された画像から、動き予測・補償部415から供給される予測画像を減算する。
直交変換部404は、演算部403から供給される差分情報に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部404は、その変換係数を量子化部405に供給する。
量子化部405は、直交変換部404から供給される変換係数を量子化する。量子化部405は、レート制御部417から供給される符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。なお、この量子化の方法は任意である。量子化部405は、量子化された変換係数を可逆符号化部406に供給する。
可逆符号化部406は、量子化部405において量子化された変換係数を任意の符号化方式で符号化する。係数データは、レート制御部417の制御の下で量子化されているので、この符号量は、レート制御部417が設定した目標値となる(若しくは目標値に近似する)。
また、可逆符号化部406は、イントラ予測のモードを示す情報などをイントラ予測部414から取得し、インター予測のモードを示す情報や動きベクトル情報などを動き予測・補償部415から取得する。さらに、可逆符号化部406は、ループフィルタ411において使用されたフィルタ係数等を取得する。
可逆符号化部406は、これらの各種情報を任意の符号化方式で符号化し、符号化データのヘッダ情報の一部とする(多重化する)。可逆符号化部406は、符号化して得られた符号化データを蓄積バッファ407に供給して蓄積させる。
可逆符号化部406の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などが挙げられる。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)などが挙げられる。
蓄積バッファ407は、可逆符号化部406から供給された符号化データを、一時的に保持する。蓄積バッファ407は、所定のタイミングにおいて、保持している符号化データを、例えば、後段の図示せぬ記録装置(記録媒体)や伝送路などに出力する。
また、量子化部405において量子化された変換係数は、逆量子化部408にも供給される。逆量子化部408は、その量子化された変換係数を、量子化部405による量子化に対応する方法で逆量子化する。この逆量子化の方法は、量子化部405による量子化処理に対応する方法であればどのような方法であってもよい。逆量子化部408は、得られた変換係数を、逆直交変換部409に供給する。
逆直交変換部409は、逆量子化部408から供給された変換係数を、直交変換部404による直交変換処理に対応する方法で逆直交変換する。この逆直交変換の方法は、直交変換部404による直交変換処理に対応する方法であればどのようなものであってもよい。逆直交変換された出力(復元された差分情報)は、演算部410に供給される。
演算部410は、逆直交変換部409から供給された逆直交変換結果、すなわち、復元された差分情報に、予測画像選択部416を介してイントラ予測部414若しくは動き予測・補償部415から供給される予測画像を加算し、局部的に復号された画像(復号画像)を得る。その復号画像は、ループフィルタ411またはフレームメモリ412に供給される。
ループフィルタ411は、デブロックフィルタや適応ループフィルタ等を含み、演算部410から供給される復号画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ411は、復号画像に対してデブロックフィルタ処理を行うことにより復号画像のブロック歪を除去する。また、例えば、ループフィルタ411は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた復号画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
なお、ループフィルタ411が、復号画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ411は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部406に供給し、それを符号化させるようにすることもできる。
ループフィルタ411は、フィルタ処理結果(フィルタ処理後の復号画像)をフレームメモリ412に供給する。なお、上述したように、演算部410から出力される復号画像は、ループフィルタ411を介さずにフレームメモリ412に供給することができる。つまり、ループフィルタ411によるフィルタ処理は省略することができる。
フレームメモリ412は、供給される復号画像を記憶し、所定のタイミングにおいて、記憶している復号画像を参照画像として、選択部413に供給する。
選択部413は、フレームメモリ412から供給される参照画像の供給先を選択する。例えば、インター予測の場合、選択部413は、フレームメモリ412から供給される参照画像を動き予測・補償部415に供給する。
イントラ予測部414は、選択部413を介してフレームメモリ412から供給される参照画像である処理対象ピクチャ内の画素値を用いて、基本的にプレディクションユニット(PU)を処理単位として予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部414は、予め用意された複数のモード(イントラ予測モード)でこのイントラ予測を行う。
イントラ予測部414は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ402から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部414は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部416に供給する。
また、上述したように、イントラ予測部414は、採用されたイントラ予測モードを示すイントラ予測モード情報等を、適宜可逆符号化部406に供給し、符号化させる。
動き予測・補償部415は、画面並べ替えバッファ402から供給される入力画像と、選択部413を介してフレームメモリ412から供給される参照画像とを用いて、基本的にPUを処理単位として、動き予測(インター予測)を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。動き予測・補償部415は、予め用意された複数のモード(インター予測モード)でこのようなインター予測を行う。
動き予測・補償部415は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き予測・補償部415は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部416に供給する。
また、動き予測・補償部415は、採用されたインター予測モードを示す情報や、符号化データを復号する際に、そのインター予測モードで処理を行うために必要な情報等を可逆符号化部406に供給し、符号化させる。
予測画像選択部416は、演算部403や演算部410に供給する予測画像の供給元を選択する。例えば、インター符号化の場合、予測画像選択部416は、予測画像の供給元として動き予測・補償部415を選択し、その動き予測・補償部415から供給される予測画像を演算部403や演算部410に供給する。
レート制御部417は、蓄積バッファ407に蓄積された符号化データの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部405の量子化動作のレートを制御する。
図18において、逆直交変換部409は、第1の実施の形態乃至第3の実施の形態において上述した画像復号装置100の逆直交変換部104と同様の処理部であり、同様の処理を行う。すなわち、逆直交変換部409は、逆直交変換部104と同様に、転置レジスタ133を有し、上述したように各方法で逆直交変換処理を行うことにより、その転置レジスタ133のサイズを低減させることができる。
また、図18において、直交変換部404は、逆直交変換部409(すなわち、逆直交変換部104)に対応し、逆直交変換部409が行う逆直交変換処理に対応する直交変換処理を行う処理部である。つまり、この直交変換部404も、逆直交変換部104と同様の転置レジスタを有し、上述したような各方法の逆直交変換処理に対応するように、直交変換処理を行うことにより、その転置レジスタのサイズを低減させることができる。
[直交変換部]
図19は、直交変換部404の主な構成例を示すブロック図である。図19に示されるように、直交変換部404は、水平1次元変換部431、ビット幅処理部432、転置レジスタ433、および垂直1次元変換部434を有する。つまり、直交変換部404は、図4に示される第1の実施の形態の逆直交変換部104と略同様の構成を有する。
水平1次元変換部431は、水平1次元逆変換部131に対応する処理部であり、1水平ライン毎に入力される、直交変換処理の処理単位となる領域の画像データを、その1水平ライン毎に水平方向に1次元の直交変換を行う。つまり、水平1次元変換部431により、画像データが水平方向に1次元の直交変換されて得られた係数データは、水平1次元逆変換部131が逆変換(水平方向に1次元の逆直交変換)する(元の画像データに戻す)ことができる。
水平1次元変換部431により生成された係数データは、ビット幅処理部432に供給される。ビット幅処理部432は、水平1次元変換部431から出力される各係数データ(中間データ)に対して、ビット幅を低減させるようにクリップ処理を行う。その際、ビット幅処理部432は、各中間データのビット幅を、その周波数帯域に応じた度合いで低減させる。ビット幅処理部432は、ビット幅を調整した各中間データを転置レジスタ433に供給し、保持させる。
転置レジスタ433は、転置レジスタ133と同様に、供給される各中間データを、図19に示されるように、元の直交変換係数データの並び順に対応するように整列して記憶する。
垂直1次元変換部434は、垂直1次元逆変換部134に対応する処理部であり、この転置レジスタ433から、中間データを垂直ライン毎に読み出して、1次元の直交変換処理を行う。つまり、垂直1次元変換部434は、転置レジスタ433に記憶される中間データを、垂直方向の並び毎に読み出す。すなわち、垂直1次元変換部434は、転置レジスタ433からの中間データの読み出しを、その中間データの書き込み順と異なる順で読み出すことにより、中間データの並びを水平方向から垂直方向に転置させる。垂直1次元変換部434は、このように列毎に読み出した中間データを、その垂直ライン毎に直交変換することにより、垂直方向の直交変換を実現する。
垂直1次元変換部434によって中間データが垂直方向に直交変換されることにより、画像データが2次元(水平方向および垂直方向)に直交変換された直交変換係数データ(単に係数データとも称する)が得られる。垂直1次元変換部434は、その係数データを量子化部405に供給する。
以上のような処理において、転置レジスタ433に記憶される中間データは、例えば図20に示されるように、水平方向に周波数成分毎に整列することになる。つまり、左から右に向かって、低周波成分から高周波成分が並ぶ。より低周波の成分は、より左に位置し、より高周波の成分は、より右に位置する。各列(垂直ライン)には、互いに同じ周波数帯域の成分が並ぶ。
例えば、水平1次元変換部431により直交変換されて得られる中間データのビット幅が、図21Aに示されるように、16ビットであるとする。処理単位の領域を32×32とすると、データ量は、(32×32)16bit=16,384bitである。
ビット幅処理部432は、例えば、図21Bに示されるように、各中間データのビット幅を、その周波数成分毎に調整する。より具体的には、ビット幅処理部432は、低周波成分ほどビット幅が長く、高周波成分ほどビット幅が狭くなるように、各中間データのビット幅を抑制する。例えば、図21Bの場合、ビット幅処理部432は、1番左の1列(1垂直ライン)の中間データのビット幅を16ビットとし、左から2番目乃至4番目の3列(3垂直ライン)の中間データのビット幅を14ビットとする。また、例えば、図21Bの場合、ビット幅処理部432は、左から5番目乃至16番目の12列(12垂直ライン)の中間データのビット幅を12ビットとし、左から17番目乃至32番目の16列(16垂直ライン)の中間データのビット幅を9ビットとする。
このようにすることにより、データ量は、(32×1)×16bit+(32×3)×14bit+(32×12)×12bit+(32×16)×9bit=11,072bitとなる。したがって、上述した全ての中間データのビット幅を16ビットとする場合に比べて、5,312bit分、転置レジスタ433としてのメモリ使用量を低減させることができる。
なお、画像データおよび中間データの各画素のビット幅は、任意であり、図21Bに示される例以外であってもよい。例えば、1番左から4列(4垂直ライン)ずつビット幅を低減させるようにしてもよい。また、例えば、左から16番目の列まで(16垂直ライン)の中間データのビット幅を画像データと同一とし、残りの16列(16垂直ライン)の各列のビット幅を画像データよりも低減させるようにしてもよい。
つまり、ビット幅処理部432は、中間データのビット幅を、その周波数帯域毎に制御する。例えば、ビット幅処理部432は、処理単位となる領域の画像データが水平方向に1次元直交変換されて得られた水平ライン毎の中間データのビット幅を、その周波数帯域に応じて低減させる。
例えば、ビット幅処理部432は、各水平ラインの中間データのビット幅を、より高周波の成分ほど、より強く低減させる。一般的に、自然画像は、より低周波成分ほど絶対値が大きく、より高周波成分ほど絶対値が小さい。したがって、このようにビット幅を制御することにより、ビット幅処理部432は、画質劣化を抑制しながら、直交変換処理において使用される転置レジスタ433のサイズを抑制することができる。
例えば、ビット幅処理部432は、画像データの周波数特性に応じて、各水平ラインの各中間データのビット幅を低減させる。このようにビット幅を制御することにより、ビット幅処理部432は、画質劣化をより抑制することができる。
なお、転置レジスタ433のサイズを低減させることにより、画像符号化処理に必要なメモリ容量を低減させることができ、画像符号化装置400の製造コストを低減させることができる。
なお、ビット幅処理部432のクリップ処理により、中間データが誤差を含むようになる場合も考えられるが、クリップするビット幅を十分に確保することにより、この誤差の影響を低減させることができる。換言するに、画像符号化装置400は、クリップするビット幅の設定によって、画質劣化の大きさと転置レジスタ433のサイズとを制御することができる。したがって、例えば、画像の内容に応じて、これらが最善となるように、クリップするビット幅を決定するのが望ましい。
[符号化処理の流れ]
次に、以上のような画像符号化装置400により実行される各処理の流れについて説明する。最初に、図22のフローチャートを参照して、符号化処理の流れの例を説明する。
ステップS401において、A/D変換部401は入力された画像をA/D変換する。ステップS402において、画面並べ替えバッファ402は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
ステップS403において、イントラ予測部414は、イントラ予測モードのイントラ予測処理を行う。ステップS404において、動き予測・補償部415は、インター予測モードでの動き予測や動き補償を行うインター動き予測処理を行う。
ステップS405において、予測画像選択部416は、イントラ予測部414および動き予測・補償部415から出力された各コスト関数値に基づいて、最適なモードを決定する。つまり、予測画像選択部416は、イントラ予測部414により生成された予測画像と、動き予測・補償部415により生成された予測画像のいずれか一方を選択する。
ステップS406において、演算部403は、ステップS402の処理により並び替えられた画像と、ステップS405の処理により選択された予測画像との差分を演算する。差分データは元の画像データに較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に較べて、データ量を圧縮することができる。
ステップS407において、直交変換部404は、ステップS406の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、変換係数が出力される。
ステップS408において、量子化部405は、ステップS407の処理により得られた直交変換係数を量子化する。
ステップS408の処理により量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS409において、逆量子化部408は、ステップS408の処理により生成された量子化された直交変換係数(量子化係数とも称する)を量子化部405の特性に対応する特性で逆量子化する。
ステップS410において、逆直交変換部409は、ステップS407の処理により得られた直交変換係数を、直交変換部404の特性に対応する特性で逆直交変換する。なお、この逆直交変換処理は、第1の実施の形態乃至第3の実施の形態において説明したのと同様に行われるので、それについての詳細な説明は省略する。
ステップS411において、演算部410は、予測画像を局部的に復号された差分情報に加算し、局部的に復号された画像(演算部403への入力に対応する画像)を生成する。ステップS412においてループフィルタ411は、ステップS411の処理により得られた局部的な復号画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜行う。
ステップS413において、フレームメモリ412は、ステップS412の処理によりループフィルタ処理が施された復号画像を記憶する。なお、フレームメモリ412にはループフィルタ411によりフィルタ処理されていない画像も演算部410から供給され、記憶される。
ステップS414において、可逆符号化部406は、ステップS408の処理により量子化された変換係数を符号化する。すなわち、差分画像に対して、可変長符号化や算術符号化等の可逆符号化が行われる。
なお、可逆符号化部406は、ステップS408において算出された量子化パラメータを符号化し、符号化データに付加する。また、可逆符号化部406は、ステップS405の処理により選択された予測画像の予測モードに関する情報を符号化し、差分画像を符号化して得られる符号化データに付加する。つまり、可逆符号化部406は、イントラ予測部414から供給される最適イントラ予測モード情報、または、動き予測・補償部415から供給される最適インター予測モードに応じた情報なども符号化し、符号化データに付加する。
ステップS415において蓄積バッファ407は、ステップS414の処理により得られた符号化データを蓄積する。蓄積バッファ407に蓄積された符号化データは、適宜読み出され、伝送路や記録媒体を介して復号側に伝送される。
ステップS416においてレート制御部417は、ステップS415の処理により蓄積バッファ407に蓄積された符号化データの符号量(発生符号量)に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部405の量子化動作のレートを制御する。
ステップS416の処理が終了すると、符号化処理が終了される。
[直交変換処理の流れ]
次に、図23のフローチャートを参照して、図22のステップS407において実行される直交変換処理の流れの例を説明する。
ステップS431において、水平1次元変換部431は、処理対象の領域の1水平ラインの画像データに対して、水平方向に1次元直交変換を行う。
ステップS432において、ビット幅処理部432は、ステップS431の処理により得られた1水平ラインの中間データに対して、周波数帯域に応じたビット幅へのクリップ処理を行う。
図20を参照して説明したように、各画素の中間データの周波数成分は、水平方向に低域から高域に変化する。つまり、1水平ラインの中間データには、低域成分から高域成分までが含まれる。したがって、ビット幅処理部432は、1水平ラインの各中間データに対して、それぞれの周波数成分に応じたビット幅でクリップ処理する。つまり、1水平ラインの中間データが、周波数帯域毎に分類され、その帯域毎に互いに異なるビット幅でクリップ処理される。例えば、各中間データを互いに異なる周波数成分とする場合、各中間データは、互いに異なるビット幅でクリップ処理される。上述した逆直交変換の場合、周波数分布は垂直方向に現れるので、1水平ラインの各中間データは、互いに同一のビット幅でクリップ処理されていたが、直交変換の場合、このようなクリップ処理により、1水平ラインの各中間データが互いに異なるビット幅となる可能性がある。
ステップS433において、ビット幅処理部432は、クリップ処理した1水平ラインの中間データを、転置レジスタ433の、前回書き込んだ1水平ラインの中間データの1行下に書き込む。
ステップS434において、水平1次元変換部431は、領域内の全ての水平ラインを処理したか否かを判定し、処理対象の領域において未処理の水平ラインが存在すると判定した場合、処理をステップS431に戻し、それ以降の処理を行う。
各水平ラインについて、ステップS431乃至ステップS434の各処理が繰り返し実行され、ステップS434において、処理対象領域内の全ての水平ラインを処理したと判定した場合、水平1次元変換部431は、処理をステップS435に進める。
ステップS435において、垂直1次元変換部434は、転置レジスタ433から中間データを1垂直ライン分読み出し、ステップS436において、読み出した中間データに対して、垂直方向に1次元直交変換を行う。
ステップS437において、垂直1次元変換部434は、領域内の全ての垂直ラインを処理したか否かを判定し、処理対象の領域において未処理の垂直ラインが存在すると判定した場合、処理をステップS435に戻し、それ以降の処理を行う。
各垂直ラインについて、ステップS435乃至ステップS437の処理を繰り返し、ステップS437において、処理対象領域内の全ての垂直ラインを処理したと判定した場合、垂直1次元変換部434は、処理をステップS438に進める。
ステップS438において、垂直1次元変換部434は、画像内の全ての領域を処理したか否かを判定し、未処理の領域が存在すると判定された場合、処理をステップS431に戻し、それ以降の処理を繰り返す。
以上のように、各領域について、ステップS431乃至ステップS438の処理が繰り返し実行され、ステップS438において、全ての領域を処理したと判定された場合、垂直1次元変換部434は、直交変換処理を終了し、処理を図22に戻す。
このように各処理を行うことにより、画像符号化装置400は、直交変換処理において得られる中間データのデータ量を低減させることができ、転置レジスタ433として使用される記憶領域のサイズを低減させることができる。これにより、画像符号化処理に必要なメモリ容量を低減させることができ、画像符号化装置400の製造コストを低減させることができる。
<5.第5の実施の形態>
[直交変換部]
なお、直交変換部404の場合も、逆直交変換部104の場合と同様に、各中間データの値をより小さくするために、水平方向に直交変換された係数データの所定の行(水平ライン)を基準とし、その基準との差分値を中間データとして転置レジスタ433に格納させるようにしてもよい。つまり、水平方向の1次元変換を行った結果について、互いに同一の周波数成分同士で差分をとり、その差分を中間データとするようにしてもよい。
図24は、その場合の直交変換部404の構成例を示すブロック図である。図24に示されるように、この場合、直交変換部404は、図19を参照して説明した構成に加え、水平1次元変換部431とビット幅処理部432との間に減算部531を有し、転置レジスタ433と垂直1次元変換部434との間に加算部532を有する。
減算部531は、上述したように行列状(アレイ状)に配列される各係数の所定の1水平ライン上の画素を基準画素とし、各垂直ラインにおいて、その基準画素の係数と、それ以外の各画素の係数との差分値を求める。
ビット幅処理部432は、減算部531から出力される、その差分値に対してクリップ処理を行う。例えば、ビット幅処理部432は、供給された各差分値のビット幅を、所定のビット幅に低減し、転置レジスタ433に供給し、中間データとして記憶させる。また、ビット幅処理部432は、各基準画素の係数を、ビット幅の抑制を行わずに、そのまま転置レジスタ433に供給し、中間データとして記憶させる。
図25は、転置レジスタ433に記憶される中間データの例を示す図である。

図25の例の場合、直交変換処理の処理単位となる領域のサイズはn×n画素である。水平1次元変換部431の出力Aij(0≦i<n, 0≦j<n)のビット幅は、16ビットである。
減算部531は、このような出力に対して、1番上の行(i=0)を基準画素のラインとし、その他の行(0<i<n-1)について、基準画素の係数との差分値Δaijを以下の式(8)および式(9)のように算出する。
Δaij=ABS(Aij)−ABS(A0i) (ただし、0<i<n, 0≦j<n) ・・・(8)
ij=MBS(Aij) (ただし、0<i<n, 0≦j<n) ・・・(9)
なお、Bijは、Aijの符号ビットを示す。
つまり、減算部531は、領域内において最初に処理される水平ラインの各係数を基準画素として記憶し、2番目以降に処理される水平ラインの各画素について、その画素と同じ垂直ライン上に位置する基準画素との差分値を求める。減算部531は、基準画素以外の画素(0<i<n, 0≦j<n)について、このように算出した差分値Δaijと符号ビットBijを中間データとしてビット幅処理部432に供給する。また、減算部531は、基準画素のライン(I=0, 0≦j<n)について、16ビットの係数Aijを中間データとしてビット幅処理部432に供給する。
図20を参照して説明したように、水平方向に1次元変換された係数は、水平方向に各周波数成分が分布する。つまり、垂直方向に同一周波数成分が並び、互いの相関が高くなる。減算部531は、この垂直方向の相関性の高さを利用して、上述したように垂直方向に並ぶ係数同士で差分を取ることにより、各中間データの値を小さくする。このとき、符号付きで減算を行うと、値がかえって大きくなってしまう可能性があるため、減算部531は、式(8)に示されるように、各係数の絶対値同士の差分を算出する。このようにすることにより、減算部531は、中間データの値を確実により小さくすることができる。
つまり、Δaij(0<i<n, 0≦j<n)は、Aij(i=0, 0≦j<n)より少ないビット幅で表現することができる可能性が高い。そこで、ビット幅処理部432は、供給された各差分値に対して、元の16ビットよりも少ないビット幅でクリップ処理を行う。図25の例においては、12ビットでクリップ処理が行われている。ビット幅処理部432は、このように、差分値を所定のビット幅に低減し、それを転置レジスタ433に供給して記憶させる。
このようにすることにより、直交変換部404は、全ての中間データを、ビット幅16ビットのままで記憶させる場合よりも、転置レジスタ433のサイズを低減させることができる。
なお、基準画素については、ビット幅処理部432は、係数Aij(i=0, 0<j<n)を中間データとして転置レジスタ433に伝送し、記憶させる。図25の例の場合、ビット幅処理部432は、画質劣化を抑制するために、この中間データAij(i=0, 0<j<n)を、ビット幅16ビットのまま転置レジスタ433に記憶させている(斜線部分)。画質劣化が許容されるのであれば、ビット幅処理部432において、この中間データAij(i=0, 0<j<n)も、ビット幅を狭くするようにクリップ処理するようにしてもよい。
加算部532は、転置レジスタ433から、中間データを1垂直ラインずつ読み出す。図25に示されるように、各垂直ラインには、差分値の中間データの他に、その差分値の算出に利用した基準画素の中間データも含まれる。加算部532は、読み出した1垂直ラインに含まれる各差分値に、その垂直ラインに含まれる基準画素の中間データを、以下の式(10)のように加算する。
ABS(Aij)=ABS(A0j)+Δaij (ただし、0<i<n,0≦j<n) ・・・(10)
加算部532は、このように算出されたAijの絶対値に、符号ビットBijを追加する。これにより、基準画素のライン以外の垂直ラインの各中間データが復元される。加算部532は、このように復元した中間データを、垂直1次元変換部434に供給する。なお、加算部532は、転置レジスタ433から読み出した垂直ラインに含まれる基準画素の中間データも垂直1次元変換部434に供給する。この基準画素の中間データは差分値ではないので、読み出したデータがそのまま垂直1次元変換部434に供給される。
垂直1次元変換部434は、このように供給された中間データに対して垂直方向に1次元の直交変換処理を行い、画像データが2次元(水平方向および垂直方向)に直交変換された直交変換係数データを生成する。なお、中間データに対して上述したようにクリップ処理が行われる場合、そのクリップ処理により誤差が含まれる可能性がある。したがって、その係数データを逆直交変換しても、直交変換処理される前の画像データを必ずしも完全に再現することができない場合もある。ただし、その誤差による画質劣化は、大きくない。換言するに、この画質劣化が許容される程度以下となるように、クリップ処理するビット幅を定義すればよい。
なお、直交変換の場合、上述したように、全ての垂直ラインに基準画素が含まれる。したがって、どの行を基準画素のラインとするようにしてもよい。
なお、図26に示されるように、次に処理される領域の中間データは、水平方向と垂直方向(つまり、行と列)が入れ替えて書き込まれる。しかしながら、この場合も、中間データの読み出しは、水平方向と垂直方向が転置され、水平ライン毎に行われるようになるので、やはり、基準画素の列(垂直ライン)は、任意のラインとすることができる。
なお、さらに次の領域の中間データは、再度、水平方向と垂直方向が転置されるので、図25のように格納される。
[直交変換処理の流れ]
図27のフローチャートを参照して、この場合の直交変換処理の流れの例を説明する。
ステップS501において、水平1次元変換部431は、処理対象の1水平ラインの画像データに対して、水平方向に1次元直交変換を行う。ステップS502において、減算部531は、処理対象の水平ラインが基準画素のラインであるか否かを判定する。基準画素のラインであると判定した場合、減算部531は、処理をステップS503に進める。
ステップS503において、ビット幅処理部432は、その水平ラインの係数を転置レジスタ433に書き込む。なお、減算部531も、この水平ラインの各係数を保持する。ステップS503の処理が終了すると、ビット幅処理部432は、処理をステップS507に進める。
あた、ステップS502において、処理対象の水平ラインが基準画素のラインでは無いと判定された場合、減算部531は、処理をステップS504に進める。ステップS504において、減算部531は、水平ラインの各係数から、その各係数と水平方向に同じ位置にある基準画素の係数を減算し、その差分値を算出する。
ステップS505において、ビット幅処理部432は、各差分値に対して、ビット幅を低減させるように、所定のビット幅へのクリップ処理を行う。ステップS506において、ビット幅処理部432は、ビット幅を低減させた各差分値を、中間データとして転置レジスタ433に供給し、記憶させる。ステップS506の処理が終了すると、ビット幅処理部432は、処理をステップS507に進める。
ステップS507において、水平1次元変換部431は、領域内の全ての水平ラインを処理したか否かを判定し、未処理のラインが存在すると判定された場合、処理をステップS501に戻し、それ以降の処理を繰り返し実行する。領域内の各水平ラインについて、ステップS501乃至ステップS507の各処理を繰り返し実行し、ステップS507において、領域内の全ての水平ラインを処理したと判定した場合、水平1次元変換部431は、処理をステップS508に進める。
ステップS508において、加算部532は、転置レジスタ433から、1垂直ライン分、中間データを読み出す。ステップS508において、加算部532は、読み出した垂直ライン内の、各差分値に、基準画素の係数を加算する。
ステップS510のいて、垂直1次元変換部434は、垂直ラインの各係数に対して垂直方向に1次元の直交変換を行い、2次元に直交変換された係数データを生成する。
ステップS511において、垂直1次元変換部434は、領域内の全ての垂直ラインを処理したか否かを判定し、未処理の垂直ラインが存在すると判定した場合、処理をステップS508に戻し、それ以降の処理を繰り返す。各垂直ラインについてステップS508乃至ステップS511の処理を繰り返し、ステップS511において、領域内の全ての垂直ラインを処理したと判定した場合、垂直1次元変換部434は、処理をステップS512に進める。
ステップS512において、垂直1次元変換部434は、画像内の全ての領域を処理したか否かを判定し、未処理の領域が存在すると判定された場合、処理をステップS501に戻し、それ以降の処理を繰り返す。
以上のように、各領域について、ステップS501乃至ステップS512の各処理が繰り返し実行され、ステップS512において、全ての領域を処理したと判定された場合、垂直1次元変換部434は、直交変換処理を終了し、処理を図22に戻す。
このように各処理を行うことにより、画像符号化装置400は、直交変換処理において得られる中間データのデータ量を低減させることができ、転置レジスタ433として使用される記憶領域のサイズを低減させることができる。これにより、画像符号化処理に必要なメモリ容量を低減させることができ、画像符号化装置400の製造コストを低減させることができる。
[直交変換処理の流れの他の例]
なお、以上においては、ビット幅処理部432が、全ての差分値を同じビット幅にクリップ処理するように説明したが、上述したように算出された差分値の場合も、第4の実施の形態の場合と同様に、図20に示されるような周波数分布となる。したがって、第4の実施の形態の場合と同様に、ビット幅処理部432が、周波数帯域に応じて、各中間データ(差分値)のビット幅を制御するようにしてもよい。
この場合の、直交変換処理の流れの例を図28のフローチャートを参照して説明する。
この場合の直交変換処理の流れは、図27のフローチャートを参照して上述した場合と基本的に同様である。つまり、ステップS531乃至ステップS542の各処理は、図27のステップS501乃至ステップS512の各処理と基本的に同様に行われる。
ただし、ステップS535において、ビット幅処理部432は、差分値に対して、周波数帯域に応じたビット幅へのクリップ処理を行う。また、ビット幅処理部432は、基準画素の中間データに対しても、同様に、周波数帯域に応じたビット幅へのクリップ処理を行う。
このようにすることにより、直交変換部404は、図27の場合よりも画質劣化をより抑制しながら転置レジスタ433のサイズを低減させることができる。
以上の各実施の形態においては、水平方向と垂直方向のそれぞれについて直交変換処理や逆直交変換処理が行われるように説明したが、これらの処理において、変換方式は、任意であり、水平方向に対する処理、および、垂直方向に対する処理のそれぞれに対して、どのような直交変換・逆直交変換方式を用いるようにしてもよい。例えば、DCTであってもよいし、カルーネン・レーベ変換であってもよいし、DSTであってもよい。また、水平方向と垂直方向で、互いに異なる変換方式を採用するようにしてもよい。例えば、水平方向はDCT(IDCT)を行い、垂直方向はDST(IDST)を行うようにしてもよい。つまり、図4の例の場合、水平1次元逆変換部131がIDCTを行い、垂直1次元逆変換部134がIDSTを行うようにしてもよい。もちろん、水平1次元逆変換部131がIDSTを行い、垂直1次元逆変換部134がIDCTを行うようにしてもよいし、水平1次元逆変換部131および垂直1次元逆変換部134がIDCT・IDST以外の方式を採用するようにしてもよい。他の実施の形態についても同様である。画像符号化装置400の直交変換部404や逆直交変換部409も同様である。
なお、本技術は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換を用いて符号化された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本技術は、それらの画像符号化装置および画像復号装置などに含まれる直交変換装置や逆直交変換装置にも適用することができる。
<6.第6の実施の形態>
[パーソナルコンピュータ]
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
図29において、パーソナルコンピュータ600のCPU(Central Processing Unit)601は、ROM(Read Only Memory)602に記憶されているプログラム、または記憶部613からRAM(Random Access Memory)603にロードされたプログラムに従って各種の処理を実行する。RAM603にはまた、CPU601が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU601、ROM602、およびRAM603は、バス604を介して相互に接続されている。このバス604にはまた、入出力インタフェース610も接続されている。
入出力インタフェース610には、キーボード、マウスなどよりなる入力部611、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部612、ハードディスクなどより構成される記憶部613、モデムなどより構成される通信部614が接続されている。通信部614は、インターネットを含むネットワークを介しての通信処理を行う。
入出力インタフェース610にはまた、必要に応じてドライブ615が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア616が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部613にインストールされる。
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、例えば、図29に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア616により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM602や、記憶部613に含まれるハードディスクなどで構成される。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
<7.第7の実施の形態>
[第1の応用例:テレビジョン受像機]
図30は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送手段としての役割を有する。
制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置900での画像の復号に際して、逆直交変換処理において使用される転置レジスタのサイズを抑制することができる。
<8.第8の実施の形態>
[第2の応用例:携帯電話機]
図31は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機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(Unallocated Space Bitmap)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部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は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機920での画像の符号化及び復号に際して、直交変換処理および逆直交変換処理において使用される転置レジスタのサイズを抑制することができる。
<9.第9の実施の形態>
[第3の応用例:記録再生装置]
図32は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置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へ出力する。
HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラム及びその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944又はディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944又はディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置940での画像の符号化及び復号に際して、直交変換処理および逆直交変換処理において使用される転置レジスタのサイズを抑制することができる。
<10.第10の実施の形態>
[第4の応用例:撮像装置]
図33は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD969は、例えばメニュー、ボタン又はカーソルなどの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は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置960での画像の符号化及び復号に際して、直交変換処理および逆直交変換処理において使用される転置レジスタのサイズを抑制することができる。
なお、本明細書では、予測モード情報等の画像データ以外の様々な情報が、ビットストリームのヘッダに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
なお、本技術は以下のような構成も取ることができる。
(1) 画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行う水平1次元逆変換部と、
前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、
前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、
前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う垂直1次元逆変換部と
を備える画像処理装置。
(2) 前記ビット幅処理部は、前記係数を、前記係数の周波数帯域に応じたビット幅にクリップ処理する
前記(1)に記載の画像処理装置。
(3) 前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた、互いに同一の周波数帯域同士の係数を減算する減算部と、
前記減算部による減算により得られた差分値と、前記減算に用いた一方の係数とを加算する加算部と
をさらに備え、
前記ビット幅処理部は、前記減算により得られた前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、
前記記憶部は、前記減算に用いられた一方の係数と、前記ビット幅処理部によりビット幅が低減された前記差分値を、前記中間データとして記憶し、
前記加算部は、前記記憶部から読み出した、前記減算に用いられた一方の係数と、ビット幅が低減された前記差分値を加算して、前記減算に用いられた他方の係数を復元し、
前記垂直1次元逆変換部は、前記減算に用いられた一方の係数、および、前記加算部による加算により復元された、前記減算に用いられた他方の係数に対して、垂直方向の逆直交変換を行う
前記(1)に記載の画像処理装置。
(4) 前記加算部は、前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、
前記記憶部は、前記減算に用いられた一方の係数を、前記加算部により最後に読み出されるラインに記憶する
前記(3)に記載の画像処理装置。
(5) 前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理する
前記(3)または(4)に記載の画像処理装置。
(6) 前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理する
前記(3)または(4)に記載の画像処理装置。
(7) 前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた、互いに同一の周波数帯域同士の係数の平均値を算出する平均値算出部をさらに備え、
前記減算部は、前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数と、前記平均値算出部により算出された前記平均値との差分値を算出し、
前記ビット幅処理部は、前記減算部により算出された前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、
前記記憶部は、前記平均値と、前記ビット幅処理部によりビット幅が低減された前記差分値とを、前記中間データとして記憶し、
前記加算部は、前記記憶部から読み出した、前記差分値と前記平均値とを加算して、前記減算に用いられた係数を復元し、
前記垂直1次元逆変換部は、前記減算に用いられた係数に対して、垂直方向の逆直交変換を行う
前記(3)に記載の画像処理装置。
(8) 前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理する
前記(7)に記載の画像処理装置。
(9) 前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理する
前記(7)に記載の画像処理装置。
(10) 前記水平1次元逆変換部と前記垂直1次元逆変換部は、互いに異なる変換方式で逆直交変換を行う
前記(1)乃至(9)に記載の画像処理装置。
(11) 画像処理装置の画像処理方法であって、
水平1次元逆変換部が、画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行い、
ビット幅処理部が、前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行い、
記憶部が、前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶し、
垂直1次元逆変換部が、記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う
画像処理方法。
(12) 画像データに対して、水平方向の直交変換を行う水平1次元変換部と、
前記水平1次元変換部により前記水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、
前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、
前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の直交変換を行う垂直1次元変換部と
を備える画像処理装置。
(13) 前記ビット幅処理部は、前記係数を、前記係数の周波数帯域に応じたビット幅にクリップ処理する
前記(12)に記載の画像処理装置。
(14) 前記水平1次元変換部により前記水平方向の直交変換が行われて得られた、互いに同一の周波数帯域同士の係数を減算する減算部と、
前記減算部による減算により得られた差分値と、前記減算に用いた一方の係数とを加算する加算部と
をさらに備え、
前記ビット幅処理部は、前記減算により得られた前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、
前記記憶部は、前記減算に用いられた一方の係数と、前記ビット幅処理部によりビット幅が低減された前記差分値を、前記中間データとして記憶し、
前記加算部は、前記記憶部から読み出した、前記減算に用いられた一方の係数と、ビット幅が低減された前記差分値を加算して、前記減算に用いられた他方の係数を復元し、
前記垂直1次元変換部は、前記減算に用いられた一方の係数、および、前記加算部による加算により復元された、前記減算に用いられた他方の係数に対して、垂直方向の直交変換を行う
前記(12)に記載の画像処理装置。
(15) 前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理する
前記(14)に記載の画像処理装置。
(16) 前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理する
前記(14)に記載の画像処理装置。
(17) 前記水平1次元変換部と前記垂直1次元変換部は、互いに異なる変換方式で直交変換を行う
前記(12)乃至(16)に記載の画像処理装置。
(18) 画像処理装置の画像処理方法であって、
水平1次元変換部が、画像データに対して、水平方向の直交変換を行い、
ビット幅処理部が、前記水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行い、
記憶部が、前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶し、
垂直1次元変換部が、記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の直交変換を行う
画像処理方法。
100 画像復号装置, 104 逆直交変換部, 131 水平1次元逆変換部, 132 ビット幅処理部, 133 転置レジスタ, 134 垂直1次元逆変換部, 231 減算部, 232 加算部, 331 平均値算出部, 400 画像符号化装置, 404 直交変換部, 409 逆直交変換部, 431 水平1次元変換部, 432 ビット幅処理部, 433 転置レジスタ, 434 垂直1次元変換部, 531 減算部, 532 加算部

Claims (18)

  1. 画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行う水平1次元逆変換部と、
    前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、
    前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、
    前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う垂直1次元逆変換部と
    を備える画像処理装置。
  2. 前記ビット幅処理部は、前記係数を、前記係数の周波数帯域に応じたビット幅にクリップ処理する
    請求項1に記載の画像処理装置。
  3. 前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた、互いに同一の周波数帯域同士の係数を減算する減算部と、
    前記減算部による減算により得られた差分値と、前記減算に用いた一方の係数とを加算する加算部と
    をさらに備え、
    前記ビット幅処理部は、前記減算により得られた前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、
    前記記憶部は、前記減算に用いられた一方の係数と、前記ビット幅処理部によりビット幅が低減された前記差分値を、前記中間データとして記憶し、
    前記加算部は、前記記憶部から読み出した、前記減算に用いられた一方の係数と、ビット幅が低減された前記差分値を加算して、前記減算に用いられた他方の係数を復元し、
    前記垂直1次元逆変換部は、前記減算に用いられた一方の係数、および、前記加算部による加算により復元された、前記減算に用いられた他方の係数に対して、垂直方向の逆直交変換を行う
    請求項1に記載の画像処理装置。
  4. 前記加算部は、前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、
    前記記憶部は、前記減算に用いられた一方の係数を、前記加算部により最後に読み出されるラインに記憶する
    請求項3に記載の画像処理装置。
  5. 前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理する
    請求項3に記載の画像処理装置。
  6. 前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理する
    請求項3に記載の画像処理装置。
  7. 前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた、互いに同一の周波数帯域同士の係数の平均値を算出する平均値算出部をさらに備え、
    前記減算部は、前記水平1次元逆変換部により前記水平方向の逆直交変換が行われて得られた係数と、前記平均値算出部により算出された前記平均値との差分値を算出し、
    前記ビット幅処理部は、前記減算部により算出された前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、
    前記記憶部は、前記平均値と、前記ビット幅処理部によりビット幅が低減された前記差分値とを、前記中間データとして記憶し、
    前記加算部は、前記記憶部から読み出した、前記差分値と前記平均値とを加算して、前記減算に用いられた係数を復元し、
    前記垂直1次元逆変換部は、前記減算に用いられた係数に対して、垂直方向の逆直交変換を行う
    請求項3に記載の画像処理装置。
  8. 前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理する
    請求項7に記載の画像処理装置。
  9. 前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理する
    請求項7に記載の画像処理装置。
  10. 前記水平1次元逆変換部と前記垂直1次元逆変換部は、互いに異なる変換方式で逆直交変換を行う
    請求項1に記載の画像処理装置。
  11. 画像処理装置の画像処理方法であって、
    水平1次元逆変換部が、画像データが水平方向および垂直方向に直交変換された直交変換係数に対して、水平方向の逆直交変換を行い、
    ビット幅処理部が、前記水平方向の逆直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行い、
    記憶部が、前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶し、
    垂直1次元逆変換部が、記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の逆直交変換を行う
    画像処理方法。
  12. 画像データに対して、水平方向の直交変換を行う水平1次元変換部と、
    前記水平1次元変換部により前記水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行うビット幅処理部と、
    前記ビット幅処理部により前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶する記憶部と、
    前記記憶部に記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の直交変換を行う垂直1次元変換部と
    を備える画像処理装置。
  13. 前記ビット幅処理部は、前記係数を、前記係数の周波数帯域に応じたビット幅にクリップ処理する
    請求項12に記載の画像処理装置。
  14. 前記水平1次元変換部により前記水平方向の直交変換が行われて得られた、互いに同一の周波数帯域同士の係数を減算する減算部と、
    前記減算部による減算により得られた差分値と、前記減算に用いた一方の係数とを加算する加算部と
    をさらに備え、
    前記ビット幅処理部は、前記減算により得られた前記差分値に対して、前記差分値のビット幅を低減させるようにクリップ処理し、
    前記記憶部は、前記減算に用いられた一方の係数と、前記ビット幅処理部によりビット幅が低減された前記差分値を、前記中間データとして記憶し、
    前記加算部は、前記記憶部から読み出した、前記減算に用いられた一方の係数と、ビット幅が低減された前記差分値を加算して、前記減算に用いられた他方の係数を復元し、
    前記垂直1次元変換部は、前記減算に用いられた一方の係数、および、前記加算部による加算により復元された、前記減算に用いられた他方の係数に対して、垂直方向の直交変換を行う
    請求項12に記載の画像処理装置。
  15. 前記ビット幅処理部は、前記差分値を、所定のビット幅にクリップ処理する
    請求項14に記載の画像処理装置。
  16. 前記ビット幅処理部は、前記差分値を、前記差分値の周波数帯域に応じたビット幅にクリップ処理する
    請求項14に記載の画像処理装置。
  17. 前記水平1次元変換部と前記垂直1次元変換部は、互いに異なる変換方式で直交変換を行う
    請求項12に記載の画像処理装置。
  18. 画像処理装置の画像処理方法であって、
    水平1次元変換部が、画像データに対して、水平方向の直交変換を行い、
    ビット幅処理部が、前記水平方向の直交変換が行われて得られた係数に対して、ビット幅を低減させるようにクリップ処理を行い、
    記憶部が、前記クリップ処理が行われて、ビット幅が低減された前記係数を、中間データとして記憶し、
    垂直1次元変換部が、記憶される前記中間データを垂直方向に1ラインずつ読み出し、垂直方向の直交変換を行う
    画像処理方法。
JP2011112314A 2011-05-19 2011-05-19 画像処理装置および方法 Withdrawn JP2012244397A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011112314A JP2012244397A (ja) 2011-05-19 2011-05-19 画像処理装置および方法
US14/114,259 US20140056535A1 (en) 2011-05-19 2012-05-11 Image processing device and method
CN201280022963.0A CN103535041A (zh) 2011-05-19 2012-05-11 图像处理装置和方法
PCT/JP2012/062088 WO2012157541A1 (ja) 2011-05-19 2012-05-11 画像処理装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011112314A JP2012244397A (ja) 2011-05-19 2011-05-19 画像処理装置および方法

Publications (1)

Publication Number Publication Date
JP2012244397A true JP2012244397A (ja) 2012-12-10

Family

ID=47176861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011112314A Withdrawn JP2012244397A (ja) 2011-05-19 2011-05-19 画像処理装置および方法

Country Status (4)

Country Link
US (1) US20140056535A1 (ja)
JP (1) JP2012244397A (ja)
CN (1) CN103535041A (ja)
WO (1) WO2012157541A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016506160A (ja) * 2012-12-19 2016-02-25 クゥアルコム・インコーポレイテッドQualcomm Incorporated 縮小されたラインバッファを有するデブロッキングフィルタ
JP2020088467A (ja) * 2018-11-19 2020-06-04 株式会社リコー 符号化装置、復号化装置、符号化方法、復号化方法、符号化プログラム及び復号化プログラム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2521349A (en) * 2013-12-05 2015-06-24 Sony Corp Data encoding and decoding
CN104320668B (zh) * 2014-10-31 2017-08-01 上海交通大学 Hevc/h.265的dct变换和反变换的simd优化方法
EP3447652A4 (en) * 2016-04-19 2019-05-29 Nec Corporation DIGITAL FILTER DEVICE, METHOD FOR DIGITAL FILTERING AND PROGRAMMING MEDIUM
EP4300968A1 (en) * 2016-05-13 2024-01-03 Sony Group Corporation Image processing device and method
JP2019020431A (ja) * 2017-07-11 2019-02-07 ソニーセミコンダクタソリューションズ株式会社 固体撮像装置及び情報処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0818972A (ja) * 1994-07-04 1996-01-19 Nippon Telegr & Teleph Corp <Ntt> 画像復号化方法
JP3591994B2 (ja) * 1996-08-01 2004-11-24 日本電気エンジニアリング株式会社 直交変換符号化方式
JP3667481B2 (ja) * 1997-02-10 2005-07-06 日本電気エンジニアリング株式会社 直交変換符号化用適応量子化方式
US8010711B2 (en) * 2007-01-26 2011-08-30 Digital Video Chip, Llc Universal multimedia

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016506160A (ja) * 2012-12-19 2016-02-25 クゥアルコム・インコーポレイテッドQualcomm Incorporated 縮小されたラインバッファを有するデブロッキングフィルタ
JP2020088467A (ja) * 2018-11-19 2020-06-04 株式会社リコー 符号化装置、復号化装置、符号化方法、復号化方法、符号化プログラム及び復号化プログラム
JP7259280B2 (ja) 2018-11-19 2023-04-18 株式会社リコー 符号化装置、符号化方法及び符号化プログラム

Also Published As

Publication number Publication date
CN103535041A (zh) 2014-01-22
US20140056535A1 (en) 2014-02-27
WO2012157541A1 (ja) 2012-11-22

Similar Documents

Publication Publication Date Title
JP6419113B2 (ja) 画像処理装置および方法、並びに、プログラム
JP6521013B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP5942990B2 (ja) 画像処理装置および方法
JP2013150173A (ja) 画像処理装置および方法
JP5982734B2 (ja) 画像処理装置および方法
WO2013002110A1 (ja) 画像処理装置および方法
WO2012157541A1 (ja) 画像処理装置および方法
WO2013065570A1 (ja) 画像処理装置および方法
JPWO2014050676A1 (ja) 画像処理装置および方法
WO2013108688A1 (ja) 画像処理装置および方法
JPWO2014050731A1 (ja) 画像処理装置および方法
WO2013051453A1 (ja) 画像処理装置および方法
WO2013065567A1 (ja) 画像処理装置および方法
JP2013012840A (ja) 画像処理装置および方法
JP6217997B2 (ja) 画像処理装置および方法
JP2018029347A (ja) 画像処理装置および方法
WO2013002111A1 (ja) 画像処理装置および方法
WO2012157539A1 (ja) 画像処理装置および方法
JP2013150124A (ja) 画像処理装置および方法
JP2019146225A (ja) 画像処理装置および方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140805