(57)【要約】【課題】ロボットによるパッケージハンドリング作業中にパッケージを登録する。【解決手段】パッケージハンドリングシステムを動作させる方法は、パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、第１の画像に基づいてパッケージ表面についての交差するエッジのペアを識別することと、エッジのペアに基づいて最小実行可能領域を決定することであって、最小実行可能領域はパッケージを把持して持ち上げるためのものである、決定することと、持ち上げ後のパッケージを表す第２の画像データを受信することと、第３の画像データに基づいて登録データを生成することとを含む。【選択図】図１Ｂ
2020069636.tif 000002
【特許請求の範囲】
【請求項１】
ロボットによるパッケージハンドリング作業中にパッケージを登録するための方法であって、
パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定することと、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別することであって、前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成する、前記識別することと、
前記エッジのペアに基づいて最小実行可能領域を決定することであって、前記最小実行可能領域は前記エッジのペアの一方または両方と重なるおよび／または一致する、前記決定することと、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および、（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成することと、
前記持ち上げ後の前記パッケージを表す第２の画像データを受信することと、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定することと、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
を含む、前記方法。
【請求項２】
前記第１の画像データに基づいて不明瞭エッジを推定することであって、前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応する、前記推定すること、
をさらに含み、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
請求項１に記載の方法。
【請求項３】
前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別することであって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、前記識別すること、
をさらに含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項２に記載の方法。
【請求項４】
前記１つまたは複数の新たなエッジを識別することは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別することを含む、請求項３に記載の方法。
【請求項５】
前記第３の画像データを決定することは、
前記第１の画像データと前記第２の画像データとの差を計算することと、
前記第１の画像データを前記計算された差と組み合わせることと、
を含む、請求項１に記載の方法。
【請求項６】
前記第１の画像データに基づいて直線を識別すること、
をさらに含み、
前記最小実行可能領域は、前記直線を除外した連続する領域である、
請求項１に記載の方法。
【請求項７】
垂直方向に沿った前記パッケージの寸法を表す高さを計算すること、
をさらに含み、
前記登録データは前記計算された高さを含む、
請求項１に記載の方法。
【請求項８】
前記高さを計算することは、
前記パッケージが、既知の高さに配置された高さ決定センサに関連付けられた水平検出面と交差するタイミングを表すトリガを検出することと、
前記トリガに関連付けられた垂直位置を決定することであって、前記垂直位置は、前記パッケージが前記水平検出面と交差するタイミングにおける前記エンドエフェクタの垂直位置を表す、前記決定することと、
前記既知の高さと前記垂直位置との差に基づいて前記高さを計算することと、
を含む、請求項７に記載の方法。
【請求項９】
前記パッケージを持ち上げた後にデータを受信することであって、前記データは前記エンドエフェクタに接続または統合されたＦ−Ｔセンサからの力測定値を表す、前記受信することと、
前記受信されたデータに基づいて前記パッケージの重さを決定することと、
をさらに含み、
前記登録データは前記決定された重さを含む、
請求項１に記載の方法。
【請求項１０】
前記パッケージを持ち上げた後にデータを受信することであって、前記データは前記エンドエフェクタに接続または統合されたＦ−Ｔセンサからのトルク測定値を表す、前記受信することと、
前記受信されたデータに基づいて前記パッケージの重心位置を決定することと、
をさらに含み、
前記登録データは前記重心位置を含む、
請求項１に記載の方法。
【請求項１１】
ロボットによるパッケージハンドリング作業中に未登録パッケージを登録するためのシステムであって、
少なくとも１つのプロセッサと、
前記少なくとも１つのプロセッサに結合された少なくとも１つのメモリであって、前記少なくとも１つのプロセッサによって実行可能な命令を含み、前記命令は、
パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定することと、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別することとであって、前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成する、前記識別することと、
前記エッジのペアに基づいて最小実行可能領域を決定することであって、前記最小実行可能領域は前記エッジのペアの一方または両方と重なるおよび／または一致する、前記決定することと、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成することと、
前記パッケージの第２の画像データを受信することであって、前記第２の画像データは前記持ち上げ後の前記パッケージを表す、前記受信することと、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定することと、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
を行う、前記少なくとも１つのメモリと
を備える、前記システム。
【請求項１２】
前記少なくとも１つのメモリは、
前記第１の画像データに基づいて不明瞭エッジを推定することであって、前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応する、前記推定すること、を行う命令を含み、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
請求項１１に記載のシステム。
【請求項１３】
前記少なくとも１つのメモリは、
前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別することであって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、前記識別すること、
を行う命令を含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１２に記載のシステム。
【請求項１４】
前記少なくとも１つのメモリは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別すること、
を行う命令を含む、請求項１３に記載のデバイス。
【請求項１５】
前記少なくとも１つのメモリは、前記第３の画像データを決定することを、
前記第１の画像データと前記第２の画像データとの差を計算することと、
前記第１の画像データを前記計算された差と組み合わせることと
に基づいて行う命令を含む、請求項１１に記載のデバイス。
【請求項１６】
コンピューティングシステムによって実行された場合に、前記コンピューティングシステムにコンピュータ実施方法を実行させるコンピュータ実行可能命令を記憶する非一時的メモリ媒体であって、前記命令は、
パッケージ表面の第１の表面画像を表す第１の画像データを受信する命令と、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定する命令と、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別する命令であって、前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成する、識別する前記命令と、
前記エッジのペアに基づいて最小実行可能領域を決定する命令であって、前記最小実行可能領域は前記エッジのペアの一方または両方と重なるおよび／または一致する、決定する前記命令と、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および、（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成する命令と、
前記パッケージの第２の画像データを受信する命令であって、前記第２の画像データは前記持ち上げ後の前記パッケージを表す、受信する前記命令と、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定する命令と、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成する命令と、
を含む、前記非一時的メモリ媒体。
【請求項１７】
前記命令は、前記第１の画像データに基づいて不明瞭エッジを推定する命令であって、前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応する、推定する前記命令をさらに含み、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
請求項１６に記載の非一時的メモリ媒体。
【請求項１８】
前記命令は、前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別する命令であって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、識別する前記命令をさらに含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１７に記載の非一時的メモリ媒体。
【請求項１９】
前記１つまたは複数の新たなエッジを識別する前記命令は、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別する命令を含む、請求項１８に記載の非一時的メモリ媒体。
【請求項２０】
前記第３の画像データを決定する前記命令は、
前記第１の画像データと前記第２の画像データとの差を計算し、
前記第１の画像データを前記計算された差と組み合わせる、
命令を含む、請求項１１に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
[0001]  本出願は、２０１８年１０月３０日に出願された米国仮特許出願第６２／７５２，７５６号の利益を主張し、その全体が本明細書に引用により組み込まれている。
【背景技術】
【０００２】
[0002]  多くの場合、パッケージはパレタイズされて送り先へ輸送され、そこでデパレタイズされる。場合により、パッケージは人間の作業者によってデパレタイズされ、これには費用がかかり、肉体的損傷の危険性があり得る。産業環境では、デパレタイズ作業は産業用ロボット、たとえば、パッケージを把持し、持ち上げ、運び、解放位置に届けるロボットアームにより行われることが多い。また、撮像デバイスを利用して、パレットに積まれたパッケージのスタックの画像を撮影する場合がある。システムはこの画像を処理して、たとえば、撮影画像を登録データソースに記憶された登録済み画像と比較することによって、パッケージがロボットアームによって効率的に扱われるようにし得る。
【０００３】
[0003]  場合により、パッケージの撮影画像は登録済み画像と一致し得る。結果として、撮像された物体の物理特性（たとえば、パッケージの寸法、重さ、および／または重心の測定値）は未知となる場合がある。物理特性を正しく識別するのに失敗した場合、種々の望ましくない結果がもたらされ得る。たとえば、そのような失敗は中断を引き起こす場合があり、これにはパッケージを手動で登録することが必要となり得る。また、そのような失敗によってパッケージが誤って扱われる場合があり、これは特に、パッケージが比較的重い、および／または傾いている場合である。
【図面の簡単な説明】
【０００４】
【図１Ａ】[0004]図１Ａは、本技術のいくつかの実施形態によるパッケージ登録メカニズムによって構成されるロボットシステムを示す図である。
【図１Ｂ】[0005]図１Ｂは、本技術のいくつかの実施形態によるロボットシステムの機能ブロック図である。
【図２Ａ】[0006]図２Ａは、本技術のいくつかの実施形態によるフォーストルクセンサを示す図である。
【図２Ｂ】[0007]図２Ｂは、本技術のいくつかの実施形態によるグリッパを示す図である。
【図３Ａ】[0008]図３Ａは、パッケージのスタックの例の斜視図である。
【図３Ｂ】[0009]図３Ｂは、パッケージのスタックの例の上面図である。
【図３Ｃ】[0010]図３Ｃは、本技術のいくつかの実施形態による登録済みパッケージの例示的なシンボロジーを示す図である。
【図４Ａ】[0011]図４Ａは、本技術のいくつかの実施形態によるパッケージのスタックの第２の例の斜視図を示す図である。
【図４Ｂ】[0012]図４Ｂは、本技術のいくつかの実施形態によるパッケージの第２のスタックの上面図を示す図である。
【図４Ｃ】[0013]図４Ｃは、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーを示す図である。
【図４Ｄ】[0014]図４Ｄは、本技術のいくつかの実施形態による不明瞭エッジおよび最小実行可能領域（ＭＶＲ：minimum viable region）の例を示す図である。
【図４Ｅ】[0015]図４Ｅは、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーの第２のセットを示す図である。
【図４Ｆ】[0016]図４Ｆは、本技術のいくつかの実施形態による不明瞭エッジおよびＭＶＲの第２の例を示す図である。
【図４Ｇ】[0017]図４Ｇは、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第３のセットを示す図である。
【図４Ｈ】[0018]図４Ｈは、本技術のいくつかの実施形態による図４Ｄの第１のＭＶＲ上へのグリッパシステムの配置例を示す図である。
【図４Ｉ】[0019]図４Ｉは、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第４のセットを示す図である。
【図４Ｊ】[0020]図４Ｊは、本技術のいくつかの実施形態による新たに処理されるパッケージについての不明瞭エッジおよびＭＶＲの例を示す図である。
【図４Ｋ】[0021]図４Ｋは、本技術のいくつかの実施形態による図４ＦのＭＶＲ上へのグリッパシステムの配置例を示す図である。
【図４Ｌ】[0022]図４Ｌは、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第５のセットを示す図である。
【図４Ｍ】[0023]図４Ｍは、本技術のいくつかの実施形態による新たに処理されるパッケージについての不明瞭エッジおよびＭＶＲの例を示す図である。
【図４Ｎ】[0024]図４Ｎは、本技術のいくつかの実施形態による図４ＭのＭＶＲ上へのグリッパシステムの配置例を示す図である。
【図４Ｏ】[0025]図４Ｏは、本技術のいくつかの実施形態による図４ＪのＭＶＲ上へのグリッパシステムの配置例を示す図である。
【図４Ｐ】[0026]図４Ｐは、本技術のいくつかの実施形態による図４Ｄの第２のＭＶＲ上へのグリッパシステムの配置例を示す図である。
【図４Ｑ】[0027]図４Ｑは、本技術のいくつかの実施形態による図４Ｄの第３のＭＶＲ上へのグリッパシステムの配置例を示す図である。
【図５】[0028]本技術のいくつかの実施形態による図１Ａのロボットシステム１００を動作させるための例示的な方法の制御フローを示す図である。
【発明を実施するための形態】
【０００５】
[0029]  以下の説明では、本明細書で開示する発明概念の実施形態の完全な理解を提供するために、いくつかの具体的詳細を提示する。しかしながら、関連技術に熟練した者であれば、本明細書で開示する本技術の実施形態が、具体的詳細のうちの１つまたは複数がなくとも、または他の構成要素との組み合わせなどで実施できることを理解するであろう。他の例では、本明細書で開示する本技術の様々な実施形態の態様を曖昧にしないようにするために、よく知られている実施態様または動作については詳細には図示も説明もしていない。
【０００６】
[0030]  図１Ａおよび図１Ｂに、本技術のいくつかの実施形態によるパッケージ登録メカニズムによって構成されるロボットシステム１００を示す。いくつかの実施形態では、ロボットシステムは、デパレタイズ台１１０、荷受台１２０、ロボットアームシステム１３０、エンドエフェクタ１４０、処理ユニット（ＰＵ：processing unit）１５０、画像システム１６０、登録データソース（ＲＤＳ：registration data source）１７０、高さ決定センサ（ＨＤＳ：height determination sensor）１８０、および／または解放位置センサ（ＲＰＳ：release point sensor）１９０を含むことができる。
【０００７】
[0031]  デパレタイズ台１１０は、複数のパッケージ１１２（単数形では、「パッケージ１１２」）がスタックおよび／またはステージされ、荷受台１２０に運ばれる準備ができている場合がある任意の台、表面、および／または構造を含むことができる。「パッケージ」および「複数のパッケージ」という用語を本明細書で使用するが、この用語は、以下に詳述するように、コンテナを把持し、持ち上げ、運び、届けることが可能な他の任意の語、たとえば、限定はしないが、「ケース」、「ボックス」、「カートン」、またはこれらの任意の組み合わせを含むことに留意されたい。その上、長方形のボックスを本明細書で開示する図面に示しているが、ボックスの形状はそのような形状に限定されず、以下に詳述するように、把持し、持ち上げ、運び、届けることが可能な任意の規則的または不規則な形状を含む。
【０００８】
[0032]  デパレタイズ台１１０と同様に、荷受台１２０は、さらなるタスク／作業のためにパッケージ１１２を受けるように指定される任意の台、表面、および／または構造を含むことができる。いくつかの実施形態では、荷受台１２０は、さらなる作業（たとえば、仕分けおよび／または保管）のためにある場所（たとえば、後述の解放位置）から他の場所へパッケージ１１２を運ぶためのコンベアシステムを含むことができる。
【０００９】
[0033]  ロボットアームシステム１３０は、パッケージ１１２を操作する（たとえば、移動および／または回転もしくは向きを変更する）ように構成される１組のリンク構造、関節、モータ／アクチュエータ、センサ、またはそれらの組み合わせを含むことができる。ロボットアームシステム１３０は、本明細書において限定ではなく例示の目的で、多関節型の６軸ロボットアーム構造であり得るロボットアーム１３２を含むことができる。本明細書の議論はロボットアームシステム１３０を意図しているが、本明細書で開示する実施形態はそのようなシステムに限定されず、本明細書で開示する動作を行うように構成され得る任意のロボットシステムを含む。
【００１０】
[0034]  エンドエフェクタ１４０は、複数のパッケージ１１２と相互作用するように構成されるロボットアーム１３２の遠位端に結合される任意の１つまたは複数のコンポーネントを含むことができる。たとえば、エンドエフェクタ１４０は、パッケージ１１２を把持して保持するように構成される構造（たとえば、真空式グリッパ）を含むことができる。いくつかの実施形態では、エンドエフェクタ１４０は、（図２Ａおよび図２Ｂに示すように）フォーストルク（Ｆ−Ｔ）センサ１４２、アームインターフェース１４４、グリッパシステム１４６、および／またはグリッパインターフェース１４８を含むことができる。
【００１１】
[0035]  図１ＢのＰＵ１５０は、ロボットアームシステム１３０（エンドエフェクタ１４０を含む）の動きおよび／または他の動作を管理および制御するだけでなく、他の関連するデータを処理するようにプログラムおよび／または構成される任意のユニット（複数可）または回路とすることができる。たとえば、ＰＵ１５０は、画像システム１６０からパッケージ１１２の表面画像（ＳＩ：surface image）を表す画像データを受信し、（後述する）ＲＤＳ１７０によって提供される登録レコード１７２に従ってＳＩの登録状況を決定する。すなわち、パッケージ１１２がパッケージ１１２の登録済みインスタンスであるか、またはパッケージ１１２の未登録インスタンス（たとえば、パッケージ１１２の登録レコード１７２のインスタンスが存在しないまたは不完全なもの）であるかを判定する。また、たとえば、ＰＵ１５０はロボットアームシステム１３０をパッケージ１１２の登録済みインスタンスに誘導することができる。加えて、ＰＵ１５０は、把持制御信号をグリッパシステム１４６に適用し、アームを荷受台１２０に誘導し、および／またはＲＰＳ１９０から解放信号を受信すると、パッケージ１１２の登録済みインスタンスを荷受台１２０上に離すことができる。
【００１２】
[0036]  ＰＵ１５０は、ランダムアクセスメモリ（ＲＡＭ）、ディスクドライブ、磁気メモリ、読み出し専用メモリ（ＲＯＭ）、コンパクトディスク（ＣＤ）、固体メモリ、セキュアデジタルカード、および／またはコンパクトフラッシュカードを含むがこれらに限定されない、デジタルメモリ記憶デバイスまたは非一時的コンピュータ可読媒体（一般的には、図１Ｂのメモリ１５２）に永久にまたは一時的に記憶され得るソフトウェアまたはコンピュータ命令コードを実行する任意の電子データ処理ユニットを含むことができる。ＰＵ１５０は、本明細書で具現化する特定の機能のために開発されるアルゴリズムを含むソフトウェアまたはコンピュータ命令コードを実行することによって駆動されてもよい。いくつかの実施形態では、ＰＵ１５０は、本明細書で開示する実施形態に合わせてカスタマイズされた特定用途向け集積回路（ＡＳＩＣ）であってもよい。いくつかの実施形態では、ＰＵ１５０は、マイクロプロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、プログラマブルロジックデバイス（ＰＬＤ）、プログラマブルゲートアレイ（ＰＧＡ）、および信号発生器のうちの１つまたは複数を含むことができる。しかし、本明細書の実施形態では、「プロセッサ」という用語はそのような例示的な処理ユニットに限定されることはなく、その意味は狭く解釈されるように意図していない。たとえば、ＰＵ１５０は、２つ以上の電子データ処理ユニットを含むこともできる。いくつかの実施形態では、ＰＵ１５０は、ロボットアームシステム１３０、エンドエフェクタ１４０、および／または画像システム１６０を含むがこれらに限定されないロボットシステム１００の他の任意のシステムによって、またはこれと併せて使用されるプロセッサ（複数可）とすることができる。
【００１３】
[0037]  ＰＵ１５０は、入力データの受信を容易にするために、システムおよび／またはソースに（たとえば、導線、バス、および／または無線接続を介して）電子的に結合されてもよい。いくつかの実施形態では、動作可能に結合されるとは、電子的に結合されると置き換え可能であると見なされてもよい。直接接続がなされることは必須ではなく、代わりに、そのような入力データの受信および出力データの提供は、バスを介して、無線ネットワーク経由で、あるいはＰＵ１５０によって物理または仮想コンピュータポートを介して受信および／または送信される信号として行うことができる。ＰＵ１５０は、以下に詳述する方法を実行するようにプログラムまたは構成されてもよい。いくつかの実施形態では、ＰＵ１５０は、画像システム１６０、ＲＤＳ１７０、ＨＤＳ１８０、および／またはＲＰＳ１９０を含むがこれらに限定されない様々なシステムおよび／またはユニットからデータを受信するようにプログラムまたは構成されてもよい。いくつかの実施形態では、ＰＵ１５０は、ロボットアームシステム１３０、エンドエフェクタ１４０、およびＲＤＳ１７０を含むがこれらに限定されない様々なシステムおよび／またはユニットに出力データを提供するようにプログラムまたは構成されてもよい。
【００１４】
[0038]  画像システム１６０は、デパレタイズ台１１０上に配置されたパッケージ１１２の１つまたは複数のＳＩを表す画像データをキャプチャするように構成される１つまたは複数のセンサ１６２を含むことができる。いくつかの実施形態では、画像データは、パッケージ１１２の登録状況を決定し得る、パッケージ１１２の１つまたは複数の表面上に見える視覚的なデザインおよび／またはマーキングを表すことができる。いくつかの実施形態では、画像システム１６０は、目標とする（たとえば、可視および／または赤外の）電磁スペクトル帯域幅内で動作するように設計され、対応するスペクトル内の光／エネルギーを検出するために使用される１つまたは複数のカメラを含むことができる。いくつかの実施形態では、画像データは、１つまたは複数の３次元（３−Ｄ）カメラおよび／または１つまたは複数の２次元（２−Ｄ）カメラからキャプチャされる、点群を形成するデータ点のセット、深度マップ、またはこれらの組み合わせとすることができる。これらのカメラから、画像システム１６０と、パッケージ１１２の（たとえば、画像システム１６０の視線に対する）１つまたは複数の露出面との間の距離または深度が決定されてもよい。いくつかの実施形態では、距離または深度は、コンテキスト型画像分類アルゴリズム（複数可）および／またはエッジ検出アルゴリズム（複数可）などの画像認識アルゴリズム（複数可）を使用して決定することができる。決定後、距離／深度値を使用して、ロボットアームシステム１３０を介してパッケージ１１２を操作してもよい。たとえば、ＰＵ１５０および／またはロボットアームシステム１３０は、距離／深度値を使用して、パッケージ１１２が持ち上げられおよび／または把持され得る位置を計算することができる。本明細書に記載のデータ、たとえば、画像データは、情報を含むまたは情報を示すことができる離散的または連続的な任意のアナログまたはデジタル信号を含むことができることに留意されたい。
【００１５】
[0039]  画像システム１６０は、以下に詳述するように、ロボットシステム１００の１人または複数人の操作者によって見られ得る、センサ１６２によってキャプチャされたパッケージ（複数可）１１２の画像を提示するように構成される少なくとも１つの表示ユニット１６４を含むことができる。加えて、表示ユニット１６４は、以下に詳述するパッケージ１１２の登録済みおよび／または未登録インスタンスを表すシンボロジーなどであるがこれに限定されない他の情報を提示するように構成することができる。
【００１６】
[0040]  ＲＤＳ１７０は、複数のパッケージ１１２についての登録レコード１７２を記憶するように構成される任意のデータベースおよび／またはメモリ記憶デバイス（たとえば、非一時的コンピュータ可読媒体）を含むことができる。たとえば、ＲＤＳ１７０は、読み出し専用メモリ（ＲＯＭ）、コンパクトディスク（ＣＤ）、固体メモリ、セキュアデジタルカード、コンパクトフラッシュカード、および／またはデータ記憶サーバもしくは遠隔記憶デバイスを含むことができる。
【００１７】
[0041]  いくつかの実施形態では、各登録レコード１７２は、対応するパッケージ１１２についての物理特性または属性を含むことができる。たとえば、各登録レコード１７２は、限定はしないが、１つまたは複数のテンプレートＳＩ、２−Ｄもしくは３−Ｄサイズ測定値、重さ、および／または重心（ＣｏＭ：center of mass）情報を含むことができる。テンプレートＳＩは、パッケージ１１２のデザイン、マーキング、外観、外形／輪郭、またはこれらの組み合わせを含む、パッケージ１１２の既知のまたは以前に決定された視覚的特徴を表すことができる。２−Ｄまたは３−Ｄサイズ測定値は、既知の／想定されるパッケージの長さ、幅、高さ、またはこれらの組み合わせを含むことができる。
【００１８】
[0042]  いくつかの実施形態では、ＲＤＳ１７０は、以下に開示する実施形態に従って生成される（たとえば、以前は未知であったパッケージ、および／またはパッケージの以前は未知であった側面についての）登録レコード１７２の新たなインスタンスを受信するように構成することができる。したがって、ロボットシステム１００は、ＲＤＳ１７０に記憶される登録レコード１７２の数を増やして、パッケージ１１２を登録するための処理を自動化することによって、パッケージ１１２の未登録インスタンスをより少数にして、デパレタイズ作業をより効率化することができる。ライブ／動作データを使用してＲＤＳ１７０内の登録レコード１７２を動的に（たとえば、動作中／配置中に）更新することによって、ロボットシステム１００は、以前は未知もしくは想定外であった条件（たとえば、照明条件、未知の向き、および／または段積みの不一致）および／または新たに遭遇したパッケージを考慮し得るコンピュータ学習処理を効率的に実装することができる。したがって、ロボットシステム１００は、「未知の」条件／パッケージから生じる失敗、関連する人間の操作者の介入、および／または関連するタスクの失敗（たとえば、パッケージ紛失および／または衝突）を減らすことができる。
【００１９】
[0043]  ＨＤＳ１８０は、基準点（たとえば、ＨＤＳ１８０に関連付けられた表面）に対する物体（たとえば、パッケージ１１２）の垂直測定値を提供するように構成されるコンポーネントを含むことができる。図１Ａに示す例では、ＨＤＳ１８０は、パッケージ１１２の底部／エッジがＨＤＳ１８０に関連付けられた水平面（たとえば、走査面）と交差したときに、図１のＰＵ１５０に信号を送信することができる。ＰＵ１５０は、ＨＤＳ１８０からの信号を使用して、たとえば、ＨＤＳ１８０の走査面（すなわち、事前に知られているもの）と、信号が生成されたときのグリッパシステム１４６の位置との間の距離に応じて、パッケージ１１２の高さを（たとえば、配置／接近の向きに従って）決定することができる。以下に開示するように、パッケージ１１２の高さは、登録レコード１７２に登録済みの２−Ｄ測定値に、第３の次元の測定値として追加されてもよい。いくつかの実施形態では、ＨＤＳ１８０は、図１Ａに示すように荷受台１２０上に設置することができる。
【００２０】
[0044]  ＲＰＳ１９０は、パッケージ１１２がＲＰＳ１９０に関連付けられた水平面と交差または接触した場合に、ＰＵ１５０に提供される信号をトリガするように構成されるコンポーネント／回路を含むことができる。いくつかの実施形態では、ＲＰＳ１９０によってトリガされた信号を使用して、グリッパシステム１４６がパッケージ１１２を荷受台１２０上に離す位置を決定してもよい。いくつかの実施形態では、ＲＰＳ１９０は、図１Ａに示すように荷受台１２０上に設置することができる。
【００２１】
[0045]  ここで図２Ａを参照すると、Ｆ−Ｔセンサ１４２は、ある座標系の軸および／または複数の軸に沿った直線力および／またはモーメント力を検出するように構成される任意のセンサとすることができる。いくつかの実施形態では、Ｆ−Ｔセンサ１４２は、図１Ａおよび図１Ｂのロボットシステム１００によって利用される３軸までの力（たとえば、デカルト座標系のｘ軸、ｙ軸、およびｚ軸に沿って検出される力）、および／または３軸モーメント（たとえば、デカルト座標系のｘ軸、ｙ軸、およびｚ軸まわりに検出されるモーメント）を検出するように構成される６軸力センサを有するコンポーネントを含むことができる。いくつかの実施形態では、Ｆ−Ｔセンサ１４２は、内蔵アンプおよび信号処理用のマイクロコンピュータ、静的測定および動的測定を行う機能、および／またはサンプリング間隔に基づいて瞬時の変化を検出する機能を含むことができる。いくつかの実施形態では、Ｆ−Ｔセンサ１４２は、有線通信および／または無線通信を介して図１ＢのＰＵ１５０と通信可能に結合することができる。
【００２２】
[0046]  アームインターフェース１４４は、図１Ａのロボットアーム１３２の遠位端をＦ−Ｔセンサ１４２に結合するように構成される任意のデバイスとすることができる。いくつかの実施形態では、ロボットアームシステム１３０の製造業者は、Ｆ−Ｔセンサ１４２の製造業者と異なってもよい。そのような場合、アームインターフェース１４４の端部は異なる構成を有してもよく、一方の端部は遠位端と結合するよう構成され、他方の端部はＦ−Ｔセンサ１４２と結合するよう構成されてもよい。
【００２３】
[0047]  ここで図２Ｂを参照すると、グリッパシステム１４６は、図１Ａのパッケージ１１２を図１Ａのデパレタイズ台１１０上のその静止位置から把持し、パッケージ１１２が図１Ｂのロボットアームシステム１３０によって図１Ａの荷受台１２０に運ばれ届けられる間に把持を持続するように構成される任意のシステムまたはアセンブリとすることができる。いくつかの実施形態では、グリッパシステム１４６は、荷受台１２０にてパッケージ１１２を把持し、デパレタイズ台１１０にて離すための真空源を利用した真空グリッパシステムから構成され得る。いくつかの実施形態では、真空グリッパシステムは、パッケージ１１２とのインターフェースとして吸引カップ（複数可）を利用することができる。
【００２４】
[0048]  図２Ｂのグリッパインターフェース１４８は、Ｆ−Ｔセンサ１４２をグリッパシステム１４６に結合するように構成される任意のデバイスとすることができる。いくつかの実施形態では、Ｆ−Ｔセンサ１４２の製造業者は、グリッパシステム１４６の製造業者と異なってもよい。そのような場合、グリッパインターフェース１４８の両側は異なる構成を有してもよく、片側はＦ−Ｔセンサ１４２と結合するように構成され、反対側はグリッパシステム１４６と結合するように構成される。
【００２５】
[0049]  図３Ａ〜図４Ｑに、図１Ａおよび図１Ｂのロボットシステム１００を利用して、図１Ａのパッケージ１１２の未登録インスタンスの図１Ｂの登録レコード１７２を生成し得る方法を示す。図３Ａに、パッケージ１１２−１〜１１２−２４のスタックの例の斜視図を示す。図３Ｂに、これらのパッケージ１１２のスタックの例の上面図を示す。図３Ｂは、図１Ａおよび図１Ｂの画像システム１６０のセンサ１６２によってキャプチャされた、これらのパッケージ１１２を見下ろしたシーンの画像および／または点群データに対応することができる。限定ではなく例示のみの目的で、パッケージ１１２−１〜１１２−３、１１２−１３〜１１２−１４、および１１２−２１〜１１２−２４は、パッケージ１１２の登録済みインスタンスを表すことができ、それぞれ図１ＢのＲＤＳ１７０に記憶された登録レコード１７２を有する。議論および簡潔さのみのために、パッケージ１１２は長方形形状であるよう図示しており、各々、それぞれの登録レコード１７２に登録されたＳＩ（斜線で図示）を有する。
【００２６】
[0050]  図３Ｃに、本技術のいくつかの実施形態による登録済みパッケージの例示的なシンボロジーを示す。図３Ｃに、図１Ｂの表示ユニット１６４によって表示されるパッケージのシンボロジー（たとえば、表示されたオブジェクトの登録状況を表すための視覚的マーカおよび／またはオーバレイ）１１２−１ａ〜１１２−３ａ、１１２−１３ａ〜１１２−１４ａ、および１１２−２１ａ〜１１２−２４ａを示す。これらのシンボロジーおよび対応する登録状況を生成するために、図３Ｂのパッケージ１１２−１〜１１２−３、１１２−１３〜１１２−１４、および１１２−２１〜１１２−２４のキャプチャされたＳＩを、画像認識アルゴリズム（複数可）によってＲＤＳ１７０に記憶された登録レコード１７２のＳＩと比較し、登録済みであれば、シンボロジーとして表示してもよい。いくつかの実施形態では、シンボロジーは、製造業者および／またはエンドユーザによって、ＳＩが登録済みであることを示す視覚的フォーマットを使用して構成することができ、そのようなフォーマットは各種形状および／または色を利用することができる。限定ではなく例示のみの目的で、製造業者および／またはエンドユーザは、シンボロジー１１２−１ａ〜１１２−３ａ、１１２−１３ａ〜１１２−１４ａ、および１１２−２１ａ〜１１２−２４ａを、パッケージの輪郭の形状および大きさ（すなわち、ここでは長方形を想定）となるように構成している。図示していないが、シンボロジーは、パッケージ１１２−１〜１１２−３、１１２−１３〜１１２−１４、および１１２−２１〜１１２−２４のそれぞれについて、肯定的な登録状況（すなわち、登録レコード１７２の存在するインスタンス）を示す色（たとえば、緑色）にすることができる。図示していないが、図３Ｂに示すシーンの画像は、表示ユニット１６４上に提示することができ、その上に図３Ｃのシンボロジーがオーバレイされ得る。いくつかの実施形態では、パッケージ１１２−１〜１１２−３、１１２−１３〜１１２−１４、および１１２−２１〜１１２−２４を表す英数字（たとえば、登録レコード１７２にリストされた１つまたは複数の物理特性）が、シンボロジーの代わりに、またはこれに加えて提示されてもよい。
【００２７】
[0051]  いくつかの実施形態では、ロボットシステム１００は、（エッジ検出アルゴリズム（複数可）を含み得る画像認識アルゴリズム（複数可）によって）画像データからパッケージの２−Ｄ測定値（たとえば、長さおよび幅）を生成することができる。たとえば、ロボットシステム１００は、画像認識アルゴリズム（複数可）（たとえば、エッジ検出アルゴリズム（複数可）および／またはマッピングアルゴリズム（複数可））を使用して、パッケージ１１２−１〜１１２−３、１１２−１３〜１１２−１４、および１１２−２１〜１１２−２４などの、デパレタイズ台１１０のパッケージ１１２の２−Ｄ測定値を生成することができる。ロボットシステム１００は、測定面までの深度に基づいて２−Ｄ測定値を生成することができる。ロボットシステム１００は、（たとえば、測定されたパッケージが、露出面の画像認識などによって識別されると）対応するパッケージ１１２の２−Ｄ測定値をそれらの登録レコード１７２と比較して、登録レコード１７２の精度を確認することができる。
【００２８】
[0052]  いくつかの実施形態では、図１Ａおよび図１Ｂのエンドエフェクタ１４０および／またはグリッパシステム１４６を位置調整するために、登録レコード１７２に記憶されたＣｏＭ情報をＰＵ１５０に提供してもよい。ロボットシステム１００は、エンドエフェクタ１４０および／またはグリッパシステム１４６をパッケージ１１２のＣｏＭ上に配置して、パッケージ１１２を把持して持ち上げることによって、パッケージ１１２が図１Ａのデパレタイズ台１１０上のその位置から把持され持ち上げられる場合に、バランスのとれたパッケージの把持およびレベルパッケージ持ち上げを含む作業を容易にすることができる。パッケージ１１２を把持し、持ち上げ、図１Ａの荷受台１２０まで運び、そこで離してもよい。
【００２９】
[0053]  図４Ａに、本技術のいくつかの実施形態によるパッケージ（たとえば、パッケージ１１２−３１〜１１２−５４）のスタックの第２の例の斜視図を示す。図４Ｂに、本技術のいくつかの実施形態によるパッケージのスタックの第２の例の上面図を示す。図３Ｂは、図１Ａおよび図１Ｂの画像システム１６０のセンサ１６２によってキャプチャされた、これらのパッケージを見下ろしたシーンの画像および／または点群データに対応し得る。限定ではなく例示のみの目的で、パッケージ１１２−３３、１１２−４３および１１２−５１は、パッケージ１１２の登録済みインスタンスを表し得、各インスタンスは、図１ＢのＲＤＳ１７０に記憶された図１Ｂの登録レコード１７２のそれぞれのインスタンスに含まれるＳＩを有する。議論および簡潔さのみのために、パッケージ１１２は長方形形状である。
【００３０】
[0054]  加えて、パッケージ１１２−３１、１１２−３２、１１２−４４、および１１２−５２〜１１２−５４は、パッケージ１１２の未登録のおよび／または誤って処理された／一致したインスタンスを表し得る。これは図１ＢのＲＤＳ１７０に記憶された登録レコード１７２に対応しなくてもよい。ロボットシステム１００は、これらの未登録／不一致ＳＩを表す撮影画像データを、後述の第１の画像データおよび登録可能ＳＩとして使用することができる。議論および簡潔さのみのために、パッケージ１１２は長方形形状であり、それぞれ、垂直線、水平線、および／または斜交平行線によって示されるＳＩを有することができる。
【００３１】
[0055]  図４Ｃ、図４Ｅ、図４Ｇ、図４Ｉ、および図４Ｌは、１つまたは複数のパッケージが持ち去られた場合のスタックの上面図を示し得る。図４Ｃに、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーを示す。図４Ｃに、図１Ｂの表示ユニット１６４によって表示される長方形１１２−３３ａ、１１２−４３ａ、および１１２−５１ａのシンボロジーを示す。上述のように、パッケージ１１２のＳＩは、図１Ｂの画像システム１６０によってキャプチャされ、図１ＢのＲＤＳ１７０に記憶された図１Ｂの登録レコード１７２のＳＩと比較されてもよい。登録済みであれば、ロボットシステムは、ＳＩが登録済みであることを示すシンボロジーを割り当ておよび／または表示することができる。図示のように、シンボロジー１１２−３３ａ、１１２−４３ａ、および１１２−５１ａは、表示ユニット１６４によって表示される長方形の輪郭を含むことができる。
【００３２】
[0056]  図４Ｃに示すように、内側の長方形１１２−６１ａ〜１１２−６１ｄ（両端含む）を外側の長方形１１２−６２ａ〜１１２−６２ｄ（両端含む）の中に組み合わせたものが、パッケージ１１２−３１、１１２−４４、および１１２−５３の未登録ＳＩについてのシンボロジー１１２−３１ａ、１１２−４４ａ、および１１２−５３ａとして表示ユニット１６４上に表示することができる。いくつかの実施形態では、内側の長方形１１２−６１ａ〜１１２−６１ｄの大きさおよび配置は、以下に詳述する最小実行可能領域（ＭＶＲ）と一致することができる。シンボロジー１１２−３１ａ、１１２−４４ａ、および１１２−５３ａが存在することは、パッケージ１１２−３１、１１２−４４、および１１２−５３のＳＩが、登録レコード１７２を有さないおよび／または登録レコード１７２と一致しないことを示すことができる。そのような例では、画像認識アルゴリズム（複数可）（たとえば、エッジ認識アルゴリズム（複数可））を利用して、コーナーを形成する少なくとも２つの明瞭エッジの存在を判定することができる。
【００３３】
[0057]  図４Ｄに、本技術のいくつかの実施形態による不明瞭エッジおよびＭＶＲの例を示す。図４Ｄに、未登録／不一致パッケージについての、コーナー１１２−３１ｃ、１１２−４４ｃ、および１１２−５３ｃをそれぞれ形成する、２つの明瞭エッジ１１２−３１ｂ、１１２−４４ｂ、および１１２−５３ｂ（たとえば、スタックの外側のエッジを形成する／と一致するエッジ）を示す。また、２つの不明瞭エッジ１１２−３１ｄ、１１２−４４ｄ、および１１２−５３ｄが、それぞれコーナー１１２−３１ｅ、１１２−４４ｅ、および１１２−５３ｅを形成することがＰＵ１５０によって識別／推定されてもよい。いくつかの実施形態では、図４Ａのパッケージ１１２−３１の２つの不明瞭エッジ１１２−３１ｄは、それぞれ端部１１２−３１ｂａおよび１１２−３１ｂｂから所定の角度で（たとえば、垂直に）、コーナー１１２−３１ｅにて交差するまで伸びていると仮定して、処理することができる。同様に、パッケージ１１２−４４の２つの不明瞭エッジ１１２−４４ｄは、それぞれ端部１１２−４４ｂａおよび１１２−４４ｂｂから所定の角度で（たとえば、垂直に）、コーナー１１２−４４ｅにて交差するまで伸びていると仮定して、処理することができる。同じく、パッケージ１１２−５３の２つの不明瞭エッジ１１２−５３ｄは、それぞれ端部１１２−５３ｂａおよび１１２−５３ｂｂから所定の角度で（たとえば、垂直に）、コーナー１１２−５３ｅにて交差するまで伸びていると仮定して、処理することができる。いくつかの実施形態では、ロボットシステム１００は、対応するパッケージに関連する深度測定値、位置／場所、決定された姿勢、またはこれらの組み合わせに応じて所定の角度を選択または調整することができる。
【００３４】
[0058]  加えて、例示的なＭＶＲ１１２−３１ｆ、１１２−４４ｆ、および１１２−５３ｆを図４Ｄに示す。いくつかの実施形態では、パッケージ１１２の未登録インスタンスごとにＭＶＲを計算してもよく、これを使用して図１Ｂの登録レコード１７２を生成することができる。ロボットシステム１００は、登録レコード１７２を、それぞれのＭＶＲに応じて生成することができる。ＭＶＲ１１２−３１ｆは、その辺が２つの明瞭エッジ１１２−３１ｂまたはその一部と同一線上になるように計算することができる。換言すれば、ＭＶＲ１１２−３１ｆの大きさは、パッケージ１１２−３１の表面より小さくすることができる。いくつかの実施形態では、ＭＶＲ１１２−３１ｆは、図２Ｂに示すグリッパシステム１４６の大きさ、またはパッケージ１１２を持ち上げる場合の、把持し、安全に把持を持続する能力に対応する他の特徴に応じてサイズ設定することができる。ＭＶＲを処理する際、ロボットシステム１００は、パッケージ１１２についてのデフォルトＣｏＭを想定し使用することができる。したがって、デフォルトＣｏＭおよび計算された大きさを使用して、ロボットシステム１００は、パッケージ１１２の関連する操作（たとえば、把持する、持ち上げる、および／または運ぶ）における誤り／失敗を防ぐＭＶＲ１１２−３１ｆを計算することができる。たとえば、ＭＶＲが小さすぎる場合、グリッパシステム１４６は誤って配置される場合があり、パッケージ１１２が持ち上げられた場合に、グリッパシステム１４６による把持の持続が可能ではない場合がある。いくつかの実施形態では、ＭＶＲ１１２−３１ｆは、画像認識アルゴリズム（複数可）によって決定されるＳＩ内に見られる表面デザインおよび／またはマーキングの一部である直線を除外するようにサイズ設定することができる。いくつかの実施形態では、ＭＶＲ１１２−３１ｆは、より低い信頼基準に対応するエッジを除外するようにサイズ設定することができる。前述の議論はＭＶＲ１１２−３１ｆに関心が寄せられているが、ＭＶＲ１１２−３１ｆを計算するための機能は、本明細書に記載の任意のＭＶＲに当てはまることに留意されたい。
【００３５】
[0059]  図４Ｅに、本技術のいくつかの実施形態による登録済みおよび未登録パッケージの例示的なシンボロジーの第２のセットを示す。図４Ｅは、図４Ｃに示すスタックから１つまたは複数のパッケージが持ち去られた／運ばれた後のパッケージのスタックの状態を表し得る。図４Ｃのシンボロジー１１２−３３ａが無いことは、図１Ａのデパレタイズ台１１０から登録済みパッケージ１１２−３３が把持され、持ち上げられ、運ばれたことを示し得る。また、ロボットシステム１００は、シンボロジー１１２−３２ａを表示ユニット１６４上に生成／表示して、図４Ｂに示すパッケージ１１２−３２のコーナーを形成する２つの明瞭エッジ（たとえば、現在露出しており、いかなる当接するエッジ／パッケージにも隣接しなくなったエッジ）の新たな認識を示すことができる。
【００３６】
[0060]  図４Ｆに、本技術のいくつかの実施形態による不明瞭エッジおよびＭＶＲの第２の例を示す。図４Ｆに、上述の１つまたは複数の処理を使用して認識された、コーナー１１２−３２ｃを形成する明瞭エッジ１１２−３２ｂを示す。この認識から、２つの不明瞭エッジ１１２−３２ｄおよび対応するコーナー１１２−３２ｅが、ロボットシステム１００（たとえば、ＰＵ１５０）によって上述のように推定されてもよく、ＭＶＲ１１２−３２ｆが上述のように計算されてもよい。
【００３７】
[0061]  図４Ｇに、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第３のセットを示す。図４Ｇは、図４Ｅに示すスタックから１つまたは複数のパッケージが持ち去られた／運ばれた後のパッケージのスタックの状態を表し得る。図４Ｃおよび図４Ｅのシンボロジー１１２−４３ａおよび１１２−５１ａが無いことは、図１Ａのデパレタイズ台１１０から登録済みパッケージ１１２−４３および１１２−５１が把持され、持ち上げられ、運ばれたことを示し得る。図４Ｂのパッケージ１１２−５２の左右のエッジがここで認識されてもよいが（たとえば、露出し、当接するエッジ／パッケージに隣接しなくなったため）、これらのエッジは互いに平行であり、交差してコーナーを形成することはないので、パッケージ１１２−５２に対応するシンボロジーの追加は、いくつかの実施形態では表示ユニット１６４によって表示されなくてもよいことに留意されたい。
【００３８】
[0062]  図４Ｈに、本技術のいくつかの実施形態によるＭＶＲ（たとえば、図４ＤのＭＶＲ１１２−４４ｆ）上へのグリッパシステム（たとえば、グリッパシステム１４６）の配置例を示す。図１Ａおよび図１Ｂのエンドエフェクタ１４０を構成するＦ−Ｔセンサ１４２およびグリッパシステム１４６は、図１の画像システム１６０のセンサ１６２の視野から図４Ｄの不明瞭エッジ１１２−４４ｄを遮蔽せずに、グリッパシステム１４６がＭＶＲ１１２−４４ｆ上に配置されるように位置調整されてもよい。次いで、パッケージ１１２−４４を把持し、持ち上げ検査距離だけ垂直に上昇位置まで持ち上げることができる。たとえば、持ち上げ検査距離は、図１Ｂおよび図２ＡのＦ−Ｔセンサ１４２がパッケージ１１２−４４の１つまたは複数の軸の力ならびに／あるいは１つまたは複数の軸のモーメントの測定値をキャプチャするのに十分な距離を表すことができる。たとえば、持ち上げ検査距離は、ゼロミリメートルより長い垂直距離またはｚ軸に沿った距離を表すことができる。具体例としては、持ち上げ検査距離は５０ミリメートルを表すことができる。
【００３９】
[0063]  デカルト座標系を基準とするいくつかの実施形態では、１つまたは複数の軸に沿った力測定値（複数可）（すなわち、Ｆ（ｘ軸）、Ｆ（ｙ軸）、および／またはＦ（ｚ軸））、および／または１つまたは複数の軸まわりのモーメント測定値（複数可）（すなわち、Ｍ（ｘ軸）、Ｍ（ｙ軸）、および／またはＭ（ｚ軸））がＦ−Ｔセンサ１４２を介してキャプチャされてもよい。ＣｏＭ計算アルゴリズムを適用することによって、パッケージの重さが力測定値（複数可）に応じて計算されてもよく、パッケージのＣｏＭが力測定値（複数可）およびモーメント測定値（複数可）に応じて計算されてもよい。これらの測定値は、パッケージ１１２−４４について生成される図１Ｂの登録レコード１７２の新たなインスタンスに追加することができる。いくつかの実施形態では、計算されたＣｏＭがＭＶＲ１１２−４４ｆに入らない場合、パッケージ１１２−４４はグリッパシステム１４６から離されてもよい。次いで、グリッパシステム１４６は計算されたＣｏＭ上に位置付けられてもよく、そのときパッケージ１１２−４４は安全に把持され、同様に上昇位置まで持ち上げられてもよい。
【００４０】
[0064]  上昇位置にある間、ロボットシステムは、持ち上げられたパッケージを再撮像して、以前は不明瞭であったエッジを明瞭にすることができる。１１２−４４の部分的ＳＩ（すなわち、グリッパシステム１４６によって遮蔽されないＳＩ全体の中の一部）を表す第２の画像データを、図１Ａおよび図１Ｂの画像システム１６０のセンサ１６２によってキャプチャして、図４Ｄの不明瞭エッジ１１２−４４ｄの明瞭エッジ１１２−４４ｇを取得してもよい。いくつかの実施形態では、第１の点群データから構成される第１の画像データ内に表される深度情報を、第２の点群データから構成される第２の画像データ内に表される深度情報と比較して、明瞭エッジおよび２−Ｄ測定値を決定し得る深度情報の変化を決定してもよい。取得されると、登録可能ＳＩを表す第３の画像データが、第１の画像データのＳＩおよび第２の画像データの明瞭エッジから生成されてもよい。第２の画像データから決定される２−Ｄ測定値および第３の画像データの登録可能ＳＩは、パッケージ１１２−４４について生成される登録レコード１７２にここで追加されてもよい。さらなる例では、第３の画像データは、図１Ａのロボットシステム１００についてのテンプレート画像データを表すことができる。ここから、パッケージ１１２−４４の未登録インスタンスについての登録可能ＳＩ、２−Ｄ測定値、ならびに重さおよびＣｏＭの測定値から構成される登録レコード１７２の新たなインスタンスが、ここで図１ＢのＲＤＳ１７０に記憶されてもよい。ロボットシステム１００は、パッケージ１１２のＳＩをテンプレート画像データと比較することによって、パッケージ１１２が未登録であるか否かを判定することができる。
【００４１】
[0065]  図４Ｉに、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第４のセットを示す。図４Ｉは、図４Ｇに示すスタックから１つまたは複数のパッケージが持ち去られた／運ばれた後のパッケージのスタックの状態を表し得る。図４Ｃ、図４Ｅ、および図４Ｇのシンボロジー１１２−４４ａが無いことは、登録レコード１７２の新たなインスタンスが確立された後に、デパレタイズ台１１０からパッケージ１１２−４４の以前は未登録であったインスタンスが運ばれたことを示し得る。また、ロボットシステム１００は、シンボロジー１１２−５４ａを表示ユニット１６４上に生成／表示して、図４Ｂに示すパッケージ１１２−５４のコーナーを形成する２つの明瞭エッジ（たとえば、以前隣接していたパッケージ（複数可）を持ち去った／運んだ後に新たに露出したエッジ）の新たな認識を示すことができる。
【００４２】
[0066]  図４Ｊに、新たに処理されるパッケージ（たとえば、パッケージ１１２−５４）についての不明瞭エッジおよびＭＶＲの例を示す。図４Ｊに、上述の１つまたは複数の処理を使用して認識された、コーナー１１２−５４ｃを形成する明瞭エッジ１１２−５４ｂを示す。この認識から、２つの不明瞭エッジ１１２−５４ｄおよび対応するコーナー１１２−５４ｅが、ロボットシステム１００（たとえば、ＰＵ１５０）によって上述のように推定されてもよく、ＭＶＲ１１２−５４ｆが上述のように計算されてもよい。
【００４３】
[0067]  図４Ｋに、本技術のいくつかの実施形態による図４ＦのＭＶＲ（たとえば、ＭＶＲ１１２−３２ｆ）上へのグリッパシステム（たとえば、グリッパシステム１４６）の配置例を示す。図１Ａおよび図１Ｂのエンドエフェクタ１４０を構成するＦ−Ｔセンサ１４２およびグリッパシステム１４６は、図１の画像システム１６０のセンサ１６２の視野から不明瞭エッジ１１２−３２ｄを遮蔽せずに、グリッパシステム１４６がＭＶＲ１１２−３２ｆ上に配置されるように位置調整されてもよい。次いで、パッケージ１１２−３２が上述のように上昇位置にある状態で、重さおよびＣｏＭ測定値が決定され、パッケージ１１２−３２について生成される登録レコード１７２の新たなインスタンスに追加されてもよく、パッケージ１１２−３２の部分的ＳＩを表す第２の画像データがキャプチャされてもよく、それに基づいて２−Ｄ測定値および明瞭エッジ１１２−３２ｇが決定されてもよく、登録可能ＳＩを表す第３の画像データが、第１の画像データのＳＩおよび第２の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ１１２−３２の未登録インスタンスについての登録可能ＳＩ、２−Ｄ測定値、ならびに重さおよびＣｏＭの測定値から構成される登録レコード１７２の新たなインスタンスが、ここで図１ＢのＲＤＳ１７０に記憶されてもよい。
【００４４】
[0068]  図４Ｌに、本技術のいくつかの実施形態による未登録パッケージの例示的なシンボロジーの第５のセットを示す。図４Ｌは、図４Ｉに示すスタックから１つまたは複数のパッケージが持ち去られた／運ばれた後のパッケージのスタックの状態を表し得る。図４Ｅ、図４Ｇ、および図４Ｉのシンボロジー１１２−３２ａが無いことは、登録レコード１７２の新たなインスタンスが確立された後に、デパレタイズ台１１０からパッケージ１１２−３２の以前は未登録であったインスタンスが運ばれたことを示し得る。また、ロボットシステム１００は、シンボロジー１１２−５２ａを表示ユニット１６４上に生成／表示して、図４Ｂに示すパッケージ１１２−５２のコーナーを形成する２つの明瞭エッジ（たとえば、以前隣接していたパッケージ（複数可）を持ち去った／運んだ後に新たに露出したエッジ）の新たな認識を示すことができる。
【００４５】
[0069]  図４Ｍに、新たに処理されるパッケージ（たとえば、パッケージ１１２−５２）についての不明瞭エッジおよびＭＶＲの例を示す。図４Ｍに、上述の１つまたは複数の処理を使用して認識された、コーナー１１２−５２ｃを形成する明瞭エッジ１１２−５２ｂを示す。この認識から、２つの不明瞭エッジ１１２−５２ｄおよび対応するコーナー１１２−５２ｅが、ロボットシステム１００（たとえば、ＰＵ１５０）によって上述のように推定されてもよく、ＭＶＲ１１２−５２ｆが上述のように計算されてもよい。
【００４６】
[0070]  図４Ｎに、本技術のいくつかの実施形態による図４ＭのＭＶＲ（たとえば、ＭＶＲ１１２−５２ｆ）上へのグリッパシステム（たとえば、グリッパシステム１４６）の配置例を示す。図１Ａおよび図１Ｂのエンドエフェクタ１４０を構成するＦ−Ｔセンサ１４２およびグリッパシステム１４６は、図１の画像システム１６０のセンサ１６２の視野から不明瞭エッジ１１２−５２ｄを遮蔽せずに、グリッパシステム１４６がＭＶＲ１１２−５２ｆ上に配置されるように位置調整されてもよい。次いで、パッケージ１１２−５２が上述のように上昇位置にある状態で、重さおよびＣｏＭ測定値が決定され、パッケージ１１２−５２について生成される登録レコード１７２の新たなインスタンスに追加されてもよく、パッケージ１１２−５２の部分的ＳＩを表す第２の画像データがキャプチャされてもよく、それに基づいて２−Ｄ測定値および明瞭エッジ１１２−５２ｇが決定されてもよく、登録可能ＳＩを表す第３の画像データが第１の画像データのＳＩおよび第２の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ１１２−５２の未登録インスタンスについての登録可能ＳＩ、２−Ｄ測定値、ならびに重さおよびＣｏＭの測定値から構成される登録レコード１７２の新たなインスタンスが、ここで図１ＢのＲＤＳ１７０に記憶されてもよい。
【００４７】
[0071]  図４Ｏに、本技術のいくつかの実施形態による図４ＪのＭＶＲ（たとえば、ＭＶＲ１１２−５４ｆ）上へのグリッパシステム（たとえば、グリッパシステム１４６）の配置例を示す。図１Ａおよび図１Ｂのエンドエフェクタ１４０を構成するＦ−Ｔセンサ１４２およびグリッパシステム１４６は、図１の画像システム１６０のセンサ１６２の視野から不明瞭エッジ１１２−５４ｄを遮蔽せずに、グリッパシステム１４６がＭＶＲ１１２−５４ｆ上に配置されるように位置調整されてもよい。次いで、パッケージ１１２−５４が上述のように上昇位置にある状態で、重さおよびＣｏＭ測定値が決定され、パッケージ１１２−５４について生成される登録レコード１７２の新たなインスタンスに追加されてもよく、パッケージ１１２−５４の部分的ＳＩを表す第２の画像データがキャプチャされてもよく、それに基づいて２−Ｄ測定値および明瞭エッジ１１２−５４ｇが決定されてもよく、登録可能ＳＩを表す第３の画像データが第１の画像データのＳＩおよび第２の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ１１２−５４の未登録インスタンスについての登録可能ＳＩ、２−Ｄ測定値、ならびに重さおよびＣｏＭの測定値から構成される登録レコード１７２の新たなインスタンスが、ここで図１ＢのＲＤＳ１７０に記憶されてもよい。
【００４８】
[0072]  図４Ｐに、本技術のいくつかの実施形態による図４Ｄの第２のＭＶＲ（たとえば、ＭＶＲ１１２−３１ｆ）上へのグリッパシステム（たとえば、グリッパシステム１４６）の配置例を示す。図１Ａおよび図１Ｂのエンドエフェクタ１４０を構成するＦ−Ｔセンサ１４２およびグリッパシステム１４６は、図１の画像システム１６０のセンサ１６２の視野から不明瞭エッジ１１２−３１ｄを遮蔽せずに、グリッパシステム１４６がＭＶＲ１１２−３１ｆ上に配置されるように位置調整されてもよい。次いで、パッケージ１１２−３１が上述のように上昇位置にある状態で、重さおよびＣｏＭ測定値が決定され、パッケージ１１２−３１について生成される登録レコード１７２の新たなインスタンスに追加されてもよく、パッケージ１１２−３１の部分的ＳＩを表す第２の画像データがキャプチャされてもよく、それに基づいて２−Ｄ測定値および明瞭エッジ１１２−３１ｇが決定されてもよく、登録可能ＳＩを表す第３の画像データが第１の画像データのＳＩおよび第２の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ１１２−３１の未登録インスタンスについての登録可能ＳＩ、２−Ｄ測定値、ならびに重さおよびＣｏＭの測定値から構成される登録レコード１７２の新たなインスタンスが、ここで図１ＢのＲＤＳ１７０に記憶されてもよい。
【００４９】
[0073]  図４Ｑに、本技術のいくつかの実施形態による図４Ｄの第３のＭＶＲ（たとえば、ＭＶＲ１１２−５３）上へのグリッパシステム（たとえば、グリッパシステム１４６）の配置例を示す。図１Ａおよび図１Ｂのエンドエフェクタ１４０を構成するＦ−Ｔセンサ１４２およびグリッパシステム１４６は、図１の画像システム１６０のセンサ１６２の視野から不明瞭エッジ１１２−５３ｄを遮蔽せずに、グリッパシステム１４６がＭＶＲ１１２−５３ｆ上に配置されるように位置調整されてもよい。次いで、パッケージ１１２−５３が上述のように上昇位置にある状態で、重さおよびＣｏＭ測定値が決定され、パッケージ１１２−５３について生成される登録レコード１７２の新たなインスタンスに追加されてもよく、パッケージ１１２−５３の部分的ＳＩを表す第２の画像データがキャプチャされてもよく、それに基づいて２−Ｄ測定値および明瞭エッジ１１２−５３ｇが決定されてもよく、登録可能ＳＩを表す第３の画像データが第１の画像データのＳＩおよび第２の画像データの明瞭エッジから生成されてもよい。ここから、パッケージ１１２−５３の未登録インスタンスについての登録可能ＳＩ、２−Ｄ測定値、ならびに重さおよびＣｏＭの測定値から構成される登録レコード１７２の新たなインスタンスが、ここで図１ＢのＲＤＳ１７０に記憶されてもよい。
【００５０】
[0074]  図５に、図１Ａのロボットシステム１００を動作させるための例示的な方法についての制御フロー２００を示す。制御フロー２００は、パッケージハンドリング作業中に未登録パッケージ１１２を登録することを含むことができ、ここで、図１ＢのＰＵ１５０は、制御フロー２００に具現化されるモジュール（たとえば、回路、機能、コンピュータ／デバイス実行可能命令、またはこれらの組み合わせ）に対応する命令によってプログラムまたは構成されてもよい。いくつかの実施形態では、ＰＵ１５０は、図１Ｂのロボットアームシステム１３０、図１Ｂのエンドエフェクタ１４０、図１Ｂの画像システム１６０、図１ＢのＲＤＳ１７０、スタンドアロンコントローラ、および／またはタスクを実行するのに適した他の任意のシステムにおいて見られるプロセッサまたはプロセッサの組み合わせであってもよい。また、ＰＵ１５０は、たとえば、限定はしないが、ＰＵ１３０の双方向データ通信、すなわち、データの受信および提供を容易にするための１つまたは複数の入力インターフェースを有するプリント基板カードなどのモジュールのプロセッサであってもよい。制御フロー２００において具現化される以下のモジュールの実現に必要な場合、データを受信することは、データを取得することおよび／または取り出すことと同義および／または交換可能であり、データを提供することは、データを利用可能にすることまたは供給することと同義および／または交換可能である。
【００５１】
[0075]  ロボットシステム１００は、キャプチャモジュール２０２を含むことができる。キャプチャモジュール２０２は、ＳＩを第１の画像データとしてキャプチャする。たとえば、キャプチャモジュール２０２は、図１Ｂのセンサ（複数可）１６２によって第１の画像データをキャプチャすることができる。より具体的には、例として、キャプチャモジュール２０２は、画像システム１６０を動作させ、および／または画像システム１６０と相互作用して、図３Ｂおよび／または図４Ｂに示すスタックの上面図に対応する撮像データをキャプチャする、および／または画像システム１６０からこれを受信することができる。キャプチャモジュール２０２は、その結果得られた撮像データを処理して、図１Ａのパッケージ１１２の上面を第１の画像データとしてキャプチャすることができる。いくつかの実施形態では、キャプチャモジュール２０２は、１つまたは複数の画像認識アルゴリズム（たとえば、コンテキスト型画像分類、パターン認識、および／またはエッジ検出）を利用して、撮像データを分析し、その中のパッケージ１１２のエッジおよび／または表面を識別することができる。処理結果（たとえば、識別されたエッジおよび／または連続面）に基づいて、キャプチャモジュール２０２は、撮像データの一部（たとえば、画素値および／または深度読取値のセット）を、個々のパッケージの上面を表すものとして識別することができる。キャプチャモジュール２０２は、個々のパッケージのうちの１つまたは複数の上面（複数可）に対応する第１の画像データを領域モジュール２０４に送信することができる。
【００５２】
[0076]  ロボットシステム１００は領域モジュール２０４を含むことができ、領域モジュール２０４はキャプチャモジュール２０２に結合することができる。領域モジュール２０４はＭＶＲを計算する。たとえば、領域モジュール２０４は、パッケージ１１２、図１Ｂの登録レコード１７２、またはこれらの組み合わせに基づいてＭＶＲを計算することができる。
【００５３】
[0077]  いくつかの実施形態では、キャプチャモジュール２０２は、受信した画像データ（たとえば、第１の画像データ）を登録レコード１７２と比較することができる。たとえば、キャプチャモジュール２０２は、第１の画像データおよび／またはその任意の処理結果（たとえば、画像データから得られた寸法／大きさ推定値および／または視覚的マーキング）を、既知のまたは以前に遭遇したパッケージの既存の記述／テンプレートと比較することができる。その比較に基づいて、領域モジュール２０４は、第１の画像データが、登録レコード１７２に記憶された既知のまたは以前に遭遇したパッケージの対応する情報と一致するか否かを判定することができる。
【００５４】
[0078]  領域モジュール２０４はＭＶＲをいくつかの方法で計算することができ、たとえば、パッケージ１１２が登録レコード１７２として登録されているか否か（たとえば、第１の画像データと登録レコード１７２との比較が一致を返すか否か）に基づいてＭＶＲを計算する。より具体的には、例として、第１の画像データが登録レコード１７２のうちの１つと一致する場合（たとえば、パッケージ１１２が登録レコード１７２のうちの１つまたは複数として登録されている場合）、領域モジュール２０４はＭＶＲを計算しないようにすることができる。反対に、第１の画像データが登録レコード１７２のうちのいずれにも一致しない場合、領域モジュール２０４はＭＶＲを計算することができる。たとえば、キャプチャされた第１の画像データは、パッケージ１１２の未登録インスタンスの上面を表すことができる。パッケージ１１２は未登録であるので、パッケージ１１２のエッジのいくつかのインスタンスは不明瞭であり得る。より具体的には、例として、図４Ｂの未登録パッケージ１１２−３１は、図４Ｄの不明瞭エッジ１１２−３１ｄを含み得る。領域モジュール２０４は、明瞭および／または不明瞭エッジの組を識別することができる。いくつかの実施形態では、領域モジュール２０４は、明瞭エッジ（たとえば、スタックの周辺エッジを形成し／と一致し、他のいかなるパッケージにも当接しないエッジ）を識別し、それらを基準として使用することができる。したがって、領域モジュール２０４は、明瞭エッジを使用して、上述のように（たとえば、グリッパシステム１４６の大きさ／特徴に応じて）ＭＶＲを決定することができる。領域モジュール２０４は、第１の画像データ内にキャプチャされたパッケージ１１２の表面の面積より小さいＭＶＲを決定することができる。
【００５５】
[0079]  具体例としては、パッケージ１１２−３１の第１の画像データは、図４Ｄの２つの明瞭エッジ１１２−３１ｂを含むことができる。領域モジュール２０４は、２つの明瞭エッジ１１２−３１ｂが２つの不明瞭エッジ１１２−３１ｄと交差するように、２つの明瞭エッジ１１２−３１ｂおよび２つの不明瞭エッジ１１２−３１ｄを延長することによって、パッケージ１１２−３１の表面エリアの境界線を予測することができる。領域モジュール２０４は、ＭＶＲを表面エリアの境界線より小さくなるように決定することによって、表面エリアの境界線に基づいてＭＶＲを計算することができる。いくつかの実施形態では、領域モジュール２０４は、（たとえば、画像データに基づいて）互いに交差して第１のコーナーを形成するパッケージ表面のエッジのペア（たとえば、明瞭および／または不明瞭エッジ）を識別することができる。領域モジュール２０４はエッジのペアを使用してＭＶＲを決定することができ、たとえば、エッジのペアに垂直であって互いに近づく線のペアを延長して不明瞭エッジを推定することによって行う。したがって、領域モジュール２０４は、対向するコーナーを、不明瞭な／延長された線対のペアの交点として推定することができる。領域モジュール２０４は、グリッパシステム１４６の１つまたは複数の大きさ／特徴に対応する第１のエッジのペア上の点から不明瞭／垂直な線を延長することができる。
【００５６】
[0080]  さらなる例では、パッケージ１１２のＳＩ上に見えるデザインおよび／またはマーキングは、直線を含む場合がある。直線は、パッケージ１１２の表面のエッジと間違われる場合がある。エッジの潜在的な誤識別を減らすために、領域モジュール２０４は、直線を有する表面の一部を除外したＭＶＲを計算することができる。より具体的には、例として、領域モジュール２０４は、直線によって構成される表面エリアの境界線よりも小さいＭＶＲを計算することができる。
【００５７】
[0081]  異なる例では、領域モジュール２０４は、パッケージ１１２の位置に基づいてＭＶＲを計算することができる。たとえば、パレットは、図１Ａのデパレタイズ台１１０上に図３Ａ／図４Ｂに示すように２つ以上のパッケージ１１２（登録済みおよび／または未登録のもの）を含む場合がある。パッケージのグループから、領域モジュール２０４は、パッケージ１１２のあるインスタンスの、パッケージ１１２の他のインスタンスに対する位置に基づいて、ＭＶＲを計算することができる。先述のように、パッケージ１１２の登録済みインスタンスのエッジは全て、たとえば、パッケージの露出面が登録済みデータと肯定的に一致することに基づいて、また、登録済みデータに対応する以前に記憶された大きさ／寸法の測定値を使用して、既知であり得る。
【００５８】
[0082]  反対に、パッケージ１１２の未登録インスタンスのエッジの一部は、たとえば、パッケージ１１２−５２が未登録であるために、未知であり得る。さらに、未知のパッケージ（たとえば、パッケージ１１２−５２）は、他のパッケージ、たとえば、図４Ｂに示すパッケージ１１２−３１、１１２−３２、１１２−３３、１１２−４３、１１２−４４、１１２−５１、１１２−５３、および／または１１２−５４によって囲まれ得る。１１２−５２のエッジは未知であるので、１１２−５２のＳＩは、他のパッケージ１１２の表面画像と重なり得る。
【００５９】
[0083]  いくつかの例では、囲んでいるパッケージのうちの１つまたは複数（たとえば、パッケージ１１２−３２）も、登録レコード１７２によれば未登録／不一致である場合があり、これにより、パッケージ１１２−５２の残りの／未知のエッジについてさらなる不確定性が導入され得る。明瞭な境界線がパッケージ１１２−５２とパッケージ１１２−３２との間に確立されていない場合、パッケージ１１２−５２のＳＩおよびパッケージ１１２−３２のＳＩは互いに重なり得る。
【００６０】
[0084]  一方、パッケージ１１２−３１も未登録／不一致である場合があるが、センサ１６２は、デパレタイズ台１１０および／または他のパッケージに対するパッケージ１１２−３１の一意の位置／状態を検出することができる。たとえば、領域モジュール２０４は、パッケージ１１２−３１の少なくとも１つのエッジが他のパッケージ１１２と隣接／当接しない場合に、パッケージ１１２−３１が所定の位置／状態を満たすと決定することができる。より具体的には、例として、図４Ｂの２つのエッジ１１２−３１ｂおよび図４Ｂのコーナー１１２−３１ｃは、第１の画像において明瞭に見え、および／または、囲んでいる／隣接する水平位置とは異なる（たとえば、上方に配置された）深度測定値（たとえば、連続した面のもの）に対応し得る。また、たとえば、領域モジュール２０４は、パッケージ１１２−３１および／またはその外側のエッジがデパレタイズ台１１０のコーナーおよび／または外側の部分に対応すると決定することができる。
【００６１】
[0085]  したがって、領域モジュール２０４は、パッケージ１１２のエッジ（複数可）、コーナー、またはこれらの組み合わせの視認性に基づいて、パッケージ１１２の未登録インスタンスがデパレタイズ台１１０の外周またはその付近にあると決定することができる。いくつかの実施形態では、領域モジュール２０４は、パッケージ１１２の未登録インスタンスが、１つまたは複数の水平方向に沿って露出している（たとえば、以前に隣接していたパッケージを持ち去ったことによって、他のパッケージに隣接していない）とさらに決定することができる。領域モジュール２０４は、露出しているおよび／または他の未登録パッケージ（たとえば、スタック／レイヤの水平方向の内側部分に位置する未登録パッケージ１１２−５２  １１２）に対して外側にあるパッケージ１１２の未登録インスタンスについてのＭＶＲの計算を優先することができる。
【００６２】
[0086]  いくつかの実施形態では、領域モジュール２０４は、明瞭に見えるおよび／または露出しているエッジの数が多いパッケージについてのＭＶＲの計算を、そのようなエッジの数が少ないパッケージよりも優先することができる。したがって、ロボットシステム１００は、他のパッケージ１１２と重なるＳＩを有するパッケージを把持するリスクを低減し、対応する把持／持ち上げの失敗を減らすことができる。図４Ｂに示す例では、領域モジュール２０４は、パッケージ１１２−３２、１１２−５４、１１２−５２の前に、パッケージ１１２−３１、１１２−５３、および／または１１２−４４に対してＭＶＲを決定することができる。領域モジュール２０４はＭＶＲを持ち上げモジュール２０６に送信することができる。
【００６３】
[0087]  領域モジュール２０４は、２つの不明瞭コーナーに基づいてＭＶＲを計算することができる。より具体的には、例として、２つの不明瞭コーナーは、少なくとも３つの不明瞭エッジ、２つの明瞭エッジおよび１つの不明瞭エッジ、または２つの不明瞭エッジおよび１つの明瞭エッジの組み合わせから構成することができる。上述のように、領域モジュール２０４は、各エッジを延長して他のエッジと交差させてコーナーを生成することによって、パッケージ１１２の表面の境界線を予測することができる。領域モジュール２０４は、３つのエッジ／２つのコーナーによって生成される表面エリアの境界線に基づいて、２つの不明瞭コーナーによって生成される境界線よりも小さくなるようにＭＶＲを決定することによって、ＭＶＲを計算することができる。
【００６４】
[0088]  ロボットシステム１００がＭＶＲを動的かつリアルタイムに計算することによって、パッケージ１１２の未登録インスタンスを把持する際の精度および性能が向上する。ＭＶＲを計算することによって、ロボットシステム１００は、図４Ｈのグリッパシステム１４６がパッケージ１１２を安全に把持することができるパッケージ１１２の表面エリア（たとえば、対応するエッジ／境界線）を推定することができる。結果として、ロボットシステム１００は、ワークフローを停止させずにロボットシステム１００に未登録のパッケージ１１２を移動させることによって、パッケージ１１２をデパレタイズするためのワークフローの効率を向上させることができる。
【００６５】
[0089]  ロボットシステム１００は持ち上げモジュール２０６を含むことができ、持ち上げモジュール２０６は領域モジュール２０４に結合することができる。持ち上げモジュール２０６は、図１Ａのロボットアーム１３２がパッケージ１１２を持ち上げるためのコマンドを（たとえば、通信するおよび／または実行することによって）実施する。たとえば、持ち上げモジュール２０６は、上述のように、パッケージ１１２の未登録インスタンスを持ち上げ検査距離だけ持ち上げるようにロボットアーム１３２を動作させることができる。より具体的には、例として、ロボットアーム１３２は、不明瞭なエッジのうちの少なくとも１つがセンサ１６２から見える場合に、グリッパシステム１４６によってパッケージ１１２のＭＶＲ内で把持することによって、パッケージ１１２を持ち上げることができる。換言すれば、未登録／未識別パッケージについて、持ち上げモジュール２０６は、ＭＶＲ上に直接／ＭＶＲの上方に／ＭＶＲに接するように、グリッパシステム１４６を配置するようにロボットアーム１３２を動作させることができる。結果として、持ち上げモジュール２０６は、１つまたは複数の不明瞭エッジがグリッパシステム１４６によって覆われず、センサ１６２に対して露出され／センサ１６２から見えるようにしながら、対応するパッケージを把持して持ち上げることができる。
【００６６】
[0090]  持ち上げモジュール２０６はいくつかの方法で動作することができる。たとえば、持ち上げモジュール２０６は、不明瞭エッジがセンサ１６２から見える場合にロボットアーム１３２がＭＶＲ内でパッケージ１１２を把持するための持ち上げコマンドを実行することができる。具体例としては、図４Ｄに示すように、ロボットアーム１３２は、図４Ｄの１１２−４４ｆ内で図４Ｄのパッケージ１１２−４４を持ち上げることができる。パッケージ１１２−４４のＳＩは、２つの明瞭エッジ１１２−４４ｂおよびコーナー１１２−４４ｃを含むことができる。パッケージ１１２−４４のＳＩは、２つの不明瞭エッジ１１２−４４ｄも含むことができる。図４Ｈに示すように、ロボットアーム１３２は、２つの不明瞭エッジ１１２−４４ｂがセンサ１６２から見える場合にパッケージ１１２−４４を把持することによって、パッケージ１１２−４４を持ち上げることができる。ＭＶＲを利用せずに、グリッパシステム１４６は、エッジがセンサ１６２によって検出できなくなる位置においてパッケージを把持してもよい。
【００６７】
[0091]  異なる例では、持ち上げモジュール２０６はパッケージ１１２の重さを決定することができる。より具体的には、例として、持ち上げモジュール２０６は、図１ＢのＦ−Ｔセンサ１４２を使用して、パッケージ１１２の未登録インスタンスの重さを決定することができる。持ち上げモジュール２０６はパッケージ１１２の重さを登録モジュール２１２に送信することができる。
【００６８】
[0092]  いくつかの実施形態では、キャプチャモジュール２０２はさらに、ＭＶＲ上で把持して持ち上げた後におよび／または持ち上げ中に、パッケージ１１２の未登録インスタンスのＳＩを第２の画像データとしてキャプチャすることができる。より具体的には、例として、キャプチャモジュール２０２は、図４Ｈの現在見えている２つの明瞭エッジ１１２−４４ｇを含むように、パッケージ１１２が持ち上げ検査距離だけ持ち上げられたことに基づいて、第２の画像データをキャプチャすることができる。換言すれば、持ち上げモジュール２０６は、パッケージ１１２を持ち上げることによって、最初は不明瞭であったエッジの視認性および／または明瞭性を向上させることができる。したがって、キャプチャモジュール２０２は、以前は不明瞭であったエッジを明瞭に識別／表示する、（たとえば、持ち上げられた状態／位置のパッケージ１１２についての）第２の画像データをキャプチャすることができる。キャプチャモジュール２０２は、第２の画像データを抽出モジュール２０８に送信することができる。
【００６９】
[0093]  ロボットシステム１００は抽出モジュール２０８を含むことができ、抽出モジュール２０８は持ち上げモジュール２０６に結合することができる。抽出モジュール２０８は第３の画像データを抽出する。たとえば、抽出モジュール２０８は、第１の画像データ、第２の画像データ、またはこれらの組み合わせに基づいて第３の画像データを抽出することができる。
【００７０】
[0094]  抽出モジュール２０８はいくつかの方法で第３の画像データを抽出することができる。たとえば、抽出モジュール２０８は、第１の画像データと第２の画像データとの比較に基づいて、画像差分を決定することができる。画像差分は、パッケージ１１２の未登録インスタンスの同一のインスタンスの第１の画像データと第２の画像データとの差分を表すことができる。
【００７１】
[0095]  より具体的には、例として、第１の画像データは、パッケージ１１２のデザインおよび／またはマーキングを有するＳＩを含むことができる。しかしながら、パッケージ１１２は未登録であるので、パッケージ１１２のエッジは不明瞭であるか、または明確に決定できない場合がある。したがって、第１の画像データは、不明瞭であるかまたは他のパッケージ１１２のＳＩと重なっているエッジを有するパッケージ１１２のＳＩを含むことができる。さらなる例では、第２の画像データは、持ち上げ検査距離だけ持ち上げられた後のパッケージ１１２のＳＩを含むことができる。より具体的には、例として、第２の画像データは、パッケージ１１２が持ち上げられた後に明瞭エッジ（たとえば、エッジ１１２−４４ｇ）になった、以前は不明瞭であったエッジ（たとえば、エッジ１１２−４４ｂ）を有するパッケージ１１２のＳＩを含むことができる。パッケージ１１２が持ち上げられた後、パッケージ１１２は他の隣接するパッケージ１１２から（たとえば、より高い高さに）分離されるので、不明瞭エッジは明瞭エッジになり得る。センサ１６２からの距離または深度は、持ち上げられているパッケージ１１２と、隣接するパッケージ１１２との間で異なり得るので、センサ１６２は異なるパッケージ１１２同士を区別することができる。
【００７２】
[0096]  抽出モジュール２０８は、第１の画像データと第２の画像データとの画像差分を組み合わせることに基づいて、第３の画像データを抽出することができる。たとえば、パッケージ１１２−４４の第１の画像データは、デザインおよび／またはマーキング、２つの明瞭エッジ１１２−４４ｂ、コーナー１１２−４４ｃ、またはこれらの組み合わせを含むことができる。さらなる例では、パッケージ１１２−４４の第２の画像データは２つの明瞭エッジ１２−４４ｇを含むことができる。抽出モジュール２０８は、デザインおよび／またはマーキング、２つの明瞭エッジ１１２−４４ｂ、コーナー１１２−４４ｃ、２つの明瞭エッジ１１２−４４ｇ、またはこれらの組み合わせを含めることによって、パッケージ１１２−４４の第３の画像データを抽出することができる。
【００７３】
[0097]  さらなる例では、抽出モジュール２０８は、第３の画像データに基づいて、パッケージ１１２の長さ、幅、またはこれらの組み合わせを決定することができる。より具体的には、例として、明瞭エッジに基づいて、抽出モジュール２０８は、長さ、幅、またはこれらの組み合わせを含む寸法を決定することができる。抽出モジュール２０８は、第３の画像データ、長さ、幅、またはこれらの組み合わせを登録モジュール２１２に送信することができる。
【００７４】
[0098]  第３の画像データを動的かつリアルタイムに抽出することによって、パッケージ１１２の未登録インスタンスを識別し把持するためのロボットシステム１００の性能および精度が向上する。第３の画像データを抽出することによって、ロボットシステム１００は、パッケージ１１２のエッジを識別して他のパッケージ１１２と区別することができる。パッケージ１１２の境界線／エッジを明瞭に識別することによって、ロボットシステム１００は、グリッパシステム１４６をパッケージ１１２上に効率的に配置して、パッケージ１１２を安全に把持し移動させることができる。結果として、ロボットシステム１００は、ロボットシステム１００に未登録のパッケージ１１２の移動を継続することによって、パッケージ１１２をデパレタイズするためのワークフローの効率を向上させることができる。
【００７５】
[0099]  例示の目的で、持ち上げモジュール２０６は、パッケージ１１２を持ち上げるためのコマンドを実行するように記載しているが、持ち上げモジュール２０６は異なって動作することができる。たとえば、持ち上げモジュール２０６は、パッケージ１１２を持ち上げることに基づいてＣｏＭを決定することができる。より具体的には、例として、持ち上げモジュール２０６は、パッケージ１１２がグリッパシステム１４６によって把持され持ち上げられるＭＶＲ内の位置がパッケージ１１２のＣｏＭ上か否かを判定することができる。さらなる例では、持ち上げモジュール２０６は、ＭＶＲとして表されるｘｙ軸内にＣｏＭがあるか否かを判定することができる。
【００７６】
[0100]  持ち上げモジュール２０６はいくつかの方法でＣｏＭを決定することができる。たとえば、持ち上げモジュール２０６は、上述のＦ−Ｔセンサ１４２によってＣｏＭを決定することができる。さらなる例では、持ち上げモジュール２０６は、Ｆ−Ｔセンサ１４２、ＣｏＭアルゴリズム、またはこれらの組み合わせによって、ＭＶＲとして表される表面エリアの下にＣｏＭがあるか否かを判定することができる。
【００７７】
[0101]  Ｆ−Ｔセンサ１４２およびＣｏＭアルゴリズムを使用して、持ち上げモジュール２０６は、パッケージ１１２においてグリッパと接触するまたはグリッパによって覆われるＭＶＲ内の位置／部分がＣｏＭと一致するまたはＣｏＭを含むか否かを判定することもできる。さらなる例では、持ち上げモジュール２０６は、元の把持位置がパッケージ１１２のＣｏＭの上でない場合、グリッパシステム１４６がパッケージ１１２を把持するためのＭＶＲ内の新たな位置を決定することができる。より具体的には、例として、持ち上げモジュール２０６は、上述のＣｏＭアルゴリズムを使用して、元の把持位置に対する新たな把持位置がＣｏＭの上にあると決定することができる。たとえば、持ち上げモジュール２０６は、測定されたトルクおよび／またはその方向に基づいて、ベクトル方向を計算することができる。トルクに基づいて、持ち上げモジュール２０６は、Ｆ−Ｔセンサ１４２および／またはグリッパシステム１４６に対して下向きの力の位置／方向を推定することができる。また、持ち上げモジュール２０６は、測定されたトルクの大きさ、持ち上げられたパッケージ１１２の測定された重さ、把持位置とパッケージ境界線／エッジとの間の関係、またはこれらの組み合わせに基づいて距離を計算することができる。持ち上げモジュール２０６は、新たな把持位置（たとえば、ベクトルの方向および距離）がＭＶＲにあるかをチェックすることができる。新たな位置がＣｏＭ上にある場合、持ち上げモジュール２０６はパッケージ１１２のＣｏＭが適切に決定されることを確認することができる。
【００７８】
[0102]  ＭＶＲ内の把持位置がＣｏＭでないと持ち上げモジュール２０６が決定した場合、持ち上げモジュール２０６は、グリッパシステム１４６がパッケージ１１２を持ち上げた位置までパッケージ１１２を下ろすまたは下げるためのコマンドを実行することができる。さらに、持ち上げモジュール２０６は、（たとえば、パッケージ１１２を下げて離し、グリッパシステム１４６を再び位置調整し、そしてパッケージ１１２を再び把持することによって）グリッパシステム１４６がＭＶＲ内の新たな位置においてパッケージ１１２を把持し、ロボットアーム１３２が持ち上げ検査距離だけパッケージ１１２を持ち上げるためのコマンドを実行することができる。さらなる例では、グリッパシステム１４６は、センサ１６２がパッケージ１１２の不明瞭エッジを検出するのを妨害せずに、ＭＶＲ内の新たな位置で把持することができる。持ち上げモジュール２０６は登録モジュール２１２に送信することができる。
【００７９】
[0103]  ロボットシステム１００がパッケージ１１２のＣｏＭを動的かつリアルタイムに決定することによって、ロボットシステム１００がパッケージ１１２の未登録インスタンスを移動させる性能が向上する。未登録／未認識パッケージのＣｏＭを正確に識別することによって、グリッパシステム１４６がパッケージ１１２を把持する安定性が向上する。結果として、ロボットシステム１００は、ロボットシステム１００に未登録のパッケージ１１２の移動を継続することによって、パッケージ１１２をデパレタイズするためのワークフローの効率を向上させることができる。
【００８０】
[0104]  例示の目的で、キャプチャモジュール２０２は第１の画像データ、第２の画像データ、またはこれらの組み合わせをキャプチャするように記載しているが、キャプチャモジュール２０２は異なって動作することができる。たとえば、キャプチャモジュール２０２は、上述のようにＣｏＭが正しく決定された後の、パッケージ１１２のＳＩを表す再把持後画像データをキャプチャすることができる。より具体的には、例として、ロボットアーム１３２は、グリッパシステム１４６がＭＶＲ内の新たな位置においてパッケージ１１２を把持した後に、パッケージ１１２を持ち上げることができる。キャプチャモジュール２０２は、ＭＶＲ内かつＣｏＭの上方の新たな位置において把持されたパッケージ１１２のＳＩを表す再把持後画像データをキャプチャすることができる。キャプチャモジュール２０２は、再把持後画像データを抽出モジュール２０８に送信することができる。
【００８１】
[0105]  例示の目的で、抽出モジュール２０８は、第１の画像データ、第２の画像データ、またはこれらの組み合わせに基づいて第３の画像データを抽出するように記載しているが、抽出モジュール２０８は異なって動作することができる。たとえば、上述のように、抽出モジュール２０８が第１の画像データ、第２の画像データ、またはこれらの組み合わせに基づいて第３の画像データを抽出するのと同様に、抽出モジュール２０８は、第１の画像データ、再把持後画像データ、またはこれらの組み合わせに基づいて第３の画像データを抽出することができる。抽出モジュール２０８は、上述のようにパッケージ１１２の長さ、幅、またはこれらの組み合わせを含む寸法を決定することができる。抽出モジュール２０８は第３の画像データ、長さ、幅、またはこれらの組み合わせを登録モジュール２１２に送信することができる。
【００８２】
[0106]  ロボットシステム１００は移動モジュール２１０を含むことができ、移動モジュール２１０は抽出モジュール２０８に結合することができる。移動モジュール２１０はパッケージ１１２を図１Ａの荷受台１２０に移動させるためのコマンドを実行する。たとえば、移動モジュール２１０は、ロボットアーム１３２がパッケージ１１２の登録済みまたは未登録インスタンスを荷受台１２０に移動させるためのコマンドを実行することができる。
【００８３】
[0107]  移動モジュール２１０はいくつかの方法でコマンドを実行することができる。たとえば、移動モジュール２１０は、パッケージ１１２の登録状況に基づいて、パッケージ１１２を移動させるためのコマンドを実行することができる。より具体的には、例として、パッケージ１１２についての登録レコード１７２が存在する場合、移動モジュール２１０は、ロボットアーム１３２がパッケージ１１２の登録済みインスタンスを把持して、パッケージ１１２を移動させて荷受台１２０に置くためのコマンドを実行することができる。
【００８４】
[0108]  異なる例では、登録レコード１７２が存在しない場合、パッケージ１１２の第３の画像データが上述のように抽出される。その上、移動モジュール２１０は、ロボットアーム１３２がパッケージ１１２の未登録インスタンスを把持してパッケージ１１２を荷受台１２０に移動させるためのコマンドを実行することができる。さらなる例では、ロボットアーム１３２がパッケージ１１２を荷受台１２０まで下げた場合、パッケージ１１２の底面限度（ｂｏｔｔｏｍ  ｅｘｔｅｎｔ）によって、図１ＡのＨＤＳ１８０をトリガすることができる。
【００８５】
[0109]  荷受台１２０の高さを事前定義することができる場合、床に対するＨＤＳ１８０の高さを事前定義することができる。移動モジュール２１０は、パッケージ１１２の底部がＨＤＳ１８０と交差した時刻と、グリッパシステム１４６の高さとに基づいて、パッケージ１１２の高さを決定することができる。より具体的には、例として、移動モジュール２１０は、信号（すなわち、パッケージ１１２がＨＤＳ１８０と交差したことを表すもの）が受信されたときのグリッパシステム１４６の位置または高さと、ＨＤＳ１８０の事前定義された高さとの間の距離／差分に基づいて、パッケージ１１２の高さを決定することができる。移動モジュール２１０は、パッケージ１１２の高さを登録モジュール２１２に送信することができる。
【００８６】
[0110]  ロボットシステム１００がパッケージ１１２の未登録インスタンスの高さを動的かつリアルタイムに決定することによって、ロボットシステム１００がパッケージ１１２をデパレタイズする性能が向上する。未登録／未認識パッケージの高さを決定することによって、ロボットシステム１００は、パッケージを安全に把持するためのパッケージ１１２の属性を正確に識別することができる。結果として、ロボットシステム１００は、同一のタイプのパッケージ１１２を継続的に移動させることによって、パッケージ１１２をデパレタイズするワークフローの効率を向上させることができる。
【００８７】
[0111]  ロボットシステム１００は登録モジュール２１２を含むことができ、登録モジュール２１２は移動モジュール２１０に結合することができる。登録モジュール２１２はパッケージ１１２の属性を登録する。たとえば、登録モジュール２１２は、パッケージ１１２の未登録インスタンスの第３の画像データ、長さ、幅、高さ、重さ、ＣｏＭ、またはこれらの組み合わせを（たとえば、結び付けるまたは一緒に記憶することによって）登録することができる。より具体的には、例として、登録モジュール２１２は、登録レコード１７２を生成して、パッケージ１１２の未登録インスタンスをパッケージ１１２の登録済みインスタンスに変換する。
【００８８】
[0112]  上述の方法のステップは、コンピュータ命令コードとして非一時的コンピュータ可読媒体に記憶されたコンピュータ可読媒体内に具現化されてもよいことに留意されたい。この方法は本明細書に記載のステップのうちの１つまたは複数を含んでもよく、その１つまたは複数のステップは、互いと同時に実施されることを含む、任意の所望の順序で実行されてもよい。たとえば、本明細書で開示したステップのうちの２つ以上が単一のステップにおいて組み合わせられてもよく、および／またはステップのうちの１つまたは複数が２つ以上のサブステップとして実施されてもよい。さらに、本開示の利益を有する当業者によって理解されるように、本明細書において明示的に開示していないまたは元々存在しないステップが、本明細書に記載のステップに組み入れられても追加されてもよく、本明細書に記載のステップのうちの１つまたは複数と置き換えられてもよい。
【００８９】
[0113]  開示した技術の実施例の上記の詳細な説明は、網羅的であることも、上記で開示した厳密な形に開示した技術を限定することも意図していない。開示した技術の具体例を例示の目的で上述しているが、当業者であれば認識するように、様々な等価な変形例が開示した技術の範囲内で可能である。たとえば、処理またはモジュールは所与の順序で与えているが、代替的な実施態様は異なる順序のステップを有するルーチンを実行してもよく、異なる順序のモジュールを有するシステムを採用してもよく、一部の処理またはモジュールを削除、移動、追加、細分化、結合、および／または修正して代替的または副次的な組み合わせを提供してもよい。これらの処理またはモジュールのそれぞれは、種々の異なる方法で実装されてもよい。また、処理またはモジュールは連続して実行されるものとして示す場合があるが、これらの処理またはモジュールは代わりに並列に実行または実施されてもよく、異なる時刻に実行されてもよい。さらに、本明細書に記載の任意の特定の数字は例にすぎず、代替的な実施態様は異なる値または範囲を採用してもよい。
【００９０】
[0114]  本明細書で使用する場合、「実施形態」という用語は、限定ではなく例として説明するのに役立つ実施形態を意味する。先述の実施例および実施形態は例示的なものであって、本明細書で開示した広範囲の発明概念を限定するものではないことは当業者には理解されよう。本明細書を読み、図面を検討すれば当業者にとって明らかになる全ての修正、並べ替え、拡張、均等物、およびこれらの改良は、本明細書で開示した広範囲の発明概念に含まれるものとする。したがって、以下の特許請求の範囲は、本明細書で開示した広範囲の発明概念に含まれる全てのそのような修正、並べ替え、拡張、均等物、および改良を含むものとする。
【図１Ａ】
2020069636.tif 000003
【図１Ｂ】
2020069636.tif 000004
【図２Ａ】
2020069636.tif 000005
【図２Ｂ】
2020069636.tif 000006
【図３Ａ】
2020069636.tif 000007
【図３Ｂ】
2020069636.tif 000008
【図３Ｃ】
2020069636.tif 000009
【図４Ａ】
2020069636.tif 000010
【図４Ｂ】
2020069636.tif 000011
【図４Ｃ】
2020069636.tif 000012
【図４Ｄ】
2020069636.tif 000013
【図４Ｅ】
2020069636.tif 000014
【図４Ｆ】
2020069636.tif 000015
【図４Ｇ】
2020069636.tif 000016
【図４Ｈ】
2020069636.tif 000017
【図４Ｉ】
2020069636.tif 000018
【図４Ｊ】
2020069636.tif 000019
【図４Ｋ】
2020069636.tif 000020
【図４Ｌ】
2020069636.tif 000021
【図４Ｍ】
2020069636.tif 000022
【図４Ｎ】
2020069636.tif 000023
【図４Ｏ】
2020069636.tif 000024
【図４Ｐ】
2020069636.tif 000025
【図４Ｑ】
2020069636.tif 000026
【図５】
2020069636.tif 000027
【手続補正書】
【提出日】令和1年9月2日(2019.9.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ロボットによるパッケージハンドリング作業中にパッケージを登録するための方法であって、
パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定することと、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別することであって、前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成する、前記識別することと、
前記エッジのペアに基づいて最小実行可能領域を決定することであって、前記最小実行可能領域は前記エッジのペアの一方または両方と重なるおよび／または一致する、前記決定することと、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および、（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成することと、
前記持ち上げ後の前記パッケージを表す第２の画像データを受信することと、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定することと、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
前記第１の画像データに基づいて不明瞭エッジを推定することであって、前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応する、前記推定すること、
を含み、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
前記方法。
【請求項２】
前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別することであって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、前記識別すること、
をさらに含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１に記載の方法。
【請求項３】
前記１つまたは複数の新たなエッジを識別することは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別することを含む、請求項２に記載の方法。
【請求項４】
前記第３の画像データを決定することは、
前記第１の画像データと前記第２の画像データとの差を計算することと、
前記第１の画像データを前記計算された差と組み合わせることと、
を含む、請求項１に記載の方法。
【請求項５】
前記第１の画像データに基づいて直線を識別すること、
をさらに含み、
前記最小実行可能領域は、前記直線を除外した連続する領域である、
請求項１に記載の方法。
【請求項６】
垂直方向に沿った前記パッケージの寸法を表す高さを計算すること、
をさらに含み、
前記登録データは前記計算された高さを含む、
請求項１に記載の方法。
【請求項７】
前記高さを計算することは、
前記パッケージが、既知の高さに配置された高さ決定センサに関連付けられた水平検出面と交差するタイミングを表すトリガを検出することと、
前記トリガに関連付けられた垂直位置を決定することであって、前記垂直位置は、前記パッケージが前記水平検出面と交差するタイミングにおける前記エンドエフェクタの垂直位置を表す、前記決定することと、
前記既知の高さと前記垂直位置との差に基づいて前記高さを計算することと、
を含む、請求項６に記載の方法。
【請求項８】
前記パッケージを持ち上げた後にデータを受信することであって、前記データは前記エンドエフェクタに接続または統合されたＦ−Ｔセンサからの力測定値を表す、前記受信することと、
前記受信されたデータに基づいて前記パッケージの重さを決定することと、
をさらに含み、
前記登録データは前記決定された重さを含む、
請求項１に記載の方法。
【請求項９】
前記パッケージを持ち上げた後にデータを受信することであって、前記データは前記エンドエフェクタに接続または統合されたＦ−Ｔセンサからのトルク測定値を表す、前記受信することと、
前記受信されたデータに基づいて前記パッケージの重心位置を決定することと、
をさらに含み、
前記登録データは前記重心位置を含む、
請求項１に記載の方法。
【請求項１０】
ロボットによるパッケージハンドリング作業中に未登録パッケージを登録するためのシステムであって、
少なくとも１つのプロセッサと、
前記少なくとも１つのプロセッサに結合された少なくとも１つのメモリであって、前記少なくとも１つのプロセッサによって実行可能な命令を含み、前記命令は、
パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定することと、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別することとであって、前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成する、前記識別することと、
前記エッジのペアに基づいて最小実行可能領域を決定することであって、前記最小実行可能領域は前記エッジのペアの一方または両方と重なるおよび／または一致する、前記決定することと、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成することと、
前記パッケージの第２の画像データを受信することであって、前記第２の画像データは前記持ち上げ後の前記パッケージを表す、前記受信することと、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定することと、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
前記第１の画像データに基づいて不明瞭エッジを推定することであって、前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応する、前記推定すること、
を行う、前記少なくとも１つのメモリと
を備え、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
前記システム。
【請求項１１】
前記少なくとも１つのメモリは、
前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別することであって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、前記識別すること、
を行う命令を含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１０に記載のシステム。
【請求項１２】
前記少なくとも１つのメモリは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別すること、
を行う命令を含む、請求項１１に記載のシステム。
【請求項１３】
前記少なくとも１つのメモリは、前記第３の画像データを決定することを、
前記第１の画像データと前記第２の画像データとの差を計算することと、
前記第１の画像データを前記計算された差と組み合わせることと
に基づいて行う命令を含む、請求項１０に記載のシステム。
【請求項１４】
コンピューティングシステムによって実行された場合に、前記コンピューティングシステムにコンピュータ実施方法を実行させるコンピュータ実行可能命令を記憶する非一時的メモリ媒体であって、前記命令は、
パッケージ表面の第１の表面画像を表す第１の画像データを受信する命令と、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定する命令と、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別する命令であって、前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成する、識別する前記命令と、
前記エッジのペアに基づいて最小実行可能領域を決定する命令であって、前記最小実行可能領域は前記エッジのペアの一方または両方と重なるおよび／または一致する、決定する前記命令と、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および、（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成する命令と、
前記パッケージの第２の画像データを受信する命令であって、前記第２の画像データは前記持ち上げ後の前記パッケージを表す、受信する前記命令と、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定する命令と、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成する命令と、
前記第１の画像データに基づいて不明瞭エッジを推定する命令であって、前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応する、推定する前記命令と、
を含み、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
前記非一時的メモリ媒体。
【請求項１５】
前記命令は、前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別する命令であって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、識別する前記命令をさらに含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１４に記載の非一時的メモリ媒体。
【請求項１６】
前記１つまたは複数の新たなエッジを識別する前記命令は、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別する命令を含む、請求項１５に記載の非一時的メモリ媒体。
【請求項１７】
前記第３の画像データを決定する前記命令は、
前記第１の画像データと前記第２の画像データとの差を計算し、
前記第１の画像データを前記計算された差と組み合わせる、
命令を含む、請求項１０に記載のシステム。
【手続補正書】
【提出日】令和1年12月18日(2019.12.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ロボットによるパッケージハンドリング作業中にパッケージを登録するための方法であって、
パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定することと、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別することと、
前記エッジのペアに基づいて最小実行可能領域を決定することであって、前記最小実行可能領域は前記エッジのペアを構成するエッジの一方または両方と重なるおよび／または一致する、前記決定することと、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および、（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成することと、
前記持ち上げ後の前記パッケージを表す第２の画像データを受信することと、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定することと、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
前記第１の画像データに基づいて不明瞭エッジを推定することと、
を含み、
前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成し、
前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応し、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
前記方法。
【請求項２】
前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別することであって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、前記識別すること、
をさらに含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１に記載の方法。
【請求項３】
前記１つまたは複数の新たなエッジを識別することは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別することを含む、請求項２に記載の方法。
【請求項４】
前記第３の画像データを決定することは、
前記第１の画像データと前記第２の画像データとの差を計算することと、
前記第１の画像データを前記計算された差と組み合わせることと、
を含む、請求項１に記載の方法。
【請求項５】
前記第１の画像データに基づいて直線を識別すること、
をさらに含み、
前記最小実行可能領域は、前記直線を除外した連続する領域である、
請求項１に記載の方法。
【請求項６】
垂直方向に沿った前記パッケージの寸法を表す高さを計算すること、
をさらに含み、
前記登録データは前記計算された高さを含む、
請求項１に記載の方法。
【請求項７】
前記高さを計算することは、
前記パッケージが、既知の高さに配置された高さ決定センサに関連付けられた水平検出面と交差するタイミングを表すトリガを検出することと、
前記トリガに関連付けられた垂直位置を決定することと、
前記既知の高さと前記垂直位置との差に基づいて前記高さを計算することと、
を含み、
前記垂直位置は、前記パッケージが前記水平検出面と交差するタイミングにおける前記エンドエフェクタの垂直位置を表す、
請求項６に記載の方法。
【請求項８】
前記パッケージを持ち上げた後にデータを受信することと、
前記受信されたデータに基づいて前記パッケージの重さを決定することと、
をさらに含み、
前記データは前記エンドエフェクタに接続または統合されたＦ−Ｔセンサからの力測定値を表し、
前記登録データは前記決定された重さを含む、
請求項１に記載の方法。
【請求項９】
前記パッケージを持ち上げた後にデータを受信することであって、前記データは前記エンドエフェクタに接続または統合されたＦ−Ｔセンサからのトルク測定値を表す、前記受信することと、
前記受信されたデータに基づいて前記パッケージの重心位置を決定することと、
をさらに含み、
前記登録データは前記重心位置を含む、
請求項１に記載の方法。
【請求項１０】
ロボットによるパッケージハンドリング作業中に未登録パッケージを登録するためのシステムであって、
少なくとも１つのプロセッサと、
前記少なくとも１つのプロセッサに結合された少なくとも１つのメモリであって、前記少なくとも１つのプロセッサによって実行可能な命令を含み、前記命令は、
パッケージ表面の第１の表面画像を表す第１の画像データを受信することと、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定することと、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別することと、
前記エッジのペアに基づいて最小実行可能領域を決定することであって、前記最小実行可能領域は前記エッジのペアを構成するエッジの一方または両方と重なるおよび／または一致する、前記決定することと、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成することと、
前記パッケージの第２の画像データを受信することであって、前記第２の画像データは前記持ち上げ後の前記パッケージを表す、前記受信することと、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定することと、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成することと、
前記第１の画像データに基づいて不明瞭エッジを推定することと、
を行う、前記少なくとも１つのメモリと
を備え、
前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成し、
前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応し、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
前記システム。
【請求項１１】
前記少なくとも１つのメモリは、
前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別することであって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、前記識別すること、
を行う命令を含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１０に記載のシステム。
【請求項１２】
前記少なくとも１つのメモリは、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別すること、
を行う命令を含む、請求項１１に記載のシステム。
【請求項１３】
前記少なくとも１つのメモリは、前記第３の画像データを決定することを、
前記第１の画像データと前記第２の画像データとの差を計算することと、
前記第１の画像データを前記計算された差と組み合わせることと
に基づいて行う命令を含む、請求項１０に記載のシステム。
【請求項１４】
コンピューティングシステムによって実行された場合に、前記コンピューティングシステムにコンピュータ実施方法を実行させるコンピュータ実行可能命令を記憶する非一時的メモリ媒体であって、前記命令は、
パッケージ表面の第１の表面画像を表す第１の画像データを受信する命令と、
前記第１の表面画像と登録レコードとの比較に基づいて、前記パッケージが未登録であると決定する命令と、
前記第１の画像データに基づいて前記パッケージ表面についてのエッジのペアを識別する命令と、
前記エッジのペアに基づいて最小実行可能領域を決定する命令であって、前記最小実行可能領域は前記エッジのペアを構成するエッジの一方または両方と重なるおよび／または一致する、決定する前記命令と、
（１）前記最小実行可能領域上に位置付けられたエンドエフェクタによって前記パッケージを把持すること、および、（２）前記パッケージを持ち上げることのための、１つまたは複数のコマンドを生成する命令と、
前記パッケージの第２の画像データを受信する命令であって、前記第２の画像データは前記持ち上げ後の前記パッケージを表す、受信する前記命令と、
前記第１の画像データおよび前記第２の画像データに応じて第３の画像データを決定する命令と、
引き続き他のパッケージを識別するために、前記第３の画像データに基づいて前記パッケージの新たな登録レコードを表す登録データを生成する命令と、
前記第１の画像データに基づいて不明瞭エッジを推定する命令と、
を含み、
前記エッジのペアは水平方向に露出しており、互いに交差して前記パッケージ表面のコーナーを形成し、
前記エッジのペアおよび前記不明瞭エッジは前記パッケージ表面の境界線に対応し、
前記推定された不明瞭エッジに対応する前記パッケージの露出部分を残しながら前記パッケージを把持するために、前記最小実行可能領域は前記不明瞭エッジと重ならない、
前記非一時的メモリ媒体。
【請求項１５】
前記命令は、前記第２の画像データに基づいて１つまたは複数の新たなエッジを識別する命令であって、前記新たなエッジは、前記推定された不明瞭エッジに対応する前記パッケージの実際の露出したエッジを表す、識別する前記命令をさらに含み、
前記第３の画像データは前記１つまたは複数の新たなエッジを含む、
請求項１４に記載の非一時的メモリ媒体。
【請求項１６】
前記１つまたは複数の新たなエッジを識別する前記命令は、前記パッケージを持ち上げた後に測定された深度データの差に基づいて前記１つまたは複数の新たなエッジを識別する命令を含む、請求項１５に記載の非一時的メモリ媒体。
【請求項１７】
前記第３の画像データを決定する前記命令は、
前記第１の画像データと前記第２の画像データとの差を計算し、
前記第１の画像データを前記計算された差と組み合わせる、
命令を含む、請求項１０に記載のシステム。
【外国語明細書】
2020069636000001.pdf