(57)【要約】      （修正有）【課題】拡張されたデータ駆動型検出に基づいてオブジェクトパーツ位置を検出するための方法及びシステムを提供する。【解決手段】注釈オブジェクトによって注釈された訓練画像のセットに対するパーツの構成間の特定の関連度値が定義される。類似性学習アルゴリズムが、パーツ構成間の類似性に基づいて類似性関数を得るためにパーツに対し適用される。類似性学習アルゴリズムが、類似したパーツ構成を有するポジティブなペアと異なる構成を有するネガティブなペアとのセットを受け取り、新たなポジティブなペアに高スコアを、ネガティブなペアに低スコアを割り当てる傾向がある類似性関数を戻す。新たな画像と訓練画像との間の類似性が、近傍画像を得るために、学習された類似性関数を利用して測定され、画像に関する可視パーツ位置及び／又は不可視パーツ位置が、近傍画像に基づいて予測される。【選択図】図５
2015191666.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトパーツ位置を検出するためのシステムであって、前記システムは、
プロセッサと、
コンピュータプログラムコードを具体化するコンピュータ使用可能な媒体とを備え、前記コンピュータ使用可能な媒体は、前記プロセッサと通信することができ、前記コンピュータプログラムコードは、前記プロセッサによって実行可能な命令を備え、前記命令は、
複数のパーツの構成と注釈オブジェクトによって注釈された訓練画像のセットとの間の関連度値を定義し、
前記関連度値に基づいて学習された類似性関数を得るために、前記複数のパーツに対し類似性学習アルゴリズムを適用し、
近傍画像を得て、前記近傍画像に基づいて新たな画像に関する可視パーツ位置および／または不可視パーツ位置を予測するために、前記学習された類似性関数を利用して前記新たな画像と前記訓練画像のセットとの間の類似性を測定するために構成される、システム。
【請求項２】
前記命令はさらに、
前記類似性学習アルゴリズムによって、類似したパーツ構成を有するポジティブなペアと異なるパーツ構成を有するネガティブなペアとのセットを受け取り、
前記ポジティブなペアに高スコアを、前記ネガティブなペアに低スコアを割り当てる前記類似性関数を戻すために構成される、請求項１に記載のシステム。
【請求項３】
前記命令はさらに、画像取り込みユニットによって前記オブジェクトに関する前記訓練画像と前記新たな画像とを取り込み、画像処理ユニットを利用して前記画像を処理するために構成される、請求項１に記載のシステム。
【請求項４】
前記訓練画像と前記新たな画像とに関する前記注釈オブジェクトは、少なくとも４つの座標を有する矩形形状を備える、請求項１に記載のシステム。
【請求項５】
前記注釈オブジェクトは、前記不可視パーツ位置に対する空の値を備える、請求項４に記載のシステム。
【請求項６】
オブジェクトパーツ位置を検出するための処理を引き起こす命令を表すコードを記憶したプロセッサ可読媒体であって、前記コードは、
複数のパーツの構成と注釈オブジェクトによって注釈された訓練画像のセットとの間の関連度値を定義し、
前記関連度値に基づいて学習された類似性関数を得るために、前記複数のパーツに対し類似性学習アルゴリズムを適用し、
近傍画像を得て、前記近傍画像に基づいて新たな画像に関する可視パーツ位置および／または不可視パーツ位置を予測するために、前記学習された類似性関数を利用して前記新たな画像と前記訓練画像のセットとの間の類似性を測定するためのコードを備える、プロセッサ可読媒体。
【請求項７】
前記コードはさらに、
前記類似性学習アルゴリズムによって、類似したパーツ構成を有するポジティブなペアと異なるパーツ構成を有するネガティブなペアとのセットを受け取り、
前記ポジティブなペアに高スコアを、前記ネガティブなペアに低スコアを割り当てる前記類似性関数を戻すためのコードを含む、請求項６に記載のプロセッサ可読媒体。
【請求項８】
前記コードはさらに、画像取り込みユニットによって前記オブジェクトに関する前記訓練画像と前記新たな画像とを取り込み、画像処理ユニットを利用して前記画像を処理するためのコードを含む、請求項６に記載のプロセッサ可読媒体。
【請求項９】
前記訓練画像と前記新たな画像とに関する前記注釈オブジェクトは、少なくとも４つの座標を有する矩形形状を備える、請求項６に記載のプロセッサ可読媒体。
【請求項１０】
前記注釈オブジェクトは、前記不可視パーツ位置に対する空の値を備える、請求項９に記載のプロセッサ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は一般的に、オブジェクト検出の分野に関する。実施形態はまた、画像処理の分野に関する。実施形態は加えて、オブジェクトパーツ位置予測のためのＤＤＤ（データ駆動型検出）の分野に関する。
【背景技術】
【０００２】
オブジェクトを検出することは、多くの画像処理およびコンピュータビジョン用途における基本的なステップである。図１は、従来のオブジェクト検出技法を利用して検出された関心のオブジェクト１０５（たとえば、人物）および１１０（たとえば、車両）を含む画像１００の例を示す。図１に示された従来技術のオブジェクト検出アプローチは、関心のオブジェクト１０５および１１０を含む画像１００を受け取ることを含み、所望の出力としてオブジェクト位置の周りの境界ボックス１１５のような注釈オブジェクトを生成する。タスク（すなわち、位置特定すべきオブジェクトのタイプ／インスタンス）が、データ訓練セットによって指定され得、データ訓練セットは、境界ボックス１１５の形態の関連オブジェクトの位置によって注釈された画像を示すデータを含み得、境界ボックス１１５は、所望の入出力ペアの例を提供する。
【０００３】
単にオブジェクトを位置特定するだけではある特定の用途にとって不十分であり得るので、オブジェクトの特定の部分またはパーツを検出することが、画像のさらなる解釈を可能にする。たとえば、特定の身体のパーツ（たとえば、頭部、胴体、腕、等）の位置が、特定の姿勢を推定するかまたは人物によって行われた動作を推論するために検出され得る。同様に、車両の異なるサイド（たとえば、前、後、左、右、ナンバープレート、ホイール、等）が、車両のポジションを解釈するために検出され得る。
【０００４】
図２は、別のオブジェクトパーツ検出技法を使用して検出されたオブジェクト／人物１０５およびオブジェクト／車両１１０の画像１５０の例を示す。画像１５０に関するオブジェクトパーツが、予め定義された異なるパーツに対応する境界ボックス１６０の固定セットを利用して決定され得る。この手法によるオブジェクトパーツの検出は、オブジェクト位置を知ることよりも、画像１５０に描かれたシーンについて、詳細な情報を提供し、深い推理を可能にする。
【０００５】
データ駆動型検出（ＤＤＤ）は、入力画像と注釈された訓練セットにおけるすべての画像との間の類似性を計算することによって画像中のオブジェクトを検出するための別のアプローチである。オブジェクトの位置が、第１のいくつかの近傍における注釈されたオブジェクト位置の加重平均として予測され得る。類似性は、画像間の標準的な類似性であるか、または類似性学習アルゴリズムによって得られ得る。検出は、データベースへのクエリとして公式化され得、類似性は、予測が画像全体からの情報を用いるように全体的な画像記述子から計算され得る（すなわち、オブジェクトとは異なる画像のパーツもまた、オブジェクトを予測するためのキューとして用いられ得る）。画像間で得られる類似性は一般的な類似性ではなく、それはメトリック学習使用時の検出の終了タスクに適合させられる。
【０００６】
そのようなＤＤＤ技法に関連づけられた問題は、画像が単一の境界ボックスによって注釈される点であり、パーツ間の全体的な一貫性を考慮しない。加えて、各々のパーツについて一度スライディングウィンドウアプローチが実行されなくてはならず、パーツの組み合わせの実現可能性を保証するためにハイレベルな一貫性モデルが通常用いられるので、ＤＤＤは効率的とは言えない。さらに、ＤＤＤアプローチは下位領域の大きなセットの評価を含み、コンテキストを活用しないので、また、分類が下位領域内の情報に基づくのみであるので、ＤＤＤは、精確ではなく、非効率性を含む。オブジェクトのパーツを検出するためのそのような方法は典型的に、非常に高価である。
【０００７】
上記に基づいて、本明細書においてさらに詳細に説明されるように、拡張されたデータ駆動型検出に基づいてオブジェクトパーツ位置を予測するための改善された方法およびシステムに対するニーズが存在すると確信する。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以下の概要は、開示される実施形態に特有の革新的な特徴のいくつかの理解を容易にするために提供され、完全な説明であることを意図していない。本明細書において開示される実施形態のさまざまな態様の完全な理解は、明細書全体、特許請求の範囲、図面、および要約を全体的に考慮することによって得られ得る。
【０００９】
したがって、開示される実施形態の一態様は、改善されたオブジェクトパーツ検出を提供することである。
【００１０】
開示される実施形態の別の態様は、拡張されたデータ駆動型検出に基づいてオブジェクトパーツ位置を予測するための改善された方法およびシステムを提供することである。
【００１１】
開示される実施形態のさらなる態様は、複数のオブジェクトパーツ位置を検出するための改善された類似性学習方法およびシステムを提供することである。
【課題を解決するための手段】
【００１２】
上述された態様と他の目的および利点とがここで、本明細書において説明されるように達成され得る。拡張されたデータ駆動型検出に基づいてオブジェクトパーツ位置を検出するための方法およびシステムが本明細書において開示される。たとえば、パーツ境界ボックスのセットといった注釈オブジェクトによって注釈された訓練画像のセットに対するパーツの構成間の特定の関連度値が定義され得る。境界「ボックス」の使用は、開示される実施形態の限定ではなく、本明細書において例示の目的のためだけに言及される、ということに注意する。他の形状（すなわち、矩形、円、楕円、等）または他のオブジェクト（たとえば、グラフ、等）が境界ボックスの代わりに利用され得ることが理解され得る。
【００１３】
類似性学習アルゴリズムが、パーツ構成間の類似性に基づいて類似性関数を得るためにパーツに対し適用され得る。類似性学習アルゴリズムが、類似したパーツ構成を有するポジティブなペアと異なる構成を有するネガティブなペアとのセットを受け取り、新たなポジティブなペアに高スコアを、ネガティブなペアに低スコアを割り当てる傾向がある類似性関数を戻す。新たな画像と訓練画像との間の類似性が、近傍画像を得るために、学習された類似性関数を利用して測定され得、画像に関する可視パーツ位置および／または不可視パーツ位置が、近傍画像に基づいて予測され得る。データ駆動型検出が、パーツ間の全体的な一貫性を考慮することにより、パーツの数にかかわらず単一のクエリとして実行され得る。
【００１４】
オブジェクトに関する画像が、画像取り込みユニットによって取り込まれ得、画像処理ユニットを利用して処理され得る。画像の訓練セットが、固定数のパーツを有する注釈オブジェクト（たとえば、パーツ境界ボックス）によって注釈され得る。境界ボックスは、たとえば、少なくとも４つの座標（上、下、左、右）を有する矩形であり得る。しかしながら、注釈オブジェクトが、多角形、画素マスク、グラフ、等といった、（境界ボックスに限定されない）パーツを注釈するための他のパラダイムと互換性がある、ということが理解され得る。矩形についての本明細書におけるいかなる言及も、例示を目的としたものであるにすぎない。
【００１５】
注釈オブジェクト（たとえば、境界ボックス、多角形、画素マスク、グラフ、等）は、パーツが画像において可視でない場合、空の値を含み得る。画像における可視パーツに対応するインデックスのセットが定義され得る。異なるパーツが画像において可視である場合には、関連度値は０である。類似したパーツが可視である場合には、パーツごとの重複スコアが、たとえば区域の共通部分対合併比のようなパーツ間の重複を測定することによって計算され得る。重複関数がしきい値より大きければ、関連度値は１であり、そうでなければ０である。しきい値は、データ駆動型検出用途に関する制約に依存する。すべての可視パーツの境界ボックスが類似し、その位置が一致している場合、構成は類似している。
【００１６】
オブジェクトパーツ位置の予測は、学習された類似性関数と最近傍とを使用して画像間の類似性を計算することによって決定され得る。パーツの位置（および可視性）が単一の近傍について出力され得、パーツは、複数の近傍のケースにおいて組み合わせられ得る。パーツが近傍の大半について可視でない場合には、出力は空の値である。そうでなければ、可視パーツについての加重平均が計算され得る。不可視パーツを扱う近傍画像のオブジェクトパーツの位置もまた、組み合わせられ得る。システムは、著しくより高い精度を得て、単独でない複数の境界ボックスによって注釈された画像のために用いられ得る。
【００１７】
添付図面では、同様の参照番号が別個の図全体を通して同一の要素または機能的に同様の要素を指すが、この添付図面は、本明細書の一部に組み込まれ、本明細書の一部を形成し、さらに、本発明を例示し、発明の詳細な説明とともに本発明の原理を説明する役割を果たす。
【図面の簡単な説明】
【００１８】
【図１】図１は、従来技術のオブジェクト検出アプローチを利用して検出された人物および車両の画像を示す図である。
【図２】図２は、従来技術のオブジェクトパーツ検出アプローチを利用して検出された人物および車両の画像を示す図である。
【図３】図３は、実施形態にしたがって実装され得るコンピュータシステムの模式図である。
【図４】図４は、実施形態に係る、オブジェクトパーツ位置検出モジュール、オペレーティングシステム、およびユーザインターフェースを含むソフトウェアシステムの模式図である。
【図５】図５は、代替の実施形態に係る、オブジェクトパーツ位置検出システムのブロック図である。
【図６】図６は、代替の実施形態に係る、拡張されたデータ駆動型検出を利用して複数のオブジェクトパーツ位置を検出するための方法の論理演算ステップを示す動作のハイレベルなフローチャートである。
【図７】図７は、代替の実施形態に係る、オブジェクトパーツ検出システムを利用して検出された車両パーツの画像を示す図である。
【図８】図８は、代替の実施形態に係る、境界ボックスのセットを有する車両の画像を示す図である。
【図９】図９は、代替の実施形態に係る、オブジェクトパーツ検出の結果を示す表である。
【図１０】図１０は、代替の実施形態に係る、オブジェクトパーツ検出を従来技術のオブジェクト検出方法と比較した視覚表現である。
【発明を実施するための形態】
【００１９】
これらの非限定的な例において議論される特定の値および構成は、変更されることができ、少なくとも１つの実施形態を例示するためだけに引用されているにすぎず、その範囲を限定することを意図したものではない。
【００２０】
実施形態がここで、添付図面を参照して以下においてより完全に説明され、添付図面には本発明の例示的な実施形態が示される。本明細書に開示される実施形態は、多くの異なる形態で具体化されることができ、本明細書において述べられる実施形態に限定されるものとして解釈されるべきではなく、むしろ、これらの実施形態は、本開示が、完全かつ完璧なものであるように、また、当業者に本発明の範囲を完全に伝えられるように、提供される。同様の番号は、全体を通して同様の要素を指す。本明細書において使用される場合、「および／または」という用語は、関連づけられた列挙項目の１つ以上の任意の組み合わせおよびすべての組み合わせを含む。
【００２１】
本明細書において使用される専門用語は、特定の実施形態を説明することを目的としているにすぎず、本発明の限定を意図したものではない。本明細書において使用される場合、単数形の「ａ」、「ａｎ」、および「ｔｈｅ」は、文脈がそうでないと明らかに示さない限り、複数形も含むように意図される。「備える」および／または「備えること」という用語は、本明細書において使用される場合、指定された特徴、整数、ステップ、動作、要素、および／またはコンポーネントの存在を特定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、コンポーネント、および／またはそのグループの存在または追加を排除するものではない、ということがさらに理解されるであろう。
【００２２】
当業者によって理解されるように、本発明は、方法、データ処理システム、またはコンピュータプログラム製品として具体化され得る。したがって、本発明は、本明細書ではすべてが一般的に「回路」または「モジュール」と呼ばれる、完全なハードウェアの実施形態、完全なソフトウェアの実施形態、またはソフトウェアの態様とハードウェアの態様とを組み合わせた実施形態、の形態をとり得る。さらに、本発明は、媒体において具体化されたコンピュータ使用可能なプログラムコードを有するコンピュータ使用可能な記憶媒体によるコンピュータプログラム製品の形態をとり得る。ハードディスク、ＵＳＢフラッシュドライブ、ＤＶＤ、ＣＤ−ＲＯＭ、光記憶デバイス、磁気記憶デバイス、等を含む、任意の適切なコンピュータ可読媒体が利用され得る。
【００２３】
本発明の動作を実行するためのコンピュータプログラムコードは、オブジェクト指向プログラミング言語（たとえば、Ｊａｖａ（登録商標）、Ｃ＋＋、等）で書かれ得る。しかしながら、本発明の動作を実行するためのコンピュータプログラムコードはまた、「Ｃ」プログラミング言語のような従来の手続き型プログラミング言語、または、たとえばＶｉｓｕａｌ  Ｂａｓｉｃのような視覚的指向プログラミング環境で書かれ得る。
【００２４】
プログラムコードは、完全にユーザのコンピュータで、スタンドアロン型ソフトウェアパッケージとして部分的にユーザのコンピュータで、部分的にユーザのコンピュータでかつ部分的にリモートコンピュータで、または完全にリモートコンピュータで、実行され得る。後者のシナリオでは、リモートコンピュータが、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）、ワイヤレスデータネットワーク、たとえば、ＷｉＦｉ、Ｗｉｍａｘ、８０２．ｘｘ、およびセルラーネットワークによって、ユーザのコンピュータに接続され得るか、または、外部のコンピュータへの接続が、大半のサードパーティにサポートされたネットワークを介して（たとえば、インターネットサービスプロバイダを利用するインターネットによって）行われ得る。
【００２５】
実施形態が、本発明の実施形態に係る方法、システム、およびコンピュータプログラム製品およびデータ構造のフローチャート図示および／またはブロック図を参照して、本明細書において少なくとも部分的に説明される。図示の各々のブロックおよびブロックの組み合わせがコンピュータプログラム命令によって実現され得ることが理解されるであろう。これらのコンピュータプログラム命令は、コンピュータまたは他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が１つのブロックまたは複数のブロックにおいて指定された機能／動作を実現するための手段を作成するよう、マシンを生成するために、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供され得る。
【００２６】
これらのコンピュータプログラム命令はまた、コンピュータ可読メモリに記憶された命令が、１つのブロックまたは複数のブロックにおいて指定された機能／動作を実現する命令手段を含む製造物を生成するよう、特定の手法で機能することをコンピュータまたは他のプログラム可能なデータ処理装置にさせ得る、コンピュータ可読メモリに記憶され得る。
【００２７】
コンピュータプログラム命令はまた、コンピュータまたは他のプログラム可能な装置で実行される命令が１つのブロックまたは複数のブロックにおいて指定された機能／動作を実現するためのステップを提供するよう、コンピュータで実現される処理を生成するために、一連の動作ステップがコンピュータまたは他のプログラム可能な装置で実行されるように、コンピュータまたは他のプログラム可能なデータ処理装置にロードされ得る。
【００２８】
図３〜図４は、本発明の実施形態が実現され得るデータ処理環境の例示的な図として提供される。図３〜図４は、単なる例示にすぎず、開示される実施形態の態様または実施形態が実現され得る環境についていかなる限定も断言または含意するように意図されていない、ということが理解されるべきである。描かれた環境に対する多くの変更が、開示される実施形態の精神および範囲から逸脱せずに行われ得る。
【００２９】
図３に示されているように、開示される実施形態は、たとえば、中央プロセッサ２０１、メインメモリ２０２、入力／出力コントローラ２０３、キーボード２０４、入力デバイス２０５（たとえば、マウス、トラックボール、およびペンデバイス、等といったポインティングデバイス）、表示デバイス２０６、大容量記憶装置２０７（たとえば、ハードディスク）、画像取り込みユニット２０８、およびＵＳＢ（ユニバーサルシリアルバス）周辺機器接続を含む、データ処理システム２００の文脈で実現され得る。示されているように、データ処理システム２００のさまざまなコンポーネントは、システムバス２１０または同様のアーキテクチャによって電子通信し得る。システムバス２１０は、たとえば、データ処理システム２００内のコンピュータコンポーネント間で、または、他のデータ処理デバイス、コンポーネント、コンピュータ、等へおよびそれらから、データを転送する、たとえば、サブシステムであり得る。
【００３０】
図４は、図３に描かれたデータ処理システム２００の動作を指示するためのコンピュータソフトウェアシステム２５０を示す。メインメモリ２０２と大容量記憶装置２０７とに記憶されたソフトウェアアプリケーション２５４は一般的に、カーネルまたはオペレーティングシステム２５１とシェルまたはインターフェース２５３とを含む。ソフトウェアアプリケーション２５４のような１つ以上のアプリケーションプログラムは、データ処理システム２００による実行のために、「ロード」（すなわち、大容量記憶装置２０７からメインメモリ２０２に転送）され得る。データ処理システム２００がユーザインターフェース２５３によってユーザコマンドおよびデータを受け取ると、これらの入力が続いて、オペレーティングシステムモジュール２５２および／またはソフトウェアアプリケーション２５４からの命令にしたがって、データ処理システム２００により動作させられ得る。
【００３１】
以下の議論は、システムおよび方法が実現され得る適切なコンピューティング環境の簡潔で一般的な説明を提供するように意図される。必ずではないが、開示される実施形態は、単一のコンピュータによって実行されているプログラムモジュールのようなコンピュータ実行可能な命令の一般的な文脈において説明される。ほとんどの例において、「モジュール」は、ソフトウェアアプリケーションを構成する。
【００３２】
一般的に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データ型および命令を実現する、ルーチン、サブルーチン、ソフトウェアアプリケーション、プログラム、オブジェクト、コンポーネント、データ構造、等を含むが、これに限定されない。さらに、当業者は、開示される方法およびシステムが、たとえば、ハンドヘルドデバイス、マルチプロセッサシステム、データネットワーク、マイクロプロセッサベースのまたはプログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、サーバ、等といった他のコンピュータシステム構成によって実現され得ることを理解するだろう。
【００３３】
本明細書において利用されるモジュールという用語は、特定のタスクを実行するかまたは特定の抽象データ型を実現する、ルーチンおよびデータ構造の集合のことを言い得る、ということに注意する。モジュールは、２つの部分、すなわち、定数、データ型、変数、および他のモジュールまたはルーチンによってアクセスされ得るルーチンをリスト出力する、インターフェースと、典型的には非公開（そのモジュールにのみアクセス可能）であり、モジュールにおいて実際にルーチンを実現するソースコードを含む、実装とから構成され得る。モジュールという用語はまた、単に、ワードプロセッシング、会計、在庫管理、等といった特定のタスクの実行を支援するように設計されたコンピュータプログラムのようなアプリケーションのことを言い得る。
【００３４】
好ましくはグラフィカルユーザインターフェース（ＧＵＩ）であるインターフェース２５３はまた、結果を表示する役割を果たし、その結果ユーザは、追加の入力を供給するかまたはセッションを終了し得る。実施形態では、オペレーティングシステム２５１およびインターフェース２５３は、「Ｗｉｎｄｏｗｓ（登録商標）」システムの文脈において実現され得る。当然のことながら、他のタイプのシステムが可能であることが理解され得る。たとえば、在来の「Ｗｉｎｄｏｗｓ（登録商標）」システムではなく、たとえばＬｉｎｕｘ（登録商標）のような他のオペレーティングシステムもまた、オペレーティングシステム２５１およびインターフェース２５３に対し用いられ得る。ソフトウェアアプリケーション２５４は、拡張されたデータ駆動型検出に基づいて複数のオブジェクトパーツ位置３８５を検出するためのオブジェクトパーツ検出モジュール２５２を含み得る。ソフトウェアアプリケーション２５４は一方で、たとえば図６に描かれた方法４００のような、本明細書において説明されるさまざまなコンポーネントおよびモジュールに関し本明細書においてされるさまざまな動作といった命令を含み得る。
【００３５】
したがって、図３〜図４は、例として意図されたものであり、開示される実施形態のアーキテクチャ上の限定として意図されたものではない。加えて、そのような実施形態は、いかなる特定のアプリケーション、または、コンピューティング環境またはデータ処理環境にも限定されない。代わりに、当業者は、開示されるアプローチが、さまざまなシステムおよびアプリケーションソフトウェアに有利に適用され得ることを理解するであろう。さらに、開示される実施形態は、マッキントッシュ、ＵＮＩＸ（登録商標）、ＬＩＮＵＸ（登録商標）、等を含むさまざまな異なるコンピューティングプラットフォームで具体化され得る。
【００３６】
図５は、開示される実施形態に係る、オブジェクトパーツ検出システム３００のブロック図を示す。図３〜図１０において、同一のまたは同様のパーツまたは要素は一般的に同一の参照番号によって示される、ということに注意する。オブジェクトパーツ検出システム３００は、拡張されたデータ駆動型検出に基づいてオブジェクトパーツ位置３８５を検出するためのオブジェクトパーツ検出モジュール２５２を含む。オブジェクトパーツ位置３８５は、設計考慮事項に依存して、たとえば、可視オブジェクトパーツ位置または不可視オブジェクトパーツ位置であり得る、ということに注意する。オブジェクトパーツ検出システム３００はさらに、関連度計算ユニット３０５とオブジェクトパーツ位置３８５を検出するためのオブジェクトパーツ位置予測ユニット３３０とを含む。
【００３７】
オブジェクトパーツ検出システム３００は一般的に、有効視野内の車両３０２のようなオブジェクトの画像を取り込むための画像取り込みユニット３０４（たとえば、カメラ）を含む。画像取り込みユニット３０４は、ネットワーク３０６を介して画像処理ユニット３０８に動作可能に接続され得る。画像取り込みユニット３０４によって取り込まれた車両３０２の画像は、画像処理ユニット３０８を利用して処理され得る。本明細書においてより詳細に説明される画像取り込みユニット３０４は、図３に描かれたデータ処理システム２００の画像取り込みユニット２０８と類似するまたは同様である、ということに注意する。画像取り込みユニット３０４は、画像処理、データフォーマット、およびデータ圧縮機能といった内蔵の統合された機能を含み得る。
【００３８】
本明細書では車両３０２が議論および説明されるが、開示される実施形態は、単に車両３０２のような車両だけでない他のオブジェクトの画像を検出し取り込むために利用され得る、ということが理解されるべきである。したがって、実施形態は、車両の画像を取り込むことに限定されるものではなく、任意の数の異なるタイプのオブジェクトを検出し取り込むことができる。
【００３９】
ネットワーク３０６は、任意のネットワークトポロジー、伝送媒体、またはネットワークプロトコルを用い得る、ということに注意する。ネットワーク３０６は、有線通信リンク、ワイヤレス通信リンク、または光ファイバケーブルのような接続を含み得る。ネットワーク３０６はまた、互いに通信するためにプロトコルの伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）スイートを使用するネットワークおよびゲートウェイの世界的規模の集合を表すインターネットであることもできる。インターネットの中心には、データおよびメッセージをルーティングする数千もの民間用、行政用、教育用、および他のコンピュータシステムからなる、主要ノードまたはホストコンピュータ間の高速データ通信回線のバックボーンがある。
【００４０】
本明細書において議論される実施形態は一般的に、車両パーツ３８５の検出に関する、ということに注意する。しかしながら、そのような実施形態が、多くの他の種類のオブジェクト、たとえば、人物、自転車、車両、または構造物のパーツの画像内でパーツを検出するために実現され得ることが理解され得る。本明細書において利用される車両パーツの議論は、一般的な例示の目的のためだけに提示される。
【００４１】
オブジェクトパーツ検出モジュール２５２に関連づけられた関連度計算ユニット３０５が、パーツ境界ボックスのセット３９０によって注釈された訓練画像のセット３７０に対するパーツの構成間の特定の関連度値を定義する。関連度計算ユニット３０５が、パーツ構成間の類似性に関する類似性関数３２５を得るために類似性学習アルゴリズム３１０を適用する。一般的に、類似性学習は、人工知能における教師あり機械学習タスクの一種である。それは、回帰および分類に密接に関連するが、目標は、２つのオブジェクトがどれほど類似または関連しているかを測定する関数を例から学習することである。類似性学習アルゴリズム３１０は、類似したパーツ構成を有するポジティブなペア３４５と異なる構成を有するネガティブなペア３１５とのセットを受け取り、類似性関数３２５を戻す。
【００４２】
類似性関数３２５は、２つのオブジェクト間の類似性を定量化する実数値関数である。類似性関数３２５は、ポジティブなペア３４５に高スコア３５０を、ネガティブなペア３１５に低スコア３２０を割り当てる傾向がある。オブジェクトパーツ位置予測ユニット３３０が、近傍画像３５５を得るために、学習された類似性関数３２５を利用して、新たな画像３４０と訓練画像のセット３７０とに関する類似性を測定する。オブジェクトパーツ位置予測ユニット３３０は、近傍画像３５５に基づいて画像３４０に関する可視パーツ位置および／または不可視パーツ位置を予測する。オブジェクトパーツ検出モジュール２５２が、パーツ間の全体的な一貫性を考慮することにより、パーツの数にかかわらず単一のクエリとして実行され得る。
【００４３】
図６は、開示された実施形態に係る、拡張されたデータ駆動型検出を利用して複数のオブジェクトパーツ位置３８５を検出するための方法４００の論理演算ステップを示す動作のハイレベルなフローチャートを示す。図６に示された論理演算ステップは、たとえば図４に示されたモジュール２５２のようなモジュールによって実現または提供され得、たとえば図３に示されたプロセッサ２０１のようなプロセッサによって処理され得る、ということが理解され得る。ブロック４１０に示されているように、オブジェクトに関する画像３４０および３７０が、画像取り込みユニット３０４によって取り込まれ得、画像処理ユニット３０８を利用して処理され得る。
【００４４】
ブロック４２０に示されているように、パーツ境界ボックスのセット３９０によって注釈された訓練画像のセット３７０に対するパーツの構成間の特定の関連度値が定義され得る。ブロック４３０に示されているように、類似性学習アルゴリズム３１０が、パーツ構成間の類似性に関する類似性関数３２５を得るために適用され得る。ブロック４４０および４５０に描かれているように、類似性学習アルゴリズム３１０が、類似したパーツ構成を有するポジティブなペア３４５と異なる構成を有するネガティブなペア３１５とのセットを受け取り、新たなポジティブなペア３４５に高スコア３５０を、ネガティブなペア３１５に低スコア３２０を割り当てる傾向がある類似性関数３２５を戻す。
【００４５】
たとえば、固定数Ｐ個のパーツを想定して、パーツ境界ボックスのセットＰｉ＝｛ｂｉ１，．．．，ｂｉＰ｝によって注釈された画像ｘｉの訓練セットＴ＝｛（ｘｉ，Ｐｉ）｝，ｉ＝１．．Ｎを考慮する。各々のｂｐが４つ（上、下、左、右）の座標によって与えられる矩形を表すことを想定するが、それはまた、ｐ個目のパーツが画像において可視でないことを意味する空の値をとり得る。将来的な便宜上、Ｖｉを画像ｉにおける可視パーツに対応するインデックスのセットであると定義する。注意として、本明細書において議論される境界ボックスは、多角形、画素マスク、グラフ、等といった、パーツを注釈するための他のパラダイムと互換性があり、矩形についての本明細書におけるいかなる言及も例示を目的としたものであるにすぎない。
【００４６】
たとえば、訓練セットからの２つの画像ｘｉ、ｘｊが類似した構成または類似しない構成を有し、それらが関連度値ｒｉｊ∈｛０，１｝（１＝ポジティブ、０＝ネガティブ）によって示され得ることを考慮する。異なるパーツが画像において可視である場合には、関連度値は、式（１）において以下に示されるように０である。
【数１】
2015191666.tif 000003
【００４７】
類似したパーツが可視である（Ｖｉ＝Ｖｊである）場合には、パーツごとの重複スコアが計算され得る。パーツｐについて、これは、区域の共通部分対合併比のような、ｂｉｐとｂｊｐとの間の重複を測定する関数ψ（ｂｉｐ，ｂｊｐ）である。すべてのパーツについてしきい値より大きい場合には、関連度値は、式（２）において以下に示されるように１である。
【数２】
2015191666.tif 000004
【００４８】
そうでなければ、関連度値は０であり、ｒｉｊ＝０である。ここで、θは、特定の用途の制約に依存するしきい値を表す。すべての可視パーツの境界ボックスが類似し、その位置が一致している場合、２つの構成は類似している。この基準は、ＳＧＤ類似性学習アルゴリズムに必要である、ｒｉｊ＝１およびｒｉｋ＝０であるような形式（ｘｉ、ｘｊ、ｘｋ）のトリプレットを構築するのに十分である。
【００４９】
ブロック４６０に描かれているように、近傍画像３５５からのオブジェクトパーツ位置３８５が、学習された類似性関数３２５を利用して訓練画像のセット３７０に対する類似性を測定することにより、予測され得る。新たな画像３４０と訓練画像３７０との間の類似性が、近傍画像３５５を得るために、学習された類似性関数３２５を利用して測定され得る。ブロック４７０に示されているように、画像３４０に関する可視パーツ位置および／または不可視パーツ位置３８５が、近傍画像３５５に基づいて予測され得る。ブロック４８０に示されるように、データ駆動型検出が、パーツ間の全体的な一貫性を考慮することにより、パーツの数にかかわらず単一のクエリとして実行され得る。
【００５０】
たとえば、新たな画像を考慮すると、ｘとすべてのｘｉとの間の類似性が（学習された類似性関数を利用して）計算され得、最近傍が決定され得る。そのパーツの位置（および可視性）が単一の近傍のケースにおいて出力され得、それらのパーツが複数の近傍のケースにおいて組み合わせられ得る。各々のパーツｐについて、パーツに対する近傍の大半が可視でない場合には、出力は空の値である。そうでなければ、加重平均が可視パーツについて計算され得る。新たな画像ｘ’のための境界ボックスｂ’を予測するために、以前のｂπ（１），．．．，ｂπ（Ｋ）の加重平均が、式（３）において以下に示されるように用いられ得る。
【数３】
2015191666.tif 000005
ここで、ｗｉは、ｋ（ｘ’，ｘπ（Ｋ））の関数を表す。
【００５１】
図７は、開示された実施形態に係る、オブジェクトパーツ検出システム３００を利用して検出された車両パーツを描いた画像５００を示す。オブジェクト検出システム３００が、駐車場、橋、等において車両の分類を実行するために、たとえば、フロントガラス５０５、ライト５１０、ロゴ５１５、およびプレート５２０のような車両パーツを検出する。システム３００は、メーカーおよび車種に応じて車両画像５００を分類するためにロゴ５１５を検出するが、ライト５１０のような特有の形状を有する他の要素であってもよい。また、進行中輸送活動、たとえばナンバープレート認識では、ナンバープレート領域５２０が検出され得る。同様に、相乗り専用レーンのために、フロントガラス５０５を検出することは、乗客数をカウントするための最初のステップである。
【００５２】
図８は、開示された実施形態に係る、境界ボックス６１０、６２０、および６３０のセットを有する車両の画像６００を示す。図８は、車両姿勢推定タスクを描いている。システム３００への入力は、車両の画像６００であり、出力は、可視の車両の面、すなわち、前、後、左、右（したがって、Ｐ＝４）の境界ボックス６１０、６２０、および６３０のセットである。たとえば、５，６４７個の注釈された画像が訓練のために、１，０００個がテストのために使用される。画像は、フィッシャーベクトルによって記述され得る。車両６００の面を検出するために、関連度値ｒｉｊが、θ＝０．５を使用して上述されたように計算され得る。類似性関数ｋ（ｘ，ｙ）を提供する類似性学習が、訓練セットから近傍を回復するために各々のテスト画像に対し適用され得る。近傍から、パーツ位置（および可視性）が上述されたように予測され得る。
【００５３】
図９は、開示された実施形態に係る、オブジェクトパーツ検出の結果を示す表７００を示す。姿勢推定アプローチにおいて一般的に使用される尺度である正しいパーツのパーセンテージ（ＰＣＰ）が、評価のためにカウントされ得る。パーツが可視および不可視である場合に、予測された矩形がグランドトゥルースの矩形と５０％を超えて重複すればパーツが正しいことを考慮して、正しく検出されたパーツの数が個別にカウントされ得る。そうでなければ、誤りがカウントされ得る。不可視パーツの予測誤りを無視した結果が、表７００に示されている。
【００５４】
まず、不可視パーツが無視された理想的な設定７１０が考慮され得、それは、個別パーツ学習ベースライン（すなわち、各々の個別パーツについての類似性を学習すること）によって最良の結果を得る。これは、パーツが画像において可視であり、他のパーツを考慮しない場合、従来技術のオブジェクト検出アプローチがより良好であることを示す。すべて（すなわち、可視および不可視）のパーツを考慮する検出の評価は、現実的な設定７２０によって示されている。いくつかの実施形態におけるオブジェクトパーツ検出方法５００は、平均で９０．９％のＰＣＰを得ることができ、最良のベースライン（類似性学習なしの８５．３％）に対し＋５．６％の差をつけて、すべての他のベースラインより性能が優れている。
【００５５】
パーツごとに評価される場合、方法５００がまた、各々のパーツのために最良に機能する。対照的に、パーツを個別に学習することは、標準より下の結果（７９．１％）をもたらし、それは、パーツがそれらの関連および可視性の値を考慮せずに単独で学習されるという事実に帰する。これは、パーツの結合モデルを学習する必要を迫る。個別パーツモデルの別の欠点は、それが訓練時間およびテスト時間の両方でＰ倍遅く推定される点である、ということに注意する。訓練時間で、それは、Ｐ個の類似性関数を学習することを要求する。テスト時間で、これらのＰ個の類似性関数が計算されなければならない（各々の類似性につき１つ）。
【００５６】
図１０は、開示された実施形態に係る、従来技術のオブジェクト検出方法およびオブジェクトパーツ検出方法５００を使用して検出された画像８００および９００を比較した視覚的な結果を示す。クエリ画像と、類似性車両を学習せずに従来技術のオブジェクト検出方法を使用して検索された画像８００における最近傍とは、見た目は類似しているが、姿勢が類似していない（クエリにおける車両は右向きであり、多くの近傍は左向きである）。対照的に、オブジェクトパーツ検出方法５００を使用して検出された画像９００におけるクエリと比較されると、同一のクエリのための近傍は、右向きであり、類似した姿勢を有する。システム３００が、単独でない複数の境界ボックス３９０と可視でないパーツとを検出するために用いられ得る。システム３００は、著しくより高い精度を得て、単独でない複数の境界ボックス３９０によって注釈された画像のために用いられ得る。
【００５７】
上記に基づいて、好ましいおよび代替の、多数の実施形態が本明細書に開示されることが理解され得る。たとえば、一実施形態では、オブジェクトパーツ位置を検出するための方法が実現され得る。そのような方法は、たとえば、１つ以上のパーツの構成と注釈オブジェクトによって注釈された訓練画像のセットとの間の関連度値を定義し、関連度値に基づいて学習された類似性関数を得るためにパーツに対し類似性学習アルゴリズムを適用し、近傍画像を得て、近傍画像に基づいて新たな画像に関する可視パーツ位置および／または不可視パーツ位置を予測するために、学習された類似性関数を利用して新たな画像と訓練画像のセットとの間の類似性を測定するステップまたは論理演算を含み得る。
【００５８】
別の実施形態では、類似性学習アルゴリズムによって、類似したパーツ構成を有するポジティブなペアと異なるパーツ構成を有するネガティブなペアとのセットを受け取り、ポジティブなペアに高スコアを、ネガティブなペアに低スコアを割り当てる類似性関数を戻すためのステップまたは論理演算が実現され得る。さらなる別の実施形態では、画像取り込みユニットによってオブジェクトに関する訓練画像と新たな画像とを取り込み、画像処理ユニットを利用して画像を処理するためのステップまたは論理演算が提供され得る。
【００５９】
さらなる別の実施形態では、訓練画像に関するオブジェクトを注釈するためのステップまたは論理演算が実現され得、新たな画像は、少なくとも４つの座標を有する矩形形状を備える。別の実施形態では、注釈オブジェクトが不可視オブジェクトパーツ位置に対し空の値を備えるステップまたは論理演算が提供され得る。
【００６０】
さらなる別の実施形態では、訓練画像における可視パーツに対応するインデックスのセットを定義し、その後、訓練画像間の関連度値を計算し、類似したパーツ間の重複を測定することによってパーツごとの重複スコアを計算し、パーツごとの重複スコアがしきい値より大きければ関連度値を１に割り当て、そうでなければ０を割り当てるためのステップまたは論理演算が実現され得る。別の実施形態において、しきい値は、データ駆動型検出用途に関する制約に依存し得る。別の実施形態において、異なるパーツが訓練画像において可視である場合、関連度値を０に割り当てるためのステップまたは論理演算が実現され得る。
【００６１】
別の実施形態では、単一の近傍のための新たな画像に関するオブジェクトパーツ位置を出力し、複数の近傍のケースにおいてオブジェクトパーツ位置を組み合わせるためのステップまたは論理演算が実現され得る。別の実施形態では、複数の近傍に関する可視パーツについての加重平均を計算し、不可視パーツを有する複数の近傍に対し空の値を戻すためのステップまたは論理演算が実現され得る。
【００６２】
別の実施形態では、オブジェクトパーツ位置を検出するためのシステムが実現され得る。そのようなシステムは、プロセッサとコンピュータプログラムコードを具体化するコンピュータ使用可能な媒体とを含み得、コンピュータ使用可能な媒体は、プロセッサと通信することができる。コンピュータプログラムコードは、プロセッサによって実行可能な命令であって、たとえば、複数のパーツの構成と注釈オブジェクトによって注釈された訓練画像のセットとの間の関連度値を定義し、関連度値に基づいて学習された類似性関数を得るためにパーツに対し類似性学習アルゴリズムを適用し、近傍画像を得て、近傍画像に基づいて新たな画像に関する可視パーツ位置および／または不可視パーツ位置を予測するために、学習された類似性関数を利用して、新たな画像と訓練画像のセットとの間の類似性を測定するために構成された命令を含み得る。
【００６３】
別の実施形態では、そのような命令はさらに、類似性学習アルゴリズムによって類似したパーツ構成を有するポジティブなペアと異なるパーツ構成を有するネガティブなペアとのセットを受け取り、ポジティブなペアに高スコアを、ネガティブなペアに低スコアを割り当てる類似性関数を戻すために構成され得る。さらなる別の実施形態では、そのような命令はさらに、画像取り込みユニットによってオブジェクトに関する訓練画像と新たな画像とを取り込み、画像処理ユニットを利用して画像を処理するために構成され得る。別の実施形態では、そのような命令はさらに、訓練画像に関するオブジェクトを注釈するために構成され得、新たな画像は、少なくとも４つの座標を有する矩形形状を備える。別の実施形態において、オブジェクトを注釈することは、不可視オブジェクトパーツ位置に対する空の値の使用を含み得る。
【００６４】
別の実施形態では、オブジェクトパーツ位置を検出するための処理を引き起こす命令を表すコードを記憶したプロセッサ可読媒体が実現され得る。そのようなコードは、たとえば、複数のパーツの構成と注釈オブジェクトによって注釈された訓練画像のセットとの間の関連度値を定義し、関連度値に基づいて学習された類似性関数を得るためにパーツに対し類似性学習アルゴリズムを適用し、近傍画像を得て、近傍画像に基づいて新たな画像に関する可視パーツ位置および／または不可視パーツ位置を予測するために、学習された類似性関数を利用して新たな画像と訓練画像のセットとの間の類似性を測定するためのコードを含み得る。
【００６５】
上記開示の変形例と他の特徴および機能、またはそれらの代替例が、多くの他の異なるシステムまたはアプリケーションに所望の通りに組み合わせられ得る、ということが理解されるであろう。また、以下の特許請求の範囲によって包含されるように意図される、現時点では予想または予期されないさまざまな代替例、変更例、変形例、またはそれらにおける改善が、当業者によって後に行われ得る。
【図１】
2015191666.tif 000006
【図２】
2015191666.tif 000007
【図３】
2015191666.tif 000008
【図４】
2015191666.tif 000009
【図５】
2015191666.tif 000010
【図６】
2015191666.tif 000011
【図７】
2015191666.tif 000012
【図８】
2015191666.tif 000013
【図９】
2015191666.tif 000014
【図１０】
2015191666.tif 000015