(57)【要約】      （修正有）【課題】デジタル画像における対象物の位置及び配向の追跡するシステムを提供する。【解決手段】デジタル画像４１０における複数の対象ピクセル及び複数の背景ピクセルが特定される。特定された複数の対象ピクセル及び特定された複数の背景ピクセルに基づいて、デジタル画像に関するバイナリ画像４４０が生成される。バイナリ画像は、デジタル画像における対象物の位置及び配向のうちの少なくとも一方を特定する。対象物に向かってビークルを誘導するのを容易にするために、対象物の位置及び配向のうちの特定された少なくとも一方に基づいて、ビークルのナビゲーションシステムにコマンドが送信される。【選択図】図４
2019117630.tif 000002
【特許請求の範囲】
【請求項１】
デジタル画像における対象物の位置及び配向を追跡することによって、ビークルのナビゲーションを制御するための方法であって、
視覚センサによって取得されたデジタル画像を受信し、
１つ以上の第１先行デジタル画像における対応するピクセルと比較したときの、前記デジタル画像における第１群のピクセルのピクセル速度に関する複数のバイナリ値を含む第１アレイを生成し、
１つ以上の第２先行デジタル画像における対応するピクセルと比較したときの、前記デジタル画像における前記第１群のピクセルのピクセル強度の標準偏差に関する複数の値を含む第２アレイを生成し、
前記第２アレイにおける前記複数の値に関する複数の閾値を算出し、
前記第１アレイ、前記第２アレイ、及び、前記複数の閾値に基づいて、前記デジタル画像における複数の対象ピクセル、及び、複数の背景ピクセルを特定し、
特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像に関するバイナリ画像を生成し、
前記バイナリ画像に基づいて、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方を特定し、
前記対象物に向かって前記ビークルを誘導するのを容易にするために、前記対象物の位置及び配向のうちの特定された少なくとも一方に基づいて、前記ビークルのナビゲーションシステムにコマンドを送信する、方法。
【請求項２】
さらに、前記バイナリ画像を電子データベースに保存することを含み、前記電子データベースは、前記視覚センサによって取得された複数の画像に関連する複数のバイナリ画像を含み、前記対象物の位置及び配向のうちの少なくとも一方を特定することは、さらに、前記複数のバイナリ画像に基づいて行われる、請求項１に記載の方法。
【請求項３】
デジタル画像における対象物の位置及び配向を追跡するための方法であって、
視覚センサによって取得されたデジタル画像を受信し、
前記デジタル画像における第１群のピクセルのピクセル速度に関する複数のバイナリ値を含む第１アレイを生成し、
前記デジタル画像における前記第１群のピクセルのピクセル強度の標準偏差に関する複数の値を含む第２アレイを生成し、
前記第１アレイ及び前記第２アレイに基づいて、前記デジタル画像における複数の対象ピクセル、及び、複数の背景ピクセルを特定し、
特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方を特定する、方法。
【請求項４】
前記第１アレイにおける前記複数のバイナリ値は、１つ以上の第１先行デジタル画像におけるピクセルと比較したときの、前記デジタル画像におけるピクセルのピクセル速度に関連しており、前記第２アレイにおける前記複数の値は、１つ以上の第２先行デジタル画像におけるピクセルと比較したときの、前記デジタル画像におけるピクセルのピクセル強度の標準偏差に関連しており、前記方法は、さらに、
前記第２アレイにおける前記複数の値に関する複数の閾値を算出することを含み、前記デジタル画像における前記複数の対象ピクセル、及び、前記複数の背景ピクセルの特定は、さらに、前記複数の閾値に基づいている、請求項３に記載の方法。
【請求項５】
さらに、前記対象物に向かって前記ビークルを誘導するのを容易にするために、前記対象物の位置及び配向のうちの特定された少なくとも一方に基づいて、前記ビークルのナビゲーションシステムにコマンドを送信することを含む、請求項３に記載の方法。
【請求項６】
さらに、特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像に関するバイナリ画像を生成することを含み、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方の特定は、さらに、前記バイナリ画像に基づいている、請求項３に記載の方法。
【請求項７】
さらに、前記デジタル画像における前記対象物を囲む境界ボックスを形成するのに十分な境界情報を受信することを含み、前記デジタル画像に関する前記第１アレイの生成は、さらに、
前記デジタル画像において、前記境界ボックスの外側に位置する複数のサンプリングウィンドゥを特定することと、
前記複数のサンプリングウィンドゥの各々の内部に位置するピクセルのピクセル速度値を算出することと、
前記複数のサンプリングウィンドゥ内に位置する前記ピクセルについて算出されたピクセル速度に少なくとも部分的に基づいて、前記デジタル画像における第１群のピクセルのピクセル速度に関する前記複数のバイナリ値を算出することと、を含む、請求項１又は３に記載の方法。
【請求項８】
さらに、
前記第１群のピクセルにおけるピクセルの勾配値を算出することと、
前記第１群のピクセルにおける前記ピクセルの勾配閾値を算出することと、
少なくとも部分的には、前記ピクセルの前記勾配値と前記ピクセルの前記勾配閾値との比較に基づいて、前記第１アレイにおける前記ピクセルの前記バイナリ値を算出することと、を含む、請求項１又は３に記載の方法。
【請求項９】
前記複数の閾値は、第１閾値及び第２閾値を含み、前記第１閾値は、前記第２閾値よりも高く、前記デジタル画像における前記複数の対象ピクセル、及び、前記複数の背景ピクセルの特定は、さらに、
前記第１アレイにおける対象ピクセルとして第１ピクセルが示されていると判定することと、
前記第２アレイにおいて、前記第１ピクセルに対応するエントリを特定することと、
前記第２アレイにおける前記エントリが、前記第１閾値よりも低いと判定したら、これに応答して、前記第１ピクセルを対象ピクセルとして特定することと、
前記第１アレイにおける背景ピクセルとして第２ピクセルが示されていると判定することと、
前記第２アレイにおいて、前記第２ピクセルに対応するエントリを特定することと、
前記第２アレイにおける前記エントリが、前記第２閾値以上であると判定したら、これに応答して、前記第２ピクセルを背景ピクセルとして特定することと、を含む、請求項２又は４に記載の方法。
【請求項１０】
さらに、前記バイナリ画像を電子データベースに保存することを含み、前記電子データベースは、前記視覚センサによって取得された複数の画像に関連する複数のバイナリ画像を含み、前記対象物の位置及び配向のうちの少なくとも一方を特定することは、さらに、前記複数のバイナリ画像に基づいて行われる、請求項６に記載の方法。
【請求項１１】
プロセッサと、
プログラムを保存するメモリと、を含み、前記プログラムは、前記プロセッサによって実行されると、以下の動作、すなわち、
視覚センサによって取得されたデジタル画像を受信することと、
前記デジタル画像における第１群のピクセルのピクセル速度に関する複数のバイナリ値を含む第１アレイを生成することと、
前記デジタル画像における前記第１群のピクセルのピクセル強度の標準偏差に関する複数の値を含む第２アレイを生成することと、
前記第１アレイ及び前記第２アレイに基づいて、前記デジタル画像における複数の対象ピクセル、及び、複数の背景ピクセルを特定することと、
特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方を特定することと、を行うように構成された、システム。
【請求項１２】
前記第１アレイにおける前記複数のバイナリ値は、１つ以上の第１先行デジタル画像におけるピクセルと比較したときの、前記デジタル画像におけるピクセルのピクセル速度に関連しており、前記第２アレイにおける前記複数の値は、１つ以上の第２先行デジタル画像におけるピクセルと比較したときの、前記デジタル画像におけるピクセルのピクセル強度の標準偏差に関連しており、前記動作は、さらに、
前記第２アレイにおける前記複数の値に関する複数の閾値を算出することを含み、前記デジタル画像における前記複数の対象ピクセル、及び、前記複数の背景ピクセルの特定は、さらに、前記複数の閾値に基づいている、請求項１１に記載のシステム。
【請求項１３】
前記動作は、さらに、前記対象物に向かって前記ビークルを誘導するのを容易にするために、前記対象物の位置及び配向のうちの特定された少なくとも一方に基づいて、前記ビークルのナビゲーションシステムにコマンドを送信することを含む、請求項１１に記載のシステム。
【請求項１４】
前記動作は、さらに、
特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像に関するバイナリ画像を生成することを含み、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方の特定は、さらに、前記バイナリ画像に基づいている、請求項１１に記載のシステム。
【請求項１５】
さらに、前記デジタル画像における前記対象物を囲む境界ボックスを形成するのに十分な境界情報を受信することを含み、前記デジタル画像に関する前記第１アレイの生成は、さらに、
前記デジタル画像において、前記境界ボックスの外側に位置する複数のサンプリングウィンドゥを特定することと、
前記複数のサンプリングウィンドゥの各々の内部に位置するピクセルのピクセル速度値を算出することと、
少なくとも部分的に、前記複数のサンプリングウィンドゥ内に位置する前記ピクセルについて算出されたピクセル速度に基づいて、前記デジタル画像における第１群のピクセルのピクセル速度に関する前記複数のバイナリ値を算出することと、を含む、請求項１１に記載のシステム。
【請求項１６】
さらに、
前記第１群のピクセルにおけるピクセルの勾配値を算出することと、
前記第１群のピクセルにおける前記ピクセルの勾配閾値を算出することと、
前記ピクセルの前記勾配値と前記ピクセルの前記勾配閾値との比較に少なくとも部分的に基づいて、前記第１アレイにおける前記ピクセルの前記バイナリ値を算出することと、を含む、請求項１１に記載のシステム。
【請求項１７】
前記複数の閾値は、第１閾値及び第２閾値を含み、前記第１閾値は、前記第２閾値よりも高く、前記デジタル画像における前記複数の対象ピクセル、及び、前記複数の背景ピクセルの特定は、さらに、
前記第１アレイにおける対象ピクセルとして第１ピクセルが示されていると判定することと、
前記第２アレイにおいて、前記第１ピクセルに対応するエントリを特定することと、
前記第２アレイにおける前記エントリが、前記第１閾値よりも低いと判定したら、これに応答して、前記第１ピクセルを対象ピクセルとして特定することと、
前記第１アレイにおける背景ピクセルとして第２ピクセルが示されていると判定することと、
前記第２アレイにおいて、前記第２ピクセルに対応するエントリを特定することと、
前記第２アレイにおける前記エントリが、前記第２閾値以上であると判定したら、これに応答して、前記第２ピクセルを背景ピクセルとして特定することと、を含む、請求項１２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で説明する態様は、画像におけるオブジェクト検出に関し、より具体的には、クラッタ背景（cluttered background）を含むデジタル画像における対象物の追跡に関する。
【背景技術】
【０００２】
視覚画像を用いたオブジェクトの追跡は、監視、ビークルのドッキング、その他多くの用途を含む様々な用途において重要である。追跡されるオブジェクトは、陸上車両、航空機、衛星、人間、又は、視野を横切って移動する他の全てのオブジェクトを含みうる。追跡に関する視覚入力は、視覚センサ、赤外線カメラ、又は、視覚入力を供給可能な他の撮像装置から取得することができる。追跡処理の一部として、システムは、画像内の対象物と背景とを区別可能でなければならない。しかしながら、対象物と背景とを区別するための現行の画像処理方法は、概して、背景の範囲内及び対象物の範囲内でピクセル強度が大幅に変化する場合、効果的でない。
【発明の概要】
【０００３】
本明細書で説明する一実施形態は、デジタル画像における対象物の位置及び配向を追跡することによって、ビークルのナビゲーションを制御するための方法である。前記方法においては、視覚センサによって取得されたデジタル画像を受信し、１つ以上の第１先行デジタル画像における対応するピクセルと比較したときの、前記デジタル画像における第１群のピクセルのピクセル速度に関する複数のバイナリ値を含む第１アレイを生成し、１つ以上の第２先行デジタル画像における対応するピクセルと比較したときの、前記デジタル画像における前記第１群のピクセルのピクセル強度の標準偏差に関する複数の値を含む第２アレイを生成する。前記方法においては、さらに、前記第２アレイにおける前記複数の値に関する複数の閾値を算出し、前記第１アレイ、前記第２アレイ、及び、前記複数の閾値に基づいて、前記デジタル画像における複数の対象ピクセル、及び、複数の背景ピクセルを特定し、特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像に関するバイナリ画像を生成し、前記バイナリ画像に基づいて、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方を特定する。前記方法においては、さらに、前記対象物に向かって前記ビークルを誘導するのを容易にするために、前記対象物の位置及び配向のうちの特定された少なくとも一方に基づいて、前記ビークルのナビゲーションシステムにコマンドを送信する。
【０００４】
本明細書で説明する他の実施形態は、デジタル画像における対象物の位置及び配向を追跡するための方法である。前記方法においては、視覚センサによって取得されたデジタル画像を受信し、前記デジタル画像における第１群のピクセルのピクセル速度に関する複数のバイナリ値を含む第１アレイを生成し、前記デジタル画像における前記第１群のピクセルのピクセル強度の標準偏差に関する複数の値を含む第２アレイを生成する。前記方法においては、さらに、前記第１アレイ及び前記第２アレイに基づいて、前記デジタル画像における複数の対象ピクセル、及び、複数の背景ピクセルを特定し、特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方を特定する。
【０００５】
本明細書で説明する他の実施形態は、プロセッサと、プログラムを保存するメモリと、を含むシステムである。前記プログラムは、前記プロセッサによって実行されると、以下の動作、すなわち、視覚センサによって取得されたデジタル画像を受信することと、前記デジタル画像における第１群のピクセルのピクセル速度に関する複数のバイナリ値を含む第１アレイを生成することと、前記デジタル画像における前記第１群のピクセルのピクセル強度の標準偏差に関する複数の値を含む第２アレイを生成することと、前記第１アレイ及び前記第２アレイに基づいて、前記デジタル画像における複数の対象ピクセル、及び、複数の背景ピクセルを特定することと、特定された前記複数の対象ピクセル、及び、特定された前記複数の背景ピクセルに基づいて、前記デジタル画像における前記対象物の位置及び配向のうちの少なくとも一方を特定することと、を行う。
【図面の簡単な説明】
【０００６】
本開示の上記特徴が詳細に理解できるように、上で簡単に要約した本開示について実施態様を参照しながらより具体的に説明する。なお、そのうちのいくつかは、添付図面に示している。
【０００７】
【図１】本明細書で説明する一実施形態による、画像の背景に対して対象物を検出するビークルの例を示す図である。
【図２】本明細書で説明する一実施形態による、例示的なビークルを示すブロック図である。
【図３】本明細書で説明する一実施形態による、対象オブジェクトを示す例示的なデジタル画像を示す図である。
【図４】本明細書で説明する一実施形態による、デジタル画像のための対象物追跡処理を示す図である。
【図５】本明細書で説明する一実施形態による、デジタル画像のための対象物追跡処理を示すフローチャートである。
【図６】本明細書で説明する一実施形態による、画像における背景部分のピクセル速度値の生成を示す図である。
【図７】本明細書で説明する一実施形態による、画像における背景部分のピクセル速度値の生成において畳み込みを用いることを示す図である。
【図８】本明細書で説明する一実施形態による、速度画像の生成を示すフローチャートである。
【図９】本明細書で説明する一実施形態による、速度画像の生成を示す図である。
【図１０】本明細書で説明する一実施形態による、推定される対象ピクセル及び背景ピクセルの閾値の計算を示す図である。
【図１１】本明細書で説明する一実施形態による、バイナリ画像の生成を示すフローチャートである。
【発明を実施するための形態】
【０００８】
本明細書に開示された実施形態は、対象物と背景画像とを区別するために改良された方法、システム、及び、装置に関する。デジタル画像において対象物と背景とを区別するための１つの方法として、当該対象物のピクセルと当該背景のピクセルとの分離に用いられるピクセル閾値を計算する方法がある。これは、例えば、明るく照らされた航空機が暗い夜空を横切っている際の当該航空機の追跡などにおいては、比較的単純な作業である。この場合、背景ピクセルと対象ピクセルとを区別するために用いるピクセル強度閾値の算出は比較的容易である。閾値が算出されると、当該閾値を下回る値を有するピクセルは、ほぼ確実に背景（例えば、暗い夜空）であり、当該閾値を上回る値を有するピクセルは、ほぼ確実に追跡中の対象物である。また、対象物（例えば、航空機）が非常に暗く、背景が明るい晴天の場合においても、課題は同様に単純であるが、上記とは逆になる。この場合、閾値は、対象物に属する暗いピクセルと、空に属する明るいピクセルを分離する。
【０００９】
しかしながら、多くの現実世界の用途においては、処理されるシーンにおける背景のピクセル強度、及び、対象物のピクセル強度の変動幅が広く、これらのピクセル強度が重なっていることが多い。このような場合、単純で瞬間的なピクセル強度閾値は、背景を除去して所望の対象物を抽出するのに十分ではない。また、この解決法は、所与のフレーム内のピクセル強度の分析に依存するので、クラッタが存在するシーン（cluttered scenes）に対しては、脆弱である。強度に区別可能な差がない場合、クラッタにより検出処理の質が低下し、所望の対象物の抽出ができない場合がある。
【００１０】
本開示は、対象物及び背景の両方の瞬間的なピクセル強度が大幅に変動する移動シーン及び動的シーンにおいて非常に複雑な対象物を抽出するための実施形態に関する。これらの実施形態は、他の方法（背景が静的で対象物が動いている場合）とは異なり、対象物及び背景の両方がセンサに対して動いているシーンにおいても効果を奏することができる。これにより、固定背景技術によって強いられていた多くの制約がなくなり、より多くの用途（use case）をユーザに提供することができる。さらに、いくつかの状況においては、説明する実施形態は、いくつかの速度勾配に基づいて二次閾値／弁別器（discriminator）を使用することができる。これらの勾配は、背景ノイズ源（background noise source）の特定の形態（geometry）によって予測可能であるため、様々なクラッタ状況下において、背景のピクセルと対象物のピクセルとをより効果的に区別することができる。
【００１１】
例えば、本明細書に開示している実施形態は、宇宙船などのビークルのためのナビゲーションシステムの一部として用いることができる。ビークルのナビゲーションシステムは、衛星や宇宙ステーションなどの宇宙空間におけるオブジェクトとのドッキングを容易にするために、ビジュアルトラッキング（visual tracking）を用いてもよい。しかしながら、これには、例えば、背景が地球である画像などの潜在的なクラッタ画像において、対象物の位置及び配向の両方を特定しなければならない。さらに、この場合、地球が球形状であり、背景画像が、ビークルの視野を横切って複雑に動くため、画像において対象物を特定するのが複雑になる。本明細書に記載の実施形態においては、フレーム間の変化に強く、フレーム間での大きいピクセル移動（例えば、フレーム当たり数十ピクセル分の対象物の動き）を処理することができるため、上記したような状況におけるオブジェクト検出を改善することができる。ビークルのナビゲーションシステムは、対象物の位置及び配向に関する検出情報を用いて、例えば、対象物への誘導及び当該対象物とのドッキングを容易にすることができる。
【００１２】
図１は、クラッタ背景に対する対象物の追跡が有用である状況の一例である。ビークル２００は、視覚センサ２０２を用いて対象物１１０を追跡することに少なくとも部分的に基づいて誘導を行う。例えば、ビークル２００は、宇宙船であってもよいし、対象物１１０は、衛星又は宇宙ステーションであってもよい。ビークル２００は、視野１２０を有する視覚センサ２０２を備える。視覚センサ２０２は、例えば、カメラ又は他の適切な視覚センサである。ビークル２００は、対象物１１０とのドッキングを容易にするために、視覚センサ２０２を用いて、対象物１１０の位置及び配向を追跡することができる。しかしながら、視覚センサ２０２は、背景画像１５０（ここでは、地球の画像）も取得（pick up）することになるであろう。ビークル２００は、視覚センサ２０２を用いて対象物１１０を追跡するために、対象物１１０を示すピクセルと背景画像１５０を示すピクセルとを分離することができなければならない。これにより、ビークル２００は、対象物１１０の位置及び配向を特定することができ、ひいては、ビークル２００は、この位置及び配向を用いて、対象物１１０への誘導、及び、当該対象物１１０とのドッキングを行うことができる。
【００１３】
図１は、本開示による例示的なビークルとして宇宙船を示しているが、本明細書に開示する実施形態は、宇宙空間におけるビークルのナビゲーションに限定されない。本開示の実施形態は、クラッタ背景におけるオブジェクトの追跡が好ましい様々な場面において、有用であろう。例えば、本開示の実施形態は、国土安全保障又は戦場での対象物追跡及び迎撃、軍用及び商用の衛星撮像及び追跡、月及び惑星の探査、有人航空機及び無人航空機のための商用撮像及び航空撮像、地雷探知及び石油探査を含む軍用及び商用の水中探査、センサ監視、組立ライン検査、又は、他の適切な用途において使用することができる。
【００１４】
図２は、例示的なビークル２００を示すブロック図である。ビークル２００は、視覚センサ２０２を含む。上述したように、視覚センサ２０２は、可視光及び／又は赤外光を感知するように構成されたカメラ、或いは、他の適切な視覚センサであってもよい。ビークル２００は、さらに、プロセッサ２０４を含む。プロセッサ２０４は、概して、メモリ２０６に保存されているプログラミング命令を読み出して実行する。プロセッサ２０４は、単一の中央処理ユニット（ＣＰＵ）、複数のＣＰＵ、複数の処理コアを有する単一のＣＰＵ、複数の実行経路を有するグラフィック処理ユニット（ＧＰＵ）などを表すものとして含まれている。メモリ２０６は、概して、ランダムアクセスメモリ又は不揮発性記憶装置を含む任意の適切なタイプの電子記憶装置を表すものとして含まれている。
【００１５】
メモリ２０６は、概して、ビークル制御及び対象物の追跡に関する様々な機能を実行するためのプログラムコードを含む。プログラムコードは、概して、メモリ２０６内の様々な機能的「アプリケーション」、「コンポーネント」、又は、「モジュール」として説明されるが、代替の実施形態においては、異なる機能、及び／又は、複数の機能の組み合わせを含みうる。メモリ２０６内のビークル制御システム２３０は、概して、適切な推進システムを介したビークル２００の誘導制御を含む、ビークル２００の制御を行うように構成されている。画像取得コンポーネント２１０は、視覚センサ２０２からの画像の取得を制御する。以降の図面で説明するように、画像取得コンポーネント２１０により取得された画像は、対象物の追跡に用いることができる。
【００１６】
メモリ２０６は、さらに、画像解析コンポーネント２２０を含む。画像解析コンポーネント２２０は、概して、画像取得コンポーネント２１０を用いて取得された画像を解析するために用いられる。画像解析コンポーネント２２０は、速度画像生成部２２２を含む。速度画像生成部２２２は、画像取得コンポーネント２１０を用いて取得された画像に基づいて、速度画像を生成するために用いられる。速度画像生成部２２２についての説明は、以降の図面を参照しながらより詳細に行う。
【００１７】
画像解析コンポーネント２２０は、さらに、時間アレイ生成部（temporal array generator）を含む。時間アレイ生成部は、画像取得コンポーネント２１０を用いて取得された画像から時間偏差アレイを生成するために用いられるものであり、これについては、図５を参照しながらより詳しく説明する。画像解析コンポーネント２２０は、さらに、バイナリ画像生成部２２６を含む。バイナリ画像生成部２２６は、少なくとも部分的には、速度画像生成部２２２によって生成された速度画像、時間アレイ生成部２２４によって生成された時間偏差アレイ、及び、画像解析コンポーネント２２０によって算出された２つの閾値に基づいて、バイナリ画像を生成するために用いられる。バイナリ画像生成部２２６については、図１１に関連させてより詳細に説明する。
【００１８】
メモリ２０６は、さらに記憶装置２４０を含む。記憶装置２４０は、例えば、バイナリ画像生成部２２６によって生成された一連のバイナリ画像を記憶するために用いられる。これについては、図１１に関連させてより詳細に説明する。ビークル２００は、さらに、ビークルを推進するために用いられる推進システム２６０と、ナビゲーションシステム２７０とを含む。一実施形態においては、ナビゲーションシステム２７０は、画像解析コンポーネント２２０によって特定された対象物の位置及び配向を用いて容易に誘導を行うことができる。
【００１９】
図３は、焦点面アレイ（ＦＰＡ）によって取得された画像３１０を示しており、例えば、視覚センサ２０２及び画像取得コンポーネント２１０によって取得された画像を示す。この画像には対象物３３０が示されており、これは、例えば、ビークル２００が、ナビゲーション及びドッキングを容易にするために追跡している対象物である。タイトな境界ボックス（tight bounding box: TBB）３２０は、対象物３３０を囲むために生成された、一般に望ましい任意の境界ボックスである。ＴＢＢ３２０は、所与の照準点位置３４０に基づいて構築される。ＴＢＢ３２０は、対象物３３０を密接に囲むために、当該対象物の拡大画像を囲むように計算される。しかしながら、ＴＢＢは、対象物３３０が当該ＴＢＢによって完全に囲まれるように、対象物３３０を囲む際にゆとりを持たせるように計算してもよい。一実施形態においては、ＴＢＢは、追加のセンサからの情報、以前の画像における対象物の追跡、又は、他の適切な情報源に基づいて計算することができる。一実施形態においては、図３に示すように、対象物の追跡にＴＢＢ３２０を使用することができる。しかしながら、上述したように、ＴＢＢは、任意である。例えば、ＴＢＢ３２０の代わりに、単に、画像３１０の複数の縁及び４つの角を使用することもできる。対象物によっては、これで十分な場合がある。
【００２０】
図４は、画像解析コンポーネント２２０が、対象物と背景とを分離するバイナリ画像を生成する処理の概要を示す。図５は、この処理を示すフローチャートである。したがって、図４及び５については、一緒に説明を行うことができる。図５に示すステップ５０２において、画像解析コンポーネント２２０は、例えば、図４に示す取得画像４１０などの取得画像を受信する。これは、例えば、視覚センサ２０２及び画像取得コンポーネント２１０によって取得された画像であってもよい。ステップ５０４において、画像解析コンポーネント２２０は、取得画像４１０において、ＴＢＢの外側に位置するピクセルの速度値を生成する。これらのピクセルは、ＴＢＢの外側に位置しているため、画像解析コンポーネント２２０は、これらのピクセルが対象物ではなく背景を示していると推定することができる。ステップ５０４についての説明は、図６及び７を参照しながらより詳細に行う。
【００２１】
ステップ５０６において、画像解析コンポーネント２２０は、取得画像４１０に関する時間アレイを更新する。画像解析コンポーネント２２０は、例えば、２つの異なる時間アレイ、すなわち、規定数のフレームに亘る取得画像４１０の時間的なピクセル強度を示すアレイと、同じ規定数のフレームに亘る取得画像４１０のピクセル強度の時間的な平均値2を示すアレイと、を用いることができる。ピクセルの時間的な平均値とは、第１フレームから現在のフレームまでのシーケンスにおける当該ピクセルの平均強度値である。ピクセルの時間的な平均値2は、同じフレームのシーケンスにおける、ピクセルの強度値の２乗の平均値である。一実施形態においては、検出閾値を超えるピクセルについてのみ、時間的な値を計算すればよい。
【００２２】
ステップ５０８において、速度画像生成部２２２は、例えば、図４に示す速度画像４２０などの予備的な速度画像を生成する。速度画像４２０は、バイナリ画像であって、白いピクセルが、推定される対象ピクセルを示しており、黒いピクセルが、推定される背景ピクセルを示している。速度画像４２０の生成については、図８及び９に関連させてより詳細に説明する。
【００２３】
ステップ５１０において、時間アレイ生成部２２４は、ステップ５０６で生成された時間アレイに基づいて、時間偏差アレイを生成する。図４における画像４３０は、時間偏差アレイを示す。時間偏差アレイは、取得画像４１０における各ピクセルの平均強度値の標準偏差を示しており、周知の標準偏差式を用いて計算することができる。例えば、σ2＝＜Ｍｅａｎ2＞−＜Ｍｅａｎ＞＜Ｍｅａｎ＞の式を用いることができる。この式において、σ2は、分散値であり、Ｍｅａｎ2は、ステップ５０６を参照しながら説明した時間平均値2であり、Ｍｅａｎは、ステップ５０６を参照しながら説明した時間平均値である。一実施形態においては、ステップ５０６で検出閾値が用いられた場合、検出閾値を上回らないピクセルには、非常に大きいσ値が割り当てられる。偏差アレイにおいて、標準偏差値が低いピクセルは、フレーム間で強度があまり変化しなかったピクセルに対応しているが、これらは、対象ピクセルである可能性が高い。この理由は、フレーム間において、対象物は、ＴＢＢ３２０内でほぼ静止したままだからである。これらは、時間偏差アレイ４３０における黒いピクセルである。標準偏差値が高いピクセルは、フレーム間で強度が大幅に変化したピクセルに対応しているが、これらのピクセルは、背景ピクセル又は対象エッジピクセルである可能性が高い。この理由は、背景及び対象エッジは、フレーム間で変化することが予想されるからである。これらは、時間偏差アレイ４３０における白いピクセル及びグレーのピクセルである。
【００２４】
ステップ５１２において、画像解析コンポーネントは、ピクセルが対象ピクセルであるか、或いは、背景ピクセルであるかを推定するのに用いる２つの閾値を算出する。これについては、図１０を参照しながらより詳細に説明する。ステップ５１４及び５２０においては、各ピクセルに対して適切な閾値を用いて、バイナリ画像を生成する。この処理においては、時間偏差アレイ及び速度画像の両方が用いられる。これについては、図１１を参照しながらより詳細に説明する。バイナリ画像４４０は、ステップ５２０で生成されるバイナリ画像の一例であって、白いピクセルは、対象ピクセルを示しており、黒いピクセルは、背景ピクセルを示している。
【００２５】
図６は、画像における背景部分のピクセル速度値の生成を示す。ピクセル速度は、画像におけるピクセルで示される物体が、フレーム間でどれだけ動いているかを示す尺度である。ＴＢＢ３２０は、対象物を囲むと推定されるので、ＴＢＢ３２０の外側に位置する全てのピクセルは、画像の背景部分を示すと考えられる。したがって、ＴＢＢ３２０の外側のピクセルのピクセル速度を測定することにより、画像の背景部分のピクセル速度を得ることができる。一実施形態においては、画像解析コンポーネント２２０は、ＴＢＢ３２０の外側の各ピクセルの速度値を計算してもよい。
【００２６】
これに代えて、ＴＢＢ３２０の外側の画像部分を、複数のサンプリングウィンドゥ６１０に分けてもよい。この場合、サンプリングウィンドゥ６１０の各々の中心に位置するピクセルの速度を計算する。その後、これらのピクセルの各々の値を補間する。これにより、より少ない数のピクセルについて速度を計算することができる。例えば、図６に示すように、８つのサンプリングウィンドゥ６１０を用いた場合、８つのピクセルについてのみ計算を行えばよい。また、必要に応じて、これよりも小さい数又は大きい数のサンプリングウィンドゥを用いることもできる。サンプリングウィンドゥのサイズは、任意の適切なサイズであればよく、例えば、ｎピクセル×ｍピクセルであってもよい。なお、ｎ及びｍは、それぞれ正の整数である。
【００２７】
図７は、図６に示すサンプリングウィンドゥ６１０についてピクセル速度値を生成するための１つの方法を示す。以下に述べるように、他の方法を用いることも可能である。各サンプリングウィンドゥ６１０におけるピクセルによって表される背景画像の速度は、当該サンプリングウィンドゥに対応する現在のピクセルと前回のピクセルとの間の畳み込み（convolution）におけるピーク位置を用いて計算される。サンプリングウィンドゥ６１０に対応するピクセルは、現在の画像にも前回の画像にも存在する。これら２つの領域は、高周波成分を取り出すためにラプラス変換（Laplace transform）に通される。変換された領域は、畳み込まれて、畳込画像が作成される。畳込画像においては、中心からのピーク位置のシフトにより、フレーム間の速度が求められる。この速度は、ｘ方向及びｙ方向の両方で測定される。
【００２８】
例えば、図７に示すように、画像Ｉ（ｔ）は、現在のフレームである。画像Ｉ（ｔ−Δｔ）は、前回のフレームである。サンプリングウィンドゥ６１０は、ピクセル速度を計算するウィンドゥである。サンプリングウィンドゥ６１０における画像Ｉ（ｔ）及び画像Ｉ（ｔ−Δｔ）のピクセルは、例えば、ラプラス変換などの変換７１０に通される。この結果を畳み込むことにより、畳込画像７５０が作製される。ウィンドゥの中心からのピーク位置（例えば、畳込画像７５０に示すグレーの点）のシフトは、フレームＩ（ｔ−Δｔ）とフレームＩ（ｔ）との間のフレーム間速度を表す。この速度は、ウィンドゥのｘ軸に沿ったｘ成分、及び、ウィンドゥのｙ軸に沿ったｙ成分の両方を有する。
【００２９】
図７に示す畳込方法の代替として、解析的方法、又は、他の適切な方法を用いて、サンプリングウィンドゥにおけるピクセルの速度を得ることもできる。例えば、予想される背景画像が地球である場合に解析的方法を用いることができる。第１のステップとして、サンプリングウィンドゥの中心が示す地球上の位置を計算する。これは、Ｒeci2fpＥＣＩ＝Ｑc2eci＊（Ｑcam2c＊Ｒeci2fpＣＡＭ）の式を用いて計算することができる。Ｒeci2fpＥＣＩは、地球中心慣性（ECI: Earth Centered Inertial）座標系において、ピクセルが示す地球上の位置である。Ｑc2eciは、ＥＣＩ座標系における、例えば、図１に示すビークル２００などの、対象物を追跡する物体の姿勢である。Ｑcam2cは、ビークル座標に対するカメラの姿勢である。Ｒeci2fpＣＡＭは、カメラ座標における、ＥＣＩ原点からピクセルのフットプリント（footprint）の中心までのベクトルである。
【００３０】
第２のステップとして、前回のフレームにおけるフットプリント位置の第２のフレーム内におけるピクセル位置を計算する。上述したＲeci2fpＥＣＩは、前回のフレームにおけるフットプリント位置を表す。新たな値は、Ｒcam2fpＣＡＭ＝Ｒcam2eciＣＡＭ＋Ｒeci2fpＣＡＭの式を用いて計算することができる。Ｒcam2eciＣＡＭは、カメラ座標における、カメラ原点からＥＣＩ原点までのベクトルを表す。Ｒeci2fpＣＡＭは、カメラ座標における、ＥＣＩ原点からピクセルのフットプリントの中心までのベクトルを表す。第３のステップとして、前回のフレームにおいてウィンドゥ中心にあったピクセルの動き（Ｖx，Ｖy）を計算する。これは、（Ｖx，Ｖy）＝（ｘp，ｙp）−（ｐｘ，ｐｙ）の式を用いて計算することができる。この式において、（ｘp，ｙp）は、前回のフレームにおけるフットプリントについての、第２のフレームにおける位置を表す。この式において、（ｐｘ，ｐｙ）は、前回のフレームのウィンドゥ中心位置を表す。上述したように、所与のサンプリングウィンドゥ６１０についてのピクセル速度値は、図７に関連させて説明した畳込方法を用いるか、上述した解析的方法を用いるか、或いは、他の適切な方法を用いて、計算することができる。
【００３１】
背景のピクセル速度値を生成した後の次のステップとして、時間アレイを更新する。これは、図５に示すステップ５０６であり、先に説明している。その次のステップとして、ＴＢＢ３２０内のピクセルについての予備的な速度画像を生成する。図８は、このステップを示すフローチャートである。結果として得られる速度画像は、バイナリアレイである。当該バイナリアレイにおいては、「１」に設定されている全てのピクセルは背景ピクセルであるが、「０」に設定されているピクセルは、それぞれ対象ピクセルである場合もあるし、そうでない場合もある。図８におけるステップ８０４〜８１２に関連させてより詳しく説明するが、「０」に設定されたピクセルは、ピクセルの状態を計算するために用いられる勾配法では未知ということになる。関心領域における複数のピクセルが一様である（例えば、周囲のピクセルとほぼ同じ値を有する）場合、これらのピクセルは、対象物において比較的特徴のない部分を表しているか、或いは、背景の均等な部分（smooth portion）、例えば、背景が地球であれば、白い雲や青い海を表している可能性がある。
【００３２】
ステップ８０２において、画像解析コンポーネント２２０は、ＴＢＢの外側の各サンプリングウィンドゥ６１０における中心ピクセルの速度を計算する。これについては、図６及び７を参照しながら説明する。
【００３３】
ステップ８０４において、速度画像生成部２２２は、サンプリングウィンドゥ６１０毎に勾配閾値を計算する。勾配閾値は、例えば、サンプリングウィンドゥ６１０における各ピクセルの平均勾配である。これに代えて、勾配閾値は、サンプリングウィンドゥ６１０におけるピクセルの最大勾配値であってもよいし、サンプリングウィンドゥ６１０におけるピクセルの最小勾配値であってもよいし、他の値であってもよい。
【００３４】
サンプリングウィンドゥ６１０におけるピクセルの勾配値は、例えば、ｖxＥx＋ｖyＥy＋Ｅt＝０の勾配式を用いて算出することができる。この式において、ｖxは、ピクセルのｘ方向における画像速度であり、ｖyは、ピクセルのｙ方向における画像速度であり、Ｅxは、ピクセルのｘ方向における勾配であり、Ｅyは、ピクセルのｙ方向における勾配であり、Ｅtは、ピクセルの時間微分である。
【００３５】
勾配は、２点微分（2-point derivative）又は３点微分（3-point derivative）で計算することができる。ある点の２点微分は、その点の前回の値とその点の現在の値とを用いて求められる。速度が小さく既知である場合、２点勾配は、ｖxＥx＋ｖyＥy＋Ｅt＝０の式と、以下に示す式１、２、及び、３を用いて計算することができる。なお、これらの式において、Δｘ＝Δｙ＝Δｔ＝１であり、ｖi＝ピクセル／フレーム＝ピクセル／Δｔ＜１である。
【数１】
2019117630.tif 000003
【数２】
2019117630.tif 000004
【数３】
2019117630.tif 000005
【００３６】
ある点の３点微分は、その点の前回の値とその点の次の値とを用いることにより求められる。上記と同様に、速度が小さく既知である場合、３点勾配は、ｖxＥx＋ｖyＥy＋Ｅt＝０の式と、以下に示す式４、５、及び６を用いて計算することができる。なお、これらの式においては、Δｘ＝Δｙ＝Δｔ＝１とし、ｖi＝ピクセル／フレーム＝ピクセル／Δｔ＜１とする。
【数４】
2019117630.tif 000006
【数５】
2019117630.tif 000007
【数６】
2019117630.tif 000008
【００３７】
ただし、速度が十分に大きい場合には、上記の式では不十分なこともありうる。この理由は、画像点が、前回の画像における対応位置から多くのピクセルを移動した可能性があるため、近くのピクセルに依存してもうまくいかないからである。したがって、画像点の間の相関関係を再度確認する必要がある。これは、速度を整数部分［Ｖx］及び小数部分ｖxにそれぞれ分割することで達成することができる。速度が大きい場合の２点勾配は、ｖxＥx＋ｖyＥy＋Ｅt＝０の式と、以下に示す式７、８、及び９を用いて計算することができる。なお、これらの式においては、Ｖx＝［Ｖx］＋ｖx、Ｖy＝［Ｖy］＋ｖy、Δｘ’＝［Ｖx］、Δｙ’＝［Ｖy］、Δｘ＝Δｙ＝Δｔ＝１、Δｖi＝ｖi−［ｖi］＜１、及び、ｖi＝ピクセル／フレーム＝ピクセル／Δｔ＞１とする。
【数７】
2019117630.tif 000009
【数８】
2019117630.tif 000010
【数９】
2019117630.tif 000011
【００３８】
速度が大きい場合の３点勾配は、ｖxＥx＋ｖyＥy＋Ｅt＝０の式と、以下に示す式１０、１１、及び１２を用いて計算することができる。なお、これらの式においては、Ｖx＝［Ｖx］＋ｖx、Ｖy＝［Ｖy］＋ｖy、Δｘ’＝［Ｖx］、Δｙ’＝［Ｖy］、Δｘ＝Δｙ＝Δｔ＝１、Δｖi＝ｖi−［ｖi］＜１、及び、ｖi＝ピクセル／フレーム＝ピクセル／Δｔ＞１とする。
【数１０】
2019117630.tif 000012
【数１１】
2019117630.tif 000013
【数１２】
2019117630.tif 000014
【００３９】
速度が小さい場合の平均３点勾配は、以下に示す式１３、１４、及び、１５により求められる。なお、これらの式においては、Ｅx＝ｘ＋１／２における勾配＝時間ｔにおけるピクセル（ｘ，ｙ）、時間ｔにおけるピクセル（ｘ，ｙ＋１）、及び、ｔ＋１における両方のピクセルのｘ勾配の平均であるとする。また、Ｅy＝ｙ＋１／２における勾配＝時間ｔにおけるピクセル（ｘ，ｙ）、時間ｔにおけるピクセル（ｘ＋１，ｙ）、及び、ｔ＋１における両方のピクセルのｙ勾配の平均であるとする。また、Ｅt＝ｔ＋１／２における微分＝時間ｔ＋１におけるピクセル（ｘ，ｙ）、（ｘ，ｙ＋１）、（ｘ＋１，ｙ）、及び、（ｘ＋１，ｙ＋１）のｔ勾配の平均とする。
【数１３】
2019117630.tif 000015
【数１４】
2019117630.tif 000016
【数１５】
2019117630.tif 000017
【００４０】
速度が大きい場合の平均３点勾配は、以下に示す式１６、１７、及び、１８により求められる。なお、これらの式においては、Ｖx＝［Ｖx］＋ｖx、Ｖy＝［Ｖy］＋ｖy、Δｘ’＝［Ｖx］、Δｙ’＝［Ｖy］、Δｘ＝Δｙ＝Δｔ＝１、Δｖi＝ｖi−［ｖi］＜１、及び、ｖi＝ピクセル／フレーム＝ピクセル／Δｔ＞１とする。
【数１６】
2019117630.tif 000018
【数１７】
2019117630.tif 000019
【数１８】
2019117630.tif 000020
【００４１】
上述したように、速度が大きい場合に勾配を計算するとき、時間ｔにおける画像の領域を選択し、時間ｔ＋１／２において同じ領域の勾配を求めるのが目的である。しかしながら、この領域は、ピクセル速度が大きいため、時間ｔ＋１／２において画像内で異なる位置にある可能性がある。しかしながら、速度が分かっているので、時間ｔ及び時間ｔ＋Δｔにおける画像内の領域の位置を計算することができる。時間ｔにおける領域の位置は、ｘ（ｔ）である。時間ｔ＋Δｔにおける領域の位置は、ｘ（ｔ＋Δｔ）＝ｘ（ｔ）＋ｖx＊Δｔである。この式において、Δｔは、任意の適切な値をとる。例えば、Δｔは、１であってもよい。その後、これらの値を用いて、時間ｔ＋１／２における領域の位置を計算し、それに応じて領域の勾配を計算することができる。
【００４２】
さらに、上述したように、速度が大きい場合に勾配を計算する際、速度を整数成分と小数成分に分割すると都合がよい場合がある。小数成分は、選択された領域に対する見かけ速度（apparent velocity）を表す。小数成分Ｖxは、以下の式を用いて計算することができる（［Ｖx］は整数成分である）。
【数１９】
2019117630.tif 000021
【００４３】
一実施形態においては、ステップ８０４において、各サンプリングウィンドゥ６１０について、総速度（Ｖx，Ｖy）を用いてウィンドウの小数速度（ｖx,ｖy）を求めることによって、勾配閾値が計算される。
【数２０】
2019117630.tif 000022
【００４４】
次に、速度画像生成部２２２は、前のフレーム（ｔ）から現在のフレーム（ｔ＋１）までの、時間ｔにおける画像ピクセルの位置のシフトを求める（例えば、前回のフレームにおける背景ピクセルの場合、現在のフレームにおける当該ピクセルの位置を求める）。これは、以下の式を用いて行うことができる。
【数２１】
2019117630.tif 000023
【００４５】
速度画像生成部２２２は、サンプリングウィンドゥ６１０における各ピクセルを用いて、当該ピクセルの勾配式を計算することができる。この計算は、ｖxＥx＋ｖyＥy＋Ｅt＝０の式を用いて行い、Ｅx、Ｅy、及び、Ｅtは、上述した、速度が大きい場合の３点勾配式を用いて計算される。その後、速度画像生成部２２２は、勾配式の絶対値を計算する。
【００４６】
次に、速度画像生成部２２２は、各サンプリングウィンドゥ６１０におけるピクセルの最大勾配式値（Ｇｒａｄmax）を計算するとともに、複数の勾配式値の平均（ＭGradEq）及び標準偏差（σ）を計算する。サンプリングウィンドゥ６１０の瞬間勾配閾値は、ＩＴGrad＝３＊√６＊σの式によって求められ、ＩＴGradは、瞬間勾配閾値である。ＩＴGradがＧｒａｄmaxよりも大きい場合、ＩＴGradをＧｒａｄmaxに設定する。平均を十分に計算できなかった場合、ＩＴGrad＝ＭGradEq−０．９＊（Ｇｒａｄmax−ＭGradEq）の式を用いて平均を計算することができる。ＩＴGradを十分に計算できない場合、この値を２＊Ｇｒａｄmaxに設定する。勾配閾値は、サンプリングウィンドゥの勾配閾値についての移動平均フィルタ（running average filter）を用いて、さらにチェックされる。勾配閾値が、移動平均の３つの標準偏差の範囲内である場合、その閾値は、有効と見做され、移動平均が更新される。ウィンドゥの最終勾配閾値は、移動平均から取得される。最終勾配閾値が算出できない場合、サンプリングウィンドゥは無効であるとタグ付けされ、そのウィンドゥに最も近い２つの隣接するウィンドゥの平均を用いて値が割り当てられる。
【００４７】
ステップ８０６において、速度画像生成部２２２は、ＴＢＢ内において、サンプリングウィンドゥ６１０ａ〜６１０ｄの中心に位置する中心ウィンドゥの速度及び勾配の値を計算する。これを図９に示す。８つのサンプリングウィンドゥ６１０が、画像３１０内におけるＴＢＢ３２０の外側に配置されている。サンプリングウィンドゥ６１０ａ〜６１０ｄの中心には、中心ウィンドゥ９１０が配置されている。
【００４８】
中心ウィンドゥ９１０の速度及び勾配は、４つの角に配置されたサンプリングウィンドゥ６１０ａ、６１０ｂ、６１０ｃ、及び、６１０ｄの速度及び勾配の値を二乗補間（square interpolating）することによって算出される。例えば、画像内において、角が（ｘ1，ｙ1）、（ｘ2，ｙ1）、（ｘ2，ｙ2）、（ｘ1，ｙ2）にある矩形を形成する４つのピクセル（ｖ1，ｖ2，ｖ3，ｖ4）の値の場合、矩形内の（ｘ，ｙ）に位置するピクセルの補間値は、以下の数式により求められる。
【数２２】
2019117630.tif 000024
なお、ｄ１＝ｘ−ｘ１、ｄ２＝ｘ２−ｘ、ｄ３＝ｙ−ｙ１、及び、ｄ４＝ｙ２−ｙである。
【００４９】
図８に戻ると、ステップ８０８において、速度画像生成部２２２は、速度画像における全てのピクセルが処理されたか否かを判定する。全てのピクセルの処理が終了している場合、処理を終了する。全てのピクセルの処理が終了していない場合、ステップ８１０に進む。ステップ８１０において、速度画像における各ピクセルについて、速度、勾配閾値、及び、勾配を算出する。各ピクセルは、ＴＢＢ３２０の内にあるか、又は、ＴＢＢ３２０の外側にあるか分類される。ピクセルがＴＢＢ３２０の外側にある場合、当該ピクセルの速度及び勾配閾値は、最も近くに位置するサンプリングウィンドゥ６１０の値となる。
【００５０】
ピクセルがＴＢＢの外側にない場合、ピクセルの速度及び勾配閾値は、最も近くに位置する４つのサンプリングウィンドゥ６１０の値を距離補間（distance interpolate）することによって求められる。例えば、画像において（ｘ1，ｙ1）、（ｘ2，ｙ2）、（ｘ3，ｙ3）、（ｘ4，ｙ4）に位置する４つのピクセル（ｖ1，ｖ2，ｖ3，ｖ4）の値の場合、囲まれた領域内の（ｘ，ｙ）に位置するピクセルの距離補間値は、以下の数式により求められる。
【数２３】
2019117630.tif 000025
なお、［］は、［ｘ］が与えられ、且つ、ｘ＞４の場合、ｘ＝ｘ−４となるラップアラウンド関数（wraparound function）である。この式においては、Ｄi＝｛（ｘ−ｘi）2＋（ｙ−ｙi）2｝nであって、ｎ＝１である。各ピクセルの勾配は、ピクセルの速度ＧｒａｄＥｑp＝ｖxpＥxp＋ｖypＥyp＋Ｅtpを用いて算出される。
【００５１】
ステップ８１２において、各ピクセルの勾配の絶対値と、当該ピクセルの勾配閾値とを比較する。ステップ８１４において、勾配の値が閾値よりも小さい場合、当該ピクセルは、背景ピクセルとしてタグ付けされ、当該ピクセルに対応する速度画像における値が１に設定される。勾配の値が閾値よりも小さくない場合、ステップ８１６において、当該ピクセルは、対象ピクセルとしてタグ付けされ、バイナリ値が０に設定される。その後、速度画像生成部２２２は、ステップ８０８に戻る。
【００５２】
予備的な速度画像を生成した後（図５におけるステップ５０８）、次のステップとして、時間偏差アレイを生成する。これについては、図５におけるステップ５１０に関連させて説明している。時間偏差アレイを生成した後、当該アレイを複製して昇順にソートして、線形アレイを得る。次に、線形アレイをローパス平均化フィルタ（例えば、サイズ＝５）に通過させて、最終的なソートを行った線形アレイを得る。
【００５３】
図１０は、画像におけるピクセルの時間偏差値についての上記ソートされた線形アレイを用いて、下方閾値と上方閾値とからなる２つのピクセル閾値が算出されることを示す。ｙ軸は、図５に示すステップ５１０に関連させて説明したように、各ピクセルの時間的な値の標準偏差を表す。ｘ軸は、ピクセル指数（pixel index）（例えば、ソートされた線形アレイにおけるピクセルの指数）を表す。このグラフにおいては、低い値を有するピクセルが対象ピクセルであると予想され（フレーム間でピクセル強度の変化が少ない）、高い値を有するピクセルが背景ピクセルであると予想される（フレーム間でピクセル強度の変化が多い）。
【００５４】
下方閾値は、ソートされた線形アレイの最大勾配を求めることにより算出される。例えば、下方閾値は、図１０に示す曲線において、Ｔlowで示された点における標準偏差値である。勾配は、ｉ番目のピクセルについて５点微分を用いて計算される。この場合の式は、ｄi＝（−Ａi+2Δ＋８＊Ａi+Δ−８Ａi-1＋Ａi-2Δ）／１２Δであって、Δは、ソートされた線形アレイの大きさによって特定される。
【００５５】
上方閾値は、画像の対象部分で予想されるピクセル数により与えられる指数において、ソートされた線形アレイの値を算出することによって特定することができる。この指数は、対象部分で予想されるピクセルの数に１．５を掛けることによって特定することができる。対象部分で予想されるピクセル数は、前回の対象物の画像、又は、対象物のライブラリ画像から得られる。上方閾値は、例えば、図１０においてはＴhighで示されている。各閾値は、当該閾値自体が対応するランニングサムフィルタ（running sum filter）に照らしてさらにチェックされる。
【００５６】
図１０に示す処理は、下方ピクセル閾値及び上方ピクセル閾値を算出するための単に１つの方法にすぎない。これらの閾値は、ＴＢＢ３２０内のピクセルのみを分析する方法、及び／又は、上方閾値とともに、アレイの特定の百分位数（例えば、１０番目の百分位数）におけるピクセルの標準偏差を用いて下方閾値を算出する方法（例えば、Ｔlow＝（Ｔhigh＋Ｔpercentile）／２）を含む、多くの適切な方法で計算することができる。
【００５７】
図１１には、バイナリ画像の生成処理が示されている。ステップ１１０２において、バイナリ画像生成部２２６は、速度画像をバイナリ画像に複製して、バイナリ値を逆にすることにより、すなわち、速度画像において値が「１」であった部分は、バイナリ画像において「０」に設定し、且つ、速度画像において値が「０」であった部分は、バイナリ画像において「１」に設定することにより、予備的なバイナリ画像を生成する。したがって、予備的なバイナリ画像において「１」に設定されているピクセルは、予想される対象ピクセルを表す。
【００５８】
ステップ１１０４において、バイナリアレイにおける各ピクセルの周囲に小さなＮ×Ｎウィンドゥを作成する。例えば、Ｎは、ＴＢＢ３２０の大きさの２％であってもよい。ステップ１１０６において、各ピクセルを分析して、当該ピクセルが対象ピクセルとして予め示されていたか否かを判定する。ピクセルが対象ピクセルとして予め示されていた場合、ステップ１１１０において、バイナリ画像生成部２２６は、時間偏差アレイにおいて対応するピクセルを特定する。バイナリ画像生成部２２６は、さらに、時間偏差アレイにおいて、目的のピクセルに関連付けられたＮ×Ｎウィンドゥにおけるピクセルを特定する。各ピクセルの時間偏差アレイ値と、（図１０に関連させて説明したように）先に算出された上方閾値Ｔhighとを比較する。時間偏差値が＜Ｔhighである場合、バイナリ画像において対応するピクセルは、対象ピクセルを表す「１」として示される。この比較的緩い閾値を使用するのは、当該画素が、対象ピクセルであると推定されているからである。
【００５９】
ステップ１１０６に戻って、ピクセルが、対象ピクセルとして予め示されていなかった場合、バイナリ画像生成部２２６は、ステップ１１０８に進む。ステップ１１０８は、比較に下方閾値Ｔlowを用いること以外は、ステップ１１１０と同様に行う。バイナリ画像生成部２２６は、時間偏差アレイにおいて対応するピクセルを特定する。バイナリ画像生成部２２６は、さらに、時間偏差アレイにおいて、目的のピクセルに関連付けられたＮ×Ｎウィンドゥにおけるピクセルを特定する。各ピクセルの時間偏差アレイ値と、（図１０に関連させて説明したように）先に算出された下方閾値Ｔlowとを比較する。時間偏差値が＜Ｔhighである場合、バイナリ画像において対応するピクセルは、対象ピクセルを表す「１」として示される。この比較的厳しい閾値を使用するのは、当該画素が、対象ピクセルではなく背景ピクセルであると推定されているからである。
【００６０】
ステップ１１１４において、画像解析コンポーネントは、例えば、ビークルのナビゲーションシステムで使用するためのバイナリ画像を保存する。一実施形態においては、過去のバイナリ画像のアレイにおいて、最新のバイナリ画像を最も古いバイナリ画像と置き換えることにより、当該アレイを維持することができる。ビークルのナビゲーションシステム（例えば、ビークル２００のナビゲーションシステム２７０）は、対象物への誘導及び当該対象物とのドッキングを容易にするために、当該対象物の位置及び配向を示すバイナリ画像のアレイを用いることができる。
【００６１】
本開示の様々な実施形態の説明は、例示のために提示したものであり、全てを網羅することや、開示した実施形態に限定することを意図するものではない。記載した実施形態の範囲及び思想から逸脱することなく、多くの改変及び変形が当業者には明らかであろう。本明細書で用いた用語は、実施形態の原理、及び、市場で認められる実用的な用途や技術改良を最も良く説明できるように、或いは、他の当業者が本開示の実施形態を理解できるように、選択されている。
【００６２】
先の記載においては、本開示で提示した実施形態について言及している。しかしながら、本開示の範囲は、記載された特定の実施形態に限定されない。むしろ、先に述べた特徴及び要素のいかなる組み合わせも、それらが互いに異なる実施形態に関連しているかどうかにかかわらず、意図した実施形態の実施に該当するものである。さらに、本開示の実施形態は、他の想定される解決策又は従来技術に対して利点をもたらすものであるが、ある実施形態によって特定の効果が得られるか否かは、本開示の範囲を限定するものではない。したがって、先に述べた態様、特徴、実施形態、及び、効果は、単に例示的なものであり、添付の特許請求の範囲に明確に記載されていない限り、当該特許請求の範囲の要素又は限定事項と考えられるべきではない。同様に、「本発明」又は「本開示」と記載することによって、本開示の発明の要旨を概括化したものと解釈されるべきではなく、添付の特許請求の範囲に明確にその旨が記載されていない限り、特許請求の範囲の要素又は限定であると解釈されるべきではない。
【００６３】
本開示の態様は、全体がハードウェアの態様、全体がソフトウェアの態様（ファームウェア、常駐ソフトウェア、マイクロコード等を含む）、又は、ソフトウェアとハードウェアを組み合わせた態様、の形態を取ることができ、これら全てを本明細書では概括的に「回路」「モジュール」又は「システム」と呼ぶ場合がある。
【００６４】
本開示の実施形態は、システム、方法、及び／又は、コンピュータプログラム製品であってもよい。コンピュータプログラム製品には、本開示の態様をプロセッサに実施させるためのコンピュータ可読プログラム命令が記憶されたコンピュータ可読記憶媒体が含まれうる。
【００６５】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持及び格納することができる有形のデバイスであってもよい。コンピュータ可読記憶媒体は、例えば、限定するものではないが、電子記憶装置、磁気記憶装置、光学記憶装置、電磁記憶装置、半導体記憶装置、又は、これらの適切な組み合わせであってもよい。コンピュータ可読記憶媒体のより具体的な例の非包括的なリストは以下のものを含む。すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、消去可能プログラマブルリードオンリーメモリ（ＥＰＲＯＭ又はフラッシュメモリ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ポータブルコンパクトディスクリードオンリーメモリ（ＣＤ−ＲＯＭ）、デジタルバーサタイルディスク（ＤＶＤ）、メモリースティック、フロッピーディスク、命令が記録された、パンチカードや溝内の隆起構造などの機械的にコード化されたデバイス、及び、これらの適切な組み合わせを含む。本明細書で用いられるコンピュータ可読記憶媒体は、それ自体が、電波若しくは他の自由に伝搬する電磁波、導波路若しくは他の伝送媒体を介して伝搬する電磁波（例えば光ファイバケーブルを通過する光パルス）、又は、ワイヤを介して送信される電気信号などの、一時的な信号であると解釈されるべきではない。
【００６６】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各演算装置／処理装置にダウンロードするか、或いは、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び／又は、ワイヤレスネットワークなどのネットワークを介して外部コンピュータ又は外部記憶装置にダウンロードすることができる。ネットワークは、銅の伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び／又は、エッジサーバを含みうる。各演算装置／処理装置におけるネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信して、当該コンピュータ可読プログラム命令を各演算装置／処理装置内のコンピュータ可読記憶媒体に格納すべく転送する。
【００６７】
本開示の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、又は、１つ以上のプログラミング言語の任意の組み合わせで記述されたソースコード若しくはオブジェクトコードのいずれかであってもよい。プログラミング言語には、スモールトーク、Ｃ＋＋などのオブジェクト指向プログラミング言語、及び、「Ｃ」プログラミング言語又はこれに類するプログラミング言語などの従来の手続き型プログラミング言語が含まれる。コンピュータ可読プログラム命令は、全てをユーザのコンピュータで実行してもよいし、一部をスタンドアローンソフトウェアパッケージとしてユーザのコンピュータで実行してもよいし、一部をユーザのコンピュータで実行し一部をリモートコンピュータで実行してもよいし、全てをリモートコンピュータ又はサーバで実行してもよい。後者の場合、リモートコンピュータを、ローカルエリアネットワーク（ＬＡＮ）又はワイドエリアネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを介してユーザのコンピュータに接続してもよいし、（例えば、インターネットサービスプロバイダを利用したインターネットを介して）外部コンピュータに接続してもよい。いくつかの実施形態においては、本開示の態様を実現するために、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は、プログラマブル論理アレイ（ＰＬＡ）を含む電子回路が、コンピュータ可読プログラム命令の状態情報を用いてコンピュータ可読プログラム命令を実行することにより、電子回路をパーソナライズしてもよい。
【００６８】
本開示の態様を説明するにあたり、方法、装置（システム）及び、コンピュータプログラム製品のフローチャート図、及び／又は、ブロック図を参照している。これらフローチャート及び／又はブロック図における各ブロック、並びに、これらフローチャート及び／又はブロック図におけるブロックの組み合わせは、コンピュータ可読プログラム命令によって実現することができる。
【００６９】
コンピュータ可読プログラム命令は、マシンを構成するために、汎用コンピュータ、専用コンピュータ、又は、他のプログラム可能なデータ処理装置のプロセッサに供給される。これらの命令は、コンピュータのプロセッサ又は他のプログラム可能なデータ処理装置を介して実行され、これにより、フローチャート、及び／又は、ブロック図のブロックに明記された機能／動作を実施するための手段が形成される。これらのコンピュータ可読プログラム命令は、コンピュータ、プログラム可能なデータ処理装置、及び／又は、その他の装置に指示して特定の態様で機能させることが可能なコンピュータ可読媒体に格納することができ、これにより、命令を格納したコンピュータ可読媒体が、フローチャート、及び／又は、ブロック図の１つ又は複数のブロックに明記された機能／動作の態様を実施する命令を含む製品として構成されるようにすることができる。
【００７０】
また、コンピュータ可読プログラム命令を、コンピュータ、その他のプログラム可能なデータ処理装置、又は、その他の装置にロードして、当該コンピュータ、その他のプログラム可能なデータ処理装置、又は、その他の装置に一連の動作ステップを実行させて、コンピュータ実施によるプロセスを実現することができる。これにより、コンピュータ、その他のプログラム可能な装置、又は、その他の装置で実行される命令が、フローチャート、及び／又は、ブロック図のブロックに明記された機能／動作を実現することができる。
【００７１】
図面におけるフローチャート、及び／又は、ブロック図は、本開示の様々な実施形態によるシステム、方法、及び、コンピュータプログラム製品の可能な実施態様の構成、機能、及び動作を示している。この点において、フローチャート又はブロック図における各ブロックは、モジュール、セグメント、又は、命令の一部を表し、これらは、特定された論理機能を実現するための１つ以上の実行可能な命令を構成する。代替的な実施態様によっては、ブロックに示した機能が、図に示したものとは異なる順序で行われてもよい。例えば、関連する機能によっては、連続するものとして示されている２つのブロックが、実際には実質的に同時に実行されてもよいし、これらのブロックが逆の順序で実行されてもよい。なお、ブロック図及び／又はフローチャートにおける各ブロック、並びに、ブロック図及び／又はフローチャートにおけるブロックの組み合わせは、特定の機能又は動作を実行するか、或いは、特定用途向けハードウェアとコンピュータ命令との組み合わせを実装する特定用途向けのハードウェアベースのシステムによって実現することができる。
【００７２】
本開示の実施形態について説明したが、その基本的な範囲を逸脱することなく、本開示の他の様々な実施形態を想定することができ、その範囲は、以下の特許請求の範囲によって規定される。
【図１】
2019117630.tif 000026
【図２】
2019117630.tif 000027
【図３】
2019117630.tif 000028
【図４】
2019117630.tif 000029
【図５】
2019117630.tif 000030
【図６】
2019117630.tif 000031
【図７】
2019117630.tif 000032
【図８】
2019117630.tif 000033
【図９】
2019117630.tif 000034
【図１０】
2019117630.tif 000035
【図１１】
2019117630.tif 000036
【外国語明細書】
2019117630000001.pdf
2019117630000002.pdf
2019117630000003.pdf
2019117630000004.pdf