JP2015130640A - データ伸張装置、プログラムおよび記録媒体 - Google Patents
データ伸張装置、プログラムおよび記録媒体 Download PDFInfo
- Publication number
- JP2015130640A JP2015130640A JP2014002270A JP2014002270A JP2015130640A JP 2015130640 A JP2015130640 A JP 2015130640A JP 2014002270 A JP2014002270 A JP 2014002270A JP 2014002270 A JP2014002270 A JP 2014002270A JP 2015130640 A JP2015130640 A JP 2015130640A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- data
- circuit
- code length
- image 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
【課題】符号の切り出しを含むデータ伸張装置全体としての処理速度を、本発明を用いない場合よりも高速化できるようにする。
【解決手段】カテゴリ0判定部220は、シフト部206から供給された未処理データの先頭部分が、前ブロックと直流成分が等しいカテゴリ0を示す符号「00」の後にブロック終端符号「1010」が続く6ビットのパターンに一致するか否かを判定する。一致しない場合は、従来構成と同様、有効符号長検出部208にその先頭部分の有効符号長を検出させ、その先頭部分の有効符号長のデータをハフマンデコーダ260及びJPEGコード伸張部106に処理させる。一致する場合は、有効符号長検出部208の出力を無効化し、第3セレクタ114aがブロック生成部112a側を選択し、前ブロックと同じDC成分値1ブロック分を出力する。この場合、有効符号長検出部208の処理結果を用いない分だけ処理が速くなる。
【選択図】図4
【解決手段】カテゴリ0判定部220は、シフト部206から供給された未処理データの先頭部分が、前ブロックと直流成分が等しいカテゴリ0を示す符号「00」の後にブロック終端符号「1010」が続く6ビットのパターンに一致するか否かを判定する。一致しない場合は、従来構成と同様、有効符号長検出部208にその先頭部分の有効符号長を検出させ、その先頭部分の有効符号長のデータをハフマンデコーダ260及びJPEGコード伸張部106に処理させる。一致する場合は、有効符号長検出部208の出力を無効化し、第3セレクタ114aがブロック生成部112a側を選択し、前ブロックと同じDC成分値1ブロック分を出力する。この場合、有効符号長検出部208の処理結果を用いない分だけ処理が速くなる。
【選択図】図4
Description
本発明は、データ伸張装置、プログラムおよび記録媒体に関する。
JPEG(Joint Photographic Experts Group)等の圧縮方式に従って圧縮された画像データを伸張する伸張装置の中には、様々な方式で伸張速度の向上を図っているものがある。
例えば特許文献1に開示される装置は、JPEG符号が背景ブロック(DC成分のみ)を示しているか否かを判定し、背景ブロックであると判定した場合は、通常の伸長処理を行う代わりに、あらかじめ分かっている均一なDC成分を1ブロック分を出力することで、JPEG伸長の高速化を図っている。
圧縮画像データ中の符号が背景ブロックを示しているかどうかを適切に判定するには、圧縮画像データ中からその符号を適切に切り出す必要がある。この符号の切り出しのために時間が掛かると、背景ブロックのデータを高速に出力できる手段を有していても、装置全体としての処理速度は符号切り出しの速度により制限されてしまう。
本発明は、符号の切り出しを含むデータ伸張装置全体としての処理速度を、本発明を用いない場合よりも高速化できるようにすることを目的とする。
請求項1に係る発明は、伸張対象の圧縮画像データの先頭部分の有効符号長を検出し、検出した有効符号長を伸張手段に供給し、前記伸張手段が前記圧縮画像データの先頭から前記有効符号長のデータを伸張できるようにする有効符号長検出手段と、前記伸張対象の圧縮画像データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンであるか否かを判定し、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると判定した場合に、前記有効符号長検出手段が有効符号長を検出するのを待たずに、前記特定パターンが検知されたことを前記伸張手段に通知し、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力させる判定手段と、を有するデータ伸張装置である。
請求項2に係る発明は、前記特定の直流差分値を表す符号は、直前のブロックとの間の直流成分の差が0であることを示すカテゴリ0符号である、ことを特徴とする請求項1に記載のデータ伸張装置である。
請求項3に係る発明は、再構成可能回路と、第1回路構成と第2回路構成とを前記再構成可能回路上に再構成する制御を行う再構成制御手段と、を備え、前記第1回路構成は、前記判定手段の回路と、前記有効符号長検出手段の回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンでないと前記判定手段の回路が判定した場合に、前記圧縮画像データの先頭から前記有効符号長検出手段の検出した有効符号長のデータを、前記圧縮画像データの圧縮方式に応じた伸張方式を用いて伸張する回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第2回路構成への再構成を要求する回路と、を有し、前記第2回路構成は、前記判定手段の回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると前記判定手段の回路が判定した場合に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力する回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンでないと前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第1回路構成への再構成を要求する回路と、を有する、ことを特徴とする請求項1又は2に記載のデータ伸張装置である。
請求項4に係る発明は、前記判定手段は、前記伸張対象の圧縮画像データの先頭部分が、前記特定パターンがあらかじめ定めた回数連続するパターンであるか否かを判定し、この判定において前記特定パターンがあらかじめ定めた回数連続するパターンであると判定した場合に、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を前記あらかじめ定めた回数連続して出力させる、ことを特徴とする請求項2に記載のデータ伸張装置である。
請求項5に係る発明は、再構成可能回路と、第1回路構成と第2回路構成とを前記再構成可能回路上に再構成する制御を行う再構成制御手段と、を備え、前記第1回路構成は、前記判定手段の回路と、前記有効符号長検出手段の回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンでないと前記判定手段の回路が判定した場合に、前記圧縮画像データの先頭から前記有効符号長検出手段の検出した有効符号長のデータを、前記圧縮画像データの圧縮方式に応じた伸張方式を用いて伸張する回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第2回路構成への再構成を要求する回路と、を有し、前記第2回路構成は、前記判定手段の回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンが前記あらかじめ定めた回数連続するパターンであると前記判定手段の回路が判定した場合に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を前記あらかじめ定められた回数出力する回路と、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンが前記あらかじめ定めた回数連続するパターンでないと前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第1回路構成への再構成を要求する回路と、を有する、ことを特徴とする請求項4に記載のデータ伸張装置である。
請求項6に係る発明は、コンピュータを、伸張対象の圧縮画像データの先頭部分の有効符号長を検出し、検出した有効符号長を伸張手段に供給し、前記伸張手段が前記圧縮画像データの先頭から前記有効符号長のデータを伸張できるようにする有効符号長検出手段、前記伸張対象の圧縮画像データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンであるか否かを判定し、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると判定した場合に、前記有効符号長検出手段が有効符号長を検出するのを待たずに、前記特定パターンが検知されたことを前記伸張手段に通知し、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力させる判定手段、として機能させるためのプログラムである。
請求項7に係る発明は、コンピュータを、伸張対象の圧縮画像データの先頭部分の有効符号長を検出し、検出した有効符号長を伸張手段に供給し、前記伸張手段が前記圧縮画像データの先頭から前記有効符号長のデータを伸張できるようにする有効符号長検出手段、前記伸張対象の圧縮画像データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンであるか否かを判定し、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると判定した場合に、前記有効符号長検出手段が有効符号長を検出するのを待たずに、前記特定パターンが検知されたことを前記伸張手段に通知し、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力させる判定手段、として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
請求項8に係る発明は、伸張対象の圧縮データの先頭部分の有効符号長を検出する検出手段と、前記伸張対象の圧縮データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンである場合、前記検出手段による前記有効符号長の検出を待たずに、前記特定の直流差分値に対応する予め定められた伸張結果を出力する出力手段と、を有するデータ伸張装置である。
請求項1、6、7又は8に係る発明によれば、符号の切り出しを含むデータ伸張装置全体としての処理速度を、本発明を用いない場合よりも高速化できる。
請求項2に係る発明によれば、実際の印刷対象の文書において出現割合が高いカテゴリ0の直流成分のみのブロックを、本発明を用いない場合よりも高速に伸張することができる。
請求項3又は5に係る発明によれば、データ伸張装置の全回路を再構成可能回路上に再構成する場合よりも、再構成可能回路上の回路規模を小さくすることができる。
請求項4に係る発明によれば、特定のパターンを1つずつ検出する場合よりも、伸張処理を高速に実行することができる。
まず図1を参照して、実施形態の構成を適用し得る画像データ復号装置の構成例を説明する。この画像データ復号装置は、特許文献1に示されるものと同様のものである。図1の画像データ復号装置は、JPEG伸張処理部100、背景データ判定部110、均一データブロック生成部112、出力セレクタ114及び出力部116を備える。JPEG伸張処理部100は、JPEG圧縮された圧縮画像データをJPEG方式に従って伸張する回路であり、入力データ取り込み部102、ハフマンデコード部104、JPEGコード伸張部106、及び、ブロック生成部108を備える。入力データ取り込み部102は、復号対象であるJPEG圧縮された画像データを受信する回路である。
周知のように、JPEG方式の画像圧縮では、大まかに言えば、ビットマップ画像データを8×8画素のブロック単位に分割し、ブロックに対してDCT(離散コサイン変換)を行って周波数領域での8×8の周波数成分へと変換する。これら各周波数成分のうち、最も低周波数(例えば周波数0)の成分が直流(DC)成分であり、これはブロック内の画素値の平均を表す。DC成分より高い63個の各周波数成分は交流(AC)成分と呼ばれる。このDCT結果の各周波数成分は量子化テーブルを用いて量子化される。1ブロック分の量子化後の各成分をジグザグスキャン順序で並べると、一般には、DC成分から始まり、その後にAC成分が続くデータとなる。そして、このジグザグスキャン順序の各成分の量子化結果の並びをハフマン符号化することで、最終的なJPEG圧縮画像データが得られる。ハフマン符号化処理では、DC成分は単独で(場合によっては直前のブロックのDC成分との差分が)ハフマン符号に変換される。DC成分の後に続くAC成分は、量子化により値が0の成分が多いため、連続する0の数(ゼロランと呼ばれる)とそのあとに続く非ゼロの成分値との組がハフマン符号化される。このように、1ブロックの画像は、最終的に、1つのDC成分のハフマン符号と、その後に続くゼロランと非ゼロAC成分の組のハフマン符号(0個以上)とからなるハフマン符号データに変換される。ここで、このハフマン符号化処理では、ジグザグスキャン順序である周波数成分(量子化結果)以降の全ての成分の値が0の場合、当該周波数成分以降の高周波成分をまとめて1つのブロック終端符号(EOBマーカと呼ぶ。EOBはEnd Of Blockの略)で表現することで、データ量の削減を図っている。
ハフマンデコード部104は、このようなJPEG圧縮画像データを構成するハフマン符号を順に復号する。JPEGコード伸張部106は、ハフマン復号結果のデータに対して逆量子化やIDCT(逆離散コサイン変換)を行い、1ブロック(8×8画素)の各画素の画素値を求める。ハフマンデコード部104が行う復号処理、及びJPEGコード伸張部106が行う伸張処理は、従来公知の方式に従ったものでよい。
ブロック生成部108は、JPEGコード伸張部106の復号結果である1ブロック(8×8画素)分の画素値をバッファメモリに蓄積することで、1ブロック分の画像データを生成する。ブロック生成部108が生成した1ブロックの各画素の値は、出力セレクタ114を介して出力部116へと出力される。出力部116は、その各画素値を、例えばこの画像データ復号装置に対して復号処理を依頼した上位システム(例えば画像処理アプリケーションなど)などといった出力先システムに対して出力する。
図1の例では、ハフマンデコード部104の出力は、直接JPEGコード伸張部106に入力されるのではなく、背景データ判定部110を介することになる。
背景データ判定部110は、ハフマンデコード部104から出力されるブロックのハフマン復号結果が、「背景」(すなわちDC成分の直後にEOBマーカが続くブロック)を表しているかどうかを判定する。DC成分の直後にEOBマーカが続く場合、当該ブロックにはDC成分しか存在しないので、8×8の全画素がそのDC成分の示す均一な値となる。このように全画素が均一な値となるブロックは絵柄のないブロックなので、「背景」ブロックと呼ぶ。背景データ判定部110は、背景でないと判定したブロックのデータはJPEGコード伸張部106に供給し、背景であると判定したブロックのデータは均一データブロック生成部112に供給する。
均一データブロック生成部112は、背景データ判定部110から供給されたブロックのデータ(この場合DC成分のみ)から、8×8の全ての画素がそのDC成分に対応した同一の画素値を持つブロックのデータを生成し、出力セレクタ114に対して出力する。これら1ブロックの各画素値は、出力セレクタ114を介して出力部116へと出力され、この出力部116から出力システムに対して出力される。
出力セレクタ114は、背景データ判定部110から供給される背景データフラグ(「背景」か否かの判定結果を示すフラグデータのこと)を受け取り、判定結果が「背景でない」であればブロック生成部108を、「背景である」であれば均一データブロック生成部112を選択する。そして、選択した側から供給される各画素値を出力部116に出力する。
ここで、ハフマンデコード部104を論理回路として構成する場合、1つの例として図2に示す回路構成とすることが考えられる。図2に例示するハフマンデコード部104は、DRP(Dynamic Reconfigurable Processor:動的再構成可能プロセッサ)を用いて構成した場合の例である。図2のハフマンデコード部104は、符号切り出し部200と、有効符号入力部250と、ハフマンデコーダ260を含む。
符号切り出し部200は、入力データ取り込み部102から取り込まれる圧縮画像データの先頭から順に、1符号ずつ符号を切り出す。有効符号入力部250は、符号切り出し部200が1符号ずつ切り出した有効符号のデータをハフマンデコーダ260に入力する。ハフマンデコーダ260は、入力された有効符号を従来と同様の方式で復号する。
符号切り出し部200は、FIFO202、符号バッファ204、シフト部206、有効符号長検出部208、符号長加算部210、更新判定部212を含む。
FIFO202は、入力データ取り込み部102が取り込んだJPEG圧縮画像データを保持する先入れ先出し方式のメモリである。FIFO202に保持されたデータは、先頭から順に取り出され、符号バッファ204に入れられる。FIFO202の先頭からデータが取り出されると、取り出されたのと同量のJPEG圧縮画像データが入力データ取り込み部102から取り込まれ、FIFO202内の残りのデータの後ろに追加される。
符号バッファ204は、切り出し対象の符号を含んだデータ列を一時的に保持するバッファである。1つの例では、符号バッファ204は、図3に示すように32ビットワードのデータを2ワード保持するバッファであり、1ワード分ずつデータを更新可能である。
シフト部206は、符号バッファ204から、切り出し対象の符号を含んだ読み出す回路である。シフト部206は、符号バッファ204から読み出すデータの先頭アドレスを、それまでに切り出した有効符号の符号長に応じてシフトしていく。シフト部206が読み出したデータ列は、有効符号長検出部208と有効符号入力部250に入力される。
有効符号長検出部208は、シフト部206が読み出したデータから、そのデータに含まれる有効符号の符号長を求める。有効符号長の判定は、例えば、読み出したデータの列を、個々の符号長に対応する最小符号値と大小比較する等といった周知の手法で行えばよい。求められた符号長は、有効符号入力部250及び符号長加算部210に入力される。
有効符号入力部250は、シフト部206から入力されたデータ列の先頭から、有効符号長検出部208が検出した符号長分のデータを取り出し、ハフマンデコーダ260に入力する。
符号長加算部210は、有効符号長検出部208が検出した符号長を累積加算し、その累積加算の結果(累積加算値)をシフト部206及び更新判定部212に入力する。符号長加算部210の累積加算値は、FIFO202からのデータ入力により符号バッファ204内のデータが更新されると、初期値にリセットされ、符号バッファ204の先頭から符号を切り出す毎に、切り出した符号の符号長ずつ累積加算値が増えていく。
累積加算値は、符号バッファ204の先頭から何ビット目までシフトすると、次の符号の先頭であるかを示すシフト量として用いる。すなわち、シフト部206は、次の符号を切り出す際、符号バッファ204の先頭アドレスから、符号長加算部210が出力する累積加算値(シフト量)だけシフトしたアドレスからデータを読み出し、有効符号長検出部208等に供給する。
更新判定部212は、符号バッファ204内のデータの更新の要否を判定する。符号バッファ204内に保持したデータの先頭から符号の切り出しを進めていき、符号バッファ204内に符号切り出しのために必要なデータ量が残っていない状態になったときに、更新判定部212はFIFO202に対してデータ出力を指示し、符号バッファ204内のデータが更新されるようにする。
符号切り出し部200における符号切り出しの流れを、図3を参照して詳説する。この例では符号バッファ204は、32ビットのバッファ領域を2つ(AとB)有している。まず、(a)FIFO202から、最初にこの符号バッファ204に、圧縮画像データの先頭から32ビット×2の量のデータが転送される。この時点では、シフト部206のシフト量は0であり、(b)シフト部206は、符号バッファ204の先頭(ビット位置「0」)から固定長16ビットのデータを読み出し、このデータを有効符号長検出部208に渡す。(c)有効符号長検出部208は、渡された16ビットのデータの先頭から何ビットまでが有効符号であるのか(すなわち有効符号長)を検出する。図では、16ビットのデータのうちの先頭の太線の枠で囲んだ10ビットの部分が有効符号である。有効符号長検出部208をDRPのPE(プロセッサエレメント)群を用いて構成した例の1つでは、この有効符号長の検出の処理に5クロックの時間を要する。
有効符号長(=10ビット)がわかると、有効符号入力部250は、シフト部206から供給されている符号切り出し対象の16ビットのデータのうち、先頭から有効符号長分のデータをハフマンデコーダ260に供給する。また、符号長加算部210は、シフト量(累積加算値)の現状の値「0」に対し、有効符号長検出部208が検出した今回の有効符号長「10」を加算し、加算結果であるシフト量「10」を出力する。(d)シフト部206は、次の符号の切り出しの際、符号バッファ204の先頭位置「0」からその新たなシフト量「10」だけシフトしたビット位置「10」を先頭として固定長16ビットのデータを読み出し、有効符号長検出部208に渡す。符号切り出し部200内の各要素をDRPのPE群で構成した1つの回路構成例では場合、段階(c)で有効符号長検出部208が有効符号長を検出した後、段階(d)にて次の符号切り出し対象の16ビットデータが有効符号長検出部208に供給されるまでに4クロックの時間を要する。
(e)有効符号長検出部208は、段階(d)で供給された16ビットデータから、5クロックの時間で、有効符号長が12ビットであることを検出する。符号長加算部210は、現在のシフト量「10」に対し、今回検出された符号長「12」を加算する。(f)これに応じてシフト部206は、符号バッファ24の先頭位置「0」から新たなシフト量「22」だけシフトしたビット位置を先頭として固定長16ビットのデータを読み出し、有効符号長検出部208に渡す。
この処理を繰り返していき、符号長加算部210が出力するシフト量が「26」以上になると、符号バッファ204内から次の符号切り出し対象の16ビットのデータが取り出せなくなる。更新判定部212は、このように符号バッファ204から次の16ビットのデータが取り出せなくなったと判定すると、FIFO202内の圧縮画像データの先頭から32ビットワードを2つ読み出して符号バッファ204のA,B領域に順に格納すると共に、FIFO202内の読み出した2つのワードのうちの順番が早いほうをFIFO202の先頭から削除し、入力データ取り込み部102から新たな32ビットのデータをFIFO202内のデータの末尾に追加する。これにより、符号バッファ204内のデータが32ビットだけ進んだものとなり、FIFO202の先頭32ビットが符号バッファ204のB領域内のデータと同じものとなる。また、このとき、符号長加算部210が持つ累積加算値(シフト量)から32を減算するリセット処理を行う。以降、このように更新された符号バッファ204内のデータを対象として、前述と同様の符号切り出し処理が繰り返される。
再び図2の説明に戻る。図2では、符号切り出し部200内の各要素のブロックの近傍に丸で囲んだ数字を記載しているが、この数字は、各要素がそれぞれ自分の処理を実行するのに要するクロック数である。例えば、シフト部206は、シフト量に従って符号バッファ204から符号切り出し処理の対象とする固定長のデータ列を取り出して有効符号長検出部208に渡すのに2クロックの時間を要し、有効符号長検出部208は、シフト部2から供給されたデータ列から符号を切り出す処理に5クロックの時間を要する。
図2の太い破線で示した経路は、更新判定部212による符号バッファ204の更新が行われない期間における、1符号の切り出しのための処理経路(パイプライン)である。この処理経路では、まずシフト部206が、シフト量に応じて符号バッファ204から切り出し対象のデータを取り出して有効符号長検出部208に渡すのに2クロックを要し、有効符号長検出部208がそのデータから有効符号長を検出するのに更に5クロックを要する。そして更に、符号長加算部210が次の符号切り出し位置を示すシフト量を更新するのに2クロックを要する。これらを合わせると、符号バッファ204の更新が行われない期間は、1符号を切り出すのに合計9クロックの時間が掛かることがわかる。
また、符号バッファ204の更新が行われるときには、更新判定部212の処理に要する時間1クロックと、FIFO202から符号バッファ204に更新用のデータを転送するのに要する時間1クロックと、転送されたデータにより符号バッファ204を更新するのに要する時間1クロックとの、合計3クロックの時間が余計にかかる。したがって、この更新の際には、1符号の切り出しに12クロックの時間を要することになる。
このように、ハフマンデコード部104では、1符号の切り出しに少なくとも9クロックの時間を要する。DC成分のみの背景画像ブロックを表す符号も、その符号を切り出し、その符号がDC成分の後にブロック終端記号が続くものであることがわかるには、最低9クロックの時間が掛かる。
これに対し、図1に示した装置構成では、DC成分のみ背景ブロックについては均一データブロック生成部112が1ブロック(64画素)分の画像データをまとめて高速に生成して出力することが可能である。しかし、均一データブロック生成部112が、1ブロック分の画像データを9クロック未満の時間(例えば4クロック)で生成して出力することができたとしても、その元になる入力データのハフマン復号には少なくとも9クロックを要するので、均一データブロック生成部112がいくら高速に処理可能でも、その効果が打ち消されてしまうことになる。すなわち、符号切り出し部200が、画像データ復号装置全体の処理速度のボトルネックとなっている。
このような問題に対処するために、本実施形態では、DC成分のみでAC成分を含まないブロック(背景ブロック)のうちカテゴリ0に該当するブロックについて符号切り出しの高速化を図ることで、そのような背景画像ブロックのデータを出力する回路の高速性を生かせるようにする。この実施形態における画像データ復号装置の回路構成の一例を図4に示す。
周知のように、JPEGにおけるDC成分の符号化では、注目ブロックのDC成分の直前ブロックのDC成分に対する差分値(DC差分値と呼ぶ)を求め、そのDC差分値をハフマン符号化する。ハフマン符号化では、DC差分値をその絶対値の大きさに応じてカテゴリ分けし、各カテゴリにハフマン符号を割り当てている。カテゴリ0は、DC差分値が0である場合のカテゴリであり、注目ブロックのDC成分が直前ブロックのDC成分と同じであることを示す。カテゴリ0のDC成分に割り当てられたハフマン符号は「00」である。
DC成分のみでAC成分を含まず、かつカテゴリ0に該当するブロック、すなわちカテゴリ0の背景ブロック、を表すハフマン符号は、カテゴリ0のDC成分を表すハフマン符号「00」の直後に、ブロック終端符号(EOB)「1010」が続く6ビットの符号「001010」である。
発明者らが、社団法人電子情報技術産業協会が規定したプリンター用テストパターン(JEITA IT-3011)のうち、表、グラフ、図形、イメージを多用したカラープレゼンテーションパターンであるJ11チャートを分析したところ、DC成分のみのブロック(背景ブロック)のうち95パーセントがカテゴリ0であった。オフィスでよく用いられるワープロや表計算ソフトで作成した文書、カタログ、パンプレット、一般書籍などでも、背景ブロック群のうちカテゴリ0のものが占める割合はかなり高いと考えられる。
本実施形態では、符号切り出し部200に、カテゴリ0の背景ブロックを示すハフマン符号を判定する特別の回路(カテゴリ0判定部220)を設け、この回路によりカテゴリ0の背景ブロックを検出すると、その旨を知らせる信号を有効符号長検出部208を経ないバイパス経路により、後段の出力データ選択用のセレクタ(第3セレクタ114a。図1の例の出力セレクタ114に相当)に伝達する。これにより、有効符号長検出部208の処理結果を待たずに、セレクタが均一な背景ブロックのデータを選択して出力することが可能になる。印刷対象の画像中に多く含まれるカテゴリ0の背景ブロックを高速に復号できるようにすることで、画像全体の復号速度の向上が図れる。
以下、図4に示す回路構成について説明する。図4に示すハフマンデコード部104は、図2に示したハフマンデコード部104の回路構成に対して、カテゴリ0判定部220、カテゴリ0専用シフト量出力部222、第1セレクタ224、DC/AC判定部270及び第2セレクタ272を追加したものである。
カテゴリ0判定部220には、シフト部206から、有効符号長検出部208に供給されるのと同じ符号切り出し対象の16ビットのデータが入力される。カテゴリ0判定部220は、シフト部206から入力された16ビットのデータの先頭6ビットが、カテゴリ0の背景ブロックを示しているかどうかを判定する。(a)入力された16ビットデータの先頭6ビットのパターンが「001010」であるという条件と、(b)その6ビットがDC成分を表しているという条件の両方が満たされる場合に、その6ビットのパターンがカテゴリ0の背景ブロックを表していると判定する。このうち条件(b)は、DC/AC判定部270から供給される判定結果信号も考慮に入れて判定する。
DC/AC判定部270は、ハフマンデコーダ260の出力から1ブロックの末尾に達したことを検出すると、次の符号がDC成分であると判定し、DC成分を示すフラグ値をカテゴリ0判定部220に供給する。1ブロックの末尾に達したことは、ブロック終端符号を検出したことにより検出すればよい。また、ブロックの先頭のDC成分を検出した後ゼロランの数も含め63個のAC成分の符号がハフマンデコーダから出力されたことを検知した場合も、1ブロックの末尾に達したと判定する。
またDC/AC判定部270は、ハフマンデコーダ260からDC成分の符号が出力されたことを検出すると、次の符号はAC成分と判定し、AC成分を示すフラグ値をカテゴリ0判定部220に供給する。
カテゴリ0判定部220は、DC/AC判定部270から供給されるフラグがDC成分を表しており、かつ、シフト部206から入力された16ビットのデータの先頭6ビットが「001010」のパターンに合致する場合には、その6ビットのデータがカテゴリ0の背景ブロックを表していると判定する。またカテゴリ0判定部220は、シフト部206から入力されたデータの先頭6ビットがカテゴリ0の背景ブロックを表していると判定した場合、その次にシフト部206から入力されるデータについては、DC/AC判定部270から供給されるフラグの値によらず、DC成分であるとみなす(有効符号長検出部208等による遅延により、DC/AC判定が次の符号に間に合わない場合を考慮)。
このようにカテゴリ0判定部220の判定において判定対象データがDC成分であるか否かを考慮するのは、AC成分のハフマン符号の中にその先頭が「001010」のパターンに合致するものが存在するからである。
なお、カテゴリ0判定部220は、入力された16ビットのデータの先頭6ビットが「001010」のパターンに合致しない場合、または、DC/AC判定部270からのフラグ等によりその入力データがDC成分でないとわかっている場合には、否定判定(すなわち「カテゴリ0の背景ブロック」ではないとの判定)を行う。
カテゴリ0判定部220の判定結果を示す信号は、第1セレクタ224、第2セレクタ272及び第3セレクタ114aに供給される。それら各セレクタ224、272及び114aは、それぞれa入力とb入力という2つの入力を受け、カテゴリ0判定部220からの信号が「カテゴリ0の背景ブロック」を示す値である場合にはa入力を選択し、そうでない場合はb入力を選択する。
第1セレクタ224のa入力にはカテゴリ0専用シフト量出力部222の出力が供給され、b入力には有効符号長検出部208の出力が供給されており、それら2入力のうちの一方を選択して符号長加算部210へと出力する。カテゴリ0専用シフト量出力部222は、カテゴリ0の背景ブロックを表すハフマン符号パターン「001010」のビット長である固定値「6」を常に出力している。
したがって、カテゴリ0判定部220が肯定判定(すなわち今回切り出した符号はカテゴリ0の背景ブロックを表す)を行った場合、第1セレクタ224は値「6」を符号長加算部210に供給する。これにより符号長加算部210が出力するシフト量は、カテゴリ0の背景ブロックを表すハフマン符号パターン「001010」のビット長「6」だけ増える。この場合、有効符号長検出部208の検出処理(所要時間例えば5クロック)の完了を待たずにシフト量が加算され、シフト部206が次の切り出し対象のデータを読み出せるようになる。同様に、更新判定部212の更新判定も、有効符号長検出部208の処理完了を待たずに実行される。
逆に、カテゴリ0判定部220の判定結果が否定(カテゴリ0の背景ブロックではない)の場合、第1セレクタ224は、b入力を選択する。これにより、有効符号長検出部208の出力値が符号長加算部210に供給されることになる。したがって、シフト部206が符号バッファ204からデータを読み出した時点から、有効符号長検出部208の検出処理の所要時間(例えば5クロック)が経過した時点で、有効符号長検出部208が求めた有効符号長が符号長加算部210に入力される。これは、図2に示した回路構成の場合と同様である。
次に第2セレクタ272について説明する。第2セレクタ272のa入力には「無効」を示す信号値が、b入力にはハフマンデコーダ260の出力が供給されており、それら2入力のうちの一方を選択してJPEGコード伸張部106へと出力する。
カテゴリ0判定部220が肯定判定をした場合、第2セレクタ272はa入力「無効」を選択し、JPEGコード伸張部106側へと出力する。JPEGコード伸張部106は、この「無効」を示す値を検知すると、伸張処理を一時停止するようにしてもよい。「無効」値の入力に応じて伸張処理を一時停止することで、誤って切り出されたデータが伸張され、後段に流れることが更に確実に防止される。
すなわち、第2セレクタ272のa入力が選択された場合は、切り出された符号はカテゴリ0の背景ブロックを示すものであり、この場合、JPEGコード伸張部106を用いる代わりに、ブロック生成部112a(図1の例の均一データブロック生成部112に相当)から均一な背景値を1ブロック分まとめて出力することになる。このため、第3セレクタ114aがブロック生成部112a側のa入力を選択するわけであるが、ここではそれに加えてJPEGコード伸張部106を一時停止することで、用いないデータの伸張結果がJPEGコード伸張部106から出力され、誤って後段に流れることを防止するのである。
カテゴリ0判定部220が否定判定をした場合、第2セレクタ272はb入力を選択し、ハフマンデコーダ260のデコード結果をJPEGコード伸張部106へと出力する。JPEGコード伸張部106は、そのデコード結果をJPEG伸張することで、1ブロック分の画像データを復号する。この処理は、図2に示した回路構成の場合と同様である。
次に第3セレクタ114aについて説明する。第3セレクタ114aのa入力にはブロック生成部112aの出力が、b入力にはブロック生成部108の出力が供給されており、それら2入力のうちの一方を選択して外部へ(図1の例では出力部116を経由して、復号依頼元の装置へ)と出力する。
ブロック生成部108は、図1に示したブロック生成部108と同様、JPEGコード伸張部106の伸張結果に基づき1ブロックの画像データを生成して出力する。
一方、ブロック生成部112aは、全画素がDC成分値出力部111からのDC成分値を持つ1ブロック(すなわち64画素)の背景画像データを生成し、出力する。なお、DC成分値出力部111は、JPEGコード伸張部106から出力された最新のDC成分値(言い換えれば、直前のブロックのDC成分値)を保持し、常に出力している。このDC成分値は、JPEGコード伸張部106にも供給されており、JPEGコード伸張部106はDC成分の伸張復号の際に、この直前ブロックのDC成分値に対してデコード結果のDC差分値を加算することで、現ブロックのDC成分値と求める。このように、DC成分値出力部111とブロック生成部112aのペアが、図1の例の均一データブロック生成部112に相当する。
カテゴリ0判定部220が肯定判定をした場合、第3セレクタ114aはa入力、すなわちブロック生成部112aが出力する背景ブロックの画像データを選択し、これを外部に出力する。
カテゴリ0判定部220が否定判定をした場合、第3セレクタ114aはb入力を選択し、ブロック生成部108から出力される通常のJPEG伸張結果の画像データを出力する。この処理は、図2に示した回路構成の場合と同様である。
以上に説明した各セレクタ224、272及び114aのうち、第1セレクタ224は、カテゴリ0判定部220が判定を行った時点で、その判定の結果に従って即座に選択の切り替えを行う。これに対し、第2セレクタ272及び第3セレクタ114aの選択の切り替えは、その判定の時点でシフト部206から各セレクタ272及び114aまでの回路のパイプライン内に存在するデータを処理し終わるまで待ってから行う。
すなわち、第2セレクタ272の選択をb入力(通常のJPEG伸張時)からa入力(カテゴリ0の背景ブロックの高速出力時)に切り換えるのは、シフト部206と第2セレクタ272との間の、有効符号長検出部208とハフマンデコーダ260からなるパイプライン内にあるデータがすべてハフマンデコーダ260で処理し終わった時点である。このパイプラインの長さ(パイプライン遅延量)は既知であり、第2セレクタ272は、b入力を選択している状態でカテゴリ0判定部220から肯定判定(カテゴリ0の背景ブロック)を示す信号を受け取ると、そのパイプラインの遅延量に対応するクロック数分だけ待ってから、選択をa入力側に切り換える。また、この代わりに、例えばハフマンデコーダ260が、デコード結果と並行して、そのデコード結果がブロックの終端に該当するか否かを示すトークンを第2セレクタ272に出力し、このトークンに従って第2セレクタ272の切り替えを制御してもよい。この例では、第2セレクタ272は、b入力を選択している状態でカテゴリ0判定部220から肯定判定を受け取った場合、その後ブロックの終端を示すトークンが入力されるまでは、a入力への切り替えを行わず、その終端を示すトークンが入力されたタイミングで、a入力へと選択を切り換える。
同様に、第3セレクタのb入力からa入力に切り換えるのは、シフト部206と第3セレクタ272との間のパイプライン(有効符号長検出部208、ハフマンデコーダ260、JPEGコード伸張部106及びブロック生成部108)内にあるデータがすべて第3セレクタ114aから外部に出力し終わったタイミングである。別の観点から言えば、その切り替えのタイミングは、第2セレクタ272の選択をbからaに切り換えた後、その切り替えの時点でJPEGコード伸張部106が伸張しているブロックの符号の伸張が終了し、その伸張結果のブロックのデータが第3セレクタ114aから出力し終わったタイミングである。このタイミングの検出は、例えば、第2セレクタ272が、JPEGコード伸張部106へと出力するデータと並行に出力するトークンを用いて行う。すなわち、第2セレクタ272は、JPEGコード伸張部106へと出力するデータがブロックの終端に該当するか否かを示すトークンを、そのデータと共に、JPEGコード伸張部106以降のパイプラインと並行な信号経路を経由して第3セレクタ114aへと送る。第3セレクタ114aは、b入力を選択している状態でカテゴリ0判定部220から肯定判定を受け取った場合、その後ブロックの終端を示すトークンが入力されるまでは、a入力への切り替えを行わず、その終端を示すトークンが入力されたタイミングで、a入力へと選択を切り換える。
以上、第2セレクタ272及び第3セレクタ114aの選択をbからaに切り換えるタイミングについて説明した。一方、それらセレクタ272及び114aの選択をその逆向き(すなわちaからb)へ切り換える場合も、同様に、カテゴリ0判定部220が判定結果を肯定(カテゴリ0の背景ブロックである)から否定(カテゴリ0の背景ブロックでない)へと切り換えたタイミングでは、ブロック生成部112aから前のブロック(これはカテゴリ0の背景ブロック)のデータを出力中である。したがって、第3セレクタ114aはこのブロックの全データの出力が完了されるのを待って、第2セレクタ272及び第3セレクタ114aの選択をb入力側に切り換える。
図4に示す画像データ復号装置は、各セレクタ224、272及び114aの選択をすべてb入力へと初期化してから、入力された圧縮画像データの復号を開始する。その後は、復号の進展に伴って、上述の方式に従って各セレクタ224、272及び114aの選択を切り換えていく。これにより、画像データ出力装置からは、カテゴリ0の背景ブロック以外のブロックについてはJPEGコード伸張部106の伸張結果が、カテゴリ0の背景ブロックについては直前のブロックと同じDC成分1ブロック分のデータが、それぞれ出力されることになる。ここで、入力される圧縮画像データのうちカテゴリ0の背景ブロックを表す符号が連続する部分では、カテゴリ0判定部220の判定結果に従って第1セレクタ224からカテゴリ0専用シフト量「6」が即座に(すなわち有効符号長検出部208の処理を経ることなく)符号長加算部210に供給される。したがって、符号切り出し部200が1符号を切り出すのに要する時間(パイプラインの長さ)は、図2に示した通常の場合と比べて、有効符号長検出部208の処理時間(例えば5クロック)だけ短くなる。図2の例では1符号あたりの切り出し時間が最短で9クロックであったが、図4の回路構成の場合、カテゴリ0の背景ブロックを表す符号が連続する部分では、最短4クロックで1符号を切り出せる。したがって、ブロック生成部112aから背景ブロックの画像データ64画素分を例えば4クロックで出力する場合、符号切り出し部200の符号切り出し速度は、ブロック生成部112aからの画像データ出力速度に匹敵するものとなる。このような仕組みにより、ブロック生成部112aによる背景ブロックデータの高速出力能力を削ぐことなく、画像データ復号装置全体として高速な復号処理が実現される。
以上、本発明の一実施形態について説明した。
さて、前述の通りカテゴリ0の背景ブロックを示すハフマン符号は「001010」の6ビットデータ列あるのに対し、シフト部206が符号バッファ204から読み出す符号切り出し対象のデータは16ビット長である。このため、その切り出し対象のデータには、カテゴリ0の背景ブロックを示す6ビットの符号が2つ連続して含まれることもある。画像内で同一色の背景が連続していることが多いことを考えると、むしろ切り出し対象の16ビットの中にカテゴリ0の背景ブロックを示す6ビットの符号が2つ連続して入っているケースは多いと考えられる。
そこで、図4の回路の変形例として、カテゴリ0判定部220が、カテゴリ0の背景ブロックの2回連続しているか否かを判定してもよい。すなわち、カテゴリ0判定部220は、シフト部206から供給される16ビットのデータの先頭12ビットが、符号「001010」が2回連続したパターン「001010001010」に一致するかどうかを判定する。この判定の結果が肯定(「一致」)であり、且つ、DC/AC判定部270からDC成分を示すフラグが入力されている(または直前の符号の判定結果も「一致」であった)場合に、カテゴリ0判定部220は、肯定判定を示す値を各セレクタ224、272、114aに供給する。これに応じ、第3セレクタ114aは、(b側を選択している場合には、肯定判定の時点で未出力のデータの出力が終わり次第)a側、すなわちブロック生成部112a側を選択し、ブロック生成部112aから背景ブロックのデータを2ブロック分(1ブロックの出力に4クロックを要する場合は、8クロックの時間)出力する。逆に、第3セレクタ114aがa側を選択しているときに、カテゴリ0判定部220が否定判定(すなわちカテゴリ0の背景ブロックの2連続ではない)を行った場合は、その判定の時点で出力中の背景ブロック(2連続分)の出力が終わり次第、第3セレクタ114aは選択をb側に切り換える。
なお、この変形例では、カテゴリ0専用シフト量出力部222は、符号「001010」2つ分のシフト量「12」を出力する。
この変形例では、符号長加算部210及びシフト部206の処理のためのパイプライン遅延が図2の場合と同様それぞれ2クロックである場合、符号切り出しサイクル1回の4クロック(FIFO202の更新が行われない場合)の時間で、カテゴリ0の背景ブロックを2つまとめて出力することができる。すなわち、カテゴリ0の背景ブロックを1つずつ検出して出力する上記実施形態に対して約二倍の符号切り出し速度を得ることができる。なお、この変形例では、符号切り出し部200がカテゴリ0の背景ブロックの2連続を検出する時間(上述の例では4クロック)に、ブロック生成部112aから2ブロック分のデータを出力できる(例えば2倍の帯域を持つ出力バスを用いる)ようにすれば、符号切り出し部200とブロック生成部112aの速度が整合し、無駄がない。
この変形例では、シフト部206が符号バッファ204から読み出すデータが16ビットであり、カテゴリ0の背景ブロックを表す符号(「カテゴリ0背景符号」と呼ぶ)が6ビットであったため、カテゴリ0判定部220ではその符号の2連続の有無を判定した。これに対し、例えばシフト部206が符号バッファ204から読み出すデータが32ビットであれば、カテゴリ0背景符号が最大5回連続するパターンを検出することができ、5ブロック分の背景ブロックを連続して出力することが可能となる。カテゴリ0判定部220が同時に検出するカテゴリ0判定符号の連続数は、シフト部206が符号バッファ204から読み出すデータのビット長の中に含まれ得るカテゴリ0背景符号の最大数以下の範囲で定めればよい。この場合、その連続数は、ブロック生成部112aが生成する背景ブロックの画像データを外部に出力するのに用いる出力バスの出力帯域幅(出力速度)の許す範囲内で定めればよい。
次に、実施形態の画像データ復号装置をDRPに実装する例を説明する。周知のように、DRPは、使用するPEの組合せやそれらPE間の配線構造を動的に(すなわち例えば1クロックの間で)切り替えることで、内部の論理回路構成を動的に再構成できるプロセッサのことである。DRP上に構成する回路構成は、コンフィギュレーション(以下「コンフィグ」と略す)と呼ばれる。DRPは、コンフィギュレーションを定義する複数のコンフィグデータを保持可能であり、使用するコンフィグデータを切り換えることで、内部の回路構成を再構成する。
以下に示すDRP実装例では、通常のJPEG復号系統と、カテゴリ0の背景ブロック用の復号系統とを、それぞれ別々のコンフィグとする。
通常のJPEG復号系統は、図5に示すコンフィグAとして実装される。図5に示すコンフィグAの構成要素のうち、図4に示した上記実施形態の画像データ復号装置の構成要素と同様のものには同一符号を付した。
図5に示すように、コンフィグAは、図4に示した回路構成から、カテゴリ0専用シフト量出力部222、第1セレクタ224、ブロック生成部112a及び第3セレクタ114aを削除し、新たにリコンフィグリクエスト生成部120を追加したものである。図4に示す構成から削除した要素は、通常のJPEG復号を行う場合には不要である。
カテゴリ0判定部220が、シフト部206からのデータ列の先頭が「カテゴリ0の背景ブロックを表す符号」に該当しないと判定(否定判定)している間は、DRP上にはこのコンフィグAが構成されている。この間、第2セレクタ272はb入力を選択しており、図2を参照して説明したのと同様の符号切り出し及び復号が行われる。
そして、DRP上にコンフィグAが構成されているときに、カテゴリ0判定部220がシフト部206からのデータ列の先頭が「カテゴリ0の背景ブロックを表す符号」に該当すると判定(肯定判定)した場合、第2セレクタ272が選択をa入力側へと切り換える。同時に、肯定判定の信号を受け取ったリコンフィグリクエスト生成部120は、カテゴリ0の背景ブロック用のコンフィグBへの切替を求めるリコンフィギュレーション(リコンフィグ)リクエストを生成し、リコンフィグ制御部1008(後述。図7参照)へと出力する。これにより、DRP上に構成される回路が、次に説明するコンフィグB(図6参照)へと再構成される。
なお、リコンフィグリクエスト生成部120は、カテゴリ0判定部220から肯定判定の信号を受け取った場合、図4の実施形態の場合と同様、その判定の時点でシフト部206から出力部116までの間のパイプラインにある未処理のデータの処理が完了するのを待ってから、リコンフィグリクエストを発する。
コンフィグBは、図6に示すように、図4に示した回路構成から、JPEGコード伸張部106、ブロック生成部108、有効符号長検出部208、第1セレクタ224、ハフマンデコーダ260、DC/AC判定部270及び第3セレクタ114aを削除し、新たにリコンフィグリクエスト生成部120を追加したものである。図4に示す構成から削除した要素は、カテゴリ0の背景ブロックについての復号を行う場合には不要である。
カテゴリ0判定部220が、シフト部206からのデータ列の先頭が「カテゴリ0の背景ブロックを表す符号」に該当すると判定(肯定判定)している間は、DRP上の回路構成はこのコンフィグBとなっている。この間、第2セレクタ272はb入力を選択しており、第2セレクタ272はDC成分値出力部111が動作するための信号を出力する。DC成分値出力部111には、このコンフィグBに切り替わる前のコンフィグA(図5)の回路のJPEGコード伸張部106が求めた最新のDC成分値が保持されている。第2セレクタ272からb入力の信号を受けている間は、DC成分値出力部111は、そのDC成分値をブロック生成部112aへと出力する。これに応じ、ブロック生成部112aは、全画素がそのDC成分値を持つ背景ブロックの画素群のデータを出力部116を介して外部に出力する 。
そして、DRP上にコンフィグBが構成されているときに、カテゴリ0判定部220がシフト部206からのデータ列の先頭が「カテゴリ0の背景ブロックを表す符号」に該当しないと判定(否定判定)した場合、第2セレクタ272が選択をa入力側へと切り換える。これにより、DC成分値出力部111に対して「無効」信号が入力される。DC成分値出力部111は、「無効」信号を受け取ると、保持しているDC成分値の出力を停止する(あるいは、そのDC成分値の代わりに、「無効」を示す信号を出力する)。同時に、否定判定の信号を受け取ったリコンフィグリクエスト生成部120は、コンフィグAへの切替を求めるリコンフィグリクエストを生成し、後述するリコンフィグ制御部1008へと出力する。これにより、DRP上に構成される回路が、コンフィグA(図5参照)へと再構成される。
なお、コンフィグBのリコンフィグリクエスト生成部120は、カテゴリ0判定部220から否定判定の信号を受け取った場合、図4の実施形態の場合と同様、その判定の時点で既にDC成分出力部111から出力済みのDC成分値に対応するブロックがすべてブロック生成部112aから出力部116を介して出力完了するのを待ってから、リコンフィグリクエストを発する。
なお、使用するDRPが部分再構成可能な場合、コンフィグAからB、BからAへの切り替え(再構成)では、両コンフィグ間で共通の要素はDRP上に残し、共通でない要素のみ再構成を行うようにしてもよい。部分再構成とは、DRP上に構成されている回路の一部を残し、その他の部分を別の構成へと再構成する処理のことである。例えば、図5のコンフィグAから図6のコンフィグBへと部分再構成する場合、コンフィグAのうち入力データ取り込み部102、FIFO202、符号バッファ204、シフト部206、符号長加算部210、更新判定部212、カテゴリ0判定部220、第2セレクタ272、DC成分値出力部111、出力部116及びリコンフィグリクエスト生成部120はそのまま保存される。そして、DRP内のPE(プロセッサエレメント)のうち、それら保存される要素を構成しているPE以外のPE群を用いて、コンフィグBで新たに必要となるカテゴリ0専用シフト量出力部222及びブロック生成部112aの各要素と、これら各要素と既存の他の要素とを繋ぐ配線とが形成される。
部分再構成の前後で保存される回路要素は、再構成前に当該回路要素内に保持しているデータを保持したまま、再構成後に処理を再開する。例えば、コンフィグAからB、BからAへの再構成の際、符号長加算部210は再構成前の累積加算値(シフト量)を保持したまま残り、再構成後には、その保持している累積加算値から処理を再開する。
図5及び図6に示した例において、カテゴリ0判定部220は、カテゴリ0の背景ブロックの2回連続しているか否かを判定するものであってもよい。この場合、カテゴリ0専用シフト量出力部222は、カテゴリ0の背景ブロックを表す符号2つ分のシフト量「12」を出力する。
このようなコンフィグの切替機能を実現するためのDRP構成の例を図7示す。
図7に示すDRPにおいて、再構成可能回路部1004は、内部の論理回路構成を動的に(すなわち当該プロセッサが動作中に)再構成できる回路である。再構成可能回路部1004としては、例えば、特開2009−3765号公報に紹介されているDNAなど、様々な既存の、又はこれから開発される回路を用いることができる。例えば、DNAは、多数のプロセッサエレメント(PE)からなるアレイであり、それらPE間の接続構成をコンフィギュレーションデータに従って高速(例えば1クロックの間に)組み替え可能となっている。なお、その公報で紹介されたDAPDNAアーキテクチャをこの実施形態に採用した場合、リコンフィグ制御部1008及び次コンフィグデータ選択部1014は、DAPと呼ばれる汎用プロセッサコアで、後述する各機能を表すプログラムを実行することにより実現される。この場合、再構成可能回路部1004と汎用プロセッサコアとを含む回路が、1つのDRPとして提供される。また、DRPは、RAM(ランダム・アクセス・メモリ)等のメモリと、外部装置との間でのデータの入出力など入出力回路と、を備える。これらハードウエア要素のうちのいくつかが1つの集積回路上に集積されていてももちろんよい。もちろん、これはあくまで一例に過ぎず、他の再構成可能プロセッサアーキテクチャを用いてもよい。
データ入力部1002は、再構成可能回路部1004上に再構成(リコンフィグ)された処理回路に対して入力データを供給する手段である。例えば、再構成可能回路部1004に接続されたメモリ上に確保された入力データ用のバッファ領域が、データ入力部1002の一例である。この場合、ホストシステム(例えばこのDRPの装着先のコンピュータのCPU)は、この実施形態のDRPに圧縮画像の復号処理を実行させる場合、処理対象である圧縮画像データを入力データとしてそれら各バッファ領域に転送し、リコンフィグ制御部1008に対してその入力データの処理を指示する。これに応じ、リコンフィグ制御部1008は、その入力データをデータ入力部1002から再構成可能回路部1004上に構成された画像データ復号回路に供給する。また、別の例として、ホストシステムからこの実施形態のDRPに、DMA(ダイレクトメモリアクセス)によりデータを転送してもよく、この場合データ入力部1002は、例えば、データ処理装置内のDMAコントローラ(図示省略)により割り当てられるチャンネルに相当する。
データ出力部1006は、再構成可能回路部1004上に再構成された画像データ復号回路から出力されたデータをホストシステムに対して出力する手段である。データ出力部1006も、上述のデータ入力部1002と同様、再構成可能回路部1004に接続されたメモリ上に確保された出力バッファ、或いはDMAコントローラから割り当てられた出力チャンネルなどがその具体例である。
リコンフィグ制御部1008は、再構成可能回路部1004内の回路要素の接続関係を制御することで、再構成可能回路部1004上に各種データ処理のための回路を再構成する。また、リコンフィグ制御部1008は、再構成可能回路部1004上に再構成された回路に対してホストシステムからの指示に応じてデータ入力部1002経由で入力データを供給したり、その回路からの出力データをデータ出力部1006経由でホストシステムに返したりする制御を行う。
再構成可能回路部1004内の回路の再構成は、コンフィグデータ格納部1010に記憶されたコンフィグデータに従って行われる。この例では、コンフィグデータ格納部1010には、図5及び図6に示したコンフィグA及びBをそれぞれ表すコンフィグデータA1012a及びコンフィグデータB1012bが記憶される。コンフィグデータ格納部1010は、例えばDRP内のRAM又は不揮発性メモリなどの記憶装置上に構成される。コンフィグデータ格納部1010には、ホストシステムからの制御により新たなコンフィギュグデータを追加したり、既存のコンフィグデータを削除したりすることができる。
リコンフィグ制御部1008は、再構成可能回路部1004上に構成された回路からリコンフィグリクエストを受け取ると、そのリクエストに応じたコンフィグデータを選択する指示を次コンフィグデータ選択部1014に発する。
次コンフィグデータ選択部1014は、再構成可能回路部1004上に次に再構成すべきコンフィグを規定するコンフィグデータを選択する手段である。例えば、コンフィグデータ格納部1010に記憶された各コンフィグデータを再構成可能回路部1004に適用する条件を示す制御情報が、あらかじめホストシステムから次コンフィグデータ選択部1014に設定されている。次コンフィグデータ選択部1014は、リコンフィグ制御部1008から指示を受けると、その制御情報に従い、その指示に応じたコンフィグデータをコンフィグデータ格納部1010から読み出し、再構成可能回路部1004上に現在構成されているコンフィグの処理が終わると、そのコンフィグデータを再構成可能回路部1004上に書き込むことで、再構成可能回路部1004を次の回路構成へと切り換える。
なお、上述したDAPDNAアーキテクチャのように、再構成可能回路部1004に複数のバンクを備えるコンフィグメモリを設け、各バンクにコンフィグデータをそれぞれ記憶させ、使用するバンクを順次切り替えることで回路の再構成を行う構成としてもよい。例えばコンフィグメモリのバンク数より多いコンフィグデータを用いる場合などには、各バンク内のコンフィグデータを、コンフィグデータ格納部1010内のコンフィグデータにより順次書き替えていってもよい。
このようなDRP構成において、復号開始時にはまずコンフィグAを再構成可能回路部1004内に構成する。そして、その後リコンフィグ制御部1008は、コンフィグAのリコンフィグリクエスト生成部120からリコンフィグリクエストが到来すれば、再構成可能回路部1004内の回路をコンフィグBに書き換え、またコンフィグBのリコンフィグリクエスト生成部120からリコンフィグリクエストが到来すれば、再構成可能回路部1004内の回路をコンフィグAに書き換える。これにより、図4の装置と同等の機能がコンフィグAとBの切り替えにより実現される。
以上、実施形態及びその変形例を説明した。以上の例では、実施形態及びその変形例の画像データ復号装置をDRPに実装する場合を例にとって説明したが、回路の再構成が不要な図4の構成は、DRP以外にも、IC(集積回路)、LSI(大規模集積回路)、ASIC(特定用途向け集積回路)などの通常の集積回路、FPGA(Field Programmable Gate Array)等のプログラマブル論理回路などといった様々な形態の回路として実装可能である。
以上では、画像データの圧縮方式としてJPEGが用いられる場合を例にとって説明した。しかし、この実施形態の方式は、JPEGのみならず、ブロックごとに1つの直流成分の情報と直流成分以外の各周波数の成分の情報とを含む圧縮画像データであって直流成分以外の各周波数の成分がすべて0であるブロックについては直流成分の情報とブロック終端符号のみを含むような圧縮画像データを扱う圧縮符号化方式一般に適用可能である。ここで、直流成分とは、必ずしも周波数が完全に0である成分に限られるわけではなく、当該圧縮符号化方式で周波数解析により求める最低周波数成分であってもよい。また、周波数解析には、JPEGにおいて用いられるDCTに限らず、ウェーブレット変換などの他の方式を用いてもよい。
以上に説明した画像データ復号装置は、例えば、複写機、プリンタ、複合機(プリンタ、スキャナ、コピー機、ファクシミリ装置などの機能を兼ね備えた多機能装置)、デジタルカメラなどといった、静止画像の圧縮データを復号する機能を有する機器に組み込むことができる。
また以上の説明では、有効符号長検出部208等をはじめとする各要素がハードウエア回路として構成されている場合を例にとっていた。しかし、有効符号長検出部208等の各要素がプログラムモジュールを用いてソフトウエアとして構成されている場合でも、有効符号長検出部208の検出処理が、ブロック生成部112aからの1ブロック分のデータ出力よりも時間を要するのであれば、図1及び図2に説明した装置と同様の問題が生じる。この問題は、有効符号長検出部208よりも高速に判定を行うことができるカテゴリ0判定部220をソフトウエアとして実装すれば、図4等に示した実施形態の装置と同様の原理で解決できる。有効符号長検出部208は、シフト部206から供給されるデータが様々に異なる符号長のいずれに合致するかを判定する必要があるのに対し、カテゴリ0判定部220は、その供給されるデータが特定の1つの符号パターン(例えば前述の「001010」)に合致するか否かを判定するだけでよい。このため、ソフトウエアとして構成する場合でも、カテゴリ0判定部220の方が有効符号長検出部208よりも高速処理が可能である。このように、実施形態及び変形例の画像データ復号装置は、ソフトウエアとして実装した場合でも、ハードウエア回路として実装した場合と同様の効果が得られる。
ソフトウエアとして実装する場合、実施形態及び変形例の画像データ復号装置は、例えば、汎用のコンピュータに当該装置の各機能モジュールの処理を表すプログラムを実行させることにより実現される。ここで言うコンピュータは、例えば、ハードウエアとして、CPU等のマイクロプロセッサ、ランダムアクセスメモリ(RAM)およびリードオンリメモリ(ROM)等のメモリ(一次記憶)、HDD(ハードディスクドライブ)やSSD(ソリッドステートドライブ)、フラッシュメモリ等の二次記憶を制御する二次記憶コントローラ、各種I/O(入出力)インタフェース、無線又は有線のネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばI/Oインタフェース経由で、CDやDVD、ブルーレイディスクなどの可搬型ディスク記録媒体に対する読み取り及び/又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び/又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがCDやDVD等の記録媒体を経由して、又はネットワーク等の通信手段経由で、フラッシュメモリ等の二次記憶装置に保存され、コンピュータにインストールされる。二次記憶装置に記憶されたプログラムがRAMに読み出されCPU等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。
100 JPEG伸張処理部、102 入力データ取り込み部、104 ハフマンデコード部、106 JPEGコード伸張部、108 ブロック生成部、110 背景データ判定部、111 DC成分値出力部、112 均一データブロック生成部、112a ブロック生成部、114 出力セレクタ、114a 第3セレクタ、116 出力部、120 リコンフィグリクエスト生成部、200 符号切り出し部、202 FIFO、204 符号バッファ、206 シフト部、208 有効符号長検出部、210 符号長加算部、212 更新判定部、220 カテゴリ0判定部、222 カテゴリ0専用シフト量出力部、224 第1セレクタ、250 有効符号入力部、260 ハフマンデコーダ、270 DC/AC判定部、272 第2セレクタ。
Claims (8)
- 伸張対象の圧縮画像データの先頭部分の有効符号長を検出し、検出した有効符号長を伸張手段に供給し、前記伸張手段が前記圧縮画像データの先頭から前記有効符号長のデータを伸張できるようにする有効符号長検出手段と、
前記伸張対象の圧縮画像データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンであるか否かを判定し、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると判定した場合に、前記有効符号長検出手段が有効符号長を検出するのを待たずに、前記特定パターンが検知されたことを前記伸張手段に通知し、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力させる判定手段と、
を有するデータ伸張装置。 - 前記特定の直流差分値を表す符号は、直前のブロックとの間の直流成分の差が0であることを示すカテゴリ0符号である、ことを特徴とする請求項1に記載のデータ伸張装置。
- 再構成可能回路と、
第1回路構成と第2回路構成とを前記再構成可能回路上に再構成する制御を行う再構成制御手段と、
を備え、
前記第1回路構成は、
前記判定手段の回路と、
前記有効符号長検出手段の回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンでないと前記判定手段の回路が判定した場合に、前記圧縮画像データの先頭から前記有効符号長検出手段の検出した有効符号長のデータを、前記圧縮画像データの圧縮方式に応じた伸張方式を用いて伸張する回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第2回路構成への再構成を要求する回路と、
を有し、
前記第2回路構成は、
前記判定手段の回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると前記判定手段の回路が判定した場合に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力する回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンでないと前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第1回路構成への再構成を要求する回路と、
を有する、ことを特徴とする請求項1又は2に記載のデータ伸張装置。 - 前記判定手段は、前記伸張対象の圧縮画像データの先頭部分が、前記特定パターンがあらかじめ定めた回数連続するパターンであるか否かを判定し、この判定において前記特定パターンがあらかじめ定めた回数連続するパターンであると判定した場合に、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を前記あらかじめ定めた回数連続して出力させる、ことを特徴とする請求項2に記載のデータ伸張装置。
- 再構成可能回路と、
第1回路構成と第2回路構成とを前記再構成可能回路上に再構成する制御を行う再構成制御手段と、
を備え、
前記第1回路構成は、
前記判定手段の回路と、
前記有効符号長検出手段の回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンでないと前記判定手段の回路が判定した場合に、前記圧縮画像データの先頭から前記有効符号長検出手段の検出した有効符号長のデータを、前記圧縮画像データの圧縮方式に応じた伸張方式を用いて伸張する回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第2回路構成への再構成を要求する回路と、
を有し、
前記第2回路構成は、
前記判定手段の回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンが前記あらかじめ定めた回数連続するパターンであると前記判定手段の回路が判定した場合に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を前記あらかじめ定められた回数出力する回路と、
前記伸張対象の圧縮画像データの先頭部分が前記特定パターンが前記あらかじめ定めた回数連続するパターンでないと前記判定手段の回路が判定した場合に、前記再構成制御手段に対して前記第1回路構成への再構成を要求する回路と、
を有する、ことを特徴とする請求項4に記載のデータ伸張装置。 - コンピュータを、
伸張対象の圧縮画像データの先頭部分の有効符号長を検出し、検出した有効符号長を伸張手段に供給し、前記伸張手段が前記圧縮画像データの先頭から前記有効符号長のデータを伸張できるようにする有効符号長検出手段、
前記伸張対象の圧縮画像データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンであるか否かを判定し、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると判定した場合に、前記有効符号長検出手段が有効符号長を検出するのを待たずに、前記特定パターンが検知されたことを前記伸張手段に通知し、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力させる判定手段、
として機能させるためのプログラム。 - コンピュータを、
伸張対象の圧縮画像データの先頭部分の有効符号長を検出し、検出した有効符号長を伸張手段に供給し、前記伸張手段が前記圧縮画像データの先頭から前記有効符号長のデータを伸張できるようにする有効符号長検出手段、
前記伸張対象の圧縮画像データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンであるか否かを判定し、前記伸張対象の圧縮画像データの先頭部分が前記特定パターンであると判定した場合に、前記有効符号長検出手段が有効符号長を検出するのを待たずに、前記特定パターンが検知されたことを前記伸張手段に通知し、前記伸張手段に前記特定の直流差分値に対応するあらかじめ定められた伸張結果を出力させる判定手段、
として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 伸張対象の圧縮データの先頭部分の有効符号長を検出する検出手段と、
前記伸張対象の圧縮データの先頭部分が、特定の直流差分値を表す符号の後にブロック終端符号が続く特定パターンである場合、前記検出手段による前記有効符号長の検出を待たずに、前記特定の直流差分値に対応する予め定められた伸張結果を出力する出力手段と、
を有するデータ伸張装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014002270A JP2015130640A (ja) | 2014-01-09 | 2014-01-09 | データ伸張装置、プログラムおよび記録媒体 |
US14/471,715 US9374593B2 (en) | 2014-01-09 | 2014-08-28 | Data decompressing device and non-transitory computer readable medium for detecting whether initial portion of compressed image data corresponds to specific pattern |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014002270A JP2015130640A (ja) | 2014-01-09 | 2014-01-09 | データ伸張装置、プログラムおよび記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015130640A true JP2015130640A (ja) | 2015-07-16 |
Family
ID=53496195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014002270A Pending JP2015130640A (ja) | 2014-01-09 | 2014-01-09 | データ伸張装置、プログラムおよび記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9374593B2 (ja) |
JP (1) | JP2015130640A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018157411A (ja) * | 2017-03-17 | 2018-10-04 | 株式会社東芝 | 情報処理装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9652152B2 (en) * | 2014-10-29 | 2017-05-16 | Qualcomm Incorporated | Efficient decompression locality system for demand paging |
US9600420B2 (en) * | 2014-10-29 | 2017-03-21 | Qualcomm Incorporated | Reducing decompression time without impacting compression ratio |
US10015504B2 (en) * | 2016-07-27 | 2018-07-03 | Qualcomm Incorporated | Compressing image segmentation data using video coding |
JP6821183B2 (ja) * | 2017-02-23 | 2021-01-27 | 株式会社シキノハイテック | 画像復号化装置 |
JP7040058B2 (ja) * | 2018-01-31 | 2022-03-23 | 株式会社リコー | 符号化装置 |
JP2021094798A (ja) * | 2019-12-18 | 2021-06-24 | 富士フイルムビジネスイノベーション株式会社 | 画像処理装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04328958A (ja) * | 1991-04-30 | 1992-11-17 | Toshiba Corp | 画像信号復号器 |
JPH1028268A (ja) * | 1996-07-11 | 1998-01-27 | Hitachi Ltd | 画像符号化データ量削減方法 |
JP2005094562A (ja) * | 2003-09-19 | 2005-04-07 | Fuji Xerox Co Ltd | 符号データの復号装置 |
JP2012005070A (ja) * | 2010-06-21 | 2012-01-05 | Fuji Xerox Co Ltd | 画像データ復号装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1092446C (zh) * | 1993-05-31 | 2002-10-09 | 佳能株式会社 | 图象处理方法和装置 |
US6411229B2 (en) * | 2000-04-28 | 2002-06-25 | Matsushita Electric Industrial Co., Ltd. | Variable length decoder |
JP5071707B2 (ja) | 2007-06-22 | 2012-11-14 | 富士ゼロックス株式会社 | データ処理装置およびその制御方法 |
-
2014
- 2014-01-09 JP JP2014002270A patent/JP2015130640A/ja active Pending
- 2014-08-28 US US14/471,715 patent/US9374593B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04328958A (ja) * | 1991-04-30 | 1992-11-17 | Toshiba Corp | 画像信号復号器 |
JPH1028268A (ja) * | 1996-07-11 | 1998-01-27 | Hitachi Ltd | 画像符号化データ量削減方法 |
JP2005094562A (ja) * | 2003-09-19 | 2005-04-07 | Fuji Xerox Co Ltd | 符号データの復号装置 |
JP2012005070A (ja) * | 2010-06-21 | 2012-01-05 | Fuji Xerox Co Ltd | 画像データ復号装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018157411A (ja) * | 2017-03-17 | 2018-10-04 | 株式会社東芝 | 情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US20150195553A1 (en) | 2015-07-09 |
US9374593B2 (en) | 2016-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015130640A (ja) | データ伸張装置、プログラムおよび記録媒体 | |
JP5614122B2 (ja) | 画像データ復号装置 | |
US9800760B1 (en) | Fast drawing of unrotated delta row encoded images | |
JP2003189109A (ja) | 画像処理装置及び方法、並びにコンピュータ・プログラム | |
JP5732765B2 (ja) | 画像データ復号装置 | |
JP4850806B2 (ja) | エントロピー符号化装置、エントロピー符号化方法およびコンピュータプログラム | |
JP5441676B2 (ja) | 画像処理装置及びその処理方法 | |
JP2010282152A (ja) | 画像形成装置 | |
JP2021174472A (ja) | ストレージシステム | |
JP2020088694A (ja) | 画像処理装置、画像処理方法 | |
US20080175488A1 (en) | Image processing apparatus, image forming apparatus, image forming system, computer readable medium storing program therefor, image processing method, and computer data signal | |
US20210303946A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP6775558B2 (ja) | 画像伸長装置及びその制御方法及びプログラム | |
US10182178B2 (en) | Parallel fast drawing of unrotated delta row encoded images | |
JP2008071054A (ja) | データ転送制御方法、データ処理装置及び画像処理装置 | |
JP4095454B2 (ja) | データ復号装置及びデータ復号方法 | |
JP2010226518A (ja) | 画像処理装置 | |
JP6658908B2 (ja) | 出力プログラム、出力方法および出力システム | |
US9332152B2 (en) | Image processing apparatus, image processing method, and non-transitory computer readable medium | |
JP2010161667A (ja) | 画像処理装置と制御方法及びプログラム | |
JP3119387B2 (ja) | 画像処理装置 | |
JP5268813B2 (ja) | コンピュータプログラム | |
JP5145277B2 (ja) | 画像処理装置 | |
JP5521501B2 (ja) | 画像処理装置、および、画像処理方法 | |
JP2006313415A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160322 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170329 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170411 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20171031 |