(57)【要約】      （修正有）【課題】ターゲット環境のモデルを得て、ターゲット環境内のオブジェクトモデルをシミュレートし、ターゲット環境について最適化された分類器をトレーニングする。【解決手段】ターゲット環境において取得された１組の画像内のオブジェクトを検出し分類するようにカスタマイズされた分類器をトレーニングするための方法およびシステムであって、まず最初に、１組の画像から３Ｄターゲット環境モデルを生成し、その次に、３Ｄオブジェクトモデルを取得する。前記ターゲット環境モデル及び前記３Ｄオブジェクトモデルからトレーニングデータが合成され、その後、トレーニングデータを用いて分類器をトレーニングする。【選択図】図１
2016218999.tif 000002
【特許請求の範囲】
【請求項１】
ターゲット環境において取得された１組の画像内のオブジェクトを検出し分類するようにカスタマイズされた分類器をトレーニングする方法であって、
前記１組の画像から３Ｄターゲット環境モデルを生成するステップと、
３Ｄオブジェクトモデルを取得するステップと、
前記ターゲット環境モデル及び前記３Ｄオブジェクトモデルからトレーニングデータを合成するステップと、
前記トレーニングデータを用いて前記分類器をトレーニングするステップと、
を含み、前記ステップはプロセッサにおいて実行される、方法。
【請求項２】
１組のトレーニング画像は、距離画像、又はカラー画像、又は距離画像及びカラー画像を含む、請求項１に記載の方法。
【請求項３】
前記ターゲット環境の１組の試験画像を取得することと、
前記分類器を用いて前記１組の試験画像内に表現されたオブジェクトを検出することと、
を更に含む、請求項１に記載の方法。
【請求項４】
前記１組の画像は、前記ターゲット環境内の３Ｄセンサーによって取得された二次元(２Ｄ)カラー画像及び三次元(３Ｄ)奥行き画像を含む、請求項１に記載の方法。
【請求項５】
前記１組の画像は、前記ターゲット環境内のステレオカメラによるステレオ画像を含む、請求項１に記載の方法。
【請求項６】
前記ターゲット環境モデルは、ポイントクラウドとして記憶される、請求項１に記載の方法。
【請求項７】
前記ターゲット環境モデルは三角形メッシュとして記憶される、請求項１に記載の方法。
【請求項８】
前記ターゲット環境モデルはテクスチャを含む、請求項７に記載の方法。
【請求項９】
前記ターゲット環境モデル及び前記３Ｄオブジェクトモデルは、オブジェクト画像及び環境画像を生成するようにレンダリングされる、請求項１に記載の方法。
【請求項１０】
前記オブジェクト画像及び前記環境画像は、遮蔽情報を指定する奥行き順序に従って統合される、請求項９に記載の方法。
【請求項１１】
前記分類器は姿勢推定のために用いられる、請求項１に記載の方法。
【請求項１２】
前記分類器はシーン分割のために用いられる、請求項１に記載の方法。
【請求項１３】
前記トレーニングは前記ターゲット環境において実行される、請求項１に記載の方法。
【請求項１４】
前記オブジェクトは、姿勢及びオブジェクトタイプを関連付けられている、請求項３に記載の方法。
【請求項１５】
以前にトレーニングされた分類器が、前記ターゲット環境からシミュレートされたデータを用いて前記ターゲット環境に適応される、請求項１に記載の方法。
【請求項１６】
前記試験画像は、前記分類器を経時的に適応させるための前記トレーニングデータを生成するように前記３Ｄターゲット環境モデルをシミュレートするのに用いられる、請求項３に記載の方法。
【請求項１７】
前記分類器は適応ブースティングを用いる、請求項１に記載の方法。
【請求項１８】
前記分類器はウェブサーバーを用いてカスタマイズされる、請求項１に記載の方法。
【請求項１９】
ターゲット環境においてオブジェクトを検出し分類するようにカスタマイズされる分類器をトレーニングするシステムであって、
前記ターゲット環境の１組の画像を取得するセンサーと、
三次元(３Ｄ)オブジェクトモデルを記憶するデータベースと、
前記１組の画像から３Ｄターゲット環境モデルを生成し、前記ターゲット環境モデル及び前記３Ｄオブジェクトモデルからトレーニングデータを合成し、前記トレーニングデータを用いて前記分類器をトレーニングするプロセッサと、
を備える、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、包括的には、コンピュータービジョンに関し、より詳細には、環境から取得された画像内のオブジェクトを検出し分類するように分類器をトレーニングすることに関する。
【背景技術】
【０００２】
環境のカラー画像及び距離画像内のオブジェクトを検出し分類する従来技術の方法は、通常、機械学習を用いてオブジェクト分類器をトレーニングすることに基づく。トレーニングデータは、機械学習手法の重要な要素である。目標が、高精度のシステムを開発することであるとき、オブジェクト及び環境の外観の豊富なバリエーションをモデル化することができるように、分類モデルが高い能力を有することが重要である。
【０００３】
しかしながら、能力の高い分類器は、過剰適合という欠点を伴う。過剰適合は、例えば、モデルが基礎を成す関係ではなく確率的誤差又はノイズを記述するときに生じる。過剰適合は、一般的に、モデルが、モデル化されているデータに対し過度に多くのパラメーターを有する等、過度に複雑であるときに生じる。これにより、過剰適合は、データの僅かな変動を誇張し得ることにより、結果として予測性能を低くする可能性があり、汎化性能が低い。したがって、非常に大きなデータセットが良好な汎化性能を有する必要がある。
【０００４】
ほとんどの従来技術の方法は、広範にわたる人手の介入を必要とする。例えば、センサーは、環境内のオブジェクトの画像を取得するためにトレーニング環境内に配置される。次に、取得された画像は、トレーニングデータとしてメモリ内に記憶される。例えば、三次元(３Ｄ)センサーは、顧客の画像を取得するように店内に配置される。次に、トレーニングデータは人手により注釈を付けられ、これはラベル付けと呼ばれる。ラベル付けの間、タスクに依拠して、人物を含む境界ボックス、人間の関節のロケーション、人物から発生する画像内の全てのピクセル等の様々なロケーションがデータ内でマーキングされる。
【０００５】
例えば、３Ｄデータにおける人間の外観の中程度のバリエーションをモデル化するために、カメラ及びオブジェクトの配置、並びに人間の形状のバリエーション等の剛体変換に加えて、２０個より多くの関節角度をモデル化することが必要である。したがって、機械学習手法には非常に大きな３Ｄデータセットが必要である。このデータを収集し記憶することは困難である。また、人間の画像を人手によりラベル付けし、必要な関節ロケーションをマーキングすることは、非常に時間がかかる。加えて、センサーの内部パラメーター及び外部パラメーターが検討されなくてはならない。センサー仕様及び配置パラメーターに変化がある場合はいつでも、トレーニングデータを再取得する必要がある。また、多くの応用形態において、トレーニングデータは、後の設計段階まで利用可能とならない。
【０００６】
いくつかの従来技術の方法はコンピュータグラフィックシミュレーションを用いてトレーニングデータを自動的に生成する。これについては、非特許文献１及び非特許文献２を参照されたい。これらの方法は、２Ｄ画像データ又は３Ｄ画像データをシミュレートするソフトウェアを用いて３Ｄ人間モデルをアニメーション化する。次に、分類器は、シミュレートされたデータ及び制限された人手によりラベル付けされた実データを用いてトレーニングされる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Shotton他「Real-Time Human Pose Recognition in Parts from Single Depth Images」CVPR, 2011
【非特許文献２】Pishchulin他「Learning people detection models from few training samples」CVPR, 2011
【非特許文献３】Freund他「A Decision-Theoretic Generalization of On-Line Learning and an Application to Boosting」Journal of Computer and System Sciences 55, pp. 119-139, 1997
【発明の概要】
【発明が解決しようとする課題】
【０００８】
全てのこれらの従来技術の方法において、トレーニングデータの収集及びトレーニングは、オフサイト及びオフラインの動作である。すなわち、分類器は、ターゲット環境におけるオンサイトの使用及び動作のためにエンドユーザーによって展開される前に、異なるロケーションで設計及びトレーニングされる。
【０００９】
さらに、これらの方法は、分類器がオンサイト動作中に適用される実際のターゲット環境を表現するシミュレートされたデータ又は実データを一切用いない。すなわち、多くの環境からのデータを用いてオフサイト及びオフラインでトレーニングされたオブジェクト分類器は、一般的なオブジェクト及び環境のバリエーションがターゲット環境内に存在しない場合があるにもかかわらず、そのようなバリエーションをモデル化する。同様に、オフサイトでトレーニングされた分類器は、トレーニングデータ内にターゲット環境の特定の詳細を有しないことから、この詳細を見逃す場合がある。
【課題を解決するための手段】
【００１０】
この発明の実施の形態は、ターゲット環境から取得された画像内に表現されたオブジェクトを検出し分類するように分類器をトレーニングする方法を提供する。本方法は、例えば、単一の画像又は複数の画像(ビデオ)を用いて、画像内に表現された人物を検出しカウントするのに用いることができる。本方法は、中程度から重度の遮蔽を有する混雑したシーンに適用することができる。本方法は、コンピュータグラフィック及び機械学習を用い、合成データ及び実データの組合せを用いて分類器をトレーニングする。
【００１１】
従来技術と対照的に、本方法は、動作中、ターゲット環境のモデルを得て、ターゲット環境内のオブジェクトモデルをシミュレートし、ターゲット環境について最適化された分類器をトレーニングする。
【００１２】
特に、本方法は、まず、１組の画像からターゲット環境モデルを生成することによって、ターゲット環境において取得された１組の画像内のオブジェクトを検出し分類するようにカスタマイズされる分類器をトレーニングする。三次元オブジェクトモデルも取得される。トレーニングデータはターゲット環境モデル及び３Ｄオブジェクトモデルから合成される。次に、トレーニングデータを用いて分類器がトレーニングされる。その後、分類器を用いて、環境から取得された試験画像内のオブジェクトが検出される。
【図面の簡単な説明】
【００１３】
【図１】この発明の実施の形態による、ターゲット環境モデル及び３Ｄオブジェクトモデルを用いて、ターゲット環境のためにカスタマイズされた分類器をトレーニングする方法のブロック図である。
【図２】この発明の実施の形態による、センサーを用いて、２Ｄ画像又は３Ｄ画像から形成されたターゲット環境モデルを得る方法のブロック図である。
【図３】この発明の実施の形態による、センサー及び３Ｄ再構成手順を用いて、３Ｄモデルから形成されたターゲット環境モデルを得る方法のブロック図である。
【図４】この発明の実施の形態による、ターゲット環境モデル及び３Ｄオブジェクトモデルをレンダリングするコンピュータグラフィックシミュレーションを用いてトレーニングデータを生成する方法のブロック図である。
【図５】この発明の実施の形態による、カスタムターゲット分類器を用いてターゲット環境内のオブジェクトを検出し分類する方法のブロック図である。
【図６】この発明の実施の形態による、画像内の人間を検出するオブジェクト分類手順のブロック図である。
【図７】この発明の実施の形態による、奥行き画像から計算された特徴記述子である。
【発明を実施するための形態】
【００１４】
図１に示すように、この発明の実施の形態は、ターゲット環境内のオブジェクトを検出するように特化されたカスタムターゲット環境分類器１５０をトレーニングする(１４０)方法を提供する。トレーニング中、シミュレータ１２０は、ターゲット環境モデル１０１及び三次元(３Ｄ)オブジェクトモデル１１０を用いることによってターゲット環境からトレーニングデータ１３０を合成する。トレーニングデータ１３０は、ターゲット環境内のオブジェクトを検出するようにカスタマイズされたターゲット環境分類器を学習するのに用いられる。
【００１５】
本明細書において定義されているように、ターゲット環境モデル１０１は、エンドユーザーによってオンサイト動作中に分類器が適用される環境のためのものである。例えば、環境は、店、工場の作業場、街頭シーン、自宅等である。
【００１６】
図２に示すように、ターゲット環境２０１は様々な方法で検知する(２１０)ことができる。１つの実施の形態では、ターゲット環境モデル１０１は、２次元(２Ｄ)カラー画像及び３Ｄ奥行き画像の集合２０４である。この集合は、１つ又は複数の画像を含むことができる。これらの画像は、ターゲット環境内に配置された２Ｄセンサー若しくは３Ｄセンサー２０５、又はその双方を用いて収集される。センサー(複数の場合もある)は、例えば、三次元(３Ｄ)距離(奥行き)画像及び二次元カラー画像を出力するＫｉｎｅｃｔ(商標)とすることができる。代替的に、ステレオカメラによって取得されたステレオ２Ｄ画像を用いて奥行き値を再構成することができる。
【００１７】
異なる実施の形態について図３に示すように、ターゲット環境モデル１０１はテクスチャを有する３Ｄモデルである。ターゲット環境は、２Ｄ画像若しくは３Ｄ画像２０４又は双方を取得するように２Ｄカメラ又は３Ｄカメラ２０５を用いて検知される(２１０)。画像は、３Ｄターゲット環境全体を再構成する(３１０)ように異なる視点から取得することができる。再構成されたモデルは、３Ｄポイントクラウドの集合として記憶することもできるし、テクスチャを有する三角形メッシュとして記憶することもできる。
【００１８】
本方法は、現実的なコンピュータグラフィックシミュレーション１２０を用いてトレーニングデータ１３０を合成する。本方法は、３Ｄオブジェクトモデル１１０へのアクセスを有する。
【００１９】
図４に示すように、オブジェクトモデル１００及び環境モデル１０１は、オブジェクトを有するターゲット環境を表現する現実的なトレーニングデータを得るためのターゲット環境内のカメラ２０５のロケーションに対応するモデル内のロケーションに配置された合成カメラを用いてレンダリングされる(４２０)。レンダリングの前に、シミュレーションパラメーター４１０が生成され(４０１)、カメラロケーション等のレンダリング条件を制御する。
【００２０】
次に、レンダリングされたオブジェクト画像及び環境画像４３０は、遮蔽情報を指定する奥行き順序に従って統合され(４４０)、トレーニングデータ１３０が生成される。例えば、オブジェクトモデルは人物を表現することができる。テクスチャ及び奥行きデータの双方を、レンダリングを用いてシミュレートすることができ、このため、３Ｄ分類器及び２Ｄ分類器の双方をトレーニングすることができる。
【００２１】
１つの実施の形態では、３Ｄ頂点座標、法線、マテリアル及びテクスチャ座標を有する三角形メッシュから形成された３Ｄ人間モデルのライブラリを用いる。さらに、各頂点が１つ又は複数の骨に属するように各メッシュに骨格が関連付けられ、骨が移動すると、それに応じて人間モデルも移動する。
【００２２】
この発明では、ターゲット環境内の運動捕捉データに従って様々な３Ｄ人間モデルをアニメーション化し、現実的なテクスチャ及び奥行きマップを生成する。これらのレンダリングは、３Ｄ環境画像と統合され(４４０)、既知のラベル、センサー及び姿勢パラメーター４１０を有する３Ｄトレーニングデータ１３０の非常に大きな組が生成される。
【００２３】
１つの利点は、トレーニングデータ１３０を記憶する必要がないことである。記憶された画像を読み出すよりも、シーンのレンダリングがはるかに高速であり、例えば毎秒約６０〜１００フレームである。必要があれば、アニメーション及びセンサーの詳細を指定するための非常に僅かな数のパラメーター４１０(数バイトの情報)を記憶することによって画像を再生成することができる。
【００２４】
本方法は、ワールドの特に単純化されたビューを提供する３Ｄセンサーの場合に特に良好に機能するが、従来のカメラのために分類器をトレーニングする場合にも機能することができる。この場合、照明、衣類テクスチャ、髪の色等の豊富なバリエーションをサンプリングすることが必要となる。
【００２５】
上記で説明した方法のステップは、バスによってメモリ及び入出力インターフェースに接続されたプロセッサにおいて実行することができる。
【００２６】
データ生成は、分類器トレーニング１４０と同時にリアルタイムで行われる。シミュレーションは新たなデータを生成し、トレーニングはシミュレーションデータから特徴を決定し、特殊化されたタスクのための分類器をトレーニングする。例えば、分類器はサブ分類器を含むことができる。分類器は、オブジェクト検出、オブジェクト(人間)姿勢推定、シーン分割及びラベル付け等の様々な分類タスクをトレーニングするために用いることができる。
【００２７】
１つの実施の形態では、トレーニングは、オブジェクトを検出するのに用いられるのと同じプロセッサを用いてターゲット環境において行われる。異なる実施の形態では、得られる環境モデルは、通信ネットワークを用いて中央サーバに転送され、シミュレーション及びトレーニングが中央サーバにおいて行われる。トレーニングされたカスタム環境分類器１５０は、次に、分類中の検出において用いられるオブジェクト検出プロセッサに返送される。
【００２８】
１つの実施の形態では、トレーニングはシミュレーション前に収集された追加のトレーニングデータを用いることができる。トレーニングは、以前にトレーニングされた分類器から開始し、オンライン学習方法を用いて、この分類器を、シミュレートされたデータを用いて新たな環境にカスタマイズすることもできる。
【００２９】
図５に示すように、リアルタイム動作中、センサー５０５は、環境の１組の試験画像５２０を取得する(５１０)。分類器５３０は、ターゲット環境５０１の２Ｄカメラ又は３Ｄカメラ５０５によって取得された１組の試験画像５２０内に表現されたオブジェクト５４０を検出し分類することができる。この組は、１つ又は複数の画像を含むことができる。検出されたオブジェクトは、関連付けられた姿勢、すなわちロケーション、及び向き、並びにオブジェクトタイプ、例えば人物、車両等を有することができる。
【００３０】
試験画像５２０は、分類器１５０を環境及び環境内のオブジェクトの変化に経時的に適応させるためのターゲット環境モデル１０１として用いることができることに留意されたい。例えば、店の構成が変更される可能性があり、店が異なる顧客にケータリングするとき、顧客の構成も変化する可能性がある。
【００３１】
図６は例示的なトレーニングされた分類器を示す。１つの実施の形態では、この発明の分類器は、ＡｄａＢｏｏｓｔ(適応ブースティング)に基づく。ＡｄａＢｏｏｓｔは、「弱い」分類器の集合を用いる機械学習方法である。これについては、例えば、非特許文献３を参照されたい。この発明では、拒絶カスケード構造(rejection cascade structure)６００を用いて複数のＡｄａＢｏｏｓｔ分類器を組み合わせる。
【００３２】
拒絶カスケードにおいて、正(真)として分類されるには、全ての分類器が、ターゲットロケーションが人間を含むことに合意しなくてはならない。より早い段階の分類器はより単純であり、これは、負のロケーションについて、平均して、弱い分類器がより少ないことを意味する。このため、リアルタイム性能を達成するために評価される分類器の数は僅かである。
【００３３】
ＡｄａＢｏｏｓｔは、弱い分類器の加重和であるアンサンブル分類器を学習する。
【００３４】
Ｆ(ｘ)＝ｓｉｇｎ(Σi  ｗｉｇｉ(ｘ))
【００３５】
弱い分類器は、単一の対特徴
【００３６】
ｇｉ(ｘ)＝ｓｉｇｎ(ｆｉ(ｘ)−ｔｈｉ)
【００３７】
を用いる単純な決定ブロックであり、トレーニング手順は、情報特徴ｕｉ及びｖｉを選択し、分類器パラメーターｔｈｉ及び重みｗｉを学習する。
【００３８】
図７に示すように、以下のポイント対距離特徴を用いる。
【００３９】
ｆｉ(ｘ)＝ｄ(ｘ＋ｖｉ／ｄ(ｘ))−ｄ(ｘ＋ｕｉ／ｄ(ｘ))
【００４０】
ここで、ｄ(ｘ)は画像内のピクセルｘの距離(奥行き)であり、ｖｉ及びｕｉは、ポイントｘからのシフトベクトルとして指定されるポイント対である。シフトベクトルは、画像平面上でルートロケーションに対し指定される。シフトベクトルは、カメラからのルートロケーションの距離に対して正規化され、それによって、ルートポイントが遠い場合、画像平面上のシフトはスケールダウンされる。特徴は、シフトベクトルによって定義される２つの点の奥行きの差である。
【００４１】
トレーニング中、例えば、シミュレーションプラットフォーム(ランダムな実背景を含む)を用いて合成して生成された５０００人の人間の正の組を用いる。負の組は、人間を含まないターゲット環境の２２００個の実画像からサンプリングされる１０１０個の負のロケーションを有する。データはリアルタイムでレンダリングされ、決して記憶されず、これによって、トレーニングは従来の方法よりもはるかに高速になる。例えば、４９個のカスケード層があり、合計２１９６個の対特徴が選択される。分類器は、画像内の全てのピクセルにおいて評価される。カメラに対する距離に基づくスケール正規化に起因して、複数のスケールで探索する必要はない。
【００４２】
応用形態
この発明による分類器は、特定のエンドユーザー及びターゲット環境へのカスタマイズを提供し、エンドユーザー環境がモデル化される新規のビジネスモデルを可能にし、サービスが用いられる環境に対し最適化されることに起因して従来の方法よりも優れた分類器が生成される。
【００４３】
例えば、ウェブベースのサービスは、エンドユーザー(顧客)が、例えば店の３Ｄモデルのレンダリングを閲覧することによって、カスタム分類器を自身で構成し、環境内の選択されたロケーションに３Ｄセンサーをドラッグアンドドロップすることを可能にすることができる。これは仮想センサービューを得ることによって確認することができる。
【００４４】
顧客選択のための特定の動き(走る挙動、投げる挙動、買い物をする挙動、例えば、製品を選択する、ラベルを読む等)を利用可能にすることができる。これらは全て、顧客が所望する正確な位置及び方向にカスタマイズすることができ、それによって検出及び分類を非常に精密にすることができる。この発明によるシミュレーション１２０では、運転する及び走る等の動き、並びに他のアクションを、例えば、シミュレートされた異なる背景を用いてモデル化することができる。
【図１】
2016218999.tif 000003
【図２】
2016218999.tif 000004
【図３】
2016218999.tif 000005
【図４】
2016218999.tif 000006
【図５】
2016218999.tif 000007
【図６】
2016218999.tif 000008
【図７】
2016218999.tif 000009
【外国語明細書】
2016218999.tif 000010
2016218999.tif 000011
2016218999.tif 000012
2016218999.tif 000013
2016218999.tif 000014
2016218999.tif 000015
2016218999.tif 000016
2016218999.tif 000017
2016218999.tif 000018
2016218999.tif 000019
2016218999.tif 000020
2016218999.tif 000021
2016218999.tif 000022
2016218999.tif 000023
2016218999.tif 000024
2016218999.tif 000025
2016218999.tif 000026
2016218999.tif 000027
2016218999.tif 000028
2016218999.tif 000029
2016218999.tif 000030
2016218999.tif 000031