JPWO2009133856A1 - 物体認識用画像データベースの作成方法、処理装置および処理用プログラム - Google Patents
物体認識用画像データベースの作成方法、処理装置および処理用プログラム Download PDFInfo
- Publication number
- JPWO2009133856A1 JPWO2009133856A1 JP2010510122A JP2010510122A JPWO2009133856A1 JP WO2009133856 A1 JPWO2009133856 A1 JP WO2009133856A1 JP 2010510122 A JP2010510122 A JP 2010510122A JP 2010510122 A JP2010510122 A JP 2010510122A JP WO2009133856 A1 JPWO2009133856 A1 JP WO2009133856A1
- Authority
- JP
- Japan
- Prior art keywords
- image
- vector
- registered
- dimension
- query
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
画像データベースに登録すべき物体の画像から局所記述子を抽出する特徴抽出工程と、各局所記述子の各次元を表す数値を所定のビット桁数に量子化するスカラー量子化工程と、量子化後の各局所記述子を最近傍探索可能に体系化しかつそれが抽出された画像の識別子を付与して画像データベースに登録する登録工程とを備え、前記登録工程は、検索質問が与えられたときそれから局所記述子を抽出して各次元をスカラー量子化し、各局所記述子に対し最近傍の局所記述子を前記画像データベース中から決定し、決定されたいずれかの局所記述子を含む画像の中から多数決処理によって一の画像を特定し得るように登録を行い、前記スカラー量子化工程は、各局所記述子の各次元を8ビット以下に量子化する物体認識用画像データベースの作成方法、その方法の処理用プログラムおよび当該処理を行う処理装置。
Description
この発明は、物体認識用画像データベースの作成方法、処理装置および処理用プログラムに関する。より詳細には、画像に係るデータベースの中から、検索質問(クエリー)としての画像に表された対象物と一致する対象物を示す画像を検索できるような画像データベースの作成方法、処理装置および処理プログラムに関する。
SIFT(Scale-Invariant Feature Transform)などの局所記述子を用いると、隠れや照明条件の変動に比較的頑健な物体認識が実現可能であるため、現在、注目を集めている(例えば、非特許文献1、2参照)。認識の基本は、"Bag of Words"あるいは"Bag of Features"と呼ばれるモデルであり、局所記述子の配置や共起を考慮せず、その頻度のみを手がかりとして物体を認識するものである。
ここで、局所記述子は、画像の局所的な特徴を表現したものであり、画像の変動(幾何学的変換や照明条件、解像度の差異)に対して頑健(ロバスト)な特性を有するよう、所定の手順で抽出される。また、局所記述子は、画像の局所的な領域から決定されるので、隠れに対してもロバストである。この明細書において局所記述子は特徴ベクトルともいう。ベクトル量で表現されるからである。
一般に、画像から抽出される局所記述子の数は、数百から数千、場合によっては数万となるため、局所記述子の照合に必要な処理時間や、記憶に必要なメモリ容量は膨大となる。従って、認識精度を一定レベルに保ったまま、いかに処理時間やメモリ容量を削減するかが重要な研究課題となっている。
例えば、代表的な局所記述子のSIFTでは、各局所記述子は128次元のベクトルとして表される。また、SIFTに主成分分析を施すことにより次元数を削減したPCA-SIFTが知られている。それでも、実用的なPCA-SIFTの次元数は一例で36次元である。そして、各次元の数値を表すデータ型としては、一般的な数値表現に適用される32ビットのfloat型あるいはint型が一般的である。より高い精度が必要な場合は64ビットのdouble型が用いられる。一方、数値の範囲が限られる場合あるいは精度を犠牲にしてでもメモリ容量を削減したい場合は特別に16ビットのshort int型が用いられることもある。データ容量の削減を優先して特別にshort int型を用いた36次元のPCA-SIFTの場合でも、各局所記述子は16ビット×36次元=512ビット(64バイト)のメモリを要する。
最近傍検索では、ベクトルの距離計算を行って最近傍の局所記述子を決定することが一般的である。各次元のデータの精度を落とせば正確な最近傍探索ができなくなり、従って、画像認識の精度(認識率)が低下すると考えるのが常識であった。
そこで、従来、多くの手法では、モデル作成用の画像から得た局所記述子をベクトル量子化(類似する局所記述子を集めて所定数のグループに分類することにより、同一グループの各局所記述子をそのグループの代表値に置き換えて表現する手法、クラスタリング)して数千から数十万程度のvisual word(前記代表値に相当するもの)を定め、それを用いて画像を記述するというアプローチを採用している(例えば、非特許文献3参照)。未知の画像を認識する際には、その画像から得た局所記述子をvisual wordに変換し、頻度などを計測することになる。このようなアプローチでは、visual wordの数が十分少なければ高速な処理が期待できる。しかし一方で、visual wordの数が多くなければ、十分な認識率を達成できないことが指摘されている(例えば、非特許文献4参照)。visual wordの数が増えればそれだけ、ベクトル量子化に必要な計算時間を無視することができず、また、visual word自体の記録にもメモリ容量の面で問題が生じる。
以上の利点・問題点は、極端な場合、すなわち、モデル作成用の画像から得た個々の局所記述子をそのままvisual wordとする場合に、最も顕著になる。例えば、VGAサイズの一般的な画像からは、2千程度の局所記述子が抽出される。従って、VGAサイズの10万画像をモデル作成に用いる場合、visual wordの数は2億となり、照合ならびに記憶に膨大な計算資源が必要となる。一方で、大量の局所記述子をモデルに用いることにより、高精度な認識を実現することが可能となる。
処理時間の問題に対する一つの解決策は、局所記述子の照合に「近似最近傍探索」を導入することである(例えば、非特許文献5および特許文献1参照)。これによって、例えば上記の規模の認識タスクの場合、単純な全数照合の場合と比べて、認識率を殆ど低下させることなく、処理速度を10-6未満にできることが知られている。一方、メモリ容量の問題については、ベクトル量子化を粗くすることが解決策の一つであるが、これは認識率の低下を意味するため、必ずしも得策ではない。
D.Lowe, "Distinctive image features from scale-invariant keypoints," International Journal of Computer Vision, vol.60, no.2, pp.91-110, 2004
J.Ponce,M.Hebert,C.Schmid and A.Zisserman Eds., Toward Category-Level Object Recognition, Springer, 2006
J.Sivic and A.Zisserman, Video google: A text retrieval approach to object matching in videos, Proc. ICCV2003, Vol.2, pp.1470-1477, 2003
D.Nister and H.Stewenius, Scalable recognition with a vocabulary tree, Proc. CVPR2006, pp.775-781, 2006
野口和人、黄瀬浩一、岩村雅一、"近似最近傍探索の多段階化による物体の高速認識、"画像の認識・理解シンポジウム(MIRU2007)論文集、pp.111-118,July,2007
以上のような事情のもとで、この発明は、従来とは異なる視点から解決策を提供するものである。即ち、局所記述子を用いた物体認識において、認識精度を一定レベルに保ったまま、いかに処理時間やメモリ容量を削減するかという視点で解決策を提供するものである。
具体的には、発明者らは、認識率への影響が無視できる範囲内で局所記述子の各次元を表す数値の精度を極限まで縮小する可能性について検討した。これは、前記特許文献1のように多数の局所記述子から最近傍の局所記述子を短時間に探索できる手法が提供されており、メモリ容量の削減にある程度の目処がつけばvisual wordを用いない直接的な検索により高精度の物体認識が可能になると考えたからである。
特に、物体のクラスの認識のみならず、物体のインスタンスの認識を目的とする用途では、高精度、高速かつメモリ効率のよい手法が望まれている。visual wordは本質的にグルーピングを伴うため、クラスレベルの認識には有効であってもインスタンスレベルの認識とは相容れない側面がある。この発明の手法は、特にインスタンスレベルの認識に有効であると考えられる。ただし、クラスレベルの認識、および、visual wordを用いた手法への適用を除外するものではない。
ここで、クラスの認識とは、認識対象(検索質問)が与えられると例えば椅子、自動車などの物体のクラスを結果として返す(認識する)ものである。これに対し、インスタンスの認識とは、例えば自動車というクラスの中の特定のモデルなどの物体のインスタンスを認識するものである。
特に、物体のクラスの認識のみならず、物体のインスタンスの認識を目的とする用途では、高精度、高速かつメモリ効率のよい手法が望まれている。visual wordは本質的にグルーピングを伴うため、クラスレベルの認識には有効であってもインスタンスレベルの認識とは相容れない側面がある。この発明の手法は、特にインスタンスレベルの認識に有効であると考えられる。ただし、クラスレベルの認識、および、visual wordを用いた手法への適用を除外するものではない。
ここで、クラスの認識とは、認識対象(検索質問)が与えられると例えば椅子、自動車などの物体のクラスを結果として返す(認識する)ものである。これに対し、インスタンスの認識とは、例えば自動車というクラスの中の特定のモデルなどの物体のインスタンスを認識するものである。
発明者らは鋭意検討を行った結果、前述の技術常識に反し意外にも、実数型または整数型データより少ない構成ビット数で局所記述子の各次元を表現しても、2ビットまでは認識率が殆ど低下しないことを見出した。特徴ベクトルの各次元は実数型または整数型データ、具体的には32ビットのデータを用いて表現するのがこの技術分野の常識である。ところが、それよりも少ない構成ビット数、例えば、8ビット以下の精度で局所記述子の各次元を表現しても、2ビットまでは認識率が殆ど低下しないことを見出した。また、1ビットであっても、0ビット、即ち、ベクトルの距離計算を行わない手法に比べると2ビットの認識率に近い良好な結果が得られることを見出した。さらに、この結果に多数決処理の寄与が大きいことも見出した。そして、これらの知見に基づき、この出願に至った。
即ち、前述の課題を解決する手段として、この発明は、ベクトル量子化により得られるvisual wordを絞り込むというアプローチではなく、個々の局所記述子の記録に必要なメモリ量を削減するというアプローチをとる。具体的には、局所記述子を表現するベクトルについて、記録に必要な各次元のビット数を、実数型または整数型データ(32ビット)より少ない構成ビット数に削減する。これは、局所記述子にスカラー量子化を適用することと見なすことができる。
この発明は、画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出工程と、前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化工程と、前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録工程とを備え、各工程をコンピュータが実行し、前記登録工程は、複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、コンピュータが、前記抽出工程と同様の手順で前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化工程と同様の手順で各クエリー局所記述子を量子化し、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定し得るように各ベクトルの登録を行い、前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの作成方法を提供する。
この発明は、画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出工程と、前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化工程と、前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録工程とを備え、各工程をコンピュータが実行し、前記登録工程は、複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、コンピュータが、前記抽出工程と同様の手順で前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化工程と同様の手順で各クエリー局所記述子を量子化し、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定し得るように各ベクトルの登録を行い、前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの作成方法を提供する。
また、異なる観点から、この発明は、画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出部と、前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化部と、前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録部と、複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、前記抽出部が登録されるべき画像と同様に前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化部が登録されるべき画像と同様に各クエリー局所記述子を量子化した後、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定する検索部とを備え、前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの処理装置を提供する。
さらに、異なる観点から、この発明は、画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出部と、前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化部と、前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録部と、複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、前記抽出部が登録されるべき画像と同様に前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化部が登録されるべき画像と同様に各クエリー局所記述子を量子化した後、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定する検索部、の各部としてコンピュータを機能させ、前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの処理プログラムを提供する。
この発明による物体認識用画像データベースの作成方法において、前記スカラー量子化工程は、各局所記述子の各次元を実数型または整数型データより少ない構成ビット数に量子化するので、個々の局所記述子の表現に必要なメモリ容量を削減することができる。従って、多数の局所記述子(あるいはvisual word)を記録する場合であっても、スカラー量子化工程を経ない従来の手法に比べて小さな容量のメモリで画像データベースを作成することができる。
常識的には、特徴ベクトルを少ないビット数で表現すると、認識率の低下など悪影響が出ることが予測される。しかし、後述する実験結果でも示されるように、各次元を2ビットまで削減しても量子化を行わない場合の認識率と比べて殆ど低下しないことを見出した。各次元が1ビットの場合であっても、0ビット、即ち、ベクトルの距離計算を行わない手法に比べて非常に高い認識率が得られる。
この発明において、局所記述子は、画像の局所的な特徴をベクトル量で表現するものである。その具体的な態様は、例えば、SIFTである。後述する実施形態においては、局所記述子の一例としてPCA-SIFTを適用している。
各局所記述子を最近傍探索可能に体系化するとは、画像データベースに登録すべき画像から局所記述子を抽出し、それらの各局所記述子を前記画像と対応付けてデータベースとして登録しておくことをいう。ある局所記述子が与えられたとき、前記データベースに登録された局所記述子の中から最近傍の局所記述子を決定する処理が最近傍探索である。最近傍か否かを評価する手法の一例は、2つのベクトルの距離を計算し、最短距離のものを最近傍とするものである。
以下、この発明の好ましい態様について説明する。
好ましくは、前記スカラー量子化工程は、各局所記述子の各次元を8ビット以下に量子化する。より好ましくは、前記スカラー量子化工程は、各局所記述子の各次元を2ビットに量子化する。後述する実験結果にも示されるように、例えば、特徴ベクトルの各次元を記録するビット数を2ビットとした場合、量子化を行わない場合と比較して、所要メモリ容量を削減することができる(後述の実験例では1/3程度)。このとき、処理時間はビット演算のためにやや長くなる(後述の実験例では1.6倍程度)ものの、認識率は殆ど低下しない。また、各次元を8ビットにした場合でも、後述の実験例では所要メモリ容量が2/3程度に削減可能である。
好ましくは、前記スカラー量子化工程は、各局所記述子の各次元を8ビット以下に量子化する。より好ましくは、前記スカラー量子化工程は、各局所記述子の各次元を2ビットに量子化する。後述する実験結果にも示されるように、例えば、特徴ベクトルの各次元を記録するビット数を2ビットとした場合、量子化を行わない場合と比較して、所要メモリ容量を削減することができる(後述の実験例では1/3程度)。このとき、処理時間はビット演算のためにやや長くなる(後述の実験例では1.6倍程度)ものの、認識率は殆ど低下しない。また、各次元を8ビットにした場合でも、後述の実験例では所要メモリ容量が2/3程度に削減可能である。
また、前記登録工程は、量子化後の各局所記述子に所定のハッシュ関数を適用してハッシュ表のインデックス値を算出し、算出されたインデックス値に対応付けて量子化後の各局所記述子の各次元の値、登録すべき画像を識別する識別子および前記画像の参照先を登録するものであり、かつ、同一のインデックス値に対応付けて登録される局所記述子の数が所定の数を超える場合、そのインデックス値についてはいずれの局所記述子も登録しないようにしてもよい。ハッシュ表を用いることにより高速の最近傍探索処理を実現することができる。さらに、同一のインデックス値に対応付けて登録される局所記述子の数が所定の数を超える場合、それらの局所記述子も登録しないようにすることによって、識別力の弱い局所記述子を最近傍探索処理の対象から除外することができる。従って、探索の精度を犠牲にすることなくより短時間で探索を行うことができる。
ハッシュ表で分類された一つの類(インデックス)に属する局所記述子の数が多い場合、それらの局所記述子は識別能力が低いといえる。即ち、入力画像の局所記述子からインデックス値を算出してハッシュ表を参照した場合、その類に属する候補が多数登録されているわけである。それらの局所記述子は、認識対象の絞込みにあまり貢献しておらず、識別能力が低いといえる。識別能力の低い局所記述子を探索対象から除外しておけば、識別能力の高い局所識別子だけを参照して、効率的な認識が行われる。
さらにまた、前記スカラー量子化工程は、検索質問から抽出された局所記述子を量子化するとき、量子化の閾値を跨ぐ複数の値についてインデックス値を算出し、いずれかのインデックス値に対応付けられて登録された局所記述子の中から最近傍の局所記述子を決定してもよい。このようにすれば、量子化に伴う誤差の範囲を含めてハッシュのインデックス値を算出するので、量子化による認識率の低下を抑制することができる。
さらにまた、前記スカラー量子化工程は、検索質問から抽出された局所記述子を量子化するとき、量子化の閾値を跨ぐ複数の値についてインデックス値を算出し、いずれかのインデックス値に対応付けられて登録された局所記述子の中から最近傍の局所記述子を決定してもよい。このようにすれば、量子化に伴う誤差の範囲を含めてハッシュのインデックス値を算出するので、量子化による認識率の低下を抑制することができる。
例えば、画像データベースに登録された画像が、検索質問に係る物体を異なる視点からみたものである場合、登録された画像と検索質問との間で対応関係にある特徴ベクトルの各次元の値が異なる場合がある。即ち、各特徴ベクトルは、視点の変化(幾何的変換)に対して頑健な特性を持つが、完全な不変量という訳ではなく、変動する場合がある。ハッシュ表は、各特徴ベクトルの各次元の値から所定の計算手順(ハッシュ関数の計算)により離散値であるインデックス値を算出する。ここで、対応する特徴ベクトルの量子化後の値が変動により異なると、異なるインデックス値が算出されてしまう可能性が高い。検索対象の特徴ベクトルと検索質問の特徴ベクトルのインデックス値が異なると、その対の特徴ベクトルからは正しい探索結果が得られない。そこで、変動により各次元の値が量子化の閾値を超える場合を考慮し、量子化された各次元の値だけでなく、量子化の閾値を跨いだ値についてもインデックス値を計算し、いずれかインデックス値に対応付けて登録されている特徴ベクトルの中から最近傍の特徴ベクトルを決定する。このようにすれば、変動に伴う認識率の低下を抑制することができる。換言すれば、特徴ベクトルのある次元の値が量子化の閾値に近い場合に閾値を跨ぐ可能性も考慮してインデックス値を計算することにより、認識率を確保することができる。
前記特徴抽出工程は、各次元が32ビットで表されるベクトル値を各局所記述子として抽出てもよい。
また、検索質問の各局所記述子に対し最近傍の局所記述子を決定する処理は、局所記述子間の距離計算を行って最も近い距離のものを決定する処理であってもよい。
ここで示した種々の好ましい態様は、それら複数を組み合わせることもできる。
前記特徴抽出工程は、各次元が32ビットで表されるベクトル値を各局所記述子として抽出てもよい。
また、検索質問の各局所記述子に対し最近傍の局所記述子を決定する処理は、局所記述子間の距離計算を行って最も近い距離のものを決定する処理であってもよい。
ここで示した種々の好ましい態様は、それら複数を組み合わせることもできる。
≪近似最近傍探索の従来法≫
この発明の詳細について述べる前に、近似最近傍探索の従来法についてまとめておく。ここで取り上げる従来法は、後述の実験例に用いたものである。
この発明の詳細について述べる前に、近似最近傍探索の従来法についてまとめておく。ここで取り上げる従来法は、後述の実験例に用いたものである。
最近傍探索で最も時間がかかるのは距離計算である。最近傍探索の高速化には、個々の距離計算自体を高速に行う方法と、距離計算の対象を効率よく絞り込む方法の2通りがある。近似最近傍探索では、主に後者の絞り込みを大胆に行うことで、処理時間を削減する。ところがその代償として、最近傍が距離計算の対象から外れてしまい、求まらない可能性がある。どの程度の近似が適切であるのかは、対象とするタスクに依存するため、近似最近傍探索の手法では、近似の程度を調節するためのパラメータを設けている。以下では、近似最近傍探索の代表的な手法としてANNについて述べる。
ANN(Approximate Nearest Neighborの略。詳細は、S.Arya, D.M. Mount, R.Silverman and A.Y. Wu, "An optimal algorithm for approximate nearest neighbor searching," Journal of the ACM, vol.45, no.6, pp.891-923, 1998参照)は、2分木を用いて近似最近傍探索を高速に行う手法である。木のノードは、特徴空間を分割したhyperrectangleに対応しており、葉ノードには単一の特徴ベクトルが対応付けられている。ANNでは、木構造の探索によって距離計算の対象となる特徴ベクトルを収集し、その中で距離が最短のものを近似最近傍探索の結果として出力する。ANNには近似の程度を表すパラメータとして許容誤差εがある。εが大きければ、より大幅な近似を行って対象となる特徴ベクトルを絞り込むため、処理時間が短縮できる。
≪実施形態≫
以下、図面を用いてこの発明をさらに詳述する。なお、以下の説明は、すべての点で例示であって、この発明を限定するものと解されるべきではない。
以下、図面を用いてこの発明をさらに詳述する。なお、以下の説明は、すべての点で例示であって、この発明を限定するものと解されるべきではない。
1.1.考え方
局所記述子を用いて認識を行う従来手法の問題点は、特徴ベクトルの数が多いため、大規模な認識を行う場合にメモリ使用量と処理時間が膨大になってしまうというものである。
局所記述子を用いて認識を行う従来手法の問題点は、特徴ベクトルの数が多いため、大規模な認識を行う場合にメモリ使用量と処理時間が膨大になってしまうというものである。
処理時間の問題に対して、野口らは近似最近傍探索による識別器を多段階に接続することで処理時間を削減する手法(非特許文献5および特許文献1参照)を提案している。しかし、この手法ではメモリ使用量の問題に触れていない。この手法のメモリ使用量の内訳をみると、約8割が特徴ベクトルを保持するために使われていることがわかる。そこで、この実施形態では野口らの手法を基本とし、特徴ベクトルを量子化して少ないビット数で表現することで、メモリ使用量を削減することを試みる。
ベクトルを量子化する方法には、代表的なものとしてベクトル量子化とスカラー量子化がある。ベクトル量子化は、あらかじめ、ある個数の代表ベクトルを求めておき、入力ベクトルを最近傍の代表ベクトルの符号に置き換えるものである。ベクトル量子化は、局所記述子を用いた認識手法で多く使われている(非特許文献3参照)。しかし、大規模なデータに対して量子化誤差の少ない代表ベクトル(前述のvisual word)を効率よく求めることは難しい。また、代表ベクトルの数が多くなると、入力ベクトルの最近傍の代表ベクトルを探索する処理に時間がかかるという問題点がある。一方、スカラー量子化は、入力ベクトルの次元ごとに量子化を行うものである。同じ符号数で比較した場合はベクトル量子化と比べて量子化誤差が大きくなる。しかし、量子化の際に最近傍探索が必要ないため処理時間は少なく済むと考えられる。そこで、この発明では処理時間を重視してスカラー量子化を用いることとする。
量子化には、メモリ使用量を削減できるという利点ばかりではなく、認識率が低下する可能性があるという問題点もある。これは、もとは別々の特徴ベクトルであったものが、量子化により同じ特徴ベクトルになり識別性が低下するからである。特徴ベクトルの識別性の低下が認識率に及ぼす影響は、この発明の認識結果が投票によって決定されるため、簡単にはわからない。これは、正解の得票数が逆転しなければ、誤った票が他の画像に入っても誤認識は生じないためである。そこで、量子化のビット数と認識率の関係については実験で検証する。
1.2.スカラー量子化
まず、この発明に係るスカラー量子化について説明する。スカラー量子化では、次元ごとに量子化を行う。各次元2bitで量子化する場合を図1に示す。f(x)は特徴ベクトルのある次元の分布である。tは量子化の閾値であり、例えば−∞からt1の範囲のものは0に符号化する。検索の際に距離計算を行う場合にはvの値を用いて検索質問の特徴ベクトルとの距離を計算する。tとvの値については、次式を満たすように次元ごとに定める。
まず、この発明に係るスカラー量子化について説明する。スカラー量子化では、次元ごとに量子化を行う。各次元2bitで量子化する場合を図1に示す。f(x)は特徴ベクトルのある次元の分布である。tは量子化の閾値であり、例えば−∞からt1の範囲のものは0に符号化する。検索の際に距離計算を行う場合にはvの値を用いて検索質問の特徴ベクトルとの距離を計算する。tとvの値については、次式を満たすように次元ごとに定める。
1.3.ハッシュ関数
野口らの手法と同様、この実施形態でも、ハッシュ関数を用いてデータをハッシュ表に登録し、検索に用いる。ハッシュ表にデータを登録、検索する場合には、ハッシュ関数により処理を行うインデックスを知る必要がある。ここではこの実施形態で用いるハッシュ関数について説明する。
野口らの手法と同様、この実施形態でも、ハッシュ関数を用いてデータをハッシュ表に登録し、検索に用いる。ハッシュ表にデータを登録、検索する場合には、ハッシュ関数により処理を行うインデックスを知る必要がある。ここではこの実施形態で用いるハッシュ関数について説明する。
PCA-SIFTによって得られた36次元の実数値ベクトルxは、主成分分析の結果であるので、前方の次元の方が固有値が大きいという性質がある。そこで、xの第1次元から第d次元までをとり、
1.4.データ登録
特徴ベクトルをハッシュ表に登録するためには、前述のハッシュ関数によりハッシュ値を求める必要がある。ハッシュ表には、画像IDとともに量子化によってデータ量を削減した特徴ベクトルを登録する。登録時に衝突が生じた場合は、複数の特徴ベクトルをリストとして登録する。このとき、リストが長くなりすぎると、検索の際に距離計算のコストがかかりすぎるという問題が生じる。そこでこの実施形態では、リスト長nに対する閾値cを設け、n>cを満たすとリスト全体をハッシュ表から削除する。同じハッシュ値を持つ特徴ベクトルが多いということは、その特徴ベクトルが画像の識別にあまり寄与しないことを意味する。従って、削除しても影響は比較的少ないと考えられる。
以上の処理を、データベースに登録するすべての特徴ベクトルに対して施すことにより、データの登録は完了する。
特徴ベクトルをハッシュ表に登録するためには、前述のハッシュ関数によりハッシュ値を求める必要がある。ハッシュ表には、画像IDとともに量子化によってデータ量を削減した特徴ベクトルを登録する。登録時に衝突が生じた場合は、複数の特徴ベクトルをリストとして登録する。このとき、リストが長くなりすぎると、検索の際に距離計算のコストがかかりすぎるという問題が生じる。そこでこの実施形態では、リスト長nに対する閾値cを設け、n>cを満たすとリスト全体をハッシュ表から削除する。同じハッシュ値を持つ特徴ベクトルが多いということは、その特徴ベクトルが画像の識別にあまり寄与しないことを意味する。従って、削除しても影響は比較的少ないと考えられる。
以上の処理を、データベースに登録するすべての特徴ベクトルに対して施すことにより、データの登録は完了する。
図10は、この実施形態に係る物体認識用画像データベースへの画像の登録手順を示すフローチャートである。図10に示すように、処理を行うコンピュータは、登録すべき画像が入力されると、まず、その画像から局所記述子を抽出する(ステップS11)。続いて、各局所記述子を前述の手順でスカラー量子化し、各次元を8ビット以下、好ましくは2ビットに削減する(ステップS13)。そして、量子化された各局所記述子にハッシュ関数を適用し、インデックス値を算出する(ステップS15)。
次に、前記コンピュータは、算出されたインデックス値に対応付けてその局所記述子の量子化されたベクトル値に画像IDを付与しハッシュ表に登録する(ステップS17)。即ち、画像データベースに登録する。ここで、同一のインデックス値に所定数を超える局所記述子が登録されたとき、そのインデックス値に対応付けられる局所記述子をハッシュ表から削除し登録しないようにする。これにより、識別力の低い局所記述子をデータベースに登録しないようにする。次に、抽出されたすべての局所記述子がハッシュ表に登録されたか否かを判断し(ステップS19)、残りの局所記述子が存在する場合(ステップS19のNo)は、残りの局所記述子についてもステップS13〜17の処理を繰り返す。すべての局所記述子の登録が終了したら(ステップS19のYes)、その画像のデータベースへの登録は終了する。
1.5.検索
次に検索について述べる。この実施形態では、検索質問Qから得た各特徴ベクトルqに対して、ハッシュ関数を適用しハッシュ表から特徴ベクトルを検索する。得られた特徴ベクトルの集合をXとすると、次にXの中からqの最近傍となる特徴ベクトルx*を求める。
次に検索について述べる。この実施形態では、検索質問Qから得た各特徴ベクトルqに対して、ハッシュ関数を適用しハッシュ表から特徴ベクトルを検索する。得られた特徴ベクトルの集合をXとすると、次にXの中からqの最近傍となる特徴ベクトルx*を求める。
そして、x*に対応する画像IDに投票する。もし、最近傍となる特徴ベクトルが複数ある場合には、それらすべてに対して投票処理を施す。検索質問のすべての特徴ベクトルに対してこの処理を行い、最終的に最も得票数の多いものを回答とする。ここで、「投票」とは、情報処理の分野で部分的に証拠を集計するために用いる処理であって、得られた証拠に基づいて選択肢の何れかに得点を与え、すべての証拠を集計した結果最高得点を得た選択肢を選択する処理をいう。一般的に各証拠は異なる点数の票を持つ。
この処理において、最も重要なステップは、いかにqに対する特徴ベクトルを検索するかにある。最も単純な手法は、登録時と同様にqに対してもビットベクトルを求め、ハッシュ関数によって同じハッシュ値を持つ特徴ベクトルを求めることである。ところが、このような処理では、距離の計算回数は十分削減できるものの、次の理由によって十分な認識率を得ることができない。それは、特徴ベクトルの各次元の値が撮影条件によって変動するためである。もし、閾値を超えるような変動があると、ビットベクトルが異なるものとなり、もはや対応する特徴ベクトルを得ることができなくなる。
この実施形態では、値の変動幅eをパラメータとして、変動への対処を施す。具体的には、
この実施形態では、値の変動幅eをパラメータとして、変動への対処を施す。具体的には、
も用いて、特徴ベクトルを検索する。ただし、このような「両方試す」という処理を制限なく導入すると、膨大な計算時間が必要となってしまう。この処理では、処理の対象となる次元数をbとすると、2b通りのビットベクトルを用いてハッシュ表にアクセスすることになる。そこでこの実施形態では、bをあまり大きくない値に留めることとする。
図11は、図10の手順で画像が登録されてなる画像データベースを対象に、認識(検索)を行う際の手順を示すフローチャートである。図11に示すように、検索質問の画像が入力されると、処理を行うコンピュータは、まず、その画像から局所記述子を抽出する(ステップS21)。続いて、各局所記述子を前述の手順でスカラー量子化し、各次元を8ビット以下、好ましくは2ビットに削減する(ステップS23)。そして、量子化された各局所記述子にハッシュ関数を適用し、インデックス値を算出する(ステップS25)。ステップS21、S23およびS25の処理は、図10のステップS11、S13およびS15の処理とそれぞれ対応しており、同様の処理である。ただし、ステップS25では、画像の変動を考慮して、量子化の閾値を跨ぐ複数の値についてもインデックス値を計算する。即ち、前述の「両方試す」処理をさらに行う。
次に、前記コンピュータは、算出されたインデックス値に対応付けてハッシュ表に登録されている局所記述子うちで最近傍の局所記述子を決定し、最近傍の局所記述子が含まれる画像IDに一票を投じる。次に、検索質問から抽出されたすべての局所記述子について最近傍探索とそれに基づく投票がなされたか否かを判断し(ステップS29)、残りの局所記述子が存在する場合(ステップS29のNo)は、残りの局所記述子についてもステップS23〜27の処理を繰り返す。すべての局所記述子について投票が行われた(ステップS29のYes)、最多得票数を得た画像を認識結果として出力する(ステップS31)。そして、認識処理は終了する。
≪ブロック図≫
図12は、この発明による物体認識用画像データベースの処理装置について、その機能的構成を示すブロック図である。図12で、画像データベース25に画像21を登録する際は、登録すべき画像21が処理装置1の入力として与えられ、その出力として画像データベース25に画像21に係るデータが登録される。一方、画像データベース25に登録された画像を検索する際は、検索質問23が処理装置1の入力として与えられ、処理装置1は画像データベース25を参照し、出力として画像データベース25に登録された画像27あるいはそれを特定する情報を出力する。
図12は、この発明による物体認識用画像データベースの処理装置について、その機能的構成を示すブロック図である。図12で、画像データベース25に画像21を登録する際は、登録すべき画像21が処理装置1の入力として与えられ、その出力として画像データベース25に画像21に係るデータが登録される。一方、画像データベース25に登録された画像を検索する際は、検索質問23が処理装置1の入力として与えられ、処理装置1は画像データベース25を参照し、出力として画像データベース25に登録された画像27あるいはそれを特定する情報を出力する。
特徴抽出部11は、入力として与えられた画像21または23から特徴ベクトルを抽出する。スカラー量子化部13は、抽出された各特徴ベクトルをスカラー量子化する。登録部15は、スカラー量子化されたの各特徴ベクトルのデータにそれが抽出された画像を識別する識別子を付与し、画像データベース25に登録する。検索部17は、スカラー量子化されたの各特徴ベクトルについて、画像データベース25に登録された局所記述子のうちで最近傍ものを最近傍探索処理により決定する。そして、決定された局所記述子を含む画像に投票し、検索質問の各局所記述子に係る投票の結果に基づいて画像データベース25に登録された画像の中から一の画像を特定する。特定された画像27あるいはその識別情報を認識結果として出力する。
図12の特徴抽出部11、スカラー量子化部13、登録部15、検索部17の機能を実現するハードウェアは、主としてコンピュータとメモリである。即ち、コンピュータが、所定の物体認識用画像データベースの処理プログラムを実行することにより、各部の機能が実現される。
≪実験例≫
2.1.実験条件
実験では、近似最近傍探索の従来法であるANNをこの実施形態と比較した。ここで、ANNとしてはインターネット〈 URL:http://www.cs.umd.edu/mount/ANN/ 〉で提供されているソースコードを用いた。
2.1.実験条件
実験では、近似最近傍探索の従来法であるANNをこの実施形態と比較した。ここで、ANNとしてはインターネット〈 URL:http://www.cs.umd.edu/mount/ANN/ 〉で提供されているソースコードを用いた。
実験には以下に述べる画像データベース、検索質問画像を用いた。局所記述子としては、PCA-SIFTを用いた。PCA-SIFTは、インターネット〈 URL:http://www.cs.cmu.edu/yke/pcasift/ 〉で提供されている。PCA-SIFTでは36次元の特徴ベクトルが得られる。ハッシュ表のサイズは
ただし、特徴ベクトルの抽出に必要な時間は含めない。使用計算機は、CPUがAMD Opteron 2.8GHz、メモリ32GBのものである。
2.1.1.画像データベース
実験に用いた画像について説明する。まず、収集方法の異なるA、B、Cの3種類のデータセットを準備した。Aは、Googleのイメージ検索を用いて収集した3,100枚の画像である。検索キーワードとしては、"ポスター"、"雑誌"、"表紙"などを用いた。図2(a)に例を示す。
実験に用いた画像について説明する。まず、収集方法の異なるA、B、Cの3種類のデータセットを準備した。Aは、Googleのイメージ検索を用いて収集した3,100枚の画像である。検索キーワードとしては、"ポスター"、"雑誌"、"表紙"などを用いた。図2(a)に例を示す。
BはPCA-SIFTのサイトで公開されている画像であり、画像数は18,500枚である。このデータは主に自然写真や人物の写真などで構成されている。図2(b)に例を示す。Cは、写真共有サイトのflickrにおいて"animal"、"birthday"、"food"、"japan"などのタグにより収集した78,400枚の画像からなる。主に図2(c)に示すような物体や自然の写真、人物の写真などを含む。なお、収集の際には、600×600 pixel以下のサイズの画像は除外し、画像の長辺が640 pixel以下になるように縮小した。また、特徴ベクトルが100個以下の画像も除外した。画像の一辺の長さの平均はA、B、Cそれぞれ498,612,554 pixelであった。
次に、A、B、Cの画像を用いて、表1に示した画像数からなる4種類のデータベースを作成し実験に用いた。ここで、大きいデータベースは、小さいデータベースをその一部として含む。1万枚の画像データベースの特徴ベクトルの各次元の分布f(x)を図3に示す。図3(a)〜(d)で、横軸は各次元の値であり、縦軸は頻度である。1次元目は双峰性の分布であり、2次元目以降は単峰性の分布を示す。また、次元が大きくなるにつれて分散が小さくなる。平均値はいずれも0の付近である。また、特徴ベクトルの個数は画像1枚あたり平均2千個であった。実験では、どの枚数のデータベースを用いる場合でも、1万枚の画像データベースから得られたf(x)を量子化に用いた。
2.1.2.検索質問画像
検索質問としては、データセットA、B、Cのそれぞれから100、200、200枚の合計500枚を無作為に選択した。次に、これらをA4の用紙に印刷し、カメラを用いて撮影した。得られた画像の例を図4に示す。図4(a)〜(c)に示すとおり、紙面全体が写る配置で、紙面に対するカメラの光軸の角度θを90°、75°、60°に変化させた。また、角度を90°として紙面の一部分を撮影した(図4(d))。その結果、1枚の紙面に対して、合計4通りの画像を得た。さらに、撮影した画像を512×341pixelに縮小し、PCA-SIFTにより特徴ベクトルを求めた。その結果、画像1枚あたり平均612個の特徴ベクトルが得られた。
検索質問としては、データセットA、B、Cのそれぞれから100、200、200枚の合計500枚を無作為に選択した。次に、これらをA4の用紙に印刷し、カメラを用いて撮影した。得られた画像の例を図4に示す。図4(a)〜(c)に示すとおり、紙面全体が写る配置で、紙面に対するカメラの光軸の角度θを90°、75°、60°に変化させた。また、角度を90°として紙面の一部分を撮影した(図4(d))。その結果、1枚の紙面に対して、合計4通りの画像を得た。さらに、撮影した画像を512×341pixelに縮小し、PCA-SIFTにより特徴ベクトルを求めた。その結果、画像1枚あたり平均612個の特徴ベクトルが得られた。
2.2.特徴ベクトルのメモリ容量と認識率
まず、量子化によりデータ量を削減すると、どの程度認識率に影響がでるか調べた。結果を図5に示す。横軸は特徴ベクトルの各次元の量子化ビット数を表している。例えば、2bitの場合には、PCA-SIFTの特徴ベクトルが36次元なので、一ベクトルあたり2bit×36=72bit必要となる。ここで、16bitと0bitの場合は少し特殊であることを述べておく。16bitの場合には量子化を行わず生のデータをそのまま用いた(野口らの手法)。即ち、この実験では、メモリ容量削減を優先し、各次元を16bit表現した場合を比較の基準にしている。0bitの場合には、距離計算を行うための特徴ベクトルが存在しないため、ハッシュ表から得られた集合Xのすべてに対して投票を行った。登録画像数は1000、10000、100000枚、パラメータは16bitの場合によい結果の得られたb=10、c=10、d=28、e=400について調べた。また、メモリ使用量は100000枚のデータベースについてのみ調べた。
まず、量子化によりデータ量を削減すると、どの程度認識率に影響がでるか調べた。結果を図5に示す。横軸は特徴ベクトルの各次元の量子化ビット数を表している。例えば、2bitの場合には、PCA-SIFTの特徴ベクトルが36次元なので、一ベクトルあたり2bit×36=72bit必要となる。ここで、16bitと0bitの場合は少し特殊であることを述べておく。16bitの場合には量子化を行わず生のデータをそのまま用いた(野口らの手法)。即ち、この実験では、メモリ容量削減を優先し、各次元を16bit表現した場合を比較の基準にしている。0bitの場合には、距離計算を行うための特徴ベクトルが存在しないため、ハッシュ表から得られた集合Xのすべてに対して投票を行った。登録画像数は1000、10000、100000枚、パラメータは16bitの場合によい結果の得られたb=10、c=10、d=28、e=400について調べた。また、メモリ使用量は100000枚のデータベースについてのみ調べた。
グラフから、2bitまで削減しても、認識率に大きな影響はみられないことがわかる。1bitの場合には登録画像数が多いほど認識率の低下が著しいことがわかる。これは、登録されている特徴ベクトルの数が増えるほど、識別性の不足が問題となるためと思われる。0bitの場合には認識率が大きく低下することがわかる。このことは、各次元2bit、つまり特徴ベクトル1つあたり9バイトで表現できることを意味する。各次元を16bitで表現した場合と比べると、特徴ベクトル単体で1/8の容量であり、実際のメモリ使用量も約1/3と大幅な圧縮が可能であることがわかる。以降の実験では各次元2bitで量子化を行った場合の詳しい性質についてみていく。
2.3.スケーラビリティ
次に、この実施形態の2bitと16bitの場合について登録画像数と認識率と処理時間の関係を比較した。
登録画像数を5000枚から10万枚まで変化させ、実験を行った。パラメータは先ほどと同様にb=10、c=10、d=28、e=400を用いた。登録画像数を変化させた結果を図6に示す。
次に、この実施形態の2bitと16bitの場合について登録画像数と認識率と処理時間の関係を比較した。
登録画像数を5000枚から10万枚まで変化させ、実験を行った。パラメータは先ほどと同様にb=10、c=10、d=28、e=400を用いた。登録画像数を変化させた結果を図6に示す。
グラフより、認識率は殆ど変わらないが、処理時間が増加していることがわかる。例えば10万画像を登録した場合の処理時間は、135.8msから210.9msと1.6倍となった。
処理時間の増加分は距離計算によるものと考えられる。それは、ハッシュ関数は特徴ベクトルの量子化と無関係なため、16bitの場合でも2bitの場合でも、距離計算の対象となるベクトルは変化しないからである。距離計算の処理時間が増加した理由は二つ考えられる。一つは、量子化された符号を中央値vに変換する処理である。もう一つは、各次元の2bitのデータ取りだす際に起こるbit演算が原因であると考えられる。
処理時間の増加分は距離計算によるものと考えられる。それは、ハッシュ関数は特徴ベクトルの量子化と無関係なため、16bitの場合でも2bitの場合でも、距離計算の対象となるベクトルは変化しないからである。距離計算の処理時間が増加した理由は二つ考えられる。一つは、量子化された符号を中央値vに変換する処理である。もう一つは、各次元の2bitのデータ取りだす際に起こるbit演算が原因であると考えられる。
2.4.この実施形態のパラメータと認識率・処理時間
ここまでの実験で、2bitで量子化すれば認識率を落とさずにデータ量を削減できることがわかった。本節では、2bitで量子化した場合についてこの実施形態のパラメータと認識率処理時間の関係に大きな変化がみられないかを確認する。この実施形態の主なパラメータであるb、c、d、eについて実験を行った。まず、衝突の閾値cとハッシュ構築に使う次元数dと認識率、処理時間の関係について述べる。このとき画像データベースは1万枚、ハッシュ表のサイズとしてはHsize=2とした。e=200、b=10、d=24、26、28とし、cを変化させた結果を図7に示す。cが減少するにつれ、処理時間が減少していることがわかる。ただし、cを小さくしすぎると、認識率が低下した。これは、認識に寄与していたものも削除してしまったためと考えられる。一方、cを増加させた場合に、計算時間は増加するものの、認識率が減少することは殆どなかった。これは、最近傍にはなり得ない特徴ベクトルを検索したとしても、距離計算によって排除可能なためと考えられる。
ここまでの実験で、2bitで量子化すれば認識率を落とさずにデータ量を削減できることがわかった。本節では、2bitで量子化した場合についてこの実施形態のパラメータと認識率処理時間の関係に大きな変化がみられないかを確認する。この実施形態の主なパラメータであるb、c、d、eについて実験を行った。まず、衝突の閾値cとハッシュ構築に使う次元数dと認識率、処理時間の関係について述べる。このとき画像データベースは1万枚、ハッシュ表のサイズとしてはHsize=2とした。e=200、b=10、d=24、26、28とし、cを変化させた結果を図7に示す。cが減少するにつれ、処理時間が減少していることがわかる。ただし、cを小さくしすぎると、認識率が低下した。これは、認識に寄与していたものも削除してしまったためと考えられる。一方、cを増加させた場合に、計算時間は増加するものの、認識率が減少することは殆どなかった。これは、最近傍にはなり得ない特徴ベクトルを検索したとしても、距離計算によって排除可能なためと考えられる。
次に、両方試す次元数の閾値bと認識率、処理時間の関係について述べる。d=28とした上で、e=200、400、600、c=10とし、bを変化させた結果を図8に示す。bを増加させると、処理時間は増加するものの、認識率は改善する。両方試す処理の対象とする幅eが小さいものほど、bが小さい場合に認識率がよく上昇することがわかる。これは次のように説明できる。検索処理では、検索質問の特徴ベクトルの後ろの次元から−eから+eの範囲内のものb個を処理の対象とする。このとき、eが大きければ、処理が必要な部分に到達する前にb個の閾値にかかるため、認識率が低下する。また、ある程度bを増やすと、bの増加に対して認識率、処理時間とも伸びが鈍くなる。これは各次元の値が−eから+eの範囲にあるベクトルがそれ以上存在せず、処理の対象とするインデックスが増加しないからである。
これらのことから、eをあまり大きな値にしなければよい結果が得られることがわかる。
以上の実験の結果は、野口らの手法で得られたものと大きな差はみられなかった。そこから、量子化がパラメータに与える影響は軽微であるといえる。
以上の実験の結果は、野口らの手法で得られたものと大きな差はみられなかった。そこから、量子化がパラメータに与える影響は軽微であるといえる。
2.5.ANNとの比較
近似最近傍探索の従来法であるANNに対して、2bitで量子化を行った場合と比較するため、1万枚の画像を登録しパラメータをさまざまに変え、横軸に認識率、縦軸に処理時間を描いたグラフを図9に示す。
近似最近傍探索の従来法であるANNに対して、2bitで量子化を行った場合と比較するため、1万枚の画像を登録しパラメータをさまざまに変え、横軸に認識率、縦軸に処理時間を描いたグラフを図9に示す。
ANNで許容誤差εを2から1000まで変化させたものを線で描き、評価の基準とした。右にプロットされているものほど認識率が高く、下にプロットされているものほど処理時間が短い。そのため、右下にプロットされているものほど優れているといえる。このグラフからわかるとおり、この実施形態はANNを用いた場合よりも優れているといえる。
次に、各種パラメータの代表的な値を用いた認識率と処理時間を表2に示す。まず、ANNについて認識率98.9%を得るために必要な処理時間を16bitと2bitで量子化した場合について比較すると、2bitで量子化した場合には、同じ認識率を得るために必要な処理時間が大幅に増加するものの、この実施形態についてみてみると、ANNと比べ処理時間の増加は穏やかである。以上から、量子化を行うと、同じ認識率を得るために必要な処理時間は増加することがわかる。しかし、量子化によってメモリ使用量を大幅に削減できるという利点があることがわかる。
以上の実験例から、各次元2bitで量子化した場合に、量子化なしの場合と比べ処理時間を犠牲にすることで、メモリ使用量を1/3にすることができた。また、メモリ使用量、処理時間、認識率はそれぞれトレードオフの関係にあることがわかった。
前述した実施の形態の他にも、この発明について種々の変形例があり得る。それらの変形例は、この発明の範囲に属さないと解されるべきものではない。この発明には、請求の範囲と均等の意味および前記範囲内でのすべての変形とが含まれるべきである。
1:画像データベース処理装置
11:特徴抽出部
13:スカラー量子化部
15:登録部
17:検索部
21:登録画像
23:検索質問
25:画像データベース
27:認識結果
11:特徴抽出部
13:スカラー量子化部
15:登録部
17:検索部
21:登録画像
23:検索質問
25:画像データベース
27:認識結果
Claims (7)
- 画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出工程と、
前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化工程と、
前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録工程とを備え、
各工程をコンピュータが実行し、
前記登録工程は、複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、コンピュータが、前記抽出工程と同様の手順で前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化工程と同様の手順で各クエリー局所記述子を量子化し、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定し得るように各ベクトルの登録を行い、
前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの作成方法。 - 前記スカラー量子化工程は、各ベクトルの次元を2ビット以下のスカラー値に量子化する請求項1に記載の方法。
- 前記登録工程は、(1)量子化された各ベクトルに所定のハッシュ関数を適用してハッシュ表のビン参照用のインデックス値を算出し、(2)量子化されたベクトルの各次元と付加された画像識別子とを、算出されたインデックス値で参照されるビンに一つのエントリーとして登録し、(3)同一のビンに登録されたエントリーの数が閾値を超える場合、そのビンに登録されたすべてのエントリーを削除しかつそのビンにその後エントリーが登録されないように処理して各ベクトルを登録する請求項1または2に記載の方法。
- 前記登録工程は、前記コンピュータが、前記近傍ベクトルを検索して前記画像を決定し得るように各ベクトルを登録し、
前記コンピュータは、量子化されたベクトルの次元から前記インデックス値を算出し、さらに一以上の量子化されたベクトルの次元の値の隣の値から一以上のインデックス値を算出し、それらの算出されたインデックス値で参照される複数のビンに登録されたベクトルのうちから前記近傍ベクトルを検索する請求項3に記載の方法。 - 前記近似最近傍探索のアルゴリズムは、
各クエリー局所記述子と算出されたインデックス値で参照されるビンに登録されたベクトルとの距離を計算し、所定の距離内にある一以上のベクトルまたは最短距離にあるベクトルを特定する処理を含む請求項1〜4のいずれか一つに記載の方法。 - 画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出部と、
前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化部と、
前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録部と、
複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、前記抽出部が登録されるべき画像と同様に前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化部が登録されるべき画像と同様に各クエリー局所記述子を量子化した後、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定する検索部とを備え、
前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの処理装置。 - 画像データベースに登録されるべき画像であって物体を示す画像から、その画像の各所の局所的な特徴をそれぞれ表現するベクトルを複数の局所記述子として抽出する特徴抽出部と、
前記ベクトルの次元ごとにスカラー量子化を行うスカラー量子化部と、
前記画像とそれに対応する複数のベクトルを前記画像データベースに登録する工程であって、前記スカラー工程で量子化された各ベクトルを、近似最近傍探索を実行できるよう、かつ、各ベクトルが抽出された画像を特定する画像識別子がそれぞれ付加されるように体系化し登録する登録部と、
複数の画像が前記画像データベースに登録され、問題とする物体を示す一つの画像がクエリーとして与えられたとき、前記抽出部が登録されるべき画像と同様に前記クエリーから複数のクエリー局所記述子を抽出し、前記スカラー量子化部が登録されるべき画像と同様に各クエリー局所記述子を量子化した後、前記画像データベースに登録されたベクトルの中から各クエリー局所記述子の近傍ベクトルとしてのベクトルを前記近似最近傍探索のアルゴリズムを用いて検索し、前記近傍ベクトルに付加された画像識別子を取得し、取得された画像識別子に基づいて問題とする物体を示す少なくとも一つの画像を決定する検索部、
の各部としてコンピュータを機能させ、
前記スカラー量子化工程は、各ベクトルの次元を所定ビット数のスカラー値に量子化する物体認識用画像データベースの処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010510122A JP5294342B2 (ja) | 2008-04-28 | 2009-04-27 | 物体認識用画像データベースの作成方法、処理装置および処理用プログラム |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008117359 | 2008-04-28 | ||
JP2008117359 | 2008-04-28 | ||
JP2008119853 | 2008-05-01 | ||
JP2008119853 | 2008-05-01 | ||
PCT/JP2009/058285 WO2009133856A1 (ja) | 2008-04-28 | 2009-04-27 | 物体認識用画像データベースの作成方法、処理装置および処理用プログラム |
JP2010510122A JP5294342B2 (ja) | 2008-04-28 | 2009-04-27 | 物体認識用画像データベースの作成方法、処理装置および処理用プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009133856A1 true JPWO2009133856A1 (ja) | 2011-09-01 |
JP5294342B2 JP5294342B2 (ja) | 2013-09-18 |
Family
ID=41255072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010510122A Expired - Fee Related JP5294342B2 (ja) | 2008-04-28 | 2009-04-27 | 物体認識用画像データベースの作成方法、処理装置および処理用プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US8340451B2 (ja) |
EP (1) | EP2284796A4 (ja) |
JP (1) | JP5294342B2 (ja) |
KR (1) | KR101247891B1 (ja) |
CN (1) | CN102016918B (ja) |
WO (1) | WO2009133856A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015501017A (ja) * | 2011-09-30 | 2015-01-08 | キヤノン株式会社 | 画像検索方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8422793B2 (en) | 2009-02-10 | 2013-04-16 | Osaka Prefecture University Public Corporation | Pattern recognition apparatus |
US8856140B2 (en) * | 2009-06-09 | 2014-10-07 | Microsoft Corporation | Querying dialog prompts using hash values |
CN102667923B (zh) | 2009-10-20 | 2014-11-05 | 弗兰霍菲尔运输应用研究公司 | 音频编码器、音频解码器、用于将音频信息编码的方法、用于将音频信息解码的方法 |
WO2011086889A1 (ja) * | 2010-01-12 | 2011-07-21 | 日本電気株式会社 | 特徴点選択システム、特徴点選択方法および特徴点選択プログラム |
SG182466A1 (en) | 2010-01-12 | 2012-08-30 | Fraunhofer Ges Forschung | Audio encoder, audio decoder, method for encoding and audio information, method for decoding an audio information and computer program using a modification of a number representation of a numeric previous context value |
AU2011287747B2 (en) * | 2010-07-20 | 2015-02-05 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder, method for encoding an audio information, method for decoding an audio information and computer program using an optimized hash table |
KR101675785B1 (ko) * | 2010-11-15 | 2016-11-14 | 삼성전자주식회사 | 특징점을 이용한 영상 검색 방법 및 상기 방법을 수행하는 장치 |
JP5563494B2 (ja) * | 2011-02-01 | 2014-07-30 | 株式会社デンソーアイティーラボラトリ | 対応参照画像検索装置及び方法、コンテンツ重畳装置、システム、及び方法、並びにコンピュータプログラム |
TWI463438B (zh) | 2011-03-07 | 2014-12-01 | Ind Tech Res Inst | 特徵點描述壓縮方法及特徵點描述壓縮裝置 |
JP5598925B2 (ja) * | 2011-06-29 | 2014-10-01 | Kddi株式会社 | 高次元の特徴ベクトルを高精度で検索する検索装置及びプログラム |
KR101130817B1 (ko) * | 2011-09-27 | 2012-04-16 | (주)올라웍스 | 얼굴 인식 방법, 장치, 및 이 방법을 실행하기 위한 컴퓨터 판독 가능한 기록 매체 |
US8929615B2 (en) * | 2011-11-03 | 2015-01-06 | Facebook, Inc. | Feature-extraction-based image scoring |
US8837727B2 (en) * | 2011-11-08 | 2014-09-16 | Mitsubishi Electric Research Laboratories, Inc. | Method for privacy preserving hashing of signals with binary embeddings |
JP5592337B2 (ja) * | 2011-11-18 | 2014-09-17 | 日本電信電話株式会社 | コンテンツ変換方法、コンテンツ変換装置及びコンテンツ変換プログラム |
JP6153087B2 (ja) * | 2011-12-16 | 2017-06-28 | 日本電気株式会社 | 情報処理システム、情報処理方法、情報処理装置およびその制御方法と制御プログラム、通信端末およびその制御方法と制御プログラム |
CN102567543B (zh) * | 2012-01-12 | 2015-02-18 | 北京搜狗信息服务有限公司 | 一种服装图片的搜索方法和装置 |
ITTO20120602A1 (it) * | 2012-07-09 | 2014-01-10 | Sisvel Technology Srl | Method for transforming an image descriptor based on a gradient histogram and relative image processing apparatus. |
US9223804B2 (en) | 2012-08-27 | 2015-12-29 | Qualcomm Incorporated | Determining capacity of search structures |
KR102120864B1 (ko) | 2013-11-06 | 2020-06-10 | 삼성전자주식회사 | 영상 처리 방법 및 장치 |
US9600524B2 (en) | 2014-12-22 | 2017-03-21 | Blackberry Limited | Method and system for efficient feature matching |
TWI582717B (zh) * | 2016-05-05 | 2017-05-11 | Univ Nat Central | 中耳炎資料庫建立的方法、系統及其影像分析應用 |
CN110569327A (zh) * | 2019-07-08 | 2019-12-13 | 电子科技大学 | 一种支持动态更新的多关键字密文检索方法 |
US11270155B2 (en) * | 2019-11-26 | 2022-03-08 | Dash Hudson | Duplicate image detection based on image content |
CN113225300B (zh) * | 2020-09-10 | 2022-12-27 | 深圳信息职业技术学院 | 一种基于图像的大数据分析方法 |
CN112668632B (zh) * | 2020-12-25 | 2022-04-08 | 浙江大华技术股份有限公司 | 一种数据处理方法、装置、计算机设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1144158C (zh) * | 2000-09-25 | 2004-03-31 | 王介生 | 人体生物特征识别方法 |
US7035467B2 (en) * | 2002-01-09 | 2006-04-25 | Eastman Kodak Company | Method and system for processing images for themed imaging services |
JP4292837B2 (ja) * | 2002-07-16 | 2009-07-08 | 日本電気株式会社 | パターン特徴抽出方法及びその装置 |
US20050225678A1 (en) * | 2004-04-08 | 2005-10-13 | Andrew Zisserman | Object retrieval |
US7620818B2 (en) * | 2004-12-07 | 2009-11-17 | Mitsubishi Electric Research Laboratories, Inc. | Biometric based user authentication and data encryption |
CN1658222A (zh) * | 2005-03-22 | 2005-08-24 | 成都翔宇信息技术有限公司 | 生物活体指纹出入控制方法和系统 |
CN1655505A (zh) * | 2005-04-01 | 2005-08-17 | 中国工商银行 | 一种银行柜员安全系统及方法 |
CN101004789B (zh) * | 2006-01-17 | 2010-05-12 | 郭岳衡 | 手指静脉图像识别方法 |
JP4847221B2 (ja) * | 2006-01-18 | 2011-12-28 | 株式会社Pfu | 情報処理装置、情報処理方法およびプログラム |
CN101536035B (zh) * | 2006-08-31 | 2012-09-26 | 公立大学法人大阪府立大学 | 图像识别方法、以及图像识别装置 |
-
2009
- 2009-04-27 WO PCT/JP2009/058285 patent/WO2009133856A1/ja active Application Filing
- 2009-04-27 US US12/989,906 patent/US8340451B2/en not_active Expired - Fee Related
- 2009-04-27 JP JP2010510122A patent/JP5294342B2/ja not_active Expired - Fee Related
- 2009-04-27 KR KR1020107024566A patent/KR101247891B1/ko not_active IP Right Cessation
- 2009-04-27 CN CN200980115211.7A patent/CN102016918B/zh not_active Expired - Fee Related
- 2009-04-27 EP EP09738793A patent/EP2284796A4/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015501017A (ja) * | 2011-09-30 | 2015-01-08 | キヤノン株式会社 | 画像検索方法 |
Also Published As
Publication number | Publication date |
---|---|
US8340451B2 (en) | 2012-12-25 |
EP2284796A4 (en) | 2012-10-31 |
CN102016918A (zh) | 2011-04-13 |
JP5294342B2 (ja) | 2013-09-18 |
US20110164826A1 (en) | 2011-07-07 |
EP2284796A1 (en) | 2011-02-16 |
KR101247891B1 (ko) | 2013-03-26 |
WO2009133856A1 (ja) | 2009-11-05 |
KR20100135872A (ko) | 2010-12-27 |
CN102016918B (zh) | 2014-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5294342B2 (ja) | 物体認識用画像データベースの作成方法、処理装置および処理用プログラム | |
JP4883649B2 (ja) | 画像認識方法、画像認識装置および画像認識プログラム | |
Zheng et al. | SIFT meets CNN: A decade survey of instance retrieval | |
US8892542B2 (en) | Contextual weighting and efficient re-ranking for vocabulary tree based image retrieval | |
US8254697B2 (en) | Scalable near duplicate image search with geometric constraints | |
Leibe et al. | Efficient clustering and matching for object class recognition. | |
EP2284791B1 (en) | Method of creating three-dimensional object identifying image database, processing apparatus and processing program | |
JP5527555B2 (ja) | 画像データベースの作成方法、作成プログラム及び画像検索方法 | |
JP5354507B2 (ja) | 物体認識用画像データベースの作成方法、作成装置および作成処理プログラム | |
KR20070102035A (ko) | 문서 분류 시스템 및 그 방법 | |
Amato et al. | Large scale image retrieval using vector of locally aggregated descriptors | |
WO2015134310A1 (en) | Cross indexing with grouplets | |
JP4703487B2 (ja) | 画像分類方法及び装置及びプログラム | |
JP6364387B2 (ja) | 特徴量生成装置、方法、及びプログラム | |
JP6017277B2 (ja) | 特徴ベクトルの集合で表されるコンテンツ間の類似度を算出するプログラム、装置及び方法 | |
JP5833499B2 (ja) | 高次元の特徴ベクトル集合で表現されるコンテンツを高精度で検索する検索装置及びプログラム | |
Liao et al. | An efficient content based video copy detection using the sample based hierarchical adaptive k-means clustering | |
Aly et al. | Bag of Words for Large scale object recognition | |
CN114595350B (zh) | 一种百亿级图像快速搜索的方法 | |
Zhang et al. | Region based image retrieval with query-adaptive feature fusion | |
Martinet | From text vocabularies to visual vocabularies what basis? | |
Lakemond et al. | Fast Exact Nearest Neighbour Matching in High Dimensions Using d‐D Sort | |
Luo et al. | Hybrid-indexing multi-type features for large-scale image search | |
Zhao et al. | Image retrieval with high-dimension triangle matching | |
Sutha et al. | Image Retrieval using Fused Features and Annotation Techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120404 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130528 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130606 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |