(57)【要約】【課題】ハフマン復号化部における処理時間を短縮可能な画像復号化装置を提供する。【解決手段】ハフマン復号化部の符号解析部２０は、複数の可変長符号データを一括して入力する入力制御部２１と、１番目の可変長符号データについて処理し、そのゼロラン情報、グループ番号情報及び付加ビット情報を認識して周波数変換部に出力する１次解析処理部３１と、１番目以降の１以上の可変長符号データを処理する継続解析処理部４１，５１，６１とを備える。継続解析処理部４１，５１，６１は、予め定めた処理対象の可変長符号データの場合には、そのゼロラン情報、グループ番号情報及び付加ビット情報を認識して周波数変換部に出力し、処理対象の可変長符号データで無い場合には、これ以降のデータを破棄するとともに、認識処理を完了した可変長符号データ以降のデータを入力するための信号を入力制御部２１に送信する。【選択図】図３
2018142843.tif 000002
【特許請求の範囲】
【請求項１】
ハフマン符号化処理により圧縮された圧縮画像データであって、ゼロラン情報及びグループ番号情報を符号化したハフマン符号、並びにこれに続く付加ビットを単位とする可変長符号データが連続的に繋がった構造の圧縮画像データを復号化するハフマン復号化部を備え、
前記ハフマン復号化部は、順次入力される前記可変長符号データを解析し、該可変長符号データに係るゼロラン情報及びグループ番号情報を順次認識して出力する符号解析部と、前記符号解析部から順次出力される前記ゼロラン情報及びグループ番号情報を基に、係数情報を順次生成して出力する周波数変換部とを備えて構成される画像復号化装置において、
前記符号解析部は、
複数の可変長符号データを一括して入力する入力制御部と、
入力された最初の可変長符号データについて制限を加えることなく処理して、そのゼロラン情報、グループ番号情報及び付加ビット情報を認識し、認識したゼロラン情報及び付加ビット情報を前記周波数変換部に出力する１次解析処理部と、
前記１次解析処理部によって処理された可変長符号データに続く１以上の可変長符号データを処理し、該可変長符号データが予め定めた処理対象の可変長符号データの場合には、当該可変長符号データに係るゼロラン情報、グループ番号情報及び付加ビット情報を認識し、認識したゼロラン情報及び付加ビット情報を前記周波数変換部に出力する処理を行う一方、該可変長符号データが処理対象の可変長符号データで無い場合には、該可変長符号データ以降のデータを破棄する処理を行い、ついで、認識処理を完了した可変長符号データ以降のデータを入力するための信号を前記入力制御部に送信する継続解析処理部とを備えて構成されることを特徴とする画像復号化装置。
【請求項２】
前記継続解析処理部は、複数の可変長符号データを順次処理するように構成されるとともに、後続の可変長符号データほど、前記処理対象の可変長符号データが制限されるように構成されていることを特徴とする請求項１記載の画像復号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハフマン符号を用いて圧縮した画像データ（符号データ）を復号化する画像復号化装置に関する。
【背景技術】
【０００２】
従来より、写真などの画像を取り扱う分野では、通信における負担等の軽減を目的として、原データである画像データをＪＰＥＧ（Joint Photographic Experts Group）規格に従って圧縮し、符号化する画像符号化装置と、符号化した圧縮画像データを伸長して元の画像に復元する画像復号化装置が用いられている。
【０００３】
一般的に、前記画像符号化装置は、ＤＣＴ部、量子化部、ジグザグスキャン部及びハフマン符号化部を備えて構成される。前記ＤＣＴ部は、ＲＧＢの色データからＹＵＶの輝度色差データに変換された画像データを８×８画素のブロックに分割し、分割した各ブロックについて、各画素に対応する画像データをそれぞれ周波数成分（ＤＣＴ（Discrete Cosine Transform）係数と呼ばれる）に変換して、１個のＤＣ（Direct Current）係数と６３個のＡＣ（Alternating Current）係数からなる係数データを生成する処理を行う。
【０００４】
また、前記量子化部は、前記ＤＣＴ部によってブロック毎に生成された８×８の各係数データ（数値）を、予め用意された量子化テーブル（８×８の数値）の対応した各数値によりそれぞれ除算して量子化する処理を行う。また、前記ジグザグスキャン部は、前記量子化部において、ブロック毎に量子化された８×８個の係数データを、ＤＣ係数からＡＣ係数に亘ってジグザグにスキャンすることにより直線状に並べた（即ち、１次元に配列した）６４個の係数データを生成する処理を行い、前記ハフマン符号化部は、前記ジグザグスキャン部によって１次元に配列されたブロック毎の各係数データを、ハフマン符号を用いて符号化した符号データを生成して出力する処理を行う。
【０００５】
この画像符号化装置によって生成される一般的な符号データ（ＪＰＥＧストリーム）のデータ構造を図７に示す。図７に示すように、この符号データは、各種マーカから構成される前部マーカ群と、符号化された圧縮画像データと、符号データの末尾を定義するＥＯＩ（End Of Image）マーカとを順次配置した構造を有する。
【０００６】
前記前部マーカ群には、符号データの先頭を定義するＳＯＩ（Start Of Image）マーカ、前記量子化テーブルを定義するＤＱＴ（Define Quantization Table）マーカ、フレームの開始を定義するとともに画像サイズを定義するＳＯＦ（Start Of Frame）マーカ、ハフマン符号テーブルを定義するＤＨＴ（Define Huffman Table）マーカ、及び以降に圧縮画像データが存在することを定義するＳＯＳ（Start Of Scan）マーカが含まれる。
【０００７】
また、圧縮画像データは、前記ブロック毎の各係数データを、ゼロラン情報及びグループ番号情報を符号化したハフマン符号、並びにこれに続く係数値を表す付加ビットを一単位とする可変長符号によって表したものであり、この可変長符号データが連続的に繋がった構造を有する。
【０００８】
一方、図８に示すように、画像復号化装置１００は、ハフマン復号化部１１０、逆ジグザグスキャン部１３０、逆量子化部１４０及びＩＤＣＴ部１５０から構成される（下記特許文献１参照）。そして、前記ハフマン復号化部１１０は、一般的には、図９に示すように、符号入力部１１１、内部バッファ１１２、前部マーカ解析部１１３、最終マーカ解析部１１４、符号解析部１１５及び周波数変換部１２５から構成される。
【０００９】
前記符号入力部１１１は、外部から入力される前記符号データを受信して前記内部バッファ１１２に格納する処理を行い、内部バッファ１１２から前部マーカ解析部１１３、最終マーカ解析部１１４及び符号解析部１１５にそれぞれ符号データが送信される。そして、前部マーカ解析部１１３は、符号データに含まれる前部マーカ群を抽出し、抽出した前部マーカ群を前記逆ジグザグスキャン部１３０に送信し、前記最終マーカ解析部１１４は、前記内部バッファ１１２から送信される符号データ中のＥＯＩマーカを検出して、その検出信号を前記逆ジグザグスキャン部１３０に送信する処理を行う。
【００１０】
前記符号解析部１１５は、図１０に示すように、入力制御部１１６、符号語検出部１１７、ゼロラン数／グループ番号認識部１１８及び付加ビット出力部１１９から構成される。
【００１１】
前記入力制御部１１６は、前記内部バッファ１１２から入力する符号データの当該入力を制御する。具体的には、入力制御部１１６は、前記マーカに係るデータについては、順次これを入力し、ＳＯＳマーカ以降の可変長符号データについては、１単位である可変長符号データが採り得る最大のデータ量を少し超えるデータ量を入力し、また、前記符号語検出部１１７、ゼロラン数／グループ番号認識部１１８及び付加ビット出力部１１９で処理された可変長符号データのビット長に応じたシフト信号を前記内部バッファ１１２に送信する。
【００１２】
これにより、前記内部バッファ１１２では、記憶したデータの内、その先頭から、受信したシフト信号に応じたビット長分のデータ（処理済みの可変長符号データ）を削除して、次の可変長符号データを先頭側にシフトすることでその頭出しを行う。尚、内部バッファ１１２は複数の可変長符号データを記憶することができる十分な記憶容量を有しており、処理済みの可変長符号データを削除して、次の可変長符号データの頭出しを行うと、内部バッファ１１２には、後続の符号データが前記符号入力部１１１の制御の下で、順次外部から入力される。
【００１３】
前記符号語検出部１１７は、入力される前部マーカ群の内、ＤＨＴマーカから認識されるハフマン符号テーブルに基づき、各可変長符号データについて、符号語、即ちハフマン符号に係るデータを認識（検出）して、認識したハフマン符号データ及び当該可変長符号データを前記ゼロラン数／グループ番号認識部１１８に送信する処理を行う。
【００１４】
前記ゼロラン数／グループ番号認識部１１８は、符号語検出部１１７によって検出されたハフマン符号データを基に、当該ハフマン符号によって定義されたゼロラン数及びグループ番号を認識し、認識したゼロラン数及びグループ番号、並びに当該可変長符号データを前記付加ビット出力部１１９に出力する。
【００１５】
前記付加ビット出力部１１９は、前記ゼロラン数／グループ番号認識部１１８から受信したグループ番号に係るデータを基に、当該グループ番号に対応した付加ビット長を認識し、入力された可変長符号データからハフマン符号データ以降の、当該付加ビット長に対応したデータを付加ビットとして認識し、前記ゼロラン数に係るデータ、及び認識した付加ビットに係るデータを前記周波数変換部１２５に出力する処理を行う。
【００１６】
また、付加ビット出力部１１９は、処理した可変長符号データのビット長、即ち、前記符号語検出部１１７によって検出されたハフマン符号のビット長に付加ビット長を加えたビット長に係る信号を前記入力制御部１１６に送信し、入力制御部１１６は、上述したように、可変長符号データのビット長に応じたシフト信号を前記内部バッファ１１２に送信する。
【００１７】
また、前記周波数変換部１２５では、前記符号解析部１１５から送信されるゼロラン数に係るデータ及び付加ビットを基に、ブロック毎に、１次元配列の量子化された係数データ（ＤＣＴ係数データ）を復元して、前記逆ジグザグスキャン部１３０に送信する。
【００１８】
斯くして、このハフマン復号化部１１０では、符号データ中に含まれる前部マーカ群のマーカ情報が前記マーカ解析部１１３により解析されて前記逆ジグザグスキャン部１３０に送信され、ついで、符号解析部１１５及び周波数変換部１２５により、圧縮画像データから１次元配列の係数データがブロック毎に復元されて前記逆ジグザグスキャン部１３０に送信され、全ての符号データが処理されてＥＯＩマーカが前記最終マーカ解析部１１４によって検出されると、ＥＯＩマーカのマーカ情報が最終マーカ解析部１１４から前記逆ジグザグスキャン部１３０に送信される。
【００１９】
また、前記逆ジグザグスキャン部１３０は、前記ハフマン復号化部１１０により復号された係数データに対して上記ジグザグスキャンとは逆処理を行うことによって、１次元配列の係数データを８×８の２次元配列の係数データに変換する処理を行う。そして、前記逆量子化部１４０は、前記逆ジグザグスキャン部１３０から出力され、送信される８×８の各係数データを、同じく前記逆ジグザグスキャン部１３０から送信されるＤＱＴマーカによって定義される量子化テーブルの対応した各数値でそれぞれ乗算することによって量子化前の係数データに変換する処理を行い、前記ＩＤＣＴ（Inverse Discrete Cosine Transform）部１５０は、前記逆量子化部１４０によって変換された係数データを８×８画素のＹＵＶ輝度色差データに変換する処理を行い、このＹＵＶ輝度色差データは最終的にＲＧＢ色データに変換される。
【先行技術文献】
【特許文献】
【００２０】
【特許文献１】特開平７−９９５７９号公報
【発明の概要】
【発明が解決しようとする課題】
【００２１】
ところで、図１１に示すように、ゼロラン数及びグループ番号を定義するためのハフマン符号は、ＤＣ係数については、グループ番号が０〜Ｂの１２個、ＡＣ係数については、ゼロラン数が０〜Ｆの１６個とグループ番号が１〜Ａの１０個との組み合わせに、ゼロラン数が０でグループ番号が０、及びゼロラン数がＦでグループ番号が０の組み合わせを加えて１６２個、合計で１７４個が必要となる。
【００２２】
したがって、上述した従来の画像復号化装置１００の前記符号語検出部１１７では、可変長符号データからハフマン符号データを検出する際に、可変長符号データの先頭から順に位置するデータ群と１７４通りのハフマン符号データとを順次比較して、ハフマン符号データと一致したデータ群を検出する一致検出処理を１７４回繰り返して実行するようにしていた。
【００２３】
ところが、本発明者等の知見によると、一般的な圧縮率で画像データを圧縮した場合に、８×８画素のブロック単位で係数データを符号化したハフマン符号の出現頻度は、全てのハフマン符号において均等ではなく、或る複数のハフマン符号の出現頻度が高いものとなっている。
【００２４】
したがって、所定の出現頻度の高いハフマン符号について、前記一致検出処理を行えば、短い検出処理時間により、しかもかなりの高い確率で、可変長符号データ中のハフマン符号データを検出することができ、このような処理を採用することで、前記符号語検出部１１６における処理時間の短縮化を図ることができる。
【００２５】
また、前記画像復号化装置１００を電子回路によって実現する場合、前記ハフマン復号化部１１０の符号解析部１１５における処理は、１クロック内で実現される必要があるが、前記符号解析部１１５における処理は、十分余裕をもって１クロック内で実行可能であった。したがって、この意味においても、従来、前記符号解析部１１５における処理時間の短縮化が可能であった。
【００２６】
本発明は、以上の実情に鑑みなされたものであって、ハフマン復号化部における処理時間の短縮化を図ることで、全体としての復号時間を短縮することができる画像復号化装置の提供を、その目的とする
【課題を解決するための手段】
【００２７】
上記課題を解決するための本発明は、
ハフマン符号化処理により圧縮された圧縮画像データであって、ゼロラン情報及びグループ番号情報を符号化したハフマン符号、並びにこれに続く付加ビットを単位とする可変長符号データが連続的に繋がった構造の圧縮画像データを復号化するハフマン復号化部を備え、
前記ハフマン復号化部は、順次入力される前記可変長符号データを解析し、該可変長符号データに係るゼロラン情報及びグループ番号情報を順次認識して出力する符号解析部と、前記符号解析部から順次出力される前記ゼロラン情報及びグループ番号情報を基に、係数情報を順次生成して出力する周波数変換部とを備えて構成される画像復号化装置において、
前記符号解析部は、
複数の可変長符号データを一括して入力する入力制御部と、
入力された最初の可変長符号データについて制限を加えることなく処理して、そのゼロラン情報、グループ番号情報及び付加ビット情報を認識し、認識したゼロラン情報及び付加ビット情報を前記周波数変換部に出力する１次解析処理部と、
前記１次解析処理部によって処理された可変長符号データに続く１以上の可変長符号データを処理し、該可変長符号データが予め定めた処理対象の可変長符号データの場合には、当該可変長符号データに係るゼロラン情報、グループ番号情報及び付加ビット情報を認識し、認識したゼロラン情報及び付加ビット情報を前記周波数変換部に出力する処理を行う一方、該可変長符号データが処理対象の可変長符号データで無い場合には、該可変長符号データ以降のデータを破棄する処理を行い、ついで、認識処理を完了した可変長符号データ以降のデータを入力するための信号を前記入力制御部に送信する継続解析処理部とを備えた画像復号化装置に係る。
【００２８】
この画像復号化装置によれば、前記入力制御部により、複数の可変長符号データが一括して入力され、まず、入力された最初の可変長符号データについて、前記１次解析処理部において、特に制限を加えることなく処理されて、そのゼロラン情報、グループ番号情報及び付加ビット情報が認識され、認識されたゼロラン情報及び付加ビット情報が前記周波数変換部に出力される。
【００２９】
具体的には、前記１次解析処理部は、上述したＤＣ係数データについて設定される１２通りのハフマン符号、及びＡＣ係数について設定される１６２通りのハフマン符号の合計１７４通りのハフマン符号について、入力された最初の可変長符号データ中に存在する符号データが、どのハフマン符号に一致するかを検出して、当該可変長符号データ中に存在するハフマン符号（符号語）を認識する。
【００３０】
そして、１次解析処理部は、認識されたハフマン符号から、これに対応したゼロラン数及びグループ番号（ＤＣ係数の場合にはグループ番号のみ）を認識するとともに、認識されたクループ番号から付加ビット長を認識した後、この付加ビット長から当該可変長符号データ中の付加ビットを認識し、認識されたゼロラン数及び付加ビットに係る各情報を前記周波数変換部に出力する。
【００３１】
次に、継続解析処理部により、前記１次解析処理部によって処理された可変長符号データに続く１以上の可変長符号データが処理され、可変長符号データが予め定められた処理対象の可変長符号データの場合には、当該可変長符号データに係るゼロラン情報、グループ番号情報及び付加ビット情報が順次認識され、認識されたゼロラン情報及び付加ビット情報が前記周波数変換部に出力され、一方、可変長符号データが処理対象の可変長符号データで無い場合には、当該可変長符号データ以降のデータが破棄される。
【００３２】
そして、これらの処理を実行した後、継続解析処理部は、認識処理を完了した可変長符号データ以降のデータを入力するための信号を、前記入力制御部に送信する処理を行う。
【００３３】
ここで、この継続解析処理部において処理対象となる可変長符号データは、予め経験的に設定される。上述したように、一般的な圧縮率で画像データを圧縮した場合に、８×８画素のブロック単位で係数データを符号化したハフマン符号の出現頻度は、全てのハフマン符号において均等ではなく、或る複数のハフマン符号の出現頻度が高いものとなっている。
【００３４】
したがって、継続解析処理部において処理対象となる可能性が高い可変長符号データは、上記のような出現頻度の高いハフマン符号に係る可変長符号データである。そこで、この継続解析処理部では、このような出現頻度の高いものから選定されたハフマン符号、即ちゼロラン情報及びグループ番号情報に係る可変長符号データのみを処理するようにした。
【００３５】
このようにすることで、可変長符号データ中に存在するハフマン符号の検出処理を短時間で行うことができる。即ち、上述したように全て可変長符号データを処理対象にすると、ハフマン符号を検出するために１７４通りの一致検出処理を行う必要があるが、処理対象を特定の出現頻度の高いハフマン符号に係る可変長符号データに絞ることで、ハフマン符号を検出するための一致検出処理に係る時間を短縮することができ、処理に無駄を生じさせることなく、当該処理のために必要な時間を短縮することができる。
【００３６】
また、当該継続解析処理部における処理対象ではない可変長符号データについては、再度、１次解析処理部において確実に処理されるので、当該圧縮画像データを確実に復号化することを担保しつつ、その処理時間の短縮化を図ることができる。
【００３７】
以後上記と同様にして、一纏まりの圧縮画像データの処理を終えるまで、前記入力制御部による入力処理、前記１次解析処理部及び継続解析処理部による処理が繰り返して実行される。
【００３８】
そして、前記周波数変換部では、前記符号解析部から順次出力される前記ゼロラン情報及び付加ビット情報を基に係数情報が順次生成される。
【００３９】
尚、本発明における前記継続解析処理部は、複数の可変長符号データを順次処理するように構成されるとともに、後続の可変長符号データほど、前記処理対象の可変長符号データが制限されるように、言い換えれば、処理対象の可変長符号データを徐々に段階的に絞るように構成されていても良い。
【００４０】
前記画像復号化装置は一般的に電子回路から構成され、この場合には、前記符号解析部を構成する入力制御部、１次解析処理部及び継続解析処理部の一連の処理を１クロック内で完了する必要があるが、継続解析処理部における前記一致検出処理に要する時間を徐々に短くすれば、１クロック内で処理できる可変長符号データの数を増やすことができ、処理時間の短縮化を図ることができる。
【発明の効果】
【００４１】
以上のように本発明によれば、継続解析処理部において、その処理対象を特定の出現頻度の高いハフマン符号に係る可変長符号データに絞ることができるので、ハフマン符号を検出するための一致検出時間を短縮することができ、処理の無駄を生じることなく、当該処理のために必要な時間を短縮することができる。
【００４２】
また、継続解析処理部における処理対象ではない可変長符号データについては、再度、１次解析処理部において確実に処理されるので、当該圧縮画像データを確実に復号化することを担保しつつ、その処理時間の短縮化を図ることができる。
【図面の簡単な説明】
【００４３】
【図１】本発明の一実施形態に係る画像復号化装置の概略構成を示したブロック図である。
【図２】本実施形態に係るハフマン復号化部の構成を示したブロック図である。
【図３】本実施形態に係る符号解析部の構成を示したブロック図である。
【図４】本実施形態に係る符号解析部における処理を説明するための説明図である。
【図５】画像データを圧縮した場合に出現するゼロラン数及びグループ番号の出現頻度を示した説明図である。
【図６】本実施形態に係る符号解析部における処理を説明するための説明図である。
【図７】画像符号化装置によって生成される符号データの構造を示した説明図である。
【図８】従来の画像復号化装置の概略構成を示したブロック図である。
【図９】従来のハフマン復号化部の構成を示したブロック図である。
【図１０】従来の符号解析部の構成を示したブロック図である。
【図１１】従来の符号解析部における処理を説明するための説明図である。
【発明を実施するための形態】
【００４４】
以下、本発明の具体的な実施の形態について、図面を参照しながら説明する。図１は、本実施形態に係る画像復号化装置の概略構成を示したブロック図である。同図１に示すように、本例の画像復号化装置１は、上述した、図８に示した従来の画像復号化装置１００とハフマン復号化部１０の構成が異なるのみであり、逆ジグザグスキャン部１３０、逆量子化部１４０及びＩＤＣＴ部１５０については、従来の画像復号化装置１００と同じ構成である。したがって、図１において、同じ構成部分については同じ符号を付すとともに、以下では、その詳しい説明を省略する。また、本例において取り扱われる符号データ（ＪＰＥＧストリーム）は、図７に示した符号データと同様のデータ構造を備えている。
【００４５】
また、図２に示すように、本例のハフマン復号化部１０は、符号入力部１１１、内部バッファ１１２、前部マーカ解析部１１３、最終マーカ解析部１１４、符号解析部２０及び周波数変換部１２５から構成されるが、符号入力部１１１、内部バッファ１１２、前部マーカ解析部１１３、最終マーカ解析部１１４及び周波数変換部１２５については、従来の画像復号化装置１００におけるものと同じ構成であるので、同じ符号を付して、その詳しい説明を省略する。
【００４６】
尚、本例の画像復号化装置１は、それぞれの処理を実行するための適宜電子回路を備えた電子ディバイスなどのハードウエアによって実現される。或いは、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備えた汎用のコンピュータによって実現することができる。コンピュータによって実現する場合、前記符号入力部１１１、前部マーカ解析部１１３、最終マーカ解析部１１４、符号解析部２０及び周波数変換部１２５や、ジグザグスキャン部１３０、逆量子化部１４０並びにＩＤＣＴ部１５０は、それぞれコンピュータプログラムによってその機能が実現される。
【００４７】
図３に示すように、前記符号解析部２０は、入力制御部２１、１次解析処理部３１、２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１から構成され、これらの内、２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１が継続解析処理部を構成する。
【００４８】
前記入力制御部２１は、前記内部バッファ１１２から入力する符号データの当該入力を制御する。具体的には、入力制御部２１は、前記マーカに係るデータについては、順次これを入力し、ＳＯＳマーカ以降の可変長符号データについては、１単位である可変長符号データが採り得る最大のデータ量を考慮し、少なくとも４つの可変長符号データが含まれる量のデータを入力する。また、前記１次解析処理部３１、２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１で処理された可変長符号データのビット長に応じたシフト信号を前記内部バッファ１１２に送信する。
【００４９】
また、前記１次解析処理部３１は、符号語検出部３２、ゼロラン数／グループ番号認識部３３及び付加ビット出力部３４から構成され、前記２次解析処理部４１は、符号語検出部４２、ゼロラン数／グループ番号認識部４３及び付加ビット出力部４４から構成される。また、前記３次解析処理部５１は、符号語検出部５２、ゼロラン数／グループ番号認識部５３及び付加ビット出力部５４から構成され、前記４次解析処理部６１は、符号語検出部６２、ゼロラン数／グループ番号認識部６３及び付加ビット出力部６４から構成される。以下各部について説明する。
【００５０】
Ａ．１次解析処理部３１
前記符号語検出部３２は、前記符号データ中の前記ＤＨＴマーカから認識されるハフマン符号テーブルに基づき、入力された１番目の可変長符号データについて、ハフマン符号（符号語）に係るデータ（以下、「ハフマン符号データ」という）を検出する処理を行う。
【００５１】
その際、符号語検出部３２は、図４に示すように、ＤＣ係数に関するグループ番号が０〜Ｂの１２通り、並びにＡＣ係数に関するゼロラン数が０〜Ｆの１６個とグループ番号が１〜Ａの１０個との組み合わせに、ゼロラン数が０でグループ番号が０、及びゼロラン数がＦでグループ番号が０の組み合わせを加えた１６２通りの、合計で１７４通りのハフマン符号についてその一致検出（認識）処理を実行して、１番目の可変長符号データに存在するハフマン符号データを認識する。
【００５２】
そして、符号語検出部３２は、検出されたハフマン符号データ、及び入力された複数の可変長符号データを前記ゼロラン数／グループ番号認識部３３に送信する。
【００５３】
前記ゼロラン数／グループ番号認識部３３は、前記符号語検出部３２から送信されたハフマン符号データからこれに対応したゼロラン数及びグループ番号を認識し、ついで認識されたグループ番号に対応した付加ビット長を認識し、認識したゼロラン数、グループ番号及び付加ビット長に係るデータ、並びに符号語検出部３２から送信されたハフマン符号のビット長に係るデータ及び複数の可変長符号データを前記付加ビット出力部３４に送信する処理を行う。
【００５４】
前記付加ビット出力部３４は、前記ゼロラン数／グループ番号認識部３３から送信されたハフマン符号のビット長及び付加ビット長に係るデータに基づいて、１番目の可変長符号データから前記付加ビット長に応じた付加ビットに係るデータを抽出する。そして、付加ビット出力部３４は、前記ゼロラン数／グループ番号認識部３３から送信されたゼロラン数に係るデータ、及び抽出した付加ビットに係るデータを前記周波数変換部１２５に送信するとともに、１番目の可変長符号データのビット長に係るデータ、及び１番目の可変長符号データを削除した２番目以降の可変長符号データを前記符号語検出部４２に送信する処理を行う。
【００５５】
Ｂ．２次解析処理部４１
前記符号語検出部４２は、前記ハフマン符号テーブルに基づき、前記付加ビット出力部３４から送信された２番目以降の可変長符号データの内、当該２番目の可変長符号データについて、ハフマン符号データの検出処理を行う。
【００５６】
その際、符号語検出部４２は、図４に示すように、ＡＣ係数に関するゼロラン数が０でグループ番号が０〜７、ゼロラン数が１でグループ番号が１〜３、ゼロラン数が２でグループ番号が１〜２、ゼロラン数が３でグループ番号が１〜２、ゼロラン数が４でグループ番号が１、ゼロラン数が５でグループ番号が１、ゼロラン数が６でグループ番号が１、ゼロラン数が７でグループ番号が１の合計で１９通りのハフマン符号についてその一致検出処理を実行して、２番目の可変長符号データに存在するハフマン符号データを認識する。
【００５７】
そして、符号語検出部４２は、前記１９通りの内のいずれかのハフマン符号データが検出された場合には、当該ハフマン符号データ及び入力された２番目以降の可変長符号データを前記ゼロラン数／グループ番号認識部４３に送信する。一方、前記１９通りの内のいずれのハフマン符号データも検出されなかった場合には、前記付加ビット出力部３４から送信された１番目の可変長符号データのビット長に係るデータを前記入力制御部２１に送信するとともに、入力された全てのデータを破棄する処理を行う。これにより、以降の処理が中止される。
【００５８】
尚、入力制御部２１は、１番目の可変長符号データのビット長に係るデータを受信すると、受信したビット長に係る信号をシフト信号として前記内部バッファ１１２に送信し、前記内部バッファ１１２では、記憶したデータの内、その先頭から、受信したシフト信号に応じたビット長分のデータ（処理済みの可変長符号データ）を削除することで、次の可変長符号データの頭出しを行う。
【００５９】
前記ゼロラン数／グループ番号認識部４３は、前記符号語検出部４２から送信されたハフマン符号データからこれに対応したゼロラン数及びグループ番号を認識し、ついで認識されたグループ番号に対応した付加ビット長を認識し、認識したゼロラン数、グループ番号及び付加ビット長に係るデータ、並びに符号語検出４２から送信されたハフマン符号のビット長に係るデータ及び２番目以降の可変長符号データを前記付加ビット出力部４４に送信する。
【００６０】
前記付加ビット出力部４４は、前記ゼロラン数／グループ番号認識部４３から送信されたハフマン符号のビット長及び付加ビット長に係るデータに基づいて、２番目の可変長符号データから前記付加ビット長に応じた付加ビットに係るデータを抽出する。そして、付加ビット出力部４４は、前記ゼロラン数／グループ番号認識部４３から送信されたゼロラン数に係るデータ、及び抽出した付加ビットに係るデータを前記周波数変換部１２５に送信するとともに、１番目及び２番目の可変長符号データの総ビット長に係るデータ、及び２番目の可変長符号データを削除した３番目以降の可変長符号データを前記符号語検出部５２に送信する。
【００６１】
Ｃ．３次解析処理部５１
前記符号語検出部５２は、前記ハフマン符号テーブルに基づき、前記付加ビット出力部４４から送信された３番目以降の可変長符号データの内、当該３番目の可変長符号データについて、ハフマン符号データの検出処理を行う。
【００６２】
その際、符号語検出部５２は、図４に示すように、ＡＣ係数に関するゼロラン数が０でグループ番号が０〜７、ゼロラン数が１でグループ番号が１〜２、ゼロラン数が２でグループ番号が１、ゼロラン数が３でグループ番号が１、ゼロラン数が４でグループ番号が１の合計で１３通りのハフマン符号についてその一致検出処理を実行し、３番目の可変長符号データに存在するハフマン符号データを認識する。
【００６３】
そして、符号語検出部５２は、前記１３通りの内のいずれかのハフマン符号データが検出された場合には、当該ハフマン符号データ及び入力された３番目以降の可変長符号データを前記ゼロラン数／グループ番号認識部５３に送信する。一方、前記１３通りの内のいずれのハフマン符号データも検出されなかった場合には、前記付加ビット出力部４４から送信された１番目及び２番目の可変長符号データの総ビット長に係るデータを前記入力制御部２１に送信するとともに、入力された全てのデータを破棄する処理を行う。これにより、以降の処理が中止される。
【００６４】
そして、入力制御部２１は、１番目及び２番目の可変長符号データの総ビット長に係るデータを受信すると、受信したビット長に係る信号をシフト信号として前記内部バッファ１１２に送信し、前記内部バッファ１１２では、記憶したデータの内、その先頭から、受信したシフト信号に応じたビット長分のデータを削除することで、次の可変長符号データの頭出しを行う。
【００６５】
また、前記ゼロラン数／グループ番号認識部５３は、前記符号語検出部５２から送信されたハフマン符号データからこれに対応したゼロラン数及びグループ番号を認識し、ついで認識されたグループ番号に対応した付加ビット長を認識し、認識したゼロラン数、グループ番号及び付加ビット長に係るデータ、並びに符号語検出５２から送信されたハフマン符号のビット長に係るデータ及び３番目以降の可変長符号データを前記付加ビット出力部５４に送信する。
【００６６】
前記付加ビット出力部５４は、前記ゼロラン数／グループ番号認識部５３から送信されたハフマン符号のビット長に係るデータ及び付加ビット長に係るデータに基づいて、３番目の可変長符号データから前記付加ビット長に応じた付加ビットに係るデータを抽出する。そして、付加ビット出力部５４は、前記ゼロラン数／グループ番号認識部５３から送信されたゼロラン数に係るデータ、及び抽出した付加ビットに係るデータを前記周波数変換部１２５に送信するとともに、１番目〜３番目の各可変長符号データの総ビット長に係るデータ、及び３番目の可変長符号データを削除した４番目以降の可変長符号データを前記符号語検出部６２に送信する。
【００６７】
Ｄ．４次解析処理部６１
前記符号語検出部６２は、前記ハフマン符号テーブルに基づき、前記付加ビット出力部６４から送信された４番目以降の可変長符号データの内、当該４番目の可変長符号データについて、ハフマン符号データの検出処理を行う。
【００６８】
その際、符号語検出部６２は、図４に示すように、ＡＣ係数に関するゼロラン数が０でグループ番号が０〜７、ゼロラン数が１でグループ番号が１〜２、ゼロラン数が２でグループ番号が１の合計で１１通りのハフマン符号についてその一致検出処理を実行し、４番目の可変長符号データに存在するハフマン符号データを認識する。
【００６９】
そして、符号語検出部６２は、前記１１通りの内のいずれかのハフマン符号データが検出された場合には、当該ハフマン符号データ及び入力された４番目以降の可変長符号データを前記ゼロラン数／グループ番号認識部６３に送信する。一方、前記１１通りの内のいずれのハフマン符号データも検出されなかった場合には、前記付加ビット出力部５４から送信された１番目〜３番目の可変長符号データの総ビット長に係るデータを前記入力制御部２１に送信するとともに、入力された全てのデータを破棄する処理を行う。これにより、以降の処理が中止される。
【００７０】
そして、入力制御部２１は、１番目〜３番目の可変長符号データの総ビット長に係るデータを受信すると、受信したビット長に係る信号をシフト信号として前記内部バッファ１１２に送信し、前記内部バッファ１１２では、記憶したデータの内、その先頭から、受信したシフト信号に応じたビット長分のデータを削除することで、次の可変長符号データの頭出しを行う。
【００７１】
また、前記ゼロラン数／グループ番号認識部６３は、前記符号語検出部６２から送信されたハフマン符号データからこれに対応したゼロラン数及びグループ番号を認識し、ついで認識されたグループ番号に対応した付加ビット長を認識し、認識したゼロラン数、グループ番号及び付加ビット長に係るデータ、並びに符号語検出６２から送信されたハフマン符号のビット長に係るデータ及び４番目以降の可変長符号データを前記付加ビット出力部６４に送信する。
【００７２】
前記付加ビット出力部６４は、前記ゼロラン数／グループ番号認識部４３から送信されたハフマン符号のビット長に係るデータ及び付加ビット長に係るデータに基づいて、４番目の可変長符号データから前記付加ビット長に応じた付加ビットに係るデータを抽出する。そして、付加ビット出力部６４は、前記ゼロラン数／グループ番号認識部６３から送信されたゼロラン数に係るデータ、及び抽出した付加ビットに係るデータを前記周波数変換部１２５に送信し、１番目〜４番目の可変長符号データの総ビット長に係るデータを前記入力制御部２１に送信するとともに、入力された全てのデータを破棄する処理を行う。
【００７３】
尚、上述した符号語検出部４２，５２，６２のそれぞれにおける検出対象としてのハフマン符号は予め経験的に設定されるものである。図５は、画像データを一般的な圧縮率である２０％で圧縮したときに、出現するＡＣ係数に係るゼロラン数及びグループ番号、言い換えれば、ハフマン符号の出現頻度を示したものである。同図５に示すように、ゼロラン数及びグループ番号の出現頻度は、全ての組み合わせにおいて均等ではなく、或る複数の組み合わせに係るゼロラン数及びグループ番号の出現頻度が高いものとなっている。
【００７４】
具体的には、図５において太い実線で囲んだように、ゼロラン数が０の場合には、グループ番号が０〜７について出現頻度が高く、ゼロラン数が１の場合には、グループ番号が１〜３について出現頻度が高く、ゼロラン数が２及び３の場合には、それぞれグループ番号が１〜２について出現頻度が高く、ゼロラン数が４、５、６、７の場合には、それぞれグループ番号１について出現頻度が高い。
【００７５】
したがって、前記２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１において処理対象となる可能性が高い可変長符号データは、上記のような出現頻度の高いハフマン符号に係る可変長符号データである。そこで、２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１では、このような出現頻度の高いものから選定されたハフマン符号、即ちゼロラン情報及びグループ番号情報に係る可変長符号データのみを処理するようにした。
【００７６】
このようにすることで、可変長符号データ中に存在するハフマン符号の検出処理を短時間で行うことができる。即ち、上述したように全て可変長符号データを処理対象にすると、ハフマン符号を検出するために１７４通りの一致検出処理を行う必要があるが、処理対象を特定の出現頻度の高いハフマン符号に係る可変長符号データに絞ることで、ハフマン符号を検出するための一致検出時間を短縮することができるので、処理に無駄を生じさせることなく、当該処理のために必要な時間を短縮することができる。
【００７７】
また、２次解析処理部４１では１９通りのハフマン符号データに係る可変長符号データを処理対象とし、３次解析処理部５１では１３通りのハフマン符号データに係る可変長符号データを処理対象とし、４次解析処理部６１では１１通りのハフマン符号データに係る可変長符号データを処理対象としており、徐々に段階的に処理対象を絞っているので、２次解析処理部４１から４次解析処理部６１に掛けて徐々に処理時間が短くなっている。本例の画像復号化装置１は一般的に電子回路から構成されるため、この場合には、符号解析部２０の入力制御部２１から付加ビット出力部６４までの処理を、１クロック内で完了する必要がある。したがって、徐々に処理時間を短くすれば、１クロック内で処理できる可変長符号データの数を増やすことができ、処理時間の短縮化を図ることができる。
【００７８】
また、２次解析処理部４１〜４次解析処理部６１において処理対象となっていない可変長符号データについては、再度、１次解析処理部３１において確実に処理されるので、当該圧縮画像データを確実に復号化することを担保しつつ、その処理時間の短縮化を図ることができる。
【００７９】
以上の構成を備えた本例の画像復号化装置１によれば、まず、前記入力制御部２１の制御の下で、前記内部バッファ１１２から符号データが入力され、ＳＯＳマーカ以降の可変長符号データについては、少なくとも４つの可変長符号データが含まれる量のデータが一度に入力され、入力された可変長符号データが、まず、前記１次解析処理部３１に送信されて処理される。
【００８０】
即ち、１次解析処理部３１では、符号語検出部３２により、１番目の可変長符号データに関し、１７４通りのハフマン符号についてその検出処理が実行されて、当該１番目の可変長符号データ中に存在するハフマン符号データが認識される。ついで、認識されたハフマン符号データに対応するゼロラン数及びグループ番号、並びにグループ番号に対応した付加ビット長がゼロラン数／グループ番号認識部３３によって認識される。そして、付加ビット出力部３４において、この付加ビット長に係るデータを基に、１番目の可変長符号データから当該付加ビット長に応じた付加ビットに係るデータが抽出され、前記ゼロラン数に係るデータ、及び抽出された付加ビットに係るデータが当該付加ビット出力部３４から前記周波数変換部１２５に送信され、また、２番目以降の可変長符号データが２次解析処理部４１の符号語検出部４２に送信される。
【００８１】
次に、符号語検出部４２では、２番目の可変長符号データに関し、上述した１９通りのハフマン符号についてその検出処理が実行され、１９通りのハフマン符号データの内いずれかが検出された場合には、次に認識されたハフマン符号データに対応するゼロラン数及びグループ番号、並びにグループ番号に対応した付加ビット長がゼロラン数／グループ番号認識部４３によって認識される。そして、付加ビット出力部４４において、この付加ビット長に係るデータを基に、２番目の可変長符号データから当該付加ビット長に応じた付加ビットに係るデータが抽出され、前記ゼロラン数に係るデータ、及び抽出された付加ビットに係るデータが周波数変換部１２５に送信され、また、３番目以降の可変長符号データが３次解析処理部５１の符号語検出部５２に送信される。
【００８２】
一方、符号語検出部４２において、１９通りのハフマン符号データのいずれも検出されなかった場合には、付加ビット出力部３４から送信される１番目の可変長符号データのビット長に係るデータが入力制御部２１に送信されるとともに、以降の処理が中止される。そして、入力制御部２１は、受信したビット長に係る信号をシフト信号として内部バッファ１１２に送信し、内部バッファ１１２では、受信したシフト信号に応じたビット長分のデータを削除することで、次の可変長符号データの頭出しが行なわれる。
【００８３】
次に、符号語検出部５２では、３番目の可変長符号データに関し、上述した１３通りのハフマン符号についてその検出処理が実行され、１３通りのハフマン符号データの内いずれかが検出された場合には、次に認識されたハフマン符号データに対応するゼロラン数及びグループ番号、並びにグループ番号に対応した付加ビット長がゼロラン数／グループ番号認識部５３によって認識される。そして、付加ビット出力部５４において、この付加ビット長に係るデータを基に、３番目の可変長符号データから当該付加ビット長に応じた付加ビットに係るデータが抽出され、前記ゼロラン数に係るデータ、及び抽出された付加ビットに係るデータが周波数変換部１２５に送信され、また、４番目以降の可変長符号データが４次解析処理部６１の符号語検出部６２に送信される。
【００８４】
一方、符号語検出部５２において、１３通りのハフマン符号データのいずれも検出されなかった場合には、付加ビット出力部４４から送信される１番目及び２番目の可変長符号データの総ビット長に係るデータが入力制御部２１に送信されるとともに、以降の処理が中止される。そして、入力制御部２１は、受信したビット長に係る信号をシフト信号として内部バッファ１１２に送信し、内部バッファ１１２では、受信したシフト信号に応じたビット長分のデータを削除することで、次の可変長符号データの頭出しが行なわれる。
【００８５】
次に、符号語検出部６２では、４番目の可変長符号データに関し、上述した１１通りのハフマン符号についてその検出処理が実行され、１１通りのハフマン符号データの内いずれかが検出された場合には、次に認識されたハフマン符号データに対応するゼロラン数及びグループ番号、並びにグループ番号に対応した付加ビット長がゼロラン数／グループ番号認識部６３によって認識される。そして、付加ビット出力部６４において、この付加ビット長に係るデータを基に、４番目の可変長符号データから当該付加ビット長に応じた付加ビットに係るデータが抽出され、前記ゼロラン数に係るデータ、及び抽出された付加ビットに係るデータが周波数変換部１２５に送信され、また、１番目〜４番目の可変長符号データの総ビット長に係るデータが前記入力制御部２１に送信される。
【００８６】
一方、符号語検出部６２において、１１通りのハフマン符号データのいずれも検出されなかった場合には、付加ビット出力部６４から送信される１番目〜３番目の可変長符号データの総ビット長に係るデータが入力制御部２１に送信されるとともに、以降の処理が中止される。
【００８７】
そして、入力制御部２１は、受信したビット長に係る信号をシフト信号として内部バッファ１１２に送信し、内部バッファ１１２では、受信したシフト信号に応じたビット長分のデータを削除することで、次の可変長符号データの頭出しが行なわれる。
【００８８】
以上のようにして、一度に入力された少なくとも４つの可変長符号データが含まれるデータが処理されると、以後同様にして、一纏まりの圧縮画像データの処理を終えるまで、前記入力制御部２１による入力処理、前記１次解析処理部３１〜４次解析処理部６１による処理が繰り返して実行される。
【００８９】
斯くして、この画像復号化装置１によれば、上述したように、２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１において、出現頻度の高いものから選定されたハフマン符号、即ちゼロラン情報及びグループ番号情報に係る可変長符号データのみを処理するようにしたので、２次解析処理部４１、３次解析処理部５１及び４次解析処理部６１におけるハフマン符号の検出処理を短時間で行うことができる。
【００９０】
従来の画像復号化装置１００の符号解析部１１５における処理を図６（ａ）に示し、本例の画像復号化装置１の符号解析部２０における処理を図６（ｂ）に示す。
【００９１】
図６（ａ）に示すように、従来の画像復号化装置１００の符号解析部１１５では、そのハフマン符号データの検出処理において、１７４通りの一致検出処理を行う必要があることから、当該検出処理に長時間を要していた。したがって、同図６（ａ）に示すように、符号語検出部１１７における処理（Ａ）、ゼロラン数／グループ番号認識部１１８における処理（Ｂ）、付加ビット出力部１１９における処理（Ｃ）及び入力制御部１１６における処理（Ｄ）の一連の処理を１クロック内で処理できたとしても、相当な時間の残り時間が生じるような場合には、当該残り時間内で再度一連の処理を実行できなければ、この残り時間が全くの無駄時間となる。
【００９２】
一方、本例の画像復号化装置１の符号解析部２０では、図６（ｂ）に示すように、１クロック内において、従来と同じく１７４通りのハフマン符号データの一致検出処理を行う１次解析処理の後に、これより格段に処理時間が短い２次解析処理〜４次解析処理を行うことができるので、１クロック内で４つの可変長符号データを処理することができ、画像復号化に係るハフマン復号化部１０における処理を従来に比べて格段に短縮することができる。
【００９３】
尚、一致検出処理の回数における単純な比較によれば、２次解析処理部４１の符号語検出部４２における処理Ａ２の時間は、１次解析処理部３１の符号語検出部３２における処理Ａ１（従来の処理Ａに等しい）の時間の１１／１００程度であり、３次解析処理部５１の符号語検出部５２における処理Ａ３の時間は、処理Ａ１の時間の７／１００程度であり、４次解析処理部６１の符号語検出部６２における処理Ａ４の時間は、処理Ａ１の時間の６／１０程度である。
【００９４】
また、本例の符号解析部２０では、処理対象の可変長符号データを２次解析処理部４１から４次解析処理部６１に掛けて徐々に段階的に絞っており、このようにすることで、２次解析処理部４１から４次解析処理部６１に掛けて徐々に処理時間を短くすることができるため、１クロック内で処理できる可変長符号データの数をより効果的に増やすことができ、更に処理時間の短縮化を図ることができる。尚、各処理時間の関係は、Ａ１＞Ａ２＞Ａ３＞Ａ４となっている。
【００９５】
また、２次解析処理部４１〜４次解析処理部６１において処理対象となっていない可変長符号データについては、再度、１次解析処理部３１において確実に処理されるので、当該圧縮画像データを確実に復号化することを担保しつつ、その処理時間の短縮化を図ることができる。
【００９６】
以上、本発明の一実施の形態について説明したが、本発明が採り得る具体的な態様は、何らこれに限定されるものではない。
【００９７】
例えば、上例では、継続解析処理部を２次解析処理部４１、３次解析処理部５１、４次解析処理部６１の３の処理部から構成したが、継続解析処理部を構成する解析処理部の数はこれに限られるものではなく、１以上の解析処理部から構成されていれば良い。要は、目的とする時間短縮が図れるような構成であれば良い。
【００９８】
また、前記継続解析処理部（上例では２次解析処理部４１、３次解析処理部５１、４次解析処理部６１）における処理対象の絞り込みは上例のものに限られるものではなく、目的とする時間短縮が図れるように適宜設定することができる。
【符号の説明】
【００９９】
１    画像復号化装置
１０  ハフマン復号化部
２０  符号解析部
２１  入力制御部
３１  １次解析処理部
３２  符号解析部
３３  ゼロラン数／グループ番号認識部
３４  付加ビット出力部
４１  ２次解析処理部
４２  符号解析部
４３  ゼロラン数／グループ番号認識部
４４  付加ビット出力部
５１  ３次解析処理部
５２  符号解析部
５３  ゼロラン数／グループ番号認識部
５４  付加ビット出力部
６１  ４次解析処理部
６２  符号解析部
６３  ゼロラン数／グループ番号認識部
６４  付加ビット出力部
１１１  符号入力部
１１２  内部バッファ
１１３  前部マーカ解析部
１１４  最終マーカ解析部
１２５  周波数変換部
１３０  逆ジグザグスキャン部
１４０  逆量子化部
１５０  ＩＤＣＴ部
【図１】
2018142843.tif 000003
【図２】
2018142843.tif 000004
【図３】
2018142843.tif 000005
【図４】
2018142843.tif 000006
【図５】
2018142843.tif 000007
【図６】
2018142843.tif 000008
【図７】
2018142843.tif 000009
【図８】
2018142843.tif 000010
【図９】
2018142843.tif 000011
【図１０】
2018142843.tif 000012
【図１１】
2018142843.tif 000013