JP2011221689A - Learning device, learning method, recognition device, recognition method, and program - Google Patents
Learning device, learning method, recognition device, recognition method, and program Download PDFInfo
- Publication number
- JP2011221689A JP2011221689A JP2010088462A JP2010088462A JP2011221689A JP 2011221689 A JP2011221689 A JP 2011221689A JP 2010088462 A JP2010088462 A JP 2010088462A JP 2010088462 A JP2010088462 A JP 2010088462A JP 2011221689 A JP2011221689 A JP 2011221689A
- Authority
- JP
- Japan
- Prior art keywords
- feature
- vector
- model
- hash function
- 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.)
- Withdrawn
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
Description
本発明は、学習装置、学習方法、認識装置、認識方法、およびプログラムに関し、特に、局所特徴量を用いた認識をLSHによって行う場合の認識精度を向上させることができるようにした学習装置、学習方法、認識装置、認識方法、およびプログラムに関する。 The present invention relates to a learning device, a learning method, a recognition device, a recognition method, and a program, and in particular, a learning device capable of improving recognition accuracy when recognition using a local feature amount is performed by LSH, and learning The present invention relates to a method, a recognition device, a recognition method, and a program.
画像内に写る物体を認識する物体認識の方法として、物体を局所的な特徴量で記述し、局所特徴量同士のマッチングを行う方法がある。局所特徴量を用いた物体認識によれば、視点変化や画像内の物体の部分的な隠れがある場合などに対してもロバスト性を確保することが可能になる。 As an object recognition method for recognizing an object appearing in an image, there is a method in which an object is described with local feature values and matching between local feature values is performed. According to object recognition using local feature amounts, robustness can be ensured even when there is a change in viewpoint or partial occlusion of an object in an image.
局所特徴量を用いた物体認識においては、多数のクエリ特徴点とモデル特徴点のマッチング(最近傍探索)が行われるため、全ての特徴量間の類似度を求めるための膨大な計算量が問題になる。ここで、クエリ特徴点は、物体認識時にクエリとして入力された画像であるクエリ画像から抽出された特徴点であり、モデル特徴点は、物体認識の前に行われる学習時に用いられる画像であるモデル画像から抽出された特徴点である。 In object recognition using local features, many query feature points and model feature points are matched (nearest neighbor search), so a huge amount of computation is required to determine the similarity between all feature values. become. Here, the query feature point is a feature point extracted from a query image that is an image input as a query at the time of object recognition, and the model feature point is a model that is an image used at the time of learning performed before object recognition. It is a feature point extracted from the image.
そこで、局所特徴量を用いた物体認識を高速化させる方法として、近年、LSH(Locality Sensitive Hashing)などの方法が用いられている。 Therefore, in recent years, a method such as LSH (Locality Sensitive Hashing) has been used as a method for speeding up object recognition using local features.
LSHを用いた場合、学習時、モデル特徴点の特徴量を表すモデル特徴量ベクトルにハッシュ関数を適用してハッシュ値が計算され、閾値処理によってモデル特徴量ベクトルの量子化が行われる。また、量子化後の値に応じて各モデル特徴点がクラスタリングされる。 When LSH is used, at the time of learning, a hash value is calculated by applying a hash function to a model feature amount vector representing a feature amount of a model feature point, and the model feature amount vector is quantized by threshold processing. Each model feature point is clustered according to the value after quantization.
図1は、特徴量ベクトルの量子化の例を示す図である。 FIG. 1 is a diagram illustrating an example of quantization of a feature vector.
図1の例においては、ハッシュ関数ベクトルf1乃至f3が予め用意されている。ハッシュ関数は、それが適用される特徴量ベクトルと次元数が同じベクトルとして表される。 In the example of FIG. 1, hash function vectors f 1 to f 3 are prepared in advance. The hash function is represented as a vector having the same dimensionality as the feature vector to which the hash function is applied.
例えば、図1に示すように、モデル特徴量ベクトルとして特徴量ベクトルAが抽出された場合、特徴量ベクトルAと、ハッシュ関数ベクトルf1乃至f3のそれぞれとの内積がハッシュ値として算出される。算出された内積値が閾値以上であるか否かに応じて、特徴量ベクトルが1と0のうちのいずれかの値に量子化される。 For example, as shown in FIG. 1, when a feature vector A is extracted as a model feature vector, an inner product of the feature vector A and each of the hash function vectors f 1 to f 3 is calculated as a hash value. . Depending on whether the calculated inner product value is equal to or greater than the threshold value, the feature vector is quantized to one of 1 and 0.
図1の例においては、ハッシュ関数ベクトルf1を用いることによって特徴量ベクトルAが値0に量子化されている。また、ハッシュ関数ベクトルf2とf3を用いることによって、それぞれ、特徴量ベクトルAが値1に量子化されている。
In the example of FIG. 1, the feature vector A is quantized to a value of 0 by using the hash function vector f 1 . Further, the feature vector A is quantized to a
この場合、特徴量ベクトルAにより特徴量が表されるモデル特徴点は、[0,1,1]をキーとするクラスタ([0,1,1]によって識別されるクラスタ)に属する特徴点としてクラスタリングされる。 In this case, the model feature point whose feature amount is represented by the feature amount vector A is a feature point belonging to a cluster (cluster identified by [0, 1, 1]) having [0, 1, 1] as a key. Clustered.
同様に、モデル特徴量ベクトルとして特徴量ベクトルBが抽出された場合、特徴量ベクトルBと、ハッシュ関数ベクトルf1乃至f3のそれぞれとの内積が計算される。 Similarly, when the feature vector B is extracted as the model feature vector, the inner product of the feature vector B and each of the hash function vectors f 1 to f 3 is calculated.
図1の例においては、ハッシュ関数ベクトルf1を用いることによって特徴量ベクトルBが値0に量子化されている。また、ハッシュ関数ベクトルf2とf3を用いることによって、それぞれ、特徴量ベクトルBが値0と値1に量子化されている。
In the example of FIG. 1, the feature vector B is quantized to a
この場合、特徴量ベクトルBにより特徴量が表されるモデル特徴点は、[0,0,1]をキーとするクラスタに属する特徴点としてクラスタリングされる。 In this case, the model feature points whose feature amounts are represented by the feature amount vector B are clustered as feature points belonging to a cluster having [0, 0, 1] as a key.
学習時においては、全てのモデル特徴量ベクトルがこのようにして量子化され、量子化結果に基づいてモデル特徴点がクラスタリングされる。 At the time of learning, all model feature quantity vectors are quantized in this way, and model feature points are clustered based on the quantization result.
一方、認識時、図1を参照して説明した処理と同様の処理によって、クエリ特徴点の特徴量を表すクエリ特徴量ベクトルにハッシュ関数を適用してハッシュ値が計算され、閾値処理によってクエリ特徴量ベクトルの量子化が行われる。 On the other hand, at the time of recognition, a hash value is calculated by applying a hash function to a query feature quantity vector representing a feature quantity of a query feature point by a process similar to the process described with reference to FIG. Quantization of the quantity vector is performed.
また、量子化後の値に応じて各クエリ特徴点がクラスタリングされ、同じクラスタに属するモデル特徴点との間で、特徴量ベクトルの類似度が計算され、最近傍のモデル特徴点が決定される。 Also, each query feature point is clustered according to the quantized value, the feature vector similarity is calculated with model feature points belonging to the same cluster, and the nearest model feature point is determined. .
クラスタリングが行われるため、LSHによれば、全ての特徴点間の特徴量の類似度を計算する完全な最近傍探索より少ない量の計算で、近似的に、最近傍探索を実現することが可能になる。 Since clustering is performed, according to LSH, it is possible to achieve a nearest neighbor search approximately with a smaller amount of computation than a perfect nearest neighbor search that calculates the similarity of feature quantities between all feature points. become.
ハッシュ関数を適用して求められたハッシュ値が閾値以上であるか否かに応じて1と0の二値のうちのいずれかの値に特徴量ベクトルを量子化する方法では、量子化誤差が発生しやすく、それがもとで、近似最近傍探索を正しく行うことができないことがある。 In a method of quantizing a feature vector into one of two values of 1 and 0 depending on whether or not a hash value obtained by applying a hash function is greater than or equal to a threshold value, a quantization error is generated. This is likely to occur, and the approximate nearest neighbor search may not be performed correctly.
図2は、特徴量ベクトルの量子化誤差について説明する図である。 FIG. 2 is a diagram for explaining a quantization error of a feature vector.
例えば、図2の特徴量ベクトルAとBは、学習時にモデル画像から抽出されたモデル特徴点の特徴量を表す特徴量ベクトルである。ハッシュ関数ベクトルfには、ハッシュ関数ベクトルfと直交する超平面(特徴量空間が2次元で表される場合、直交する直線)が閾値として設定されている。 For example, the feature quantity vectors A and B in FIG. 2 are feature quantity vectors representing the feature quantities of model feature points extracted from the model image during learning. In the hash function vector f, a hyperplane orthogonal to the hash function vector f (or a straight line orthogonal when the feature amount space is expressed in two dimensions) is set as a threshold value.
図2の例においては、特徴量ベクトルAとハッシュ関数ベクトルfの内積値は閾値としての0以上であり、特徴量ベクトルAは値1に量子化されている。また、特徴量ベクトルBとハッシュ関数ベクトルfの内積値は閾値としての0未満であり、特徴量ベクトルBは値0に量子化されている。 In the example of FIG. 2, the inner product value of the feature quantity vector A and the hash function vector f is 0 or more as a threshold value, and the feature quantity vector A is quantized to a value of 1. Further, the inner product value of the feature vector B and the hash function vector f is less than 0 as a threshold, and the feature vector B is quantized to a value of 0.
特徴量ベクトルAとBは特徴量空間上では接近しているにも関わらず、異なる値に量子化されている。これにより、特徴量ベクトルAにより特徴量が表されるモデル特徴点と、特徴量ベクトルBにより特徴量が表されるモデル特徴点がそれぞれ異なるクラスタに属する特徴点としてクラスタリングされてしまう。 The feature vectors A and B are quantized to different values even though they are close in the feature space. As a result, the model feature point whose feature amount is represented by the feature amount vector A and the model feature point whose feature amount is represented by the feature amount vector B are clustered as feature points belonging to different clusters.
閾値処理の対象になるハッシュ値はハッシュ関数ベクトルと特徴量ベクトルとの内積値であるため、以上のような量子化は、ハッシュ関数ベクトルと直交する超平面で特徴量空間を二分して、1と0の二値のうちのいずれかの値を設定する処理に相当する。
Since the hash value to be subjected to the threshold processing is the inner product value of the hash function vector and the feature quantity vector, the quantization as described above bisects the feature quantity space by a hyperplane orthogonal to the hash function vector. This corresponds to the process of setting one of the two
従って、切断面の両側の、切断面近辺に特徴量ベクトルがある場合(内積が0に近い場合)、たとえ接近していてもそれぞれの特徴量ベクトルが異なる値に量子化されてしまう。その結果、特徴量空間においては接近している特徴量ベクトルを有する特徴点同士が異なるクラスタに属する特徴点としてクラスタリングされてしまい、全ての特徴点間の類似度を求める完全な最近傍探索と比較してマッチング性能が低下する。 Therefore, when there is a feature vector near the cut surface on both sides of the cut surface (when the inner product is close to 0), each feature vector is quantized to a different value even if they are close. As a result, in the feature space, feature points having close feature vectors are clustered as feature points belonging to different clusters, and compared with a complete nearest neighbor search for similarity between all feature points. As a result, matching performance deteriorates.
本発明はこのような状況に鑑みてなされたものであり、局所特徴量を用いた物体認識をLSHによって行う場合の認識精度を向上させることができるようにするものである。 The present invention has been made in view of such a situation, and makes it possible to improve recognition accuracy when object recognition using local features is performed by LSH.
本発明の一側面の学習装置は、入力されたモデルデータの特徴点であるモデル特徴点を決定し、前記モデル特徴点の特徴量を抽出する抽出手段と、前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定する量子化手段と、前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングするクラスタリング手段とを備える。 The learning device according to one aspect of the present invention determines a model feature point that is a feature point of input model data, and extracts the feature amount of the model feature point, and represents the feature amount of the model feature point Depending on whether or not the inner product value of the model feature vector and the LSH hash function vector having the same dimension as the model feature vector is equal to or greater than a threshold, the model feature vector is set to 1 and 0. When the model feature vector is quantized to one of binary values and the model feature vector is within the margin set in the hash function vector in the feature space, the other of the binary values of 1 and 0 is used. Quantization means for setting a value as a value after quantization of the model feature quantity vector, and the model feature points are obtained by using the model feature quantity vector obtained by using the respective hash function vectors. The combination of values after quantization Torr and a clustering unit for clustering the feature point belonging to the cluster identified.
前記モデル特徴量ベクトルの情報と、前記モデル特徴点が属するクラスタの情報とを対応付けて記憶する記憶手段をさらに設けることができる。 Storage means for storing the information of the model feature vector and the information of the cluster to which the model feature point belongs can be further provided.
前記マージンは、前記ハッシュ関数ベクトルと直交する超平面の近傍を含むように前記ハッシュ関数ベクトルに設定されるようにすることができる。 The margin may be set in the hash function vector so as to include a neighborhood of a hyperplane orthogonal to the hash function vector.
本発明の一側面の学習方法は、入力されたモデルデータの特徴点であるモデル特徴点を決定し、前記モデル特徴点の特徴量を抽出し、前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングするステップを含む。
A learning method according to one aspect of the present invention determines a model feature point that is a feature point of input model data, extracts a feature amount of the model feature point, and represents a feature amount of the model feature point Depending on whether the inner product value of the vector and the LSH hash function vector having the same number of dimensions as the model feature vector is equal to or greater than a threshold value, the model feature vector is a binary value of 1 and 0. If one of the values is quantized and the model feature vector is within the margin set in the hash function vector in the feature space, the other of the
本発明の一側面のプログラムは、入力されたモデルデータの特徴点であるモデル特徴点を決定し、前記モデル特徴点の特徴量を抽出し、前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングするステップを含む処理をコンピュータに実行させる。
A program according to one aspect of the present invention determines a model feature point that is a feature point of input model data, extracts a feature amount of the model feature point, and a model feature amount vector representing the feature amount of the model feature point Depending on whether the inner product value of the model feature vector and the LSH hash function vector having the same number of dimensions is greater than or equal to a threshold value, the model feature vector is expressed as one of
本発明の他の側面の認識装置は、クエリとして入力されたデータの特徴点であるクエリ特徴点を決定し、前記クエリ特徴点の特徴量を抽出する抽出手段と、前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルを1と0の二値のうちの一方の値に量子化する量子化手段と、前記クエリ特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングするクラスタリング手段と、前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度を算出し、算出した類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点を決定する認識手段とを備える。
According to another aspect of the present invention, there is provided a recognition apparatus that determines a query feature point, which is a feature point of data input as a query, and extracts a feature amount of the query feature point, and a feature amount of the query feature point Quantize the query feature vector into one of
学習装置により生成されたモデル特徴量ベクトルの情報と、前記モデル特徴点が属するクラスタの情報とを対応付けて記憶する記憶手段をさらに設けることができる。 A storage unit that stores information on the model feature vector generated by the learning device and information on the cluster to which the model feature point belongs can be further provided.
本発明の他の側面の認識方法は、クエリとして入力されたデータの特徴点であるクエリ特徴点を決定し、前記クエリ特徴点の特徴量を抽出し、前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、前記クエリ特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングし、前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度を算出し、算出した類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点を決定するステップを含む。
According to another aspect of the present invention, there is provided a recognition method that determines a query feature point that is a feature point of data input as a query, extracts a feature amount of the query feature point, and represents a feature amount of the query feature point. The query feature vector is quantized into one of
本発明の他の側面のプログラムは、クエリとして入力されたデータの特徴点であるクエリ特徴点を決定し、前記クエリ特徴点の特徴量を抽出し、前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、前記クエリ特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングし、前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度を算出し、算出した類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点を決定するステップを含む処理をコンピュータに実行させる。 A program according to another aspect of the present invention determines a query feature point that is a feature point of data input as a query, extracts a feature amount of the query feature point, and represents a feature amount of the query feature point Depending on whether or not the inner product value of the quantity vector and the hash function vector is greater than or equal to a threshold value, the query feature quantity vector is quantized into one of binary values of 1 and 0, and the query feature point is Clustering as feature points belonging to a cluster identified by a combination of values after quantization of the query feature vector obtained using the hash function vectors, the query feature points, and the query feature points, A similarity with each model feature point belonging to the same cluster is calculated, and the model feature that is the nearest neighbor of the query feature point is calculated based on the calculated similarity. To execute a process including the step of determining a point at the computer.
本発明の一側面においては、入力されたモデルデータの特徴点であるモデル特徴点が決定され、前記モデル特徴点の特徴量が抽出され、前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルが1と0の二値のうちの一方の値に量子化される。また、前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値が、前記モデル特徴量ベクトルの量子化後の値として設定され、前記モデル特徴点が、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングされる。
In one aspect of the present invention, a model feature point that is a feature point of input model data is determined, a feature amount of the model feature point is extracted, and a model feature amount vector representing the feature amount of the model feature point; Depending on whether the inner product value of the LSH hash function vector having the same dimension number as the model feature vector is equal to or greater than a threshold value, the model feature vector is one of binary values of 1 and 0. Quantized to one value. Further, when the model feature vector is within a margin set in the hash function vector in the feature space, the other one of the
本発明の他の側面においては、クエリとして入力されたデータの特徴点であるクエリ特徴点が決定され、前記クエリ特徴点の特徴量が抽出され、前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルが1と0の二値のうちの一方の値に量子化される。また、前記クエリ特徴点が、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングされ、前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度が算出され、算出された類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点が決定される。
In another aspect of the present invention, a query feature point that is a feature point of data input as a query is determined, a feature amount of the query feature point is extracted, and a query feature amount that represents the feature amount of the query feature point The query feature vector is quantized to one of
本発明によれば、局所特徴量を用いた物体認識をLSHによって行う場合の認識精度を向上させることができる。 According to the present invention, it is possible to improve the recognition accuracy when object recognition using local features is performed by LSH.
[学習装置の構成例]
図3は、本発明の一実施形態に係る学習装置の構成例を示すブロック図である。
[Configuration example of learning device]
FIG. 3 is a block diagram illustrating a configuration example of a learning device according to an embodiment of the present invention.
KNNマッチングなどの最近傍探索をLSHによって行う処理は、オフラインフェーズとしての学習処理と、オンラインフェーズとしての認識処理とからなる。図3の学習装置1は学習処理を行う装置である。
The process of performing nearest neighbor search by LSH, such as KNN matching, includes a learning process as an offline phase and a recognition process as an online phase. The
学習装置1はコンピュータにより構成される。図3に示す機能部のうちの少なくとも一部は、学習装置1を構成するコンピュータのCPUにより所定のプログラムが実行されることによって実現される。
The
図3に示すように、学習装置1は、画像処理部11、特徴量抽出部12、インデックス作成部13、ハッシュ関数記憶部14、およびモデル辞書記憶部15から構成される。画像処理部11に対しては、認識させようとする物体の画像であるモデル画像が入力される。
As illustrated in FIG. 3, the
画像処理部11は、モデル画像をグレースケールの画像に変換する処理、グレースケールのモデル画像に基づいてエッジ画像を生成する処理、多重解像度処理などの初期処理を行う。画像処理部11は、初期処理によって得られたモデル画像のデータを特徴量抽出部12に出力する。
The
特徴量抽出部12は、モデル画像のエッジ上の各点を特徴点として決定する。例えば、特徴量抽出部12は、多重解像度処理によって得られた解像度の異なる各画像に含まれる、特徴点に対応する位置の画素の情報を特徴量(局所特徴量)として抽出する。
The feature
特徴量抽出部12は、抽出した特徴量を表す特徴量ベクトルの情報をモデル辞書記憶部15に記憶させるとともに、インデックス作成部13に出力する。
The feature
以下、適宜、モデル画像の特徴点をモデル特徴点といい、モデル特徴点の特徴量を表す特徴量ベクトルをモデル特徴量ベクトルという。 Hereinafter, the feature points of the model image are appropriately referred to as model feature points, and the feature amount vectors representing the feature amounts of the model feature points are referred to as model feature amount vectors.
インデックス作成部13は、ハッシュ関数記憶部14に記憶されているLSHのハッシュ関数を読み出し、読み出したハッシュ関数を用いてモデル特徴量ベクトルを量子化する。
The
また、インデックス作成部13は、モデル特徴点を、モデル特徴量ベクトルに複数のハッシュ関数を適用してそれぞれ求められた量子化値の組み合わせをキーとするクラスタに属する特徴点としてクラスタリングする。
Further, the
インデックス作成部13は、それぞれのモデル特徴点と、モデル特徴点が属するクラスタの識別情報であるキーを対応付けた情報であるインデックス情報を作成し、モデル辞書記憶部15に記憶させる。インデックス作成部13によるモデル特徴量ベクトルの量子化とクラスタリングについては後述する。
The
ハッシュ関数記憶部14は、予め生成された、複数のLSHのハッシュ関数を記憶する。LSHのハッシュ関数の生成については例えば非特許文献1に記載されている。
The hash
ハッシュ関数記憶部14に記憶されているそれぞれのハッシュ関数には、モデル特徴量ベクトルの量子化誤差を軽減するためのマージンである量子化誤差マージンが設定されている。ハッシュ関数記憶部14は、量子化誤差マージンに関する情報をハッシュ関数に対応付けて記憶する。
Each hash function stored in the hash
モデル辞書記憶部15は、特徴量抽出部12により抽出されたモデル特徴量ベクトルの情報と、インデックス作成部13により作成されたインデックス情報を含むモデル辞書を記憶する。モデル辞書記憶部15に記憶されたモデル辞書は、物体認識を実際に行う認識装置に提供される。学習装置1から認識装置に対するモデル辞書の提供は、有線または無線による通信によって、または記録媒体を介して行われる。
The model
図4は、図3のインデックス作成部13の構成例を示すブロック図である。
FIG. 4 is a block diagram illustrating a configuration example of the
図4に示すように、インデックス作成部13は、量子化部21とクラスタリング部22から構成される。
As shown in FIG. 4, the
量子化部21は、ハッシュ関数記憶部14に記憶されているハッシュ関数を、特徴量抽出部12から供給されたモデル特徴量ベクトルに適用してハッシュ値を算出する。
The
ハッシュ関数記憶部14に記憶されているハッシュ関数は、モデル特徴量ベクトルと次元数が同じベクトル(ハッシュ関数ベクトル)として表される。量子化部21により算出されるハッシュ値は実数のベクトルとなり、ベクトルの各項はモデル特徴量ベクトルとハッシュ関数ベクトルの内積である。
The hash function stored in the hash
量子化部21は、ハッシュ値として算出した内積値と閾値を比較し、モデル特徴量ベクトルを1と0の二値のうちのいずれか一方の値に量子化する。例えば、量子化部21は、モデル特徴量ベクトルとハッシュ関数ベクトルの内積値が閾値としての0以上の場合、モデル特徴量ベクトルを値1に量子化し、0未満の場合、モデル特徴量ベクトルを値0に量子化する。
The
また、量子化部21は、特徴量空間上で、モデル特徴量ベクトルがハッシュ関数ベクトルに設定されている量子化誤差マージンの範囲内にある場合、そのモデル特徴量ベクトルを値1に量子化している場合には値0を、値0に量子化している場合には1を、それぞれ量子化値として設定する。
Further, when the model feature vector is within the quantization error margin set in the hash function vector in the feature quantity space, the
図5は、量子化誤差の補正の例を示す図である。 FIG. 5 is a diagram illustrating an example of correcting the quantization error.
図5の特徴量ベクトルAとBはモデル特徴量ベクトルである。ハッシュ関数ベクトルfは、複数用意されているもののうちの1つのハッシュ関数を表すベクトルである。ハッシュ関数ベクトルfに対しては、ハッシュ関数ベクトルfと直交する超平面が、特徴量空間を二分する閾値として設定されている。 Feature quantity vectors A and B in FIG. 5 are model feature quantity vectors. The hash function vector f is a vector representing one hash function among a plurality of prepared hash functions. For the hash function vector f, a hyperplane orthogonal to the hash function vector f is set as a threshold value that bisects the feature amount space.
また、閾値を表す超平面とハッシュ関数ベクトルfとの交点を基準として、閾値を表す超平面の一方の面側の近傍と、他方の面側の近傍を内側に含むように境界Aと境界Bが設定されている。境界Aと境界Bの内側の範囲が、ハッシュ関数ベクトルfの量子化誤差マージンとなる。 Further, with reference to the intersection of the hyperplane representing the threshold and the hash function vector f, the boundary A and the boundary B include the neighborhood on one side of the hyperplane representing the threshold and the neighborhood on the other side on the inside. Is set. The range inside the boundary A and the boundary B is a quantization error margin of the hash function vector f.
例えば、特徴量ベクトルAとハッシュ関数ベクトルfの内積値が0以上の値として求められた場合、上述したようにして特徴量ベクトルAは値1に量子化される。また、特徴量ベクトルAは、特徴量空間上で、ハッシュ関数ベクトルfの量子化マージンの範囲に含まれるから、値0も特徴量ベクトルAの量子化値として設定される。
For example, when the inner product value of the feature vector A and the hash function vector f is obtained as a value of 0 or more, the feature vector A is quantized to a
ハッシュ関数ベクトルfを用いた場合、特徴量ベクトルAは、0と1の両方の値に量子化されることになる。 When the hash function vector f is used, the feature vector A is quantized to both 0 and 1 values.
同様に、特徴量ベクトルBとハッシュ関数ベクトルfの内積値が0未満の値として求められた場合、特徴量ベクトルBは値0に量子化される。また、特徴量ベクトルBは、特徴量空間上で、ハッシュ関数ベクトルfの量子化マージンの範囲に含まれるから、値1も特徴量ベクトルBの量子化値として設定される。
Similarly, when the inner product value of the feature vector B and the hash function vector f is obtained as a value less than 0, the feature vector B is quantized to a value of 0. Since the feature vector B is included in the quantization margin range of the hash function vector f in the feature space, the
ハッシュ関数ベクトルfを用いた場合、特徴量ベクトルBは、0と1の両方の値に量子化されることになる。 When the hash function vector f is used, the feature vector B is quantized to both 0 and 1 values.
量子化部21は、以上のようなモデル特徴量ベクトルの量子化を、ハッシュ関数記憶部14に記憶されているそれぞれのハッシュ関数ベクトルを用いて行う。量子化部21により得られた量子化値はクラスタリング部22に供給される。
The
クラスタリング部22は、量子化部21により得られた量子化値に基づいて、それぞれのモデル特徴点をクラスタリングする。
The
図6は、モデル特徴量ベクトルの量子化値の例を示す図である。 FIG. 6 is a diagram illustrating an example of the quantized value of the model feature quantity vector.
図6は、ハッシュ関数ベクトルf1乃至f3をそれぞれ用いて得られた、モデル特徴量ベクトルである特徴量ベクトルAとBの量子化値の例を示している。 FIG. 6 shows an example of quantized values of feature quantity vectors A and B, which are model feature quantity vectors, obtained using the hash function vectors f 1 to f 3 , respectively.
図6に示すように、ハッシュ関数ベクトルf1を用いた場合、特徴量ベクトルAは値0に量子化される。 As shown in FIG. 6, when the hash function vector f 1 is used, the feature quantity vector A is quantized to a value of 0.
また、ハッシュ関数ベクトルf2を用いた場合、特徴量ベクトルAは値1に量子化される。ここで、特徴量ベクトルAは、特徴量空間上で、ハッシュ関数ベクトルf2に設定された量子化マージンの範囲に含まれる特徴量ベクトルであるため、値0も、特徴量ベクトルAの量子化値として設定される。
When the hash function vector f 2 is used, the feature quantity vector A is quantized to a value of 1. Here, since the feature quantity vector A is a feature quantity vector included in the range of the quantization margin set in the hash function vector f 2 in the feature quantity space, the
ハッシュ関数ベクトルf3を用いた場合、特徴量ベクトルAは値1に量子化される。
When using a hash function vector f 3, feature vector A is quantized to the
同様に、ハッシュ関数ベクトルf1を用いた場合、特徴量ベクトルBは値0に量子化される。 Similarly, when the hash function vector f 1 is used, the feature vector B is quantized to a value of 0.
また、ハッシュ関数ベクトルf2を用いた場合、特徴量ベクトルBは値0に量子化される。特徴量ベクトルBは、特徴量空間上で、ハッシュ関数ベクトルf2に設定された量子化マージンの範囲に含まれる特徴量ベクトルであるため、値1も、特徴量ベクトルBの量子化値として設定される。
In the case of using a hash function vector f 2, feature vector B is quantized to the
ハッシュ関数ベクトルf3を用いた場合、特徴量ベクトルBは値1に量子化される。
When using a hash function vector f 3, feature vector B is quantized to the
この場合、クラスタリング部22は、特徴量ベクトルAにより特徴量が表されるモデル特徴点を、それぞれのハッシュ関数ベクトルを用いて算出された量子化値の組み合わせである[0,1,1]をキーとするクラスタと、[0,0,1]をキーとするクラスタの2つのクラスタに属する特徴点としてクラスタリングする。
In this case, the
また、クラスタリング部22は、特徴量ベクトルBにより特徴量が表されるモデル特徴点を、それぞれのハッシュ関数ベクトルを用いて算出された量子化値の組み合わせである[0,0,1]をキーとするクラスタと、[0,1,1]をキーとするクラスタの2つのクラスタに属する特徴点としてクラスタリングする。
In addition, the
クラスタリング部22は、特徴量ベクトルAにより特徴量が表されるモデル特徴点のIDと、[0,1,1]および[0,0,1]を対応付けたインデックス情報を作成する。また、クラスタリング部22は、特徴量ベクトルBにより特徴量が表されるモデル特徴点のIDと、[0,0,1]および[0,1,1]を対応付けたインデックス情報を作成する。
The
このように、インデックス作成部13においては、各モデル特徴量ベクトルを対象として、モデル特徴量ベクトルとハッシュ関数ベクトルの内積値が算出され、閾値と比較することによって1と0の二値のうちの一方の値にモデル特徴量ベクトルが量子化される。
As described above, the
また、ハッシュ関数ベクトルに設定された量子化誤差マージンの範囲にモデル特徴量ベクトルが含まれる場合、1と0の二値のうちの他方の値も量子化値として設定され、量子化値に基づいてモデル特徴点がクラスタリングされる。
Further, when the model feature vector is included in the range of the quantization error margin set in the hash function vector, the other value of the
これにより、ハッシュ関数ベクトルの閾値となる超平面の近傍にあるモデル特徴量ベクトルにより特徴量が表されるモデル特徴点を、値1をキーに含むクラスタと値0をキーに含むクラスタの両方のクラスタにクラスタリングすることができる。
As a result, the model feature point whose feature value is represented by the model feature value vector in the vicinity of the hyperplane serving as the threshold value of the hash function vector is represented by both the cluster including the
すなわち、いずれかのハッシュ関数ベクトルの閾値となる超平面の近傍にあるモデル特徴量ベクトルを有するモデル特徴点については、冗長性を持った形でクラスタリングすることが可能になる。 That is, it is possible to perform clustering in a form having redundancy on model feature points having a model feature quantity vector in the vicinity of a hyperplane serving as a threshold for any hash function vector.
以上のようにして学習装置1により生成されたモデル辞書は認識装置に提供され、局所特徴量を用いた物体認識が行われる。
The model dictionary generated by the
[認識装置の構成例]
図7は、本発明の一実施形態に係る認識装置の構成例を示すブロック図である。
[Configuration example of recognition device]
FIG. 7 is a block diagram illustrating a configuration example of a recognition apparatus according to an embodiment of the present invention.
図7の認識装置2は、局所特徴量を用いた物体認識をLSHによって行う装置である。
The
認識装置2もコンピュータにより構成される。図7に示す機能部のうちの少なくとも一部は、認識装置2を構成するコンピュータのCPUにより所定のプログラムが実行されることによって実現される。学習装置1と認識装置2が同じコンピュータにより実現されるようにしてもよいし、それぞれ異なるコンピュータにより実現されるようにしてもよい。
The
図7に示すように、認識装置2は、画像処理部31、特徴量抽出部32、認識部33、ハッシュ関数記憶部34、およびモデル辞書記憶部35から構成される。画像処理部31に対してはクエリ画像が入力される。
As illustrated in FIG. 7, the
画像処理部31は、図3の画像処理部11と同様の処理を行う。すなわち、画像処理部31は、クエリ画像に基づいて初期処理を行う。画像処理部31は、初期処理を行うことによって得られたクエリ画像のデータを特徴量抽出部32に出力する。
The
特徴量抽出部32は、図3の特徴量抽出部12と同様に、クエリ画像の特徴点を決定し、それぞれの特徴点の特徴量を抽出する。
Similar to the feature
以下、適宜、クエリ画像の特徴点をクエリ特徴点といい、クエリ特徴点の特徴量を表す特徴量ベクトルをクエリ特徴量ベクトルという。 Hereinafter, the feature points of the query image will be referred to as query feature points as appropriate, and the feature amount vectors representing the feature amounts of the query feature points will be referred to as query feature amount vectors.
認識部33は、ハッシュ関数記憶部34に記憶されているLSHのハッシュ関数に基づいてクエリ特徴量ベクトルを量子化し、クエリ特徴点をクラスタリングする。また、認識部33は、モデル辞書記憶部35に記憶されているインデックス情報に基づいて、クエリ特徴点と同じクラスタに属するモデル特徴点を最近傍候補として選択し、クエリ特徴点と最近傍候補のモデル特徴点との特徴量ベクトルの類似度を算出する。
The recognizing
認識部33は、特徴量ベクトルの類似度が高い順に所定の数のモデル特徴点を選択し、その中から、最近傍のモデル特徴点を選択する。
The recognizing
認識部33は、クエリ特徴点とマッチした最近傍のモデル特徴点の数などに基づいて、クエリ画像に含まれる物体がどのモデル画像に含まれる物体であるのかを認識し、認識結果を出力する。
The
ハッシュ関数記憶部34は、学習装置1のハッシュ関数記憶部14に記憶されているものと同じ複数のLSHのハッシュ関数を記憶する。ハッシュ関数記憶部34に記憶されているハッシュ関数には量子化誤差マージンは設定されていない。
The hash
モデル辞書記憶部35は、学習装置1から提供されたモデル辞書を記憶する。
The model
図8は、図7の認識部33の構成例を示すブロック図である。
FIG. 8 is a block diagram illustrating a configuration example of the
図8に示すように、認識部33は、量子化部41、クラスタリング部42、類似度算出部43、および出力部44から構成される。
As shown in FIG. 8, the
量子化部41は、ハッシュ関数記憶部34に記憶されているハッシュ関数をクエリ特徴量ベクトルに適用してハッシュ値を算出する。
The
量子化部41は、ハッシュ値として算出した内積値と閾値を比較し、クエリ特徴量ベクトルを1と0の二値のうちのいずれか一方の値に量子化する。例えば、量子化部41は、クエリ特徴量ベクトルとハッシュ関数ベクトルの内積値が閾値としての0以上の場合、クエリ特徴量ベクトルを値1に量子化し、0未満の場合、クエリ特徴量ベクトルを値0に量子化する。
The
量子化部41は、クエリ特徴量ベクトルの量子化を、ハッシュ関数記憶部34に記憶されているそれぞれのハッシュ関数ベクトルを用いて行う。
The
例えば、図6を参照して説明したように、ハッシュ関数ベクトルf1乃至f3を用いることによって、クエリ特徴量ベクトルである特徴量ベクトルAがそれぞれ値0,1,1に量子化される。量子化部41がクエリ特徴量ベクトルの量子化に用いるハッシュ関数には量子化誤差マージンが設定されていないから、クエリ特徴量ベクトルの量子化値として求められる値は、1つのハッシュ関数ベクトルにつき0または1の1つの値である。
For example, as described with reference to FIG. 6, by using the hash function vectors f 1 to f 3 , the feature quantity vector A that is a query feature quantity vector is quantized to
また、ハッシュ関数ベクトルf1乃至f3を用いることによって、クエリ特徴量ベクトルである特徴量ベクトルBがそれぞれ値0,0,1に量子化される。
Further, by using the hash function vectors f 1 to f 3 , the feature quantity vector B, which is a query feature quantity vector, is quantized to
量子化部41は、量子化値をクラスタリング部42に出力する。学習装置1により生成されたインデックス情報がすでに冗長性を持つため、また、実行速度を重視するため、量子化部41による量子化においては、上述したような量子化誤差の補正は行われない。
The
クラスタリング部42は、図4のクラスタリング部22と同様に、量子化部41により得られた量子化値に基づいて、それぞれのクエリ特徴点をクラスタリングする。
Similar to the
例えばクエリ特徴量ベクトルがそれぞれ値0,1,1に量子化された場合、クラスタリング部42は、そのクエリ特徴量ベクトルにより特徴量が表されるクエリ特徴点を、[0,1,1]をキーとするクラスタに属する特徴点としてクラスタリングする。
For example, when the query feature quantity vector is quantized to
また、クエリ特徴量ベクトルがそれぞれ値0,0,1に量子化された場合、クラスタリング部42は、そのクエリ特徴量ベクトルにより特徴量が表されるクエリ特徴点を、[0,0,1]をキーとするクラスタに属する特徴点としてクラスタリングする。
When the query feature quantity vector is quantized to
クラスタリング部42は、クエリ特徴点が属するクラスタのキーの情報を類似度算出部43に出力する。
The
類似度算出部43は、モデル辞書記憶部35に記憶されているモデル辞書に含まれるインデックス情報に基づいて、クエリ特徴点が属するクラスタと同じクラスタに属するモデル特徴点を最近傍候補の特徴点として特定する。
Based on the index information included in the model dictionary stored in the model
類似度算出部43は、最近傍候補のモデル特徴量ベクトルの情報をモデル辞書記憶部35から読み出し、クエリ特徴点と、最近傍候補のモデル特徴点との特徴量ベクトルの類似度を算出する。クエリ特徴点の特徴量ベクトルの情報は、特徴量抽出部32から供給されている。
The
類似度算出部43は、類似度が高い順に所定の数のモデル特徴点を選択し、一般化ハフ変換やoutlier除去処理などの処理を行うことによって、最近傍のモデル特徴点を選択する。類似度の最も高いモデル特徴点が、最近傍のモデル特徴点として選択されるようにしてもよい。類似度算出部43は、最近傍のモデル特徴点の情報を出力部44に出力する。
The
出力部44は、クエリ特徴点とマッチした最近傍のモデル特徴点の数などに基づいて、クエリ画像に含まれる物体がどのモデル画像に含まれる物体であるのかを認識し、認識結果を出力する。
The
学習時にモデル特徴点が冗長性を持った形でクラスタリングされているため、クエリ特徴点が、最近傍のモデル特徴点と異なるクラスタに属する特徴点としてクラスタリングされてしまう可能性を低減することが可能になる。 Since model feature points are clustered in a redundant manner during learning, it is possible to reduce the possibility that query feature points will be clustered as feature points belonging to a cluster different from the nearest model feature point become.
従って、クエリ特徴点との特徴量ベクトルの類似度を実際に算出する対象として、最近傍のモデル特徴点が含まれる可能性が高くなり、マッチングの精度を高めることが可能になる。また、最終的な認識結果の精度をも高めることが可能になる。 Therefore, it is highly possible that the nearest model feature point is included as a target for actually calculating the similarity of the feature quantity vector with the query feature point, and matching accuracy can be improved. It is also possible to increase the accuracy of the final recognition result.
[装置の動作]
ここで、図9のフローチャートを参照して、学習装置1の学習処理について説明する。
[Device operation]
Here, the learning process of the
図9の処理は、モデル画像が学習装置1に入力されたときに開始される。
The process of FIG. 9 is started when a model image is input to the
ステップS1において、画像処理部11は初期処理を行う。
In step S1, the
ステップS2において、特徴量抽出部12は、初期処理によって得られたエッジ画像の各点をモデル特徴点として決定する。
In step S2, the feature
ステップS3において、特徴量抽出部12は、それぞれのモデル特徴点の特徴量を抽出し、抽出した特徴量を表すモデル特徴量ベクトルの情報をモデル辞書記憶部15に記憶させる。
In step S <b> 3, the feature
ステップS4において、インデックス作成部13によりインデックス作成処理が行われる。インデックス作成処理においては、モデル特徴量ベクトルが量子化され、量子化値に基づいてモデル特徴点がクラスタリングされる。インデックス作成処理が終了した後、処理は終了される。
In step S4, the
次に、図10のフローチャートを参照して、図9のステップS4において行われるインデックス作成処理について説明する。 Next, the index creation process performed in step S4 of FIG. 9 will be described with reference to the flowchart of FIG.
図10の処理は、1つのモデル特徴点の特徴量を表すモデル特徴量ベクトルの情報が特徴量抽出部12から供給される毎に行われる。
The process in FIG. 10 is performed every time information of a model feature quantity vector representing a feature quantity of one model feature point is supplied from the feature
ステップS11において、インデックス作成部13の量子化部21は、ハッシュ関数記憶部14に記憶されているハッシュ関数を1つ選択する。
In step S <b> 11, the
ステップS12において、量子化部21は、モデル特徴量ベクトルと、選択したハッシュ関数ベクトルとの内積値を算出する。
In step S12, the
ステップS13において、量子化部21は、算出した内積値が閾値としての0以上である場合、モデル特徴量ベクトルを値1に量子化し、0未満の場合、モデル特徴量ベクトルを値0に量子化する。
In step S13, the
ステップS14において、量子化部21は、特徴量空間上で、モデル特徴量ベクトルがハッシュ関数ベクトルに設定されている量子化誤差マージンの範囲内にあるか否かを判定する。
In step S14, the
モデル特徴量ベクトルが量子化誤差マージンの範囲内にあるとステップS14において判定した場合、ステップS15において、量子化部21は、モデル特徴量ベクトルの量子化誤差を補正する。
If it is determined in step S14 that the model feature vector is within the quantization error margin, in step S15, the
すなわち、量子化部21は、モデル特徴量ベクトルを1と0の二値のうちの一方の値である値1にステップS13において量子化している場合には、他方の値である値0を設定する。また、量子化部21は、モデル特徴量ベクトルを1と0の二値のうちの一方の値である値0にステップS13において量子化している場合には、他方の値である値1を設定する。
That is, the
モデル特徴量ベクトルが量子化誤差マージンの範囲内にないとステップS14において判定された場合、ステップS15の処理はスキップされる。 If it is determined in step S14 that the model feature vector is not within the quantization error margin, the process in step S15 is skipped.
ステップS16において、量子化部21は、ハッシュ関数記憶部14に記憶されている全てのハッシュ関数を選択したか否かを判定する。量子化部21は、まだ選択していないハッシュ関数があるとステップS16において判定した場合、ステップS11に戻り、違うハッシュ関数を選択して以上の処理を繰り返す。
In step S <b> 16, the
一方、全てのハッシュ関数を選択したとステップS16において判定された場合、ステップS17において、クラスタリング部22は、モデル特徴点を、量子化値の組み合わせをキーとするクラスタに属する特徴点としてクラスタリングする。また、クラスタリング部22は、モデル特徴点のIDと、キーを対応付けたインデックス情報を作成し、記憶させる。
On the other hand, if it is determined in step S16 that all hash functions have been selected, in step S17, the
以上の処理が、特徴量抽出部12により抽出された全てのモデル特徴点を対象として行われる。その後、図9のステップS4に戻り、それ以降の処理が行われる。
The above processing is performed on all model feature points extracted by the feature
以上の処理により、いずれかのハッシュ関数ベクトルの閾値となる超平面の近傍にあるモデル特徴量ベクトルを有するモデル特徴点については、冗長性を持った形でクラスタリングすることが可能になる。 With the above processing, the model feature points having the model feature quantity vector in the vicinity of the hyperplane serving as the threshold value for any one of the hash function vectors can be clustered with redundancy.
次に、図11のフローチャートを参照して、認識装置2の認識処理について説明する。
Next, the recognition process of the
図11の処理は、クエリ画像が認識装置2に入力されたときに開始される。
The process of FIG. 11 is started when a query image is input to the
ステップS31において、画像処理部31は初期処理を行う。
In step S31, the
ステップS32において、特徴量抽出部32は、初期処理によって得られたエッジ画像の各点をクエリ特徴点として決定する。
In step S32, the feature
ステップS33において、特徴量抽出部32は、それぞれのクエリ特徴点の特徴量を抽出し、抽出した特徴量を表すクエリ特徴量ベクトルの情報を出力する。
In step S33, the feature
ステップS34において、認識部33により最近傍候補選択処理が行われる。最近傍候補選択処理においては、クエリ特徴量ベクトルが量子化され、クエリ特徴点がクラスタリングされる。また、クエリ特徴点と、同じクラスタに属するそれぞれのモデル特徴点との特徴量ベクトルの類似度が算出される。
In step S34, the nearest neighbor candidate selection process is performed by the
ステップS35において、認識部33は、一般化ハフ変換やoutlier除去処理などの処理を行うことによって、ステップS34の処理によって選択された最近傍候補の中から、最近傍のモデル特徴点を決定する。
In step S <b> 35, the
ステップS36において、認識部33は、全てのクエリ特徴点を対象として以上の処理が行われた後、クエリ画像に含まれる物体がどのモデル画像に含まれる物体であるのかを認識する。その後、処理は終了される。
In step S36, the
次に、図12のフローチャートを参照して、図11のステップS34において行われる最近傍候補選択処理について説明する。 Next, the nearest neighbor candidate selection process performed in step S34 in FIG. 11 will be described with reference to the flowchart in FIG.
図12の処理は、1つのクエリ特徴点の特徴量を表すクエリ特徴量ベクトルの情報が特徴量抽出部32から供給される毎に行われる。
The process of FIG. 12 is performed every time information of a query feature quantity vector representing a feature quantity of one query feature point is supplied from the feature
ステップS51において、認識部33の量子化部41は、ハッシュ関数記憶部34に記憶されているハッシュ関数を1つ選択する。
In step S <b> 51, the
ステップS52において、量子化部41は、クエリ特徴量ベクトルと、選択したハッシュ関数ベクトルとの内積値を算出する。
In step S52, the
ステップS53において、量子化部41は、算出した内積値が閾値としての0以上である場合、クエリ特徴量ベクトルを値1に量子化し、0未満の場合、クエリ特徴量ベクトルを値0に量子化する。
In step S53, the
ステップS54において、量子化部41は、ハッシュ関数記憶部34に記憶されている全てのハッシュ関数を選択したか否かを判定する。量子化部41は、まだ選択していないハッシュ関数があるとステップS54において判定した場合、ステップS51に戻り、違うハッシュ関数を選択して以上の処理を繰り返す。
In step S54, the
一方、全てのハッシュ関数を選択したとステップS54において判定された場合、ステップS55において、クラスタリング部42は、クエリ特徴点を、量子化値の組み合わせをキーとするクラスタに属する特徴点としてクラスタリングする。
On the other hand, if it is determined in step S54 that all the hash functions have been selected, in step S55, the
ステップS56において、類似度算出部43は、インデックス情報に基づいて、クエリ特徴点と同じクラスタに属するモデル特徴点を最近傍候補として選択する。また、類似度算出部43は、クエリ特徴点と、最近傍候補のモデル特徴点との特徴量ベクトルの類似度を算出する。
In step S56, the
ステップS57において、類似度算出部43は、特徴量ベクトルの類似度が高い順に所定の数のモデル特徴点を選択する。
In step S57, the
以上の処理が、特徴量抽出部32により抽出された全てのクエリ特徴点を対象として行われる。その後、図11のステップS34に戻り、それ以降の処理が行われる。
The above processing is performed on all query feature points extracted by the feature
以上の処理により、クエリ特徴点が、最近傍のモデル特徴点と異なるクラスタに属する特徴点としてクラスタリングされてしまう可能性を低減することができ、マッチングの精度と、最終的な認識結果の精度を高めることが可能になる。 With the above processing, it is possible to reduce the possibility that query feature points will be clustered as feature points belonging to a different cluster from the nearest model feature point, and to improve the accuracy of matching and the accuracy of the final recognition result. It becomes possible to increase.
[変形例]
以上においては、特徴量ベクトルの量子化誤差の補正が学習時にのみ行われるものとしたが、認識時にも行われるようにしてもよい。また、学習時ではなく、認識時にのみ行われるようにしてもよい。
[Modification]
In the above, the correction of the quantization error of the feature vector is performed only at the time of learning, but it may be performed at the time of recognition. Further, it may be performed only at the time of recognition, not at the time of learning.
また、以上においては、画像から抽出した局所特徴量のマッチングをLSHによって行う場合について説明したが、マッチングの対象になる情報は、画像から抽出された特徴量に限られない。例えば、音声データから抽出された特徴量のマッチングなどに適用することも可能である。 In the above description, the case where matching of local feature values extracted from an image is performed by LSH has been described. However, information to be matched is not limited to feature values extracted from an image. For example, the present invention can be applied to matching of feature amounts extracted from audio data.
[適用例]
局所特徴量を用いた物体認識を以上のようにしてLSHによって行うことは、例えば、特開2008−77625号公報や特開2008−243175号公報に記載されている物体認識に適用可能である。
[Application example]
Performing object recognition using local features by LSH as described above is applicable to object recognition described in, for example, Japanese Patent Application Laid-Open Nos. 2008-77625 and 2008-243175.
図13は、物体認識装置の構成例を示すブロック図である。 FIG. 13 is a block diagram illustrating a configuration example of the object recognition apparatus.
図13に示す物体認識装置111の構成は、特開2008−243175号公報に記載されている物体認識装置の構成と基本的に同様である。
The configuration of the
図13に示すように、物体認識装置111は、モデル特徴量登録部131とクエリ(ターゲット)画像認識部132から構成される。
As illustrated in FIG. 13, the
モデル特徴量登録部131は、カメラ部151、フレームメモリ152、エッジ強度画像生成部153、エッジ画像生成部154、モデル特徴量抽出部155、およびモデル辞書記憶部156から構成される。
The model feature
カメラ部151は、被写体の像を撮像し、撮像して得られた画像をモデル画像としてフレームメモリ152に供給する。
The
フレームメモリ152は、カメラ部151から供給されたモデル画像を蓄積する。
The
エッジ強度画像生成部153は、フレームメモリ152に蓄積されているモデル画像を基にエッジ強度画像を生成する。エッジ強度画像は、モデル画像の所定の領域における位置の変化に対する画素値の変化の大きさの度合いを示すエッジ強度からなる。エッジ強度画像において、画素値の変化が急峻かつ大きいほど、エッジ強度は強くなり、画素値の変化が緩やかかつ小さいほどエッジ強度は弱くなる。
The edge strength
すなわち、エッジ強度画像生成部153は、モデル画像内の注目画素を含む近傍の領域における画素値の変化の大きさの度合いを示すエッジ強度からなるエッジ強度画像を生成する。エッジ強度画像生成部153は、生成したエッジ強度画像をモデル特徴量抽出部155に供給する。
That is, the edge strength
エッジ画像生成部154は、フレームメモリ152に蓄積されているモデル画像を基にエッジ画像を生成する。エッジ画像は、モデル画像の画素の画素値の大小の境界を示す画像である。
The edge
例えば、エッジ画像生成部154は、モデル画像内の注目画素の画素値の大きさが予め定められた閾値以上であれば1とし、それ以外を0とした画像をエッジ画像として生成する。エッジ画像生成部154は、生成したエッジ画像をモデル特徴量抽出部155に供給する。
For example, the edge
モデル特徴量抽出部155は、エッジ画像生成部154から供給されたエッジ画像上にモデル特徴点を決定する。
The model feature
また、モデル特徴量抽出部155は、モデル特徴点のうちの基準の点となるベース点と、ベース点以外のモデル特徴点であってベース点に従属して決定される点であるサポート点との幾何学的位置関係を決定する。
Further, the model feature
ここで、幾何学的位置関係は、注目される2点のうちの1点を基準とした場合、他の1点の位置を基準の点からの距離および角度で表す関係とされる。すなわち、モデル特徴量抽出部155は、ベース点に対するサポート点の相対位置を決定する。
Here, the geometric positional relationship is a relationship in which the position of one other point is expressed by a distance and an angle from the reference point when one of the two points of interest is used as a reference. That is, the model feature
モデル特徴点は、エッジ画像上の局所領域に設定される参照円と、エッジ画像とが交差する点であるエッジ点とされる。ベース点は、その参照円上のエッジ点の1つであり、その他の点はサポート点とされる。 The model feature points are edge points that are points where a reference circle set in a local region on the edge image and the edge image intersect. The base point is one of the edge points on the reference circle, and the other points are the support points.
具体的には、モデル特徴量抽出部155は、図14に示すように、エッジ画像Eの局所領域としての参照円Rを決定し、参照円Rと交差するエッジ画像E上のエッジ点を、ベース点b、サポート点s1,s2,s3とする。
Specifically, as illustrated in FIG. 14, the model feature
図15に示すように、サポート点s1乃至s3のベース点bからの相対的な位置(距離および角度)は、相対距離r1,r2,r3、および、基準軸Iからの相対角度θ1,θ2,θ3で表される。 As shown in FIG. 15, the relative positions (distance and angle) of the support points s1 to s3 from the base point b are relative distances r1, r2, r3 and relative angles θ1, θ2, relative to the reference axis I. It is represented by θ3.
モデル特徴量抽出部155においては、参照円Rの大きさと位置を変えて、ベース点とサポート点のセットが複数選択される。
In the model feature
モデル特徴量抽出部155は、エッジ強度画像生成部153から供給されたエッジ強度画像を基に、モデル特徴点(ベース点とサポート点)のエッジ強度をモデル特徴量として抽出する。モデル特徴量は、所定の次元数の特徴量ベクトルであるモデル特徴量ベクトルとして表される。
The model feature
また、モデル特徴量抽出部155は、図3の特徴量抽出部12と同様にして、予め与えられているLSHのハッシュ関数を用いてモデル特徴量ベクトルを量子化する。モデル特徴量抽出部155においても、上述したような、量子化誤差を補正する処理が行われる。
Also, the model feature
モデル特徴量抽出部155は、モデル特徴点を、モデル特徴量ベクトルに複数のハッシュ関数を適用してそれぞれ求められた量子化値の組み合わせをキーとするクラスタに属する特徴点としてクラスタリングする。
The model feature
モデル特徴量抽出部155は、それぞれのモデル特徴点と、モデル特徴点が属するクラスタの識別情報であるキーを対応付けた情報であるインデックス情報を作成し、モデル辞書記憶部156に記憶させる。
The model feature
また、モデル特徴量抽出部155は、ベース点とサポート点との幾何学的位置関係とモデル特徴量ベクトルの情報を、モデル画像毎にモデル辞書記憶部156に記憶させる。
In addition, the model feature
モデル辞書記憶部156は、例えばハードディスクドライブなどの記憶装置から構成される。
The model
一方、図13のクエリ画像認識部132は、カメラ部161、フレームメモリ162、エッジ強度画像生成部163、エッジ画像生成部164、クエリ特徴量抽出部165、マッチング部166、および物体同定部167から構成される。
On the other hand, the query
カメラ部161、フレームメモリ162、エッジ強度画像生成部163、エッジ画像生成部164は、それぞれ、モデル特徴量登録部131のカメラ部151、フレームメモリ152、エッジ強度画像生成部153、エッジ画像生成部154と同様である。
The
すなわち、カメラ部161は、被写体の像を撮像し、撮像して得られた画像をクエリ画像としてフレームメモリ162に供給する。
That is, the
フレームメモリ162は、カメラ部161から供給されたクエリ画像を蓄積する。
The
エッジ強度画像生成部163は、フレームメモリ162に蓄積されているクエリ画像を基にエッジ強度画像を生成する。
The edge strength
エッジ画像生成部164は、フレームメモリ162に蓄積されているクエリ画像を基にエッジ画像を生成する。
The edge image generation unit 164 generates an edge image based on the query image stored in the
クエリ特徴量抽出部165は、クエリ画像のエッジ画像およびエッジ強度画像を基に、モデル画像のモデル特徴点に対応するクエリ画像のエッジ点におけるエッジ強度を、クエリ画像の特徴量であるクエリ特徴量として抽出する。クエリ特徴量は、所定の次元数の特徴量ベクトルであるクエリ特徴量ベクトルとして表される。
The query feature
クエリ特徴量抽出部165は、クエリ特徴量ベクトルの情報を、クラスタの識別情報であるキーの情報とともにマッチング部166に供給する。
The query feature
マッチング部166は、図7の認識部33と同様にして、予め与えられているLSHのハッシュ関数を用いてクエリ特徴量ベクトルを量子化する。
The
マッチング部166は、クエリ特徴点(ベース点およびサポート点)を、クエリ特徴量ベクトルに複数のハッシュ関数を適用してそれぞれ求められた量子化値の組み合わせをキーとするクラスタに属する特徴点としてクラスタリングする。
The
マッチング部166は、モデル辞書記憶部156に記憶されているインデックス情報に基づいて、クエリ特徴点と同じクラスタに属するモデル特徴点を最近傍候補として選択する。例えば、クエリ画像のベース点およびサポート点のセットを構成するそれぞれのクエリ特徴点について、同じクラスタに属するモデル特徴点が検出される。
Based on the index information stored in the model
マッチング部166は、検出したモデル特徴点のモデル特徴量ベクトルの情報をモデル辞書記憶部156から読み出し、クエリ特徴点と、最近傍候補のモデル特徴点との特徴量ベクトルの類似度を算出する。マッチング部166は、算出した類似度に基づいて、クエリ特徴点の最近傍となるモデル特徴点を決定する。
The
物体同定部167は、最近傍のモデル特徴点の数を基に、クエリ画像に含まれている物体を同定する。
The
マッチング部166によるマッチングについて説明する。
The matching by the
例えば、モデル画像が持つP個の特徴点であるエッジ点と、クエリ画像におけるP個の特徴点に対応する点とについて、特徴量同士のコストが算出され、コストの値が十分高い点がマッチングペアとして取得される。 For example, for the edge points that are P feature points of the model image and the points corresponding to the P feature points in the query image, the cost between the feature amounts is calculated, and the points with sufficiently high cost values are matched. Obtained as a pair.
図16Aは、モデル画像(モデル画像のエッジ画像E)のベース点b1と、クエリ画像(クエリ画像のエッジ画像E’)の点p'とのマッチングを説明する図である。 FIG. 16A is a diagram for explaining matching between the base point b1 of the model image (the edge image E of the model image) and the point p ′ of the query image (the edge image E ′ of the query image).
まず、クエリ画像の点p'の基準軸にあわせ、モデル画像のサポート点sの位置補正が行われる。具体的には、モデル画像のベース点b1が持つ基準軸方向nθ、クエリ画像の点p'が持つ基準軸方向n'θを用いて、図16Bに示すようにして位置補正が行われる。つまり、モデル画像のベース点b1が持つ基準軸方向nθを、クエリ画像の点p’が持つ基準軸方向n’θとの差dθ分だけ矢印方向に傾ける。 First, the position correction of the support point s of the model image is performed in accordance with the reference axis of the point p ′ of the query image. Specifically, position correction is performed as shown in FIG. 16B using the reference axis direction nθ possessed by the base point b1 of the model image and the reference axis direction n′θ possessed by the point p ′ of the query image. That is, the reference axis direction nθ possessed by the base point b1 of the model image is tilted in the direction of the arrow by the difference dθ from the reference axis direction n′θ possessed by the point p ′ of the query image.
続いて、ベースb1を点p'の位置にあわせ、b1-p'間の特徴量コストd(b1,p')を算出し、各サポート点については、図16Cに示す探索領域内で特徴量コストd(s1j,p'k)が最小となる点を探索する。 Subsequently, the base b1 is aligned with the position of the point p ′, and the feature amount cost d (b1, p ′) between b1 and p ′ is calculated. For each support point, the feature amount within the search area shown in FIG. 16C. The point where the cost d (s1j, p'k) is minimum is searched.
モデル特徴点をm、クエリ特徴点をtとすると、局所特徴量間の距離を表すd(m,t)は下式(1)で表される。
式(1)のhm(k)はモデル特徴点の特徴量を表し、ht(k)はクエリ特徴点の特徴量を表す。 In equation (1), hm (k) represents the feature quantity of the model feature point, and ht (k) represents the feature quantity of the query feature point.
また、ベース点、及びサポート点をあわせたTotalのマッチングコストは下式(2)で表される。
式(2)のα1j、β1jは、それぞれ、角度、距離のペナルティコストであり、下式(3)で表される。
また、θp'k、rp'kは各サポート点に最もマッチする点p’kのベース点biからの角度、及び距離である。 Θp′k and rp′k are the angle and distance from the base point bi of the point p′k that best matches each support point.
以上の計算を全てのクエリ特徴点について行い、最大コストを持つ点をモデルのベース点b1の対応点b’1とする。 The above calculation is performed for all the query feature points, and the point having the maximum cost is set as the corresponding point b'1 of the model base point b1.
このように、図3の学習装置1において行われる学習処理、図7の認識装置2において行われる認識処理は、特開2008−77625号公報や特開2008−243175号公報に記載されている物体認識に適用可能である。
As described above, the learning process performed in the
[コンピュータの構成例]
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
[Computer configuration example]
The series of processes described above can be executed by hardware or can be executed by software. When a series of processing is executed by software, a program constituting the software is installed from a program recording medium into a computer incorporated in dedicated hardware or a general-purpose personal computer.
図17は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。 FIG. 17 is a block diagram illustrating a configuration example of hardware of a computer that executes the above-described series of processing by a program.
CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203は、バス204により相互に接続されている。
A CPU (Central Processing Unit) 201, a ROM (Read Only Memory) 202, and a RAM (Random Access Memory) 203 are connected to each other via a
バス204には、さらに、入出力インタフェース205が接続されている。入出力インタフェース205には、キーボード、マウスなどよりなる入力部206、ディスプレイ、スピーカなどよりなる出力部207が接続される。また、入出力インタフェース205には、ハードディスクや不揮発性のメモリなどよりなる記憶部208、ネットワークインタフェースなどよりなる通信部209、リムーバブルメディア211を駆動するドライブ210が接続される。
An input /
以上のように構成されるコンピュータでは、CPU201が、例えば、記憶部208に記憶されているプログラムを入出力インタフェース205及びバス204を介してRAM203にロードして実行することにより、上述した一連の処理が行われる。
In the computer configured as described above, for example, the
CPU201が実行するプログラムは、例えばリムーバブルメディア211に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部208にインストールされる。
The program executed by the
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。 The program executed by the computer may be a program that is processed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。 The embodiments of the present invention are not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.
1 学習装置, 2 認識装置, 11 画像処理部, 12 特徴量抽出部, 13 インデックス作成部, 14 ハッシュ関数記憶部, 15 モデル辞書記憶部, 21 量子化部, 22 クラスタリング部, 31 画像処理部, 32 特徴量抽出部, 33 認識部, 34 ハッシュ関数記憶部, 35 モデル辞書記憶部, 41 量子化部, 42 クラスタリング部, 43 類似度算出部, 44 出力部
DESCRIPTION OF
Claims (9)
前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定する量子化手段と、
前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングするクラスタリング手段と
を備える学習装置。 Extracting means for determining a model feature point that is a feature point of the input model data and extracting a feature amount of the model feature point;
According to whether or not the inner product value of the model feature quantity vector representing the feature quantity of the model feature point and the hash function vector of the LSH hash function vector having the same dimension number as the model feature quantity vector is greater than or equal to a threshold value, If the model feature vector is quantized to one of binary values 1 and 0, and the model feature vector is within the margin set in the hash function vector in the feature space, 1 and Quantization means for setting the other of the binary values of 0 as a value after quantization of the model feature vector;
Clustering means for clustering the model feature points as feature points belonging to a cluster identified by a combination of values after quantization of the model feature quantity vectors obtained by using the hash function vectors. .
請求項1に記載の学習装置。 The learning apparatus according to claim 1, further comprising a storage unit that stores information on the model feature quantity vector and information on a cluster to which the model feature point belongs in association with each other.
請求項1に記載の学習装置。 The learning device according to claim 1, wherein the margin is set in the hash function vector so as to include a vicinity of a hyperplane orthogonal to the hash function vector.
前記モデル特徴点の特徴量を抽出し、
前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、
前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングする
ステップを含む学習方法。 Determine model feature points that are the feature points of the input model data,
Extracting feature quantities of the model feature points;
According to whether or not the inner product value of the model feature quantity vector representing the feature quantity of the model feature point and the hash function vector of the LSH hash function vector having the same dimension number as the model feature quantity vector is greater than or equal to a threshold value, Quantize the model feature vector into one of the binary values 1 and 0,
When the model feature quantity vector is within the margin set in the hash function vector in the feature quantity space, the other one of the binary values 1 and 0 is quantized after the model feature quantity vector is quantized. As the value of
A learning method including a step of clustering the model feature points as feature points belonging to a cluster identified by a combination of values after quantization of the model feature vector obtained using the hash function vectors.
前記モデル特徴点の特徴量を抽出し、
前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、
前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングする
ステップを含む処理をコンピュータに実行させるプログラム。 Determine model feature points that are the feature points of the input model data,
Extracting feature quantities of the model feature points;
According to whether or not the inner product value of the model feature quantity vector representing the feature quantity of the model feature point and the hash function vector of the LSH hash function vector having the same dimension number as the model feature quantity vector is greater than or equal to a threshold value, Quantize the model feature vector into one of the binary values 1 and 0,
When the model feature quantity vector is within the margin set in the hash function vector in the feature quantity space, the other one of the binary values 1 and 0 is quantized after the model feature quantity vector is quantized. As the value of
Clustering the model feature points as feature points belonging to a cluster identified by a combination of values after quantization of the model feature vector obtained by using the hash function vectors. The program to be executed.
前記モデル特徴点の特徴量を抽出し、
前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、
前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングする
学習装置により生成された情報に基づいて処理を行う認識装置において、
クエリとして入力されたデータの特徴点であるクエリ特徴点を決定し、前記クエリ特徴点の特徴量を抽出する抽出手段と、
前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、前記ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルを1と0の二値のうちの一方の値に量子化する量子化手段と、
前記クエリ特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングするクラスタリング手段と、
前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度を算出し、算出した類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点を決定する認識手段と
を備える認識装置。 Determine model feature points that are the feature points of the input model data,
Extracting feature quantities of the model feature points;
According to whether or not the inner product value of the model feature quantity vector representing the feature quantity of the model feature point and the hash function vector of the LSH hash function vector having the same dimension number as the model feature quantity vector is greater than or equal to a threshold value, Quantize the model feature vector into one of the binary values 1 and 0,
When the model feature quantity vector is within the margin set in the hash function vector in the feature quantity space, the other one of the binary values 1 and 0 is quantized after the model feature quantity vector is quantized. As the value of
Information generated by a learning device that clusters the model feature points as feature points belonging to a cluster identified by a combination of values after quantization of the model feature vector obtained using the hash function vectors In a recognition device that performs processing based on
Extracting means for determining a query feature point that is a feature point of data input as a query and extracting a feature amount of the query feature point;
Depending on whether or not the inner product value of the query feature quantity vector representing the feature quantity of the query feature point and the hash function vector is greater than or equal to a threshold value, the query feature quantity vector is one of binary values of 1 and 0. A quantization means for quantizing to one value;
Clustering means for clustering the query feature points as feature points belonging to a cluster identified by a combination of values after quantization of the query feature vector obtained using the hash function vectors;
A similarity between the query feature point and each of the model feature points belonging to the same cluster as the query feature point is calculated, and the model feature point that is closest to the query feature point based on the calculated similarity A recognition device comprising: recognition means for determining
請求項6に記載の認識装置。 The recognition apparatus according to claim 6, further comprising a storage unit that stores information on the model feature vector generated by the learning device and information on a cluster to which the model feature point belongs in association with each other.
前記モデル特徴点の特徴量を抽出し、
前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、
前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングする
学習装置により生成された情報に基づいて行う認識方法において、
クエリとして入力されたデータの特徴点であるクエリ特徴点を決定し、
前記クエリ特徴点の特徴量を抽出し、
前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、前記ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記クエリ特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングし、
前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度を算出し、算出した類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点を決定する
ステップを含む認識方法。 Determine model feature points that are the feature points of the input model data,
Extracting feature quantities of the model feature points;
According to whether or not the inner product value of the model feature quantity vector representing the feature quantity of the model feature point and the hash function vector of the LSH hash function vector having the same dimension number as the model feature quantity vector is greater than or equal to a threshold value, Quantize the model feature vector into one of the binary values 1 and 0,
When the model feature quantity vector is within the margin set in the hash function vector in the feature quantity space, the other one of the binary values 1 and 0 is quantized after the model feature quantity vector is quantized. As the value of
Information generated by a learning device that clusters the model feature points as feature points belonging to a cluster identified by a combination of values after quantization of the model feature vector obtained using the hash function vectors In the recognition method performed based on
Determine the query feature points that are the feature points of the data entered as queries,
Extracting feature quantities of the query feature points;
Depending on whether or not the inner product value of the query feature quantity vector representing the feature quantity of the query feature point and the hash function vector is greater than or equal to a threshold value, the query feature quantity vector is one of binary values 1 and 0 Quantize to one value,
Clustering the query feature points as feature points belonging to a cluster identified by a combination of values after quantization of the query feature vector obtained using the hash function vectors,
A similarity between the query feature point and each of the model feature points belonging to the same cluster as the query feature point is calculated, and the model feature point that is closest to the query feature point based on the calculated similarity A recognition method including the step of determining.
前記モデル特徴点の特徴量を抽出し、
前記モデル特徴点の特徴量を表すモデル特徴量ベクトルと、前記モデル特徴量ベクトルと次元数が同じベクトルであるLSHのハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記モデル特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記モデル特徴量ベクトルが、特徴量空間において前記ハッシュ関数ベクトルに設定されたマージンの範囲内にある場合、1と0の二値のうちの他方の値を、前記モデル特徴量ベクトルの量子化後の値として設定し、
前記モデル特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記モデル特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングする
学習装置により生成された情報に基づく処理をコンピュータに実行させるプログラムにおいて、
クエリとして入力されたデータの特徴点であるクエリ特徴点を決定し、
前記クエリ特徴点の特徴量を抽出し、
前記クエリ特徴点の特徴量を表すクエリ特徴量ベクトルと、前記ハッシュ関数ベクトルとの内積値が閾値以上であるか否かに応じて、前記クエリ特徴量ベクトルを1と0の二値のうちの一方の値に量子化し、
前記クエリ特徴点を、それぞれの前記ハッシュ関数ベクトルを用いて得られた前記クエリ特徴量ベクトルの量子化後の値の組み合わせにより識別されるクラスタに属する特徴点としてクラスタリングし、
前記クエリ特徴点と、前記クエリ特徴点と同じクラスタに属するそれぞれの前記モデル特徴点との類似度を算出し、算出した類似度に基づいて、前記クエリ特徴点の最近傍となる前記モデル特徴点を決定する
ステップを含む処理をコンピュータに実行させるプログラム。 Determine model feature points that are the feature points of the input model data,
Extracting feature quantities of the model feature points;
According to whether or not the inner product value of the model feature quantity vector representing the feature quantity of the model feature point and the hash function vector of the LSH hash function vector having the same dimension number as the model feature quantity vector is greater than or equal to a threshold value, Quantize the model feature vector into one of the binary values 1 and 0,
When the model feature quantity vector is within the margin set in the hash function vector in the feature quantity space, the other one of the binary values 1 and 0 is quantized after the model feature quantity vector is quantized. As the value of
Information generated by a learning device that clusters the model feature points as feature points belonging to a cluster identified by a combination of values after quantization of the model feature vector obtained using the hash function vectors In a program for causing a computer to execute processing based on
Determine the query feature points that are the feature points of the data entered as queries,
Extracting feature quantities of the query feature points;
Depending on whether or not the inner product value of the query feature quantity vector representing the feature quantity of the query feature point and the hash function vector is greater than or equal to a threshold value, the query feature quantity vector is one of binary values of 1 and 0. Quantize to one value,
Clustering the query feature points as feature points belonging to a cluster identified by a combination of values after quantization of the query feature vector obtained using the hash function vectors,
A similarity between the query feature point and each of the model feature points belonging to the same cluster as the query feature point is calculated, and the model feature point that is closest to the query feature point based on the calculated similarity A program that causes a computer to execute a process including a step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010088462A JP2011221689A (en) | 2010-04-07 | 2010-04-07 | Learning device, learning method, recognition device, recognition method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010088462A JP2011221689A (en) | 2010-04-07 | 2010-04-07 | Learning device, learning method, recognition device, recognition method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011221689A true JP2011221689A (en) | 2011-11-04 |
Family
ID=45038622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010088462A Withdrawn JP2011221689A (en) | 2010-04-07 | 2010-04-07 | Learning device, learning method, recognition device, recognition method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011221689A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014118978A1 (en) * | 2013-02-01 | 2014-08-07 | 富士通株式会社 | Learning method, image processing device and learning program |
WO2014118976A1 (en) * | 2013-02-01 | 2014-08-07 | 富士通株式会社 | Learning method, information conversion device, and learning program |
JP2015204030A (en) * | 2014-04-15 | 2015-11-16 | キヤノン株式会社 | Authentication device and authentication method |
CN106341689A (en) * | 2016-09-07 | 2017-01-18 | 中山大学 | Method and system for optimizing AVS2 quantization module and inverse quantization module |
JP2018504710A (en) * | 2015-01-27 | 2018-02-15 | ノキア テクノロジーズ オサケユイチア | Location and mapping methods |
US10303717B2 (en) | 2014-02-10 | 2019-05-28 | Nec Corporation | Search system, search method and program recording medium |
CN111079828A (en) * | 2019-12-13 | 2020-04-28 | 智慧神州(北京)科技有限公司 | Image clustering method and device based on neural network and storage medium |
US10783152B2 (en) | 2016-02-05 | 2020-09-22 | Fujitsu Limited | Information processing apparatus and data comparison method |
-
2010
- 2010-04-07 JP JP2010088462A patent/JP2011221689A/en not_active Withdrawn
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10635991B2 (en) | 2013-02-01 | 2020-04-28 | Fujitsu Limited | Learning method, information processing device, and recording medium |
WO2014118978A1 (en) * | 2013-02-01 | 2014-08-07 | 富士通株式会社 | Learning method, image processing device and learning program |
JP6004014B2 (en) * | 2013-02-01 | 2016-10-05 | 富士通株式会社 | Learning method, information conversion apparatus, and learning program |
US9792561B2 (en) | 2013-02-01 | 2017-10-17 | Fujitsu Limited | Learning method, information conversion device, and recording medium |
JP6004015B2 (en) * | 2013-02-01 | 2016-10-05 | 富士通株式会社 | Learning method, information processing apparatus, and learning program |
WO2014118976A1 (en) * | 2013-02-01 | 2014-08-07 | 富士通株式会社 | Learning method, information conversion device, and learning program |
US11386149B2 (en) | 2014-02-10 | 2022-07-12 | Nec Corporation | Search system, search method and program recording medium |
US10303717B2 (en) | 2014-02-10 | 2019-05-28 | Nec Corporation | Search system, search method and program recording medium |
US11321387B2 (en) | 2014-02-10 | 2022-05-03 | Nec Corporation | Search system, search method and program recording medium |
JP2015204030A (en) * | 2014-04-15 | 2015-11-16 | キヤノン株式会社 | Authentication device and authentication method |
US10366304B2 (en) | 2015-01-27 | 2019-07-30 | Nokia Technologies Oy | Localization and mapping method |
JP2018504710A (en) * | 2015-01-27 | 2018-02-15 | ノキア テクノロジーズ オサケユイチア | Location and mapping methods |
US10783152B2 (en) | 2016-02-05 | 2020-09-22 | Fujitsu Limited | Information processing apparatus and data comparison method |
CN106341689A (en) * | 2016-09-07 | 2017-01-18 | 中山大学 | Method and system for optimizing AVS2 quantization module and inverse quantization module |
CN106341689B (en) * | 2016-09-07 | 2019-04-23 | 中山大学 | A kind of optimization method and system of AVS2 quantization modules and inverse quantization module |
CN111079828A (en) * | 2019-12-13 | 2020-04-28 | 智慧神州(北京)科技有限公司 | Image clustering method and device based on neural network and storage medium |
CN111079828B (en) * | 2019-12-13 | 2023-10-20 | 北京因特睿软件有限公司 | Image clustering method, device and storage medium based on neural network |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8270723B2 (en) | Recognition device, recognition method, and program | |
JP2011221689A (en) | Learning device, learning method, recognition device, recognition method, and program | |
US9754151B2 (en) | Derived virtual quality parameters for fingerprint matching | |
Cao et al. | Face alignment by explicit shape regression | |
JP4547639B2 (en) | Image processing apparatus and method, and program | |
Sanderson et al. | Multi-region probabilistic histograms for robust and scalable identity inference | |
Li et al. | Probabilistic elastic matching for pose variant face verification | |
JP4518092B2 (en) | Object recognition device, object recognition method, object recognition program, feature amount registration device, feature amount registration method, and feature amount registration program | |
Escalera et al. | Blurred shape model for binary and grey-level symbol recognition | |
EP1835460B1 (en) | Image processing system, learning device and method, and program | |
US10192098B2 (en) | Palm print image matching techniques | |
US7835547B2 (en) | Image recognition device, image recognition method, and program for causing computer to execute the method | |
US8620087B2 (en) | Feature selection device | |
Calonder et al. | Compact signatures for high-speed interest point description and matching | |
JP2011008507A (en) | Image retrieval method and system | |
US10748018B2 (en) | Multi-stage tattoo matching techniques | |
AU2019200711A1 (en) | Biometric verification | |
US10127681B2 (en) | Systems and methods for point-based image alignment | |
CN111783770B (en) | Image correction method, device and computer readable storage medium | |
US9223804B2 (en) | Determining capacity of search structures | |
Ouamane et al. | A novel statistical and multiscale local binary feature for 2D and 3D face verification | |
JP7121132B2 (en) | Image processing method, apparatus and electronic equipment | |
JP2015007919A (en) | Program, apparatus, and method of realizing high accuracy geometric inspection for images different in point of view | |
Liu et al. | Finger-vein recognition with modified binary tree model | |
JP5616310B2 (en) | Image matching apparatus and image matching program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130702 |