JP4745865B2 - 符号化装置および方法 - Google Patents

符号化装置および方法 Download PDF

Info

Publication number
JP4745865B2
JP4745865B2 JP2006053619A JP2006053619A JP4745865B2 JP 4745865 B2 JP4745865 B2 JP 4745865B2 JP 2006053619 A JP2006053619 A JP 2006053619A JP 2006053619 A JP2006053619 A JP 2006053619A JP 4745865 B2 JP4745865 B2 JP 4745865B2
Authority
JP
Japan
Prior art keywords
bit
type information
path
bits
processed
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.)
Expired - Fee Related
Application number
JP2006053619A
Other languages
English (en)
Other versions
JP2007235443A (ja
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 富士通セミコンダクター株式会社
Priority to JP2006053619A priority Critical patent/JP4745865B2/ja
Publication of JP2007235443A publication Critical patent/JP2007235443A/ja
Application granted granted Critical
Publication of JP4745865B2 publication Critical patent/JP4745865B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/436Methods 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 using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/647Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Description

本発明は、符号化装置および方法に関し、特に、JPEG(Joint Photographic Experts Group)2000規格を採用した符号化装置および方法に関する。

画像圧縮の規格としてJPEG2000が知られている。JPEG2000の符号化方式の特徴の1つは、ウェーブレット変換(Wavelet Transform)して得たウェーブレット係数に対して、係数ビットモデリング処理と算術符号化処理を行う点にある。このようにして得られた符号化データは、ストリーム生成器を介してビットストリームとして出力される。

例えば非特許文献1には、コードブロックを2回スキャンするだけで、そのコードブロックの符号化を行うことが可能なアルゴリズムが示されている。
また、この他にも、係数ビットモデリング処理を高速に行う技術が、例えば、特許文献1、2、3および4に開示されている。
Novel Word-Level Algorithm of Embedded Block Coding in JPEG2000, Hung-Chi Fang, Tu-Chih Wang, Yu-Wei Chang, Ya-Yuh Shih, and Liang-Gee Chen, Graduate Institute of Electronics Eng. And Dept. of Electrical Eng. National Taiwan University 特開2005−341368号公報「ビットモデリング演算器」 特開2003−8906号公報「ビットモデリングの処理方法及びそれを用いる処理回路」 特開2003−32496号公報「画像符号化装置および方法」 特開2002−159009号公報「エントロピ符号化及び復号化方法とその装置」

本発明の課題は、ビットモデリング処理を高速に行うことを可能とした符号化装置および方法を提供することである。

本発明の第1態様の符号化装置は、ウェーブレット変換の処理結果のウェーブレット係数を基に、符号化データを出力する符号化装置において、前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに「1」となるビットであるか、その初めに「1」となるビットよりMSB側のビットであるか、その初めに「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ決定部と、それぞれのビットに対して決定されたタイプ情報を、それぞれのビットの深度毎にバッファリングするバッファ部と、バッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報を決定するパス決定部と、前記バッファ部から出力されたタイプ情報と、そのタイプ情報に対して決定されたパス情報を基に、コンテキストを生成するコンテキスト生成部と、生成されたコンテキストを基に、算術符号化を行う算術符号化部を備えることを特徴とする符号化装置である。

ここで、タイプ決定部によって、ウェーブレット係数の各ビットを深さ方向に並列に処理して得たタイプ情報が、それぞれのビットの深度毎にバッファ部にバッファリングされ、そのバッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報がパス決定部によって決定される。そして、そのタイプ情報に対して決定されたパス情報を基に、コンテキスト生成部によってコンテキストが生成される。

このため、バッファ部以降の処理をビットプレーン毎に並列に行うことが可能となり、ビットモデリング処理を高速に行うことができる。
第1態様の符号化装置において、前記タイプ決定部は、コードブロックを構成するそれぞれのビットプレーンの対応するストライプ毎に備えられ、前記バッファ部、パス決定部、コンテキスト生成部は、ビットプレーン毎に、かつ、そのビットプレーン内のストライプ毎に備えられ、前記タイプ決定部に対して、そのストライプのビットプレーン内での位置に応じて、ウェーブレット係数の各ビットを深さ方向に並列に入力する処理の開始時刻をずらしてもよい。

このようにすれば、1つのビットプレーンを処理する場合に、ストライプを略並列に処理できるので、ビットモデリング処理をさらに高速に行うことができる。
本発明の第2態様の符号化装置は、ウェーブレット変換の処理結果である有意状態変数で示されたウェーブレット係数を基に、符号化データを出力する符号化装置において、前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに有意となるビットであるか、その初めに有意となるビットよりMSB側のビットであるか、その初めに有意となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ決定部と、それぞれのビットに対して決定されたタイプ情報を、それぞれのビットの深度毎にバッファリングするバッファ部と、バッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報を決定するパス決定部と、前記バッファ部から出力されたタイプ情報と、そのタイプ情報に対して決定されたパス情報を基に、コンテキストを生成するコンテキスト生成部と、生成されたコンテキストを基に、算術符号化を行う算術符号化部を備えることを特徴とする符号化装置である。

本発明の第3態様の符号化方法は、ウェーブレット変換の処理結果のウェーブレット係数を基に、符号化データを出力する符号化方法において、前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに「1」となるビットであるか、その初めに「1」となるビットよりMSB側のビットであるか、その初めに「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ決定ステップと、それぞれのビットに対して決定されたタイプ情報を、それぞれのビットの深度毎にバッファリングするステップと、バッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報を決定するパス決定ステップと、前記バッファ部から出力されたタイプ情報と、そのタイプ情報に対して決定されたパス情報を基に、コンテキストを生成するコンテキスト生成ステップと、生成されたコンテキストを基に、算術符号化を行う算術符号化ステップを備えることを特徴とする符号化方法である。
本発明の他の態様の符号化装置は、ウェーブレット変換の処理結果のウェーブレット係数を基に符号化データを出力する符号化装置において、前記ウェーブレット係数が量子化された値の各ビットがMSB側からLSB側に深さ方向に並列に入力され、前記各ビットに対して、MSB側から見て初めに「1」となるビットであるか、前記「1」となるビットよりMSB側のビットであるか、前記「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ情報決定部と、前記決定された各タイプ情報を基に処理対象のビットに対するパス情報を決定するパス決定部と、前記各タイプ情報と前記パス情報を基にコンテキストを生成するコンテキスト生成部と、前記コンテキストを基に算術符号化を行う算術符号化部とを備えることを特徴とする符号化装置である。
本発明の更に他の態様の符号化装置は、ウェーブレット変換の処理結果である有意状態変数で示されたウェーブレット係数を基に符号化データを出力する符号化装置において、前記ウェーブレット係数が量子化された値の各ビットがMSB側からLSB側に深さ方向に並列に入力され、前記各ビットに対して、MSB側から見て初めに有意となるビットであるか、前記有意となるビットよりMSB側のビットであるか、前記有意となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ情報決定部と、前記決定された各タイプ情報を基に処理対象のビットに対するパス情報を決定するパス決定部と、前記各タイプ情報と前記パス情報を基にコンテキストを生成するコンテキスト生成部と、前記コンテキストを基に算術符号化を行う算術符号化部とを備えることを特徴とする符号化装置である。
本発明の他の態様の符号化方法は、ウェーブレット変換の処理結果のウェーブレット係数を基に符号化データを出力する符号化方法において、前記ウェーブレット係数が量子化された値の各ビットがMSB側からLSB側に深さ方向に並列に入力され、前記各ビットに対して、MSB側から見て初めに「1」となるビットであるか、前記「1」となるビットよりMSB側のビットであるか、前記「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ情報決定ステップと、前記決定された各タイプ情報を基に処理対象のビットに対するパス情報を決定するパス決定ステップと、前記各タイプ情報と前記パス情報を基にコンテキストを生成するコンテキスト生成ステップと、前記コンテキストを基に算術符号化を行う算術符号化ステップとを備えることを特徴とする符号化方法である。

本発明によれば、バッファ部以降の処理をビットプレーン毎に並列に行うことが可能となり、ビットモデリング処理を高速に行うことができる。

以下、本発明の実施の形態を、図面を参照しながら詳細に説明する。
なお、本実施形態の符号化装置は、JPEG(Joint Photographic Experts Group)2000規格を採用したものである。

図1は、JPEG2000規格を採用した符号化装置を示す図である。
図1において、ウェーブレット変換器11は、画像データを入力し、その入力した画像データに対してウェーブレット変換を行い、その処理結果のウェーブレット係数をエントロピ符号化器12に出力する。

エントロピ符号化器12は、ビットモデリング演算器13と算術符号化器14から構成される。エントロピ符号化器12は、画素(ウェーブレット係数)が量子化された値の各ビットが、MSB(Most Significant Bit)側からLSB(Least Significant Bit)側に深さ方向に格納された複数のビットプレーン(コードブロック)をウェーブレット変換の処理結果として受け取り、それらビットプレーンを基に、ビットモデリング処理を行って、コンテキストおよびシンボル(ウェーブレット係数のそれぞれのビット値)を処理結果として算術符号化器14に渡す。なお、ビットプレーンとは、同一深度のビットを集めたプレーンのことである。

算術符号化器14は、そのコンテキストとシンボルに対して算術符号化を行う。算術符号化されたデータ(符号化データ)は、ストリーム生成器15を介してビットストリームとして出力される。

本実施形態の処理方法と比較する意味で、以下に従来のビットモデリングの処理方法を説明する。
従来の場合、ビットモデリング処理においては、ビットプレーン上の各ビットのパス情報を決定し、そのパス情報と、処理対象とするビットの近傍8ビットの有意状態変数(有意または非有意の値を持つ。通常、有意=「1」、非有意=「0」に対応させる)の値を基に、その処理対象とするビットのコンテキストを算出している。

ここで、有意状態とは、量子化されたウェーブレット係数の各ビットをMSB側からLSB側に見ていくときに、初めに、「1」の値を持つビットよりMSB側の各ビットを非有意、それよりLSB側の各ビットを有意とすることで、それぞれのビットに対して定義される状態のことである。

なお、初めに、「1」の値を持つビットは、有意にも非有意にもなり得る。すなわち、そのビットの8近傍に含まれるビットのうちで、そのビットより前に処理を行ったビット中に、パス情報が(後述する)SPパスに分類されたビットが(少なくとも1つ)ある場合は有意、それ以外は非有意になる。

パスには、以下の3種類がある。
SPパス(Significance Propagation Pass)・・・量子化されたウェーブレット係数の各ビットをMSB側からLSB側に見ていくときに、初めに、「1」の値を持つ深度のビットプレーンにおいて、その「1」の値を持ったビット(処理対象のビット)の図2に示すような8近傍中に少なくとも1つ有意であるビットがある場合、その「1」の値を持ったビットは、SPパスに分類される。なお、初めに、「1」の値を持つビットがその8近傍中に含まれている場合は、そのビットが処理対象とするビットより前に処理されたビットであれば、そのビットがSPパスに分類されていれば有意、それ以外、すなわち、後に処理されるビットであった場合や、前に処理されるビットであっても、そのビットのパス情報がSPパス以外のパスに分類されている場合は、非有意となる。
MRパス(Magnitude Refinement Pass)・・・処理対象のウェーブレット係数のビットが有意であれば、そのウェーブレット係数のビットは、MRパスに分類される。
CLパス(Cleanup Pass)・・・SPパス、MRパスに分類されなかったウェーブレット係数のビットは、CLパスに分類される。

図3Aは、従来のビットモデリング処理の概要を説明する図である。
従来のビットモデリング処理では、ビットプレーンをMSB側からLSB側に1プレーンずつ処理する。図3Aの有意RAM21は、処理するビットプレーン内のそれぞれの(係数)ビットに対応する有意状態を保持する。そして、図3Bに示すように、有意RAM21に保持される、それぞれのビットプレーンに対して、SPパスの決定、決定されたパス情報に基づくコンテキストの生成、MRパス情報の決定、決定されたパス情報に基づくコンテキストの生成、CLパス情報の決定、決定されたパス情報に基づくコンテキストの生成が行われる。ただし、最もMSB側のビットプレーンでは、CLパス情報の決定、および、決定されたパス情報に基づくコンテキストの生成しか行わない。

すなわち、図3AのSP符号化器22は、ウェーブレット係数の処理対象とするビットを入力するとともに、そのビットの有意状態、および、そのビットの8近傍の有意状態を有意RAMから取得する。また、SP符号化器は、その8近傍に少なくとも1つ有意なビットが含まれていた場合、処理対象のビットのパス情報を「SPパス」に決定するとともに、その決定したパス情報および8近傍有意状態を用いてコンテキストを生成する。

MR符号化器23は、ウェーブレット係数の処理対象とするビットを入力するとともに、そのビットの有意状態を有意RAMから取得して、そのビットの有意状態が「有意」であればそのビットのパス情報を「MRパス」に決定する。また、MR符号化器23は、その決定したパス情報および8近傍有意状態を用いてコンテキストを生成する。

CL符号化器24は、SPパス、MRパスに分類されなかったウェーブレット係数のビットを「CLパス」として決定するとともに、その決定したパス情報および8近傍有意状態を用いてコンテキストを生成する。

再び、本実施形態の説明に戻る。
上述したように、有意状態、SPパスは、相互に関連し合って、他方の判定に影響を及ぼす。そして、これら有意状態、SPパスは、ビットの処理順序にも依存して定義される量である。このように、SPパスに関連する処理は、ビットモデリング全体の処理の中で、他の部分より複雑である。

本実施形態では、有意状態に近い情報であって、その有意情報より容易に分類可能なタイプ情報を定義する。そして、ウェーブレット係数の各ビットに対して、タイプ情報を算出する。算出されたタイプ情報は、バッファにバッファリングされる。そして、処理対象とするビットのタイプ情報と、その処理対象とするビットの8近傍のビットのタイプ情報と、その処理対象とするビットの8近傍に属するビットであって、その処理対象とするビットより前に処理されたビットのパス情報を用いて、その処理対象とするビットの8近傍の有意状態を一時的に生成して、その生成した8近傍の有意状態と、その処理対象とするビットのタイプ情報から、その処理対象とするビットのパス情報を決定する。

そして、その数サイクル後、再び、処理対象とするビットの8近傍の有意状態を一時的に生成して、その生成した有意情報と、パス情報と、タイプ情報を用いて、処理対象とするビットのコンテキストを生成する。このように本実施形態では、SPパスに関連する処理に引きずられて、ビットモデリングの処理全体が遅延することをなるべく避けるようにしている。

なお、ビットモデリング処理は、図4に示すようなコードブロック毎に実行される。コードブロックは、ウェーブレット係数の各ビットを深さ方向に階層的に配置した直方体である。このコードブロックは、ウェーブレット係数の各ビットのうち、同一深度のビットを集めたビットプレーンに分割される。

それぞれのビットプレーンに対して、ビットモデリング処理を行う場合、図5に示すように、そのビットプレーンの左上のビットから縦方向(下方向)に4ビット処理する。そして、その左上のビットの1つ右のビットに移動して、そこから、縦方向(下方向)に4ビット処理する。このようにして、ビットプレーンの上端のビットを始点として下方向への4ビットの処理をそのビットプレーンの右端まで行ったら、続いて、そのビットプレーンの左端の上から5番目のビットから下方向に4ビット処理する。そして、左端の上から5番目のビットの1つだけ右のビットに移動して、そこから下方向に4ビット処理する。このように走査を繰り返すことで、1つのビットプレーン内のビットを順次処理する。

すなわち、ビットプレーンは、このような4ビットの幅を持つ帯状のストライプに分割され、そのストライプを順に走査することによって、そのビットプレーンのビットモデリング処理は行われる。

図6は、本発明の一実施形態のビットモデリング演算器の全体構成を示すブロック図である。
図6において、ビットモデリング演算器30は、コードブロックを構成するそれぞれのビットプレーンの対応するストライプから出力されたウェーブレット係数の各ビットを深さ方向に並列に入力して、各ビットに対するタイプ情報を出力するタイプ分類器31、31、31、・・・31(nは、ビットプレーンを構成するストライプの数)、それぞれのタイプ分類器から出力されたタイプ情報をバッファリングするとともに、そのバッファリングされたタイプ情報に対応するパス情報を決定するバッファ部331,m、331,m−1・・・331,0、332,m、332,m−1、・・・332,0、333,m、333,m−1、・・・333,0、・・・、33n,m、33n,m−1、・・・、33n,0、それぞれのバッファ部から出力されたタイプ情報およびパス情報を用いて、そのタイプ情報に対応するコンテキストを生成するコンテキスト生成部341,m、341,m−1・・・341,0、342,m、342,m−1、・・・342,0、343,m、343,m−1、・・・343,0、・・・、34n,m、34n,m−1、・・・、34n,0、を備える。なお、ウェーブレット係数は、(m+1)ビットとしている。また、タイプ分類器に対して、そのストライプのビットプレーン内での位置に応じて、ウェーブレット係数の各ビットを深さ方向に並列に入力する処理の開始時刻をずらしている。

すなわち、パス分類器において処理しているストライプのタイプ情報について、8近傍の有意状態を求めるに際して、その8近傍に含まれていて、前処理となるビットを1つ前のストライプから取得する場合に、その前処理となるビットに対してはすでに1つ前のストライプにおいてパス情報が決定されているように、その処理の開始時刻をストライプ毎にずらしている。

図7は、図6のうちで、1つのストライプについての処理を行うユニットを示した図である。図7は、図6で上から見ていたいずれかの行を横から見た場合に相当する。
図7において、タイプ分類器41は、ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対するタイプ情報を出力する。

タイプ分類器41は、このユニットが処理するストライプのビットプレーン上の位置(この場合、ビットプレーン内のk番目のストライプである)に応じて、所定量だけ、開始時刻をずらして入力された、ウェーブレット係数の各ビット(m、m−1、・・・、1、0)に対して、それぞれのタイプ情報を求めて出力する。

タイプ分類器41は、ウェーブレット係数の各ビットに対して、図8Aに示すように、MSB側から見て、初めに「1」となるビットであるか(タイプ「Y」)、その初めに「1」となるビットよりMSB側のビットであるか(タイプ「X」)、その初めに「1」となるビットより1つだけLSB側のビットであるか(タイプ「Z’」)、または、その1つだけLSB側のビットよりもさらにLSB側のビットであるか(タイプ「Z」)によって、入力した各ビットに対してタイプ情報を決定する。

図8Bは、タイプ分類器41のハード構成を示す図である。
図8Bにおいて、タイプ分類器41は、タイプ選択部47k,m、47k,m−1、・・・、47k,0を備える。

タイプ選択部47k,mは、初期値としてのタイプ情報「X」と、最もMSB側のウェーブレット係数のビット(m番目のビット)を入力として受け取り、その最もMSB側のウェーブレット係数のビットに対するタイプ情報を出力する。タイプ選択部47k,mの出力は、後段のストライプバッファにバッファリングされるとともに、最もMSB側のビットより1つだけLSB側のビット(m−1番目のビット)を処理するタイプ選択部47k,m−1にも入力される。

タイプ選択部47k,m−1は、そのタイプ選択部47k,mの出力と、m−1番目のビットを入力して、そのm−1番目のビットに対するタイプ情報を出力する。
このようにして、最もLSB側のビット(0番目のビット)まで、タイプ情報が出力される。

図8Cは、図8Bのそれぞれのタイプ選択部が内蔵するロジックを示した表である。
図8Cに示すように、前段の出力が「X」である場合は、入力したビットが「0」ならば、「X」を出力し、入力したビットが「1」ならば、「Y」を出力する。

また、前段の出力が「Y」である場合は、入力したビットの値によらず「Z’」を出力する。また、前段の出力が「Z’」である場合は、入力したビットの値によらず「Z」を出力する。また、前段の出力が「Z」である場合は、入力したビットの値によらず「Z」を出力する。

このように、タイプ分類処理では、コードブロックを縦切りにして、それぞれのビットプレーンの対応するストライプのビットを深さ方向に並列に処理するとともに、バッファ部以降の処理では、コードブロックを横切りにして、それぞれのビットプレーンを並列に処理している。また、個々のビットプレーンに含まれるそれぞれのストライプの位置に応じて、後述の処理順を崩さないように、あらかじめ、タイプ分類処理の開始時刻をずらして、ビットプレーン内のストライプについても略並列に処理している。これにより、高速なビットモデリング処理が実現可能となる。

図9は、バッファ部が備えるストライプバッファの構成をより詳細に示す図である。
ストライプバッファ50は、処理順で連続した複数のビットに対応するタイプ情報をバッファリングするバッファ(FIFO、First-In First-Out)である。このストライプバッファ50は、複数個(図では、32個、通常、4の倍数)の遅延器(図では、四角により表示)をチェーン状に連結したものである。

図10Aに示すように、タイプ分類器によって処理されたビットに対応するタイプ情報「0」(この番号は、遅延器に格納されるデータの識別子として使用される場合もあれば、遅延器自身に対する識別子として使用される場合もある)が、先頭の遅延器に1サイクル目に入力され、続く2サイクル目には、図10Bに示すように、先頭の遅延器にラッチされたタイプ情報「0」が2番目の遅延器にラッチされるとともに、次のビットに対応するタイプ情報「1」が先頭の遅延器にラッチされる。

このようにして、例えば、32サイクル目には、図9に示すように、「0」〜「31」までの32個のタイプ情報がストライプバッファ50にラッチされる。
なお、図9において、符号51で示される領域の中心の遅延器にラッチされたビット(タイプ情報)に対してパス情報が決定される。

また、図9の符号52で示される領域の中心の遅延器にラッチされたビット(タイプ情報)に対してコンテキストが生成される。
図11Aは、ビットプレーン上の連続する3つのストライプのビットの一例を示す図である。この例では、対象とするビットプレーンは、左右方向に8ビットの幅を持っている。図11Aにおいて、破線内に含まれるビット、すなわち、ストライプの中央の2行に含まれるビットは、図11Bの符号61に示されるように、そのビットが処理対象となっても、そのビットの8近傍がストライプ内に含まれるようなビットである。このようなビットを処理対象とするときは、そのストライプ内での処理順によって、その処理対象とするビットの8近傍に含まれるビットに対してその処理対象のビットより前に処理されるビット(前処理のビット)と後に処理されるビット(後処理のビット)が決定される。例えば、図11Bの符号61で示される領域では、処理対象ビット「41」に対して、「36」、「37」、「38」、「40」が前処理のビットであり、「42」、「44」、「45」、「46」が後処理のビットである。

一方、図11Aにおいて、破線内に含まれないビット、すなわち、ストライプの両端の行に含まれるビットは、図11Bの符号62および63に示されるように、そのビットが処理対象となった場合に、そのビットの8近傍がストライプ間にまたがるようなビットである。このようなビットを処理対象とするときは、以下の2通りの場合が存在する。
1.前のストライプに8近傍の一部が含まれる場合。この場合は、前のストライプ(ここでは、8近傍のうちの3つを含むストライプを「前のストライプ」と呼ぶ)に含まれるビットの方が、処理対象のビットが含まれるストライプより、前に処理される(ことになっている)ので、その処理対象とするビットの8近傍に含まれるビットのうちで、前のストライプに含まれる3ビットは、その処理対象のビットより前に処理されるビットになる。例えば、図11Bの符号62で示される領域では、処理対象ビット「52」に対して、「19」、「23」、「27」、「48」、「49」が前処理のビットであり、「53」、「56」、「57」が後処理のビットである。
2.後のストライプに8近傍の一部が含まれる場合。この場合は、後のストライプ(ここでは、8近傍のうちの3つを含むストライプを「後のストライプ」と呼ぶ)に含まれるビットの方が、処理対象のビットが含まれるストライプより、後に処理される(ことになっている)ので、その処理対象とするビットの8近傍に含まれるビットのうちで、後のストライプに含まれる3ビットは、その処理対象のビットより後に処理されるビットになる。例えば、図11Bの符号63で示される領域では、処理対象ビット「51」に対して、「46」、「47」、「50」が前処理のビットであり、「54」、「55」、「76」、「80」、「84」が後処理のビットである。

図12Aは、図11Aの各ビットに対するタイプ情報がストライプバッファ65、65、65に格納された状態を示している。
図12Bは、図11Bに符号61、62および63で示される処理領域が、ストライプバッファ上にどのように配置されるかを示す図である。

図11Bの符号61で示される領域(「41」のビットを処理対象とする8近傍)は、図12Bにおいても、1つのストライプバッファ内の領域66に保持されている。
これに対して、図11Bにおいて、2つのストライプ間にまたがっていた処理領域(「52」のビットを処理対象とする8近傍、「51」のビットを処理対象とする8近傍)は、図12Bにおいては、2つのストライプバッファに分断されて保持されている。例えば、図11Bの符号62の領域内のビットに対するタイプ情報は、ストライプバッファ65内の領域67bとストライプバッファ65内の領域67aに保持され、図11Bの符号63の領域内のビットに対するタイプ情報は、ストライプバッファ65内の領域68aとストライプバッファ65内の領域68bに保持される。

すなわち、ストライプバッファにバッファリングされた処理対象とするタイプ情報に対して、パス情報を決定する際に、その処理対象とするタイプ情報に対する8近傍のタイプ情報を使用する場合、少なくともその一部は、場合によっては、近接するストライプバッファから取得する必要がある。パス情報の決定に使用される前処理のパス情報についても同様である。

図13は、バッファ部80の構成を示すブロック図である。図13に示すように、バッファ部80は、ストライプバッファ81と、8近傍有意状態生成部85および87と、パス決定部86を備える。

ストライプバッファ81上に設定された領域82の中心の遅延器にラッチされたタイプ情報に対して、パス決定処理がパス決定部86によって実行される。
パス決定処理においては、タイプ情報が「X」に分類されたビットについては処理を行わない。タイプ情報が「X」のビットは常に「CLパス」に分類されるためである。また、タイプ決定処理においては、タイプ情報が「Z」または「Z’」に等しいビットのパス情報を「MRパス」に決定する。そして、タイプ情報が「X」、「Z」、「Z’」のいずれでもなく、8近傍の有意状態がすべて「0(非有意)」であるもの、すなわち、タイプ情報が「Y」で、その8近傍の有意状態がすべて「0」であるものを「CLパス」に決定する。

残り、すなわち、タイプ情報が「Y」で、その8近傍の有意状態のうち、少なくとも1つが「1(有意)」であるものを「SPパス」に決定する。
このように、パス決定処理において、処理対象とするビットの8近傍の有意状態が参照されているため、図13に示すように、8近傍有意状態生成部85は、処理対象とするビットに対する8近傍の有意状態を生成している。

なお、実際には、8近傍有意状態生成部85は、処理対象のビットのタイプ情報が「Y」である場合、すなわち、そのビットプレーン上で、MSB側から見て初めてビットの値が「0」から「1」に変わった場合に、そのパス情報の決定での使用を前提として、8近傍の有意状態を生成している。

例えば、図13の遅延器「9」のタイプ情報が「Y」である場合、8近傍有意状態生成部85は、図14Aおよび図14Bに示すような表を参照して、処理対象とするビットの8近傍の有意状態を生成する。

図14Bは、処理対象ビット「C」とその8近傍「NB(0)」〜「NB(7)」を示した図である。
図14Aは、図14Bに示す8近傍のビットのタイプ情報と、その8近傍のそれぞれのビットが、処理対象とするビット「C」よりも前に処理されるビットであるか後に処理されるビットであるかを基に、処理対象とするビット「C」に対する8近傍の有意/非有意を決定する表である。この表からも明らかなように、8近傍のビットのタイプ情報が、「X」であれば処理順に関係なく有意状態は「非有意」となり、また、8近傍のビットのタイプ情報が、「Z」または「Z’」であれば処理順に関係なく有意状態は「有意」となる。また、8近傍のビットのタイプ情報が、「Y」である場合も、そのビットが処理対象とするビット「C」よりも後に処理される場合は、有意状態は「非有意」となる。

8近傍のビットのタイプ情報が「Y」であって、そのビットが処理対象のビット「C」より前に処理される場合、その前に処理されたビットのパス情報が「SPパス」であれば、処理対象のビット「C」の有意状態は「有意」となり、その前に処理されたビットのパス情報が「SPパス以外のパス」であれば、処理対象のビット「C」の有意状態は「非有意」となる。図14Aの表が図13の8近傍有意状態生成部85および87に内蔵されているということができる。

図15は、パス決定部86によって実行されるパス決定処理のフローチャートである。
図15において、まず、ステップS101で、パス決定部86は、処理対象とするビットのタイプ情報(遅延器「9」にラッチされた値)が「X」に等しいかどうかを判定する。

ステップS101で処理対象とするビットのタイプ情報が「X」に等しいと判定された場合、一連の処理を終了する。この場合、処理対象とするビットのタイプ情報は初期化されたままである。

一方、ステップS101で処理対象とするビットのタイプ情報が「X」に等しくないと判定された場合、ステップS102において、そのタイプ情報が「Z」または「Z’」に等しいかどうかが判定される。

ステップS102で処理対象とするビットのタイプ情報が「Z」または「Z’」に等しいと判定された場合、ステップS103において、その処理対象とするビットのタイプ情報が「MRパス」に決定されて、一連の処理が終了する。

一方、ステップS102で処理対象とするビットのタイプ情報が「Z」および「Z’」に等しくないと判定された場合、ステップS104において、図13の8近傍有意状態生成部85によって生成された、8近傍の有意状態(8 Neighbor Significant State、図13中では、8NB−SSと略記)がすべて「0(非有意)」であるかどうかが判定される。

ステップS104で8近傍の有意状態がすべて「0(非有意)」と判定された場合、ステップS105において、その処理対象とするビットのタイプ情報が「CLパス」に決定されて、一連の処理が終了する。

一方、ステップS104で8近傍の有意状態において、少なくとも1つ「1(有意)」なビットがあると判定された場合、ステップS106において、その処理対象とするビットのタイプ情報が「SPパス」に決定されて、一連の処理が終了する。

なお、本実施形態においては、ビットプレーン内において、ストライプからのタイプ情報のストライプバッファへの出力は、1つ前のストライプのタイプ情報がその1つ前のストライプバッファへ出力されてから8サイクルだけずらして(遅延して)開始される。

このようにすれば、処理対象とするビットのパス情報の決定に際して、8近傍の有意状態を参照する必要がある場合でも、その8近傍の有意状態の生成に用いる前処理のビットに対するパス情報が決定済みであることが保障できる。

図13のパス決定部86は、ストライプバッファ81上の領域82の中心の遅延器「9」のタイプ情報に対するパス情報を決定する。この遅延器「9」にラッチされたタイプ情報に対応するビットがストライプ上で、中央の2行に位置するか、他のストライプと接する端部の2行に位置するかによって、8近傍有意状態生成部85が、その処理対象のタイプ情報に対する8近傍として参照するビットが変更される。

ストライプバッファ81上の領域84は、自身の1つ後(1つ下)のストライプバッファに渡す8近傍のうちの3ビットを示す領域であり、領域83は、自身の1つ前(1つ上)のストライプバッファに渡す8近傍のうちの3ビットを示す領域である。

すなわち、上のストライプに接する位置に処理対象のビットがある場合は、1つ上のストライプバッファの領域84に対応する位置から受け取っているタイプ情報(およびそのパス情報)を選択する制御が実行され、下のストライプに接する位置に処理対象のビットがある場合は、1つ下のストライプバッファの領域83に対応する位置から受け取っているタイプ情報を選択する制御が実行される。

図12Aおよび図16を参照して図13の8近傍有意状態生成部85の入力側で行われる8近傍の選択処理について説明する。
図12Aのストライプバッファ65の遅延器「54」内のタイプ情報を処理対象とする。このとき、図16に示すように、遅延器「59」、「55」、「51」の領域82a、遅延器「58」、「54」、「50」の領域82b、遅延器「57」、「53」、「49」の領域82c、1つ下のストライプバッファ653から受け取る、遅延器「95」、「91」、「87」の領域83’、1つ上のストライプバッファ651から受け取る、遅延器「21」、「17」、「13」の領域84’、が、遅延器「54」に対する8近傍の領域を決定する際の候補となる。

すなわち、図12Aの遅延器「54」のタイプ情報に対応するビットがストライプの中央の2行に含まれていれば、図16の領域82a、82b、82cを合わせた領域が、遅延器「54」のタイプ情報に対応する8近傍のタイプ情報を保持する領域となる。

また、図12Aの遅延器「54」のタイプ情報に対応するビットがストライプの上端の行に含まれていれば、図16の領域82a、82b、84’を合わせた領域が、遅延器「54」のタイプ情報に対応する8近傍のタイプ情報を保持する領域となる。

また、図12Aの遅延器「54」のタイプ情報に対応するビットがストライプの下端の行に含まれていれば、図16の領域82b、82c、83’を合わせた領域が、遅延器「54」のタイプ情報に対応する8近傍のタイプ情報を保持する領域となる。

図17、図18、図19は、図11Bのビット「41」、「51」、「52」がストライプバッファにおいて処理対象となった場合の8近傍のタイプ情報として使用する領域を示した図である。

図17のサイクルでは、ストライプバッファ65の処理対象の遅延器に、図11Bのビット「41」に対応するタイプ情報がラッチされている。この場合、ビット「41」は、ストライプの中央の2行に含まれるので、領域82a、82b、82cを合わせた領域が、処理対象のタイプ情報に対応する8近傍のタイプ情報を保持する領域となる。

図18のサイクルでは、ストライプバッファ65の処理対象の遅延器に、図11Bのビット「51」に対応するタイプ情報がラッチされている。この場合、ビット「51」は、ストライプの下端の行に含まれるので、領域82b、82c、83’を合わせた領域が、処理対象のタイプ情報に対応する8近傍のタイプ情報を保持する領域となる。

図19のサイクルでは、ストライプバッファ65の処理対象の遅延器に、図11Bのビット「52」に対応するタイプ情報がラッチされている。この場合、ビット「52」は、ストライプの上端の行に含まれるので、領域82a、82b、84’を合わせた領域が、処理対象のタイプ情報に対応する8近傍のタイプ情報を保持する領域となる。

なお、図13には、8近傍有意状態生成部が2つある。これは、図13のストライプバッファ81中に、処理対象とするタイプ情報を保持する遅延器が2つあることに対応している。図13からは定かでないが、遅延器「19」についても、8近傍の有意状態を8近傍有意状態生成部87によって生成している。ここで、生成された8近傍の有意状態は、後段のコンテキスト生成部において使用される。

図20は、コンテキスト生成部の構成を示すブロック図である。
図20において、コンテキスト生成部90は、パス情報と、8近傍の有意状態を入力して、ランレングスに対応するパターンを検出したときに、そのランレングスに対応するコンテキストを生成するランレングス生成部91、パス情報と、8近傍の有意状態を入力して、ユニフォームに対応するパターンを検出したときに、そのユニフォームに対応するコンテキストを生成するユニフォーム生成部92、タイプ情報と、そのタイプ情報に対応するパス情報と、そのタイプ情報のビットの8近傍有意状態を入力して、そのビットに対するコンテキストを生成する符号化器93と、パス情報と、ランレングス生成部91の出力と、ユニフォーム生成部92の出力と、符号化器93の出力と、コードブロックの対応するビットを入力して、内蔵するロジック(ランレングスは対応するCLパスに優先する等)を基に、コンテキストの選択処理を行って、その選択結果のコンテキストと、シンボル(そのコンテキストに対応するウェーブレット係数のビット)を出力するセレクタ94を備える。

符号化器93は、例えば、タイプ情報として「X」を入力した場合、そのビットに対するパス情報が「CLパス」であるとみなしてコンテキストを生成する。
また、符号化器93は、最初のMRパスであることを示すタイプ情報「Z’」と、2番目以降のMRパスであることを示すタイプ情報「Z」との違いを反映してコンテキストを生成する。

本発明は下記構成でもよい。
(付記1) ウェーブレット変換の処理結果のウェーブレット係数を基に、符号化データを出力する符号化装置において、
前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに「1」となるビットであるか、その初めに「1」となるビットよりMSB側のビットであるか、その初めに「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ決定部と、
それぞれのビットに対して決定されたタイプ情報を、それぞれのビットの深度毎にバッファリングするバッファ部と、
バッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報を決定するパス決定部と、
前記バッファ部から出力されたタイプ情報と、そのタイプ情報に対して決定されたパス情報を基に、コンテキストを生成するコンテキスト生成部と、
生成されたコンテキストを基に、算術符号化を行う算術符号化部を備えることを特徴とする符号化装置。
(付記2) 前記パス決定部は、処理対象とするタイプ情報に対する8近傍のタイプ情報と、その8近傍のうちで、処理対象に対して前処理となるビットのパス情報を基に、その8近傍の有意状態を生成するとともに、
その生成された8近傍の有意状態と、処理対象とするタイプ情報を基に、その処理対象とするタイプ情報に対するパス情報を決定することを特徴とする付記1記載の符号化装置。
(付記3) 前記パス決定部は、前記処理対象とするタイプ情報が、MSB側から見て、初めに「1」となるビットよりLSB側のビットであることを示すタイプ情報である場合に、その処理対象とするタイプ情報に対するパス情報をMRパス(Magnitude Refinement Pass)に決定し、
前記処理対象とするタイプ情報が、MSB側から見て、初めに「1」となるビットであって、その処理対象のタイプ情報の8近傍の有意状態がすべて非有意である場合に、その処理対象とするタイプ情報に対するパス情報をCLパス(Cleanup Pass)に決定し、
前記処理対象とするタイプ情報が、MSB側から見て、初めに「1」となるビットであって、その処理対象のタイプ情報の8近傍の有意状態の少なくとも1つが有意である場合に、その処理対象とするタイプ情報に対するパス情報をSPパス(Significance Propagation Pass)に決定することを特徴とする付記1記載の符号化装置。
(付記4) 前記タイプ決定部は、コードブロックを構成するそれぞれのビットプレーンの対応するストライプ毎に備えられ、
前記バッファ部、パス決定部、コンテキスト生成部は、ビットプレーン毎に、かつ、そのビットプレーン内のストライプ毎に備えられ、
前記タイプ決定部に対して、そのストライプのビットプレーン内での位置に応じて、ウェーブレット係数の各ビットを深さ方向に並列に入力する処理の開始時刻をずらしたことを特徴とする付記1記載の符号化装置。
(付記5) 前記パス決定部において処理しているタイプ情報について、8近傍の有意状態を求めるに際して、その8近傍に含まれていて、前処理となるビットをそのパス決定部に対応するストライプの1つ前のストライプから取得する場合に、その前処理となるビットに対してはすでに1つ前のストライプにおいてパス情報が決定されているように、前記タイプ決定部に対する処理の開始時刻をストライプ毎にずらしたことを特徴とする付記4記載の符号化装置。
(付記6) 前記タイプ決定部は、前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに「1」となるビットであるか、その初めに「1」となるビットよりMSB側のビットであるか、その初めに「1」となるビットより1つだけLSB側のビットであるか、または、その1つだけLSB側のビットよりもさらにLSB側のビットであるか、を示すタイプ情報を決定し、
前記コンテキスト生成部は、前記初めに「1」となるビットより1つだけLSB側のビットであることを示すタイプ情報を用いて、最初のMRパスに対するコンテキストを生成することを特徴とする付記1記載の符号化装置。
(付記7) ウェーブレット変換の処理結果である有意状態変数で示されたウェーブレット係数を基に、符号化データを出力する符号化装置において、
前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに有意となるビットであるか、その初めに有意となるビットよりMSB側のビットであるか、その初めに有意となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ決定部と、
それぞれのビットに対して決定されたタイプ情報を、それぞれのビットの深度毎にバッファリングするバッファ部と、
バッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報を決定するパス決定部と、
前記バッファ部から出力されたタイプ情報と、そのタイプ情報に対して決定されたパス情報を基に、コンテキストを生成するコンテキスト生成部と、
生成されたコンテキストを基に、算術符号化を行う算術符号化部を備えることを特徴とする符号化装置。
(付記8) ウェーブレット変換の処理結果のウェーブレット係数を基に、符号化データを出力する符号化方法において、
前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに「1」となるビットであるか、その初めに「1」となるビットよりMSB側のビットであるか、その初めに「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ決定ステップと、
それぞれのビットに対して決定されたタイプ情報を、それぞれのビットの深度毎にバッファリングするステップと、
バッファリングされた同一深度の複数のタイプ情報を基に、その複数のタイプ情報中の処理対象とするタイプ情報に対するパス情報を決定するパス決定ステップと、
前記バッファ部から出力されたタイプ情報と、そのタイプ情報に対して決定されたパス情報を基に、コンテキストを生成するコンテキスト生成ステップと、
生成されたコンテキストを基に、算術符号化を行う算術符号化ステップを備えることを特徴とする符号化方法。
(付記9) 前記パス決定ステップにおいて、処理対象とするタイプ情報に対する8近傍のタイプ情報と、その8近傍のうちで、処理対象に対して前処理となるビットのパス情報を基に、その8近傍の有意状態を生成するとともに、
その生成された8近傍の有意状態と、処理対象とするタイプ情報を基に、その処理対象とするタイプ情報に対するパス情報を決定することを特徴とする付記8記載の符号化方法。
(付記10) 前記パス決定ステップにおいて、前記処理対象とするタイプ情報が、MSB側から見て、初めに「1」となるビットよりLSB側のビットであることを示すタイプ情報である場合に、その処理対象とするタイプ情報に対するパス情報をMRパスに決定し、
前記処理対象とするタイプ情報が、MSB側から見て、初めに「1」となるビットであって、その処理対象のタイプ情報の8近傍の有意状態がすべて非有意である場合に、その処理対象とするタイプ情報に対するパス情報をCLパスに決定し、
前記処理対象とするタイプ情報が、MSB側から見て、初めに「1」となるビットであって、その処理対象のタイプ情報の8近傍の有意状態の少なくとも1つが有意である場合に、その処理対象とするタイプ情報に対するパス情報をSPパスに決定することを特徴とする付記8記載の符号化方法。
(付記11) 前記タイプ決定ステップは、コードブロックを構成するそれぞれのビットプレーンの対応するストライプ毎に実行され、
前記バッファリングするステップ、パス決定ステップ、コンテキスト生成ステップは、ビットプレーン毎に、かつ、そのビットプレーン内のストライプ毎に実行され、
前記タイプ決定ステップにおいて、そのストライプのビットプレーン内での位置に応じて、ウェーブレット係数の各ビットを深さ方向に並列に入力する処理の開始時刻をずらしたことを特徴とする付記8記載の符号化方法。
(付記12) 前記パス決定ステップにおいて処理しているタイプ情報について、8近傍の有意状態を求めるに際して、その8近傍に含まれていて、前処理となるビットをそのパス決定部に対応するストライプの1つ前のストライプから取得する場合に、その前処理となるビットに対してはすでに1つ前のストライプにおいてパス情報が決定されているように、前記タイプ決定ステップの処理の開始時刻をストライプ毎にずらしたことを特徴とする付記11記載の符号化方法。
(付記13) 前記タイプ決定ステップにおいて、前記ウェーブレット係数の各ビットを深さ方向に並列に入力して、その各ビットに対して、MSB側から見て、初めに「1」となるビットであるか、その初めに「1」となるビットよりMSB側のビットであるか、その初めに「1」となるビットより1つだけLSB側のビットであるか、または、その1つだけLSB側のビットよりもさらにLSB側のビットであるか、を示すタイプ情報を決定し、
前記コンテキスト生成ステップにおいて、前記初めに「1」となるビットより1つだけLSB側のビットであることを示すタイプ情報を用いて、最初のMRパスに対するコンテキストを生成することを特徴とする付記8記載の符号化方法。

JPEG2000規格を採用した符号化装置を示す図である。 処理対象のビットとその8近傍を示す図である。 従来のビットモデリング処理の概要を説明する図(その1)である。 従来のビットモデリング処理の概要を説明する図(その2)である。 コードブロックを示す斜視図である。 ビットプレーン上での走査順を説明する図である。 本発明の一実施形態のビットモデリング演算器の全体構成を示すブロック図である。 図6のうちで、1つのストライプについての処理を行うユニットを示した図である。 タイプ情報の種類を説明する図である。 タイプ分類器のハード構成を示す図である。 図8Bのそれぞれのタイプ選択部が内蔵するロジックを示した表である。 バッファ部が備えるストライプバッファの構成をより詳細に示す図である。 ストライプバッファにタイプ情報が格納される様子を説明する図(その1)である。 ストライプバッファにタイプ情報が格納される様子を説明する図(その2)である。 ビットプレーン上の連続する3つのストライプのビットの一例を示す図である。 図11Aのビットプレーン上の3つの領域を示す図である。 図11Aの各ビットに対するタイプ情報が3つのストライプバッファに格納された状態を示している。 図11B上の3つの領域に対応するストライプバッファ上の領域を示す図である。 バッファ部の構成を示すブロック図である。 図14Bに示す8近傍のビットのタイプ情報と、その8近傍のそれぞれのビットが、処理対象とするビット「C」よりも前に処理されるビットであるか後に処理されるビットであるかを基に、処理対象とするビット「C」に対する8近傍の有意/非有意を決定する表である。 処理対象ビット「C」とその8近傍「NB(0)」〜「NB(7)」を示した図である。 パス決定部によって実行されるパス決定処理のフローチャートである。 図13の8近傍有意状態生成部の入力側で行われる8近傍の選択処理について説明する図である。 選択された8近傍の例を示す図(その1)である。 選択された8近傍の例を示す図(その2)である。 選択された8近傍の例を示す図(その3)である。 コンテキスト生成部の構成を示すブロック図である。

符号の説明

11 ウェーブレット変換器
12 エントロピ符号化器
13 ビットモデリング演算器
14 算術符号化器
15 ストリーム生成器
21 有意RAM
22 SP符号化器
23 MR符号化器
24 CL符号化器
31、41 タイプ分類器
33、43、80 バッファ部
34、44、90 コンテキスト生成部
47 タイプ選択部
50、65、81 ストライプバッファ
51、52、61、62、63、66、67a、67b、68a、68b、82、83、84 領域
86 パス決定部
85、87 8近傍有意状態生成部
91 ランレングス生成部
92 ユニフォーム生成部
93 符号化器
94 セレクタ

Claims (10)

  1. ウェーブレット変換の処理結果のウェーブレット係数を基に符号化データを出力する符号化装置において、
    前記ウェーブレット係数が量子化された値の各ビットがMSB側からLSB側に深さ方向に並列に入力され前記各ビットに対して、MSB側から見て初めに「1」となるビットであるか、前記「1」となるビットよりMSB側のビットであるか、前記「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ情報決定部と
    前記決定された各タイプ情報を基に処理対象のビットに対するパス情報を決定するパス決定部と、
    前記タイプ情報と前記パス情報を基にコンテキストを生成するコンテキスト生成部と、
    前記コンテキストを基に算術符号化を行う算術符号化部
    を備えることを特徴とする符号化装置。
  2. 前記パス決定部は、前記処理対象のビットを中心とする近傍ビットを含む9ビットに対する前記タイプ情報と、前記近傍ビットのうち前記処理対象のビットより処理されるビットのパス情報を基に前記処理対象のビットに対するパス情報を決定することを特徴とする請求項1記載の符号化装置。
  3. 前記パス決定部は、前記処理対象のビットに対する前記タイプ情報が、
    前記「1」となるビットよりLSB側のビットであることを示すタイプ情報である場合に前記パス情報をMRパス(Magnitude Refinement Pass)に決定し、
    記「1」となるビットであることを示すタイプ情報であって前記処理対象のビットの近傍8ビットに対するタイプ情報がすべて非有意状態である場合に前記パス情報をCLパス(Cleanup Pass)に決定し、
    記「1」となるビットであることを示すタイプ情報であって前記処理対象のビットの近傍8ビットに対するタイプ情報の少なくとも1つが有意状態である場合に前記パス情報をSPパス(Significance Propagation Pass)に決定する
    ことを特徴とする請求項1記載の符号化装置。
  4. 前記タイプ情報決定部を複数え、
    前記複数のタイプ情報決定部への前記各ビットの力処理の開始時刻をずらして並列処理することを特徴とする請求項1記載の符号化装置。
  5. 前記パス決定部は、前記処理対象のビットを中心とする近傍8ビットを含む9ビットに対する前記タイプ情報と、前記近傍8ビットのうち前記処理対象のビットより前に処理されるビットのパス情報を基に前記処理対象のビットに対するパス情報を決定し、
    前記処理対象のビットより前に処理されるビットのパス情報が前記処理対象のビットに対するパス情報の決定前に決定されているように、前記入力処理の開始時刻がずらされる
    ことを特徴とする請求項4記載の符号化装置。
  6. ウェーブレット変換の処理結果である有意状態変数で示されたウェーブレット係数を基に符号化データを出力する符号化装置において、
    前記ウェーブレット係数が量子化された値の各ビットがMSB側からLSB側に深さ方向に並列に入力され前記各ビットに対して、MSB側から見て初めに有意となるビットであるか、前記有意となるビットよりMSB側のビットであるか、前記有意となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ情報決定部と
    前記決定された各タイプ情報を基に処理対象のビットに対するパス情報を決定するパス決定部と、
    前記タイプ情報と前記パス情報を基にコンテキストを生成するコンテキスト生成部と、
    前記コンテキストを基に算術符号化を行う算術符号化部
    を備えることを特徴とする符号化装置。
  7. ウェーブレット変換の処理結果のウェーブレット係数を基に符号化データを出力する符号化方法において、
    前記ウェーブレット係数が量子化された値の各ビットがMSB側からLSB側に深さ方向に並列に入力され前記各ビットに対して、MSB側から見て初めに「1」となるビットであるか、前記「1」となるビットよりMSB側のビットであるか、前記「1」となるビットよりLSB側のビットであるか、を示すタイプ情報を決定するタイプ情報決定ステップと
    前記決定された各タイプ情報を基に処理対象のビットに対するパス情報を決定するパス決定ステップと、
    前記タイプ情報と前記パス情報を基にコンテキストを生成するコンテキスト生成ステップと、
    前記コンテキストを基に算術符号化を行う算術符号化ステップ
    を備えることを特徴とする符号化方法。
  8. 前記パス決定ステップにおいて、前記処理対象のビットを中心とする近傍ビットを含む9ビットに対する前記タイプ情報と、前記近傍ビットのうち前記処理対象のビットより処理されるビットのパス情報を基に前記処理対象のビットに対するパス情報を決定することを特徴とする請求項7記載の符号化方法。
  9. 前記パス決定ステップにおいて、前記処理対象のビットに対する前記タイプ情報が、
    前記「1」となるビットよりLSB側のビットであることを示すタイプ情報である場合に前記パス情報をMRパスに決定し、
    記「1」となるビットであることを示すタイプ情報であって前記処理対象のビットの近傍8ビットに対するタイプ情報がすべて非有意状態である場合に前記パス情報をCLパスに決定し、
    記「1」となるビットであることを示すタイプ情報であって前記処理対象のビットの近傍8ビットに対するタイプ情報の少なくとも1つが有意状態である場合に前記パス情報をSPパスに決定する
    ことを特徴とする請求項7記載の符号化方法。
  10. 前記タイプ情報決定ステップを複数え、
    前記複数のタイプ情報ステップへの前記各ビットの力処理の開始時刻をずらして並列処理することを特徴とする請求項7記載の符号化方法。
JP2006053619A 2006-02-28 2006-02-28 符号化装置および方法 Expired - Fee Related JP4745865B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006053619A JP4745865B2 (ja) 2006-02-28 2006-02-28 符号化装置および方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006053619A JP4745865B2 (ja) 2006-02-28 2006-02-28 符号化装置および方法
US11/550,436 US7742645B2 (en) 2006-02-28 2006-10-18 Encoding device and method

Publications (2)

Publication Number Publication Date
JP2007235443A JP2007235443A (ja) 2007-09-13
JP4745865B2 true JP4745865B2 (ja) 2011-08-10

Family

ID=38517897

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006053619A Expired - Fee Related JP4745865B2 (ja) 2006-02-28 2006-02-28 符号化装置および方法

Country Status (2)

Country Link
US (1) US7742645B2 (ja)
JP (1) JP4745865B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8457425B2 (en) * 2009-06-09 2013-06-04 Sony Corporation Embedded graphics coding for images with sparse histograms
US8964851B2 (en) * 2009-06-09 2015-02-24 Sony Corporation Dual-mode compression of images and videos for reliable real-time transmission
KR20100136890A (ko) * 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
US8285062B2 (en) * 2009-08-05 2012-10-09 Sony Corporation Method for improving the performance of embedded graphics coding
JP2011091576A (ja) * 2009-10-21 2011-05-06 Sony Corp 符号化装置および方法
JP2012060261A (ja) 2010-09-06 2012-03-22 Sony Corp 画像処理装置および方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341368A (ja) * 2004-05-28 2005-12-08 Fujitsu Ltd ビットモデリング演算器

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69226095T2 (de) * 1991-01-17 1999-03-11 Sharp Kk Bildkodier- und Dekodiersystem unter Verwendung einer Orthogonaltransformation und Bitzuordnungsverfahren
US5784631A (en) * 1992-06-30 1998-07-21 Discovision Associates Huffman decoder
JPH07202820A (ja) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd ビットレート制御システム
US6072909A (en) * 1995-12-13 2000-06-06 Fuji Xerox Co., Ltd. Image coding devise and image decoding devise using with image disassembly
US7065253B2 (en) * 1999-09-03 2006-06-20 Intel Corporation Wavelet zerotree coding of ordered bits
US6650782B1 (en) * 2000-02-24 2003-11-18 Eastman Kodak Company Visually progressive ordering of compressed subband bit-planes and rate-control based on this ordering
AUPQ982400A0 (en) 2000-09-01 2000-09-28 Canon Kabushiki Kaisha Entropy encoding and decoding
US6373412B1 (en) * 2000-12-15 2002-04-16 International Business Machines Corporation Fast JPEG huffman encoding and decoding
JP2003008906A (ja) 2001-06-26 2003-01-10 Mitsubishi Electric Corp ビットモデリングの処理方法及びそれを用いる処理回路
JP2003032496A (ja) * 2001-07-12 2003-01-31 Sanyo Electric Co Ltd 画像符号化装置および方法
US7177477B2 (en) * 2002-03-07 2007-02-13 Aware, Inc. Selective group modeling
JP3700670B2 (ja) * 2002-03-28 2005-09-28 ソニー株式会社 ビットプレーン符号化装置
US7301485B2 (en) * 2003-10-29 2007-11-27 Nec Corporation Decoding device or encoding device having intermediate buffer interposed between an arithmetic code decoder or encoder and a reverse binarization device or binarization device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005341368A (ja) * 2004-05-28 2005-12-08 Fujitsu Ltd ビットモデリング演算器

Also Published As

Publication number Publication date
US20070217695A1 (en) 2007-09-20
JP2007235443A (ja) 2007-09-13
US7742645B2 (en) 2010-06-22

Similar Documents

Publication Publication Date Title
US9571860B2 (en) Diagonal scan for parallel coding and decoding of significance map and transform coefficents
US8126062B2 (en) Per multi-block partition breakpoint determining for hybrid variable length coding
JP4878262B2 (ja) エントロピー符号化装置
US7079057B2 (en) Context-based adaptive binary arithmetic coding method and apparatus
US6411229B2 (en) Variable length decoder
KR100845090B1 (ko) 화상 부호화 장치, 화상 복호 장치 및 그것들의 제어 방법
US7561744B2 (en) Image encoding apparatus, image decoding apparatus, and their control method, and computer program and computer-readable storage medium
JP3108479B2 (ja) 符号化復号化方法およびその装置
EP2202983B1 (en) Image encoding device, image encoding method, and image encoding system
US7359557B2 (en) Method of and apparatus for encoding, method of and apparatus for decoding, and image forming apparatus
US6567562B1 (en) Encoding apparatus and method
KR20130143678A (ko) 2d 매트릭스들에 인코딩 파라미터들을 저장하는 이미지 압축을 위한 방법 및 장치
JP3902990B2 (ja) アダマール変換処理方法及びその装置
US8238437B2 (en) Image encoding apparatus, image decoding apparatus, and control method therefor
US20020114529A1 (en) Arithmetic coding apparatus and image processing apparatus
US7477791B2 (en) Image processing device, method and recording medium for compressing image data
CA2181017C (en) Method and apparatus for encoding and decoding an image
US7826670B2 (en) Data compression apparatus and data compression program storage medium
JP3986012B2 (ja) 適応型予測符号化装置および適応型予測符号復号化方法
JP4311759B2 (ja) データ変換装置及びその制御方法
JP4928082B2 (ja) ビデオ画像処理方法
US7636451B2 (en) Digital watermark embedding apparatus and method, and digital watermark detection apparatus and method
US20060115000A1 (en) Variable-length encoding apparatus and method
US7899262B2 (en) Data compression apparatus and data compressing program storage medium
JP5409909B2 (ja) ビットストリームを復号する方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080613

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20100304

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110510

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110512

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees