(57)【特許請求の範囲】
【請求項１】
画像データの特性を示す画像特徴量を計算する特徴量計算手段と、
ユーザにより選択された機能の入力を受け付ける入力受付手段と、
前記特徴量計算手段で計算された前記画像データの前記画像特徴量と、前記入力受付手段を介してユーザにより選択された機能とを含む事例集合を蓄積するデータベースである事例データベースと、
前記事例データベースに蓄積された前記事例集合を用いて前記画像データに対する最適な機能を予測する予測器を構築する予測器構築手段と、
前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記予測器構築手段で構築された前記予測器を用いて最適な機能を予測する最適機能予測手段と、
前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、ユーザの目的が変化した新たな事例と、前記予測器構築手段における前記予測器の構築に用いた前記事例集合との和集合をとって、前記事例集合を更新する更新手段と、を備え、
前記予測器構築手段は、前記更新手段により前記事例集合が更新されるごとに、当該事例集合を用いて前記予測器を再構築する逐次構築手段を備える、
ことを特徴とするデータ処理装置。
【請求項２】
前記最適機能予測手段は、
前記事例データベースに蓄積された前記事例集合のうち前記予測器で用いられるプロトタイプ点と前記画像データとの特徴量ベクトルの距離を計算する距離計算手段と、
前記距離計算手段により計算された前記距離が最小となる前記プロトタイプ点に付随するクラス情報に対応する分類カテゴリを、前記最適な分類カテゴリとして出力する手段と、
を備えることを特徴とする請求項１記載のデータ処理装置。
【請求項３】
前記予測器構築手段は、全ての作業が終了したと判断した場合に、前記事例データベースに蓄積されている全ての前記事例集合を用いて前記予測器を再構築するバッチ構築手段を備える、
ことを特徴とする請求項２記載のデータ処理装置。
【請求項４】
前記最適機能予測手段は、
前記事例データベースに蓄積された前記事例集合のうち前記予測器で用いられるプロトタイプデータと前記画像データとの特徴量ベクトルの距離を計算する距離計算手段と、
前記距離計算手段により計算された前記距離が最小となる前記プロトタイプデータに付随するクラス情報に対応する機能を、前記最適な機能として出力する手段と、
を備えることを特徴とする請求項１記載のデータ処理装置。
【請求項５】
前記更新手段は、
前記事例データベースに蓄積されている前記事例集合の中で、特徴量ベクトルがほぼ同じ値を持ち、かつ、過去と現在での機能が異なる事例データの組を検出する手段と、
検出された前記事例データの組について、古い前記事例データを前記事例集合から除外して、新しい前記事例データだけを前記事例集合に取り入れる手段と、
を備えることを特徴とする請求項１記載のデータ処理装置。
【請求項６】
前記逐次構築手段は、新しい画像データが入力されるごとに、前記事例集合中の事例データのうち、新しい画像データから計算される画像特徴量に近い特徴量を持つ前記プロトタイプデータだけについて、距離関数のパラメータを更新するパラメータ更新手段を備える、
ことを特徴とする請求項１記載のデータ処理装置。
【請求項７】
前記パラメータ更新手段は、前記事例集合中の事例データのうち、新しい画像データに近い画像特徴量を持つ前記プロトタイプデータだけから計算された予測誤差が最小になるように、前記事例データによって決まる重みを更新する、
ことを特徴とする請求項６記載のデータ処理装置。
【請求項８】
前記バッチ構築手段は、前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、前記事例集合をできるだけ小さくし、かつ、予測誤差が最小になるように前記プロトタイプデータの重みを最適化する、補完手段を備える、
ことを特徴とする請求項３記載のデータ処理装置。
【請求項９】
前記補完手段は、前記新たな事例データを前記事例集合に追加するとともに、現在の前記事例集合から、矛盾するような事例データを削除する手段と、前記新たな事例データの近傍データ群について、前記プロトタイプデータの重みを更新する手段と、を備える、
ことを特徴とする請求項８記載のデータ処理装置。
【請求項１０】
前記事例データベースに蓄積された前記事例集合の各事例について重みを計算する重み計算手段と、
前記各事例についての重みを用いて前記事例データベース中の前記事例の個数を縮減した事例セットを構築する事例セット構築手段と、
を更に備え、
前記最適機能予測手段は、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記事例セット構築手段で構築した前記事例セットと前記重み計算手段で求めた重みとを用いて、最適な機能を予測する、
ことを特徴とする請求項１記載のデータ処理装置。
【請求項１１】
前記最適機能予測手段は、
前記事例セットに蓄積された各事例について、前記画像データとの特徴量ベクトルの特徴量ベクトルの距離を重みをつけて計算する距離計算手段と、
前記距離計算手段により計算された前記距離が最小となる前記事例セットに蓄積されている前記事例を、前記最適な機能として出力する手段と、
を備えることを特徴とする請求項１０記載のデータ処理装置。
【請求項１２】
前記画像データに対して少なくとも２つ以上の領域抽出方式による領域抽出を実行する領域抽出手段と、
前記領域抽出手段による前記各領域抽出方式による領域分割結果に対して順位付けを行って評価する評価手段と、
前記特徴量計算手段により計算された前記画像特徴量と、前記評価手段で評価した最良の前記領域抽出方式とを、教師付き特徴量データとして記録する特徴量データ記録手段と、
前記教師付き特徴量データを用いることにより、前記画像特徴量から最良の前記領域抽出方式を選択する選択規則を学習する学習手段と、
を備え、
前記事例データベースを構築する、
ことを特徴とする請求項１記載のデータ処理装置。
【請求項１３】
前記特徴量計算手段は、
前記画像データを矩形ブロックに排他的に分割するブロック分割手段と、
分割された前記各ブロックを、当該画像データを構成する所定の構成要素に分類するブロック分類手段と、
前記ブロックの分類結果に基づいて前記画像データの画像特徴量を計算する計算手段と、
を備えることを特徴とする請求項１２記載のデータ処理装置。
【請求項１４】
前記ブロック分類手段は、
前記ブロックから複数の異なる解像度の画像を生成する画像生成手段と、
前記各解像度の画像から特徴量ベクトルを計算する特徴量ベクトル計算手段と、
前記特徴量ベクトルに基づいて前記各ブロックを所定の構成要素に分類する分類手段と、
を備えることを特徴とする請求項１３記載のデータ処理装置。
【請求項１５】
前記特徴量ベクトル計算手段は、
前記各解像度の画像を２値化する２値化手段と、
２値画像の各々の画素について当該画素及びその近傍画素で構成する局所パターンの対応する画素の値を使って特徴を計算する画素特徴計算手段と、
前記各画素について計算された特徴を画像全体にわたって加算する加算手段と、
を備えることを特徴とする請求項１４記載のデータ処理装置。
【請求項１６】
前記特徴量ベクトル計算手段は、
前記各解像度の画像の各々の画素について当該画素及びその近傍画素で構成する局所パターンの対応する画素の値を使って特徴を計算する画素特徴計算手段と、
前記各画素について計算された特徴を画像全体にわたって加算する加算手段と、
を備えることを特徴とする請求項１４記載のデータ処理装置。
【請求項１７】
コンピュータを、
画像データの特性を示す画像特徴量を計算する特徴量計算手段と、
ユーザにより選択された機能の入力を受け付ける入力受付手段と、
前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記特徴量計算手段で計算された前記画像データの前記画像特徴量と、前記入力受付手段を介してユーザにより選択された機能とを含む事例集合を蓄積するデータベースである事例データベースに蓄積された前記事例集合を用いて前記画像データに対する最適な機能を予測する予測器を構築する予測器構築手段と、
前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記予測器構築手段で構築された前記予測器を用いて最適な機能を予測する最適機能予測手段と、
前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、ユーザの目的が変化した新たな事例と、前記予測器構築手段における前記予測器の構築に用いた前記事例集合との和集合をとって、前記事例集合を更新する更新手段と、して機能させ、
前記予測器構築手段は、前記更新手段により前記事例集合が更新されるごとに、当該事例集合を用いて前記予測器を再構築する逐次構築手段を備える、
ことを特徴とするプログラム。
【請求項１８】
データ処理装置で実行されるデータ処理方法であって、
前記データ処理装置は、制御部と記憶部を備え、
前記制御部において実行される、
特徴量計算手段が、画像データの特性を示す画像特徴量を計算するステップと、
入力受付手段が、ユーザにより選択された機能の入力を受け付けるステップと、
予測器構築手段が、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記特徴量計算手段で計算された前記画像データの前記画像特徴量と、前記入力受付手段を介してユーザにより選択された機能とを含む事例集合を蓄積するデータベースである事例データベースに蓄積された前記事例集合を用いて前記画像データに対する最適な機能を予測する予測器を構築するステップと、
最適機能予測手段が、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記予測器構築手段で構築された前記予測器を用いて最適な機能を予測するステップと、
更新手段が、前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、ユーザの目的が変化した新たな事例と、前記予測器構築手段における前記予測器の構築に用いた前記事例集合との和集合をとって、前記事例集合を更新するステップと、を含み、
前記予測器構築手段が、前記更新手段により前記事例集合が更新されるごとに、当該事例集合を用いて前記予測器を再構築するステップと、をさらに含む、
ことを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置、プログラムおよびデータ処理方法に関する。
【背景技術】
【０００２】
近年、カラースキャナやデジタルカメラの普及により、印刷文書をスキャン入力するとともに、そのスキャン入力された文書画像データを蓄積・出力・再利用することが一般的に行われるようになっている。さらに、コード化された電子文書データと同様に、スキャン入力された文書画像データのネットワークを介しての遠隔地への送信も行われている。
【０００３】
すなわち、ネットワーク上においては、スキャンされた文書画像データあるいはコード化された電子文書データの形で、文書データが流通していることになる。これらの文書画像データあるいはコード化された電子文書データは、送信されたり、蓄積されたりして、ユーザのタスクや嗜好に応じて活用される。
【０００４】
ところで、後の再利用のためには、データ蓄積に際して、ユーザが決める基準に従ってデータの分類を行うことが望ましい。
【０００５】
そこで、電子文書データから抽出されたキーワード、あるいは、文書画像データにＯＣＲを施してから抽出されたキーワードのような言語情報に基づき、データの分類を行うようにした文書分類システムが提案されている（特許文献１〜３参照）。
【０００６】
【特許文献１】特許第３４４１５００号公報
【特許文献２】特許第３７９２４１１号公報
【特許文献３】特許第３７７１０４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、電子文書データや文書画像データ（以下、文書データという）を多様な利用目的に最適な形で活用できるようなシステムを構築するにあたっては、処理対象である文書データの種類も多様であり、さらに、ユーザの嗜好や利用目的も多様であることが問題になる。特に、最近の文書は、レイアウトや色使いなども多様になってきており、文書データの分類においては、キーワードのような言語情報だけでなく、画像の特性にも着目した分類が必要になる。
【０００８】
ここで、画像の特性に応じた分類を行う上で問題になるのは、キーワードの場合と異なり、画像の特性を「言語」や「記号」で表現するのは難しいため、ユーザが分類基準を指定することが難しいことである。
【０００９】
さらに、個々のユーザによって分類基準が異なることから、ユーザは大量の画像に対して１枚ごとに分類カテゴリを逐一指定しなければならないので、ユーザに負担がかかるとともに、作業効率が低下するという問題もある。
【００１０】
本発明は、上記に鑑みてなされたものであって、ユーザが大量の画像に対して１枚ごとに機能を指定する場合に、各ユーザに固有の分類の仕方を考慮しつつ、ユーザ操作に負担を掛けずに、作業効率の向上を図ることができるデータ処理装置、プログラムおよびデータ処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明のデータ処理装置は、画像データの特性を示す画像特徴量を計算する特徴量計算手段と、ユーザにより選択された機能の入力を受け付ける入力受付手段と、前記特徴量計算手段で計算された前記画像データの前記画像特徴量と、前記入力受付手段を介してユーザにより選択された機能とを含む事例集合を蓄積するデータベースである事例データベースと、前記事例データベースに蓄積された前記事例集合を用いて前記画像データに対する最適な機能を予測する予測器を構築する予測器構築手段と、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記予測器構築手段で構築された前記予測器を用いて最適な機能を予測する最適機能予測手段と、前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、ユーザの目的が変化した新たな事例と、前記予測器構築手段における前記予測器の構築に用いた前記事例集合との和集合をとって、前記事例集合を更新する更新手段と、を備え、前記予測器構築手段は、前記更新手段により前記事例集合が更新されるごとに、当該事例集合を用いて前記予測器を再構築する逐次構築手段を備えることを特徴とする。
【００１３】
また、請求項２にかかる発明は、請求項１記載のデータ処理装置において、前記最適機能予測手段は、前記事例データベースに蓄積された前記事例集合のうち前記予測器で用いられるプロトタイプ点と前記画像データとの特徴量ベクトルの距離を計算する距離計算手段と、前記距離計算手段により計算された前記距離が最小となる前記プロトタイプ点に付随するクラス情報に対応する分類カテゴリを、前記最適な分類カテゴリとして出力する手段と、を備えることを特徴とする。
【００１５】
また、請求項３にかかる発明は、請求項２記載のデータ処理装置において、前記予測器構築手段は、全ての作業が終了したと判断した場合に、前記事例データベースに蓄積されている全ての前記事例集合を用いて前記予測器を再構築するバッチ構築手段を備える、ことを特徴とする。
【００１６】
また、請求項４にかかる発明は、請求項１記載のデータ処理装置において、前記最適機能予測手段は、前記事例データベースに蓄積された前記事例集合のうち前記予測器で用いられるプロトタイプデータと前記画像データとの特徴量ベクトルの距離を計算する距離計算手段と、前記距離計算手段により計算された前記距離が最小となる前記プロトタイプデータに付随するクラス情報に対応する機能を、前記最適な機能として出力する手段と、を備えることを特徴とする。
【００１７】
また、請求項５にかかる発明は、請求項１記載のデータ処理装置において、前記更新手段は、前記事例データベースに蓄積されている前記事例集合の中で、特徴量ベクトルがほぼ同じ値を持ち、かつ、過去と現在での機能が異なる事例データの組を検出する手段と、検出された前記事例データの組について、古い前記事例データを前記事例集合から除外して、新しい前記事例データだけを前記事例集合に取り入れる手段と、を備えることを特徴とする。
【００１８】
また、請求項６にかかる発明は、請求項１記載のデータ処理装置において、前記逐次構築手段は、新しい画像データが入力されるごとに、前記事例集合中の事例データのうち、新しい画像データから計算される画像特徴量に近い特徴量を持つ前記プロトタイプデータだけについて、距離関数のパラメータを更新するパラメータ更新手段を備える、ことを特徴とする。
【００１９】
また、請求項７にかかる発明は、請求項６記載のデータ処理装置において、前記パラメータ更新手段は、前記事例集合中の事例データのうち、新しい画像データに近い画像特徴量を持つ前記プロトタイプデータだけから計算された予測誤差が最小になるように、前記事例データによって決まる重みを更新する、ことを特徴とする。
【００２０】
また、請求項８にかかる発明は、請求項３記載のデータ処理装置において、前記バッチ構築手段は、前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、前記事例集合をできるだけ小さくし、かつ、予測誤差が最小になるように前記プロトタイプデータの重みを最適化する、補完手段を備える、ことを特徴とする。
【００２１】
また、請求項９にかかる発明は、請求項８記載のデータ処理装置において、前記補完手段は、前記新たな事例データを前記事例集合に追加するとともに、現在の前記事例集合から、矛盾するような事例データを削除する手段と、前記新たな事例データの近傍データ群について、前記プロトタイプデータの重みを更新する手段と、を備える、ことを特徴とする。
【００２２】
また、請求項１０にかかる発明は、請求項１記載のデータ処理装置において、前記事例データベースに蓄積された前記事例集合の各事例について重みを計算する重み計算手段と、前記各事例についての重みを用いて前記事例データベース中の前記事例の個数を縮減した事例セットを構築する事例セット構築手段と、を更に備え、前記最適機能予測手段は、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記事例セット構築手段で構築した前記事例セットと前記重み計算手段で求めた重みとを用いて、最適な機能を予測する、ことを特徴とする。
【００２３】
また、請求項１１にかかる発明は、請求項１０記載のデータ処理装置において、前記最適機能予測手段は、前記事例セットに蓄積された各事例について、前記画像データとの特徴量ベクトルの特徴量ベクトルの距離を重みをつけて計算する距離計算手段と、前記距離計算手段により計算された前記距離が最小となる前記事例セットに蓄積されている前記事例を、前記最適な機能として出力する手段と、を備えることを特徴とする。
【００２４】
また、請求項１２にかかる発明は、請求項１記載のデータ処理装置において、前記画像データに対して少なくとも２つ以上の領域抽出方式による領域抽出を実行する領域抽出手段と、前記領域抽出手段による前記各領域抽出方式による領域分割結果に対して順位付けを行って評価する評価手段と、前記特徴量計算手段により計算された前記画像特徴量と、前記評価手段で評価した最良の前記領域抽出方式とを、教師付き特徴量データとして記録する特徴量データ記録手段と、前記教師付き特徴量データを用いることにより、前記画像特徴量から最良の前記領域抽出方式を選択する選択規則を学習する学習手段と、を備え、前記事例データベースを構築する、ことを特徴とする。
【００２５】
また、請求項１３にかかる発明は、請求項１２記載のデータ処理装置において、前記特徴量計算手段は、前記画像データを矩形ブロックに排他的に分割するブロック分割手段と、分割された前記各ブロックを、当該画像データを構成する所定の構成要素に分類するブロック分類手段と、前記ブロックの分類結果に基づいて前記画像データの画像特徴量を計算する計算手段と、を備えることを特徴とする。
【００２６】
また、請求項１４にかかる発明は、請求項１３記載のデータ処理装置において、前記ブロック分類手段は、前記ブロックから複数の異なる解像度の画像を生成する画像生成手段と、前記各解像度の画像から特徴量ベクトルを計算する特徴量ベクトル計算手段と、前記特徴量ベクトルに基づいて前記各ブロックを所定の構成要素に分類する分類手段と、を備えることを特徴とする。
【００２７】
また、請求項１５にかかる発明は、請求項１４記載のデータ処理装置において、前記特徴量ベクトル計算手段は、前記各解像度の画像を２値化する２値化手段と、２値画像の各々の画素について当該画素及びその近傍画素で構成する局所パターンの対応する画素の値を使って特徴を計算する画素特徴計算手段と、前記各画素について計算された特徴を画像全体にわたって加算する加算手段と、を備えることを特徴とする。
【００２８】
また、請求項１６にかかる発明は、請求項１４記載のデータ処理装置において、前記特徴量ベクトル計算手段は、前記各解像度の画像の各々の画素について当該画素及びその近傍画素で構成する局所パターンの対応する画素の値を使って特徴を計算する画素特徴計算手段と、前記各画素について計算された特徴を画像全体にわたって加算する加算手段と、を備えることを特徴とする。
【００２９】
また、請求項１７にかかる発明のプログラムは、コンピュータを、画像データの特性を示す画像特徴量を計算する特徴量計算手段と、ユーザにより選択された機能の入力を受け付ける入力受付手段と、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記特徴量計算手段で計算された前記画像データの前記画像特徴量と、前記入力受付手段を介してユーザにより選択された機能とを含む事例集合を蓄積するデータベースである事例データベースに蓄積された前記事例集合を用いて前記画像データに対する最適な機能を予測する予測器を構築する予測器構築手段と、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記予測器構築手段で構築された前記予測器を用いて最適な機能を予測する最適機能予測手段と、前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、ユーザの目的が変化した新たな事例と、前記予測器構築手段における前記予測器の構築に用いた前記事例集合との和集合をとって、前記事例集合を更新する更新手段と、して機能させ、前記予測器構築手段は、前記更新手段により前記事例集合が更新されるごとに、当該事例集合を用いて前記予測器を再構築する逐次構築手段を備えることを特徴とする。
【００３０】
また、請求項１８にかかる発明のデータ処理方法は、データ処理装置で実行されるデータ処理方法であって、前記データ処理装置は、制御部と記憶部を備え、前記制御部において実行される、特徴量計算手段が、画像データの特性を示す画像特徴量を計算するステップと、入力受付手段が、ユーザにより選択された機能の入力を受け付けるステップと、予測器構築手段が、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記特徴量計算手段で計算された前記画像データの前記画像特徴量と、前記入力受付手段を介してユーザにより選択された機能とを含む事例集合を蓄積するデータベースである事例データベースに蓄積された前記事例集合を用いて前記画像データに対する最適な機能を予測する予測器を構築するステップと、最適機能予測手段が、前記特徴量計算手段で計算された前記画像特徴量を入力とし、前記予測器構築手段で構築された前記予測器を用いて最適な機能を予測するステップと、更新手段が、前記最適機能予測手段により予測された前記最適な機能と、前記入力受付手段で受け付けたユーザにより選択された機能とが異なる場合には、ユーザの目的が変化した新たな事例と、前記予測器構築手段における前記予測器の構築に用いた前記事例集合との和集合をとって、前記事例集合を更新するステップと、を含み、前記予測器構築手段が、前記更新手段により前記事例集合が更新されるごとに、当該事例集合を用いて前記予測器を再構築するステップと、をさらに含む、ことを特徴とする。
【発明の効果】
【００３１】
本発明によれば、画像データに対して、これまでに処理した画像データの画像特徴量とユーザにより選択された画像データの機能とから成る事例集合に基づいて、新しい画像データについての最適な機能を予測してユーザに推奨することにより、各ユーザに固有の分類の仕方に適応が可能になるとともに、ユーザが少ない操作（メニューからの選択や設定）で所望の機能を得ることができるので、ユーザが大量の画像に対して１枚ごとに機能を指定する場合に、各ユーザに固有の分類の仕方を考慮しつつ、ユーザ操作に負担を掛けずに、作業効率の向上を図ることができる、という効果を奏する。
【発明を実施するための最良の形態】
【００３２】
以下に添付図面を参照して、この発明にかかるデータ処理装置、プログラムおよびデータ処理方法の最良な実施の形態を詳細に説明する。
【００３３】
［第１の実施の形態］
本発明の第１の実施の形態を図１ないし図１１に基づいて説明する。図１は、本発明の第１の実施の形態にかかるデータ処理装置１の電気的な接続を示すブロック図である。図１に示すように、データ処理装置１は、ＰＣ（Personal Computer）などのコンピュータであり、データ処理装置１の各部を集中的に制御するＣＰＵ（Central Processing Unit）２、情報を格納するＲＯＭ（Read Only Memory）３及びＲＡＭ（Random Access Memory）４等の一次記憶装置５、データファイル（例えば、カラービットマップ画像データ）を記憶する記憶部であるＨＤＤ（Hard Disk Drive）６等の二次記憶装置７、情報を保管したり外部に情報を配布したり外部から情報を入手するためのＣＤ−ＲＯＭドライブ等のリムーバブルディスク装置８、ネットワーク９を介して外部の他のコンピュータと通信により情報を伝達するためのネットワークインターフェース１０、処理経過や結果等を操作者に表示するＣＲＴ（Cathode Ray Tube）やＬＣＤ（Liquid Crystal Display）等の表示装置１１、並びに操作者がＣＰＵ２に命令や情報等を入力するためのキーボード１２、マウス等のポインティングデバイス１３等から構成されており、これらの各部間で送受信されるデータをバスコントローラ１４が調停して動作する。
【００３４】
なお、本実施の形態においては、データ処理装置１として一般的なパーソナルコンピュータを適用して説明しているが、これに限るものではなく、ＰＤＡ（Personal Digital Assistants）と称される携帯用情報端末、palmTopＰＣ、携帯電話、ＰＨＳ（Personal Handyphone System）等であっても良い。
【００３５】
このようなデータ処理装置１では、ユーザが電源を投入するとＣＰＵ２がＲＯＭ３内のローダーというプログラムを起動させ、ＨＤＤ６よりオペレーティングシステムというコンピュータのハードウェアとソフトウェアとを管理するプログラムをＲＡＭ７に読み込み、このオペレーティングシステムを起動させる。このようなオペレーティングシステムは、ユーザの操作に応じてプログラムを起動したり、情報を読み込んだり、保存を行ったりする。オペレーティングシステムのうち代表的なものとしては、Ｗｉｎｄｏｗｓ（登録商標）、ＵＮＩＸ（登録商標）等が知られている。これらのオペレーティングシステム上で走る動作プログラムをアプリケーションプログラムと呼んでいる。
【００３６】
ここで、データ処理装置１は、アプリケーションプログラムとして、画像処理プログラムをＨＤＤ６に記憶している。この意味で、ＨＤＤ６は、画像処理プログラムを記憶する記憶媒体として機能する。
【００３７】
また、一般的には、データ処理装置１のＨＤＤ６等の二次記憶装置７にインストールされるアプリケーションプログラムは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等の光情報記録メディアやＦＤ等の磁気メディア等の記憶媒体８ａに記録され、この記憶媒体８ａに記録されたアプリケーションプログラムがＨＤＤ６等の二次記憶装置７にインストールされる。このため、ＣＤ−ＲＯＭ等の光情報記録メディアやＦＤ等の磁気メディア等の可搬性を有する記憶媒体８ａも、画像処理プログラムを記憶する記憶媒体となり得る。さらには、画像処理プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、例えばネットワークインターフェース１０を介して外部からダウンロードさせることにより、ＨＤＤ６等の二次記憶装置７にインストールするように構成しても良い。また、本実施の形態のデータ処理装置１で実行される画像処理プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００３８】
データ処理装置１は、オペレーティングシステム上で動作する画像処理プログラムが起動すると、この画像処理プログラムに従い、ＣＰＵ２が各種の演算処理を実行して各部を集中的に制御する。データ処理装置１のＣＰＵ２が実行する各種の演算処理のうち、本実施の形態の特長的な処理である画像処理について以下に説明する。
【００３９】
なお、リアルタイム性が重要視される場合には、処理を高速化する必要がある。そのためには、論理回路（図示せず）を別途設け、論理回路の動作により各種の演算処理を実行するようにするのが望ましい。
【００４０】
ここで、データ処理装置１のＣＰＵ２が実行する画像処理について説明する。図２はデータ処理装置１のＣＰＵ２が実行する画像処理にかかる機能を示す機能ブロック図、図３はその流れを概略的に示すフローチャートである。図２に示すように、データ処理装置１は、画像データ入力部２１と、各画像データについての画像特徴量を計算する特徴量計算手段として機能する画像特徴量計算部２２と、画像特徴量計算部２２の出力とユーザの選択とを組として記録したユーザごとの事例データベース２３と、ユーザとの入出力のための入力受付手段として機能するユーザインタフェース部２４と、予測器を構築する予測器構築手段として機能する予測器構築部２６と、予測器の構築に用いたプロトタイプデータセットを更新する更新手段として機能するプロトタイプデータ更新部２５と、最適機能予測手段として機能する最適機能予測部２７と、を備えている。なお、予測器構築部２６は、逐次構築手段として機能するオンライン学習部２６ａと、バッチ構築手段として機能するバッチ学習部２６ｂとを備えている。この構成の利点として、オンライン学習部２６ａにより、ユーザの作業中でもシステムが賢くなっていく（予測精度が上がっていく）とともに、作業が終了した後の空き時間にバッチ学習部２６ｂを起動することにより、高い予測精度を保つことも可能になる。
【００４１】
また、画像処理の流れは、概略的には、画像データ入力部２１により未知の画像データが入力されると（ステップＳ１０１）、画像特徴量計算部２２で画像データ入力部２１から出力された画像データから画像特徴量を計算し（ステップＳ１０２）、予測器構築部２６で構築された予測器を用いて最適機能予測部２７が最適な機能の予測を行う（ステップＳ１０３）。その後、ユーザインタフェース部２４は、最適機能予測部２７から出力された最適な機能を推奨機能として表示装置１１の画面などに表示することによって、ユーザに提示するとともに、ユーザからの機能の選択入力を受け付ける（ステップＳ１０４）。推奨機能とユーザが選択した機能とが一致する場合には（ステップＳ１０５のＮｏ）、ステップＳ１０１に戻り、次の画像データの入力に待機する。一方、推奨機能とユーザが選択した機能とが異なる場合には（ステップＳ１０５のＹｅｓ）、ユーザの目的が変化して予測が誤ったとして、プロトタイプデータ更新部２５はプロトタイプデータセットを更新し（ステップＳ１０６）、予測器構築部２６（オンライン学習部２６ａ）は、事例データベース２３を用いて予測器を再構築する（ステップＳ１０７）。そして、作業が終了したと判断した場合には（ステップＳ１０８のＹｅｓ）、予測器構築部２６（バッチ学習部２６ｂ）は、オンライン学習により得られたプロトタイプデータセットを用いて予測器を再構築する（ステップＳ１０９）。
【００４２】
以下において、各構成部の動作と作用を詳述する。
【００４３】
画像データ入力部２１は、入力された画像データがスキャンされた文書画像データであれば、文書の傾きを補正する「スキュー補正」を文書画像データに施したりするなどの前処理を施す。
【００４４】
画像特徴量計算部２２は、画像データ入力部２１から出力された文書画像データを入力とし、コンテンツをあらわす画像特徴量を、事例データベース２３と最適機能予測部２７に出力するものである。
【００４５】
画像特徴量は、「Bag-Of-Words」、すなわち、文書中に出現する単語の頻度を並べたベクトルや、特許第３２５３３５６号公報、特許第３２１５１６３号公報などに開示されているような文書画像の特徴量を並べたベクトルを組み合わせて構成することができる。ここでは、一例として、文書のレイアウト特徴を表す連続特徴量ベクトルを計算する方法を示す。
【００４６】
図４は、画像特徴量計算部２２における画像特徴量計算処理の流れを概略的に示すフローチャートである。図４に示すように、まず、入力した画像を同じ大きさの矩形ブロックに排他的に分割し（ステップＳ１）、各ブロックを、“絵”“文字”“他”の３種類のいずれかに分類する（ステップＳ２）。次に、すべてのブロックの分類結果をもとに画像全体の画像特徴量を計算する（ステップＳ３）。最後に、画像全体の画像特徴量を出力する（ステップＳ４）。以下において、各ステップの動作を説明する。
【００４７】
（１）ブロック分割（ステップＳ１）
入力画像を同じサイズのブロック、たとえば、１ｃｍ×１ｃｍ（解像度が２００ｄｐｉであれば８０画素×８０画素、解像度が３００ｄｐｉであれば１２０画素×高さ１２０画素）の矩形に分割する。
【００４８】
（２）ブロックの分類（ステップＳ２）
各ブロックを、“絵”“文字”“他”の３種類のいずれかに分類する。この処理のフローを図５に示し、以下において詳述する。
【００４９】
図５に示すように、まず、処理対象となるブロック画像を１００ｄｐｉ程度の低解像度に縮小した画像Ｉを生成するとともに（ステップＳ１１）、解像度のレベル数Ｌを設定し（ステップＳ１２）、解像度縮小レベルｋを初期化（ｋ←０）する（ステップＳ１３）。このようなステップＳ１１〜Ｓ１３の処理を行うのは、図６に示すように、画像Ｉとともに、さらに低解像度化した画像からも特徴を抽出するためである。詳細は後述するが、例えば、解像度レベル数Ｌを２にした場合には、画像Ｉと、解像度が１／２の画像Ｉ１と、解像度が１／４の画像の画像Ｉ２との計３つの画像から特徴を抽出する。
【００５０】
解像度縮小レベルｋが解像度レベル数Ｌに達していない場合には（ステップＳ１４のＹｅｓ）、ステップＳ１１で生成した画像Ｉから解像度を１／２ｋに縮小した画像Ｉｋ（ｋ＝０，・・・，Ｌ）を生成し（ステップＳ１５）、画像Ｉｋを２値化する（ステップＳ１６：２値化手段）。ただし、２値画像において、黒画素は値１、白画素は値０をとるとする。
【００５１】
次いで、２値化した解像度が１／２ｋの画像Ｉｋから、Ｍ次元の特徴量ベクトルｆｋを計算した後（ステップＳ１７）、解像度縮小レベルｋを“１”だけインクリメント（ｋ←ｋ＋１）する（ステップＳ１８）。
【００５２】
ここで、画像Ｉｋ（ｋ＝０，・・・，Ｌ）を２値化した画像から特徴を抽出する方法を述べる。自己相関関数を高次（Ｎ次）へと拡張した「高次自己相関関数（Ｎ次自己相関関数）」は、画面内の対象画像をＩ（ｒ）とすると、変位方向（Ｓ１，Ｓ２，…，ＳＮ）に対して、
【数１】
0005113653.tif 000002
で定義される。ただし、和Σは画像全体の画素rについての加算である。従って、高次自己相関関数は、次数や変位方向（Ｓ１，Ｓ２，…，ＳＮ）の取り方により、無数に考えられる。ここでは、簡単のため高次自己相関係数の次数Ｎを“２”までとする。また、変位方向を参照画素ｒの周りの局所的な３×３画素の領域に限定する。平行移動により等価な特徴を除くと、２値画像に対して、図７に示すように特徴の数は全部で２５個になる。各特徴の計算は、局所パターンの対応する画素の値の積を全画像に対して足し合わせればよい。例えば、「Ｎｏ．３」の局所パターンに対応する特徴は、参照画素ｒでの濃淡値とそのすぐ右隣の点での濃淡値との全画像に対する積和を取ることによって計算される。このようにして、解像度が１／２ｋの画像から、Ｍ＝２５次元の特徴量ベクトルｆｋ＝（ｇ（ｋ，１），・・・，ｇ（ｋ，２５））が計算される。
【００５３】
上述したようなステップＳ１５〜Ｓ１８の処理は、ステップＳ１８でインクリメントされた解像度縮小レベルｋが解像度レベル数Ｌを超える迄（ステップＳ１４のＮｏ）、繰り返される。
【００５４】
ステップＳ１８でインクリメントされた解像度縮小レベルｋが解像度レベル数Ｌを超えた場合には（ステップＳ１４のＮｏ）、特徴量ベクトルｆ０，・・・，ｆLをもとにして、ブロックを、“絵”“文字”“他”の３種類のいずれかに分類する（ステップＳ１９：分類手段）。
【００５５】
ここで、ブロックの分類の方法について詳述する。まず、前述したＭ＝２５次元の特徴量ベクトルｆｋ＝（ｇ（ｋ，１），・・・，ｇ（ｋ，２５））（ｋ＝０，・・・，Ｌ）から（２５×Ｌ）次元の特徴量ベクトルｘ＝（ｇ（０，１），・・・，ｇ（０，２５），・・・，ｇ（Ｌ，１），・・・，ｇ（Ｌ，２５））を生成する。このようなブロックの特徴量ベクトルｘを用いて分類を行うためには、前もって学習を行うことが必要である。そこで、本実施の形態においては、学習用データを文字だけ含むようなものと文字を含まないようなものの２種類に分けて特徴量ベクトルｘを計算する。その後、それぞれの平均をとることによって、文字画素の特徴量ベクトルｐ０と非文字画素の特徴量ベクトルｐ１を前もって計算しておく。そして、分類しようとしているブロック画像から得られた特徴量ベクトルｘを、既知の特徴量ベクトルｐ０とｐ１の線形結合に分解すれば、その結合係数ａ０，ａ１が文字画素と非文字画素の比率、あるいは、ブロックの「文字らしさ」と「非文字らしさ」を表すことになる。このような分解が可能であるのは、高次局所自己相関に基づく特徴が画面内の対象の位置に不変で、しかも、対象の数に関して加法性を持つことによる。特徴量ベクトルｘの分解を、
ｘ＝ａ０・ｐ０ ＋ａ０・ｐ１ ＝ＦＴａ＋ｅ
とする。ここで、ｅは誤差ベクトル、Ｆ＝［ｐ0，ｐ1］Ｔ、ａ＝（ａ０，ａ１）Ｔである。最小二乗法により、最適な結合係数ベクトルａは、
ａ＝（ＦＦＴ）−１・Ｆｘ
で与えられる。各ブロックについて、「非文字らしさ」を表すパラメータａ１について閾値処理することにより、そのブロックを「絵」、「絵でない」、「未定」に分類する。各ブロックについて、「未定」または「絵でない」に分類されていて、文字らしさを表すパラメータａ０が閾値以上であれば「文字」に、そうでなければ「その他」に分類する。図８にブロック分類の例を示す。図８の例においては、黒部分は「文字」、グレイ部分は「絵」、白部分は「他」を表わしている。
【００５６】
（３）画像特徴量の計算（ステップＳ３）
ブロックの分類結果をもとにして、画像のタイプ分けのための画像特徴量を計算する。特に、
・文字、絵の割合
・密集率：レイアウトの混み方（狭いところに詰め込まれている度合い）
・文字、絵の散乱度：文字や写真が紙面全体に散らばって分布している度合い
を計算する。例えば、次の５つの画像特徴量を計算する。
・文字の割合Ｒｔ∈［０，１］：全ブロックの中で「文字」に分類されたブロックの割合
・非文字の割合Ｒｐ∈［０，１］：全ブロックの中で「絵」に分類されたブロックの割合
・レイアウト密度Ｄ∈［０，１］：「文字」と「絵」のブロック数の面積の和を、描画領域の面積で割ったもの
・文字散乱度Ｓｔ（＞０）：文字ブロックのｘ，ｙ方向の空間的分布について、分散・共分散行列の行列式を、画像の面積で正規化したもの
・非文字散乱度Ｓｐ（＞０）：絵ブロックのｘ，ｙ方向の空間的分布について、分散・共分散行列の行列式を、画像の面積で正規化したもの
【００５７】
なお、これらの他に、文字ブロックと絵ブロックのｘ，ｙ方向の空間的分布についての高次モーメント、あるいは、画像全体で高次自己相関関数に基づいて計算した（２５×Ｌ）次元特徴から得られる「文字らしさ」と「非文字らしさ」などの特徴を計算しても良い。
【００５８】
表１は、図８の例についての画像特徴量の計算結果を示すものである。
【表１】
0005113653.tif 000003
【００５９】
なお、画像特徴量としては、上述したようなレイアウト統計（画像中の文字と絵が占める割合、文字と絵の散乱度、レイアウト密度）のほかに、色や輝度の分布から得られる統計量、あるいは、エッジ強度の分布から得られる統計量、さらに、「Bag-Of-Words」、すなわち、文書中に出現する単語の頻度を並べたベクトルなどを加えて用いることができる。
【００６０】
事例データベース２３は、画像特徴量計算部２２から出力された画像特徴量と、後述するユーザインタフェース部２４から出力されたユーザの選択を入力とし、下記に示す学習用データである事例集合Ｈとして蓄積するデータベースである。
Ｈ＝｛（ｘ（１），α（ｉ）），（ｘ（２），α（２）），．．．｝
ｘ（ｋ）：ｋ番目の画像から抽出された画像特徴量 
α（ｋ）：その画像に適した機能（アルゴリズムや処理パラメータ）
【００６１】
予測器構築部２６は、事例データベース２３に蓄積された事例集合を用いて予測器を構築する。
【００６２】
ここで問題となるのは、画像コンテンツを表現する特徴量集合Ｆと機能（アルゴリズムやパラメータ）の集合Ａと事例集合Ｈとが与えられているとき、ユーザ集合Ｕの要素ｕ∈Ｕと与えられた未知の画像データとについて、観測された特徴量ベクトルｘから、分類カテゴリα∈ＡのふさわしさｆＨ（α，ｘ，ｕ）を表す関数ｆを事例集合Ｈから構築することである。
ｆＨ：Ａ×ＲＮ×Ｕ → Ｒ（Ｒは実数）
ただし、異なるアルゴリズム集合Ａごとに異なる関数ｆを構築する。
【００６３】
なお、画像コンテンツを表現する特徴量集合Ｆの例としては、
・レイアウト統計：画像中の文字と絵が占める割合、文字と絵の散乱度、レイアウト密度
・文字や絵の空間分布
・地肌色
・色やエッジの分布
などが挙げられる。
【００６４】
また、アルゴリズムやパラメータの集合Ａとしては、次のような種類が考えられる。
（１）地肌色補正処理
特開２００４−３２０７０１号公報や特開２００５−１１０１８４号公報に開示されているような地肌除去、あるいは、地肌クリーニングを適用するか、あるいは、何もしない。
Ａ ＝ ｛地肌除去、地肌クリーニング、何もしない｝
（２）空間フィルタ処理
処理対象画像の全面に平滑化処理、あるいは、エッジ強調処理をかける、あるいは、特開２００３−２８１５２６号公報に開示されているような、画素ごとに異なる処理（適応的フィルタリング）をかける、あるいは、何もしない。
Ａ ＝ ｛平滑化処理、エッジ強調処理、適応的フィルタリング、何もしない｝
（３）解像度拡大処理
特開２００５−０６３０５５号公報に開示されているような文字の解像度を拡大するような処理をかける、あるいは、通常の画像補間を行う、あるいは、何もしない。
Ａ ＝ ｛文字解像度拡大、画像補間、なにもしない｝
【００６５】
すなわち、「地肌色補正処理」のアルゴリズム集合Ａについての関数ｆと、「空間フィルタ処理」のアルゴリズム集合Ａについての関数ｆとは、別個に構築されることになる。
【００６６】
ここに、つぎのような技術的課題がある。ベイズ識別の枠組みで考えると、ユーザｕ、画像特徴量ｘ、分類カテゴリαについて、ｆＨ（α，ｘ，ｕ）は、下記に示すような確率を求める問題として定式化できる。
ｐ（α｜ｕ，ｘ）＝ｐ（α｜ｕ）・ｐ（ｘ｜α，ｕ）／ｐ（ｘ｜ｕ）
＝ｐ（α｜ｕ）・ｐ（ｘ｜α，ｕ）／Σα ｐ（α｜ｕ）・ｐ（ｘ｜α，ｕ）
【００６７】
ここで、ｐ（ｘ｜ｕ）は画像に関する正規化ファクタなので、複数の処理（α）の優先順位を求める際には無視してもよい。したがって、
ｆＨ（α，ｘ，ｕ）＝ｐ（α｜ｕ）・ｐ（ｘ｜α，ｕ）
とすれば良いことになる。ｐ（α｜ｕ）は、履歴から容易に求めることができる。具体的には、処理αについて、ユーザごとにその処理を使った回数を記録すればよい。ユーザｕが処理αを適用した画像についての特徴量の分布ｐ（ｘ｜α，ｕ）が「履歴・事例」である。
【００６８】
ところが、ｆＨ（α，ｘ，ｕ）を表す関数ｆを事例集合Ｈから構築する際には、次のような状況を考慮する必要がある。
（１）事例集合Ｈは個々のユーザと目的の両方に依存する。したがって、実験室での学習は不可能であり、オンサイトでのオンライン学習が必要になる。
（２）学習に利用できる事例・履歴データは、比較的少ない（数十から百）ことを想定しなければならない。これは、オンサイトでは、ユーザの嗜好やタスクをできるだけ少ないデータから読み取り、即座に適応することが必要なことに起因する条件である。
（３）特徴空間Ｆは多次元（２０程度）である。予測に適した特徴だけを選択し、撹乱要因を取り除くための「特徴選択」機構、あるいは、各特徴次元への重み付けが必要である。また、同じアルゴリズム集合Ａでも、個々のアルゴリズムαによって、予測に適した特徴部分集合が違う。
（４）画像特徴量ｘが連続量であり、かつ、多次元、さらに、データの数が少ない場合に、確率分布ｐ（ｘ｜α，ｕ）を求めるのは現実的に難しい。「次元の呪い」の問題によって、ノンパラメトリックなＰａｒｚｅｎ窓法や、混合ガウス分布を仮定したＥＭ法などを使って確率分布ｐ（ｘ｜α，ｕ）を推定することは難しい。
【００６９】
そこで、上述した４つの課題を解消するのに適した、予測器の学習機構について述べる。まず、オンサイトでの学習に適しており、確率分布関数の形を仮定しない識別方法として、最近傍法がある。最近傍法は、現在処理しているものと最も似ている過去の事例を使った予測方式であり、類似データが増えるほど予測精度が向上する。また、ガウス分布などの確率分布の推定を必要としない識別方法である。さらに、学習データが少なく、特徴が多次元である問題については、最近傍法における距離尺度に対して各特徴次元の予測に対する貢献度に応じて重み付けしたり、あるいは、学習データ（事例集合Ｈ）ごとの重要度に応じて重み付けしたりすることによって、データ数と次元数の間のジレンマを解消する。
【００７０】
本実施の形態の予測器構築部２６は、その具体的方法として、「重みつき距離の学習を取り入れた最近傍法」を用いて予測器を構築する。その詳細は、「R. Paredes & E. Vidal, "Learning weighted metrics to minimize nearest-neighbor classification error," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 28, no. 7, pp. 1100-1110, July 2006」に記述されているが、ここではその概要を述べる。以下、学習データ（事例集合Ｈ）のうち、予測器の構築に用いたデータを「プロトタイプデータ」、あるいは、「プロトタイプ点」と呼ぶ。
【００７１】
基本的に最近傍法に基づく方法であるが、プロトタイプ点と予測対象点との距離計算の際に、単純なユークリッド距離ではなく、プロトタイプ点の重要度と各特徴次元の重要度とに応じて、重みを付けた距離を計算する。
【００７２】
ｘｉ＝（ｘｉ１，・・・，ｘｉｄ）をi番目のプロトタイプ点、ｃをそのクラス、ｙ＝（ｙ１，・・・，ｙｄ）を識別対象の任意の点としたとき、ｉ番目のプロトタイプ点についての重みＶｉとクラスｃについて、ｊ番目の特徴次元の重みＷｃｊにより、ｘｉとｙの距離の２乗（Δ）は、
【数２】
0005113653.tif 000004
で定義される。パラメータの数は、特徴次元数ｄ、データ数Ｎ、クラス数Ｃに対して、プロトタイプの重みでＮ個、それに、クラスごとに決める各次元の重みでＣｄ個であり、合わせてＮ＋Ｃｄである。ここで、「クラス」とは、分類カテゴリ集合Ａの要素、すなわち、適用するアルゴリズムや処理パラメータのインデックスのことを言い、各プロトタイプ点Ｘｉには、ユーザが適用したクラス情報が付随しているものとする。
【００７３】
重みＶｉと重みＷｃｊとは、データから自動的に学習される。学習の基準は、Leave-One-Outで評価した誤り率を最小にすることである。そうすると、重みは、以下に示すような基準で、最急降下法により学習される。
（１）そのプロトタイプ点と同じクラスの点がまばらに分布していて、その点がなくなることによって識別結果が変わるような場合には、その点が影響を及ぼす範囲がより広くなるように、重みＶｉはより大きな値をとる（重要度が高いプロトタイプ点）。
（２）そのプロトタイプ点と同じクラスの点が密集していて、そのプロトタイプ点の存在が識別結果に影響を与える度合いが低い場合には、重みＶｉはより小さな値をとるような学習を行う（重要度が低いプロトタイプ点）。
（３）クラスｃについて、ｊ番目の特徴次元が予測に及ぼす影響がより大きければ、重みＷｃｊはより大きい値をとる。
（４）クラスｃについて、ｊ番目の特徴次元が予測を撹乱するような要因であれば、重みＷｃｊは０に近い値になる。
【００７４】
なお、Leave-One-Outとは、つぎのような方法である。識別器の予測誤り率、あるいは、一般化性能を推定する方法の１つが「交差検証（Cross Validation）」である。一般に、「ｍ重交差検証法」では、
（１）学習データをｍ個の部分集合に無作為に分割する。
（２）評価用に１個の部分集合を残し，他の（ｍ−１）個の部分集合に含まれるデータをすべて使って、識別器を構築する。評価用の部分集合で誤り率を求める。
（３）評価用の部分集合の選び方はｍ通りあるので、これらの誤り率の平均により、未知データに対する誤り率を予測する。
【００７５】
ここで、ｍを学習データの個数と同じにした場合、すなわち、評価用の部分集合が１個のデータからなるような場合を、「１点除外法（Leave-One-Out）」を呼ぶ。
【００７６】
最適機能予測部２７は、画像特徴量計算部２２から出力された画像特徴量ベクトルを入力とし、予測器構築部２６で計算された予測器を用いて、最適なアルゴリズムや処理パラメータを求める。すなわち、ｉ番目のプロトタイプ点Ｘｉ（ただし、そのクラスラベルはＣ）と、現在処理している画像から計算された特徴量ベクトルＹとの距離の２乗（Δ）を、予測器構築部で計算した重み、すなわち、ｉ番目のプロトタイプ点についての重みＶｉと，クラスｃについて、ｊ番目の特徴次元の重みＷｃｊを用いて、式１のように計算する。距離を最小にするプロトタイプ点を見つけ、そのクラスラベルを、推奨アルゴリズム、あるいは、推奨パラメータとして、ユーザインタフェース部２４に出力する。
【００７７】
また、ユーザインタフェース部２４は、最適機能予測部２７から出力された推奨アルゴリズム、あるいは、推奨パラメータを表示装置１１などに表示することによって、ユーザに提示する。ユーザは、推奨が気に入ったか、あるいは、気に入らないかを、キーボード１２やポインティングデバイス１３などを使って入力することができる。もし、推奨が気に入らないときには、ユーザは、キーボード１２やポインティングデバイス１３などを使って、処理やパラメータを入力し直すことができる。ユーザの応答結果は、事例データベース２３とプロトタイプデータ更新部２５に出力される。
【００７８】
ところで、本実施の形態の目的は、動的に変わるユーザの利用目的に即座に適応して、ユーザが所望する処理を予測・推奨することにより、仕事の能率を向上させることである。その実現のためには、新しい事例が来るたびに、最新の状況に合わせて予測機構を更新する機構（オンライン学習）が必要である。既存の予測機構では、その更新（学習）にある程度の時間がかかるため、一連の作業終了後にであってシステムが空いている時間に、予測機構を更新（バッチ学習）するようにしていた。
【００７９】
そこで、本実施の形態の予測器構築部２６においては、「状況に応じて動的に変わる利用目的への適応」を実現するためのコア技術として、オンライン学習部２６ａと、バッチ学習部２６ｂとを備えている。下記の表２に示すように、「バッチ学習」と「オンライン学習」は、長所と短所が相補的である。通常の学習機構は「バッチ学習」であり、その欠点を補うために「オンライン学習」が必要である。
【表２】
0005113653.tif 000005
【００８０】
ここで、オンライン学習のアルゴリズムについて説明する。オンライン学習は、入ってきた新しいデータ（１個）についての予測が誤る度に起動される。学習には、その新しく入ってきたデータと、その近傍のプロトタイプデータのみが用いられる。アルゴリズムの入出力は次の通りである。
・入力：現在の予測器の構築に用いたプロトタイプデータセットＴ０（Ｔ０＝（ｘｉ，ｙｉ）：ｘｉは特徴量ベクトル、ｙｉは選択事例）、現在の予測器で現在の予測器で使われている距離の重みＰ０、新しく入ってきた事例データ（ｘ０，ｙ０）
・出力：更新されたプロトタイプデータＴ０、更新された距離の重みＰ０
【００８１】
以下、距離の計算は、現在の予測器で使われている距離の重みＰ０を用いて、上述した式１のように行う。
【００８２】
オンライン学習のアルゴリズムは、プロトタイプデータ更新部２５によるプロトタイプデータセットの更新と、予測器構築部２６のオンライン学習部２６ａによる予測器の構築および更新との２つのステップから構成されている。
【００８３】
まず、予測器で用いるプロトタイプデータセットＴ０の更新について説明する。
【００８４】
プロトタイプデータ更新部２５は、基本的に、新しく入ってきた事例データ（ｘ０，ｙ０）と、従来のプロトタイプデータセットＴ０との和集合をとって、予測器の構築に用いたプロトタイプデータセットＴ０を更新する。ただし、新しいデータｘ０とほぼ同じであるが、選択事例が違うような「異なる利用目的を表すデータ」がＴ０にあれば、そのようなデータをＴ０から除外する。その方法は次のようなものである。
（１）新しいデータｘ０について、Ｔ０の要素で、最も近いデータを（ｘ’，ｙ’）とする。ここでは、新しいデータｘ０についての予測が誤っているので、ｙ０≠ｙ’である。
【数３】
0005113653.tif 000006
（２）ｘ’について、Ｔ０−｛（ｘ’，ｙ’）}の要素で、最も近いデータ（ｘ“，ｙ”）を見つける。
【数４】
0005113653.tif 000007
（３）もし、ｘ０とｘ’が互いに最近傍、すなわち、
【数５】
0005113653.tif 000008
であれば、
Ｔ０ ← Ｔ０ ∪ ｛（ｘ０，ｙ０）｝−｛（ｘ’，ｙ’）}
と更新する。そうでなければ、
Ｔ０ ← Ｔ０ ∪ ｛（ｘ０，ｙ０）｝
と更新する。
【００８５】
ここで、図９は古いプロトタイプデータｘ’が除去される場合、図１０は古いプロトタイプデータｘ’が保持される場合を示している。図９および図１０においては、古いプロトタイプデータｘ’を中心とし、ｘ０を通るような超楕円球面を考える。
【００８６】
図９に示すように、超楕円球内に他のデータが存在しなれば、データｘ’はプロトタイプデータから除外される。一方、図１０に示すように、内部に他のデータが存在するならば、データｘ’はプロトタイプデータとして残る。
【００８７】
図９および図１０で示したように、式１のような重みつき距離のため、一般には、あるデータから等距離にある点は特徴次元の重みにより超楕円球面を構成し、そのデータが属するクラスによって超楕円球面の形も異なる。また、プロトタイプ点によって、スケール因子も異なる。
【００８８】
次に、予測器構築部２６のオンライン学習部２６ａによる予測器の構築および更新について説明する。具体的には、新しいデータ（ｘ０，ｙ０）の近傍データ群Ｎ（ｘ０）の抽出と、プロトタイプデータの重み更新について説明する。
【００８９】
まず、プロトタイプデータセットＴ０のデータから、ｘ０の近いデータ群を抽出する。これには、近傍データ群の個数ｎｅ（たとえば、２０）を決めて、プロトタイプデータセットＴ０の各要素ｚについてΔ（ｘ０，ｚ）を計算し、その昇順にｎｅ個を選べばよい。近傍データ群Ｎ（ｘ０）は、プロトタイプデータセットＴ０から選ばれたｎｅ個と、新しいｘ０から成る集合である。
【００９０】
データ群Ｎ（ｘ０）について、プロトタイプデータの重みＶｉのみを更新する。特徴次元の重みＷｃｊの計算には，そのクラスｃに属するすべてのプロトタイプデータが必要であるので、現在の予測器で使われている重みＷｃｊを変えることはしない。また、新しいデータｘ０について、重みの初期値は１に設定する。
【００９１】
なお、オンライン学習の間に、プロトタイプデータの重みが更新されるので、同じデータｘ０でも、オンライン学習部２６ａによるステップで求められる近傍データ群Ｎ（ｘ０）がその度ごとに異なる可能性がある。したがって、プロトタイプデータ更新部２５によるステップでも、その度ごとに異なるプロトタイプデータが削除される可能性があることに注意する。
【００９２】
学習方法は、上述したように、現在のプロトタイプデータの重みＶｉの値を初期値として、Leave-one-outで評価した誤り率が極小値になるまで、最急降下法による反復計算を行う。しかし、学習に用いるデータが少なく、計算するパラメータもプロトタイプデータの重みだけであるので、計算時間ははるかに短く、たとえばｎｅが２０程度であれば、計算時間は、ユーザが気づかない、あるいは、作業の妨げにならない程度で済む。
【００９３】
続いて、オンライン学習部２６ａによるオンライン学習後に適用するバッチ学習部２６ｂによるバッチ学習の構成について述べる。バッチ学習が必要になるのは、次の２つの理由による。
（１）特徴次元の重みの変化
オンライン学習中に、目的の変化に適応して、プロトタイプデータの追加・削除が行われると同時に、各クラス（ｃ）について各特徴次元の予測に対する重要度が変わる。したがって、オンライン学習後に、プロトタイプデータ全体から、バッチ学習によって、特徴次元（ｊ）に関する重みパラメータＷｃｊを再計算する必要がある。オンライン学習では、新しいデータとその近傍の局所的処理であるので、各クラスについての特徴次元の重みは計算できない。ただし、プロトタイプの重みは、互いに影響を及ぼしあうような近傍内での局所的計算が可能である。
（２）局所的・一時的な処理により構成されるプロトタイプデータの不完全性
オンライン学習中に行われるプロトタイプデータの追加・削除は、局所的・一時的な判断基準によって行われる。したがって、プロトタイプデータの追加・削除によって、これまでは正しく予測できた事例を誤るようになるという副作用が生じる可能性がある。オンライン学習によって得られたプロトタイプデータセットを補完するために、プロトタイプデータに含まれていない事例を追加する、あるいは、含まれている事例を削除する必要がある。これには、最近の事例データ全体を用いて予測器に用いるプロトタイプデータを調整するという、バッチ処理が必要になる。
【００９４】
次に、バッチ学習の手順について説明する。バッチ学習は、上述した２つの課題に対応した処理から成る。図１１にバッチ学習の手順を示す。
【００９５】
図１１に示すように、まず、プロトタイプデータセットから、各プロトタイプと各特徴次元の重みを計算する（ステップＳ２０１）。
【００９６】
次いで、最近の事例データ全体から事例（ｘ０，ｙ０）を一つずつ選択し（ステップＳ２０２）、最新の予測器を用いて最適機能を予測する（ステップＳ２０３）。具体的には、「オンライン学習」で構成されたプロトタイプデータセットから、「最近傍法の重み付き距離」における特徴次元とプロトタイプの重みを学習し、予測器を構築する。上述したように、現在のＶｉ，Ｗｃｊの値を初期値として、Leave-one-outで評価した誤り率が極小値になるまで、最急降下法による反復計算を行う。なお、最急降下法による反復計算のため、学習係数の調整が難しく、初期値や学習係数の設定によっては異なる局所最適解に陥るため、以下に示すような方法で初期値と学習係数を決めている。
・プロトタイプ点の重みＶｉは、すべて１に初期化する。
・クラスｃのｊ番目の次元の重みＷｃｊは次のように設定する。すべて１．０に設定した場合（通常のユークリッド距離）の誤り率と、Ｗｃｊをｊ番目の特徴量の分布の標準偏差の逆数に設定した場合（Mahalanobis距離）の誤り率を計算してみて、誤り率が小さい方に初期値を設定する。
・学習係数については、いくつかの値に設定した場合の誤り率について、反復回数を制限して計算した結果を比較してみる。その中でもっとも誤り率が小さいものを採用し、今度は重みＶｉとＷｃｊが収束するまで反復計算する。
【００９７】
続くステップＳ２０４では、ステップＳ２０３における最新の予測器を用いて予測した最適機能と、実際のユーザ選択とを比べる。
【００９８】
予測した最適機能と、実際のユーザ選択とが異ならない場合には（ステップＳ２０４のＮｏ）、ステップＳ２０２に戻り、次の事例（ｘ０，ｙ０）を選択する。
【００９９】
一方、予測した最適機能と、実際のユーザ選択とが異なる場合には（ステップＳ２０４のＹｅｓ）、以降の処理においてプロトタイプデータの補完処理を行なう。プロトタイプデータセットをできるだけ小さくし、かつ、予測精度が高くなるようにプロトタイプ重みを最適化する。これには、オンライン学習でも行ったような、プロトタイプデータの追加・除去と、プロトタイプ重みの更新を反復する。
【０１００】
まず、ステップＳ２０５では、プロトタイプデータのセットの更新処理を実行する。詳細には、その事例（ｘ０，ｙ０）をプロトタイプデータセットに追加するとともに、現在のプロトタイプデータセットから、矛盾するようなデータを削除する。方法は、前述したプロトタイプデータ更新部２５によるプロトタイプデータセットの更新と同じである。
【０１０１】
続くステップＳ２０６では、ｘ０の近傍データについて、プロトタイプ重みの更新処理を実行する。詳細には予測器構築部２６のオンライン学習部２６ａと同様に、事例データ（ｘ０，ｙ０）の近傍データ群Ｎ（ｘ０）を抽出し、Ｎ（ｘ０）について、プロトタイプデータの重みを更新する。プロトタイプデータの重みが毎回更新されるので、式１で計算される距離において、各データのスケール因子がその度ごとに変化する。同じデータｘ０でも、近傍データ群Ｎ（ｘ０）がその度ごとに異なる可能性がある。したがって、ステップＳ２０５でも、異なるプロトタイプデータが削除される可能性があることに注意する。
【０１０２】
以上説明したようなステップＳ２０３〜Ｓ２０６の処理は、終了条件を満たすまで（ステップＳ２０４のＹｅｓ）、繰り返される。
【０１０３】
なお、ステップＳ２０２における事例の選択は、時系列順、あるいは、ランダムに行う。また、終了条件としては、事例データ全体を数回巡回するまで、あるいは、誤り率がある閾値以下になるまで、などとすれば良い。例えば、事象選択はランダムで、終了条件は３回巡回するまでとする。
【０１０４】
このように本実施の形態によれば、個々のユーザの「目的」に依存する処理を画像に対して施す際に、これまでに処理した画像の画像特徴量とそのユーザが適用した機能（アルゴリズムや処理パラメータ）に基づいて、様々な画像に最適な機能を予測する関数を自動的に学習し、今処理している画像に最適な機能を予測してユーザに推奨することにより、ユーザが少ない操作（メニューからの選択やパラメータ設定）で所望の画像を得ることができるので、個々のユーザの「目的」に依存する処理を大量の画像に対して施す場合に、個々のユーザの「目的」を考慮しつつ、ユーザ操作に負担を掛けずに、作業効率の向上を図ることができる。また、事例集合が更新されるごとに、当該事例集合を用いて予測器を再構築することにより、ユーザの作業中に最新の状況を予測器に反映させるようにしたので、ユーザの目的の変化に応じて予測の仕方を自動的に更新することができる。
【０１０５】
また、オンライン学習により、ユーザの作業中でもシステムが賢くなって行くとともに、作業が終了した後の空き時間にバッチ学習を起動することにより、高い予測精度を保つことができる。
【０１０６】
［第２の実施の形態］
次に、本発明の第２の実施の形態を図１２ないし図１５に基づいて説明する。なお、前述した第１の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【０１０７】
図１２は本発明の第２の実施の形態にかかるデータ処理装置１のＣＰＵ２が実行する画像処理にかかる機能を示す機能ブロック図、図１３はその流れを概略的に示すフローチャートである。
【０１０８】
図１２に示すように、データ処理装置１は、画像データ入力部１２１と、各画像データについての画像特徴量を計算する特徴量計算手段として機能する画像特徴量１２２と、事例（アルゴリズムや処理パラメータ）を格納する事例データベース１２３と、事例データベース１２３に格納されている各事例の重みを計算する重み計算手段として機能する重み計算部１２４と、プロトタイプ集約（Prototype Condensing）を実行して、プロトタイプ事例セットを構築する事例セット構築手段として機能するプロトタイプ事例セット構築部１２５と、最適機能予測手段として機能する最適機能予測部１２６と、ユーザとの入出力のための入力受付手段として機能するユーザインタフェース部１２７と、を備えている。
【０１０９】
また、画像処理の流れは、概略的には、画像データ入力部１２１により未知の画像データが入力されると（ステップＳ４０１）、画像特徴量計算部２２で画像データ入力部１２１から出力された画像データから画像特徴量を計算し（ステップＳ４０２）、重み計算部１２４で計算された重みとプロトタイプ事例セット構築部１２５で構築されたプロトタイプ事例セットとを用いて最適機能予測部１２６が最適な機能の予測を行う（ステップＳ４０３）。
【０１１０】
その後、ユーザインタフェース部１２７は、最適機能予測部１２６から出力された最適な機能を推奨機能として表示装置１１の画面などに表示することによって、ユーザに提示するとともに、ユーザからの機能の選択入力を受け付ける（ステップＳ４０４）。
【０１１１】
また、画像特徴量計算部１２２で計算された画像特徴量と、ユーザインタフェース部１２７で受け付けたユーザ選択結果とを、事例データベース１２３に追加する（ステップＳ４０５）。
【０１１２】
上述したステップＳ４０１〜Ｓ４０５の処理は、処理する画像データが無くなったと判断されるまで（ステップＳ４０６のＹｅｓ）、繰り返される。
【０１１３】
処理する画像データが無くなったと判断された場合には（ステップＳ４０６のＹｅｓ）、重み計算部１２４で各事例の重みを計算し（ステップＳ４０７）、プロトタイプ事例セット構築部１２５でプロトタイプ事例セットを構築し（ステップＳ４０８）、集約事例データと重みを出力する（ステップＳ４０９）。
【０１１４】
以下において、各構成部の動作と作用を詳述する。
【０１１５】
画像データ入力部１２１は、入力された画像データがスキャンされた文書画像データであれば、文書の傾きを補正する「スキュー補正」を文書画像データに施したりするなどの前処理を施す。
【０１１６】
画像特徴量計算部１２２は、画像データ入力部１２１から出力された文書画像データを入力とし、文書コンテンツをあらわす特徴量を、事例データベース１２３と最適機能予測部１２６に出力するものである。
【０１１７】
画像特徴量は、「Bag-Of-Words」、すなわち、文書中に出現する単語の頻度を並べたベクトルや、特許第３２５３３５６号公報、特許第３２１５１６３号公報などに開示されているような文書画像の特徴量を並べたベクトルを組み合わせて構成することができる。ここでは、一例として、文書のレイアウト特徴を表す連続特徴量ベクトルを計算する方法を示す。
【０１１８】
画像特徴量計算部１２２における画像特徴量計算処理は、第１の実施の形態の画像特徴量計算部２２における画像特徴量計算処理と同じであるので、その説明は省略する。
【０１１９】
事例データベース１２３は、画像特徴量計算部１２２から出力された画像特徴量と、後述するユーザインタフェース部２７から出力されたユーザの選択を入力とし、下記に示す学習データである事例集合Ｈとして蓄積するデータベースである。
Ｈ＝｛（ｘ（１），α（ｉ）），（ｘ（２），α（２）），．．．｝
ｘ（ｋ）：ｋ番目の画像から抽出された画像特徴量 
α（ｋ）：その画像に適したアルゴリズムや処理パラメータ
【０１２０】
次に、重み計算部１２４について説明する。重みの計算方法としては、事例にもとづく識別に適しており、かつ、確率分布関数の形を仮定しない識別方法である最近傍法がある。最近傍法は、現在処理しているものと最も似ている過去の事例を使った予測方式であり、類似データが増えるほど、予測精度が向上する。また、ガウス分布などの確率分布の推定を必要としない識別方法である。さらに、学習データが少なく、特徴が多次元である問題については、最近傍法における距離尺度に、各特徴次元の予測に対する貢献度に応じて重み付けしたり、あるいは、学習データ（事例）ごとの重要度に応じて重み付けしたりすることによって、データ数と次元数の間のジレンマが解消できる。
【０１２１】
本実施の形態においては、その具体的方法として、「重みつき距離の学習を取り入れた最近傍法」を用いる。その詳細は、「R. Paredes & E. Vidal, "Learning weighted metrics to minimize nearest-neighbor classification error," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 28, no. 7, pp. 1100-1110, July 2006」に記述されているが、ここではその概要を以下において述べる。
【０１２２】
基本的に最近傍法に基づく方法であるが、プロトタイプ点と予測対象点との距離計算の際に、単純なユークリッド距離ではなく、プロトタイプ点の重要度と各特徴次元の重要度とに応じて、重みを付けた距離を計算する。
【０１２３】
ｘｉ＝（ｘｉ１，・・・，ｘｉｄ）をi番目のプロトタイプ点、ｃをそのクラス、ｙ＝（ｙ１，・・・，ｙｄ）を識別対象の任意の点としたとき、ｉ番目のプロトタイプ点についての重みＶｉとクラスｃについて、ｊ番目の特徴次元の重みＷｃｊにより、ｘｉとｙの距離の２乗（Δ）は、
【数６】
0005113653.tif 000009
で定義される。パラメータの数は、特徴次元数ｄ、データ数Ｎ、クラス数Ｃに対して、プロトタイプの重みでＮ個、それに、クラスごとに決める各次元の重みでＣｄ個であり、合わせてＮ＋Ｃｄである。ここで、「クラス」とは、集合Ａの要素、すなわち、適用するアルゴリズムや処理パラメータのインデックスのことを言い、各プロトタイプ点Ｘｉには、ユーザが適用したクラス情報が付随しているものとする。
【０１２４】
重みＶｉと重みＷｃｊとは、データから自動的に学習される。学習の基準は、Leave-One-Outで評価した誤り率を最小にすることである。そうすると、重みは、以下に示すような基準で、最急降下法により学習される。
（１）その事例と同じクラスの点がまばらに分布していて、その点がなくなることによって識別結果が変わるような場合には、その点が影響を及ぼす範囲がより広くなるように、重みＶｉはより大きな値をとる（重要度が高いプロトタイプ点）。
（２）その事例と同じクラスの点が密集していて、その事例の存在が識別結果に影響を与える度合いが低い場合には、重みＶｉはより小さな値をとるような学習を行う（重要度が低い事例）。
（３）クラスｃについて、ｊ番目の特徴次元が予測に及ぼす影響がより大きければ、重みＷｃｊはより大きい値をとる。
（４）クラスｃについて、ｊ番目の特徴次元が予測を撹乱するような要因であれば、重みＷｃｊは０に近い値になる。
【０１２５】
次に、プロトタイプ集約（Prototype Condensing）を実行するプロトタイプ事例セット構築部１２５について説明する。ここで、プロトタイプ集約（Prototype Condensing）とは、最近傍識別において、識別性能をほとんど劣化させることなく、事例の個数を縮減することである。プロトタイプ集約の基本アルゴリズムは、一般的には、図１４に示すような単純なものである。図１４に示すアルゴリズムは、もとの事例データベースＰを入力し、事例データベースＰから要素ｚを１個選び（ステップＳ２０１）、事例データベースＰの各要素を、Ｇをプロトタイプデータとして最近傍識別するとともに、誤ったものの集合をＥとする（ステップＳ２０２）。そして、Ｅが空でなければ（ステップＳ２０３のＮｏ）、Ｅから要素ｚを１個選び（ステップＳ２０４）、ステップＳ２０２の処理を繰り返す。一方、Ｅが空であれば（ステップＳ２０３のＹｅｓ）、Ｇを集約されたプロトタイプ事例セット（その一部の事例のみから構成されるプロトタイプ事例セットＧ）として出力して（ステップＳ２０５）、処理を終了する。このアルゴリズムによって得られる集約されたプロトタイプ事例セットＧを用いて、もとの事例データベースＰを最近傍識別すると、１００％の精度で正しく識別される。このような集合Ｇを、Minimal Consistent Set（ＭＣＳ）と呼ぶ。
【０１２６】
ここで、プロトタイプ事例セットＧに逐次的に加えていく「要素ｚの選び方」が問題となる。プロトタイプ集約においては、できるだけ小さいＭＣＳを構成するように選ぶことが望ましいが、図１４に示したアルゴリズムでは、事例の順序付けに依存することになる。
【０１２７】
そこで、本実施の形態においては、重み計算部１２４で求められた「各事例の重み」を利用して要素ｚを選ぶようにしたものである。「事例の重み」には、上記したような意味で、その事例の重要度が反映されている。重みｖが大きいような事例は、その勢力範囲が大きくなるため、重要度が高いと考えるのは自然である。事例の重みを用いたプロトタイプ集約のアルゴリズムを、図１５に示す。図１５に示すアルゴリズムは、もとの事例データベースＰを入力し、事例データベースＰから重みｖが最も大きい要素ｚを１個選び（ステップＳ３０１）、事例データベースＰの各要素を、Ｇをプロトタイプデータとして最近傍識別するとともに、誤ったものの集合をＥとする（ステップＳ３０２）。そして、Ｅが空でなければ（ステップＳ３０３のＮｏ）、Ｅから重みｖが最も大きい要素ｚを１個選び（ステップＳ３０４）、ステップＳ３０２の処理を繰り返す。一方、Ｅが空であれば（ステップＳ３０３のＹｅｓ）、Ｇを集約されたプロトタイプ事例セット（その一部の事例のみから構成されるプロトタイプ事例セットＧ）として出力して（ステップＳ３０５）、処理を終了する。
【０１２８】
最適機能予測部１２６は、画像特徴量計算部１２２から出力された画像特徴量ベクトルを入力とし、プロトタイプ事例セット構築部１２５で構築したプロトタイプ事例セットと重み計算部１２４で求めた重みとを用いて、最適なアルゴリズムや処理パラメータを求める。プロトタイプ事例セット中でｉ番目のプロトタイプ事例Ｘｉ（ただし、そのクラスラベルはＣ）と、現在処理している画像から計算された特徴量ベクトルＹとの距離の２乗（Δ）を、重み計算部１２４で計算した重み、すなわち、ｉ番目のプロトタイプ点についての重みＶｉと、クラスｃについて、ｊ番目の特徴次元の重みＷｃｊを用いて、式１のように計算する。距離を最小にするプロトタイプ点を見つけ、そのクラスラベルを、推奨アルゴリズム、あるいは、推奨パラメータとして、ユーザインタフェース部１２７に出力する。
【０１２９】
また、ユーザインタフェース部１２７は、最適機能予測部１２６から出力された推奨アルゴリズム、あるいは、推奨パラメータを表示装置１１などに表示することによって、ユーザに提示する。ユーザは、推奨が気に入ったか、あるいは、気に入らないかを、キーボード１２やポインティングデバイス１３などを使って入力することができる。もし、推奨が気に入らないときには、ユーザは、キーボード１２やポインティングデバイス１３などを使って、処理やパラメータを入力し直すことができる。ユーザの応答結果は、事例データベース１２３とプロトタイプ事例セット構築部１２５に出力される。
【０１３０】
このように本実施の形態によれば、個々のユーザの「嗜好」に依存する処理を画像に対して施す際に、これまでに処理した画像の画像特徴量とそのユーザが適用した事例（アルゴリズムや処理パラメータ）に基づいて、様々な画像に最適な事例を予測する関数を自動的に学習し、新しい画像データについての最適な事例を予測してユーザに推奨することにより、ユーザが少ない操作（メニューからの選択やパラメータ設定）で所望の画像を得ることができるので、個々のユーザの「嗜好」に依存する処理を大量の画像に対して施す場合に、個々のユーザの「嗜好」を考慮しつつ、ユーザ操作に負担を掛けずに、作業効率の向上を図ることができる。また、オンサイトでのシステムの長期的運用において、オンラインで予測に要する計算時間、プロトタイプ事例セットが保持する事例データ（プロトタイプデータ）の数、空き時間に行う学習に要する時間などを、略一定に保つことができるようになる。
【０１３１】
なお、本実施の形態のプロトタイプ事例セット構築部１２５においては、初期プロトタイプ事例セットとして、事例データベース１２３中から最大の重要度を持つ１個の事例のみを要素として順に選ぶようにしたが、これに限るものではない。例えば、Ｃ個のクラスのそれぞれについて、重要度が最大の事例を選び出して、初期プロトタイプ事例セットをそれらＣ個の事例を要素から成るものとしてもよい。これにより、重要度の高い事例を優先的にプロトタイプ事例セットに加えていくことができるので、ランダムに加える場合に比べて、より小さなプロトタイプ事例セットを構築することができる。
【０１３２】
また、本実施の形態においては、バッチ学習にて、重み計算部１２４で各事例の重みを計算し、プロトタイプ事例セット構築部１２５でプロトタイプ事例セットを構築し、集約事例データと重みを出力するようにしたが、オンライン学習でも同様の処理を行うようにしても良い。
【０１３３】
［第３の実施の形態］
次に、本発明の第３の実施の形態を図１６ないし図２１に基づいて説明する。なお、前述した第１の実施の形態または第２の実施の形態と同じ部分は同じ符号で示し説明も省略する。本実施の形態は、事例データベースの構築の一例について示すものである。
【０１３４】
図１６は本発明の第３の実施の形態にかかるデータ処理装置１のＣＰＵ２が実行する画像処理にかかる機能を示す機能ブロック図、図１７はその流れを概略的に示すフローチャートである。
【０１３５】
図１６に示すように、データ処理装置１は、画像入力処理部２２１と、学習用画像データ記録部２２２と、特徴量計算手段として機能する画像特徴量計算部２２３と、領域抽出手段として機能する領域抽出部２２４と、評価手段として機能する領域抽出結果の評価部２２５と、特徴量データ記録手段として機能する教師付き特徴量データ記録部２２６と、学習手段として機能する領域抽出方式選択規則の学習部２２７と、選択手段として機能する領域抽出方式の選択部２２８と、を備えている。以下において、各構成部の動作と作用を詳述する。
【０１３６】
画像入力処理部２２１は入力された文書画像中の文書の傾きを補正する「スキュー補正」を文書画像に施したり、カラー入力の場合にモノクロのグレースケール画像に変換したりするなどの前処理を施して画像データを生成する（図１７に示すステップＳ５０１）。
【０１３７】
学習用画像データ記録部２２２は、画像入力処理部２２１で前処理を施した画像データを、後述する領域抽出方式選択規則の学習に用いるために、ＨＤＤ６の所定領域に記録する（図１７に示すステップＳ５０２）。
【０１３８】
学習用画像データ記録部２２２に記録されたＮ個の画像データは、図１７に示すように、１つずつ取り出され（ステップＳ５０３，Ｓ５０４，Ｓ５０５，Ｓ５１０）、以降の処理を施される。
【０１３９】
画像特徴量計算部２２３における画像特徴量計算処理は、第１の実施の形態の画像特徴量計算部２２における画像特徴量計算処理と同じであるので、その説明は省略する。
【０１４０】
次に、領域抽出部２２４について説明する。本実施の形態においては、複数の異なる方式、あるいは、同じ方式でも複数のパラメータが設定されている２つ以上の領域抽出方式の領域抽出部２２４を、処理対象の画像データに作用させて領域抽出を行う（図１７に示すステップＳ５０７）。すなわち、図１６に示すように、本実施の形態においては、２つ以上のＮｓ個の領域抽出部２２４を配置する。従来技術で述べたように、領域抽出には複数の方式があり、同一の画像に対して異なる結果が得られる。例えば、図１８は図８の（ｂ）についての領域抽出の結果を示すものである。図１８に示す（ａ）は、特開２００６−０８５６６５号公報に開示されているようなトップダウン型の領域抽出方式によるレイアウト解析方法による文字領域の領域抽出結果である。また、図１８に示す（ｂ）は、写真領域の抽出結果である。また、特開２０００−０６７１５８号公報や特開２０００−１１３１０３号公報に記載されている方法などを適用すると、図１９の（ａ）に示すように、図１８の（ａ）とは異なる結果が得られる。
【０１４１】
領域抽出結果の評価部２２５では、複数の領域抽出方式の領域抽出部２２４による出力結果を、評価する（図１７に示すステップＳ５０８）。より詳細には、複数の領域抽出方式の領域抽出部２２４による出力結果を、学習用画像データのそれぞれについて用意された抽出領域の正解と照合することによって、正解とそれぞれの出力と差異を計算し、作用させた領域識別方式に順位をつける。ここで、図２０は図８の（ｂ）についての正解の例である。図２０に示す正解の例と、図１８や図１９に示した領域抽出方式の出力結果との差異を計算する。差異の計算はすでに知られた方法があり、例えば、文献「J. Liang, I.T. Phillipps, and R.M. Haralick, "Performance evaluation of document structure extraction algorithms," Computer Vision and Image Understanding, vol. 84, pp. 144-159, 2001」では、出力結果を正解に変換するのに必要とされる、領域の併合や分断の回数を基にした方法が述べられている。例えば、図１９の領域抽出方式による領域抽出結果では、文字領域が細かく分断されているため、図１８の領域抽出方式による領域抽出結果に比べて、順位が悪くなる。
【０１４２】
教師付き特徴量データ記録部２２６では、ステップＳ５０６において画像特徴量計算部２２３で計算したそれぞれの学習用画像データの画像特徴量と、領域抽出結果の評価部２２５で評価した最良の領域抽出方式とを、教師付き特徴量データとして記録する（図１７に示すステップＳ５０９）。図２１は、教師付き特徴量データ記録部２２６に記録されている教師付き特徴量データの例を示す模式図である。図２１に示す例では、最良の領域抽出方式（図２１の例では、「Ａ」，「Ｂ」，「Ｃ」，「Ｄ」と表記）を「教師データ」、すなわち、学習用画像データが属するクラスのラベルとみなす。
【０１４３】
以上説明したようなステップＳ５０５〜Ｓ５０９の処理を、学習用画像データ記録部２２２に記録されたＮ個の画像データ全てに対して実行したと判断した場合には（図１７に示すステップＳ５０４のＮｏ）、ステップＳ５１１に進み、領域抽出方式選択規則の学習部２７における領域抽出方式選択規則の学習処理が実行される。
【０１４４】
領域抽出方式選択規則の学習部２２７は、画像特徴量と最適領域抽出処理との対応関係を学習する（図１７に示すステップＳ５１１）。具体的には、教師付き特徴量データとパターン識別のアルゴリズムとを用いることにより、画像特徴量から最良の領域抽出方式の選択規則の学習を行う。学習方式としては、線形識別、ニューラルネットワーク、最近傍法、サポートベクトルマシンなど、任意の方式を用いることができる。
【０１４５】
そして、領域抽出方式の選択部２２８は、未知の文書画像データが入力された際には、画像特徴量を計算し、領域抽出方式選択規則の学習部２２７における学習によって得られる領域抽出方式選択規則を用いてその画像データに最適な領域抽出方式を選択する。これにより、選択された１つの領域抽出部２２４による領域抽出方式を入力された文書画像データに作用させることによって、入力された文書画像データから各種領域が抽出される。
【０１４６】
このように本実施の形態によれば、レイアウトの概略（文字や写真・絵の大体の空間的配置や分布など）に基づいて計算された文書画像データの画像特徴量と領域抽出方式の対応規則を自動的に学習することができるとともに、対応付けた情報に基づいてレイアウト解析における領域抽出方式が選択され、選択された領域抽出方式に基づいて文書画像データが領域に分割される。これにより、レイアウトの概略（文字や写真・絵の大体の空間的配置や文字と写真・絵の分布など）に従うことで画像のタイプを特徴付ける画像特徴量を高速に計算することができるとともに、文書画像データの特徴に適したレイアウト解析における領域抽出方式を選択することができるので、文書領域抽出の性能を向上させることができる。
【０１４７】
なお、領域抽出結果の評価部２２５では、複数の領域抽出方式の出力結果を、学習用画像データのそれぞれについて用意された抽出領域の正解と照合することによって、正解とそれぞれの出力と差異を計算し、作用させた領域識別方式に順位をつけたが、これに限るものではなく、正解を用意せず、人間のオペレータが複数の領域抽出方式の出力結果を目視して順位付けするようにしても良い。
【０１４８】
なお、本実施の形態においては、画像特徴量計算部２２３で画像データ全体の特徴量を計算した後（図１７に示すステップＳ５０６）、複数の領域抽出部２２４で領域抽出を行い（図１７に示すステップＳ５０７）、領域抽出結果の評価部２２５で複数の領域抽出方式の領域抽出部２２４による出力結果を評価する（図１７に示すステップＳ５０８）ようにしたが、これに限るものではない。例えば、複数の領域抽出部２２４で領域抽出を行い、領域抽出結果の評価部２２５で複数の領域抽出方式の領域抽出部２２４による出力結果を評価した後、画像特徴量計算部２２３で画像データ全体の特徴量を計算するようにしても良い。
【０１４９】
［第４の実施の形態］
次に、本発明の第４の実施の形態を図２２に基づいて説明する。なお、前述した第１の実施の形態ないし第３の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【０１５０】
第１の実施の形態ないし第３の実施の形態においては、データ処理装置１としてＰＣなどのコンピュータを適用したが、本実施の形態は、データ処理装置１としてデジタル複合機などに備えられる情報処理装置を適用したものである。
【０１５１】
図２２は、本発明の第４の実施の形態にかかるデジタル複合機５０を示す外観斜視図である。図２２に示すように、画像読取手段であるスキャナ部５１及び画像印刷装置であるプリンタ部５２を備えた画像形成装置であるデジタル複合機５０に備えられる情報処理装置にデータ処理装置１を適用し、デジタル複合機５０のスキャナ部５１で読み取ったスキャン画像に対して画像処理を施すようにしたものである。
【０１５２】
［第５の実施の形態］
次に、本発明の第５の実施の形態を図２３に基づいて説明する。なお、前述した第１の実施の形態ないし第３の実施の形態と同じ部分は同じ符号で示し説明も省略する。
【０１５３】
第１の実施の形態ないし第３の実施の形態においては、データ処理装置１としてローカルなシステム（例えば、パーソナルコンピュータ単体）を適用したが、本実施の形態は、データ処理装置１としてサーバクライアントシステムを構成するサーバコンピュータを適用したものである。
【０１５４】
図２３は、本発明の第５の実施の形態にかかるサーバクライアントシステムを示す模式図である。図２３に示すように、サーバコンピュータＳにネットワークＮを介してクライアントコンピュータＣが複数台接続されたサーバクライアントシステムを適用しており、各クライアントコンピュータＣからサーバコンピュータＳに対して画像を送信し、サーバコンピュータＳ（データ処理装置１）において画像に対して画像処理を施すようにしたものである。また、ネットワークＮ上には、ネットワークスキャナＮＳが設けられている。
【図面の簡単な説明】
【０１５５】
【図１】本発明の第１の実施の形態にかかるデータ処理装置の電気的な接続を示すブロック図である。
【図２】画像処理にかかる機能を示す機能ブロック図である。
【図３】画像処理の流れを概略的に示すフローチャートである。
【図４】画像特徴量計算処理の流れを概略的に示すフローチャートである。
【図５】ブロック分類処理の流れを概略的に示すフローチャートである。
【図６】多重解像度処理を示す模式図である。
【図７】高次自己相関関数計算のためのマスクパターンの一例を示す模式図である。
【図８】ブロック分類の一例を示す模式図である。
【図９】古いプロトタイプデータｘ’が除去される場合を示す模式図である。
【図１０】古いプロトタイプデータｘ’が保持される場合を示す模式図である。
【図１１】バッチ学習の手順を示すフローチャートである。
【図１２】本発明の第２の実施の形態にかかるデータ処理装置の画像処理にかかる機能を示す機能ブロック図である。
【図１３】画像処理の流れを概略的に示すフローチャートである。
【図１４】プロトタイプ集約処理の流れを示すフローチャートである。
【図１５】「各事例の重み」を利用したプロトタイプ集約処理の流れを示すフローチャートである。
【図１６】本発明の第３の実施の形態にかかるデータ処理装置の画像処理にかかる機能を示す機能ブロック図である。
【図１７】画像処理の流れを概略的に示すフローチャートである。
【図１８】図８の（ｂ）についての領域抽出の結果を示す模式図である。
【図１９】図８の（ｂ）についての領域抽出の結果を示す模式図である。
【図２０】図８の（ｂ）についての領域抽出の結果の正解を示す模式図である。
【図２１】教師付き特徴量データの例を示す模式図である。
【図２２】本発明の第４の実施の形態にかかるデジタル複合機を示す外観斜視図である。
【図２３】本発明の第５の実施の形態にかかるサーバクライアントシステムを示す模式図である。
【符号の説明】
【０１５６】
１        データ処理装置
２２      特徴量計算手段
２３      事例データベース
２４      入力受付手段
２５      更新手段
２６      予測器構築手段
２６ａ    逐次構築手段
２６ｂ    バッチ構築手段
２７      最適機能予測手段
１２２    特徴量計算手段
１２３    事例データベース
１２４    重み計算手段
１２５    事例セット構築手段
１２６    最適機能予測手段
１２７    入力受付手段
２２３    特徴量計算手段
２２４    領域抽出手段
２２５    評価手段
２２６    特徴量データ記録手段
２２７    学習手段
２２８    選択手段
【図１】
0005113653.tif 000010
【図２】
0005113653.tif 000011
【図３】
0005113653.tif 000012
【図４】
0005113653.tif 000013
【図５】
0005113653.tif 000014
【図６】
0005113653.tif 000015
【図７】
0005113653.tif 000016
【図８】
0005113653.tif 000017
【図９】
0005113653.tif 000018
【図１０】
0005113653.tif 000019
【図１１】
0005113653.tif 000020
【図１２】
0005113653.tif 000021
【図１３】
0005113653.tif 000022
【図１４】
0005113653.tif 000023
【図１５】
0005113653.tif 000024
【図１６】
0005113653.tif 000025
【図１７】
0005113653.tif 000026
【図１８】
0005113653.tif 000027
【図１９】
0005113653.tif 000028
【図２０】
0005113653.tif 000029
【図２１】
0005113653.tif 000030
【図２２】
0005113653.tif 000031
【図２３】
0005113653.tif 000032