(57)【要約】【課題】カラー文書画像に対して、負荷や無駄が少ない方法で、様々な用途に最適な画像データを生成するためのデータの管理や手続きを行い、なおかつ拡張性に優れ、メンテナンスが容易な画像処理システムの提供を図ること。【解決手段】オブジェクト指向を用い、画像データおよび画像要素と、画像処理と、画像処理の履歴および状態をオブジェクトとして一括管理する。処理を行いたい画像データに対し、まず、正規化を行い原画像オブジェクトを生成する（ステップＳ２０３）。次に、正規化された画像データは、最適化オブジェクトを用い用途に合わせた最適な画像データ形式へと変換され最適画像データが生成される（ステップＳ２０７）。オブジェクトの生成と状態の設定・変更も、オブジェクト内の同一のメソッド（機能）で行う。【選択図】        図２
2006053690.tif 000002
【特許請求の範囲】
【請求項１】
画像処理のための画像特徴量、画像要素および機能を含んだ画像処理に適した状態の画像データにする正規化により生成された原画像オブジェクトと、ユーザの指定する形式の画像データの生成を行う最適化オブジェクトからなる画像処理オブジェクトを用いて、オブジェクト指向による画像処理を行う画像処理装置であって、
前記画像処理の対象となる画像データを取り込む取り込み手段と、
前記取り込み手段により取り込んだ前記画像データに、正規化処理を行い原画像オブジェクトを生成する正規化処理手段と、
前記正規化処理手段により正規化された前記画像データを基に、前記最適化オブジェクトにより最適画像データの生成を行う最適化処理手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
画像処理のための画像特徴量、画像要素および機能を含んだ画像処理に適した状態の画像データにする正規化により生成された原画像オブジェクトと、ユーザの指定する形式の画像データの生成を行う最適化オブジェクトからなる画像処理オブジェクトを用いて、オブジェクト指向による画像処理を行う画像処理方法であって、
前記画像処理の対象となる画像データを取り込む取り込み工程と、
前記取り込み工程により取り込んだ前記画像データに、正規化処理を行い原画像オブジェクトを生成する正規化処理工程と、
前記正規化処理工程により正規化された前記画像データを基に、前記最適化オブジェクトにより最適画像データの生成を行う最適化処理工程と、
を含むことを特徴とする画像処理方法。
【請求項３】
前記最適化処理工程は、正規化された前記画像データの地肌部分を白にまとめる地肌除去処理工程と、
前記地肌除去処理工程に用いる地肌除去のための階調変換曲線を表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、
を含むことを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記最適化処理工程は、正規化された前記画像データの地肌部分を地肌の代表色にまとめる地肌クリーニング処理工程と、
前記地肌クリーニング処理工程に用いる地肌クリーニングのための階調変換曲線を表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、
を含むことを特徴とする請求項２に記載の画像処理方法。
【請求項５】
前記最適化処理工程は、正規化された前記画像データ中から抽出された文字を原解像度、あるいは、高解像度化された２値画像データとして抽出する抽出処理工程と、
前記抽出処理工程により抽出された前記２値画像データを表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、
を含むことを特徴とする請求項２に記載の画像処理方法。
【請求項６】
前記最適化処理工程は、正規化された前記画像データ中から抽出された文字の各々に対して、その色を推定する推定処理工程と、
前記推定処理工程により推定された文字色データを表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、
を含むことを特徴とする請求項２に記載の画像処理方法。
【請求項７】
前記最適化オブジェクト生成工程は、前記文字色データを少数のクラスタに分類し、正規化された前記画像データ中の各文字をいずれかの色クラスタに割り当てを行う割り当て処理工程と、
クラスタを特徴づけるデータと各文字のクラスタ割り当てデータを表すオブジェクトを前記最適化オブジェクトを構成するオブジェクトの一つとして生成するオブジェクト生成工程と、
を含むことを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記正規化処理工程により生成した原画像オブジェクトおよび前記最適化オブジェクト生成工程により生成した最適化オブジェクトは、前記画像特徴量や前記画像要素などからなる基本データを持ち、
前記正規化処理工程および前記最適化オブジェクト生成工程は、それぞれ、
前記基本データに施すための画像処理を規定する画像特徴量および画像要素を計算するための計算工程と、
前記計算工程による計算結果を格納保管するためのオブジェクトを生成するためのオブジェクト生成工程と、
前記オブジェクト生成工程により生成された前記オブジェクトへのポインタを有し、前記オブジェクト内の基本データに対する処理の設定、更新、現在の処理状態、履歴をそれぞれ管理するオブジェクト管理工程と、
前記処理状態および履歴のデータを有し、前記オブジェクトの現在の処理状態に応じて、画像データを生成する画像生成工程と、
を含むことを特徴とする請求項２に記載の画像処理方法。
【請求項９】
前記画像生成工程は、全体あるいは指定された部分のラスター画像データを生成するラスター画像生成工程を含むことを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
前記画像生成工程は、全体あるいは指定された部分の文字を２値画像データあるいはカラー画像データとして生成する文字画像生成工程を含むことを特徴とする請求項８に記載の画像処理方法。
【請求項１１】
前記画像生成工程は、全体あるいは指定された部分について、指定された色クラスタに属する色を持つ文字を集めた画像データを生成する色文字画像生成工程を含むことを特徴とする請求項８に記載の画像処理方法。
【請求項１２】
請求項２〜１１のいずれか一つに記載された画像処理方法をコンピュータに実行させることを特徴とする画像処理プログラム。
【請求項１３】
請求項１２に記載された画像処理プログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、印刷文書をスキャナ等の画像機器から入力して得られるデジタル画像の認識、プリンタやディスプレイなどに出力・表示する際の画質を改善するために施す文書画像処理および認識のための方法、画像処理方法を実施するための文書画像処理、認識のための装置および前記方法を実行させるためのプログラム、装置および前記プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
カラースキャナやデジタルカメラの普及により、印刷文書をカラー入力して、その入力情報の蓄積・出力・再利用がなされている。さらに、入力された画像データのネットワークを介しての遠隔地への送信も行われている。このようなデジタルカラー文書画像データを、そのまま画像処理を何も施さずに表示・印刷したり、表示画像の文字を光学的に読み取り特定を行うＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）などの処理を施した場合、次のような現象がしばしば観測される。
【０００３】
・文字と背景の間のコントラストが低い。
・本来、白であるべき背景に色がついている。
・裏写りやノイズにより、背景が汚れている。
・画素が相互に干渉することにより、周期的な縞状のパターンが生じるモアレ現象が起こる。
・解像度が不十分なために、小さい文字の視認性が低く、ＯＣＲをかけても認識精度が低い。
【０００４】
このような問題の解決のためには、カラー文書画像データに適した画像強調を施す必要がある。従来、解決策として開示されているテキスト画像強調方法は、コントラスト強調などの階調変換、フィルタリング、モデルベースの画像復元、高解像度化の４種に分類することができる。
【０００５】
階調変換により、画像データのコントラストの強調とともに、地肌除去も行うことができる（例えば、下記特許文献１および非特許文献１，２参照。）。フィルタリングとしては、２値画像データまたは濃淡画像データからの特徴抽出を目的とするモルフォロジーを用いたノイズ除去方法（例えば、下記非特許文献３，４参照。）、２次フィルタを用い細部をぼかさずにノイズを除去する方法（例えば、下記非特許文献５参照。）などが開示されている。
【０００６】
また、モアレ現象の原因は、画像データ中のドットパターンとして表現された中間色部分であるが、その中間色部分を、連続階調表現に変換すれば、モアレ現象が解消される（例えば、下記特許文献２参照。）。また、ＯＣＲの誤認識の原因をクラスタ分析によりモデル化して画像復元する方法（例えば、下記非特許文献６参照。）などのモデルベースの画像復元も有効である。
【０００７】
文字の視認性やＯＣＲの精度を向上させるためには、低解像度の文字画像データを高解像度化することが有効である。これには、テキスト画像上の文字ビットマップ（画像を色のついた点の羅列として表現したデータ）をクラスタリングして平均することにより、任意の解像度のアウトラインを生成する方法（例えば、下記特許文献３および非特許文献７参照。）、分布の双峰性、滑らかさ、輝度の３つの尺度から構成される評価関数に基づく逆問題として定式化し、最適な高解像度画像データを復元する方法（例えば、下記非特許文献８，９参照。）、補間による高解像度化と２値化に基づく方法（例えば、下記特許文献４〜７および非特許文献１０，１１参照。）などが開示されている。このように、カラー文書画像データに対して、様々な処理を施すことによって、表示、印刷、ＯＣＲなどの様々な用途に最適な画像データを生成することができる。
【０００８】
また、最近では、ＯＣＲに適した２値画像データや、印刷に適したラスター画像データの生成のほかにも、デジタル化された画像に対する新しい用途が出現してきている。画像データを、背景（低解像度に縮約する）と、文字などの前景（原解像度のまま、あるいは、高解像度化した）と、前景の色（文字色のパレットなど）とに分解して表現するＭｉｘｅｄ  Ｒａｓｔｅｒ  Ｃｏｎｔｅｎｔ  Ｍｏｄｅｌに基づく新しい画像データファイル表現方法、あるいは、スキャン画像データから得られる文字や写真などの構成要素を、ＨＴＭＬなどを用いて画面上のブラウジングに適した形に再配置・再構成する技術も開示されている（例えば、下記非特許文献１２参照。）。
【０００９】
【特許文献１】米国特許第５５２４０７０号明細書
【特許文献２】特開２００３−２８１５２６号公報
【特許文献３】米国特許第５９３０３９３号明細書
【特許文献４】特許第３３４５３５０号公報
【特許文献５】特開平８−３４０４４６号公報
【特許文献６】特開２００１−１１８０３２号公報
【特許文献７】米国特許第６３４７１５６号明細書
【非特許文献１】ワイ・シー・シン（Y.C.Shin）、外４名、「コントラスト  エンハンスメント  オブ  メール  ピース  イメージズ（Contrast enhancement of mail piece images）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９２年、第１６６１巻、ｐ．２７−３７
【非特許文献２】ワイ・シン（Y.Shin）、外２名、「エンハンスメント  オブ  メール  ピース  イメージズ  ベースド  オン  ウィンドウ  スタティスティックス（Enhancement of mail piece images based on window statistics）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９３年、第１９０６巻、ｐ．３７−４８
【非特許文献３】エル・コスキネン（L.Koskinen）、外２名、「テキスト  エンハンスメント  メソッド  ベースド  オン  ソフト  モフォロジカル  フィルターズ（Text enhancement method based on soft morphological filters）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９４年、第２１８１巻、ｐ．２４３−２５３
【非特許文献４】ジェイ・リャン（J.Liang）、外２名、「ドキュメント  イメージ  レストレ−ション  ユージング  バイナリー  モフォロジカル  フィルターズ（Document image restoration using binary morphological filters）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９６年、第２６６０巻、ｐ．２７４−２８５
【非特許文献５】ジー・ランポーニ（G.Ramponi）、外１名、「エンハンシィング  ドキュメント  イメージズ  ウィズ  ア  クアドレティック  フィルター（Enhancing document images with a quadratic filter）」、（米国）、シグナル  プロセシング（Signal Processing）、１９９３年、第３３巻、ｐ．２３−３４
【非特許文献６】エム・ワイ・ジャシマ（M.Y.Jaisimha）、外３名、「モデル−ベースド  レストレーション  オブ  ドキュメント  イメージズ  フォー  ＯＣＲ（Model-based restoration of document images for OCR）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９６年、第２６６０巻、ｐ．２９７−３０８
【非特許文献７】ジェイ・ディー・ホビィー（J.D.Hobby）、外１名、「エンハンシィング  ディグレーデッド  ドキュメント  イメージズ  ヴィア  ビットマップ  クラスタリング  アンド  アヴェレージング（Enhancing degraded document images via bitmap clustering and averaging）」、（独国）、プロシーディング  オブ  第４回インターナショナル  カンファレンス  オン  ドキュメント  アナリシス  アンド  リコギニション（Proceeding of  4th International Conference on Document Analysis and Recognition）、１９９７年８月
【非特許文献８】ピー・ディー・トウン（P.D.Thouin）、外１名、「ア  メソッド  フォー  レストレーション  オブ  ロウ−レゾリューション  ドキュメント  イメージズ（A method for restoration of low-resolution document images）」、（米国）、インターナショナル  ジャーナル  オン  ドキュメント  アナリシス  アンド  リコギニション（International Journal on Document Analysis and Recognition）２０００年、第２巻、ｐ．２００−２１０
【非特許文献９】ピー・ディー・トウン（P.D.Thouin）、外１名、「オートメッテド  システム  フォー  レストレーション  オブ  ロウ−レゾリューション  ドキュメント  アンド  テキスト  イメージズ（Automated system for restoration of low-resolution document and text images）」、（米国）、ジャーナル  オブ  エレクトロニック  イメージング（Journal of Electronic Imaging）、２００１年、第１０巻、第２号、ｐ．５３５−５４７
【非特許文献１０】エム・ジェイ・タイラー（M.J.Taylor）、外１名、「エンハンスメント  オブ  ドキュメント  イメージズ  フロム  カメラズ（Enhancement of document images from cameras）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９８年、第３３０５巻、ｐ．２３０−２４１
【非特許文献１１】エッチ・リー（H.Li）外２名、「テキスト  エンハンスメント  イン  デジタル  ビデオ（Text enhancement in digital video）」、（米国）、プロシーディングス  オブ  ＳＰＩＥ（Proceedings of SPIE）、１９９９年、第３６５１巻、ｐ．２−９
【非特許文献１２】ティー・ブリューエル（T.Breuel）、外３名、「ペーパー  トゥー  ＰＤＡ（Paper to PDA）」、（カナダ）、プロシーディング  オブ  第１６回インターナショナル  カンファレンス  オン  パターン  リコギニション（Proceeding of  16th International Conference on Pattern Recognition）、２００２年８月
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、カラー文書画像データに対して行う、ユーザの指定するデータ形式（用途）の種類が少ない場合には、従来の画像処理システムのように、入力画像データに対して、いくつかの処理をパイプライン的に適用して、処理結果の画像データを得れば十分であったが、用途が多様化してくると、次のような問題が生じる。
【００１１】
１．各用途のアプリケーションプログラムに負荷や無駄が生じる。
・同じ処理が各用途によって個別に呼び出されるために、処理に無駄が生じる。
・処理のＵｎｄｏ（取り消し）やＲｅｄｏ（やり直し）のために必要な中間データを各用途ごとに個別に管理する必要がある。
・処理の履歴や状態を各用途が個別に管理する必要がある。
【００１２】
２．拡張やシステムのメンテナンスが難しくなる。
・ある用途に最適な画像データの生成のための新しい処理、あるいは、新しい用途、ファイル形式や画像データ表現形式を導入したときに、各用途のアプリケーションプログラムごとに、個別対応が必要である。
・各用途に付随しているファイル形式や画像表現形式と、最適画像を生成するための処理を混同してしまう。そうすると、モジュール性の低いアプリケーションプログラムを、用途、ファイル形式や画像表現形式の数だけ開発することになる。
【００１３】
この発明は、上述した従来技術による問題点を解消するため、スキャナなどの画像機器により入力されたカラー文書画像データに対して、負荷や無駄が少ない方法で、様々な用途に最適な画像データを生成するためのデータの管理や手続きを行い、なおかつ拡張性に優れ、メンテナンスが容易な画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体の提供を目的とする。
【課題を解決するための手段】
【００１４】
上述した課題を解決し、目的を達成するため、請求項１の発明にかかる画像処理装置は、画像処理のための画像特徴量、画像要素および機能を含んだ画像処理に適した状態の画像データにする正規化により生成された原画像オブジェクトと、ユーザの指定する形式の画像データの生成を行う最適化オブジェクトからなる画像処理オブジェクトを用いて、オブジェクト指向による画像処理を行う画像処理装置であって、前記画像処理の対象となる画像データを取り込む取り込み手段と、前記取り込み手段により取り込んだ前記画像データに、正規化処理を行い原画像オブジェクトを生成する正規化処理手段と、前記正規化処理手段により正規化された前記画像データを基に、前記最適化オブジェクトにより最適画像データの生成を行う最適化処理手段と、を備えたことを特徴とする。
【００１５】
この請求項１の発明によれば、どの様な画像データ入力機器からの入力データであっても、ユーザの指定する多様な用途に対応した最適画像データを生成することができる。
【００１６】
また、請求項２の発明にかかる画像処理方法は、画像処理のための画像特徴量、画像要素および機能を含んだ画像処理に適した状態の画像データにする正規化により生成された原画像オブジェクトと、ユーザの指定する形式の画像データの生成を行う最適化オブジェクトからなる画像処理オブジェクトを用いて、オブジェクト指向による画像処理を行う画像処理方法であって、前記画像処理の対象となる画像データを取り込む取り込み工程と、前記取り込み工程により取り込んだ前記画像データに、正規化処理を行い原画像オブジェクトを生成する正規化処理工程と、前記正規化処理工程により正規化された前記画像データを基に、前記最適化オブジェクトにより最適画像データの生成を行う最適化処理工程とを含むことを特徴とする。
【００１７】
この請求項２の発明によれば、どの様なカラー文書画像データを扱う場合でも、ユーザの多様な用途に対応した最適画像データを生成することができる。
【００１８】
また、請求項３の発明にかかる画像処理方法は、請求項２に記載の発明において、前記最適化処理工程は、正規化された前記画像データの地肌部分を白にまとめる地肌除去処理工程と、前記地肌除去処理工程に用いる地肌除去のための階調変換曲線を表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、を含むことを特徴とする。
【００１９】
この請求項３の発明によれば、階調変換曲線を用いることで、画像データの地肌部分を白に縮約することができ、さらにオブジェクトを生成することで、縮約のためのパラメータを格納保管することができる。
【００２０】
また、請求項４の発明にかかる画像処理方法は、請求項２に記載の発明において、前記最適化処理工程は、正規化された前記画像データの地肌部分を地肌の代表色にまとめる地肌クリーニング処理工程と、前記地肌クリーニング処理工程に用いる地肌クリーニングのための階調変換曲線を表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、を含むことを特徴とする。
【００２１】
この請求項４の発明によれば、階調変換曲線を用いることで、画像データの地肌部分を地肌部分の代表色に縮約することができ、さらにオブジェクトを生成することで、縮約のためのパラメータを格納保管することができる。
【００２２】
また、請求項５の発明にかかる画像処理方法は、請求項２に記載の発明において、前記最適化処理工程は、正規化された前記画像データ中から抽出された文字を原解像度、あるいは、高解像度化された２値画像データとして抽出する抽出処理工程と、前記抽出処理工程により抽出された前記２値画像データを表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、を含むことを特徴とする。
【００２３】
この請求項５の発明によれば、画像データ中の文字を抽出し、原解像度、あるいは、高解像度化された２値画像データとして格納保管することができる。
【００２４】
また、請求項６の発明にかかる画像処理方法は、請求項２に記載の発明において、前記最適化処理工程は、正規化された前記画像データ中から抽出された文字の各々に対して、その色を推定する推定処理工程と、前記推定処理工程により推定された文字色データを表すオブジェクトを前記最適化オブジェクトとして生成する最適化オブジェクト生成工程と、を含むことを特徴とする。
【００２５】
この請求項６の発明によれば、画像データ中の文字を抽出し、各文字の色データを格納保管することができる。
【００２６】
また、請求項７の発明にかかる画像処理方法は、請求項６に記載の発明において、前記最適化オブジェクト生成工程は、前記文字色データを少数のクラスタに分類し、正規化された前記画像データ中の各文字をいずれかの色クラスタに割り当てを行う割り当て処理工程と、クラスタを特徴づけるデータと各文字のクラスタ割り当てデータを表すオブジェクトを前記最適化オブジェクトを構成するオブジェクトの一つとして生成するオブジェクト生成工程と、を含むことを特徴とする。
【００２７】
この請求項７の発明によれば、請求項６にかかる発明で格納保管された文字色データを少数のクラスタに分類し、画像データ中の各文字をいずれかの色クラスタに割り当てることができる。
【００２８】
また、請求項８の発明にかかる画像処理方法は、請求項２に記載の発明において、前記正規化処理工程により生成した原画像オブジェクトおよび前記最適化オブジェクト生成工程により生成した最適化オブジェクトは、前記画像特徴量や前記画像要素などからなる基本データを持ち、前記正規化処理工程および前記最適化オブジェクト生成工程は、それぞれ、前記基本データに施すための画像処理を規定する画像特徴量および画像要素を計算するための計算工程と、前記計算工程による計算結果を格納保管するためのオブジェクトを生成するためのオブジェクト生成工程と、前記オブジェクト生成工程により生成された前記オブジェクトへのポインタを有し、前記オブジェクト内の基本データに対する処理の設定、更新、現在の処理状態、履歴をそれぞれ管理するオブジェクト管理工程と、前記処理状態および履歴のデータを有し、前記オブジェクトの現在の処理状態に応じて、画像データを生成する画像生成工程と、を含むことを特徴とする。
【００２９】
この請求項８の発明によれば、複雑な機能実行および状態の管理をオブジェクトで一括して行うことができる。
【００３０】
また、請求項９の発明にかかる画像処理方法は、請求項８に記載の発明において、前記画像生成工程は、全体あるいは指定された部分のラスター画像データを生成するラスター画像生成工程を含むことを特徴とする。
【００３１】
この請求項９の発明によれば、オブジェクトの状態に応じて、階調変換、解像度変換などの処理を施したラスター画像データを生成することができる。
【００３２】
また、請求項１０の発明にかかる画像処理方法は、請求項８に記載の発明において、前記画像生成工程は、全体あるいは指定された部分の文字を２値画像データあるいはカラー画像データとして生成する文字画像生成工程を含むことを特徴とする。
【００３３】
この請求項１０の発明によれば、オブジェクトの現在の状態の内、特に文字データの解像度倍率を参照して、指定した部分の文字画像データを出力することができる。
【００３４】
また、請求項１１の発明にかかる画像処理方法は、請求項８に記載の発明において、前記画像生成工程は、全体あるいは指定された部分について、指定された色クラスタに属する色を持つ文字を集めた画像データを生成する色文字画像生成工程を含むことを特徴とする。
【００３５】
この請求項１１の発明によれば、各色クラスタについて、当該クラスタに属する色を持つ文字を集めた２値画像を生成することができる。
【００３６】
また、請求項１２の発明にかかる画像処理プログラムは、請求項２〜１１のいずれか一つに記載の画像処理方法をコンピュータに実行させることを特徴とする。
【００３７】
この請求項１２の発明によれば、既成のオブジェクトを用いてプログラムを構成することで、様々な用途および画像データ入力機器の特性に柔軟に対応することができる。
【００３８】
また、請求項１３の発明にかかる記録媒体は、請求項１２の画像処理プログラムが記録されていることを特徴とする。
【００３９】
この請求項１３の発明によれば、当該記録媒体があれば、請求項１に記載の各手段を用意するだけで、場所を選ばず本発明にかかる画像処理を行うことができる。
【発明の効果】
【００４０】
本発明によれば、オブジェクト指向に基づいてデータの取り扱いを行うため、負荷や、無駄が少なく、拡張性に優れ、メンテナンスが容易な画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体を提供できるという効果を奏する。
【発明を実施するための最良の形態】
【００４１】
以下に添付図面を参照して、この発明にかかる画像処理方法、画像処理装置、画像処理プログラムおよび記録媒体の好適な実施の形態を詳細に説明する。
【００４２】
この発明では、「オブジェクト指向」を導入したプログラムを用いる。オブジェクト指向とは、プログラムの内部構造よりもプログラムに関わる変数と、行われる機能に重点を置く考え方である。そしてこの発明の実施の形態では、カラー文書画像データを扱う場合は、原画像データ（正規化された画像データ）と、用途に最適な画像データの生成のための「材料」、最適画像データ生成のための従来処理方法（手続き）、そして処理の履歴や状態を「オブジェクト」として一括管理する。
【００４３】
具体的に、最適画像データ生成のための「材料」は、例えば、階調変換関数を規定するパラメータセット、高解像度化された文字を表す２値画像データ、文字色データやそのクラスタデータなどである。処理の履歴や材料は、例えば、数種類の階調変換の候補から選ばれたもののインデックス、高解像度化の倍率、文字色のクラスタリング方法、あるいは、各処理のＯＮ／ＯＦＦなどである。
【００４４】
（実施の形態）
図１は、本発明にかかる画像処理方法を実現する画像処理装置の一構成例を示すブロック図である。図１において、画像処理装置１１０は、ＣＰＵ１１１と、メモリ１１２（ＲＯＭ１１２１とＲＡＭ１１２２により構成）と、ハードディスク部（以下、「ＨＤＤ」という）１１３と、リムーバブルディスク部１１４と、表示部１１５と、キーボードとマウスなどポインティングデバイスからなる入力部１１６と、スキャナ部１１７と、ネットワークインタフェース１１８とが、バス１１９に接続した構成になっている。画像処理装置１１０は、ネットワークインタフェース１１８から通信回線１００を介して外部ネットワークに接続されている。
【００４５】
この実施の形態では、画像処理の対象となるカラービットマップ画像データは、リムーバブルディスク部１１４に格納されているものとする。また、本発明にかかる画像処理プログラムは、ＨＤＤ１１３に格納されているものとする。ユーザが画像処理プログラムを起動すると、画像処理プログラムは、ＲＡＭ１１２２に読み込まれ、画像処理が可能になる。他にも、通信回線１００を介してネットワークインタフェース１１８に送られてきた画像データや、スキャナ部１１７から読み取った画像データをＲＡＭ１１２２に格納し、画像処理を行ってもよい。
【００４６】
図１に示した画像処理装置１１０により実行される最適画像データの生成動作について、図２を用いて説明する。図２は、画像処理装置の最適画像データの生成動作の流れを表すフローチャートである。
【００４７】
まず、画像処理装置１１０を起動すると、ＣＰＵ１１１からの命令によりＨＤＤ１１３に格納されている画像処理プログラムがＲＡＭ１１２２へ格納される（ステップＳ２０１）。次に、入力部１１６のキーボードまたはポインティングデバイスを用い、リムーバブルディスク部１１４から、用途に合わせた最適化変換を行いたいカラービットマップによる画像データを選択し（ステップＳ２０２）、画像データの読み出しを行う。
【００４８】
読み出された画像データは、ＲＡＭ１１２２へ格納され、画像処理プログラムにより正規化処理を施され、原画像オブジェクトが生成される。この正規化処理は、入力された画像データの種類・状態の如何に関わらず一律に施され、画像処理装置１１０における最適画像データ生成のための「材料」の一つである原画像データ（正規化された画像データ）として、ＲＡＭ１１２２内の画像処理プログラムへ追加される（ステップＳ２０３）。
【００４９】
次に、入力部１１６のキーボードまたはポインティングデバイスから、画像データの用途（使用したい画像データの形式）の設定が行われる（ステップＳ２０４）。次に、選択された用途に適した画像データを生成するための最適化オブジェクトがすでに生成されているかの判断を行う（ステップＳ２０５）。この判断は、特定のオブジェクト内のメソッド（機能）で、一括して行う、このメソッドでは、生成された後の状態の管理も同時に行う。
【００５０】
すでに、最適化オブジェクトが生成されていれば（ステップＳ２０５：Ｙｅｓ）、その最適化オブジェクトを用い、最適化された画像データの生成を行う（ステップＳ２０７）。入力された画像データの用途に合った最適化オブジェクトが生成されていない場合（ステップＳ２０５：Ｎｏ）、画像処理プログラムにおいて、最適化オブジェクトが生成される。生成された最適化オブジェクトは、ＲＡＭ１１２２内の画像処理プログラムへ追加される（ステップＳ２０６）。生成された最適化オブジェクトにより最適化された画像データを生成し（ステップＳ２０７）、最適化画像データ生成処理は終了する。
【００５１】
ステップＳ２０３およびステップＳ２０６に記したように、生成されたオブジェクトは、ＲＡＭ１１２２内の画像処理プログラムに追加される。プログラムを終了する際は、あらたなオブジェクトが追加された画像処理プログラムをＨＤＤ１１３へ格納し、ステップＳ２０１で読み出された画像処理プログラムは、上書きされる。
【００５２】
（画像処理プログラムのオブジェクトの全体構成について）
次に、図２のフローチャートで行われた処理を実現させるために用いられている「オブジェクト」に関して説明する。オブジェクトは、入力データ（変数）に応じて、オブジェクトの内部状態に合わせた所定の機能を実行するブラックボックスである。ユーザは、行いたい機能に合わせ、既成のオブジェクトを呼び出し、実行させる。
【００５３】
従って、行いたい機能を持つオブジェクトがない場合や、複雑な機能を実行させたい場合は、既成オブジェクトを複数組み合わせ、その組み合わせ自体を一つのオブジェクトとして生成する。また、オブジェクトは、基本となる機能が同じ場合、扱う変数の変更や、機能の増加により容易に派生オブジェクトを生成することが可能である。
【００５４】
図２のフローチャートを用いた動作の説明で述べたように、画像入力機器を通してデジタル化された画像データは、まず、画像入力に使用された前記画像入力機器に固有の特性による画質変動を修正するための「正規化処理」が施される。
【００５５】
例えば、スキャナのＭＴＦ（Ｍｏｄｕｌａｔｉｏｎ  Ｔｒａｎｓｆｅｒ  Ｆｕｎｃｔｉｏｎ：変調伝達関数）によっては、モアレ現象が生じることがあるが、これを解消するためには、特許文献２のような、ドットで表現された中間調パターンを連続階調表現に変換するような正規化処理を施せばよい。
【００５６】
この正規化処理により入力画像データは、画像処理に適した状態の画像データである原画像データとなる。原画像データは、正規化処理の際に生成された原画像オブジェクトによって表される。原画像オブジェクトも複数のオブジェクトの集合により構成されている。
【００５７】
次に、用途によって最適な画像を生成するための処理（以下、「最適化処理」という）を施す。ここで、用途としては、紙への印刷、ディスプレイやＰＤＡ上への表示、検索などが考えられるが、それぞれの用途に応じて、「最適画像」の画像表現形式、あるいは、ファイル形式が異なってくる。
【００５８】
紙印刷では、ラスター画像やＰＤＦなどの構造化ファイル、表示では、ＨＴＭＬ、検索では、ＯＣＲをかけたテキストファイルとして表現する必要がある。それぞれの用途、あるいは、画像表現・ファイルの生成プログラムに、「最適化処理」を組み込んでしまうと、先に述べたように、負荷や無駄が生じたり、拡張やメンテナンスが難しくなったりするという問題が生じる。
【００５９】
このような問題の解消のために、ここでも、原画像データと最適画像データ生成のための「材料」、最適画像データ生成のための処理（手続き）、そして、処理の履歴や状態を「オブジェクト」として扱い、これらのオブジェクトを一括管理するため、「要素構造化（オブジェクト）表現」部を導入する。「要素構造化（オブジェクト）表現」部は、同じ種類のオブジェクトが共通で持っている機能と個々に持つことができる状態の記憶形式を記述したテンプレートであるクラスにより構成されている。図３は、この「要素構造化（オブジェクト）表現」部の全体構成を表したクラス階層図である。
【００６０】
図３のクラス階層において、Ｒｏｏｔ３００は、「要素構造化（オブジェクト）表現」部全体をまとめる形式的なルートであり、中身は空になっている。Ｒｏｏｔ３００はＩｍａｇｅ３０１、Ｔｏｎｅ  Ｃｏｒｒｅｃｔｉｏｎ３０２、Ｃｏｌｏｒ  Ｃｌｕｓｔｅｒ３０３の３つの基底クラスを持つ。
【００６１】
Ｉｍａｇｅ３０１は、一般的な画像のオブジェクトのクラスであり、画像情報（サイズ、解像度）やラスター画像配列のような基本データを格納保管する。また、それら格納保管データを設定するための手続きをメソッドとして持つ。Ｔｏｎｅ  Ｃｏｒｒｃｔｉｏｎ３０２は、階調変換オブジェクトのクラスである。Ｃｏｌｏｒ  Ｃｌｕｓｔｅｒ３０３は、文字色クラスタオブジェクトのクラスである。
【００６２】
Ｏｒｉｇｉｎａｌ  Ｉｍａｇｅ３０４は、画像機器から入力される、または、通信回路やデータ読み取り機器から得られる画像データ（本実施の形態では、リムーバブルディスク部１１４に格納されている画像データ。）へ正規化を施した画像データを表す原画像オブジェクトのクラスである。Ｂｉｎａｒｙ  Ｔｅｘｔ３０５は、文字オブジェクトのクラスであり、Ｔｅｘｔ  Ｃｏｌｏｒ３０６は、文字色オブジェクトのクラスである。これら３つのクラスは、Ｉｍａｇｅ３０１から派生したものである。
【００６３】
（オブジェクトの構成について）
図３に示した様な機能ごとに派生したクラスを用い、画像処理の種類ごとにオブジェクトとして構成する。本発明の実施の形態における画像処理プログラム内のオブジェクトは、具体的には、原画像オブジェクト、最適化オブジェクトなどがある。原画像オブジェクトは、正規化を施された原画像を表すオブジェクトであり、最適化オブジェクトは、原画像に施す最適化処理を規定するパラメータやデータのセットを表すオブジェクトまたは、最適化を行うために必要な画像要素に施す処理を規定するパラメータやデータのセットを表すオブジェクトである。
【００６４】
図４は、最適化オブジェクトの構成の一例である。最適化オブジェクト４００は、さらに、原画像オブジェクト４０１と、階調変換オブジェクト４０２と、文字オブジェクト４０３と、文字色オブジェクト４０４と、文字色オブジェクト４０４から派生した文字色クラスタオブジェクト４０５から構成されている。原画像オブジェクト４０１については、先に述べたが、それ以外の各オブジェクトは、具体的には以下のような処理を行う。
【００６５】
・階調変換オブジェクト：画像データの地肌部分を白に縮約する「地肌除去」や、地肌部分の代表色に縮約する「地肌クリーニング」のための階調変換を規定するパラメータを格納保管するオブジェクト。
・文字オブジェクト：画像データ中の文字を抽出し、原解像度の、あるいは、高解像化された２値画像データとして格納保管するオブジェクト。
・文字色オブジェクト：画像データ中の文字を抽出し、各文字の色データを格納保管するオブジェクト。
・文字色クラスタオブジェクト：文字色オブジェクトで格納保管されている文字色データを少数のクラスタに分類し、画像データ中の各文字をいずれかの色クラスタに割り当てるためのオブジェクト。
【００６６】
上記の最適化オブジェクトを構成する各オブジェクトには、そのオブジェクトを生成するための「入力」となったオブジェクトからのポインタ（プログラムで、メモリ領域を指し示す変数や、引数）が張られる。「階調変換オブジェクト４０２」、「文字オブジェクト４０３」、「文字色オブジェクト４０４」は、原画像データ（正規化された入力画像データ）を入力として生成されるので、「原画像オブジェクト４０１」からのポインタが張られる。また、「文字色クラスタオブジェクト４０５」は、「文字色オブジェクト４０４」を入力として計算されるので、「文字色オブジェクト４０４」からのポインタが張られる。
【００６７】
（各オブジェクトのメンバ変数とメソッドについて）
各オブジェクト内には、次のようなメンバ変数（クラスの現在状態の実装）とメソッドを持つ。
・基本データ：当該オブジェクトの基本データ（画像やパラメータ）。
・最適化オブジェクト生成の手続き：最適化処理を規定するパラメータやデータのセットの計算を行う。対応する最適化オブジェクトを生成し、計算結果を最適化オブジェクトとして管理する。
・最適化オブジェクトへのポインタ：当該オブジェクトを基に生成された最適化オブジェクトへのポインタ。
・現在の状態の管理・設定：最適化処理のＯＮ／ＯＦＦなどの履歴や状態を設定するための手続きと、管理するための変数。
・現在の状態に応じた画像合成手続き：最適化処理の現在状態を参照して、画像データを合成する。
【００６８】
具体的に上述のメンバ変数とメソッドうちのどれを用い、また用いたメンバ変数とメソッドの内容は各オブジェクトにより異なる。例えば、「原画像オブジェクト４０１」は、次の１．〜５．のようなメンバ変数とメソッドから構成される。
【００６９】
１．基本データ
・原画像のラスターデータ、サイズ、解像度
【００７０】
２．最適化オブジェクト生成の手続き
・階調変換オブジェクト生成
文字オブジェクト（解像度倍率をパラメータ）と文字色オブジェクトの生成
【００７１】
３．最適化オブジェクトへのポインタ
・階調変換オブジェクト
・文字オブジェクト（解像度倍率ごと）
・文字色オブジェクト
【００７２】
４．現在の状態を設定するための手続きと、状態を管理するための変数
・階調変換のモード（地肌除去／地肌クリーニング／ＯＦＦ）
・地肌除去／クリーニングに用いる階調変換のインデックス
・文字の解像度倍率（文字強調をする場合は１以上、しない場合は０）
【００７３】
５．現在の状態に応じた画像合成手続き
・ラスター画像データの生成：現在の状態を参照して、階調変換、解像度変換などの処理を施したラスター画像データを生成する手続き（印刷用）
・２値／カラー文字画像データの出力：現在の状態、特に、文字の解像度倍率を参照して、指定された部分の文字画像データを出力する手続き（ＯＣＲ用、ＨＴＭＬ用）
・各色クラスタに属する文字画像データの生成：色クラスタの各々について、そのクラスタに属する色を持つ文字を集めた２値画像データを生成する手続き（ＰＤＦ用）
【００７４】
また、「文字色オブジェクト４０４」は、次の１．〜４．のようなメンバ変数とメソッドから構成される。
【００７５】
１．基本データ
・各文字の色を表すラスター画像データ、サイズ、解像度
【００７６】
２．最適化オブジェクト生成の手続き
・文字色クラスタオブジェクトの生成
【００７７】
３．最適化オブジェクトへのポインタ
・文字色クラスタオブジェクト
【００７８】
４．現在の状態を設定するための手続きと、状態を管理するための変数
・クラスタリングのＯＮ／ＯＦＦ
【００７９】
（最適化オブジェクトの生成と、状態の設定・変更と管理について）
最適化オブジェクトがすでに生成されているかどうかを各用途ごとのアプリケーション側で管理するのは煩わしい。そこで、最適化オブジェクトの生成と状態の設定・変更を、同一のメソッドを通して行えるようにする。
【００８０】
例えば、階調変換オブジェクトの生成、モード設定・変更（地肌除去／地肌クリーニング／階調変換ＯＦＦ）、地肌除去／クリーニングの強度の設定・変更は、原画像オブジェクトの単一のメソッド「ｓｅｔ＿ｔｏｎｅ＿ｃｏｒｒｅｃｔｉｏｎ（ｉｎｔ  ｍｏｄｅ、ｉｎｔ  ｆａｃｔｏｒ）」で行うようにする。このメソッドが起動された時点で階調変換オブジェクトがまだ生成されていない場合には、階調変換オブジェクトの生成（地肌の代表色の計算や階調変換を規定するパラメータの計算を含む）を行ってから、状態（階調変換のモードやインデックス）の設定を行う。すでに生成されている場合には状態の設定・変更のみを行う。
【００８１】
（プログラム例）
上述した画像要素のオブジェクト指向表現プログラムを用いた、最適画像生成プログラムの例をプログラム言語「Ｃ＋＋」を用いて示す。
【００８２】
原画像オブジェクトのクラス定義を行うプログラム例を図５に、文字色オブジェクトのクラス定義を行うプログラム例を図６に示す。図５中のソースコード５００および、図６中のソースコード６００は、プログラム言語「Ｃ＋＋」によるプログラミングの一例である。
【００８３】
図７−１〜７−３は、原画像生成に関するオブジェクトのプログラム例と画像生成結果を示す図である。図７−１のソースコード７１０では、変数ｉｍｇを原画像クラス型、ｄｉｂａｒｒａｙを合成された画像を格納する文字型配列へのポインタとして宣言し、原画像オブジェクトｉｍｇを初期化するメソッド「ｓｅｔ＿ｉｍａｇｅ」を、入力画像データへのポインタｄｉｂａｒｒａｙ＿０をパラメータとして起動する。ここで、ｉｍｇについて現在の状態を参照してラスター画像データを生成するメソッド「ｒｅｎｄｅｒｉｎｇ」を起動すると、図７−２に示すような画像７２０が生成される。ここでは、「最適化処理」が何も施されていないので、入力画像がそのまま出力される。その一部を拡大したものを図７−３の拡大画像７３０に示す。
【００８４】
図８−１〜８−３は、画像の地肌クリーニングに関するプログラム例と画像生成結果を示す図である。図８−１のソースコード８１０では、レベル０の地肌クリーニングを設定するように、階調変換オブジェクト設定のメソッド「ｓｅｔ＿ｔｏｎｅ＿ｃｏｒｒｅｃｔｉｏｎ」を起動する。さらに、文字オブジェクト（解像度を２倍）と文字色オブジェクトの設定を行うメソッド「ｓｅｔ＿ｔｅｘｔ＿ｅｎｈａｎｃｅｍｅｎｔ」を起動する。ここで、ｉｍｇについて現在の状態を参照してラスター画像データを生成するメソッド「ｒｅｎｄｅｒｉｎｇ」を起動すると、図８−２に示すような画像８２０が生成される。その一部を拡大したものを図８−３の拡大画像８３０に示す。ここでは、地肌の汚れや裏写りが消えて、拡大すると文字の鮮明さが向上している。
【００８５】
図９−１〜９−３は、画像の地肌クリーニングに関するプログラム例と画像生成結果を示す図である。図９−１のソースコード９１０では、階調変換オブジェクトが機能しない設定にするように、メソッド「ｓｅｔ＿ｔｏｎｅ＿ｃｏｒｒｅｃｔｉｏｎ」を起動する。ここで、ｉｍｇについて現在の状態を参照してラスター画像データを生成するメソッド「ｒｅｎｄｅｒｉｎｇ」を起動すると、図９−２に示すような画像９２０が生成される。その一部を拡大したものを図９−３の拡大画像９３０に示している。ここでは、地肌は原画像の状態に戻って、汚れや裏写りが再現しているが、拡大すると文字の鮮明さは図８−３の拡大画像８３０の状態のままである。
【００８６】
図１０−１〜１０−３は、画像の文字強調と地肌クリーニングに関するプログラム例と画像生成結果を示す図である。図１０−１のソースコード１０１０では、文字オブジェクトと文字色オブジェクトが機能しない設定にするように、メソッド「ｓｅｔ＿ｔｅｘｔ＿ｅｎｈａｎｃｅｍｅｎｔ」を起動する。また、レベル０の地肌除去を設定するように、階調変換オブジェクト設定のメソッド「ｓｅｔ＿ｔｏｎｅ＿ｃｏｒｒｅｃｔｉｏｎ」を起動する。ここで、ｉｍｇについて現在の状態を参照してラスター画像データを生成するメソッド「ｒｅｎｄｅｒｉｎｇ」を起動すると、図１０−２に示すような画像１０２０が生成される。その一部を拡大したものを図１０−３の拡大画像１０３０に示している。ここでは、地肌は除去されて白に縮約されるが、文字は原画像の状態に戻っている。
【００８７】
図１１−１〜１１−３は、画像の文字解像度と文字色に関するプログラム例と画像生成結果を示す図である。図１１−１のソースコード１１１０では、文字オブジェクト（解像度を２倍）と文字色オブジェクトの設定を行うメソッド「ｓｅｔ＿ｔｅｘｔ＿ｅｎｈａｎｃｅｍｅｎｔ」を起動する。さらに、文字色のクラスタリングをＯＮに設定するように、文字色オブジェクトＴｅｘｔ＿Ｃｏｌｏｒのメソッド「ｓｅｔ＿ｃｏｌｏｒ＿ｃｌｕｓｔｅｒｉｎｇ」を起動する。ここで、Ｔｅｘｔ＿Ｃｏｌｏｒのメソッド「ｎｕｍｂｅｒ＿ｏｆ＿ｃｌｕｓｔｅｒ」を起動することにより、色クラスタの数が得られる（この例では２）。色クラスタのそれぞれについて、そのクラスタに属する文字を集めた画像データを生成するメソッド「ｇｅｔ＿ｃｏｌｏｒ＿ｐｌａｎｅ」を起動すると、図１１−２および図１１−３に示すような文字色クラスタ別に画像１１２０および画像１１３０が得られる。
【００８８】
図１２−１および図１２−２は、ラスター画像生成に関するプログラム例と画像生成結果を示す図である。図１２−１のソースコード１２１０では、ｉｍｇについて現在の状態を参照してラスター画像データを生成するメソッドｒｅｎｄｅｒｉｎｇを起動している。図１２−２に示す生成された画像１２２０は、図９−２の画像９２０と比べて、文字の解像度が２倍になっているため、鮮明さが向上し、さらに、文字色がクラスタリングされているために、色のむらがなくなっている。その一方で、地肌は除去された状態のままである。
【００８９】
図１３−１〜１３−４は、画像の階調変換と文字に関するプログラム例と画像生成結果を示す図である。図１３−１のソースコード１３１０では、原画像における（８０７，８２８）を座標とする画素を原点とし、幅と高さがそれぞれ２５であるような部分領域に属する２値文字画像データを生成するメソッド「ｇｅｔ＿ｂｉｎａｒｙ＿ｃｈａｒａｃｔｅｒ」を起動している。ここでは、文字解像度が２倍に設定されている。ソースコード１３１０により生成されたのが図１３−２に示す画像１３２０である。そして図１３−３のソースコード１３３０では、メソッド「ｓｅｔ＿ｔｅｘｔ＿ｅｎｈａｎｃｅｍｅｎｔ」により文字解像度を１倍に設定し直した後、再び、メソッド「ｇｅｔ＿ｂｉｎａｒｙ＿ｃｈａｒａｃｔｅｒ」を起動している。ソースコード１３３０により生成されたのが図１３−４に示す画像１３４０である。それぞれの生成画像を見ると、文字解像度の設定による２値画像の品質の違いが顕著である。
【００９０】
図１４−１〜１４−３は、画像の階調変換と文字および文字色に関するプログラム例と画像生成結果を示す図である。図１４−１のソースコード１４１０では、階調変換オブジェクトが機能しない設定、そして、文字オブジェクトと文字色オブジェクトが機能しない設定にするように、２つのメソッドを起動している。メソッド「ｒｅｎｄｅｒｉｎｇ」の起動の結果生成された図１４−２に示す画像１４２０およびその一部を拡大した画像である図１４−３の拡大画像１４３０を見ると、再び図７−３の拡大原画像７３０と同じ状態に戻っていることがわかる。
【００９１】
図１５−１および図１５−２は、２値文字画像に関するプログラム例と画像生成結果を示す図である。図１５−１のソースコード１５１０では、図１３−１中のソースコード１３１０と同様に、部分領域に属する２値文字画像データを抽出するメソッド「ｇｅｔ＿ｂｉｎａｒｙ＿ｃｈａｒａｃｔｅｒ」を起動している。ところが、文字オブジェクトと文字色オブジェクトが機能しない設定になっているため、文字が抽出されないので、図１５−２の画像１５２０のように画像が生成されない。
【００９２】
図１６−１および図１６−２は、２値文字画像の解像度に関するプログラム例と画像生成結果を示す図である。図１６−１のソースコード１６１０では、再び解像度を２倍にして文字オブジェクトと文字色オブジェクトを設定するように、メソッド「ｓｅｔ＿ｔｅｘｔ＿ｅｎｈａｎｃｅｍｅｎｔ」を起動し、部分領域に属する２値文字画像データを抽出するメソッド「ｇｅｔ＿ｂｉｎａｒｙ＿ｃｈａｒａｃｔｅｒ」を起動すると、図１３−１中のソースコード１３１０の結果である画像１３２０（図１３−２参照）と同じ画像が図１６−２の画像１６２０の様に得られる。
【００９３】
以上、実施の形態のプログラム例の中に登場したメソッドは全て既成のものである。このように、アプリケーション側では、個々の「最適化処理」の実装形態に気を使うことなく、少数のメソッドを用いるだけで、用途に適した画像を得ることができる。また、中間データを格納保管する必要もなく、あらたな「最適化処理」が導入されても、実装が異なるメソッドを共通のインタフェースによって同じように扱えるよう規格を揃えることで（ポリモーフィズム）、新規にオブジェクトを作成する場合でも、必要に応じてその処理に対応するオブジェクトの操作メソッドを呼び出す部分を追加するだけでよい。
【００９４】
本実施の形態は、多様化するデジタル化された画像データの用途に対応するために、原画像データと最適画像データ生成のための「材料」、最適画像データ生成のための処理（手続き）、そして、処理の履歴や状態を「オブジェクト」として一括管理する方法を提案した。このような「オブジェクト指向」の導入により、次の１．〜３．のような利点がある。
【００９５】
１．処理の履歴や状態を一括して管理するので、各用途ごとに気にする必要がない。
２．原画像データ（正規化された）と最適化のための「材料」を常に格納保管することにより、
・いつでも任意の状態に戻れることができて、Ｕｎｄｏ、Ｒｅｄｏも簡単である。
・一度作った最適画像データ生成のための「材料」を共同利用できる。すなわち、複数の「用途」から最適化処理が多重呼び出しされない。
３．用途と最適画像生成が分離されているので、拡張性やシステムのメンテナンスが容易になる。システム側では、現在の「状態」を参照して、各用途に応じた画像を合成する手続きを、オブジェクトに付随するメソッドとして用意するだけでよい。例えば、印刷のためにはラスター画像、ＯＣＲのためには２値画像データを、原画像データと最適画像データ生成のための「材料」から生成する単純な手続きだけでよい。
【００９６】
以上説明したように、本発明にかかる画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体によれば、スキャナなどの画像機器により入力されたカラー文書画像に対して、様々な用途に最適な画像を生成するためのデータを「オブジェクト指向」に基づいて取り扱うことにより、負荷や無駄が少なく、拡張性に優れた画像処理を、容易なメンテナンスで行うことができる。
【００９７】
なお、本実施の形態で説明した画像処理方法は、予め用意された画像処理プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。
【産業上の利用可能性】
【００９８】
以上のように、本発明にかかる画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体は、スキャナやデジタルカメラなどから取り込んだ文字を含む画像データを用途に合わせた最適なデータ状態へ変換したい場合に有用であり、特に、紙媒体の出版物などを、ネットワーク上で公開するためにＰＤＦなどデジタル情報への変換する場合などに適している。
【図面の簡単な説明】
【００９９】
【図１】画像処理装置の一構成例を示すブロック図である。
【図２】画像処理装置の最適画像データの生成動作の流れを表すフローチャートである。
【図３】「要素構造化（オブジェクト）表現」部の全体構成を表したクラス階層図である。
【図４】最適化オブジェクトの構成の一例を示す図である。
【図５】原画像オブジェクトのクラス定義を行うプログラム例を示す図である。
【図６】文字色オブジェクトのクラス定義を行うプログラム例を示す図である。
【図７−１】原画像生成に関するオブジェクトのプログラム例を示す図である。
【図７−２】ソースコード７１０による画像生成結果を示す図である。
【図７−３】画像生成結果７２０の一部を拡大したものを示す図である。
【図８−１】画像の地肌クリーニングに関するプログラム例を示す図である。
【図８−２】ソースコード８１０による画像生成結果を示す図である。
【図８−３】画像生成結果８２０の一部を拡大したものを示す図である。
【図９−１】画像の地肌クリーニングに関するプログラム例を示す図である。
【図９−２】ソースコード９１０による画像生成結果を示す図である。
【図９−３】画像生成結果９２０の一部を拡大したものを示す図である。
【図１０−１】画像の文字強調と地肌クリーニングに関するプログラム例を示す図である。
【図１０−２】ソースコード１０１０による画像生成結果を示す図である。
【図１０−３】画像生成結果１０２０の一部を拡大したものを示す図である。
【図１１−１】画像の文字解像度と文字色に関するプログラム例を示す図である。
【図１１−２】ソースコード１１１０による画像生成結果を示す図である。
【図１１−３】ソースコード１１１０による画像生成結果を示す図である。
【図１２−１】ラスター画像生成に関するプログラム例を示す図である。
【図１２−２】ソースコード１２１０による画像生成結果を示す図である。
【図１３−１】画像の階調変換と文字に関するプログラム例を示す図である。
【図１３−２】ソースコード１３１０による画像生成結果を示す図である。
【図１３−３】画像の階調変換と文字に関するプログラム例を示す図である。
【図１３−４】ソースコード１３３０による画像生成結果を示す図である。
【図１４−１】画像の階調変換と文字および文字色に関するプログラム例を示す図である。
【図１４−２】ソースコード１４１０による画像生成結果を示す図である。
【図１４−３】画像生成結果１４２０の一部を拡大したものを示す図である。
【図１５−１】２値文字画像に関するプログラム例を示す図である。
【図１５−２】ソースコード１５１０による画像生成結果を示す図である。
【図１６−１】２値文字画像の解像度に関するプログラム例を示す図である。
【図１６−２】ソースコード１６１０による画像生成結果を示す図である。
【符号の説明】
【０１００】
１００  通信回線
１１０  画像処理装置
１１１  ＣＰＵ
１１２  メモリ
１１２１  ＲＯＭ
１１２２  ＲＡＭ
１１３  ハードディスク部（ＨＤＤ）
１１４  リムーバブルディスク部
１１５  表示部
１１６  入力部
１１７  スキャナ部
１１８  ネットワークインタフェース
１１９  バス
【図１】
2006053690.tif 000003
【図２】
2006053690.tif 000004
【図３】
2006053690.tif 000005
【図４】
2006053690.tif 000006
【図５】
2006053690.tif 000007
【図６】
2006053690.tif 000008
【図７−１】
2006053690.tif 000009
【図７−２】
2006053690.tif 000010
【図７−３】
2006053690.tif 000011
【図８−１】
2006053690.tif 000012
【図８−２】
2006053690.tif 000013
【図８−３】
2006053690.tif 000014
【図９−１】
2006053690.tif 000015
【図９−２】
2006053690.tif 000016
【図９−３】
2006053690.tif 000017
【図１０−１】
2006053690.tif 000018
【図１０−２】
2006053690.tif 000019
【図１０−３】
2006053690.tif 000020
【図１１−１】
2006053690.tif 000021
【図１１−２】
2006053690.tif 000022
【図１１−３】
2006053690.tif 000023
【図１２−１】
2006053690.tif 000024
【図１２−２】
2006053690.tif 000025
【図１３−１】
2006053690.tif 000026
【図１３−２】
2006053690.tif 000027
【図１３−３】
2006053690.tif 000028
【図１３−４】
2006053690.tif 000029
【図１４−１】
2006053690.tif 000030
【図１４−２】
2006053690.tif 000031
【図１４−３】
2006053690.tif 000032
【図１５−１】
2006053690.tif 000033
【図１５−２】
2006053690.tif 000034
【図１６−１】
2006053690.tif 000035
【図１６−２】
2006053690.tif 000036