(57)【要約】【課題】入力画像データが辞書画像データを含むかどうか判定する際、十分な投票回数が必要となり、この投票回数は、辞書画像データの特徴点の数が多いほど増大する。また辞書画像データと入力画像データとの特徴点の比較回数が増えるとマッチング処理に要する時間が長くなり性能が低下する。【解決手段】画像処理装置とその制御方法であって、入力した画像データを第１画像として登録し、入力した画像データが、登録されている第１画像を含むか否かを判定し、その判定結果に応じて、入力した画像データに対する処理を制御する。第１画像の登録において、入力した画像データの特徴量を取得し、取得した特徴量の特徴点の数に応じて、入力した画像データを第１画像として登録するかどうか判定するとともに、特徴量の特徴点の数が所定数のよりも多い場合に。その特徴量の特徴点の数を削減して登録する。【選択図】  図２
2018151980.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
入力した画像データを第１画像として登録する登録手段と、
画像データを入力する入力手段と、
前記入力手段が入力した前記画像データが前記登録手段により登録されている前記第１画像を含むか否かを判定する判定手段と、
前記判定手段による判定結果に応じて、前記入力手段が入力した前記画像データに対する処理を制御する制御手段とを有し、
前記登録手段は、前記入力した画像データの特徴量を取得する取得手段を有し、
前記取得手段が取得した前記特徴量の特徴点の数に応じて、前記入力した画像データを前記第１画像として登録するかどうか判定するとともに、前記特徴量の特徴点の数が所定数のよりも多い場合に前記特徴量の特徴点の数を削減して登録することを特徴とする画像処理装置。
【請求項２】
前記判定手段は、前記入力手段が入力した前記画像データの特徴量と、前記第１画像の画像データの特徴量とを比較し、前記入力した画像データの特徴点に対応する前記第１画像の画像データの特徴点を探索し、探索により得られた前記入力した画像データの対応点の１つ１つに対して、前記第１画像の画像データの基準点に対するベクトルを用いて投票を行って最大となる投票値を決定し、当該最大となる投票値が所定値以上か否かに基づいて判定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記登録手段は、前記取得手段が取得した前記特徴量の特徴点の数が所定数よりも多い場合に、前記入力した画像データを前記第１画像として登録すると判定することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記登録手段は、前記入力した画像データのサイズに応じて、当該画像データを前記第１画像として登録するかどうか判定することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項５】
前記登録手段は、前記取得手段が取得した前記特徴量の特徴点の数が所定数よりも多い場合に、前記特徴量の特徴点の特徴量値の大きい方から所定数の特徴点を抽出して登録することを特徴とする請求項３に記載の画像処理装置。
【請求項６】
前記登録手段は、前記取得手段が取得した前記特徴量の特徴点の数が所定数よりも多い場合に、前記特徴量の特徴点の特徴量値が閾値よりも小さい特徴点を抽出して登録することを特徴とする請求項３に記載の画像処理装置。
【請求項７】
前記閾値よりも小さい特徴点の数が所定数より大きい場合、前記登録手段は、前記閾値を変更して前記特徴量の特徴点の特徴量値が当該閾値よりも小さい特徴点を抽出することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記登録手段は、前記入力した画像データを前記第１画像として登録すると判定した場合、前記画像データと、前記入力した画像データの特徴量或いは前記特徴量の特徴点の数を削減した特徴量、及び前記入力手段が入力した前記画像データに対する処理を示す付加情報、を登録することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記特徴量は複数の特徴点を含み、各特徴点の前記画像データでの位置を示す座標、その特徴量値を少なくとも含むことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
画像処理装置を制御する制御方法であって、
入力した画像データを第１画像として登録する登録工程と、
画像データを入力する入力工程と、
前記入力工程で入力した前記画像データが、登録されている前記第１画像を含むか否かを判定する判定工程と、
前記判定工程の判定結果に応じて、前記入力工程で入力した前記画像データに対する処理を制御する制御工程とを有し、
前記登録工程は、前記入力した画像データの特徴量を取得し、取得した前記特徴量の特徴点の数に応じて、前記入力した画像データを前記第１画像として登録するかどうか判定するとともに、前記特徴量の特徴点の数が所定数のよりも多い場合に前記特徴量の特徴点の数を削減して登録することを特徴とする画像処理装置の制御方法。
【請求項１１】
コンピュータを、請求項１乃至９のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置とその制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来の複合機では、スキャナで原稿を読み取って得られた入力画像データと、事前に登録されている辞書画像データとを比較し、入力画像データが辞書画像データと一致する画像データを含むと判定すると、その入力画像データの印刷を禁止している。例えば、機密文書やコピー禁止を示す特定のマーク等を辞書画像データとして事前に複合機に登録しておき、入力画像データが、これら辞書画像データを含むと判定すると、その画像データ印刷の停止や、画像を黒等で塗りつぶす等の印刷処理を行う。
【０００３】
入力画像データが辞書画像データを含むかどうかの判定は、入力画像データに辞書画像データとマッチングする画像部分が有るかどうかを判定する処理により行うことができる（特許文献１）。画像どうしがマッチングするかどうかの判定処理では、例えば、入力画像データの特徴点及び局所特徴量を取得し、その局所特徴量と、登録されている辞書画像データの局所特徴量とを比較し、入力画像データの特徴点に対応する辞書画像データの特徴点を探索する手法を用いることができる。そして、この探索により得られた入力画像データの対応点１つ１つに対して、辞書画像データの基準点（例えば重心等）に対するベクトルを用いて入力画像データの平面内で投票を行う。そして全ての対応点の投票後、入力画像データの平面内で最大となる投票値を決定し、この最大投票値が所定値以上か否かで、入力画像データにおける辞書画像データの有無や位置を判定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−８８７１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述のマッチング処理を用いて入力画像データが辞書画像データを含むかどうか判定するためには、所定値を越える投票値が得られるだけの十分な投票回数が必要となる。この投票回数は、辞書画像データの特徴点の数が多いほど増大する。また辞書画像データと入力画像データとの特徴点の比較回数が増えると、マッチング処理に要する時間が長くなり、性能が低下するという課題がある。
【０００６】
また画像データの解像度が高いほど、辞書画像データ、入力画像データともに、より多くの特徴点が得られる。しかし、その分だけ辞書画像データと入力画像データとの特徴点の比較回数が増大してマッチング処理に要する時間が増大し、処理性能が低下するという課題があった。
【０００７】
本発明の目的は、上記従来技術の課題を解決することにある。
【０００８】
本発明の目的は、入力画像データが、登録している画像データを含む場合に、その入力画像データに対する処理を制御する装置において、入力画像データと、登録している画像データとの比較処理に要する負荷を軽減する技術を提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために本発明の一態様に係る画像処理装置は以下のような構成を備える。即ち、
画像処理装置であって、
入力した画像データを第１画像として登録する登録手段と、
画像データを入力する入力手段と、
前記入力手段が入力した前記画像データが前記登録手段により登録されている前記第１画像を含むか否かを判定する判定手段と、
前記判定手段による判定結果に応じて、前記入力手段が入力した前記画像データに対する処理を制御する制御手段とを有し、
前記登録手段は、前記入力した画像データの特徴量を取得する取得手段を有し、
前記取得手段が取得した前記特徴量の特徴点の数に応じて、前記入力した画像データを前記第１画像として登録するかどうか判定するとともに、前記特徴量の特徴点の数が所定数のよりも多い場合に前記特徴量の特徴点の数を削減して登録することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、入力画像データが、登録している画像データを含む場合に、その入力画像データに対する処理を制御する装置において、入力画像データと、登録している画像データとの比較処理に要する負荷を軽減することができる。
【００１１】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００１２】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１】本発明の実施形態１に係る画像形成装置の全体構成を説明するブロック図。
【図２】実施形態１に係る画像形成装置が辞書画像データを登録するときの処理を説明するフローチャート。
【図３】図２のＳ２０３で、画像データを辞書画像データとして登録可能かどうか評価する処理を説明するフローチャート。
【図４】図３のＳ３０１で取得した画像データの特徴量を示すデータ構造を例示する図。
【図５】図２のＳ２０５の特徴量を最適化する処理を説明するフローチャート。
【図６】実施形態１において、特徴量の最適化処理を適用した結果の一例を説明する図。
【図７】実施形態１に係る画像形成装置が、入力画像データが辞書画像データを含むかどうかの検出処理を有効にした状態でコピージョブを行うときの処理を説明するフローチャート。
【図８】実施形態２に係る画像形成装置が辞書画像データを登録するときの処理を説明するフローチャート。
【図９】図８のＳ８０３の画像データの評価を行う処理を説明するフローチャート。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。尚、この実施形態では、本発明に係る画像処理装置を、複合機である画像形成装置を例に説明するが、本発明はこのような画像形成装置に限らず、例えばＰＣ（パーソナルコンピュータ）や携帯端末等の情報処理装置や通信装置等も含む。
【００１４】
［実施形態１］
図１は、本発明の実施形態１に係る画像形成装置１００の全体構成を説明するブロック図である。
【００１５】
画像形成装置１００は、画像データの入出力や送受信、及び、それに関連する各種の画像処理を行うことができる複合機である。画像形成装置１００は、メインコントローラ１０１、ユーザインタフェースである操作部１０２、画像データを入力するスキャナ１０３、画像データに基づいて画像を出力するプリンタ１０４を備える。操作部１０２、スキャナ１０３、プリンタ１０４は、それぞれメインコントローラ１０１に接続され、メインコントローラ１０１が各部の動作を制御する。
【００１６】
メインコントローラ１０１は、主制御を司るＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０を備える。ＣＰＵ１１０は、バス１３０を介して、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１２、不揮発メモリ１１３と接続されている。更に、画像バスＩＦ（インターフェース）１１４、操作部ＩＦ１１６、及び、ＮＷ（ネットワーク）通信部１１７と接続されている。
【００１７】
ＲＡＭ１１１は、ＣＰＵ１１０の主記憶部として作業領域を提供するための、随時読み書き可能なメモリで、内部処理する画像データを一時記憶するための画像メモリとしても使用される。ＲＯＭ１１２はブートＲＯＭで、この装置の起動に必要なブートプログラムや、動作に必要な各種処理プログラムを保持している。不揮発メモリ１１３は、画像形成装置１００の電源遮断後にも保持が必要なソフトウェアや設定値情報等を格納している。操作部ＩＦ１１６は、例えば、タッチパネル等を有する操作部１０２との間でデータ等の入出力を行う。操作部ＩＦ１１６は、操作部１０２に対して表示すべき画像データを出力し、またユーザが操作部１０２を介して入力した情報をＣＰＵ１１０に伝送する。ＮＷ通信部１１７は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）と接続するためのインタフェースであり、ＬＡＮに対して情報の入出力を行う。画像バスＩＦ１１４は、バス１３０と画像データを転送するための画像バス１３１とを接続するインタフェースであり、互いのバスプロトコルを変換するバスブリッジとして動作する。ＨＤＤ（ハードディスクドライブ）１１５は不揮発性のデータ記憶装置で、画像データ、システムデータ、ユーザデータ等の各種データ、及び、ＣＰＵ１１０が実行する動作プログラム等を保持している。尚、メインコントローラ１０１がＨＤＤ１１５を接続しない構成を採る場合は、各種データは不揮発メモリ１１３に保持されるものとする。
【００１８】
画像バス１３１には、ＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）１２０、デバイスＩＦ１２１、スキャナ画像処理部１２２、プリンタ画像処理部１２３、編集画像処理部１２４、画像圧縮部１２５が接続される。更に、画像特徴量生成部１２６、画像登録部１２７、画像検出部１２８が画像バス１３１に接続される。
【００１９】
ＲＩＰ１２０は、ＬＡＮから受信したＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）データをビットマップイメージに展開する。デバイスＩＦ１２１は、スキャナ１０３やプリンタ１０４の各デバイスとメインコントローラ１０１とを接続するインタフェースで、これらの間で画像データの送受信を行う。スキャナ画像処理部１２２は、スキャナ１０３から入力した画像データに対して画像処理を実行する。またプリンタ画像処理部１２３は、プリンタ１０４へ出力する画像データに対して画像処理を実行する。また編集画像処理部１２４は、ＲＡＭ１１１やＨＤＤ１１４が保持する画像データに対してループバック的に画像処理を行う。これらの画像処理部は、例えばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅ  Ｃｉｒｃｕｉｔ）を用いたハードウェア処理として実装される。画像圧縮部１２５は、多値画像データに対してはＪＰＥＧ（Jｏｉｎｔ Ｐｈｏｔｏｇｒａｐｈｉｃ Ｅｘｐｅｒｔｓ Ｇｒｏｕｐ）圧縮・伸張処理を行う。また２値画像データに対してはＪＢＩＧ（Ｊｏｉｎｔ Ｂｉ-ｌｅｖｅｌ Ｉｍａｇｅ Ｅｘｐｅｒｔｓ Ｇｒｏｕｐ）、ＭＭＲ（Ｍｏｄｉｆｉｅｄ Ｍｏｄｉｆｉｅｄ Ｒｅａｄ）などの符号化方式を用いた圧縮・伸張処理を行う。
【００２０】
画像特徴量生成部１２６は、辞書画像データ及び入力画像データの局所特徴量の算出処理を行う。ここでは前述のようにＳＩＦＴ、ＳＵＲＦ、ＢＲＩＥＦ等の特徴量生成アルゴリズムを利用する。画像登録部１２７は、画像特徴量生成部１２６が生成した画像データの特徴量を用いて、その画像データが入力画像データに含まれかどうか検出可能かを評価し、検出可能と判定された画像データを辞書画像データとして登録する。このとき辞書画像データは、付加情報とともにＨＤＤ１１５に保存される。画像検出部１２８は、入力画像データが辞書画像データを含むかどうかの検出処理を行う。画像検出部１２８は、画像特徴量生成部１２６が生成した辞書画像データの特徴量と、入力画像データの特徴量とを用いて前述のマッチング処理を行って、その入力画像データに含まれる辞書画像データを検出する。これら画像圧縮部１２５、画像特徴量生成部１２６、画像登録部１２７、画像検出部１２８もまた、例えば前述のＡＳＩＣを用いたハードウェア処理として実装される。
【００２１】
図２は、実施形態１に係る画像形成装置１００が辞書画像データを登録するときの処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１０がＨＤＤ１１５或いは不揮発メモリ１１３からＲＡＭ１１１に展開したプログラムを実行することにより達成される。
【００２２】
先ずＳ２０１でＣＰＵ１１０は、辞書画像の候補である画像データを入力する。この画像データの入力は、例えば、スキャナ１０３が原稿を読み取って入力してもよい。またＮＷ通信部１１７を介して、不図示のサーバやＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等から受信しても良い。次にＳ２０２に進みＣＰＵ１１０は、その画像データに対するジョブ制御情報を入力する。このジョブ制御情報は、入力した画像データが、登録された辞書画像データを含む場合に、その入力画像データに対してどのような制御を行うかを示す付加情報である。このジョブ制御情報の一例として、例えば、入力画像データが辞書画像データを含む場合は、その入力画像データに対して実行するジョブを禁止する「ジョブ禁止」がある。また、その入力画像データに対して実行しているジョブの情報に、その辞書画像データが検出された旨を記録する「ジョブ追跡」などがある。
【００２３】
次にＳ２０３に進みＣＰＵ１１０は、Ｓ２０１で辞書画像の候補として入力された画像データの評価を行う。ここでは入力した画像データから所定の特徴量が得られるか否かを判定する。この画像データの評価の詳細は後述する。ここでの評価の結果は、辞書画像データとして「登録可能」、「登録不可能」のいずれかである。次にＳ２０４に進みＣＰＵ１１０は、Ｓ２０３で得られた評価結果が「登録可能」か否かを判定する。ここでＣＰＵ１１０は、登録可能と判定した場合はＳ２０５に進みＣＰＵ１１０は、その画像データの特徴量を最適化する。即ち、ここではＳ２０３の画像データの評価で得られた特徴量の削減処理を行う。この特徴量の最適化処理の詳細は後述する。そしてＳ２０６に進みＣＰＵ１１０は、その画像データを辞書画像データとして有効化して登録する。この有効化とは、その画像データを辞書画像データとして、入力画像データとのマッチング処理で使用することを示す情報を付与することである。こうして有効化の情報を付与した画像データを、前述の付加情報とともにＨＤＤ１１５に辞書画像データとして登録して、この処理を終了する。
【００２４】
一方、Ｓ２０４でＣＰＵ１１０は、登録不可能と判定した場合はＳ２０７に進みＣＰＵ１１０は、Ｓ２０１で入力した画像データを辞書画像データとして登録せずに破棄する。そしてＳ２０８に進みＣＰＵ１１０は、その画像データが辞書画像データとして登録されなかった旨を操作部１０２に表示して、この処理を終了する。
【００２５】
図３は、図２のＳ２０３で、画像データを辞書画像データとして登録可能かどうか評価する処理を説明するフローチャートである。
【００２６】
まずＳ３０１でＣＰＵ１１０は、Ｓ２０１で入力した画像データを画像特徴量生成部１２６に入力して、画像特徴量生成部１２６から、その画像データの特徴量を取得する。このとき、取得した特徴量はＨＤＤ１１５に保存する。この特徴量の詳細は後述する。次にＳ３０２に進みＣＰＵ１１０は、その画像データの特徴量を画像登録部１２７に入力し、画像登録部１２７から、その特徴量を構成する特徴点の数を取得し、その特徴点の数が所定値より多いか否か判定する。ここで所定値は、画像形成装置１００において、入力した画像データに含まれる辞書画像データを検出するのに十分な特徴点の数である。この所定値は予め画像登録部１２７に保持してもよく、或いはＨＤＤ１１５に保存してこの処理の実行前にＣＰＵ１１０が取得してもよい。Ｓ３０２でＣＰＵ１１０は、特徴点の数が所定値よりも少ないと判定するとＳ３０４に進みＣＰＵ１１０は、その画像データの評価結果を登録不可能として、この処理を終了する。一方、Ｓ３０２でＣＰＵ１１０は、特徴点の数が所定値よりも多いと判定するとＳ３０３に進みＣＰＵ１１０は、その画像データは辞書画像データとして登録可能と決定して、この処理を終了する。
【００２７】
尚、画像特徴量生成部１２６、画像登録部１２７は、ＣＰＵ１１０とは別のハードウェアとして説明したが、これらの機能をＣＰＵ１１０がソフトウェアで実現するようにしても良い。
【００２８】
図４は、図３のＳ３０１で取得した画像データの特徴量を示すデータ構造を例示する図である。
【００２９】
特徴量は、特徴点ＩＤ４０１で識別される複数の特徴点で構成される。ここでは画像データの評価により、１０個の特徴点が得られたものとする。各特徴点は、Ｘ座標４０２、Ｙ座標４０３、特徴量値４０４及び方向４０５を含んでいる。Ｘ座標４０２及びＹ座標４０３は、その画像データの特徴点の位置を、予め定めた原点からの相対座標で示している。原点は、例えば、その画像データの左上を（Ｘ，Ｙ）＝（０，０）として定める。特徴量値４０４は、特徴点の強度を示す情報であり、特徴点の強度が高いほど大きい値をとる。方向４０５は、画像データを２次元平面と見立てた場合に、特徴点を中心とした輝度勾配方向を０度から３６０度の角度値で示す。特徴量値４０４及び方向４０５は、画像特徴量生成部１２６が行う特徴量生成アルゴリズムが備える特徴点検出処理に基づいて算出される。
【００３０】
図５は、図２のＳ２０５の特徴量を最適化する処理を説明するフローチャートである。
【００３１】
先ずＳ５０１でＣＰＵ１１０は、Ｓ２０３で取得した画像データの特徴量を構成する特徴点の数が、予め定めた所定数より多いか否かを判定する。Ｓ５０１でＣＰＵ１１０は、特徴点の数が所定数より多いと判定するとＳ５０２に進み、それら特徴点を特徴量値の降順でソートする。そしてＳ５０２に進みＣＰＵ１１０は、そのソートした特徴点を、特徴量値４０４の最も大きい値から順に所定数だけ取得する。次にＳ５０４に進みＣＰＵ１１０は、Ｓ５０３で得られた特徴点を含む特徴量を、その辞書画像データの特徴量として設定して、この処理を終了する。一方、Ｓ５０１でＣＰＵ１００が、特徴点の数が所定数と等しいか、或いは、それよりも少ないと判定した場合はＳ５０４に進みＣＰＵ１１０は、それら特徴点をそのまま辞書画像データの特徴量として設定して、この処理を終了する。こうして図２のＳ２０６でＣＰＵ１１０は、こうして得られた辞書画像データの特徴量をＨＤＤ１１５に保存する。
【００３２】
図６は、実施形態１において、特徴量の最適化処理を適用した結果の一例を説明する図である。尚、図６では、前述の所定数を「５」としている。
【００３３】
図６（Ａ）は、図４に示す、Ｓ３０１で取得した画像データの特徴量を示すデータを、特徴量値の降順でソートした状態を示しており、ここでは特徴点の数は１０個である。このための図５のＳ５０１では、「５」より多いためＳ５０２に進む。Ｓ５０５で、特徴点を特徴量値の降順ソートすると図６（Ａ）の順番になる。その後、Ｓ５０３で、特徴量値が最も大きい特徴点から上位５個を取得すると、図６（Ｂ）に示す特徴点が抽出され、これらが、この画像データの特徴量となる。
【００３４】
図７は、実施形態１に係る画像形成装置１００が、入力画像データが辞書画像データを含むかどうかの検出処理を有効にした状態でコピージョブを行うときの処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１０がＨＤＤ１１５或いは不揮発メモリ１１３からＲＡＭ１１１に展開したプログラムを実行することにより達成される。また、このフローチャートで示す処理は、辞書画像データが登録済みで、かつ画像形成装置１００のコピージョブの動作設定済みで、入力画像データが辞書画像データを含むかどうかの処理が有効な状態で開始されるものとする。
【００３５】
先ずＳ７０１でＣＰＵ１１０は、ユーザが操作部１０２で行うコピージョブの実行指示を操作部ＩＦ１１６を介して受け取る。そして、そのコピージョブの実行指示に基づいてＣＰＵ１１０は、デバイスＩＦ１２１を介して、スキャナ１０３に原稿の読み取りを指示する。これによりスキャナ１０３は、原稿の読み取りを実行し、その読み取った原稿の画像データを、デバイスＩＦ１２１を介してスキャナ画像処理部１２２へ送信する。こうしてＳ７０２でＣＰＵ１１０は、スキャナ画像処理部１２２が、その画像データに対して各種スキャン用画像処理を行った結果の画像データを受取り、それをＲＡＭ１１１或いはＨＤＤ１１５へ記憶する。次にＳ７０３に進みＣＰＵ１１０は、その保存した画像データをＲＡＭ１１１或いはＨＤＤ１１５から取得して画像特徴量生成部１２６に供給し、そこで得られる画像データの特徴量を取得する。このとき、Ｓ７０２で入力した画像データと、辞書画像データの解像度とが異なる場合は、ＣＰＵ１１０は、入力した画像データの解像度を編集画像処理部１２４により、辞書画像データの解像度になるよう解像度変換を行う。
【００３６】
次にＳ７０４に進みＣＰＵ１１０は、入力した画像データの特徴量と、辞書画像データの特徴量とを画像検出部１２８に入力し、その入力画像データが辞書画像データを含むかどうか判定する。この判定は、入力画像データの特徴量と辞書画像データの特徴量とを、画像検出部１２８が備えるアルゴリズムに基づいてマッチング処理により行い、その結果をＣＰＵ１１０が取得することにより行う。より具体的には、特徴量同士のマッチング処理では、Ｓ７０３で取得した入力画像データの特徴量と、図５のＳ５０４で、特徴点を最適化した辞書画像データの特徴量とを比較する。そして、入力画像データの特徴点に対応する辞書画像データの特徴点を探索する。この探索により得られた入力画像データの対応点の１つ１つに対して、辞書画像データの基準点（例えば重心等）に対するベクトルを用いて、入力画像データの平面内に投票を行う。こうして全ての対応点に対する投票の後、入力画像データの平面内で最大となる投票値を決定し、この最大値が所定値以上か否かで、入力画像データが辞書画像データを含むかどうか、また含むときは、その位置を判定することができる。
【００３７】
また最適化した辞書画像データの特徴量は、特徴量値の大きい特徴点で構成されるため、各点の投票から高い投票値を得ることができ、判定精度を妨げることのない十分な結果が得られる。また、最適化した辞書画像データは、特徴量値の小さい特徴点を削除しているため、投票しても低い投票値となって判定結果に影響しない特徴点の処理を回避でき、その分処理時間を早めることができる。このように最適化した辞書画像データの特徴量を用いることにより、入力画像データの特徴点との比較回数を低減でき、処理時間を削減できる。尚、ここで辞書画像データが複数登録されている場合は、入力画像データと、各辞書画像データとの間で、一対一の特徴量マッチングを行う。
【００３８】
こうしてＳ７０４でＣＰＵ１１０は、入力した画像データが辞書画像データを含むと判定するとＳ７０５に進みＣＰＵ１１０は、Ｓ７０１で指示されたコピージョブをキャンセルする。そしてＳ７０６に進みＣＰＵ１１０は、ユーザから指示されたコピージョブがキャンセルされた旨を操作部１０２に表示して、この処理を終了する。
【００３９】
一方、Ｓ７０４でＣＰＵ１１０は、入力した画像データが辞書画像データを含まないと判定するとＳ７０７に進み、ＣＰＵ１１０は、入力した画像データをプリンタ画像処理部１２３へ送信する。そしてＳ７０８に進みＣＰＵ１１０は、プリンタ画像処理部１２３を制御し、その入力した画像データに対するプリント用画像処理を行ってプリンタ１０４へ出力して印刷させる。
【００４０】
以上説明したように実施形態１によれば、辞書画像データの登録時に、その画像データの特徴量の最適化して登録することにより、特徴点の数を削減することができる。そして、この最適化した辞書画像データの特徴量を用いて入力画像データとの比較処理を行うことにより、マッチング処理に要する時間を削減することができる。
【００４１】
［実施形態２］
上述の実施形態１では、画像データを辞書画像データとして登録する際、辞書画像データの特徴量の最適化（Ｓ２０５）をＳ２０３の画像データの評価の後に行った。しかし特徴量の最適化処理は、これに限定されるものではなく、画像データの評価時に行っても良い。そこで実施形態２では、辞書画像として登録する画像データの特徴量の最適化を、画像データの評価時に行う場合で説明する。尚、実施形態２に係る画像形成装置１００の構成等は、前述の実施形態１と同じであるため、その説明を省略する。
【００４２】
図８は、実施形態２に係る画像形成装置１００が辞書画像データを登録するときの処理を説明するフローチャートである。尚、この処理は、ＣＰＵ１１０がＨＤＤ１１５或いは不揮発メモリ１１３からＲＡＭ１１１に展開したプログラムを実行することにより達成される。
【００４３】
この処理では、Ｓ８０３の画像データの評価において特徴量の最適化を行うため、前述の実施形態１（図２）のように、登録可能と判定した後の特徴量の最適化処理を省略している。尚、図８のＳ８０１，Ｓ８０２，Ｓ８０４〜Ｓ８０７の処理は、前述の図２のＳ２０１，Ｓ２０２、Ｓ２０４，Ｓ２０６〜Ｓ２０８と同じであるため、その説明を省略する。
【００４４】
図９は、図８のＳ８０３の画像データの評価を行う処理を説明するフローチャートである。
【００４５】
先ずＳ９０１でＣＰＵ１１０は、図８のＳ８０１でＨＤＤ１１５に保存した画像データを画像特徴量生成部１２６に入力し、その画像データの特徴量を取得する。こうして取得した特徴量はＨＤＤ１１５に保存する。次にＳ９０２に進みＣＰＵ１１０は、その画像データの特徴量を画像登録部１２７に入力し、Ｓ９０１で取得した特徴量を構成する特徴点の数が所定数より多いか否かを判定する。ここで所定数は、実施形態１と同様に、予め定めた値である。ここで特徴点の数が所定数よりも少ないと判定するとＳ９０３に進みＣＰＵ１１０は、Ｓ９０１で行う局所特徴量の取得処理が１回目かどうかを判定する。ここで１回目と判定した場合Ｓ９０８に進みＣＰＵ１１０は、この画像データからマッチング処理に必要な特徴量が十分得られないと判定して、その評価結果を登録不可能として、この処理を終了する。
【００４６】
一方、Ｓ９０２で特徴点の数が所定数よりも多いと判定するとＳ９０４に進みＣＰＵ１１０は、Ｓ９０１で取得した特徴量をＲＡＭ１１１又はＨＤＤ１１５に一時保持する。そしてＳ９０５に進みＣＰＵ１１０は、画像特徴量生成部１２６の特徴量生成アルゴリズムに基づき、特徴量を構成する特徴量値の閾値を変更する。具体的には、この閾値は、この閾値以上の特徴量値を有する特徴点を特徴量とするものであり、実施形態２では、この閾値を予め定めた分だけ大きくし、より高い特徴量値の特徴点で構成される特徴量を得る制御を行う。これにより低い特徴量値を持つ特徴点を削減することができる。
【００４７】
こうして再びＳ９０１に進みＣＰＵ１１０は、その変更した閾値に基づいて、その画像データの特徴量を再度取得する。そしてＣＰＵ１１０は、前述のＳ９０２，Ｓ９０４，Ｓ９０５の説明で示した画像データの特徴量の再取得を、生成した特徴量の特徴点の数が所定以下となるまで行う。こうしてＣＰＵ１１０はＳ９０２で、取得した特徴量の特徴点の数が所定数以下になったと判定するとＳ９０３に進み、今度は、１回目の特徴量の取得ではないと判定してＳ９０６に進む。Ｓ９０６でＣＰＵ１１０は、Ｓ９０４で保持した、最後に取得した特徴量を、その画像データの特徴量に設定する。そしてＳ９０７に進みＣＰＵ１１０は、その画像データの評価結果を登録可能として、この処理を終了する。
【００４８】
以上説明したように実施形態２によれば、画像データを辞書画像として登録する処理における画像データの評価時においても、画像データの特徴量を最適化して特徴点の数を削減できる。こうして最適化した辞書画像データの特徴量を用いて、入力画像データとのマッチング処理を行うことで、マッチング処理に要する時間を削減することができる。
【００４９】
前述したように、画像特徴量生成部１２６、画像登録部１２７、画像検出部１２８が行うそれぞれの処理はＣＰＵ１１０が行っても良い。このときＣＰＵ１１０は、それぞれの処理を予め実装した不図示のファームウェアに基づき、ＲＡＭ１１１、或いは、ＨＤＤ１１５に格納した画像データ、特徴量に対して処理行う。これにより画像特徴量生成部１２６、画像登録部１２７、及び、画像検出部１２８等のハードウェアを設けることなく上述の処理を実現できる。
【００５０】
尚、辞書画像データの登録処理は複数回行っても良い。即ち、ユーザが複数の異なる画像データを登録する毎に、辞書画像の登録処理を行う。また、一つの辞書画像データの登録ごとに、画像データの解像度や画像特徴量生成部１２６が備えるアルゴリズムの設定値を変更して、複数回の辞書画像の登録処理を行っても良い。
【００５１】
また画像データの評価に基づく登録可能、或いは登録不可能の判定は、特徴点の数が閾値以上か否かに基づいて判定するだけでなく、他の判定でも良い。例えば、画像のサイズが所定値以下の場合に登録不可能としても良い。
【００５２】
また画像サイズが所定値以上の場合は登録不可能とすることで、辞書画像の登録に要する処理時間が不要に増大することを回避できる。
【００５３】
また、入力画像データを想定した画像に、辞書画像の候補の画像データを合成し、その合成した画像データと、候補の画像データとのマッチング処理で所定の投票値が得られる場合に、その候補の画像データを辞書画像データとして登録可能としても良い。これにより、辞書画像データの特徴量が、入力画像データを想定した画像の特徴量に影響されずに検出でき、より認識精度の高い辞書画像データを登録できる。
【００５４】
また特徴量のデータ構造は、図４に示す情報に限定されるものでなく、他の情報を備えても良い。例えば、特徴点周辺の重要領域を示すサイズ情報や、特徴点をオブジェクト属性でクラスタするクラス情報や、また画像特徴量生成部１２６が備えるアルゴリズムで使用するその他の設定情報を備えても良い。これにより、画像特徴量生成部１２６が備えるアルゴリズム性能を活用したマッチング処理ができる。
【００５５】
また最適化した特徴量のデータ構造は、特徴量値の降順でソートした形態で保持することに限定するものではなく、特徴点ＩＤの昇順でソートして保持しても良い。これにより、画像特徴量生成部１２６が備えるアルゴリズムが、特徴点を座標の昇順に処理する場合も対処できる。
【００５６】
また実施形態２における、画像データの評価時に行う特徴量の最適化処理の終了判定は、２回目以降の特徴量の取得処理で得られた特徴点の数が所定数より小さくなることで判定することに限定されない。例えば、２回目以降の特徴量の特徴点の数が所定数より小さい場合、得られた特徴点の数と所定数との差が一定以上に大きい場合は、特徴量値の閾値を更に小さくして、再度、特徴量を取得するようにしても良い。これにより、特徴点の数が所定数よりも大きく減少した場合、より所定数に近い数の特徴点の数の特徴量が得られる。これにより、特徴点の数が所定数よりも大きく減少した場合の判定精度の低下を回避できる。
【００５７】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００５８】
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【符号の説明】
【００５９】
１００…画像形成装置、１０２…操作部、１０３…スキャナ、１１０…ＣＰＵ、１１１…ＲＡＭ、１１２…ＲＯＭ、１１３…不揮発メモリ、１１５…ＨＤＤ
【図１】
2018151980.tif 000003
【図２】
2018151980.tif 000004
【図３】
2018151980.tif 000005
【図４】
2018151980.tif 000006
【図５】
2018151980.tif 000007
【図６】
2018151980.tif 000008
【図７】
2018151980.tif 000009
【図８】
2018151980.tif 000010
【図９】
2018151980.tif 000011