【実施例1】
【0010】
図1は、本発明の一実施例を示す画像形成装置の全体構成を説明する図である。
画像形成装置100は、画像の入出力や送受信と、それに関連する各種の画像処理を行う複合機である。
【0011】
画像形成装置100は、メインコントローラ101、ユーザインタフェースである操作部102、画像入力デバイスであるスキャナ103、および、画像出力デバイスであるプリンタ104を備える。
操作部102、スキャナ103、および、プリンタ104は、それぞれメインコントローラ101に接続され、メインコントローラ101が各部の動作を制御する。
【0012】
メインコントローラ101は、主制御を司るCPU(Central Processing Unit)110を備える。CPU110は、システムバス130を介して、RAM(Random Access Memory)111、ROM(Read Only Memory)112、FLASH113と接続する。さらに、CPU110は、画像バスIF114、HDD(Hard Disk Drive)115、操作部I/F116、および、NW通信部117と接続する。
【0013】
RAM111は、CPU110の主記憶部として作業領域を提供するための随時読み書き可能なメモリであり、内部処理する画像データを一時記憶するための画像メモリとしても使用される。ROM112は、ブートROMでありシステム起動に必要なブートプログラム、および、動作に必要な各種処理プログラムが保持される。FLASH113は、不揮発性メモリであり画像形成装置100の電源遮断後にも保持が必要なシステムソフトウエアや設定値情報等が格納される。
【0014】
画像バスIF114は、システムバス130と画像データを転送するための画像バス131とを接続するインタフェースであり、互いのバスプロトコルを変換するバスブリッジとして動作する。
【0015】
HDD115は、不揮発なデータ記憶装置であり、画像データ、システムデータ、ユーザデータ等の各種データ、および、CPU110が実行する動作プログラムが保持される。メインコントローラ101が、HDD115を接続しない構成をとる場合は、上記各種データはFLASH113に保持されるものとする。
【0016】
操作部I/F116は、例えば、液晶タッチパネル等で構成される操作部102との間で入出力を行うためのインタフェースである。操作部I/F116は、操作部102に対して表示すべき画像データを出力し、また、ユーザが操作部102を介して入力した情報をCPU110に伝送する。NW通信部117は、LAN(Local Area Network)と接続するためのネットワークインタフェースであり、LANに対して情報の入出力を行う。
【0017】
画像バス131には、RIP(Raster Image Processor)120、デバイスIF121、スキャナ画像処理部122、プリンタ画像処理部123、編集画像処理部124、および、画像圧縮部125が接続される。さらに、画像特徴量生成部126、画像登録部127、画像検出部128が接続される。
【0018】
RIP120は、LANから受信したPDL(Page Description Language)データをビットマップイメージに展開する。デバイスIF121は、スキャナ103やプリンタ104の各デバイスとメインコントローラ101とを接続するインタフェースであり、互いの画像データ送受信を行う。
【0019】
スキャナ画像処理部122は、スキャナ103から読み込んだ入力画像データに対して、補正、加工等の画像処理を行う。プリンタ画像処理部123は、プリンタ104へ出力するプリント出力画像データに対して、色変換、フィルタ処理換等の処理を行う。また、編集画像処理部124は、RAM111やHDD115が保持する画像データに対してループバック的に解像度変換やレイアウト変換等の画像処理を行う。これらの画像処理部は、例えばASIC(Application Specific Integrate Circuit)を用いたハードウェア処理として実装される。
【0020】
画像圧縮部125は、多値画像データに対してはJPEG(Joint Photographic Experts Group)圧縮伸長処理を行う。また、2値画像データに対してはJBIG(Joint Bi-level Image Experts Group)、MMR(Modified Modified Read)などの符号化方式を用いた圧縮伸長処理を行う。
【0021】
画像特徴量生成部126は、辞書画像および入力画像の局所特徴量生成処理を行う。特徴点および局所特徴量の生成では、例えば、SIFT、SURF、BRIEF等の特徴量検出アルゴリズムが利用される。
【0022】
画像登録部127は、辞書画像が入力画像中に検出可能かを評価し、検出可能と判定された画像を登録する処理を行う。画像特徴量生成部126が生成した辞書画像の特徴量を用いる。また、辞書画像の付加情報を決定・変更したり有効な辞書画像の個数が所定値より大きいか否かの判定なども行う。詳細は後述する。辞書画像は付加情報とともに辞書画像情報としてHDD115に保存される。
【0023】
画像検出部128は、入力画像中から辞書画像の検出処理を行う。画像特徴量生成部126が生成した辞書画像と入力画像の特徴量を用いてマッチング処理を行い、辞書画像を検出する。入力画像と辞書画像の特徴量を用いたマッチングでは、入力画像の特徴量と、事前に登録されている辞書画像の特徴量とを比較して、入力画像の特徴点に対応する辞書画像の特徴点を探索する手法が利用可能である。探索により得られた入力画像の対応点1つ1つに対して、辞書画像の基準点(例えば重心等)に対するベクトルを用いて入力画像平面内に投票(スコア算出)を行う。全ての対応点の投票後、入力画像平面内で最大となる投票値を決定し、この最大値が所定値以上か否かで、入力画像中における辞書画像と一致性のある(一致又は一定以上類似する)画像の有無や位置を判定することができる。なお、辞書画像と入力画像との比較方法はこれに限定されるものではなく、辞書画像と一致性のある画像が入力画像に含まれるか否かを判定可能な方法であれば、どのような方法を用いてもよい。
【0024】
なお、上述した画像特徴量生成部126、画像登録部127、画像検出部128は、例えばCPLD(Complex Programmable Logic Device)等で構成され、内部に格納される回路情報等に基づいて動作する。CPLDは一例であり、これに限定されるものではない。
【0025】
画像形成装置100は、辞書画像と一致性のある画像が入力画像に含まれるか判定し、該判定の結果に基づいて入力画像を用いるジョブ(例えばコピージョブ)の実行を制御する画像処理装置である。なお、画像形成装置100では、辞書画像を複数登録可能である。以下、辞書画像を登録する場合の処理について説明する。
【0026】
図2は、画像形成装置100に対して画像を登録する処理(画像登録処理)を例示するフローチャートを示す。
図2、後述する
図3及び
図8のフローチャートに示す処理は、メインコントローラ101のCPU110がRAM111に格納されたプログラムを実行することにより実現される。
【0027】
例えば操作部102から画像形成装置100に対して画像を登録する処理の実行が指示されると、CPU110が本フローチャートの処理を開始する。
まず、S201において、CPU110は、辞書画像の入力処理を実行する。辞書画像の入力は例えば、画像形成装置100のスキャナ103を介して行ってもよいし、NW通信部117を介してLANで接続された図示しないサーバから取得することで行ってもよい。S201で入力される画像は、辞書画像として登録される候補となる画像である。入力された辞書画像はHDD115に保存される。辞書画像の解像度は任意であり、本実施形態では例えば200dpiとする。後述するが、辞書画像の評価を行う際に使用する評価画像の解像度も辞書画像と同一である必要がある。
【0028】
次に、S202において、CPU110は、上記S201で入力された辞書画像に対するジョブ制御情報の入力を操作部102等から受け付ける(S202)。ジョブ制御情報とは、入力画像から辞書画像が検出された場合に、入力画像に対して処理する画像形成装置100のジョブに対してどのような制御を行うかを示す情報である。ジョブ制御情報は、後述する
図7に示すような辞書画像情報の一部として保存される。なお、辞書画像情報は、HDD115に保存される。また、ジョブ制御情報の例としては、入力画像から辞書画像が検出された場合に実行されているジョブを禁止する「ジョブ禁止」、入力画像から辞書画像が検出された場合に実行されているジョブの情報に検出された旨を記録する「ジョブ追跡」などがある。実施例1では「ジョブ禁止」のみを設定可能として説明する。なお、「ジョブ禁止」に加え「ジョブ追跡」等の他のジョブ制御情報も設定可能な例は実施例2で説明する。
【0029】
次に、S203において、CPU110は、辞書画像の評価処理を実行する。辞書画像の評価処理の詳細は後述する
図3において説明する。なお、辞書画像の評価処理の結果は、「登録可能」又は「登録不可能」となる。
【0030】
次に、S204において、CPU110は、上記S203での評価結果が「登録可能」か否かを判断する。そして、評価結果が「登録不可能」と判断した場合(S204でNoの場合)、CPU110は、S206に処理を進める。
【0031】
S206において、CPU110は、上記S201で入力された辞書画像を登録せず破棄する。この場合、CPU110は、該辞書画像に対応する辞書画像情報も登録しない。さらに、S207において、CPU110は、画像が登録されなかった旨を、例えば
図4に示すように操作部102へ表示し、本フローチャートの処理を終了する。
【0032】
図4は、画像が登録されなかった際に、操作部102に表示される画面の一例を示す図である。
画像登録不可通知画面400には、登録不可の旨を示すメッセージと、画像登録不可通知画面400を終了する終了ボタン401が表示される。
【0033】
以下、
図2のフローチャートの説明に戻る。
一方、上記S204において、評価結果が「登録可能」と判断した場合(S204でYesの場合)、CPU110は、S205に処理を進める。
S205において、CPU110は、上記S201で入力した辞書画像を有効化する。なお、辞書画像の有効化とは、辞書画像に対応する辞書画像情報を登録し、該辞書画像情報に辞書画像が有効であることを示す情報を付加することにより行う。これにより、上記S201の入力画像が辞書画像として登録されることとなる。
【0034】
次に、S208において、CPU110は、辞書画像のうち有効である辞書画像の個数を示す有効画像個数が、最大有効画像個数より大きいか否かを判断する。なお、最大有効画像個数は、画像形成装置100において有効化可能な辞書画像の個数であり、予め設定されてHDD115に保存されている。
【0035】
そして、上記S208において、有効画像個数が最大有効画像個数より大きくないと判断した場合(S208でNoの場合)、CPU110は、本フローチャートの処理を終了する。
【0036】
一方、上記S208において、有効画像個数が最大有効画像個数より大きいと判断した場合(S208でYesの場合)、CPU110は、S209に処理を進める。
S209において、CPU110は、例えば
図5に示すように、有効画像を選択指定するための画面を操作部102へ表示する。
【0037】
図5は、ユーザが有効にする辞書画像を選択指定する際に操作部102に表示される画面の一例を示す図である。
有効画像選択指定画面500には、辞書画像のプレビュー表示501、辞書画像の有効/無効を選択する選択領域502、有効にする辞書画像を決定する決定ボタン503が表示される。
【0038】
図5では、選択領域502は有効な場合にマークが表示される(チェックされる)形式を取っている。ユーザは、辞書画像のプレビュー表示501を確認しながら、選択領域502に対して操作を行うことで有効/無効の選択を行い、決定ボタン503を押下することで有効にする辞書画像を決定する。なお、選択領域502は最大有効画像個数までしか有効の選択ができないように、制御されている。
【0039】
以下、
図2のフローチャートの説明に戻る。
次に、S210において、CPU110は、ユーザにより選択指定された辞書画像を有効化する処理を行う。なお、辞書画像の有効化処理の内容はS205と同一である。なお、選択指定されなかった辞書画像には、対応する辞書画像情報に無効であることを示す情報を付加して無効化する。該無効化により、辞書画像として登録されていた画像が登録解除となる。なお、無効化された辞書画像情報についてはユーザ操作に応じて削除することも可能である。上記S210の処理の後、CPU110は本フローチャートの処理を終了する。
【0040】
なお、上記
図2の説明では、有効化の際に辞書画像情報に該辞書画像情報が有効であることを示す情報を付加し、無効化の際に辞書画像情報に該辞書画像情報が無効であることを示す情報を付加する構成について説明した。しかし、有効化の際に辞書画像情報を登録し、無効化の際に辞書画像情報自体を削除するようにしてもよい。
【0041】
図3は、実施例1の画像形成装置100で辞書画像の評価を行う評価処理を例示するフローチャートを示す。
S301において、CPU110は、
図2のS201で入力されてHDD115に保存された辞書画像を画像特徴量生成部126に入力し、辞書画像の特徴量を生成する。生成された特徴量はHDD115に保存される。
【0042】
次に、S302において、CPU110は、上記S301で生成された辞書画像の特徴量を画像登録部127に入力し、特徴点の数が所定値より多いか否かを判断する。なお、所定値は、画像形成装置100において辞書画像を検出するのに十分な特徴点の数であり、予め画像登録部127に保存しておいてもよいし、HDD115に保存しておいてもよい。
【0043】
そして、特徴点の数が所定値よりも多くないと判断した場合(S302でNoの場合)、CPU110は、辞書画像の評価結果を「登録不可能」とし(S306)、本フローチャートの処理を終了する。
【0044】
一方、特徴点の数が所定値よりも多いと判断した場合(S302でYesの場合)、CPU110は、S303に処理を進める。
S303において、CPU110は、画像登録部127に指示し、テンプレート画像に辞書画像を重ね合わせて評価画像を生成する。テンプレート画像、辞書画像、評価画像の例を
図6(a),(b),(c)に示す。
【0045】
図6は、テンプレート画像、辞書画像、評価画像を例示する図である。
図6(a)のテンプレート画像は、任意の画像であり、HDD115に保存される。例えば、業務で使用する定型文書フォーマットなどをテンプレート画像として用いる。
図6(b)の辞書画像は、
図2のS201で入力されたものであり、HDD115に保存される。
【0046】
図6(c)の評価画像は、テンプレート画像(
図6(a))に辞書画像(
図6(b))を任意の位置で重ね合わせることで生成される。
図6(c)の例は、辞書画像をテンプレート画像の座標[800,1100]を中心として重ね合わせた例である。なお、複数のテンプレート画像を用いたり、テンプレート画像に対して複数の座標位置に辞書画像を重ね合わせることにより、複数の評価画像を生成してもよい。また、評価画像の解像度は辞書画像と同一である(本実施例では200dpiとする)。
【0047】
以下、
図3のフローチャートの説明に戻る。
次に、S304において、CPU110は、上記S303で生成した評価画像を入力画像として画像特徴量生成部126に入力し、評価画像の特徴量を生成する。
次に、S305において、CPU110は、上記S301で生成された辞書画像の特徴量と、上記S304で生成された評価画像の特徴量を画像検出部128に入力し、辞書画像が検出可能か否かを判断する。
【0048】
なお、入力画像と辞書画像の一致性の判定は、入力画像の特徴量と辞書画像の特徴量とをマッチングする技術により行う。特徴量同士のマッチングでは、入力画像の特徴量と辞書画像の特徴量とを比較して、入力画像の特徴点に対応する辞書画像の特徴点を探索する手法が利用可能である。探索により得られた入力画像の対応点1つ1つに対して、辞書画像の基準点(例えば重心等)に対するベクトルを用いて入力画像平面内に投票(スコア算出)を行う。全ての対応点の投票後、入力画像平面内で最大となる投票値(最大値)を決定し、この最大値が所定値以上か否かで、入力画像中における辞書画像の有無や辞書画像の位置を判定することができる。この結果、入力画像と辞書画像の一致性の判定ができる。入力画像と辞書画像に一致性があると判定した場合には「検出可能」と判断し、入力画像と辞書画像に一致性がないと判定した場合には「検出不可能」と判断する。
【0049】
そして、上記S305において、検出不可能と判断した場合(S305でNoの場合)、CPU110は、辞書画像の評価結果を「登録不可能」とし(S306)、本フローチャートの処理を終了する。
【0050】
一方、上記S305において、検出可能と判断した場合(S305でYesの場合)、CPU110は、辞書画像の評価結果を「登録可能」とし(S307)、本フローチャートの処理を終了する。なお、上記S306、S307の辞書画像の評価結果は、
図2のS204で使用される。
【0051】
図7は、実施例1の画像登録処理(
図2、
図3で示した処理)の結果、生成される辞書画像情報のデータフォーマットを例示する図である。
図7に示すように、実施例1の辞書画像情報のデータフォーマットには、ID701、S301で生成される辞書画像の特徴量702、辞書画像のプレビュー時に使用するプレビュー画像703、S202で入力されるジョブ制御情報704、S205で入力される辞書画像の有効情報705が含まれる。なお、辞書画像情報は、例えばS201で辞書画像が入力される際に作成される。この際、ID701、プレビュー画像703も作成されて、辞書画像情報に付加されるものとする。例えば、プレビュー画像703は、S201で辞書画像として入力された画像データ(例えばスキャナ画像処理後の画像データ)に対して、編集画像処理部124で解像度変換を施すことにより生成される。また、ID701は、辞書画像情報と辞書画像とを紐付けるため等に使用可能である。
【0052】
図8は、実施例1の画像形成装置100で辞書画像の検出処理を有効にした状態でコピージョブを行う場合の処理を例示するフローチャートである。
【0053】
CPU110は、操作部102を介してユーザによってコピージョブの実行を指示されたことを検知すると、本フローチャートの処理を開始する。なお、コピージョブは画像形成装置100の辞書画像の検出処理が有効な状態で実行される。
S801において、CPU110は、デバイスIF121を介して、スキャナ103に原稿の読み取りを指示する。この指示に応じて、スキャナ103は、S802の処理を実行する。
【0054】
S802において、スキャナ103は、原稿の読み取りを実行し、読み取った画像データを、デバイスIF121を介して、スキャナ画像処理部122へ送信する。CPU110は、スキャナ画像処理部122を制御し受信した画像データに対する各種スキャン用画像処理を行い、画像処理後の画像データをRAM111またはHDD115へ送信する。
【0055】
次に、S803において、CPU110は、スキャナ画像処理後の画像データをRAM111またはHDD115から取得し、入力画像として画像特徴量生成部126に入力し、特徴量の生成を行う。なお、S803では、スキャナ画像処理後の画像データと辞書画像の解像度が異なる場合、CPU110は、スキャナ画像処理後の画像データを編集画像処理部124を用いて、辞書画像の解像度と同一の解像度となるように解像度変換を行う。
【0056】
次に、S804において、CPU110は、入力画像の特徴量と辞書画像の特徴量を画像検出部128に入力し、入力画像から辞書画像が検出可能かを判断する。検出方法は、
図3のS305と同様であり、特徴量同士のマッチングを用いる。辞書画像が複数ある場合は、入力画像と全ての辞書画像で一対一の特徴量同士のマッチングを行う。
【0057】
そして、辞書画像が検出された、すなわち辞書画像を検出可能と判断した場合(S804でYesの場合)、CPU110は、S805に処理を進める。
S805において、CPU110は、上記実行を指示されたコピージョブをキャンセルする。さらに、S806において、CPU110は、操作部102へ上記指示されたコピージョブがキャンセルされた旨を表示し、本フローチャートの処理を終了する。
【0058】
一方、辞書画像が検出されなかった、すなわち辞書画像を検出不可能と判断した場合(S804でNoの場合)、CPU110は、S807に処理を進める。
S807において、CPU110は、上記スキャナ画像処理後の画像データをRAM111またはHDD115からプリンタ画像処理部123へ送信する。さらに、CPU110は、プリンタ画像処理部123を制御し、受信した画像データ(上記スキャナ画像処理後の画像データ)に対する各種プリント用画像処理を行い、プリンタ104へ送信する。最後に、CPU110は、プリンタ104に画像データの紙への印刷を指示する(印刷実行)(S808)。そして、本フローチャートの処理を終了する。
【0059】
以上説明したように、実施例1では、画像の登録時に辞書画像としての評価を行うことで、検出可能な画像のみを辞書画像として登録することができる。また、評価時に評価画像を生成し評価画像から辞書画像が検出可能であることを確認することで、例えばスキャナでの画像読み取りなどの画像の微細な変動に対しても頑健に検出可能な画像のみを登録することができる。なお、本実施例は一例であって、本発明はこれに限定されるものではない。
その他、登録時の辞書画像の評価においては、登録可能な最低解像度や画像サイズを予め定義しておき、それらを辞書画像が上回っている場合に検出可能と判断してもよい。
【0060】
なお、上記実施例では、テンプレート画像に辞書画像(候補)を重ね合わせて評価画像を生成し、該評価画像から辞書画像が検出可能か否かにより、辞書画像(候補)が登録可能か否かを評価する構成について説明した。しかし、評価画像は少なくとも辞書画像を含む画像であればよい。例えば、辞書画像(候補)そのものを評価画像として用いてもよい。
【実施例2】
【0061】
実施例2では、辞書画像を検出した際のジョブ制御として「ジョブ禁止」のみを設定可能な場合について説明した。実施例2では、辞書画像を検出した際のジョブ制御として複数設定可能な場合について説明する。実施例1との差分を中心に説明する。
【0062】
実施例2における、画像形成装置100のブロック図は
図1と同一であるので割愛する。また、画像登録時のフローチャートは
図2と同一であるが、ジョブ制御情報入力ステップ(S202、
図3)において、複数のジョブ制御情報が1つ以上入力可能である。例えば「ジョブ禁止」と「ジョブ追跡」が入力可能であるとする。
【0063】
図9は、実施例2の画像形成装置100で辞書画像の評価を行う評価処理を例示するフローチャートを示し、
図3と同一のステップには同一のステップ番号を付してある。なお、
図9及び後述する
図11のフローチャートに示す処理は、メインコントローラ101のCPU110がRAM111に格納されたプログラムを実行することにより実現される。
【0064】
以下、
図9について
図3との差分を中心に説明する。
辞書画像の特徴量生成(S301)の後に、CPU110は、辞書画像のジョブ制御情報に「ジョブ禁止」が含まれるか否かを判断する(S901)。
【0065】
そして、辞書画像のジョブ制御情報に「ジョブ禁止」が含まれると判断した場合(S901でYesの場合)、CPU110は、S902に処理を進める。
S902において、CPU110は、後段のS302において辞書画像の特徴点の数と比較する特徴点数の所定値を「500」に設定する。
【0066】
一方、辞書画像のジョブ制御情報に「ジョブ禁止」が含まれないと判断した場合(S901でNoの場合)、CPU110は、S903に処理を進める。
S903において、CPU110は、後段のS302において辞書画像の特徴点の数と比較する特徴点数の所定値を「300」に設定する。
【0067】
なお、本フローチャートの処理は、上記S902で設定する所定値を上記S903で設定する所定値よりも大きくするように制御するものであり、所定値「500」、「300」はその一例であり、これに限定されるものではない。
【0068】
S302では、CPU110は、上記S902又はS903で設定された所定値と辞書画像の特徴点の数を比較する。ジョブ制御情報に「ジョブ禁止」を含む場合に所定値を大きくすることで、確実に辞書画像のみが検出できるようにする。一方、ジョブ制御情報に「ジョブ禁止」を含まず「ジョブ追跡」の場合には、「ジョブ禁止」に比べて所定値を小さくすることで、辞書画像に類似した画像を検出した場合においても追跡を可能にする。なお、以降の処理は
図3と同一の処理であるので説明を省略する。
【0069】
図10は、実施例2の画像登録処理(
図2、
図9で示した処理)の結果、生成される辞書画像情報のデータフォーマットを例示する図であり、
図7と同一のものには同一の符号を付してある。
【0070】
ジョブ制御情報1001は、S202(
図9)で入力される実施例2のジョブ制御情報に対応する。
図10に示すように、実施例2の辞書画像情報のデータフォーマットでは、ジョブ制御情報1001において、「ジョブ禁止」と「ジョブ追跡」という複数のジョブ制御情報が存在する。なお、実施例2のジョブ制御情報1001では、「ジョブ禁止」及び「ジョブ追跡」のように、複数のジョブ制御情報を保持することが可能である。
【0071】
図11は、実施例2の画像形成装置100で辞書画像の検出処理を有効にした状態でコピージョブを行う場合の処理を例示するフローチャートであり、
図8と同一のステップには同一のステップ番号を付してある。以下、
図8との差分を中心に説明する。
【0072】
S804において辞書画像が検出された、すなわち辞書画像を検出可能と判断した場合(S804でYesの場合)、CPU110は、S1101に処理を進める。
S1101において、CPU110は、上記辞書画像のジョブ制御情報を取得する。本実施例では、「ジョブ禁止」のみ、「ジョブ追跡」のみ、「ジョブ禁止」と「ジョブ禁止」の両方の3通りのジョブ制御情報を取り得る。
【0073】
次に、S1102において、CPU110は、上記S1101で取得した制御情報に「ジョブ追跡」が含まれるか否かを判断する。そして、「ジョブ追跡」が含まれると判断した場合(S1102でYesの場合)、CPU110は、S1103に処理を進める。S1103において、CPU110は、コピージョブに追跡情報を付加し、S1104に処理を進める。なお、追跡情報を付加するとは、例えばジョブ情報にフラグを付加することである。これにより、事後に追跡情報が付加されたジョブをジョブ履歴から検索可能になる。
【0074】
一方、「ジョブ追跡」が含まれていないと判断した場合(S1102でNoの場合)、CPU110は、そのままS1104に処理を進める。
【0075】
S1104において、CPU110は、上記制御情報に「ジョブ禁止」が含まれるか否かを判断する。そして、「ジョブ禁止」が含まれると判断した場合(S1104でYesの場合)、CPU110は、S805に処理を進める。これ以降は
図8と同様であるので説明を省略する。
【0076】
一方、「ジョブ禁止」が含まれていないと判断した場合(S1104でNoの場合)、CPU110は、S807に処理を進める。これ以降は
図8と同様であるので説明を省略する。
【0077】
以上説明したように、実施例2では、辞書画像に複数のジョブ制御情報が付加可能であり、検出時に辞書画像に付加されているジョブ制御情報を判断することで、適切なジョブ制御を可能にする。なお、本実施例は一例であって、本発明はこれに限定されるものではない。
【0078】
その他、最大有効画像個数の決定方法として、有効画像個数と辞書画像の検出にかかる処理時間の関係を保持しておき、所定の処理時間より遅くなる有効画像個数(又は所定の処理時間内で検索可能な最大の有効画像個数)を最大有効画像個数としてもよい。さらに、所定の処理時間をユーザが指定できるようにしてもよい。また、有効画像個数優先モードと処理時間優先モードを設け、これらのモードをユーザに選択させるようにすることで、所定の処理時間を決定してもよい。
【0079】
上記実施例では、新規辞書画像の登録・有効化を試みた際に最大有効画像個数に達している場合は、ユーザ操作に応じて前記いずれかの辞書画像を無効にする構成について説明した。しかし、新規辞書画像の登録・有効化を試みた際に最大有効画像個数に達している場合は、当該新規辞書画像を登録・有効化しないようにしてもよい。
【0080】
また、画像の登録時に辞書画像の特徴量をすでに登録済みの辞書画像の特徴量と比較して、差分が所定以上小さい場合に新たに登録せずに、登録済みの辞書画像を用いてもよい。
【0081】
また、ジョブ制御情報として「条件付きジョブ許可」を設けてもよい。「条件付きジョブ許可」とは、ユーザの属性やパスワードの入力といった条件を満足する場合にジョブを許可するジョブ制御である。例えば、ユーザが所属する組織や役職等によってジョブを許可する、といった使用方法が想定される。
【0082】
以上のように、本実施例の画像形成装置100は、ユーザが登録した画像と一致する(類似する)画像が原稿に含まれるか否かを、登録画像の特徴量と原稿画像の特徴量とを用いて判定し、その判定結果にしたがってコピージョブ等を禁止可能な構成を有する。さらに、画像形成装置100は、上記判定に適さないような画像を登録画像として登録させない構成を有する。すなわち、画像が辞書画像として適当な画像であるかを評価し、その評価結果にしたがってその画像を辞書画像として登録するか否かを制御する。このような構成により、判定に適さないような画像の登録を防ぐことができる。よって、ユーザは入力された画像の処理を制御するために用いられている辞書画像として、適切な画像を登録することができる。すなわち、ユーザが適当でない画像を、入力される画像の処理を制御するための辞書画像として登録してしまうことを防止することができる。
【0083】
なお、上記判定に適さない画像とは、例えば、ユーザが登録しようとしている画像の特徴点の数が所定より少ない、テンプレートに登録しようとしている画像を重ね合わせて生成した評価画像から、該登録しようとしている画像が検出不可能であった画像等である。
【0084】
また、画像形成装置100は、登録画像の数が閾値以上であれば、画像を登録させない構成を有する。この構成により、あまりにも多くの登録画像が登録されてしまうことによって全登録画像の判定に時間がかかってしまうといった課題を解決することができる。
【0085】
さらに、上記各実施例では、原稿と登録されている辞書画像との一致(類似)によりコピージョブを制御する場合を例に説明したが、辞書画像との一致(類似)により制御するジョブはコピージョブに限定されるものではない。例えば、プリントジョブに含まれる画像と辞書画像との一致(類似)によりプリントジョブを制御する構成であってもよい。また、原稿と登録されている辞書画像との一致(類似)によりスキャンジョブを制御するする構成であってもよい。
【0086】
以上のように、本発明の各実施例によれば、入力画像を用いるジョブを制御するために使用される辞書画像として適切でない画像の登録を防止し、適切な画像を適切な数だけ登録することができる。
【0087】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【0088】
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。