(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-11-15
(54)【発明の名称】画像ピクセルを保管システムにおけるグリッドポイントにマッピングするためにカメラを較正すること
(51)【国際特許分類】
G06T 7/70 20170101AFI20241108BHJP
G06V 10/82 20220101ALI20241108BHJP
G06T 7/00 20170101ALI20241108BHJP
H04N 23/60 20230101ALI20241108BHJP
【FI】
G06T7/70 Z
G06V10/82
G06T7/00 350C
H04N23/60 500
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024531343
(86)(22)【出願日】2022-11-25
(85)【翻訳文提出日】2024-07-19
(86)【国際出願番号】 EP2022083366
(87)【国際公開番号】W WO2023094635
(87)【国際公開日】2023-06-01
(32)【優先日】2021-11-26
(33)【優先権主張国・地域又は機関】GB
(81)【指定国・地域】
(71)【出願人】
【識別番号】515134368
【氏名又は名称】オカド・イノベーション・リミテッド
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】ツゥイ、シャオカイ
(72)【発明者】
【氏名】ピアマン、クリストファー
(72)【発明者】
【氏名】シューハルト、ジョナサン
【テーマコード(参考)】
5C122
5L096
【Fターム(参考)】
5C122EA58
5C122FH11
5C122HA35
5C122HA48
5C122HB01
5C122HB10
5L096CA02
5L096DA02
5L096EA14
5L096EA16
5L096EA27
5L096EA28
5L096FA62
5L096FA64
5L096FA67
5L096FA69
5L096HA11
5L096KA04
(57)【要約】
保管システムのグリッドの上に配設された広角または超広角カメラを較正するための方法およびシステム。グリッドセクションの画像とカメラに対応する複数のパラメータの初期値とが取得される。上記画像は、上記画像中にキャプチャされた、平行なトラックのセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックのセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理される。モデル中の選択されたピクセルが、複数のパラメータに基づくマッピングを使用して、グリッド上の対応するポイントにマッピングされ、初期値は、マッピングへの入力として使用される。誤差関数が、ポイントのマッピングされたグリッド座標と知られているグリッド座標との間の不一致に基づいて決定される。パラメータの初期値は、誤差関数に基づいて更新され、更新された値は、カメラによってキャプチャされたグリッドセクションの画像中のピクセルを、保管システムのグリッド上の対応するポイントにマッピングするために記憶される。
【特許請求の範囲】
【請求項1】
保管システムのグリッドの上に配設された広角または超広角カメラを較正する方法であって、前記グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において前記第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、
前記グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内で前記トラックの下にスタックされたコンテナを取り扱うために、前記トラック上で前記X方向または前記Y方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置され、
前記方法は、
前記カメラによってキャプチャされた前記グリッドのグリッドセクションの画像を取得することと、
前記カメラに対応する複数のパラメータの初期値を取得することと、前記複数のパラメータが、前記カメラの焦点距離と、前記グリッドセクションの上の前記カメラの位置を表現する並進ベクトルと、前記カメラの傾きおよび回転を表現する回転ベクトルとを含む、
前記画像を、前記グリッドセクションの前記画像中にキャプチャされた、平行なトラックの前記第1のセットおよび前記第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの前記第1のセットおよび前記第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、
前記複数のパラメータに基づくマッピングを使用して、前記モデル中の選択されたピクセルを、前記グリッド上の対応するポイントにマッピングすることと、ここにおいて、前記初期値が、前記マッピングへの入力として使用される、
前記マッピングによって決定された前記ポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、
前記誤差関数に基づいて、前記初期値を前記複数のパラメータの更新された値に更新することと、
前記マッピングを介して、前記カメラによってキャプチャされた前記グリッドセクションの画像中のピクセルを、前記保管システムの前記グリッド上の対応するポイントにマッピングするために、前記複数のパラメータの前記更新された値を記憶することと
を備える、方法。
【請求項2】
前記複数のパラメータの前記初期値を更新することが、ブロイデン-フレッチャー-ゴールドファーブ-シャンノアルゴリズムを適用することを備える、請求項1に記載の方法。
【請求項3】
前記誤差関数を反復的に決定することと、さらに、前記誤差関数が所定のしきい値未満だけ低減されるまで、前記複数のパラメータの前記更新された値を更新することとを備える、請求項1または2に記載の方法。
【請求項4】
前記複数のパラメータについてのそれぞれの境界値が、前記複数のパラメータのそれぞれの値を更新するときに適用される、請求項1から3のいずれかに記載の方法。
【請求項5】
前記回転ベクトルに関連する回転角についての前記境界値が、実質的に0度および実質的に+5度である、請求項4に記載の方法。
【請求項6】
前記並進ベクトルの平面成分についての前記境界値が、グリッドセルの長さの±0.6である、請求項4または5に記載の方法。
【請求項7】
前記並進ベクトルの高さ成分についての前記境界値が、前記グリッドの1800mmおよび2100mm上である、請求項4から6のいずれか一項に記載の方法。
【請求項8】
前記焦点距離についての前記境界値が、0.23および0.26cmである、請求項4から7のいずれか一項に記載の方法。
【請求項9】
前記記憶することが、前記カメラに関連する保管ロケーションにおいて、データベース中に、前記更新された値を記憶することを備える、請求項1から8のいずれかに記載の方法。
【請求項10】
前記画像を、前記画像中の前記グリッドセクションのグリッドセル中にあるグリッドセルマーカーを検出するために、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた物体検出モデルを使用して、処理することと、
前記グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することと、
前記抽出されたセル座標データに基づいて、前記グリッド上のポイントへの前記画像中のピクセルの前記マッピングによって生成された、グリッド座標を較正することと
を備える、請求項1から9のいずれかに記載の方法。
【請求項11】
平行なトラックの前記第1のセットおよび前記第2のセットの中心線のみを表現するように前記グリッドセクションの前記モデルを改良することを備え、前記改良することが、水平線および垂直線検出カーネルで前記モデルをフィルタ処理することを備える、請求項1から10のいずれかに記載の方法。
【請求項12】
前記フィルタ処理することが、前記水平線および垂直線検出カーネルを使用して前記モデルのピクセル値を収縮させることと膨張させることとのうちの少なくとも1つを備える、請求項11に記載の方法。
【請求項13】
2次中心線を作り出すために前記中心線をそれぞれの2次軌道に適合させることと、
前記モデルを生成するために前記2次中心線からピクセルのランダムサブセットを抽出することと
を備える、請求項11または12に記載の方法。
【請求項14】
前記マッピングが、前記画像中の所与のピクセルと前記グリッド上の対応するポイントとについて、
前記画像中の前記ピクセルの画像座標に基づいて、前記対応するポイントの第2のデカルト座標を決定することと、
前記第2のデカルト座標を第2の極座標にコンバートすることと、
第1の極座標を生成するために前記第2の極座標に逆ひずみモデルを適用することと、
前記第1の極座標を前記ポイントの第1のデカルト座標にコンバートすることと、
前記ポイントを、前記カメラに対応する第2の平面におけるデカルト座標系から整合解除することと、
前記グリッドに対する前記ポイントのグリッド座標を決定するために、前記第2の平面から前記グリッドに対応する第1の平面上に前記ポイントを投影することと
を備える、請求項1から13のいずれかに記載の方法。
【請求項15】
前記逆ひずみモデルが、
【数1】
によって与えられるひずみのタンジェントモデルに基づき、
ここにおいて、r’が前記ポイントのひずんだ半径方向座標であり、rが前記ポイントのひずんでいない半径方向座標であり、fが前記カメラの前記焦点距離である、
請求項14に記載の方法。
【請求項16】
前記第2のデカルト座標を決定することが、前記画像座標をセンタリングすることまたは正規化することのうちの少なくとも1つを含む、前記画像中の前記ピクセルを初期化することを備える、請求項14または15に記載の方法。
【請求項17】
前記第2のデカルト座標を決定することが、前記画像座標の縦座標を反転させることを備える、請求項14から16のいずれか一項に記載の方法。
【請求項18】
前記ポイントを前記デカルト座標系から整合解除することが、前記ポイントを前記画像中の前記グリッドの配向と整合させるために、前記ポイントに回転変換を適用することを備える、請求項14から17のいずれか一項に記載の方法。
【請求項19】
前記グリッドに対応する前記第1の平面上に前記ポイントを投影することが、
【数2】
を算出することを備え、
ここにおいて、
【数3】
であり、
ここにおいて、pが、前記グリッドに対応する前記第1の平面におけるポイント座標を備え、fが前記カメラの前記焦点距離であり、tが平面並進ベクトルであり、qが前記第2の平面における前記第1のデカルト座標を備え、zが前記カメラと前記グリッドとの間の距離であり、Rが、回転ベクトルに関係する3次元回転行列である、
請求項14から18のいずれか一項に記載の方法。
【請求項20】
保管システムのグリッドの上に配設された広角または超広角カメラを較正するための較正システムであって、前記グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において前記第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、
前記グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内で前記トラックの下にスタックされたコンテナを取り扱うために、前記トラック上で前記X方向または前記Y方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置され、
前記較正システムは、
前記カメラによってキャプチャされた前記グリッドのグリッドセクションの画像を取得することと、前記カメラに対応する複数のパラメータの初期値を取得することと、前記複数のパラメータが、前記カメラの焦点距離と、前記グリッドセクションの上の前記カメラの位置を表現する並進ベクトルと、前記カメラの傾きおよび回転を表現する回転ベクトルとを含む、を行うための少なくとも1つのインターフェースと、
前記画像を、前記グリッドセクションの前記画像中にキャプチャされた、平行なトラックの前記第1のセットおよび前記第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの前記第1のセットおよび前記第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、
前記複数のパラメータに基づくマッピングを使用して、前記モデル中のピクセルを、前記グリッド上の対応するポイントにマッピングすることと、ここにおいて、前記初期値が、前記マッピングへの入力として使用される、
前記マッピングによって決定された前記ポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、
前記誤差関数に基づいて、前記初期値を前記複数のパラメータの更新された値に更新することと、
前記マッピングを介して、前記カメラによってキャプチャされた前記グリッドセクションの画像中のピクセルを、前記保管システムの前記グリッド上の対応するポイントにマッピングするために、前記複数のパラメータの前記更新された値をストレージに出力することと
を行うように構成された、少なくとも1つのプロセッサと
を備える、較正システム。
【請求項21】
前記少なくとも1つのプロセッサが、
前記画像を、前記画像中の前記グリッドセクションのグリッドセル中にあるグリッドセルマーカーを検出するために、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた物体検出モデルを使用して、処理することと、
前記グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することと、
前記抽出されたセル座標データに基づいて、前記グリッド上のポイントへの前記画像中のピクセルの前記マッピングによって生成された、グリッド座標を較正することと
を行うように構成された、請求項20に記載の較正システム。
【請求項22】
前記グリッドセルマーカーが、サインボードを備え、前記セル座標データが、前記サインボード上にマークされる、請求項21に記載の較正システム。
【請求項23】
前記マッピングが、前記画像中の所与のピクセルと前記グリッド上の対応するポイントとについて、
前記画像中の前記ピクセルの画像座標に基づいて、前記対応するポイントの第2のデカルト座標を決定することと、
前記第2のデカルト座標を第2の極座標にコンバートすることと、
第1の極座標を生成するために前記第2の極座標に逆ひずみモデルを適用することと、
前記第1の極座標を前記ポイントの第1のデカルト座標にコンバートすることと、
前記ポイントを、前記カメラに対応する第2の平面におけるデカルト座標系から整合解除することと、
前記グリッドに対する前記ポイントのグリッド座標を決定するために、前記第2の平面から前記グリッドに対応する第1の平面上に前記ポイントを投影することと
を備える、請求項20から22のいずれか一項に記載の較正システム。
【請求項24】
前記逆ひずみモデルが、
【数4】
によって与えられるひずみのタンジェントモデルに基づき、
ここにおいて、r’が前記ポイントのひずんだ半径方向座標であり、rが前記ポイントのひずんでいない半径方向座標であり、fが前記カメラの前記焦点距離である、
請求項23に記載の較正システム。
【請求項25】
前記ニューラルネットワークが、畳み込みニューラルネットワークを備える、請求項20から24のいずれかに記載の較正システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、ビンまたはコンテナのスタックがグリッドフレームワーク構造内に配置された、保管またはフルフィルメントシステムの分野に関し、より詳細には、グリッドフレームワーク構造の上に配設された広角または超広角カメラを較正することに関する。
【背景技術】
【0002】
オンライン食料雑貨店およびスーパーマーケットなど、複数の製品ラインを販売するオンライン小売ビジネスは、数十または数十万もの異なる製品ラインを保管することができるシステムを必要とする。そのような場合、単一製品のスタックの使用は、必要とされるスタックのすべてを収容するために莫大な床面積が必要とされることになるので、実際的でないことがある。さらに、腐りやすいものまたはまれに注文される商品など、少量のいくつかのアイテムを保管することが望ましいことがあり、これは、単一製品のスタックを非効率的なソリューションにする。
【0003】
その内容が参照により本明細書に組み込まれる、国際特許出願第WO98/049076A号(Autostore)は、コンテナの複数製品のスタックがフレーム構造内に配置されるシステムについて説明する。
【0004】
PCT公開番号第WO2015/185628A号(Ocado)は、コンテナのスタックがグリッドフレームワーク構造内に配置される、さらなる知られている保管およびフルフィルメントシステムについて説明する。コンテナは、グリッドフレームワーク構造の上部にあるトラック上で動作可能な、場合によっては「ボット」として知られる、1つまたは複数の積荷取扱デバイス(load handling device)によってアクセスされる。このタイプのシステムが、添付の図面の
図1~
図3に概略的に示されている。
【0005】
図1および
図2に示されているように、「ビン」としても知られる、スタック可能なコンテナ10が、互いの上部にスタックされて、スタック12を形成する。スタック12は、たとえば、倉庫保管環境または製造環境において、グリッドフレームワーク構造14において配置される。グリッドフレームワーク構造14は、複数の保管列またはグリッド列からなる。グリッドフレームワーク構造における各グリッドが、コンテナのスタックを保管するための少なくとも1つのグリッド列を有する。
図1は、グリッドフレームワーク構造14の概略斜視図であり、
図2は、フレームワーク構造14内に配置されたビン10のスタック12を示す概略トップダウン図である。各ビン10が、一般に、複数の製品アイテム(図示せず)を保持する。ビン10内の製品アイテムは、適用例に応じて、同等のまたは異なる製品タイプであり得る。
【0006】
グリッドフレームワーク構造14は、水平部材18、20を支持する複数の直立部材16を備える。平行な水平グリッド部材18の第1のセットが、直立部材16によって支持された水平グリッド構造15を形成するように、平行な水平部材20の第2のセットに直角に、グリッドパターンにおいて配置される。部材16、18、20は、一般に金属から製造される。ビン10は、グリッドフレームワーク構造14が、ビン10のスタック12の水平移動に対してガードし、ビン10の垂直移動を誘導するように、グリッドフレームワーク構造14の部材16、18、20の間にスタックされる。
【0007】
グリッドフレームワーク構造14の最上レベルは、スタック12の上部にわたってグリッドパターンにおいて配置されたレール22を含む、グリッドまたはグリッド構造15を備える。
図3を参照すると、レールまたはトラック22は、複数の積荷取扱デバイス30を誘導する。平行なレール22の第1のセット22aが、グリッドフレームワーク構造14の上部にわたって、第1の方向(たとえば、X方向)においてロボット積荷取扱デバイス30の移動を誘導する。第1のセット22aに直角に配置された、平行なレール22の第2のセット22bが、第1の方向に直角な、第2の方向(たとえば、Y方向)において積荷取扱デバイス30の移動を誘導する。このようにして、レール22は、ロボット積荷取扱デバイス30が、水平X-Y平面における2つの次元において横方向に移動することを可能にする。積荷取扱デバイス30は、スタック12のいずれかの上の位置に移動され得る。
【0008】
図4、
図5、
図6Aおよび
図6Bに示されている、積荷取扱デバイス30の知られている形態が、参照により本明細書に組み込まれる、PCT特許公報第WO2015/019055号(Ocado)において説明され、各積荷取扱デバイス30が、グリッドフレームワーク構造14の単一のグリッド空間17をカバーする。この構成は、積荷ハンドラのより高い密度、したがって、所与のサイズの保管システムについてのより高いスループットを可能にする。
【0009】
例示的な積荷取扱デバイス30は車両32を備え、車両32は、フレーム構造14のレール22上で進むように配置される。車両32の前面におけるホイール34のペアと車両32の背面におけるホイール34のペアとからなる、ホイール34の第1のセットが、レール22の第1のセット22aの2つの隣接するレールと係合するように配置される。同様に、車両32の各側におけるホイール36のペアからなる、ホイール36の第2のセットが、レール22の第2のセット22bの2つの隣接するレールと係合するように配置される。積荷取扱デバイス30の移動中いつでも、ホイール34の第1のセットまたはホイール36の第2のセットのいずれかがレールのそれぞれのセット22a、22bと係合されるように、ホイール34、36の各セットが持ち上げられおよび降ろされ得る。たとえば、ホイール34の第1のセットがレールの第1のセット22aと係合され、ホイール36の第2のセットがレール22から離れて持ち上げられたとき、ホイール34の第1のセットは、X方向において積荷取扱デバイス30を移動させるように、車両32中に格納された駆動機構(図示せず)によって、駆動され得る。Y方向における移動を達成するために、ホイール34の第1のセットは、レール22から離れて持ち上げられ、ホイール36の第2のセットは降ろされて、レール22の第2のセット22bと係合する。駆動機構は、次いで、Y方向において積荷取扱デバイス30を移動させるようにホイール36の第2のセットを駆動するために使用され得る。
【0010】
積荷取扱デバイス30は、上から保管コンテナを持ち上げるための持ち上げ機構、たとえば、クレーン機構を装備している。持ち上げ機構は、スプールまたはリール(図示せず)に巻かれたウインチテザーまたはケーブル38と、グリッパーデバイス39とを備える。
図5に示されている持ち上げ機構は、垂直方向に延在する4つの持ち上げテザー38のセットを備える。テザー38は、保管コンテナ10への解放可能な接続のために、グリッパーデバイス39、たとえば、持ち上げフレームの、それぞれの4つのコーナーにおいてまたはその近くで接続される。たとえば、それぞれのテザー38が、持ち上げフレーム39の4つのコーナーの各々においてまたはその近くに配置される。グリッパーデバイス39は、保管コンテナ10の上部を解放可能に把持して、
図1および
図2に示されているタイプの保管システム1におけるコンテナのスタックからそれを持ち上げるように、構成される。たとえば、持ち上げフレーム39は、ビン10の上面を形成するリム中の対応するホール(図示せず)と嵌合するピン(図示せず)と、ビン10を把持するためにリムと係合可能である摺動クリップ(図示せず)とを含み得る。クリップは、持ち上げフレーム39内に格納され、ケーブル38自体または別個の制御ケーブル(図示せず)を通して運ばれる信号によって電力供給および制御される、好適な駆動機構によって、ビン10と係合するように駆動される。
【0011】
スタック12の上部からビン10を除去するために、積荷取扱デバイス30は、最初に、スタック12の上にグリッパーデバイス39を位置決めするようにX方向およびY方向において移動される。グリッパーデバイス39は、次いで、
図4および
図6Bに示されているように、スタック12の上部のビン10と係合するようにZ方向において垂直方向に降ろされる。グリッパーデバイス39は、ビン10を把持し、次いで、ビン10が取り付けられた状態で、ケーブル38によって上方に引かれる。その垂直方向進行の上部において、ビン10は、車両本体32内に収容されたレール22の上に保持される。このようにして、積荷取扱デバイス30は、それとともにビン10を運んで、ビン10を別のロケーションに搬送するために、X-Y平面において異なる位置に移動され得る。ターゲットロケーション(たとえば、別のスタック12、保管システム中のアクセスポイント、またはコンベヤベルト)に到着すると、ビンまたはコンテナ10は、コンテナ受入部分から降ろされ、グラバーデバイス39から解放され得る。ケーブル38は、たとえば、フロアレベルを含む、スタック12の任意のレベルから、積荷取扱デバイス30がビンを取り出し、置くことを可能にするのに十分に長い。
【0012】
図3に示されているように、複数の同等の積荷取扱デバイス30が、各積荷取扱デバイス30が、システムのスループットを増加させるために同時に動作することができるように、提供される。
図3に示されているシステムは、ビン10が、そこにおいてシステム中にまたはシステムの中から移され得る、ポートとして知られる、特定のロケーションを含み得る。追加のコンベヤシステム(図示せず)が、積荷取扱デバイス30によってポートに搬送されたビン10が、ピッキングステーション(図示せず)など、別のロケーションにそのコンベヤシステムによって移され得るように、各ポートに関連する。同様に、ビン10は、外部ロケーションからポートに、たとえば、ビン充填ステーション(図示せず)に、コンベヤシステムによって移動され、システム中のストックを補充するために、積荷取扱デバイス30によってスタック12に搬送され得る。
【0013】
各積荷取扱デバイス30は、一度に、1つのビン10を持ち上げ、移動させることができる。積荷取扱デバイス30は、それの下側部分に、コンテナ受入キャビティまたはリセス40を有する。リセス40は、
図6Aおよび
図6Bに示されているように、持ち上げ機構38、39によって持ち上げられたとき、コンテナ10を収容するようにサイズ決定される。リセス中にあるときに、コンテナ10は、車両32が、異なるグリッドロケーションに横方向に移動することができるように、下のレール22から離れて持ち上げられる。
【0014】
スタック12の上部にないビン10b(「ターゲットビン」)を取り出すことが必要である場合、上にあるビン10a(「非ターゲットビン」)は、ターゲットビン10bへのアクセスを可能にするために、最初に移動されなければならない。これは、以下、「掘り出し(digging)」と呼ばれる動作によって達成される。
図3を参照すると、掘り出し動作中に、積荷取扱デバイス30のうちの1つが、ターゲットビン10bを含んでいるスタック12から各非ターゲットビン10aを連続的に持ち上げ、それを別のスタック12内の空いている位置に置く。ターゲットビン10bは、次いで、積荷取扱デバイス30によってアクセスされ、さらなる搬送のためのポートに移動され得る。
【0015】
各積荷取扱デバイス30は、中央コンピュータ、たとえば、マスタコントローラの制御下でリモートで動作可能である。また、システム中の各個々のビン10は、適切なビン10が、必要に応じて取り出され、搬送され、交換され得るように、追跡される。たとえば、掘り出し動作中に、各非ターゲットビンロケーションが、非ターゲットビン10aが追跡され得るように、ロギングされる。
【0016】
ワイヤレス通信およびネットワークが、マスタコントローラから、たとえば、1つまたは複数の基地局を介して、グリッド構造15上で動作可能な1つまたは複数の積荷取扱デバイス30に通信インフラストラクチャを提供するために使用され得る。マスタコントローラから命令を受信することに応答して、積荷取扱デバイス30中のコントローラが、積荷取扱デバイスの移動を制御するように様々な駆動機構を制御するように構成される。たとえば、積荷取扱デバイス30は、グリッド構造15上の特定のロケーションにおいてターゲット保管列からコンテナを取り出すように命令され得る。命令は、グリッド構造15のX-Y平面における様々な移動を含むことができる。前に説明されたように、ターゲット保管列に着くと、持ち上げ機構38、39は、保管コンテナ10を把持し、持ち上げるように動作され得る。コンテナ10が積荷取扱デバイス30のコンテナ受入空間40中に収容されると、コンテナ10は、その後、グリッド構造15上の別のロケーション、たとえば、「ドロップオフ(drop-off)ポート」に搬送される。ドロップオフポートにおいて、コンテナ10は、保管コンテナ中の任意のアイテムの取出しを可能にするために、好適なピックステーションに降ろされる。グリッド構造15上での積荷取扱デバイス30の移動は、積荷取扱デバイス30が、通常、グリッド構造15の周辺にある、充電ステーションに移動するように命令されることをも伴い得る。
【0017】
グリッド構造15上で積荷取扱デバイス30を動かすために、積荷取扱デバイス30の各々が、ホイール34、36を駆動するためのモーターを装備している。ホイール34、36は、ホイールに接続された1つまたは複数のベルトを介して駆動されるか、またはホイールに組み込まれたモーターによって個々に駆動され得る。単一セル積荷取扱デバイスの場合(積荷取扱デバイス30のフットプリントが単一のグリッドセル17を占有する場合)、ホイールを駆動するためのモーターは、車両本体内の空間の限られた利用可能性により、ホイールに組み込まれ得る。たとえば、単一セル積荷取扱デバイス30のホイールは、それぞれのハブモーターによって駆動される。各ハブモーターが、内側固定子を形成するコイルを備えるホイールハブを中心として回転するように配置された複数の永久磁石をもつ外側回転子を備える。
【0018】
図1~
図6Bを参照しながら説明されたシステムは、多くの利点を有し、広範囲の保管および取出し動作に好適である。特に、それは、製品の極めて高密度の保管を可能にし、ビン10中に広範囲の異なるアイテムを保管する極めて経済的な方法を提供しながら、ピッキングのために必要とされるときにビン10のすべてへの適度に経済的なアクセスをも可能にする。
【0019】
しかしながら、本開示の目的は、保管システムにおいてリモートで動作される積荷取扱デバイスの正しいロケーションを確実に決定するための方法およびシステムを提供することである。
【発明の概要】
【0020】
保管システムのグリッドの上に配設された広角または超広角カメラを較正する方法であって、グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内でトラックの下にスタックされたコンテナを取り扱うために、トラック上でX方向またはY方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置される、方法が提供される。本方法は、カメラによってキャプチャされたグリッドのグリッドセクションの画像を取得することと、カメラに対応する複数のパラメータの初期値を取得することと、複数のパラメータが、カメラの焦点距離と、グリッドセクションの上のカメラの位置を表現する並進ベクトルと、カメラの傾きおよび回転を表現する回転ベクトルとを含む、上記画像を、グリッドセクションの画像中にキャプチャされた、平行なトラックの第1のセットおよび第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの第1のセットおよび第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、複数のパラメータに基づくマッピングを使用して、モデル中の選択されたピクセルを、グリッド上の対応するポイントにマッピングすることと、ここにおいて、初期値が、マッピングへの入力として使用される、マッピングによって決定されたポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、誤差関数に基づいて、初期値を複数のパラメータの更新された値に更新することと、マッピングを介して、カメラによってキャプチャされたグリッドセクションの画像中のピクセルを、保管システムのグリッド上の対応するポイントにマッピングするために、複数のパラメータの更新された値を記憶することとを備える。
【0021】
また、本方法を実施するように構成されたプロセッサを備えるデータ処理装置が、提供される。また、コンピュータプログラムであって、上記プログラムがコンピュータによって実行されたとき、コンピュータに本方法を行わせる命令を備えるコンピュータプログラムが、提供される。同様に、コンピュータによって実行されたとき、コンピュータに本方法を行わせる命令を備える、コンピュータ可読記憶媒体が、提供される。
【0022】
さらに、保管システムのグリッドの上に配設された広角または超広角カメラを較正するための較正システムであって、グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内でトラックの下にスタックされたコンテナを取り扱うために、トラック上でX方向またはY方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置される、較正システムが提供される。本較正システムは、カメラによってキャプチャされたグリッドのグリッドセクションの画像を取得することと、カメラに対応する複数のパラメータの初期値を取得することと、複数のパラメータが、カメラの焦点距離と、グリッドセクションの上のカメラの位置を表現する並進ベクトルと、カメラの傾きおよび回転を表現する回転ベクトルとを含む、を行うための少なくとも1つのインターフェースと、上記画像を、グリッドセクションの画像中にキャプチャされた、平行なトラックの第1のセットおよび第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの第1のセットおよび第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、複数のパラメータに基づくマッピングを使用して、モデル中のピクセルを、グリッド上の対応するポイントにマッピングすることと、ここにおいて、初期値が、マッピングへの入力として使用される、マッピングによって決定されたポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、誤差関数に基づいて、初期値を複数のパラメータの更新された値に更新することと、マッピングを介して、カメラによってキャプチャされたグリッドセクションの画像中のピクセルを、保管システムのグリッド上の対応するポイントにマッピングするために、複数のパラメータの更新された値をストレージに出力することとを行うように構成された、少なくとも1つのプロセッサとを備える。
【0023】
大まかに言えば、この説明は、保管システムの作業空間の上の広角または超広角カメラを較正するためのシステムおよび方法を紹介する。較正は、広角または超広角角度レンズによってひずんだ、カメラによってキャプチャされた画像との対話が、作業空間に正しくマッピングされることを可能にする。したがって、ひずんだ画像中のピクセルの選択されたエリアが、たとえば、作業空間中のグリッド空間の対応するエリアにマッピングされ得る。たとえば、本明細書で説明されるシステムおよび方法を使用して広角または超広角カメラを較正することが、作業空間の広い視野をもつカメラによってキャプチャされた画像が、その上で動作する搬送デバイスを検出し、そのロケーションを特定する(localise)ために使用されることを可能にする。これは、他のカメラタイプのものと比較して、画像中に存在する比較的高いひずみにもかかわらずである。
【0024】
次に、同様の参照番号が同じまたは対応する部分を指定する、添付の図面を参照しながら、実施形態が単に例として説明される。
【図面の簡単な説明】
【0025】
【
図1】知られているシステムによる、グリッドフレームワーク構造の概略図。
【
図2】
図1のフレームワーク構造内に配置されたビンのスタックを示すトップダウン図の概略図。
【
図3】グリッドフレームワーク構造上で動作可能な積荷取扱デバイスを示す知られている保管システムの概略図。
【
図4】グリッドフレームワーク構造の一部分上の積荷取扱デバイスの概略斜視図。
【
図5】上からコンテナを把持する持ち上げ機構を示す積荷取扱デバイスの概略斜視図。
【
図6A】積荷取扱デバイスのコンテナ受入空間と、それが使用中にコンテナをどのように収容するかとを示す、
図5の積荷取扱デバイスの概略斜視破断図。
【
図6B】積荷取扱デバイスのコンテナ受入空間と、それが使用中にコンテナをどのように収容するかとを示す、
図5の積荷取扱デバイスの概略斜視破断図。
【
図7】実施形態による、グリッドフレームワーク構造上で動作可能な積荷取扱デバイスを、グリッドフレームワーク構造の上に位置するカメラとともに示す、保管システムの概略図。
【
図8A】実施形態による、グリッドフレームワーク構造の上に位置するカメラによってキャプチャされた画像の概略表現の図。
【
図8B】実施形態による、グリッドフレームワーク構造の上に位置するカメラによってキャプチャされた画像の概略表現の図。
【
図9】実施形態による、ニューラルネットワークの概略図。
【
図10A】実施形態による、グリッドフレームワーク構造のトラックの生成されたモデルの概略図。
【
図10B】実施形態による、グリッドフレームワーク構造のトラックの生成されたモデルの概略図。
【
図11】実施形態による、グリッドフレームワーク構造のキャプチャされた画像の平坦化を示す概略図。
【
図12】実施形態による、グリッドフレームワーク構造のキャプチャされた画像の修正を示す概略図。
【
図13】実施形態による、保管システムのグリッドの上に配設された超広角カメラを較正する方法を示すフローチャート。
【
図14】実施形態による、グリッドを備える作業空間中の搬送デバイスを検出する方法を示すフローチャート。
【
図15】実施形態による、グリッドを備える作業空間中の搬送デバイス上の識別マーカーを検出する方法を示すフローチャート。
【
図16】作業空間中で動作する1つまたは複数の搬送デバイスの移動の制御を支援するための方法を示すフローチャート。
【発明を実施するための形態】
【0026】
図1~
図3に示されているタイプの保管システムでは、マスタコントローラから独立してグリッド構造15上で動作する所与の積荷取扱デバイス30の位置を決定することが有用である。各積荷取扱デバイス30が、グリッド構造上のあるロケーションから別のロケーションに所定の経路に沿って移動するように、マスタコントローラから制御信号を送られる。たとえば、所与の積荷取扱デバイス30が、グリッド構造15上の特定のロケーションに移動して、その特定のロケーションにおいてコンテナのスタックからターゲットコンテナを持ち上げるように、命令され得る。複数のそのようなデバイス30がグリッド構造15上でそれぞれの軌道に沿って移動する場合、たとえば、所与の積荷取扱デバイスとマスタコントローラとの間の通信が失われた場合に、グリッド構造15に対する所与の積荷取扱デバイス30の正確な位置を決定することが可能であることが有用である。たとえば、グリッド構造上でのまたはその周りでの、積荷取扱デバイスと別の物体、たとえば別の積荷取扱デバイスとの間の衝突が、その積荷取扱デバイス、または各積荷取扱デバイスが、マスタコントローラからの通信に無反応になることを、たとえば、それへの接続の喪失、および/またはグリッド構造15のトラック22からの係合解除によって、引き起こし得る。衝突は、たとえば、1つまたは複数の積荷取扱デバイスが、トラック22と不整合すること、またはグリッド構造上で倒れることを生じ得る。
【0027】
グリッド構造15とその上で移動する積荷取扱デバイス30とをモニタすることが、複数の積荷取扱デバイスの動作を解決するために検出および/または作用されることになるような、積荷取扱デバイスの無反応のインスタンス(instance)を可能にすることができる。グリッド構造15に対する所与の積荷取扱デバイス30の位置の独立した評価を有することが、他の技術目的、たとえば、グリッド構造15上の積荷取扱デバイス30のあらかじめ決定された軌道をそれの真の位置に対してモニタすることのためにも、有用であり得る。
【0028】
図7は、前に説明された、保管システムのグリッド構造(または単に「グリッド」)15を示す。グリッドは、X方向に延在する平行なトラックの第1のセット22aと、実質的に水平な平面において第1のセットに直交する、Y方向に延在する平行なトラックの第2のセット22bとによって形成される。グリッド15は、複数のグリッド空間17を有する。1つまたは複数の積荷取扱デバイス、または「搬送デバイス」30は、トラック22上でX方向またはY方向のうちの少なくとも1つにおいて選択的に移動することと、単一のグリッド空間17のフットプリント内でトラック22の下にスタックされたコンテナ10を取り扱うこととを行うように配置される。例では、1つまたは複数の搬送デバイス30は、1つのグリッド空間を占有する所与の搬送デバイスが、隣接するグリッド空間を占有するかまたは横断する別の搬送デバイスを妨害しないように、各々、同じく単一のグリッド空間のみを占有するフットプリントを有する。
【0029】
グリッド15の上に、カメラ71が配設される。例では、カメラ71は、超広角カメラであり、すなわち、(「スーパー広角(super wide-angle)」レンズまたは「魚眼」レンズとも呼ばれる)超広角レンズを備える。カメラ71は、レンズ、たとえば、魚眼レンズを通して集束される入射光を受けるための画像センサーを含む。カメラ71は、グリッド15の少なくともセクションを含む視野72を有する。複数のカメラが、グリッド15全体を観測するために使用され得、たとえば、各カメラ71が、グリッド15のセクションをカバーするそれぞれの視野72を有する。超広角レンズは、他のレンズタイプと比較して、たとえば、180度立体角までの、その比較的大きい視野72のために選択され得、これは、グリッド15をカバーするためにより少数のカメラが必要とされることを意味する。また、空間は、グリッド15の上部と、周囲構造、たとえば倉庫屋根との間で限られており、したがって、グリッド15の上のカメラ71の高さを制約し得る。超広レンズカメラが、他のカメラタイプと比較してグリッド15の上の比較的低い高さにおいて比較的大きい視野を提供することができる。
【0030】
1つまたは複数のカメラ71は、搬送デバイス30の作業空間をモニタするために使用され得、作業空間は、グリッド構造15を含む。たとえば、1つまたは複数のカメラ71からの画像供給が、欠陥のある、たとえば、無反応な、搬送デバイスのインスタンスを監視するために、グリッド15からリモートにある1つまたは複数のコンピュータモニタ上に表示され得る。したがって、オペレータは、そのようなインスタンスを検出し、たとえば、搬送デバイスとマスタコントローラとの間の通信リンクをリセットすること、または機械的問題に対する手動介入を要求することによって、問題点を解決するように作用し得る。
【0031】
作業空間のための効果的なモニタリングまたは監視システムは、作業空間の上に位置する1つまたは複数の超広角カメラの較正を組み込む。超広角カメラの正確な較正は、超広角レンズによってひずんだ、超広角カメラによりキャプチャされた画像との対話が、作業空間に正しくマッピングされることを可能にする。したがって、オペレータは、ひずんだ画像中のピクセルのエリアを選択することができ、これは、たとえば、作業空間中のグリッド空間の対応するエリアにマッピングされる。他のシナリオでは、カメラ71からのひずんだ画像は、作業空間中の欠陥のある搬送デバイス30を検出し、作業空間中のそれのロケーションと、さらには、一意のIDラベルなど、検出された搬送デバイス30の識別情報とを出力するために、処理され得る。そのような例は、以下の実施形態において説明される。
【0032】
較正プロセス
較正プロセス130は、
図13に示されている例に従って、超広角カメラ71によってキャプチャされた、グリッド15のセクション、すなわちグリッドセクションの画像を取得すること131を含む。画像を取得することは、たとえば、プロセッサにおいて、画像を表現する画像データを取得すること、たとえば、受信することを含む。たとえば、画像データは、インターフェース、たとえば、カメラシリアルインターフェース(CSI)を介して、受信され得る。画像信号プロセッサ(ISP)が、画像データを表示のために準備するために、画像データの初期処理、たとえば、飽和補正、再正規化、ホワイトバランス調整および/またはデモザイキングを実施し得る。
【0033】
超広角カメラ71に対応する複数のパラメータの初期値も取得される132。それらのパラメータは、超広角カメラの焦点距離と、グリッドセクションの上の超広角カメラの位置を表現する並進ベクトルと、超広角カメラの傾きおよび回転を表現する回転ベクトルとを含む。これらのパラメータは、カメラ71の超広角レンズによってひずんだ画像中のピクセルを、保管システムの直交グリッド15に対して配向された平面にマッピングするための、マッピングアルゴリズムにおいて使用可能である。マッピングアルゴリズムは、以下でより詳細に説明される。
【0034】
較正プロセス130は、画像を、超広角カメラによってキャプチャされたグリッドセクションの画像中のトラックを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理すること133を含む。
【0035】
ニューラルネットワーク
図9は、ニューラルネットワークアーキテクチャの一例を示す。例示的なニューラルネットワーク90は、畳み込みニューラルネットワーク(CNN)である。CNNの一例は、フライブルク大学のコンピュータサイエンス学部によって開発されたU-Netアーキテクチャであるが、他のCNN、たとえば、VGG-16 CNNが使用可能である。CNN90への入力91が、この例では画像データを備える。入力画像データ91は、所与の数のピクセル幅および所与の数のピクセル高さであり、1つまたは複数の色チャネル(たとえば、赤色、緑色および青色チャネル)を含む。
【0036】
CNN90の畳み込み層92、94が、一般に、特徴マップを作成するために、入力データ91から特定の特徴を抽出し、画像の小さい部分に対して動作し得る。全結合層96は、出力97、たとえば、入力画像91中に存在することが予測される物体のクラスを指定する分類データを決定するために、特徴マップを使用する。
【0037】
図9の例では、第1の畳み込み層92の出力は、第2の畳み込み層94に入力される前に、プーリング層93においてプーリングを受ける。プーリングは、たとえば、画像または特徴マップの領域のための値が、たとえば領域内の最も高い値をとることによって、アグリゲートされるかまたは組み合わせられることを可能にする。たとえば、2×2の最大プーリングでは、出力全体を移すのではなく、第1の畳み込み層92から出力された特徴マップの2×2ピクセルパッチ内の第1の畳み込み層92の出力の最も高い値が、第2の畳み込み層94への入力として使用される。したがって、プーリングは、ニューラルネットワーク90の後続の層のための算出量を低減することができる。プーリングの効果は、関係する層におけるフレームのサイズの低減として、
図9に概略的に示されている。さらなるプーリングが、第2のプーリング層95において、第2の畳み込み層94と全結合層96との間で実施される。
図9中のニューラルネットワーク90の概略表現が、説明しやすいように大幅に簡略化されており、一般的なニューラルネットワークは、著しくより複雑であり得ることを諒解されたい。
【0038】
概して、
図9のニューラルネットワーク90などのニューラルネットワークは、そのニューラルネットワークが特定の目的のためにトレーニングされる、「トレーニングフェーズ」と呼ばれるものを受け得る。ニューラルネットワークは、一般に、グラフの(ニューロンに対応する)頂点または(結合に対応する)エッジが、それぞれ、重みに関連する、有向の、重み付けされたグラフを形成する相互結合された人工ニューロンの層を含む。重みは、トレーニング全体にわたって調整され得、個々のニューロンの、および、したがって、全体としてニューラルネットワークの出力を変更する。CNNでは、全結合層96は、一般に、1つの層中のあらゆるニューロンを別の層中のあらゆるニューロンに結合し、したがって、画像が、特定のクラスの物体、または特定のクラスに属する特定のインスタンスを含むかどうかなど、画像の全体的特性を識別するために使用され得る。
【0039】
本コンテキストでは、ニューラルネットワーク90は、たとえば、所定のクラスの物体のうちのある物体が画像中に存在するかどうかを決定するために、画像データを処理することによって物体識別を実施するようにトレーニングされる(とはいえ、他の例では、代わりに、ニューラルネットワーク90が画像の他の画像特性を識別するようにトレーニングされていることがある)。たとえば、このようにしてニューラルネットワーク90をトレーニングすることは、画像データに適用されるべき重みを表現する重みデータを生成する(たとえば、異なる重みが、多層ニューラルネットワークアーキテクチャの異なるそれぞれの層に関連する)。これらの重みの各々が、たとえば、重みのカーネルを画像パッチと畳み込むために、画像パッチの対応するピクセル値を乗算される。
【0040】
超広角カメラ較正のコンテキストに特有なことには、ニューラルネットワーク90は、グリッドセクションの所与の画像中のグリッド15のトラック22を検出するために、超広角カメラによってキャプチャされたグリッドセクションの入力画像のトレーニングセットを用いてトレーニングされる。例では、トレーニングセットは、入力画像に対応する、抽出されたトラック特徴のみを示す、マスク画像を含む。たとえば、マスク画像は、手動で作り出される。したがって、マスク画像は、画像のトレーニングセットを使用することでトレーニングすべきニューラルネットワーク90についての所望の結果として働くことができる。トレーニングされると、ニューラルネットワーク90は、超広角カメラによってキャプチャされたグリッド構造15の少なくとも一部の画像中のトラック22を検出するために使用され得る。
【0041】
較正プロセス130は、超広角カメラ71によってキャプチャされたグリッドセクションの画像を、画像中のトラック22を検出するために、トレーニングされたニューラルネットワーク90を用いて、処理すること133を含む。少なくとも1つのプロセッサ(たとえば、ニューラルネットワークアクセラレータ)が、処理133を行うために使用され得る。画像処理133は、グリッドセクションの画像中にキャプチャされた、トラック、特に、平行なトラックの第1のセットおよび第2のセットのモデルを生成する。たとえば、モデルは、ニューラルネットワーク90によって決定された、グリッドセクションのひずんだ画像中のトラックの予測の表現を備える。トラックのモデルは、例ではマスクまたは確率マップに対応する。
【0042】
次いで、決定されたトラックモデル中の選択されたピクセルが、超広角カメラに対応する複数のパラメータを組み込むマッピング、たとえば、マッピングアルゴリズムを使用して、グリッド15上の対応するポイントにマッピングされる134。取得された初期値は、マッピングアルゴリズムへの入力として使用される。
【0043】
誤差関数(または「損失関数」)が、マッピングされたグリッド座標と、選択されたピクセルに対応するポイントの「真の」、たとえば知られている、グリッド座標との間の不一致に基づいて、決定される135。たとえば、X方向トラック22aの中心にある選択されたピクセルが、Y方向における半整数値をもつグリッド座標、たとえば(x,y.5)に対応するべきであり、ここで、xは知られていない数であり、yは知られていない整数である。同様に、Y方向トラック22bの中心にある選択されたピクセルが、X方向における半整数値をもつグリッド座標、たとえば(x’.5,y’)に対応するべきであり、ここで、x’は知られていない整数であり、y’は知られていない数である。例では、グリッドセルの幅および長さ(またはその比)が、たとえば、キーポイントについてセルx,y座標を計算し、それらがトラック上にある(たとえば、n.5の座標値、ここで、nは整数である)かどうかを確認するために、損失関数において使用される。
【0044】
超広角カメラに対応する複数のパラメータの初期値は、次いで、決定された誤差関数に基づいて、更新された値に更新される136。たとえば、ブロイデン-フレッチャー-ゴールドファーブ-シャンノ(BFGS)アルゴリズムが、誤差関数と初期パラメータ値とを入力として使用して適用される。例では、複数のパラメータの更新された値は、反復的に決定され、誤差関数が各更新とともに再計算される。反復は、誤差関数が、たとえば、連続反復間で、または初期誤差関数と比較して、所定のしきい値未満だけ低減されるまで、あるいは誤差関数の絶対値が所定のしきい値を下回るまで、続き得る。他の反復アルゴリズム、たとえば、逐次2次計画法(SQP:sequential quadratic programming)または逐次最小2乗2次計画法(SLSQP:sequential least-squares quadratic programming)が、複数のパラメータについての近似解を改善するシーケンスを生成するために、初期値とともに使用され得、シーケンスにおける所与の近似が、前のものから導出される。場合によっては、反復アルゴリズムは、複数のパラメータの値を最適化するために使用される。たとえば、更新された値は、複数のパラメータの最適化された値である。
【0045】
超広角カメラに対応する複数のパラメータの初期値を更新すること136は、複数のパラメータについて1つまたは複数のそれぞれの境界値を適用することを伴う。たとえば、回転ベクトルに関連する回転角についての境界値は、実質的に0度および実質的に+5度である。追加または代替として、並進ベクトルの平面成分についての境界値は、グリッドセルの長さの±0.6である。追加または代替として、並進ベクトルの高さ成分についての境界値は、グリッドの1800mmおよび2100mm、または1950mmおよび2550mm、または2000mmおよび2550mm上である。たとえば、カメラ高さについての下限が、1800~2000mmの範囲内である。たとえば、カメラ高さについての上限が、2100~2600mmの範囲内である。追加または代替として、カメラの焦点距離についての境界値は、0.23および0.26cmである。複数のパラメータについて1つまたは複数のそれぞれの境界値を適用することは、更新、たとえば最適化、プロセスが、実現可能な領域または解空間、すなわち、1つまたは複数の境界条件を満たすすべての可能な値のセットにおいて、実施されることを意味することができる。
【0046】
複数のパラメータの更新された値は、マッピングアルゴリズムを介した、超広角カメラ71によってキャプチャされたグリッドセクション画像中のピクセルの、グリッド15上の対応するポイントへの将来のマッピングのために、電子的に記憶される137。たとえば、複数のパラメータの記憶された値は、データストレージから取り出され、超広角カメラ71によってキャプチャされたグリッドセクションの所与の画像中の所与のピクセルに対応するグリッド座標を算出するために、マッピングアルゴリズムにおいて使用される。例では、更新された値は、超広角カメラ71に関連する保管ロケーション(storage location)において、たとえば、データベース中に、記憶される。たとえば、ルックアップ機能またはテーブルが、グリッド15の上で保管システム1において採用された任意の所与の超広角カメラに関連する記憶されたパラメータ値を見つけるためにデータベースとともに使用され得る。
【0047】
グリッド15の上に配設された所与のカメラ71の較正に続いて、カメラ71によってキャプチャされたグリッドセクションの画像(たとえば、「スナップショット」)が、オペレータによる対話のために、平坦化され、すなわち、ひずんでいないようにされ得る。たとえば、説明される画像からグリッドへのマッピング(image-to-grid mapping)機能を使用して、グリッドセクションのひずんだ画像81は、
図11の例に示されているように、グリッドセクションの平坦化された画像111にコンバートされ得る。平坦化は、ひずんだ画像81中で平坦化すべきグリッドセルのエリアを選択することと、それらのセルに対応するグリッド座標をマッピング機能に入力することとを伴い、マッピング機能は、ひずんだ画像81からのどのそれぞれのピクセル値が、それぞれのグリッド座標についての平坦化された画像111にコピーされるべきであるかを決定する。たとえば、グリッドセルごとのピクセルの、ターゲット解像度が、平坦化された画像111について設定され得、ターゲット解像度は、グリッドセル寸法の比に対応する比を有し得る。(ターゲット解像度とグリッドセルの選択された数とに従う)平坦化された画像中で必要とされるすべてのピクセル値が決定されると、平坦化された画像111が生成され得る。
【0048】
スナップショットは、所定の間隔において、たとえば10秒ごとに、カメラ71によってキャプチャされ、対応する平坦化された画像111にコンバートされ得る。直近の平坦化された画像111は、たとえば、カメラ71によってカバーされたグリッドセクションを閲覧することを望むオペレータによって、ディスプレイ上で閲覧するためにストレージに記憶される。オペレータは、代わりに、グリッドショットのスナップショットを撮り直し、それを平坦化させることを選定し得る。したがって、オペレータは、平坦化された画像111中の領域、たとえば、ピクセルを選択し、本明細書で説明される、画像からグリッドへのマッピング機能に基づいて、それらの選択された領域をグリッド座標にコンバートさせることができる。いくつかの場合には、平坦化された画像111は、平坦化された画像111中で閲覧可能なグリッド空間についてのグリッド座標のアノテーション(annotation)を含む。各カメラ71に対応する平坦化された画像111は、ひずんだ画像81、82と比較して、グリッド15をモニタするためによりユーザフレンドリであり得る。
【0049】
グリッドから画像へのマッピング(grid to image mapping)
グリッド15上の現実世界のポイントを、カメラによってキャプチャされた画像中のピクセルにマッピングすることが、算出アルゴリズムによって行われる。グリッドポイントは、最初に、超広角カメラ71に対応する平面上に投影される。たとえば、回転行列を使用する回転と、X方向およびY方向における平面並進とのうちの少なくとも1つが、グリッドフレームワーク構造14中のx、y、およびz座標を有するポイントに適用される。超広角カメラの焦点距離fは、グリッド15に対する3次元座標をもつポイントを、超広角カメラ71に対する2次元平面上に投影するために使用され得る。たとえば、超広角カメラ71の平面におけるマッピングされたポイントqの座標は、q=f・p[x,y]÷pzとして計算され、ここで、p[x,y]およびpzは、それぞれ、グリッド15に対するポイントpの平面x-y座標および第3のz座標である。
【0050】
超広角カメラ平面上に投影されたポイントqは、ポイントの第1のデカルト座標を決定するために、その平面におけるデカルト座標系と整合され得る。たとえば、ポイントをデカルト座標系と整合させることは、ポイント、または平面におけるポイントの位置ベクトル(たとえば、原点からポイントへのベクトル)を回転させることを伴う。したがって、回転は、たとえば、カメラによってキャプチャされた画像中の典型的なグリッド配向と整合するためのものであるが、グリッドのX方向およびY方向が、キャプチャされた画像とすでに整合されている場合、必要でないことがある。回転は、例では実質的に90度である。
図8Aおよび
図8Bに示されているように、グリッドのX方向およびY方向は、画像の水平軸および垂直軸に関して90度だけオフセットされ、したがって、回転は、グリッドのX方向およびY方向が、キャプチャされた画像の水平軸および垂直軸と整合するように、このオフセットを「補正」する。
【0051】
グリッドから画像へのマッピング(grid-to-image mapping)アルゴリズムは、標準的三角法を使用して、第1のデカルト座標を第1の極座標にコンバートすることを続ける。次いで、ひずみモデルが、第2の、たとえば「ひずんだ」極座標を生成するために、ポイントの第1の極座標に適用される。例では、ひずみモデルは、r’=f・arctan(r/f)によって与えられるひずみのタンジェントモデルを備え、ここで、rおよびr’は、それぞれ、ポイントのひずんでいない半径方向座標およびひずんだ半径方向座標であり、fは超広角カメラの焦点距離である。
【0052】
第2の極座標は、次いで、同じ標準的三角法を逆に使用して、(第2の)デカルト座標に逆にコンバートされる。次いで、第2のデカルト座標に基づいて、画像中のピクセルの画像座標が決定される。例では、この決定は、第2のデカルト座標をセンタリング解除する(de-center)ことまたは再スケーリングすることのうちの少なくとも1つを含む。追加または代替として、第2のデカルト座標の縦座標(y座標)は反転され、たとえばx軸においてミラーリングされる。
【0053】
画像からグリッドへのマッピング
カメラ71によってキャプチャされた画像中のピクセルをグリッド15上の現実世界のポイントにマッピングすることが、異なる算出アルゴリズムによって行われる。たとえば、画像からグリッドへのマッピングアルゴリズムは、上記で説明されたグリッドから画像へのマッピングアルゴリズムの逆であり、各数学演算が反転される。
【0054】
画像中の所与のピクセルについて、画像中のピクセルの画像座標に基づいて、マッピングされたポイントの(第2の)デカルト座標が決定される。たとえば、この決定は、たとえば、画像座標をセンタリングすることまたは正規化することのうちの少なくとも1つを含む、画像中のピクセルを初期化することを伴う。前述のように、縦座標は、いくつかの例では反転される。第2のデカルト座標は、前述の標準的三角法を使用して第2の極座標にコンバートされる。ラベル「第2の」の使用は、説明されるグリッドから画像へのアルゴリズムにおいて行われるコンバージョンとの一貫性のために使用されるが、任意である。
【0055】
逆ひずみモデルが、第1の、たとえば「ひずんでいない」、極座標を生成するために第2の極座標に適用される。例では、逆ひずみモデルは、r=f・tan(r’/f)によって与えられるひずみのタンジェントモデルに基づき、ここで、この場合も、r’はポイントのひずんだ半径方向座標であり、rはポイントのひずんでいない半径方向座標であり、fは超広角カメラの焦点距離である。したがって、例では、画像からグリッドへのマッピングにおいて使用される逆ひずみモデルは、グリッドから画像へのマッピングにおいて使用されるひずみモデルの逆関数、または「反関数(anti-function)」である。
【0056】
画像からグリッドへのマッピングアルゴリズムは、第1の極座標を第1のデカルト座標にコンバートすることを続ける。第1のデカルト座標は、超広角カメラに対応する平面におけるデカルト座標系と、整合解除、または非整合され得る。たとえば、ポイントをデカルト座標系と整合解除させることは、ポイント、または平面におけるポイントの位置ベクトル(たとえば、原点からポイントへのベクトル)に回転変換を適用することを伴う。回転は、例では実質的に90度である。したがって、この回転は、グリッドから画像へのマッピングにおいて前に説明された、グリッドのX方向およびY方向と、キャプチャされた画像の水平軸および垂直軸との間のオフセットへの何らかの「補正」を「元に戻し」得る。
【0057】
最終的に、ポイントは、グリッドに対するポイントのグリッド座標を決定するために、カメラ71に対応する(第2の)平面から、グリッド15に対応する(第1の)平面上に投影される。
【0058】
例では、グリッド15に対応する平面上にポイントを投影することは、p=B-1・(f・t-q・z)を算出することを伴い、ここで、B=q・R3,[1,2]-f・R[1,2],[1,2]である。これらの方程式では、pはグリッド平面におけるポイント座標を備え、qはカメラ平面におけるデカルト座標を備え、fは、前述のように超広角カメラの焦点距離である。さらに、tは平面並進ベクトルであり、zは、超広角カメラとグリッドとの間の距離(たとえば高さ)であり、Rは、回転ベクトルに関係する3次元回転行列である。回転ベクトルは、回転の回転軸を表現する方向と回転の角度を表現する大きさとを備える。角度-軸回転ベクトルに対応する回転行列Rは、たとえば、ロドリゲスの回転公式を使用して、ベクトルから決定され得る。
【0059】
次に、カメラ平面からのひずんでいない2Dポイントqを投影するための機能の数学的導出が、完全のために提供される。上からの、グリッドから画像への投影から始めると、q=f・p’[x,y]÷p’zであり、ここで、p’は、回転および並進されたグリッドポイントpであり、すなわち、p’=R・p+(tx,ty,z)Tであり、qからpを導出することを目的としている。p’について整理し、代入を行うと、以下のようになる。
【0060】
【0061】
【0062】
【0063】
【0064】
【0065】
カメラからのグリッド上のポイントpの所望の距離が高さパラメータzによって与えられるので、ポイントの並進において、pz=0であると仮定され得る。したがって、すべてのpz項が除去されて、以下のようになり得る。
【0066】
【0067】
【0068】
行列B=(q・R3,[1,2]-f・R)を定義することによって、式は、B・p[x,y]=f・t-z・qにさらに簡略化され得、これは、逆行列B-1を使用することによって、ポイントpを算出するための上記の方程式として帰着する。
【0069】
較正プロセス130に戻ると、いくつかの場合には、グリッド15に関して位置決めされた、グリッドセルマーカーに符号化されたグリッドセル座標データが、キャプチャされた画像中のピクセルに対応する算出されたグリッド座標を較正するために使用され得る。たとえば、グリッドセルマーカーは、たとえば所定のグリッドセル17中に置かれた、サインボードであり、対応するセル座標データが各サインボード上にマークされる。プロセス130は、たとえば、キャプチャされた画像を、画像中のグリッドセルマーカーを検出するために、処理することと、次いで、マッピングされたグリッド座標を較正する際に使用するために、グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することとを含む。各グリッドセルマーカーは、それぞれのグリッドセル中にあり、たとえば、それぞれのカメラ71の下に、それの視野72内にある。
【0070】
画像処理は、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた、物体検出モデル、たとえばニューラルネットワークを使用することを伴い得る。コンピュータビジョンプラットフォーム、たとえば、Google(登録商標)によるCloud Vision API(アプリケーションプログラミングインターフェース)が、物体検出モデルを実装するために使用され得る。物体検出モデルは、グリッドセルマーカーを含むグリッドセクションの画像を用いてトレーニングされ得る。物体検出モデルが、ニューラルネットワーク、たとえばCNNを含む、例では、
図9を参照する説明が、それに応じて適用される。
【0071】
キャプチャされた画像中で表現されたグリッドセクション上のポイントへの画像中のピクセルのマッピングによって生成された、グリッド座標は、抽出されたセル座標データに基づいてグリッド全体に較正され得る。たとえば、所与のピクセルに対応するマッピングされたグリッドポイントは、グリッドセルの単位の座標、たとえば、X方向におけるグリッドセルの数xとY方向におけるグリッドセルの数yとをもつ(x,y)を備える。しかしながら、カメラ71によってキャプチャされたグリッドセルは、グリッドセクション、すなわちグリッド15のセクションのものであり、したがって、必ずしもグリッド15全体であるとは限らない。したがって、画像中にキャプチャされたグリッドセクションに対するマッピングされたグリッド座標(x,y)は、グリッド全体に関するグリッドセクションの相対ロケーションに基づいて、グリッド全体に対するグリッド座標(x’,y’)に較正され得る。グリッド全体に対するグリッドセクションのロケーションは、説明されるように、画像中にキャプチャされたグリッドセルマーカーに符号化されたグリッドセル座標データを抽出することによって決定され得る。
【0072】
図10Aは、超広角カメラ71によってキャプチャされた、グリッドセクションの画像81を、画像中のトラック22を検出するために、トレーニングされたニューラルネットワーク90を用いて、処理することによって生成された、トラックの例示的なモデル101を示す。モデル101は、ニューラルネットワーク90によって決定された、グリッドセクションのひずんだ画像中のトラック22a、22bの予測の表現を備える。トラックモデル101からグリッド15上の対応するポイントにピクセルをマッピングすることが、説明されるようにカメラ71を較正するために行われ得る。たとえば、較正は、キャプチャされた画像81、82中のピクセルとグリッド15上のポイントとの間のマッピングのために使用される、カメラ71に関連する複数のパラメータを更新すること、たとえば最適化することを伴う。
【0073】
例では、グリッドセクションのモデル101は、平行なトラックの第1のセット22aおよび第2のセット22bの中心線のみを表現するように改良され得る。したがって、トラックモデル101からグリッド15上の対応するポイントにマッピングされるべきピクセルは、たとえば、生成されたモデル101中の平行なトラックの第1のセット22aおよび第2のセット22bの中心線上にあるピクセルである。改良することは、たとえば、水平線および垂直線検出カーネルでモデルをフィルタ処理することを伴う。それらのカーネルは、たとえば、他のカーネルが、エッジ検出におけるエッジなど、画像の他の特徴を識別するために使用され得るのと同じようにして、トラックの中心線がモデル101中で識別されることを可能にする。各カーネルは、所与のサイズ、たとえば3×3行列であり、これは、所与のストライドでモデル101中の画像データと畳み込まれ得る。たとえば、水平線検出カーネルは、行列
【0074】
【0075】
として表現可能である。
【0076】
同様に、垂直線検出カーネルは、たとえば、行列
【0077】
【0078】
として表現可能である。
【0079】
例では、フィルタ処理することは、水平線および垂直線検出カーネルを使用してモデル101のピクセル値を収縮させる(erode)ことと膨張させる(dilate)こととのうちの少なくとも1つを伴う。たとえば、収縮(erosion)機能と膨張(dilation)機能とのうちの少なくとも1つが、カーネルを使用してモデル101に適用される。収縮機能は、カーネルをモデルと畳み込むことによって、前景物体、この場合、生成されたモデル101中のトラック22a、22bの境界を効果的に「収縮させる」。収縮中に、カーネルの下で畳み込まれるすべてのピクセルが「1」に等しい場合のみ、元のモデル中のピクセル値(「1」または「0」のいずれか)は、「1」の値に更新され、他の場合、それは収縮させられる(「0」の値に更新される)。事実上、モデル101中のトラック22a、22bの境界の近くのすべてのピクセルが、トラック22a、22bの各々の厚さが実質的にその中心線まで減少するように、収縮において使用されるカーネルのサイズに応じて、破棄されることになる。膨張機能は、収縮機能の反対であり、収縮の後に残る中心線を効果的に「膨張させる」または広げるために、収縮の後に適用され得る。この膨張は、改良されたモデル101中のトラック22a、22bの中心線を安定させることができる。膨張中に、カーネルの下で畳み込まれる少なくとも1つのピクセルが「1」に等しい場合、ピクセル値は「1」の値に更新される。収縮機能および膨張機能は、それぞれ、元の生成されたモデル101に適用され、たとえば、得られた水平中心線および垂直中心線「骨格」が、改良されたモデルを作り出すために組み合わせられる。
【0080】
いくつかの場合には、生成されたモデル101は、たとえば、カメラ71によって閲覧可能なグリッドセクションの1つまたは複数の領域が不明瞭にされた、トラック22a、22bの欠落したセクションを有し得る。搬送デバイス30、ピラーまたは他の構造など、グリッド15上の物体が、キャプチャされた画像中のトラックの一部を不明瞭にし得る。したがって、生成されたモデル101は、トラックの同じ欠落した領域を有することがある。同様に、トラックのフォールスポジティブ予測が、生成されたモデル101中に存在し得る。
【0081】
これらの問題を助けるために、生成されたモデル中に存在するトラック22a、22b(たとえばその中心線)は、たとえば、トラック22a、22bについて2次軌道を作り出すために、それぞれの2次方程式に適合され得る。
図10Bは、モデル101中のトラックの第1のセット22aのうちのトラックが第1の2次軌道102に適合されることと、モデル101中のトラックの第2のセット22bのうちのトラックが第2の2次軌道103に適合されることとの一例を示す。次いで、2次トラック中心線が、たとえば、モデル101中のギャップを埋めるかまたはフォールスポジティブを除去するように、2次軌道に沿ってピクセル値を外挿することによって、2次軌道に基づいて作り出され得る。たとえば、予測されたグリッドモデル101から生成されたサブ線(sub-line)が、少なくとも1つの他の線とともに所与の2次曲線に適合され得ない場合、そのサブ線は、グリッドの一部である可能性が極めて低く、除外されるべきである。
【0082】
モデル101中のトラックを適合させるために使用される2次方程式、y=ax2+bx+cはまた、指定された境界条件、たとえば、
【0083】
【0084】
、-9.9×10-4<a<9.9×10-4、-5<b<5、および0<c<3200を有し得る。
【0085】
例では、所定の数のピクセルが、たとえば、モデルを記憶するためのストレージ要件を低減するために、トラックの改良されたモデル101から抽出される。たとえば、トラックの最終の改良されたモデル101を与えるために、ピクセルのランダムサブセットが抽出される。
【0086】
本明細書で説明されるシステムおよび方法を使用して超広角カメラ71を較正することが、たとえば、グリッド15の広い視野をもつカメラ71によってキャプチャされた画像が、その上の搬送デバイスを検出し、そのロケーションを特定するために使用されることを可能にする。これは、他のカメラタイプのものと比較して、画像中に存在する比較的高いひずみにもかかわらずである。
【0087】
上記で概説された自動較正プロセスはまた、それぞれのカメラ71に関連するパラメータをチューニングする手動方法と比較して、保管システムのグリッド15の上に設置された各カメラ71を較正するためにかかる時間を低減することができる。たとえば、説明された較正パイプラインを実装するために、ニューラルネットワークモデル、たとえばU-Netを、カスタマイズされた最適化機能と組み合わせることが、標準的較正方法と比較して誤差の80%超を除去することができる。さらに、本明細書で説明される較正システムおよび方法は、たとえば、異なる寸法、スケール、およびレイアウトをもつ、複数の倉庫保管システム中のカメラを較正するのに十分に汎用性があり、一貫性があることが判明した。
【0088】
さらに、グリッドの、出力される平坦化された較正された画像111は、グリッド15とその上で移動する搬送デバイス30とをモニタするための、人間と機械の両方による、画像111とのより容易な対話を可能にする。したがって、グリッド上の所与の搬送デバイスの無反応のインスタンスが、搬送デバイス30の一団の動作を解決するために検出および/または作用されることが、より効率的であり得る。
【0089】
作業空間中の搬送デバイスを検出すること
グリッド上の搬送デバイス30を検出するために、カメラ71によってキャプチャされたひずんだ画像82を処理するための方法およびシステムが、本明細書で提供される。たとえば、グリッド15に対する検出された搬送デバイス30のロケーションが、出力され得る。いくつかの例では、検出された搬送デバイス30の識別情報、たとえば一意のIDラベルが、出力され得る。次に、そのような例がより詳細に説明される。
【0090】
図14は、グリッド15を備える作業空間中の搬送デバイス30を検出するコンピュータ実装方法140を示す。方法140は、作業空間の少なくとも一部の画像を表現する画像データを取得すること141と、グリッド上の搬送デバイスのインスタンスを検出するようにトレーニングされた物体検出モデルにより、その画像データを処理すること142とを伴う。たとえば、画像は、作業空間の少なくとも一部をカバーする視野をもつカメラ71によってキャプチャされ、画像データは、検出方法140を実装するためのコンピュータに移される。画像データは、たとえば、コンピュータのインターフェース、たとえばCSIにおいて、受信される。
【0091】
物体検出モデルは、作業空間のグリッド15上の搬送デバイス30の物体検出を実施するようにトレーニングされたニューラルネットワーク、たとえば畳み込みニューラルネットワークであり得る。したがって、
図9に関するニューラルネットワークの説明は、これらの特定の例において適用される。本コンテキストでは、物体検出モデル、たとえばCNN90は、所定のクラスの物体のうちのある物体(すなわち搬送デバイス)が画像中に存在するかどうかを決定するために、取得された画像データを処理することによって物体識別を実施するようにトレーニングされる。ニューラルネットワーク90をトレーニングすることは、たとえば、搬送デバイスが存在する作業空間セクションのトレーニング画像をニューラルネットワーク90に提供することを伴う。重みデータが、多層ニューラルネットワークアーキテクチャのそれぞれの(畳み込み)層92、94について生成され、トレーニングされたニューラルネットワークを実装する際に使用するために記憶される。例では、物体検出モデルは、CNNベースアーキテクチャを有する、「You Only Look Once」(YOLO)物体検出モデル、たとえばYOLOv4またはScaled-YOLOv4を備える。他の例示的な物体検出モデルは、RetinatNetまたはR-CNN(CNN特徴をもつ領域(Regions with CNN features))など、ニューラルベース手法と、決定された特徴、たとえば、Haar-like特徴または配向勾配ヒストグラム(HOG)特徴に基づいて物体分類を行うためのサポートベクターマシン(SVM)など、非ニューラル手法とを含む。
【0092】
方法140は、処理142に基づいて、画像が搬送デバイス30を含むかどうかを決定すること143を伴う。たとえば、物体検出モデルは、搬送デバイス30が作業空間のキャプチャされた画像中に存在するかどうかを検出するように、構成、たとえばトレーニングまたは学習される。例では、物体検出モデルは、画像が搬送デバイス30を含む可能性に対応する信頼性のレベル、たとえば確率スコアを用いて、決定143を行う。したがって、ポジティブ決定が、所定のしきい値、たとえば90%または95%を上回る、信頼性レベルに対応し得る。画像が搬送デバイスを含むと決定すること143に応答して、画像中の予測された搬送デバイスを示すアノテーションデータ(たとえば予測データまたは推論データ)が、出力される144。アノテーションデータを含む画像の更新されたバージョンが、たとえば、方法140の一部として出力され得る。
【0093】
例では、アノテーションデータは、バウンディングボックスを備える。
図12は、バウンディングボックス120a、120bでアノテーションを付け(annotate)られた、超広角カメラ71によってキャプチャされた画像82の更新されたバージョン83の一例を示す。バウンディングボックス120a、120bは、それぞれ、物体検出モデルによって検出された、第1の搬送デバイス30aおよび第2の搬送デバイス30bに対応する。所与のバウンディングボックスが、たとえば、検出された物体を囲む矩形を備え、位置と、識別されたクラス(たとえば搬送デバイス)と、信頼性スコア(たとえば、物体がボックス内に存在することになる可能性がどのくらいあるか)とのうちの1つまたは複数を指定し得る。所与のバウンディングボックスを定義するバウンディングボックスデータが、ボックスの2つのコーナーの座標、またはボックスについての幅および高さパラメータをもつ中心座標を含み得る。例では、検出方法140は、出力するためにアノテーションデータ120a、120bを生成することを伴う。
【0094】
いくつかの場合には、物体検出モデルは、さらに、作業空間中の欠陥のある搬送デバイス、たとえば、マスタコントローラからの通信に無反応な、および/またはグリッドと不整合な、および/または作動した(engaged)警告信号をもつ、搬送デバイス、のインスタンスを検出するようにトレーニングされる。
【0095】
たとえば、方法140は、物体検出モデルにより画像データを処理して、その処理に基づいて、画像が、グリッドと不整合な搬送デバイスを含むかどうかを決定することを伴う。物体検出モデルは、搬送デバイスを検出するために使用された同じものであるか、または異なるものであり得る。物体検出モデルは、たとえば、たとえば、直交トラック22からオフセットされた角度における、グリッド15と不整合な搬送デバイスの画像のトレーニングセットを用いてトレーニングされる。画像が不整合な搬送デバイスを含むと決定することに応答して、方法は、アノテーションデータまたはアラートのうちの少なくとも1つを出力することを含み得る。アノテーションデータは、たとえば、画像中の予測された不整合な搬送デバイスを示す。前述のように、アノテーションは、グリッド上の予測された不整合な搬送デバイスを囲むバウンディングボックスを備え得る。出力されたアラートは、たとえば、画像が不整合な搬送デバイスを含むことをシグナリングする。
【0096】
同様に、方法140は、物体検出モデルにより画像データを処理して、その処理に基づいて、画像が、作動した警告信号をもつ搬送デバイスを含むかどうかを決定することを伴い得る。搬送デバイスの警告信号は、発光ダイオード(LED)など、搬送デバイス上の光源によって放出される、所定の光、または光の色を備える。たとえば、搬送デバイスは、マスタコントローラからの通信に反応するときに光の第1の波長(色)を放出することと、マスタコントローラからの通信に反応しないときに光の第2の異なる色波長(色)を放出することとを行うように構成された、LEDを含む。搬送デバイスは、マスタコントローラとの通信が失われたとき、無反応状態になり得、たとえば、したがって、警告信号を作動させる。光源からの警告信号の他のタイプ、たとえば点滅などの放出の所定のパターンが、可能である。画像が不整合な搬送デバイスを含むと決定することに応答して、方法140は、アノテーションデータまたはアラートのうちの少なくとも1つを出力することを含み得る。アノテーションデータは、画像中の、作動した警告信号をもつ予測された搬送デバイスを示す。たとえば、アノテーションデータは、画像中の、作動した警告信号をもつ予測された搬送デバイスを囲むバウンディングボックスを備える。同様に、出力されたアラートは、画像が、作動した警告信号をもつ搬送デバイスを含むことをシグナリングする。出力されるアラートの例は、たとえば、オペレータによる閲覧のためのスクリーン上に、表示されるべきテキストまたは他の視覚メッセージを含む。
【0097】
搬送デバイスのロケーション特定(localisation)
作業空間中の搬送デバイス30を検出する方法140は、画像82中の複数のそれぞれのグリッド空間17における複数の仮想搬送デバイスに対応するさらなるアノテーションデータを生成することを含むことができる。グリッド15上の検出された搬送デバイス30のロケーションは、次いで、画像中の検出された搬送デバイスを示すアノテーションデータを、複数の仮想の搬送するデバイスに対応するさらなるアノテーションデータと比較することによって、決定され得る。たとえば、比較は、アノテーションデータを使用して和集合の共通部分(IoU:intersection over union)値を計算することを含む。最高IoU値に関連するさらなるアノテーションデータに対応するグリッド空間は、次いで、検出された搬送デバイスのグリッドロケーションとして選択され得る。
【0098】
例では、さらなるアノテーションデータは、複数の仮想搬送デバイスに対応する複数のバウンディングボックスを備える。したがって、IoU値を計算することは、2つのバウンディングボックス間の重複、または「共通部分」のエリアを、2つのバウンディングボックスの和集合のエリア(たとえば、2つのボックスによってカバーされた総エリア)で除算することを伴い得る。たとえば、検出された搬送デバイスのバウンディングボックスと所与の仮想搬送デバイスに対応する所与のバウンディングボックスとの間のエリア重複が、算出され、同じ2つのバウンディングボックスについての和集合のエリアで除算される。この計算は、IoU値のセットを与えるために、検出された搬送デバイスのバウンディングボックスと、それぞれの仮想の搬送するデバイスに対応する各バウンディングボックスとについて繰り返される。次いで、IoU値のセット中の最も高いIoU値が選択され得、対応するバウンディングボックスのグリッドロケーションは、検出された搬送デバイスのグリッドロケーションとして推論される。
【0099】
検出システムが、本明細書で説明される検出方法のいずれかを実施するように構成され得る。たとえば、検出システムは、作業空間の少なくとも一部の画像をキャプチャするための画像センサーと、画像データを取得するためのインターフェースとを含む。検出システムは、搬送デバイス30を検出するコンピュータ実装方法140の処理および決定ステップを行うための、たとえば、グラフィックス処理ユニット(GPU)または専用ニューラル処理ユニット(NPU)上で実装された、トレーニングされた物体検出モデルを含む。
【0100】
搬送デバイス上の識別マーカーを検出すること
図15は、グリッド15を備える作業空間中の搬送デバイス上の識別マーカーを検出するコンピュータ実装方法150を示す。方法は、搬送デバイスを含む画像部分を表現する画像データを取得すること151を伴う。画像部分は、たとえば
図7に示されているように、グリッドの上に位置するカメラ71によってキャプチャされた、たとえば
図8Bに示されている、画像82の部分、たとえばその少なくとも一部であり得る。
【0101】
図12は、それぞれの搬送デバイス30a、30bを含む例示的な画像部分121a、121bを示す。画像部分121a、121bは、画像82中の検出された搬送デバイス30a、30bに対応する、アノテーションデータ、たとえばバウンディングボックス120a、120bに基づいて、画像82から抽出され得る。たとえば、作業空間中の搬送デバイスを検出するための方法140の出力アノテーションデータは、画像82から画像部分121a、121bを取得、たとえば抽出するために、使用される。アノテーションデータが1つまたは複数のバウンディングボックスを表現する場合、たとえば、アノテーション付き画像83上にオーバーレイされた1つまたは複数のバウンディングボックス120a、120b中に含まれている画像データに対応する1つまたは複数の画像部分121a、121bが、画像82から抽出される。たとえば、方法150は、画像中の1つまたは複数の搬送デバイスを示すアノテーションデータ120a、120bを含む、アノテーション付き画像データ83を取得することと、それぞれの1つまたは複数の搬送デバイス30a、30bを含む1つまたは複数の画像部分121a、121bを作り出すために、アノテーション付き画像データ83をクロップすることとを伴う。
【0102】
代替例では、画像部分は、カメラ71によってキャプチャされた画像82全体を備える。画像部分は、1つまたは複数の搬送デバイス30を含み得る。言い換えれば、画像部分は、たとえば、カメラ71によってキャプチャされた画像82の少なくとも一部を備える。
【0103】
方法150は、第1のニューラルネットワークと第2のニューラルネットワークとを連続して用いて、取得された画像データを処理すること152をさらに伴う。第1のニューラルネットワークは、画像中の搬送デバイス上の識別マーカーのインスタンスを検出するようにトレーニングされる。第2のニューラルネットワークは、画像中の、識別マーカーに関連する、マーカー情報を認識するようにトレーニングされる。識別(「ID」)マーカーは、たとえば、テキストラベル、または搬送デバイス上の(バーコード、QRコード(登録商標)またはそのようなものなどの)他のコードである。IDマーカーは、そのマーカーに関連するマーカー情報、たとえばテキストまたはQRコードを含む。マーカー情報は、搬送デバイスについてのID情報と対応し、たとえば、より広いシステムにおける搬送デバイスの、たとえば名前または他の記述子と対応する。マーカー情報は、IDマーカーに、たとえばテキストまたは他のコードとして、符号化され、対応するID情報は、所与の搬送デバイスをシステム中で動作する他の搬送デバイスと区別するために使用され得る。
【0104】
例では、第1のニューラルネットワークは、第1の入力データとして画像部分を受信し、たとえば、第2のニューラルネットワークへの入力としてそれに移すために、中間データとして特徴ベクトルを作り出すように構成、たとえばトレーニングまたは学習される。たとえば、第1のニューラルネットワークは、たとえば異なるサイズの、視覚特徴を抽出するために畳み込みを使用し、特徴ベクトルを作り出すように構成された、CNN90を備える。「効率的なおよび正確なシーンテキスト」(EAST:Efficient and Accurate Scene Text)検出器が、搬送デバイス上の識別マーカー、たとえばテキストラベル、のインスタンスを識別するために、第1のニューラルネットワークとして使用され得る。
【0105】
いくつかの場合には、第1のニューラルネットワークは、画像部分中の検出された識別マーカーに対応する、たとえばバウンディングボックスを定義する、さらなるアノテーションデータを出力する。たとえば、処理152は、第1のニューラルネットワークを用いた処理に基づいて、画像部分が搬送デバイス上の識別マーカーを含むかどうかを決定することを伴う。決定がポジティブである場合、画像部分中の識別マーカーのロケーションに対応するさらなるアノテーションデータが、方法150の一部として生成および出力される。さらなるアノテーションデータは、画像または画像部分に対する画像座標を備え得る。たとえば、画像座標は、画像部分中の識別マーカーについてのバウンディングボックスの少なくとも2つのコーナーに対応する。バウンディングボックスは、たとえば、2つの反対コーナーの座標によって定義され得る。
【0106】
例では、画像データを処理すること152は、画像部分のサブ部分を抽出することを伴い、サブ部分は、搬送デバイス上の検出された識別マーカーに対応する。たとえば、画像部分は、識別マーカーを含むサブ部分を生成するようにクロップされる。
図12は、画像部分121aから抽出された、搬送デバイス30a上の検出された識別マーカーに対応する例示的なサブ部分122を示す。サブ部分122は、
図12の例に示されているように、識別マーカーの長手方向軸がサブ部分122に対して実質的に水平になるように、回転され得る。方法150は、次いで、画像中のマーカー情報を認識するように構成、たとえばトレーニングまたは学習された、第2のニューラルネットワークを用いて、サブ部分122を処理することを含むことができる。
【0107】
方法150は、第2のニューラルネットワークによって決定されたマーカー情報を表現するマーカーデータを出力すること153で終わる。たとえば、第2のニューラルネットワークは、IDマーカーを含む画像サブ部分からマーカーデータを導出するように構成される。IDマーカーがテキストラベルを備える例では、第2のニューラルネットワークは、ラベルを含む画像サブ部分を、ラベルシーケンスデータ、たとえば、文字、数字、句読点、または他の記号のシーケンス(または「ストリング」)を備えるマーカーデータに転写するように構成され得る。
図12に示されている例示的なサブ部分122について、第2のニューラルネットワークは、たとえば、搬送デバイス30aの識別ラベルについてのラベルシーケンスデータ「AA-Z82」としてマーカーデータを出力することになる。代替例では、IDマーカーは、たとえば、ラベル上で搬送デバイスに適用された、搬送デバイス上のコード、たとえばQR(「クイックレスポンス」)コードまたはバーコードである。第2のニューラルネットワークは、たとえば、搬送デバイス上のIDマーカーの画像からコードを決定するように構成、たとえばトレーニングまたは学習される。コード、たとえばマーカーデータは、次いで、出力され得る。たとえば、コードは、そこに符号化されたID情報を復号するためにさらに処理され得る。言い換えれば、検出されたQRコードまたはバーコードは、たとえば、搬送デバイスのID情報、たとえば名前を決定するために復号される。
【0108】
例では、第2のニューラルネットワークは、画像サブ部分から視覚特徴を抽出するために畳み込みを適用し、その特徴をシーケンスで配置するように構成された、畳み込みリカレントニューラルネットワーク(CRNN)を備える。CRNNは、2つのニューラルネットワーク、たとえば、CNNおよびさらなるニューラルネットワークを備える。いくつかの場合には、第2のニューラルネットワークは、双方向リカレントニューラルネットワーク(RNN)、たとえば双方向長短期記憶(LSTM)モデルを含む。たとえば、双方向RNNは、たとえば、
図12の例では、IDシーケンスが、文字「A」から開始し、数字で終了する可能性が極めて高いなど、特徴シーケンスにおけるパターンから学習されたシーケンシャルな手がかりを適用して、マーカーに符号化されたIDシーケンスを予測するために、CNNの特徴シーケンス出力を処理するように構成される。したがって、第2のニューラルネットワークは、2つ以上のニューラルネットワークのパイプライン、たとえば、深層双方向LSTMにパイピングされたCNNを備え得、したがって、CNNの特徴シーケンス出力は、それを入力として受信するそのbiLSTMにパスされる。他の例では、第2のニューラルネットワークは、異なるタイプの深層学習アーキテクチャ、たとえば深層ニューラルネットワークを備える。
【0109】
検出システムが、本明細書で説明される検出方法のいずれかを実施するように構成され得る。たとえば、検出システムは、作業空間の少なくとも一部の画像をキャプチャするための画像センサーと、画像データを取得するためのインターフェースとを含む。検出システムは、搬送デバイス30上の識別マーカーを検出するコンピュータ実装方法150の処理および決定ステップを行うための、たとえば、グラフィックス処理ユニット(GPU)または専用ニューラル処理ユニット(NPU)上で実装された、トレーニングされた物体検出モデルを含む。
【0110】
除外ゾーン(exclusion zone)を決定すること
作業空間中の除外ゾーンを決定するための方法およびシステムが、本明細書で提供される。除外ゾーンは、搬送デバイスのマスタコントローラによって実装され得、作業空間中で動作する搬送デバイスが除外ゾーンに入るのを禁止するように機能する。たとえば、除外ゾーンは、たとえば、倒れた、および/またはマスタコントローラとの通信を失った、欠陥のある搬送デバイスの周りで決定され得、したがって、欠陥のある搬送デバイスは、後で、注意を払われ、たとえば作業空間から取り出され得る。これは、他の搬送デバイスが欠陥のある搬送デバイスと衝突するリスクを低下させながら、作業空間が使用可能なままであることを可能にする。いくつかの場合には、決定された除外ゾーンは、実装の前に、たとえばオペレータに、提案され得、これは、決定された除外ゾーンが、作業空間中の欠陥のある搬送デバイスの実際の位置をカバーすることになることを保証するのを助けることができる。
【0111】
図16は、作業空間、たとえば、
図7を参照しながら説明されたグリッド15を備える作業空間中で動作する1つまたは複数の搬送デバイス30の移動の制御を支援するためのコンピュータ実装方法160を示す。
【0112】
方法160は、1つまたは複数の画像センサーによってキャプチャされた作業空間の画像表現を取得すること161から開始する。たとえば、1つまたは複数の画像センサーは、作業空間のビューをもつ1つまたは複数のカメラ71の一部である。カメラ71は、
図7に示されているように作業空間のグリッド15の上に配設され得る。作業空間の画像は、たとえば、1つまたは複数の画像センサーに通信可能に結合されたインターフェース、たとえばカメラインターフェースまたはCSIにおいて受信される。
【0113】
作業空間の画像表現のターゲット画像部分が、インターフェース、たとえば、画像を受信するために使用されるものとは異なるインターフェースにおいて、取得される162。ターゲット画像部分は、作業空間中のターゲットロケーションにマッピングされる163。マッピング163に基づいて、1つまたは複数の搬送デバイスが入るのを禁止されることになる、作業空間中の除外ゾーンが決定される164。除外ゾーンは、ターゲット画像部分からマッピングされたターゲットロケーションを含む。除外ゾーンを表現する除外ゾーンデータが、作業空間中の除外ゾーンを実装するために制御システム、たとえばマスタコントローラに出力される165。
【0114】
たとえば、作業空間の画像表現を閲覧するユーザが、ターゲット画像部分を取得するように構成されたインターフェースを介してターゲット画像部分を選択する。インターフェースは、たとえば、ユーザが対話するためのユーザインターフェースであり得る。ユーザインターフェースは、画像センサーによってキャプチャされた作業空間の画像表現を表示するためのディスプレイスクリーンを含み得る。ユーザインターフェースは、ユーザがそれを用いてターゲット画像部分を選択することができる入力手段、たとえば、タッチスクリーンディスプレイ、キーボード、マウス、または他の好適な手段をも含み得る。
【0115】
例では、ターゲット画像部分は、作業空間中の欠陥のある搬送デバイスの少なくとも一部を含む。たとえば、ターゲット画像部分は、画像センサーによってキャプチャされた作業空間の画像から選択された1つまたは複数のピクセルのサブセットである。1つまたは複数のピクセルは、作業空間の画像中に示された欠陥のある搬送デバイスの少なくとも一部に対応する。たとえば、ターゲット画像部分は、画像中に示された欠陥のある搬送デバイス全体を含む。他の例では、ターゲット画像部分は、画像中に示された欠陥のある搬送デバイスの一部に対応する単一のピクセルのみである。
【0116】
たとえば、作業空間がセル17のグリッド15を備える、他の例では、ターゲット画像部分は、セルのグリッド中の所与のセルに対応する。たとえば、ターゲット画像部分は、所与のセルの少なくとも一部に対応する1つまたは複数のピクセルのサブセットである。いくつかの場合には、ターゲット画像部分はセル全体を含み、他の場合には、ターゲット画像部分は、セルの一部に対応する単一のピクセルのみである。
【0117】
上記で説明されたように、いくつかの例では、ユーザは、インターフェース、たとえばユーザインターフェースを介してターゲット画像部分を選択する。しかしながら、他の例では、ターゲット画像部分は、作業空間の画像から欠陥のある搬送デバイスを検出するように構成された物体検出システムから取得される。たとえば、方法160は、物体検出システムが、画像センサーによってキャプチャされた作業空間の画像を取得することと、物体分類モデルを使用して、欠陥のある搬送デバイスが画像データ中に存在することを決定することとを伴う。
【0118】
物体分類モデル、たとえば物体分類器は、概して
図9を参照しながら説明された、例におけるニューラルネットワークを備え、これは、相応に適用されると解釈される。たとえば、物体分類器は、画像センサーによってその後キャプチャされる画像を、作業空間中の欠陥のある搬送デバイスを含んでいるものまたは含んでいないものとして分類するように、作業空間中の欠陥のある搬送デバイスの画像のトレーニングセットを用いてトレーニングされる。
【0119】
トレーニングされた物体分類器によるポジティブ分類の場合、物体検出システムは、次いで、ターゲット画像部分を出力することができる。たとえば、物体検出システムは、たとえば、バウンディングボックスなどのアノテーションデータを使用して、画像センサーからの元の画像中のターゲット画像部分を示し得る。代替的に、物体検出システムは、画像センサーから受信された元の入力画像のクロップされたバージョンとしてターゲット画像部分を出力し、クロップされたバージョンは、作業空間中の識別された欠陥のある搬送デバイスを含む。
【0120】
例では、物体検出システムは、画像データ中の欠陥のある搬送デバイスとそのロケーションとを検出するようにトレーニングされたニューラルネットワークを備える。たとえば、物体検出システムは、欠陥のある搬送デバイスが存在する入力画像の領域を決定する。その領域は、次いで、たとえば、ターゲット画像部分として出力され得る。そのような場合、ニューラルネットワークのトレーニングは、作業空間中の欠陥のある搬送デバイスを示す作業空間のアノテーション付き画像を使用することを伴う。したがって、ニューラルネットワークは、作業空間中の物体を欠陥のある搬送デバイスとして分類することと、欠陥のある搬送デバイスが画像中のどこにあるかを検出すること、すなわち、作業空間の画像に対する欠陥のある搬送デバイスのロケーションを特定することとの両方を行うようにトレーニングされる。
【0121】
本明細書で説明されるように、物体検出システムによって出力されたターゲット画像部分は、作業空間中の欠陥のある搬送デバイスの少なくとも一部を含み得る。たとえば、ターゲット画像部分は、画像センサーによってキャプチャされた画像から、たとえば、欠陥のある搬送デバイスのポジティブロケーション特定に基づいて、物体検出システムによって選択された1つまたは複数のピクセルのサブセットである。
【0122】
例では、決定された除外ゾーンは、離散数(discrete number)のグリッド空間を含む。たとえば、欠陥のある搬送デバイスがグリッド15上の単一のグリッド空間17内にあることが決定され得る。したがって、除外ゾーンは、たとえば、他の搬送デバイスがその単一のグリッド空間に入るのを禁止されるように、そのグリッド空間に延在すると決定される。したがって、他の搬送デバイスと欠陥のある搬送デバイスとの間の衝突が防がれ得る。代替的に、除外ゾーンは、欠陥のある搬送デバイスがあるグリッドセルを中心とするグリッドセルの領域、たとえば3×3セルエリアとして、設定され得る。したがって、除外ゾーンは、欠陥のある搬送デバイスがある、影響を受けるグリッドセルの周りのバッファエリアを含む。いくつかの場合には、欠陥のある搬送デバイスは、たとえば、それが、グリッドセル間に位置するか、倒れたか、またはトラック22と不整合である場合、2つ以上のグリッドセルにわたる。そのような場合、(ターゲットロケーションを含む)マッピングされたグリッドセルの周りのバッファエリアは、マッピングされたグリッドセルのみを除外することに対して除外ゾーンの有効性を改善することができる。バッファエリアのサイズは、たとえば、除外するためのマッピングされたグリッドセルが決定されると適用されることになる、グリッドセルの設定されたエリアとして、あらかじめ決定され得る。追加または代替として、バッファエリアのサイズは、制御システムにおいて除外ゾーンを実装するときの選択可能なパラメータである。
【0123】
作業空間中で動作する搬送デバイスの移動をリモートで制御する制御システム、たとえばマスタコントローラは、方法160の一部としての除外ゾーンデータ出力165に基づいて除外ゾーンを実装することができる。たとえば、1つまたは複数の搬送デバイス30の各々が、制御システム、たとえば中央コンピュータの制御下でリモートで動作可能である。グリッド15上の1つまたは複数の搬送デバイス30の移動を制御するために、たとえば、1つまたは複数の基地局を実装する、ワイヤレス通信ネットワークを介して、制御システムから1つまたは複数の搬送デバイス30に命令が送られ得る。
【0124】
各搬送デバイス30中のコントローラが、その移動を制御するために、搬送デバイス、たとえば車両32の様々な駆動機構を制御するように構成される。たとえば、命令は、所与の搬送デバイスについての定義された軌道にカプセル化され得る、グリッド構造15のX-Y平面における様々な移動を含む。したがって、除外ゾーンは、定義された軌道が、除外ゾーンデータによって表現された除外ゾーンを回避するように、中央制御システム、たとえばマスタコントローラによって実装され得る。たとえば、除外ゾーンが実装されたとき、グリッド上の1つまたは複数の搬送デバイス30に対応する1つまたは複数のそれぞれの軌道が、除外ゾーンを回避するように更新される。
【0125】
例では、ターゲット画像部分(たとえば画像中の1つまたは複数のピクセル)をターゲットロケーション(たとえばグリッド構造上のポイント)にマッピングすることが、作業空間の画像のひずみを逆にすることを伴う。たとえば、画像センサーが超広角レンズと組み合わせて使用される場合、そのレンズは、作業空間のビューをひずませる。したがって、そのひずみは、たとえば、画像ピクセルとグリッドポイントとの間のマッピングの一部として、逆にされる。逆ひずみモデルが、この目的でターゲット画像部分に適用され得る。以前の例における画像からグリッドへのマッピングアルゴリズムの説明は、ここで相応に適用される。たとえば、ターゲット画像部分をターゲットグリッドロケーションにマッピングすることが、本明細書で説明される、画像からグリッドへのマッピングアルゴリズムを適用することを伴う。
【0126】
作業空間中の搬送デバイス移動を制御するための制御システムを支援する方法160は、実施形態では支援システムによって実装される。たとえば、支援システムは、作業空間の画像表現をキャプチャするための1つまたは複数の画像センサーと、画像のターゲット画像部分を取得するためのインターフェースとを含む。支援システムは、方法160の、マッピングすること163、決定すること164、および出力する165のステップを実施するように構成される。たとえば、支援システムは、制御システム、たとえばマスタコントローラが、入力として受信し、作業空間中で実装するために、除外ゾーンデータを出力する。除外ゾーンデータは、支援システムと制御システムとの間で直接移され得るか、または制御システムによってアクセス可能なストレージに支援システムによって記憶され得る。
【0127】
支援システムを採用する実施形態では、作業空間中の欠陥のある搬送デバイスを検出するように構成された物体検出システムは、たとえば、支援システムの一部である。支援システムのインターフェースは、例において説明されるように、物体検出システムからターゲット画像部分を取得し得る。
【0128】
支援システムは、作業空間と、作業空間中の搬送デバイス移動を制御するための制御システムとを含む、保管システム1、たとえば
図7に示されている例に組み込まれ得る。
図7を参照する例において説明されたように、作業空間は、X方向に延在する平行なトラックの第1のセット22aと、実質的に水平な平面において第1のセットに直交する、Y方向に延在する平行なトラックの第2のセット22bとによって形成された、グリッド15を含む。グリッド15は、複数のグリッド空間17を含み、1つまたは複数の搬送デバイス30は、単一のグリッド空間17のフットプリント内でトラック22の下にスタックされたコンテナ10を取り扱うために、トラック上で周辺を選択的に移動するように配置される。各搬送デバイス30は、1つのグリッド空間を占有する所与の搬送デバイスが、隣接するグリッド空間を占有するかまたは横断する別の搬送デバイスを妨害しないように、単一のグリッド空間17のみを占有するフットプリントを有し得る。
【0129】
例において説明されるように、除外ゾーンは、離散数のグリッド空間17に対応することができる。たとえば、支援システムは、グリッド15の上のカメラ71によってキャプチャされた画像中で検出された欠陥のある搬送デバイス30に対応する、グリッド15上のターゲットロケーションを決定する。ターゲットロケーションは、たとえば、前の例において説明された較正方法に基づいて、グリッド全体に対するグリッド空間座標にコンバートされ、除外ゾーンが、ターゲットロケーションのグリッド空間に基づいて決定される。たとえば、除外ゾーンは、ターゲットロケーションの少なくともグリッド空間を含むが、例において説明されるように、たとえばバッファエリアとして、さらなる周囲グリッド空間を含み得る。保管システムの制御システム、たとえばマスタコントローラは、作業空間中で動作する搬送デバイス30が除外ゾーンに入るのを禁止されるように、支援システムによって決定された除外ゾーンデータに基づいて、作業空間中の除外ゾーンを実装するように構成される。
【0130】
上記の例は、例示的な例として理解されるべきである。さらなる例が想定される。たとえば、グリッド15の上に配設されたカメラ71は、多くの例では超広角カメラとして説明された。しかしながら、カメラ71は広角カメラであり得、これは、超広角レンズよりも比較的長い焦点距離を有する広角レンズを含むが、人間観測者にとって「自然」に見える視野を再現する通常レンズと比較して、依然としてひずみをもたらす。
【0131】
同様に、説明される例は、「画像」または「画像データ」を取得および処理することを含む。そのような画像は、いくつかの場合には、たとえば、フレームのシーケンスを備えるビデオから選択された、ビデオフレームであり得る。ビデオは、本明細書で説明されるようにグリッドの上に位置するカメラによってキャプチャされ得る。したがって、画像を取得および処理することは、ビデオ、たとえばビデオストリームからのフレームを取得および処理することを含むと解釈されるべきである。たとえば、説明されるニューラルネットワークは、複数の画像を備えるビデオストリーム中の物体(たとえば、搬送デバイス、その上のIDマーカーなど)のインスタンスを検出するようにトレーニングされ得る。さらに、搬送デバイス上のIDマーカーを検出することを伴う説明される例では、画像データは、第1のニューラルネットワークと第2のニューラルネットワークとを連続して用いて処理される。しかしながら、代替例では、第1のニューラルネットワークと第2のニューラルネットワークとは、たとえば単一のニューラルネットワークとして、エンドツーエンドIDマーカー検出パイプラインまたはアーキテクチャにおいてマージされる。たとえば、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成された、グリッドを備える作業空間中の搬送デバイス上の識別マーカーを検出する方法であって、グリッドが、複数のグリッド空間を備え、ここにおいて、1つまたは複数の搬送デバイスが、トラック上でX方向またはY方向のうちの少なくとも1つにおいて選択的に移動することと、単一のグリッド空間のフットプリント内でトラックの下にスタックされたコンテナを取り扱うこととを行うように配置される、方法も提供される。本方法は、1つまたは複数の搬送デバイスのうちの搬送デバイスを含む画像部分を表現する画像データを取得することと、画像中の搬送デバイス上の識別マーカーのインスタンスを検出すること、および画像中の、識別マーカーに関連する、マーカー情報を認識することを行うようにトレーニングされた、少なくとも1つのニューラルネットワークを用いて画像データを処理することと、第2のニューラルネットワークによって決定されたマーカー情報を表現するマーカーデータを出力することとを備える。この代替例による、検出システムのコンテキストでは、1つまたは複数のプロセッサは、画像中の搬送デバイス上の識別マーカーのインスタンスを検出すること、および画像中の、識別マーカーに関連する、マーカー情報を認識することを行うようにトレーニングされた、少なくとも1つのニューラルネットワークを実装するように構成される。検出システムは、搬送デバイス上の識別マーカー上に存在する(たとえばそれに符号化された)マーカー情報(たとえば搬送デバイスの記述子)を表現するマーカーデータ(たとえばテキストストリングまたはコード)を生成するために、少なくとも1つのニューラルネットワークを用いて、取得された画像データを処理することと、マーカーデータを出力することとを行うように構成される。
【0132】
さらに、搬送デバイスのロケーション特定に関する説明される例では、グリッド15上の検出された搬送デバイス30のロケーションは、画像中の検出された搬送デバイスを示すアノテーションデータを、複数の仮想の搬送するデバイスに対応するさらなるアノテーションデータと比較することによって、決定可能である。代替例では、グリッド15上の検出された搬送デバイス30のロケーションは、2つのステッププロセスにおいて決定され得る。第1に、複数の仮想搬送デバイスはフィルタ処理され、これは、たとえば、搬送デバイス30の予測/推論データと、複数の仮想搬送デバイスのすべての可能なロケーションのアノテーションデータとを使用して、和集合の共通部分(IoU)値を計算することを含む。たとえば、所定のしきい値よりも小さい計算されたIoU値をもつ仮想搬送デバイスが、フィルタで除去される。第2に、すべての残りの仮想搬送デバイスが、カメラの視野の中心に最も近い距離によって(たとえば昇順で)ソートされ、第1の(たとえば最も近い)仮想搬送デバイスが、マッピングとしてとられる。搬送デバイス30のグリッドロケーションは、次いで、たとえば、マッピングされた仮想搬送デバイスのアノテーションデータがそこから作成される、グリッドロケーションに設定される。
【0133】
データを記憶するためにストレージを採用する例では、ストレージは、DDR-SDRAM(ダブルデータレート同期ダイナミックランダムアクセスメモリ)などのランダムアクセスメモリ(RAM)であり得る。他の例では、ストレージ330は、読取り専用メモリ(ROM)などの不揮発性メモリ、またはフラッシュメモリなどのソリッドステートドライブ(SSD)を含み得る。ストレージは、いくつかの場合には、他の記憶媒体、たとえば、磁気、光またはテープ媒体、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)または他のデータ記憶媒体を含む。ストレージは、関係するシステムから取外し可能であるか、または取外し不可能であり得る。
【0134】
データ処理を採用する例では、プロセッサが、関係するシステムの一部として採用され得る。プロセッサは、中央処理ユニット(CPU)、マイクロプロセッサ、グラフィックス処理ユニット(GPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または別のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明されるデータ処理機能を実施するように設計されたそれらの任意の好適な組合せなど、汎用プロセッサであり得る。
【0135】
ニューラルネットワークを伴う例では、専用プロセッサが、関係するシステムの一部として採用され得る。専用プロセッサは、NPU、ニューラルネットワークアクセラレータ(NNA)、またはニューラルネットワーク機能について専用化されたハードウェアアクセラレータの他のバージョンであり得る。追加または代替として、ニューラルネットワーク処理作業負荷は、1つまたは複数の標準プロセッサ、たとえばCPUまたはGPUによって、少なくとも部分的に共有され得る。
【0136】
「アイテム」という用語が説明全体にわたって使用されたが、それは、ケース、アセット、ユニット、パレット、機器など、他の用語を含むことが想定される。「アノテーションデータ」という用語が、説明全体にわたって同様に使用された。しかしながら、その用語は、代替の命名法では予測データまたは推論データと対応することが想定される。たとえば、(たとえばニューラルネットワークを備える)物体検出モデルは、モデルについてのグランドトゥルース、たとえば、100%または正規化されたときに1の信頼性をもつ予測または推論として働く、アノテーション付き画像、たとえば、バウンディングボックスなどのアノテーションをもつ画像を使用して、トレーニングされ得る。これらのアノテーションは、たとえば、モデルをトレーニングする目的のために人間によって行われ得る。したがって、本開示の物体検出は、画像中の搬送デバイスの予測または推論を示すために、(たとえば「アノテーションデータ」の代わりに)予測データまたは推論データを出力することを伴うと解釈され得る。予測データまたは推論データは、画像に適用されるアノテーション、たとえばバウンディングボックスおよび/またはラベルとして表現され得る。予測データまたは推論データは、たとえば、画像中の搬送デバイスの予測または推論に関連する信頼性を含む。アノテーションは、たとえば、生成された予測データまたは推論データに基づいて画像に適用され得る。たとえば、画像は、たとえば、割合値、または0から1の間の正規化された値として、予測の信頼性レベルを示すラベルをもつ、予測された搬送デバイスを囲むバウンディングボックスを含むように更新され得る。
【0137】
また、任意の一例に関して説明される特徴が、単独で、または説明される他の特徴と組み合わせて使用され得、また、例のうちの任意の他のものの1つまたは複数の特徴と組み合わせて、または例のうちの任意の他のものの任意の組合せで使用され得ることを理解されたい。さらに、上記で説明されない等価物および修正も、添付の特許請求の範囲の範囲から逸脱することなく採用され得る。
【手続補正書】
【提出日】2024-07-19
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
保管システムのグリッドの上に配設された広角または超広角カメラを較正する方法であって、前記グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において前記第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、
前記グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内で前記トラックの下にスタックされたコンテナを取り扱うために、前記トラック上で前記X方向または前記Y方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置され、
前記方法は、
前記カメラによってキャプチャされた前記グリッドのグリッドセクションの画像を取得することと、
前記カメラに対応する複数のパラメータの初期値を取得することと、前記複数のパラメータが、前記カメラの焦点距離と、前記グリッドセクションの上の前記カメラの位置を表現する並進ベクトルと、前記カメラの傾きおよび回転を表現する回転ベクトルとを含む、
前記画像を、前記グリッドセクションの前記画像中にキャプチャされた、平行なトラックの前記第1のセットおよび前記第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの前記第1のセットおよび前記第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、
前記複数のパラメータに基づくマッピングを使用して、前記モデル中の選択されたピクセルを、前記グリッド上の対応するポイントにマッピングすることと、ここにおいて、前記初期値が、前記マッピングへの入力として使用される、
前記マッピングによって決定された前記ポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、
前記誤差関数に基づいて、前記初期値を前記複数のパラメータの更新された値に更新することと、
前記マッピングを介して、前記カメラによってキャプチャされた前記グリッドセクションの画像中のピクセルを、前記保管システムの前記グリッド上の対応するポイントにマッピングするために、前記複数のパラメータの前記更新された値を記憶することと
を備える、方法。
【請求項2】
前記複数のパラメータの前記初期値を更新することが、ブロイデン-フレッチャー-ゴールドファーブ-シャンノアルゴリズムを適用することを備える、請求項1に記載の方法。
【請求項3】
前記誤差関数を反復的に決定することと、さらに、前記誤差関数が所定のしきい値未満だけ低減されるまで、前記複数のパラメータの前記更新された値を更新することとを備える、請求項1または2に記載の方法。
【請求項4】
前記複数のパラメータについてのそれぞれの境界値が、前記複数のパラメータのそれぞれの値を更新するときに適用される、請求項1
または2に記載の方法。
【請求項5】
前記回転ベクトルに関連する回転角についての前記境界値が、実質的に0度および実質的に+5度である、請求項4に記載の方法。
【請求項6】
前記並進ベクトルの平面成分についての前記境界値が、グリッドセルの長さの±0.6である、請求項
4に記載の方法。
【請求項7】
前記並進ベクトルの高さ成分についての前記境界値が、前記グリッドの1800mmおよび2100mm上である、請求項
4に記載の方法。
【請求項8】
前記焦点距離についての前記境界値が、0.23および0.26cmである、請求項
4に記載の方法。
【請求項9】
前記記憶することが、前記カメラに関連する保管ロケーションにおいて、データベース中に、前記更新された値を記憶することを備える、請求項1
または2に記載の方法。
【請求項10】
前記画像を、前記画像中の前記グリッドセクションのグリッドセル中にあるグリッドセルマーカーを検出するために、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた物体検出モデルを使用して、処理することと、
前記グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することと、
前記抽出されたセル座標データに基づいて、前記グリッド上のポイントへの前記画像中のピクセルの前記マッピングによって生成された、グリッド座標を較正することと
を備える、請求項1
または2に記載の方法。
【請求項11】
平行なトラックの前記第1のセットおよび前記第2のセットの中心線のみを表現するように前記グリッドセクションの前記モデルを改良することを備え、前記改良することが、水平線および垂直線検出カーネルで前記モデルをフィルタ処理することを備える、請求項1
または2に記載の方法。
【請求項12】
前記フィルタ処理することが、前記水平線および垂直線検出カーネルを使用して前記モデルのピクセル値を収縮させることと膨張させることとのうちの少なくとも1つを備える、請求項11に記載の方法。
【請求項13】
2次中心線を作り出すために前記中心線をそれぞれの2次軌道に適合させることと、
前記モデルを生成するために前記2次中心線からピクセルのランダムサブセットを抽出することと
を備える、請求項1
1に記載の方法。
【請求項14】
前記マッピングが、前記画像中の所与のピクセルと前記グリッド上の対応するポイントとについて、
前記画像中の前記ピクセルの画像座標に基づいて、前記対応するポイントの第2のデカルト座標を決定することと、
前記第2のデカルト座標を第2の極座標にコンバートすることと、
第1の極座標を生成するために前記第2の極座標に逆ひずみモデルを適用することと、
前記第1の極座標を前記ポイントの第1のデカルト座標にコンバートすることと、
前記ポイントを、前記カメラに対応する第2の平面におけるデカルト座標系から整合解除することと、
前記グリッドに対する前記ポイントのグリッド座標を決定するために、前記第2の平面から前記グリッドに対応する第1の平面上に前記ポイントを投影することと
を備える、請求項1
または2に記載の方法。
【請求項15】
前記逆ひずみモデルが、
【数1】
によって与えられるひずみのタンジェントモデルに基づき、
ここにおいて、r’が前記ポイントのひずんだ半径方向座標であり、rが前記ポイントのひずんでいない半径方向座標であり、fが前記カメラの前記焦点距離である、
請求項14に記載の方法。
【請求項16】
前記第2のデカルト座標を決定することが、前記画像座標をセンタリングすることまたは正規化することのうちの少なくとも1つを含む、前記画像中の前記ピクセルを初期化することを備える、請求項1
4に記載の方法。
【請求項17】
前記第2のデカルト座標を決定することが、前記画像座標の縦座標を反転させることを備える、請求項1
4に記載の方法。
【請求項18】
前記ポイントを前記デカルト座標系から整合解除することが、前記ポイントを前記画像中の前記グリッドの配向と整合させるために、前記ポイントに回転変換を適用することを備える、請求項1
4に記載の方法。
【請求項19】
前記グリッドに対応する前記第1の平面上に前記ポイントを投影することが、
【数2】
を算出することを備え、
ここにおいて、
【数3】
であり、
ここにおいて、pが、前記グリッドに対応する前記第1の平面におけるポイント座標を備え、fが前記カメラの前記焦点距離であり、tが平面並進ベクトルであり、qが前記第2の平面における前記第1のデカルト座標を備え、zが前記カメラと前記グリッドとの間の距離であり、Rが、回転ベクトルに関係する3次元回転行列である、
請求項1
4に記載の方法。
【請求項20】
保管システムのグリッドの上に配設された広角または超広角カメラを較正するための較正システムであって、前記グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において前記第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、
前記グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内で前記トラックの下にスタックされたコンテナを取り扱うために、前記トラック上で前記X方向または前記Y方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置され、
前記較正システムは、
前記カメラによってキャプチャされた前記グリッドのグリッドセクションの画像を取得することと、前記カメラに対応する複数のパラメータの初期値を取得することと、前記複数のパラメータが、前記カメラの焦点距離と、前記グリッドセクションの上の前記カメラの位置を表現する並進ベクトルと、前記カメラの傾きおよび回転を表現する回転ベクトルとを含む、を行うための少なくとも1つのインターフェースと、
前記画像を、前記グリッドセクションの前記画像中にキャプチャされた、平行なトラックの前記第1のセットおよび前記第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの前記第1のセットおよび前記第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、
前記複数のパラメータに基づくマッピングを使用して、前記モデル中のピクセルを、前記グリッド上の対応するポイントにマッピングすることと、ここにおいて、前記初期値が、前記マッピングへの入力として使用される、
前記マッピングによって決定された前記ポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、
前記誤差関数に基づいて、前記初期値を前記複数のパラメータの更新された値に更新することと、
前記マッピングを介して、前記カメラによってキャプチャされた前記グリッドセクションの画像中のピクセルを、前記保管システムの前記グリッド上の対応するポイントにマッピングするために、前記複数のパラメータの前記更新された値をストレージに出力することと
を行うように構成された、少なくとも1つのプロセッサと
を備える、較正システム。
【請求項21】
前記少なくとも1つのプロセッサが、
前記画像を、前記画像中の前記グリッドセクションのグリッドセル中にあるグリッドセルマーカーを検出するために、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた物体検出モデルを使用して、処理することと、
前記グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することと、
前記抽出されたセル座標データに基づいて、前記グリッド上のポイントへの前記画像中のピクセルの前記マッピングによって生成された、グリッド座標を較正することと
を行うように構成された、請求項20に記載の較正システム。
【請求項22】
前記グリッドセルマーカーが、サインボードを備え、前記セル座標データが、前記サインボード上にマークされる、請求項21に記載の較正システム。
【請求項23】
前記マッピングが、前記画像中の所与のピクセルと前記グリッド上の対応するポイントとについて、
前記画像中の前記ピクセルの画像座標に基づいて、前記対応するポイントの第2のデカルト座標を決定することと、
前記第2のデカルト座標を第2の極座標にコンバートすることと、
第1の極座標を生成するために前記第2の極座標に逆ひずみモデルを適用することと、
前記第1の極座標を前記ポイントの第1のデカルト座標にコンバートすることと、
前記ポイントを、前記カメラに対応する第2の平面におけるデカルト座標系から整合解除することと、
前記グリッドに対する前記ポイントのグリッド座標を決定するために、前記第2の平面から前記グリッドに対応する第1の平面上に前記ポイントを投影することと
を備える、請求項20から22のいずれか一項に記載の較正システム。
【請求項24】
前記逆ひずみモデルが、
【数4】
によって与えられるひずみのタンジェントモデルに基づき、
ここにおいて、r’が前記ポイントのひずんだ半径方向座標であり、rが前記ポイントのひずんでいない半径方向座標であり、fが前記カメラの前記焦点距離である、
請求項23に記載の較正システム。
【請求項25】
前記ニューラルネットワークが、畳み込みニューラルネットワークを備える、請求項20から
22のいずれかに記載の較正システム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0137
【補正方法】変更
【補正の内容】
【0137】
また、任意の一例に関して説明される特徴が、単独で、または説明される他の特徴と組み合わせて使用され得、また、例のうちの任意の他のものの1つまたは複数の特徴と組み合わせて、または例のうちの任意の他のものの任意の組合せで使用され得ることを理解されたい。さらに、上記で説明されない等価物および修正も、添付の特許請求の範囲の範囲から逸脱することなく採用され得る。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
保管システムのグリッドの上に配設された広角または超広角カメラを較正する方法であって、前記グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において前記第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、
前記グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内で前記トラックの下にスタックされたコンテナを取り扱うために、前記トラック上で前記X方向または前記Y方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置され、
前記方法は、
前記カメラによってキャプチャされた前記グリッドのグリッドセクションの画像を取得することと、
前記カメラに対応する複数のパラメータの初期値を取得することと、前記複数のパラメータが、前記カメラの焦点距離と、前記グリッドセクションの上の前記カメラの位置を表現する並進ベクトルと、前記カメラの傾きおよび回転を表現する回転ベクトルとを含む、
前記画像を、前記グリッドセクションの前記画像中にキャプチャされた、平行なトラックの前記第1のセットおよび前記第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの前記第1のセットおよび前記第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、
前記複数のパラメータに基づくマッピングを使用して、前記モデル中の選択されたピクセルを、前記グリッド上の対応するポイントにマッピングすることと、ここにおいて、前記初期値が、前記マッピングへの入力として使用される、
前記マッピングによって決定された前記ポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、
前記誤差関数に基づいて、前記初期値を前記複数のパラメータの更新された値に更新することと、
前記マッピングを介して、前記カメラによってキャプチャされた前記グリッドセクションの画像中のピクセルを、前記保管システムの前記グリッド上の対応するポイントにマッピングするために、前記複数のパラメータの前記更新された値を記憶することと
を備える、方法。
[C2]
前記複数のパラメータの前記初期値を更新することが、ブロイデン-フレッチャー-ゴールドファーブ-シャンノアルゴリズムを適用することを備える、C1に記載の方法。
[C3]
前記誤差関数を反復的に決定することと、さらに、前記誤差関数が所定のしきい値未満だけ低減されるまで、前記複数のパラメータの前記更新された値を更新することとを備える、C1または2に記載の方法。
[C4]
前記複数のパラメータについてのそれぞれの境界値が、前記複数のパラメータのそれぞれの値を更新するときに適用される、C1から3のいずれかに記載の方法。
[C5]
前記回転ベクトルに関連する回転角についての前記境界値が、実質的に0度および実質的に+5度である、C4に記載の方法。
[C6]
前記並進ベクトルの平面成分についての前記境界値が、グリッドセルの長さの±0.6である、C4または5に記載の方法。
[C7]
前記並進ベクトルの高さ成分についての前記境界値が、前記グリッドの1800mmおよび2100mm上である、C4から6のいずれか一項に記載の方法。
[C8]
前記焦点距離についての前記境界値が、0.23および0.26cmである、C4から7のいずれか一項に記載の方法。
[C9]
前記記憶することが、前記カメラに関連する保管ロケーションにおいて、データベース中に、前記更新された値を記憶することを備える、C1から8のいずれかに記載の方法。
[C10]
前記画像を、前記画像中の前記グリッドセクションのグリッドセル中にあるグリッドセルマーカーを検出するために、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた物体検出モデルを使用して、処理することと、
前記グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することと、
前記抽出されたセル座標データに基づいて、前記グリッド上のポイントへの前記画像中のピクセルの前記マッピングによって生成された、グリッド座標を較正することと
を備える、C1から9のいずれかに記載の方法。
[C11]
平行なトラックの前記第1のセットおよび前記第2のセットの中心線のみを表現するように前記グリッドセクションの前記モデルを改良することを備え、前記改良することが、水平線および垂直線検出カーネルで前記モデルをフィルタ処理することを備える、C1から10のいずれかに記載の方法。
[C12]
前記フィルタ処理することが、前記水平線および垂直線検出カーネルを使用して前記モデルのピクセル値を収縮させることと膨張させることとのうちの少なくとも1つを備える、C11に記載の方法。
[C13]
2次中心線を作り出すために前記中心線をそれぞれの2次軌道に適合させることと、
前記モデルを生成するために前記2次中心線からピクセルのランダムサブセットを抽出することと
を備える、C11または12に記載の方法。
[C14]
前記マッピングが、前記画像中の所与のピクセルと前記グリッド上の対応するポイントとについて、
前記画像中の前記ピクセルの画像座標に基づいて、前記対応するポイントの第2のデカルト座標を決定することと、
前記第2のデカルト座標を第2の極座標にコンバートすることと、
第1の極座標を生成するために前記第2の極座標に逆ひずみモデルを適用することと、
前記第1の極座標を前記ポイントの第1のデカルト座標にコンバートすることと、
前記ポイントを、前記カメラに対応する第2の平面におけるデカルト座標系から整合解除することと、
前記グリッドに対する前記ポイントのグリッド座標を決定するために、前記第2の平面から前記グリッドに対応する第1の平面上に前記ポイントを投影することと
を備える、C1から13のいずれかに記載の方法。
[C15]
前記逆ひずみモデルが、
【数11】
によって与えられるひずみのタンジェントモデルに基づき、
ここにおいて、r’が前記ポイントのひずんだ半径方向座標であり、rが前記ポイントのひずんでいない半径方向座標であり、fが前記カメラの前記焦点距離である、
C14に記載の方法。
[C16]
前記第2のデカルト座標を決定することが、前記画像座標をセンタリングすることまたは正規化することのうちの少なくとも1つを含む、前記画像中の前記ピクセルを初期化することを備える、C14または15に記載の方法。
[C17]
前記第2のデカルト座標を決定することが、前記画像座標の縦座標を反転させることを備える、C14から16のいずれか一項に記載の方法。
[C18]
前記ポイントを前記デカルト座標系から整合解除することが、前記ポイントを前記画像中の前記グリッドの配向と整合させるために、前記ポイントに回転変換を適用することを備える、C14から17のいずれか一項に記載の方法。
[C19]
前記グリッドに対応する前記第1の平面上に前記ポイントを投影することが、
【数12】
を算出することを備え、
ここにおいて、
【数13】
であり、
ここにおいて、pが、前記グリッドに対応する前記第1の平面におけるポイント座標を備え、fが前記カメラの前記焦点距離であり、tが平面並進ベクトルであり、qが前記第2の平面における前記第1のデカルト座標を備え、zが前記カメラと前記グリッドとの間の距離であり、Rが、回転ベクトルに関係する3次元回転行列である、
C14から18のいずれか一項に記載の方法。
[C20]
保管システムのグリッドの上に配設された広角または超広角カメラを較正するための較正システムであって、前記グリッドが、X方向に延在する平行なトラックの第1のセットと、実質的に水平な平面において前記第1のセットに直交する、Y方向に延在する平行なトラックの第2のセットとによって形成され、
前記グリッドが、複数のグリッド空間を備え、単一のグリッド空間のフットプリント内で前記トラックの下にスタックされたコンテナを取り扱うために、前記トラック上で前記X方向または前記Y方向のうちの少なくとも1つにおいて選択的に移動可能である、1つまたは複数の搬送デバイスを支持するように配置され、
前記較正システムは、
前記カメラによってキャプチャされた前記グリッドのグリッドセクションの画像を取得することと、前記カメラに対応する複数のパラメータの初期値を取得することと、前記複数のパラメータが、前記カメラの焦点距離と、前記グリッドセクションの上の前記カメラの位置を表現する並進ベクトルと、前記カメラの傾きおよび回転を表現する回転ベクトルとを含む、を行うための少なくとも1つのインターフェースと、
前記画像を、前記グリッドセクションの前記画像中にキャプチャされた、平行なトラックの前記第1のセットおよび前記第2のセットのモデルを生成するために、広角または超広角カメラによってキャプチャされたグリッドセクションの画像中の平行なトラックの前記第1のセットおよび前記第2のセットを検出/予測するようにトレーニングされたニューラルネットワークを使用して、処理することと、
前記複数のパラメータに基づくマッピングを使用して、前記モデル中のピクセルを、前記グリッド上の対応するポイントにマッピングすることと、ここにおいて、前記初期値が、前記マッピングへの入力として使用される、
前記マッピングによって決定された前記ポイントのグリッド座標と知られているグリッド座標との間の不一致に基づいて、誤差関数を決定することと、
前記誤差関数に基づいて、前記初期値を前記複数のパラメータの更新された値に更新することと、
前記マッピングを介して、前記カメラによってキャプチャされた前記グリッドセクションの画像中のピクセルを、前記保管システムの前記グリッド上の対応するポイントにマッピングするために、前記複数のパラメータの前記更新された値をストレージに出力することと
を行うように構成された、少なくとも1つのプロセッサと
を備える、較正システム。
[C21]
前記少なくとも1つのプロセッサが、
前記画像を、前記画像中の前記グリッドセクションのグリッドセル中にあるグリッドセルマーカーを検出するために、グリッドセクションの画像中のグリッドセルマーカーのインスタンスを検出するようにトレーニングされた物体検出モデルを使用して、処理することと、
前記グリッドセルマーカーに符号化されたグリッドセル座標データを抽出することと、
前記抽出されたセル座標データに基づいて、前記グリッド上のポイントへの前記画像中のピクセルの前記マッピングによって生成された、グリッド座標を較正することと
を行うように構成された、C20に記載の較正システム。
[C22]
前記グリッドセルマーカーが、サインボードを備え、前記セル座標データが、前記サインボード上にマークされる、C21に記載の較正システム。
[C23]
前記マッピングが、前記画像中の所与のピクセルと前記グリッド上の対応するポイントとについて、
前記画像中の前記ピクセルの画像座標に基づいて、前記対応するポイントの第2のデカルト座標を決定することと、
前記第2のデカルト座標を第2の極座標にコンバートすることと、
第1の極座標を生成するために前記第2の極座標に逆ひずみモデルを適用することと、
前記第1の極座標を前記ポイントの第1のデカルト座標にコンバートすることと、
前記ポイントを、前記カメラに対応する第2の平面におけるデカルト座標系から整合解除することと、
前記グリッドに対する前記ポイントのグリッド座標を決定するために、前記第2の平面から前記グリッドに対応する第1の平面上に前記ポイントを投影することと
を備える、C20から22のいずれか一項に記載の較正システム。
[C24]
前記逆ひずみモデルが、
【数14】
によって与えられるひずみのタンジェントモデルに基づき、
ここにおいて、r’が前記ポイントのひずんだ半径方向座標であり、rが前記ポイントのひずんでいない半径方向座標であり、fが前記カメラの前記焦点距離である、
C23に記載の較正システム。
[C25]
前記ニューラルネットワークが、畳み込みニューラルネットワークを備える、C20から24のいずれかに記載の較正システム。
【国際調査報告】