JP2012053653A - Image feature point detection device and image feature point detection program - Google Patents
Image feature point detection device and image feature point detection program Download PDFInfo
- Publication number
- JP2012053653A JP2012053653A JP2010195454A JP2010195454A JP2012053653A JP 2012053653 A JP2012053653 A JP 2012053653A JP 2010195454 A JP2010195454 A JP 2010195454A JP 2010195454 A JP2010195454 A JP 2010195454A JP 2012053653 A JP2012053653 A JP 2012053653A
- Authority
- JP
- Japan
- Prior art keywords
- value
- hessian
- convolution
- image
- threshold
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
Description
本発明は、入力された画像の特徴点を検出する画像特徴点検出装置および画像特徴点検出プログラムに関する。 The present invention relates to an image feature point detection apparatus and an image feature point detection program for detecting feature points of an input image.
従来、画像処理の前処理として、入力された画像の特徴点を検出する処理が広く行われている。画像から特徴点を検出する検出装置としては、例えば、非特許文献1に示されるようなヘシアンベース特徴点検出装置が提案されている。このヘシアンベース特徴点検出装置は、下記式(1)に示すように、近似ヘシアン行列(ヘッセ行列)の行列式を用いて、異なるスケールσの画像における画素(点)Xのヘシアン値H(X,σ)を算出することで、画像上の特徴点を検出している。
Conventionally, processing for detecting feature points of an input image has been widely performed as preprocessing for image processing. As a detection device for detecting feature points from an image, for example, a Hessian-based feature point detection device as shown in Non-Patent
ここで、前記式(1)におけるLxx(X,σ)は、画像上の画素X=(x,y)において、スケールσのLoG(Laplacian-of-Gaussian)フィルタを画像の垂直(縦)方向に畳み込み(積分)したものである。また、Lyy(X,σ)は、画像上の画素X=(x,y)において、スケールσのLoGフィルタを画像の水平(横)方向に畳み込みしたものである。そして、Lxy(X,σ)は、画像上の画素X=(x,y)において、スケールσのLoGフィルタを画像の斜め方向に畳み込みしたものである。 Here, L xx (X, σ) in the equation (1) is obtained by applying a LoG (Laplacian-of-Gaussian) filter of scale σ to the vertical (vertical) direction of the image at the pixel X = (x, y) on the image. Convolved (integrated) in the direction. L yy (X, σ) is obtained by convolving a LoG filter with a scale σ in the horizontal (lateral) direction of the image at the pixel X = (x, y) on the image. L xy (X, σ) is obtained by convolving a LoG filter of scale σ in an oblique direction of the image at the pixel X = (x, y) on the image.
なお、LoGフィルタは、例えば下記式(2)のように表すことができる。下記式(2)におけるrは、着目した画素からの距離を示している。 Note that the LoG filter can be expressed, for example, by the following formula (2). In the following formula (2), r represents the distance from the focused pixel.
しかしながら、非特許文献1で提案されたヘシアンベース特徴点検出装置は、前記した垂直方向、水平方向、斜め方向への畳み込みをスケールσごとに順次行う。すなわち、640ピクセル×480ピクセルのサイズの画像の場合、垂直方向、水平方向、斜め方向のそれぞれにおいて、640×480×σ分の畳み込み処理が必要となる。従って、非特許文献1で提案されたヘシアンベース特徴点検出装置は、画像のサイズが大きくなればなるほど処理回数が増加し、処理速度が低下してしまうという問題があった。
However, the Hessian-based feature point detection device proposed in
本発明はかかる点に鑑みてなされたものであって、ヘシアン値を算出する際の畳み込み処理の回数を減少させ、処理速度を高速化させることができる画像特徴点検出装置および画像特徴点検出プログラムを提供することを課題とする。 The present invention has been made in view of such points, and an image feature point detection apparatus and an image feature point detection program that can reduce the number of convolution processes when calculating a Hessian value and increase the processing speed. It is an issue to provide.
前記課題を解決するために請求項1に係る画像特徴点検出装置は、入力された画像の特徴点を検出する画像特徴点検出装置であって、スケール画像生成手段と、垂直方向畳み込み手段と、水平方向畳み込み手段と、斜め方向畳み込み手段と、垂直方向畳み込み判定手段と、水平方向畳み込み判定手段と、ヘシアン値演算手段と、ヘシアン値判定手段と、ヘシアン値解析手段と、閾値記憶手段と、を備える構成とした。
In order to solve the above-mentioned problem, an image feature point detection apparatus according to
このような構成によれば、画像特徴点検出装置は、スケール画像生成手段によって、画像から異なるスケールのスケール画像を生成する。また、垂直方向畳み込み手段によって、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込む。また、垂直方向畳み込み判定手段によって、垂直方向畳み込み手段によって算出された値が第1の閾値を超えるか否かを判定し、当該第1の閾値を超える場合、水平方向畳み込み手段に対して畳み込み指示を行う。なお、第1の閾値とは、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が一定以上であるかを判定するために設定されるものであり、閾値記憶手段に予め記憶されている。 According to such a configuration, the image feature point detection device generates scale images of different scales from the image by the scale image generation means. In addition, the LoG filter is convolved in the vertical direction of the image with respect to the pixels on the respective scale images generated by the scale image generation unit by the vertical direction convolution unit. Further, the vertical direction convolution determination means determines whether or not the value calculated by the vertical direction convolution means exceeds a first threshold value. If the value exceeds the first threshold value, a convolution instruction is given to the horizontal direction convolution means. I do. The first threshold value is set to determine whether the value calculated by the vertical direction convolution means or the horizontal direction convolution means is greater than a certain value, and is stored in advance in the threshold value storage means. .
そして、水平方向畳み込み手段によって、垂直方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込む。また、水平方向畳み込み判定手段によって、水平方向畳み込み手段によって算出された値が第1の閾値を超えるか否かを判定し、当該第1の閾値を超える場合、斜め方向畳み込み手段に対して畳み込み指示を行う。また、斜め方向畳み込み手段によって、水平方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込む。なお、前記した3つの畳み込み処理は、水平方向の畳み込みの後に垂直方向の畳み込みを行い、最後に斜め方向の畳み込みを行ってもよい。 Then, based on the convolution instruction from the vertical direction convolution determining means, the LoG filter is convolved in the horizontal direction of the image with respect to the pixels on the respective scale images generated by the scale image generating means. Further, the horizontal direction convolution determination means determines whether or not the value calculated by the horizontal direction convolution means exceeds a first threshold value. If the value exceeds the first threshold value, the convolution instruction is given to the oblique direction convolution means. I do. Further, the LoG filter is convolved in the diagonal direction of the image by the diagonal direction convolution means based on the convolution instruction from the horizontal direction convolution determination means with respect to the pixels on each scale image generated by the scale image generation means. In the above-described three convolution processes, the convolution in the vertical direction may be performed after the convolution in the horizontal direction, and the convolution in the oblique direction may be performed finally.
そして、ヘシアン値演算手段によって、垂直方向畳み込み手段および水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、斜め方向畳み込み手段によって算出された値を2乗した値を減算することで、画素のヘシアン値を算出する。また、ヘシアン値演算手段は、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第1の閾値以下である場合は、該当する画素のヘシアン値を0に設定する。すなわち、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第1の閾値以下である場合、ヘシアン値の演算は行われない。また、ヘシアン値判定手段によって、ヘシアン値演算手段によって算出されたヘシアン値が、予め定められた第2の閾値を超えるか否かを判定する。なお、第2の閾値とは、ヘシアン値が一定以上であるかを判定するために設定されるものであり、閾値記憶手段に予め記憶されている。また、ヘシアン値解析手段によって、ヘシアン値判定手段によって第2の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とする。 Then, the Hessian value calculation means multiplies the values calculated by the vertical direction convolution means and the horizontal direction convolution means, and subtracts the value obtained by squaring the value calculated by the oblique direction convolution means from the multiplied value. Thus, the Hessian value of the pixel is calculated. Further, the Hessian value calculation means sets the Hessian value of the corresponding pixel to 0 when the value calculated by the vertical direction convolution means or the horizontal direction convolution means is equal to or less than the first threshold value. That is, when the value calculated by the vertical direction convolution means or the horizontal direction convolution means is equal to or less than the first threshold value, the Hessian value is not calculated. Further, the Hessian value determining means determines whether or not the Hessian value calculated by the Hessian value calculating means exceeds a predetermined second threshold value. The second threshold value is set to determine whether the Hessian value is a certain value or more, and is stored in advance in the threshold value storage means. Further, among the Hessian values determined by the Hessian value analyzing unit to exceed the second threshold, the Hessian values of pixels whose pixel positions or scales are adjacent to each other are compared, and the magnitude of the gradient is compared. The pixel indicated by the maximum Hessian value is defined as a feature point.
また、請求項2に係る画像特徴点検出装置は、入力された画像の特徴点を検出する画像特徴点検出装置であって、スケール画像生成手段と、垂直方向畳み込み手段と、水平方向畳み込み手段と、斜め方向畳み込み手段と、斜め方向畳み込み判定手段と、垂直方向畳み込み判定手段と、水平方向畳み込み判定手段と、ヘシアン値演算手段と、ヘシアン値判定手段と、ヘシアン値解析手段と、閾値記憶手段と、を備える構成とした。
An image feature point detection apparatus according to
このような構成によれば、画像特徴点検出装置は、スケール画像生成手段によって、画像から異なるスケールのスケール画像を生成する。また、斜め方向畳み込み手段によって、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込む。また、斜め方向畳み込み判定手段によって、斜め方向畳み込み手段によって算出された値が第1の閾値未満であるか否かを判定し、当該第1の閾値未満である場合、垂直方向畳み込み手段に対して畳み込み指示を行う。 According to such a configuration, the image feature point detection device generates scale images of different scales from the image by the scale image generation means. Further, the LoG filter is convolved in the diagonal direction of the image with respect to the pixels on the respective scale images generated by the scale image generating means by the diagonal direction convolution means. Further, the oblique direction convolution determining means determines whether or not the value calculated by the oblique direction convolution means is less than a first threshold value. If the value is less than the first threshold value, Instruct the convolution.
そして、垂直方向畳み込み手段によって、斜め方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込む。また、垂直方向畳み込み判定手段によって、垂直方向畳み込み手段によって算出された値が第1の閾値を超えるか否かを判定し、当該第1の閾値を超える場合、水平方向畳み込み手段に対して畳み込み指示を行う。また、水平方向畳み込み手段によって、垂直水平方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込む。なお、前記した3つの畳み込み処理は、斜め方向の畳み込みの後に水平方向の畳み込みを行い、最後に垂直方向の畳み込みを行ってもよい。 Then, based on the convolution instruction from the oblique direction convolution determination means, the LoG filter is convolved in the vertical direction of the image with respect to the pixels on each scale image generated by the scale image generation means by the vertical direction convolution means. Further, the vertical direction convolution determination means determines whether or not the value calculated by the vertical direction convolution means exceeds a first threshold value. If the value exceeds the first threshold value, a convolution instruction is given to the horizontal direction convolution means. I do. Further, the LoG filter is convolved in the horizontal direction of the image with respect to the pixels on the respective scale images generated by the scale image generating means based on the convolution instruction from the vertical horizontal direction convolution determining means by the horizontal direction convolution means. . In the above-described three convolution processes, the convolution in the diagonal direction may be followed by the convolution in the horizontal direction and finally the convolution in the vertical direction.
そして、ヘシアン値演算手段によって、垂直方向畳み込み手段および水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、斜め方向畳み込み手段によって算出された値を2乗した値を減算することで、画素のヘシアン値を算出する。また、ヘシアン値演算手段は、斜め方向畳み込み手段によって算出された値が第1の閾値以上であるか、または垂直方向畳み込み手段によって算出された値が第1の閾値以下である場合に、該当する画素のヘシアン値を0に設定する。すなわち、斜め方向畳み込み手段によって算出された値が第1の閾値以上であるか、垂直方向畳み込み手段によって算出された値が第1の閾値以下である場合、ヘシアン値の演算は行われない。また、ヘシアン値判定手段によって、ヘシアン値演算手段によって算出されたヘシアン値が、予め定められた第2の閾値を超えるか否かを判定する。また、ヘシアン値解析手段によって、ヘシアン値判定手段によって第2の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とする。 Then, the Hessian value calculation means multiplies the values calculated by the vertical direction convolution means and the horizontal direction convolution means, and subtracts the value obtained by squaring the value calculated by the oblique direction convolution means from the multiplied value. Thus, the Hessian value of the pixel is calculated. The Hessian value calculation means is applicable when the value calculated by the oblique direction convolution means is equal to or greater than the first threshold value or when the value calculated by the vertical direction convolution means is equal to or less than the first threshold value. Set the Hessian value of the pixel to 0. That is, when the value calculated by the oblique direction convolution means is equal to or greater than the first threshold value, or the value calculated by the vertical direction convolution means is equal to or less than the first threshold value, the Hessian value is not calculated. Further, the Hessian value determining means determines whether or not the Hessian value calculated by the Hessian value calculating means exceeds a predetermined second threshold value. Further, among the Hessian values determined by the Hessian value analyzing unit to exceed the second threshold, the Hessian values of pixels whose pixel positions or scales are adjacent to each other are compared, and the magnitude of the gradient is compared. The pixel indicated by the maximum Hessian value is defined as a feature point.
また、請求項3に係る画像特徴点検出装置は、請求項1または請求項2に記載の画像特徴点検出装置であって、垂直方向畳み込み手段が、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込むことで、下記式(1)におけるLxx(X,σ)を算出し、水平方向畳み込み手段が、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込むことで、下記式(1)におけるLyy(X,σ)を算出し、斜め方向畳み込み手段が、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込むことで、下記式(1)におけるLxy(X,σ)を算出し、ヘシアン値演算手段が、下記式(1)におけるH(X,σ)を算出する構成とした。
An image feature point detection apparatus according to
そして、請求項4に係る画像特徴点検出プログラムは、入力された画像の特徴点を検出するために、コンピュータを、スケール画像生成手段、垂直方向畳み込み手段、水平方向畳み込み手段、斜め方向畳み込み手段、垂直方向畳み込み判定手段、水平方向畳み込み判定手段、ヘシアン値演算手段、ヘシアン値判定手段、ヘシアン値解析手段、として機能させる構成とした。
Then, the image feature point detection program according to
このような構成によれば、画像特徴点検出プログラムは、スケール画像生成手段によって、画像から異なるスケールのスケール画像を生成する。また、垂直方向畳み込み手段によって、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込む。また、垂直方向畳み込み判定手段によって、垂直方向畳み込み手段によって算出された値が第1の閾値を超えるか否かを判定し、当該第1の閾値を超える場合、水平方向畳み込み手段に対して畳み込み指示を行う。 According to such a configuration, the image feature point detection program generates scale images of different scales from the image by the scale image generation means. In addition, the LoG filter is convolved in the vertical direction of the image with respect to the pixels on the respective scale images generated by the scale image generation unit by the vertical direction convolution unit. Further, the vertical direction convolution determination means determines whether or not the value calculated by the vertical direction convolution means exceeds a first threshold value. If the value exceeds the first threshold value, a convolution instruction is given to the horizontal direction convolution means. I do.
そして、水平方向畳み込み手段によって、垂直方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込む。また、水平方向畳み込み判定手段によって、水平方向畳み込み手段によって算出された値が第1の閾値を超えるか否かを判定し、当該第1の閾値を超える場合、斜め方向畳み込み手段に対して畳み込み指示を行う。また、斜め方向畳み込み手段によって、水平方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込む。なお、前記した3つの畳み込み処理は、水平方向の畳み込みの後に垂直方向の畳み込みを行い、最後に斜め方向の畳み込みを行ってもよい。 Then, based on the convolution instruction from the vertical direction convolution determining means, the LoG filter is convolved in the horizontal direction of the image with respect to the pixels on the respective scale images generated by the scale image generating means. Further, the horizontal direction convolution determination means determines whether or not the value calculated by the horizontal direction convolution means exceeds a first threshold value. If the value exceeds the first threshold value, the convolution instruction is given to the oblique direction convolution means. I do. Further, the LoG filter is convolved in the diagonal direction of the image by the diagonal direction convolution means based on the convolution instruction from the horizontal direction convolution determination means with respect to the pixels on each scale image generated by the scale image generation means. In the above-described three convolution processes, the convolution in the vertical direction may be performed after the convolution in the horizontal direction, and the convolution in the oblique direction may be performed finally.
そして、ヘシアン値演算手段によって、垂直方向畳み込み手段および水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、斜め方向畳み込み手段によって算出された値を2乗した値を減算することで、画素のヘシアン値を算出する。また、ヘシアン値演算手段によって、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第1の閾値以下である場合に、該当する画素のヘシアン値を0に設定する。すなわち、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第1の閾値以下である場合、ヘシアン値の演算は行われない。また、ヘシアン値判定手段によって、ヘシアン値演算手段によって算出されたヘシアン値が、予め定められた第2の閾値を超えるか否かを判定する。また、ヘシアン値解析手段によって、ヘシアン値判定手段によって第2の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とする。 Then, the Hessian value calculation means multiplies the values calculated by the vertical direction convolution means and the horizontal direction convolution means, and subtracts the value obtained by squaring the value calculated by the oblique direction convolution means from the multiplied value. Thus, the Hessian value of the pixel is calculated. Further, when the value calculated by the vertical convolution means or the horizontal convolution means is less than or equal to the first threshold by the Hessian value calculation means, the Hessian value of the corresponding pixel is set to zero. That is, when the value calculated by the vertical direction convolution means or the horizontal direction convolution means is equal to or less than the first threshold value, the Hessian value is not calculated. Further, the Hessian value determining means determines whether or not the Hessian value calculated by the Hessian value calculating means exceeds a predetermined second threshold value. Further, among the Hessian values determined by the Hessian value analyzing unit to exceed the second threshold, the Hessian values of pixels whose pixel positions or scales are adjacent to each other are compared, and the magnitude of the gradient is compared. The pixel indicated by the maximum Hessian value is defined as a feature point.
請求項1、請求項3および請求項4に係る発明によれば、前記式(1)の演算において、1番目の処理である垂直方向または水平方向の畳み込みによって算出された値が予め定められた第1の閾値を超える場合のみ、2番目の処理である水平方向または垂直方向の畳み込みを行う。そして、2番目の処理である水平方向または垂直方向の畳み込みによって算出された値が第1の閾値を超える場合のみ、3番目の処理である斜め方向の畳み込みを行ってヘシアン値を算出する。すなわち、閾値処理によって画像上における画素の特徴点の有無を判断しているため、画素の特徴量を示すヘシアン値を算出する画素Xの数を絞り込むことができる。従って、画像の特徴点を検出する際の全体の処理回数を減少させ、かつ、処理速度を高速化することができる。 According to the first, third, and fourth aspects of the invention, the value calculated by the vertical or horizontal convolution, which is the first process, is predetermined in the calculation of the expression (1). Only when the first threshold value is exceeded, convolution in the horizontal or vertical direction, which is the second process, is performed. Only when the value calculated by the horizontal or vertical convolution that is the second processing exceeds the first threshold value, the diagonal processing that is the third processing is performed to calculate the Hessian value. That is, since the presence or absence of a feature point of a pixel on the image is determined by threshold processing, the number of pixels X for calculating a Hessian value indicating the feature amount of the pixel can be narrowed down. Therefore, it is possible to reduce the total number of times of processing when detecting the feature points of the image and increase the processing speed.
請求項3に係る発明によれば、前記式(1)の演算において、1番目の処理である斜め方向の畳み込みによって算出された値が予め定められた第1の閾値未満である場合のみ、2番目の処理である垂直方向または水平方向の畳み込みを行う。そして、2番目の処理である垂直方向または水平方向の畳み込みによって算出された値が第1の閾値を超える場合のみ、3番目の処理である水平方向または垂直方向の畳み込みを行ってヘシアン値を算出する。すなわち、閾値処理によって画像上における画素の特徴点の有無を判断しているため、画素の特徴量を示すヘシアン値を算出する画素Xの数を絞り込むことができる。従って、画像の特徴点を検出する際の全体の処理回数を減少させ、かつ、処理速度を高速化することができる。
According to the invention of
[第1実施形態]
第1実施形態に係る画像特徴点検出装置1について、図面を参照しながら詳細に説明する。
[First Embodiment]
The image feature
画像特徴点検出装置1は、入力された画像の特徴点を検出するものである。画像特徴点検出装置1は、図1に示すように、スケール画像生成手段10と、ヘシアン値算出手段20と、ヘシアン値判定手段30と、ヘシアン値解析手段40と、閾値記憶手段50と、を備えている。
The image feature
スケール画像生成手段10は、画像から異なるスケールσのスケール画像を生成するものである。スケール画像生成手段10は、具体的には、特徴点の検出対象として入力された画像のサイズを縮小し、解像度の異なる複数のスケール画像を生成する。スケール画像生成手段10は、例えば640ピクセル×480ピクセルの画像が入力された場合、予め定められた縮小率に従って、逆ピラミッド型となるように解像度を2分の1(320ピクセル×240ピクセル)、4分の1(160ピクセル×120ピクセル)、等に縮小し、複数のスケール画像を生成する。
The scale image generating means 10 generates scale images having different scales σ from the images. Specifically, the scale image generation means 10 reduces the size of an image input as a feature point detection target, and generates a plurality of scale images having different resolutions. For example, when an image of 640 pixels × 480 pixels is input, the scale
スケール画像生成手段10には、図1に示すように、特徴点の抽出対象となる画像が入力される。そして、スケール画像生成手段10は、前記した手法によって解像度の異なる複数のスケール画像を生成し、これらをヘシアン値算出手段20に出力する。なお、スケール画像生成手段10は、ここでは入力された画像の解像度を8段階に縮小させた8枚のスケール画像をヘシアン値算出手段20に出力している。
As shown in FIG. 1, the scale image generating means 10 receives an image from which feature points are extracted. Then, the scale
ヘシアン値算出手段20は、画像上におけるそれぞれの画素Xのヘシアン値H(X,σ)を算出するものである。ヘシアン値算出手段20は、具体的には、前記式(1)を用いて、スケール画像生成手段10から入力された異なるスケールσのスケール画像上におけるヘシアン値H(X,σ)を算出する。ヘシアン値算出手段20は、ここでは、入力されたスケール画像の画素Xのヘシアン値H(X,σ)を、左上から右下の方向に順番に算出する。
The Hessian value calculation means 20 is for calculating the Hessian value H (X, σ) of each pixel X on the image. Specifically, the Hessian
ここで、前記式(1)によって算出されるヘシアン値H(X,σ)は、該当する画素Xの特徴量を示しており、このヘシアン値H(X,σ)が大きいほど特徴量が大きく、特徴点として検出され易いということを意味している。また、前記式(1)では、Lxx(X,σ)とLyy(X,σ)とを乗算した左辺からLxy(X,σ)を2乗した右辺を減算している。従って、スケール画像上のある画素Xが特徴点として検出される可能性が高いか否かは、前記式(1)の左辺の値であるLxx(X,σ)およびLyy(X,σ)が一定以上の値であるか、あるいは右辺の値であるLxy(X,σ)が一定以下の値であるか、を判定することによって、推定できることになる。 Here, the Hessian value H (X, σ) calculated by the equation (1) indicates the feature amount of the corresponding pixel X, and the feature amount increases as the Hessian value H (X, σ) increases. This means that it is easily detected as a feature point. Further, in the formula (1), L xx (X , σ) and L yy (X, σ) and the left side multiplied by L xy (X, σ) are subtracted squared right to. Therefore, whether or not there is a high possibility that a certain pixel X on the scale image is detected as a feature point is determined by L xx (X, σ) and L yy (X, σ) which are values on the left side of the equation (1). ) Is a certain value or more, or it can be estimated by determining whether L xy (X, σ), which is the value on the right side, is a certain value or less.
このような観点から、ヘシアン値算出手段20は、前記式(1)によってスケール画像上の左上の画素Xから右下の画素Xまでの全ての画素Xのヘシアン値H(X,σ)を算出するのではなく、前記式(1)の左辺の値であるLxx(X,σ)およびLyy(X,σ)が所定の閾値を超える画素Xについてのみ、ヘシアン値H(X,σ)を算出することを特徴としている。 From this point of view, the Hessian value calculation means 20 calculates the Hessian value H (X, σ) of all the pixels X from the upper left pixel X to the lower right pixel X on the scale image by the equation (1). Instead, the Hessian value H (X, σ) is only applied to the pixel X in which L xx (X, σ) and L yy (X, σ), which are values on the left side of the equation (1), exceed a predetermined threshold. It is characterized by calculating.
以下、ヘシアン値算出手段20の具体的構成について説明する。ヘシアン値算出手段20は、図2に示すように、垂直方向畳み込み部210と、水平方向畳み込み部220と、斜め方向畳み込み部230と、垂直方向畳み込み判定部240と、水平方向畳み込み判定部250と、ヘシアン値演算部260と、を備えている。
Hereinafter, a specific configuration of the Hessian value calculation means 20 will be described. As shown in FIG. 2, the Hessian value calculation means 20 includes a vertical
垂直方向畳み込み部(手段)210は、画像上の画素Xに対して、垂直方向の畳み込み処理を行うものである。垂直方向畳み込み部210は、具体的には、スケール画像生成手段10によって生成されたそれぞれのスケール画像上の画素Xに対して、LoGフィルタを画像の垂直方向に畳み込むことで、前記式(1)におけるLxx(X,σ)を算出する。
The vertical convolution unit (means) 210 performs a convolution process in the vertical direction on the pixel X on the image. Specifically, the vertical
水平方向畳み込み部(手段)220は、画像上の画素Xに対して、水平方向の畳み込み処理を行うものである。水平方向畳み込み部220は、具体的には、スケール画像生成手段10によって生成されたそれぞれのスケール画像上の画素Xに対して、LoGフィルタを画像の水平方向に畳み込むことで、前記式(1)におけるLyy(X,σ)を算出する。なお、水平方向畳み込み部220は、後記するように、ここでは垂直方向畳み込み判定部240から畳み込み指示が入力された場合のみ、Lyy(X,σ)を算出する。
The horizontal convolution unit (means) 220 performs a horizontal convolution process on the pixel X on the image. Specifically, the
斜め方向畳み込み部(手段)230は、画像上の画素Xに対して、斜め方向の畳み込み処理を行うものである。斜め方向畳み込み部230は、スケール画像生成手段10によって生成されたそれぞれのスケール画像上の画素Xに対して、LoGフィルタを画像の斜め方向に畳み込むことで、前記式(1)におけるLxy(X,σ)を算出する。なお、斜め方向畳み込み部230は、後記するように、ここでは水平方向畳み込み判定部250から畳み込み指示が入力された場合のみ、Lxy(X,σ)を算出する。
The oblique convolution unit (means) 230 performs an oblique convolution process on the pixel X on the image. The oblique
垂直方向畳み込み判定部(手段)240は、垂直方向畳み込み部210によって算出された値の閾値処理を行うものである。垂直方向畳み込み判定部240は、具体的には、垂直方向畳み込み部210によって算出されたLxx(X,σ)の値が、予め定められた第1の閾値lminを超えるか否かを判定することで、前記式(1)の左辺が大きい値であるか否かを判定する。この第1の閾値(ラプラシアン閾値)lminは、Lxx(X,σ)の値を一定以上とするために設定されたものであり、実験的および経験的に予め求められるものである。
The vertical direction convolution determination unit (means) 240 performs threshold processing of the value calculated by the vertical
垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lminを超える場合、水平方向畳み込み部220に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxx(X,σ)を出力する。一方、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対して、当該Lxx(X,σ)を算出した画素Xのヘシアン値H(X,σ)を0に設定する旨の指示を出力する。
When the value of L xx (X, σ) exceeds the first threshold value l min , the vertical direction
水平方向畳み込み判定部(手段)250は、水平方向畳み込み部220によって算出された値の閾値処理を行うものである。水平方向畳み込み判定部250は、具体的には、水平方向畳み込み部220によって算出されたLyy(X,σ)の値が、予め定められた第1の閾値lminを超えるか否かを判定することで、前記式(1)の左辺が大きい値であるか否かを判定する。
The horizontal direction convolution determination unit (means) 250 performs threshold processing of the value calculated by the horizontal
水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lminを超える場合、斜め方向畳み込み部230に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLyy(X,σ)を出力する。一方、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対して、当該Lyy(X,σ)を算出した画素Xのヘシアン値H(X,σ)を0に設定する旨の指示を出力する。
When the value of L yy (X, σ) exceeds the first threshold value l min , the horizontal direction
ヘシアン値演算部(手段)260は、画像上におけるそれぞれの画素Xのヘシアン値H(X,σ)を算出するとともに、当該ヘシアン値H(X,σ)を0に設定するものである。ヘシアン値演算部260は、具体的には、垂直方向畳み込み部210によって算出されたLxx(X,σ)の値と、水平方向畳み込み部220によって算出されたLyy(X,σ)の値と、が第1の閾値lminを超える場合、すなわち、垂直方向畳み込み部210からLxx(X,σ)の値が入力されるとともに、水平方向畳み込み部220からLyy(X,σ)の値が入力された場合、Lxx(X,σ)の値とLyy(X,σ)の値とを乗算する。そして、当該乗算した値から、斜め方向畳み込み部230によって算出されたLxy(X,σ)の値を2乗した値を減算し、画素Xのヘシアン値H(X,σ)を算出する。
The Hessian value calculation unit (means) 260 calculates the Hessian value H (X, σ) of each pixel X on the image, and sets the Hessian value H (X, σ) to 0. Specifically, the Hessian
一方、ヘシアン値演算部260は、垂直方向畳み込み部210によって算出されたLxx(X,σ)の値と、水平方向畳み込み部220によって算出されたLyy(X,σ)の値と、のいずれかが第1の閾値以下である場合、すなわち、垂直方向畳み込み判定部240または水平方向畳み込み判定部250からヘシアン値H(X,σ)を0に設定する旨の指示が入力された場合、該当する画素Xのヘシアン値H(X,σ)を0に設定する。
On the other hand, the
ここで、ヘシアン値H(X,σ)を0に設定するとは、Lxx(X,σ)の値およびLyy(X,σ)の値が第1の閾値lmin以下である場合は、該当する画素Xは特徴点ではないとみなし、当該画素Xについて前記式(1)の演算を行わないということを意味する。このように、ヘシアン値演算部260は、Lxx(X,σ)の値とLyy(X,σ)の値とが第1の閾値lminを超える場合、すなわち前記式(1)の左辺が大きい値である場合のみ、前記式(1)の演算を行う。なお、ヘシアン値演算部260がヘシアン値H(X,σ)を0に設定した場合、画素Xの次の画素Xの特徴点検出処理に移り、垂直方向畳み込み部210は画素Xの次の画素のLxx(X,σ)の値を算出する。
Here, setting the Hessian value H (X, σ) to 0 means that the value of L xx (X, σ) and the value of L yy (X, σ) are equal to or less than the first threshold value l min . This means that the corresponding pixel X is not a feature point, and the calculation of the formula (1) is not performed for the pixel X. As described above, the
以下、ヘシアン値算出手段20におけるヘシアン値H(X,σ)の算出手順について、簡単に説明する。 Hereinafter, a procedure for calculating the Hessian value H (X, σ) in the Hessian value calculating means 20 will be briefly described.
まず、図2に示すように、スケール画像生成手段10によって生成されたスケール画像が、垂直方向畳み込み部210、水平方向畳み込み部220および斜め方向畳み込み部230にそれぞれ入力される。すると、垂直方向畳み込み部210が、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の垂直方向に畳み込むことで、前記式(1)で示すLxx(X,σ)の値を算出し、これを垂直方向畳み込み判定部240に出力する。
First, as shown in FIG. 2, the scale images generated by the scale
次に、垂直方向畳み込み判定部240が、Lxx(X,σ)の値が第1の閾値lminを超えるか否かを判定する。そして、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lminを超える場合、水平方向畳み込み部220に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxx(X,σ)を出力する。一方、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わない。そして、次の画素Xの処理に移り、垂直方向畳み込み部210が、画素Xの隣の画素XのLxx(X,σ)の値を算出する。
Next, the vertical direction
次に、水平方向畳み込み部220が、垂直方向畳み込み判定部240の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の水平方向に畳み込むことで、前記式(1)で示すLyy(X,σ)の値を算出し、これを水平方向畳み込み判定部250に出力する。
Next, the horizontal
次に、水平方向畳み込み判定部250が、Lyy(X,σ)の値が第1の閾値lminを超えるか否かを判定する。そして、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lminを超える場合、斜め方向畳み込み部230に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLyy(X,σ)を出力する。一方、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わない。そして、次の画素Xの処理に移り、垂直方向畳み込み部210が、画素Xの隣の画素XのLxx(X,σ)の値を算出する。
Next, the horizontal direction
次に、斜め方向畳み込み部230が、水平方向畳み込み判定部250の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の斜め方向に畳み込むことで、前記式(1)で示すLxy(X,σ)の値を算出し、これをヘシアン値演算部260に出力する。
Next, the oblique
次に、ヘシアン値演算部260が、入力されたLxx(X,σ)、Lyy(X,σ)およびLxy(X,σ)の値を用いて前記式(1)を演算することでヘシアン値H(X,σ)を算出し、これをヘシアン値判定手段30に出力する。なお、ヘシアン値演算部260は、垂直方向畳み込み判定部240または水平方向畳み込み判定部250からヘシアン値H(X,σ)を0に設定する旨の指示が入力された場合、ヘシアン値H(X,σ)を0に設定する。
Next, the Hessian
このように、ヘシアン値算出手段20は、従来のようにスケール画像上の全ての画素Xについて、前記式(1)を用いてヘシアン値H(X,σ)を算出するのではなく、閾値処理によってヘシアン値H(X,σ)を算出する画素Xと算出しない画素Xとを判定し、ヘシアン値H(X,σ)を算出する画素Xを絞り込むため、前記式(1)における畳み込み処理の回数を減少させることができる。 As described above, the Hessian value calculation means 20 does not calculate the Hessian value H (X, σ) using the equation (1) for all the pixels X on the scale image as in the prior art, but performs threshold processing. The pixel X for calculating the Hessian value H (X, σ) and the pixel X for which the Hessian value H (X, σ) are not calculated are determined by the above, and in order to narrow down the pixels X for calculating the Hessian value H (X, σ), The number of times can be reduced.
ヘシアン値算出手段20には、図1に示すように、スケール画像生成手段10から解像度の異なる複数のスケール画像が入力される。そして、ヘシアン値算出手段20は、前記手法によってスケール画像上の画素Xのヘシアン値H(X,σ)を算出し、これらをヘシアン値判定手段30に出力する。
As shown in FIG. 1, a plurality of scale images having different resolutions are input to the Hessian
ヘシアン値判定手段30は、ヘシアン値H(X,σ)の閾値処理を行うものである。ヘシアン値判定手段30は、具体的には、ヘシアン値算出手段20(ヘシアン値演算部260)によって算出されたヘシアン値H(X,σ)が、予め定められた第2の閾値hthを超えるか否かを判定する。この第2の閾値(ヘシアン閾値)hthは、ヘシアン値H(X,σ)を一定以上とするために設定されたものであり、実験的および経験的に予め求められるものである。
The Hessian value determination means 30 performs threshold processing of the Hessian value H (X, σ). Specifically, the Hessian
ヘシアン値判定手段30は、画素Xのヘシアン値H(X,σ)が第2の閾値hthを超える場合、これをヘシアン値解析手段40に出力する。一方、ヘシアン値判定手段30は、画素Xのヘシアン値H(X,σ)が第2の閾値hth以下である場合、該当するヘシアン値H(X,σ)を0に設定し、これを破棄する。このように、ヘシアン値判定手段30は、ヘシアン値H(X,σ)が第2の閾値hth以下である場合は、該当する画素Xは特徴点ではないと判定し、特徴点の候補から除外する。
When the Hessian value H (X, σ) of the pixel X exceeds the second threshold value h th , the Hessian
ヘシアン値判定手段30には、図1に示すように、ヘシアン値算出手段20からそれぞれのスケール画像上の画素Xのヘシアン値H(X,σ)が入力される。そして、ヘシアン値判定手段30は、前記した手法によって閾値処理を行い、第2の閾値hthを超えるヘシアン値H(X,σ)をヘシアン値解析手段40に出力する。
As shown in FIG. 1, the Hessian value determination means 30 receives the Hessian value H (X, σ) of the pixel X on each scale image from the Hessian value calculation means 20. Then, the Hessian
ヘシアン値解析手段40は、閾値処理を経た特徴点の候補を解析し、特徴点を決定するものである。ヘシアン値解析手段40は、ヘシアン値判定手段30を経た画素Xに対して、ノンマキシマムサプレッション(non-maximum suppression、非最大抑制)処理を行う。このノンマキシマムサプレッション処理とは、画像のエッジ部の勾配方向に沿って、画素Xの極大値のみを残す処理のことをいう。 The Hessian value analysis means 40 analyzes feature point candidates that have undergone threshold processing, and determines feature points. The Hessian value analysis means 40 performs non-maximum suppression processing on the pixel X that has passed through the Hessian value determination means 30. This non-maximum suppression process refers to a process that leaves only the maximum value of the pixel X along the gradient direction of the edge portion of the image.
ヘシアン値解析手段40は、具体的には、ヘシアン値判定手段30によって第2の閾値hthを超えると判定されたヘシアン値H(X,σ)のうち、画素Xの位置またはスケールσが隣接する画素Xのヘシアン値H(X,σ)同士を比較し、勾配の大きさが極大となるヘシアン値H(X,σ)が示す画素Xを特徴点とする。一方、ヘシアン値解析手段40は、前記した勾配の大きさが極大とならないヘシアン値H(X,σ)が示す画素Xは特徴点ではないと判定し、特徴点の候補から除外する。
Specifically, the Hessian
ヘシアン値解析手段40には、図1に示すように、ヘシアン値判定手段30から閾値処理後のヘシアン値H(X,σ)が入力される。そして、ヘシアン値解析手段40は、前記した手法によって特徴点を決定し、これを出力する。
As shown in FIG. 1, the Hessian
閾値記憶手段50は、第1の閾値lminと第2の閾値hthを予め記憶するものである。閾値記憶手段50は、具体的には、データを記憶することができるメモリ、ハードディスク等で具現される。閾値記憶手段50は、図1に示すように、ヘシアン値算出手段20に対して第1の閾値lminを出力し、ヘシアン値判定手段30に対して第2の閾値hthを出力する。なお、閾値記憶手段50は、第1の閾値lminと第2の閾値hthとを別々に記憶するために、2つに分割して設けてもよい。
The threshold value storage means 50 stores the first threshold value l min and the second threshold value h th in advance. Specifically, the
以上のような構成を備える画像特徴点検出装置1は、前記式(1)の演算において、1番目の処理である垂直方向の畳み込みによって算出された値が予め定められた第1の閾値lminを超える場合のみ、2番目の処理である水平方向の畳み込みを行う。そして、2番目の処理である水平方向の畳み込みによって算出された値が第1の閾値lminを超える場合のみ、3番目の処理である斜め方向の畳み込みを行ってヘシアン値H(X,σ)を算出する。
In the image feature
このように、画像特徴点検出装置1は、閾値処理によって画像上における画素Xの特徴点の有無を判断しているため、画素Xの特徴量を示すヘシアン値H(X,σ)を算出する画素Xの数を絞り込むことができる。従って、画像の特徴点を検出する際の全体の処理回数を減少させ、かつ、処理速度を高速化することができる。
As described above, the image feature
[画像特徴点検出プログラム]
ここで、画像特徴点検出装置1は、一般的なコンピュータを、前記した各手段および各部として機能させるプログラムにより動作させることで実現することができる。このプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
[Image feature point detection program]
Here, the image feature
[第1実施形態に係る画像特徴点検出装置の処理手順]
以下、第1実施形態に係る画像特徴点検出装置1の全体の処理手順について、図4を参照しながら説明する。画像特徴点検出装置1の第1の処理手順では、前記したように、前記式(1)の左辺の値を大きくするために、Lxx(X,σ)およびLyy(X,σ)が第1の閾値lminを超える場合のみ、ヘシアン値H(X,σ)を算出する。
[Processing Procedure of Image Feature Point Detection Device According to First Embodiment]
Hereinafter, an overall processing procedure of the image feature
処理が開始されると、まずスケール画像生成手段10が、解像度の異なる複数のスケール画像を生成する(ステップS1)。次に、垂直方向畳み込み部210が、Lxx(X,σ)の値を算出する(ステップS2)。次に、垂直方向畳み込み判定部240が、Lxx(X,σ)の値が第1の閾値lminを超えるか否かを判定する(ステップS3)。そして、Lxx(X,σ)の値が第1の閾値lminを超える場合(ステップS3でYes)、ステップS4に進む。一方、Lxx(X,σ)の値が第1の閾値lmin以下である場合(ステップS3でNo)、ステップS10に進み、ヘシアン値H(X,σ)を0として処理を終了する。
When the process is started, first, the scale image generating means 10 generates a plurality of scale images having different resolutions (step S1). Next, the vertical
次に、水平方向畳み込み部220が、Lyy(X,σ)の値を算出する(ステップS4)。次に、水平方向畳み込み判定部250が、Lyy(X,σ)の値が第1の閾値lminを超えるか否かを判定する(ステップS5)。そして、Lyy(X,σ)の値が第1の閾値lminを超える場合(ステップS5でYes)、ステップS6に進む。一方、Lyy(X,σ)の値が第1の閾値lmin以下である場合(ステップS5でNo)、ステップS10に進み、ヘシアン値H(X,σ)を0として処理を終了する。
Next, the
次に、斜め方向畳み込み部230が、Lxy(X,σ)の値を算出する(ステップS6)。次に、ヘシアン値演算部260が、ヘシアン値H(X,σ)を算出する(ステップS7)。次に、ヘシアン値判定手段30が、ヘシアン値H(X,σ)が第2の閾値hthを超えるか否かを判定する(ステップS8)。そして、ヘシアン値H(X,σ)が第2の閾値hthを超える場合(ステップS8でYes)、ステップS9に進む。一方、ヘシアン値H(X,σ)が第2の閾値hth以下である場合(ステップS8でNo)、ステップS10に進み、ヘシアン値H(X,σ)を0として処理を終了する。
Next, the oblique
そして、ヘシアン値解析手段40が、入力されたヘシアン値H(X,σ)について、ノンマキシマムサプレッション処理を行って(ステップS9)、処理を終了する。 Then, the Hessian value analysis means 40 performs a non-maximum suppression process on the input Hessian value H (X, σ) (step S9), and the process ends.
[第1実施形態の変形例]
以下、第1実施形態の変形例に係る画像特徴点検出装置について、図3を参照しながら詳細に説明する。第1実施形態の変形例に係る画像特徴点検出装置は、図2のヘシアン値算出手段20を、図3に示すヘシアン値算出手段21とした以外は、前記した第1実施形態に係る画像特徴点検出装置1と同様の構成を備えている。従って、前記した第1実施形態に係る画像特徴点検出装置1と重複する構成については、同じ符号を付して説明を省略する。また、画像特徴点検出装置の全体の処理手順についても、説明を省略する。
[Modification of First Embodiment]
Hereinafter, an image feature point detection apparatus according to a modification of the first embodiment will be described in detail with reference to FIG. The image feature point detection apparatus according to the modified example of the first embodiment is the image feature according to the first embodiment described above except that the Hessian
ヘシアン値算出手段21は、前記したヘシアン値算出手段20のように、先に垂直方向の畳み込みを行った後に水平方向の畳み込みを行うのではなく、先に水平方向の畳み込みを行った後に垂直方向の畳み込みを行うことを特徴としている。 The Hessian value calculating means 21 does not perform the horizontal convolution after first performing the vertical convolution like the Hessian value calculating means 20 described above, but instead performs the horizontal convolution first and then the vertical direction. It is characterized by performing convolution.
以下、ヘシアン値算出手段21におけるヘシアン値H(X,σ)の算出手順について、簡単に説明する。 Hereinafter, a procedure for calculating the hessian value H (X, σ) in the hessian value calculating means 21 will be briefly described.
まず、図3に示すように、スケール画像生成手段10によって生成されたスケール画像が、垂直方向畳み込み部210、水平方向畳み込み部220および斜め方向畳み込み部230にそれぞれ入力される。すると、水平方向畳み込み部220が、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の水平方向に畳み込むことで、前記式(1)で示すLyy(X,σ)の値を算出し、これを水平方向畳み込み判定部250に出力する。
First, as shown in FIG. 3, the scale image generated by the scale
次に、水平方向畳み込み判定部250が、Lyy(X,σ)の値が第1の閾値lminを超えるか否かを判定する。そして、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lminを超える場合、垂直方向畳み込み部210に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLyy(X,σ)を出力する。一方、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わず、水平方向畳み込み部220は、画素Xの隣の画素XのLyy(X,σ)の値を算出する。
Next, the horizontal direction
次に、垂直方向畳み込み部210が、水平方向畳み込み判定部250の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の垂直方向に畳み込むことで、前記式(1)で示すLxx(X,σ)の値を算出し、これを垂直方向畳み込み判定部240に出力する。
Next, the vertical
次に、垂直方向畳み込み判定部240が、Lxx(X,σ)の値が第1の閾値lminを超えるか否かを判定する。そして、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lminを超える場合、斜め方向畳み込み部230に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxx(X,σ)を出力する。一方、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わない。そして、次の画素Xの処理に移り、水平方向畳み込み部220が、画素Xの隣の画素XのLyy(X,σ)の値を算出する。
Next, the vertical direction
以降の処理手順は前記したヘシアン値算出手段20と同様であるため、省略する。このように、ヘシアン値算出手段21は、従来のようにスケール画像上の全ての画素Xについて、前記式(1)を用いてヘシアン値H(X,σ)を算出するのではなく、閾値処理によってヘシアン値H(X,σ)を算出する画素Xと算出しない画素Xとを判定し、ヘシアン値H(X,σ)を算出する画素Xを絞り込むことで、前記式(1)における畳み込み処理の回数を減少させることができる。 The subsequent processing procedure is the same as that of the Hessian value calculation means 20 described above, and is therefore omitted. As described above, the Hessian value calculation means 21 does not calculate the Hessian value H (X, σ) using the formula (1) for all the pixels X on the scale image as in the prior art, but performs threshold processing. The pixel X for calculating the Hessian value H (X, σ) and the pixel X for which the Hessian value H (X, σ) is not calculated are determined by the above, and the convolution processing in the equation (1) is performed by narrowing down the pixels X for calculating the Hessian value H (X, σ). The number of times can be reduced.
[第2実施形態]
以下、第2実施形態に係る画像特徴点検出装置について、図5を参照しながら詳細に説明する。第2実施形態に係る画像特徴点検出装置は、図2のヘシアン値算出手段20を、図5に示すヘシアン値算出手段22とした以外は、前記した第1実施形態に係る画像特徴点検出装置1と同様の構成を備えている。従って、前記した第1実施形態に係る画像特徴点検出装置1と重複する構成については、同じ符号を付して説明を省略する。
[Second Embodiment]
Hereinafter, the image feature point detection apparatus according to the second embodiment will be described in detail with reference to FIG. The image feature point detection apparatus according to the second embodiment is the same as the image feature point detection apparatus according to the first embodiment described above except that the Hessian value calculation means 20 of FIG. 2 is replaced with the Hessian value calculation means 22 shown in FIG. 1 is provided. Therefore, about the structure which overlaps with the above-mentioned image feature
ヘシアン値算出手段22は、前記したヘシアン値算出手段20のように、先に垂直方向の畳み込みを行った後に水平方向の畳み込みを行うのではなく、先に斜め方向の畳み込みを行った後に垂直方向の畳み込みを行うことを特徴としている。そのため、ヘシアン値算出手段22は、前記したヘシアン値算出手段20の水平方向畳み込み判定部250の代わりに、斜め方向畳み込み判定部270を備えている。
The Hessian value calculating means 22 does not perform the horizontal convolution after first performing the vertical convolution like the Hessian value calculating means 20 described above, but performs the oblique convolution first and then the vertical direction. It is characterized by performing convolution. Therefore, the Hessian
斜め方向畳み込み判定部(手段)270は、斜め方向畳み込み部230によって算出された値の閾値処理を行うものである。斜め方向畳み込み判定部270は、斜め方向畳み込み部230によって算出されたLxy(X,σ)の値が、予め定められた第1の閾値lmin未満であるか否かを判定することで、前記式(1)の右辺が小さい値であるか否かを判定する。
The oblique direction convolution determination unit (means) 270 performs threshold processing of the value calculated by the oblique
斜め方向畳み込み判定部270は、Lxy(X,σ)の値が第1の閾値lmin未満である場合、垂直方向畳み込み部210に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxy(X,σ)を出力する。一方、斜め方向畳み込み判定部270は、Lxy(X,σ)の値が第1の閾値lmin以上である場合、ヘシアン値演算部260に対して、当該Lxy(X,σ)を算出した画素Xのヘシアン値H(X,σ)を0に設定する旨の指示を出力する。
When the value of L xy (X, σ) is less than the first threshold value l min, the oblique direction
以下、ヘシアン値算出手段22におけるヘシアン値H(X,σ)の算出手順について、簡単に説明する。 Hereinafter, a procedure for calculating the Hessian value H (X, σ) in the Hessian value calculating means 22 will be briefly described.
まず、図5に示すように、スケール画像生成手段10によって生成されたスケール画像が、垂直方向畳み込み部210、水平方向畳み込み部220および斜め方向畳み込み部230にそれぞれ入力される。すると、斜め方向畳み込み部230が、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の斜め方向に畳み込むことで、前記式(1)で示すLxy(X,σ)の値を算出し、これを斜め方向畳み込み判定部270に出力する。
First, as shown in FIG. 5, the scale image generated by the scale
次に、斜め方向畳み込み判定部270が、Lxy(X,σ)の値が第1の閾値lmin未満であるか否かを判定する。そして、斜め方向畳み込み判定部270は、Lxy(X,σ)の値が第1の閾値lminを未満である場合、垂直方向畳み込み部210に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxy(X,σ)を出力する。一方、斜め方向畳み込み判定部270は、Lxy(X,σ)の値が第1の閾値lmin以上である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わない。そして、次の画素Xの処理に移り、斜め方向畳み込み部230が、画素Xの隣の画素XのLxy(X,σ)の値を算出する。
Next, the oblique direction
次に、垂直方向畳み込み部210が、斜め方向畳み込み判定部270の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の垂直方向に畳み込むことで、前記式(1)で示すLxx(X,σ)の値を算出し、これを垂直方向畳み込み判定部240に出力する。
Next, the vertical
次に、垂直方向畳み込み判定部240が、Lxx(X,σ)の値が第1の閾値lminを超えるか否かを判定する。そして、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lminを超える場合、水平方向畳み込み部220に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxx(X,σ)を出力する。一方、垂直方向畳み込み判定部240は、Lxx(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わず、前記した斜め方向畳み込み部230は、画素Xの隣の画素XのLxy(X,σ)の値を算出する。
Next, the vertical direction
次に、水平方向畳み込み部220が、垂直方向畳み込み判定部240の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の水平方向に畳み込むことで、前記式(1)で示すLyy(X,σ)の値を算出し、これをヘシアン値演算部260に出力する。
Next, the horizontal
以降の処理手順は前記したヘシアン値算出手段20と同様であるため、省略する。このように、ヘシアン値算出手段22、従来のようにスケール画像上の全ての画素Xについて、前記式(1)を用いてヘシアン値H(X,σ)を算出するのではなく、閾値処理によってヘシアン値H(X,σ)を算出する画素Xと算出しない画素Xとを判定し、ヘシアン値H(X,σ)を算出する画素Xを絞り込むことで、前記式(1)における畳み込み処理の回数を減少させることができる。 The subsequent processing procedure is the same as that of the Hessian value calculation means 20 described above, and is therefore omitted. In this way, the Hessian value calculation means 22 does not calculate the Hessian value H (X, σ) using the equation (1) for all the pixels X on the scale image as in the prior art, but by threshold processing. The pixel X for calculating the Hessian value H (X, σ) and the pixel X for which the Hessian value H (X, σ) are not calculated are determined, and the pixels X for calculating the Hessian value H (X, σ) are narrowed down. The number of times can be reduced.
[第2実施形態に係る画像特徴点検出装置の処理手順]
以下、第2実施形態に係る画像特徴点検出装置の全体の処理手順について、図7を参照しながら説明する。第2実施形態に係る画像特徴点検出装置の処理手順は、第1実施形態の処理手順とは異なり、前記式(1)の右辺の値を小さくするために、Lxy(X,σ)が第1の閾値lmin未満であり、かつ、Lxx(X,σ)が第1の閾値lminを超える場合のみ、ヘシアン値H(X,σ)を算出する。
[Processing Procedure of Image Feature Point Detection Device According to Second Embodiment]
The overall processing procedure of the image feature point detection apparatus according to the second embodiment will be described below with reference to FIG. The processing procedure of the image feature point detection apparatus according to the second embodiment is different from the processing procedure of the first embodiment, so that L xy (X, σ) is set to reduce the value of the right side of the equation (1). The Hessian value H (X, σ) is calculated only when the value is less than the first threshold value l min and L xx (X, σ) exceeds the first threshold value l min .
処理が開始されると、まずスケール画像生成手段10が、解像度の異なる複数のスケール画像を生成する(ステップS11)。次に、斜め方向畳み込み部230が、Lxy(X,σ)の値を算出する(ステップS12)。次に、斜め方向畳み込み判定部270が、Lxy(X,σ)の値が第1の閾値lmin未満であるか否かを判定する(ステップS13)。そして、Lxy(X,σ)の値が第1の閾値lmin未満である場合(ステップS13でYes)、ステップS14に進む。一方、Lxy(X,σ)の値が第1の閾値lmin以上である場合(ステップS13でNo)、ステップS20に進み、ヘシアン値H(X,σ)を0として処理を終了する。
When the process is started, first, the scale
次に、垂直方向畳み込み部210が、Lxx(X,σ)の値を算出する(ステップS14)。次に、垂直方向畳み込み判定部240が、Lxx(X,σ)の値が第1の閾値lminを超えるか否かを判定する(ステップS15)。そして、Lxx(X,σ)の値が第1の閾値lminを超える場合(ステップS15でYes)、ステップS16に進む。一方、Lxx(X,σ)の値が第1の閾値lmin以下である場合(ステップS15でNo)、ステップS20に進み、ヘシアン値H(X,σ)を0として処理を終了する。
Next, the vertical
次に、水平方向畳み込み部220が、Lyy(X,σ)の値を算出する(ステップS16)。次に、ヘシアン値演算部260が、ヘシアン値H(X,σ)を算出する(ステップS17)。次に、ヘシアン値判定手段30が、ヘシアン値H(X,σ)が第2の閾値hthを超えるか否かを判定する(ステップS18)。そして、ヘシアン値H(X,σ)が第2の閾値hthを超える場合(ステップS18でYes)、ステップS19に進む。一方、ヘシアン値H(X,σ)が第2の閾値hth以下である場合(ステップS18でNo)、ステップS20に進み、ヘシアン値H(X,σ)を0として処理を終了する。
Next, the
そして、ヘシアン値解析手段40が、入力されたヘシアン値H(X,σ)について、ノンマキシマムサプレッション処理を行って(ステップS19)、処理を終了する。 Then, the Hessian value analysis means 40 performs a non-maximum suppression process on the input Hessian value H (X, σ) (step S19), and the process ends.
[第2実施形態の変形例]
以下、第2実施形態の変形例に係る画像特徴点検出装置について、図6を参照しながら詳細に説明する。第2実施形態の変形例に係る画像特徴点検出装置は、図5のヘシアン値算出手段22を、図6に示すヘシアン値算出手段23とした以外は、前記した第2実施形態に係る画像特徴点検出装置と同様の構成を備えている。従って、前記した第2実施形態に係る画像特徴点検出装置と重複する構成については、同じ符号を付して説明を省略する。また、画像特徴点検出装置の全体の処理手順についても、説明を省略する。
[Modification of Second Embodiment]
Hereinafter, an image feature point detection apparatus according to a modification of the second embodiment will be described in detail with reference to FIG. The image feature point detection apparatus according to the modified example of the second embodiment has the image feature according to the second embodiment described above except that the Hessian
ヘシアン値算出手段23は、前記したヘシアン値算出手段22のように、斜め方向の畳み込みを行なった後に垂直方向の畳み込みを行うのではなく、斜め方向の畳み込みを行った後に水平方向の畳み込みを行うことを特徴としている。そのため、ヘシアン値算出手段23は、前記したヘシアン値算出手段22の垂直方向畳み込み判定部240の代わりに、水平方向畳み込み判定部250を備えている。
The Hessian value calculation means 23 does not perform the vertical direction convolution after performing the oblique direction convolution like the Hessian value calculation means 22 described above, but performs the horizontal direction convolution after performing the oblique direction convolution. It is characterized by that. For this reason, the Hessian value calculation means 23 includes a horizontal direction
以下、ヘシアン値算出手段23におけるヘシアン値H(X,σ)の算出手順について、簡単に説明する。 Hereinafter, a procedure for calculating the Hessian value H (X, σ) in the Hessian value calculating means 23 will be briefly described.
まず、図6に示すように、スケール画像生成手段10によって生成されたスケール画像が、垂直方向畳み込み部210、水平方向畳み込み部220および斜め方向畳み込み部230にそれぞれ入力される。すると、斜め方向畳み込み部230が、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の斜め方向に畳み込むことで、前記式(1)で示すLxy(X,σ)の値を算出し、これを斜め方向畳み込み判定部270に出力する。
First, as shown in FIG. 6, the scale images generated by the scale
次に、斜め方向畳み込み判定部270が、Lxy(X,σ)の値が第1の閾値lmin未満であるか否かを判定する。そして、斜め方向畳み込み判定部270は、Lxy(X,σ)の値が第1の閾値lmin未満である場合、水平方向畳み込み部220に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLxy(X,σ)を出力する。一方、斜め方向畳み込み判定部270は、Lxy(X,σ)の値が第1の閾値lmin以上である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わない。そして、次の画素Xの処理に移り、斜め方向畳み込み部230が、画素Xの隣の画素XのLxy(X,σ)の値を算出する。
Next, the oblique direction
次に、水平方向畳み込み部220が、斜め方向畳み込み判定部270の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の水平方向に畳み込むことで、前記式(1)で示すLyy(X,σ)の値を算出し、これを水平方向畳み込み判定部250に出力する。
Next, the horizontal
次に、水平方向畳み込み判定部250が、Lyy(X,σ)の値が第1の閾値lminを超えるか否かを判定する。そして、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lminを超える場合、垂直方向畳み込み部210に対して畳み込み指示を出力するとともに、ヘシアン値演算部260に対してLyy(X,σ)を出力する。一方、水平方向畳み込み判定部250は、Lyy(X,σ)の値が第1の閾値lmin以下である場合、ヘシアン値演算部260に対してヘシアン値H(X,σ)を0に設定する旨の指示を出力する。この場合、ヘシアン値演算部260は、前記式(1)の演算を行わず、前記した斜め方向畳み込み部230は、画素Xの隣の画素XのLxy(X,σ)の値を算出する。
Next, the horizontal direction
次に、垂直方向畳み込み手段210が、水平方向畳み込み判定部250の畳み込み指示に基づいて、スケール画像上の画素Xに対して、前記式(2)で示すLoGフィルタを画像の垂直方向に畳み込むことで、前記式(1)で示すLxx(X,σ)の値を算出し、これをヘシアン値演算部260に出力する。
Next, the vertical direction convolution means 210 convolves the LoG filter shown in the expression (2) with respect to the pixel X on the scale image in the vertical direction of the image based on the convolution instruction of the horizontal direction
以降の処理手順は前記したヘシアン値算出手段22と同様であるため、省略する。このように、ヘシアン値算出手段23は、従来のようにスケール画像上の全ての画素Xについて、前記式(1)を用いてヘシアン値H(X,σ)を算出するのではなく、閾値処理によってヘシアン値H(X,σ)を算出する画素Xと算出しない画素Xとを判定し、ヘシアン値H(X,σ)を算出する画素Xを絞り込むことで、前記式(1)における畳み込み処理の回数を減少させることができる。 The subsequent processing procedure is the same as that of the Hessian value calculation means 22 described above, and is therefore omitted. As described above, the Hessian value calculation means 23 does not calculate the Hessian value H (X, σ) using the equation (1) for all the pixels X on the scale image as in the prior art, but performs threshold processing. The pixel X for calculating the Hessian value H (X, σ) and the pixel X for which the Hessian value H (X, σ) is not calculated are determined by the above, and the convolution processing in the equation (1) is performed by narrowing down the pixels X for calculating the Hessian value H (X, σ). The number of times can be reduced.
以下、本発明に係る画像特徴点検出装置の効果を確認する実験例について、図8〜13を参照しながら説明する。本実験例では、本発明に係る画像特徴点検出装置を用いて、実際の画像中における特徴点の検出を行った。本実験例では、Mikolajaczykが(http://www.robots.ox.ac.uk/~vgg/research/affine/)で提供している5種類の画像、すなわち、bikes(increasing blur)、boat(increasing scale(with rotation))、cars(decreasing light)、ubc(JPEG compression[%])、bricks (viewpoint angle)、を用いた。 Hereinafter, experimental examples for confirming the effect of the image feature point detection apparatus according to the present invention will be described with reference to FIGS. In this experimental example, feature points in an actual image were detected using the image feature point detection apparatus according to the present invention. In this experimental example, Mikolajaczyk provided 5 types of images (http://www.robots.ox.ac.uk/~vgg/research/affine/): bikes (increasing blur), boat ( increasing scale (with rotation)), cars (decreasing light), ubc (JPEG compression [%]), and bricks (viewpoint angle) were used.
前記した5種類の画像のうち、bikes(increasing blur)は、バイクの画像に対して、ボケを段階的に増加させた複数の画像である。また、boat(increasing scale(with rotation))は、ボートの画像に対して、回転を加えながらスケールを段階に増加させた複数の画像である。また、cars(decreasing light)は、車の画像に対して、光量を段階的に減少させた複数の画像である。また、ubc(JPEG compression[%])は、建物の画像に対して、JPEG圧縮率を段階的に増加させた複数の画像である。そして、bricks (viewpoint angle)は、レンガの壁に対して、視点を段階的に変更した複数の画像である。 Of the five types of images described above, bikes (increasing blur) are a plurality of images in which blur is increased in stages with respect to the image of the motorcycle. Also, boat (increasing scale (with rotation)) is a plurality of images obtained by increasing the scale in stages while adding rotation to the boat image. Cars (decreasing light) is a plurality of images in which the amount of light is gradually reduced with respect to a car image. Ubc (JPEG compression [%]) is a plurality of images obtained by gradually increasing the JPEG compression rate with respect to the building image. Bricks (viewpoint angle) are a plurality of images in which the viewpoint is changed stepwise with respect to the brick wall.
なお、本実験例では、測定にラップトップコンピュータ(dual-core 2.8GHz CPU)を使用した。また、ヘシアン値算出手段で用いる第1の閾値(ラプラシアン閾値)lminは0〜0.04までの範囲とし、ヘシアン値判定手段で用いる第2の閾値(ヘシアン閾値)hthは、0.0004とした。また、畳み込みの順序は、前記した第1実施形態に係る特徴点検出装置と同様に、垂直方向、水平方向、斜め方向の順で行った。 In this experimental example, a laptop computer (dual-core 2.8 GHz CPU) was used for measurement. Further, the first threshold value (Laplacian threshold value) l min used by the Hessian value calculating means is in a range from 0 to 0.04, and the second threshold value (Hessian threshold value) h th used by the Hessian value determining means is 0.0004. It was. Further, the convolution order was performed in the order of the vertical direction, the horizontal direction, and the oblique direction, as in the feature point detection apparatus according to the first embodiment.
本実験例では、まず図8に示すように、第1の閾値lminを0〜0.04までの範囲で増加させた場合における特徴点検出の処理時間(processing time)を測定した。ここで、図8における縦軸は特徴点検出の処理時間であり、横軸は第1の閾値lminの値である。図8を参照すると、第1の閾値lminの増加に伴って処理時間が減少していることがわかる。従って、本発明に係る画像特徴点検出装置のように、第1の閾値lminを設定することで、処理速度を高速化することができることがわかる。 In this experimental example, first, as shown in FIG. 8, the processing time of feature point detection when the first threshold value l min was increased in the range of 0 to 0.04 was measured. Here, the vertical axis in FIG. 8 is the feature point detection processing time, and the horizontal axis is the value of the first threshold value l min . Referring to FIG. 8, it can be seen that the processing time decreases as the first threshold value l min increases. Therefore, it can be seen that the processing speed can be increased by setting the first threshold value l min as in the image feature point detection apparatus according to the present invention.
なお、従来技術に係るヘシアンベース特徴点検出装置は、本発明のように第1の閾値lminを設定していない。従って、従来技術に係るヘシアンベース特徴点検出装置を用いた場合の処理速度は、図8における閾値lminを0とした場合の処理時間に相当する。そのため、本発明に係る画像特徴点検出装置は、従来技術に係るヘシアンベース特徴点検出装置と比較すると、処理時間を60%〜70%短縮できることがわかる。 Note that the Hessian-based feature point detection device according to the related art does not set the first threshold value l min as in the present invention. Therefore, the processing speed when the Hessian-based feature point detection device according to the prior art is used corresponds to the processing time when the threshold value l min in FIG. Therefore, it can be seen that the image feature point detection apparatus according to the present invention can shorten the processing time by 60% to 70% as compared with the Hessian-based feature point detection apparatus according to the prior art.
次に、本実験例では、図9に示すように、画像のボケを増加させた場合における特徴点検出の再現率(repeatability)を測定した。ここで、図9における横軸はボケの増加量であり、縦軸は特徴点検出の再現率である。図9を参照すると、第1の閾値lminを0.02とした場合が最も再現率の低下が緩やかであることがわかる。 Next, in this experimental example, as shown in FIG. 9, the reproducibility of feature point detection when the blur of the image is increased was measured. Here, the horizontal axis in FIG. 9 is the amount of increase in blur, and the vertical axis is the reproduction rate of feature point detection. Referring to FIG. 9, it can be seen that when the first threshold value l min is 0.02, the reduction in the recall rate is the slowest.
次に、本実験例では、図10に示すように、画像のスケールを増加させながら回転を加えた場合における特徴点検出の再現率を測定した。ここで、図10における横軸はスケールおよび回転の増加量であり、縦軸は特徴点検出の再現率である。図10を参照すると、第1の閾値lminを0とした場合が最も再現率の低下が緩やかであることがわかる。 Next, in this experimental example, as shown in FIG. 10, the reproducibility of feature point detection was measured when rotation was applied while increasing the scale of the image. Here, the horizontal axis in FIG. 10 is the amount of increase in scale and rotation, and the vertical axis is the reproduction rate of feature point detection. Referring to FIG. 10, it can be seen that when the first threshold value l min is set to 0, the reduction in the recall rate is the slowest.
次に、本実験例では、図11に示すように、画像の光量を減少させた場合における特徴点検出の再現率を測定した。ここで、図11における横軸は光量の減少量であり、縦軸は特徴点検出の再現率である。図11を参照すると、第1の閾値lminを0.02とした場合が最も再現率の低下が緩やかであることがわかる。 Next, in this experimental example, as shown in FIG. 11, the reproduction rate of the feature point detection when the light amount of the image was decreased was measured. Here, the horizontal axis in FIG. 11 is the amount of decrease in the amount of light, and the vertical axis is the reproduction rate of feature point detection. Referring to FIG. 11, it can be seen that when the first threshold value l min is set to 0.02, the reduction in the recall rate is the slowest.
次に、本実験例では、図12に示すように、画像のJPEG圧縮率を増加させた場合における特徴点検出の再現率を測定した。ここで、図12における横軸はJPEG圧縮率スケールの増加量であり、縦軸は特徴点検出の再現率である。図12を参照すると、第1の閾値lminを0.04とした場合が最も再現率の低下が緩やかであることがわかる。 Next, in this experimental example, as shown in FIG. 12, the reproduction rate of feature point detection when the JPEG compression rate of the image was increased was measured. Here, the horizontal axis in FIG. 12 is the increase amount of the JPEG compression rate scale, and the vertical axis is the reproduction rate of feature point detection. Referring to FIG. 12, it can be seen that when the first threshold value l min is 0.04, the reduction in the recall rate is the slowest.
次に、本実験例では、図13に示すように、画像の視点を変更した場合における特徴点検出の再現率を測定した。ここで、図13における横軸は視点の変更量であり、縦軸は特徴点検出の再現率である。図13を参照すると、第1の閾値lminを0.02とした場合が最も再現率の低下が緩やかであることがわかる。 Next, in this experimental example, as shown in FIG. 13, the reproduction rate of the feature point detection when the viewpoint of the image was changed was measured. Here, the horizontal axis in FIG. 13 is the viewpoint change amount, and the vertical axis is the feature point detection recall. Referring to FIG. 13, it can be seen that when the first threshold value l min is 0.02, the reduction in the recall rate is the slowest.
このように、図8〜図13を総合的に勘案すると、本発明に係る画像特徴点検出装置を用いて、第1の閾値lminを0.02とした場合が、最も再現率の低下が緩やかであることがわかる。従って、本発明に係る画像特徴点検出装置は、従来技術に係るヘシアンベース特徴点検出装置と比較して、特徴点検出の再現率、すなわち特徴点検出の精度も高いことがわかる。 Thus, considering FIGS. 8 to 13 comprehensively, when the first threshold value l min is set to 0.02 using the image feature point detection apparatus according to the present invention, the reduction in the reproducibility is the most. It turns out that it is loose. Therefore, it can be seen that the image feature point detection apparatus according to the present invention has a higher feature point detection reproducibility, that is, the accuracy of feature point detection, than the Hessian-based feature point detection apparatus according to the prior art.
1 画像特徴点検出装置
10 スケール画像生成手段
20,21,22,23 ヘシアン値算出手段
30 ヘシアン値判定手段
40 ヘシアン値解析手段
50 閾値記憶手段
210 垂直方向畳み込み部
220 水平方向畳み込み部
230 斜め方向畳み込み部
240 垂直方向畳み込み判定部
250 水平方向畳み込み判定部
260 ヘシアン値演算部
270 斜め方向畳み込み判定部
DESCRIPTION OF
Claims (4)
前記画像から異なるスケールのスケール画像を生成するスケール画像生成手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込む垂直方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込む水平方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込む斜め方向畳み込み手段と、
前記垂直方向畳み込み手段によって算出された値が予め定められた第1の閾値を超えるか否かを判定し、当該値が前記第1の閾値を超える場合に、前記水平方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う垂直方向畳み込み判定手段と、
前記水平方向畳み込み手段によって算出された値が前記第1の閾値を超えるか否かを判定し、当該値が前記第1の閾値を超える場合に、前記垂直方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う水平方向畳み込み判定手段と、
前記垂直方向畳み込み手段および前記水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、前記斜め方向畳み込み手段によって算出された値を2乗した値を減算することで、前記画素のヘシアン値を算出するとともに、前記垂直方向畳み込み手段または前記水平方向畳み込み手段によって算出された値が前記第1の閾値以下である場合に、前記画素のヘシアン値を0に設定するヘシアン値演算手段と、
前記ヘシアン値演算手段によって算出された前記ヘシアン値が、予め定められた第2の閾値を超えるか否かを判定するヘシアン値判定手段と、
前記ヘシアン値判定手段によって前記第2の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とするヘシアン値解析手段と、
前記第1の閾値および前記第2の閾値を記憶する閾値記憶手段と、
を備えることを特徴とする画像特徴点検出装置。 An image feature point detection device for detecting feature points of an input image,
Scale image generating means for generating scale images of different scales from the image;
Vertical convolution means for convolving the LoG filter in the vertical direction of the image with respect to the pixels on each scale image generated by the scale image generation means;
A horizontal convolution unit that convolves a LoG filter in the horizontal direction of the image with respect to pixels on each scale image generated by the scale image generation unit;
Diagonal direction convolution means for convolving the LoG filter in the oblique direction of the image with respect to the pixels on each scale image generated by the scale image generation means,
It is determined whether the value calculated by the vertical direction convolution means exceeds a predetermined first threshold, and when the value exceeds the first threshold, the horizontal direction convolution means or the oblique direction A vertical direction convolution determination means for performing a convolution instruction to the convolution means;
It is determined whether the value calculated by the horizontal direction convolution means exceeds the first threshold value, and when the value exceeds the first threshold value, the vertical direction convolution means or the oblique direction convolution means On the other hand, a horizontal direction convolution determination means for performing a convolution instruction,
Multiplying the values calculated by the vertical direction convolution means and the horizontal direction convolution means, and subtracting a value obtained by squaring the value calculated by the oblique direction convolution means from the multiplied value, Hessian value calculating means for calculating a Hessian value and setting the Hessian value of the pixel to 0 when the value calculated by the vertical direction convolution means or the horizontal direction convolution means is equal to or less than the first threshold value; ,
Hessian value determining means for determining whether the Hessian value calculated by the Hessian value calculating means exceeds a predetermined second threshold;
Among the Hessian values determined by the Hessian value determining means to exceed the second threshold, the Hessian values of pixels whose pixel positions or scales are adjacent to each other are compared, and the Hessian value at which the magnitude of the gradient becomes maximum is obtained. A Hessian value analysis means having a pixel as a feature point;
Threshold storage means for storing the first threshold and the second threshold;
An image feature point detection apparatus comprising:
前記画像から異なるスケールのスケール画像を生成するスケール画像生成手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込む垂直方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込む水平方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込む斜め方向畳み込み手段と、
前記斜め方向畳み込み手段によって算出された値が前記第1の閾値未満であるか否かを判定し、当該値が前記第1の閾値未満である場合に、前記垂直方向畳み込み手段または前記水平方向畳み込み手段に対して、畳み込み指示を行う斜め方向畳み込み判定部と、
前記垂直方向畳み込み手段によって算出された値が予め定められた第1の閾値を超えるか否かを判定し、当該値が前記第1の閾値を超える場合に、前記水平方向畳み込み手段に対して、畳み込み指示を行う垂直方向畳み込み判定手段と、
前記水平方向畳み込み手段によって算出された値が予め定められた第1の閾値を超えるか否かを判定し、当該値が前記第1の閾値を超える場合に、前記垂直方向畳み込み手段に対して、畳み込み指示を行う水平方向畳み込み判定手段と、
前記垂直方向畳み込み手段および前記水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、前記斜め方向畳み込み手段によって算出された値を2乗した値を減算することで、前記画素のヘシアン値を算出するとともに、前記斜め方向畳み込み手段によって算出された値が前記第1の閾値以上であるか、前記垂直方向畳み込み手段または前記水平方向畳み込み手段によって算出された値が前記第1の閾値以下である場合に、前記画素のヘシアン値を0に設定するヘシアン値演算手段と、
前記ヘシアン値演算手段によって算出された前記ヘシアン値が、予め定められた第2の閾値を超えるか否かを判定するヘシアン値判定手段と、
前記ヘシアン値判定手段によって前記第2の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とするヘシアン値解析手段と、
前記第1の閾値および前記第2の閾値を記憶する閾値記憶手段と、
を備えることを特徴とする画像特徴点検出装置。 An image feature point detection device for detecting feature points of an input image,
Scale image generating means for generating scale images of different scales from the image;
Vertical convolution means for convolving the LoG filter in the vertical direction of the image with respect to the pixels on each scale image generated by the scale image generation means;
A horizontal convolution unit that convolves a LoG filter in the horizontal direction of the image with respect to pixels on each scale image generated by the scale image generation unit;
Diagonal direction convolution means for convolving the LoG filter in the oblique direction of the image with respect to the pixels on each scale image generated by the scale image generation means,
It is determined whether or not the value calculated by the oblique direction convolution means is less than the first threshold value, and when the value is less than the first threshold value, the vertical direction convolution means or the horizontal direction convolution means An oblique direction convolution determination unit that instructs the means to convolve,
It is determined whether or not the value calculated by the vertical direction convolution means exceeds a predetermined first threshold, and when the value exceeds the first threshold, the horizontal direction convolution means, Vertical direction convolution determination means for instructing convolution,
It is determined whether the value calculated by the horizontal direction convolution means exceeds a predetermined first threshold value, and when the value exceeds the first threshold value, for the vertical direction convolution means, A horizontal convolution determination means for performing a convolution instruction;
Multiplying the values calculated by the vertical direction convolution means and the horizontal direction convolution means, and subtracting a value obtained by squaring the value calculated by the oblique direction convolution means from the multiplied value, The Hessian value is calculated, and the value calculated by the oblique direction convolution means is greater than or equal to the first threshold value, or the value calculated by the vertical direction convolution means or the horizontal direction convolution means is the first threshold value. Hessian value calculation means for setting the Hessian value of the pixel to 0 when
Hessian value determining means for determining whether the Hessian value calculated by the Hessian value calculating means exceeds a predetermined second threshold;
Among the Hessian values determined by the Hessian value determining means to exceed the second threshold, the Hessian values of pixels whose pixel positions or scales are adjacent to each other are compared, and the Hessian value at which the magnitude of the gradient becomes maximum is obtained. A Hessian value analysis means having a pixel as a feature point;
Threshold storage means for storing the first threshold and the second threshold;
An image feature point detection apparatus comprising:
前記水平方向畳み込み手段は、前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込むことで、下記式(1)におけるLyy(X,σ)を算出し、
前記斜め方向畳み込み手段は、前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込むことで、下記式(1)におけるLxy(X,σ)を算出し、
前記ヘシアン値演算手段は、下記式(1)におけるH(X,σ)を算出することを特徴とする請求項1または請求項2に記載の画像特徴点検出装置。
The horizontal direction convolution means convolves a LoG filter in the horizontal direction of the image with respect to the pixels on the respective scale images generated by the scale image generation means, so that L yy (X, σ)
The oblique direction convolution means convolves the LoG filter in the oblique direction of the image with respect to the pixels on the respective scale images generated by the scale image generation means, whereby L xy (X, σ)
The image feature point detection apparatus according to claim 1, wherein the Hessian value calculation means calculates H (X, σ) in the following formula (1).
前記画像から異なるスケールのスケール画像を生成するスケール画像生成手段、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の垂直方向に畳み込む垂直方向畳み込み手段、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の水平方向に畳み込む水平方向畳み込み手段、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、LoGフィルタを画像の斜め方向に畳み込む斜め方向畳み込み手段、
前記垂直方向畳み込み手段によって算出された値が予め定められた第1の閾値を超えるか否かを判定し、当該値が前記第1の閾値を超える場合に、前記水平方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う垂直方向畳み込み判定手段、
前記水平方向畳み込み手段によって算出された値が前記第1の閾値を超えるか否かを判定し、当該値が前記第1の閾値を超える場合に、前記垂直方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う水平方向畳み込み判定手段、
前記垂直方向畳み込み手段および前記水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、前記斜め方向畳み込み手段によって算出された値を2乗した値を減算することで、前記画素のヘシアン値を算出するとともに、前記垂直方向畳み込み手段または前記水平方向畳み込み手段によって算出された値が前記第1の閾値以下である場合に、前記画素のヘシアン値を0に設定するヘシアン値演算手段、
前記ヘシアン値演算手段によって算出された前記ヘシアン値が、予め定められた第2の閾値を超えるか否かを判定するヘシアン値判定手段、
前記ヘシアン値判定手段によって前記第2の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とするヘシアン値解析手段、
として機能させることを特徴とする画像特徴点検出プログラム。 In order to detect the feature points of the input image,
Scale image generating means for generating scale images of different scales from the image;
Vertical convolution means for convolving the LoG filter in the vertical direction of the image with respect to the pixels on the respective scale images generated by the scale image generation means;
Horizontal convolution means for convolving the LoG filter in the horizontal direction of the image with respect to the pixels on the respective scale images generated by the scale image generation means;
Diagonal direction convolution means for convolving the LoG filter in the oblique direction of the image with respect to the pixels on each scale image generated by the scale image generation means,
It is determined whether the value calculated by the vertical direction convolution means exceeds a predetermined first threshold, and when the value exceeds the first threshold, the horizontal direction convolution means or the oblique direction A vertical convolution determining means for instructing the convolution means,
It is determined whether the value calculated by the horizontal direction convolution means exceeds the first threshold value, and when the value exceeds the first threshold value, the vertical direction convolution means or the oblique direction convolution means On the other hand, a horizontal direction convolution determination means for instructing convolution,
Multiplying the values calculated by the vertical direction convolution means and the horizontal direction convolution means, and subtracting a value obtained by squaring the value calculated by the oblique direction convolution means from the multiplied value, Hessian value calculation means for calculating a Hessian value and setting the Hessian value of the pixel to 0 when the value calculated by the vertical direction convolution means or the horizontal direction convolution means is equal to or less than the first threshold value;
Hessian value determining means for determining whether the Hessian value calculated by the Hessian value calculating means exceeds a predetermined second threshold value;
Among the Hessian values determined by the Hessian value determining means to exceed the second threshold, the Hessian values of pixels whose pixel positions or scales are adjacent to each other are compared, and the Hessian value at which the magnitude of the gradient becomes maximum is obtained. A Hessian value analysis means having the indicated pixel as a feature point,
An image feature point detection program characterized in that it functions as a computer program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010195454A JP2012053653A (en) | 2010-09-01 | 2010-09-01 | Image feature point detection device and image feature point detection program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010195454A JP2012053653A (en) | 2010-09-01 | 2010-09-01 | Image feature point detection device and image feature point detection program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012053653A true JP2012053653A (en) | 2012-03-15 |
Family
ID=45906900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010195454A Pending JP2012053653A (en) | 2010-09-01 | 2010-09-01 | Image feature point detection device and image feature point detection program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012053653A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962838A (en) * | 1995-08-24 | 1997-03-07 | Nachi Fujikoshi Corp | High speed pattern matching method |
JP2001312728A (en) * | 2000-05-01 | 2001-11-09 | Minolta Co Ltd | Image processor, image processing method and recording recorded with image processing program |
JP2009535680A (en) * | 2006-04-28 | 2009-10-01 | トヨタ モーター ヨーロッパ ナムローゼ フェンノートシャップ | Robust interest point detector and descriptor |
-
2010
- 2010-09-01 JP JP2010195454A patent/JP2012053653A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962838A (en) * | 1995-08-24 | 1997-03-07 | Nachi Fujikoshi Corp | High speed pattern matching method |
JP2001312728A (en) * | 2000-05-01 | 2001-11-09 | Minolta Co Ltd | Image processor, image processing method and recording recorded with image processing program |
JP2009535680A (en) * | 2006-04-28 | 2009-10-01 | トヨタ モーター ヨーロッパ ナムローゼ フェンノートシャップ | Robust interest point detector and descriptor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6965320B2 (en) | Systems and methods for detecting image forgery via a convolutional neural network, and how to use them to provide uncorrected detection services | |
US20180158199A1 (en) | Image alignment for burst mode images | |
JP5007953B2 (en) | Image processing apparatus, image processing method, and program | |
JP2009212969A (en) | Image processing apparatus, image processing method, and image processing program | |
JP5534411B2 (en) | Image processing device | |
JP2016522924A5 (en) | ||
JPWO2009037803A1 (en) | Image noise removing apparatus, image noise removing method, and image noise removing program | |
JP2020053062A (en) | Modification of homography | |
TW201335892A (en) | System and method for measuring special boundaries | |
JP2012515982A (en) | Smoothed local histogram filter for computer graphics | |
KR20140048631A (en) | Apparatus and method of reconstructing 3-dimension super-resolution image from depth image | |
JP2008544402A5 (en) | ||
EP2536123B1 (en) | Image processing method and image processing apparatus | |
JP2009049562A (en) | Image processing device, method, and program | |
JP2015115067A (en) | Method and device for extracting distorted straight line from image | |
JP4686624B2 (en) | Information processing apparatus, image processing method, and program | |
CN110738625B (en) | Image resampling method, device, terminal and computer readable storage medium | |
JP2010212782A (en) | Image sharpening device and image sharpening method | |
TW201421423A (en) | Image sensor and operating method thereof | |
JP2012053653A (en) | Image feature point detection device and image feature point detection program | |
CN104655041A (en) | Industrial part contour line multi-feature extracting method with additional constraint conditions | |
JP6080424B2 (en) | Corresponding point search device, program thereof, and camera parameter estimation device | |
JP2010193154A5 (en) | ||
CN112330553B (en) | Crack image denoising method, device and storage medium | |
JP2014123247A5 (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130107 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131011 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131022 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140311 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140326 |