(57)【要約】  画像認識を実行する方法が開示される。本方法は、一群のピクセルを取得すること及び勾配の大きさに基づいてピクセルのうちの少なくともいくつかをクラスター特徴へグループ化することを含む。当該組における各クラスター特徴について統計的変数が生成される。統計的変数は、クラスター特徴におけるピクセルの集合的な特性を表す。統計的変数は、一群のピクセルを異なる一群のピクセルと比較する基準として利用される。
2011508323.tif 000002
【特許請求の範囲】
【請求項１】
コンピューターにより実施される画像処理方法であって、
第１の画像に関連付けられた一群の勾配データを生成するステップと、
前記一群の勾配データに反映されるように、勾配の大きさに基づいて、前記第１の画像内のピクセルをクラスター特徴の組へ割り当てるステップと、
前記クラスター特徴の組を格納するステップと
を含む方法。
【請求項２】
前記割り当てるステップは、所与のクラスター特徴中のピクセルが同一又は実質的に類似する勾配の大きさを有するようにピクセルを割り当てるステップを含む請求項１に記載の方法。
【請求項３】
第２の画像に関連付けられた第２の一群の勾配データを生成するステップと、
前記第２の一群の勾配データに反映されるように、勾配の大きさに基づいて、第２の画像内のピクセルをクラスター特徴の第２の組へ割り当てるステップと、
前記第２の組のクラスター特徴を格納するステップと
をさらに含む請求項１に記載の方法。
【請求項４】
前記第２の組のクラスター特徴と比較して第１の組のクラスター特徴を評価することにより、前記第１の画像を前記第２の画像と比較するステップをさらに含む請求項３に記載の方法。
【請求項５】
前記第２の組のクラスター特徴と比較して第１の組のクラスター特徴を評価するステップは、第１の統計的変数を第２の統計的変数に対して評価するステップを含み、前記第１の統計的変数は、前記第１の組のクラスター特徴の一部である第１のクラスター特徴に含まれるピクセルの特性を示し、前記第２の統計的変数は、前記第２の組のクラスター特徴の一部である第１のクラスター特徴に含まれるピクセルの特性を示す請求項４に記載の方法。
【請求項６】
前記第１の統計的変数は、前記第１のクラスター特徴におけるすべてのピクセルにわたって平均を決定することにより計算される特性を示す請求項５に記載の方法。
【請求項７】
前記第１の画像を前記第２の画像と比較するステップは、クラスター特徴の類似性に基づいて、前記第１の組におけるクラスター特徴を前記第２の組におけるクラスター特徴と整列させるステップを含む請求項３に記載の方法。
【請求項８】
前記組における各クラスター特徴について、前記クラスター特徴に含まれるピクセルの特性を示す統計的変数の組を計算して格納するステップをさらに含む請求項１に記載の方法。
【請求項９】
前記統計的変数の組は前記クラスター特徴におけるピクセル数を示す領域変数を含む請求項８に記載の方法。
【請求項１０】
前記統計的変数の組は前記クラスター特徴におけるピクセルの相対的な位置を示す変数を含む請求項８に記載の方法。
【請求項１１】
前記統計的変数の組は前記クラスター特徴内のピクセルを集合的に示す平均勾配角度変数を含む請求項８に記載の方法。
【請求項１２】
前記統計的変数の組は傾斜変数を含む請求項８に記載の方法。
【請求項１３】
前記統計的変数の組は標準偏差変数を含む請求項８に記載の方法。
【請求項１４】
画像認識を実行するコンピューターにより実施される方法であって、
一群のピクセルを取得するステップと、
勾配の大きさに基づいて、前記一群のピクセルにおけるピクセルのうちの少なくともいくつかを１組のクラスター特徴へグループ化するステップと、
前記組における各クラスター特徴について、前記クラスター特徴におけるピクセルの集合的な特性を表す生成する統計的変数を生成するステップと、
前記一群のピクセルを異なる一群のピクセルと比較する基準として前記統計的変数を利用するステップと
を含む方法。
【請求項１５】
前記統計的変数を利用するステップは、前記組におけるクラスター特徴を、前記異なる一群のピクセルに関連付けられる異なる組におけるクラスター特徴と比較するステップを含む請求項１４に記載の方法。
【請求項１６】
前記統計的変数を生成するステップは前記クラスター特徴に含まれるピクセルの平均色を生成するステップを含む請求項１４に記載の方法。
【請求項１７】
前記統計的変数を生成するステップは前記クラスター特徴に含まれるピクセルの平均の位置を生成するステップを含む請求項１４に記載の方法。
【請求項１８】
前記統計的変数を生成するステップは前記クラスター特徴に含まれるピクセル数を生成するステップを含む請求項１４に記載の方法。
【請求項１９】
画像認識を実行するコンピューターにより実施される方法であって
第２の画像に対する第１の画像の相対的な類似度を決定するステップを含み、
前記決定するステップは、前記第１の画像に関連付けられたクラスター特徴を前記第２の画像に関連付けられたクラスター特徴と比較するステップを含み、前記第１及び第２の画像に関連付けられる前記クラスター特徴は、勾配の大きさに基づいてともにグループ化されたピクセルに基づいて導出される方法。
【請求項２０】
前記決定するステップは、前記第１の画像に関連付けられたクラスター特徴の数を前記第２の画像に関連付けられたクラスター特徴の数と比較するステップをさらに含む請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不変の視覚場面（invariant visual scene）及び物体の認識に関する。
【背景技術】
【０００２】
コンピューター・ビジョンは、取り込んだ画像から情報を得る人工システムに関連する科学技術の分野である。画像データは、ビデオ・シーケンス又は１つ以上のカメラからの視界を含む多くの形式をとり得るが、必ずしもこれらに限定されない。
【０００３】
一般的なカテゴリーのコンピューター・ビジョンは様々な異なるサブフィールド（subfield）を含む。物体認識は、例えば、複数の画像のうちのどれが目標画像に含まれる物体にもっとも類似した物体を含むかを決定して、画像データから物体を認識することを含むコンピューター・ビジョンのサブフィールドである。別のサブフィールドは、例えば、複数の画像のうちのどれが目標画像に含まれる物体にもっとも類似したシーン（scene）を含むかを決定して、画像データからシーンを認識することを含むシーン認識である。コンピューター・ビジョンは、自律ロボットナビゲーション及び監視されていないセキュリティー機能を含むが必ずしもこれらに限定されない様々な実際のアプリケーションを自動化する基礎としてしばしば利用される。例えば、ロボット及びセキュリティー・システムは特定の物体又はシーンが自動的に検知され識別される場合に、特定の応答を開始するように構成することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、自動化されたシーン及び物体認識を含む広範囲の認識指向のコンピューター・ビジョン・タスクをサポートするシステムが存在する。これらのシステムのうちのいくつかは合理的な程度の正確さで認識タスクを行い得るが、性能は、特に必要なコンピューター処理及び／又はメモリー資源の点から、必ずしも効率的なものではない。さらに、多くの既存のシステムが不変の画像認識を提供することに関して有効ではない。
【０００５】
上記の議論は、一般的な背景情報について提供されるものにすぎず、特許請求された主題の範囲の決定における助けとして使用されることを意図していない。
【課題を解決するための手段】
【０００６】
画像認識を行う方法の実施例が開示される。１つの実施例では、方法は、一群のピクセル（collection of pixels）を取得して、当該ピクセルのうちの少なくともいくつかを勾配の大きさに基づいて１組のクラスター特徴（cluster feature）へとグループ化することを含む。当該組の中の各クラスター特徴について、統計的変数が生成される。統計的変数は、クラスター特徴におけるピクセルの集合としての特性（collective property）を表す。統計的変数は、一群のピクセルを異なる一群のピクセルと比較するための基準として利用される。
【０００７】
この概要は、詳細な説明においてさらに以下に説明される概念の選択を単純化された形式で紹介するために提供される。この概要は、特許請求された主題の主な特徴又は不可欠な特徴を識別するようには意図されず、特許請求された主題の範囲の決定における助けとして使用するようにも意図されない。特許請求された主題は、背景技術において指摘した欠点のうち任意のもの又はすべてのものを解決するシステムに実施例に限定されない。
【図面の簡単な説明】
【０００８】
【図１】画像認識システムのブロック図である。
【図２】画像比較処理のフローチャート図である。
【図３】画像比較処理のフローチャート図である。
【図４】画像認識システムに関連したユーザー・インターフェースの例である。
【図５】コンピューター・システム環境の例を示す。
【発明を実施するための形態】
【０００９】
本発明は、コンピューター・ビジョン・システム、特に画像認識システムの性能及び信頼性を改善する方法に関する。この詳細な説明は、物体及び／又はシーン認識システムのコンテキストにおけるシステム及び方法について説明することになるかもしれないが、同一又は類似の概念が他の種類のコンピューター・ビジョン・システム内で同じように容易に適用できることが理解されるべきである。
【００１０】
図１は、本発明の実施例を実施することができる画像認識システム１０のブロック図である。システム１０は適切なシステムの１つの例にすぎず、特許請求された主題の使用又は機能の範囲に関していかなる限定も示唆するようには意図されない。また、システム１０は、示されたコンポーネントの任意の１つ又は組み合わせに関連するいなかる従属性又は要件を有しているものと解釈されるべきでもない。
【００１１】
画像認識システム１０は言うまでもなく単純化された表現であり、画像取り込み装置１２、画像アナライザー／プロセッサー１４、データベース１６及び出力１５を含む。画像取り込み装置１２は、画像を取り込むことができ、画像アナライザー／プロセッサー１４などの画像アナライザーに対応するデータを転送することができる任意のカメラ又は他のシステム・コンポーネントであってもよい。取り込んだ画像は、分離された画像を含んでもよく、又はビデオ画像の性質をより帯びていてもよい。さらに、装置１２は、本発明の範囲から逸脱することなく、例えば、同じシーン又は物体の複数の画像の視点（perspective）を取り込む複数のデバイスを容易に含むのと同じようにすることができる。
【００１２】
１つの実施例において、装置１２は、光学的システムを介して、画像化すべきシーン又は物体の視覚表現（visual representation）を受け取る撮像装置を含む。撮像装置は受信した視覚表現を示すアナログ画像信号を生成する。アナログ信号はアナログ・デジタル変換器に転送され、アナログ・デジタル変換器はアナログ信号のデジタル表現を生成する。デジタル信号は、格納し操作することができるデジタル化された画像へ再フォーマットされる。それが画像アナライザー／プロセッサー１４に転送されるこのデジタル化された画像の説明である。
【００１３】
本発明の１つの実施例において、より詳細に以下に説明されるように、画像アナライザー／プロセッサー１４は、画像取り込み装置１２から受け取られた画像の特徴及び特性を示すデータを生成する。１つの実施例では、このデータは、受信された画像を、データベース１６内に表される、１つ以上の異なる以前に得られた画像と効率的に比較するための基礎として利用される。出力１５は比較処理の実例の結果である。出力１５の正確な性質は、システム１０が適用される特定のコンテキストに依存する。例えば、出力１５は肯定的な又は否定的な比較結果の表示であってもよい。代替的に、出力１５は、もっとも類似しているか又は一致しきい値を越えるのに十分類似した、データベース１６中の特定の画像を識別することができる。しかし、これらは出力１５の多くの可能な形式の例にすぎない。
【００１４】
この点においてまた、不変性の概念に言及する価値がある。画像の１つの取り込みから次の取り込みまでに、例えば、視点、方向、照明などの観点から整合性がないことは論理的である。一致を断言するために、以前の画像が取り込まれた環境についての正確な又は実質的な再作成をシステム１０が要求する場合、システム１０はその後あまりロバストではなく、実際的な有用性がほとんど又はまったくないこともあり得る。より非常に詳しく以下に説明されるように、本明細書に記載された一致処理及びアルゴリズムは比較的効率的であるが、また、比較的に不変の画像認識をサポートすることができる点で有効である。
【００１５】
システム１０によって提供されるような画像認識機能から利益を得る様々な実際的なアプリケーションがある。多くの例のうちの１つにおいて、システム１０は、移動ロボットがその現在の環境（近郊、environs）が以前に経験した環境の画像のデータベースに対してよく知られているか否かを認識するべきためにコンピューター・ビジョンを利用することを可能にするように実施することができる。ロボットが周囲を移動する際、ロボットは、例として、その環境の写真を撮り、次に、識別子で写真にタグを付ける。当該識別子は、コンピューターにより生成された文字列であってもよいが、代替的に、人間にとってよりなじみのある識別補助として役立つ言葉や語句でもよい。このように、ロボットは、例えば、位置の場所を突き止める（例えば、この位置はキッチンであるなど）ためやシーンから物体を識別する（例えば、この物体は椅子であるなど）ために、ある程度の人工知能をサポートするべく、比較出力を利用することができる。このビジョンベースのアプローチは、ＧＰＳ（全地球測位システム）技術などの他の技術が利用可能でない環境において特に有益である。さらに、位置識別を可能にするほとんどの他の技術と比較して、ビジョンベースのアプローチの利用は比較的安価である。当業者は、移動ロボットアプリケーションが適用可能な実用的なアプリケーションの多くの例のうち１つにすぎないことを認識するであろう。
【００１６】
図２は、画像比較処理２００の単純化された表現を提供するフローチャート図である。処理２００は例えばコンピューターで実施される。１つの実施例では、処理２００はコンピューターによって実施される画像アナライザー／プロセッサー（例えば、図１の１４）によって実行される。ブロック２０２によれば、処理２００は単に第１の画像を得ることにより始まる。この画像が同時に取り込まれることは要求されない。当該画像が画像取り込み装置から直接得られることも要求されない。画像は、カメラ、デスクトップ、インターネット（例えば、ウェブ）、ディスク、又はスキャナーなどの任意のソースが起源であってもよいが、これらに限定されない。
【００１７】
１つの実施例では、得られた画像のパラメーターに設定される限定はほとんど又はまったくない。例えば、例として、必要な解像度（例えば、３２０×２４０、６４０×４８０など）はない。例として、必要な色濃度はない。画像は例えば白黒かもしれない。特に、画像は実際のシーンを表す必要はない。画像は、例えば、ビジュアル化補助、シミュレートされた環境又はグラフですらあり得る。明らかであるように、処理２００は任意の一群のピクセルを別の一群のピクセルと比較するために本質的に利用することができる。
【００１８】
ステップ２０４によれば、端部（境界、エッジ、edge）検出処理が得られた画像に適用される。当業者であれば、端部検出のために利用することができる様々な異なる方法があることを認識するであろう。本発明は特に１つのいかなる方法にも限定されない。１つの実施例では、端部検出は、各点（例えば、各ピクセル）における画像強度の勾配を計算するようにソーベルの係数（Sobel coefficient）の適用を利用して遂行される。
【００１９】
別の実施例では、端部検出は、Ｘ及びＹについての単純な一次元勾配ベクトル（−１，０，１）の適用を利用して遂行される。この場合、単一の畳み込みが勾配を増幅する画像の表現を作成するように画像中の各ピクセルにわたって適用される。この処理は、例としては畳み込みカーネルに対するパラメーターである。
【００２０】
この、後の方の端部検出処理を概念化するための１つの方法は、ピクセルのアレイ（すなわち、画像）を引き渡すスライディングウィンドウを想像することである。畳み込みは、そうでなければ例えば５×５ピクセルに容易にちょうどサイズ化することができるが、ウィンドウは例えば３×３のピクセルである。画像の３×３セクションの画像内の任意の点（例えば左上）から開始して、畳み込みが適用される。例えば、例として水平方向で３×３ピクセルに−１、０及び１を掛ける。同時に、垂直方向でそれらに−１、０及び１を掛ける。したがって、処理は、本質的に３×３行列から始まり、説明された処理に続いて、対応する３×３行列が作成される。結果は本質的には勾配の抽出である。元の画像と同じサイズであるが端部が強調された新たな画像が作成される。ここでも、本発明の範囲は特に１つのいかなる端部検出方法にも限定されない。当業者であれば、多数の既知の選択肢があることを認識するであろう。
【００２１】
当業者であれば、また、ほとんどの画像が、本質的に、互いに重なった赤色ピクセル行列、青色ピクセル行列及び緑色ピクセル行列の３つの画像であることを認識するであろう。１つの実施例では、勾配は、各色のチャネルについて実行される（例えば、勾配アルゴリズムは、赤色チャネルにおいて実行され、その後青色チャネルにおいて実行され、その後緑色チャネルにおいて実行される）。個々の勾配画像の各々は、本質的に、個別のモノクロ画像（例えば、赤色勾配、青色勾配及び緑色勾配）と見なすことができる。結果として生じる３つの勾配画像は、例として、互いの上に置かれて結合した単一の勾配画像を形成する。「勾配画像」という語が本明細書において利用される程度に、当該語が異なる色チャネルに集合的に関連したデータを含むことができることが理解されるべきである。
【００２２】
本発明の実施例がＲＧＢ（赤色、緑色、青色）以外の色空間における画像にちょうど同じように容易に適用できることについて言及する価値がある。例えば、実施例は、着色された画像の別の３つのチャネル符号化であるＹｃｂＣｒ色空間における画像に適用することができる。ＹｃｂＣｒ色空間において、勾配は、通常、Ｙチャネルにおいて強く、ＲＧＢに比べて、色と色彩照明の不変性が改善される。しかし、これは、本発明の実施例が適用され得る別の色空間の１つの例にすぎない。本発明の範囲は、本明細書において提供される例に限定されず、３チャネルをコード化するスキームに限定されない。
【００２３】
勾配画像内では、端部は明確に識別可能である。例えば、壁の垂直の角の画像は、対応する勾配画像において、当該角の端部に沿った高い大きな（high magnitude）ピクセル（すなわち、比較的強い線）を作成することがあり得る。もちろん、高く大きなピクセルは、異なる色のチャネルのうちのいくつか又はすべてにおいて勾配画像内に現れ得る。
【００２４】
１つの実施例では、辞書（例えば、ハッシュ表）が、勾配画像において見つかった個別の勾配の大きさの値についてエントリーを作成するために利用される。１つの実施例では、効率化のため、勾配の大きさは、（すなわち、元の倍精度から）最も近い整数値に量子化される。１つの実施例では、しきい値は、所定の値を上回る大きさの値を有するピクセルのみが辞書に加えられるように選択的に適用される。しきい値は例として調整可能なシステムパラメーターである。
【００２５】
ブロック２０６によれば、同じ（又はシステム許容度に依存する実質的に類似の）特徴を示すピクセルは、実質的にクラスター化される。辞書中の各エントリーは、各々が独自の（又はシステム許容度に依存する実質的に独自の）大きさの値を有する新たな「バケツ（bucket）」を作成する。１つの実施例では、勾配画像におけるすべてのピクセル（又は所定のしきい値を超える大きさを備えたすべてのピクセル）は、当該バケツのうちの１つに分類される。
【００２６】
勾配画像全体が処理された後、個別の勾配の大きさについてどれだけの数の合計のピクセルがシーン内に見つかったかを示すＮ個のバケツが存在する。ブロック２０８によれば、第１の画像に関連したクラスター又はバケツは（例えば、保存された画像データに名付けるためにテキストのタグを使用して）格納される。
【００２７】
ブロック２１０によれば、ステップ２０２−２０８は第２の画像に対して繰り返される。最後に、ブロック２１２により、第２の画像に対する第１の画像の類似度が、第２の画像に関連したクラスター／バケツの特性に対する第１の画像に関連したクラスター／バケツの特性の評価に基づいて評価される。
【００２８】
１つの実施例では、第１の画像に関連したクラスター／バケツの特徴は、複数の画像のうちのどれが第１の画像にもっとも類似するかを決定するために、複数の他の画像に関連したクラスター／バケツの特徴に対して評価される。１つの実施例では、複数の記憶された画像のうちのどれ（例えば、どのシーン、どの物体かなど）が第１の画像に対して（例えば、同時に取り込まれた画像に対して）もっとも一致するかを（クラスター／パケット特徴の全体又は一部に基づいて）示すヒストグラムが生成される。１つの実施例では、複数の格納されたシーンが（クラスター／パケット特徴の全体又は一部に基づいて）同時に取り込まれたシーンと平行して比較されるように、同時比較アルゴリズムが使用される。
【００２９】
特に、処理２００は、第１及び第２の画像の直接の文字どおりの比較を含んでいない。これは、少なくとも、２つの画像の間に大きな不整合があっても画像が比較されて一致しているとみなされ得るという点で有利である。これを概念化する別の方法は、処理２００が不変の画像認識を有効にサポートすることである。これが真実でない場合、その後第１及び第２の画像が同じカメラから得られたとしても、カメラが撮影の間にほんのわずかに移動された場合に、画像は恐らく一致するとは判断されない。また、第１及び第２の画像が反対の視点から同じ物体であったとしても、画像は恐らく一致するとは判断されない。
【００３０】
第１又は第２の画像のいずれかが同時に取り込まれる必要がないこともまた強調されるべきである。２つの画像は、カメラ、デスクトップ、インターネット（例えば、ウェブ）、ディスク、又はスキャナーなどの任意のソースを起源とすることができるが、これらに限定されない。もちろん、画像は同じソースを起源とする必要はない。画像は、解像度、色、照明などの点から同じパラメーター又は特徴を有していることを要求されることもない。処理２００は、実質的に、任意の第１の組のピクセルを任意の第２の組のピクセルと比較することをサポートする。
【００３１】
概して言えば、画像比較処理２００の基本的な理論は、比較すべき画像内の個々のピクセルの特定の位置に焦点を当てない。その代わりに、実質的に類似する勾配を有するピクセルがクラスター化され、本質的に、個々の特徴のように集合的に扱われる。通常の画像は、いくつかの強い端部、いくつかの弱い端部及びいくつかの中間の端部を持つことがあり得る。強度におけるこれらの差は対応する勾配画像中の勾配の分散に反映される。強い端部に関連したピクセルは、弱い端部に関連したピクセルとは異なるグループに割り当てられる。（例えば、平面のテーブル表面の画像などの端部のない画像の場合のように）画像中のすべてのピクセルが同じ勾配を有する場合には、特徴は識別されない（１つの画像を別のものと比較する場合にそれ自体の中の又はそれ自体のいずれかが有用な情報かもしれない）。
【００３２】
例として、白い背景に対する４つの同一の垂直に配向された一連の黒いラインのみを含む画像を想像することができる。一般に、画像比較処理２００は、黒線ピクセルが捜し出される位置に単に注目するのではない。その代わりに、端部、及び同一の強い勾配の大きさを備えた多くのピクセルがあるという事実が注目される。これらのピクセルはともにクラスター化され、画像比較処理の間、集合的に考慮される。
【００３３】
１つの実施例では、勾配の大きさに基づいてクラスター／バケツ特徴（機能）へピクセルを割り当てる処理は、ある程度、ピクセル位置を考慮に入れるように構成される。例えば、ある状況において、同一又は類似の勾配について複数のクラスター／バケツ特徴を作成するために、規則が課されてもよい。例えば、同じ勾配を有するがｘより大きな距離部分の２つのピクセル（ｘは調整可能なシステムパラメーターである）を２つの別個のクラスター／バケツ特徴へ割り当てることが望ましいことがあり得る。これは、比較の目的のためのより多くの特徴を作成するオプションとなる方法である。もちろん、画像比較ステップ（例えば、処理２００のステップ２１２）は、例として、そのような状況が存在する場合に同一又は類似の勾配特徴を有する複数のクラスター／バケツを説明するか又は有利に利用するように構成される。
【００３４】
画像比較が比較されるべき画像に関連したクラスター／バケツ特徴の勾配の大きさの特性に単に基づいてなされることが考えられる一方、それらの比較の正確さがすべての画像にとって良くはないであろう。例えば、白色背景に対する４つの黒い垂直の線を備えた画像は、白色背景に対する４つの類似する黒いが水平な線を備えた画像と一致すると判断され得る。比較処理がこれらのような状況においてより柔軟であることが望ましい。この説明は、比較処理をより柔軟且つロバストにする方法の例に変わる。
【００３５】
１つの実施例において、各クラスター／バケツについて、実際の個々の物理的なピクセル位置の記録を保持するのではなく、勾配特徴のより広い集合的な組がクラスター中のピクセルのすべてに対して追跡される。当業者であれば、特徴が追跡される正確な性質が１つのアプリケーションから次のものまで変化してもよいことを認識するであろう。別のクラスター／バケツ特徴との１つのクラスター／バケツ特徴の比較をサポートするいかなる特徴も、本発明の範囲内にあると考慮されるべきである。勾配画像及び／又は対応する元の画像に由来した値にクラスター／バケツ特徴特性が基づくことがあることに留意すべきである。さらに、特徴は、所与のクラスター／バケツ特徴において表されたピクセルにわたって計算された平均値であり得る。
【００３６】
１つの実施例では、特徴ベクトルは各クラスター／バケツ特徴について生成される。各特徴ベクトルは、対応するクラスター／バケツに含まれるピクセルの集合的又は平均的な特徴を表す。１つの実施例では、特徴ベクトルは、クラスター／バケツ内のピクセルに基づいて平均化されたいくつかの変数を含んでいる。１つの実施例では、変数は、平均的な領域（例えば、特徴に含まれるピクセル数）、平均の位置（例えば、重心）、平均の勾配角度、平均勾配の大きさ、傾斜（例えば、重心の）、標準偏差（例えば、重心の）及びカートシス（例えば、変数の確率分布が正規分布に対してとがっているか平坦であるかについての測定）のうちのいずれか又はすべてを含む。特徴ベクトルは例として画像比較処理をサポートするために生成される。
【００３７】
クラスター／バケツ特徴が大きさにおいて類似したピクセルを含む一方、それらは元の画像内の異なる位置から来てもよい。したがって、１つの画像を別のものと比較することが望まれる場合、比較の目的（例えば、特徴ベクトルにおいて表される変数を比較する目的）のために、１つの画像からのクラスター／バケツ特徴が他方からのクラスター／バケツ特徴とどのようにそろえられる（aligned）べきかは直ちには明らかではない。
【００３８】
説明された整列ジレンマ（alignment dilemma）に対する解決策の一例として、図３は、第１の画像（以後、「目標画像」と呼ばれる）を、複数の他の画像（以後、データベースに格納される画像のような（「格納された画像」と呼ばれる）と比較する処理３００を示すフローチャート図である。１つの実施例では、処理３００は、コンピューターにより実施される画像アナライザー／プロセッサー（例えば、図１の中の１４）によって行われる。例として、クラスター／バケツ特徴が目標画像と格納された画像とについて生成された（そして格納された）と仮定する。また、例として、比較変数がクラスター／バケツ特徴について生成された（そして格納された）と仮定する。
【００３９】
ブロック３０２によれば、各保存された画像について、目標画像からの各クラスター／バケツ特徴は、例えば特徴ベクトルにおける変数を比較することにより、保存された画像において最も近い特徴に一致される。１つの実施例では、これは、目標画像のすべての特徴と保存された画像のすべての特徴との間のユークリッド距離をとり、次に、最小の距離を備えたものをとることにより行われる。オプションとして、この動作はすべての変数が等しいと考えられるとは限らないように、重み付けをするスキームを課するように構成することができる。
【００４０】
ブロック３０４によれば、目標画像からの整列した特徴は、保存された画像からのベクトルと一致する順で１つの大きなベクトルに書き出される。ブロック３０６によれば、各保存された画像ベクトルとその対応する目標画像ベクトルとの間で差が計算される。ブロック３０８によれば、最小距離を備えた保存された画像は、最も近い一致する画像として選択される。
【００４１】
したがって、「異なる」特徴ベクトルは、各保存された画像との比較をサポートするために、目標画像について計算される（特徴の順序は異なる）。これにより、１つの重み行列がすべての保存された画像に対して利用されることが可能になる。その順序は、例として、目標画像が変化する場合に（すなわち、異なる整列により）変わる。これは、各保存された画像の異なる重みベクトルを生成することを意味する。１組の画像に対するトレーニングは、検出の最も高い可能性を与える。
【００４２】
当業者であれば、本発明の範囲から逸脱することなく、他の比較アルゴリズムを利用することができることを認識するであろう。例えば、説明された平面ベクトル手法ではなく、最も近い一致が最も一致する変数を有することにより最も多くの点を記録する保存された画像であるような、「ポイント」システムを実施することができる。これは本発明の範囲内で考慮されるべき他の多くの可能な比較スキームのうちの１つにすぎない。
【００４３】
この点において、クラスター／バケツ特徴比較処理において考慮することができる変数のうちのいくつかを精査する価値があり得る。言及された変数のうちの１つは平均の勾配角度であった。１つの実施例では、勾配角度は、例えば、水平の勾配の大きさで除算された垂直の勾配の大きさの逆タンジェントを使用して、ピクセルごとに計算される（その後、変数をサポートするために平均される）。当該逆タンジェントは次のように表すことができる：
Ａｔａｎ（ｇｒａｄＭａｇＹ［ｉ］／ｇｒａｄＭａｇＸ［ｉ］）  式１
考慮に入れることができる別の変数は平均色強度である。説明されたように、クラスター／バケツ特徴へのピクセルの割り当ては、例として、各色チャネルについて行われる。真ん中に緑色のボールのあるテーブルの画像及び同じテーブルであるが真ん中に青色のボールのある別の画像を想像することができる。２つの画像は非常に類似しているが、ボールの色が異なる。処理中、赤色チャネルにおいては、ボールに対応する勾配はない。青色チャネルには青色ボールの勾配があり、緑色チャネルには緑色のボールの勾配がある。処理が異なる色チャネル内で生じるので、処理２００は、色の差を検出する。１つの実施例では、各クラスター／バケツについて、平均色強度（すなわち、平均の緑色強度、平均の青色強度及び平均の赤色強度）が各色チャネルに対して追跡される。１つの実施例では、平均色強度は、（勾配画像とは対照的に）元の画像内の個々のピクセルの色に基づく。
【００４４】
クラスター／バケツ特徴の標準偏差は、例として、機能内に含まれるピクセルの分散の表示である。例えば、標準偏差は、特定の機能が画像の全体にわたるピクセルを含むことを示してもよい（すなわち、比較的高い標準偏差）。言いかえれば、当該機能は、比較的遠く離れており、散在しているピクセルを含む。標準偏差が小さい場合、それは画像内でそれらのピクセルが実際にともにグループ化されていることを意味する（例えば、テーブルの真ん中にあるボールを形成する明るい赤色ピクセル）。
【００４５】
１つの実施例では、画像を比較するために使用される追加の測定は特徴ベクトル自体のサイズである。例えば、すべての色チャネルにわたって画像Ａが１０のクラスター／バケツ特徴（すなわち、１０の異なる勾配の大きさの値の）を有すると想像することができる。各クラスターは、例として９つの変数（勾配、平均角度、クラスター中のピクセル数、平均色、平均色標準偏差、重心Ｘ、重心Ｙ、標準偏差ｘ、標準偏差ｙ）を含む。その後、画像Ａについて記述する全体の特徴ベクトルは、９０（例えば、９×１０＝９０）のサイズを有する。ここで、画像Ｂがすべての色チャネルにわたって３０のクラスター／バケツ特徴を有していると想像することができる。その特徴ベクトルは、その結果、はるかに大きな３００である。ベクトルサイズのこの差にもかかわらず、一致アルゴリズムは、それでもなお、例として、画像Ａからの特徴を画像Ｂからの特徴とうまく調和させるように試みる（特に、Ｂにおける同じ機能がＡにおける同じ機能に複数回一致することができる）。しかし、１つの実施例では、追加の特徴のサイズの値は、一致処理において計算され考慮される。１つの実施例では、特徴のサイズ（feature size）の値は次のように計算される： 
ＦｅａｔｕｒｅＳｉｚｅ＝ｆｖｌＡ−ｆｖｌＢ／ｍａｘ（ｆｖｌＡ，ｆｖｌＣ）  式２
ここで、ｆｖｌＡは特徴ベクトルＡの長さ、ｆｖｌＢは特徴ベクトルＢの長さ、ｆｖｌＣは特徴ベクトルＣの長さである。機能のサイズは、例として、ユークリッド距離に加えられ、シーン同士の間で計算される。したがって、全体の特徴ベクトルのサイズの不一致が大きくなるほど、画像はより大きく「離れる」。実際的見地から言えば、これは、相対的な画像複雑度の良い指標である（例えば、勾配を持たない画像はほとんどクラスター／バケツ特徴を有さず、したがって、多くの勾配及びクラスター／バケツ特徴を有する画像とそれがよく一致しないことが迅速に決定できる）。
【００４６】
所与の画像は、任意の数のピクセル、おそらくは３００，０００又はそれより多くのピクセルをも含むことができる。本発明は、画像比較目的のために多くの個々のピクセル特性を分析しなければならないという処理負担を回避する。代わりに、比較的少数のクラスター／バケツ特徴の特性が比較処理をサポートする。多くのピクセルを含む画像は、少数のクラスター／バケツ特徴、例えば、１つの色チャネルあたり１０の特徴、にまで低減される。その後、少数の追跡される変数は、各機能について導出される。したがって、これは、正確で効率的な画像比較処理をサポートする比較的少数のデータ点につながる。
【００４７】
図４は例示的なユーザー・インターフェース４００である。インターフェース４００は、画像比較処理２００及び３００を適用するシステムのどの一部がユーザーの視点からのように見え得るかを示す。実例のみの目的で、同時に得られた目標画像を保存された画像のデータベースと比較するためにシステムが適用されていると仮定される。
【００４８】
目標画像を３つの異なる保存された画像（例えば、データベースにおいて最も近い一致した３つの画像）と比較した結果に関連したデータが図４に含まれる。ボックス４０２、４０４及び４０６は各々、３つの画像（保存された画像あたり１つの勾配画像）のうちの１つに関連した勾配画像の表現を含む。ボックス４０８、４１０及び４１２は各々、３つの画像を目標画像と比較する処理の間に導出された統計（保存された画像ごとに１組の統計）の図的表現を含む。
【００４９】
各々のボックス４０８、４１０及び４１２は、１０本の異なるバーを備えたチャートを含む。第１の９つのバーの各々は異なる特徴変数によってラベル付けされ、各特徴変数はクラスター／バケツ特徴の特性である。特に、９つの特性は、領域（例えば、特徴に含まれるピクセル数）、角度（例えば、特徴におけるピクセルにわたる平均勾配角度）、大きさ（例えば、特徴におけるピクセルの平均の大きさ）、色（例えば、特徴におけるピクセルの平均色）、色標準偏差、Ｘ軸に対する標準偏差、Ｙ軸に対する標準偏差、Ｘ軸に対する傾斜（skew）、及びＹ軸に対する傾斜を含む。
【００５０】
ボックス４０８、４１０及び４１２の各々において、９つの特徴のうち各々について、誤差値はその値のバー表現（bar representation）と共に提供される。誤差値は、例として、その特性について、関連する格納された画像が目標画像と比較される（例えば、図３に関連して説明される処理などのクラスター／バケツ特徴の整列を最適化するためのアルゴリズムに従って比較される）ときに生成される誤差を表す。バーが高くなるほど（すなわち、誤差値が大きくなるほど）、目標画像と比較して、格納された画像についてより大きな誤差が存在したことになる。
【００５１】
したがって、目標シーンと最も緊密に一致する画像は、最も小さなバー（すなわち、最も小さな誤差）を備えた画像である。図４に示される例の場合には、目標シーンは、ボックス４０８に関連した保存された画像（すなわち、「ＷａｌｌＷｉｔｈＭｏｕｓｅ」という名のシーン）に最も近い。ボックス４０８、４１０及び４１２の各々に含まれる１０番目の値／バーは、現在のシーンと保存されたシーンの各々との間のクラスター／バケツ特徴の数の差を表すことに留意すべきである。
【００５２】
ユーザー・インターフェース４００は、一群の制御（collection of controls）を含む領域４２０を含んでいる。特徴特性／変数が比較処理において等しい重みを必ずしも与えられないように、制御部は、例として、ユーザーが機能特徴／変数（例えば、ボックス４０８、４１０及び４１２に示される１０の変数）を操作することを可能にする。ユーザー・インターフェース４００はまた、ユーザーが大きさしきい値（例えば、クラスター／バケツ特徴を形成する処理に課されるべき最小の勾配しきい値）を選択的に課することができる領域４２２を含む。領域４２２はまた、ユーザーが特徴範囲（feature radius）に関連する要求を課することを可能にする。もちろん、当業者であれば、インターフェース４００が、制御及びデータ表現がユーザーにどのように提示され得るかについての多くの例のうちの１つにすぎないことを認識するであろう。他の制御及び／又はデータ表現を準備する構成は確実に本発明の範囲内にある。
【００５３】
図５は、実施例が実施され得る適切なコンピューター・システム環境５００の例を示す。コンピューター・システム環境５００は、適切なコンピューター環境の１つの例にすぎず、特許請求された主題の使用又は機能の範囲に関していかなる限定も示唆するようには意図されない。また、コンピューター環境５００は、例示的な動作環境５００に示されたコンポーネントの任意の１つ又はそれらの組み合わせに関連する従属性又は要件を有しているものとも解釈されるべきでない。
【００５４】
実施例は、多数の他の汎用もしくは専用のコンピューター・システム環境又な構成により使用可能である。様々な実施例による使用に適した周知のコンピューター・システム、環境及び／又は構成は、パーソナル・コンピューター、サーバー・コンピューター、ハンドヘルド装置もしくはラップトップ・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースのシステム、セットトップ・ボックス、プログラム可能な家電、ネットワークＰＣ、ミニコンピューター、メインフレーム・コンピューター、電話システム、上述のシステムもしくは装置の任意のものを含む分散コンピューティング環境などを含むがこれらに限定されない。
【００５５】
本明細書において、実施例は、コンピューターによって実行されるプログラム・モジュールなどのコンピューター実行可能命令の一般的なコンテキストにおいて説明された。一般に、プログラム・モジュールは、特定のタスクを実行するか又は特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。実施例は、通信ネットワークを介してリンクされる遠隔処理装置によってタスクが行われる分散コンピューティング環境において実行することができる。分散コンピューティング環境において、プログラム・モジュールは、記憶装置デバイスを含むローカル・コンピューター記憶媒体及びリモート・コンピューター記憶媒体の両方（又はそのいずれか）に配置することができる。
【００５６】
図５を参照すると、いくつかの実施例を実施するための例示的なシステムは、コンピューター５１０の形式の汎用の計算装置を含む。コンピューター５１０のコンポーネントは、演算処理装置（processing unit）５２０、システム・メモリー５３０、及び演算処理装置５２０にシステム・メモリーを含む様々なシステム・コンポーネントを結合するシステム・バス５２１を含み得るが、これらに限定されない。
【００５７】
コンピューター５１０は、通常、様々なコンピューター読み取り可能な媒体を含む。コンピューター読み取り可能な媒体は、コンピューター５１０によってアクセスすることができ、揮発性及び不揮発性の媒体、取り外し可能及び取り外し不能の媒体を含む任意の利用可能な媒体とすることができる。限定ではなく例として、コンピューター読み取り可能な媒体はコンピューター記憶媒体及び通信媒体を含んでもよい。コンピューター記憶媒体は、コンピューター読み取り可能な命令、データ構造、プログラム・モジュール又は他のデータなどの情報の記憶のための任意の方法又は技術において実施される、揮発性及び不揮発性の媒体、取り外し可能及び取り外し不能の媒体を含む。コンピューター記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリーもしくは他のメモリー技術、ＣＤ−ＲＯＭ、デジタル・バーサタイル・ディスク（ＤＶＤ）もしくは他の光学ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、又は所望の情報を格納するために使用することができコンピューター５１０によってアクセスすることができる任意の他の媒体を含むがこれらに限定されない。通信媒体は、通常、コンピューター読み取り可能な命令、データ構造、プログラム・モジュール又は他のデータを、搬送波又は他の移送機構などの変調データ信号に具体化し、任意の情報配信媒体を含む。「変調データ信号」なる語は、その特徴の１つ以上を有するか又は信号内に情報を符号化する方法において変化された信号を意味する。限定ではなく例として、通信媒体は、有線ネットワークもしくは直接の有線接続などの有線媒体、及び、音響、ＲＦ、赤外線及び他の無線媒体などの無線媒体を含む。上記のもののうちの任意のものの組み合わせもまたコンピューター読み取り可能な媒体の範囲内で含まれるべきである。
【００５８】
システム・メモリー５３０は、コンピューター記憶媒体を、読み出し専用メモリー（ＲＯＭ）５３１及びランダム・アクセス・メモリー（ＲＡＭ）５３２などの揮発性及び／又は不揮発性のメモリーの形式で含む。起動中などにコンピューター５１０内の要素間で情報を転送するのを助ける基本ルーチンを含む基本入出力システム５３３（ＢＩＯＳ）は、通常、ＲＯＭ５３１に格納される。ＲＡＭ５３２は、通常、演算処理装置５２０にすぐにアクセス可能であり及び／又は演算処理装置５２０によって現在動作されているデータ及び／又はプログラム・モジュールを含む。限定ではなく例として、図５は、オペレーティング・システム５３４、アプリケーション・プログラム５３５、他のプログラム・モジュール５３６及びプログラム・データ５３７を示す。アプリケーション５３５は、処理２００及び３００と同一又は類似の機能を実施するアナライザー／プロセッサーであり得る、画像アナライザー／プロセッサーを含むものとして示される。これは、コンピューター・システムのコンテキストにおける本発明の実施例の可能な実施の１つの例にすぎない。
【００５９】
コンピューター５１０はまた、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピューター記憶媒体を含んでもよい。一例として、図５は、取り外し不能で不揮発性の磁気媒体から読み出しをするか又は当該媒体へ書き込みをするハードディスクドライブ５４１、取り外し可能で不揮発性の磁気ディスク５５２から読み出しをするか又は当該媒体へ書き込みをする磁気ディスク装置５５１、及びＣＤ  ＲＯＭ又は他の光学的媒体などの取り外し可能で不揮発性の光ディスク５５６から読み出しをするか又は当該光ディスクから読み出しをするか又は当該媒体へ書き込みをする光ディスクドライブ５５５を示す。例示的な動作環境において使用することができる他の取り外し可能／取り外し不能な、揮発性／不揮発性のコンピューター記憶媒体は、磁気カセットテープ、フラッシュ・メモリー・カード、デジタル・バーサタイル・ディスク、デジタル・ビデオ・テープ、固体ＲＡＭ、固体ＲＯＭなどを含むがこれらに限定されない。ハードディスクドライブ５４１は、通常、インターフェース５４０などの取り外し不能なメモリー・インターフェースを介してシステム・バス５２１に接続され、磁気ディスクドライブ５５１及び光ディスクドライブ５５５は、通常、インターフェース５５０などの取り外し可能なメモリー・インターフェースを介してシステム・バス５２１に接続される。
【００６０】
既に議論され図５に示された駆動装置及びそれらの関連するコンピューター記憶媒体は、コンピューター５１０のため、コンピューター読み取り可能な命令、データ構造、プログラム・モジュール及び他のデータについての記憶装置を提供する。図５において、例えば、ハードディスクドライブ５４１は、オペレーティング・システム５４４、アプリケーション・プログラム５４５、他のプログラム・モジュール５４６及びプログラム・データ５４７を格納するものとして示される。これらのコンポーネントがオペレーティング・システム５３４、アプリケーション・プログラム５３５、他のプログラム・モジュール５３６及びプログラム・データ５３７と同じであるか又はこれらと異なることに留意されたい。オペレーティング・システム５４４、アプリケーション・プログラム５４５、他のプログラム・モジュール５４６及びプログラム・データ５４７は、少なくとも、それらが異なるコピーであることを示すために、ここでは異なる参照番号を与えられる。アプリケーション５４５は画像アナライザー／プロセッサーを含むものとして示され、それは処理２００及び３００と同一であるか又は類似する機能を実施するアナライザー／プロセッサーであってもよい。これは、コンピューター・システムのコンテキストにおける本発明の実施例の可能な実施の１つの例にすぎない。
【００６１】
ユーザーは、キーボード５６２、及びマウス、トラックボール又はタッチパッドなどのポインティング・デバイス５６１などの入力装置を介してコンピューター５１０へコマンド及び情報を入力することができる。他の入力装置（図示せず）は、ジョイスティック、ゲーム・パッド、マイクロホン、衛星放送アンテナ、スキャナーなどを含んでもよい。これら及び他の入力装置は、しばしば、システム・バスに結合されるユーザー入力インターフェース５６０を介して演算処理装置５２０に接続されるが、並列ポート、ゲームポート又はユニバーサル・シリアル・バス（ＵＳＢ）などの他のインターフェース及びバス構造によって接続されてもよい。モニター５９１又は他の種類のディスプレイ装置はまた、ビデオ・インターフェース５９０などのインターフェースを介してシステム・バス５２１に接続される。モニターに加えて、コンピューターはまた、スピーカー５９７及びプリンター５９６などの他の周辺出力装置を含んでもよく、これらは出力周辺インターフェース５９５を介して接続されてもよい。
【００６２】
コンピューター５１０は、リモート・コンピューター５８０などの１つ以上のリモート・コンピューターへの論理接続を使用して、ネットワーク化された環境中で動作される。図５に示された論理接続は広域ネットワーク（ＷＡＮ）５７３であるが、さらに又はこれに代えて他のネットワークを含んでもよい。コンピューター５１０は、インターネットなどのＷＡＮ５７３を介して通信を確立するために、モデム５７２又は他の手段を含む。モデム５７２は、内蔵のものでも外付けのものでもよいが、ユーザー入力インターフェース５６０又は他の適切な機構を介してシステム・バス５２１に接続されてもよい。リモート・コンピューター５８０はリモート・アプリケーション５８５を動作するものとして示される。アプリケーション５８５は画像アナライザー／プロセッサーを含むものとして示され、それは処理２００及び３００と同一又は類似する機能を実施するアナライザー／プロセッサーであってもよい。これは、コンピューター・システムのコンテキストにおける本発明の実施例の可能な実施の１つの例にすぎない。
【００６３】
本発明の主題は、構造的特徴及び／又は方法論的な動作に特有の言葉で説明されたが、添付の特許請求の範囲において定義される主題が上述の特定の特徴又は動作に必ずしも限定されないことは理解されるべきである。より正確に言えば、上述の特定の特徴及び動作は、請求項を実施する例示的な形式として開示されるものである。
【図１】
2011508323.tif 000003
【図２】
2011508323.tif 000004
【図３】
2011508323.tif 000005
【図４】
2011508323.tif 000006
【図５】
2011508323.tif 000007
【国際調査報告】
2011508323.tif 000008
2011508323.tif 000009