(57)【特許請求の範囲】
【請求項１】
複数の画像データそれぞれに対して所定の大きさに分割された複数の領域ごとに前記領域の画像の情報に応じた圧縮率で圧縮処理を行った複数の圧縮画像データを合成する画像処理装置であって、
前記複数の領域ごとに前記圧縮率の組み合わせに応じてそれぞれ前記複数の圧縮画像データを構成する複数の符号化データを合成する複数の合成部と、
前記複数の領域ごとに前記複数の圧縮画像データそれぞれの圧縮率を取得する圧縮率取得部と、
取得された前記圧縮率に基づいて前記複数の合成部のうちの１つを前記複数の領域ごとに選択して、選択された前記合成部により前記複数の圧縮画像データを合成して出力する合成出力部と
を含むことを特徴とする画像処理装置。
【請求項２】
前記合成部は、前記複数の符号化データを取得された前記圧縮率のうち最も低い圧縮率の符号長の符号化データに変換して合成する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記合成部は、前記複数の符号化データを取得された前記圧縮率のうち最も高い圧縮率の符号長の符号化データに変換して合成する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記合成部は、画像データが合成される前記圧縮画像データである被合成画像データの前記複数の領域のうち、前記被合成画像データに合成する前記圧縮画像データである合成用画像データを配置する前記領域を前記合成用画像データの前記領域に置き換える
ことを特徴とする請求項１〜３のいずれか１項に記載の画像処理装置。
【請求項５】
前記圧縮率取得部は、前記圧縮画像データに含まれる前記圧縮率を識別する情報に基づいて前記圧縮率を取得する
ことを特徴とする請求項１〜４のいずれか１項に記載の画像処理装置。
【請求項６】
複数の画像データそれぞれに対して所定の大きさに分割された複数の領域ごとに前記領域の画像の情報に応じた圧縮率で圧縮処理を行った複数の圧縮画像データを合成する画像処理装置における画像合成方法であって、
前記画像処理装置は、前記複数の領域ごとに前記圧縮率の組み合わせに応じてそれぞれ前記複数の圧縮画像データを構成する複数の符号化データを合成する複数の合成部を備え、
前記複数の領域ごとに前記複数の圧縮画像データそれぞれの圧縮率を取得し、
取得された前記圧縮率に基づいて前記複数の合成部のうちの１つを前記複数の領域ごとに選択し、
選択された前記合成部により前記複数の圧縮画像データを合成する
ことを特徴とする画像合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像合成方法に関する。
【背景技術】
【０００２】
画像データを記憶するメモリ量の削減や、画像データの転送時間の短縮のために、画像データの圧縮技術が利用されている。例えば、画像データの圧縮方式として、ＧＢＴＣ（Ｇｅｎｅｒａｌｉｚｅｄ  Ｂｌｏｃｋ  Ｔｒｕｎｃａｔｉｏｎ  Ｃｏｄｉｎｇ）が知られている。この圧縮方式においては、画像データが複数の画素から構成されるブロックに分割され、ブロック単位で固定長の符号化すなわち固定の圧縮率での圧縮処理が行われる。
【０００３】
また、各ブロックはエッジを含む複雑な領域であったり、平坦領域のみで構成される単純な領域であったりと、ブロックによって画像の複雑度が異なる。そのため、ブロックの複雑度に応じてブロックごとに異なる圧縮率で圧縮処理を行う選択型のＧＢＴＣ圧縮方式が知られている。
【０００４】
このようなＧＢＴＣ圧縮方式で圧縮された複数の画像データを合成する際には、一旦、圧縮された画像データそれぞれをメモリ上に伸張し、伸張した画像データを合成後、再度合成した画像データを圧縮する必要がある。そのため、合成対象となる圧縮画像データを伸張するためのメモリ容量が必要となる。
【０００５】
画像データの合成及び圧縮を行う際に使用するメモリ容量を削減する目的で、固定長のＧＢＴＣ圧縮方式により画像データを圧縮処理し、圧縮処理結果に基づいて圧縮された画像データを合成することが提案されている（例えば、特許文献１を参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された技術においては、上述した選択型のＧＢＴＣ圧縮方式によりブロックごとに異なる圧縮率で圧縮処理された画像データの合成処理については考慮されていない。
【０００７】
本発明は、このような課題を解決するためになされたものであり、画像データを構成する各ブロックの複雑度に応じてブロックごとに異なる圧縮率で圧縮処理された複数の画像データを合成する際に使用するメモリ容量を削減することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の一態様は、複数の画像データそれぞれに対して所定の大きさに分割された複数の領域ごとに前記領域の画像の情報に応じた圧縮率で圧縮処理を行った複数の圧縮画像データを合成する画像処理装置であって、前記複数の領域ごとに前記圧縮率の組み合わせに応じてそれぞれ前記複数の圧縮画像データを構成する複数の符号化データを合成する複数の合成部と、前記複数の領域ごとに前記複数の圧縮画像データそれぞれの圧縮率を取得する圧縮率取得部と、取得された前記圧縮率に基づいて前記複数の合成部のうちの１つを前記複数の領域ごとに選択して、選択された前記合成部により前記複数の圧縮画像データを合成して出力する合成出力部とを含むことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、画像データを構成する各ブロックの複雑度に応じてブロックごとに異なる圧縮率で圧縮処理された複数の画像データを合成する際に使用するメモリ容量を削減することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態に係る画像処理装置のハードウェア構成を例示するブロック図である。
【図２】本発明の実施形態に係るＡＳＩＣの機能構成を例示するブロック図である。
【図３】本発明の実施形態に係る選択型ＧＢＴＣによる圧縮処理対象の画像データの一部を例示する図である。
【図４】本発明の実施形態に係る選択型ＧＢＴＣの４／８圧縮による圧縮態様を例示する図である。
【図５】本発明の実施形態に係る選択型ＧＢＴＣの３／８圧縮による圧縮態様を例示する図である。
【図６】本発明の実施形態に係る選択型ＧＢＴＣの２／８圧縮による圧縮態様を例示する図である。
【図７】本発明の実施形態に係る選択型ＧＢＴＣにより圧縮された画像データのデータ構造を例示する図である。
【図８】本発明の実施形態に係る出力部の機能構成を例示するブロック図である。
【図９】本発明の実施形態に係る読取画像の一部を例示する図である。
【図１０】本発明の実施形態に係る合成画像の一部を例示する図である。
【図１１】本発明の実施形態に係る画像合成処理部の機能構成を例示するブロック図である。
【図１２】本発明の実施形態に係る各圧縮率の符号化データの対応関係を例示する図である。
【図１３】本発明の実施形態に係る画像合成処理部の機能構成を例示するブロック図である。
【図１４】本発明の実施形態に係る被合成画像の圧縮率と合成用画像の圧縮率の組み合わせに応じた合成出力部への入力情報を例示する図である。
【図１５】本発明の実施形態に係る画像合成処理部における画像合成処理の具体例を例示する図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の実施形態を詳細に説明する。本実施形態においては、圧縮処理された複数の画像データの合成処理を含む各種画像処理を実行する画像処理装置を例として説明する。
【００１２】
図１は、本実施形態に係る画像処理装置１のハードウェア構成を例示するブロック図である。図１に示すように、本実施形態に係る画像処理装置１は、コントローラ１００、オペレーションパネル１４０、ＦＣＵ（Ｆａｃｓｉｍｉｌｅ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）１６０及び専用エンジン１８０を含む。
【００１３】
また、コントローラ１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０２、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）１２０、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０３、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０４、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）１０５を含む。また、ＡＳＩＣ１２０には、ＣＰＵ１０１、ＲＡＭ１０２、ＨＤＤ１０３、ＲＯＭ１０４及びＮＩＣ１０５がバスを介して接続されている。
【００１４】
また、オペレーションパネル１４０は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）１４１及び操作部１４２を含む。また、ＬＣＤ１４１、操作部１４２、ＦＣＵ１６０及び専用エンジン１８０は、バスを介してＡＳＩＣ１２０に接続されている。
【００１５】
ＬＣＤ１４１は、ユーザが画像処理装置１の状態を確認するための視覚的ユーザインタフェースである。操作部１４２は、キーボードやマウス、タッチパネル等、ユーザが画像処理装置１に情報を入力するためのユーザインタフェースである。ＦＣＵ１６０は、メモリを有し、例えば画像処理装置１の電源がオフのときに受信したファクシミリデータが一時的に格納される。
【００１６】
専用エンジン１８０は、スキャナ、プリンタ等の画像処理装置１に搭載される機能を実現するための構成であり、スキャナユニット１８１及びプリントエンジン１８２を含む。スキャナユニット１８１は、コントローラ１００の制御に従い、セットされた原稿を撮像する。撮像動作においては、スキャナユニット１８１に含まれるＣＣＤ等の撮像素子が原稿を光学的に走査し、光学情報に基づいて撮像画像が生成される。プリントエンジン１８２は、描画情報に基づいて用紙に画像形成を施す。
【００１７】
ＣＰＵ１０１は演算手段であり、画像処理装置１全体の動作を制御する。ＲＡＭ１０２は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、ＣＰＵ１０１が情報を処理する際の作業領域として用いられる。ＨＤＤ１０３は、情報の読み書きが可能な不揮発性の記憶媒体であり、画像データや文書データ等の各種のデータ及びプログラム等を格納する。また、本実施形態において、ＨＤＤ１０３は、他の画像データに合成される合成用画像データを格納する。合成用画像データは、例えば、日付、ページ番号、機密管理番号、「マル秘」等の文字、「丸秘」等のスタンプ形状を示す。
【００１８】
ＲＯＭ１０４は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムを格納する。ＮＩＣ１０５は、Ｅｔｈｅｒｎｅｔ（登録商標）やＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワークを介して接続されているクライアント端末等の他の装置との通信制御を行うコントローラである。
【００１９】
ＡＳＩＣ１２０は、ＣＰＵ１０１の制御に従い画像処理に必要な機能を実現する画像処理用途向けの集積回路である。ＡＳＩＣ１２０には、スキャナユニット１８１により撮像されて生成された読取画像データ、ＨＤＤ１０３に記憶されている画像データ、ＮＩＣ１０５を介して接続された他の装置から送信された画像データが入力される。ＡＳＩＣ１２０は、入力された画像データに対して各種の画像処理を行うとともに、本実施形態においては、入力された画像データを合成する画像合成処理を実行する機能を有する。
【００２０】
以下、ＡＳＩＣ１２０による画像合成処理を含む画像処理動作を説明する。本説明においては、コピー対象の原稿の画像データにＨＤＤ１０３に格納されている合成用画像データを合成して印刷出力する場合を例として説明する。ユーザがオペレーションパネル１４０を介してコピー動作を開始する操作を行うと、まず、コピー対象の原稿がスキャナユニット１８１により撮像されて読み取られることにより読取画像データが生成される。ＡＳＩＣ１２０は、生成された読取画像データをＲＡＭ１０２に記憶させる。
【００２１】
次に、ＡＳＩＣ１２０は、ＨＤＤ１０３に格納されている合成用画像データを読み出して、ＲＡＭ１０２に記憶させる。そして、ＡＳＩＣ１２０は、ＲＡＭ１０２に格納された読取画像データと合成用画像データとを合成する画像合成処理を実行する。画像合成処理を実行したＡＳＩＣ１２０は、合成された画像データをプリントエンジン１８２に対して出力する。これにより、プリントエンジン１８２は、合成された画像データに基づいて紙面上に画像形成を施して出力する。
【００２２】
なお、上述の説明においては、コピー動作における画像合成処理を例として説明したが、コピー動作に限らず、プリント動作、ファクシミリ送信動作、ファクシミリ受信動作、スキャナ動作等の各種の画像処理動作において画像合成処理が行われてもよい。
【００２３】
本実施形態に係るＡＳＩＣ１２０は、このような画像合成処理において、選択型ＧＢＴＣ（Ｇｅｎｅｒａｌｉｚｅｄ  Ｂｌｏｃｋ  Ｔｒｕｎｃａｔｉｏｎ  Ｃｏｄｉｎｇ）により圧縮された複数の画像データを合成する機能を有する。選択型ＧＢＴＣは、画像データに対して所定の大きさに分割された複数の領域ごとに領域の画像の情報に応じた圧縮率で圧縮処理を行う圧縮方式であり、詳細は後述する。この機能が本実施形態の要旨の１つであり、以下、本実施形態に係るＡＳＩＣ１２０の機能構成を説明する。
【００２４】
図２は、本実施形態に係るＡＳＩＣ１２０の機能構成を例示するブロック図である。図２に示すように、本実施形態に係るＡＳＩＣ１２０は、圧縮伸張部１２１、ＲＡＭ記憶処理部１２２、画像編集部１２３、画像回転部１２４及び出力部１２５を含む。圧縮伸張部１２１は、スキャナユニット１８１により撮像されて生成された読取画像データ、ＨＤＤ１０３に記憶されている画像データ、ＮＩＣ１０５を介して接続された他の装置から送信された画像データ等を圧縮する。また、圧縮伸張部１２１は、圧縮された画像データを伸張する。
【００２５】
本実施形態に係る圧縮伸張部１２１は、選択型ＧＢＴＣによる圧縮伸張を行う。図３は、選択型ＧＢＴＣによる圧縮処理対象の画像データの一部を例示する図である。図３（ａ）に示すように、選択型ＧＢＴＣによる圧縮処理は、画像データを所定の大きさに分割したブロック単位ごとに行われる。
【００２６】
図３（ｂ）は、図３（ａ）に示したブロックのうちの１つを拡大した図である。図３（ｂ）に示すように、各ブロックは、例えば４×４画素で構成される。本実施形態においては、図３（ｂ）に示すように、ｉ方向及びｊ方向の座標位置を定め、ブロックの１画素の画素値をＸｉｊとする。また、本実施形態においては、画素値Ｘｉｊは８ｂｉｔで示されるものとする。
【００２７】
選択型ＧＢＴＣにおいては、例えば、元の画像データから４／８圧縮、３／８圧縮、２／８圧縮等の複数の圧縮率が定められている。圧縮伸張部１２１は、各ブロックの画像の情報（例えば、エッジを含む画像、平坦領域の画像）応じてブロックごとに使用する圧縮率を選択する。
【００２８】
図４は、選択型ＧＢＴＣの４／８圧縮による圧縮態様を例示する図である。圧縮伸張部１２１は、４／８圧縮の場合、図４に示すように画素値Ｘｉｊを３ｂｉｔの符号化データφｉｊ（０００〜１１１）で符号化する。以下、圧縮伸張部１２１によりブロックを構成する各画素の画素値を４／８圧縮により符号化するための処理を、図４を参照して説明する。図４に示すＬｍｉｎは、ブロックを構成する画素の画素値の最小値であり、Ｌｍａｘは、ブロックを構成する画素の画素値の最大値である。
【００２９】
Ｌｍｉｎ及びＬｍａｘに基づいて、以下の式（１）、（２）により値Ｐ１、Ｐ２が求められる。
Ｐ１＝（Ｌｍａｘ＋７Ｌｍｉｎ）／８    ・・・（１）
Ｐ２＝（７Ｌｍａｘ＋Ｌｍｉｎ）／８    ・・・（２）
【００３０】
上記の式（１）、（２）により求められたＰ１及びＰ２に基づいて、ブロックを構成する各画素の画素値のうちＰ１以下である画素値の平均値Ｑｍｉｎ及びＰ２より大きい画素値の平均値Ｑｍａｘが求められる。
【００３１】
Ｑｍｉｎ及びＱｍａｘに基づいて、以下の式（３）、（４）により平均値ＬＡ及び階調幅指標ＬＤが求められる。
ＬＡ＝（Ｑｍｉｎ＋Ｑｍａｘ）／２    ・・・（３）
ＬＤ＝Ｑｍａｘ−Ｑｍｉｎ    ・・・（４）
【００３２】
上記式（３）、（４）により求められたＬＡ及びＬＤに基づいて、以下のようにＬｍｉｎからＬｍａｘまでの階調を区分する図４に示した境界値Ｌ１〜Ｌ６が求められる。
Ｌ１＝ＬＡ−ＬＤ／８
Ｌ２＝ＬＡ−２ＬＤ／８
Ｌ３＝ＬＡ−３ＬＤ／８
Ｌ４＝ＬＡ＋ＬＤ／８
Ｌ５＝ＬＡ＋２ＬＤ／８
Ｌ６＝ＬＡ＋３ＬＤ／８
【００３３】
このように求められた各値に基づいて、ブロックを構成する画素の各画素値Ｘｉｊを符号化データφｉｊで符号化する。具体的には、図４に示すように、Ｌ６＜Ｘｉｊ≦Ｌｍａｘの場合φｉｊ＝１１１であり、Ｌ５＜Ｘｉｊ≦Ｌ６の場合φｉｊ＝１１０であり、Ｌ４＜Ｘｉｊ≦Ｌ５の場合φｉｊ＝１０１であり、ＬＡ＜Ｘｉｊ≦Ｌ４の場合φｉｊ＝１００である。また、Ｌ１＜Ｘｉｊ≦ＬＡの場合φｉｊ＝０００であり、Ｌ２＜Ｘｉｊ≦Ｌ１の場合φｉｊ＝００１であり、Ｌ３＜Ｘｉｊ≦Ｌ２の場合φｉｊ＝０１０であり、Ｌｍｉｎ＞Ｘｉｊ≦Ｌ３の場合φｉｊ＝０１１である。
【００３４】
ブロックを構成する各画素の元の画素値が８ｂｉｔで構成されていることから、ブロック全体のデータ量は、４×４（画素）×８（ｂｉｔ）＝１２８ｂｉｔである。上述した４／８圧縮による圧縮処理により、ブロックを構成する各画素の画素値は３ｂｉｔの符号化データで符号化されるので、ブロック全体の符号化データ量は、４×４（画素）×３（ｂｉｔ）＝４８ｂｉｔである。すなわち、ブロック全体のデータ量は、符号化データ量（４８ｂｉｔ）に、伸張処理に必要なＬＡのデータ量（８ｂｉｔ）及びＬＤのデータ量（８ｂｉｔ）を加算した６４ｂｉｔである。よって、元の画像は６４（ｂｉｔ）／１２８（ｂｉｔ）＝４／８圧縮されることになる。
【００３５】
なお、４／８圧縮により圧縮された画像データが伸張される場合、伸張された画素値Ｘ´ｉｊは、圧縮された画像データに含まれるＬＡ及びＬＤの値に基づいて、以下のように算出される。
φｉｊ＝１１１の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ／２
φｉｊ＝１１０の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ＊２３／６４
φｉｊ＝１０１の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ＊１４／６４
φｉｊ＝１００の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ＊５／６４
φｉｊ＝０００の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ＊５／６４
φｉｊ＝００１の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ＊１４／６４
φｉｊ＝０１０の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ＊２３／６４
φｉｊ＝０１１の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ／２
【００３６】
図５は、選択型ＧＢＴＣの３／８圧縮による圧縮態様を例示する図である。圧縮伸張部１２１は、３／８圧縮の場合、図５に示すように画素値Ｘｉｊを２ｂｉｔの符号化データφｉｊ（００〜０１）で符号化する。図４に示した場合と同様の手順により、ＬＡ、Ｌ１、Ｌ３が求められる。
【００３７】
このように求められた各値に基づいて、ブロックを構成する各ブロックを構成する画素の各画素値Ｘｉｊを符号化データφｉｊで符号化する。具体的には、図５に示すように、Ｌ２＜Ｘｉｊ≦Ｌｍａｘの場合φｉｊ＝１１であり、ＬＡ＜Ｘｉｊ≦Ｌ２の場合φｉｊ＝１０であり、Ｌ１＜Ｘｉｊ≦ＬＡの場合φｉｊ＝００であり、Ｌｍｉｎ＜Ｘｉｊ≦Ｌ１の場合φｉｊ＝０１である。
【００３８】
上述した３／８圧縮による圧縮処理により、ブロックを構成する各画素の画素値は２ｂｉｔの符号化データで符号化されるので、ブロック全体の符号化データ量は、４×４（画素）×２（ｂｉｔ）＝３２ｂｉｔである。すなわち、ブロック全体のデータ量は、符号化データ量（３２ｂｉｔ）に、伸張処理に必要なＬＡのデータ量（８ｂｉｔ）及びＬＤのデータ量（８ｂｉｔ）を加算した４８ｂｉｔである。よって、元の画像は４８（ｂｉｔ）／１２８（ｂｉｔ）＝３／８圧縮されることになる。
【００３９】
なお、３／８圧縮により圧縮された画像データを伸張する場合、伸張された画素値Ｘ´ｉｊは、圧縮された画像データに含まれるＬＡ及びＬＤの値に基づいて、以下のように算出される。
φｉｊ＝１１の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ／２
φｉｊ＝１０の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ／６
φｉｊ＝００の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ／６
φｉｊ＝０１の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ／２
【００４０】
図６は、２／８圧縮による圧縮態様を例示する図である。圧縮伸張部１２１は、２／８圧縮の場合、図６に示すように画素値Ｘｉｊを１ｂｉｔの符号化データφｉｊ（０又は１）で符号化する。図６に示した場合と同様の手順によりＬＡが求められる。
【００４１】
このように求められた各値に基づいて、ブロックを構成する各ブロックを構成する画素の各画素値Ｘｉｊを符号化データφｉｊで符号化する。具体的には、図６に示すように、ＬＡ＜Ｘｉｊ≦Ｌｍａｘの場合φｉｊ＝１であり、Ｌｍｉｎ＜Ｘｉｊ≦ＬＡの場合φｉｊ＝０である。
【００４２】
上述した２／８圧縮による圧縮処理により、ブロックを構成する各画素の画素値は１ｂｉｔの符号化データで符号化されるので、ブロック全体の符号化データ量は、４×４（画素）×１（ｂｉｔ）＝１６ｂｉｔである。すなわち、ブロック全体のデータ量は、符号化データ量（１６ｂｉｔ）に、伸張処理に必要なＬＡ（８ｂｉｔ）及びＬＤ（８ｂｉｔ）を加算した３２ｂｉｔである。よって、元の画像は３２（ｂｉｔ）／１２８（ｂｉｔ）＝２／８圧縮されることになる。
【００４３】
なお、２／８圧縮により圧縮された画像データを伸張する場合、伸張された画素値Ｘ´ｉｊは、圧縮された画像データに含まれるＬＡ及びＬＤの値に基づいて、以下のように算出される。
φｉｊ＝１の場合、Ｘ´ｉｊ＝ＬＡ＋ＬＤ／２
φｉｊ＝０の場合、Ｘ´ｉｊ＝ＬＡ−ＬＤ／２
【００４４】
圧縮伸張部１２１は、ブロックを構成する画像の複雑度に応じて、このような複数の異なる圧縮率の中からいずれかの圧縮率を選択して、ブロックごとに異なる圧縮率で圧縮処理を行う。複雑度は、例えば、ブロック内の各画素の画素値の標準偏差であるとする。例えば、ブロックがエッジを含む画像である場合、ブロックの複雑度が高いので、このブロックを高圧縮率で圧縮処理すると、画質が大きく落ちる。
【００４５】
そこで、例えば、圧縮伸張部１２１は、ブロックを構成する画像の複雑度が予め定められた閾値（以降、「低圧閾値」とする）よりも高い場合、最も圧縮率の低い４／８圧縮でブロックを圧縮処理する。
【００４６】
一方、例えば、ブロックが平坦領域である場合、ブロックの複雑度が低いので、このブロックを高圧縮率で圧縮処理しても画質が大きく落ちることはない。そこで、圧縮伸張部１２１は、ブロックを構成する画像の複雑度が予め定められた閾値（以降、「高圧縮閾値」とする）よりも低い場合、最も圧縮率の高い２／８圧縮でブロックを圧縮処理する。
【００４７】
また、圧縮伸張部１２１は、ブロックを構成する画像の複雑度が高圧縮閾値以上で低圧縮閾値以下である場合、３／８圧縮でブロックを圧縮処理する。
【００４８】
図７は、選択型ＧＢＴＣにより圧縮された画像データ（以降、「圧縮画像データ」とする）のデータ構成を例示する図である。図７に示すように、圧縮画像データは、例えば、符号ヘッダ、ＬＡ、ＬＤ、ピクセルコード、符号ヘッダ（後）から構成される。符号ヘッダは、どの圧縮率により圧縮されたかを識別する識別値である。圧縮伸張部１２１は、圧縮処理を行う際に、圧縮画像データの符号ヘッダとして識別値を付与する。
【００４９】
ＬＡ及びＬＤは、符号化データを生成する際に用いられた上述したＬＡ及びＬＤの値である。ピクセルコートは、上述した圧縮処理により生成された符号化データである。すなわち、圧縮率に応じてピクセルコードの長さが変動する。符号ヘッダ（後）は、後述する画像回転部１２４により回転処理された圧縮画像を後ろから復号する際に、どの圧縮率により圧縮されたかを識別する識別値である。
【００５０】
図２に戻り、ＲＡＭ記憶処理部１２２は、ＲＡＭ記憶処理部１２２に入力された画像データをＲＡＭ１０２に記憶させる。ＲＡＭ記憶処理部１２２には、例えば、圧縮伸張部１２１により圧縮又は伸張された画像データが入力される。その他、ＲＡＭ記憶処理部１２２には、スキャナユニット１８１により撮像されて生成された読取画像データ、ＮＩＣ１０５を介して接続された他の装置から送信された画像データ等、ＡＳＩＣ１２０に入力されるあらゆる画像データが入力される。
【００５１】
また、ＲＡＭ記憶処理部１２２は、圧縮伸張部１２１を介することなく、圧縮済の画像データをＨＤＤ１０３やＮＩＣ１０５を介して直接取得する場合もある。例えば、圧縮済の合成用画像データがＨＤＤ１０３に格納されている場合、ＲＡＭ記憶処理部１２２は、画像合成処理が行われる場合に、ＨＤＤ１０３に格納されている圧縮済の合成用画像データをＲＡＭ１０２に記憶させる。
【００５２】
画像編集部１２３は、ＣＰＵ１０１の制御に従って、ＲＡＭ１０２に記憶されている画像データの各種編集処理を行う。画像回転部１２４は、ＣＰＵ１０１の制御に従って、ＲＡＭ１０２に記憶されている画像データの回転処理を行う。
【００５３】
出力部１２５は、ＣＰＵ１０１の制御に従って、ＲＡＭ１０２に記憶されている画像データをプリントエンジン１８２やＨＤＤ１０３等の各部に出力する。また、出力部１２５は、ＣＰＵ１０１の制御に従って、ＲＡＭ１０２に記憶されている画像データ及び合成用画像データを合成して各部に出力する。
【００５４】
例えば、画像編集、画像回転、画像合成等の各画像処理が施された画像データがプリントエンジン１８２に出力された場合、プリントエンジン１８２は画像データに基づいて画像を紙面上に画像形成して出力する。また、例えば、各画像処理が施された画像データがＨＤＤ１０３に出力された場合、ＨＤＤ１０３に画像処理が施された画像データが格納される。また、出力部１２５は、各画像処理が施された画像データを、ネットワークに接続された他の装置へＮＩＣ１０５を介して出力してもよい。
【００５５】
図８は、出力部１２５の機能構成を例示するブロック図である。図８に示すように、出力部１２５は、画像合成処理部１３０及び選択出力部１２６を含む。画像合成処理部１３０は、複数の画像データが入力されると、入力された複数の画像データを合成する。
【００５６】
図９は、ＲＡＭ記憶処理部１２２によりＲＡＭ１０２に記憶されているスキャナユニット１８１により原稿が読み取られて生成された読取画像の一部を例示する図である。図１０は、図９に示した読取画像と、ＲＡＭ記憶処理部１２２によりＲＡＭ１０２に記憶されている合成用画像との合成画像の一部を例示する図である。なお、図９及び図１０に示す点線は処理単位となる分割ブロックを示すが、実際の画像に点線は表示されていない。
【００５７】
例えば、ユーザがオペレーションパネル１４０を介して、図１０に示すように読取画像上に合成画像を付加する操作を行う。この操作が行われると、ＣＰＵ１０１の制御に従って、合成画像が配置された位置で読取画像のブロックの画像データ及び合成用画像のブロックの画像データが画像合成処理部１３０に入力される。その際、ＣＰＵ１０１は、合成用画像のブロックと読取画像のブロックとの位置が一致するよう制御し、合成用画像の１つのブロックが読取画像の複数のブロックをまたいで位置することがないよう制御する。
【００５８】
画像合成処理部１３０は、ブロック単位の複数の画像データが入力されると、これらの画像データを合成する処理を行う。その際、入力された複数の画像データが選択型ＧＢＴＣによる圧縮画像データである場合、画像合成処理部１３０は、入力された圧縮画像データを伸張することなく圧縮画像データを合成する。この処理が、本実施形態の要旨の１つであり、詳細は後述する。
【００５９】
一方、合成画像が付加された位置以外の位置のブロック画像データは、画像合成処理部１３０に入力されることなく、直接選択出力部１２６へ入力される。選択出力部１２６は、画像データそのもの又は画像合成処理部１３０により合成された画像データ（以降、「合成画像データ」）を出力するマルチプレクサ（ＭＵＸ）である。すなわち、選択出力部１２６は、合成画像が付加された位置では合成画像データのブロックを出力し、それ以外の位置では画像データのブロックを出力する。
【００６０】
次に、画像合成処理部１３０による画像合成処理の詳細を説明する。図１１は、画像合成処理部１３０の機能構成を例示するブロック図である。図１１に示した機能構成においては、ＨＤＤ１０３に予め格納されている２／８圧縮で圧縮処理された合成用画像データが画像合成処理部１３０により合成処理される場合を例として説明する。
【００６１】
なお、以降、圧縮処理された合成用画像データを単に「合成用画像データ」と記載する。また、合成用画像データが合成される圧縮処理された画像データを「被合成画像データ」とする。また、画像合成処理部１３０における処理単位は、１ブロック（４×４画素）であり、「合成用画像データ」及び「被合成画像データ」と記載している場合も１ブロックの画像データであるとする。
【００６２】
図１１に示すように、画像合成処理部１３０は、圧縮率判定部１３１、２／８×２／８合成部１３２−１、３／８×２／８合成部１３２−２、４／８×２／８合成部１３２−３及び合成出力部１３３を含む。なお、以降、２／８×２／８合成部１３２−１、３／８×２／８合成部１３２−２、４／８×２／８合成部１３２−３をそれぞれ「合成部１３２−１」、「合成部１３２−２」、「合成部１３２−３」と記載し、総じて「合成部１３２」と記載する場合がある。
【００６３】
圧縮率判定部１３１は、画像合成処理部１３０に入力された被合成画像データの圧縮率を判定する。すなわち、圧縮率判定部１３１は、圧縮画像データの圧縮率を取得する圧縮率取得部として機能する。具体的には、例えば、圧縮率判定部１３１は、被合成画像データの図７に示した符号ヘッダを参照して圧縮率を判定する。圧縮率判定部１３１は、判定した圧縮率に基づいて、合成部１３２のうちのいずれか１つに被合成画像データを入力するとともに、合成出力部１３３に対して判定した圧縮率の情報を入力する。
【００６４】
具体的には、圧縮率判定部１３１は、被合成画像データが２／８圧縮で圧縮処理されている場合、被合成画像データを合成部１３２−１に入力する。また、圧縮率判定部１３１は、被合成画像データが３／８圧縮で圧縮処理されている場合、被合成画像データを合成部１３２−２に入力する。また、圧縮率判定部１３１は、被合成画像データが４／８圧縮で圧縮処理されている場合、被合成画像データを合成部１３２−３に入力する。
【００６５】
合成部１３２は、被合成画像データの圧縮率及び合成用画像データの圧縮率の組み合わせに応じてそれぞれ複数の圧縮画像データを構成する符号化データを合成する合成回路であり、被合成画像データ及び合成用画像データの両方が入力されると、合成画像データを出力する。具体的には、合成部１３２は、合成用画像データを合成画像データとして出力する。すなわち、本実施形態においては、図１０に示したように、被合成画像データのブロックが合成用画像データのブロックに置き換えられる。
【００６６】
合成用画像データの圧縮率と被合成画像データの圧縮率とが異なる場合、合成部１３２は、合成用画像データを構成する各画素の符号化データを、合成対象の複数の圧縮画像データのいずれかの圧縮率に合わせて変換する必要がある。本実施形態においては、最も低い圧縮率に合わせて符号化データが変換される場合を例として説明する。
【００６７】
合成部１３２−１は、両画像データの圧縮率が同じであるので、合成用画像データの符号化データを変換する必要がなく、合成用画像データをそのまま合成出力部１３３に入力する。合成部１３２−２は、合成用画像データの１ｂｉｔの符号化データを、３／８圧縮の２ｂｉｔの符号化データに変換する。
【００６８】
図１２は、各圧縮率の符号化データの対応関係を例示する図である。例えば、合成部１３２−２は、合成用画像の符号化データが“１”である場合、図１２に示すように、符号化データを“１１”又は“１０”に変換して合成出力部１３３に入力する。いずれの符号化データに変換するかは、合成部１３２−２において予め設定されているものとする。
【００６９】
合成部１３２−３は、合成用画像データの１ｂｉｔの符号化データを、４／８圧縮の３ｂｉｔの符号化データに変換する。例えば、合成部１３２−３は、合成用画像の符号化データが“１”である場合、図１２に示すように、“１１１”、“１１０”、“１０１”、“１００”のいずれかに変換して合成出力部１３３に入力する。いずれの符号化データに変換するかは、合成部１３２−３において予め設定されているものとする。
【００７０】
合成出力部１３３は、圧縮率判定部１３１から入力された圧縮率の情報に基づいて、いずれかの合成部１３２から入力される合成画像データを出力するマルチプレクサ（ＭＵＸ）である。例えば、合成出力部１３３は、入力された圧縮率の情報が３／８圧縮を示す場合、合成部１３２−２から入力された合成画像データを出力する。上述した画像合成処理部１３０の各部による処理がブロックごとに繰り返される。
【００７１】
次に、合成用画像の圧縮率がブロックごとに異なる場合の画像合成処理部１３０の構成を説明する。図１３は、合成用画像の圧縮率がブロックごとに異なる場合の画像合成処理部１３０の機能構成を例示するブロック図である。図１３に示すように、画像合成処理部１３０は、圧縮率判定部１３４、合成用画像圧縮率判定部１３５、２／８×２／８合成部１３２−１、３／８×２／８合成部１３２−２、４／８×２／８合成部１３２−３、３／８×３／８合成部１３２−４、４／８×３／８合成部１３２−５及び４／８×４／８合成部１３２−６及び合成出力部１３６を含む。
【００７２】
なお、２／８×２／８合成部１３２−１、３／８×２／８合成部１３２−２、４／８×２／８合成部１３２−３は、図１１に示した合成部１３２−１、１３２−２、１３２−３と同様の構成である。また、以降、３／８×３／８合成部１３２−４、４／８×３／８合成部１３２−５及び４／８×４／８合成部１３２−６をそれぞれ「合成部１３２−４」、「合成部１３２−５」、「合成部１３２−６」と記載し、合成部１３２−１〜１３２−６を総じて「合成部１３２」と記載する場合がある。
【００７３】
圧縮率判定部１３４は、図１１に示した圧縮率判定部１３１と同様に、被合成画像データの圧縮率を判定する。また、圧縮率判定部１３４は、合成部１３２のうち判定した圧縮率の圧縮画像データを受け付ける合成部１３２に被合成画像データを入力する。例えば、圧縮率判定部１３１は、被合成画像データが２／８圧縮で圧縮処理されている場合、被合成画像データを合成部１３２−１、１３２−２、１３２−３に入力する。また、圧縮率判定部１３４は、合成出力部１３６に対して判定した圧縮率の情報を入力する。
【００７４】
合成用画像圧縮率判定部１３５は、画像合成処理部１３０に入力された合成用画像データの圧縮率を判定する。すなわち、合成用画像圧縮率判定部１３５は、圧縮画像データの圧縮率を取得する圧縮率取得部として機能する。具体的には、例えば、合成用画像圧縮率判定部１３５は、合成用画像データの図７に示した符号ヘッダを参照して圧縮率を判定する。また、合成用画像圧縮率判定部１３５は、合成部１３２のうち判定した圧縮率の圧縮画像データを受け付ける合成部１３２に合成用画像データを入力する。また、合成用画像圧縮率判定部１３５は、合成出力部１３６に対して判定した圧縮率の情報を入力する。
【００７５】
合成部１３２は、図１１に示した合成部１３２と同様な処理を行う合成回路であり、被合成画像データ及び合成用画像データの両方が入力されると、合成画像データを出力する。本実施形態においては、合成用画像データの圧縮率が被合成画像データの圧縮率よりも高い場合、合成部１３２は、合成用画像データの符号化データを被合成画像データの符号化データの長さに合わせて変換し、それ以外の場合、合成用画像データをそのまま合成出力部１３６に入力する。
【００７６】
合成出力部１３６は、圧縮率判定部１３４及び合成用画像圧縮率判定部１３５から入力された圧縮率に基づいて、いずれかの合成部１３２から入力される合成画像データを出力するマルチプレクサ（ＭＵＸ）である。図１４は、被合成画像の圧縮率と合成用画像の圧縮率の組み合わせに応じた合成出力部１３６への入力情報を例示する図である。
【００７７】
図１４に示したＡ〜Ｆは、図１３に示した合成部１３２−１〜１３２−６からの入力Ａ〜Ｆにそれぞれ対応する。すなわち、図１４に示すように、例えば、被合成画像データの圧縮率が４／８圧縮であり、合成用画像データの圧縮率が２／８圧縮である場合、合成出力部１３６は、合成部１３２−３（入力Ｃ）から入力される合成画像データを出力する。
【００７８】
図１５は、画像合成処理部１３０における画像合成処理の具体例を例示する図である。ここでは、４／８圧縮で圧縮処理された被合成画像データ及び２／８圧縮で圧縮処理された合成用画像データが画像合成処理部１３０に入力された場合を例として説明する。圧縮率判定部１３４は、圧縮率の判定結果に基づいて、４／８圧縮の画像データが入力される合成部１３２−３、１３２−５、１３２−６に被合成画像データを入力する。
【００７９】
合成用画像圧縮率判定部１３５は、圧縮率の判定結果に基づいて、２／８圧縮の画像データが入力される合成部１３２−１、１３２−２、１３２−３に合成用画像データを入力する。合成出力部１３６は、図１４に示した入力情報に基づいて、入力Ｃすなわち合成部１３２−３からの入力を合成画像データとして出力する。なお、合成部１３２−３には、被合成画像データ及び合成用画像データの両方が入力されている。また、出力された合成画像データは、合成用画像データの符号化データが４／８圧縮の符号長の符号化データに変換されたものである。
【００８０】
以上説明したように、本実施形態に係る画像処理装置１は、選択型ＧＢＴＣによる圧縮率の組み合わせに応じた複数の合成部を備え、合成対象の複数の画像データそれぞれのブロックごとの圧縮率の組み合わせに応じた合成部を選択して合成画像を出力する。これにより、ブロックごとに選択型ＧＢＴＣにより異なる符号長で圧縮処理された複数の圧縮画像データを伸張することなく合成することが可能になる。すなわち、本実施形態により、画像データのブロックの複雑度に応じてブロックごとに異なる圧縮率で圧縮処理された複数の画像データを合成する際に使用するメモリ容量を削減することが可能になる。
【００８１】
なお、上記実施形態においては、合成用画像データがＨＤＤ１０３に予め格納されている場合を例として説明した。しかしながら、これは一例であり、合成用画像データはＮＩＣ１０５を介して他の装置から取得されたり、スキャナユニット１８１により原稿が読み取られて生成されたり、適宜フォントデータから生成されたり等、何らかの方法で取得可能であればよい。
【００８２】
また、本実施形態に係る合成部１３２は、合成対象の複数の画像データの圧縮率が異なる場合、最も低い圧縮率に合わせて合成用画像データの符号化データを変換する場合を例として説明した。この場合、画質の劣化をできるだけ抑えた合成画像を出力することが可能になる。
【００８３】
その他、合成部１３２は、最も高い圧縮率に合わせて合成用画像データの符号化データを変換するようにしてもよい。この場合、合成部１３２は、例えば、合成用画像データの符号化データが“１１”である場合、図１２に示すように符号化データを“１”に変換することで、２／８圧縮の圧縮率に合わせることができる。このような構成により、合成用画像データの符号化データの符号長が変換により長くなることがないので、画像合成処理において必要なメモリ量を最小限に抑えることが可能になる。
【符号の説明】
【００８４】
１  画像処理部
１００  コントローラ
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＨＤＤ
１０４  ＲＯＭ
１０５  ＮＩＣ
１２０  ＡＳＩＣ
１２１  圧縮伸張部
１２２  ＲＡＭ記憶処理部
１２３  画像編集部
１２４  画像回転部
１２５  出力部
１２６  選択出力部
１３０  画像合成出力部
１３１、１３４  圧縮率判定部
１３２  合成部
１３３、１３６  合成出力部
１３５  合成用画像圧縮率判定部
１４０  オペレーションパネル
１４１  ＬＣＤ
１４２  操作部
１６０  ＦＣＵ
１８０  専用エンジン
１８１  スキャナユニット
１８２  プリントエンジン
【先行技術文献】
【特許文献】
【００８５】
【特許文献１】特開２００９−１１８２４０号公報
【図１】
0006428232.tif 000002
【図２】
0006428232.tif 000003
【図３】
0006428232.tif 000004
【図４】
0006428232.tif 000005
【図５】
0006428232.tif 000006
【図６】
0006428232.tif 000007
【図７】
0006428232.tif 000008
【図８】
0006428232.tif 000009
【図９】
0006428232.tif 000010
【図１０】
0006428232.tif 000011
【図１１】
0006428232.tif 000012
【図１２】
0006428232.tif 000013
【図１３】
0006428232.tif 000014
【図１４】
0006428232.tif 000015
【図１５】
0006428232.tif 000016