JP5714599B2 - イメージ認識のための記述子パッチの高速部分空間射影 - Google Patents

イメージ認識のための記述子パッチの高速部分空間射影 Download PDF

Info

Publication number
JP5714599B2
JP5714599B2 JP2012542206A JP2012542206A JP5714599B2 JP 5714599 B2 JP5714599 B2 JP 5714599B2 JP 2012542206 A JP2012542206 A JP 2012542206A JP 2012542206 A JP2012542206 A JP 2012542206A JP 5714599 B2 JP5714599 B2 JP 5714599B2
Authority
JP
Japan
Prior art keywords
descriptor
sparse
feature point
patch
feature
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.)
Expired - Fee Related
Application number
JP2012542206A
Other languages
English (en)
Other versions
JP2013513168A (ja
Inventor
ハムシシー、オヌル・シー.
レズニク、ユリー
ホン、ジョン・エイチ.
バドダディー、サンディープ
リー、チョン・ユー.
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2013513168A publication Critical patent/JP2013513168A/ja
Application granted granted Critical
Publication of JP5714599B2 publication Critical patent/JP5714599B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Burglar Alarm Systems (AREA)

Description

米国特許法第119条の下での優先権の主張
本特許出願は、双方とも、本特許出願の譲受人に譲渡され、引用によりこの出願中に明示的に組み込まれる、2009年12月2日に出願された「Fast Subspace Projection of Descriptor Patches for Image Recognition」の名称の米国仮出願第61/265,950号、および、2010年11月11日に出願された「Fast Descriptor Extraction in Scale-Space」の名称の第61/412,759号に優先権を主張する。
1つの特徴はコンピュータ画像に関係し、より具体的には、イメージの認識や検索の性能、処理、および/または、圧縮を向上するための方法と技術に関する。
種々の応用は、視覚的に表現されるもの(例えば、イメージまたは画像)の中のオブジェクト(物体)を識別することができる機器やプロセッサを持つことから利益を受けることができる。コンピュータ画像の分野は、イメージの中のオブジェクトや特徴を識別することを許容する技法および/またはアルゴリズムを提供しようと努めており、そこでは、オブジェクトや特徴は、1またはそれより多くの特徴点(keypoint)を特定する記述子により特徴づけられ得る。また、これらの技法および/またはアルゴリズムは、他の応用もある中で、顔認識、オブジェクト(物体)検出、イメージマッチング、3次元構造物の建造、ステレオ・コレスポンデンス、および/または、動き追跡(モーショントラッキング)に応用される。一般に、オブジェクトや特徴の認識は、特徴識別、イメージ検索、および/または、オブジェクト認識の目的のため、イメージの中の注目すべき点(points of interest)(特徴点とも呼ばれる)を特定することを含む。好ましくは、特徴点は、それらがイメージスケール(拡大/縮小の尺度)の変化および/または回転に対して不変であり、相当な範囲の歪み、視点の変化、および/または、照度におけるノイズや変化を通じても一致する頑強性を与えるよう選択され、および/または、処理され得る。さらに、1つの特徴が、複数のターゲットイメージからの特徴の大きなデータベースに対し、高い蓋然性をもって正しく一致がとられ得るという意味で、イメージ検索やオブジェクト認識のようなタスクのためによく適合されるため、特徴記述子は、なるべく、弁別的であることが好ましい。
イメージにおける特徴点が検出され、位置決めされた後、それらは、種々の記述子を使うことによって特定され、または記述される。例えば、記述子は、例えば、他のイメージの特徴もある中で、形、色、きめ(texture)、回転、および/または、動きのようなイメージの中のコンテンツの視覚的な特徴を表すことができる。記述子は、1つの特徴点と、当該特徴点のまわりの局地的に近くのものとを表してもよい。記述子抽出の目標は、特徴点の周りの局所的な情報の頑強で、ノイズのない(ノイズフリー)表現を得ることである。これは、ノイズフリーなプリンシパルコンポーネントアナリシス(Principal Component Analysis (PCA))の部分空間に記述子を射影することによって行われ得る。PCAは、データの射影による最も大きな分散が第1の軸(第1主座標とよばれる)上に位置するようになる、第2の最も大きな分散が第2の軸(第2主座標)上になる、等のように、データ(例えば、イメージの中の特徴点)を新しい座標系に変換する直交線形変換を含む。しかし、そのようなPCA部分空間への射影は、高次元の射影ベクトルを用いる計算上複雑な内積を必要とする。
特徴点に対応し、記述子により示される個々の特徴は、既知のオブジェクトからの特徴のデータベースと一致がとられる。従って、一致検索システムは、3つのモジュール:特徴点検出、特徴記述子、および一致の位置決め、に分けられることができる。これら3つの論理モジュールにおいて、記述子の構造の複雑さや次元数は、特徴マッチングシステムの性能に直接かつ大きなインパクトを与える。様々な記述子が、それぞれ違った利点とともに、提案されている。スケールに不変な特徴変換(Scale invariant feature transform (SIFT))は、近くのものの中の主要な向きに揃えられ、検出される特徴点σのスケールレベルに比例する大きさにされる12σ x 12σのパッチ(区画)を開く。この利用域における傾斜の値(gradient value)各セルにおいて8ビン(bin)の向きのヒストグラムをもつ4 x 4のセルの中で集計される。PCA−SIFTは、近くのものにおける傾斜の値が非常に小さな部分空間において表現され得ることを示す。
記述子抽出手順の多くは、ノイズを除去し、認識精度を改善するために、次元数削減の利点で一致している。しかし、記述子を低い次元の部分空間に射影することに関連する計算上の大きな複雑さ、その実用的な使用を妨げている。例えば、PCA−SIFTパッチサイズは39 x 39であり、それは、xとy方向での勾配値を考慮すれば、239次元の投射ベクトルに帰結する。従って、クエリ(問い合わせする、照会する)イメージにおける各記述子は、d次元部分空間への投射のために、2392*d回の乗算と加算を必要とする。これは、パワーのあるサーバ側の機器にとって大きな非効率を生じないが、それは、移動体電話のような限られた処理資源をもつ実施形態においてボトルネックになり得る。
そのような特徴記述子は、益々、リアルタイムのオブジェクト(物体)認識。3次元再構築、パノラマ・スティチング(panorama stitching)、ロボティック・マッピング(robotic mapping)、ビデオトラッキング(video tracking)、および類似のタスクにおける用途を見出しつつある。用途に応じて、特徴記述子(または同等なもの)の送信および/または記憶は、オブジェクト検出の計算速度、および/または、イメージデータベースのサイズを制限し得る。移動体デバイス(例えば、カメラ付き電話、移動電話、等)、または、分散型のカメラネットワークに関連させてみると、かなりの量の通信および処理資源(リソース)が、ノード間での記述子抽出に費やされ得る。記述子抽出の計算上の集中した処理は、移動電話のような資源が限られる装置上での用途を妨げ、または難しくする傾向にある。
従って、局所的な特徴記述子を早くかつ効率的に生成するための方法に対するニーズがある。
以下は、いくつかの実施形態の基本的な理解を与えるために、1またはそれより多くの実施形態の簡略化した概要を示す。この概要は、予想される全ての実施形態の広範な全体像をではなく、意図されるところは、全ての実施形態の主要な、または、重要な要素を特定することでなく、また、いかなる、または全ての実施形態の範囲の輪郭を描くことでもない。その唯一の目的は、後で提示されるより詳細な記述への序章として、簡略化した形で1またはそれより多くの実施形態のいくつかのコンセプト(概念)を提示することにある。
方法と装置は、特徴記述子を生成するために提供される。あらかじめ生成される、1組のスパース(sparse:疎)投射ベクトルが得られる。スパース投射ベクトルは、イメージとは独立に生成され得る。スパース投射ベクトルの各々は、イメージのための平滑化カーネル(smoothening kernel)のスケールに抑えられる。スパース射影ベクトルの各々は、目的関数を最大化する、または最小化するために役立つ。目的関数は、トレーニング用(training:学習用)イメージの組に係る複数のスケールレベルを通した画素情報の自己相関行列の最大化であってよい。空間射影ベクトルは、大多数のゼロ要素と複数の非ゼロ要素を含む。非ゼロ要素は、分散最大化の手順により得られる。
また、イメージのためのスケール空間が得られ、該スケール空間は複数のスケールレベルをもつ。そして、スケール空間における特徴点のための記述子は、複数のスケールレベルを通じた複数の画素に係るスパース射影ベクトルとまばらに標本化される画素情報と組み合わせにもとづいて、生成される。画素情報は、特徴点に関連付けられるパッチ(区画)の中の各画素に係る勾配情報を含んでもよい。複数の画素は、特徴点のためのパッチと関連付けられる。複数の画素は、スパース投射ベクトルに係る非ゼロ係数に対応するあらかじめ決められる位置で選ばれ得る。パッチは、m画素掛けるn画素の大きさをもち、特徴点記述子は、mnの大きさのパッチよりも少ない動作でもって生成される。
画素を得るために、特徴点は、イメージに係るスケール空間から得られ、そして、パッチは特徴点に関して得られ、該パッチは複数の画素を含む。
複数のスパース射影ベクトルは、一組の非ゼロスケーリング係数を定義し、各非ゼロスケーリング係数は、パッチの中の対応する画素位置に関連付けられる。
記述子は、複数の記述子コンポーネントを結合することにより生成され、各記述子コンポーネントは、(a)第1のスパース射影ベクトルに係る非ゼロスケーリング係数配置に基づいて、画素配置を特定すること、および/または、(b) 第1の記述子コンポーネントを得るために、パッチからの画素位置の値を、第1のスパース射影ベクトルに係る対応の非ゼロスケーリング係数と乗じ、結果の値をともに足し合わせること、によって生成される。追加の記述子コンポーネントは、追加の記述子コンポーネントを得るために、複数の残りのスパース投射ベクトルについて得られてもよく、第1の記述子コンポーネントと追加の記述子コンポーネントは、特徴点記述子を得るために、ベクトルとして結合される。
様々な態様、特性、および、利点は、同じような参照符号が一貫して対応して特定している図面と組み合わせて理解されるとき、以下に記載された詳細な記述から明瞭になり得る。
図1(図1A、1B、および1Cからなる)は、オブジェクト認識における、高速・部分空間のスパース射影ベクトル(fast subspace sparse projection vectors)を生成し、用いるための様々なステージを示すブロック図である。 図1(図1A、1B、および1Cからなる)は、オブジェクト認識における、高速・部分空間のスパース射影ベクトル(fast subspace sparse projection vectors)を生成し、用いるための様々なステージを示すブロック図である。 図1(図1A、1B、および1Cからなる)は、オブジェクト認識における、高速・部分空間のスパース射影ベクトル(fast subspace sparse projection vectors)を生成し、用いるための様々なステージを示すブロック図である。 図2は、例示のイメージ処理ステージにおけるガウススケール空間を示す。 図3は、例示のイメージ処理ステージにおける特徴検出を示す。 図4は、例示のイメージ処理ステージにおける特徴記述子抽出を示す。 図5は、PCA−SIFT記述子がどのように得られ得るかを示す。 図6(図6Aおよび6Bからなる)は、スパースPCA−SIFTアルゴリズムがどのように実行され得るかの例を示す。 図6(図6Aおよび6Bからなる)は、スパースPCA−SIFTアルゴリズムがどのように実行され得るかの例を示す。 図7(図7A、7B、および7Cからなる)は、スパース射影ベクトルを除去する、または生成するための方法を示す。 図7(図7A、7B、および7Cからなる)は、スパース射影ベクトルを除去する、または生成するための方法を示す。 図7(図7A、7B、および7Cからなる)は、スパース射影ベクトルを除去する、または生成するための方法を示す。 図8は、スパースPCA−SIFTを用いて、反復的にスパース射影行列を生成するための例示のアルゴリズムを示す。 図9は、各オクターブが複数のスケールレベルを持つ、複数のオクターブを有する、ガウス・スケール空間・ピラミッドを示す。 図10(図10A、および10Bからなる)は、特徴記述子がスパース射影行列に基づいてどのように生成され得るかを示す。 図10(図10A、および10Bからなる)は、特徴記述子がスパース射影行列に基づいてどのように生成され得るかを示す。 図11は、非ゼロ係数とそれらの対応するパッチ配置としての、スパース射影行列の表現例を示す。 図12は、あらかじめ決められたスパース投射ベクトルを用いることにより特徴記述子を生成するための方法を示す。 図13は、あらかじめ決められたスパース射影ベクトルを用いることにより特徴記述子を生成するための他の方法を示す。 図14は、パッチの大きさよりも少ない動作で、特徴を記述する特徴記述子を生成するための方法を示す。 図15は、それらからスペアのPCA−SIFTアルゴリズムを用いて生成される記述子の正確さがテストされることができる、同じテストイメージに係る異なる画像を示す。 図16は、全て、xおよびy方向での勾配レベルを用いて得られる、SIFT、PCA−SIFT、および、スパースPCA−SIFTを用いる記述子の、一致の正確さの例を示す。 図17は、SIFT、PCA−SIFT、および、スパースPCA−SIFTのアルゴリズムの、比較の計算上の複雑さを示すテーブルである。 図18は、スパース射影ベクトルを用いて、特徴点記述子を生成できるイメージマッチング装置の例を示すブロック図である。 図19は、イメージまたはオブジェクトの認識の目的のためのイメージ処理を行うように適合される例示のモバイルデバイスを示すブロック図である。
詳細な説明
ここで、様々な実施形態が図面を参照して記載されるが、図面を通して、同様な参照番号が同様な要素を指すのに使われる。以下の記載において、説明の目的で、多くの特定の具体例が、1つまたはそれより多くの実施形態の十分な理解を与えるために記載される。しかし、そのような実施形態は、これらの特定な具体例なしでも実施され得ることは明らかである。他の場合には、よく知られた構造やデバイスは、1つまたはそれより多くの実施形態を記載しやすくするために、ブロック図のかたちで示される。
オブジェクト認識プロセスの例
図1(図1A、1B、および1Cからなる)は、オブジェクト認識において、高速の部分空間のスパース射影ベクトルを生成し、用いるための各種ステージを示すブロック図である。
図1Aは、スパース射影ベクトルの推定を示すブロック図である。複数のトレーニング用イメージ107が得られる。各イメージについて、スケール空間ピラミッド(例えば、ガウススケール空間ピラミッド)を得るために、スケール空間生成110が実行される。次に、生成されるスケール空間上で、特徴/特徴点検出112が実行される。次に、傾斜パッチピラミッド抽出115が実行され、それによって、検出される主要点各々について、スケール空間から(例えば主要点の周辺で)、傾斜のパッチが抽出される。そのようなパッチは、回転不変性をなす一般的に知られる方法で、パッチにおける支配的な傾斜の方向(平面の回転における)について、特有に再方向付けをされる。このプロセスは、全てのトレーニング用イメージについて繰り返される。トレーニング用イメージにおける複数の主要点について生成される傾斜パッチを用いて、複数のスパース射影ベクトル117が計算される。スパース射影ベクトル117の各々は、対応するパッチの位置をもつ複数のスケーリング係数を有してもよい。1つの代表例では、スパース射影ベクトル117は、スパース射影ベクトルを定義するスパース係数の行列の各行をもつ、スパース係数の行列として構成されてもよい。
図1Bは、イメージのデータベースに係る記述子のライブラリが、スパース射影ベクトルにもとづいて、どのように構築され得るかを示すブロック図である。ここで、イメージ109のデータベースが得られ、スケール空間111が各データベースイメージについて生成され、特徴/主要点がこれらのスケール空間から検出される113。次に、スパース特徴抽出116は、主要点記述子のデータベース121を生成するために、スパース射影ベクトル117を用いて実行される。
図1Cは、スパース射影ベクトルを用いることにより、問い合わせを受けるイメージ上でオブジェクト認識を行うための機能ステージを示すブロック図である。イメージ獲得ステージ102で、クエリイメージ108は、獲得される、またはその他得られることができる。例えば、クエリイメージ108は、デジタルの獲得イメージを得るために、1つまたはそれより多くのイメージセンサおよび/またはアナログ−デジタル変換器を含む、イメージ獲得デバイスにより得られる。イメージセンサ(例えば、電荷結合デバイス(CCD)、相補型金属膜半導体(CMOS))は、光を電子に変換する。電子は、後にアナログ−デジタル変換器によりデジタル値に変換される、アナログ信号を形成する。この方法で、イメージ108は、例えば、対応する色、強度、および/または他の特性を持った複数の画素として、イメージ I(x,y)を規定するデジタルフォーマットで獲得され得る。
イメージ処理ステージ104において、獲得されたイメージ108は、対応するスケール空間120(例えば、ガウススケール空間)を生成し、特徴/特徴点検出122を行い、および、クエリ記述子128を得るために、スパース射影ベクトル117に基づいて、スパース特徴抽出126を行うことにより、処理される。イメージ比較ステージ106で、クエリ記述子128は、既知の記述子121のデータベースとの特徴一致化130を実行するために用いられる。幾何学的な検証または一致度チェック132は、次に、正しい特徴一致をつきとめ、一致結果134を与えるために、特徴点一致上で(例えば、記述子の一致に基づいて)実行され得る。この方法で、クエリイメージは、ターゲットイメージ109のデータベースと比較され、および/または、そこから同定され得る。
図2は、例示のイメージ処理ステージ104におけるガウススケール空間の生成を示す。不変特徴変換(Scale Invariant Feature Transform (SIFT))のような多くのアルゴリズムが、イメージにおける特徴検出を行うために開発されている。イメージにおける特定のオブジェクトの検出に向けた最初のステップは、その局所的な特徴に基づいて問い合わせを受けたオブジェクトを分類することである。目標は、例えば、強度、イメージノイズ、回転、伸縮、および/または、視点の小さな変化に対し不変および/または耐性がある特徴を識別し、選択することである。即ち、クエリイメージと比較ターゲットイメージとの間の一致は、これら2つのイメージ間の強度、イメージノイズ、回転、伸縮、および/または視点における違いにかかわらず見つけられるべきである。これを行うための1つの方法は、大きく区別される特徴(例えば、イメージにおける、区別されるような点、画素、および/または、領域)を特定するために、イメージのパッチ上で極値検出(例えば、局所の極大または極小)を行うことである。
SIFTは、強度、イメージノイズ、回転、伸縮における変化、および/または、視点の小さな変化に合理的に不変である、局所的な特徴を検出及び抽出するための1つのアプローチである。SIFTのためのイメージ処理ステージ104は、(a)スケール空間の極値検出、(b)特徴点の局所化、(c)向きの割り当て、および/または、(d)特徴点記述子の生成、を含み得る。SIFTは、特徴点の近辺における傾斜のヒストグラムとして、記述子を構築する。他にもあるが、スピードアップ耐性特徴づけ(Speed Up Robust Features (SURF))、傾斜位置・向きのヒストグラム(Gradient Location and Orientation Histogram (GLOH))、局所エネルギーベースの形状ヒストグラム(Local Energy based Shape Histogram (LESH))、傾度の圧縮されたヒストグラム(Compressed Histogram of Gradients (CHoG))を含む、特徴検出、および、それに続く特徴記述子の生成の代替アルゴリズムが、この中に記載される態様から利益を受け得る。
スケール空間ピラミッド202を生成するために、デジタルイメージ I(x,y)203(図2)は、スケール空間ピラミッド202を構築するために、徐々に、平滑化/ぼやかし化をされる。ぼやかし化(平滑化)は、一般に、
L(x,y,cσ)=G(x,y,cσ)*I(x,y)と定義されるように、スケールcσで、原イメージ I(x,y)を、ぼやかし化/平滑化関数 G(x,y,cσ)でたたみ込むことを含む。1つの例で、スケール空間ピラミッドは、ガウススケール空間ピラミッドであってよい。従って、平滑化/ぼやかし化関数Gは、ガウスカーネルであってよく、cσは、イメージI(x,y)をぼやかし化するために用いられるガウス関数Gの標準偏差を意味する。乗算子cが変化する(c<c<c<c<c)と、標準偏差cσが変化し、イメージI(x,y)の段階的なぼやかし化/平滑化が得られる。ここで、σは基本スケール変数(base scale variable)(例えば、ガウスカーネルの幅)である。ぼやかし化されたイメージスケール空間Lを生成するために、初期イメージI(x,y)がガウス関数で増加的にたたみ込まれるとき、ぼやかし化されたイメージスケール空間Lは、スケール空間における定数因子cにより分割される。ガウスぼやかし化(平滑化)イメージスケール空間Lの数が増加し、ガウスピラミッド202のために与えられる近似が連続する空間に達すると、2つの空間は、また、1つの空間に近づく。1つの例で、たたみ込まれたイメージ空間Lじゃ、オクターブ(8度)によりグループ化され得、ここで、オクターブは、標準偏差σの値の2倍に一致する。さらに、イメージスケール空間Lの固定された数がオクターブあたりで得られるように、乗算子c(例えば、c<c<c<c<c)の値が選択される。スケーリングの各オクターブは、明白なイメージの再サイズ化に対応し得る。従って、原イメージI(x,y)が段階的なぼやかし化/平滑化関数Gによってぼやかし化/平滑化されると、画素の数は暫時少なくされる。
差分スケール空間204(例えば、ガウス(DoG)ピラミッドの差)は、ピラミッド202における、任意の2つの連続する、ぼやかし化されたイメージスケール空間の差を計算することにより構築され得る。差分スケール空間204において、D(x,y,a)=L(x,y,cσ)−L(x,y,cn−1σ)。差分イメージスケール空間D(x,y,σ)は、スケールcとcn−1で、平滑化/ぼやかし化された、2つの近くのイメージ間の差である。差分スケールスペースD(x,y,σ)のスケールは、cσとcn−1σとの間のどこかに位置する。差分スケール空間204の複数レベルに係るイメージは、スケールスペース202のオクターブごとに、近くのスパース(まばら)化されたイメージから得られる。各オクターブの後、イメージは、2の因子によりダウンサンプルされ、その後、そのプロセスが繰り返される。この方法で、イメージは、変換、回転、伸縮、および/または、他のイメージパラメータおよび/または歪みに対する耐性または普遍性がある、局所的な特徴に変換される。
問い合わされたイメージに係る異なるスケール空間204は、ひとたび生成されたらば、関心を引く特徴を特定する(例えば、イメージにおける、大きく区別される点を特定する)ため、極値検出のために利用され得る。これらの大きく区別される点は、この中で、特徴点と記される。これら特徴点は、各特徴点の周りのパッチまたは局所領域の特徴により特定され得る。記述子は、各特徴点とそれに対応するパッチに対して生成され、クエリイメージと格納されたターゲットイメージとの間の特徴点の比較のために用いられることができる。「特徴」は、記述子(即ち、特徴点とそれに対応するパッチ)のことを言ってもよい。1グループの特徴(即ち、複数の特徴点と対応するパッチ)は、クラスタと記されてもよい。
図3は、例示のイメージ処理ステージ104における特徴検出を示す。特徴検出において、差分スケール空間204(例えば、ガウススケール空間の差分)は、クエリイメージ I(x,y)に係る特徴点を特定するために使われてもよい。特徴検出は、イメージにおける特定の標本点または画素の周辺の局所領域またはパッチが、潜在的に関心を引くパッチであり、従って、記憶された特徴との一致検出のための候補として考慮されるべきであるかどうかを決めることを求める。
一般に、差分スケール空間204における局所的な極大および/または局所的な極小が特定され、これらの極大や極小の位置は、差分スケール空間204における特徴点の位置として用いられる。図3に示される例では、特徴点308は、パッチ306を用いて特定されている。局所的な極大と極小(また、局所的極値検出としても知られている)を見つけることは、差分スケール空間204における各画素を、同じスケールでの8つの近傍の画素と、ならびに、特徴点408の2つの側にある近傍のスケールの各々における9個の近傍画素(近くのパッチ310と312の中)との、合計26画素(9x2+8=26)について、比較することにより達成される。ここで、パッチは、3x3画素の領域として定義される。特徴点306に係る画素値が、パッチ306、310、および312において比較される全26個の画素の中で極大または極小であるならば、それは特徴点として選択される。特徴点の位置がより正確に特定され、コントラストの低い特徴点やエッジにある特徴点のような特徴点の内のいくつかが捨てられ得るように、特徴点は、更に処理される。
図4は、例示のイメージ処理ステージ104における特徴記述子抽出を示す。一般に、特徴(例えば、特徴点やそれに対応するパッチ)は、(クエリイメージからの)特徴のターゲットイメージのデータベースに格納される特徴との効率的な比較を考慮する、記述子により表現され得る、特徴記述子抽出の1例では、各特徴点は、局所的なイメージの傾斜方向に基づき、1またはそれより多くの配向または方向を割り付けられる。局所的なイメージの特性に基づいて各特徴点に一様な向きを割り当てることにより、特徴点記述子は、この向きに関して与えられることができ、従って、イメージの回転に対する不変を達成できる。大きさや方向の計算は、ぼやかし化されたイメージスケール空間Lにおいて、および/または、差分スケールスペースで、特徴点308のまわりの近傍領域における各画素について実施され得る。(x,y)に位置する特徴点308に係る傾斜の大きさはm(x,y)と表現され、位置(x,y)での特徴点の傾斜の向きまたは方向はΓ(x,y)と表現される。特徴点のスケールは、全ての計算がスケール不変の方法で実施されるように、特徴点308のスケールにほっとも近いスケールでもって、平滑化されたイメージLを選択するために使われる。このスケールで、各イメージ標本L(x,y)について、傾斜の大きさm(x,y)と向きΓ(x,y)は、画素の差分を用いて計算される。例えば、大きさm(x,y)は、以下のように計算されることができる。
Figure 0005714599
方向または向きΓ(x,y)は、以下のように計算され得る。
Figure 0005714599
ここで、L(x,y)は、特徴点のスケールでもあるスケールσでの、ガウス−ぼやかし化されたイメージL(x,y,σ)の標本である。
特徴点308に係る傾斜は、より大きなスケールで、差分スケール空間における特徴点の平面よりも上に位置するスケール空間ピラミッドにおける平面について、または、より低いスケールで、特徴点より下に位置するスケール空間ピラミッド平面において、のいずれかで、一様に計算される。いずれかの方法で、各特徴点について、特徴点の周囲の矩形領域(例えば、パッチ)において、1つの同じスケールで、全て計算される。さらに、イメージ信号の周波数は、ぼやかし化されたイメージのスケールに反映される。さらに、SIFTは、単に、パッチ(例えば、矩形領域)における全ての画素での傾斜値を用いる。パッチは、特徴点のまわりで定義され、サブブロックはブロックの中で定義され、標本はサブブロックの中で定義され、この構造は、特徴点のスケールが異なるときでさえ、全ての特徴点に対して同じままである。従って、イメージ信号の周波数は、同じオクターブにおけるガウス平滑化フィルタの連続した適用とともに変化するが、スケールによって示されるイメージ信号の周波数変化にかかわらず、異なるスケールで特定される特徴点は、同じ数の標本で標本化されてよい。
特徴点の向きを特徴づけるため、傾斜の向きのベクトルは、(特徴点のスケールに最も近いスケールのガウスイメージを用いて)、特徴点408の近傍で、(SIFTにおいて)生成され得る。しかし、特徴点の向きは、例えば、傾斜の「圧縮されたヒストグラム」(Compressed Histogram of Gradients (CHoG))を使うことにより、傾斜の向きのヒストグラム(図4参照)によって示され得る。近傍のピクセルの各々の寄与は、傾斜の大きさとガウス窓により重みづけされる。ヒストグラムにおけるピークは、支配的な向きに対応する。特徴点の全ての特性は、特徴点の向きに関して測定されえるが、これは、回転に対する不変性を与える。
一例では、ガウス重みづけ傾斜の配置は、ブロックごとに計算され得、各ブロックは、トータルで4のサブブロックについて、2サブブロックかける2サブブロックである。ガウス重みづけ傾斜の配置を計算するために、いくつかのbin(ビン)をもった配向ヒストグラムは、特徴点の周りの領域の一部をカバーする各binを用いて形成される。例えば、各binが360度の配向範囲の10度をカバーして、配向ヒストグラムは36binを有する。代わりに、ヒストグラムは、360度範囲の45度をカバーする各binを8つもってもよい。この中に記載されるヒストグラム符号化技法は、いかなる数のbinのヒストグラムにも適用可能であることは明らかである。また、最終的にヒストグラムを生成する他の技法が用いられてもよい。
傾斜の配置と配向ヒストグラムとは、様々な方法で得られる。例えば、2次元の傾斜配置(dx,dy)(例えば、ブロック406)は、1次元の配置(例えば、ヒストグラム414)に変換される。特徴点408は、特徴点408を囲むパッチ406(また、セルまたは領域と呼ばれる)の中心に位置づけられる。ピラミッドの各レベルについて前もって計算される傾斜は、各標本位置408で、小さな矢印で示される。図示のように、標本408の4x4の領域はサブブロック410を形成し、サブブロックの2x2の領域はブロック406を形成する。また、ブロック406は、記述子窓という。ガウス重みづけ機能は、円402で示され、各標本点408の大きさに重みを割り当てるために用いられる。円形の窓402における重みは、滑らかに減少する。ガウス窓402の目的は、窓の位置の小さい変化によって記述子に突然の変化が生じることを避けるためと、記述子の中心から遠い傾斜により少ない強調度を与えるためである。配向ヒストグラム412の2x2=4の配列は、(2x2)x8=32次元の特徴記述子ベクトルに帰結する、ヒストグラムの各binにおける8つの配向をもつ2x2のサブブロックから得られる。例えば、配向ヒストグラム413と415は、サブブロック410の傾斜配置に対応できる。しかし、各特徴点についての(4x4)x8=128の要素のベクトル(即ち、特徴記述子)に帰結する、各ヒストグラム(8binのヒストグラム)における8つの配向をもった4x4配列のヒストグラムを用いることは、より良好な結果をもたらす。また、他の形式の量子化binの集合(例えば、異なるVoronoiセル構造を用いて)は、傾斜の配置を得るために用いられてもよい。
ここで用いられるように、ヒストグラムは、重みが観察の重要度(例えば、傾斜の大きさ、など)に対応するような、binとして知られる種々の分離したカテゴリーにはいる、観察、標本、または発生(例えば、傾斜)の重みづけされた合計を計算するマッピングkiである。ヒストグラムのグラフは、単に、ヒストグラムを表現する1つの方法にすぎない。
サブブロックからのヒストグラムは、特徴点に係る特徴記述子を得るために結合され得る。16のサブブロックからの8binのヒストグラムにおける傾斜が用いられるならば、128次元の特徴記述子ベクトルが生じる。記述子は、強度・強度変化に対して不変の利得、即ち、16の重みづけされたヒストグラムについて、
Figure 0005714599
に標準化され得る。ここで、k は、j番目のサブブロックの1番目のbinの値に対応する。
この方法では、記述子は、そのような記述子が、ガウス重みづけ傾斜の位置(x,y)、配向、配置の記述子によって特徴づけられるように、特定される各特徴点について得られる。イメージは、1またはそれより多くの特徴点記述子(または、イメージ記述子と呼ばれる)によって特徴づけられてもよいことを付記する。また、加えて、記述子は、位置情報(例えば、特徴点の座標)、スケール(伸縮)(例えば、特徴点でのガウススケールが検出された)、およびクラスタ識別子のような他の情報、などを有してもよい。
ひとたび、記述子がクエリイメージにおいて特定される特徴点について得られると、問い合わされるイメージ108における特徴点は、特徴一致検出(マッチング)122を行うように、ターゲットイメージにおける点と比較される、および/または、一致検出される。例えば、問い合わされたイメージにおける特0徴0点に係る記述子は、1またはそれより多くの一致を見つけるために、(ターゲットイメージのデータベースにおける特徴点に対応する)ターゲットイメージのデータベースに記憶される1またはそれより多くの記述子と比較され得る。この比較は、問い合わされるイメージにおける特徴点が、少なくともしきい値の量またはパーセンテージ(例えば、75%一致、80%一致、など)によりターゲットイメージにおける地点と一致するならば一致検出は成功となるような、蓋然性の比較であってよい。
記述子抽出のためのPCA−SIFT
主要なコンポーネントの解析(Principal Component Analysis (PCA))は、次元数の削減のための標準的な技法であり、特徴選択、オブジェクト認識、および顔認識を含む広い種類のコンピュータ画像の課題に適用されている。PCA−SIFTは、特徴点の近くでの傾斜の値が、PCAによって得られる、非常に小さな部分空間に投影されることができることを示している。記述子抽出の役割として、PCAは。データ(即ち、イメージにおける特徴点)を、高い次元の空間からより少ない次元の空間に線形変換するために用いられ得る。PCAは、低い次元の表現でのデータの相違が最大になるような方法で、より低い次元の空間にデータの線形マッピングをおこなう。
SIFT記述子の上で改良を行うために、PCA−SIFTは、データの組(即ち、イメージの中の複数の特徴点)における最も大きな分散をなすことにもとづいて、パッチに係る座標系を、新しい座標系に、効果的に変更する。データの射影による最も大きな分散が第1の座標(第1の主要コンポーネントいう)の上に位置するようになり、第2の座標(第2の主要コンポーネント)の上に第2の最も大きな分散が位置する、等々のように、PCA−SIFTは、データ(例えば、画素、特徴点、など)を新しい座標系に変換する直交線形変換を含む。数学的には、射影行列は、以下によって得られる。
(a)各特徴点に係る、水平と垂直の傾斜を示す傾斜ベクトルを得ること(例えば、パッチ毎の傾斜ベクトルサイズ=39(画素)x39(画素)x2(傾斜方向)=3042(次元ベクトル))、
(b)行列Aの中に、全ての特徴点パッチに係る傾斜ベクトルを結合すること(行列の次元=k(パッチ)x3042(パッチあたりのベクトル)、
(c)行列Aの分散行列Aを計算する、
(d)分散行列Aの固有ベクトルと固有値を計算する、および
(e)射影行列(n x 3042である)を得るために、第1のn個の固有ベクトルを選択する。このプロセスは、しばしば、固有値分解と呼ばれる。
記述子抽出の手続きにおいて、次元数の減少は、ノイズを減らすこと、および、一致検出の正確性を改善することの利得をもつ。PCA−SIFTアルゴリズムは、特徴点の周りの局所的な傾斜パッチに基づいて記述子を抽出する。PCA−SIFTは、以下の手順に要約され得る。
(1)局所パッチの傾斜イメージを示すために、固有空間を前計算処理(pre-compute)する、
(2)あるパッチについて、その局所的なイメージの傾斜を計算処理する、
(3)圧縮した特徴ベクトル(compact feature vector)(即ち、記述子)を生成するために、固有空間を用いて傾斜イメージベクトルを射影する。
この特徴ベクトル(即ち、記述子)は、標準のSIFT特徴ベクトル(即ち、記述子)よりもかなり小さく、同じ一致検出アルゴリズムで用いられ得る。2つの特徴ベクトルの間のユークリッド距離は、2つのベクトルが異なるイメージにおける同じ特徴点に対応するかどうかを決めるために使われる。記述子の弁別性は、記述子の固有値を合計することにより計測され、それらの分散によって正規化された、記述子の「主要コンポーネント分析(Principal Components Analysis)」により得られる。これは、異なる記述子により得られる分散の量、従って、それらの弁別性に対応する。
図5は、どのようにPCA−SIFT記述子が得られるかを示す。SIFT記述子に係る例(図3乃至4)のように、イメージI(x,y)502は、複数のスケール空間506(即ち、ガウスピラミッド)を得るために、1またはそれより多くのガウスカーネルG(x,y,σ)504を用いて畳み込まれる。ここで、スケール空間508、510、および512は、異なるカーネルスケーリングパラメータσ、σ、およびσのそれぞれに対応して示される。局所特徴点記述子のために、PCA−SIFTは、標準SIFT記述子(例えば、特徴点のサブピクセル位置、スケール(伸縮度)、および支配的な配向)と同じ入力を使う。この例では、複数の特徴点514が、異なるスケールレベル(および/または、オクターブ)を通して検出されている。パッチ516は、各特徴点514の周囲で特定される。パッチ518は、WxWの大きさ(例えば、39ピクセル掛ける39ピクセル)をもち、与えられるスケール(伸縮度)で抽出され、対応する特徴点上に中心がおかれ、その支配的な配向を正準(canonical)方向にならうようにするために回転されてもよい。傾斜行列[ga1, ga2, ga3, ...,gaM]520は、各パッチ318に対して得られ、傾斜行列は、行列A522の中にベクトル化される。次に、行列X 522の分散行列X 524が生成される。分散行列X 524に係る固有ベクトルV 526と固有値Λ 528が得られ、それは、d個の最も大きな固有値(即ち、最も大きな分散)から射影行列V 530を生成するために用いられ得る。
PCA−SIFT記述子を得ることは、一般的に、PCAベース(射影)ベクトルVと関心の対象となる特徴点に係るイメージパッチIpachとの間の内積をとることを求める。本質的に、特徴点に係るイメージパッチIpachは、より高いスケールに「射影」され、そこでは、特徴点は、当該より高いスケールにおける1点によって示される。PCAベース(射影)ベクトルVは、以下の式で示され得る。
Figure 0005714599
ここで、αiはスケーリング係数、K(xi,x)は位置xiでのガウスベース関数(即ち、平滑化カーネル),mはパッチの中で標本化される位置の数である。PCAベースベクトルVとイメージパッチIpachの間の内積は、ベースベクトルとイメージパッチIpachを以下のように転置することにより与えられる。
Figure 0005714599
従って、1つの例では、イメージパッチIpach(例えば、イメージパッチ514または516)とPCAベース(射影)ベクトルVとの間の内積を計算することは、W回の乗算とW回の加算を必要とする画素に関する演算である。
PCAベース(射影)ベクトルは、ベクトルのトレーニングセットから得られ、クエリ(問い合わせ)記述子は、この部分空間に射影される。X={x,x,..,x}をN個のトレーニング用パッチとする、ただし、
Figure 0005714599
そして、p=Wが特徴点の周囲の各パッチ標本の大きさW x W である。パッチの分散行列は以下のように推定される。
Figure 0005714599
ここで、
Figure 0005714599
は標本平均である。分散行列の固有ベクトルは、パッチの変化の全てを示すのに受分であるベースベクトルを与える。ベース(射影)ベクトルは、
Figure 0005714599
によって与えられる。ここで、
Figure 0005714599
は固有ベクトル行列であり、
Figure 0005714599
は、その対角に対応する固有値をもつ対角行列である。この分解の目指すところは、変化を最大にすることによりノイズを低減する、dの大きさの部分空間を抽出することである、ここで、d={1,2,..,n}。これは、最も大きなd個の固有値と関連づけられる固有ベクトル
Figure 0005714599
によって与えられる。dを選択するための1つの方法は、データにおけるトータルな変化の〜90%に保つことである。テストイメージからの記述子qは、
Figure 0005714599
により、PCA部分空間上に射影される。これは、d x p回の乗算と、d x p回の加算を必要とする、ここで、d x p=d x W
PCA−SIFTの実施は、特徴点の数(数千であり得る)によって悪化される、低い次数の部分空間に記述子をPCA射影することに関連した大きな計算処理コストにより、移動体デバイスのように限られた処理のリソースをもつプラットフォーム上では阻害される。例えば、PCA−SIFTパッチサイズ(W x W)が39画素x39画素であり、それは、結果として、xとy方向の傾斜値を考慮すると、2 *39次数の射影ベクトルになる。従って、クエリイメージにおける各記述子は、d-次数の部分空間への射影のために、2 *39 * d 回の乗算と加算を必要とする。これは、強力なサーバ側の機器にとっては重大な非効率性を生むことはないが、移動体電話のような限られた処理のリソースを用いた実施化における障害となり得る。
スパースPCA−SIFTを用いる、スケール空間における高速の傾斜ベース記述子抽出
スパース部分空間射影アルゴリズムが、局所の傾斜パッチからの記述子の効率的な抽出のために説明される。記述子は、局所的な傾斜パッチを、ガウスベース関数のスパース組み合わせで表されるPCA部分空間に射影することにより得られる。ガウスベース関数の標準偏差は、ガウススケール空間ピラミッドにおけるスケールの違いの1つから選択される。従って、PCA部分空間へのパッチの射影は、スケール空間において、スパース係数を対応する傾斜に単純に掛け合わせることで得られる。
スパースPCA−SIFTアルゴリズムは、ここでは、テスト標本を部分空間に射影するための非常に低い計算処理上の複雑性をもつとして記載される。PCAベースベクトルを計算すること(即ち、PCA射影ベクトルV 526 図5)よりもむしろ、PCAベースベクトルは、代わりに、ガウスベース関数スパースの線形結合として得られ、その標準偏差はガウススケール空間のスケールレベルの差異から得られる。これは、スパース内積により部分空間上に与えられるパッチを射影することを許容する。スパースPCA−SIFTアルゴリズムは、他の特徴抽出技法に簡単に拡張されることができる。
図6(図6Aと図6Bを含む)は、スパースPCA−SIFTアルゴリズムがどのように実行され得るかの例を示す。しかし、このプロセスが他の形式のアルゴリズムに拡張されても、および/または、適用されてもよいことは明らかである。
図6Aは、スパース係数マトリックスを得るための、スパースPCA−SIFTアルゴリズムに係るオフライントレーニング手順を示す。トレーニング用イメージのライブラリ602は、各イメージについてガウススケール空間606を生成するために、異なるスケールでガウスカーネル604とともにたたみ込まれる。各イメージについて、特徴点は、複数のスケール608、610、および612にわたって検出され、パッチ616は、各特徴点の周りに定義される。この例において、第1の特徴点614が特定されており、対応するパッチ616が特徴点614の周りに定義されている。このパッチ616は、特徴点616の上の1またはそれより多くの対応するパッチ617、および/または、特徴点616の下の1またはそれより多くの対応するパッチ615に係る局所情報を得るために、スケール空間606の複数のスケールレベルにわたって射影される。以下において、あるパッチからの目立った情報は、行列[gij]、インデックスiとJはパッチにおける画素の座標である、に含まれている。行列の要素は、画素の強度値自身であってもよいし、または、図に示されるように、それらが各画素でのトータルの傾斜の大きさを示してもよいし、またより一般的には、xとyの方向での傾斜の値を示してもよい。パッチの形状が矩形である必要はなく、同一のパッチ形状が記述子生成において引き続き使われるかぎり、三角形、円形などの他の形をとることができる。いくつかの例では、傾斜行列は、特徴点614と同じスケールで、パッチ616に関する情報を有し得ることを注記する。他の実施形態では、傾斜行列は、異なるスケールでの対応するパッチ615および/または617に関する情報を有してもよい。複数の傾斜行列620は、行列X 622の中にベクトル化される。次に、行列X 622の複数の列が選択され(例えば、ランダムに選択され)、それらの分散が、スパース係数行列630を得るために最大化される(624)。行列X 622の列の部分集合が分散の最大化のために用いられるから、僅かな非ゼロ係数のみが、スパース係数行列630の各射影ベクトル(即ち、行)に関して生成される。スパース係数行列における残りの係数はゼロである。1つの例では、スパース係数行列630の行(即ち、射影ベクトル)における各係数は、パッチの中の位置に対応すること、を注記する。当該位置は、元来、スパース係数行列630における行の中の係数の位置により特定され得る。代わりに、各非ゼロ係数に係る位置は、非ゼロの係数と共に与えられてもよい。
スパース係数行列が得られたとすると、それは、イメージのライブラリと問い合わせイメージとの両方に関する特徴点記述子を生成するために使われる。スパース係数行列630の各行における係数は、スパース射影ベクトルを表す。
図6Bは、スパース係数行列に基づくスパースPCA−SIFT(Sparse PCA-SIFT)を用いる、記述子のオンライン生成にためのプロセスを示す。イメージ644(例えば、データベースイメージまたは問い合わせイメージ)は、複数のスケールにわたってガウススケール空間646を生成するために、ガウスカーネル642でたたみ込まれる。1つまたはそれより多くの特徴点は、スケール空間646から特定されることができる。各特徴点について、それを囲む画素(例えば、標本点)からなるパッチが生成される。各パッチについて、傾斜ベクトル650が当該パッチに関して生成され、この傾斜ベクトルは、パッチの中の点の各々に関する傾斜の大きさをもつ。この例では、パッチは39 x 39画素(例えば、点)でもよく、傾斜ベクトル[g1,1,..., g39,39]650は、1521個の要素を有してもよい。先に註記されたように、スパース係数行列における係数のいくつかだけが非ゼロである。この例では、非ゼロ係数は、α 、α 50 、α 88 、α 143 、 ....、α 200 39 、 ....、α 200 390 である。非ゼロ係数に関し、対応する傾斜の大きさの値(即ち、パッチにおける同じ位置に対応する)が得られる。例えば、傾斜の位置g1,2、g2,11、g3,20、g4,26は、非ゼロ係数654に対応するように特定されている。スパース係数行列の各行について、非ゼロ係数の各々は対応する傾斜によって乗じられ、その結果は、複数の記述子要素656を得るために、行毎のベースで、共に足しあわされる。複数の記述子要素は、特徴点記述子658を得るために、ベクトルの中に組み入れられる。このプロセスは、イメージ644に関する複数の対応する記述子を得るために、複数の特徴点について繰り返される。この例では、特徴点の周りのパッチは、単一のスケールレベルで定義されることを註記する。一般的には、特徴点の周りの複数のスケールにわたる複数のパッチが。パッチ615、616、および617に示されるように、用いられ得る。
スパース射影ベクトルを生成するためのプロセス例
図7(図7A、7B、および7Cからなる)は、スパース射影ベクトルを推定する、または、生成するためのプロセスを示す。複数のトレーニングイメージ702a、702b、および702cが得られる。それらイメージにおいて検出される各特徴点について、パッチが当該特徴点の周りにつくられる。傾斜行列は、行列704として示される各パッチに関して得られ、そこでは、行列の各要素gは、n x n(例えば、n=39)のパッチにおける対応する標本、点、または画素の各々についての大きさを示す。各傾斜行列704は、各要素gの位置がその対応するパッチの中の予測可能または既知の位置をもつように構成され、または、配置され得る。複数の傾斜行列704(複数のトレーニング用イメージに係るパッチを示す)は、行列X 706の中にベクトル化され得る。行列X 706からの複数のk列が、ランダムに、または、非ランダムに、行列706‘に示されるように選択される。この例では、K=4で、行707a、707b、707c、および707dが選択されている。行列X 706の選択された行をわたる分散が、スパース係数行列710を得るために最大化される(708)。スパース係数行列710における係数は、最大の分散をなすように選択される。
1つの実施例では、スパース係数行列710の各行における数個のみの係数が非ゼロ係数である。残りの係数は、ゼロである。例示のスパース係数行列712は、非ゼロであるそれらの要素のみを示している。加えて、いくつかの実施例では、スパース係数行列710における行の数は、d行(例えば、d=200 行)に切り捨て(truncate)される。スパース係数行列の結果としての行の各々は、1つのパッチに広がるスパース射影行列になる。例えば、スパース係数行列710の行(nの要素を含む)は、図示されるように、n x nのパッチ714に射影される。
さまざまな実施例において、スパース係数行列710は、イメージスケール空間の異なるレベルでの複数のパッチにわたって生成され得る。従って、追加のスケール空間レベルの各々について、追加の列が行列710に加えられ、追加の行列が生成され得る。
図8は、スパースPCA−SIFTを用いるスパース射影行列を反復して生成するための例示のアルゴリズムを示す。傾斜行列Xは、N個のパッチの組に関して得られる(802)。自己相関行列Sは、S=(1/N)XXのように、傾斜Xの行列に関して得られる(804)。自己相関行列Sは、パッチの各々の次元(大きさ)の間の関係を決めることができる。N個のパッチの行列Xに係る自己相関行列Sは、以下によって与えられ得る。
Figure 0005714599
ここで、Xは、各トレーニング用パッチに係るベクトルを示す。
自己相関行列Sに係るベースベクトルは、固有値分解 SV=VΛ、(ここで、VとΛは固有ベクトルと、対応する固有値行列である)、によって得られる。式4から、PCAベース(射影)ベクトルは、V=K(x,x)αとしてしまされ得ることがわかる。ガウスベース関数に基づいて固有ベクトルを得るために、ベースベクトルは、平滑化カーネル行列K、即ち、V=Kα、ここでαはスパース係数ベクトル、から得られる。Kは、以下のように、列iと行jをもつn χ n行列として定義される。
Figure 0005714599
そして、対応する画素位置xとσで定義されるガウス関数に対応する各行jは、カーネルの標準偏差、即ち、異なるカーネルのスケーリングパラメータσとσについて、σ=σ −σ である。
式6のこのカーネル行列Kは、単にその行の線形結合をつくることにより、イメージの領域上で非常に多くの関数を構築することができるので、大変強力である。さらに、カーネル行列Kの行との相関は、イメージがすでにカーネル行列Kでたたみ込まれているので、ガウススケール空間ピラミッドにおけるより高いスケールレベルで画素値によって、簡単に得られる。これを行うために、カーネルパラメータσは、ガウススケール空間ピラミッドのスケールレベルの違いの1つから選ばれる。記述子に基づく手続きの多くは、前もってガウススケール空間を構築するので、ガウスベース関数との相関を得ることは、無償で(即ち、何ら追加の処理が必要とされず)、起こる。
この相関を得るために、可能なσの選択の君は、ガウススケール空間レベルのスケールの違いで抑えられ得る。図9は、複数のオクターブをもつガウススケール空間ピラミッド902を図示し、各オクターブは複数のスケールレベルをもつ。スケールレベルは以下により与えられ得る。
Figure 0005714599
ここで、oはオクターブレベルであり、kは1オクターブの中のスケールレベルであり、sは各オクターブの中のスケールレベルの数である。仮に、特徴点がレベル(o,k)で検出されるとすれば、ガウスベース関数標準偏差は、特徴点の周りに開けられるサイズが再調整されないパッチについて、σσo0,kであるべきである。パッチとこれらのベース関数との相関をとることに代わり、ピラミッドのより高いスケールレベルが用いられる。例えば、o>o、および/または、k>kとして、(o,k)。従って、
Figure 0005714599
は、o>o、および/または、k>kとして、以下の、可能なスケールの組を与える。
Figure 0005714599
これは、仮に部分空間射影ベクトルが、これらの標準偏差σをもつガウスベース関数の線形結合をもちいて計算され得るならば、このベクトルへのイメージ応答の計算は、スケール空間における対応する位置の標本化に向けて変えられる。
自己相関行列Sのベースベクトルは、SKα=Kαλによって与えられ得る。当該等式の両側に平滑化カーネル行列Kをかけることは、問題を、一般化された固有値分解問題、KSKα=Kαλ、に転じる。目ざすところは、ガウスベース関数に係る係数αのスパース組を見つけることである。言い換えれば、非ゼロの係数要素αのカーディナリティ(cardinality:集合の元の個数、濃度) card(α≠0)は、その大きさ(次元)よりずっと小さくある必要がある。最適な数の非ゼロ係数要素αとそれらの値を見つけることは、非決定論的(non-deterministic)で、多項式時間(polynomial-time)の難問として知られている。多くの近似が、L-1 norm ||α||のように、αのカーディナリティ上のきわめて緩い上側境界(very loose upper bound)であるペナルティターム(penalty term)を最小化するものが、文献において定義されている。
図8の方法を再度参照すると、非ゼロ係数要素αを得るための1例が示されている。行列Sの分散が、各パッチにおける複数のランダムな位置に関して、繰り返し最大化される。繰り返し処理は、スパース係数行列A(A=[α, ...., α])を組み立てる、複数のスパース射影ベクトルαi(nの要素をもつベクトル)を生成するために使われ得る。繰り返し(i=1からd、ベースベクトル数)の各々で、いくつかの候補ベクトルαが、非ゼロ係数αの数と位置をランダムに選ぶことによりランダム化される。これは、以下のように、係数により範囲がとられる部分空間において、自己相関行列Sの分散を最大化するところの固有ベクトルや固有値を計算することにより行われ得る。
Figure 0005714599
ここで、r=1からランダム化の数まで、である(810)。
ランダム化の全てを通じて最大の分散である、現在の固有ベクトル α= αr maxは、以下のように選ばれる。
Figure 0005714599
最も大きな分散をもつ固有ベクトルαが選択され、固有ベクトルαは、以下のように正規化される(814)。
Figure 0005714599
これらの正規化された固有ベクトルαiの各々は、スパース係数行列A=[α, ..., α]に加えられる(816)。
各繰り返し(i≠1)毎に、自己相関行列Sは、以下のように、以前のベクトル部分空間について、ヌル空間に投射される。
Figure 0005714599
スパース係数行列A={α, ..., α}を得ると、射影行列Vが、カーネル行列Kと掛け合わせること、即ち、V=KA、により与えられる。クエリイメージからのパッチqは、qKAにより部分空間に射影され得る。qKはパッチqのガウスたたみ込みと等価で、スケール空間のより高いレベルにより与えられるので、当該パッチqは、スパース係数行列Aの非ゼロ要素を、該スケールスペースから標本取得される対応の画素に掛けることにより、部分空間に射影されることができる。
スパース射影ベクトルを用いることにより記述子を生成するためのプロセス例
図10(図10Aと10Bとからなる)は、特徴記述子がスパース射影行列にもとづいてどのように生成され得るかを示す。ここで、スパース射影行列A 1002は、(図7に示されるように)オフラインで得られている。この例において、第1の射影ベクトル(即ち、第1の行)は、非ゼロ係数 α 、α 75、α 201、およびα 576を含む。これらの係数は、図示のようにn x nのパッチ1004(例えば、n=39)に写像される。
クエリイメージに関し、特徴点1007が得られ、パッチ1006は特徴点1007の周りにつくられる。ここで、特徴点1007の周りの傾斜gは、クエリ(問い合わせ)パッチについて示されている。各傾斜gは、パッチにおける各点または画素に関連する大きさであってよい。複数の記述子要素 Dcomp1008は、大きさgと対応する係数αを掛けることにより生成され得る。ここで、非ゼロ係数αの位置は、スパース係数行列1002から知らされる。従って、(非ゼロ係数αに関する)パッチ1006における対応位置での傾斜の大きさが使用される必要がある。各記述子要素Dcompは、 Dcomp=α*g1,2+α50*g2,7+α88*g5,3+α143*g9,5 のように、非ゼロ係数と対応する傾斜の大きさgの結合(例えば、加算)であってよい。これは、対応する非ゼロの係数を用いて、スパース射影行列1002の全ての行、または複数の行について繰り返される。次に、記述子ベクトル1010は、記述子要素Dcompを連結することにより構築され得る。
従って、1つの例に従って、各特徴/特徴点記述子1012は、複数の記述子要素/コンポーネント [Dcomp ,Dcomp ,Dcomp , .... Dcomp ]からなる。ここで、標本点Iiについて各要素Dcomp は、
Figure 0005714599
であり、IX(i)は対応する非ゼロ係数のインデックスである。各パッチに係る1またはそれより多くの点の位置は、係数α (オフラインのトレーニングの間に見つけられる)に係る対応位置である。
スパース係数行列は、多くの異なる方法で表現され得ることを注記する。図10に示される例では、パッチ位置は、各々の位置に内在する。特に、係数の部分集合のみが非ゼロ係数であるとすると、スパース係数行列の大きさは、非ゼロ係数とそれらの対応パッチ位置を与えることにより減らされ得る。
図11は、非ゼロ係数1102とそれらの対応パッチ位置1104としてスパース射影行列を表現する例を示す。ここで、パッチ識別子は、非ゼロ係数とパッチ位置を相関するために用いられる。ここで、各要素αi,kは、以下の係数ベクトルであってよく、
Figure 0005714599
ここで、sは選択される非ゼロ係数の数である。射影ベクトルあたりの平均の非ゼロ係数は、例えば、s={4, 5.63, 9.41}である。各要素αi,kに関して、対応位置ベクトルIXi,k(j)が与えられ、IXik(j)は、大きさ(次元)(k)と標本(j)(例えば、座標)についての対応するパッチの対応する位置ベクトル、j=1,2,...,sについて、[IX1,1(j), .... IXm,d(j)]、を与える。
スパース係数行列A 1002(図10)は、スケーリング係数および/または位置のリスト、1またはそれより多くのスケーリング係数と位置のテーブル、および/または、ベクトル、行列、および/またはテーブルの組み合わせのような、様々な他の同等な形式で表現され得ることを注記する。
スパース射影ベクトルを用いることにより記述子を生成するためのプロセス例
図12は、あらかじめ定められるスパース射影ベクトルを用いることによって。特徴記述子を生成するための方法を示す。あらかじめ生成される1組のスパース射影ベクトルが得られる(1202)。イメージに係るスケール空間が得られ、ここで、スケール空間は複数のスケールレベルをもつ(1204)。次に、スケール空間における特徴点に係る記述子は、スパース射影ベクトルと、複数のスケールレベルにわたる複数の画素についてまばらに標本化された画素情報と、の結合にもとづいて生成され得る(1206)。画素情報は、特徴点に関連するパッチの中の各画素についての傾斜情報を含んでもよい。複数の画素は、スパース射影ベクトルに係る非ゼロ係数に対応した、あらかじめ定められた位置で選択され得る。
スパース射影ベクトルはイメージとは独立に(例えば、どのイメージが処理されようとしているかを知る前に)、生成され得る。1つの例では、各スパース射影ベクトルは、イメージに係る平滑化カーネルのスケールに拘束され得る。スパース射影ベクトルは、大部分のゼロの要素と複数の非ゼロ要素を含み得る。非ゼロ要素は、分散最大化手続きによって得られる。
様々な実施例において、スパース射影ベクトルの各々は、目的関数を最大化または最小化する。例えば、目的関数は、イメージのトレーニング用の組に係る複数のスケールレベルを通した、画素情報のための自己相関行列の最大化である。
図13は、あらかじめ定められるスパース射影ベクトルを使うことによる、特徴記述子を生成するための他の方法を示す。複数のスパース射影ベクトルを示す、あらかじめ生成される1組の非ゼロスケーリング係数が得られる。ここで、各スケーリング係数は、パッチの中の対応する位置に関連づけられる(1302)。例えば、そのようなスパース射影ベクトルは、図7および8に示されるように得られる。そのようなスパース射影ベクトルは、オフラインで計算されてもよく、スパース係数行列の部分であってよく、および/または、イメージに係る平滑化カーネルのスケールに抑えられてもよい。特徴点は、イメージに関して得られる(1304)。スパース射影ベクトルはイメージと独立であってもよいことを注記する。例えば、射影ベクトルは、当該イメージを除く1組のトレーニング用イメージにもとづいて生成される。パッチは、特徴点に関して得られる、または、定義される(1306)。特徴点に係る記述子は、複数の記述子要素にもとづいて生成される。各記述子要素は、以下のプロセスによって生成される。パッチに係る標本点位置が、第1のスパース射影ベクトルに係る非ゼロスケーリング係数位置にもとづいて特定される(1308)。パッチから特定された標本点位置の各々の大きさ/値は、第1のスパース射影ベクトルに係る対応する非ゼロスケーリング係数と乗ぜられ(または、その他結合され)、結果の値は、記述子要素を得るために共に加えられる(1310)。そのような乗算や加算の処理は、例えば、図10Bに示される。この処理は、複数の記述子要素を得るために、残りの複数のスパース射影ベクトルの各々を用いて繰り返される(1312)。つぎに、複数の記述子要素は、特徴点に係る記述子ベクトルを得るために、結合される(1314)。
記述子要素は、イメージに係るより高いレベルのスケール空間に射影される、パッチの中の標本点の重みづけされた和として考慮される、ことを注記する。結果的に、特徴点記述子は、イメージに係る異なるレベルのスケール空間に射影される、パッチからの標本点の部分集合の重みづけされた結合である。記述子は特徴点とパッチ情報にもとづいているから、当該記述子は、特徴点および/またはそのパッチの1つまたはそれより多くの特徴を特定する。スパース射影ベクトルが用いられる(例えば、射影ベクトルのわずかな要素のみが非ゼロの場合)ので、特徴点記述子は、パッチの大きさよりも少ない動作でもって生成され得る。
図14は、「特徴」を特徴づける、パッチの大きさ(次元)よりも少ない動作で特徴記述子を生成するための方法を示す。特徴点は、イメージに関して得られる(1402)。そのような特徴点は、イメージに関して得られるスケール空間(例えば、ガウススケール空間)から得られる。特徴点は、当該イメージの領域の中の特定のイメージスケールでの局所的な極小または極大であってよい。パッチは、特徴点の周りに定義され、該パッチは 画素数m x 画素数nの大きさ(次元)をもつ(1404)。また、あらかじめ定められるスパース射影ベクトルが得られる(1406)。例えば、スパース射影ベクトルは、スパース係数行列の部分であってよく、イメージに関する平滑化カーネルのスケールに抑えられてよい。スパース射影ベクトルは、当該イメージとは独立である。例えば、射影ベクトルは、当該イメージを除く1組のトレーニング用イメージにもとづいて生成され得る。次に、特徴点に係る記述子は、パッチの少なくとも1つの特徴と少なくとも1つのスパース射影ベクトルにもとづいて生成され、当該記述子は、パッチの大きさ(次元)m*nよりも少ない処理で生成される(1408)。
スパースPCA−SIFTの実装例
図15は、スパースPCA−SIFTアルゴリズムを用いて生成される記述子の正確さがテストされる、同一のテストイメージの様々な視点を示す。これらのイメージ1502、1506、および1508は、一致の正確性や計算処理の複雑さの観点で、この中に開示されるスパースPCA−SIFTアルゴリズムをSIFTやPCA−SIFTアルゴリズムと企画するために用いられる。一致の正確性は、リコール−プレシジョン・カーブ(recall-precision curves)を用いて評価される。これらのプロット(図16)は、2次元のシーンの2つのイメージについて、それらの間の既知のホモグラフィ(homography:相同性)を用いて得られる。xが特徴空間においてxの最も近いものであり、最も近いものへの距離と2番目の最も近いものへの距離との比率がしきい値tの下になる場合、第1のイメージにおける記述子xが第2のイメージにおける記述子xと「一致」とされる。この比率のテストは、差異のない記述子の一致を避けるために使われる。特定のしきい値に係るリコール比率は、正しい一致の、第1と第2のイメージの間の全ての可能な対応関係の数に対する比、即ち、recall= #true matches / #correspondences 、で与えられる。プレシジョンは、一致化の手続きがどれくらい正確であるかを、正しい一致の、一致検出のトータル数に対する比率、即ち、precision= #true matches / #matches 、を計算することにより表す。しきい値tが変化するので、リコール−プレシジョン・カーブが得られる。
図16は、全てがxとy方向での傾斜レベルを用いて得られる、SIFT、PCA−SIFT、およびスパースPCA−SIFTを用いる記述子の一致の正確性の例を示す。ここで、PCA−SIFTとスパースPCA−SIFTは、2 x 39 x 39 の正規化された傾斜パッチを用いている。この例では、平滑化カーネルの標準偏差は、以下のように選択される。
Figure 0005714599
パッチ(スケールレベルlで得られる)をスパースPCA部分空間に射影するために、係数が、2スケール上げて(スケールレベル l+2)、対応する画素と乗じられる。リコール−プレシジョン・カーブにみられるように、PCA−SIFTは、イメージペア1−2に関して非常に良好な性能を発揮する(グラフ1602)が、ペア1−3にあるように、視点変化がより大きい場合、劣化した性能になる(グラフ1604)。これは、PCAが、小さな登録エラーに敏感だからである。スパースPCA−SIFTは、ガウスベース関数を用いてベースベクトルを表すことにより、この問題を解決する。従って、それは、イメージペア1−3について、PCA−SIFTより良好な性能を示す。全体的に、スパースPCA−SIFTとSIFTは似通っており、前者は、視点変化が小さいときに、より良好な性能を示す。スパースPCA−SIFTの主要な利点は、平均して、すくない非ゼロ係数での乗算からなる、その計算処理の低い複雑性である。
図17は、SIFT、PCA−SIFT、およびスパースPCA−SIFTの計算処理の複雑性の比較を示すテーブルである。SIFTや他のヒストグラムベースの手法に係る記述子の計算処理の複雑さは、検出される特徴点のスケールレベルσに依存する。1つの例では、SIFTは、σがイメージに係るガウススケール空間のオクターブの中のスケールレベルに等しいとして、検出される特徴点位置の周りに12σ x 12σのパッチを開ける。このパッチは、8つの角度に量子化される配向のヒストグラムが各セルについて得られるとして、4 x 4のセルにプール(pool)される。各セルについて、三次−線形内挿化(tri-linear interpolation)(イメージ領域における 3σ±1.5σ=6σ の画素幅の正方形をもつ、スケール空間における最も近くの2つのセルの重みづけ合計は、16 x 2 x (6σ) 回の乗算と加算の結果をもたらす。標準のスケーリングが σ=1.6 である場合、これは、記述子あたり2949回の処理に等しく、1オクターブの中で最も高いレベル σ=3.2 に対しては、それは記述子あたり11796回の処理になる。
PCA−SIFTについて、39 χ 39画素のパッチの水平および垂直方向の傾斜は、検出される特徴点の周りで用いられる。PCA−SIFTは、2 χ 39=3042 次元(大きさ)の全てを用いることにより、50次元(大きさ)の部分空間にパッチを投射する。従って、それは、記述子を生成するために、パッチあたり 50 χ 3042=152100 回の乗算と加算の処理を必要とする。
一方、スパースPCA−SIFTについては、係数ベクトルの非ゼロ要素の数に限定される。PCA−SIFTアルゴリズムの複雑性は、200次元(大きさ)の部分空間にパッチを射影するために用いられる射影ベクトル s={4, 5.63, 9.41} あたりの平均の非ゼロ係数に比例する。これは、パッチあたり、4 x 200 = 800 と 9.41 x 200 = 1882 との間の回数の乗算と加算の処理を必要とする。従って、記載されるスパースPCA−SIFTアルゴリズムは、SIFTのようなヒストグラムベースの記述子、および、PCA−SIFTのような画素ベースの記述子より、ずっと高速の性能をだす。
イメージ一致化デバイスの例
図18は、スパース射影ベクトルを用いて特徴点記述子を生成することのできるイメージ一致化デバイスの例を示すブロック図である。イメージ一致化デバイス1800は、通信インタフェース1804、イメージ獲得デバイス1806、および/または、格納デバイス1808に接続される処理回路1802を有する。通信インタフェース1804は、有線/無線ネットワーク上で通信を行い、イメージ、および/または、1またはそれより多くのイメージに関する特徴記述子を受けるように適合される。イメージ獲得デバイス1806は、例えば、クエリイメージを獲得することができるデジタルカメラであってもよい。処理回路1802は、イメージから特徴を抽出するためにイメージ処理回路1814を、クエリイメージをターゲットイメージのデータベース1810と、または、クエリイメージ記述子と記述子データベース1812と比較するために抽出された特徴を用いるイメージ一致化回路1816と、を有する。処理回路は、また、スパース射影ベクトルのスパース係数行列1809を生成する射影ベクトル生成回路1813を有する、または、実装できる。スパース射影ベクトルがどのように生成され、用いられるかの例は、図1、6、7、8、10、12、13、および14に示される。イメージ一致化デバイス1800は、前記図面に記載される1またはそれより多くの態様および/または方法を実装し得る。
1つの実施例によれば、イメージ一致化アプリケーションは、クエリイメージと、イメージデータベースにおける1またはそれより多くのイメージとの一致化を試みる。イメージデータベースは、データベース1810に記憶される1またはそれより多くのイメージに関連する数百万の特徴記述子を含み得る。
イメージ処理回路1814は、ガウススケール空間生成器1822、特徴検出器1824、イメージスケーリング回路1826、および/または、特徴記述子抽出器1830を有する特徴特定回路1820をもつ。ガウススケール空間生成器1822は、例えば図2に示されるように、複数の異なるスケール空間を生成するために、イメージをぼやかし関数でたたみ込むように機能する。特徴検出器1824は、イメージに係る異なるスケール空間における1またはそれより多くの特徴点を特定し得る(例えば、図3に示されるように、局所的な極大や極小を用いることにより)。イメージスケーリング回路1826は、特徴検出および/またはクラスタリングを行うに適当なカーネルの大きさを選択するために、イメージのスケールを概算するよう機能する。特徴記述子生成器1830は、スパース係数行列1809に格納されるスパース射影ベクトルを用いることにより、各特徴点および/またはそのまわりのパッチに係る記述子を生成する。
いくつかの実装例では、クエリイメージに関する特徴点に関連づけられる1組の特徴記述子が、イメージ一致化デバイスによって受け取られ得ることを注記する。この状況では、クエリイメージは、(当該記述子を得るために)すでに処理されている。従って、イメージ処理回路1814は、バイパスされるか、または、イメージ一致化デバイス1800から除かれ得る。
モバイルデバイスの例
図19は、イメージまたはオブジェクトの認識の目的のためにイメージ処理を実施するよう適合されるモバイルデバイスの例を示すブロック図である。モバイルデバイス2200は、イメージ獲得デバイス1904、通信インタフェース1910、および格納デバイス1908に接続される処理回路1902をもち得る。イメージ獲得デバイス1904(例えば、デジタルカメラ)は、関心の対象であるクエリイメージ1906を獲得し、処理回路1902にそれを与えるよう適合され得る。格納デバイス1908は、複数のスパース射影ベクトルを定義するスパース係数行列1913を有し得る。スパース係数行列1913は、1組のトレーニング用イメージにもとづいて(モバイルデバイス上で、または、異なるデバイスで)、予め生成される。
処理回路1902は、続いてイメージ/オブジェクと認識のために送信され、または、用いられる特徴記述子を生成するために、獲得されるイメージを処理するように適合される。例えば、処理回路1902は、ガウススケール空間生成器1922と、特徴検出器1924と、イメージスケーリング回路1926と、および/または、特徴記述子抽出器1930とを有する特徴特定回路1920をもつ、または、実装することができる。ガウススケール空間生成器1922は、例えば図2に示されるように、複数の異なるスケール空間を生成するために、イメージをぼやかし関数でたたみ込むよう機能する。特徴検出器1924は、イメージに係る異なるスケール空間において、1またはそれより多くの特徴点を特定し得る(例えば、図3および6Aに示されるように、局所的な極大や極小を用いることにより)。イメージスケーリング回路1926は、特徴検出および/またはクラスタリングを行うに適当なカーネルの大きさを選択するために、イメージのスケールを概算するよう機能する。特徴記述子生成器1930は、スパース係数行列1913からの射影ベクトルを用いることにより、各特徴点および/またはその周りのパッチ(例えば、図6Bおよび10に示される)に係る記述子を生成する。特徴点記述子を生成するために、スパース射影ベクトルがどのように生成され、用いられるかの例は、図1、6、7、8、10、12、13、および14に示される。モバイルデバイス1900は、前記図に記載される1またはそれより多くの態様および/または方法を実装できる。
処理回路1902は、格納デバイス1908に1またはそれより多くの特徴記述子を格納し、および/または、通信ネットワーク1912を介し、その中でイメージまたはオブジェクトを特定するために特徴記述子を用いるイメージ一致化サーバに、通信インタフェース1910(例えば、無線通信のインタフェース、トランシーバ、または回路)上で特徴記述子を送信してもよい。即ち、イメージ一致化サーバは、そのデータベースの中のイメージが同じ特徴をもつかどうか決めるために、特徴記述子を、それ自身の特徴記述子のデータベースと比較し得る。
図に示される1つまたはそれより多くのコンポーネント、ステップ、態様、および/または機能は、単一のコンポーネント、ステップ、態様、または機能の中に再構成され、および/または、組み込まれてもよく、また、いくつかのコンポーネント、ステップ、または機能に具現化されてもよい。また、追加の素子、コンポーネント、ステップ、および/または機能は、この中に開示される新規な態様から離れることなく追加され得る。図に示される機器、デバイス、および/またはコンポーネントは、他の図に記載される方法、態様、またはステップの1またはそれより多くを実行するように構成されてもよい。また、この中に記載されるアルゴリズムは、ソフトウェアに効果的に実装されても、および/または、ハードウェアに埋め込まれてもよい。
実施形態は、フローチャート、フローダイアグラム、構造ダイアグラム、またはブロックダイアグラムとして表されるプロセスとして記載され得ることが注記される。フローチャートは1連の処理として動作を記述し得るが、当該動作の多くは、並行に、または、同時に実行されることができる。加えて、動作の順序は、再構成されてもよい。動作が完了するときに、プロセス(処理)は終了される。プロセスは、方法、機能、手順、サブルーチン、サブプログラム、等に対応し得る。プロセスが機能に対応する場合、その終了は、それを呼んでいる機能または主機能への機能の戻りに対応する。
さらに、格納媒体は、情報を格納するための読み出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク格納媒体、光格納媒体、フラッシュメモリデバイス、および/または、他の機械的読み出し可能媒体、プロセッサ読み出し可能媒体、および/または、コンピュータ読み出し可能媒体を含む、データを格納するための1またはそれより多くのデバイスをいう。「機械的読み出し可能媒体(machine-readable medium)」、「コンピュータ読み出し可能媒体(computer-readable medium)」、および/または「プロセッサ読み出し可能媒体(processor-readable medium)」は、限定はされないが、可搬型または固定の格納デバイス、光格納デバイス、および命令および/またはデータを格納し、保有し、または担うことができる様々な他の媒体のような非一時的の媒体を含む。従って、この中に書かれる様々な方法は、機械的読み出し可能媒体、「コンピュータ読み出し可能媒体、および/または「プロセッサ読み出し可能媒体に格納され、1またはそれより多くのプロセッサ、機器、および/またはデバイスによって実行され得る、命令および/またはデータによって、全体的に、または、部分的に実装される。
さらに、実施形態は、ハードウェア、ソフトウェア、ファームウエア、ミドルウェア、マイクロコード、またはそれらの組み合わせにより実装され得る。ソフトウェアに実装される場合、必要なタスクを実行するためのプログラムコードまたはコードセグメントは、格納媒体または他の格納器のような機械読み出し可能媒体に格納されてもよい。プロセッサは、必要なタスクを実行する。コードセグメントは、手順、機能、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、または、命令、データ構造またはプログラムステートメントの任意の組み合わせをいう。コードセグメントは、情報、データ、引き数(arguments)、パラメータ、またはメモリの内容を手渡すことおよび/または受け取ることによって、他のコードセグメント、または、ハードウェア回路に接続され得る。情報、引き数、パラメータ、データ、等は、メモリの共有化、メッセージ伝達、トークン伝達、ネットワーク伝送、などを含む、任意の適当な手段を介して、伝達、転送、または送信され得る。
この中に開示される例と関連して記載される様々な例示の論理ブロック、モジュール、回路、素子、および/またはコンポーネントは、このなかに記載される機能を実行するように設計された、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他のプログラム可能な論理コンポーネント、個別ゲート、またはトランジスタロジック、個別ハードウェアコンポーネント、またはそれらの任意の組み合わせを用いて実装され、または、実行され得る。汎用プロセッサはマイクロプロセッサであってよく、しかし代替品として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態マシンであってもよい。プロセッサは、また、例えば、DSPとマイクロプロセッサとの組み合わせのような計算処理をするコンポーネントの組み合わせ、いくつかのマイクロプロセッサ、DSPコアにつながる1つまたは多くのマイクロプロセッサ、任意の他の前記のような構成として実装されてもよい。
この中に記載される例に関連して説明される方法またはアルゴリズムは、ハードウェアの中に、プロセッサによって実行可能なソフトウェアモジュールの中に、または両者の組み合わせの中に、プロセッシングユニット、プログラミング命令、または他の指示体の形態で、直接具現化されることができ、単一のデバイスに含まれても、または、複数のデバイスにわたって分散されてもよい。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、取り出し可能ディスク、CD−ROM、または該技術分野で知られている任意の他の形態の格納媒体の中に駐在してもよい。格納媒体は、プロセッサに接続され、該プロセッサが格納媒体から情報を読み出し、および、格納媒体に情報を書き込むことができるようになっていてもよい。代替として、格納媒体は、プロセッサと一体にであってもよい。
さらに、該技術における技能をもつ者は、この中に開示される実施形態に関連して記載される、さまざまな例示の論理ブロック、モジュール、回路、およびアルゴリズムのステップは、電子的なハードウェア、コンピュータソフトウェア、または両者の組み合わせとして実装され得ることを十分理解する。ハードウェアとソフトウェアのこの互換性を明瞭に示すために、さまざまな例示のコンポーネント、ブロック、モジュール、回路、およびステップは、それらの機能に関して一般化して、上記されている。そのような機能がハードウェアまたはソフトウェアとして実装されるかどうかは、特定の応用やシステム全体に課せられる設計上の制約に依存する。
【0122】
【0122】
この中に記載される発明の様々な形態は、当該発明から離れることなく、異なるシステムに実装され得る。上記実施形態は単なる例示であり、発明を限定することとして解釈されるべきでないことが注記される。実施形態の説明は、例示を意図されており、請求項の範囲を限定すること意図されてはいない。そのように、この中で教示することは他の形式の装置に容易に適用されることができ、多くの代替、変更、多様化は該技術に習熟した者に明白である。
以下に本願出願当初の特許請求の範囲に記載された発明を付記する
[C1] あらかじめ生成されるスパース射影ベクトルの組を得ることと、 イメージに係るスケール空間を得ること、当該スケール空間は複数のスケールレベルをもつ、と、 前記スパース射影ベクトルと、前記複数のスケールレベルにわたる複数の画素に係るまばらに標本化される画素情報との結合にもとづいて、前記スケール空間における特徴点に係る記述子を生成することと、 を備える、特徴記述子を生成するための方法。
[C2] 前記スパース射影ベクトルは、イメージとは独立に生成される、請求項1に記載の方法。
[C3] 各スパース射影ベクトルは、前記イメージに係る平滑化カーネルのスケールに抑えられる、[C1]に記載の方法。
[C4] 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、[C1]に記載の方法。
[C5] 前記目的関数は、イメージのトレーニング用の組に係る複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、[C4]に記載の方法。
[C6] スパース射影ベクトルは、多数を占めるゼロ要素と複数の非ゼロ要素を含む、[C1]に記載の方法。
[C7] 前記非ゼロ要素は分散最大化手続きにより得られる、[C6]に記載の方法。
[C8] 前記画素情報は、前記特徴点に関連付けられるパッチの中の各画素に係る傾斜情報を含む、[C1]に記載の方法。
[C9] 前記複数の画素は、前記特徴点に係るパッチに関連付けられる、[C1]に記載の方法。
[C10] 前記複数の画素は、スパース射影ベクトルに係る非ゼロ係数に対応するあらかじめ定められた位置で選択される、[C1]に記載の方法。
[C11] 前記イメージに係る前記スケール空間から特徴点を得ることと、 前記特徴点に係るパッチ、前記パッチは前記複数の画素を含む、を得ることと、 をさらに備える、[C1]に記載の方法。
[C12] 前記複数のスパース射影ベクトルは、非ゼロスケーリング係数の組を定義し、 各非ゼロスケーリング係数は、前記パッチの中の対応する画素位置に関連付けられる、 [C1]に記載の方法。
[C13] 前記記述子は、複数の記述子要素を結合することによって生成され、 各記述子要素は、 第1のスパース射影ベクトルに係る非ゼロのスケーリング係数位置にもとづいて画素位置を特定することと、 前記パッチからの前記画素位置の値を、前記第1のスパース射影ベクトルに係る対応の非ゼロスケーリング係数に乗じ、第1の記述子要素を得るために結果の値を共に足すことと、 によって生成される、 [C12]に記載の方法。
[C14] 追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得ることをさらに備え、 前記第1の記述子要素と追加の記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、 [C13]に記載の方法。
[C15] 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記特徴点記述子は、前記パッチのm*n次元よりも少ない処理で生成される、 [C9]に記載の方法。
[C16] あらかじめ生成されるスパース射影ベクトルの組を記憶するための格納デバイスと、 前記格納デバイスに接続される処理回路と、を備え、 前記処理回路は、 イメージに係るスケール空間を得ること、当該スケール空間は複数のスケールレベルをもつ、と、 前記スパース射影ベクトルと、前記複数のスケールレベルにわたる複数の画素に係るまばらに標本化される画素情報との結合にもとづいて、前記スケール空間における特徴点に係る記述子を生成することと、 に適合される、デバイス。
[C17] 前記スパース射影ベクトルは、イメージとは独立に生成される、[C16]に記載のデバイス。
[C18] 各スパース射影ベクトルは、前記イメージに係る平滑化カーネルのスケールに抑えられる、[C16]に記載のデバイス。
[C19] 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、[C16]に記載のデバイス。
[C20] 前記目的関数は、イメージのトレーニング用の組に係る複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、[C19]に記載のデバイス。
[C21] スパース射影ベクトルは、多数を占めるゼロ要素と複数の非ゼロ要素を含む、[C16]に記載のデバイス。
[C22] 前記非ゼロ要素は分散最大化手続きにより得られる、[C21]に記載のデバイス。
[C23] 前記画素情報は、前記特徴点に関連付けられるパッチの中の各画素に係る傾斜情報を含む、[C16]に記載のデバイス。
[C24] 前記複数の画素は、前記特徴点に係るパッチに関連付けられる、[C16]に記載のデバイス。
[C25] 前記複数の画素は、スパース射影ベクトルに係る非ゼロ係数に対応するあらかじめ定められた位置で選択される、[C16]に記載のデバイス。
[C26] 前記処理回路は、さらに、 前記イメージに係る前記スケール空間から特徴点を得ることと、 前記特徴点に係るパッチ、前記パッチは前記複数の画素を含む、を得ることと、 に適合される、[C16]に記載のデバイス。
[C27] 前記複数のスパース射影ベクトルは、非ゼロスケーリング係数の組を定義し、 各非ゼロスケーリング係数は、前記パッチの中の対応する画素位置に関連付けられる、 [C26]に記載のデバイス。
[C28] 前記記述子は、複数の記述子要素を結合することによって生成され、 各記述子要素は、 第1のスパース射影ベクトルに係る非ゼロのスケーリング係数位置にもとづいて画素位置を特定することと、 前記パッチからの前記画素位置の値を、前記第1のスパース射影ベクトルに係る対応の非ゼロスケーリング係数に乗じ、第1の記述子要素を得るために結果の値を共に足すことと、 によって生成される、 [C27]に記載のデバイス。
[C29] 前記処理回路は、さらに、 追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得ることに適合され、 前記第1の記述子要素と追加の記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、 [C28]に記載のデバイス。
[C30] 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記特徴点記述子は、前記パッチのm*n次元よりも少ない処理で生成される、 [C24]に記載のデバイス。
[C31] あらかじめ生成されるスパース射影ベクトルの組を得るための手段と、 イメージに係るスケール空間を得るための手段、当該スケール空間は複数のスケールレベルをもつ、と、 前記スパース射影ベクトルと、前記複数のスケールレベルにわたる複数の画素に係るまばらに標本化される画素情報との結合にもとづいて、前記スケール空間における特徴点に係る記述子を生成する手段と、 を備えるデバイス。
[C32] 前記スパース射影ベクトルは、イメージとは独立に生成される、[C31]に記載のデバイス。
[C33] 各スパース射影ベクトルは、前記イメージに係る平滑化カーネルのスケールに抑えられる、[C31]に記載のデバイス。
[C34] 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、[C31]に記載のデバイス。
[C35] 前記目的関数は、イメージのトレーニング用の組に係る複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、[C34]に記載のデバイス。
[C36] スパース射影ベクトルは、多数を占めるゼロ要素と複数の非ゼロ要素を含む、[C31]に記載のデバイス。
[C37] 前記非ゼロ要素は分散最大化手続きにより得られる、[C36]に記載のデバイス。
[C38] 前記画素情報は、前記特徴点に関連付けられるパッチの中の各画素に係る傾斜情報を含む、[C31]に記載のデバイス。
[C39] 前記複数の画素は、前記特徴点に係るパッチに関連付けられる、[C31]に記載のデバイス。
[C40] 前記複数の画素は、スパース射影ベクトルに係る非ゼロ係数に対応するあらかじめ定められた位置で選択される、[C31]に記載のデバイス。
[C41] 前記イメージに係る前記スケール空間から特徴点を得るための手段と、 前記特徴点に係るパッチ、前記パッチは前記複数の画素を含む、を得るための手段と、 をさらに備える、[C31]に記載のデバイス。
[C42] 前記複数のスパース射影ベクトルは、非ゼロスケーリング係数の組を定義し、 各非ゼロスケーリング係数は、前記パッチの中の対応する画素位置に関連付けられる、 [C41]に記載のデバイス。
[C43] 前記記述子は、複数の記述子要素を結合することによって生成され、 各記述子要素は、 第1のスパース射影ベクトルに係る非ゼロのスケーリング係数位置にもとづいて画素位置を特定するための手段と、 前記パッチからの前記画素位置の値を、前記第1のスパース射影ベクトルに係る対応の非ゼロスケーリング係数に乗じ、第1の記述子要素を得るために結果の値を共に足すための手段と、 によって生成される、 [C42]に記載のデバイス。
[C44] 追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得るための手段をさらに備え、 前記第1の記述子要素と追加の記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、 [C43]に記載のデバイス。
[C45] 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記特徴点記述子は、前記パッチのm*n次元よりも少ない処理で生成される、 [C39]に記載のデバイス。
[C46] デバイス上で動作し、 処理回路によって実行されると、前記処理回路に、
あらかじめ生成されるスパース射影ベクトルの組を得ることと、 イメージに係るスケール空間を得ること、当該スケール空間は複数のスケールレベルをもつ、と、 前記スパース射影ベクトルと、前記複数のスケールレベルにわたる複数の画素に係るまばらに標本化される画素情報との結合にもとづいて、前記スケール空間における特徴点に係る記述子を生成することと、 をさせる、1またはそれより多くの命令を備える、プロセッサ読み出し可能媒体。
[C47] 前記スパース射影ベクトルは、イメージとは独立に生成される、[C46]に記載のプロセッサ読み出し可能媒体。
[C48] 各スパース射影ベクトルは、前記イメージに係る平滑化カーネルのスケールに抑えられる、[C46]に記載のプロセッサ読み出し可能媒体。
[C49] 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、[C46]に記載のプロセッサ読み出し可能媒体。
[C50] 前記目的関数は、イメージのトレーニング用の組に係る複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、[C49]に記載のプロセッサ読み出し可能媒体。
[C51] スパース射影ベクトルは、多数を占めるゼロ要素と複数の非ゼロ要素を含む、[C46]に記載のプロセッサ読み出し可能媒体。
[C52] 前記非ゼロ要素は分散最大化手続きにより得られる、[C51]に記載のプロセッサ読み出し可能媒体。
[C53] 前記画素情報は、前記特徴点に関連付けられるパッチの中の各画素に係る傾斜情報を含む、[C46]に記載のプロセッサ読み出し可能媒体。
[C54] 前記複数の画素は、前記特徴点に係るパッチに関連付けられる、[C46]に記載のプロセッサ読み出し可能媒体。
[C55] 前記複数の画素は、スパース射影ベクトルに係る非ゼロ係数に対応するあらかじめ定められた位置で選択される、[C46]に記載のプロセッサ読み出し可能媒体。
[C56] 前記処理回路により実行されると、前記処理回路に、 前記イメージに係る前記スケール空間から特徴点を得ることと、 前記特徴点に係るパッチ、前記パッチは前記複数の画素を含む、を得ることと、 をさせる1またはそれより多くの命令をさらに備える、[C46]に記載のプロセッサ読み出し可能媒体。
[C57] 前記複数のスパース射影ベクトルは、非ゼロスケーリング係数の組を定義し、 各非ゼロスケーリング係数は、前記パッチの中の対応する画素位置に関連付けられる、 [C46]に記載のプロセッサ読み出し可能媒体。
[C58] 前記記述子は、複数の記述子要素を結合することによって生成され、 各記述子要素は、 第1のスパース射影ベクトルに係る非ゼロのスケーリング係数位置にもとづいて画素位置を特定することと、 前記パッチからの前記画素位置の値を、前記第1のスパース射影ベクトルに係る対応の非ゼロスケーリング係数に乗じ、第1の記述子要素を得るために結果の値を共に足すことと、 によって生成される、 [C57]に記載のプロセッサ読み出し可能媒体。
[C59] 前記処理回路により実行されると、前記処理回路に、 追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得ること、 をさせる1またはそれより多くの命令をさらに備え、 前記第1の記述子要素と追加の記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、 [C58]に記載のプロセッサ読み出し可能媒体。
[C60] 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記特徴点記述子は、前記パッチのm*n次元よりも少ない処理で生成される、 [C54]に記載のプロセッサ読み出し可能媒体。

Claims (41)

  1. イメージのトレーニング用の組における第1の複数のスケールレベルにわたって検出される特徴点の各々の周りに定義されるパッチについてあらかじめ生成されるスパース射影ベクトルの行を含むスパース係数行列を記憶することと、
    第2の複数のスケールレベルにわたって、問い合わせイメージに係るスケール空間を得ることと、
    前記得られたスケール空間から1またはそれより多くの特徴点を特定することと、
    各特徴点の周りのパッチに関して傾斜ベクトルを生成すること、前記傾斜ベクトルは、前記パッチの中の画素の各々についての傾斜を含む、と、
    前記スパース係数行列における非ゼロ係数と前記スパース係数行列における前記非ゼロ係数に対応する位置に関する前記傾斜とを処理することによって、各特徴点についての複数の特徴記述子要素を得ることと、
    前記スケール空間における各特徴点に係る特徴点記述子を生成するために、前記複数の特徴記述子要素をベクトルに結合することと、
    を備える、特徴点記述子を生成するための方法。
  2. 前記スパース射影ベクトルは、前記問い合わせイメージとは独立に生成される、請求項1に記載の方法。
  3. 各スパース射影ベクトルは、前記問い合わせイメージに係る平滑化カーネルのスケールに抑えられる、請求項1に記載の方法。
  4. 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、請求項1に記載の方法。
  5. 前記目的関数は、イメージの前記トレーニング用の組に係る前記第1の複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、請求項4に記載の方法。
  6. 前記スパース射影ベクトルの各々は、多数を占めるゼロ要素と複数の非ゼロ要素を含む、請求項1に記載の方法。
  7. 前記非ゼロ要素は分散最大化手続きにより得られる、請求項6に記載の方法。
  8. 前記特徴記述子要素を結合することは、
    前記パッチからの前記位置に関する前記傾斜を、前記スパース係数行列における対応する前記非ゼロ係数に乗じ、前記特徴点記述子を得るために、該結果の値を共に足すこと、を備える、請求項1に記載の方法。
  9. 追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得ることをさらに備え、
    前記記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、請求項8に記載の方法。
  10. 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記第2の複数のスケールレベルs上で射影され、そこで、前記特徴点記述子は、前記パッチのm*n*s次元よりも少ない処理で生成される、
    請求項1に記載の方法。
  11. イメージのトレーニング用の組における第1の複数のスケールレベルにわたって検出される特徴点の各々の周りに定義されるパッチについてあらかじめ生成されるスパース射影ベクトルの行を含むスパース係数行列を記憶するための格納デバイスと、
    前記格納デバイスに接続される処理回路と、を備え、
    前記処理回路は、
    第2の複数のスケールレベルにわたって、問い合わせイメージに係るスケール空間を得ることと、
    前記得られたスケール空間から1またはそれより多くの特徴点を特定することと、
    各特徴点の周りのパッチに関して傾斜ベクトルを生成すること、前記傾斜ベクトルは、前記パッチの中の画素の各々についての傾斜を含む、と、
    前記スパース係数行列における非ゼロ係数と前記スパース係数行列における前記非ゼロ係数に対応する位置に関する前記傾斜とを処理することによって、各特徴点についての複数の特徴記述子要素を得ることと、
    前記スケール空間における各特徴点に係る特徴点記述子を生成するために、前記複数の特徴記述子要素をベクトルに結合することと、
    に適合される、デバイス。
  12. 前記スパース射影ベクトルは、前記問い合わせイメージとは独立に生成される、請求項11に記載のデバイス。
  13. 各スパース射影ベクトルは、前記問い合わせイメージに係る平滑化カーネルのスケールに抑えられる、請求項11に記載のデバイス。
  14. 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、請求項11に記載のデバイス。
  15. 前記目的関数は、イメージの前記トレーニング用の組に係る前記第1の複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、請求項14に記載のデバイス。
  16. 前記スパース射影ベクトルの各々は、多数を占めるゼロ要素と複数の非ゼロ要素を含む、請求項11に記載のデバイス。
  17. 前記非ゼロ要素は分散最大化手続きにより得られる、請求項16に記載のデバイス。
  18. 前記処理回路は、さらに、
    第1のスパース射影ベクトルに係る非ゼロのスケーリング係数の前記位置にもとづいて画素位置を特定することと、
    前記パッチからの前記位置に関する前記傾斜を、前記スパース係数行列における対応する前記非ゼロ係数に乗じ、前記特徴点記述子を得るために、該結果の値を共に足すことと、
    に適合される、請求項11に記載のデバイス。
  19. 前記処理回路は、さらに、
    追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得ることに適合され、
    前記記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、請求項18に記載のデバイス。
  20. 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記第2の複数のスケールレベルs上で射影され、そこで、前記特徴点記述子は、前記パッチのm*n*s次元よりも少ない処理で生成される、
    請求項11に記載のデバイス。
  21. イメージのトレーニング用の組における第1の複数のスケールレベルにわたって検出される特徴点の各々の周りに定義されるパッチについてあらかじめ生成されるスパース射影ベクトルの行を含むスパース係数行列を記憶するための手段と、
    第2の複数のスケールレベルにわたって、問い合わせイメージに係るスケール空間を得るための手段と、
    前記得られたスケール空間から1またはそれより多くの特徴点を特定するための手段と、
    各特徴点の周りのパッチに関して傾斜ベクトルを生成するための手段、前記傾斜ベクトルは、前記パッチの中の画素の各々についての傾斜を含む、と、
    前記スパース係数行列における非ゼロ係数と前記スパース係数行列における前記非ゼロ係数に対応する位置に関する前記傾斜とを処理することによって、各特徴点についての複数の特徴記述子要素を得るための手段と、
    前記スケール空間における各特徴点に係る特徴点記述子を生成するために、前記複数の特徴記述子要素をベクトルに結合するための手段と、
    を備える、特徴点記述子を生成するためのデバイス
  22. 前記スパース射影ベクトルは、前記問い合わせイメージとは独立に生成される、請求項21に記載のデバイス。
  23. 各スパース射影ベクトルは、前記問い合わせイメージに係る平滑化カーネルのスケールに抑えられる、請求項21に記載のデバイス。
  24. 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、請求項21に記載のデバイス。
  25. 前記目的関数は、イメージの前記トレーニング用の組に係る前記第1の複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、請求項24に記載のデバイス。
  26. 前記スパース射影ベクトルの各々は、多数を占めるゼロ要素と複数の非ゼロ要素を含む、請求項21に記載のデバイス。
  27. 前記非ゼロ要素は分散最大化手続きにより得られる、請求項26に記載のデバイス。
  28. 前記結合するための手段は、
    前記パッチからの前記位置に関する前記傾斜を、前記スパース係数行列における対応する前記非ゼロ係数に乗じ、前記特徴点記述子を得るために、該結果の値を共に足すための手段、
    を備える、請求項21に記載のデバイス。
  29. 追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得るための手段をさらに備え、
    前記記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、請求項28に記載のデバイス。
  30. 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記第2の複数のスケールレベルs上で射影され、そこで、前記特徴点記述子は、前記パッチのm*n*s次元よりも少ない処理で生成される、請求項21に記載のデバイス。
  31. デバイス上で動作し、
    処理回路によって実行されると、前記処理回路に、
    イメージのトレーニング用の組における第1の複数のスケールレベルにわたって検出される特徴点の各々の周りに定義されるパッチについてあらかじめ生成されるスパース射影ベクトルの行を含むスパース係数行列を記憶することと、
    第2の複数のスケールレベルにわたって、問い合わせイメージに係るスケール空間を得ることと、
    前記得られたスケール空間から1またはそれより多くの特徴点を特定することと、
    各特徴点の周りのパッチに関して傾斜ベクトルを生成すること、前記傾斜ベクトルは、前記パッチの中の画素の各々についての傾斜を含む、と、
    前記スパース係数行列における非ゼロ係数と前記スパース係数行列における前記非ゼロ係数に対応する位置に関する前記傾斜とを処理することによって、各特徴点についての複数の特徴記述子要素を得ることと、
    前記スケール空間における各特徴点に係る特徴点記述子を生成するために、前記複数の特徴記述子要素をベクトルに結合することと、
    をさせる、1またはそれより多くの命令を備える、プロセッサ読み出し可能記憶媒体。
  32. 前記スパース射影ベクトルは、前記問い合わせイメージとは独立に生成される、請求項31に記載のプロセッサ読み出し可能記憶媒体。
  33. 各スパース射影ベクトルは、前記問い合わせイメージに係る平滑化カーネルのスケールに抑えられる、請求項31に記載のプロセッサ読み出し可能記憶媒体。
  34. 前記スパース射影ベクトルの各々は、目的関数を最大化または最小化する、請求項31に記載のプロセッサ読み出し可能記憶媒体。
  35. 前記目的関数は、イメージの前記トレーニング用の組に係る前記第1の複数のスケールレベルにわたる画素情報についての自己相関行列の最大化である、請求項34に記載のプロセッサ読み出し可能記憶媒体。
  36. 前記スパース射影ベクトルの各々は、多数を占めるゼロ要素と複数の非ゼロ要素を含む、請求項31に記載のプロセッサ読み出し可能記憶媒体。
  37. 前記非ゼロ要素は分散最大化手続きにより得られる、請求項36に記載のプロセッサ読み出し可能記憶媒体。
  38. 前記1またはそれより多くの命令は、前記処理回路に、さらに、
    前記パッチからの前記位置に関する前記傾斜を、前記スパース係数行列における対応する前記非ゼロ係数に乗じ、前記特徴点記述子を得るために、該結果の値を共に足すこと、をさせる、
    請求項31に記載のプロセッサ読み出し可能記憶媒体。
  39. 前記処理回路により実行されると、前記処理回路に、
    追加の記述子要素を得るために、前記残りの複数のスパース射影ベクトルに係る追加の記述子要素を得ること、
    をさせる1またはそれより多くの命令をさらに備え、
    前記記述子要素は、前記特徴点記述子を得るためにベクトルとして結合される、請求項38に記載のプロセッサ読み出し可能記憶媒体。
  40. 前記パッチは、m画素かけるn画素の大きさ(次元)をもち、前記第2の複数のスケールレベルs上で射影され、そこで、前記特徴点記述子は、前記パッチのm*n*s次元よりも少ない処理で生成される、
    請求項31に記載のプロセッサ読み出し可能記憶媒体。
  41. 前記問い合わせイメージに係る前記スケール空間は異なるスケール空間である、請求項1に記載の方法。
JP2012542206A 2009-12-02 2010-12-02 イメージ認識のための記述子パッチの高速部分空間射影 Expired - Fee Related JP5714599B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US26595009P 2009-12-02 2009-12-02
US61/265,950 2009-12-02
US41275910P 2010-11-11 2010-11-11
US61/412,759 2010-11-11
PCT/US2010/058807 WO2011069023A2 (en) 2009-12-02 2010-12-02 Fast subspace projection of descriptor patches for image recognition

Publications (2)

Publication Number Publication Date
JP2013513168A JP2013513168A (ja) 2013-04-18
JP5714599B2 true JP5714599B2 (ja) 2015-05-07

Family

ID=43920389

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012542206A Expired - Fee Related JP5714599B2 (ja) 2009-12-02 2010-12-02 イメージ認識のための記述子パッチの高速部分空間射影

Country Status (6)

Country Link
US (1) US8897572B2 (ja)
EP (1) EP2507743A2 (ja)
JP (1) JP5714599B2 (ja)
KR (1) KR101420550B1 (ja)
CN (1) CN102782708A (ja)
WO (1) WO2011069023A2 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9530073B2 (en) * 2010-04-20 2016-12-27 Qualcomm Incorporated Efficient descriptor extraction over multiple levels of an image scale space
US9122955B2 (en) * 2010-06-28 2015-09-01 Ramot At Tel-Aviv University Ltd. Method and system of classifying medical images
US20120182442A1 (en) * 2011-01-14 2012-07-19 Graham Kirsch Hardware generation of image descriptors
US9014470B2 (en) * 2011-08-31 2015-04-21 Adobe Systems Incorporated Non-rigid dense correspondence
US9412020B2 (en) * 2011-11-09 2016-08-09 Board Of Regents Of The University Of Texas System Geometric coding for billion-scale partial-duplicate image search
WO2013073621A1 (ja) * 2011-11-18 2013-05-23 日本電気株式会社 局所特徴量抽出装置、局所特徴量抽出方法、及びプログラム
JP2013187726A (ja) * 2012-03-08 2013-09-19 Casio Comput Co Ltd 画像解析装置、画像処理装置、画像解析方法及びプログラム
CN103578093B (zh) * 2012-07-18 2016-08-17 成都理想境界科技有限公司 图像配准方法、装置及增强现实系统
US20150302270A1 (en) * 2012-08-07 2015-10-22 Metaio Gmbh A method of providing a feature descriptor for describing at least one feature of an object representation
GB201313125D0 (en) * 2013-07-23 2013-09-04 Univ Singapore Technology & Design Method and system for classifying images
KR101491461B1 (ko) 2013-08-02 2015-02-23 포항공과대학교 산학협력단 공분산 기술자를 이용하는 물체 인식 방법 및 장치
US9940506B2 (en) * 2013-11-25 2018-04-10 Ehsan FAZL ERSI System and method for face recognition
US9544655B2 (en) * 2013-12-13 2017-01-10 Nant Holdings Ip, Llc Visual hash tags via trending recognition activities, systems and methods
CN104751440A (zh) * 2013-12-31 2015-07-01 西门子医疗保健诊断公司 一种基于图像处理的方法和装置
US9224030B2 (en) 2014-01-10 2015-12-29 Qualcomm Incorporated Sensor identification
KR102018046B1 (ko) * 2014-02-24 2019-09-04 한국전자통신연구원 이미지 특징 추출 장치 및 방법
KR101581112B1 (ko) 2014-03-26 2015-12-30 포항공과대학교 산학협력단 계층적 패턴 구조에 기반한 기술자 생성 방법 및 이를 이용한 객체 인식 방법과 장치
US9558426B2 (en) 2014-04-24 2017-01-31 Nant Holdings Ip, Llc Robust feature identification for image-based object recognition
CN105224582B (zh) * 2014-07-03 2018-11-09 联想(北京)有限公司 信息处理方法和设备
US11544962B2 (en) * 2014-07-15 2023-01-03 FaceChecks LLC Multi-algorithm-based face recognition system and method with optimal dataset partitioning for a cloud environment
CN104156696B (zh) * 2014-07-23 2017-04-12 华南理工大学 基于双方向图的快速局部不变特征描述子的构造方法
JP6460520B2 (ja) * 2014-12-19 2019-01-30 Kddi株式会社 特徴記述装置、方法及びプログラム
US9483706B2 (en) * 2015-01-08 2016-11-01 Linear Algebra Technologies Limited Hardware accelerator for histogram of gradients
CN104881798A (zh) * 2015-06-05 2015-09-02 北京京东尚科信息技术有限公司 基于商品图像特征的个性化搜索装置及方法
CN104881877A (zh) * 2015-06-12 2015-09-02 哈尔滨工业大学 基于fpga的卷积与时序优化的图像关键点检测的方法
US9830528B2 (en) * 2015-12-09 2017-11-28 Axis Ab Rotation invariant object feature recognition
CN109074369B (zh) 2016-03-08 2022-03-04 河谷控股Ip有限责任公司 用于基于图像的对象识别的图像特征组合
US20170323149A1 (en) * 2016-05-05 2017-11-09 International Business Machines Corporation Rotation invariant object detection
JP6772737B2 (ja) 2016-10-04 2020-10-21 富士通株式会社 情報処理装置、情報処理方法、および情報処理プログラム
CN106503648A (zh) * 2016-10-20 2017-03-15 北京邮电大学 基于稀疏投影二值编码的人脸识别方法及装置
US11189020B2 (en) 2019-02-06 2021-11-30 Thanh Phuoc Hong Systems and methods for keypoint detection
CN110136100B (zh) * 2019-04-16 2021-02-19 华南理工大学 Ct切片图像的自动分类方法和装置
CN110232387B (zh) * 2019-05-24 2022-08-05 河海大学 一种基于kaze-hog算法的异源图像匹配方法
CN110909105B (zh) * 2019-11-25 2022-08-19 上海有个机器人有限公司 机器人地图的构建方法及系统
US11256956B2 (en) * 2019-12-02 2022-02-22 Qualcomm Incorporated Multi-stage neural network process for keypoint detection in an image
CN111414925B (zh) * 2020-03-18 2023-04-18 北京百度网讯科技有限公司 图像处理方法、装置、计算设备和介质
CN113537202B (zh) * 2020-04-15 2023-10-27 珠海一微半导体股份有限公司 硬件加速的sift特征点的坐标定位方法、系统及芯片
US11645831B2 (en) * 2020-07-07 2023-05-09 Applied Materials Israel Ltd. Identification of an array in a semiconductor specimen
US11810266B2 (en) * 2021-03-19 2023-11-07 Apple Inc. Pattern radius adjustment for keypoint descriptor generation
US11475240B2 (en) * 2021-03-19 2022-10-18 Apple Inc. Configurable keypoint descriptor generation
KR20230017549A (ko) * 2021-07-28 2023-02-06 주식회사 넥스트칩 특징점에 대한 기술자를 생성하기 위한 전자 장치 및 그 동작 방법
US20230281863A1 (en) * 2022-03-07 2023-09-07 Microsoft Technology Licensing, Llc Model fitting using keypoint regression

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5481621A (en) * 1992-05-28 1996-01-02 Matsushita Electric Industrial Co., Ltd. Device and method for recognizing an image based on a feature indicating a relative positional relationship between patterns
US7194134B2 (en) * 2001-01-02 2007-03-20 Microsoft Corporation Hierarchical, probabilistic, localized, semantic image classifier
US6678874B1 (en) * 2001-11-28 2004-01-13 Unisys Corporation Computer-aided design (CAD) tool
US7054468B2 (en) 2001-12-03 2006-05-30 Honda Motor Co., Ltd. Face recognition using kernel fisherfaces
JP4613617B2 (ja) 2005-01-07 2011-01-19 ソニー株式会社 画像処理システム、学習装置および方法、並びにプログラム
US7949186B2 (en) 2006-03-15 2011-05-24 Massachusetts Institute Of Technology Pyramid match kernel and related techniques
ATE470912T1 (de) 2006-04-28 2010-06-15 Toyota Motor Europ Nv Robuster detektor und deskriptor für einen interessenspunkt
JP4883649B2 (ja) * 2006-08-31 2012-02-22 公立大学法人大阪府立大学 画像認識方法、画像認識装置および画像認識プログラム
US8363973B2 (en) 2008-10-01 2013-01-29 Fuji Xerox Co., Ltd. Descriptor for image corresponding point matching
US8374442B2 (en) * 2008-11-19 2013-02-12 Nec Laboratories America, Inc. Linear spatial pyramid matching using sparse coding
DE102009022834A1 (de) 2009-05-27 2010-12-09 Siemens Aktiengesellschaft Verfahren zur automatischen Analyse von Bilddaten einer Struktur
JP4844657B2 (ja) 2009-07-31 2011-12-28 カシオ計算機株式会社 画像処理装置及び方法
CN102763123B (zh) 2009-12-02 2015-03-25 高通股份有限公司 通过使查询图像和模型图像中的检测到的关键点成群集而进行特征匹配
US8798377B2 (en) 2010-02-08 2014-08-05 Telefonica, S.A. Efficient scale-space extraction and description of interest points
US9189137B2 (en) 2010-03-08 2015-11-17 Magisto Ltd. Method and system for browsing, searching and sharing of personal video by a non-parametric approach
US8948515B2 (en) 2010-03-08 2015-02-03 Sightera Technologies Ltd. Method and system for classifying one or more images
US9639949B2 (en) 2010-03-15 2017-05-02 Analog Devices, Inc. Edge orientation for second derivative edge detection methods
US9530073B2 (en) 2010-04-20 2016-12-27 Qualcomm Incorporated Efficient descriptor extraction over multiple levels of an image scale space

Also Published As

Publication number Publication date
CN102782708A (zh) 2012-11-14
KR101420550B1 (ko) 2014-07-16
JP2013513168A (ja) 2013-04-18
WO2011069023A2 (en) 2011-06-09
WO2011069023A3 (en) 2011-07-28
EP2507743A2 (en) 2012-10-10
KR20120102738A (ko) 2012-09-18
US8897572B2 (en) 2014-11-25
US20110299782A1 (en) 2011-12-08

Similar Documents

Publication Publication Date Title
JP5714599B2 (ja) イメージ認識のための記述子パッチの高速部分空間射影
JP5503018B2 (ja) 一様なおよび一様でない照明の変化の中での特徴検出を改善するための尺度空間正規化技術
US8705876B2 (en) Improving performance of image recognition algorithms by pruning features, image scaling, and spatially constrained feature matching
JP5602940B2 (ja) 事前計算されたスケール空間からのデイジー記述子生成
KR101117837B1 (ko) 멀티 스케일 지향 패치를 이용한 멀티 이미지 특징 매칭
JP5451302B2 (ja) 画像処理装置及び方法、プログラム及び記憶媒体
US8798377B2 (en) Efficient scale-space extraction and description of interest points
US20080205764A1 (en) Information processing apparatus, method, and program
US20130089260A1 (en) Systems, Methods, and Software Implementing Affine-Invariant Feature Detection Implementing Iterative Searching of an Affine Space
KR100950776B1 (ko) 얼굴 인식 방법
Patterson et al. Object detection from large-scale 3d datasets using bottom-up and top-down descriptors
CN111753119A (zh) 一种图像搜索方法、装置、电子设备及存储介质
CN104520878A (zh) 提供用于描述对象表示的至少一个特征的特征描述符的方法
Toca et al. Normalized Autobinomial Markov Channels For Pedestrian Detection.
JP2014010633A (ja) 画像認識装置、画像認識方法、及び画像認識プログラム
KR101741761B1 (ko) 멀티 프레임 기반 건물 인식을 위한 특징점 분류 방법
CN114445916A (zh) 一种活体检测方法、终端设备及存储介质
JP2006252504A (ja) パターン認識装置、パターン認識方法、パターン認識プログラム、及びパターン認識プログラムの記録媒体
Estrada et al. Appearance-based keypoint clustering
Thomas et al. Real-time robust image feature description and matching
Gilani Object recognition by modified scale invariant feature transform
Goshtasby et al. Image descriptors
Zhang et al. 3DMKDSRC: A novel approach for 3D face recognition
JP2010055325A (ja) パターン認識装置及びパターン認識方法
野坂龍佑 Feature extraction based on spatial co-occurrence and rotation properties for image recognition

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131011

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131021

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140106

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141001

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150311

R150 Certificate of patent or registration of utility model

Ref document number: 5714599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees