(57)【要約】【課題】ヘシアン値を算出する際の畳み込み処理の回数を減少させ、処理速度を高速化させることができる画像特徴点検出装置および画像特徴点検出プログラムを提供する。【解決手段】画像特徴点検出装置１は、スケール画像生成手段１０と、ヘシアン値算出手段２０と、ヘシアン値判定手段３０と、ヘシアン値解析手段４０と、閾値記憶手段５０と、を備え、ヘシアン値算出手段２０は、各スケール画像上の画素のＬｘｘ（Ｘ，σ）を算出する垂直方向畳み込み手段２１０と、Ｌｙｙ（Ｘ，σ）を算出する水平方向畳み込み手段２２０と、Ｌｘｙ（Ｘ，σ）を算出する斜め方向畳み込み手段２３０と、Ｌｘｘ（Ｘ，σ）およびＬｙｙ（Ｘ，σ）が第１の閾値ｌｍｉｎを超えるか否かを判定する垂直方向畳み込み判定手段２４０および水平方向畳み込み判定手段２５０と、ヘシアン値Ｈ（Ｘ，σ）を算出するヘシアン値演算手段２６０と、を備えている。【選択図】図１
2012053653.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像の特徴点を検出する画像特徴点検出装置であって、
前記画像から異なるスケールのスケール画像を生成するスケール画像生成手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込む垂直方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込む水平方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込む斜め方向畳み込み手段と、
前記垂直方向畳み込み手段によって算出された値が予め定められた第１の閾値を超えるか否かを判定し、当該値が前記第１の閾値を超える場合に、前記水平方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う垂直方向畳み込み判定手段と、
前記水平方向畳み込み手段によって算出された値が前記第１の閾値を超えるか否かを判定し、当該値が前記第１の閾値を超える場合に、前記垂直方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う水平方向畳み込み判定手段と、
前記垂直方向畳み込み手段および前記水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、前記斜め方向畳み込み手段によって算出された値を２乗した値を減算することで、前記画素のヘシアン値を算出するとともに、前記垂直方向畳み込み手段または前記水平方向畳み込み手段によって算出された値が前記第１の閾値以下である場合に、前記画素のヘシアン値を０に設定するヘシアン値演算手段と、
前記ヘシアン値演算手段によって算出された前記ヘシアン値が、予め定められた第２の閾値を超えるか否かを判定するヘシアン値判定手段と、
前記ヘシアン値判定手段によって前記第２の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とするヘシアン値解析手段と、
前記第１の閾値および前記第２の閾値を記憶する閾値記憶手段と、
を備えることを特徴とする画像特徴点検出装置。
【請求項２】
入力された画像の特徴点を検出する画像特徴点検出装置であって、
前記画像から異なるスケールのスケール画像を生成するスケール画像生成手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込む垂直方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込む水平方向畳み込み手段と、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込む斜め方向畳み込み手段と、
前記斜め方向畳み込み手段によって算出された値が前記第１の閾値未満であるか否かを判定し、当該値が前記第１の閾値未満である場合に、前記垂直方向畳み込み手段または前記水平方向畳み込み手段に対して、畳み込み指示を行う斜め方向畳み込み判定部と、
前記垂直方向畳み込み手段によって算出された値が予め定められた第１の閾値を超えるか否かを判定し、当該値が前記第１の閾値を超える場合に、前記水平方向畳み込み手段に対して、畳み込み指示を行う垂直方向畳み込み判定手段と、
前記水平方向畳み込み手段によって算出された値が予め定められた第１の閾値を超えるか否かを判定し、当該値が前記第１の閾値を超える場合に、前記垂直方向畳み込み手段に対して、畳み込み指示を行う水平方向畳み込み判定手段と、
前記垂直方向畳み込み手段および前記水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、前記斜め方向畳み込み手段によって算出された値を２乗した値を減算することで、前記画素のヘシアン値を算出するとともに、前記斜め方向畳み込み手段によって算出された値が前記第１の閾値以上であるか、前記垂直方向畳み込み手段または前記水平方向畳み込み手段によって算出された値が前記第１の閾値以下である場合に、前記画素のヘシアン値を０に設定するヘシアン値演算手段と、
前記ヘシアン値演算手段によって算出された前記ヘシアン値が、予め定められた第２の閾値を超えるか否かを判定するヘシアン値判定手段と、
前記ヘシアン値判定手段によって前記第２の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とするヘシアン値解析手段と、
前記第１の閾値および前記第２の閾値を記憶する閾値記憶手段と、
を備えることを特徴とする画像特徴点検出装置。
【請求項３】
前記垂直方向畳み込み手段は、前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込むことで、下記式（１）におけるＬｘｘ（Ｘ，σ）を算出し、
前記水平方向畳み込み手段は、前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込むことで、下記式（１）におけるＬｙｙ（Ｘ，σ）を算出し、
前記斜め方向畳み込み手段は、前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込むことで、下記式（１）におけるＬｘｙ（Ｘ，σ）を算出し、
前記ヘシアン値演算手段は、下記式（１）におけるＨ（Ｘ，σ）を算出することを特徴とする請求項１または請求項２に記載の画像特徴点検出装置。
【数４】
2012053653.tif 000006
【請求項４】
入力された画像の特徴点を検出するために、コンピュータを、
前記画像から異なるスケールのスケール画像を生成するスケール画像生成手段、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込む垂直方向畳み込み手段、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込む水平方向畳み込み手段、
前記スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込む斜め方向畳み込み手段、
前記垂直方向畳み込み手段によって算出された値が予め定められた第１の閾値を超えるか否かを判定し、当該値が前記第１の閾値を超える場合に、前記水平方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う垂直方向畳み込み判定手段、
前記水平方向畳み込み手段によって算出された値が前記第１の閾値を超えるか否かを判定し、当該値が前記第１の閾値を超える場合に、前記垂直方向畳み込み手段または前記斜め方向畳み込み手段に対して、畳み込み指示を行う水平方向畳み込み判定手段、
前記垂直方向畳み込み手段および前記水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、前記斜め方向畳み込み手段によって算出された値を２乗した値を減算することで、前記画素のヘシアン値を算出するとともに、前記垂直方向畳み込み手段または前記水平方向畳み込み手段によって算出された値が前記第１の閾値以下である場合に、前記画素のヘシアン値を０に設定するヘシアン値演算手段、
前記ヘシアン値演算手段によって算出された前記ヘシアン値が、予め定められた第２の閾値を超えるか否かを判定するヘシアン値判定手段、
前記ヘシアン値判定手段によって前記第２の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とするヘシアン値解析手段、
として機能させることを特徴とする画像特徴点検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された画像の特徴点を検出する画像特徴点検出装置および画像特徴点検出プログラムに関する。
【背景技術】
【０００２】
従来、画像処理の前処理として、入力された画像の特徴点を検出する処理が広く行われている。画像から特徴点を検出する検出装置としては、例えば、非特許文献１に示されるようなヘシアンベース特徴点検出装置が提案されている。このヘシアンベース特徴点検出装置は、下記式（１）に示すように、近似ヘシアン行列（ヘッセ行列）の行列式を用いて、異なるスケールσの画像における画素（点）Ｘのヘシアン値Ｈ（Ｘ，σ）を算出することで、画像上の特徴点を検出している。
【０００３】
【数１】
2012053653.tif 000003
【０００４】
ここで、前記式（１）におけるＬｘｘ（Ｘ，σ）は、画像上の画素Ｘ＝（ｘ，ｙ）において、スケールσのＬｏＧ（Laplacian-of-Gaussian）フィルタを画像の垂直（縦）方向に畳み込み（積分）したものである。また、Ｌｙｙ（Ｘ，σ）は、画像上の画素Ｘ＝（ｘ，ｙ）において、スケールσのＬｏＧフィルタを画像の水平（横）方向に畳み込みしたものである。そして、Ｌｘｙ（Ｘ，σ）は、画像上の画素Ｘ＝（ｘ，ｙ）において、スケールσのＬｏＧフィルタを画像の斜め方向に畳み込みしたものである。
【０００５】
なお、ＬｏＧフィルタは、例えば下記式（２）のように表すことができる。下記式（２）におけるｒは、着目した画素からの距離を示している。
【０００６】
【数２】
2012053653.tif 000004
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】H. Bay, A. Ess, T. Tuytelaars, L. V. Gool: “Speeded-Up Robust Features(SURF)” Computer Vision and Image Understanding, Vol.110, No.3, pp.346-359, (2008)
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、非特許文献１で提案されたヘシアンベース特徴点検出装置は、前記した垂直方向、水平方向、斜め方向への畳み込みをスケールσごとに順次行う。すなわち、６４０ピクセル×４８０ピクセルのサイズの画像の場合、垂直方向、水平方向、斜め方向のそれぞれにおいて、６４０×４８０×σ分の畳み込み処理が必要となる。従って、非特許文献１で提案されたヘシアンベース特徴点検出装置は、画像のサイズが大きくなればなるほど処理回数が増加し、処理速度が低下してしまうという問題があった。
【０００９】
本発明はかかる点に鑑みてなされたものであって、ヘシアン値を算出する際の畳み込み処理の回数を減少させ、処理速度を高速化させることができる画像特徴点検出装置および画像特徴点検出プログラムを提供することを課題とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するために請求項１に係る画像特徴点検出装置は、入力された画像の特徴点を検出する画像特徴点検出装置であって、スケール画像生成手段と、垂直方向畳み込み手段と、水平方向畳み込み手段と、斜め方向畳み込み手段と、垂直方向畳み込み判定手段と、水平方向畳み込み判定手段と、ヘシアン値演算手段と、ヘシアン値判定手段と、ヘシアン値解析手段と、閾値記憶手段と、を備える構成とした。
【００１１】
このような構成によれば、画像特徴点検出装置は、スケール画像生成手段によって、画像から異なるスケールのスケール画像を生成する。また、垂直方向畳み込み手段によって、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込む。また、垂直方向畳み込み判定手段によって、垂直方向畳み込み手段によって算出された値が第１の閾値を超えるか否かを判定し、当該第１の閾値を超える場合、水平方向畳み込み手段に対して畳み込み指示を行う。なお、第１の閾値とは、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が一定以上であるかを判定するために設定されるものであり、閾値記憶手段に予め記憶されている。
【００１２】
そして、水平方向畳み込み手段によって、垂直方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込む。また、水平方向畳み込み判定手段によって、水平方向畳み込み手段によって算出された値が第１の閾値を超えるか否かを判定し、当該第１の閾値を超える場合、斜め方向畳み込み手段に対して畳み込み指示を行う。また、斜め方向畳み込み手段によって、水平方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込む。なお、前記した３つの畳み込み処理は、水平方向の畳み込みの後に垂直方向の畳み込みを行い、最後に斜め方向の畳み込みを行ってもよい。
【００１３】
そして、ヘシアン値演算手段によって、垂直方向畳み込み手段および水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、斜め方向畳み込み手段によって算出された値を２乗した値を減算することで、画素のヘシアン値を算出する。また、ヘシアン値演算手段は、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第１の閾値以下である場合は、該当する画素のヘシアン値を０に設定する。すなわち、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第１の閾値以下である場合、ヘシアン値の演算は行われない。また、ヘシアン値判定手段によって、ヘシアン値演算手段によって算出されたヘシアン値が、予め定められた第２の閾値を超えるか否かを判定する。なお、第２の閾値とは、ヘシアン値が一定以上であるかを判定するために設定されるものであり、閾値記憶手段に予め記憶されている。また、ヘシアン値解析手段によって、ヘシアン値判定手段によって第２の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とする。
【００１４】
また、請求項２に係る画像特徴点検出装置は、入力された画像の特徴点を検出する画像特徴点検出装置であって、スケール画像生成手段と、垂直方向畳み込み手段と、水平方向畳み込み手段と、斜め方向畳み込み手段と、斜め方向畳み込み判定手段と、垂直方向畳み込み判定手段と、水平方向畳み込み判定手段と、ヘシアン値演算手段と、ヘシアン値判定手段と、ヘシアン値解析手段と、閾値記憶手段と、を備える構成とした。
【００１５】
このような構成によれば、画像特徴点検出装置は、スケール画像生成手段によって、画像から異なるスケールのスケール画像を生成する。また、斜め方向畳み込み手段によって、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込む。また、斜め方向畳み込み判定手段によって、斜め方向畳み込み手段によって算出された値が第１の閾値未満であるか否かを判定し、当該第１の閾値未満である場合、垂直方向畳み込み手段に対して畳み込み指示を行う。
【００１６】
そして、垂直方向畳み込み手段によって、斜め方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込む。また、垂直方向畳み込み判定手段によって、垂直方向畳み込み手段によって算出された値が第１の閾値を超えるか否かを判定し、当該第１の閾値を超える場合、水平方向畳み込み手段に対して畳み込み指示を行う。また、水平方向畳み込み手段によって、垂直水平方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込む。なお、前記した３つの畳み込み処理は、斜め方向の畳み込みの後に水平方向の畳み込みを行い、最後に垂直方向の畳み込みを行ってもよい。
【００１７】
そして、ヘシアン値演算手段によって、垂直方向畳み込み手段および水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、斜め方向畳み込み手段によって算出された値を２乗した値を減算することで、画素のヘシアン値を算出する。また、ヘシアン値演算手段は、斜め方向畳み込み手段によって算出された値が第１の閾値以上であるか、または垂直方向畳み込み手段によって算出された値が第１の閾値以下である場合に、該当する画素のヘシアン値を０に設定する。すなわち、斜め方向畳み込み手段によって算出された値が第１の閾値以上であるか、垂直方向畳み込み手段によって算出された値が第１の閾値以下である場合、ヘシアン値の演算は行われない。また、ヘシアン値判定手段によって、ヘシアン値演算手段によって算出されたヘシアン値が、予め定められた第２の閾値を超えるか否かを判定する。また、ヘシアン値解析手段によって、ヘシアン値判定手段によって第２の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とする。
【００１８】
また、請求項３に係る画像特徴点検出装置は、請求項１または請求項２に記載の画像特徴点検出装置であって、垂直方向畳み込み手段が、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込むことで、下記式（１）におけるＬｘｘ（Ｘ，σ）を算出し、水平方向畳み込み手段が、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込むことで、下記式（１）におけるＬｙｙ（Ｘ，σ）を算出し、斜め方向畳み込み手段が、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込むことで、下記式（１）におけるＬｘｙ（Ｘ，σ）を算出し、ヘシアン値演算手段が、下記式（１）におけるＨ（Ｘ，σ）を算出する構成とした。
【００１９】
【数３】
2012053653.tif 000005
【００２０】
そして、請求項４に係る画像特徴点検出プログラムは、入力された画像の特徴点を検出するために、コンピュータを、スケール画像生成手段、垂直方向畳み込み手段、水平方向畳み込み手段、斜め方向畳み込み手段、垂直方向畳み込み判定手段、水平方向畳み込み判定手段、ヘシアン値演算手段、ヘシアン値判定手段、ヘシアン値解析手段、として機能させる構成とした。
【００２１】
このような構成によれば、画像特徴点検出プログラムは、スケール画像生成手段によって、画像から異なるスケールのスケール画像を生成する。また、垂直方向畳み込み手段によって、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の垂直方向に畳み込む。また、垂直方向畳み込み判定手段によって、垂直方向畳み込み手段によって算出された値が第１の閾値を超えるか否かを判定し、当該第１の閾値を超える場合、水平方向畳み込み手段に対して畳み込み指示を行う。
【００２２】
そして、水平方向畳み込み手段によって、垂直方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の水平方向に畳み込む。また、水平方向畳み込み判定手段によって、水平方向畳み込み手段によって算出された値が第１の閾値を超えるか否かを判定し、当該第１の閾値を超える場合、斜め方向畳み込み手段に対して畳み込み指示を行う。また、斜め方向畳み込み手段によって、水平方向畳み込み判定手段からの畳み込み指示に基づいて、スケール画像生成手段によって生成されたそれぞれのスケール画像上の画素に対して、ＬｏＧフィルタを画像の斜め方向に畳み込む。なお、前記した３つの畳み込み処理は、水平方向の畳み込みの後に垂直方向の畳み込みを行い、最後に斜め方向の畳み込みを行ってもよい。
【００２３】
そして、ヘシアン値演算手段によって、垂直方向畳み込み手段および水平方向畳み込み手段によって算出された値を乗算し、当該乗算した値から、斜め方向畳み込み手段によって算出された値を２乗した値を減算することで、画素のヘシアン値を算出する。また、ヘシアン値演算手段によって、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第１の閾値以下である場合に、該当する画素のヘシアン値を０に設定する。すなわち、垂直方向畳み込み手段または水平方向畳み込み手段によって算出された値が第１の閾値以下である場合、ヘシアン値の演算は行われない。また、ヘシアン値判定手段によって、ヘシアン値演算手段によって算出されたヘシアン値が、予め定められた第２の閾値を超えるか否かを判定する。また、ヘシアン値解析手段によって、ヘシアン値判定手段によって第２の閾値を超えると判定されたヘシアン値のうち、画素の位置またはスケールが隣接する画素のヘシアン値同士を比較し、勾配の大きさが極大となるヘシアン値が示す画素を特徴点とする。
【発明の効果】
【００２４】
請求項１、請求項３および請求項４に係る発明によれば、前記式（１）の演算において、１番目の処理である垂直方向または水平方向の畳み込みによって算出された値が予め定められた第１の閾値を超える場合のみ、２番目の処理である水平方向または垂直方向の畳み込みを行う。そして、２番目の処理である水平方向または垂直方向の畳み込みによって算出された値が第１の閾値を超える場合のみ、３番目の処理である斜め方向の畳み込みを行ってヘシアン値を算出する。すなわち、閾値処理によって画像上における画素の特徴点の有無を判断しているため、画素の特徴量を示すヘシアン値を算出する画素Ｘの数を絞り込むことができる。従って、画像の特徴点を検出する際の全体の処理回数を減少させ、かつ、処理速度を高速化することができる。
【００２５】
請求項３に係る発明によれば、前記式（１）の演算において、１番目の処理である斜め方向の畳み込みによって算出された値が予め定められた第１の閾値未満である場合のみ、２番目の処理である垂直方向または水平方向の畳み込みを行う。そして、２番目の処理である垂直方向または水平方向の畳み込みによって算出された値が第１の閾値を超える場合のみ、３番目の処理である水平方向または垂直方向の畳み込みを行ってヘシアン値を算出する。すなわち、閾値処理によって画像上における画素の特徴点の有無を判断しているため、画素の特徴量を示すヘシアン値を算出する画素Ｘの数を絞り込むことができる。従って、画像の特徴点を検出する際の全体の処理回数を減少させ、かつ、処理速度を高速化することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の第１実施形態に係る画像特徴点検出装置を示すブロック図である。
【図２】本発明の第１実施形態に係る画像特徴点検出装置のヘシアン値算出手段のブロック図である。
【図３】本発明の第１実施形態の変形例に係る画像特徴点検出装置のヘシアン値算出手段のブロック図である。
【図４】本発明の第１実施形態に係る画像特徴点検出装置の処理手順を示すフローチャートである。
【図５】本発明の第２実施形態に係る画像特徴点検出装置のヘシアン値算出手段のブロック図である。
【図６】本発明の第２実施形態の変形例に係る画像特徴点検出装置のヘシアン値算出手段のブロック図である。
【図７】本発明の第２実施形態に係る画像特徴点検出装置の処理手順を示すフローチャートである。
【図８】本発明の実施形態に係る画像特徴点検出装置の効果を確認した実験結果を示す図であって、第１の閾値と特徴点検出の処理時間との関係を示すグラフである。
【図９】本発明の実施形態に係る画像特徴点検出装置の効果を確認した実験結果を示す図であって、画像中におけるボケの増加と特徴点検出の再現率との関係を示すグラフである。
【図１０】本発明の実施形態に係る画像特徴点検出装置の効果を確認した実験結果を示す図であって、画像の回転を伴うスケールの増加と特徴点検出の再現率との関係を示すグラフである。
【図１１】本発明の実施形態に係る画像特徴点検出装置の効果を確認した実験結果を示す図であって、画像の光量の減少と特徴点検出の再現率との関係を示すグラフである。
【図１２】本発明の実施形態に係る画像特徴点検出装置の効果を確認した実験結果を示す図であって、画像のＪＰＥＧ圧縮率の増加と特徴点検出の再現率との関係を示すグラフである。
【図１３】本発明の実施形態に係る画像特徴点検出装置の効果を確認した実験結果を示す図であって、画像の視点変更と特徴点検出の再現率との関係を示すグラフである。
【発明を実施するための形態】
【００２７】
［第１実施形態］
第１実施形態に係る画像特徴点検出装置１について、図面を参照しながら詳細に説明する。
【００２８】
画像特徴点検出装置１は、入力された画像の特徴点を検出するものである。画像特徴点検出装置１は、図１に示すように、スケール画像生成手段１０と、ヘシアン値算出手段２０と、ヘシアン値判定手段３０と、ヘシアン値解析手段４０と、閾値記憶手段５０と、を備えている。
【００２９】
スケール画像生成手段１０は、画像から異なるスケールσのスケール画像を生成するものである。スケール画像生成手段１０は、具体的には、特徴点の検出対象として入力された画像のサイズを縮小し、解像度の異なる複数のスケール画像を生成する。スケール画像生成手段１０は、例えば６４０ピクセル×４８０ピクセルの画像が入力された場合、予め定められた縮小率に従って、逆ピラミッド型となるように解像度を２分の１（３２０ピクセル×２４０ピクセル）、４分の１（１６０ピクセル×１２０ピクセル）、等に縮小し、複数のスケール画像を生成する。
【００３０】
スケール画像生成手段１０には、図１に示すように、特徴点の抽出対象となる画像が入力される。そして、スケール画像生成手段１０は、前記した手法によって解像度の異なる複数のスケール画像を生成し、これらをヘシアン値算出手段２０に出力する。なお、スケール画像生成手段１０は、ここでは入力された画像の解像度を８段階に縮小させた８枚のスケール画像をヘシアン値算出手段２０に出力している。
【００３１】
ヘシアン値算出手段２０は、画像上におけるそれぞれの画素Ｘのヘシアン値Ｈ（Ｘ，σ）を算出するものである。ヘシアン値算出手段２０は、具体的には、前記式（１）を用いて、スケール画像生成手段１０から入力された異なるスケールσのスケール画像上におけるヘシアン値Ｈ（Ｘ，σ）を算出する。ヘシアン値算出手段２０は、ここでは、入力されたスケール画像の画素Ｘのヘシアン値Ｈ（Ｘ，σ）を、左上から右下の方向に順番に算出する。
【００３２】
ここで、前記式（１）によって算出されるヘシアン値Ｈ（Ｘ，σ）は、該当する画素Ｘの特徴量を示しており、このヘシアン値Ｈ（Ｘ，σ）が大きいほど特徴量が大きく、特徴点として検出され易いということを意味している。また、前記式（１）では、Ｌｘｘ（Ｘ，σ）とＬｙｙ（Ｘ，σ）とを乗算した左辺からＬｘｙ（Ｘ，σ）を２乗した右辺を減算している。従って、スケール画像上のある画素Ｘが特徴点として検出される可能性が高いか否かは、前記式（１）の左辺の値であるＬｘｘ（Ｘ，σ）およびＬｙｙ（Ｘ，σ）が一定以上の値であるか、あるいは右辺の値であるＬｘｙ（Ｘ，σ）が一定以下の値であるか、を判定することによって、推定できることになる。
【００３３】
このような観点から、ヘシアン値算出手段２０は、前記式（１）によってスケール画像上の左上の画素Ｘから右下の画素Ｘまでの全ての画素Ｘのヘシアン値Ｈ（Ｘ，σ）を算出するのではなく、前記式（１）の左辺の値であるＬｘｘ（Ｘ，σ）およびＬｙｙ（Ｘ，σ）が所定の閾値を超える画素Ｘについてのみ、ヘシアン値Ｈ（Ｘ，σ）を算出することを特徴としている。
【００３４】
以下、ヘシアン値算出手段２０の具体的構成について説明する。ヘシアン値算出手段２０は、図２に示すように、垂直方向畳み込み部２１０と、水平方向畳み込み部２２０と、斜め方向畳み込み部２３０と、垂直方向畳み込み判定部２４０と、水平方向畳み込み判定部２５０と、ヘシアン値演算部２６０と、を備えている。
【００３５】
垂直方向畳み込み部（手段）２１０は、画像上の画素Ｘに対して、垂直方向の畳み込み処理を行うものである。垂直方向畳み込み部２１０は、具体的には、スケール画像生成手段１０によって生成されたそれぞれのスケール画像上の画素Ｘに対して、ＬｏＧフィルタを画像の垂直方向に畳み込むことで、前記式（１）におけるＬｘｘ（Ｘ，σ）を算出する。
【００３６】
水平方向畳み込み部（手段）２２０は、画像上の画素Ｘに対して、水平方向の畳み込み処理を行うものである。水平方向畳み込み部２２０は、具体的には、スケール画像生成手段１０によって生成されたそれぞれのスケール画像上の画素Ｘに対して、ＬｏＧフィルタを画像の水平方向に畳み込むことで、前記式（１）におけるＬｙｙ（Ｘ，σ）を算出する。なお、水平方向畳み込み部２２０は、後記するように、ここでは垂直方向畳み込み判定部２４０から畳み込み指示が入力された場合のみ、Ｌｙｙ（Ｘ，σ）を算出する。
【００３７】
斜め方向畳み込み部（手段）２３０は、画像上の画素Ｘに対して、斜め方向の畳み込み処理を行うものである。斜め方向畳み込み部２３０は、スケール画像生成手段１０によって生成されたそれぞれのスケール画像上の画素Ｘに対して、ＬｏＧフィルタを画像の斜め方向に畳み込むことで、前記式（１）におけるＬｘｙ（Ｘ，σ）を算出する。なお、斜め方向畳み込み部２３０は、後記するように、ここでは水平方向畳み込み判定部２５０から畳み込み指示が入力された場合のみ、Ｌｘｙ（Ｘ，σ）を算出する。
【００３８】
垂直方向畳み込み判定部（手段）２４０は、垂直方向畳み込み部２１０によって算出された値の閾値処理を行うものである。垂直方向畳み込み判定部２４０は、具体的には、垂直方向畳み込み部２１０によって算出されたＬｘｘ（Ｘ，σ）の値が、予め定められた第１の閾値ｌｍｉｎを超えるか否かを判定することで、前記式（１）の左辺が大きい値であるか否かを判定する。この第１の閾値（ラプラシアン閾値）ｌｍｉｎは、Ｌｘｘ（Ｘ，σ）の値を一定以上とするために設定されたものであり、実験的および経験的に予め求められるものである。
【００３９】
垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、水平方向畳み込み部２２０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｘ（Ｘ，σ）を出力する。一方、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対して、当該Ｌｘｘ（Ｘ，σ）を算出した画素Ｘのヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。
【００４０】
水平方向畳み込み判定部（手段）２５０は、水平方向畳み込み部２２０によって算出された値の閾値処理を行うものである。水平方向畳み込み判定部２５０は、具体的には、水平方向畳み込み部２２０によって算出されたＬｙｙ（Ｘ，σ）の値が、予め定められた第１の閾値ｌｍｉｎを超えるか否かを判定することで、前記式（１）の左辺が大きい値であるか否かを判定する。
【００４１】
水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、斜め方向畳み込み部２３０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｙｙ（Ｘ，σ）を出力する。一方、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対して、当該Ｌｙｙ（Ｘ，σ）を算出した画素Ｘのヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。
【００４２】
ヘシアン値演算部（手段）２６０は、画像上におけるそれぞれの画素Ｘのヘシアン値Ｈ（Ｘ，σ）を算出するとともに、当該ヘシアン値Ｈ（Ｘ，σ）を０に設定するものである。ヘシアン値演算部２６０は、具体的には、垂直方向畳み込み部２１０によって算出されたＬｘｘ（Ｘ，σ）の値と、水平方向畳み込み部２２０によって算出されたＬｙｙ（Ｘ，σ）の値と、が第１の閾値ｌｍｉｎを超える場合、すなわち、垂直方向畳み込み部２１０からＬｘｘ（Ｘ，σ）の値が入力されるとともに、水平方向畳み込み部２２０からＬｙｙ（Ｘ，σ）の値が入力された場合、Ｌｘｘ（Ｘ，σ）の値とＬｙｙ（Ｘ，σ）の値とを乗算する。そして、当該乗算した値から、斜め方向畳み込み部２３０によって算出されたＬｘｙ（Ｘ，σ）の値を２乗した値を減算し、画素Ｘのヘシアン値Ｈ（Ｘ，σ）を算出する。
【００４３】
一方、ヘシアン値演算部２６０は、垂直方向畳み込み部２１０によって算出されたＬｘｘ（Ｘ，σ）の値と、水平方向畳み込み部２２０によって算出されたＬｙｙ（Ｘ，σ）の値と、のいずれかが第１の閾値以下である場合、すなわち、垂直方向畳み込み判定部２４０または水平方向畳み込み判定部２５０からヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示が入力された場合、該当する画素Ｘのヘシアン値Ｈ（Ｘ，σ）を０に設定する。
【００４４】
ここで、ヘシアン値Ｈ（Ｘ，σ）を０に設定するとは、Ｌｘｘ（Ｘ，σ）の値およびＬｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合は、該当する画素Ｘは特徴点ではないとみなし、当該画素Ｘについて前記式（１）の演算を行わないということを意味する。このように、ヘシアン値演算部２６０は、Ｌｘｘ（Ｘ，σ）の値とＬｙｙ（Ｘ，σ）の値とが第１の閾値ｌｍｉｎを超える場合、すなわち前記式（１）の左辺が大きい値である場合のみ、前記式（１）の演算を行う。なお、ヘシアン値演算部２６０がヘシアン値Ｈ（Ｘ，σ）を０に設定した場合、画素Ｘの次の画素Ｘの特徴点検出処理に移り、垂直方向畳み込み部２１０は画素Ｘの次の画素のＬｘｘ（Ｘ，σ）の値を算出する。
【００４５】
以下、ヘシアン値算出手段２０におけるヘシアン値Ｈ（Ｘ，σ）の算出手順について、簡単に説明する。
【００４６】
まず、図２に示すように、スケール画像生成手段１０によって生成されたスケール画像が、垂直方向畳み込み部２１０、水平方向畳み込み部２２０および斜め方向畳み込み部２３０にそれぞれ入力される。すると、垂直方向畳み込み部２１０が、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の垂直方向に畳み込むことで、前記式（１）で示すＬｘｘ（Ｘ，σ）の値を算出し、これを垂直方向畳み込み判定部２４０に出力する。
【００４７】
次に、垂直方向畳み込み判定部２４０が、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する。そして、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、水平方向畳み込み部２２０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｘ（Ｘ，σ）を出力する。一方、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わない。そして、次の画素Ｘの処理に移り、垂直方向畳み込み部２１０が、画素Ｘの隣の画素ＸのＬｘｘ（Ｘ，σ）の値を算出する。
【００４８】
次に、水平方向畳み込み部２２０が、垂直方向畳み込み判定部２４０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の水平方向に畳み込むことで、前記式（１）で示すＬｙｙ（Ｘ，σ）の値を算出し、これを水平方向畳み込み判定部２５０に出力する。
【００４９】
次に、水平方向畳み込み判定部２５０が、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する。そして、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、斜め方向畳み込み部２３０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｙｙ（Ｘ，σ）を出力する。一方、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わない。そして、次の画素Ｘの処理に移り、垂直方向畳み込み部２１０が、画素Ｘの隣の画素ＸのＬｘｘ（Ｘ，σ）の値を算出する。
【００５０】
次に、斜め方向畳み込み部２３０が、水平方向畳み込み判定部２５０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の斜め方向に畳み込むことで、前記式（１）で示すＬｘｙ（Ｘ，σ）の値を算出し、これをヘシアン値演算部２６０に出力する。
【００５１】
次に、ヘシアン値演算部２６０が、入力されたＬｘｘ（Ｘ，σ）、Ｌｙｙ（Ｘ，σ）およびＬｘｙ（Ｘ，σ）の値を用いて前記式（１）を演算することでヘシアン値Ｈ（Ｘ，σ）を算出し、これをヘシアン値判定手段３０に出力する。なお、ヘシアン値演算部２６０は、垂直方向畳み込み判定部２４０または水平方向畳み込み判定部２５０からヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示が入力された場合、ヘシアン値Ｈ（Ｘ，σ）を０に設定する。
【００５２】
このように、ヘシアン値算出手段２０は、従来のようにスケール画像上の全ての画素Ｘについて、前記式（１）を用いてヘシアン値Ｈ（Ｘ，σ）を算出するのではなく、閾値処理によってヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘと算出しない画素Ｘとを判定し、ヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘを絞り込むため、前記式（１）における畳み込み処理の回数を減少させることができる。
【００５３】
ヘシアン値算出手段２０には、図１に示すように、スケール画像生成手段１０から解像度の異なる複数のスケール画像が入力される。そして、ヘシアン値算出手段２０は、前記手法によってスケール画像上の画素Ｘのヘシアン値Ｈ（Ｘ，σ）を算出し、これらをヘシアン値判定手段３０に出力する。
【００５４】
ヘシアン値判定手段３０は、ヘシアン値Ｈ（Ｘ，σ）の閾値処理を行うものである。ヘシアン値判定手段３０は、具体的には、ヘシアン値算出手段２０（ヘシアン値演算部２６０）によって算出されたヘシアン値Ｈ（Ｘ，σ）が、予め定められた第２の閾値ｈｔｈを超えるか否かを判定する。この第２の閾値（ヘシアン閾値）ｈｔｈは、ヘシアン値Ｈ（Ｘ，σ）を一定以上とするために設定されたものであり、実験的および経験的に予め求められるものである。
【００５５】
ヘシアン値判定手段３０は、画素Ｘのヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈを超える場合、これをヘシアン値解析手段４０に出力する。一方、ヘシアン値判定手段３０は、画素Ｘのヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈ以下である場合、該当するヘシアン値Ｈ（Ｘ，σ）を０に設定し、これを破棄する。このように、ヘシアン値判定手段３０は、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈ以下である場合は、該当する画素Ｘは特徴点ではないと判定し、特徴点の候補から除外する。
【００５６】
ヘシアン値判定手段３０には、図１に示すように、ヘシアン値算出手段２０からそれぞれのスケール画像上の画素Ｘのヘシアン値Ｈ（Ｘ，σ）が入力される。そして、ヘシアン値判定手段３０は、前記した手法によって閾値処理を行い、第２の閾値ｈｔｈを超えるヘシアン値Ｈ（Ｘ，σ）をヘシアン値解析手段４０に出力する。
【００５７】
ヘシアン値解析手段４０は、閾値処理を経た特徴点の候補を解析し、特徴点を決定するものである。ヘシアン値解析手段４０は、ヘシアン値判定手段３０を経た画素Ｘに対して、ノンマキシマムサプレッション（non-maximum suppression、非最大抑制）処理を行う。このノンマキシマムサプレッション処理とは、画像のエッジ部の勾配方向に沿って、画素Ｘの極大値のみを残す処理のことをいう。
【００５８】
ヘシアン値解析手段４０は、具体的には、ヘシアン値判定手段３０によって第２の閾値ｈｔｈを超えると判定されたヘシアン値Ｈ（Ｘ，σ）のうち、画素Ｘの位置またはスケールσが隣接する画素Ｘのヘシアン値Ｈ（Ｘ，σ）同士を比較し、勾配の大きさが極大となるヘシアン値Ｈ（Ｘ，σ）が示す画素Ｘを特徴点とする。一方、ヘシアン値解析手段４０は、前記した勾配の大きさが極大とならないヘシアン値Ｈ（Ｘ，σ）が示す画素Ｘは特徴点ではないと判定し、特徴点の候補から除外する。
【００５９】
ヘシアン値解析手段４０には、図１に示すように、ヘシアン値判定手段３０から閾値処理後のヘシアン値Ｈ（Ｘ，σ）が入力される。そして、ヘシアン値解析手段４０は、前記した手法によって特徴点を決定し、これを出力する。
【００６０】
閾値記憶手段５０は、第１の閾値ｌｍｉｎと第２の閾値ｈｔｈを予め記憶するものである。閾値記憶手段５０は、具体的には、データを記憶することができるメモリ、ハードディスク等で具現される。閾値記憶手段５０は、図１に示すように、ヘシアン値算出手段２０に対して第１の閾値ｌｍｉｎを出力し、ヘシアン値判定手段３０に対して第２の閾値ｈｔｈを出力する。なお、閾値記憶手段５０は、第１の閾値ｌｍｉｎと第２の閾値ｈｔｈとを別々に記憶するために、２つに分割して設けてもよい。
【００６１】
以上のような構成を備える画像特徴点検出装置１は、前記式（１）の演算において、１番目の処理である垂直方向の畳み込みによって算出された値が予め定められた第１の閾値ｌｍｉｎを超える場合のみ、２番目の処理である水平方向の畳み込みを行う。そして、２番目の処理である水平方向の畳み込みによって算出された値が第１の閾値ｌｍｉｎを超える場合のみ、３番目の処理である斜め方向の畳み込みを行ってヘシアン値Ｈ（Ｘ，σ）を算出する。
【００６２】
このように、画像特徴点検出装置１は、閾値処理によって画像上における画素Ｘの特徴点の有無を判断しているため、画素Ｘの特徴量を示すヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘの数を絞り込むことができる。従って、画像の特徴点を検出する際の全体の処理回数を減少させ、かつ、処理速度を高速化することができる。
【００６３】
［画像特徴点検出プログラム］
ここで、画像特徴点検出装置１は、一般的なコンピュータを、前記した各手段および各部として機能させるプログラムにより動作させることで実現することができる。このプログラムは、通信回線を介して配布することも可能であるし、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。
【００６４】
［第１実施形態に係る画像特徴点検出装置の処理手順］
以下、第１実施形態に係る画像特徴点検出装置１の全体の処理手順について、図４を参照しながら説明する。画像特徴点検出装置１の第１の処理手順では、前記したように、前記式（１）の左辺の値を大きくするために、Ｌｘｘ（Ｘ，σ）およびＬｙｙ（Ｘ，σ）が第１の閾値ｌｍｉｎを超える場合のみ、ヘシアン値Ｈ（Ｘ，σ）を算出する。
【００６５】
処理が開始されると、まずスケール画像生成手段１０が、解像度の異なる複数のスケール画像を生成する（ステップＳ１）。次に、垂直方向畳み込み部２１０が、Ｌｘｘ（Ｘ，σ）の値を算出する（ステップＳ２）。次に、垂直方向畳み込み判定部２４０が、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する（ステップＳ３）。そして、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合（ステップＳ３でＹｅｓ）、ステップＳ４に進む。一方、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合（ステップＳ３でＮｏ）、ステップＳ１０に進み、ヘシアン値Ｈ（Ｘ，σ）を０として処理を終了する。
【００６６】
次に、水平方向畳み込み部２２０が、Ｌｙｙ（Ｘ，σ）の値を算出する（ステップＳ４）。次に、水平方向畳み込み判定部２５０が、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する（ステップＳ５）。そして、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合（ステップＳ５でＹｅｓ）、ステップＳ６に進む。一方、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合（ステップＳ５でＮｏ）、ステップＳ１０に進み、ヘシアン値Ｈ（Ｘ，σ）を０として処理を終了する。
【００６７】
次に、斜め方向畳み込み部２３０が、Ｌｘｙ（Ｘ，σ）の値を算出する（ステップＳ６）。次に、ヘシアン値演算部２６０が、ヘシアン値Ｈ（Ｘ，σ）を算出する（ステップＳ７）。次に、ヘシアン値判定手段３０が、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈを超えるか否かを判定する（ステップＳ８）。そして、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈを超える場合（ステップＳ８でＹｅｓ）、ステップＳ９に進む。一方、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈ以下である場合（ステップＳ８でＮｏ）、ステップＳ１０に進み、ヘシアン値Ｈ（Ｘ，σ）を０として処理を終了する。
【００６８】
そして、ヘシアン値解析手段４０が、入力されたヘシアン値Ｈ（Ｘ，σ）について、ノンマキシマムサプレッション処理を行って（ステップＳ９）、処理を終了する。
【００６９】
［第１実施形態の変形例］
以下、第１実施形態の変形例に係る画像特徴点検出装置について、図３を参照しながら詳細に説明する。第１実施形態の変形例に係る画像特徴点検出装置は、図２のヘシアン値算出手段２０を、図３に示すヘシアン値算出手段２１とした以外は、前記した第１実施形態に係る画像特徴点検出装置１と同様の構成を備えている。従って、前記した第１実施形態に係る画像特徴点検出装置１と重複する構成については、同じ符号を付して説明を省略する。また、画像特徴点検出装置の全体の処理手順についても、説明を省略する。
【００７０】
ヘシアン値算出手段２１は、前記したヘシアン値算出手段２０のように、先に垂直方向の畳み込みを行った後に水平方向の畳み込みを行うのではなく、先に水平方向の畳み込みを行った後に垂直方向の畳み込みを行うことを特徴としている。
【００７１】
以下、ヘシアン値算出手段２１におけるヘシアン値Ｈ（Ｘ，σ）の算出手順について、簡単に説明する。
【００７２】
まず、図３に示すように、スケール画像生成手段１０によって生成されたスケール画像が、垂直方向畳み込み部２１０、水平方向畳み込み部２２０および斜め方向畳み込み部２３０にそれぞれ入力される。すると、水平方向畳み込み部２２０が、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の水平方向に畳み込むことで、前記式（１）で示すＬｙｙ（Ｘ，σ）の値を算出し、これを水平方向畳み込み判定部２５０に出力する。
【００７３】
次に、水平方向畳み込み判定部２５０が、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する。そして、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、垂直方向畳み込み部２１０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｙｙ（Ｘ，σ）を出力する。一方、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わず、水平方向畳み込み部２２０は、画素Ｘの隣の画素ＸのＬｙｙ（Ｘ，σ）の値を算出する。
【００７４】
次に、垂直方向畳み込み部２１０が、水平方向畳み込み判定部２５０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の垂直方向に畳み込むことで、前記式（１）で示すＬｘｘ（Ｘ，σ）の値を算出し、これを垂直方向畳み込み判定部２４０に出力する。
【００７５】
次に、垂直方向畳み込み判定部２４０が、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する。そして、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、斜め方向畳み込み部２３０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｘ（Ｘ，σ）を出力する。一方、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わない。そして、次の画素Ｘの処理に移り、水平方向畳み込み部２２０が、画素Ｘの隣の画素ＸのＬｙｙ（Ｘ，σ）の値を算出する。
【００７６】
以降の処理手順は前記したヘシアン値算出手段２０と同様であるため、省略する。このように、ヘシアン値算出手段２１は、従来のようにスケール画像上の全ての画素Ｘについて、前記式（１）を用いてヘシアン値Ｈ（Ｘ，σ）を算出するのではなく、閾値処理によってヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘと算出しない画素Ｘとを判定し、ヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘを絞り込むことで、前記式（１）における畳み込み処理の回数を減少させることができる。
【００７７】
［第２実施形態］
以下、第２実施形態に係る画像特徴点検出装置について、図５を参照しながら詳細に説明する。第２実施形態に係る画像特徴点検出装置は、図２のヘシアン値算出手段２０を、図５に示すヘシアン値算出手段２２とした以外は、前記した第１実施形態に係る画像特徴点検出装置１と同様の構成を備えている。従って、前記した第１実施形態に係る画像特徴点検出装置１と重複する構成については、同じ符号を付して説明を省略する。
【００７８】
ヘシアン値算出手段２２は、前記したヘシアン値算出手段２０のように、先に垂直方向の畳み込みを行った後に水平方向の畳み込みを行うのではなく、先に斜め方向の畳み込みを行った後に垂直方向の畳み込みを行うことを特徴としている。そのため、ヘシアン値算出手段２２は、前記したヘシアン値算出手段２０の水平方向畳み込み判定部２５０の代わりに、斜め方向畳み込み判定部２７０を備えている。
【００７９】
斜め方向畳み込み判定部（手段）２７０は、斜め方向畳み込み部２３０によって算出された値の閾値処理を行うものである。斜め方向畳み込み判定部２７０は、斜め方向畳み込み部２３０によって算出されたＬｘｙ（Ｘ，σ）の値が、予め定められた第１の閾値ｌｍｉｎ未満であるか否かを判定することで、前記式（１）の右辺が小さい値であるか否かを判定する。
【００８０】
斜め方向畳み込み判定部２７０は、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ未満である場合、垂直方向畳み込み部２１０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｙ（Ｘ，σ）を出力する。一方、斜め方向畳み込み判定部２７０は、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以上である場合、ヘシアン値演算部２６０に対して、当該Ｌｘｙ（Ｘ，σ）を算出した画素Ｘのヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。
【００８１】
以下、ヘシアン値算出手段２２におけるヘシアン値Ｈ（Ｘ，σ）の算出手順について、簡単に説明する。
【００８２】
まず、図５に示すように、スケール画像生成手段１０によって生成されたスケール画像が、垂直方向畳み込み部２１０、水平方向畳み込み部２２０および斜め方向畳み込み部２３０にそれぞれ入力される。すると、斜め方向畳み込み部２３０が、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の斜め方向に畳み込むことで、前記式（１）で示すＬｘｙ（Ｘ，σ）の値を算出し、これを斜め方向畳み込み判定部２７０に出力する。
【００８３】
次に、斜め方向畳み込み判定部２７０が、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ未満であるか否かを判定する。そして、斜め方向畳み込み判定部２７０は、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを未満である場合、垂直方向畳み込み部２１０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｙ（Ｘ，σ）を出力する。一方、斜め方向畳み込み判定部２７０は、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以上である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わない。そして、次の画素Ｘの処理に移り、斜め方向畳み込み部２３０が、画素Ｘの隣の画素ＸのＬｘｙ（Ｘ，σ）の値を算出する。
【００８４】
次に、垂直方向畳み込み部２１０が、斜め方向畳み込み判定部２７０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の垂直方向に畳み込むことで、前記式（１）で示すＬｘｘ（Ｘ，σ）の値を算出し、これを垂直方向畳み込み判定部２４０に出力する。
【００８５】
次に、垂直方向畳み込み判定部２４０が、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する。そして、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、水平方向畳み込み部２２０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｘ（Ｘ，σ）を出力する。一方、垂直方向畳み込み判定部２４０は、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わず、前記した斜め方向畳み込み部２３０は、画素Ｘの隣の画素ＸのＬｘｙ（Ｘ，σ）の値を算出する。
【００８６】
次に、水平方向畳み込み部２２０が、垂直方向畳み込み判定部２４０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の水平方向に畳み込むことで、前記式（１）で示すＬｙｙ（Ｘ，σ）の値を算出し、これをヘシアン値演算部２６０に出力する。
【００８７】
以降の処理手順は前記したヘシアン値算出手段２０と同様であるため、省略する。このように、ヘシアン値算出手段２２、従来のようにスケール画像上の全ての画素Ｘについて、前記式（１）を用いてヘシアン値Ｈ（Ｘ，σ）を算出するのではなく、閾値処理によってヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘと算出しない画素Ｘとを判定し、ヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘを絞り込むことで、前記式（１）における畳み込み処理の回数を減少させることができる。
【００８８】
［第２実施形態に係る画像特徴点検出装置の処理手順］
以下、第２実施形態に係る画像特徴点検出装置の全体の処理手順について、図７を参照しながら説明する。第２実施形態に係る画像特徴点検出装置の処理手順は、第１実施形態の処理手順とは異なり、前記式（１）の右辺の値を小さくするために、Ｌｘｙ（Ｘ，σ）が第１の閾値ｌｍｉｎ未満であり、かつ、Ｌｘｘ（Ｘ，σ）が第１の閾値ｌｍｉｎを超える場合のみ、ヘシアン値Ｈ（Ｘ，σ）を算出する。
【００８９】
処理が開始されると、まずスケール画像生成手段１０が、解像度の異なる複数のスケール画像を生成する（ステップＳ１１）。次に、斜め方向畳み込み部２３０が、Ｌｘｙ（Ｘ，σ）の値を算出する（ステップＳ１２）。次に、斜め方向畳み込み判定部２７０が、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ未満であるか否かを判定する（ステップＳ１３）。そして、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ未満である場合（ステップＳ１３でＹｅｓ）、ステップＳ１４に進む。一方、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以上である場合（ステップＳ１３でＮｏ）、ステップＳ２０に進み、ヘシアン値Ｈ（Ｘ，σ）を０として処理を終了する。
【００９０】
次に、垂直方向畳み込み部２１０が、Ｌｘｘ（Ｘ，σ）の値を算出する（ステップＳ１４）。次に、垂直方向畳み込み判定部２４０が、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する（ステップＳ１５）。そして、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合（ステップＳ１５でＹｅｓ）、ステップＳ１６に進む。一方、Ｌｘｘ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合（ステップＳ１５でＮｏ）、ステップＳ２０に進み、ヘシアン値Ｈ（Ｘ，σ）を０として処理を終了する。
【００９１】
次に、水平方向畳み込み部２２０が、Ｌｙｙ（Ｘ，σ）の値を算出する（ステップＳ１６）。次に、ヘシアン値演算部２６０が、ヘシアン値Ｈ（Ｘ，σ）を算出する（ステップＳ１７）。次に、ヘシアン値判定手段３０が、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈを超えるか否かを判定する（ステップＳ１８）。そして、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈを超える場合（ステップＳ１８でＹｅｓ）、ステップＳ１９に進む。一方、ヘシアン値Ｈ（Ｘ，σ）が第２の閾値ｈｔｈ以下である場合（ステップＳ１８でＮｏ）、ステップＳ２０に進み、ヘシアン値Ｈ（Ｘ，σ）を０として処理を終了する。
【００９２】
そして、ヘシアン値解析手段４０が、入力されたヘシアン値Ｈ（Ｘ，σ）について、ノンマキシマムサプレッション処理を行って（ステップＳ１９）、処理を終了する。
【００９３】
［第２実施形態の変形例］
以下、第２実施形態の変形例に係る画像特徴点検出装置について、図６を参照しながら詳細に説明する。第２実施形態の変形例に係る画像特徴点検出装置は、図５のヘシアン値算出手段２２を、図６に示すヘシアン値算出手段２３とした以外は、前記した第２実施形態に係る画像特徴点検出装置と同様の構成を備えている。従って、前記した第２実施形態に係る画像特徴点検出装置と重複する構成については、同じ符号を付して説明を省略する。また、画像特徴点検出装置の全体の処理手順についても、説明を省略する。
【００９４】
ヘシアン値算出手段２３は、前記したヘシアン値算出手段２２のように、斜め方向の畳み込みを行なった後に垂直方向の畳み込みを行うのではなく、斜め方向の畳み込みを行った後に水平方向の畳み込みを行うことを特徴としている。そのため、ヘシアン値算出手段２３は、前記したヘシアン値算出手段２２の垂直方向畳み込み判定部２４０の代わりに、水平方向畳み込み判定部２５０を備えている。
【００９５】
以下、ヘシアン値算出手段２３におけるヘシアン値Ｈ（Ｘ，σ）の算出手順について、簡単に説明する。
【００９６】
まず、図６に示すように、スケール画像生成手段１０によって生成されたスケール画像が、垂直方向畳み込み部２１０、水平方向畳み込み部２２０および斜め方向畳み込み部２３０にそれぞれ入力される。すると、斜め方向畳み込み部２３０が、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の斜め方向に畳み込むことで、前記式（１）で示すＬｘｙ（Ｘ，σ）の値を算出し、これを斜め方向畳み込み判定部２７０に出力する。
【００９７】
次に、斜め方向畳み込み判定部２７０が、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ未満であるか否かを判定する。そして、斜め方向畳み込み判定部２７０は、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ未満である場合、水平方向畳み込み部２２０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｘｙ（Ｘ，σ）を出力する。一方、斜め方向畳み込み判定部２７０は、Ｌｘｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以上である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わない。そして、次の画素Ｘの処理に移り、斜め方向畳み込み部２３０が、画素Ｘの隣の画素ＸのＬｘｙ（Ｘ，σ）の値を算出する。
【００９８】
次に、水平方向畳み込み部２２０が、斜め方向畳み込み判定部２７０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の水平方向に畳み込むことで、前記式（１）で示すＬｙｙ（Ｘ，σ）の値を算出し、これを水平方向畳み込み判定部２５０に出力する。
【００９９】
次に、水平方向畳み込み判定部２５０が、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超えるか否かを判定する。そして、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎを超える場合、垂直方向畳み込み部２１０に対して畳み込み指示を出力するとともに、ヘシアン値演算部２６０に対してＬｙｙ（Ｘ，σ）を出力する。一方、水平方向畳み込み判定部２５０は、Ｌｙｙ（Ｘ，σ）の値が第１の閾値ｌｍｉｎ以下である場合、ヘシアン値演算部２６０に対してヘシアン値Ｈ（Ｘ，σ）を０に設定する旨の指示を出力する。この場合、ヘシアン値演算部２６０は、前記式（１）の演算を行わず、前記した斜め方向畳み込み部２３０は、画素Ｘの隣の画素ＸのＬｘｙ（Ｘ，σ）の値を算出する。
【０１００】
次に、垂直方向畳み込み手段２１０が、水平方向畳み込み判定部２５０の畳み込み指示に基づいて、スケール画像上の画素Ｘに対して、前記式（２）で示すＬｏＧフィルタを画像の垂直方向に畳み込むことで、前記式（１）で示すＬｘｘ（Ｘ，σ）の値を算出し、これをヘシアン値演算部２６０に出力する。
【０１０１】
以降の処理手順は前記したヘシアン値算出手段２２と同様であるため、省略する。このように、ヘシアン値算出手段２３は、従来のようにスケール画像上の全ての画素Ｘについて、前記式（１）を用いてヘシアン値Ｈ（Ｘ，σ）を算出するのではなく、閾値処理によってヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘと算出しない画素Ｘとを判定し、ヘシアン値Ｈ（Ｘ，σ）を算出する画素Ｘを絞り込むことで、前記式（１）における畳み込み処理の回数を減少させることができる。
【実施例】
【０１０２】
以下、本発明に係る画像特徴点検出装置の効果を確認する実験例について、図８〜１３を参照しながら説明する。本実験例では、本発明に係る画像特徴点検出装置を用いて、実際の画像中における特徴点の検出を行った。本実験例では、Mikolajaczykが（http://www.robots.ox.ac.uk/~vgg/research/affine/）で提供している５種類の画像、すなわち、bikes（increasing blur）、boat(increasing scale(with rotation))、cars(decreasing light)、ubc(JPEG compression[%])、bricks (viewpoint angle)、を用いた。
【０１０３】
前記した５種類の画像のうち、bikes（increasing blur）は、バイクの画像に対して、ボケを段階的に増加させた複数の画像である。また、boat(increasing scale(with rotation))は、ボートの画像に対して、回転を加えながらスケールを段階に増加させた複数の画像である。また、cars(decreasing light)は、車の画像に対して、光量を段階的に減少させた複数の画像である。また、ubc(JPEG compression[%])は、建物の画像に対して、ＪＰＥＧ圧縮率を段階的に増加させた複数の画像である。そして、bricks (viewpoint angle)は、レンガの壁に対して、視点を段階的に変更した複数の画像である。
【０１０４】
なお、本実験例では、測定にラップトップコンピュータ（dual-core 2.8GHz CPU）を使用した。また、ヘシアン値算出手段で用いる第１の閾値（ラプラシアン閾値）ｌｍｉｎは０〜０．０４までの範囲とし、ヘシアン値判定手段で用いる第２の閾値（ヘシアン閾値）ｈｔｈは、０．０００４とした。また、畳み込みの順序は、前記した第１実施形態に係る特徴点検出装置と同様に、垂直方向、水平方向、斜め方向の順で行った。
【０１０５】
本実験例では、まず図８に示すように、第１の閾値ｌｍｉｎを０〜０．０４までの範囲で増加させた場合における特徴点検出の処理時間（processing time）を測定した。ここで、図８における縦軸は特徴点検出の処理時間であり、横軸は第１の閾値ｌｍｉｎの値である。図８を参照すると、第１の閾値ｌｍｉｎの増加に伴って処理時間が減少していることがわかる。従って、本発明に係る画像特徴点検出装置のように、第１の閾値ｌｍｉｎを設定することで、処理速度を高速化することができることがわかる。
【０１０６】
なお、従来技術に係るヘシアンベース特徴点検出装置は、本発明のように第１の閾値ｌｍｉｎを設定していない。従って、従来技術に係るヘシアンベース特徴点検出装置を用いた場合の処理速度は、図８における閾値ｌｍｉｎを０とした場合の処理時間に相当する。そのため、本発明に係る画像特徴点検出装置は、従来技術に係るヘシアンベース特徴点検出装置と比較すると、処理時間を６０％〜７０％短縮できることがわかる。
【０１０７】
次に、本実験例では、図９に示すように、画像のボケを増加させた場合における特徴点検出の再現率（repeatability）を測定した。ここで、図９における横軸はボケの増加量であり、縦軸は特徴点検出の再現率である。図９を参照すると、第１の閾値ｌｍｉｎを０．０２とした場合が最も再現率の低下が緩やかであることがわかる。
【０１０８】
次に、本実験例では、図１０に示すように、画像のスケールを増加させながら回転を加えた場合における特徴点検出の再現率を測定した。ここで、図１０における横軸はスケールおよび回転の増加量であり、縦軸は特徴点検出の再現率である。図１０を参照すると、第１の閾値ｌｍｉｎを０とした場合が最も再現率の低下が緩やかであることがわかる。
【０１０９】
次に、本実験例では、図１１に示すように、画像の光量を減少させた場合における特徴点検出の再現率を測定した。ここで、図１１における横軸は光量の減少量であり、縦軸は特徴点検出の再現率である。図１１を参照すると、第１の閾値ｌｍｉｎを０．０２とした場合が最も再現率の低下が緩やかであることがわかる。
【０１１０】
次に、本実験例では、図１２に示すように、画像のＪＰＥＧ圧縮率を増加させた場合における特徴点検出の再現率を測定した。ここで、図１２における横軸はＪＰＥＧ圧縮率スケールの増加量であり、縦軸は特徴点検出の再現率である。図１２を参照すると、第１の閾値ｌｍｉｎを０．０４とした場合が最も再現率の低下が緩やかであることがわかる。
【０１１１】
次に、本実験例では、図１３に示すように、画像の視点を変更した場合における特徴点検出の再現率を測定した。ここで、図１３における横軸は視点の変更量であり、縦軸は特徴点検出の再現率である。図１３を参照すると、第１の閾値ｌｍｉｎを０．０２とした場合が最も再現率の低下が緩やかであることがわかる。
【０１１２】
このように、図８〜図１３を総合的に勘案すると、本発明に係る画像特徴点検出装置を用いて、第１の閾値ｌｍｉｎを０．０２とした場合が、最も再現率の低下が緩やかであることがわかる。従って、本発明に係る画像特徴点検出装置は、従来技術に係るヘシアンベース特徴点検出装置と比較して、特徴点検出の再現率、すなわち特徴点検出の精度も高いことがわかる。
【符号の説明】
【０１１３】
１  画像特徴点検出装置
１０  スケール画像生成手段
２０，２１，２２，２３  ヘシアン値算出手段
３０  ヘシアン値判定手段
４０  ヘシアン値解析手段
５０  閾値記憶手段
２１０  垂直方向畳み込み部
２２０  水平方向畳み込み部
２３０  斜め方向畳み込み部
２４０  垂直方向畳み込み判定部
２５０  水平方向畳み込み判定部
２６０  ヘシアン値演算部
２７０  斜め方向畳み込み判定部
【図１】
2012053653.tif 000007
【図２】
2012053653.tif 000008
【図３】
2012053653.tif 000009
【図４】
2012053653.tif 000010
【図５】
2012053653.tif 000011
【図６】
2012053653.tif 000012
【図７】
2012053653.tif 000013
【図８】
2012053653.tif 000014
【図９】
2012053653.tif 000015
【図１０】
2012053653.tif 000016
【図１１】
2012053653.tif 000017
【図１２】
2012053653.tif 000018
【図１３】
2012053653.tif 000019