(57)【要約】  本開示の実施例は、移動を推定するコンピュータ実装方法を提供する。方法は、環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別し、前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成し、推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する、ことを含む。
2017534129.tif 000002
【特許請求の範囲】
【請求項１】
環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別し、
前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、
識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成し、
推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する、
移動を推定するコンピュータ実装方法。
【請求項２】
推定された前記複数の測定値を、音声入力に応じて検証することをさらに含む、請求項１に記載の方法。
【請求項３】
前記環境の３次元シミュレーション、３次元カメラで記録されたビデオ、及び、前記環境の前記ビデオフィードへの画像認識アルゴリズムの適用の１つから前記座標データが導出される、
請求項１に記載の方法。
【請求項４】
前記環境の前記ビデオフィードを生成するためにビデオファイルを記録し、前記ビデオファイルを記録する命令を提供するためにリモートユーザにコールする、ことをさらに含む、
請求項１に記載の方法。
【請求項５】
推定された前記移動時間及び推定された前記移動コストは、さらに、前記環境の位置及び提案された目的地の一方に基づく、
請求項１に記載の方法。
【請求項６】
前記複数の測定値に基づいて、前記少なくとも１つの関心オブジェクトを分類することをさらに含む請求項１に記載の方法。
【請求項７】
分類した前記関心オブジェクトを検証するようユーザに促すこと、
前記複数の測定値に基づいて前記ユーザに追加サービスを申し出ること、
の一方をさらに含む、
請求項１に記載の方法。
【請求項８】
前記複数の測定値及び前記環境の前記ビデオフィードの一方に基づいて、前記少なくとも１つの関心オブジェクトを移動する命令セットを選択する、ことをさらに含む、
請求項１に記載の方法。
【請求項９】
前記複数の測定値はベクトルフォーマット測定値を含む、請求項１に記載の方法。
【請求項１０】
コンピュータ可読媒体に記録され、実行されると移動を推定するように動作し、プログラムコードを含む、プログラム製品であって、
前記プログラムコードは、
環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別し、
前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、
識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成し、
推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する、
ことをコンピュータシステムに実行させる、
プログラム製品。
【請求項１１】
推定された前記複数の測定値を、音声入力に応じて、検証する、ことを前記コンピュータシステムに実行させるためのプログラムコードをさらに含む、請求項１０に記載のプログラム製品。
【請求項１２】
前記環境の３次元シミュレーション、３次元カメラで記録されたビデオ、及び、前記環境の前記ビデオフィードへの画像認識アルゴリズムの適用の１つから前記座標データが導出される、
請求項１０に記載のプログラム製品。
【請求項１３】
前記環境の前記ビデオフィードを生成するためにビデオファイルを記録する、
ことをコンピュータシステムに実行させるためのプログラムコードをさらに含む、
請求項１０に記載のプログラム製品。
【請求項１４】
前記ビデオファイルを記録する命令を提供するためにリモートユーザにコンタクトをとる、ことをコンピュータシステムに実行させるためのプログラムコードをさらに含む、請求項１３に記載のプログラム製品。
【請求項１５】
前記複数の測定値は、前記少なくとも１つの関心オブジェクトの大きさ、密度及び重さの１つを含む、請求項１０に記載のプログラム製品。
【請求項１６】
推定された前記移動時間及び推定された前記移動コストは、前記環境の位置及び提案された目的地に基づく、請求項１０に記載のプログラム製品。
【請求項１７】
前記環境の前記位置は、前記環境の前記ビデオフィードを記録するデバイスのＧＰＳデータから取得される、請求項１６に記載のプログラム製品。
【請求項１８】
分類した前記関心オブジェクトを検証するようユーザに促す、
ことをコンピュータシステムに実行させるためのプログラムコードをさらに含む、
請求項１０に記載のプログラム製品。
【請求項１９】
前記複数の測定値に基づいて、ユーザに追加サービスを申し出る、ことを前記コンピュータシステムに実行させるためのプログラムコードをさらに含む、請求項１０に記載のプログラム製品。
【請求項２０】
移動を推定するシステムであって、
環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別する識別手段と、
前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成するデータ処理モジュールと、
推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する算出手段と、
を含む、
少なくとも１つの計算処理デバイスを含む、
システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般的に、１つもしくは複数のオブジェクトの測定値を使用して動きを推定するシステム及び方法に関連する。より詳細には、本開示は、ウェアラブルコンピュータもしくは非ウェアラブルコンピュータ、タブレット、携帯電話及び／または同様のデバイスを単独でもしくは組み合わせて使用することで、住居などの環境から移動するオブジェクトの大きさから、移動時間及び／またはコストを推定することに関連する。
【背景技術】
【０００２】
住居から他の場所へ移動する場合、移動のプロセスが識別され、ここでは「移動」として参照される。移動のプロセスは、遠隔の領域内であろうと、長距離離隔した場所であろうと、時間を要し、高価なプロセスである。多くの個人が、貴重品の損傷を防ぎ、大きい物体を首尾よく移動させ、時間を省くために、住居から他の場所へ、家具及び／または他のアイテムを輸送する引越業者または他のサービスの支援を要求する。引越業者は、通常、移動させる物体の数、移動させる物体のサイズ及び／または重さ、及び総労働時間または個人の現在の住居と将来の住居との間の走行距離に基づいて、支援について、個人に課金する。引越業者またはサービス業者の１人もしくは複数の代表は、移動に要する時間及び／またはコストを推定するために、移動させる物体を数え、識別し、計測し、及び／または分類するために、顧客の家への訪問を予定に入れる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
移動を推定する。
【課題を解決するための手段】
【０００４】
本開示の第１の態様は、移動を推定するコンピュータ実装方法であって、環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別し、前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成し、推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する。
【０００５】
本開示の第２の態様は、コンピュータ可読媒体に記録され、実行されると移動を推定するように動作し、プログラムコードを含む、プログラム製品であって、前記プログラムコードは、環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別し、前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、  識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成し、推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する、ことをコンピュータシステムに実行させる。
【０００６】
本開示の第３の態様は、移動を推定するシステムであって、環境の、３次元空間の座標データを含むビデオフィードから少なくとも１つの関心オブジェクトを識別する識別手段と、前記環境の前記ビデオフィード及び前記座標データを参照することで、前記少なくとも１つの関心オブジェクトの複数の測定値を推定し、識別された関心オブジェクトの各々及び対応する複数の測定値の目録を生成するデータ処理モジュールと、推定された移動時間及び推定された移動コストの一方を、生成された目録に基づいて、算出する算出手段と、を含む、少なくとも１つの計算処理デバイスを含む。
【０００７】
本開示の例示的な態様は、以下で説明する１つもしくは複数の問題及び／または説明しない１つもしくは複数の他の問題を解決するために設計されている。
【発明の効果】
【０００８】
移動を推定することができる。
【図面の簡単な説明】
【０００９】
【図１】本開示の実施例によるビデオデバイス及び関心オブジェクトのいくつかを含む環境を示す。
【図２】本開示の実施例による例示的なコンピュータシステムを示す。
【図３】本開示の実施例による方法を実装する例示的なフローチャートを示す。
【図４】本開示の実施例による方法を実装する例示的なフローチャートを示す。
【図５】本開示の実施例による方法を実装する例示的なフローチャートを示す。
【図６】本開示の実施例による方法を実装する例示的なフローチャートを示す。
【発明を実施するための形態】
【００１０】
本開示のこれらの及び他の特徴は、本開示の様々な態様を描写する添付図面と共に採り入れられる本開示の様々な態様の以下の詳細な説明から理解される。
【００１１】
本開示の図面は、比率通りである必要はない。図面は、本開示の一般的な態様を描画することだけを意図しており、本開示の範囲を限定することを意図していない。図面間において同様の参照符号が付された要素は、実質的に同様の要素である。図１〜図６を参照して説明される実施例において、同様の参照符号は同様の要素を表す。煩雑にしないために、これらの要素の冗長な説明は省略する。最後に、図１〜図６の構成要素及びその説明は、実施例の何れかに適用され得る。詳細な説明は、本開示の実施例について、効果及び特徴と共に、図面を参照した例示によって説明する。
【００１２】
以下の説明において、説明の部分を構成する添付の図面を参照する。以下の説明において、詳細な実施例が示され、詳細な実施例において、教示が実行され得る。これらの実施例は、教示を実施するために当業者が実行可能な程度に十分詳細に説明され、他の実施例も使用可能であり、教示の範囲から乖離することなく変更を行い得る。以下の説明は、例示に過ぎない。
【００１３】
本開示の実施例は、移動を推定するコンピュータ実装方法に関連し、推定された移動時間及び推定された移動コストなどの推定を含む。ここで説明するように、方法は、環境の１つもしくは複数のビデオフィードから少なくとも１つの関心オブジェクトを識別することを含み得る。ビデオフィードは、本開示のユーザまたは異なるパーティ（例えば、顧客）によって、リアルタイムに、記録され、またはストリーミングされ得る。ビデオフィードは、３次元空間の座標データを含み得る（即ち、記録時点で、またはその後の時点で割り当てられ得る）。例えば、ビデオフィードはシミュレートされた環境の３次元モデルに変換及び／またはマッピングされ得る。開示の実施例において、１つもしくは複数のコンピュータシステムは、座標データを参照することでビデオフィードの関心オブジェクトの各々の測定値及び環境のビデオフィードの属性を推定し得る。これらの推定された測定値に基づいて、識別された関心オブジェクトの各々の目録及び目録のオブジェクトの各々の対応する推定された測定値を生成し得る。この目録を使用することで、コンピュータシステムは、推定された移動時間または推定された移動コストを、生成された目録に基づいて、算出し得る。
【００１４】
図１に、いくつかの関心オブジェクト５０を含む環境１０を示す。関心オブジェクト５０の各々は、住居などの環境１０から他の場所へ移動し得る機器、家具などのアイテムを含むことができる。関心オブジェクト５０は、様々な形状、サイズ、大きさ、重さなどを有することができ、関心オブジェクト５０のいくつかは、環境１０から移動するために、移動の間に異なる時間及び／または費用を必要とし得る。本開示の実施例は走査し、関心オブジェクト５０の様々な属性を推定することができ、同じ環境１０の関心オブジェクト５０のいくつかについて同様の機能を提供することができる。
【００１５】
本開示の方法は、ビデオデバイス１００によって、例えば、生成され、取得され、処理される、記録された、及び／またはストリーミングされたビデオ（以下、「ビデオフィード」と称する）を処理することができる。ビデオデバイス１００は、ビデオフィードに３次元空間の座標データを割り当てるデバイスまたはデバイスのグループの何れかを含み得る。座標データは、ベクトルフォーマットデータフィールドの形態であってよい。例示は、１つもしくは複数のビデオフィードに座標データを割り当てる機構としてビデオデバイス１００を参照するが、代替的な実施例は、所定のビデオフィードに座標を追加し、及び／または割り当てる他のデバイスを含み得る。ベクトルフォーマットデータフィールドは、含まれる複数の値によって、単一のアイテムのデータを参照する。本開示の実施例において、３軸（Ｘ，Ｙ，Ｚなど）に沿った異なる座標を参照することができる。ビデオデバイス１００は、ラップトップ、コンピュータ、ビデオカメラ、電話、タブレットコンピュータ、パーソナルコンピュータ、ウェアラブルまたは非ウェアラブル計算処理デバイスなどを含むことができ、これらの計算処理デバイスの部分であってもよい。実施例において、ビデオデバイス１００は１つもしくは複数のカメラ１０２を含むことができ、カメラ１０２は、複数のレンズを有することで、３次元（「３Ｄ」）カメラとなり、例えば、共有タイムライン上で各ビデオフィードの画素の位置を三角法で決定することで、環境１０のシミュレートされた３Ｄモデルを生成し、及び／または、ビデオフィードに座標を割り当てるように構成されている。図１には、例として２個のカメラ１０２を示すが、４個、６個、８個、１０個または、想定し得る何れかの数のカメラ１０２を使用して、複数のカメラ１０２から単一のビデオフィードに座標をマッピングすることが可能である。
【００１６】
代替的な実施例において、ビデオデバイス１００は、環境１０に対して３次元座標を割り当て、及び／または、環境１０の３次元モデルを生成する、３Ｄマッピングソフトウェアを含み得る。３Ｄマッピングプロセスは、例えば、環境１０に座標を割り当てるために、時間軸に沿って、ビデオデバイス１００から位置情報を収集することを含み得る。ビデオフィードがストリーミング及び／または記録されているか否かに拘わらず、割り当てられた座標を、ビデオデバイス１００の位置及び向きを識別するために使用することができる。ビデオデバイス１００は、収集され、環境１０のビデオフィードに座標及び／またはその３Ｄ表現を割り当てる３Ｄマッピングソフトウェアによって算出されたデータを組織化することができる。割り当てられた座標は、特定の時点におけるビデオデバイス１００の座標、及び／または、環境１０のビデオフィードに含まれた関心オブジェクト５０の各々の座標を含むことができる。
【００１７】
本開示の実施例は、ビデオフィードから１つもしくは複数の関心オブジェクト５０を識別することを含み得る。オブジェクトは、環境１０のビデオフィードを受信するビデオデバイス１００と通信することができる他の計算処理デバイスまたはビデオデバイス１００に記憶されていたオブジェクト認識アルゴリズムによって識別される。オブジェクト認識アルゴリズムは、例えば、環境１０の基準座標とオブジェクトの位置とを比較することで、形状、オブジェクト、カラー、サイズなどの所定の組み合わせを参照することで、ローカルまたはリモートのユーザから指令を受信することで、音声認識ソフトウェアを介してビデオデバイス１００のマイクロフォン１０４に提供される音声入力を検出することで、及び／またはこれらの技術または他の技術の組み合わせの何れかで、ビデオフィードから特定のオブジェクトを抽出することができる。また、同様のオブジェクト認識アルゴリズム及び／または異なるアルゴリズムは、例えば、所定の閾値の範囲外のサイズを有することで、及び／または、壁、床などの中間エレメントとして分類することで、ビデオフィードから関心オブジェクト５０のいくつかを取り除くことができる。環境１０の表現内で、または環境１０の表現からアイテムを識別し、モデル化し、及び／または除去する例示的なプロセスについて説明する。何れの場合でも、関心オブジェクト５０を識別するプロセスステップは、ビデオデバイス１００、ビデオデバイス１００と通信可能な、もしくは、ビデオフィードを受信するリモートサーバ１５０、ビデオフィードからオブジェクトを識別する責任を各々が部分的に負ういくつかの個別のシステムを含むクラウド計算処理システム１６０のソフトウェア及び／またはハードウェアによって、及び／または、これらの構成要素または他のデバイスの組み合わせによって、完全に実行され得る。
【００１８】
ビデオデバイス１００は、環境１０内で１つもしくは複数の関心オブジェクト５０を識別してもよい。本開示の実施例は、識別された関心オブジェクト５０の、大きさを含む、推定された測定値を提供し得る。詳細には、ソフトウェア及び／またはハードウェアは、識別された関心オブジェクト５０の各々の１つもしくは複数の測定値を推定するために、ビデオフィード自身に加え、環境１０の関心オブジェクト５０の各々に関連付けられている座標データを参照してもよい。例として、本開示の実施例は、単一の次元に沿って、関心オブジェクト５０の大きさ、関心オブジェクト５０の質量密度、及び／または、ビデオフィード及び／または割り当てられた座標から全体的にまたは部分的に導出され得る他の測定値を推定し得る。本開示の実施例は、特定の関心オブジェクト５０の大きさ及び／または重さなどの特性を算出するために、１つもしくは複数の所定の重みファクタを適用し得る。例の１つにおいて、ビデオデバイス１００は、環境１０の所定の座標とオブジェクトの座標とを対にしてもよい。他の例において、ビデオデバイス１００のオブジェクト検出ソフトウェアは、ビデオデバイス１００の位置及び／またはビデオデバイス１００から関心オブジェクト５０までの推定距離に基づいて、検出された関心オブジェクト５０に、直接的に、座標をマッピングしてもよい。ビデオからリモートオブジェクトに座標をマッピングする、他の現在知られている、または、今後開発されるデバイス、及び／または、ソリューション、例えば、インターフェロメトリー、非接触レーザ走査振動測定、及び／またはストロボスコピック技術が使用されてもよい。
【００１９】
１つもしくは複数の関心オブジェクト５０を検出し、及び／または関心オブジェクト５０の測定値を推定した後、本開示の方法は、識別された関心オブジェクト５０の各々及び対応する推定した測定値の目録を生成することを含み得る。生成された目録の関心オブジェクト５０は、同様のサイズのオブジェクト、及び／または同様のタイプのオブジェクト、大きさ、密度などの降順、検出順、ビデオフィードが取得されるビデオデバイス１００への近さなど、を含むが、これらに限定されない所望される任意の数の基準によって、ランク付けまたは組織化されてもよい。生成された目録は、ビデオフィードを生成するユーザ、引越サービス会社、見積業者、他のサービス業者などを含む、任意の数のパーティに提供され得る。様々なプロセスステップ及び／または特徴は、ソフトウェア及び／またはハードウェアによって、またはこれらの支援によって、１つもしくは複数の計算処理デバイスで実行され得る。
【００２０】
図２に、ビデオデバイス１００と通信可能なコンピュータシステム２００を例示する。コンピュータシステム２００は、ローカルに保存された、もしくは、例えば、ビデオデバイス１００などの他のシステムから受信した１つもしくは複数のビデオフィードを処理するプロセスステップを実行するハードウェア及び／またはソフトウェアを含み得る。コンピュータシステム２００は、ビデオフィードから関心オブジェクトを識別し、各関心オブジェクトの測定値を推定し、測定され識別された関心オブジェクトの目録を生成することで、環境のオブジェクトを走査することができる。加えて、または代替的に、コンピュータシステム２００は、命令を提供し、分析されるビデオフィードに３次元座標を割り当てる。コンピュータシステム２００は、ビデオデバイス１００に通信可能に接続され、関心オブジェクト５０を含むビデオフィードの送受信を行う。詳細には、コンピュータシステム２００は、ビデオデバイス１００から出力データを受信し、方法のステップ及び／またはプロセスを実行することができる。コンピュータシステム２００は、ビデオデバイス１００及び１つもしくは複数の関心オブジェクトを示すビデオフィードを含む他のデバイスとインタラクトすることができる。
【００２１】
図２は、プロセスの実施例を実行するコンピュータシステム２００の例示的な実施例を示す。詳細には、コンピュータシステム２００は推定システム２０６を含むことができる、移動準備システム２０４を含み得る。図１の構成要素は、移動を企画するシステムの一実施例である。計算処理デバイス２０２は、１つもしくは複数のビデオフィード及び／または１つもしくは複数のビデオフィードにマッピングされた座標に基づいて、特定のアイテムグループを移動する時間及びコストなど、企画された移動の属性を予測することができる。本開示の実施例は、技術者、計算処理デバイス２０２及び／または技術者及び計算処理デバイス２０２の組み合わせによって構成されてもよいし、部分的に操作されてもよい。図２に示される様々な構成要素のいくつかは、個別に、組み合わせて、及び／または、計算処理デバイス２０２に含まれる１つもしくは複数の別個の計算処理デバイスのメモリに記憶されて、実装されてもよい。構成要素及び／または機能のいくつかは、実装されなくてもよく、また、追加的な概要及び／または機能が推定システム２０６の部分として含まれてもよい。
【００２２】
計算処理デバイス２０２は、処理ユニット（ＰＵ）２０８、入出力（Ｉ／Ｏ）インターフェイス２１０、メモリ２１２及びバス２１６を含み得る。また、計算処理デバイス２０２は、外部Ｉ／Ｏデバイス２１５及びストレージシステム２１４と通信を行うことができる。移動準備システム２０４は、オブジェクト推定システム２０６を実行することができ、オブジェクト推定システム２０６は、異なるアクションを実行するように構成されているモジュール２２０を含む様々なソフトウェア構成要素を含み得る。推定システム２０６の様々なモジュール２２０は、アルゴリズムベース計算、ルックアップテーブル、及びデータの処理、解析及び操作のために機能の各々を実行する、メモリ２１２に保存された同様のツールを使用することができる。一般的に、ＰＵ２０８は、コンピュータプログラムコードを実行して、メモリ２１２及び／またはストレージシステム２１４に記憶され得る推定システム２０６などのソフトウェアを稼働させる。コンピュータプログラムコードを実行している間、ＰＵ２０８はデータをメモリ２１２、ストレージシステム２１４、及び／またはＩ／Ｏインターフェイス２１０から読み出し、及び／またはこれらに書き込むことができる。バス２１６は、計算処理デバイス２０２の各構成要素の間の通信リンクを提供する。Ｉ／Ｏデバイス２１５は、計算処理デバイス２０２とユーザがインタラクトすることを可能とする何れかのデバイスを含み、または、機器及び／または他の計算処理デバイスと計算処理デバイス２０２が通信を行うことを可能とする何れかのデバイスを含む。（キーボード、ディスプレイ、ポインティングデバイスなどを含むが、これらには限定されない）Ｉ／Ｏデバイス２１５は、直接、または（図示されない）仲介Ｉ／Ｏコントローラにより、コンピュータシステム２００に接続され得る。
【００２３】
メモリ２１２は、ビデオフィード及び／または関心オブジェクトに関係するデータ２３０の様々な形態を含み得る。計算処理デバイス２０２の移動準備システム２０４は、本開示のプロセスにおいて、データ２３０を保存し、データ２３０とインタラクトし得る。例えば、ビデオデータフィールド２３２は、一時的に、または、恒久的に、ビデオデバイス１００または、他のデバイスから取得されたビデオフィード（例えば、ストレージシステム２１４からアップロードされた）を保存し得る。ビデオフィードは、本開示の実施例により計算処理デバイス２０２で、例えば、調べられ、処理され、修正される。ビデオデータフィールド２３２は、同様の環境１０のビデオフィードのいくつかのグループまたは単一のビデオフィードを含むことができ、及び／または対応する環境１０のいくつかのビデオフィードのいくつかを含み得る。モジュール２２０は、ビデオデータフィールド２３２のビデオフィードを分析し、方法のステップによって関心オブジェクト５０の特性を識別し、及び／または推定する。オブジェクト走査プログラムは、座標データフィールド２３４に保存されている座標値を、プロセスステップに基づいて、ビデオデータフィールド２３２のビデオフィードに割り当てることができる。データ２３０は、特定の関心オブジェクト５０の分類をもつオブジェクトライブラリフィールド２３６を含み得る。オブジェクトライブラリフィールド２３６は、例えば、各分類の測定基準（例えば、値の範囲）及び／またはオブジェクト分類のリストを含み得る。データ２３０は、ＧＰＳデータ２３８及び／または他のタイプの位置データを含み得る。位置データは、ビデオデバイス１００、計算処理デバイス２０２及び／または何れか他の関連デバイス及び／または構成要素の位置に基づく、履歴及び／またはリアルタイムの更新データであってよい。他のタイプの恒久的及び／または一時的データ２３０は、特定の実装で所望されるように、本開示の実施例において明示的に言及されていない様々なフィールドに保存されていてもよい。
【００２４】
ビデオデバイス１００は、通信モジュール２４０及び／または３Ｄマッピングモジュール２４２を含んでもよいが、必須ではない。通信モジュール２４０及び３Ｄマッピングモジュール２４２は、例えば、ハードウェア及び／またはソフトウェアとしてビデオデバイス１００に含まれているものとされているが、同様の機能は、モジュール２２０及び／またはコンピュータシステム２００の他のデバイスによる機能として、計算処理デバイス２０２で提供されてもよい。何れの場合でも、通信モジュール２４０は、リモートユーザ、サービス業者及び／または他のパーティが、ビデオデバイス１００のユーザに視覚的及び／または音声命令を伝送することを許容する。通信モジュール２４０は、例えば、サービス業者が、計算処理デバイス２０２の移動準備システム２０４に伝送されるビデオフィードをどのように記録及び／またはストリーミングするか、ユーザまたは他のパーティに音声で指示することを許容してもよい。例において、ユーザは、計算処理デバイス２０２にインターネットにより伝送される環境１０のビデオフィードを生成することができ、関心オブジェクト５０が識別され、その計測値が推定され得る。サービス業者は、ビデオデバイス１００と通信モジュール２４０を介して接続し、コールまたはビデオコールを行い、環境１０のビデオフィードを生成するユーザにリアルタイムで指示を提供し得る。ビデオデバイス１００は、３Ｄマッピングモジュール２４２を含み／または３Ｄマッピングモジュール２４２と通信を行い、環境１０のビデオデバイス１００の位置を追跡し得る。３Ｄマッピングモジュールは、ビデオデバイス１００が、例えば、特定の環境１０のビデオデバイス１００の位置及び／または向きに基づいて、ビデオフィードに座標データをマッピングし、及び／または、環境１０のシミュレートされた３Ｄモデルを生成することを許容してもよい。３Ｄマッピングモジュール２４２は、代替的に、または、加えて、本開示の実施例のビデオデバイス１００によって生成されるビデオフィードに座標を割り当てることができる。
【００２５】
説明したように、モジュール２２０は様々な機能を実行し、本開示の実施例による方法ステップを行うことができる。モジュール２２０の機能のいくつかは、非限定的な例として説明される。比較モジュールは、座標データ値を含む、２つもしくは複数の数学的量を比較し得る。判定モジュールは、オブジェクト推定システム２０６またはソフトウェア及び／またはハードウェアによって実行される他のオペレーションに基づいて、少なくとも２つの代替的なステップまたはアウトカムの少なくとも１つを選択し得る。算出モジュールは数学的なオペレーションを実行し得る。他のモジュールは、カメラ１０２、マイクロフォン１０４、及び通信モジュール２４０及び／または３Ｄマッピングモジュール２４２の機能をサポートするソフトウェアを含む、他の構成要素（例えば、ビデオデバイス１００）によって代替的に実行される機能の1つもしくは複数を実行し得る。他のモジュール２２０は、プロセスステップを実行するために追加されてもよいし、適用されてもよいが、モジュール２２０の特定のモジュールと関連付けられていなくてもよい。
【００２６】
計算処理デバイス２０２は、（例えば、パーソナルコンピュータ、サーバ、ハンドヘルドデバイスなど）ユーザによってインストールされるコンピュータプログラムを実行する汎用目的計算処理製品の何れかを含み得る。しかしながら、計算処理デバイス２０２は、様々な使用可能な同等の計算処理デバイス及び／または開示の様々なプロセスステップを実行し得る技術の例示である。加えて、計算処理デバイス２０２は、関心オブジェクト５０を走査し、及び／または、マッピングするより大きなシステムアーキテクチャの部分であり得る。
【００２７】
他の実施例において、計算処理デバイス２０２は、ハードウェア及び／または特定の機能を実行するコンピュータプログラムコードを含む特定計算処理製品の何れか、特定目的及び汎用目的ハードウェア／ソフトウェアなどの組み合わせを含む計算処理製品の何れかを含み得る。プログラムコード及びハードウェアは、標準的なプログラミング及びエンジニア技術を使用して生成され得る。実施例において、計算処理デバイス２０２は、携帯電話、タブレット及び／または他の計算処理デバイス、ハードウェアまたはソフトウェア構成要素である他の計算処理デバイスなどのコンピュータ可読ストレージデバイスに保存されたプログラム製品を含み得る。実行されると、関心オブジェクト５０を自動的に走査し、及び／またはマッピングするように、動作可能であり得る。
【００２８】
図２及び図３に、本開示の実施例によるプロセスステップを示す。様々なプロセスステップは、コンピュータシステム２００及び／または同等のシステムまたは構成要素の実施例によって実行され得る。プロセスＰ１は、方法ステップのいくつかを含み、ステップの組み合わせは、ビデオフィードからの１つもしくは複数の関心オブジェクト５０の測定値を識別し、推定する技術的効果を有し得る。プロセスＰ１は、追加的な及び／または代替的なステップを含み得る。加えて、プロセスＰ１は、プロセスＰ１の前後に使用される他のプロセスと組み合わせ得る。例えば、図５及び図６で、Ｐ１の各ステップは、本開示の実施例のいくつかにおいて、サブステップに分割され得る。
【００２９】
ステップＳ１−１において、コンピュータシステム２００はビデオフィードを受信し得る。ビデオフィードは、コンピュータシステム２００の座標データフィールド２３４で定義される３次元座標の予め割り当てられているセットを含み得る。いくつかの場合、ビデオフィードは、座標データフィールド２３４とは独立にビデオデータフィールド２３２に保存され、モジュール２２０は、ステップＳ１−１の間、ビデオデータフィールドのビデオフィードに座標データフィールド２３４から座標を割り当て得る。ビデオフィードに関連付けられている座標は、例えば、３Ｄマッピング、３Ｄカメラ及び／またはオブジェクト認識ツールの１つもしくは複数から取得され得る。
【００３０】
ステップＳ１−２において、コンピュータシステム２００のモジュール２２０は、ステップＳ１−１で、受信された及び／または座標データと対にされているビデオフィードから環境１０の１つもしくは複数の関心オブジェクト５０の存在を識別し得る。モジュール２２０は、オブジェクト推定システム２０６のオブジェクト認識ツール及び／または、関心オブジェクト５０による環境１０の既存の座標データと環境１０の座標データとの間の差、複数のカメラ１０２及び／または複数のレンズによって記録された複数のビデオフィードからの導出、音声認識または、これらのプロセス及び／または他のプロセスの組み合わせなどの他の構成要素を含む、現在知られている、または今後改善されるプロセスによってオブジェクトを識別し得る。ビデオフィードの関心オブジェクト５０を識別する例示的なプロセスのいくつかについて、さらに詳細な説明を記載する。モジュール２２０は、座標データフィールド２３４を参照することで、各オブジェクトを識別した後、ステップＳ１−２の間、関心オブジェクト５０に座標データをマッピングすることができる。いくつかの場合、オブジェクトを識別する手段により識別されているオブジェクトに座標をマッピングし得る。例えば、３Ｄカメラの場合、各オブジェクトは、カメラ１０２及び３Ｄビデオフィードを作るビデオフィードを生成するソフトウェアによって取得される座標位置データに基づいて、座標を割り当てられ得る。例のいくつかにおいて、関心オブジェクト５０に座標を割り当てることは、環境１０の描画シミュレーションで関心オブジェクト５０の各々の３次元モデルを生成することを含み得る。
【００３１】
ステップＳ１−３において、オブジェクト推定システム２０６のモジュール２２０は、ステップＳ１−２で識別される関心オブジェクト５０の１つもしくは複数の測定値を推定することができる。関心オブジェクト５０の各々の測定値を推定するために、関心オブジェクト５０のポイント、領域、構成要素などのいくつかの座標データは、相互に、１つもしくは複数のビデオフィードに割り当てられる他の座標データと比較される。１つもしくは複数のビデオフィードに割り当てられていた座標データを参照することで、モジュール２２０は、長さ、高さ、深さなどを含む測定値のいくつかを導出することができる。
【００３２】
ステップＳ１−４において、推定システム２０６は、ユーザのために、ステップＳ１−２で識別される関心オブジェクト５０の各々を要約する目録を生成することができる。実施例において、ステップＳ１−４で生成された目録は、特定の関心オブジェクト５０に対応する行の各々を有するスプレッドシートの形態であってもよい。生成された目録の関心オブジェクト５０の各々のエントリは、座標データ、推定された計測値、分類、座標データ及び／または推定される測定値から導出される特性、関心オブジェクト５０の各々の情報の１つもしくは複数のアイテムをユーザが検証したか否かを示す表示、及び／または、特定の関心オブジェクト５０に関連付けられ得る他の情報を含み得るが、これらに限定されない。ステップＳ１−４で生成された目録は、検証のためにユーザ及び／または他のパーティに対して提供されてもよく、必須ではないが、例えば、認識されたエラーを修正し、特別の状況を説明し、追加的な情報を提供するために、他のユーザによって操作され得る。
【００３３】
プロセスＰ１は、ステップＳ１−４で生成された目録の関心オブジェクト５０の各々について、推定された移動コストまたは推定された移動時間量などの値を算出する推定システム２０６を含み得る。必須ではないが、これらの算出された値は、生成された目録に含まれてもよく、及び／または、環境１０の関心オブジェクト５０の全ての説明として別個に提示されてもよい。モジュール２２０は、単一のビデオフィードの関心オブジェクト５０の推定された移動コスト及び推定された移動時間を推定することができるが、状況のいくつかにおいて、１つの値だけが必要とされてもよい。モジュール２２０は、例えば、算出される特定の値だけ（例えば、時間またはコストだけ）について、ユーザまたは他のパーティが要求したか否かを判定することができる。
【００３４】
図２及び図４は、本開示のプロセスに含まれてもよい追加的なステップを示す。図４の追加的なステップの各々は、例示的に特定の順序で同一のフローの部分として示される。１つもしくは複数のプロセスステップは、省略されてもよく、所望される場合、必須ではない様々なステップが異なる順序で実行されてもよい。
【００３５】
図３のプロセスステップＳ１−１〜Ｓ１−５は、関心オブジェクト５０の目録を生成し、移動コストまたは時間などの推定値を、環境１０の関心オブジェクト５０について提供するプロセスＰ１として一般的に参照され得る。プロセスＰ２において、コンピュータシステム２００は、特定のユーザまたは顧客についてクライアントデータページを生成または受信してもよい。クライアントデータページは、例えば、環境１０の部屋数、または、コスト及び／または時間推定について走査される関心オブジェクト５０を含む環境１０の数を含み得る。クライアントデータページは、コンタクト情報（例えば、氏名、住所、電話番号など）、クライアントの家及び／または意図される移動先のＧＰＳ座標、家のタイプ及び／またはサイズなどを含み得る。クライアントデータページからの情報は、コンピュータシステム２００のメモリ２１２に保存されたデータ及び／または特定のデータフィールドに変換され得る。クライアントデータからのこのデータは、データの他のソースに加えて、または代替として、他のプロセスステップにわたって、参照され得る。モジュール２２０は、例えば、ＯＣＲ（optical character recognition）ソフトウェアＩ／Ｏデバイス２１４に提供される入力、読み込み専用ファイル、及び／または、特定のファイルドキュメントまたはファイル及び／またはドキュメントのグループからの情報を伝送する他の現在知られているまたは今後開発されるソリューションによって、クライアントデータページからデータを抽出する。
【００３６】
本開示の実施例は、目録及び時間／コスト推定を生成するために、プロセスＰ１で使用されるビデオフィードを生成することを含み得る。プロセスＰ３において、ビデオデバイス１００の通信モジュール２４０及び／またはコンピュータシステム２００のモジュール２２０は、（Ｉ／Ｏインターネット２１０により、）ユーザに、関心オブジェクト５０を含む環境１０のビデオフィードをどこにどのように生成するかに関する指示をユーザが必要とするか否か尋ねることができる。実施例において、ユーザはオンスクリーンメニューまたはプロンプト、サービス業者または他のパーティから連携されている音声プロンプト、サービス業者または他のパーティとユーザとの間の音声及び／またはビデオコール、及び／または特定のユーザに問い合わせを行う何れか他の現在知られているまたは今後開発されるソリューションにより指示を要求または拒絶してもよい。ビデオフィードを生成するアクティブ指示をユーザが要求する（即ち、プロセスＰ３の判定が肯定された場合）イベントにおいて、リモートサービス業者または他のコールは、ビデオデバイス１００及び／またはコンピュータシステム２００へのコールまたは他の接続を開始し、追加的な指示を提供することができる。実施例において、サービス業者は、プロセスＰ４でユーザと直接（例えば、ビデオコールで）通信し、追加的な情報を要求し、及び／または環境１０のビデオフィードを生成するために指示（例えば、ガイドチュートリアル）を提供することができる。プロセスＰ４におけるリモートサービス業者とユーザとの間の通信は、モジュール２２０及び／または通信モジュール２４０の支援で全体的または部分的に実装されてもよい。ユーザが指示を要求しない場合（即ち、プロセスＰ３の判定が否定された場合）、プロセスフローは、プロセスＰ４を実行することなく他のステップに進むことができる。何れの場合でも、ユーザは、環境１０のビデオフィード及び関心オブジェクト５０を、プロセスＰ５で、ビデオデバイス１００及び／またはコンピュータシステム２００の同等の構成要素を使用することで、生成することができる。本開示の実施例で処理されるビデオフィードは、いくつかの方法で取得されることができる。例えば、特定のパターン、特定の速度などで、環境１０によりユーザ移動ビデオデバイス１００などを使用して取得することができる。対応する座標データを含むことができる、プロセスＰ５で生成された一つもしくは複数のビデオフィードは、目録及び時間及び／またはコストの推定を生成するプロセスＰ１に入力され得る。
【００３７】
プロセスＰ１に続いて、本開示の実施例の方法フローは、追加の特徴を提供するために追加的なプロセスに進んでもよい。プロセスＰ６において、推定システム２０６のモジュール２２０は、生成された目録の関心オブジェクト５０を分類し得る。例えば、Ｐ１で生成された目録は、対応する次元をもつ３つの関心オブジェクト５０を含み得る。モジュール２２０、ビデオデバイス１００のオブジェクト認識ソフトウェア、及び／または、移動準備システム２０４は、所定の基準に基づいて関心オブジェクト５０の各々を分類し得る。例えば、所定の基準のセットの１つは、特定範囲で長さ寸法、特定範囲で高さ寸法、特定の色またはテクスチャ、特定の形状外郭などを有するように推定される関心オブジェクト５０の何れかである「カウチ」を含み得る。関心オブジェクト５０が特定の分類の基準に適合する場合、この分類は、生成された目録に影響を与えられてもよいし、検出された関心オブジェクト５０を同様の分類でグループ化するために使用されてもよい。必須ではないが、推定時間及び／またはコストは、プロセスＰ６の関心オブジェクト５０の分類に基づいて更新されてもよい。
【００３８】
いくつかの場合、推定システム２０６のデータ２３０は、特定の識別特徴をもつオブジェクトのライブラリを含み得る。モジュール２２０は、識別された関心オブジェクト５０の各々と、これらの識別特徴のいくつかと、を関連付け、関心オブジェクト５０の他の推定された計測値を分類し、及び／または、導出し得る。実施例において、モジュール２２０は、特定の長さ及び高さの計測値を有することに基づいてカウチであると、関心オブジェクト５０を識別し、総重量、サイズ、密度などを、オリジナルの特性に基づいて推定し得る。所望される場合、モジュール２２０は、オリジナル分類及び／または追加的な推定が適切であるか否か、ユーザに問い合わせる、または、オブジェクトがアイテムのいくつかまたはカテゴリについて、識別特性に適合し得るイベントで２つもしくは複数の可能な分類の間で選択を行うようユーザに尋ねるクエリーをＩ／Ｏインターフェイスを介して伝送し得る。
【００３９】
プロセスＰ７において、移動準備システム２０４は、ユーザ、サービス業者及び／または他のパーティに、関心オブジェクト５０の各々の分類を検証するよう要求し得る。実施例において、ビデオデバイス１００及び／または計算処理デバイス２０２は、視覚的及び／または聴覚的キューによってユーザを促し、測定値、分類、推定コスト及び／または移動時間などを有する予備目録を確認させることができる。検証パーティ（ユーザ、サービス業者など）は、例えば、生成された目録の分類が適切であるか否か、マイクロフォン１０４、Ｉ／Ｏデバイス２１５、及び／または、ビデオデバイス１００及び／またはコンピュータシステム２００に命令を提供する他の現在知られているまたは今後開発される方法で示し得る。生成された目録の１つもしくは複数の分類が正確でないイベント（即ち、プロセスＰ７の判定が否定された場合）では、フローはプロセスＰ１に戻り、ユーザ、サービス業者などにより報告された何れかの不正確な要素に基づいて推定及び／または座標データを修正し、再計算し得る。生成された目録の分類が適切であると判定された場合（即ち、プロセスＰ７の判定が肯定された場合、フローは次のステップに進み得る。
【００４０】
プロセスＰ８において、算出された移動時間及び／または移動コストは、環境１０の位置または関心オブジェクト５０が移動する提案された目的地によって更新され得る。実施例において、プロセスＰ１からの関心オブジェクト５０の移動についての推定コストは、環境１０と提案された目的地との間のマイル数に基づいて、増加してもよいし、低減してもよい。加えて、または、代替的に、プロセスＰ８は、プロセスＰ１の何れかの時点、例えば、目的地が変更された後、または以前の顧客が他の位置への他の移動にプランを変更した後、実行され得る。
【００４１】
プロセスＰ９において、移動準備システム２０４のモジュール２２０は、生成された目録において、関心オブジェクト５０を移動する特別な指示の一つもしくは複数のセットを選択し得る。例において、プロセスＰ６で適用される分類のライブラリの各分類は、特定の命令、検討などに対応し得る。例えば、芸術作品、電子機器などの壊れやすいまたは価値の高い関心オブジェクト５０について、生成された目録の対応するエントリは、「取り扱い注意」、「顧客により移動」、「特殊梱包要」などの指示を割り当てられ得る。プロセスＰ９で選択された命令のセットは、プロセスＰ６の分類、プロセスＰ１の推定測定値、及びビデオデバイス１００またはコンピュータシステム２００へのユーザ指定及び入力に対して特定であり得る。プロセスフローは、ユーザまたは他のパーティに対して追加的なサービスを申し出るプロセスＰ１０を含み得る。例えば、関心オブジェクト５０のいくつかまたはプロセスＰ６で提供された分類が高価なアイテムを含む場合、推定システム２０６のモジュール２２０は、ユーザに、保険の購入を望むか、特別な移動サービスを要求するか、など、尋ね得る。追加的なサービスの申し出は、所望される場合、プロセスＰ６の分類と関連し、及び／または、プロセスＰ９で選択された命令セットに部分的に依存してもよい。プロセスＰ１０におけるユーザまたは他のパーティに対する追加的なサービスの申し出は、顧客に追加的な価値を提供し、追加的なサービスの必要性を見積もるために、環境１０に物理的に入る追加的なサービスの提供者及び／または移動者の代表を必要としなくてよい。
【００４２】
図２及び図４に、本開示の実施例によるが、必須ではないプロセスフローＳ−Ａを例示する。プロセスフローＡは、ステップＳ１−１及びＳ１−２の間の中間ステップとして実行され、及び／または、ステップＳ１−１及びＳ１−２の実行に統合されるサブステップのグループとして実行され得る。一般的に、プロセスフローＡは、環境１０の代表から特定の要素を、例えば、「クリッピング」することで、ステップＳ１−２でオブジェクトが識別されるビデオフィードデータを単純化することができる。用語「クリッピング」は、例えば、壁、閾値より小さい大きさのアイテム、棚など、関心オブジェクト５０の識別を妨げ得る環境１０の要素を分離し、除去する動作を参照し得る。ステップＳ１−１で、座標データとビデオフィードデータとを対にし、または、これらを受信した後で、モジュールＳ−Ａ１の判定部は、環境１０の何れかの部分が受信したビデオからクリッピングされてもよいか否か判定し得る。ステップＳ−Ａ１の判定は、例えば、様々なサイズの予備計算を行うことで、及び／またはステップＳ１−１からビデオフィードに関連付けられている座標データを読み込むことで、モジュール２２０によって自動的に、及び／またはユーザによって実行され得る。クリッピングが試みられない場合（例えば、ステップＳ−Ａ１の判定が否定された場合、フローは、ビデオフィードの関心オブジェクトを識別するステップ１０２に進み得る。アイテムのいくつかがビデオフィードからクリッピングされる場合（即ち、ステップＳ−Ａ１の判定が肯定された場合）、フローは、クリッピングされる表面の部分を選択するステップＳ−Ａ２に進み得る。実施例において、Ｉ／Ｏデバイス２１５を介して、ユーザは、マウス、タッチスクリーンなどのツールを使用し、クリッピングする壁の面またはアイテムをハイライトする。ステップＳ−Ａ３で、モジュール２２０は、アイテムについて、１つもしくは複数の代表的な面を算出することができ、これにより、クリッピングされるアイテムを示すことができる。より詳細には、代表的な面は、モジュール２２０が特徴及び／またはプロセスフローのその後のステップで除去するアイテムを識別する「除去」面を含み得る。ステップＳ−Ａ４で、モジュール２２０は、面特徴、凸部、凹部及び／または他のアイテムのバリエーションを表す特定の値だけ（例えば、面の法線に基づいて、環境１０の中心点により近く、Ｘ，Ｙ，Ｚ座標に沿って、算出された変位量またはユーザが決定した変位量だけ）、代表面をオフセットし得る（即ち、代表面の少なくても一点を移動させる）。
【００４３】
ステップＳ−Ａ５で、モジュール２２０は、選択アイテム及び／またはその部分がクリッピングされるか否か判定することができる。判定は、例えば、閾値の上下である面のサイズに基づいて完全に自動化されてもよいし、もしくは、例えば、Ｉ／Ｏデバイス２１５を介したユーザ確認によってもよい。クリッピングが許容されない場合（即ち、ステップＳ−Ａ５の判定が否定された場合）、フローはステップＳ−Ａ６に進み、モジュール２２０及び／またはユーザは、選択面を修正し、クリッピングの対象となる特定のアイテムをより適切に取得することができる。クリッピングが許容される場合（即ち、ステップＳ−Ａ５の判定が肯定された場合）、フローは、代表面の除去側のオブジェクト及び／または座標データの除去を行うステップＳ−Ａ７に進み得る。フローは、クリッピングされていない関心オブジェクト５０を識別するステップＳ１−２に進むことができ、他のアイテムをクリッピングするか否か判定するステップＳ−Ａ１に戻ることができる。
【００４４】
図２及び図６は、ステップＳ１−２及びＳ１−３の例示的なサブプロセスフローを示す。ステップＳ１−２は、適用可能なサブステップＳ１−２Ａ、Ｓ１−２Ｂ、Ｓ１−２Ｃ及び／またはＳ１−２Ｄを含み、ステップＳ１−３はステップＳ１−３Ａ及びＳ１−３Ｂに分割され得る。図６に示されるサブステップは、共に、及び／または別個に、本開示の実施例で実行され、ステップＳ１−２及び／またはＳ１−３を実行する他の技術も、実行されてもよい。ステップＳ１−２において、サブプロセスフローは、ステップＳ１−１からのビデオフィードに１つもしくは複数のフィルタを適用するステップＳ１−２Ａを含み得る。モジュール２２０は、様々なフィルタを適用し、環境１０を、「領域」と呼ばれる複数のより小さい環境１０に分割する。領域の各々は、所定の最大数内の、例えば、（環境１０のシミュレートされた描画の場合）アイテムの数またはポリゴンの数を含み得る。ステップＳ１−２Ａで定義された領域は、モジュール２２０によって自動的に保存されてもよいし、１つもしくは複数の基準、例えば、サイズ、関心オブジェクト５０の数、含まれる関心オブジェクト５０のタイプなどに基づいて、ユーザ入力によって分類されてもよい。ユーザは、手動でフィルタを定義し（例えば、Ｉ／Ｏデバイス２１５を使用して所望される領域を描画することで）、環境１０を定義してもよい。ステップＳ１−２Ａで領域が定義されるか否かに拘わらず、ステップＳ１−２は、例えば、ポリゴン及び／または環境１０でオブジェクトを推定する他の方法に基づいて、各領域（または環境１０）の大きさの合計を算出するか、推定することを含み得る。プロセスフローＡ（図５）で提供されるものを越えて、環境１０を単純化するために、モジュール２２０は、環境１０の表現から関心オブジェクト５０のいくつかを自動的に廃棄（除去）してもよい。ステップＳ１−２Ｃにおける廃棄は、例えば、閾値より小さい特定のアイテムまたは関心オブジェクト５０のサイズに基づいて、行われ得る。サイズは、データ２３０のタイプとして保存し得る。モジュール２２０は、次に、方法に関するステップＳ１−２Ｄで、廃棄されないオブジェクトの何れかを識別し得る。必須ではないが、ステップＳ１−２Ｃで、シミュレートされた環境１０から廃棄されたオブジェクトがない場合、フローは各環境１０に進むか、またはプロセスフローに関する領域に進み得る。
【００４５】
ステップＳ１−３に例示する本開示の実施例は、環境１０の１つもしくは複数の関心オブジェクト５０の測定値を推定する特定のプロセスを含み得る。例えば、オブジェクトライブラリフィールド２３６及び／またはデータ２３０の他の部分は、関心オブジェクト５０のいくつかの１つもしくは複数の重みファクタを含み得る。例えば、重みファクタは、立方センチメートル毎のポンドまたは他の体積毎の重さを表す単位などの密度測定値を含み得る。ステップＳ１−３Ａで適用される重みファクタは、モジュール２２０によって予め算出され、及び／または、特定のユーザによって算出され、Ｉ／Ｏデバイス２１５を介して提供され得る。特定のオブジェクトのサイズと重さとの間の関係が既知でない場合、ステップＳ１−３Ａにおいて、１つもしくは複数のデフォルトの重みファクタを関心オブジェクト５０のいくつかに適用してもよい。ステップＳ１−３Ｂにおいて、重みファクタを選択及び／または適用した後、算出機能を有するモジュール２２０は、次に、環境１０の各関心オブジェクト５０の大きさ及び重さを算出することができる。ステップＳ１−３Ｂにおいて、個々の領域（例えば、複数の環境１０）の大きさ／重さ推定を含む大きさ及び／または重さの推定の総計は、独立して計算されてもよいし、合計されてもよい。その後、フローは、環境１０の関心オブジェクト５０の目録を生成するステップＳ１−４に進み得る。
【００４６】
プロセスの全てまたはいくつかに続いて、方法は終了し得る。方法の技術的効果は、引越会社または他のパーティの代表が環境に物理的に入ることなく、環境の各関心オブジェクトのサイズ及び移動コストを認識し、及び、推定する機能を含む。追加的な技術的効果は、推定測定値及び特性が抽出されるオリジナルビデオフィードを人間が見ることなく、関連する特性の組織化されたリストを含む環境の各関心オブジェクトの目録リストを生成することである。また、推定測定値及び特性を含む目録に１つもしくは複数のビデオフィードを自動的に変換することは、特定の顧客または顧客グループに自動的に伝達される、追加的なサービスの提供、オブジェクト分類、及び／または、特別な移動指示を可能とする。例示的な展開設定において、ある場所から他の場所へ家具を移動することを所望する顧客は、ビデオデバイス（例えば、スマートフォン、タブレット、ウェアラブルまたは非ウェアラブルコンピュータなど）にアプリケーションをダウンロードし、移動するオブジェクトを含む１つもしくは複数のビデオフィードを生成し、目録及び様々な推定に変換するビデオフィードを提供することができる。同様の展開設定において、遠隔地に事務所を有する引越会社は、１つもしくは複数のビデオフィードを受信し、顧客の家に物理的に入ることなく、予定されているタスクのための準備を行うことができる。
【００４７】
当業者によって理解されるように、本開示の態様は、システム、方法またはコンピュータプログラム製品として実現され得る。したがって、本開示の態様は、ハードウェアだけの実施例、（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）ソフトウェアだけの実施例、または、ソフトウェアとハードウェアとを組み合わせた実施例の形態を採ることができ、これらは、全て、一般的に、「回路」、「モジュール」、「システム」として参照され得る。また、本開示の態様は、コンピュータ可読プログラムコードを含む１つもしくは複数のコンピュータ可読媒体のコンピュータプログラム製品の形態を採り得る。
【００４８】
１つもしくは複数のコンピュータ可読媒体の組み合わせが使用され得る。コンピュータ可読ストレージ媒体は、例えば、電子、電磁、光、電磁、赤外線、または半導体システム、機器または装置、またはこれらの何れか適切な組み合わせであってよい。コンピュータ可読ストレージ媒体のより詳細な例は、（排他的なリストではなく、）１つもしくは複数の配線を含む電気接続、ポータブルコンピュータディスク、ハードディスク、ＲＡＭ（random access memory）、ＲＯＭ（read-only memory）、ＥＰＲＯＭ（erasable programmable read-only memory）またはフラッシュメモリ、光ファイバ、ポータブルＣＤ−ＲＯＭ（compact disc read-only memory）、オプティカルストレージデバイス、磁気ストレージデバイス、またはこれらの何れか適した組み合わせを含み得る。本開示の文脈において、コンピュータ可読ストレージ媒体は、命令実行システム、機器またはデバイスによって使用されるプログラムを含むまたは記憶する、または、命令実行システム、機器または装置と接続されている何れかの有体の媒体であってよい。
【００４９】
コンピュータ可読媒体に含まれるプログラムコードは、例えば、無線、有線、光ファイバケーブル、ＲＦなど、またはこれらの何れか適切な組み合わせなど、何れか適切な媒体を使用して伝送され得る。本開示の態様のオペレーションを実行するコンピュータプログラムコードは、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋、などのオブジェクト指向プログラミング言語、及び、「Ｃ」プログラミング言語または同様のプログラミング言語などの従来の手続プログラミング言語を含む１つもしくは複数のプログラミング言語の何れかの組み合わせで作成され得る。プログラムコードは、スタンドアロンソフトウェアパッケージとして、ユーザコンピュータだけで実行されてもよいし、部分的にユーザコンピュータで実行されてもよいし、部分的にユーザコンピュータで実行され部分的にリモートコンピュータで実行されてもよいし、リモートコンピュータまたはサーバだけで実行されてもよい。後半のシナリオでは、リモートコンピュータは、ＬＡＮ（local area network）またはＷＡＮ（wide area network）を含む何れかのタイプのネットワークを介してユーザコンピュータに接続され、外部コンピュータに、（例えば、インターネットサービスプロバイダを使用してインターネットを介して、）接続されてもよい。
【００５０】
本開示の態様が、本開示の実施例による方法、機器（システム）及びコンピュータプログラム製品のフローチャート及び／またはブロック図を参照して説明された。フローチャート及び／またはブロック図の各ブロック及びフローチャート及び／またはブロック図のブロックの組み合わせはコンピュータプログラム命令によって実装され得る。これらのコンピュータプログラム命令は、汎用目的コンピュータ、特殊用途コンピュータ、または、マシンを生成する他のプログラマブルデータ処理機器のプロセッサに提供され、コンピュータまたは他のプログラマブルデータ処理機器のプロセッサによって実行する命令が、フローチャート及び／またはブロック図のブロックで特定される機能／動作を実装する手段を生成する。
【００５１】
これらのコンピュータプログラム命令は、特定の方法で機能するように、コンピュータ、他のプログラマブルデータ処理機器または他のデバイスに指示することができ、コンピュータ可読媒体に保存されていてもよい。これにより、コンピュータ可読媒体に保存されている命令は、フローチャート及び／またはブロック図のブロックで特定される機能／動作を実装する命令を含む製品を生成する。コンピュータプログラム命令はコンピュータ、他のプログラマブルデータ処理機器または他のデバイスにロードされ、コンピュータ、他のプログラマブル機器または他のデバイスで実行される一連の動作ステップにコンピュータ実装プロセスを生成させる。これにより、コンピュータまたは他のプログラマブル機器で実行される命令が、フローチャート及び／またはブロック図のブロックで特定される機能／動作を実装するプロセスを提供する。
【００５２】
図面のフローチャート及びブロック図は、本開示の様々な実施例によるシステム、方法及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能及び動作を例示する。フローチャートまたはブロック図の各ブロックは、特定された論理機能を実装する１つもしくは複数の実行可能命令を含むモジュール、セグメントまたはコードの部分を示す。代替的な実装のいくつかにおいて、ブロックにおいて記載された機能は、図面に記載された順序で発生しなくてもよい。例えば、２つの連続したブロックは、実際には、実質的に同時に実行されてもよいし、含まれる機能によっては、ブロックは逆の順序で実行されてもよい場合もある。ブロック図及び／またはフローチャートの各ブロック、及びブロック図及び／またはフローチャートのブロックの組み合わせは、特定された機能または動作を実行する特殊用途ハードウェアベースシステムによって実装されてもよいし、特殊用途ハードウェア及びコンピュータ命令の組み合わせによって実装されてもよい。
【００５３】
用語「構成された」は、構成要素の特殊用途機能を参照し得る。例えば、機能を実行するように構成されたシステムまたはデバイスは、特定機能を実行するようにプログラムされたまたは変更されたコンピュータシステムまたは計算処理デバイスを含み得る。他の場合、コンピュータ可読媒体（例えば、ストレージ媒体）に保存されたプログラムコードは、プログラムコードが計算処理デバイスで実行された場合、少なくとも１つの計算処理デバイスに機能を実行させるように構成され得る。これらの場合、プログラムコードの配置は、実行することで、計算処理デバイスの特定の機能のトリガとなる。他の例において、他の構成要素とインタラクトする、及び／または他の構成要素で動作するように構成されたデバイスは、これらの構成要素と効率的にインタラクトし、及び／またはこれらの構成要素で効率的に動作するように、特別に成形され及び／または設計されていてもよい。このような状況のいくつかにおいて、デバイスの形状の少なくとも部分が他の構成要素の形状の少なくとも部分を補うことで、デバイスは他の構成要素とインタラクトするように構成されている。状況のいくつかにおいて、デバイスの少なくとも部分は、他の構成要素の少なくとも部分とインタラクトするようなサイズである。デバイス及び他の構成要素の間の物理的関係（例えば、補完的、サイズ合致など）は、例えば、１つもしくは複数のデバイスまたは他の構成要素の変位、デバイスまたは他の構成要素との接続などの機能を実行する際に支援となり得る。
【００５４】
本開示で使用される用語は、特定の実施例を説明することを目的としており、開示を限定することを意図していない。文脈上明らかに異なる場合を除き、単数は、複数を含むことを意図している。用語「含む」は、本開示において、記載された特徴、数、ステップ、オペレーション、要素及び／または構成要素の存在を特定するが、他の特徴、数、ステップ、オペレーション、要素、構成要素及び／またはこれらのグループの存在または追加を妨げない。
【００５５】
本開示の様々な実施例の記載は、例示を目的とし、網羅的であること、または、実施例を限定することを意図していない。当業者には明らかであるように、記載された実施例の範囲及び思想から逸脱することなく、多くの変更が可能である。本開示で使用された用語は、実施例の原理、市場で発見された技術の実用的適用または技術的改善を最も適切に説明し、当業者が実施例を理解できるように選択されている。
【図１】
2017534129.tif 000003
【図２】
2017534129.tif 000004
【図３】
2017534129.tif 000005
【図４】
2017534129.tif 000006
【図５】
2017534129.tif 000007
【図６】
2017534129.tif 000008
【国際調査報告】
2017534129.tif 000009