(57)【特許請求の範囲】
【請求項１】
特徴検出装置において訓練画像内のロバスト特徴を特定する方法であって、
前記特徴検出装置により、特徴検出アルゴリズムを前記訓練画像に適用して、それぞれ訓練特徴位置を前記訓練画像内に有する訓練特徴を生成することと、
前記特徴検出装置により、所定の画像変換に応じて前記訓練画像を少なくとも部分的に変換画像に変換することと、
前記特徴検出装置により、前記特徴検出アルゴリズムを前記変換画像に適用して、それぞれ変換特徴位置を前記変換画像内に有する変換特徴を生成することと、
前記特徴検出装置により、前記所定の画像変換に応じて、前記訓練特徴の前記訓練特徴位置を、前記変換画像内の対応する訓練特徴変換位置にマップすることと、
前記特徴検出装置により、それぞれ訓練特徴変換位置が前記変換特徴の変換特徴位置近傍にある訓練特徴を表すロバスト特徴を選択して、ロバスト特徴群をまとめることと
を具備し、
前記訓練画像を少なくとも部分的に変換することは、前記訓練画像を画像認識検索のテーマの１つ以上の特徴に基づく倍率でスケーリングすることによって前記変換画像を形成することを含む
方法。
【請求項２】
前記訓練特徴位置のそれぞれは、画素座標を含む請求項１記載の方法。
【請求項３】
前記変換特徴位置のそれぞれは、変換画素座標を含む請求項１記載の方法。
【請求項４】
前記訓練画像を得ることは、撮像装置によってビデオストリームのビデオフレームを取得することを含む請求項１記載の方法。
【請求項５】
前記特徴検出アルゴリズムは、ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅ  ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ）、Ｆａｓｔ  Ｒｅｔｉｎａ  Ｋｅｙｐｏｉｎｔ（ＦＲＥＡＫ）、Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ（ＨＯＧ）、Ｓｐｅｅｄｅｄ  Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ（ＳＵＲＦ）、ＤＡＩＳＹ、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｖａｒｉａｎｔ  Ｓｃａｌａｂｌｅ  Ｋｅｙｐｏｉｎｔｓ（ＢＲＩＳＫ）、ＦＡＳＴ、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｅａｔｕｒｅｓ（ＢＲＩＥＦ）、Ｈａｒｒｉｓ  Ｃｏｒｎｅｒｓ、Ｅｄｇｅｓ、Ｇｒａｄｉｅｎｔ  Ｌｏｃａｔｉｏｎ  ａｎｄ  Ｏｒｉｅｎｔａｔｉｏｎ  Ｈｉｓｔｏｇｒａｍ（ＧＬＯＨ）、Ｅｎｅｒｇｙ  ｏｆ  ｉｍａｇｅ  Ｇｒａｄｉｅｎｔ（ＥＯＧ）、Ｔｒａｎｓｆｏｒｍ  Ｉｎｖａｒｉａｎｔ  Ｌｏｗ−ｒａｎｋ  Ｔｅｘｔｕｒｅｓ（ＴＩＬＴ）特徴検出アルゴリズムの内の少なくとも１つを含む請求項１記載の方法。
【請求項６】
前記所定の画像変換は、複数の幾何変換を含む請求項１記載の方法。
【請求項７】
前記画像認識検索のテーマの１つ以上の特徴は、主に近シーケンス画像、遠シーケンス画像、傾斜画像、高テクスチャ画像、中テクスチャ画像、低テクスチャ画像の内の少なくとも一つであるクエリ画像を示すように決定される請求項１記載の方法。
【請求項８】
前記倍率は、前記訓練画像の元サイズの５０％から９０％の線倍率を含む請求項１記載の方法。
【請求項９】
前記倍率は、前記訓練画像の元サイズの７５％から８０％の線倍率を含む請求項１記載の方法。
【請求項１０】
前記訓練画像を少なくとも部分的に変換することは、ある角度で前記訓練画像を傾斜、切り取り、回転、デジタル変換することの内の少なくとも１つを含んで前記変換画像を形成する請求項６記載の方法。
【請求項１１】
前記角度は、２０度から４５度の間である請求項１０記載の方法。
【請求項１２】
前記所定の画像変換は、画像処理変換を含む請求項１記載の方法。
【請求項１３】
前記画像処理変換は、ガウシアンフィルタ、カラー変換、非可逆圧縮の内の少なくとも１つを含む請求項１２記載の方法。
【請求項１４】
前記訓練画像を少なくとも部分的に変換することは、複数の幾何変換又は画像処理変換を含む複合変換を前記所定の画像変換として施して、前記変換画像を形成することを含む請求項１記載の方法。
【請求項１５】
前記複合変換は、画像物体認識検索のテーマの１つ以上の特徴に基づいて決定される請求項１４記載の方法。
【請求項１６】
前記所定の画像変換の１つ以上の調整パラメータを調整することと、当該調整済み調整パラメータに基づいて第２ロバスト特徴群を生成することとをさらに含む請求項１記載の方法。
【請求項１７】
前記１つ以上の調整パラメータは、倍率及び角度の少なくとも一方を含む請求項１６記載の方法。
【請求項１８】
前記１つ以上の調整パラメータは、画像物体認識検索のテーマの１つ以上の特徴に基づいて自動的に調整される、請求項１６記載の方法。
【請求項１９】
前記調整済み調整パラメータを、画像テストライブラリと関連して前記調整済み調整パラメータが使用された際の認識効率に基づいて最適化することをさらに含む請求項１６記載の方法。
【請求項２０】
前記画像テストライブラリは、前記訓練画像を含まない請求項１９記載の方法。
【請求項２１】
前記調整済み調整パラメータを前記画像テストライブラリに基づいて検証することをさらに含む請求項１９記載の方法。
【請求項２２】
前記ロバスト特徴群をまとめることは、
訓練特徴変換位置に対して所定の閾値距離内にある変換特徴位置を判定することと、
類似度に基づいて、前記訓練特徴変換位置に対応する訓練特徴を、前記変換特徴位置に対応する変換特徴と比較することとを含む
請求項１記載の方法。
【請求項２３】
前記類似度は、ユークリッド距離、ヘリンガー距離、ハミング距離の少なくとも１つに基づく請求項２２記載の方法。
【請求項２４】
前記訓練特徴及び前記変換特徴のそれぞれは、前記特徴検出アルゴリズムに応じて特徴記述子で表現される請求項１記載の方法。
【請求項２５】
前記訓練画像は、歪みのない画像、赤外線画像、Ｘ線画像、３６０度画像、機械視画像、ビデオデータのフレーム、グラフィック表示、三次元物体斜視像のいずれかである請求項１記載の方法。
【請求項２６】
前記所定の画像変換を選択するために複数の画像変換をユーザに提示することをさらに含む請求項１記載の方法。
【請求項２７】
前記所定の画像変換は、前記訓練画像を撮影する方法と無関係に選択される請求項１記載の方法。
【請求項２８】
訓練画像内のロバスト特徴を特定するシステムであって、
プロセッサと、
メモリ装置と、
前記メモリ装置に記憶されたソフトウェア指示に応じて前記プロセッサに対して実行可能な特徴検出部であって、
前記特徴検出部は、
特徴検出アルゴリズムを前記訓練画像に適用して、それぞれ訓練特徴位置を前記訓練画像内に有する訓練特徴を生成し、
所定の画像変換に応じて前記訓練画像を少なくとも部分的に変換画像に変換し、
前記特徴検出アルゴリズムを前記変換画像に適用して、それぞれ変換特徴位置を前記変換画像内に有する変換特徴を生成し、
前記所定の画像変換に応じて、前記訓練特徴の前記訓練特徴位置を、前記変換画像内の対応する訓練特徴変換位置にマップし、
それぞれ訓練特徴変換位置が前記変換特徴の変換特徴位置近傍にある訓練特徴を表すロバスト特徴を選択して、ロバスト特徴群をまとめるように構成され、
前記訓練画像を少なくとも部分的に変換することは、前記訓練画像を画像認識検索のテーマの１つ以上の特徴に基づく倍率でスケーリングすることによって前記変換画像を形成することを含む
システム。
【請求項２９】
コンピュータプロセッサによって実行可能な指示を含む非一時的コンピュータ読取可能媒体に組み込まれた、画像内のロバスト特徴を特定するコンピュータプログラムであって、
前記指示は、コンピュータプロセッサによって実行されて
特徴検出アルゴリズムを訓練画像に適用して、それぞれ訓練特徴位置を前記訓練画像内に有する訓練特徴を生成することと、
所定の画像変換に応じて前記訓練画像を少なくとも部分的に変換画像に変換することと、
前記特徴検出アルゴリズムを前記変換画像に適用して、それぞれ変換特徴位置を前記変換画像内に有する変換特徴を生成することと、
前記所定の画像変換に応じて、前記訓練特徴の前記訓練特徴位置を、前記変換画像内の対応する訓練特徴変換位置にマップすることと、
それぞれ訓練特徴変換位置が前記変換特徴の変換特徴位置近傍にある訓練特徴を表すロバスト特徴を選択して、ロバスト特徴群をまとめることとを含む処理を実行し、
前記訓練画像を少なくとも部分的に変換することは、前記訓練画像を画像認識検索のテーマの１つ以上の特徴に基づく倍率でスケーリングすることによって前記変換画像を形成することを含む
コンピュータプログラム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本願は、２０１４年４月２４日に出願された米国仮出願第６１／９８３，９７１号の優先権を主張し、その全体は本明細書に参照により援用される。
【技術分野】
【０００２】
本開示は概して画像物体認識に関し、より具体的には画像物体認識において特徴を特定する技術に関する。
【背景技術】
【０００３】
画像物体認識用に様々な特徴検出アルゴリズムが利用されている。最も基本的なレベルでは、特徴検出アルゴリズムは画像物体認識、検索のため、画像の代表的な特徴（例えば形状、物体等）を特徴づけ、要約し、そして参照可能とする手段としての記述子を生成する。画像物体認識用の特徴検出アルゴリズムの一例としては、Ｌｏｗｅによる米国特許第６，７１１，２９３号に記載されるようなＳｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ）特徴検出アルゴリズムが挙げられる。例えば、ＳＩＦＴ特徴検出アルゴリズムは画像内の多数の特徴に対して記述子を生成するように、画像に適用できる。
【０００４】
機械物体認識は通常、２つの独立したステップを含む。具体的にはまず、既知の物体の訓練画像を、特徴検出アルゴリズム（例えばＳＩＦＴ特徴検出アルゴリズム）で分析することで、画像データ中の特徴に対応した記述子が生成される。多くの異なる物体に対応する記述子は、認識装置（例えばスマートフォン）上に展開されるよう、認識ライブラリ又はデータベースとしてパッケージ化されてもよい。次に、認識装置は、物体の新たな「クエリ」画像を取得する。装置は同様の画像処理アルゴリズムをクエリ画像に適用し、クエリ画像記述子を生成する。そして、装置は、クエリ画像記述子を認識ライブラリ中の訓練画像記述子と比較する。十分な一致、特に再近隣一致があった場合、クエリ画像は少なくとも１つの既知物体の表示を含むと考えられる。
【０００５】
残念ながら、画像物体認識を有効に適用するために必要な認識ライブラリは、典型的な携帯装置（例えばスマートフォン）の記憶容量に対してかなり大きくなり得る。これは認識ライブラリが何千もの物体を区別できるような情報を記憶しなければならないような場合に顕著である。例えば、典型的なＳＩＦＴ記述子は、１２８バイトもの情報を含み得る。したがって、物体千個のデータセットは、２００万個の記述子を含み得、これは２５６ＭＢの認識ライブラリとなる。十分に大きなデータセットは、携帯装置上に展開困難である上に、帯域が限定されていること、更に／或いはデータチャージが高くなりすぎてしまうことを考えると、モバイル通信ネットワークを利用しても困難である。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
過去に、画像物体認識に必要な認識データベースの改善を図る様々な試みがあったが、コンパクトかつ効率的な、画像物体認識用の認識ライブラリの構築を可能とする技術が未だ求められている。
【課題を解決するための手段】
【０００７】
本稿では、訓練画像内のロバスト特徴を特定する方法、システム、製造物を説明する。各種実施形態は、画像物体認識用のコンパクトかつ効率的な認識ライブラリの構築を可能にする。実施形態では、訓練画像内のロバスト特徴を特定する。訓練画像は、歪みのない画像、赤外線画像、Ｘ線画像、３６０度画像、機械視画像、ビデオデータのフレーム、グラフィック表示、三次元物体斜視像のいずれかであってもよく、撮像装置により、ビデオストリームのビデオフレームを取得することにより得てもよい。特徴検出アルゴリズムを前記訓練画像に適用して、それぞれ訓練特徴位置を前記訓練画像内に有する訓練特徴を生成する。所定の画像変換に応じて前記訓練画像を少なくとも部分的に変換画像に変換する。前記所定の画像変換を選択するため、複数の画像変換をユーザに提示してもよく、前記所定の画像変換は、前記訓練画像を撮影する方法と無関係に選択されてもよい。前記特徴検出アルゴリズムを前記変換画像に適用して、それぞれ変換特徴位置を前記変換画像内に有する変換特徴を生成する。前記所定の画像変換に応じて、前記訓練特徴の前記訓練特徴位置を、前記変換画像内の対応する訓練特徴変換位置にマップする。それぞれ訓練特徴変換位置が前記変換特徴の変換特徴位置近傍にある訓練特徴を表すロバスト特徴を選択して、ロバスト特徴群をまとめる。前記訓練特徴及び前記変換特徴はそれぞれ、前記特徴検出アルゴリズムに応じて特徴記述子で表現されてもよい。前記訓練特徴位置はそれぞれ、画素座標を含んでもよく、前記変換特徴位置はそれぞれ、変換画素座標を含んでもよい。前記特徴検出アルゴリズムは、ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅ  ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ）、Ｆａｓｔ  Ｒｅｔｉｎａ  Ｋｅｙｐｏｉｎｔ（ＦＲＥＡＫ）、Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ（ＨＯＧ）、Ｓｐｅｅｄｅｄ  Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ（ＳＵＲＦ）、ＤＡＩＳＹ、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｖａｒｉａｎｔ  Ｓｃａｌａｂｌｅ  Ｋｅｙｐｏｉｎｔｓ（ＢＲＩＳＫ）、ＦＡＳＴ、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｅａｔｕｒｅｓ（ＢＲＩＥＦ）、Ｈａｒｒｉｓ  Ｃｏｒｎｅｒｓ、Ｅｄｇｅｓ、Ｇｒａｄｉｅｎｔ  Ｌｏｃａｔｉｏｎ  ａｎｄ  Ｏｒｉｅｎｔａｔｉｏｎ  Ｈｉｓｔｏｇｒａｍ（ＧＬＯＨ）、Ｅｎｅｒｇｙ  ｏｆ  ｉｍａｇｅ  Ｇｒａｄｉｅｎｔ（ＥＯＧ）、Ｔｒａｎｓｆｏｒｍ  Ｉｎｖａｒｉａｎｔ  Ｌｏｗ−ｒａｎｋ  Ｔｅｘｔｕｒｅｓ（ＴＩＬＴ）特徴検出アルゴリズムの内の少なくとも１つを含んでもよい。
【０００８】
いくつかの実施形態では、前記所定の画像変換は、幾何変換を含んでもよい。前記幾何変換は、スケーリング、傾斜、切り取り、回転変換することの内の少なくとも１つを含んでもよい。
【０００９】
いくつかの実施形態では、前記訓練画像を少なくとも部分的に変換することは、前記訓練画像を倍率でスケーリングすることで前記変換画像を形成することを含んでもよい。前記倍率は、画像物体認識検索のテーマの１つ以上の特徴に基づいてもよく、前記画像物体認識検索のテーマの１つ以上の特徴は、主に近シーケンス画像、遠シーケンス画像、傾斜画像、高テクスチャ画像、中テクスチャ画像、低テクスチャ画像の内の少なくとも一つであるクエリ画像を示すように決定されてもよい。いくつかの実施形態では、前記倍率は、前記訓練画像の元サイズの５０％から９０％の線倍率を含んでもよい。いくつかの実施形態では、前記倍率は、前記訓練画像の元サイズの７５％から８０％の線倍率を含んでもよい。
【００１０】
いくつかの実施形態では、前記訓練画像を少なくとも部分的に変換することは、ある角度で前記訓練画像を傾斜、切り取り、回転、デジタル変換することの内の少なくとも１つを含むことで前記変換画像を形成してもよい。いくつかの実施形態では、前記角度は、２０度から４５度の間であってもよい。
【００１１】
いくつかの実施形態では、前記所定の画像変換は画像処理変換を含んでもよい。前記画像処理変換は、ガウシアンフィルタ、カラー変換、非可逆圧縮の内の少なくとも１つを含んでもよい。
【００１２】
いくつかの実施形態では、前記訓練画像を少なくとも部分的に変換することは、複数の幾何変換又は画像処理変換を含む、複合変換を前記所定の画像変換として施して、前記変換画像を形成することを含んでもよい。前記複合変換は、画像認識検索のテーマの１つ以上の特徴に基づいて決定されてもよい。
【００１３】
いくつかの実施形態では、前記所定の画像変換の１つ以上の調整パラメータを調整して、当該調整済み調整パラメータに基づいて、第２ロバスト特徴群を生成してもよい。前記１つ以上の調整パラメータは、倍率及び角度の少なくとも一方を含んでもよく、また、画像認識検索のテーマの１つ以上の特徴に基づいて、自動的に調整されてもよい。
【００１４】
いくつかの実施形態では、前記調整済み調整パラメータを、画像テストライブラリと関連して前記調整済み調整パラメータが使用された際の認識効率に基づき最適化してもよい。いくつかの実施形態では、前記画像テストライブラリは、前記訓練画像を含まなくてもよく、前記調整済み調整パラメータを、前記画像テストライブラリに基づき検証してもよい。
【００１５】
いくつかの実施形態では、前記ロバスト特徴群をまとめることは、訓練特徴変換位置に対して所定の閾値距離内にある変換特徴位置を判定することと、類似度に基づいて、前記訓練特徴変換位置に対応する訓練特徴を、前記変換特徴位置に対応する変換特徴と比較することとを含んでもよい。前記類似度は、ユークリッド距離、ヘリンガー距離、ハミング距離の少なくとも１つに基づいてもよい。
【００１６】
本発明の主題についての各種目的、特徴、態様、効果は、以下の明細書の記載でより明らかになる。添付の図面が参照されるが、同様の参照符号は同様の構成要素を指す。
【図面の簡単な説明】
【００１７】
図１は、実施形態に係る、訓練画像に対する幾何変換の様々な例を示す。
【００１８】
図２Ａは、実施形態に係る、高テクスチャ訓練画像に対する幾何画像変換の例を示す。
【００１９】
図２Ｂは、実施形態に係る、中テクスチャ訓練画像に対する幾何画像変換の例を示す。
【００２０】
図２Ｃは、実施形態に係る、低テクスチャ訓練画像に対する幾何画像変換の例を示す。
【００２１】
図３は、実施形態に係る、訓練画像内のロバスト特徴を特定するシステムのブロック図を示す。
【００２２】
図４は、実施形態に係る、訓練画像内のロバスト特徴を特定する例示的動作のフローチャートを示す。
【００２３】
図５は、実施形態に係る、最適な変換パラメータ群を決定するために使用される画像物体認識検索クエリ画像の一例を示す。
【００２４】
図６Ａは、実施形態に係る、高テクスチャ訓練画像に対する変換最適化結果のグラフを示す。
【００２５】
図６Ｂは、実施形態に係る、中テクスチャ訓練画像に対する変換最適化結果のグラフを示す。
【００２６】
図６Ｃは、実施形態に係る、低テクスチャ訓練画像に対する変換最適化結果のグラフを示す。
【００２７】
図７は、各種実施形態の１つ以上の態様を実現するために使用可能な例示的なクライアントサーバ構成のブロック図を示す。
【００２８】
図８は、各種実施形態の１つ以上の態様を実現するために使用可能な分散型コンピュータシステムのブロック図を示す。
【００２９】
本発明は上記図面を参照に説明されるが、図面は例示的であるものとする。その他実施形態は、本発明の精神に沿って、本発明の範囲内のものであるとする。
【発明を実施するための形態】
【００３０】
以下に、添付の図面を参照にして、各種実施形態をより包括的に説明する。当該図面は、本稿の一部となるものであって、実施形態の実現の具体例を例示的に示す。ただし、本明細書の内容は様々な異なる形態で実施されてもよく、本稿記載の実施形態に限定されると解されるべきではない。当該実施形態は本明細書の内容が一貫性を有して完成し、発明の範囲が当業者に完全に伝わるよう提供されるものである。特に、本明細書の内容は方法や装置として実施されてもよい。したがって、本稿記載の各種実施形態の内の任意のものが、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はソフトウェア及びハードウェア要素の組合せの実施形態であってもよい。このように、以下の明細書は限定的に解釈されるべきではない。
【００３１】
明細書、請求項全体において、別途明確に規定されない限り、以下の用語は本稿にて以下の対応する意味を有する。
【００３２】
本稿において使用される「一実施形態において」という表現は、同一の実施形態に関するものとは限らないが、関するものである場合もある。したがって、以下に記載する通り、本発明の各種実施形態は、本発明の範囲又は精神から逸脱することなく、容易に組合せ可能である。
【００３３】
本稿で使用される「又は」という語は、包括的な「ｏｒ」演算子であり、別途明確に規定されない限り、「及び／又は」と同等の意味で用いられる。
【００３４】
「基づく」という語は排他的ではなく、別途明確に規定されない限り、記載されていない追加の要素に基づくこともできる。
【００３５】
本稿で使用される「と接続される」という語は、別途明確に規定されない限り、直接接続（２つの要素が互いに接して接続される）及び間接接続（少なくとも１つの追加の要素が当該２つの要素間に配置されている）の両方を含むことを意図している。したがって、「と接続される」も「に接続される」も同義として使用される。２つ以上の構成要素又は装置がデータをやり取りできるネットワーク環境において、「と接続される」及び「に接続される」は、「通信可能に接続される」ことをも意味しており、１つ以上の中間装置を介してもよい。
【００３６】
更に、本明細書を通じて、単数の記載は複数のものを含み、「の中に」は「の中に」及び「の上に」を含む。
【００３７】
本稿に示すいくつかの各種実施形態は発明の要素のある組合せからなるが、発明の主題は、開示されている要素のあらゆる組合せを含むと考えられることが理解されよう。したがって、一実施形態が要素Ａ、Ｂ、Ｃを含み、別の実施形態が要素Ｂ、Ｄを含む場合、発明の主題は、本稿に明示的に述べられていない場合でも、Ａ、Ｂ、Ｃ、又はＤの他の組合せも含むと考えられる。
【００３８】
本稿の明細書及び後続の請求項において使用される場合、システム、エンジン、サーバ、装置、モジュール、又はその他のコンピューティング要素は、メモリ中のデータに対して機能を実施又は実行するよう構成されるものとして記載される。ここで、「よう構成される」又は「ようプログラムされる」は、コンピューティング要素の１つ以上のプロセッサ又はコアが、コンピューティング要素のメモリに記憶されたソフトウェア指示群によりプログラムされて、メモリに記憶されたターゲットデータ又はデータ物体に対して機能群を実行することを意味する。
【００３９】
コンピュータに指示されるあらゆる言語は、サーバ、インターフェース、システム、データベース、エージェント、ピア、エンジン、コントローラ、モジュール、個別に又はまとめて動作するその他の種類のコンピューティング装置構造を含む、コンピューティング装置のあらゆる適切な組合せを含むよう読み込まれることに留意されたい。コンピューティング装置は、有形、非一時的コンピュータ読取可能記憶媒体（例えばハードディスク、ＦＰＧＡ、ＰＬＡ、ソリッドステートドライブ、ＲＡＭ、フラッシュ、ＲＯＭ等）に記憶されるソフトウェア指示を実行するよう構成されるプロセッサを含む。ソフトウェア指示は、開示されている装置について以下に記載する役割、責任、又はその他の機能を提供するようにコンピューティング装置を構成又はプログラムする。また、開示されている技術は、プロセッサに対してコンピュータベースのアルゴリズム、プロセス、方法、又はその他の指示を実施することに関する開示されているステップを実行させるソフトウェア指示を記憶する非一時的コンピュータ読取可能媒体を含むコンピュータプログラムプロダクトとして実施することもできる。いくつかの実施形態では、各種サーバ、システム、データベース又はインターフェースは、ＨＴＴＰ、ＨＴＴＰＳ、ＡＥＳ、公開秘密鍵の交換、ウェブサービスＡＰＩ、公知の金融取引プロトコル、又はその他の電子情報交換方法に基づき得る、標準化されたプロトコル又はアルゴリズムを用いてデータをやり取りする。装置間のデータのやり取りは、パケット交換ネットワーク、インターネット、ＬＡＮ、ＷＡＮ、ＶＰＮ、又はその他の種類のパケット交換ネットワーク、回路交換ネットワーク、セル交換ネットワーク、又はその他の種類のネットワークを介して行われてもよい。
【００４０】
開示される発明の主題は、人間の処理能力を上回る量のデジタルデータを処理する演算装置を構成、設定することに向けられている。いくつかの実施形態ではデジタルデータは画像とされるが、デジタルデータは必ずしも画像そのものではなく、画像のデジタルモデルを１つ以上示すものであることが理解されよう。演算装置のメモリ内に当該デジタルモデルを実現することで、演算装置は、そのユーザが当該装置を利用しなかった場合には得られないような利便性が得られるよう、デジタルデータ又はモデルを管理できる。したがって、開示の装置は、開示の技術に従って、そのようなデジタルデータをより効率的に処理できる。
【００４１】
開示の技術は、デジタル画像物体認識、検索技術の範囲、精度、コンパクトさ、効率、速度の向上を含む、多くの有利な技術的効果をもたらすことが理解できよう。そして、以下の明細書の内容は、大規模な全体像を示す意図はないため、明確、簡潔にするため、概念の簡略化が可能であることも理解されよう。
【００４２】
各種実施形態によると、本稿では画像検索の文脈で説明される物体インスタンス検索、画像認識及び／又は画像物体認識は、所定のクエリ画像に応じた画像データセット（本稿ではそれぞれ「画像」又は「訓練画像」と称する）の特徴検出を行うシステム及び方法により実現される。画像認証は、画像の特徴を特徴づけ、要約し、そして参照可能とする記述子を利用して可能となる。大規模画像認識では、多数のサーバが並行動作し、それぞれ一千万以上の画像より成る画像データセットを処理する場合すらある（中規模画像認識で処理されるのは、約百万以上の画像より成る画像データセットとなる）。但し、莫大な画像データセットに対応する記述子の記憶要件により、画像記述子のメモリフットプリントと、例えばｍｅａｎ  ａｖｅｒａｇｅ  ｐｒｅｃｉｓｉｏｎ（ｍＡＰ）で測定される画像検索性能とのいずれかを優先して、いずれかを犠牲にするような状況も少なくない。したがって、大規模な画像認識を実行するならば、画像を特徴づけるため使用される画像記述子を少なくすることが望ましい。
【００４３】
記述子は、画像の１つ以上の目立つ特徴（例えば形状、物体等）に対応するベクトルであってもよい。画像特徴の検出、記述子生成には様々な方法を利用可能である。例えば、ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅ  ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ）は、現在広く使用されている画像認識アルゴリズムで、画像の特徴を検出、表現するため使用される。ＳＩＦＴ記述子は１２８次元であり、非常に目立ち（即ち、マッチングのため区別しやすい）、照明、３次元（３Ｄ）視点等に対して少なくともある程度ロバストである。例えば、ＳＩＦＴ記述子の生成に関しては、Ｄ．Ｌｏｗｅによる"Ｄｉｓｔｉｎｃｔｉｖｅ  Ｉｍａｇｅ  ｆｅａｔｕｒｅｓ  ｆｒｏｍ  Ｓｃａｌｅ−Ｉｎｖａｒｉａｎｔ  Ｋｅｙｐｏｉｎｔｓ"、Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ６０  （２）、９１から１１０ページ（２００４）を参照されたい。ＳＩＦＴ記述子以外の記述子も利用可能である。当該記述子としてはＦａｓｔ  Ｒｅｔｉｎａ  Ｋｅｙｐｏｉｎｔ（ＦＲＥＡＫ）記述子、Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ（ＨＯＧ）記述子、Ｓｐｅｅｄｅｄ  Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ（ＳＵＲＦ）記述子、ＤＡＩＳＹ記述子、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｖａｒｉａｎｔ  Ｓｃａｌａｂｌｅ  Ｋｅｙｐｏｉｎｔｓ（ＢＲＩＳＫ）記述子、ＦＡＳＴ記述子、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｅａｔｕｒｅｓ（ＢＲＩＥＦ）記述子、Ｈａｒｒｉｓ  Ｃｏｒｎｅｒｓ記述子、Ｅｄｇｅｓ記述子、Ｇｒａｄｉｅｎｔ  Ｌｏｃａｔｉｏｎ  ａｎｄ  Ｏｒｉｅｎｔａｔｉｏｎ  Ｈｉｓｔｏｇｒａｍ（ＧＬＯＨ）記述子、Ｅｎｅｒｇｙ  ｏｆ  ｉｍａｇｅ  Ｇｒａｄｉｅｎｔ（ＥＯＧ）記述子、Ｔｒａｎｓｆｏｒｍ  Ｉｎｖａｒｉａｎｔ  Ｌｏｗ−ｒａｎｋ  Ｔｅｘｔｕｒｅｓ（ＴＩＬＴ）記述子が挙げられる。通常、画像データセットの各画像は、記述子によって表される何百、何千もの特徴を含む。したがって、有効なシステム制約条件としては、画像データセットを表すため必要な記述子の量の圧縮、及び記述子内の情報を記憶するために必要なメモリサイズの低減の両方を達成する方法が求められることが多い。
【００４４】
本稿における各種実施形態において、訓練画像データ内のロバスト特徴を特定することで、画像データセットを表すため使用される記述子の量を圧縮し、記述子に含まれる情報を記憶するために必要なメモリサイズを低減することの両方を達成する方法が提供される。単に特徴と、画像物体認識に関連した対応する記述子を全て記憶するよりも、本稿の各種実施形態では、各種摂動（例えば幾何変換や画像処理変換のような画像変換）に対してロバストな特徴を判定しやすくする。さらに、各種実施形態は、複数の画像ではなく、物体を示す単一の画像を使用してロバスト特徴を決定するので、その他典型的な訓練画像取り込み技術に比較して時間短縮が達成できる。但し、各種実施形態は、多数の視点で複雑な構造を有する三次元（３Ｄ）画像の複数の画像を取り込むための使用も想定される。
【００４５】
本稿で説明される、ロバスト特徴を特定する各種実施形態において、幾何（例えばスケーリング）変換及びＳＩＦＴ特徴検出アルゴリズムの利用が、説明を簡潔明瞭にするために例示される。但し、その他画像変換（例えばその他幾何変換、画像処理変換、又はそれら変換の組合せ）及びその他特徴検出アルゴリズムを利用して各種実施形態を実現してもよいことが理解されよう。さらに、利用される特定の特徴検出アルゴリズム又は訓練画像により示されると知られているテーマの特定の特徴に基づいて、多様なその他画像変換が利用されてもよいことが理解されよう。
【００４６】
図１は、実施形態に係る、訓練画像に対する幾何変換の様々な例を示す。図１において、訓練画像１００は高さｈを有する物体の画像を示す。例えば、訓練画像１００は歪みのない画像、赤外線画像、Ｘ線画像、３６０度画像、機械視画像、ビデオデータのフレーム、グラフィック表示、三次元物体斜視像の内のいずれかであってもよい。いくつかの実施形態において、訓練画像１００は撮像装置により撮影された、又は配信された（例えばテレビ、映画等）ビデオストリームからビデオフレームを取得することで得られてもよい。あくまで例示として、訓練画像１００は中テクスチャ物体として図示されている。
【００４７】
訓練画像１００の少なくとも一部は、変換画像１０２，１０４，１０６として示すように、あらかじめ定義された（即ち所定の）画像変換により、変換画像に変換されてもよい。実施形態において、あらかじめ定義された（即ち所定の）画像変換は、幾何変換（図示）と、画像処理変換の少なくとも一方であってもよい。画像処理変換は自動的に又はユーザに提示され選択される。更に、所定の画像変換は訓練画像を取得する方法と無関係に選択されてもよい。このように、所定の画像変換は、訓練画像取り込み処理を効率化するよう選択されてもよい。即ち、元画像に関係なく複数の訓練画像のそれぞれに同一の所定の画像変換を自動的に適用するのである。
【００４８】
いくつかの実施形態において、所定の画像変換は、訓練画像により表されることがみとめられたテーマの特定の特徴（例えば、高テクスチャな子供用玩具、低テクスチャなロゴ、印刷媒体、街並み画像、都市景観画像等）に基づいて選択されてもよい。更に、所定の画像変換は、想定されるクエリ画像の特徴に基づいてもよい。想定クエリ画像としては、主に近シーケンス画像、遠シーケンス画像、傾斜画像、高テクスチャ画像、中テクスチャ画像、低テクスチャ画像の少なくとも１つであると想定される。例えば、主に近シーケンスクエリ画像は、印刷媒体に関するとされる検索の場合に想定され、主に遠シーケンス画像は、街並み画像、都市景観画像、ＣＣＴＶ／防犯カメラ画像に関するものとされる検索の場合に想定される。
【００４９】
実施形態において、訓練画像１００を変換して変換画像を形成することは、訓練画像をある倍率でスケーリング（例えば、拡大又は縮小）することを含んでもよい。例えば、変換画像１０２は、線倍率αで線形縮小された訓練画像を示す。実施形態において、線倍率αは好ましくは０．５（例えば５０％）から０．９（例えば９０％）の間であり、より好ましくは、０．７５（例えば７５％）と０．８（例えば８０％）の間である。例えば、ロバスト特徴を特定して、訓練画像を表すために必要な特徴の数を減らすための後述の方法に基づいて、線倍率約０．８（例えば８０％）により、認識性能を損なうことなく、認識データベースサイズを約５０％低減できる。いくつかの実施形態において、倍率は画像物体認識検索のテーマ特徴の１つ以上に基づいていてもよい。
【００５０】
実施形態において、訓練画像１００を変換して変換画像を形成することは、ある角度で訓練画像を回転することを含んでもよい。例えば、変換画像１０４は、角度θ回転された訓練画像を示す。角度θは、ロバスト特徴を特定するための所望の摂動量を生成することに基づいて選択されてもよい。例えば、訓練画像１００と変換画像１０２との間に十分認識可能な回転変化を生じさせる最小角度として、２０度の角度θが挙げられる。したがって、２０度未満の角度では、画像同士が非常に類似してしまい、ロバスト特徴を特定するために十分な摂動が得られない場合がある。例えば、そのような状況のロバスト特徴は、設定された元の特徴の７０％又は８０％を含むものであり得る。一方、回転には高い対称性が伴うため、４５度を超える角度θを上限角度としてもよい。例えば、７０度の角度θは、２０度の回転の後に反対方向に９０度回転したこととほぼ同等の回転となる（したがってＳＩＦＴ特徴検出では非常に小さな差となる）。このように７０度だと、ＳＩＦＴ検出においては２０度回転させることと同等なのである。同様に、１６０度でも、２０度回転させて１８０度回転させたことと同等となる。したがって、実施形態において、回転角度θは２０度から４５度の間が好ましいのである。
【００５１】
実施形態において、訓練画像１００を変換して変換画像を形成することは、訓練画像を傾斜角度φで傾斜させる又は切り取ることを含んでもよい。例えば、変換画像１０６は角度φで傾斜させられた訓練画像を示す。角度φは、ロバスト特徴を特定するために、所望の摂動量を生成することに基づいて選択されてもよい。例えば、訓練画像１００と変換画像１０２との間に変化を生じさせることができる最小角度として、角度φは２０度であってもよい。したがって、２０度未満の角度φでは、画像同士が非常に類似してしまい、ロバスト特徴を特定するために十分な摂動が得られない場合がある。一方、角度φが４５度を超えると、変換画像１０２の歪みが大きくなりすぎてしまい、変換の結果、ロバスト特徴として特定されるような特徴がほとんど残らず、認識性能が落ちてしまう可能性がある。したがって、実施形態において、傾斜角度φは２０度から４５度の間であることが好ましい。
【００５２】
いくつかの実施形態において、複数の異なる画像変換を組み合わせて、複合変換としてもよい。例えば、複数の幾何変換及び／又は画像処理変換（例えば、ガウシアンフィルタ、カラー変換及び／又は非可逆又は可逆圧縮を含む）を選択的に組み合わせて、訓練画像１００を変換画像に変換してもよい。いくつかの実施形態では、複合変換は、カメラ又はその他撮像装置の１つ以上の既知の特徴（例えば、焦点距離、レンズ口径、ズーム範囲、ぼかし等）に基づいて決定されてもよい。したがって、複合変換により、撮像装置等により撮影される画像又は撮像装置等でクエリ画像が撮像され得る状況がシミュレーション又はモデリングされ得る。更に、いくつかの実施形態では、複合変換は画像物体認識検索のテーマ特徴の１つ以上に基づいて決定されてもよい。このように、その他画像変換又は画像変換の組合せが可能であること、そして図１に示す例は例示的あって、訓練画像１００を変換して変換画像を形成するために利用できる画像変換を単に示すものであることが理解されよう。
【００５３】
ロバスト特徴は、画像変換のような摂動後も残存する、画像内の特徴のサブセットとされる。例えば、特徴検出アルゴリズムを訓練画像１００に適用して、それぞれ訓練特徴位置（例えば画素座標）を訓練画像内に有する訓練特徴を生成してもよい。同様に、特徴検出アルゴリズムを変換画像１０２，１０４，１０６の１つのような変換画像に適用して、それぞれ変換特徴位置（例えば変換画素座標）を変換画像内に有する変換特徴を生成してもよい。その後、変換特徴の内の１つのものの変換特徴位置近傍の訓練特徴変換位置（即ち、対応する変換画像位置にマップされた位置）を有する訓練特徴を特定することで、訓練画像１００のロバスト特徴群の判定が行われる。
【００５４】
図２Ａは、実施形態に係る、高テクスチャ訓練画像の幾何画像変換の例を示す。訓練画像２００は、ＳＩＦＴ特徴検出アルゴリズム適用の結果、１１４９個のＳＩＦＴ訓練特徴（例えば訓練特徴２０２及び２０４）が含まれると判定された高テクスチャ訓練画像（例えば典型的な子供用玩具のパッケージ画像）を示す。図を見やすくするため、全ての訓練特徴は図示していない。訓練画像２００が変換されて変換画像２１０が形成される。変換画像２１０は訓練画像２００のアスペクト比を保ったまま、倍率０．８（８０％）で線形縮小したものである。ＳＩＦＴ特徴検出アルゴリズム適用の結果、変換画像２１０は７８６個のＳＩＦＴ変換特徴（例えば変換特徴２１２及び２１４）を有すると判定された。図を見やすくするため、全ての変換特徴は図示していない。なお、７８６個の変換特徴の全てが、訓練特徴に対応するものではない。例えば、訓練画像２００を縮小することで、いくつかの検出された訓練特徴（例えば訓練特徴２０４）に対応する変換特徴が変換画像２１０内に存在しなくなる。一方、訓練画像２００を縮小することで、対応する訓練特徴を有さない変換特徴（例えば変換特徴２１４）が変換画像２１０内に存在する場合がある。例えば、変換画像２１０内において、７８６個の変換特徴うち、５５０個の変換特徴（例えば変換特徴２１２）が、訓練画像２００の訓練特徴（たとえば訓練特徴２０２）と対応する。これら５５０個の変換特徴が、訓練画像２００の縮小による摂動に対してロバストであるとみなされる。このように、訓練画像２００内の訓練特徴の約４８％（即ち、１００×５５０／１１４９）がロバスト特徴と認められる。
【００５５】
図２Ｂは、実施形態に係る、中テクスチャ訓練画像の幾何画像変換の例を示す。訓練画像２２０は、ＳＩＦＴ特徴検出アルゴリズム適用の結果、７０７個のＳＩＦＴ訓練特徴（例えば訓練特徴２２２及び２２４）が含まれると判定された中テクスチャ訓練画像を示す。図を見やすくするため、全ての訓練特徴は図示していない。訓練画像２２０が変換されて変換画像２３０が形成される。変換画像２３０は訓練画像２２０のアスペクト比を保ったまま、倍率０．８（８０％）で線形縮小したものである。ＳＩＦＴ特徴検出アルゴリズム適用の結果、変換画像２３０は複数の変換特徴（例えば特徴２３２及び２３４）を有すると判定された。図を見やすくするため、全ての変換特徴は図示していない。図２Ａの場合と同様、変換特徴の全てが、訓練特徴に対応するものではない。例えば、訓練画像２２０を縮小することで、いくつかの検出された訓練特徴（例えば訓練特徴２２４）に対応する変換特徴が変換画像２３０内に存在しなくなる。一方、訓練画像２２０を縮小することで、対応する訓練特徴を有さない変換特徴（例えば変換特徴２３４）が変換画像２３０内に存在する場合がある。例えば、変換画像２３０内において、３１８個の変換特徴（例えば変換特徴２３２）が、訓練画像２２０の訓練特徴（たとえば訓練特徴２２２）と対応する。これら３１８個の変換特徴が、訓練画像２２０の縮小による摂動に対してロバストであるとみなされる。このように、訓練画像２２０内の訓練特徴の約４５％がロバスト特徴と認められる。
【００５６】
図２Ｃは、実施形態に係る、低テクスチャ訓練画像の幾何画像変換の例を示す。訓練画像２４０は、ＳＩＦＴ特徴検出アルゴリズム適用の結果、複数のＳＩＦＴ訓練特徴（例えば訓練特徴２４２及び２４４）が含まれると判定された低テクスチャ訓練画像を示す。図を見やすくするため、全ての訓練特徴は図示していない。訓練画像２４０が変換されて変換画像２５０が形成される。変換画像２５０は訓練画像２４０のアスペクト比を保ったまま、倍率０．８（８０％）で線形縮小したものである。ＳＩＦＴ特徴検出アルゴリズム適用の結果、変換画像２５０は複数のＳＩＦＴ変換特徴（例えば変換特徴２５２及び２５４）を有すると判定された。図を見やすくするため、全ての変換特徴は図示していない。図２Ａ、２Ｂの場合と同様、変換画像２５０内の変換特徴の全てが、訓練画像２４０内の訓練特徴に対応するものではない。例えば、訓練画像２４０を縮小することで、いくつかの検出された訓練特徴（例えば訓練特徴２４４）に対応する変換特徴が変換画像２５０内に存在しなくなる。一方、訓練画像２４０を縮小することで、対応する訓練特徴を有さない変換特徴（例えば変換特徴２５４）が変換画像２５０内に存在する場合がある。訓練画像２４０における、約５３％の訓練特徴（例えば訓練特徴２４２）が、変換画像２５０内に対応する変換特徴（例えば変換特徴２５２）を有するため、ロバストであると認められる。
【００５７】
このように、図２Ａから２Ｃでは、８０％の倍率変換の結果、５０％程度の訓練特徴がロバスト特徴として残る。この比率は、ロバスト特徴のみを記憶するのであれば、訓練画像特徴の保存に必要な記憶スペースのサイズが５０％低減されることを示す（即ち、画像認識データベースのサイズが５０％低減）。更に、図２Ａから２Ｃは、後述のようなロバスト特徴の生成は、テクスチャによってほぼ影響を受けることがないことを示す。
【００５８】
図３は、実施形態に係る、訓練画像内のロバスト特徴を特定するシステムのブロック図を示す。ブロック図３００において、ロバスト特徴を特定するための要素は、特徴検出部３１０と、撮像装置３２０と、持続ストレージ装置３３０と、メインメモリ装置３４０とを含む。ただし、図３の要素、そして当該各要素に関する各種機能は、理解しやすくすることのみを目的に例示されることが理解されよう。当業者には、各種要素に関する１つ以上の機能が、その他要素の１つ以上により実現されてもよく、更に／或いは当該各種機能の組合せを実現するように構成された要素（不図示）により実現されてもよいことが理解されよう。
【００５９】
実施形態において、特徴検出部３１０は訓練画像３５０内のロバスト特徴を特定するよう構成される。いくつかの実施形態では、訓練画像３５０は典型的な写真、画像又はビデオフレームのような、物体３０２の二次元的（２Ｄ）表示を示す。或いは、訓練画像３５０は特殊なフィルタ又はレンズ（例えば魚眼レンズ）を利用して生成された歪んだ画像であってもよい。更に、訓練画像３５０は赤外線（ＩＲ）フィルタ、Ｘ線、３６０度画像等の１つ以上に基づく、物体の機械又はロボット視であってもよい。このように、訓練画像３５０は歪みのない画像、赤外線画像、Ｘ線画像、３６０度画像、機械視画像、ビデオデータのフレーム、グラフィック表示、三次元物体斜視像の１つであってもよく、撮像装置３２０のような撮像装置でビデオストリームのビデオフレームを取得することで得られてもよい。
【００６０】
いくつかの実施形態において、撮像装置３２０は特徴検出部３１０の外部（図示）又は内部に設けられ、訓練物体３０２の画像を生成するか、その他方法で取得する装置であってもよい。例えば、撮像装置３２０は、通信ネットワークを介して特徴検出部３１０に接続された遠隔サーバ（例えばＰｌａｔｆｏｒｍ−ａｓ−ａ−Ｓｅｒｖｉｃｅ（ＰａａＳ）サーバ、Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ−ａｓ−ａ−Ｓｅｒｖｉｃｅ（ＩａａＳ）サーバ、Ｓｏｆｔｗａｒｅ−ａｓ−ａ−Ｓｅｒｖｉｃｅ（ＳａａＳ）サーバ、又はクラウド型サーバ）又は遠隔画像データベースを含んでもよい。別の例では、撮像装置３２０は画像及び／又はビデオデータのフレームを取得するように構成されたデジタルスチルカメラ又はビデオカメラを含んでもよい。また別の例では、撮像装置３２０はグラフィック描画エンジン（例えばゲーミングシステム、画像描画ソフトウェア等）を有してもよく、訓練画像が撮像画像ではなく物体の生成画像である。
【００６１】
実施形態において、特徴検出部３１０は特徴検出アルゴリズムを訓練画像３５０に適用して訓練特徴３５２を生成するように構成される。各訓練特徴はその訓練特徴位置が訓練画像３５０内に存在する。例えば各訓練特徴位置は画素座標を含んでもよく、特徴検出アルゴリズムに応じた特徴記述子に記載されてもよい。特徴検出アルゴリズムは、ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｆｅａｔｕｒｅ  ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ）、Ｆａｓｔ  Ｒｅｔｉｎａ  Ｋｅｙｐｏｉｎｔ（ＦＲＥＡＫ）、Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔ（ＨＯＧ）、Ｓｐｅｅｄｅｄ  Ｕｐ  Ｒｏｂｕｓｔ  Ｆｅａｔｕｒｅｓ（ＳＵＲＦ）、ＤＡＩＳＹ、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｖａｒｉａｎｔ  Ｓｃａｌａｂｌｅ  Ｋｅｙｐｏｉｎｔｓ（ＢＲＩＳＫ）、ＦＡＳＴ、Ｂｉｎａｒｙ  Ｒｏｂｕｓｔ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｅａｔｕｒｅｓ（ＢＲＩＥＦ）、Ｈａｒｒｉｓ  Ｃｏｒｎｅｒｓ、Ｅｄｇｅｓ、Ｇｒａｄｉｅｎｔ  Ｌｏｃａｔｉｏｎ  ａｎｄ  Ｏｒｉｅｎｔａｔｉｏｎ  Ｈｉｓｔｏｇｒａｍ（ＧＬＯＨ）、Ｅｎｅｒｇｙ  ｏｆ  ｉｍａｇｅ  Ｇｒａｄｉｅｎｔ（ＥＯＧ）、Ｔｒａｎｓｆｏｒｍ  Ｉｎｖａｒｉａｎｔ  Ｌｏｗ−ｒａｎｋ  Ｔｅｘｔｕｒｅｓ（ＴＩＬＴ）特徴検出アルゴリズムの内の少なくとも１つを含んでもよい。
【００６２】
実施形態において、特徴検出部３１０は、所定の画像変換に応じて訓練画像３５０を少なくとも部分的に変換画像３６０に変換するように構成される。いくつかの実施形態では、特徴検出部３１０は所定の画像変換を選択するため、複数の画像変換をユーザに提示し、例えばユーザーインターフェース（不図示）を介したユーザの選択を受け付けるように構成されてもよい。いくつかの実施形態では、特徴検出部３１０は所定の画像変換が取得でき得るＡＰＩを含むか、そのような外部ＡＰＩを利用してもよい。所定の画像変換は、幾何変換（例えば、訓練画像を傾斜させる、切り取る、又は回転することを含む少なくとも１つの変換）及び／又は画像処理変換（例えば、ガウシアンフィルタ、カラー変換、又は非可逆圧縮を含む変換）の少なくとも１つを含んでもよい。いくつかの実施形態では、所定の画像変換は、例えば複数の幾何変換及び／又は画像処理変換を含む複合変換であってもよい。
【００６３】
所定の画像変換は、幅広い特徴を含んでもよい。数学的観点からすると、所定の画像変換は２Ｄ画像（例えば画素情報の２Ｄ配列）を新たな変換画像空間（例えば、より高次の画像空間）に変換する行列演算を含んでもよい。画像変換の例としては、幾何変換、光源変換、圧縮変換（例えば、非可逆、可逆等）、カラー変換、ガウシアンフィルタ、又はその他種類の変換を含む画像処理変換が挙げられる。
【００６４】
実施形態において、特徴検出部３１０は特徴検出アルゴリズムを変換画像３６０に適用することで変換特徴３６２を生成する。各変換特徴は変換特徴位置が変換画像内に存在する。例えば、各変換特徴位置は、変換画素座標を含んでもよく、特徴検出アルゴリズムに応じた特徴記述子により表現されてもよい。
【００６５】
実施形態において、特徴検出部３１０はその後、所定の画像変換に応じて訓練特徴の訓練特徴位置を変換画像内の対応する訓練特徴変換位置にマップ３５４するよう構成される。そして、変換特徴空間内に、訓練特徴の想定位置を決定する。
【００６６】
実施形態においては、特徴検出部３１０はその後、ロバスト特徴を選択してロバスト特徴群３７０をまとめる。各ロバスト特徴は、変換特徴の内の１つのものの変換特徴位置近傍に訓練特徴変換位置を有する訓練特徴を表す。例えば、ロバスト特徴群をまとめることは、訓練特徴変換位置から所定の閾値距離内の変換特徴位置を判定し、類似度に基づいて訓練特徴変換位置に関連した訓練特徴を変換特徴位置に関連した変換特徴と比較することを含む。類似度は、ユークリッド距離、ヘリンガー距離、ハミング距離の少なくとも１つに基づいてもよい。
【００６７】
いくつかの実施形態では、特徴検出部３１０は更に、クエリ画像との比較用にロバスト特徴群３７０を記憶することで、画像物体認識検索をしやすくするように構成されてもよい。例えば、メインメモリ装置３４０に記憶されたクエリ画像特徴データを使用して、クエリ画像特徴データと、持続ストレージ装置３３０及び／又はメインメモリ装置３４０に記憶され得る複数の訓練画像のロバスト特徴群との間の画像物体認識検索を実施してもよい。いくつかの実施形態では、ロバスト特徴群を記憶することで、例えばｋ−ｄツリー、スピルツリー又はその他最近隣ランキング技術に基づくロバスト特徴と、クエリ画像特徴との最近隣検索をしやすくしてもよい。
【００６８】
いくつかの実施形態では、特徴検出部３１０は、所定の画像変換の１つ以上の調整パラメータを調整して、第２ロバスト特徴群を当該調整済み調整パラメータに基づいて生成するよう、更に構成されてもよい。例えば、当該１つ以上の調整パラメータは、倍率、角度の少なくとも一方を含んでもよく、画像認識検索の１つ以上のテーマ特徴に基づいて自動的に調整されてもよい。いくつかの実施形態では、特徴検出部３１０は更に、画像テストライブラリに関連して当該調整済み調整パラメータが使用された際の認識効率に基づいて、当該調整済み調整パラメータを最適化するように更に構成されてもよい。例えば、当該調整済み調整パラメータは、訓練画像を含んでも、含まなくてもよい画像テストライブラリに基づいて検証されてもよい。
【００６９】
図４は、実施形態に係る、訓練画像内のロバスト特徴を特定するための例示的動作を示すフローチャートである。方法４００は、特徴検出部３１０のような、開示の特徴検出部としての役割又は機能を担うよう構成される又はプログラムされる１つ以上の演算装置により実行されることが理解されよう。例えば、特徴検出部は、各サーバが例えばＳＩＦＴ式画像分析パッケージで構成される、コンピュータサーバファームを含んでもよい。したがって、いくつかの実施形態では、特徴検出部は方法４００に応じた処理のために数百万もの訓練画像を取り込んでもよい。更に、特徴検出部は、方法４００に応じてリアルタイムなどで、ビデオデータの画像フレームを取得するような撮像装置（例えば、ビデオカメラ又はゲームコンソール）を含んでもよい。
【００７０】
ステップ４０２において、特徴検出アルゴリズムを訓練画像に適用することで訓練特徴が生成される。各訓練特徴は、訓練特徴位置が訓練画像内に存在する。いくつかの実施形態では、ＳＩＦＴ特徴検出アルゴリズムが利用される。但し、特徴検出アルゴリズムは更に、ＳＵＲＦ、ＤＡＩＳＹ、ＦＡＳＴ、Ｈａｒｒｉｓ  Ｃｏｒｎｅｒｓ、ＢＲＩＳＫ、ＴＩＬＴ、又はその他既存の、更には今後発明されるであろう特徴検出アルゴリズムを含んでもよい。訓練特徴は、画素座標（例えば直交座標のｘ軸、ｙ軸で表される座標）で表現され得る訓練特徴位置を訓練画像内に有する。更に、訓練特徴は画像が認識又はマッチされるような記述子を含んでもよい。例えば、ＳＩＦＴ特徴検出アルゴリズムの構成に合わせて、ＳＩＦＴ特徴は１２８次元ベクトル又は３６次元ベクトルを含んでもよい。
【００７１】
ステップ４０４において、所定の画像変換に応じて、訓練画像は少なくとも部分的に変換画像に変換される。例えば、変換画像は訓練画像から得られたコンピュータ生成画像であってもよい。そのため、必要であれば又は好ましいのであれば、同一のテーマについて複数の画像を撮影したり、撮影し直したりせずに、追加で変換画像を生成できる。いくつかの実施形態では、訓練画像全体を変換するのではなく、訓練画像の選択した部位、例えば選択又は決定された訓練特徴位置群周辺の部位を変換してもよい。
【００７２】
ステップ４０６において、特徴検出アルゴリズムを変換画像に適用することで、変換特徴が生成される。ここで、各変換特徴は変換特徴位置を変換画像内に有する。例えば、特徴検出アルゴリズムは訓練画像の摂動による新たに観察される特徴を生成したり、訓練画像で観察されていたものと同一の特徴を生成したりしてもよいし、或いは訓練画像内のものと同様な特徴を生成できなかったりする。訓練特徴の場合と同様、各変換特徴は記述子と、変換画像内の変換特徴位置とを有する。変換特徴位置は、変換画像空間内の変換画素座標として数値化されてもよい。
【００７３】
ステップ４０８において、所定の画像変換に応じて訓練特徴の訓練特徴位置は、変換画像内の対応する訓練特徴変換位置にマップされる。例えば、Ｔを変換とすると、（ｘ'、ｙ'）＝Ｔ・（ｘ、ｙ）として、訓練画像（ｘ、ｙ）の画素が（ｘ'、ｙ'）に変換される。即ち、ステップ４０８では、変換により摂動後にも変換画像内に残存する元々存在した訓練特徴の場所が推定される。そして、特徴検出部は変換画像内の訓練特徴があると想定される位置のリストや、変換画像で検出された特徴のリストをまとめてもよい。
【００７４】
ステップ４１０において、ロバスト特徴を選択することで、ロバスト特徴群がまとめられる。各ロバスト特徴は訓練特徴変換位置が変換特徴のうちの一つのものの変換特徴位置の近傍にある訓練特徴を示す。そして、特徴検出部は、訓練特徴と変換特徴とを対応付ける。訓練特徴と変換特徴との対応付けが構築された特徴がロバストと認められる。訓練特徴と変換特徴との対応付けは、各種方法で実現されてもよい。いくつかの実施形態では、対応付けは推定訓練特徴変換位置と変換特徴位置（例えばユークリッド距離等）との間の距離を測定することを含んでもよい。当該距離が閾値（例えば調整可能パラメータ）未満である場合、ロバスト特徴と認められる。更に、推定訓練特徴変換位置と変換特徴位置との間の距離は、類似度に基づくものであってもよい。例えば、近接訓練特徴と、変換特徴の記述子を例えば正規点乗積として比較してもよく、その場合点乗積が１に近いほど記述子が類似しているとされる。いくつかの実施形態では、類似度測定はハミング距離（例えば記述子ベクトルの各成分値の配置に基づく）、ユークリッド距離及び／又はヘリンガー距離を含んでもよい。
【００７５】
ステップ４１６で、ロバスト特徴群を例えばコンピュータ可読媒体に記憶してもよい。例えば、ロバスト特徴群は、サーバに記憶され、遠距離（リモート）物体認識サービスに利用されてもよいし、携帯又はモバイル装置（例えばスマートフォン）で展開するようパッケージ化されてもよい。いくつかの実施形態では、ロバスト特徴群はツリー構造（例えばスピルツリー、ｋ‐ｄツリー等）として記憶されてもよい。その場合ロバスト特徴記述子はツリー構造の葉ノードを含む。更に、ロバスト特徴群と共に、画像物体認識検索をしやすくするその他情報も記憶されてもよい。当該情報の例としては、該当記述子に関する情報、該当記述子が得られる画像部位、及び／又は重要画像フレームに関する情報が挙げられる。
【００７６】
一実施形態において、ロバスト特徴群をまとめることは、二段階処理を含む。当該処理は、訓練特徴変換位置から所定の閾値距離内にある変換特徴位置を判定することと、類似度に基づいて訓練特徴変換位置に関連する訓練特徴と、変換特徴位置に関連する変換特徴とを比較することを含む。例えば、訓練特徴変換位置から所定の閾値距離内にある変換特徴位置を判定することは、変換特徴と変換訓練特徴の画素位置同士の閾値幾何学的距離に基づいてもよい。画素位置が所定の閾値距離内にあれば、訓練特徴の記述子と変換特徴の記述子は、ハミング距離、ユークリッド距離、及び／又はヘリンガー距離のような類似度に基づいて比較してもよい。
【００７７】
任意のステップ４１２において、所定の画像変換の１つ以上の調整パラメータが調整され、任意のステップ４１４にて、当該調整済み調整パラメータに基づいて第２ロバスト特徴群が生成されてもよい。いくつかの実施形態では、当該１つ以上の調整パラメータは、倍率、角度の少なくとも一方を含んでもよく、画像認識検索のテーマ特徴の１つ以上に基づいて自動的に調整されもよい。例えば、線形縮小倍率は、訓練画像を縮小するべき割合を示す０から１の間の変数を含んでもよい。このように。１つ以上の調整パラメータを調整することは、認識性能レベルを保った状態で、望ましい認識データベースサイズのサイズダウンを可能とするパラメータ値を決定することを含む。更にいくつかの実施形態では、各テーマの種類（例えば玩具、コンシューマーグッズ、車両、衣料品、ゲーム、装置、人、建物等）、又は各特徴検出アルゴリズムは、それぞれ最適パラメータが異なっていてもよい。１つ以上の既知のテーマ特徴に基づく同一の画像変換についても同じである。
【００７８】
いくつかの実施形態では、調整済み調整パラメータを、画像テストライブラリと関連して調整済み調整パラメータが使用された際の認識効率に基づき最適化してもよい。例えば、各種ロバスト特徴群は、どの調整パラメータが最適認識性能（例えば最小有効認識ライブラリ、ライブラリサイズ、認識効率、レイテンシ等）を提供するかを判定するために、画像テストライブラリに基づいてテストされてよい。いくつかの実施形態では、調整済み調整パラメータは訓練画像を含まない画像テストライブラリに基づいて検証されてもよい。
【００７９】
図５は、実施形態に係る、最適変換パラメータ群を決定するための画像物体認識検索クエリ画像の一例を示す。本稿の実施形態では、近物体及び遠物体認識検索の両方に有効なロバスト特徴を特定する。遠物体認識は、対称物体がクエリ画像の視野内の小さい部位を示す場合に対応する。例えば、都市景観画像における１つの建物、部屋の監視カメラ／ＣＣＴＶビデオフレームに移された１人の人物、組み立てライン品質管理カメラのビデオフレームの各ワークステーション、又は高速道路監視交通カメラのビデオフレームの車両交通が対象となる場合である。近物体認識は、対象物体又は多くの場合には対象物体の一部が、クエリ画像の視野範囲すべて又はほぼ全てを占める場合に対応する。この場合の対象物体の例としては、印刷ページの文書、監視カメラ／ＡＴＭのビデオモニタのＣＣＴＶビデオフレーム内の人物、又は医療診断或いは手術カメラシステムのビデオフレーム／画像が挙げられる。一例として、図５は遠物体認識に利用されるクエリ画像５００，５０２，５０４，５０６の例と、近物体認識に利用されるクエリ画像５０８，５１０，５１２，５１４の例を示す高テクスチャ物体（図２Ａ参照）の画像を示す。図示の通り、典型的な遠物体及び近物体認識クエリ画像は回転、傾斜、ぼかし、切り取り等の処理又はその任意の組合せが施されてもよい。更に、画像物体認識検索の既知のテーマに基づき、クエリ画像の予想画質が判断されてもよい（例えば、子供用玩具に関連した検索に関連すると知られるクエリ画像は、クエリ画像撮像装置を操作する子供の想定される技能に応じて切り取られたり、ぼかされたり、傾斜されたり等することが多い）。
【００８０】
実施形態において、訓練画像に適用される所定の画像変換は、遠物体認識及び近物体認識に有用なロバスト特徴を生成するよう調整可能である。それにより、一連の分析画像が収集され、妥当な認識手法又は効率が得られるような変換用の最適パラメータが決定される。これら分析画像は、対象物体の撮像画像であり、遠シーケンス画像５００，５０２，５０４，５０６及び近シーケンス画像５０８，５１０，５１２，５１４が該当する。高テクスチャ画像（図２Ａ参照）分析用に、１６１枚の遠シーケンス画像（すべては図示しない）と、１１３枚の近シーケンス画像（すべては図示しない）が使用された。
【００８１】
最適化のための最適化測定値（Ｙ）は以下の通り定義される。
【数１】
0006448767.tif 000002
【００８２】
式中、＃  ｏｆ  Ｕｓｅｆｕｌ  Ｆｅａｔｕｒｅｓは、本稿の実施形態において、所定の変換パラメータ群に対して決定されるロバスト特徴を示し、＃  ｏｆ  Ｔｒａｉｎｉｎｇ  Ｆｅａｔｕｒｅｓは、訓練画像から得られる特徴（例えばＳＩＦＴ特徴）の数を示す。＃  ｏｆ  Ｔｅｓｔ  Ｉｍａｇｅｓは、所定のシーケンス（例えば近シーケンス又は遠シーケンス画像）の画像の総数を示す。＃  ｏｆ  Ｒｅｃｏｇ．Ｔｅｓｔ  Ｉｍａｇｅは、一致した数を示す。
【００８３】
Ｙの初項は、Ｙの値を低減する傾向にあることが理解される。これは、認識データベースのサイズダウンという観点からすると好ましい。Ｙの第２項は、常に１以上であるが、１の場合は全ての画像が認識されたことを示す。したがって、Ｙの値が低いと、より好ましい変換パラメータとなるよう、それら項のバランスをとることで、変換パラメータが有効な値の範囲となるようにする（例えば、特徴が０の場合、Ｙは０となり、有効ではない）。
【００８４】
画像認識性能について、図２Ａから２Ｃで得られたロバスト特徴群が、対応するテーマのテスト画像を３００枚以上記憶するテストライブラリと比較される。認識性能（例えば、テスト画像数（Ｎｔ）をロバスト特徴の一致数（Ｍｃ）で除算した結果＝１００×Ｍｃ／Ｎｔ）は、それぞれの画像について、７９％、７６％、７１％であった。それに対して、元の訓練画像を使用した場合は８５％、８２％、７１％となった。最初の２画像については性能の低下は６％に抑えられた。実施形態において、性能は同一出願人の２０１３年１２月１２日に出願された、名称「画像認識検証」という米国仮出願第６１／９４６６５０号に記載された、１つ以上の検証器を使用して向上可能である。例えば、典型的な認識技術（例えばＳＩＦＴ特徴検出アルゴリズム（検証器不使用））で、６６１枚の画像をテストした。最初はデータベースが１，３７９，５３１個の特徴を記憶し、サイズが２５３．７ＭＢであった。フィルタ無しのＳＩＦＴ特徴検出アルゴリズムを使用した標準的技術により、８１％の確率でファーストマッチを正しく特定できた。本稿の実施形態を利用すると、データベースは、８０％の線倍率により特徴数６５４，８２８個、サイズが１２１．９ＭＢまでサイズダウンされた。５０％以上のサイズダウンである。検証器を認識ステップに組み込むことで、ファーストマッチのヒット数が７９％となったが、認識性能としては些細な違いである。更に、検証器を利用しても、データベースサイズが低減しているため、画像マッチング処理におけるレイテンシも短縮された。
【００８５】
図６Ａは、実施形態に係る、高テクスチャ訓練画像についての、変換最適化結果を示すグラフである。図６Ａにおいて、グラフ６００は、最適化測定値Ｙが、図２Ａに示す高テクスチャ訓練画像に対して適用される各種変換について決定されるテストの結果を示す。テストにおける高テクスチャ訓練画像は、１１４９個の訓練特徴を含んでいた。クエリ画像は１６１枚の遠シーケンス画像と、１１３枚の近シーケンス画像を含んでいた。データには、最適化測定値Ｙによると、各種変換の中で、遠シーケンス認識に対しては訓練画像を６７％縮小することが最も好ましいものと示されているが、倍率０．８（即ち８０％）の方が、近シーケンス画像及び遠シーケンス画像両方を考慮するとより好ましい設定である。これは、当該分野においては、消費者が遠くの画像よりも、アップのクエリ画像（例えばショッピング用検索のための製品のクエリ画像）を撮影することの方が多いと思われるためである。但し、用途によっては、遠シーケンスクエリ画像が求められることもあり、その場合はより遠シーケンス画像向きの倍率（例えば倍率０．６７）が選択されてもよい。
【００８６】
図６Ｂは、実施形態に係る、中テクスチャ訓練画像に対する変換最適化結果を示すグラフである。図６Ｂのグラフ６１０は、最適化測定値Ｙが、図２Ｂに示す中テクスチャ訓練画像に対して適用された各種変換について決定されたテストの結果を示す。ここでは、中テクスチャ訓練画像は７０７個の訓練特徴を含んでいた。クエリ画像は２９９枚の遠シーケンス画像と、３０７枚の近シーケンス画像を含んでいた。図示の通り、高テクスチャの場合と同様、テストされた遠シーケンス画像、近シーケンス画像の両方に対して最適な変換は、訓練画像の８０％縮小であった。
【００８７】
図６Ｃは、実施形態に係る、低テクスチャ訓練画像に対する変換最適化結果を示すグラフである。図６Ｃのグラフ６２０は、最適化測定値Ｙが、図６Ｃに示す低テクスチャ訓練画像に対して適用された同じ変換群について決定されたテストの結果を示す。低テクスチャ画像は１８６個の訓練特徴を含んでいた。テストにおいて、クエリ画像は２２１枚の遠シーケンス画像と、１６６枚の近シーケンス画像を含んでいた。上述の２つの場合と同様、遠シーケンス画像、近シーケンス画像の両方に対して最適な変換は、訓練画像の８０％縮小であった。
【００８８】
このように、例示的なテストによると、対応する認識データベースを大幅にサイズダウンした上での幅広い種類の物体（例えば高、中、低テクスチャ画像）に対する画像認識において、倍率０．８が有効であることが示された。
【００８９】
したがって、本稿の実施形態は、１つ以上のウェブサーバで実現され得る大規模画像認識システムに関する、各種メモリフットプリントや精度についての問題の解決に有用で有り得る（例えば、四千万枚以上の文書画像データセットを含むような規模のシステムにおいて、毎秒５から１０フレームという、画像認識検索回数の向上を実現する）。性能を損なわずにデータベースサイズが５０％低減できるということは、対象市場において又は使用状況に応じて必要となった又は望ましい場合に、データベース内で認識可能な物体数を倍増できることでもあることが理解されよう。
【００９０】
いくつかの実施形態では、ロバスト特徴群は自動的に特定されてもよい。例えば、特徴検出部３１０及び／又は撮像装置３２０は、例えば人物、ソーシャルメディアプロフィール等の画像を取り込むため、画像を求めてウェブサイト中を調べ回るウェブボットとして動作してもよい。更に、当該ボットは、都市景観、街並み、又は建物内の画像（例えばグーグル（登録商標）ストリートビューの画像）で動作して、対応する建物や場所の特徴を取り込んでもよい。いくつかの実施形態では、特徴検出部３１０及び／又は撮像装置３２０は、ウェブボットによる画像や動画の取得中にリアルタイムでロバスト特徴群を生成するよう構成され、又はその他種類の自動システムであってもよい。
【００９１】
各種実施形態では、特徴検出部３１０及び／又は撮像装置３２０は、例えば市場基準のような対象基準に応じて複数の所定の画像変換から選択してもよい。例えば子供を対象とした玩具は、特徴が観察しにくいパステルカラーのプラスチックを含む場合がある。その場合、所定の画像変換はエッジ強調変換を含むように選択されてもよい（例えば、その他エッジ以外の特徴が特定しにくい場合に、得られるロバスト特徴群が、エッジ付近又はその他輪郭上の特徴を含み得るようにする物体のエッジ特性についての記述子を強調するような変換）。このように、所定の画像変換は、望ましい物体認識特性を強調するように選択されてもよい。更に、いくつかの実施形態では、選択された所定の画像変換は、特徴検出アルゴリズムに一致させなくともよい。例えば、所定の画像変換は、エッジ特徴（及びエッジ特徴記述子）を判定するように選択されて、変換画像に適用される特徴検出アルゴリズムはその他種類の特徴記述子（例えば、ＳＩＦＴ記述子）を生成するよう構成されてもよい。
【００９２】
各種実施形態は、所定の画像変換に対して、ロバスト性を判定することで更に改善できる。例えば、ロバスト性は、距離又はその他距離以外の値に基づき測定されてもよい。いくつかの実施形態では、ロバスト性測定値は、例えば相対距離、信頼スコア、類似度等を示唆する複数の値を含んでもよい。更に、検出される各特徴は、例えば１つ以上の所定の画像変換に対するそのロバスト性測定値及び／又はスコアを示唆するタグを含んでもよい。例えば、ロバスト特徴は、スケーリング、傾斜、回転、又はその他変換についての１つ以上のロバスト性測定値を含んだりしてもよい。いくつかの実施形態では、ロバスト性測定値は、訓練画像のテーマ特徴（例えば玩具、医療、セキュリティ等）を反映したものであってもよい。これにより、異なる画像変換に対するロバスト性が示唆される。例えば、ロバスト性測定値は玩具の画像（例えば通常低テクスチャ多エッジ）が、異なる画像変換に応じてどのように異なる反応をするかを反映してもよい。そのロバスト性測定値を、画像認識検索中に利用してもよい。例えば、ロバスト特徴は、画像認識検索で使用され、ロバスト性測定値メタデータは画像認識検索の状況の分類に使用されてもよい（例えば、これによりロバスト特徴に対応し得る画像認識検索メタデータが生成される）。したがって、例えばスケーリング変換用ロバスト性測定値メタデータは、カメラから対象物体までの推定距離を判定するために使用されてもよい。
【００９３】
各種実施形態は、静止画を含む印刷媒体のような印刷媒体に利用可能である。特徴検出部３１０及び／又は撮像装置３２０を統合して、印刷媒体生成用のグラフィックアプリケーションとしてもよい。例えば、グラフィックアーティストは、各種実施形態の内１つ以上に応じて動作するよう設計されたグラフィックアプリケーション（例えばアドビ（登録商標）、イラストレーター（登録商標））を使用して、広告用印刷媒体を作製してもよい。即ち、グラフィックアーティストがグラフィック表示（例えば広告用印刷媒体）を作製する際、グラフィックアプリケーションは描画用のロバスト特徴群の位置及び／又は描画に関連したロバスト特徴の分布を提示するインターフェースを提供してもよい。このように、当該アーティストは、例えばキャンペーン前に又はキャンペーン中にリアルタイムで描画用のロバスト特徴群についての要素をカスタマイズ可能となる。同様にゲームデザイナー、ロゴデザイナー、又はその他クリエイティブ職従事者は、特徴検出部３１０及び／又は撮像装置３２０を含むグラフィックアプリケーションを使用して、グラフィック表示（例えばゲーム又はロゴ中に描かれるグラフィック）を制作して、グラフィックアプリケーションは当該表示に関連したロバスト特徴群の位置及び／又は描画に関連したロバスト特徴の分布を提示するインターフェースを提供してもよい。
【００９４】
各種実施形態は、フル３Ｄ物体に利用されてもよい。例えば、３Ｄ物体（例えばアクションフィギュア、車両等）は、視点によって異なる特徴を有し得る。３Ｄ物体の動画は、様々な視点から撮影され得る。当該動画のフレームは、その後訓練画像として扱われ、本開示の処理が施されてもよい。更に、メインメモリ、持続ストレージ装置、サーバ、ユーザーデバイスを含む大規模画像認識システムのインフラ全体は、各種実施形態により、画像認識クエリをより効率的に処理するようにできる。
【００９５】
本稿記載のシステム、装置、方法は、デジタル回路、又は公知のコンピュータプロセッサ、メモリユニット、記憶装置、コンピュータソフトウェア、及びその他構成要素を利用した１つ以上のコンピュータにより実現されてもよい。通常、コンピュータは、指示を実行するプロセッサと、指示やデータを記憶する１つ以上のメモリを有する。コンピュータは更に、磁気ディスク、内蔵ハードディスク、リムーバブルディスク、光磁気ディスク、光ディスク等の内の１つ上のような、大容量記憶装置を１つ以上有するか、それに接続されてもよい。
【００９６】
本稿記載のシステム、装置、方法は、クライアントサーバ構成で動作するコンピュータにより、実現可能である。通常、当該システムにおいて、クライアントコンピュータはサーバコンピュータに対し遠距離に設けられ、互いにネットワークを介してやり取りを行う。クライアントサーバ構成は、クライアント及びサーバコンピュータそれぞれで動作するコンピュータプログラムで定義、制御されてもよい。
【００９７】
図７は、本稿記載のシステム、装置、方法を実現するための例示的なクライアントサーバ構成の上位ブロック図を示す。クライアントサーバ構成７００は、サーバ７２０とネットワーク７３０を介して通信するクライアント７１０を有し、クライアント７１０とサーバ７２０との間に、想定され得る１つのロバスト特徴特定タスクがある場合を示す。例えば、上述の各種実施形態に応じて、クライアント７１０は、サーバ７２０と通信して、訓練画像に対するロバスト特徴群を受信したり、クエリ画像を受信したり、（ＳＩＦＴ）記述子によりクエリ画像の特徴を抽出／対応付けしたり、クエリ画像に基づいて画像物体認識検索をしやすくしたり、更に／或いは全クエリ画像データをサーバ７２０に送信したりするよう構成されてもよい。サーバ７２０は、特徴検出アルゴリズムを訓練画像に適用して訓練特徴を生成したり、所定の画像変換に応じて訓練画像を少なくとも部分的に変換画像に変換したり、特徴検出アルゴリズムを変換画像に適用して変換特徴を生成したり、所定の画像変換に応じて、訓練特徴の訓練特徴位置を、変換画像内の対応する訓練特徴変換位置にマップしたり、ロバスト特徴を選択してロバスト特徴群をまとめたりするよう構成されてもよい。いくつかの実施形態では、サーバ７２０は、クライアント７１０からクエリ画像データを受信したり、クエリ画像データと訓練画像のロバスト特徴群に基づいて画像物体認識検索を実施したり、検索結果をクライアント７１０に送信したりするように更に構成されてもよい。図７に示す例示的なクライアントサーバ構成が、本稿記載のシステム、装置、方法を実現するために採用可能な多くのクライアントサーバ構成の一つであることが、当業者には理解されよう。したがって、図７に示すクライアントサーバ構成は、あらゆる面で限定的と解されるべきではない。クライアント装置７１０の例としては、携帯電話、キオスク、ＰＤＡ、タブレット、玩具、車両、ウェブカメラ、又はその他種類のコンピュータ装置が挙げられる。
【００９８】
本稿記載のシステム、装置、方法は、例えば非一時的機械読取可能記憶装置のような情報媒体で実施され、プログラム可能プロセッサにより実行されるコンピュータプログラムプロダクトを使用して実現されてもよい。図４のステップを１つ以上含む本稿記載の方法ステップは、当該プロセッサにより実行可能な１つ以上のコンピュータプログラムを使用して実現されてもよい。コンピュータプログラムは、直接的、間接的にコンピュータ内で利用され所定の動作を実行したり、所定の結果を得たりしたりするために使用されるコンピュータプログラム指示群である。コンピュータプログラムは、コンパイラ言語、インタプリタ言語を含む、任意の形態のプログラム言語で記載されてもよく、任意の形態で展開されてもよい。即ち、スタンドアロンプログラム、モジュール、コンポーネント、サブルーチン、又はコンピュータ環境での使用に適したその他ユニットでとして展開可能である。
【００９９】
図８は、本稿記載のシステム、装置、方法を実現するため使用され得る例示的装置の上位ブロック図を示す。装置８００は、持続ストレージ装置８２０とメインメモリ装置８３０とに動作可能に接続されたプロセッサ８１０を有する。プロセッサ８１０は、装置８００の動作全体を、当該動作を定義するコンピュータプログラム指示を実行して制御する。コンピュータプログラム指示は、持続ストレージ装置８２０又はその他コンピュータ可読媒体に記憶されて、その実行が求められた際に、メインメモリ装置８３０に展開されてもよい。例えば、特徴検出部３１０及び撮像装置３２０は、コンピュータ８００のコンポーネントを１つ以上含んでもよい。したがって、図４の方法ステップは、メインメモリ装置８３０及び／又は持続ストレージ装置８２０に記憶されたコンピュータプログラム指示によって定義され、コンピュータプログラム指示を実行するプロセッサ８１０により制御される。例えば、コンピュータプログラム指示は、図４の方法ステップに定義されるアルゴリズムを実行するよう当業者にプログラム可能なコンピュータにより実行可能なコードとして実現できる。したがって、コンピュータプログラム指示を実行することで、プロセッサ８１０は図４の方法ステップに定義されるアルゴリズムを実行する。装置８００は更に、その他装置とネットワークを介して通信するための１つ以上のネットワークインターフェース８８０を有する。装置８００は更に、ユーザに装置８００との相互作用を可能とする１つ以上のＩ／Ｏ装置８９０（例えばディスプレイ、キーボード、マウス、スピーカ、ボタン等）を有してもよい。
【０１００】
プロセッサ８１０は汎用及び特殊マイクロプロセッサの両方を有してもよく、装置８００の単一又は複数のプロセッサであってもよい。例えばプロセッサ８１０は、１つ以上の中央処理装置（ＣＰＵ）を有してもよい。プロセッサ８１０、持続ストレージ装置８２０、及び／又はメインメモリ装置８３０は１つ以上の特定用途向け集積回路（ＡＳＩＣ）及び／又は１つ以上のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）を含んでも、それにより補助されても、又はそれに内蔵されてもよい。
【０１０１】
持続ストレージ装置８２０及びメインメモリ装置８３０はそれぞれ、有形非一時的コンピュータ読取可能記憶媒体を含んでもよい。持続ストレージ装置８２０及びメインメモリ装置８３０はそれぞれ、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダブルデータレートシンクロナスダイナミックランダムアクセスメモリ（ＤＤＲ  ＲＡＭ）、又はその他ランダムアクセスソリッドステートメモリ装置のような高速ランダムアクセスメモリを含んでもよい。持続ストレージ装置８２０及びメインメモリ装置８３０は、内蔵ハードディスク又はリムーバブルディスクのような磁気ディスク記憶装置、光磁気ディスク記憶装置、光ディスク記憶装置、フラッシュメモリ装置、消去可能プログラマブルリードオンリーメモリ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）のような半導体メモリ装置、コンパクトディスクＲＯＭ（ＣＤ−ＲＯＭ）、デジタル多目的ディスクＲＯＭ（ＤＶＤ―ＲＯＭ）ディスク、又はその他不揮発性ソリッドステート記憶装置の内の１つのような、不揮発性メモリを含んでもよい。
【０１０２】
Ｉ／Ｏ装置８９０は、プリンタ、スキャナ、ディスプレイ画面等の周辺機器を含んでもよい。例えば、Ｉ／Ｏ装置８９０は、ユーザに情報（例えば選択用の複数の画像変換）を提供するためのブラウン管（ＣＲＴ）やプラズマ又は液晶表示（ＬＣＤ）モニタのような表示装置や、ユーザが装置８００に入力できるようにするキーボードや、マウス又はトラックボールのようなポインティングデバイスを含んでもよい。
【０１０３】
特徴検出部３１０及び撮像装置３２０を含む、本稿記載の一部又は全てのシステム及び装置は、装置８００のような装置により実行されたり、更に／或いは当該装置に内蔵されたりしてもよい。
【０１０４】
当業者であれば、コンピュータ又はコンピュータシステムは、更にその他構造を有したり、その他構成要素を含んで実現されたりしてもよく、図８は当該コンピュータのいくつかの構成要素を例示的に示す上位表示であることが理解されよう。
【０１０５】
上述の明細書は、あらゆる面で説明用かつ例示的あり、限定的でなく、本稿開示の発明の範囲は、明細書の内容によって決定されるものではないことが理解されよう。当該範囲は、請求項により、特許法で許される最大限の範囲で解釈されるものである。本稿にて図示、説明した実施形態は、本発明の原理を説明するために供されるのみであり、当業者により本発明の範囲、精神から逸脱することなく、様々な変形が可能であることが理解されよう。当業者であれば、本発明の範囲、精神から逸脱することなく、その他の特徴の組合せを実現できる。
【図１】
0006448767.tif 000003
【図２Ａ】
0006448767.tif 000004
【図２Ｂ】
0006448767.tif 000005
【図２Ｃ】
0006448767.tif 000006
【図３】
0006448767.tif 000007
【図４】
0006448767.tif 000008
【図５】
0006448767.tif 000009
【図６Ａ】
0006448767.tif 000010
【図６Ｂ】
0006448767.tif 000011
【図６Ｃ】
0006448767.tif 000012
【図７】
0006448767.tif 000013
【図８】
0006448767.tif 000014