JP2017134598A - 画像検索装置、画像検索方法及びプログラム - Google Patents
画像検索装置、画像検索方法及びプログラム Download PDFInfo
- Publication number
- JP2017134598A JP2017134598A JP2016013680A JP2016013680A JP2017134598A JP 2017134598 A JP2017134598 A JP 2017134598A JP 2016013680 A JP2016013680 A JP 2016013680A JP 2016013680 A JP2016013680 A JP 2016013680A JP 2017134598 A JP2017134598 A JP 2017134598A
- Authority
- JP
- Japan
- Prior art keywords
- image
- search
- local feature
- specific pattern
- feature amount
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/40—Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/52—Scale-space analysis, e.g. wavelet analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/758—Involving statistics of pixels or of feature values, e.g. histogram matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/945—User interactive design; Environments; Toolboxes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/04—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0094—Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
【課題】ユーザーの利用条件に応じて画像の検出時間の最適化を図る。
【解決手段】局所特徴量を用いた画像検索が可能な画像検索装置の画像解析部203は、画像を入力する入力手段と、ユーザインターフェース206を介して検索元画像に対応する検索条件の指定を受け付ける受付手段と、検索条件に基づいて検索方法を選択する選択手段と、選択された前記検索方法に基づいて画像の局所特徴量を算出する算出手段と、前記検索元画像の局所特徴量と検索対象画像の局所特徴量との比較を行う比較手段と、を備える。
【選択図】図6
【解決手段】局所特徴量を用いた画像検索が可能な画像検索装置の画像解析部203は、画像を入力する入力手段と、ユーザインターフェース206を介して検索元画像に対応する検索条件の指定を受け付ける受付手段と、検索条件に基づいて検索方法を選択する選択手段と、選択された前記検索方法に基づいて画像の局所特徴量を算出する算出手段と、前記検索元画像の局所特徴量と検索対象画像の局所特徴量との比較を行う比較手段と、を備える。
【選択図】図6
Description
本発明は、画像検索装置、画像検索方法及びプログラムに関する。
画像の局所的な特徴量(局所特徴量)を用いて類似画像を検索する方法が提案されている。この方法では、まず、画像から特徴的な点(局所特徴点)を抽出する(非特許文献1)。次に、当該局所特徴点とその周辺の画像情報とに基づいて、当該局所特徴点に対応する特徴量(局所特徴量)を算出する(非特許文献2)。画像の検索は、局所特徴量同士のマッチングによって行う。
この特徴量を用いた画像の検索方法は、MFP(Muluti Functional Printer)において、スキャン画像やPDLからレンダリングされた画像などに特定のパターンが含まれていることの検出に応用することが可能である。まず、あらかじめ、検出したい特定のパターン(以後、特定パターンと呼ぶ)から局所特徴量を抽出しておき、MFPに登録しておく。次に、文書画像からも局所特徴量を抽出する。最後に、登録された局所特徴量と文書画像から抽出された局所特徴量のマッチングを行い、マッチング度を算出し、マッチング度が一定以上だった場合には、特定のパターンが文書画像に含まれていると判定する。特定パターンが検出された場合は、MFPは、その後の処理を通常時と切り替える。例えば、特定パターンが検出された場合には、文書画像のプリントをしない、文書画像を外部へ送信しない、検出されたことを管理者へ通知する、等である。
特定パターンの検出にかかる時間は、局所特徴量の算出時間と、局所特徴量同士のマッチング時間の合計となる。マッチング時間は、マッチングする局所特徴量ペアの個数に比例する。特許文献1は、抽出する局所特徴量の中から利用する局所特徴量を限定することにより高速にマッチングを行い、局所特徴量同士のマッチング時間を抑制する技術を開示している。
C.Harris and M.J. Stephens,"A combined corner and edge detector," In Alvey Vision Conference,pages 147−152, 1988.
David G. Lowe, "Distinctive Image Features from Scale−Invariant Keypoints," International Journal of Computer Vision, 60, 2 (2004), pp.91−110
しかしながら、特許文献1は、マッチングに利用する局所特徴量を減らすことにより局所特徴量同士のマッチングを高速に行う手法であり、局所特徴量の算出時間については考慮されていない。特定パターンの検出にかかる時間をより短縮するために、局所特徴量の算出時間も短縮する必要がある。
本発明は、ユーザーの利用条件に応じて検出時間の最適化を図る画像検索装置を提供することを目的とする。
上記課題を解決するために、本発明に係る局所特徴量を用いた画像検索が可能な画像検索装置は、画像を入力する入力手段と、検索元画像に対応する検索条件の指定を受け付ける受付手段と、前記検索条件に基づいて検索方法を選択する選択手段と、選択された前記検索方法に基づいて画像の局所特徴量を算出する算出手段と、前記検索元画像の局所特徴量と検索対象画像の局所特徴量との比較を行う比較手段と、を備える。
本発明によれば、ユーザーの利用条件に応じて検出時間の最適化を図る画像検索装置を提供することができる。
(第1実施形態)
図1は、本実施形態におけるシステム構成の一例を示すブロック図である。図1に示される通り、本実施形態の画像検索システムは、画像処理装置100、画像検索装置200から構成され、画像処理装置100と、画像検索装置200とは、ネットワーク150を介して相互にデータ通信可能に相互に接続されている。
画像処理装置100は、ユーザインターフェース104、CPU105、RAM106、記憶部107、画像読取部108、画像出力部109、ディスプレイ110を備え、制御部101を介して相互に通信可能に接続されている。制御部101はさらに画像処理装置100全体を制御する装置制御部102と、画像データを処理する画像処理部103とを有する。
図1は、本実施形態におけるシステム構成の一例を示すブロック図である。図1に示される通り、本実施形態の画像検索システムは、画像処理装置100、画像検索装置200から構成され、画像処理装置100と、画像検索装置200とは、ネットワーク150を介して相互にデータ通信可能に相互に接続されている。
画像処理装置100は、ユーザインターフェース104、CPU105、RAM106、記憶部107、画像読取部108、画像出力部109、ディスプレイ110を備え、制御部101を介して相互に通信可能に接続されている。制御部101はさらに画像処理装置100全体を制御する装置制御部102と、画像データを処理する画像処理部103とを有する。
ユーザインターフェース104は、例えばキーボード、マウス、その他入出力装置によって構成され、各種の設定値または指定値を入力することができる。
CPU105は、記憶部107内の初期プログラムに従って、メインプログラムを記憶部107より読出し、RAM106に記憶する。
RAM106はプログラム格納用や、ワーク用のメインメモリとして使用される。
画像読取部108は、例えばスキャナーによって構成され、紙文書等を読取ることにより画像データ形式の文書画像を取得することができる。
CPU105は、記憶部107内の初期プログラムに従って、メインプログラムを記憶部107より読出し、RAM106に記憶する。
RAM106はプログラム格納用や、ワーク用のメインメモリとして使用される。
画像読取部108は、例えばスキャナーによって構成され、紙文書等を読取ることにより画像データ形式の文書画像を取得することができる。
制御部101は、画像読取部108から文書画像を取得すると、記憶部107に記憶する。そして、制御部101は、特定パターンの登録処理または特定パターンの検出処理を実行する際に、記憶部107に記憶された文書画像を、ネットワーク150を介して画像検索装置200に送信する。制御部101は、さらに、記憶部107に記憶された文書画像をディスプレイ110に提供し、ディスプレイ110上に文書画像を出力する処理を実行する。また、制御部101は同様に記憶部107に記憶された文章画像を画像出力部109に提供する。
画像出力部109は、種々の形式で文書画像を出力する処理を実行する。例えば、画像出力部109は、文書画像に係る画像データを、記憶媒体に出力する処理を実行することができる。また、画像出力部109は、印刷機能を備え、紙媒体等の出力媒体に文書画像を出力する処理を実行してもよい。
以上説明した画像処理装置100は一例であり、画像読取部108や画像出力部109を有さない構成の画像処理装置100であってもよい。
画像出力部109は、種々の形式で文書画像を出力する処理を実行する。例えば、画像出力部109は、文書画像に係る画像データを、記憶媒体に出力する処理を実行することができる。また、画像出力部109は、印刷機能を備え、紙媒体等の出力媒体に文書画像を出力する処理を実行してもよい。
以上説明した画像処理装置100は一例であり、画像読取部108や画像出力部109を有さない構成の画像処理装置100であってもよい。
画像検索装置200は、ユーザインターフェース206、CPU207、RAM208、記憶部209、ディスプレイ210を備え、制御部201を介して相互に通信可能に接続されている。制御部201は、画像検索装置200全体を制御する装置制御部202と、画像の解析を行う画像解析部203とを有する。本実施形態の画像解析部203は、特定パターンの登録処理を行う特定パターン登録部204と、特定パターンの検出を行う特定パターン検出部205とを有する。
ユーザインターフェース206は、例えばキーボード、マウス、その他入出力装置によって構成され、各種の設定値または指定値を入力することができる。本実施形態におけるユーザインターフェース206は、後述の特定パターン登録受付手段および対応スケール指定受付手段として機能する。
CPU207は、記憶部209内の初期プログラムに従って、メインプログラムを記憶部209より読出し、RAM208に記憶する。RAM208はプログラム格納用やワーク用のメインメモリとして使用される。
CPU207は、記憶部209内の初期プログラムに従って、メインプログラムを記憶部209より読出し、RAM208に記憶する。RAM208はプログラム格納用やワーク用のメインメモリとして使用される。
制御部201は、記憶部209に記憶された文書画像をディスプレイ210に提供し、ディスプレイ210上に文書画像を出力する処理を実行する。また、制御部201は、画像処理装置100から送信され、画像検索装置200の記憶部209に保存された文書画像を画像解析部203に提供する。
画像解析部203は、ユーザインターフェース206を介して入力を受付けた各種の指定情報に基づいて文書画像から特定パターンの検出処理を実行する。また、ユーザインターフェース206を介して入力を受付けた各種の指定情報は、記憶部209やRAM208に保存され、画像解析部203は、保存された指定情報を読出して文書画像からの特定パターンの検出処理を実行する。さらに、画像解析部203は、特定パターンの登録処理も実行する。
本実施形態における画像解析部203は、特定パターン登録フェーズでは、後述する方法により利用する局所特徴量を決定し、特定パターン画像から局所特徴量を算出し、記憶部209やRAM208に保持しておく。本実施形態における画像解析部203は、特定パターン検出フェーズでは、文書画像から局所特徴量を算出する。そして、特定パターン登録フェーズにおいて記憶部209やRAM208に保持した局所特徴量とのマッチングを行い、マッチング度を算出し、特定パターンの有無を判定する。
画像解析部203は、ユーザインターフェース206を介して入力を受付けた各種の指定情報に基づいて文書画像から特定パターンの検出処理を実行する。また、ユーザインターフェース206を介して入力を受付けた各種の指定情報は、記憶部209やRAM208に保存され、画像解析部203は、保存された指定情報を読出して文書画像からの特定パターンの検出処理を実行する。さらに、画像解析部203は、特定パターンの登録処理も実行する。
本実施形態における画像解析部203は、特定パターン登録フェーズでは、後述する方法により利用する局所特徴量を決定し、特定パターン画像から局所特徴量を算出し、記憶部209やRAM208に保持しておく。本実施形態における画像解析部203は、特定パターン検出フェーズでは、文書画像から局所特徴量を算出する。そして、特定パターン登録フェーズにおいて記憶部209やRAM208に保持した局所特徴量とのマッチングを行い、マッチング度を算出し、特定パターンの有無を判定する。
以上説明した画像検索装置200は一例であり、実施形態はこれに限られない。その他必要に応じてその他の構成を備えるものであってもよい。例えば、画像検索装置200は、サーバ等のコンピュータ装置で実装することができるが、記憶部209や画像解析部203の機能は、クラウドと呼ばれるネットワーク150でつながるリモートの計算資源で実装する構成も考えられる。さらに、画像処理装置100が、画像検索装置200の機能を包含する態様で画像検索装置200を実装してもよい。
画像の特徴的な点である局所特徴量には、回転した画像からも類似した局所特徴量を抽出可能な回転不変性や、拡大・縮小した画像からも類似した局所特徴量を抽出可能な拡大・縮小不変性を持つものがある。このような局所特徴量を利用すれば、文書画像に含まれる特定パターンが回転したり、拡大又は縮小していたりする場合であっても、検出することが可能となる。しかし、拡大・縮小不変性を持つ局所特徴量の算出は、異なるスケールの画像の集合であるスケールスペースの算出と、そのスケールスペースの中での最適な局所特徴点の抽出を行う必要があるため、計算量が大きくなる。そのため、回転不変性および拡大・縮小不変性を持つ局所特徴量は算出に時間が掛か場合がある。一方、特定パターンの大きさが所定のサイズだけの場合であれば、拡大・縮小不変性を持たず、回転不変性だけを持つ局所特徴量を利用すれば、局所特徴量の算出にかかる時間が減少し、特定パターンの検出を、より高速に実現することが可能となる。したがって、局所特徴量として回転不変性および拡大・縮小不変性を持つ局所特徴量を用いた方が検索に有意な場合と、回転不変性だけを持つ局所特徴量を用いたほうが検索に有意な場合とが存在する。本発明では、検索に有意な局所特徴量を選択できるようにする。
最初に、拡大・縮小不変性を持たず、回転不変性だけを持つ局所特徴量(回転不変性局所特徴量)を算出する方法について説明し、次に、拡大・縮小不変性および回転不変性を持つ局所特徴量(拡大縮小回転不変局所特徴量)を算出する方法について説明する。
まず、拡大・縮小不変性を持たず、回転不変性だけを持つ局所特徴量(回転不変性局所特徴量)を算出する方法について説明する。画像から局所特徴量を算出するために、画像解析部203は、画像から輝度成分を抽出し、抽出した輝度成分に基づいて輝度成分画像を生成する。その輝度成分画像から、画像の回転があってもロバスト(robust)に抽出されるような局所的な特徴点(局所特徴点)を抽出する。この局所特徴点の抽出方法として、第1の実施形態では公知の手法であるHarris作用素を用いる。具体的には、Harris作用素を作用させて得られた出力画像H上の画素について、当該画素及び当該画素の8近傍にある画素(合計9画素)の画素値を調べる。そして、当該画素が局所的に最大になる(当該9画素の中で当該画素の画素値が最大になる)点を局所特徴点として抽出する。ここで、当該画素が局所的に最大になったときでも、当該画素の値がしきい値以下の場合には局所特徴点として抽出しないようにする。なお、局所特徴点を抽出可能な方法であれば、上述のHarris作用素による特徴点抽出方法に限らず、どのような特徴点抽出方法でも適用可能である。
まず、拡大・縮小不変性を持たず、回転不変性だけを持つ局所特徴量(回転不変性局所特徴量)を算出する方法について説明する。画像から局所特徴量を算出するために、画像解析部203は、画像から輝度成分を抽出し、抽出した輝度成分に基づいて輝度成分画像を生成する。その輝度成分画像から、画像の回転があってもロバスト(robust)に抽出されるような局所的な特徴点(局所特徴点)を抽出する。この局所特徴点の抽出方法として、第1の実施形態では公知の手法であるHarris作用素を用いる。具体的には、Harris作用素を作用させて得られた出力画像H上の画素について、当該画素及び当該画素の8近傍にある画素(合計9画素)の画素値を調べる。そして、当該画素が局所的に最大になる(当該9画素の中で当該画素の画素値が最大になる)点を局所特徴点として抽出する。ここで、当該画素が局所的に最大になったときでも、当該画素の値がしきい値以下の場合には局所特徴点として抽出しないようにする。なお、局所特徴点を抽出可能な方法であれば、上述のHarris作用素による特徴点抽出方法に限らず、どのような特徴点抽出方法でも適用可能である。
続いて、抽出された局所特徴点の各々について、画像の回転があっても不変となるように定義された特徴量(局所特徴量)を算出する。この局所特徴量の算出方法として、第1実施形態では、公知の手法であるSIFT(Scale−Invariant Feature Transform)を利用する。SIFTは、局所特徴点の周囲のエッジのヒストグラムを算出し、最もヒストグラム度数が大きいエッジ方向を「基準方向」として、その方向で特徴量を正規化して記述する手法である。SIFTは、検出した特徴点に対して画像の回転、スケール変化、照明変化等に頑健な特徴量を記述するため、物体認識に広く用いられている。局所特徴点が回転していても、基準方向があるために、同一の特徴量が算出可能であり、回転不変性がある特徴量となっている。
回転不変性局所特徴量は、拡大・縮小不変性を持たないが、特定パターンの登録フェーズにおいて、ユーザーが登録した特定パターンから派生特定パターンを生成し保持しておくことにより、拡大・縮小された特定パターンへの対応も可能である。ここで、派生特定パターンとは、異なるスケールの特定パターンに対応するために特定パターンを拡大・縮小して生成されたパターンである。例えば、ユーザーが50%、等倍、150%のスケールの特定パターンの検出を求めている場合には、ユーザーが登録した等倍のパターンを変倍して、50%と150%のサイズの派生特定パターンを生成する。この派生特定パターンからも局所特徴量を抽出しておき、マッチングに利用すれば、50%や150%のスケールの特定パターンについても検出可能となる。なお、回転不変性を持つ局所特徴量を算出可能な方法であれば、上述したような特徴量算出方法に限らず、どのような特徴量算出方法でも適用可能である。
次に、拡大・縮小不変性(拡縮不変性)および回転不変性を持つ局所特徴量(拡大縮小回転不変局所特徴量)を算出する方法について説明する。
画像から局所特徴量を算出するために、画像解析部203は、先ほどと同じように、画像から輝度成分を抽出し、抽出した輝度成分に基づいて輝度成分画像を生成する。
次に、縮小画像生成処理を行い、異なるスケールの画像集合であるスケールスペースを生成する。具体的には、輝度成分画像を倍率(縮小率)pに従って順次縮小することをn回繰り返し、オリジナルのサイズの画像から段階的に縮小した、n枚の縮小画像を生成する。ここで、倍率p及び縮小画像の枚数nは予め決められているものとする。
画像から局所特徴量を算出するために、画像解析部203は、先ほどと同じように、画像から輝度成分を抽出し、抽出した輝度成分に基づいて輝度成分画像を生成する。
次に、縮小画像生成処理を行い、異なるスケールの画像集合であるスケールスペースを生成する。具体的には、輝度成分画像を倍率(縮小率)pに従って順次縮小することをn回繰り返し、オリジナルのサイズの画像から段階的に縮小した、n枚の縮小画像を生成する。ここで、倍率p及び縮小画像の枚数nは予め決められているものとする。
図2は、縮小画像生成処理の一例を示す図である。図2に示す例は、倍率pが「2の−(1/4)乗」、縮小画像の枚数nが「8」、オリジナルの画像を含めた枚数n+1が「9」の場合である。もちろん、倍率pは必ずしも「2の−(1/4)乗」でなくとも良い。輝度成分画像221は、画像から輝度成分を抽出し、抽出した輝度成分に基づいて生成した輝度成分画像である。縮小画像222は当該輝度成分画像221から倍率pに従って再帰的に4回の縮小処理を行って得られた縮小画像である。そして、縮小画像223は当該輝度成分画像221から倍率pに従って8回の縮小処理を行って得られた縮小画像である。
この例では、縮小画像222は輝度成分画像221が1/2に縮小された画像となり、縮小画像223は輝度成分画像221が1/4に縮小された画像となる。なお、画像を縮小する方法は第1実施形態では、線形補間による縮小方法と、ガウシアンフィルタでぼかすことにより、疑似的に低解像度にする縮小方法を組み合わせる。この方法は公知であるSIFT特徴量における手法である。ただし、画像の縮小をその他の方法で行っても良い。
この例では、縮小画像222は輝度成分画像221が1/2に縮小された画像となり、縮小画像223は輝度成分画像221が1/4に縮小された画像となる。なお、画像を縮小する方法は第1実施形態では、線形補間による縮小方法と、ガウシアンフィルタでぼかすことにより、疑似的に低解像度にする縮小方法を組み合わせる。この方法は公知であるSIFT特徴量における手法である。ただし、画像の縮小をその他の方法で行っても良い。
スケールスペースを生成したら、次に、スケールスペースの中から、画像の拡大・縮小・回転があってもロバスト(robust)に抽出されるような局所的な特徴点(局所特徴点)を抽出する。この局所特徴点の抽出方法として、第1実施形態では公知の手法であるSIFTを用いる。具体的には、まず、スケールスペースの隣接する縮小画像同士の差分画像を作成する。図2の例では1枚の元画像と8枚の縮小画像から8枚の差分画像(D1〜D8)が生成される。その差分画像DKおよび隣接する差分画像間(差分画像D(K−1)と差分画像DKの間、差分画像DKと差分画像D(K+1)の間)の画素が局所的に最大となる点を局所特徴点として抽出する。ここでKは2〜7である。局所領域の範囲となる近傍画素は、まず、差分画像DKの当該画素の近傍8画素である。また、1レベル大きい差分画像(差分画像D(K+1))の当該画素に対応する画素および周囲の8画素と、1レベル小さい差分画像(差分画像D(K−1))の当該画素に対応する画素および周囲の8画素も、近傍画素となる。これらの合計である26画素が近傍画素となる。こうして抽出された点は、スケール方向においてもコントラスト変化が極値となる点であり、スケール不変性のある特徴点となっている。
図3は、拡大縮小不変性の概念を示す図である。例えば、図3(A)〜(C)のように形状が同じでスケールが異なっている場合であっても、輝度成分画像の特徴点を抽出される位置は同じになり、図3(C)の×印301の点となる。
図3は、拡大縮小不変性の概念を示す図である。例えば、図3(A)〜(C)のように形状が同じでスケールが異なっている場合であっても、輝度成分画像の特徴点を抽出される位置は同じになり、図3(C)の×印301の点となる。
続いて、抽出された局所特徴点の各々について、特徴点が抽出されたスケールの縮小画像において、画像の回転があっても不変となるように定義された特徴量(局所特徴量)を算出する。
この局所特徴量の算出方法は、前述の局所特徴量の算出方法と同様であるため、省略する。
この局所特徴量の算出方法は、前述の局所特徴量の算出方法と同様であるため、省略する。
以上の方法により、拡大縮小回転不変局所特徴量を算出することが可能となるが、回転不変局所特徴量に比べて、スケールスペースの算出、特徴探索範囲の広さのために、手法にもよるが、計算時間が数倍〜数十倍程度増大する場合がある。つまり、拡大縮小回転不変局所特徴量は性能が高いものの、計算時間の増大のために、生産性の低下につながる。そのため、常に、拡大縮小回転不変局所特徴量を利用すれば良いわけではない。なお、探索範囲の広さは、スケールスペース自体の広さと、近傍領域の広さ(本実施例においては9画素が26画素になる)の2種類のファクターが存在する。
次に、本実施形態の全体フローについて、図4および図5を用いて説明する。図4は、画像検索装置200における特定パターン(検索元画像)の登録処理を示すフローチャートである。図4のフローは、ユーザーがユーザインターフェース206で、ユーザーから特定パターン登録指示を受け付けることにより起動する。図5は画像検索装置200における特定パターンの検出処理を示すフローチャートである。図5のフローは、画像処理装置100から文章画像が画像検索装置200に送信されることにより起動する。図4および図5に示されるフローチャートによる処理は、記憶部209に記憶されたプログラムコードがRAM208に展開され、CPU207によって実行される。
図4のS401において、画像解析部203の特定パターン登録部204は、ユーザインターフェース206を介して、ユーザーから特定パターン画像の登録を受け付ける。ここで、特定パターンは、企業ロゴ、「Confidential」のような機密性の高い文章であることを示すパターン、複写が制約されている個人番号カードの裏面のような機密性が高い文章、新製品のロゴ、新製品デザイン等が想定される。特定パターンの登録は、記憶部209に保持されている画像や画像処理装置100の記憶部107に保持されている画像をディスプレイ210に表示し、その表示された画像の中からユーザーが指定することにより行う。記憶部107に保持されている画像はSMBなど公知の技術を利用し、ネットワーク150を介して、画像処理装置100から取得する。表示された画像の中に登録したい特定パターンが存在しない場合は、ユーザーは適宜、記憶部107や記憶部209に画像を追加する。例えば、画像処理装置100で、登録を希望する特定パターンが載った原稿を画像読取部108で読み取り、記憶部107に格納する。特定パターン画像のユーザー指定を受け付けた後には、新規の特定パターン画像を所定の解像度で、記憶部209に保存する。この際、画像内の白紙部分は除去して、パターンが存在する部分の画像だけを保存する。ユーザーが登録したい特定パターンが、画像の一部だけの場合には、ディスプレイ210にユーザーが指定した画像を表示し、実際に登録したい領域の指示を、ユーザインターフェース206を介して受け付け、その領域だけを記憶部209に保存する。
次にS402において、画像解析部203の特定パターン登録部204は、ユーザインターフェース206を介して、新規に登録された特定パターンのスケール対応範囲を受け付ける。スケール対応範囲は検索条件の1つである。図7(A)のような画面をディスプレイ210に表示し、ユーザーが新規に登録したパターンについて、検出が必要なスケール範囲についての指定を受け付ける。
指定方法としては、離散的なスケールの特定パターンだけが検出対象となる離散スケール指定と、連続的なスケールの特定パターンの検出を指定する連続スケール指定の2種類がある。例えば、図7(B)は、ユーザインターフェース206を介して、ユーザーが離散スケール指定をした際の、ディスプレイ210の表示例である。この例では、等倍、71%、141%のスケールにおける特定パターンの検出を特定パターン登録部204は受け付ける。図7(C)は、ユーザインターフェース206を介して、ユーザーが連続スケール指定をした際の、ディスプレイ210の表示例である。この例では、40%〜210%のスケールにおける特定パターンの検出を特定パターン登録部204は受け付ける。特定パターン登録部204は、受け付けたスケール対応範囲を、特定パターンと紐づけて、記憶部209に保存する。
指定方法としては、離散的なスケールの特定パターンだけが検出対象となる離散スケール指定と、連続的なスケールの特定パターンの検出を指定する連続スケール指定の2種類がある。例えば、図7(B)は、ユーザインターフェース206を介して、ユーザーが離散スケール指定をした際の、ディスプレイ210の表示例である。この例では、等倍、71%、141%のスケールにおける特定パターンの検出を特定パターン登録部204は受け付ける。図7(C)は、ユーザインターフェース206を介して、ユーザーが連続スケール指定をした際の、ディスプレイ210の表示例である。この例では、40%〜210%のスケールにおける特定パターンの検出を特定パターン登録部204は受け付ける。特定パターン登録部204は、受け付けたスケール対応範囲を、特定パターンと紐づけて、記憶部209に保存する。
次にS403において、画像解析部203の特定パターン登録部204は、登録された特定パターンの情報を利用して、利用する局所特徴量の種類を選択する。選択した局所特徴量の種類については、記憶部209に保存しておく。また、ステップS401で記憶部209に保存された特定パターン画像のスケール違いの派生特定パターン画像(派生画像)が必要であれば、そのパターンを生成して、それについても、記憶部209に保存しておく。
ここで、S403の処理の詳細について、図6を参照して説明する。図6は、第1実施例における局所特徴量の選択フローを示す図である。なお、図6に示されるフローチャートによる処理は、記憶部209に記憶されたプログラムコードがRAM208に展開され、CPU207によって実行される。
まず、図6のS601において、画像解析部203の特定パターン登録部204は、記憶部209に登録されている特定パターンを取得する。
次に、S601において、画像解析部203の特定パターン登録部204は、特定パターンそれぞれに紐づけられたスケール対応範囲を記憶部209から取得する。このスケール対応範囲はS402において保存されたものである。
まず、図6のS601において、画像解析部203の特定パターン登録部204は、記憶部209に登録されている特定パターンを取得する。
次に、S601において、画像解析部203の特定パターン登録部204は、特定パターンそれぞれに紐づけられたスケール対応範囲を記憶部209から取得する。このスケール対応範囲はS402において保存されたものである。
続いて、S603において、画像解析部203の特定パターン登録部204は、S602で取得したスケール対応範囲に、連続したスケール対応が含まれているかを判断する。連続的なスケールが含まれている場合には、S604に進む。連続的なスケール対応が含まれていない場合にはS605に進む。
ここで、このような分岐をする理由について説明をする。まず、クエリ画像からの特定パターンの検出にかかる時間は、下記の式1で表現することが出来る。式2は、特定パターンとのマッチング時間を表す式である。
ここで、このような分岐をする理由について説明をする。まず、クエリ画像からの特定パターンの検出にかかる時間は、下記の式1で表現することが出来る。式2は、特定パターンとのマッチング時間を表す式である。
拡大縮小回転不変局所特徴量を用いる場合は、局所特徴量検出時間は長くなるが、スケール対応のための派生特定パターンが必要なくなるため、マッチング時間は短くなる。回転不変局所特徴量を用いる場合は、局所特徴量検出時間は短くなるが、スケール対応のための派生特定パターンが必要になるため、マッチング時間は長くなる。ただ、一般的には、式3のようになる。
そのため、必要となる派生特定パターンの数が多すぎない場合は、回転不変局所特徴量を利用した方が、検出時間は短くなる。したがって、離散的なスケール対応しか必要がなく、必要となる派生特定パターンの数が限られている場合には、回転不変局所特徴量を利用した方が良いことになる。そこで、連続スケール対応が必要な場合にのみ、拡大縮小回転不変局所特徴量を利用し、それ以外の際には、回転不変局所特徴量を利用する。
S604に進んだ場合には、画像解析部203の特定パターン登録部204は、拡大縮小回転不変局所特徴量を局所得量として利用することを決定し、その情報を記憶部209に保存する。
S605に進んだ場合には、画像解析部203の特定パターン登録部204は、回転不変局所特徴量を局所得量として利用することを決定し、その情報を記憶部209に保存する。続いて、S606において、画像解析部203の特定パターン登録部204は、派生特定パターンの生成を行う。特定パターンごとに、紐づけられたスケール対応範囲を元に、前述したように派生特定パターンの生成を行う。既に、該当するスケールに対応する画像が記憶部209に存在した場合には、その画像を有効な派生特定パターンとして登録し、新たに画像を生成することは行わない。
以上のフローにより、局所特徴量の選択が可能となる。
S605に進んだ場合には、画像解析部203の特定パターン登録部204は、回転不変局所特徴量を局所得量として利用することを決定し、その情報を記憶部209に保存する。続いて、S606において、画像解析部203の特定パターン登録部204は、派生特定パターンの生成を行う。特定パターンごとに、紐づけられたスケール対応範囲を元に、前述したように派生特定パターンの生成を行う。既に、該当するスケールに対応する画像が記憶部209に存在した場合には、その画像を有効な派生特定パターンとして登録し、新たに画像を生成することは行わない。
以上のフローにより、局所特徴量の選択が可能となる。
図4の説明に戻る。S404において、画像解析部203の特定パターン登録部204は、S402で選択された局所特徴量を用いて、ステップS401で記憶部209に保存された特定パターンの局所特徴量を算出する。算出された局所特徴量は、記憶部209に保存する。S403において、回転不変局所特徴量が局所得量として選択され、特定パターンの派生特定パターンがある場合については、派生特定パターンからも局所特徴量を算出し、記憶部209に保存する。なお、特定パターン検出時に、記憶部209へのアクセスによる遅延を防止するために、あらかじめRAM208にも保持するようにしておいても良い。S403で選択された局所特徴量の種類がすでに記憶部209に保存されている特定パターンの局所特徴量の種類と異なる場合には、既登録の特定パターンおよび派生特定パターンからも、局所特徴量を新しく算出し、記憶部209に保存しておく。既に算出されていた局所特徴量については、次回の特定パターン登録フローにおけるS403で、再度選択される可能性もあるため、記憶部209の容量に余裕がある場合には、消去せず、保持しておく。
以上のフローにより、特定パターンの登録処理を行うことが可能となる。
以上のフローにより、特定パターンの登録処理を行うことが可能となる。
続いて、図5の特定パターンの検出処理フローについて説明をする。図5のS501において、制御部201は、画像処理装置100から送信され、画像検索装置200の記憶部209に保存された検索対象画像である文書画像を画像解析部203に提供する。文書画像は、画像処理装置100の画像読取部108において読み取ったものでも、画像処置装置100がネットワーク150を介して取得したPDLデータを画像処理部103でレンダリングして生成した画像であってもかまわない。この取得した画像をクエリ画像と呼ぶこととする。
S502において、画像解析部203の特定パターン検出部205は、検出に利用する局所特徴量の種類を記憶部107から取得する。
S502において、画像解析部203の特定パターン検出部205は、検出に利用する局所特徴量の種類を記憶部107から取得する。
S503において、画像解析部203の特定パターン検出部205は、S501で取得したクエリ画像から、S502で取得した局所特徴量の種類に対応した局所特徴量の算出を行う。ここで、算出した特徴量をクエリ局所特徴量を呼ぶこととする。算出された局所特徴点の総数についての情報は記憶部209に保存しておく。
次に、S504において、画像解析部203の特定パターン検出部205は、記憶部209またはRAM208に保持されている特定パターン群の局所特徴量を取得する。派生特定パターン群がある場合については、それらの局所特徴量についても取得する。ここで、取得した局所特徴量を登録局所特徴量と呼ぶこととする。
次に、S504において、画像解析部203の特定パターン検出部205は、記憶部209またはRAM208に保持されている特定パターン群の局所特徴量を取得する。派生特定パターン群がある場合については、それらの局所特徴量についても取得する。ここで、取得した局所特徴量を登録局所特徴量と呼ぶこととする。
S505において、画像解析部203の特定パターン検出部205は、S503で算出したクエリ局所特徴量と、S504で取得した局所特徴量のマッチング処理を行う。
マッチング処理はクエリ局所特徴量と登録局所特徴量の間で、総当たりのマッチング処理を行う。マッチングは局所特徴量同士の距離を算出することにより行う。局所特徴量が2値のベクトル(たとえば、128次元128ビットのベクトル)である場合や、ハミング距離、多値のベクトル(たとえば、128次元128バイトのベクトル)である場合にはユークリッド距離を用いて行う。総当たりでのマッチングを行うため、クエリ局所特徴量または登録局所特徴量の数が増えると、マッチング時間は増加する。
距離を算出したあとに、算出された距離が所定の閾値以下の局所特徴量のペア群を抽出する。抽出した局所特徴量ペア群を特定パターンまたは派生特定パターン単位に分割し、それぞれについて、公知の方法を利用してマッチング度を算出する。例えば、クエリ画像と特定パターンRの間の局所得量ペア群について、マッチング関係の幾何的な関係を分析し、共通の幾何的な関係がある領域がある場合には、特定パターンRについてのマッチング度を高くする。幾何的な関係を考慮する方法としては、特許第4988408号で開示されている方法がある。特許第4988408号で開示されている方法は、拡大縮小回転不変局所特徴量を前提としているが、回転不変局所特徴量に対しても適用可能である。こうして、特定パターンまたは派生特定パターン単位でクエリ画像とのマッチング度を算出する。
なお、ここで、説明したマッチング方法およびマッチング度算出方法は一例であり、種々の公知のマッチング手法およびマッチング度算出方法を適用してもかまわない。例えば、総当たりのマッチングの代わりに、登録局所特徴量のインデクシングをあらかじめ行っておき、そのインデックスを利用して、マッチングを行っても良い。
マッチング処理はクエリ局所特徴量と登録局所特徴量の間で、総当たりのマッチング処理を行う。マッチングは局所特徴量同士の距離を算出することにより行う。局所特徴量が2値のベクトル(たとえば、128次元128ビットのベクトル)である場合や、ハミング距離、多値のベクトル(たとえば、128次元128バイトのベクトル)である場合にはユークリッド距離を用いて行う。総当たりでのマッチングを行うため、クエリ局所特徴量または登録局所特徴量の数が増えると、マッチング時間は増加する。
距離を算出したあとに、算出された距離が所定の閾値以下の局所特徴量のペア群を抽出する。抽出した局所特徴量ペア群を特定パターンまたは派生特定パターン単位に分割し、それぞれについて、公知の方法を利用してマッチング度を算出する。例えば、クエリ画像と特定パターンRの間の局所得量ペア群について、マッチング関係の幾何的な関係を分析し、共通の幾何的な関係がある領域がある場合には、特定パターンRについてのマッチング度を高くする。幾何的な関係を考慮する方法としては、特許第4988408号で開示されている方法がある。特許第4988408号で開示されている方法は、拡大縮小回転不変局所特徴量を前提としているが、回転不変局所特徴量に対しても適用可能である。こうして、特定パターンまたは派生特定パターン単位でクエリ画像とのマッチング度を算出する。
なお、ここで、説明したマッチング方法およびマッチング度算出方法は一例であり、種々の公知のマッチング手法およびマッチング度算出方法を適用してもかまわない。例えば、総当たりのマッチングの代わりに、登録局所特徴量のインデクシングをあらかじめ行っておき、そのインデックスを利用して、マッチングを行っても良い。
次に、S506において、画像解析部203の特定パターン検出部205は、S504で算出した特定パターンまたは派生特定パターン単位でのクエリ画像とのマッチング度を用いて、閾値判定を行う。すべてのマッチングが所定の閾値以下であった場合には、特定パターンが検出できなかったと判断し、S507に進む。算出されたマッチング度のうち1つでも、所定の閾値を超えるマッチング度を超えた場合には、特定パターンが検出されたと判断し、S508に進む。
S507に進んだ場合には、画像解析部203の特定パターン検出部205は、通常処理を行う。通常処理とは、特定パターンがなかった旨の通知を、ネットワーク150を介して、画像処理装置100に対して行うことである。通知を受けた画像処理装置100は、クエリ画像に対応する記憶部107に保存されている文書画像について、画像出力部109に出力する等の通常処理を行う。
S508に進んだ場合には、画像解析部203の特定パターン検出部205は特定パターン検出時処理を行う。特定パターン検出時処理とは、特定パターンがあった旨の通知と、S507で所定の閾値を超えた特定パターンまたは派生特定パターンの情報を、ネットワーク150を介して、画像処理装置100に対して行うことである。通知を受けた画像処理装置100は、クエリ画像に対応する記憶部107に保存されている文書画像について、画像出力部109に出力することを中止する等の特定パターン検出時処理を行う。画像処理装置100に対して通知するだけではなく、ネットワーク150を介して、MFPの管理者等に特定パターンを検知したことを通知するようにしても良い。
以上のフローにより、特定パターンの検出処理を行うことが可能となる。
以上のフローにより、特定パターンの検出処理を行うことが可能となる。
以上説明した通り、本実施形態における画像検索装置200による特定パターン検出手法では、ユーザーがスケール違いの特定パターンの対応を求めた場合であっても、スケール対応条件に応じて、利用する局所特徴量を選択する。回転不変局所特徴量を利用するか拡大縮小回転不変局所特徴量を利用するかをスケール対応条件に応じて選択することにより、検出時間の最適化を図ることが可能となり、ユーザーの利用条件に応じた生産性の向上を図ることが可能となる。
(第2実施形態)
以下、本発明の第2実施形態について、前述の第1実施形態と異なる部分について説明する。第1実施形態との第一の差分は、S403の詳細フローであり、図8を参照して説明する。図8は、第2実施例における局所特徴量の選択フローを示す図である。なお、図8に示されるフローチャートによる処理は、記憶部209に記憶されたプログラムコードがRAM208に展開され、CPU207によって実行される。
以下、本発明の第2実施形態について、前述の第1実施形態と異なる部分について説明する。第1実施形態との第一の差分は、S403の詳細フローであり、図8を参照して説明する。図8は、第2実施例における局所特徴量の選択フローを示す図である。なお、図8に示されるフローチャートによる処理は、記憶部209に記憶されたプログラムコードがRAM208に展開され、CPU207によって実行される。
まず、図8のS801において、画像解析部203の特定パターン登録部204は、利用可能な局所特徴量の情報を記憶部209より取得する。取得する情報は、例えば、利用可能な局所特徴量ごとの下記の情報である。ただし、取得する情報はこれに限られるものではない。
・クエリ画像からの局所特徴点平均抽出時間
・1点あたりの局所特徴量算出時間
・局所特徴量1ペアあたりのマッチング時間
・特定パターン不検出時の平均マッチング度算出時間
・クエリ画像からの局所特徴点平均抽出時間
・1点あたりの局所特徴量算出時間
・局所特徴量1ペアあたりのマッチング時間
・特定パターン不検出時の平均マッチング度算出時間
クエリ画像からの局所特徴点平均抽出時間は、検出対象の画像サイズにおいて、局所特徴点を検出した際に平均的にかかる時間である。前述したように、拡大縮小回転不変局所特徴量の方が、回転不変局所特徴量よりも、数倍〜数十倍の検出時間が掛かる。この検出時間はクエリ画像内を探索する時間が支配的であるので、クエリ画像の内容に大きくは左右されない値であるので、あらかじめ記憶部209に保持しておくことが可能である。ただし、高速化のためにクエリ画像の内容により大きく変わる場合については、実測値により、記憶部209に保持している値を動的に書き換えても良い。
1点あたりの局所特徴量算出時間は、抽出された特徴点について、局所特徴量を算出するのにかかる時間である。局所特徴量算出に利用する局所得量記述子が共通であれば、拡大縮小回転不変局所特徴量であっても、回転不変局所特徴量であっても、同一の値となる。
局所特徴量1ペアあたりのマッチング時間は、クエリ画像と、特定パターンまたは派生特定パターンの局所特徴量ペアのマッチングを行い、マッチング距離算出にかかる時間である。マッチング時間は、局所特徴量の次元数、局所特徴量の1次元あたりのビット数、マッチングに利用する距離定義に依存する。
特定パターン不検出時の平均的マッチング度算出時間は、特定パターンがクエリ画像内に存在しなかった際に、平均的にマッチング度の算出にかかる時間である。局所特徴量の誤マッチング度合いが類似した局所特徴量であれば、類似した値となる。
回転不変特徴量の場合には、スケール変化した場合の精度プロファイルについても、取得しておく、この精度プロファイルについては、後述する。
1点あたりの局所特徴量算出時間は、抽出された特徴点について、局所特徴量を算出するのにかかる時間である。局所特徴量算出に利用する局所得量記述子が共通であれば、拡大縮小回転不変局所特徴量であっても、回転不変局所特徴量であっても、同一の値となる。
局所特徴量1ペアあたりのマッチング時間は、クエリ画像と、特定パターンまたは派生特定パターンの局所特徴量ペアのマッチングを行い、マッチング距離算出にかかる時間である。マッチング時間は、局所特徴量の次元数、局所特徴量の1次元あたりのビット数、マッチングに利用する距離定義に依存する。
特定パターン不検出時の平均的マッチング度算出時間は、特定パターンがクエリ画像内に存在しなかった際に、平均的にマッチング度の算出にかかる時間である。局所特徴量の誤マッチング度合いが類似した局所特徴量であれば、類似した値となる。
回転不変特徴量の場合には、スケール変化した場合の精度プロファイルについても、取得しておく、この精度プロファイルについては、後述する。
図8のS601およびS602は、図6のS601とS602と同様であるため、説明を省略する。
次に、S802において、画像解析部203の特定パターン登録部204は、スケール対応に必要な派生特定パターンを取得する。特定パターンごとに、その特定パターンに紐づけられたスケール対応範囲を、回転不変特徴量で対応した場合に必要な派生特定パターン群を生成する。第1実施形態では、連続したスケール対応を回転不変特徴量で行わない前提としていたが、第2実施形態では、連続したスケール対応も回転不変特徴量で行うことを考える。回転不変特徴量は、拡大縮小不変性はないが、所定のスケールにだけ対応するものではなく、スケールの変化に応じて、だんだんと精度が落ちていくものである。ここでの精度は、異なるスケールの画像からどれだけ類似した局所特徴量を得られるかを意味する。そのため、特定パターンから、所定のスケール範囲で一定以上の精度が得られるように、複数の派生特定パターンを生成することにより、連続したスケール対応が可能である。その例を図9に示す。図9(A)は、70%〜130%の連続スケールの対応を2枚の派生特定スケールで行った場合である。黒丸が特定パターンのスケールを意味し、白丸が派生特定パターンのスケールを意味し、点線は各特定パターン・派生特定パターンの精度プロファイルとなる。図9(A)では、スケール100%の特定パターンと、スケール70%及び130%の派生特定パターンが生成されている。3つのパターンの精度プロファイルは重なることがなく、特定パターンと派生特定パターンの間のスケールで、大きく精度が劣化している。図9(B)は、ここからさらに派生特定パターンを増やし、図9(A)のパターンに加え、スケール85%及び115%の派生特定パターンを生成した例である。計5つのパターンが用意され、各パターンの精度プロファイルは一部が重なり合っており、一定以上の精度で70%〜130%の連続スケールに対応することが可能となる。このようにして、連続したスケール対応を必要とする場合であっても、必要な派生特定パターンの数を決定することが可能となる。
次に、S802において、画像解析部203の特定パターン登録部204は、スケール対応に必要な派生特定パターンを取得する。特定パターンごとに、その特定パターンに紐づけられたスケール対応範囲を、回転不変特徴量で対応した場合に必要な派生特定パターン群を生成する。第1実施形態では、連続したスケール対応を回転不変特徴量で行わない前提としていたが、第2実施形態では、連続したスケール対応も回転不変特徴量で行うことを考える。回転不変特徴量は、拡大縮小不変性はないが、所定のスケールにだけ対応するものではなく、スケールの変化に応じて、だんだんと精度が落ちていくものである。ここでの精度は、異なるスケールの画像からどれだけ類似した局所特徴量を得られるかを意味する。そのため、特定パターンから、所定のスケール範囲で一定以上の精度が得られるように、複数の派生特定パターンを生成することにより、連続したスケール対応が可能である。その例を図9に示す。図9(A)は、70%〜130%の連続スケールの対応を2枚の派生特定スケールで行った場合である。黒丸が特定パターンのスケールを意味し、白丸が派生特定パターンのスケールを意味し、点線は各特定パターン・派生特定パターンの精度プロファイルとなる。図9(A)では、スケール100%の特定パターンと、スケール70%及び130%の派生特定パターンが生成されている。3つのパターンの精度プロファイルは重なることがなく、特定パターンと派生特定パターンの間のスケールで、大きく精度が劣化している。図9(B)は、ここからさらに派生特定パターンを増やし、図9(A)のパターンに加え、スケール85%及び115%の派生特定パターンを生成した例である。計5つのパターンが用意され、各パターンの精度プロファイルは一部が重なり合っており、一定以上の精度で70%〜130%の連続スケールに対応することが可能となる。このようにして、連続したスケール対応を必要とする場合であっても、必要な派生特定パターンの数を決定することが可能となる。
離散的なスケール対応については、第1実施形態と同様な方法で必要な派生特定パターンを決定しても良いし、本実施形態で説明した方法を適用することにより、隣接した離散的なスケールを1枚の派生特定パターンでカバーするようにしてもよい。
最後に、特定パターンごとに、特定パターンから必要な派生特定パターンを生成して、記憶部209に保存して、本ステップを終了する。
最後に、特定パターンごとに、特定パターンから必要な派生特定パターンを生成して、記憶部209に保存して、本ステップを終了する。
次に、S803において、画像解析部203の特定パターン登録部204は、記憶部209に保存されている特定パターンおよび派生特定パターンから局所特徴点を局所特徴量の種類ごとに抽出し、その総点数を算出する。拡大縮小回転不変局所特徴量は派生特定パターンが必要ないので、特定パターンのみからの局所特徴点の総数の算出を行う。また、拡大縮小回転不変局所特徴量の特定パターンのみから抽出された局所特徴量の総点数と、回転不変局所特徴量の特定パターンのみから抽出された局所特徴量の総点数の比率である特徴間抽出比率も計算しておく。特徴間抽出比率は、クエリ画像における局所特徴量点数の推定に利用する。ここで取得されたデータを記憶部209に保存しておく。なお、局所特徴量点数を計算するための計算コストがかけられない場合には、特定パターンと派生特定パターンの枚数から総点数を推定するようにしても良い。
次にS804において、画像解析部203の特定パターン登録部204は、過去のクエリ画像の平均局所特徴点の数を取得する。図5の特定パターン検出フローのS503において、記憶部209に保存しておいたクエリ画像の局所特徴点の総点数情報を利用して、過去X回の平均局所特徴点を算出する。この値は、現在、選択されている局所特徴量の平均点数であるので、ステップS803で算出した特徴間抽出比率を利用して、選択されていない局所特徴量の平均点数も推定する。まだ検出フェーズが十分な回数実行されておらず、平均値が得ることが出来ない場合には、一般的なオフィス原稿からあらかじめ算出した初期値を利用すれば良い。また、局所特徴量が一定期間内で切り替わっている場合は、すべての局所特徴量の種類の平均点数を実測値から算出してもよい。算出したクエリ画像の平均局所特徴点についての情報は、後述するフローで利用するため、記憶部209に保存しておく。
次に、S805において、画像解析部203の特定パターン登録部204は、局所特徴量の種類ごとの推定検出時間(推定検索時間)をクエリ画像の推定局所特徴量抽出時間G及び推定マッチング時間Hから算出する。推定時間は下記の式4で算出することが出来る。
クエリ画像からの局所特徴点平均抽出時間をA、クエリ画像の平均局所特徴点数をB、1点あたりの局所特徴量算出時間をCとすると、クエリ画像の推定局所特徴量抽出時間Gは、式5から求められる。
推定マッチング時間Hは、特定/派生特定パターンの総特徴点数をD、局所特徴量1ペアあたりの局所特徴量マッチング時間をE、特定パターン不検出時の平均マッチング度算出時間をFとすると、式6から求められる。
ここで、クエリ画像からの局所特徴点平均抽出時間A、1点あたりの局所特徴量算出時間C、局所特徴量1ペアあたりの局所特徴量マッチング時間E、特定パターン不検出時の平均マッチング度算出時間Fは、S801で算出された値である。特定/派生特定パターンの総特徴点数Dは、S803で取得した値である。クエリ画像の平均局所特徴点数Bは、S804で取得した値である。
続いて、S806において、画像解析部203の特定パターン登録部204は、S805で算出した推定検出時間を比較する。拡大縮小回転不変局所特徴量の推定検出時間の方が、回転不変局所特徴量の推定検出時間よりも短い場合には、S604に進む。そうでない場合には、S605に進む。
ここで、図10及び図11を利用して、S604に進む場合と、S605に進む場合の例を示す。図10は回転不変局所特徴量を利用した方がスケール対応したとしても推定検出時間が短い。このように、拡大縮小回転不変局所特徴量の検出時間が回転不変局所特徴量の検出時間と等しいかより長くなると推定される場合には、S605に進む。図11は図10と比較すると、クエリ画像の平均局所特徴点数Bおよび特定/派生特定パターンの総特徴点数Dが異なっている。特定/派生特定パターンの総特徴点数Dは、登録された特定パターンの数、対応が必要なスケール範囲が変化することにより変化する。この場合は、拡大縮小回転不変局所特徴量を利用した方が、推定検出時間が短くなる。このように、拡大縮小回転不変局所特徴量の検出時間が回転不変局所特徴量の検出時間より短くなると推定される場合には、S604に進む。
ここで、図10及び図11を利用して、S604に進む場合と、S605に進む場合の例を示す。図10は回転不変局所特徴量を利用した方がスケール対応したとしても推定検出時間が短い。このように、拡大縮小回転不変局所特徴量の検出時間が回転不変局所特徴量の検出時間と等しいかより長くなると推定される場合には、S605に進む。図11は図10と比較すると、クエリ画像の平均局所特徴点数Bおよび特定/派生特定パターンの総特徴点数Dが異なっている。特定/派生特定パターンの総特徴点数Dは、登録された特定パターンの数、対応が必要なスケール範囲が変化することにより変化する。この場合は、拡大縮小回転不変局所特徴量を利用した方が、推定検出時間が短くなる。このように、拡大縮小回転不変局所特徴量の検出時間が回転不変局所特徴量の検出時間より短くなると推定される場合には、S604に進む。
続く、図8のS604〜S605は、図6のS604〜S605と同一のため、説明を省略する。
以上のフローにより、連続したスケール対応が必要な際にも、回転不変特徴量を利用した方が高速な場合は利用することが可能となる。それにより、より詳細な状況に応じて、特定パターン検出の生産性を向上させることが可能となる。
以上のフローにより、連続したスケール対応が必要な際にも、回転不変特徴量を利用した方が高速な場合は利用することが可能となる。それにより、より詳細な状況に応じて、特定パターン検出の生産性を向上させることが可能となる。
また、第1実施形態と第2実施形態の第二の差分は、ユーザーが新しい特定パターンを登録した時だけではなく、クエリ画像から抽出される平均的な特徴点数が所定の閾値以上変化した際にも、利用する特徴量の選択を行うことである。そのフローについて、図12を参照して説明する。
図12は、クエリ画像の変化に追従するフローを示す図である。図12で示されるフローは特定パターンの検出処理が終了するたびに起動する。なお、図12に示されるフローチャートによる処理は、記憶部209に記憶されたプログラムコードがRAM208に展開され、CPU207によって実行される。
図12は、クエリ画像の変化に追従するフローを示す図である。図12で示されるフローは特定パターンの検出処理が終了するたびに起動する。なお、図12に示されるフローチャートによる処理は、記憶部209に記憶されたプログラムコードがRAM208に展開され、CPU207によって実行される。
図12のS1201において、画像解析部203の特定パターン登録部204は、直近の過去X回のクエリ画像から抽出された平均的局所特徴点数AveAを算出する。算出方法は図8のS804と同様である。
次に、S1202において、画像解析部203の特定パターン登録部204は、前回画像検索を行った際の局所特徴量選択におけるクエリ画像の平均局所特徴点数を取得し、AveBとする。この値は、図8のS804で記憶部209に保存した、現在選択されている局所特徴量の平均的局所特徴点数である。
次に、S1202において、画像解析部203の特定パターン登録部204は、前回画像検索を行った際の局所特徴量選択におけるクエリ画像の平均局所特徴点数を取得し、AveBとする。この値は、図8のS804で記憶部209に保存した、現在選択されている局所特徴量の平均的局所特徴点数である。
続いて、S1203において、画像解析部203の特定パターン登録部204は、ABS(AveA−AveB)を計算する。ここで、ABS(X)はXの絶対値を求める関数である。差分の絶対値ABS(AveA−AveB)が所定の閾値を上回った場合には、S403に進む。S403に進むのは、ユーザーが利用しているクエリ画像の性質が変化し、推定条件の1つであるクエリ画像の平均局所特徴点数(B)が変化したことが予想されるためである。差分の絶対値が上回らなかった場合には、そのままフローを終了する。
続く、図12のS403〜S404の処理は、図4のS403〜S404と同一である。ただし、S403の処理の詳細である図8のS804で使用するクエリ画像の平均局所特長点の数は、S1201で算出したAveAを使用する。
以上のフローにより、推定の前提条件が変わった際に、推定検出時間を再推定することが可能となり、ユーザーの利用方法が変化した場合にも、追従して最適な局所特徴量を利用することが可能となる。
続く、図12のS403〜S404の処理は、図4のS403〜S404と同一である。ただし、S403の処理の詳細である図8のS804で使用するクエリ画像の平均局所特長点の数は、S1201で算出したAveAを使用する。
以上のフローにより、推定の前提条件が変わった際に、推定検出時間を再推定することが可能となり、ユーザーの利用方法が変化した場合にも、追従して最適な局所特徴量を利用することが可能となる。
以上説明した通り、本実施形態における画像検索装置200による特定パターン検出手法では、ユーザーが連続スケール対応を求めた場合であっても、各種条件に応じて、拡大縮小回転不変局所特徴量ではなく、回転不変局所特徴量を用いることができる。これにより、検出時間の最適化を図ることが可能となり、ユーザーの利用条件に応じた生産性の向上を図ることが可能となる。また、条件の変化に追従して、ユーザーからの新規の特定パターンの登録がなくても、動的に局所特徴量の種類を切り替えることが可能となる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
Claims (12)
- 局所特徴量を用いた画像検索が可能な画像検索装置であって、
画像を入力する入力手段と、
検索元画像に対応する検索条件の指定を受け付ける受付手段と、
前記検索条件に基づいて検索方法を選択する選択手段と、
選択された前記検索方法に基づいて画像の局所特徴量を算出する算出手段と、
前記検索元画像の局所特徴量と検索対象画像の局所特徴量との比較を行う比較手段と、を備える
ことを特徴とする画像検索装置。 - 前記選択手段は、前記局所特徴量として、拡縮不変性かつ回転不変性を有する局所特徴量を利用する第1の検索方法もしくは拡縮不変性を有さず回転不変性を有する局所特徴量を利用する第2の検索方法を選択する
こと特徴とする請求項1に記載の画像検索装置。 - 前記受付手段は、前記検索条件としてスケール対応範囲の指定を受け付け、
前記選択手段は、前記検索元画像に対応する前記スケール対応範囲に連続的なスケールが含まれる場合は前記第1の検索方法を選択し、前記検索元画像に対応する前記スケール対応範囲に連続的なスケールが含まれない場合は前記第2の検索方法を選択する
ことを特徴とする請求項2に記載の画像検索装置。 - 前記第2の検索方法が選択された場合、
前記算出手段は、前記検索元画像からスケール対応範囲に応じた派生画像を生成し、前記検索元画像および前記派生画像から拡縮不変性かつ回転不変性を有する局所特徴量を算出し、さらに、前記検索対象画像から拡縮不変性かつ回転不変性を有する局所特徴量を算出し、
前記比較手段は、前記検索元画像および前記派生画像の局所特徴量と検索対象画像の局所特徴量との比較を行う
ことを特徴とする請求項2または請求項3に記載の画像検索装置。 - 前記算出手段は、画像から特徴点を検出し、各特徴点の近傍の画素を用いて前記特徴点の局所特徴量を算出する
ことを特徴とする請求項1乃至4のうちいずれか1項に記載の画像検索装置。 - 前記選択手段は、前記検索条件に基づいて推定検索時間を算出し、前記推定検索時間に基づいて検索方法を選択する
ことを特徴とする請求項1に記載の画像検索装置。 - 前記選択手段は、前記推定検索時間として、前記局所特徴量として拡縮不変性かつ回転不変性を有する局所特徴量を利用した場合の推定検索時間と、前記局所特徴量として拡縮不変性を有さず回転不変性を有する局所特徴量を利用した場合の推定検索時間を算出し、推定検索時間が短い方の局所特徴量を利用する
ことを特徴とする請求項6に記載の画像検索装置。 - 前記推定検索時間は、前記検索元画像に対応するスケール対応範囲、前記検索元画像の数、前記検索元画像からスケール対応範囲に応じて生成された派生画像の数、検索対象画像の特徴点の平均である平均局所特徴点数のうち少なくとも1つに基づいて算出される
ことを特徴とする請求項6または請求項7に記載の画像検索装置。 - 前記算出手段は、画像から特徴点を検出し、各特徴点の近傍の画素を用いて前記特徴点の局所特徴量を算出し、
前記画像検索装置は、さらに、検索対象画像の特徴点の数を記憶する記憶手段を備え、
前記選択手段は、記憶された前記検索対象画像の特徴点の数から前記検索対象画像の平均局所特徴点数を算出し、
前記記憶手段は、さらに、前記検索対象画像の平均局所特徴点数も記憶する
ことを特徴とする請求項8に記載の画像検索装置。 - 直近の検索対象画像の平均局所特徴点数と前回画像検索を行った際の前記検索対象画像の平均局所特徴点数の差の絶対値が閾値より大きい場合、前記推定検索時間の算出に利用される検索対象画像の平均局所特徴点数として前記直近の検索対象画像の平均局所特徴点数を利用し、前記推定検索時間を算出する
ことを特徴とする請求項9に記載の画像検索装置。 - 画像検索方法であって、
検索元画像を入力する入力工程と、
前記検索元画像に対応する検索条件の指定を受け付ける受付工程と、
前記検索条件に基づいて検索方法を選択する選択工程と、
選択された前記検索方法に基づいて前記検索元画像の局所特徴量を算出する算出工程と、
検索対象画像を入力する入力工程と、
選択された前記検索方法に基づいて前記検索対象画像の局所特徴量を算出する算出工程と、
前記検索元画像の局所特徴量と前記検索対象画像の局所特徴量との比較を行う比較工程と、を有する
ことを特徴とする画像検索装置の制御方法。 - 請求項1乃至10のいずれか1項に記載の画像検索装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016013680A JP2017134598A (ja) | 2016-01-27 | 2016-01-27 | 画像検索装置、画像検索方法及びプログラム |
US15/398,834 US10360471B2 (en) | 2016-01-27 | 2017-01-05 | Image retrieving device, image retrieving method, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016013680A JP2017134598A (ja) | 2016-01-27 | 2016-01-27 | 画像検索装置、画像検索方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017134598A true JP2017134598A (ja) | 2017-08-03 |
Family
ID=59360518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016013680A Pending JP2017134598A (ja) | 2016-01-27 | 2016-01-27 | 画像検索装置、画像検索方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10360471B2 (ja) |
JP (1) | JP2017134598A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160012594A1 (en) * | 2014-07-10 | 2016-01-14 | Ditto Labs, Inc. | Systems, Methods, And Devices For Image Matching And Object Recognition In Images Using Textures |
JP7252729B2 (ja) | 2018-10-18 | 2023-04-05 | キヤノン株式会社 | 画像処理装置、画像処理方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6216163B1 (en) * | 1997-04-14 | 2001-04-10 | Lucent Technologies Inc. | Method and apparatus providing for automatically restarting a client-server connection in a distributed network |
US7298931B2 (en) * | 2002-10-14 | 2007-11-20 | Samsung Electronics Co., Ltd. | Image retrieval method and apparatus using iterative matching |
EP1722331B1 (en) * | 2004-03-03 | 2010-12-01 | NEC Corporation | Image similarity calculation system, image search system, image similarity calculation method, and image similarity calculation program |
JP4502390B2 (ja) | 2005-03-30 | 2010-07-14 | キヤノン株式会社 | 画像処理装置およびその方法 |
JP4988408B2 (ja) * | 2007-04-09 | 2012-08-01 | 株式会社デンソー | 画像認識装置 |
US8050503B2 (en) * | 2007-07-05 | 2011-11-01 | General Electric Company | Systems and methods for computer vision using curvelets |
US8068674B2 (en) * | 2007-09-04 | 2011-11-29 | Evolution Robotics Retail, Inc. | UPC substitution fraud prevention |
JP2012129910A (ja) | 2010-12-17 | 2012-07-05 | Canon Inc | 画像処理装置、方法およびプログラム |
JP6143462B2 (ja) | 2013-01-08 | 2017-06-07 | キヤノン株式会社 | 画像検索装置、画像検索方法、検索元画像提供装置、検索元画像提供方法、及びプログラム |
US20140193077A1 (en) | 2013-01-08 | 2014-07-10 | Canon Kabushiki Kaisha | Image retrieval apparatus, image retrieval method, query image providing apparatus, query image providing method, and program |
JP6433187B2 (ja) | 2014-08-07 | 2018-12-05 | キヤノン株式会社 | 情報処理装置、その制御方法およびコンピュータプログラム |
-
2016
- 2016-01-27 JP JP2016013680A patent/JP2017134598A/ja active Pending
-
2017
- 2017-01-05 US US15/398,834 patent/US10360471B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20170213103A1 (en) | 2017-07-27 |
US10360471B2 (en) | 2019-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12019675B2 (en) | Recognizing text in image data | |
JP5183392B2 (ja) | 画像処理装置、画像処理方法およびプログラム | |
US9754164B2 (en) | Systems and methods for classifying objects in digital images captured using mobile devices | |
CN107979709B (zh) | 图像处理装置、系统、控制方法和计算机可读介质 | |
US10142499B2 (en) | Document distribution system, document distribution apparatus, information processing method, and storage medium | |
US20150228045A1 (en) | Methods for embedding and extracting a watermark in a text document and devices thereof | |
AU2017302245B2 (en) | Optical character recognition utilizing hashed templates | |
JP2018128996A (ja) | 情報処理装置、制御方法、およびプログラム | |
RU2581786C1 (ru) | Определение преобразований изображения для повышения качества оптического распознавания символов | |
JP2018206252A (ja) | 画像処理システム、評価モデル構築方法、画像処理方法及びプログラム | |
JP2019016350A (ja) | 電子文書における強調テキストの識別 | |
JP2017134598A (ja) | 画像検索装置、画像検索方法及びプログラム | |
JP6222541B2 (ja) | 画像処理装置及びプログラム | |
JP6757203B2 (ja) | 画像検出装置とその制御方法、及びプログラム | |
US20230077608A1 (en) | Information processing apparatus, information processing method, and storage medium | |
US10853972B2 (en) | Apparatus for processing image and method thereof | |
JP6700705B2 (ja) | 振り分けシステム、情報処理方法、及びプログラム | |
US11288536B2 (en) | Image processing apparatus, image processing method, and non-transitory computer-readable storage medium | |
JP6218237B2 (ja) | 撮影画像を平行化する画像変換プログラム、装置及び方法 | |
KR20150130253A (ko) | 정보 유출 방지를 위한 이미지 적응적 비정형 개인 정보 추출 방법 및 이를 수행하는 장치 | |
JP2020047031A (ja) | 文書検索装置、文書検索システム及びプログラム | |
JP2010092426A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2011076575A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2017174200A (ja) | 情報出力装置、情報出力方法、及び情報出力プログラム | |
JP2017138742A (ja) | 画像処理装置、画像処理方法及びプログラム |