(57)【要約】【課題】画像データの圧縮効率を向上させると共に、圧縮データでの編集性をも向上させた画像処理装置を提供する。【解決手段】画素ブロック単位に周波数変換を行い、周波数変換係数を量子化する量子化手段を備えた画像処理装置において、周波数変換係数または量子化係数を制限処理する制限処理手段を備えているので、冗長度の大きい値の大きな係数値を制限することによって画質劣化を抑制し圧縮効率を向上することが可能となる。【選択図】　　　　図１
2004112345.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を複数の画素からなるブロック単位に周波数変換を行い複数の周波数変換係数を出力する周波数変換手段、前記複数の周波数変換係数に量子化を行い複数の量子化係数を出力する量子化手段を備えた画像処理装置であって、
前記複数の量子化係数の値または周波数変換係数の値の範囲を制限する制限処理手段を備えたことを特徴とする画像処理装置。
【請求項２】
前記制限処理手段は、前記ブロック内の各々の係数単位または前記ブロック内の複数の係数単位に設けられた制限値によって前記値の範囲を制限することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記入力画像または前記周波数変換係数により前記ブロック内の特徴を識別する識別手段を備え、前記識別手段の識別結果に応じて前記制限手段を制御する制御手段を備えたことを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
前記制御処理手段は、前記制限値を変更することによって行われることを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記ブロック内の特徴は、エッジの有無およびエッジの方向であることを特徴とする請求項３または４記載の画像処理装置。
【請求項６】
前記ブロック内の特徴は、周波数の分布であることを特徴とする請求項３または４記載の画像処理装置。
【請求項７】
前記入力画像に、前記周波数変換、前記量子化、前記制限処理を行った量子化データが前記ブロック単位にて固定のデータ長を有することを特徴とする請求項１から６の何れか一項に記載の画像処理装置。
【請求項８】
前記量子化データに、編集処理を行う編集処理手段を備えたことを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記編集処理は、画像の回転処理であることを特徴とする請求項８記載の画像処理装置。
【請求項１０】
前記編集処理は、複数の前記圧縮データを合成する合成処理であることを特徴とする請求項８記載の画像処理装置。
【請求項１１】
前記量子化データに符号化を行い可変長の符号化データを形成する符号化手段を備えたことを特徴とする請求項１から１０の何れか一項に記載の画像処理装置。
【請求項１２】
外部装置との通信を行う通信手段を備え、外部装置へデータを転送する場合は前記符号化データを出力することを特徴とする請求項１１記載の画像処理装置。
【請求項１３】
画像データを記憶するための不揮発性の記憶手段を備え、前記記憶手段へデータを記憶する場合は前記符号化データを出力することを特徴とする請求項１１記載の画像処理装置。
【請求項１４】
前記符号化データは汎用的な圧縮方式にて伸長可能な符号化データであることを特徴とする請求項１１記載の画像処理装置。
【請求項１５】
入力画像を複数の画素からなるブロック単位に周波数変換を行い複数の周波数変換係数を出力する周波数変換工程と、
前記複数の周波数変換係数に量子化を行い複数の量子化係数を出力する量子化工程と、
前記複数の量子化係数の値または周波数変換係数の値の範囲を制限する制限処理工程と、
を備えたことを特徴とする画像処理方法。
【請求項１６】
前記入力画像に、前記周波数変換工程、前記量子化工程、前記制限処理工程を行った量子化データに符号化を行い可変長の符号化データを形成する符号化工程を備えたことを特徴とする請求項１５記載の画像処理方法。
【請求項１７】
入力画像を複数の画素からなるブロック単位に周波数変換を行い複数の周波数変換係数を出力する周波数変換処理と、前記複数の周波数変換係数に量子化を行い複数の量子化係数を出力する量子化工程処理と、
前記複数の量子化係数の値または周波数変換係数の値の範囲を制限する制限処理と、
を実行し、前記入力画像のデータ量を圧縮した圧縮データを形成することを特徴とする画像処理プログラム。
【請求項１８】
前記入力画像に、前記周波数変換処理、前記量子化処理、前記制限処理処理を行った量子化データに符号化を行い可変長の符号化データを形成する符号化処理を実行することを特徴とする請求項１７記載の画像処理プログラム。
【請求項１９】
第１の画像データに圧縮処理を行って出力された圧縮画像データと第２の画像データを結合し結合データを出力する結合処理手段と、
前記結合データから前記圧縮画像データと第２の画像データを分離する分離手段と、
前記圧縮画像データに伸長処理を行い伸長処理後の第１の画像データを出力する伸長処理手段と、
前記伸長処理後の第１の画像データと前記第２の画像データを合成する第１の合成処理手段と、
を備えたことを特徴とする画像処理装置。
【請求項２０】
前記圧縮処理は、複数の画素からなるブロック単位に行われる圧縮処理であって、前記結合は、前記ブロック単位に行われることを特徴とする請求項１９記載の画像処理装置。
【請求項２１】
前記第２の画像データは、文字、線画、パターン画像であることを特徴とする請求項１９または２０記載の画像処理装置。
【請求項２２】
前記圧縮データの圧縮率を高める圧縮率変更処理手段を備え、前記圧縮率変更処理手段は、前記結合処理の前に行われることを特徴とする請求項１９から２１の何れか一項に記載の画像処理装置。
【請求項２３】
前記圧縮率変更処理手段は、前記圧縮率変更処理前の前記圧縮データのデータ量と前記結合データのデータ量が同一となるように前記圧縮率を変更することを特徴とする請求項２２記載の画像処理装置。
【請求項２４】
前記圧縮処理手段は、固定長の圧縮処理手段であることを特徴とする請求項２３記載の画像処理装置。
【請求項２５】
第２の画像データは圧縮処理された圧縮データであり、前記分離手段から出力された圧縮された第２の画像データを伸長処理する第２の伸長処理手段をさらに備えたことを特徴とする請求項１９から２４の何れか一項に記載の画像処理装置。
【請求項２６】
圧縮処理された第１の画像データと、同じ圧縮処理手法により圧縮処理された第２の画像データを合成し同じ圧縮処理手法により圧縮処理された第３の画像データを出力する第２の合成処理手段を備え、第２の画像データの画像種に応じて、前記第１の合成処理手段と前記第２の合成処理手段のいずれかを使用して画像合成処理を行うことを特徴とする請求項１９から２５の何れか一項に記載の画像処理装置。
【請求項２７】
第１の画像データを圧縮処理した第１の圧縮データを入力する入力工程と、
前記圧縮データに第２の画像データを結合し結合データを出力する結合処理工程と、
前記結合データから前記圧縮データと第２の画像データを分離する分離工程と、
前記圧縮データに伸長処理を行い伸長後の画像データを出力する伸長工程と、
前記伸長後の第１の画像データと前記第２の画像データを合成する合成工程と、
を備えたことを特徴とする画像処理方法。
【請求項２８】
第１の画像データを圧縮処理した第１の圧縮データを入力する入力処理と、
前記圧縮データに第２の画像データを結合し結合データを出力する結合処理と、
前記結合データから前記圧縮データと第２の画像データを分離する分離処理と、
前記圧縮データに伸長処理を行い伸長後の画像データを出力する伸長処理と、
前記伸長後の第１の画像データと前記第２の画像データを合成する合成処理と、
を実行することを特徴とする画像処理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データの圧縮処理機能を備えた画像処理装置に関し、特に画像データの圧縮を行なうに際して周波数変換した後、出力された周波数変換係数を量子化して画像データを圧縮する画像処理装置に関する。また、圧縮／伸長処理機能と複数画像の合成機能を備えた画像処理装置に関し、特に、画像データを圧縮した圧縮画像データを取得し、別の画像データを合成した後、圧縮データのまま送信や記憶を行なう画像処理装置に関する。
【０００２】
【従来の技術】
近年、デジタルカメラやスキャナ等の普及に加えてインターネットの高速化も進み、高精細な多値の静止画像がホームユーザにも手軽に扱われるようになった。
【０００３】
オフィスにおいては、複写機のスキャナを使用して取り込んだ画像データをネットワーク経由にて複数のユーザに同時配信する商品が発売され、その迅速さ、手軽さ、再利用性の高さ等の利便性により脚光をあびている。
【０００４】
通常、これらの多値静止画像は、非常に多くの情報量となるため汎用的な圧縮方式でその情報量を圧縮し扱っている。一般的にカラー静止画において最もよく使用されている方式は、Ｊｏｉｎｔ　Ｐｈｏｔｏｇｒａｐｈｉｃ　Ｅｘｐｅｒｔｓ　ＧｒｏｕｐのＩＳ（Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｓｔａｎｄａｒｄ）１０９１８−１（ＩＴＵ−Ｔ　Ｔ．８１）にて勧告されたＪＰＥＧベースラインシステムである。ＪＰＥＧはベースラインシステムの他に機能を拡充した拡張システム（ＩＳ　　１０９１８−３：ＩＴＵ−Ｔ　　Ｔ．８４）も標準化されているが、多くのアプリケーションではベースラインシステムにのみ対応しており、拡張システムは一般的とは言いがたい面がある。以下本出願ではＪＰＥＧベースラインシステムをＪＰＥＧ方式ということとする。なお、次世代圧縮方式としてＪＰＥＧ２０００の基本方式が標準化（ＩＳ　　１５４４４−１）されたことにより、今後標準圧縮方式として普及していくと思われる。
【０００５】
一方デジタル複写機等の機器内においては、メモリ量の削減、データ転送時の帯域制限等の理由で画像データの圧縮が行われている。デジタル複写機等の画像処理装置において、ＪＰＥＧを使用すると以下のような問題がある。
【０００６】
（１）コンポーネント毎に単一の量子化ステップにて量子化を行うため、（文字画像や網点印刷画像等）原稿種の多様性に対して高画質な画像を再現しようとすると圧縮効率が悪くなってしまう。
（２）可変長圧縮方式であるため画像の回転や合成等、画像編集の操作を圧縮データ上で実現するのが困難である。
また、ＪＰＥＧのような標準圧縮方式を使用しない場合は、
（３）外部装置へ圧縮データを転送するような場合に、標準圧縮方式への変換が必要となりコストアップや処理速度の低下を招く。
【０００７】
このような問題を解決するために提案された技術文献として、特開５−９５４８４号公報と特開平１１−１６４１５０号公報に開示された技術が知られている。
【０００８】
特開平５−９５４８４号公報に開示されている技術は、周波数変換（公報内では直交変換）された周波数変換係数から画像タイプを識別し、その識別結果に応じて（周波数変換係数を量子化する）量子化ステップを切り替える事によって圧縮効率と画質の向上を図っている。このような周波数変換係数や入力画像データから画像や係数分布の特徴を識別し適応量子化を行う圧縮方式は、他にもさまざまな方式が開示されている。
【０００９】
特開平１１−１６４１５０号公報には、ＧＢＴＣ（Ｇｅｎｅｒａｌｉｚｅｄ　Ｂｌｏｃｋ　Ｔｒａｎｃａｔｉｏｎ　Ｃｏｄｉｎｇ）方式に代表されるブロック単位で固定長の圧縮方式が開示されている。
【００１０】
また、デジタル複写機等の機内において、記憶容量の削減、データ転送時の帯域制限等の理由で画像データの圧縮が行われるのが一般的となっているのと共に、読取った原稿等に対してページ番号や日付、“Ｃｏｎｆｉｄｅｎｆｉａｌ”、網掛けパターン等の文字やパターン等のスタンプ画像を画像合成して出力する機能が付加されているものが発売されており、その利便性が好評となっている。
【００１１】
特開平１１−３３１６１１号公報においては、ＤＣＴされた文字や記号等の副画像を予め記憶しておき、入力された主画像である圧縮符号データを復号化後、逆量子化を行いＤＣＴ係数上で文字や記号画像のＤＣＴ係数と加算して合成した後、逆直交変換を行い画像を出力する方法が開示されている。
【００１２】
【特許文献１】
特開５−９５４８４号公報
【特許文献２】
特開平１１−１６４１５０号公報
【特許文献３】
特開平１１−３３１６１１号公報
【００１３】
【発明が解決しようとする課題】
しかしながら、適応的に量子化ステップを変更する方式では、例え離散コサイン変換（以下ＤＣＴ）を使用して周波数変換を行っていても一つのコンポーネントでは単一の量子化テーブルしかサポートされないＪＰＥＧデコーダにおいては伸長する事が出来ない。そのため、特開平５−９５４８４号公報による方式によって形成された圧縮データを外部装置等へ転送する場合等には、符号化された圧縮データを復号化し、逆量子化という手順を経て、再度周波数変換係数へ戻した後で、ＪＰＥＧ圧縮用の量子化テーブルによって非適応の量子化を行い、量子化された量子化係数を再びハフマン符号化するという処理を行う必要があり、（３）の問題は完全には解決されない。また、可変長符号化を行うため（２）の問題も解決されない。
【００１４】
一方、特許文献２としての特開平１１−１６４１５０号公報に開示されてように、ＧＢＴＣ（Ｇｅｎｅｒａｌｉｚｅｄ　Ｂｌｏｃｋ　Ｔｒａｎｃａｔｉｏｎ　Ｃｏｄｉｎｇ）方式に代表されるブロック単位で固定長の圧縮方式を用いれば、編集性に優れた圧縮データを形成することが可能であり、（２）の問題は解決可能である。しかし、ＧＢＴＣによる圧縮データは標準とは言いがたく、上記（３）の問題は解決されない。また、これらの圧縮方式の圧縮率は２〜４程度と低いため、画像データをネットワークでの転送やＨＤＤ等への保存を行う場合に問題があった。
【００１５】
また、特許文献３としての特開平１１−３３１６１１号公報に開示されたＤＣＴ等の周波数空間上での合成方法には、以下のような問題点がある。
（Ａ）スタンプ画像の保存容量が大きい。
（Ｂ）スタンプ画像の画質が劣化する。
（Ｃ）中間データ同士の合成では出力画像上で違和感を生じる。
【００１６】
（Ａ）については、スタンプ画像のようにエッジ成分を多く含む画像にＤＣＴを実施すると、写真画像と比較して情報量が大きくなるのが一般的であり、同公報のように量子化や符号化をしないデータを保持するような場合は、ＤＣＴによって元の画像データよりも保存量が大きくなる可能性が高い。また、文字や記号等の画像は一般的に２値のデータで表される場合が多いがＤＣＴを実施する事により多値データとなってしまうので、元画像が２値データであるとすれば保存容量の増加は非常に大きなものとなってしまう。また、前述したようなデジタル複写機による合成処理においては、ユーザの嗜好によって合成する文字の大きさを選択できたり、網掛け、網点化等の装飾が可能である方がより好ましく、同公報の方法によってこのような処理に対応するためには例え同じ文字であっても、選択可能な大きさ、装飾の各々のＤＣＴ係数を保存しておく必要があり保存容量の増加が非常に大きな問題となる。
【００１７】
（Ｂ）については、ＤＣＴは非可逆な圧縮方式であるため、変換／逆変換を行うだけで劣化を伴う。ＤＣＴ係数に量子化を実行しない場合は、人間の目で判別できる程の劣化ではないと推測できるが、（１）の問題を緩和するために量子化等の画質劣化を伴う圧縮処理を行った場合、スタンプ画像では画質劣化が顕著に現れてくる。
【００１８】
（Ｃ）については、ＤＣＴ等の周波数変換後の画像データは、画素単位での合成は難しくブロック単位にて合成処理を行うのが一般的である。この場合の合成処理は、主画像と副画像を置換する合成方法はとれないため特開平１１−３３１６１１号公報のようにＤＣ（直流）成分を含めた両者の各々の係数を加算することによって行われるのが一般的と言える。今画像データが０〜２５５の値をとりえる８ビットの画像データで、２５５を黒、０を白と仮定すると、ＤＣＴの加算による合成方法では、副画像が２５５の場合は問題がないが、例えば１２８等の中間データの場合、合成部の主画像のデータ値によって合成後の出力値が変化する事になる。例えば、主画像が白地の部分に合成を行えば合成後のデータは１２８であるが、主画像が１００のデータ値を持つ部分に合成を行った場合（１００＋１２８）合成後のデータ値は２２８となる。これはＤＣＴ係数上での加算による合成を行う方法では、ＤＣ成分をも加算する必要があるため主画像の濃度が合成後の画像の濃度を変化させてしまう事に起因する。スタンプ画像を合成する場合には、画素単位の置換（上書き）の合成方法が望ましい（入力画像の画素を、白以外のスタンプ画像の画素で置き換える）。
【００１９】
また、最近のデジタル複写機では、前述したようなスキャナ機能やプリンタ、Ｆａｘ機能を１台で備えたいわゆる複合機の形態のものが主流となっている。このようなデジタル複合機では複数の処理を平行して行う並行動作を実現するために処理ブロックやユニット間をバスで接続する構成が主流となってきており、必要な転送速度を確保するために効率の良いデータ転送を行う必要がある。このようなバスを介して、複数の画像データの情報を転送する事を考えると、
（Ｄ）２つの画像データをフレーム単位に別々に送付する場合、多くのメモリを受信側に必要とするとともに処理速度も遅くなる。
（Ｅ）画像データをある単位で交互に送信する場合には、転送効率が低下するとともに送信側での動作が複雑になる。
という問題がある。
（Ｄ）に関しては、まず主または副画像を最初に受信装置に転送する必要があるため、少なくともいずれかの画像のフレームメモリが受信機側に必要である。このような場合メモリ容量が大きくなるのでコスト的に不利であるとともに、いずれかの画像の転送が終了するまで動作を停止する必要があるので、全体の処理速度も低下する。
（Ｅ）に関しては、一般的なバスはある程度のデータ単位にてバースト転送を実施するため連続したアドレス上のデータを転送するのが最も効率が良い動作方法である。メモリ等の記憶装置に保存している２つの画像を交互に送信する場合は、とびとびのアドレスを交互にアクセスする必要があるので、メモリアクセス時のオーバーヘッドが増大し転送効率が低下する。
【００２０】
本発明は上記事情に鑑みてなされたものであり、画像データの圧縮効率を向上させると共に、圧縮データでの編集性をも向上させることを目的とする。
【００２１】
また、結合処理後の画像データの容量を削減すると共に、結合後の画像データに対して、回転、部分画像の切り出しとの編集を容易に行なうことを目的とする。
【００２２】
【課題を解決するための手段】
係る目的を達成するために請求項１記載の発明は、入力画像を複数の画素からなるブロック単位に周波数変換を行い複数の周波数変換係数を出力する周波数変換手段、複数の周波数変換係数に量子化を行い複数の量子化係数を出力する量子化手段を備えた画像処理装置であって、複数の量子化係数の値または周波数変換係数の値の範囲を制限する制限処理手段を備えたことを特徴とする。
【００２３】
請求項２記載の発明は、請求項１記載の発明において、制限処理手段は、ブロック内の各々の係数単位またはブロック内の複数の係数単位に設けられた制限値によって値の範囲を制限することを特徴とする。
【００２４】
請求項３記載の発明は、請求項１または２記載の発明において、入力画像または周波数変換係数によりブロック内の特徴を識別する識別手段を備え、識別手段の識別結果に応じて制限手段を制御する制御手段を備えたことを特徴とする。
【００２５】
請求項４記載の発明は、請求項３記載の発明において、制御処理手段は、制限値を変更することによって行われることを特徴とする。
【００２６】
請求項５記載の発明は、請求項３または４記載の発明において、ブロック内の特徴は、エッジの有無およびエッジの方向であることを特徴とする。
【００２７】
請求項６記載の発明は、請求項３または４記載の発明において、ブロック内の特徴は、周波数の分布であることを特徴とする。
【００２８】
請求項７記載の発明は、請求項１から６の何れか一項に記載の発明において、入力画像に、周波数変換、量子化、制限処理を行った量子化データがブロック単位にて固定のデータ長を有することを特徴とする。
【００２９】
請求項８記載の発明は、請求項７記載の発明において、量子化データに、編集処理を行う編集処理手段を備えたことを特徴とする。
【００３０】
請求項９記載の発明は、請求項８記載の発明において、編集処理は、画像の回転処理であることを特徴とする。
【００３１】
請求項１０記載の発明は、請求項８記載の発明において、編集処理は、複数の圧縮データを合成する合成処理であることを特徴とする。
【００３２】
請求項１１記載の発明は、請求項１から１０の何れか一項に記載の発明において、量子化データに符号化を行い可変長の符号化データを形成する符号化手段を備えたことを特徴とする。
【００３３】
請求項１２記載の発明は、請求項１１記載の発明において、外部装置との通信を行う通信手段を備え、外部装置へデータを転送する場合は符号化データを出力することを特徴とする。
【００３４】
請求項１３記載の発明は、請求項１１記載の発明において、画像データを記憶するための不揮発性の記憶手段を備え、記憶手段へデータを記憶する場合は符号化データを出力することを特徴とする。
【００３５】
請求項１４記載の発明は、請求項１１記載の発明において、符号化データは汎用的な圧縮方式にて伸長可能な符号化データであることを特徴とする。
【００３６】
請求項１５記載の発明は、入力画像を複数の画素からなるブロック単位に周波数変換を行い複数の周波数変換係数を出力する周波数変換工程と、複数の周波数変換係数に量子化を行い複数の量子化係数を出力する量子化工程と、複数の量子化係数の値または周波数変換係数の値の範囲を制限する制限処理工程と、を備えたことを特徴とする。
【００３７】
請求項１６記載の発明は、請求項１５記載の発明において、入力画像に、周波数変換工程、量子化工程、制限処理工程を行った量子化データに符号化を行い可変長の符号化データを形成する符号化工程を備えたことを特徴とする。
【００３８】
請求項１７記載の発明は、入力画像を複数の画素からなるブロック単位に周波数変換を行い複数の周波数変換係数を出力する周波数変換処理と、複数の周波数変換係数に量子化を行い複数の量子化係数を出力する量子化工程処理と、複数の量子化係数の値または周波数変換係数の値の範囲を制限する制限処理と、を実行し、入力画像のデータ量を圧縮した圧縮データを形成することを特徴とする。
【００３９】
請求項１８記載の発明は、請求項１７記載の発明において、入力画像に、周波数変換処理、量子化処理、制限処理処理を行った量子化データに符号化を行い可変長の符号化データを形成する符号化処理を実行することを特徴とする。
【００４０】
請求項１９記載の発明は、第１の画像データに圧縮処理を行って出力された圧縮画像データと第２の画像データを結合し結合データを出力する結合処理手段と、結合データから圧縮画像データと第２の画像データを分離する分離手段と、圧縮画像データに伸長処理を行い伸長処理後の第１の画像データを出力する伸長処理手段と、伸長処理後の第１の画像データと第２の画像データを合成する第１の合成処理手段と、を備えたことを特徴とする。
【００４１】
請求項２０記載の発明は、請求項１９記載の発明において、圧縮処理は、複数の画素からなるブロック単位に行われる圧縮処理であって、結合は、ブロック単位に行われることを特徴とする。
【００４２】
請求項２１記載の発明は、請求項１９または２０記載の発明において、第２の画像データは、文字、線画、パターン画像であることを特徴とする。
【００４３】
請求項２２記載の発明は、請求項１９から２１の何れか一項に記載の発明において、圧縮データの圧縮率を高める圧縮率変更処理手段を備え、圧縮率変更処理手段は、結合処理の前に行われることを特徴とする。
【００４４】
請求項２３記載の発明は、請求項２２記載の発明において、圧縮率変更処理手段は、圧縮率変更処理前の圧縮データのデータ量と結合データのデータ量が同一となるように圧縮率を変更することを特徴とする。
【００４５】
請求項２４記載の発明は、請求項２３記載の発明において、圧縮処理手段は、固定長の圧縮処理手段であることを特徴とする。
【００４６】
請求項２５記載の発明は、請求項１９から２４の何れか一項に記載の発明において、第２の画像データは圧縮処理された圧縮データであり、分離手段から出力された圧縮された第２の画像データを伸長処理する第２の伸長処理手段をさらに備えたことを特徴とする。
【００４７】
請求項２６記載の発明は、請求項１９から２５の何れか一項に記載の発明において、圧縮処理された第１の画像データと、同じ圧縮処理手法により圧縮処理された第２の画像データを合成し同じ圧縮処理手法により圧縮処理された第３の画像データを出力する第２の合成処理手段を備え、第２の画像データの画像種に応じて、第１の合成処理手段と第２の合成処理手段のいずれかを使用して画像合成処理を行うことを特徴とする。
【００４８】
請求項２７記載の発明は、第１の画像データを圧縮処理した第１の圧縮データを入力する入力工程と、圧縮データに第２の画像データを結合し結合データを出力する結合処理工程と、結合データから圧縮データと第２の画像データを分離する分離工程と、圧縮データに伸長処理を行い伸長後の画像データを出力する伸長工程と、伸長後の第１の画像データと第２の画像データを合成する合成工程と、を備えたことを特徴とする。
【００４９】
請求項２８記載の発明は、第１の画像データを圧縮処理した第１の圧縮データを入力する入力処理と、圧縮データに第２の画像データを結合し結合データを出力する結合処理と、結合データから圧縮データと第２の画像データを分離する分離処理と、圧縮データに伸長処理を行い伸長後の画像データを出力する伸長処理と、伸長後の第１の画像データと第２の画像データを合成する合成処理と、を実行することを特徴とする。
【００５０】
【発明の実施の形態】
次に添付図面を参照しながら本発明の画像処理装置に係る実施の形態を詳細に説明する。図１〜図４８を参照すると本発明の画像処理装置に係る実施の形態が示されている。
【００５１】
［実施例１］
図１は、本発明の第１の実施形態における画像処理装置の要部ブロック図である。入力された画像データは、ブロック化処理部１で所定数の画素単位にブロック化される。本実施例においては水平方向８画素、垂直方向８画素の８×８画素のブロックとなる。ブロック内の６４個の画素は、ＤＣＴ処理部２によって既知の離散コサイン変換（以下ＤＣＴ）処理が行われ６４個のＤＣＴ係数が出力される。式１にＤＣＴ変換式を示す。
【００５２】
【数１】
2004112345.tif 000003
【００５３】
なお、Ｎ＝８：ブロック内水平（垂直）画素数
ｕ，ｖ＝０，１〜Ｎ−１：ブロック内ＤＣＴ係数座標
ｘ，ｙ＝０，１〜Ｎ−１：ブロック内画素座標
ｆ（ｘ，ｙ）＝入力画素値
Ｆ（ｕ，ｖ）＝ＤＣＴ係数値
また、入力データが正の数値しか持たないデータ（一般の画像データはこの形態である。）にＤＣＴ処理を実施する場合、ＪＰＥＧでは入力データの中央値付近のデータを入力データから減算して期待値を　”０”　または略０としてからＤＣＴ処理を実施する。以下、本発明においてもこのような処理が行われているものとして説明を行う。
【００５４】
ＤＣＴ係数（Ｆ（ｕ，ｖ））は、量子化テーブル４の各々のＤＣＴ係数毎に定められた量子化ステップ値（ｑ（ｕ，ｖ））に応じて量子化処理部３によりスカラー量子化が行われ、６４個の量子化係数（Ｑ（ｕ，ｖ）））を出力する。本実施例の場合は量子化テーブル４の値を除算することによって行われる。なお、量子化処理を実行する場合、四捨五入をして量子化誤差を低減した方が望ましい。なお、量子化テーブル４の値を２のべき乗で構成して、シフト演算によって量子化を実現しても良い。四捨五入を行った場合の量子化処理を式２に示す。なお、このような量子化方法は、ＪＰＥＧにて採用されいる方式と同じである。
ＩＦ　Ｆ（ｕ，ｖ）＜０，
ＴＨＥＮ　Ｑ（ｕ，ｖ）＝｛Ｆ（ｕ，ｖ）−ｑ（ｕ，ｖ）／２｝／ｑ（ｕ，ｖ）
ＥＬＳＥ　Ｑ（ｕ，ｖ）＝｛Ｆ（ｕ，ｖ）＋ｑ（ｕ，ｖ）／２｝／ｑ（ｕ，ｖ）　　　　　　　　　　　　　　　　　　　　　　　　　　　　・・・（式２）
【００５５】
図２（ａ）に本実施例にて使用する量子化テーブルの１例を示す。図中左上がｕ＝ｖ＝０の座標となり、一般的にＤＣ係数と言われるＤＣＴ係数への量子化ステップとなる。水平方向がｕ座標、垂直方向がｖ座標に対応している。量子化テーブルは図２（ａ）に限定されるものでなく、さまざまな形態が考えられる。他の例としてＪＰＥＧ推奨テーブルを図２（ｂ）に示す。量子化ステップは、入力の画像データの性質に応じて実験的に求めていくのが望ましい。量子化後の量子化係数は、リミットテーブル６の各々の量子化係数（Ｑ（ｕ，ｖ））毎に定められた、制限値に応じてリミッタ処理部５によって上下限両方向のリミッタ処理が行われ出力データとして出力される。
【００５６】
図３（ａ）にリミットテーブル（ｌｉｍ（ｕ，ｖ））の１例を示す。座標の対応関係は、量子化テーブルと同様である。リミット処理は、このテーブルを用いて式３のように行われる。
ＩＦ　Ｑ（ｕ，ｖ）＞ｌｉｍ（ｕ，ｖ），ＴＨＥＮ　Ｑ（ｕ，ｖ）＝ｌｉｍ（ｕ，ｖ）
ＥＬＳＥ　ＩＦ　Ｑ（ｕ，ｖ）＜−ｌｉｍ（ｕ，ｖ），ＴＨＥＮ　Ｑ（ｕ，ｖ）　＝−ｌｉｍ（ｕ，ｖ）　　　　　　　　　　　　　　　　　・・・（式３）
なお、上限と下限のリミットテーブルは、必ずしも同じ数字を使用する必要はなく別々の値を使用しても良い。この場合の一例として図３（ａ）のリミットテーブル値を上限値（ｕｌｉｍ（ｕ，ｖ））として、第３図（ｂ）に示す下限のリミットテーブル（ｌｌｉｍ（ｕ，ｖ））を使用した場合、リミット処理はこの２つのテーブルを利用して式４のように実行すれば良い。
ＩＦ　Ｑ（ｕ，ｖ）＞ｕｌｉｍ（ｕ，ｖ），ＴＨＥＮ　Ｑ（ｕ，ｖ）＝ｕｌｉｍ（ｕ，ｖ）
ＥＬＳＥ　ＩＦ　Ｑ（ｕ，ｖ）＜ｌｌｉｍ（ｕ，ｖ），ＴＨＥＮ　Ｑ（ｕ，ｖ）＝ｌｌｉｍ（ｕ，ｖ）　　　　　　　　　　　　　　　　　　・・・（式４）
【００５７】
この例では、下限値は、上限値の絶対値に１を加え負の値とした数としている。これは、ハードウェア的に限られたビット数ににて数字を表す場合（つまり決まったビット数の２進数の場合）に、負の値が正の値よりも１つ大きな数字まで表せる性質を利用し、同一ビット数にてリミット処理の誤差を軽減可能とするためである。例えば、８ビットで正負の数字を表そうとした場合、正の最大値は、０１１１１１１１ｂとなり１２７となる。一方、負の最大値は１０００００００ｂとなり−１２８となる。なお、このように正の値と負の値の対応関係が一意に求まる場合には、リミットテーブルを一つにして、リミット処理の下限値をｕｌｉｍ（ｕ，ｖ）から計算によって求めるように構成しても良い。また、複数の量子化係数への制限値を同一のものとして固定し、複数の係数値でサブブロックを構成し、サブブロック単位にて（一つの）制限値を記憶するように構成しても良い。図３（ｄ）に図３（ａ）のリミットテーブル上で同一値をまとめて、ブロックを５つのサブブロックへ分割した例を示す。このように構成すればリミットテーブルの記憶容量を減らす事が出来る。また、前記したように本実施例においては、ＤＣ成分の係数も正負の値を有するようにＤＣＴ処理を実施しているが、ＤＣ係数が正の値のみ有するように処理する場合にはＤＣ係数に関しては上限値のみ処理すれば良い。また、ＡＣ成分の係数に関しても、オフセット処理等を用いて正の値のみに変換するような場合においても同様である。
【００５８】
また、リミットテーブルの他の形態として、図３（ｃ）に示すように図３（ａ）の値をビット数（ｌｉｍ＿ｂｉｔ（ｕ，ｖ））にて表現することも可能である。この場合の処理を式５に示す。
ｕｌｉｍ（ｕ，ｖ）＝２ｌｉｍ−ｂｉｔ（ｕ，ｖ）
ｌｌｉｍ（ｕ，ｖ）＝−（ｕｌｉｍ（ｕ，ｖ）＋１）
ＩＦ　Ｑ（ｕ，ｖ）＞ｕｌｉｍ（ｕ，ｖ），ＴＨＥＮ　Ｑ（ｕ，ｖ）＝ｕｌｉｍ（ｕ，ｖ）
ＥＬＳＥ　ＩＦ　（Ｑ（ｕ，ｖ）＜ｌｌｉｍ（ｕ，ｖ），ＴＨＥＮ　Ｑ（ｕ，ｖ）＝ｌｌｉｍ（ｕ，ｖ）　　　　　　　　　　　　　　　　　・・・（式５）
【００５９】
実際には、ｕｌｉｍ（ｕ，ｖ）を算出するための２のべき乗の計算はハードウェアで実施するにはハード量が大きく、ソフトウェアで実現する場合においても速度的に不利なので、計算を行わずにマルチプレクサやＬＵＴを使用して実現した方がハード量や速度的な面で有利である。
【００６０】
以上で本実施例の構成、動作の説明は終了であるが、以下本発明の有用性について考察する。
ＪＰＥＧでは、量子化係数に対してエントロピー符号化であるハフマン符号化方式を用いて可変長符号化を行う。エントロピー符号化法は、発生頻度の高い情報に対しては短い符号を割り当て、発生頻度の低い情報に対しては長い符号を割り当てることにより平均的なデータ量の圧縮を行うものである。ハフマン符号化自体は可変長でかつ可逆の符号化法であるので、情報量をどれだけ削減出来るかどうかは入力データによって決まってしまい、時には入力データよりも大きな情報量を出力する時もありえる。
【００６１】
一般的に画像データにＤＣＴ処理を実施すると、ＤＣ成分以外の各々のＡＣ成分に対応する係数（以下ＡＣ係数）は０値を中心としたラプラス分布に近い分布を示す事が知られており、絶対値の大きなデータは発生頻度が低いため長い符号長が割り当てられることになる（（ＪＰＥＧ推奨のハフマンテーブルもその形態を取っている）。つまり絶対値の大きな係数値が算出されると圧縮率を下げる原因となるのである。例えば本実施例の後段にエントロピー符号化を行った場合、圧縮効率の悪い絶対値の大きな係数は、その値の範囲（絶対値の上限値）を制限することによって圧縮効率を向上させることが可能となる。しかし、たとえ圧縮効率を向上させうることが出来ても、画質を低下させてしまう方式では画質を向上させるために圧縮率を下げざるえなくなり意味がなくなってしまう。そのため、このような方式では画質の劣化を伴わないことが条件となる。
【００６２】
図４は、６００ｄｐｉスキャナから読取った複数の画像に対してＤＣＴ処理を行い、各ＤＣＴ係数の絶対値の最大値を検出したものである。なおＤＣＴ係数は、向かって左上がＤＣ係数であり、その他はＡＣ係数である。右および下にいくに従って（ｕ，ｖの値が大きくなるに従って）高周波成分を示す。一般にＤＣＴは低周波成分へのエネルギー集中が高いことが知られているが、係数の最大値も概ね低周波成分の方が高い値を示し、高周波成分では低い値となることが分かる。
【００６３】
図６は、ＡＣ係数を３つの帯域に対応する領域に分割し各々の領域にてリミッタ処理を実施した場合と、全てのＡＣ係数に同様にリミッタ処理を実施した時の制限率とＰＳＮＲ　ＰＳＮＲ（Ｐｅａｋ　ｔｏ　ｐｅａｋ　Ｓｉｇｎａｌ　ｔｏＮｏｉｓｅ　Ｒａｔｉｏ）値の関係を示したものである。ここでの制限値は、図４に示した最大値に対して、図中の制限率を乗算したものである。なお、ＰＳＮＲ値は圧縮の性能を評価する時によく使用される数値であり、式６のように算出される。
ＰＳＮＲ＝１０＊ｌｏｇ（最大画素値２／ＭＳＥ）
ただし、ＭＳＥ＝（Σ（原画素値−劣化値）　２）／全画素数　　・・・（式６）
一般的にＰＳＮＲ値が４０［ｄＢ］以上であれば、圧縮による劣化は、ほぼ人間の目には知覚されないといわれている。
【００６４】
図６中、全体で示されているグラフが全てのＡＣ係数に対してリミッタ処理を実施したもの、低周波で示されているグラフが図５中の低周波領域にのみリミッタ処理を実施したもの、中周波で示されているグラフが図５中の中周波領域にのみリミッタ処理を実施したもの、高周波で示されているグラフが図５中の高周波領域にのみリミッタ処理を実施したものである。
【００６５】
図６（ａ）には文字画像、図６（ｂ）には網点画像の結果を示す。両者とも同様な傾向を示しており、“全体”のグラフと低周波のグラフがほぼ同じ値を示し、中、高周波のグラフは高いＰＳＮＲ値を示している事が分かる（制限率０．２５でも４０［ｄＢ］以上を示す）。これは、リミッタ処理を行う場合、低周波領域に含まれるＤＣＴ係数へのリミッタ処理が画質劣化の支配的な要因である事を示している。換言すれば、中、高周波領域へのリミッタ処理は、画質への影響が少ないといえる。このような性質を利用して、低周波の係数に対しては係数データの制限が起こらないようにリミットテーブル６の値を設定し、高周波にしたがって係数データを制限するように設定することによって、大きく画質を劣化させずに前述したように圧縮効率を向上させる事が可能となる。
【００６６】
図７は、同様にＡＣ係数への量子化ステップに対するＰＳＮＲ値の関係を示したものである。量子化ステップにおいても、低周波領域に含まれるＤＣＴ係数への量子化処理が最も影響が大きいとはいえるが、リミット処理ほどの相関はなく、量子化に関しては中、高周波領域のＤＣＴ係数への処理の影響も無視出来ないといえる。結果的に量子化ステップを大きくして圧縮率を向上させるよりも、量子化ステップはなるべく小さな値にしてリミット処理によって周波数変換係数を制限したほうが画質は向上すると言える。
【００６７】
以上説明したように、本実施例によれば、画質を劣化させずに圧縮効率を向上させる事が可能となる。なお、以下は本実施例のみでなく、以降に述べる本発明における全実施例について量子化は、固定の量子化テーブルを使用して量子化を行っているため、本実施例の後段にハフマン符号化処理を実施すればＪＰＥＧデコーダによりデコードが可能という効果を併せて有している。また、特にＪＰＥＧによりデコードする必要がなく、圧縮効率の向上のみの効果を期待する場合には、量子化の際に公知技術であるブロック単位に適応的に量子化ステップを切り替える処理を実施しても良く、また、ＤＣＴのサイズも８×８に限らずさまざまなサイズに対応可能である。さらに周波数変換はＤＣＴに限らず、公知のフーリエ変換、アダマール変換、Ｋ−Ｌ変換、離散ウェーブレット変換等を使用しても実現可能である。また、実施例においては、説明の簡略化のために入力画像のコンポーネント数が１つ（モノクロ画像）の例を述べているが、複数のコンポーネントを有する画像データ（カラー画像）への適用も可能であることはいうまもでもない。また、応用範囲に関しても、画像処理装置や、コンピュータ上で動作するプログラムなどその形態を問わない。
【００６８】
［実施例２］
図８は、本実施例における画像処理装置の要部ブロック図である。本実施例においては実施例１に示す画像処理装置と比較して、リミッタ処理部５の位置が量子化処理部３の前に位置しておりＤＣＴ係数に対してリミッタ処理を実施するようにしたものである。図９にリミットテーブル（ｌｉｍ（ｕ，ｖ）’）を示す。このリミットテーブルは、図３（ａ）に示すリミットテーブルとほぼ等価な内容になっている。このテーブルを使用した場合のリミット処理は式３と同様である。
本実施例の場合のリミッタテーブルは、式７に示すように図３（ａ）に示すリミットテーブルに量子化ステップテーブル図２（ａ）に示すｑ（ｕ，ｖ）を乗算し、１を引いた値となっている。
ｌｉｍ（ｕ，ｖ）’＝（ｌｉｍ（ｕ，ｖ）＊ｑ（ｕ，ｖ））−１・・・（式７）
【００６９】
ここでの“−１”は、量子化時の四捨五入の繰り上がりを考慮したものであり、量子化時に四捨五入を行わないものであれば必要はない。本実施例の場合、実施例１の場合とほぼ同様な効果が得られるが量子化時の四捨五入を実施する場合、結果的にダイナミックレンジが弱冠ではあるが実施例１の場合よりも劣るため、ほぼ同様な結果が得られるが実施例１の構成の方がより画質劣化は小さくできる。
【００７０】
［実施例３］
図１０は、本実施例における画像処理装置の要部ブロック図である。本実施例は特徴判定部１０を設けて入力画像データよりブロック内の画像の特徴を判定し判定結果によって複数のリミットテーブル１１〜１４をセレクタ１５によって切り替えるように構成したものであり、その他の動作は実施例１の場合と同様である。
【００７１】
以下、本実施例の特徴である特徴判定部１０およびリミットテーブル１１〜１４の選択について説明を行う。
図１１は、特徴判定処理部１０のブロック図である。２１〜２４は、画像のエッジ量を算出する空間フィルタであり、本実施例においてはフィルタ１（２１）が図１３（１）に対応する縦線等に見られる横エッジ量算出フィルタ、フィルタ２（２２）が（２）に対応する横線等に見られる縦エッジ量算出フィルタ、フィルタ３（２３）が（３）に対応する右下がり線等に見られる左下がり斜めエッジ量算出フィルタ、フィルタ４（２４）が（４）に対応する左下がり線等に見られる右下がり斜めエッジ量算出フィルタであり各々一次微分フィルタにて構成されている。フィルタ１（２１）〜４（２４）によって公知のフィルタ演算されたデータは、絶対値化処理部２５によって各々絶対値化される。
【００７２】
絶対値化されたフィルタ１（２１）のデータは横エッジ量Ｙ＿ｅｄｇｅ、フィルタ２（２２）のデータは縦エッジ量Ｔ＿ｅｄｇｅとして判定処理部２８に入力される。一方絶対値化されたフィルタ３（２３）、４（２４）のデータは、さらに最大値選択部２６によってどちらか値の大きなデータが選択される。これは、フィルタ３（２３）は左下がりの斜めエッジ量、４（２４）は右下がりの斜めエッジ量を算出するフィルタであるが、本実施例においては両斜めエッジ成分は、リミットテーブル１４にて同じ処理を行うため、双方の最大値をもって斜めエッジ量とするためである。
【００７３】
選択されたデータは、演算器２７によって８／７倍され斜めエッジ量Ｎ＿ｅｄｇｅとして判定処理部２８へ入力される。演算器２７による演算は、フィルタ１（２１）、２（２２）とフィルタ３（２３）、４（２４）との係数の重みをそろえる（フィルタ１，２は＋１の数が３２個、フィルタ３，４は＋１の数が２８個であるためフィルタ３，４は８／７倍してエッジ量の大きさをそろえる）ための処理である。
【００７４】
判定処理部２８では、縦、横、斜めのエッジ量から最大値を求め所定のしきい値と比較してブロック内にエッジが存在するかどうか判定する（判定１）。また、３者のエッジ量のなかで最も大きな値を有するものによって、そのエッジが縦、横、斜めいずれのエッジであるかを判定する（判定２）。判定１および判定２の結果によってリミットテーブル選択信号をセクタ１５へブロック単位に出力する。
【００７５】
図１２は、リミットテーブル１１〜１４を示したものであり、リミットテーブル１（１１）が図１２（１）に対応していおり特徴判定の結果が非エッジブロックの場合に選択されるリミットテーブルを表している。リミットテーブル２（１２）は図１２（２）に対応し横エッジの場合に選択され、リミットテーブル３（１３）は図１２（３）に対応し縦エッジの場合に選択され、リミットテーブル４（１４）が図１２（４）に対応し斜めエッジの場合に選択される。判定１，２とリミットテーブルの番号の対応関係を表１に示す。
【００７６】
【表１】
2004112345.tif 000004
【００７７】
図１４は、縦、横、斜めエッジ画像が入力された場合の、ＤＣＴの電力が集中する主な係数を塗りつぶして示している。図１４（１）は横エッジ画像が入力された場合に集中するＤＣＴ係数であり、図１４（２）は縦エッジ画像、図１４（３）は斜めエッジ画像に対応している。同図に示したようにＤＣＴは、入力画像に対して電力の集中する係数がほぼ予想できる性質を有している。本実施例では、入力画像の特徴に応じて、電力の集中した高い値を有する係数に対してのリミッタテーブルの制限値を高くすることによって、入力画像に適したリミッタ処理を行う事が可能となり、さらなる画質劣化の抑制と圧縮効率の向上を実現可能としている。なお、本実施例においては、縦、横、斜め、３種類のエッジを判定しているが、エッジ量算出フィルタの数を増やす等して判定条件を高精度化するとともにリミットテーブルの種類を増やして、入力画像を細分化してさらにさまざまな入力画像の条件にマッチングさせるように構成することも容易に変更可能である。なお、本実施例をカラー画像へ適用する場合に、特徴判定部は、各コンポーネント毎に判定しても良く、代表コンポーネントのみで判定し他のコンポーネントはその判定結果を用いるように構成しても良い。一般的に好適な例としては、ＲＧＢやＣＭＹＫなど３または４原色のコンポーネントを入力する場合は、各色毎に特徴判定を実施したほうが良く、Ｙ，Ｃｂ，ＣｒやＹ，Ｕ，Ｖ，ＣＩＥＬ＊　，ａ＊，ｂ＊　等の輝度／色差（明度／色度）系の信号を使用する場合は、輝度（明度）信号によって特徴を判定し、色差（色度）信号はその判定結果を使用するように構成したほうが良い。
【００７８】
［実施例４］
図１５は、本実施例における画像処理装置の要部ブロック図である。本実施例はＤＣＴ係数からブロック内の特徴を判定するように構成したものでありその他の部分については実施例３の場合と同様である。以下本実施例の特徴である特徴判定部３０について説明を行う。図１７は、特徴判定処理部３０のブロック図である。３４は入力されたＤＣＴ係数を絶対値化する絶対値化処理部である。絶対値化された各々のＤＣＴ係数は、フィルタ１（３１）〜３（３３）へ入力され入力されたＤＣＴ係数に対してフィルタ演算が実施される。フィルタ１（３１）が図１６（１）に対応し、水平方向の高周波（横エッジ）を検出するフィルタ、フィルタ２（３２）が（２）に対応する垂直方向の高周波（縦エッジ）を検出するフィルタ、フィルタ３（３３）が（３）に対応する斜め方向の高周波（斜めエッジ）を検出するフィルタである。なお、本実施例でのフィルタ処理は、絶対値化された所定の係数の合計値を算出するものである。フィルタ１（３１）の出力データは横エッジ量Ｙ＿ｅｄｇｅ、フィルタ２（３２）のデータは縦エッジ量Ｔ＿ｅｄｇｅ、フィルタ３（３３）のデータは斜めエッジ量Ｎ＿ｅｄｇｅとして判定処理部２８に入力される。（実際にはいわゆるエッジ量ではないが、ここでは便宜上この言葉を使用する。）これ以降の動作は、実施例３の場合と同様なので割愛する。本実施例と実施例３との違いは、実空間の係数上で画像の特徴を判定するか周波数変換係数上で画像の特徴を判定するかであるが、実施例３の場合よりも本実施例の方が計算量（回路規模）が少ない事が分かる。また、周波数変換係数は、その係数自体が実施例３にて示したエッジ量と同じような意味合いを有することから画像の特徴を識別するには非常に都合が良く、検出する係数の組合せを増やすことによって、それほど計算量を増やさずに高精細な特徴判定が可能となる効果を有している。
【００７９】
［実施例５］
近年、スキャナユニットとプリンタユニットをコントローラユニットを介在させて接続し、複写機能、スキャナ機能、プリンタ機能を有する多機能な画像処理装置が脚光を浴びている。本実施例においてはそのような画像処理装置に本発明の画像データ圧縮処理を適応可能とし、圧縮データ上で９０度、１８０度、２７０度のいずれかに回転処理を行う例を示す。なお、複写機における回転処理は、例えばＡ４原稿を縦に読取った場合、画像データを９０度回転させてＡ４横で出力することにより複写速度を向上させたり、原稿の方向の記録紙がなかった場合、画像を回転させて違う方向にセットされた記録紙に印写する等の用途で使用される。
【００８０】
図２６は、本実施例における画像処理装置の全体構成を示すブロック図である。原稿を読取るスキャナユニット１００、画像データを記録紙等の記録媒体へ出力するプリンタユニット１０２、スキャナユニット１００にて読取られた画像データに回転、合成等の編集処理、画像データの保存、外部機器との送受信を行うコントローラユニット１０１、の３ユニットにて構成されており各々のユニットは内部転送路１０４を介して接続されている。
【００８１】
コントローラユニット１０１の内部構成は、画像処理装置全体の動作命令やコントローラユニット内のデータ処理を行うＣＰＵ９０、量子化後の圧縮された画像データ（以下一次圧縮データ）を一時的に記憶するワーク領域として使用される揮発性のメモリ４３、操作者とのＩ／Ｆでありスタートボタンや画像処理装置の動作モード等を設定する操作部９２、圧縮された画像データ等を保存するためのＨＤＤ８１、内部転送路１０４とのＩ／Ｆ処理を行う内部転送路Ｉ／Ｆ９１、一次圧縮データのブロック内回転処理を行う回転処理部４４、２つの一次圧縮データの合成処理を行う合成処理部７０、一次圧縮データに対してハフマン符号化を行う符号化処理部８０、ハフマン符号を一次圧縮データへ復号化する復号化処理部８３、外部転送路を介してデータを送受信する外部転送路Ｉ／Ｆ８２がバス１０５を介して接続されている。
【００８２】
図１８は、画像回転処理時の画像データの流れを示したブロック図である。以下同図をもとに本実施例における画像回転処理の動作を説明する。なお、同図においては内部転送路へのＩ／Ｆ処理部は省略してある。
まず、スキャナユニットにおいて、スキャナ４０により原稿が読取られ光電変換された１画素８ビットで表される画像データが出力される。この画像データは、画像処理部１（４１）によって、γ変換処理やフィルタ処理等公知の複写機用の画像処理が行われた後、圧縮処理部４２によって一次圧縮データへ変換される。
【００８３】
図１９は、圧縮処理部４２の詳細ブロック図である。同図における構成要素１〜６までは実施例１の場合と同じものとし、説明は省略する。リミッタ処理部５から出力されたデータは、係数結合処理部５０によりブロック単位の一次圧縮データへ結合される。ビットテーブル４９は、図３（ｃ）に示すテーブルであり各々の係数の有効ビット数を表している。係数結合処理部５０は、ビットテーブル４９に示すビット数のみ各々の係数から切り出し結合し、合計２５６ビットの固定長の一次圧縮データとして出力する。この場合、１ブロックは８×８画素で構成され、１画素当たり８ビットのデータであるから圧縮前の合計ビット数は５１２ビットであり圧縮率は２となる。
【００８４】
一次圧縮データは、内部転送路を介してコントローラユニット１０１へ転送される。コントローラユニット１０１は、受け取った一次圧縮データをメモリ４３へ一画面分保存する。ＣＰＵ９０は、回転角度を考慮してメモリ４３から一次圧縮データを読み出すことによって８×８ブロック単位での回転処理を実施する。スキャナユニットから出力される一次圧縮データはラスタスキャンであるので原稿に向かって左上から右上へ向かう水平方向にブロック単位に走査され、水平方向の走査が終了すると１ブロック下へ走査ラインを移動し順次最終ブロックラインまで走査され、最後の走査は、原稿の左下から右下となり、メモリ４３にはこの順序で記憶される。これを例えば、反時計方向に９０度回転する場合、最初に画像の右上から右下の垂直方向へ走査して、左上から左下の列まで走査すればブロック単位の回転が行われることになり、メモリ４３からの読み出し順序をこのようにすればよい。本実施例においては、ブロック当たり固定長の圧縮データを使用しているため、メモリ上のアドレスと画像データの対応は１対１であり圧縮データを伸長したり特別な処理なく簡易な方法でブロック単位の回転処理が可能となる。メモリ４３からブロック単位に回転された一次圧縮データは、回転処理部４４へ入力される。
【００８５】
図２０は、回転処理部４４の詳細ブロック図である。一次圧縮データである入力データは、ビットテーブル４９のビット配置に応じて係数分解処理部５１によって各係数に分解される。分解された係数は符号反転処理部１（６２）、符号反転処理部２（６３）、符号反転処理部３（６４）にそれぞれ入力され、各々所定の係数の符号を反転する。第２１図は回転角に応じた処理を示した表である。符号反転処理は同図におけるＳＴＥＰ１処理にあたるもので、各回転角に応じて黒く塗りつぶされた係数の正負の符号を反転させる処理である。符号反転処理部１（６２）は反時計方向９０度回転の処理であり、符号反転処理部２（６３）は１８０度回転、符号反転処理部３（６４）は２７０度回転の処理に対応している。符号反転処理部１（６２）および符号反転処理部３（６４）の出力は、セレクタ６４に各々入力されＣＰＵ９０が出力したＳＥＬ１信号によって回転角に対応した処理結果が選択される。セレクタ６４にて選択されたデータは、行列入替え処理部６５によって、行と列が入替えられる。これは、６５個の係数を行列に見立てた場合、転置行列を形成するのと等価である。行列入替え処理部６５から出力されたデータと符号反転処理部２（６３）から出力されたデータは、セレクタ６６に各々入力されＣＰＵ９０が出力したＳＥＬ２信号によって回転角に対応した処理結果が選択される。セレクタ６６から出力されたデータは、係数結合処理部５０へ入力され前述し係数結合処理が行われ、回転後の一次圧縮データとして出力される。このようなＤＣＴ係数上での回転処理は、公知技術であり、ＤＣＴ係数上で９０度単位にブロック内回転が可能となる。また、量子化されたデータであってもその効果に変化はない。回転処理部４４にてブロック内回転された一次圧縮データは、プリンタユニット１０２の伸長処理部４５へ入力され一次圧縮データが伸長される。
【００８６】
図２２は、伸長処理部４５の詳細ブロック図である。入力された一次圧縮データは、係数分解処理部５１にて、前記した係数分解処理が行われる。分解された６４個の係数は逆量子化処理部５３によって、量子化処理時と同様の量子化テーブルを使用し、各々の係数に対応する量子化ステップを乗算して逆量子化を実行する。逆量子化処理されＤＣＴ係数となった係数は逆ＤＣＴ処理部５４にて逆ＤＣＲＴ変換が行われ８×８ブロックの画像データが出力される。８×８の画像データはブロック展開処理部５５によってラスタデータへ変換されて伸長処理部４５から出力される。伸長されラスタ変換された画像データは、画像処理部２（４６）によってγ変換処理や中間調処理等公知の複写機用の画像処理が行われた後プリンタ部４７によって記録紙上に、原稿が所定の角度回転した画像が出力される。
【００８７】
以上説明したように本実施例においては、ＤＣＴ変換された画像データを固定長に圧縮しているので、メモリからの読み出すアドレス（順序）を制御するのみでブロック単位の回転が可能となる。回転処理に必要な１画面分のメモリへの蓄積は圧縮データを蓄積するため、実画像データをメモリに蓄積する場合よりもメモリが少なくコストを低くする事が出来る。また、固定長圧縮のためメモリが定まっており、可変長圧縮処理時に危惧されるメモリのオーバーフローが生じることもない。
【００８８】
本実施例においては、ブロック内圧縮をコントローラユニット１０２にて実施する例を示したが、回転角度をスキャナユニット１００またはプリンタユニットへ通知して、圧縮時や伸長時にブロック内回転を実行することも可能である。
但し本実施例に示した方法の方が、コントローラユニット１０１内のみで回転処理が完了することになり、他のユニットにおいては回転を意識せず画像データを処理する事が可能となり制御上の複雑さが解消できる効果を有している。
【００８９】
［実施例６］
本実施例においては、圧縮データ上にて合成処理を行う例を示す。本実施例における画像処理装置の全体構成を示すブロック図は実施例５の場合と同様である。
図２３は、画像合成処理時の画像データの流れを示したブロック図である。以下同図をもとに本実施例における画像合成処理の動作を説明する。本実施例においても実施例５同様、同図においては内部転送路１０４へのＩ／Ｆ処理部は省略してある。
【００９０】
原稿読取り動作に先立ちＣＰＵ９０は、一次圧縮データ（画像データ２とする）をＨＤＤ８１などから読み出し、一次圧縮データの形式のままメモリ４３へ保存する。実施例５の場合と同様にして原稿が読取られ一次圧縮データ（画像データ１とする）が内部転送路１０４を介して、コントローラユニット１０１の合成処理部７０へ入力される。それに同期して画像データ２もメモリ４３から読み出され合成処理部７０へ入力され、ブロック単位にて合成処理が行われる。合成されたデータは、内部転送路１０４を介してプリンタユニット１０２へ転送され実施例５同様プリンタ４７によって出力される。
【００９１】
図２４は、合成処理部７０の詳細ブロック図である。画像データ１，２とも係数分解処理部にて６４個の係数に分解処理される。個々の係数に分解されたデータは、各々の係数単位にて加算演算処理部７１、および減算演算処理部７２に入力される。加算演算処理部７１においては画像データ１の係数と画像データ２の係数が加算されて合成データ係数を構成する。一方減算処理部７２では画像データ１の係数から画像データ２の係数を減算する。両者の出力係数データはセレクタ７３に入力されＣＰＵ９０から予め出力された選択信号ＳＥＬ３によって選択され、係数結合処理部５０にて合成後の一次圧縮データとして合成処理部７０から出力される。
【００９２】
加算演算による加算合成と減算演算による減算合成は、合成画像が異なる結果となる。加算合成では、両者の濃度値を足し合わせた結果となり、画像データ１に画像データ２を上書きしたものに近い結果となる。一方減算合成は、画像データ１を画像データ２で白抜きしたものに近い結果となる。このような合成方法は、複写動作に先立ち、操作部９２によってユーザの嗜好により選択されるように構成されている。
【００９３】
以上説明したように本実施例によれば、複雑な処理を必要とせず簡易な方法で圧縮データ上の画像合成処理が可能となる。
【００９４】
［実施例７］
本実施例においては、スキャナにより読取られた画像データを一次圧縮後、符号化して汎用圧縮フォーマットとした後、不揮発性記憶装置であるＨＤＤ（ハードディスクドライブ）に保存したり、外部装置へ転送する例を示す。本実施例における画像処理装置の全体構成を示すブロック図は実施例５の場合と同様である。
【００９５】
図２５は、本実施例における画像データの流れを示したブロック図である。以下同図をもとに本実施例における画像処理装置の動作を説明する。本実施例においても実施例５同様、同図においては内部転送路１０４へのＩ／Ｆ処理部は省略してある。
実施例５の場合と同様にして原稿が読取られ一次圧縮データが内部転送路１０４を介して、コントローラユニット１０１の符号化処理部８０へ入力される。符号化処理部では、一次圧縮データを符号化しＪＰＥＧデータへと変換する。ＪＰＥＧデータを外部装置へ転送する場合には、外部Ｉ／Ｆ８２を経由して外部転送路１０６へ送出する。
【００９６】
一方、ＪＰＥＧデータを保存する場合は、ＨＤＤ８１へ保存する。ＨＤＤ８１に保存したＪＰＥＧデータを印写する場合は、ＨＤＤ８１からＪＰＥＧデータを読み出し、復号化処理部８３にて復号化して一次圧縮データとした後内部転送路１０４を介してプリンタユニット１０２へ送出し印写する。
【００９７】
図２７は、符号化処理部８０の詳細ブロック図である。入力された一次圧縮データは、係数分解処理部５１により前述の係数分解処理が行われ、６４個の係数データが出力される。これはＪＰＥＧの量子化後のデータである量子化係数と同様のものであるため、以下はＪＰＥＧの符号化処理と同様の処理が行われて、最終的にＪＰＥＧ符号データとして出力される。
【００９８】
量子化係数は、１個のＤＣ成分の係数と６３個のＡＣ成分の係数に分離され、ＤＣ係数はＤＰＣＭ（予測符号化）処理部８４にてＤＰＣＭ処理が行われた後ハフマン符号化処理部８５によってハフマン符号に変換される。一方ＡＣ係数は、ジグザグスキャンにより低周波から高周波の成分へと並べ替えられ、連続する０係数のラン長と非０係数の値との組合せデータの形でハフマン符号化される。なお、実際のＪＰＥＧデータは、ハフマン符号の他にヘッダーや複数のマーカにより成り立っており、正式なＪＰＥＧフォーマットに変換するためにはそれらを含めて符号データを出力する必要があるが、ここでは説明の簡略化のために省略する。
【００９９】
図２８は、復号化処理部８３の詳細ブロック図である。入力されたＪＰＥＧ符号データは、ハフマン復号化処理部８９にて復号化され、ＤＣ成分は、逆ＤＰＣＭ処理部にて逆ＤＰＣＭ処理が行われ、ＤＣ係数が出力される。一方ＡＣ成分は、ハフマン復号化後ゼロ伸長処理部８８にて０の係数が復元され６３のＡＣ係数が出力される。ＤＣ、ＡＣ係数は、係数結合処理部５０にて前述した係数結合処理が行われ一次圧縮データとして復号化処理部８３から出力される。
【０１００】
前述したように、本実施例における一次圧縮の圧縮率は２に設定している。圧縮率は、量子化テーブルやリミットテーブル等を変更することによって変更可能であるが、編集性を重視した固定長圧縮である以上それほどの圧縮率は期待できない。この程度の圧縮率で、スキャナ読取り画像のような情報量の大きな画像データを外部転送路１０６を介してデータを送出したり、ＨＤＤ等に多くの画像を蓄積するような場合には外部転送路のトラフィックの増大やすぐにＨＤＤが満杯になってしまう等の問題が発生する。
【０１０１】
本実施例においては、前記のように高い圧縮率が必要な場合、可変長符号化を実施して圧縮率を向上し前記の問題が解決可能である。また、簡単な方法によって汎用的な可変長符号（ＪＰＥＧ）データと一次圧縮データが双方向に変換可能であるとともに両者の変換に画質劣化を伴わないので、回転や合成の編集処理時には固定長の一次圧縮データを使用することによる編集性の維持と、ＨＤＤへの保存や外部データ転送時にはＪＰＥＧデータを使用することによる外部機器等との親和性の良さを両立している。
【０１０２】
最後に、本実施例での符号データ形式をＪＰＥＧ形式ではなくＪＰＥＧ２０００基本方式形式のデータとする場合について簡単に説明する。ＪＰＥＧ２０００は、ＪＰＥＧと比較してさまざまな点に相違があるが、基本的な処理の流れは変わらないため、本発明において対応可能である。
【０１０３】
本実施例の以下の点を変更することにより最終出力データをＪＰＥＧ２０００形式とする事が可能となる。
・周波数変換にＪＰＥＧ２０００対応のフィルタを使用した離散ウェーブレット変換を使用する。
・量子化は、デッドゾーン付きスカラー量子化で行うか、または、２のべき乗のみの量子化ステップを使用して、ポスト量子化に対応させる。（ＪＰＥＧ２０００は符号化後に符号列の下位ビットプレーンを切り捨てる事によるポスト量子化を備えており、この機能によりレートコントロールをするので、ポスト量子化に対応させた方が一般的である。）
・リミッタ処理は同様の処理でよい。
・符号化はＥＢＣＯＴ（Ｅｍｂｅｄｄｅｄ　Ｂｌｏｃｋ　Ｃｏｄｄｉｎｇ　ｗｉｔｈ　Ｏｐｔｉｍａｉｚｅｄ　Ｔｒｕｎａｃａｉｏｎ）の手順を守り、算術符号化法であるＭＱ−Ｃｏｄｅｒを使用し符号化処理部の出力をＪＰＥＧ２０００フォーマットに適合させる。
【０１０４】
［実施例８］
近年、スキャナユニットとプリンタユニットをコントローラユニットを介在させて接続し、複写機能、スキャナ機能、プリンタ機能を有する多機能なデジタル復号機が脚光を浴びている。本実施例においてはそのような画像処理装置に本発明の画像データ合成処理を適応可能とし、２つの画像データを合成処理する例を示す。なお、本実施例における合成処理は、スキャナから入力された画像データ１に、ページ番号や日付、“Ｃｏｎｆｉｄｅｎｆｉａｌ”、網掛けパターン等のスタンプ画像の画像データ２を合成して出力するものである。
【０１０５】
図２９は、本実施例における画像処理装置の全体構成を示すブロック図である。原稿を読取るスキャナユニット３００、画像データを記録紙等の記録媒体へ出力するプリンタユニット３０２、スキャナユニット３００にて読取られた画像データ１に本発明の特徴である画像データ１と画像データ２を結合する結合処理、画像データの保存、外部機器との送受信等を行うコントローラユニット３０１、の３ユニットにて構成されており各々のユニットはバス３０４を介して接続されている。
【０１０６】
コントローラユニット３０１の内部構成は、画像処理装置全体の動作命令やコントローラユニット３０１内のデータ処理を行うＣＰＵ２０１、圧縮された画像データ１やフォントデータ等を展開した画像データ２を一時的に記憶するワーク領域として使用される揮発性のメモリ２０２、圧縮された画像データ等を再利用する場合や用紙ミスフィード時のバックアップ、画像データを複数部複写する場合に部数単位にページ順に並べ替える電子ソート機能等の使用時に複数の画像データを保存するためのＨＤＤ２０３、操作者とのＩ／Ｆでありスタートボタンや画像処理装置の動作モード等を設定する操作部２０４、バス３０４とのＩ／Ｆ処理を行うバスＩ／Ｆ２０５、圧縮された画像データ１と画像データ２を結合する結合処理部２０６、外部転送路３０６を介してデータを送受信する外部転送路Ｉ／Ｆ７がバス３０５を介して接続されている。
【０１０７】
図３０は、本実施例における画像データの流れを示したブロック図である。以下同図をもとに本実施例における画像合成処理の動作を説明する。なお、同図においてはバス３０４へのＩ／Ｆ処理部は省略してある。
まず、ユーザにより操作部４を使用して図示しないメニュー画面等から複写データへのスタンプ画像の合成処理を行うモードが選択され、同時にスタンプ画像の種類や複写画像内での画像位置、スタンプ画像の大きさ等が設定され、図示しないスタートボタンが押下される。スタートの指示によりＣＰＵ２０１は、予めＨＤＤ２０３内に保存されている２値のスタンプ画像である画像データ２をメモリ２０２上へ展開する。この場合の画像データ２のＨＤＤ２０３内における保存形態は、フォントデータまたは２値の画像データで保存されており、ＣＰＵ２０１がビットマップデータへ展開しながらメモリ２０２上へ保存される。このような動作は、一般的なプリンタ装置でのコントローラ上で行われる動作であり、詳細な説明は省略する。
【０１０８】
次にスキャナユニット３００において、スキャナ２１０により原稿が読取られ光電変換された１画素８ビットで表される画像データ１が出力される。この画像データ１は、画像処理部２１１によって、γ変換処理やフィルタ処理等公知の複写機用の画像処理が行われた後、圧縮処理部２１２によって圧縮データへ変換される。ここでの圧縮処理はさまざまな例が考えられるが、一般的によく使用されているＪＰＥＧベースライン圧縮処理が８×８の画素ブロック単位に実行されるものとする。
【０１０９】
ＪＰＥＧ圧縮された画像データ１の圧縮データは、バス３０４を介してコントローラユニット３０１へ転送される。コントローラユニット３０１は、受け取った圧縮データを結合処理部２０６へ入力する。これと同期して、メモリ２上に保存されていた画像データ２は、８×８の画素ブロック単位に読み出され結合処理部６へ入力される。結合処理部６では、この２つのデータに後述する結合処理を実施し、結合データとして出力する。結合データは、一旦メモリ２０２上で保存された後、バス３０４を介してプリンタユニット３０２へ転送される。
【０１１０】
プリンタユニット３０２へ転送された結合データは、分離処理部２１３によって画像データ１の圧縮データと画像データ２に分離される。画像データ１の圧縮データは、伸長処理部２１４によって公知のＪＰＥＧ伸長処理が行われる。伸長後の画像データ１と分離された画像データ２は、合成処理部２１５へ入力され後述する合成処理が行われる。合成後の画像データは、画像処理部２（２１６）によってγ変換処理や中間調処理等公知の複写機用の画像処理が行われた後プリンタ部２１７によって記録紙上に、画像データ１と画像データ２が合成処理された合成画像が出力される。
【０１１１】
以下、結合処理部２０６、分離処理部２１３、合成処理部２１５について各々詳細に説明する。
図３１は、結合処理部２０６のブロック図である。入力された画像データ１の圧縮データは、バッファ２２０へ一旦記憶された後、ブロック境界検出部２２１およびマルチプレクサ２２２へ各々入力される。一方画像データ２は、バッファ２２３へ入力され一旦記憶された後、ブロック境界検出部２２１およびマルチプレクサ２２２へ入力される。ブロック境界部２２１は、画像データ１の圧縮データのブロック境界を検出するまで、マルチプレクサ２２２が画像データ１を選択出力するように制御し、ブロック境界を検出後は、画像データ２が１ブロック分のデータを出力するまで画像データ２を選択出力するように制御する。以下この動作を繰り返し、画像データの圧縮データ１と画像データ２が交互に出力されるように制御する。これで、画像データ１の圧縮データと画像データ２はブロック単位に結合されたことになる。
【０１１２】
図３４は、圧縮された画像データ１と画像データ２、結合データを模式的に示したものである。結合データは、連続的に入力される画像データ１のブロック境界にブロック単位の画像データ２を挿入した形態となっている事が分かる。なお、本実施例においては結合データの各符号の境界部には特別な処理やデータを付加しない構成について説明しているが、識別のマーカ等をブロック単位の画像データ１や画像データ２または両方の終端部分に挿入するような構成にしても良い。その場合は全体の容量は大きくなるが、転送時にエラー等が生じた場合の復帰が容易になる等の効果を生ずる。
【０１１３】
図３２は、分離処理部２１３のブロック図である。入力された結合データは、バッファ２３０へ一旦記憶された後、データ判定処理部２３１、ゲート２３２、ゲート２３３へ各々入力される。データ判定処理部２３１は、結合データが圧縮された画像データ１か、画像データ２かを判定し、画像データ１の場合は、ゲート２３２からデータを出力する。なお、その場合ゲート２３３からのデータの出力は停止する。データ判定処理部２３１の判定結果が画像データ２の場合は、ゲート２３３から画像データ２を出力するように制御する（ゲート２３２からの出力は停止する。）
【０１１４】
図３３は、合成処理部２１５のブロック図である。伸長処理後の画像データ１はバッファ２４０へ、画像データ２はバッファ２４１へ各々入力され一旦記憶される。各々の画像データは、各々のバッファから同期させて１画素づつ読み出される。画像データ２は、データ変換処理部２４２とデータ判定処理部２４３へ入力される。データ変換処理部２４２では、画像データ２が“１”の場合に予め設定された８ビットのデータ（例えば２５５＝黒）へ変換する。データ判定処理部２４３では、画像データ２が“１”の場合にセレクタ２４４の出力がデータ変換処理部２４２の出力（データ変換後の画像データ２）を選択するように制御し、画像データ２が“０”の場合は、画像データ１を選択するように制御する。これによりセレクタ２４４の出力データは、画像データ２が存在する画素は、画像データ１を画像データ２で上書きするように合成した画像が出力される。なお、同様の方法によってデータ変換処理部の出力データを０とすれば、画像データ１から画像データ２を白抜けさせた画像が得られる。
【０１１５】
以上説明したように、本実施例によれば、以下に示す効果を奏する。
・画像データ２（スタンプ画像）の保存をフォントのデータかまたは２値の画像データにより実施しているため、スタンプ画像の保存容量を小さく出来る。
・スタンプ画像には画質劣化を伴わないためスタンプ画像を高画質に再現することが可能となる。
・合成処理を行っても出力画像上で違和感を感じる事がない。
・合成処理のために複数の画像をバスを使用して転送しても効率の良い転送が可能となる。
【０１１６】
なお、本実施例においては、複写機の例を示したが、例えば画像データ１の圧縮データが外部装置から外部転送路３０６を介して入力されるような画像データについても適応可能である。また、プリンタユニット３０２に画像データを出力せずにＨＤＤ２０３内に結合データを保存するようなフローも容易に実現可能である。また、パーソナルコンピュータ等を使用してソフトウェアのみで実現する事も可能である。
【０１１７】
また、本実施例での圧縮処理は、ＪＰＥＧを例としたが、ＪＰＥＧ２０００や他のいかなる圧縮処理に対しても適応可能で、ブロックサイズにおいても任意のサイズを使用する事が可能である。
【０１１８】
また、本実施例では説明の簡略化のために１コンポーネント（モノクロ）の画像データを対象に説明しているが、カラーの３または４コンポーネントの画像データに対して使用しても適用可能である。
【０１１９】
また、同一ブロック部に複数のスタンプ画像を合成する必要がある場合には、結合データへ２種類のスタンプ画像を結合するように構成しても良いし、ＣＰＵ２０１がメモリ２０２上へスタンプ画像をビットマップデータへ展開する際にメモリ２０２上で合成するようにしても良い。特開平１１−３３１６１１号公報の方法では複数のスタンプ画像を合成していくと最終的にブロック全てが真っ黒になる（ＤＣ成分も加算されていくため）可能性があるが、本発明による画像処理装置においては、簡易な方法で同一ブロック内への複数スタンプ画像の合成処理も可能となる。
【０１２０】
＜変形例１＞
実施例８では、画像データ２（スタンプ画像）の解像度を画像データ１と同一の解像度の場合（画像データ１が８×８の画素ブロック毎に画像データ２が８×８の画素ブロック）を仮定しているが、画像データ１の解像度と画像データ２の解像度が異なっていても良い。例えば、結合データの容量を削減するために画像データ２の解像度を半分とし（画像データ１が８×８の画素ブロック毎に画像データ２が４×４の画素ブロック）て実施する場合には、合成処理部２１５を図３５のようにバッファ２４１の出力データを解像度変換処理部２４５にて画像データ１と同一の解像度に変換した後実施例８と同様の合成処理を行うように構成すれば良い。なお、上記の解像度変換処理は、データ変換処理部２４２の後段にて多値データで実施しても良い。
【０１２１】
＜変形例２＞
実施例８では、画像データ２（スタンプ画像）のフォーマットを２値データのビットマップとし、データ変換処理部２４２にて予め定められた多値データに変換する例を示したが、図３６に示すように６４ビット（８×８画素／１ビット）のビットマップデータの前または後に画像データ値を付加するような形態として、データ変換処理部２４２にてそのデータに変換するように構成しても良い。このような構成とすれば、結合データの容量が弱冠増加することになるが、ブロック単位に画像データ２（スタンプ画像）の濃度値を変更することが可能となり、スタンプ画像の自由度が向上する。なお、画像データ値は必ずしも８ビット必要ではないので必要に応じて少ないビット数で表現すれば良い。また、画像データ値を複数備え、ビットマップの画素毎のビット数を増やせばブロック内で複数の濃度値を表現することが可能となる（ビットマップの画素毎のビット数を２ビットとすれば４値の表現が可能）。これをカラー画像に適用すればブロック内で複数色を表現する事が可能となる。
【０１２２】
［実施例９］
本実施例においては、結合データを作成する前に画像データ１の圧縮率を上げて（圧縮された画像データの容量を小さくする）結合データの容量が増加する事を抑制する例を示す。
本実施例における画像処理装置の全体構成を示すブロック図および動作の概要は実施例８の場合と同様であるので説明は割愛し、実施例８との差異のみ説明する。
【０１２３】
本実施例においては、圧縮処理２１２における圧縮方法の１例として固定長の圧縮処理（ＪＰＥＧは可変長）を行う例を示す。
図３７は、圧縮処理２１２のブロック図である。入力された画像データは、ブロック化処理部２５１で所定数の画素単位にブロック化される。本実施例においては水平方向８画素、垂直方向８画素の８×８画素のブロックとなる。ブロック内の６４個の画素は、ＤＣＴ処理部２５２によって既知の離散コサイン変換（以下ＤＣＴ）処理が行われ６４個のＤＣＴ係数が出力される。ＤＣＴ変換式は、上述した式１にて示すものである。
【０１２４】
なお、入力データが正の数値しか持たないデータ（一般の画像データはこの形態である。）にＤＣＴ処理を実施する場合、ＪＰＥＧでは入力データの中央値付近のデータを入力データから減算して期待値を“０”または略０としてからＤＣＴ処理を実施する。以下本発明においてもこのような処理が行われているものとして説明を行う。
【０１２５】
ＤＣＴ係数（Ｆ（ｕ，ｖ））は、量子化テーブル２５４の各々のＤＣＴ係数毎に定められた量子化ステップ値（ｑ（ｕ，ｖ））に応じて量子化処理部２５３によりスカラー量子化が行われ、６４個の量子化係数（Ｑ（ｕ，ｖ）））を出力する。
本実施例の場合は量子化テーブル２５４の値を除算することによって行われる。なお、量子化処理を実行する場合、四捨五入をして量子化誤差を低減した方が望ましい。なお、量子化テーブル５４の値を２のべき乗で構成して、シフト演算によって量子化を実現しても良い。四捨五入を行った場合の量子化処理は、上述した式２となる。なお、このような量子化方法は、ＪＰＥＧにて採用されている方式と同じである。
【０１２６】
図３８（ａ）に本実施例にて使用する量子化テーブルの１例を示す。図中左上がｕ＝ｖ＝０の座標となり、一般的にＤＣ係数と言われるＤＣＴ係数への量子化ステップとなる。水平方向がｕ座標、垂直方向がｖ座標に対応している。量子化テーブルは図３８（ａ）に限定されるものでなく、さまざまな形態が考えられる。他の例としてＪＰＥＧ推奨テーブルを図３８（ｂ）に示す。量子化ステップは、入力の画像データの性質に応じて実験的に求めていくのが望ましい。
【０１２７】
量子化後の量子化係数は、ビットテーブル２５６の各々の量子化係数（Ｑ（ｕ，ｖ））毎に定められたビット数（ｌｉｍ＿ｂｉｔ（ｕ，ｖ））で表される制限値に応じてリミッタ処理部２５５によって上下限両方向のリミッタ（クリッピング）処理が行われ出力データとして出力される。この場合の処理は、上述した式５となる。また、図３９（ａ）にビットテーブル２５６の１例を示す。
【０１２８】
実際には、ｕｌｉｍ（ｕ，ｖ）を算出するための２のべき乗の計算はハードウェアで実施するにはハード量が大きく、ソフトウェアで実現する場合においても速度的に不利なので、計算を行わずにマルチプレクサやＬＵＴを使用して実現した方がハード量や速度的な面で有利となる。リミッタ処理後の量子化データは、係数結合処理部２５７によって、不要なビットを削除しながら結合されて連続した符号データとして出力される。以上で固定長の圧縮処理が完了したことになる。図４０に１ブロック当たりのコードストリームを示す。先頭１ビットに合成のＯＮ／ＯＦＦを識別するための合成フラグに１ビット使用し、２５５ビット（図３９に示すビットテーブルのビット数の合計）が実際の符号部分となる。合計で２５６ビットとなりこの状態での圧縮率は２となっている。
【０１２９】
図４１は、結合処理部２０６のブロック図である。基本的な動作は、実施例８の場合と同様であるが、バッファ２２０から出力された画像データ１の圧縮データに圧縮率変更処理部２２３によって圧縮率を変更した後で、結合処理が行われる。
【０１３０】
図４２は、圧縮率変更処理部２０６のブロック図である。入力された画像データ１の圧縮データは、係数分解処理部２６０に入力され、ビットテーブル２５６と内容が同一であるビットテーブル２６１にしたがって係数（ＤＣＴを量子化し、リミット処理をしたもの）に分解する。分解された各係数は、ビット廃棄テーブルで示される各係数毎の廃棄するビット数（ｂｉｔ＿ｔｒ（ｕ，ｖ））に従って、下位のビットから廃棄される。下位ビットからの破棄手段としては、廃棄ビット数で右方向へシフト演算を実施すれば良いこれらの処理を式８に示す。
Ｑ‘（ｕ，ｖ）＝Ｆ（ｕ，ｖ）＞＞ｂｉｔ＿ｔｒ（ｕ，ｖ）　　・・・（式８）
但し、＞＞は右方向へのビットのシフト演算を示す。
【０１３１】
ビット廃棄後の係数データは、合成フラグ変更処理部に入力され合成フラグビットがＯｎ（１）に書き換えられた後、係数結合処理部２６４にて結合されて連続した符号データとして出力される。
【０１３２】
図３９（ｂ）にビット廃棄テーブルの一例を示す。同図における廃棄ビット数の合計は、６４ビットとなっており画像データ２のブロックあたりのビット数と同一値としている。この場合の画像データ１のみに着目した圧縮率は８／３となり圧縮率が上がっていることが分かる。
【０１３３】
また、図４３は圧縮された画像データ１と画像データ２、圧縮率変更後の画像データ１、結合データを模式的に示したものである。入力された画像データ１のブロックあたりの符号長と結合データのブロックあたりの符号長が同じとなっているのが分かる。
【０１３４】
図４４は、伸長処理部２１４のブロック図である。分離処理部２１３によって分離された画像データ１の圧縮データが入力され、ビットテーブル２７３（ビットテーブル２５６と同一内容）により示される各係数毎のビット数か、ビットテーブル２７３の各々の係数のビット数からビット廃棄テーブルの対応するビット数を演算処理部２７４にて減算した結果によって得た各係数毎のビット数のどちらを使用するかを、合成フラグビットの内容によってセレクタ２７５によって選択（合成フラグがＯＮの場合は、演算処理部２７４の出力データが、ＯＦＦの場合はビットテーブル２７３の出力データが選択される。）し、係数分解処理部２７１にて、係数に分解される。分解された６４個の係数は逆量子化処理部２７６によって、量子化処理時と同じ内容に設定されている量子化テーブル２７７を使用し、各々の係数に対応する量子化ステップを乗算して逆量子化を実行する。逆量子化処理されＤＣＴ係数となった係数は逆ＤＣＴ処理部２７８にて逆ＤＣＴ変換が行われ８×８ブロックの画像データが出力される。８×８の画像データはブロック展開処理部２７９によってラスタデータへ変換されて伸長処理部２１４から出力される。この後、実施例８と同様に合成処理部２１５にて合成処理が行われ画像データ１と画像データ２の合成処理が完了する。
【０１３５】
以上説明したように、本実施例によれば、実施例８に示す効果に加えて、
（１）圧縮された画像データ１と画像データ２を結合処理する前に画像データ１の圧縮率を変更し圧縮率を上げているので、結合処理後のデータ容量を小さくする事が可能となる。
（２）圧縮された画像データ１のブロックあたりの容量と、結合データのブロックあたりの容量を同一とする事が可能であり、例えば１つの画像データ内で合成処理を行うブロックと合成処理を行わないブロックが存在する場合においても、ブロックあたり固定長圧縮を維持出来る。
【０１３６】
これは、画像の回転や切り出し等の編集処理を圧縮データ上で行う場合は非常に有利な方法となる。一般的に画像の回転処理を行う場合は、フレームメモリに１画面分の画像データを保存し書き込み順と読み出し順を変える事で行われる。ブロック単位に圧縮された圧縮データ上で回転を行うためには、ブロック単位で書き込みと読み出しが行われることになる。ブロックあたり固定長の圧縮方式においては、メモリ上のアドレスの管理が簡単であり圧縮データ上での編集処理が容易に実現可能となる。
【０１３７】
また、日付、日時、“Ｃｏｎｆｉｄｅｎｃｉａｌ”等のスタンプ画像は、１画面全面にある場合は少なく、部分画像の場合がほとんどであるので、１画面内に合成処理が行われる部分と行われない部分が混在することが考えられる。本実施例のような構成であれば合成部（結合データ）と非合成部（非結合データ）の符号長を同一とする事が可能なので、固定長圧縮での編集性を損なうことなく合成処理が可能となる。
【０１３８】
なお、ＪＰＥＧやＪＰＥＧ２０００などの可変長圧縮処理においても本実施例のような構成は、可能であり結合処理後のデータ量を小さくする事に関しては問題はない。ＪＰＥＧで圧縮率を変更する方法は、
・一度ハフマン符号を復号し、逆量子化後、量子化ステップを大きくして再度量子化する方法
・ハフマン符号の状態で、ＡＣ成分の符号の最後部から符号データを所望のデータ量（圧縮率）となるまで破棄してＥＯＢ符号を付け加える。
等がある。ＪＰＥＧ２０００では、符号状態でビットプレーンの破棄によるレートコントロール機能を有するので、容易に圧縮率を変更する事が可能である。
【０１３９】
［実施例１０］
実施例８，９に示した例では、第２の画像データが写真画像等の多値の場合にも、適用可能ではあるが、多値画像同士を結合データとする場合は、第２の画像データがスタンプ画像の場合と比較して結合データの容量が大きくなる事が懸念される。本実施例においては、入力データに多値画像を合成処理する場合と、前述したような２値で表現可能な文字、記号、パターン等のスタンプ画像とで合成処理方法を変更し、第２の画像データが多値画像データである場合であっても結合データの容量を増大させない例を示す。
【０１４０】
図４３は、本実施例における画像処理装置の全体構成を示すブロック図である。実施例８の構成に加えて、コントローラユニット３０１内に合成処理部２０８が備えられている。
本実施例での画像処理装置は、操作部２０４によって図示しないメニュー画面上で、入力画像に対して以前スキャナから取り込んだ多値画像データとの合成処理を行うか、日付、日時、“Ｃｏｎｆｉｄｅｎｃｉａｌ”等のスタンプ画像との合成処理を行うかをユーザによって選択可能となっている。また、同時に多値画像とスタンプ画像の合成処理も可能となっている。本実施例でのスタンプ画像との合成処理は、実施例１の場合と同様として説明は省略する。
【０１４１】
図４６は、本実施例における多値画像との合成処理時の画像データの流れを示したブロック図である。以下同図をもとに本実施例における画像合成処理の動作を説明する。なお、同図においてはバスへのＩ／Ｆ処理部３０５は実施例８同様省略してある。
【０１４２】
まず、ＣＰＵ２０１は、予めＨＤＤ２０３内に保存されているＪＰＥＧ圧縮済みの多値画像である画像データ２をメモリ２０２上へ一時的に保存する。次にスキャナユニット３００において、実施例８同様ＪＰＥＧ圧縮された画像データ１が、バス３０４を介してコントローラユニット３０１へ転送される。コントローラユニット３０１は、受け取った画像データ１の圧縮データを合成処理部２０８へ入力する。これと同期して、メモリ２０２上に保存されていた画像データ２の圧縮データも、合成処理部２０８へ入力される。合成処理部２０８では、この２つのデータ各々をハフマン復号化、逆量子化を実施してＤＣＴ係数としてＤＣＴ係数同士を加算し合成する。なお、このようなＤＣＴ係数上での合成方法は公知であるので詳細な説明は省略する。
【０１４３】
その後合成されたＤＣＴ係数を再び量子化し、ハフマン符号化して合成後のＪＰＥＧ圧縮データとして一旦メモリ２０２上で保存した後、バス３０４を介してプリンタユニット３０２へ転送される。プリンタユニット３０２では実施例８と同様の処理が行われ、最終的にプリンタ部２１７によって記録紙上に、画像データ１と画像データ２が多値で合成処理された合成画像が出力される。この際、分離処理部２１３内のデータ判定処理部２３１の判定、および合成処理部２１５内のデータ判定処理部２４３の判定は、実施例８における画像データ１の出力状態に固定される。
【０１４４】
なお、多値データとの合成処理とスタンプ画像との合成処理を同時に実施する場合は、予め多値のＪＰＥＧ圧縮データと２値のスタンプ画像データをメモリ２０２上に保存しておき、入力データ（画像データ１）と多値データとの合成データがメモリ２０２上に保存された後、メモリ２０２からこの合成データとスタンプ画像データを読み出して結合処理部２０６へ入力して、以下実施例８の場合と同様な処理を行えば良い。
【０１４５】
以上説明したように本実施例によれば、多少の画質劣化が許容できる多値データは周波数変換係数（本実施例ではＤＣＴ）上で合成し、画質劣化の許容度の小さいスタンプ画像データは、非圧縮の画像データで合成処理を行う事ができ、第２の画像データが多値画像の場合であっても結合データの容量を増大させずに画像種に適した合成処理が可能となる。
【０１４６】
［実施例１１］
本実施例においては、スタンプ画像に対しても圧縮処理を実施した例を示す。図４７は、本実施例における画像処理装置の全体構成を示すブロック図である。実施例８の構成に加えて、コントローラユニット３０１内に圧縮処理部２０９が備えられている。
【０１４７】
図４８は、本実施例における合成処理時の画像データの流れを示したブロック図である。以下同図をもとに本実施例における画像合成処理の動作を説明する。なお、同図においてはバス３０４へのＩ／Ｆ処理部３０５は実施例１同様省略してある。
【０１４８】
実施例８同様、ユーザにより合成処理とスタートの指示がされた後、ＣＰＵ２０１は、予めＨＤＤ２０３内に保存されている２値のスタンプ画像である画像データ２をメモリ２０２上へ展開する。メモリ２０２上に展開された画像データ２は、圧縮処理部２０９によって８×８のブロック単位に既知の圧縮処理がなされる。ここでの圧縮処理は、２値データの圧縮処理でありランレングスエンコーディング、ＪＢＩＧ、ＭＲ，ＭＭＲ、算術符号化法などさまざまな手法が考えられ、どのような方法を使用しても良い。圧縮された画像データ２は、再びメモリ２０２上に書き戻される。
【０１４９】
次に、実施例８同様スキャナユニット３００において、原稿が読取られ、ＪＰＥＧ圧縮された画像データ１がバス３０４を介してコントローラユニット３０１へ転送される。コントローラユニット３０１は、受け取った画像データ１の圧縮データと画像データ２の圧縮データを結合処理部２０６へ入力し、実施例８同様結合データを出力する。結合データは、一旦メモリ２０２上で保存された後、バス３０４を介してプリンタユニット３０２へ転送される。
【０１５０】
プリンタユニット３０２へ転送された結合データは、実施例８同様分離処理部２１３によって画像データ１の圧縮データと画像データ２の圧縮データに分離された後、画像データ１の圧縮データは、伸長処理部２１４によって、画像データ２の圧縮データは、伸長処理部２１８によって、各々の圧縮処理に適合した伸長処理が行われた後、実施例８同様の合成処理が合成処理部２１５によって実施され合成データが出力される。この合成後の画像データは、実施例８同様プリンタ部２１７によって記録紙上に、画像データ１と画像データ２が合成処理された合成画像が出力される。
【０１５１】
以上説明したように本実施例によれば、スタンプ画像も圧縮処理を実施した後、結合データを作成しているので、実施例８の場合よりも結合データの容量を削減する事が可能となる。
【０１５２】
なお、本実施例においては、スタンプ画像が２値の場合の例を示したが、スタンプ画像が多値画像の場合についても応用が可能である。その場合、圧縮処理部９での圧縮処理方法は、ＪＰＥＧやＪＰＥＧ２０００、または実施例９で開示した方法等の多値用の圧縮処理を使用すればよい。また、本実施例では、圧縮処理部２０９によって、スタンプ画像を動的に圧縮処理しながら結合、合成処理をする例を示したが、予め圧縮データをＨＤＤ２０３に保存しておきメモリ２０２上に展開しても良い。
【０１５３】
【発明の効果】
以上の説明より明らかなように請求項１、２、１５、１７記載の発明は、画素ブロック単位に周波数変換を行い、周波数変換係数を量子化する量子化手段を備えた画像処理装置において、周波数変換係数または量子化係数を制限処理する制限処理手段を備えているので、冗長度の大きい値の大きな係数値を制限することによって画質劣化を抑制し圧縮効率を向上することが可能となる。
【０１５４】
また、請求項３、４、５に記載された発明は、上述した効果に加えて、入力画像の特徴に応じて、電力の集中した高い値を有する周波数変換係数に対しての制限値を高くすることによって、入力画像に適した周波数変換係数または量子化係数への制限処理を行うことが可能となり、さらなる画質劣化の抑制と圧縮効率の向上を実現可能としている。
【０１５５】
また、請求項６記載の発明は、上述した効果に加えて、周波数変換係数上で画像の特徴を判定しているので、計算量（回路規模）が少なく、高精細な特徴判定を可能としている。
【０１５６】
また、請求項７、８、９、１０記載の発明は、請求項項１、２、１５、１７記載の発明の効果に加えて、ブロック単位に周波数変換された画像データを固定長に圧縮することにより、編集性が向上する。加えて簡易な方法にてブロック単位の回転処理が可能となるとともにメモリのオーバーフローも防止できる。また、圧縮係数上にてブロック内画素の回転処理をも可能となるので、回転処理を１ヶ所に集中することが可能となり、処理が複雑することを回避可能となる。また、圧縮係数上での合成処理も簡易な方法により可能となる。
【０１５７】
また、請求項１１、１２、１３、１４、１６、１８記載の発明は、請求項７、８、９、１０記載の発明による効果に加えて、簡単な方法でかつ画質劣化を伴わない方法によって固定長圧縮データと可変長符号化を双方向で変換可能としているので、編集性を損なわずに高い圧縮率への符号データへ変換することが可能となる。加えて、可変長符号データを汎用圧縮フォーマット形式としているので、外部機器等との親和性をも両立可能である。
【０１５８】
また、請求項１９、２７、２８記載の発明は、圧縮処理を行った第１の画像データと第２の画像データを合成処理する画像処理装置、方法、プログラムにおいて、実際の合成処理を実画像上の上書き処理とする事が可能となり第２の画像データには画質劣化や違和感を伴わずに高画質に画像を再現することが可能となる。
【０１５９】
また、請求項２０記載の発明は、ブロック単位に圧縮処理された第１の画像データとブロック単位の第２の画像データを結合処理してデータを扱っているので、合成処理のために複数の画像をバスを使用して転送しても効率の良い転送が可能となるとともに簡単な構成、動作で実現可能となる。
【０１６０】
また、請求項２１記載の発明は、圧縮処理を行った第１の画像データと文字、線画、網点パターン等のスタンプ画像を合成処理する画像処理装置において、合成処理する場合のスタンプ画像の保存をフォントのデータかまたは２値の画像データにより実現可能であるため、スタンプ画像の保存容量を小さくすることが可能となる。
【０１６１】
請求項２２記載の発明は、圧縮処理を行った第１の画像データと第２の画像データを合成処理する画像処理装置において、結合処理をする場合、第１の画像データの圧縮率を上げているので、本発明による画像処理装置おける結合後の画像データの容量を削減することが可能となる。
【０１６２】
請求項２３、２４記載の発明は、画像処理装置おける結合後の画像データに対して、結合処理を行うブロックと行わないブロックの符号長を同一としているので、結合処理後の結合データにおいても回転、部分画像の切り出し等の編集処理が簡易な方法で実現可能となる。
【０１６３】
請求項２５記載の発明は、圧縮処理を行った第１の画像データと第２の画像データを合成処理する画像処理装置において、第２の画像データをも圧縮処理を行っているので、本発明による画像処理装置おける結合後の画像データの容量をさらに削減することが可能となる。
【０１６４】
請求項２６記載の発明は、圧縮処理を行った第１の画像データと第２の画像データを合成処理する画像処理装置において、写真画像などの多値画像では合成処理後に再び第１の画像データと同様の圧縮データに戻し、スタンプ画像に対する合成処理では本発明における合成処理方法を実施しているので、多値画像との合成処理の場合においても、結合データの容量を増大させずに画像種に適した合成処理が可能となる。
【図面の簡単な説明】
【図１】本発明の第１の実施例の要部ブロック図である。
【図２】量子化テーブルの一例を示す図である。
【図３】リミットテーブルの一例を示す図である。
【図４】６００ｄｐｉスキャナから読み取った複数の画像に対して、ＤＣＴ処理を行い、各ＤＣＴ係数の絶対の最大置を検出したものである。
【図５】周波数領域を示す図である。
【図６】ＡＣ係数を３つの帯域に対応する領域に分割し各々の領域にてリミッタ処理を実施した場合と、全てのＡＣ係数に同様にリミッタ処理を実施した時の制限率とＰＳＮＲ　ＰＳＮＲの関係を示した図である。
【図７】ＡＣ係数への量子化ステップに対するＰＳＮＲ値の関係を示す図である。
【図８】画像処理部の要部ブロック図である。
【図９】リミットテーブルの一例を示す図である。
【図１０】画像処理装置の要部ブロック図である。
【図１１】特徴判定処理部の構成を表すブロック図である。
【図１２】リミットテーブルの一例を示す図である。
【図１３】エッジ量算出フィルタの一例を示す図である。
【図１４】縦、横、斜めエッジ画像が入力された場合の、ＤＣＴの電力が集中する主な係数を塗りつぶして示した図である。
【図１５】画像処理部の要部ブロック図である。
【図１６】フィルタ演算の係数を示す図である。
【図１７】特徴判定処理部のブロック図である。
【図１８】画像回転処理時の画像データの流れを示すブロック図である。
【図１９】圧縮処理部の詳細ブロック図である。
【図２０】回転処理部の詳細ブロック図である。
【図２１】回転角に応じた処理を示した図である。
【図２２】伸長処理部の詳細ブロック図である。
【図２３】画像合成処理時の画像データの流れを示すブロック図である。
【図２４】合成処理部の詳細ブロック図である。
【図２５】画像データの流れを示すブロック図である。
【図２６】画像処理装置の全体構成を示すブロック図である。
【図２７】符号化処理部の詳細ブロック図である。
【図２８】符号化処理部の詳細ブロック図である。
【図２９】画像処理装置の全体構成を示すブロック図である。
【図３０】画像データの流れを示すブロック図である。
【図３１】結合処理部のブロック図である。
【図３２】分離処理部のブロック図である。
【図３３】合成処理部のブロック図である。
【図３４】圧縮された画像データ１と画像データ２、結合データを模式的に示した図である。
【図３５】合成処理部の他の実施例を示す図である。
【図３６】６４ビットのビットマップデータの前または後に画像データ値を付加する実施例を示す図である。
【図３７】圧縮処理のブロック図である。
【図３８】量子化テーブルの一例を示す図である。
【図３９】ビットテーブル２５６の一例を示す図である。
【図４０】１ブロック当たりのコードストリームを示す図である。
【図４１】結合処理部の構成を示すブロック図である。
【図４２】圧縮率変更処理部の構成を示すブロック図である。
【図４３】伸長処理部の構成を示すブロック図である。
【図４４】圧縮された画像データ１と画像データ２、圧縮率変更後の画像データ１、結合データを模式的に示した図である。
【図４５】多値画像との合成処理時の画像データの流れを示すブロック図である。
【図４６】画像処理装置の全体構成を示すブロック図である。
【図４７】合成処理時の画像データの流れを示すブロック図である。
【図４８】合成処理時の画像データの流れを示す図である。
【符号の説明】
１　ブロック化処理部
２　ＤＣＴ処理部
３　量子化処理部
４　量子化テーブル
５　リミッタ処理部
６　リミットテーブル
４０　スキャナ
４１　画像処理１
４２　圧縮
４３、２０２　メモリ
４４　回転
４５　伸長
４６　画像処理２
４７　プリンタ
４９　ビットテーブル
５０　係数結合
５１　係数分解
５３　逆量子化
５４　逆ＤＣＴ
５５　ブロック展開部
６２　符号反転１
６３　符号反転２
６４　符号反転３
６５　行列入替え
６６　セレクタ
７０　セレクタ
７１　加算演算
７２　減算演算
７３　セレクタ
８０　符号化
８１、２０３　ＨＤＤ
８２　外部Ｉ／Ｆ
８３　復号化
８４　ＤＰＣＭ
８５　ジグザグスキャン
８６　ゼロ圧縮
８７　逆ＤＰＣＭ
８８　ゼロ伸長
８９　ハフマン復号化
９０、２０１　ＣＰＵ
９１、２０５　転送路Ｉ／Ｆ
９２、２０４　操作部
１００　スキャナユニット
１０１　コントローラユニット
１０２　プリンタユニット
２６０　係数分解
２６１　ビットテーブル
２６２　ビット廃棄
２６３　ビット廃棄テーブル
２６４　合成フラグ変更
２６５　係数結合
２７１　係数分解
２７２　ビット廃棄テーブル
２７３　ビットテーブル
２７５　セクレク
２７４　演算
２７６　逆量子化
２７７　量子化テーブル
２７８　逆ＤＣＴ
２７９　ブロック展開部
【図１】
2004112345.tif 000005
【図２】
2004112345.tif 000006
【図３】
2004112345.tif 000007
【図４】
2004112345.tif 000008
【図５】
2004112345.tif 000009
【図６】
2004112345.tif 000010
【図７】
2004112345.tif 000011
【図８】
2004112345.tif 000012
【図９】
2004112345.tif 000013
【図１０】
2004112345.tif 000014
【図１１】
2004112345.tif 000015
【図１２】
2004112345.tif 000016
【図１３】
2004112345.tif 000017
【図１４】
2004112345.tif 000018
【図１５】
2004112345.tif 000019
【図１６】
2004112345.tif 000020
【図１７】
2004112345.tif 000021
【図１８】
2004112345.tif 000022
【図１９】
2004112345.tif 000023
【図２０】
2004112345.tif 000024
【図２１】
2004112345.tif 000025
【図２２】
2004112345.tif 000026
【図２３】
2004112345.tif 000027
【図２４】
2004112345.tif 000028
【図２５】
2004112345.tif 000029
【図２６】
2004112345.tif 000030
【図２７】
2004112345.tif 000031
【図２８】
2004112345.tif 000032
【図２９】
2004112345.tif 000033
【図３０】
2004112345.tif 000034
【図３１】
2004112345.tif 000035
【図３２】
2004112345.tif 000036
【図３３】
2004112345.tif 000037
【図３４】
2004112345.tif 000038
【図３５】
2004112345.tif 000039
【図３６】
2004112345.tif 000040
【図３７】
2004112345.tif 000041
【図３８】
2004112345.tif 000042
【図３９】
2004112345.tif 000043
【図４０】
2004112345.tif 000044
【図４１】
2004112345.tif 000045
【図４２】
2004112345.tif 000046
【図４３】
2004112345.tif 000047
【図４４】
2004112345.tif 000048
【図４５】
2004112345.tif 000049
【図４６】
2004112345.tif 000050
【図４７】
2004112345.tif 000051
【図４８】
2004112345.tif 000052