(57)【要約】      （修正有）【課題】カメラキャリブレーションを検証するロボット制御システム及び方法を提示する。【解決手段】ロボット制御システムは、第１のカメラキャリブレーションを実行するように構成され、検証記号を参照箇所に動かすように、ロボットアームを制御するように構成される。ロボット制御システムは更に、カメラから、検証記号の参照画像を受信し、検証記号に関する参照画像座標を特定する。ロボット制御システムは更に、休止期間中に、検証記号を再び参照箇所に動かすようにロボットアームを制御し、検証記号の更なる画像を受信し、検証画像座標を特定する。ロボット制御システムは、参照画像座標及び検証画像座標に基づいて偏差パラメーター値を特定し、偏差パラメーター値が規定された閾値を超えるか否かを判断し、閾値を超える場合には第２のカメラキャリブレーションを実行する。【選択図】図５Ａ
2020163565.tif 000002
【特許請求の範囲】
【請求項１】
ロボット制御システムであって、
ベースと、その上に配置される検証記号を備えるロボットアームとを有するロボットと
通信し、カメラ視野を有するカメラと通信するように構成される通信インターフェースと
、
制御回路と、
を備え、
該制御回路は、
第１のカメラキャリブレーションを実行し、前記カメラと関連付けられるカメラキャ
リブレーション情報を特定することと、
前記通信インターフェースを介して、前記ロボットに第１の動作コマンドを出力する
ことによって、前記第１のカメラキャリブレーション中又は後に、前記検証記号を前記カ
メラ視野内の位置に動かすように、前記ロボットアームを制御することであって、該位置
は前記第１のカメラキャリブレーションの検証のための１つ以上の参照箇所のうちの参照
箇所である、前記ロボットアームを制御することと、
前記通信インターフェースを介して、前記カメラから前記検証記号の画像を受信する
ことであって、前記カメラは、前記参照箇所において前記検証記号の該画像を取り込むよ
うに構成され、該画像は前記検証のための参照画像である、前記検証記号の画像を受信す
ることと、
前記検証記号に関する参照画像座標を特定することであって、該参照画像座標は前記
参照画像内に前記検証記号が現れる座標である、参照画像座標を特定することと、
前記通信インターフェースを介して、前記ロボットに前記カメラキャリブレーション
情報に基づく第２の動作コマンドを出力することによって、前記カメラキャリブレーショ
ン情報に基づいて、ロボット操作を実行するように前記ロボットアームの動作を制御する
ことと、
前記ロボット操作中に休止期間を検出することと、
前記通信インターフェースを介して、前記ロボットに第３の動作コマンドを出力する
ことによって、前記休止期間中に前記検証記号を少なくとも前記参照箇所に動かすように
前記ロボットアームを制御することと、
前記休止期間中に前記通信インターフェースを介して、前記カメラから前記検証記号
の更なる画像を受信することであって、前記カメラは、少なくとも前記参照箇所において
前記検証記号の該更なる画像を取り込むように構成され、該更なる画像は前記検証のため
の検証画像である、前記検証記号の更なる画像を受信することと、
前記検証のために使用される検証画像座標を特定することであって、該検証画像座標
は前記検証画像内に前記検証記号が現れる座標である、検証画像座標を特定することと、
前記参照画像座標と前記検証画像座標との間の偏差量に基づいて、偏差パラメーター
値を特定することであって、前記参照画像座標及び前記検証画像座標はいずれも前記参照
箇所に関連付けられ、該偏差パラメーター値は、前記第１のカメラキャリブレーション以
降の前記カメラの変化、又は前記第１のカメラキャリブレーション以降の前記カメラと前
記ロボットとの間の関係の変化を示す、偏差パラメーター値を特定することと、
前記偏差パラメーター値が規定された閾値を超えるか否かを判断することと、
前記偏差パラメーター値が前記規定された閾値を超えると判断することに応答して、
第２のカメラキャリブレーションを実行し、更新されたカメラキャリブレーション情報を
特定することと、
を行うように構成される、ロボット制御システム。
【請求項２】
前記制御回路は、前記偏差パラメーター値が前記規定された閾値を超えないと判断する
ことに応答して、前記通信インターフェースを介して、前記ロボットに第４の動作コマン
ドを出力することによって、更なるカメラキャリブレーションを実行することなく、前記
休止期間後に前記ロボット操作を継続するように、前記ロボットを制御するように構成さ
れる、請求項１に記載のロボット制御システム。
【請求項３】
前記１つ以上の参照箇所は、複数の参照画像座標にそれぞれ対応する複数の参照箇所で
あり、前記参照画像座標は該複数の参照画像座標のうちの１つであり、
前記制御回路は、前記複数の参照箇所にそれぞれ対応する複数の検証画像座標を特定す
るように更に構成され、前記検証画像座標は該複数の検証画像座標のうちの１つであり、
前記偏差パラメーター値は、前記複数の参照箇所に関する前記複数の参照画像座標と前
記複数の検証画像座標との間のそれぞれの偏差量に基づき、前記それぞれの偏差量のうち
の各偏差量は、（ａ）前記複数の参照箇所のそれぞれの参照箇所に対応する参照画像座標
と、（ｂ）同じ参照箇所に対応する検証画像座標との間の偏差量である、請求項１に記載
のロボット制御システム。
【請求項４】
前記複数の検証画像座標は、複数の検証画像内に前記検証記号が現れるそれぞれの座標
であり、前記検証画像は前記複数の検証画像のうちの１つであり、前記制御回路は、前記
休止期間内に前記複数の検証画像の全てを取り込むように、前記カメラを制御するように
構成される、請求項３に記載のロボット制御システム。
【請求項５】
前記複数の検証画像座標は、複数の検証画像内に前記検証記号が現れるそれぞれの座標
であり、前記検証画像は前記複数の検証画像のうちの１つであり、前記制御回路は、異な
る休止期間内に前記複数の検証画像を取り込むように、前記カメラを制御するように構成
され、前記休止期間は前記異なる休止期間のうちの１つである、請求項３に記載のロボッ
ト制御システム。
【請求項６】
前記検証記号は第１の色を有する第１の領域と第２の色を有する第２の領域とを含み、
前記第１の領域の面積と前記第２の領域の面積との比は規定され、規定された比として前
記ロボット制御システムの記憶デバイス上に記憶される、請求項１に記載のロボット制御
システム。
【請求項７】
前記制御回路は、前記規定された比に基づいて、前記参照画像又は前記検証画像内の前
記検証記号を識別するように構成される、請求項６に記載のロボット制御システム。
【請求項８】
前記ロボットアームは、その上に配置されるキャリブレーションパターンを有し、前記
参照画像は前記検証記号及び該キャリブレーションパターンを含み、
前記制御回路は、前記参照画像の部分が、前記第１の色を有する第１の画像領域を有す
るか、及び前記第２の色を有する第２の画像領域を有するかを判断し、且つ前記第１の画
像領域の面積と前記第２の画像領域の面積との比が前記規定された比に等しいか否かを判
断することによって、前記参照画像の該部分が前記検証記号であるか、又は前記キャリブ
レーションパターンであるかを判断するように構成される、請求項７に記載のロボット制
御システム。
【請求項９】
前記検証記号は、互いに同心である第１の形状及び第２の形状を含み、前記第１の形状
及び前記第２の形状のそれぞれ中心は実質的に同じ位置にある、請求項１に記載のロボッ
ト制御システム。
【請求項１０】
前記制御回路は、
前記参照画像内の前記第１の形状の中心の第１の座標を特定することと、
前記参照画像内の前記第２の形状の中心の第２の座標を特定することと、
前記参照画像内の前記第１の座標及び前記第２の座標の平均として前記参照画像座標
を特定することと、
によって前記参照画像座標を特定するように構成され、
前記制御回路は、
前記検証画像内の前記第１の形状の中心の第１の座標を特定することと、
前記検証画像内の前記第２の形状の中心の第２の座標を特定することと、
前記検証画像内の前記第１の座標及び前記第２の座標の平均として前記検証画像座標
を特定することと、
によって、前記検証画像座標を特定するように構成される、請求項９に記載のロボット制
御システム。
【請求項１１】
前記制御回路は、円形リングを識別することによって前記参照画像又は前記検証画像内
の前記検証記号を識別するように構成され、前記検証記号は前記円形リングとして形成さ
れる、請求項１に記載のロボット制御システム。
【請求項１２】
前記制御回路は、
前記ロボットが位置する環境の温度を特定し、
測定された前記温度に基づいて、前記規定された閾値又は前記カメラキャリブレーシ
ョン情報のうちの少なくとも一方を調整する、
ように更に構成される、請求項１に記載のロボット制御システム。
【請求項１３】
前記制御回路は、
前記温度が規定範囲外にあるときに、前記規定された閾値を第１の値を有するように
設定することと、
前記温度が前記規定範囲内にあるときに、前記閾値を前記第１の値より低い第２の値
を有するように設定することと、
によって、前記温度に基づいて、前記規定された閾値を調整するように構成される、請求
項１２に記載のロボット制御システム。
【請求項１４】
前記制御回路が前記ロボットアームを介して前記検証記号を動かすように構成される前
記１つ以上の参照箇所は、前記カメラに対して凹形である球の表面上に配置される複数の
参照箇所を含む、請求項１に記載のロボット制御システム。
【請求項１５】
前記制御回路は、前記複数の参照箇所の各参照箇所において前記検証記号が前記球の前
記表面に対して接線方向に向くように動かすために、前記ロボットアームを制御するよう
に更に構成される、請求項１４に記載のロボット制御システム。
【請求項１６】
前記制御回路は、前記検証記号が前記参照箇所に動かされるときに、前記カメラの真正
面を向くように前記検証記号を動かすために、前記ロボットアームを制御するように構成
される、請求項１に記載のロボット制御システム。
【請求項１７】
前記制御回路は、前記ロボット操作中に前記ロボットがロボット作業を実行していない
期間を検出することによって、前記ロボット操作の前記休止期間を検出するように構成さ
れる、請求項１に記載のロボット制御システム。
【請求項１８】
前記制御回路は、前記ロボットアームによって到達可能であるコンベヤベルト上の物体
と相互作用するように、前記ロボットアームを制御するように構成され、
前記制御回路は、前記コンベヤベルト上に物体が存在しないことを検出するか、又は前
記ロボットと、前記コンベヤベルト上の最も近い物体との間の距離が規定された距離閾値
を超えることを検出することによって、前記休止期間を検出するように構成される、請求
項１７に記載のロボット制御システム。
【請求項１９】
ロボット制御のためにカメラキャリブレーション検証を実行する方法であって、該方法
は、
ロボット制御システムによって、第１のカメラキャリブレーションを実行し、カメラキ
ャリブレーション情報を特定することであって、該ロボット制御システムは、ベースと、
その上に配置される検証記号を備えるロボットアームとを有するロボットと通信し、カメ
ラ視野を有し、該カメラキャリブレーション情報に関連付けられるカメラと通信するよう
に構成される通信インターフェースを備える、第１のカメラキャリブレーションを実行す
ることと、
前記ロボット制御システムによって、前記通信インターフェースに第１の動作コマンド
を出力することであって、前記通信インターフェースは、前記ロボットアームが、前記第
１のカメラキャリブレーション中又は後に、前記検証記号を前記カメラ視野内の位置に動
かすように、前記ロボットに該第１の動作コマンドを通信するように構成され、該位置は
前記第１のカメラキャリブレーションの検証のための１つ以上の参照箇所のうちの参照箇
所である、第１の動作コマンドを出力することと、
前記ロボット制御システムによって、前記通信インターフェースから、前記検証記号の
画像を受信することであって、前記通信インターフェースは、前記カメラから該画像を受
信するように構成され、前記カメラは前記参照箇所において前記検証記号の該画像を取り
込むように構成され、該画像は前記検証のための参照画像である、前記検証記号の画像を
受信することと、
前記ロボット制御システムによって、前記検証記号のための参照画像座標を特定するこ
とであって、該参照画像座標は前記参照画像内に前記検証記号が現れる座標である、参照
画像座標を特定することと、
前記ロボット制御システムによって、前記通信インターフェースに、前記カメラキャリ
ブレーション情報に基づく第２の動作コマンドを出力することであって、前記通信インタ
ーフェースは、前記ロボットアームを動かしてロボット操作を実行するために、前記ロボ
ットに該第２の動作コマンドを通信するように構成される、第２の動作コマンドを出力す
ることと、
前記ロボット制御システムによって、前記ロボット操作中に休止期間を検出することと
、
前記ロボット制御システムによって、前記通信インターフェースに第３の動作コマンド
を出力することであって、前記通信インターフェースは、前記休止期間中に前記ロボット
アームが前記検証記号を少なくとも前記参照箇所に動かすように、前記ロボットに該第３
の動作コマンドを通信するように構成される、第３の動作コマンドを出力することと、
前記ロボット制御システムによって、前記通信インターフェースから、前記検証記号の
更なる画像を受信することであって、前記通信インターフェースは、前記カメラから該更
なる画像を受信するように構成され、前記カメラは前記休止期間中に少なくとも前記参照
箇所において前記検証記号の該更なる画像を取り込むように構成され、該更なる画像は前
記検証のための検証画像である、前記検証記号の更なる画像を受信することと、
前記ロボット制御システムによって、前記検証のために使用される検証画像座標を特定
することであって、該検証画像座標は、前記検証画像内に前記検証記号が現れる座標であ
る、検証画像座標を特定することと、
前記ロボット制御システムによって、前記参照画像座標と前記検証画像座標との間の偏
差量に基づいて、偏差パラメーター値を特定することであって、前記参照画像座標及び前
記検証画像座標はいずれも前記参照箇所に関連付けられ、該偏差パラメーター値は、前記
通信インターフェースが通信するように構成される前記カメラの前記第１のカメラキャリ
ブレーション以降の変化、又は前記通信インターフェースが通信するように構成される前
記カメラと前記ロボットとの間の関係の前記第１のカメラキャリブレーション以降の変化
を示す、偏差パラメーター値を特定することと、
前記ロボット制御システムによって、前記偏差パラメーター値が規定された閾値を超え
るか否かを判断することと、
前記ロボット制御システムによって、前記偏差パラメーター値が前記規定された閾値を
超えると判断することに応答して、第２のカメラキャリブレーションを実行し、更新され
たカメラキャリブレーション情報を特定することと、
を含む、方法。
【請求項２０】
非一時的コンピューター可読媒体であって、ロボット制御システムの制御回路によって
実行されるときに、前記制御回路に、
第１のカメラキャリブレーションを実行させ、カメラキャリブレーション情報を特定さ
せる命令であって、前記ロボット制御システムは、ベースと、その上に配置される検証記
号を備えるロボットアームとを有するロボットと通信し、カメラ視野を有し、該カメラキ
ャリブレーション情報に関連付けられるカメラと通信するように構成される通信インター
フェースを備える、命令と、
前記通信インターフェースに第１の動作コマンドを出力させる命令であって、前記通信
インターフェースは、前記ロボットアームが、前記第１のカメラキャリブレーション中又
は後に、前記検証記号を前記カメラ視野内の位置に動かすように、前記ロボットに前記第
１の動作コマンドを通信するように構成され、該位置は前記第１のカメラキャリブレーシ
ョンの検証のための１つ以上の参照箇所のうちの参照箇所である、命令と、
前記通信インターフェースから、前記検証記号の画像を受信させる命令であって、前記
通信インターフェースは前記カメラから該画像を受信するように構成され、前記カメラは
前記検証記号の該画像を前記参照箇所において取り込むように構成され、該画像は前記検
証のための参照画像である、命令と、
前記検証記号に関する参照画像座標を特定させる命令であって、該参照画像座標は、前
記参照画像内に前記検証記号が現れる座標である、命令と、
前記通信インターフェースに、前記カメラキャリブレーション情報に基づく第２の動作
コマンドを出力させる命令であって、前記通信インターフェースは、前記ロボットアーム
を動かしてロボット操作を実行するために、前記ロボットに該第２の動作コマンドを通信
するように構成される、命令と、
前記ロボット操作中に休止期間を検出させる命令と、
前記通信インターフェースに第３の動作コマンドを出力させる命令であって、前記通信
インターフェースは、前記ロボットアームが前記休止期間中に前記検証記号を少なくとも
前記参照箇所に動かすように、前記ロボットに該第３の動作コマンドを通信するように構
成される、命令と、
前記通信インターフェースから、前記検証記号の更なる画像を受信させる命令であって
、前記通信インターフェースは、前記カメラから該更なる画像を受信するように構成され
、前記カメラは前記休止期間中に少なくとも前記参照箇所において前記検証記号の該更な
る画像を取り込むように構成され、該更なる画像は前記検証のための検証画像である、命
令と、
前記検証のために使用される検証画像座標を特定させる命令であって、該検証画像座標
は、前記検証画像内に前記検証記号が現れる座標である、命令と、
前記参照画像座標と前記検証画像座標との間の偏差量に基づいて偏差パラメーター値を
特定させる命令であって、前記参照画像座標及び前記検証画像座標はいずれも前記参照箇
所に関連付けられ、該偏差パラメーター値は、前記通信インターフェースが通信するよう
に構成される前記カメラの前記第１のカメラキャリブレーション以降の変化、又は前記通
信インターフェースが通信するように構成される前記カメラと前記ロボットとの間の関係
の前記第１のカメラキャリブレーション以降の変化を示す、命令と、
前記偏差パラメーター値が規定された閾値を超えるか否かを判断させる命令と、
前記偏差パラメーター値が前記規定された閾値を超えると判断することに応答して、第
２のカメラキャリブレーションを実行させ、更新されたカメラキャリブレーション情報を
特定させる命令と、
を記憶している、非一時的コンピューター可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御のためのカメラキャリブレーションを検証及び更新する方法及
び制御システムに関する。
【背景技術】
【０００２】
自動化がより一般的になるに従い、倉庫保管及び製造環境等、より多くの環境において
ロボットが使用されている。例えば、ロボットは、倉庫において物品をパレットに積むか
若しくはパレットから降ろすために、又は、工場においてコンベヤベルトから物体を持ち
上げるために使用される場合がある。ロボットの移動は、一定である場合があり、又は、
倉庫若しくは工場においてカメラによって撮影される画像等の入力に基づく場合がある。
後者の状況では、カメラの特性を求めるために、かつ、カメラとロボットが位置する環境
との関係を求めるために、キャリブレーション（較正）が行われる場合がある。キャリブ
レーションは、カメラキャリブレーションと呼ばれる場合があり、カメラによって取り込
まれた画像に基づいてロボットを制御するために使用されるカメラキャリブレーション情
報を生成することができる。いくつかの実施態様では、カメラキャリブレーションは、人
による手動操作を必要とする場合があり、人は、ロボットの移動を手動で制御するか、又
は、カメラを手動で制御して、ロボットの画像を取り込むことができる。
【発明の概要】
【０００３】
本明細書における実施形態の一態様は、ロボット制御のためのカメラキャリブレーショ
ン検証を実行することに関する。カメラキャリブレーション検証は、通信インターフェー
ス及び制御回路を備えるロボット制御システムによって実行することができる。通信イン
ターフェースは、ベースと、その上に検証記号（verification symbol）が配置されるロ
ボットアームとを有するロボットと通信し、カメラ視野を有するカメラと通信するように
構成することができる。ロボット制御システムの制御回路は、ａ）第１のカメラキャリブ
レーションを実行し、カメラキャリブレーション情報を特定することと、ｂ）通信インタ
ーフェースに第１の動作コマンドを出力することであって、通信インターフェースは、第
１のカメラキャリブレーション中又は後に、ロボットアームが検証記号をカメラ視野内の
位置に動かすように、ロボットに第１の動作コマンドを通信するように構成され、その位
置は第１のカメラキャリブレーションを検証するための１つ以上の参照箇所のうちの参照
箇所である、第１の動作コマンドを出力することと、ｃ）通信インターフェースを介して
、カメラから検証記号の画像を受信することであって、カメラは参照箇所において検証記
号の画像を取り込むように構成され、画像は検証のための参照画像である、検証記号の画
像を受信することと、ｄ）検証記号のための参照画像座標を特定することであって、参照
画像座標は参照画像内に参照記号が現れる座標である、参照画像座標を特定することと、
ｅ）通信インターフェースに、カメラキャリブレーション情報に基づく第２の動作コマン
ドを出力することであって、通信インターフェースは、ロボットアームを動かし、ロボッ
ト動作を実行するように、ロボットに第２の動作コマンドを通信するように構成される、
第２の動作コマンドを出力することとによって、カメラキャリブレーション検証を実行す
るように構成することができる。
【０００４】
一実施形態において、制御回路は、ｆ）ロボット操作中に休止期間を検出することと、
ｇ）通信インターフェースに第３の動作コマンドを出力することであって、通信インター
フェースは、休止期間中にロボットアームが検証記号を少なくとも参照箇所に動かすよう
に、ロボットに第３の動作コマンドを通信するように構成される、第３の動作コマンドを
出力することと、ｈ）通信インターフェースを介して、カメラから検証記号の更なる画像
を受信することであって、カメラは休止期間中に少なくとも参照箇所において検証記号の
更なる画像を取り込むように構成され、更なる画像は検証のための検証画像である、検証
記号の更なる画像を受信することと、ｉ）検証のために使用される検証画像座標を特定す
ることであって、検証画像座標は検証画像内に検証記号が現れる座標である、検証画像座
標を特定することと、ｊ）参照画像座標と検証画像座標との間の偏差量に基づいて、偏差
パラメーター値を特定することであって、参照画像座標及び検証画像座標はいずれも参照
箇所に関連付けられ、偏差パラメーター値は、通信インターフェースが通信するように構
成されるカメラの第１のカメラキャリブレーション以降の変化、又は通信インターフェー
スが通信するように構成されるカメラとロボットとの間の関係の第１のカメラキャリブレ
ーション以降の変化を示す、偏差パラメーター値を特定することと、ｋ）偏差パラメータ
ー値が規定された閾値を超えるか否かを判断することと、ｌ）偏差パラメーター値が規定
された閾値を超えると判断することに応答して、第２のカメラキャリブレーションを実行
し、更新されたカメラキャリブレーション情報を特定することとによって、カメラキャリ
ブレーション検証を更に実行するように構成される。
【０００５】
本発明の上述の特徴、目的、及び利点、並びに他の特徴、目的、及び利点は、添付の図
面に示されるような本発明の実施形態の以下の説明から明らかであろう。本明細書に組み
込まれるとともに本明細書の一部をなす添付の図面は更に、本発明の原理を説明するとと
もに、当業者が本発明を実施及び使用することを可能にする役割を果たす。図面は一定縮
尺ではない。
【図面の簡単な説明】
【０００６】
【図１Ａ】本明細書の実施形態による、カメラキャリブレーションの検証が実行されるシステムのブロック図である。
【図１Ｂ】本明細書の実施形態による、カメラキャリブレーションの検証が実行されるシステムのブロック図である。
【図１Ｃ】本明細書の一実施形態による、カメラキャリブレーションの検証を実行するように構成されるロボット制御システムのブロック図である。
【図１Ｄ】本明細書の一実施形態による、カメラキャリブレーションが実行されるカメラのブロック図である。
【図２】本明細書の一実施形態による、カメラキャリブレーションから得られるカメラキャリブレーション情報に基づいて制御されるロボットを例示するシステムを示す図である。
【図３】本明細書の一実施形態による、カメラキャリブレーションを実行するシステムを示す図である。
【図４Ａ】本明細書の一実施形態による、カメラキャリブレーションの検証を実行する方法を例示するフロー図である。
【図４Ｂ】本明細書の一実施形態による、カメラキャリブレーションの検証を実行する方法を例示するフロー図である。
【図５Ａ】本明細書の一実施形態による、検証記号がロボット上に配置され、カメラキャリブレーションの検証を実行するために検証記号が使用されるシステムを示す図である。
【図５Ｂ】本明細書の一実施形態による、検証記号がロボット上に配置され、カメラキャリブレーションの検証を実行するために検証記号が使用されるシステムを示す図である。
【図５Ｃ】本明細書の一実施形態による、例示的な検証記号を示す図である。
【図６Ａ】本明細書の一実施形態による、検証記号のそれぞれの画像が取り込まれる参照箇所の例を示す図である。
【図６Ｂ】本明細書の一実施形態による、検証記号のそれぞれの画像が取り込まれる参照箇所の例を示す図である。
【図７Ａ】本明細書の一実施形態による、参照画像座標を特定する一例を示す図である。
【図７Ｂ】本明細書一の実施形態による、検証画像座標を特定する一例を示す図である。
【図８】本明細書の一実施形態による、カメラキャリブレーションの検証のための例示的なタイムラインを示す図である。
【図９】本明細書の一実施形態による、カメラキャリブレーションの検証を実行する例示的な方法を示すフロー図である。
【発明を実施するための形態】
【０００７】
以下の詳細な説明は、本質的に単に例示のものであり、本発明又は本発明の用途及び使
用を限定することを意図するものではない。さらに、前出の技術分野、背景技術、発明の
概要又は以下の詳細な説明において提示されるいかなる明示された又は暗示された理論に
よっても限定する意図はない。
【０００８】
本明細書に記載する実施形態は、倉庫、製造工場において、又は他の何らかの環境にお
いて使用されるロボット等、ロボットを制御するために使用されるカメラのキャリブレー
ションを検証及び／又は更新することに関する。キャリブレーションは、カメラキャリブ
レーションと呼ばれる場合があり、例えば、ロボット制御システム（ロボットコントロー
ラーとも呼ぶ）が、カメラによって取り込まれる（例えば、撮影される）画像に基づいて
ロボットを制御するロボット制御システムの能力を促進するカメラキャリブレーション情
報を生成するために実施することができる。例えば、ロボットは、倉庫において包装品を
持ち上げるために使用される場合があり、そこでは、ロボットのロボットアーム又は他の
構成要素の配置は、カメラによって取り込まれる包装品の画像に基づくことができる。そ
の場合、カメラキャリブレーション情報は、例えば、ロボットのロボットアームに対する
包装品の位置及び向きを求めるために、包装品の画像とともに使用することができる。カ
メラキャリブレーションは、カメラの固有パラメーター（内部パラメーターと呼ばれる場
合もある）のそれぞれの推定値を特定することと、カメラとその外部環境との間の関係の
推定値を特定することとを含むことができる。カメラの固有パラメーターは、行列、ベク
トル又はスカラー値等の１つ以上のパラメーター値を有することができる。さらに、固有
パラメーターの例は、射影行列及びひずみパラメーターを含む。一例において、カメラキ
ャリブレーションは、外部環境内の或る定位置（fixed position）に対するカメラの位置
を特定することを含むことができ、それは、カメラと外部環境内の定位置との間の関係を
表す変換関数（transformation function）として表すことができる。場合によっては、
カメラキャリブレーションは、キャリブレーションパターンの助けを借りて実行すること
ができ、キャリブレーションパターンは、キャリブレーションパターン上の規定された位
置に配置されるパターン要素を有することができる。カメラはキャリブレーションパター
ンのパターン要素の画像（キャリブレーション画像とも呼ばれる）を取り込むことができ
、カメラキャリブレーションは、パターン要素の画像をパターン要素の規定された位置と
比較することに基づいて実行することができる。カメラキャリブレーションは、２０１９
年３月７日に出願の「METHOD AND DEVICE FOR PERFORMING AUTOMATIC CAMERA CALIBRATIO
N FOR ROBOT CONTROL」と題する米国特許出願第１６／２９５，９４０号（整理番号ＭＪ
００２１ＵＳ１）においてより詳細に論じられており、その内容全体が引用することによ
り本明細書の一部をなす。
【０００９】
上記で言及されたように、本開示の一態様は、早期の時点において実行されたカメラキ
ャリブレーションが後の時点において依然として正確であることを検証することに関する
。早期の時点において実行されるカメラキャリブレーションは、カメラの固有パラメータ
ー、又はその時点におけるカメラとその外部環境との間の関係等の、その時点のカメラの
特性を反映するカメラキャリブレーション情報を生成することができる。場合によっては
、カメラの特性が経時的に変化する場合があるため、早期のカメラキャリブレーションは
経時的に精度を維持できなくなる場合がある。第１の例において、カメラの固有パラメー
ターが経時的に変化する場合がある。そのような変化は、例えば、温度変化によって引き
起こされる場合があり、温度変化が、カメラのハウジング及び／又はレンズの形状を変更
する。第２の例において、カメラとその外部環境との間の関係が経時的に変化する場合が
ある。例えば、カメラが、例えば、ロボットのベース、又は倉庫内の位置に対して位置又
は向きを変える場合がある。そのような変化は、例えば、カメラを搭載するために使用さ
れる任意の構成要素を膨張又は収縮させる温度変化、カメラに衝突する人又は他の物体、
カメラの外部環境（例えば、倉庫）内の振動、カメラの自らの重量に起因する力（すなわ
ち、重力によって）、又は何らかの他の要因によって引き起こされる場合がある。これら
の変化によって、カメラキャリブレーション情報が古くなる場合があり、このカメラキャ
リブレーション情報を用いて、後の時点においてロボットアーム又はロボットの他の構成
要素を位置決めする結果として、誤差が生じる恐れがある。言い換えると、カメラに関連
付けられる特性が経時的に変化しているが、そのような変化を反映するようにカメラキャ
リブレーション情報が更新されない場合には、ロボットは、古くなったか、又は別の事情
で不正確なカメラキャリブレーション情報に基づいて動作する場合があり、それにより、
ロボットの動作に望ましくない誤差を引き起こす恐れがある。カメラの１つ以上の特性に
変化が生じる場合がある可能性に対処するために、ロボット制御システムが、カメラキャ
リブレーションからのカメラキャリブレーション情報がもはや十分に正確でない時点を検
出する検証を自動的に実行することができる。そのような条件を検出することにより、カ
メラの特性の変化に関する指標（indication）を与えることができる。その検証が、カメ
ラキャリブレーション情報がもはや十分に正確でないことを検出する場合には、ロボット
制御システムは、カメラキャリブレーションを再び実行して、カメラのより最新の単数又
は複数の特性を反映することができる、更新されたカメラキャリブレーション情報を特定
することができる。更新されたカメラキャリブレーション情報を用いて、ロボットアーム
の配置、又はロボットの動作の何らかの他の態様を制御することができる。したがって、
カメラキャリブレーションの自動検証及び／又はカメラキャリブレーションの更新を実行
して、カメラに関連付けられる１つ以上の特性についての正確な情報に基づいてロボット
が動作するのを確実にする。
【００１０】
本明細書の実施形態の一態様は、カメラによって取り込まれた参照画像とカメラによっ
て取り込まれた検証画像とを比較することによってカメラに関するカメラキャリブレーシ
ョンを検証することに関する。場合によっては、参照画像は、物体が早期の時点において
特定の位置にあるときに取り込まれた物体の画像とすることができ、検証画像は、同じ位
置において後の時点において取り込まれたその物体の画像とすることができる。検証は、
偏差が或る特定の閾値を超えるか否か等の、参照画像と検証画像との間の偏差が大きすぎ
るか否かを判断することができる。いくつかの実施態様において、物体は検証記号とする
ことができる。より具体的には、ロボットアーム又はロボットの他の構成要素が、カメラ
キャリブレーションを検証するために使用される検証記号を有することができる。参照画
像及び検証画像はいずれも、検証記号を取り込むか、又は別の方法で含むことができ、ロ
ボット制御システムは、参照画像内の検証記号の外観を検証画像内の検証記号の外観と比
較することによって２つの画像を比較することができる。例えば、ロボット制御システム
が、特定の時点においてカメラキャリブレーション情報を生成するカメラキャリブレーシ
ョンを実行した後に、ロボット制御システムは、検証記号をカメラの視野（カメラのカメ
ラ視野とも呼ばれる）内の１組の所定の位置まで動かすように、ロボットアームを（例え
ば、動作コマンドを介して）制御することができ、これらの位置は、検証のための１組の
参照箇所として使用することができる。カメラは、１組の参照箇所において、検証記号の
それぞれの参照画像を取り込むことができる。場合によっては、参照画像は、カメラキャ
リブレーションが実行された直後に取り込むことができる。ロボットアームの動作、又は
より具体的には、ロボットアームを動かすために使用される動作コマンドは、実行された
ばかりのカメラキャリブレーションからのカメラキャリブレーション情報に基づくことが
できるか、又はカメラキャリブレーション情報から独立していることができる。場合によ
っては、参照画像は、ロボットがロボット操作（robot operation）を開始する前に取り
込むことができる。参照画像が取り込まれた後に、ロボットは、作業を実行するためにロ
ボット操作を開始する準備ができたと見なすことができ、ロボット制御システムは、例え
ば、カメラによって次に取り込まれる画像に基づいて、ロボットアームの位置決めを制御
することができる。
【００１１】
上記で言及されたように、参照画像は、次に取り込まれる検証画像と比較することがで
きる。一実施形態において、検証画像は、ロボット制御システムによって検出される１つ
以上の休止期間中に取り込むことができる。より具体的には、ロボット操作が開始すると
、ロボットはロボット作業（robot task）を実行し始めることができる（例えば、荷物又
は他の物体との相互作用による）。ロボットがロボット操作を実行しているとき、ロボッ
ト制御システムは、ロボットに関する１つ以上の休止期間を検出することができる。場合
によっては、休止期間は、ロボット操作中にロボットがロボット作業を実行していない期
間とすることができる。場合によっては、ロボット制御システムは、ロボットが相互作用
する必要がある物体を検出するか、又は別の方法で予測するのに基づいて、ロボット操作
をスケジューリングすることができ、ロボットが相互作用する必要がある物体が存在しな
いことを検出するか、又は別の方法で予測するのに基づいて、休止期間を検出することが
できる。
【００１２】
休止期間（複数の場合もある）中に、ロボット制御システムは、ロボットアーム又はロ
ボットの他の構成要素を（例えば、動作コマンドを介して）参照箇所まで動かし、各参照
箇所において、それぞれの検証画像を（例えば、カメラコマンドを介して）取り込むよう
に制御することができる。ロボットが、その上に配置される検証記号を有する場合、ロボ
ット制御システムは、より具体的には、検証記号を参照箇所まで動かし、検証画像を取り
込むようにロボットアームを制御することができる。その後、ロボット制御システムは、
それぞれの参照箇所においてそれぞれの検証画像が対応する参照画像からどれだけ外れる
かを判断することができる。場合によっては、検証画像とそれぞれの参照画像との間の偏
差は、偏差パラメーターとして表すことができる。偏差パラメーターの値（偏差パラメー
ター値とも呼ばれる）が偏差パラメーターに関して規定された閾値（規定された偏差閾値
と呼ばれる場合もある）を超える場合には、ロボット制御システムは、更なるカメラキャ
リブレーションを実行して、カメラに関する更新されたカメラキャリブレーション情報を
特定することができる。偏差パラメーターの値が規定された偏差閾値を超えるとき、この
条件は、古いカメラキャリブレーション情報を使用すると、結果としてロボット操作に望
ましくない量の誤差が生じる恐れがあることを示すことができる。したがって、場合によ
っては、更なるキャリブレーションが実行される間、ロボット操作は中断又は中止される
場合がある（中断は別の休止期間と見なすことができる）。更なるキャリブレーションが
完了した後に、新たな１組の参照画像を取り込むことができ、更新されたカメラキャリブ
レーション情報を用いてロボット操作を継続することができる。後続の休止期間（複数の
場合もある）中に、新たな１組の検証画像を取り込むことができ、ロボット制御システム
は、新たな１組の参照画像を新たな１組の検証画像と比較することによって、更なるカメ
ラキャリブレーションの検証を実行することができる。
【００１３】
上記で言及されたように、偏差パラメーターの値が規定された偏差閾値を超えるとき、
ロボット制御システムは、更なるカメラキャリブレーションを実行することができる。偏
差パラメーターの値が偏差閾値を超えない場合には、ロボット制御システムが更なるキャ
リブレーションを実行することなく、休止期間後にロボット操作を継続することができる
。このシナリオにおいて、カメラは、後続の休止期間（複数の場合もある）中にそれぞれ
の参照箇所において新たな１組の検証画像を取り込むことができる。新たな１組の検証画
像が取り込まれると、ロボット制御システムは、それぞれの参照箇所において新たな１組
の検証画像がそれぞれの参照画像からどれだけ外れるかを判断することによって、カメラ
キャリブレーションの検証を再び実行することができる。
【００１４】
上記で言及されたように、ロボットアームは、その上に配置される、リングパターン等
の検証記号を有することができ、検証記号は、参照画像及び検証画像によって取り込まれ
る場合があるか、又は別の方法でそれらの画像内に含まれる場合がある。一実施形態にお
いて、ロボット制御システムは、参照画像内に検証記号が現れるそれぞれの位置に基づい
て、かつ検証画像内に検証記号が現れるそれぞれの位置に基づいて、参照画像とそれぞれ
の検証画像との間の偏差を特定することができる。例えば、ロボット制御システムは、参
照箇所ごとに参照画像座標を特定することができる。特定の箇所に関する参照画像座標は
、検証記号がその参照箇所に配置されたときに取り込まれた参照画像内に検証記号が現れ
る座標とすることができる。より具体的には、参照画像座標は特定の参照箇所に関連付け
ることができ、その参照箇所に検証記号が配置されたときにカメラによって取り込まれた
参照画像内に検証記号が現れる画像座標を指すことができる。上記の例において、画像座
標は、ピクセル座標等の、画像内の座標を指す場合がある。ロボット制御システムが、そ
の後、特定の参照箇所に検証記号を再び配置し、対応する検証画像を取得すると、ロボッ
ト制御システムは、検証画像座標を特定することができる。また、検証画像座標も参照箇
所に関連付けることができ、検証記号が参照箇所に配置されたときにカメラによって取り
込まれた検証画像内に検証記号が現れる画像座標（例えば、ピクセル座標）を指すことが
できる。ロボット制御システムは、特定の参照箇所に関連付けられる参照画像座標を、同
じ参照箇所に関連付けられる検証画像座標と比較することができる。この比較は、検証画
像及び参照画像が取り込まれた参照箇所ごとに行うことができる。
【００１５】
一例において、参照画像内に検証記号が現れる参照画像座標は、参照画像内の検証記号
の中心の座標とすることができる（参照画像内の検証記号の中心座標とも呼ばれる）。同
様に、検証画像内に検証記号が現れる検証画像座標は、検証画像内の検証記号の中心の座
標とすることができる（検証画像内の検証記号の中心座標とも呼ばれる）。対応する検証
画像が取り込まれたときにロボットアーム及び／又は検証記号が位置した参照箇所ごとに
、ロボット制御システムは、参照箇所に関連付けられる参照画像座標と、同じ参照箇所に
関連付けられる検証画像座標との間の偏差を特定することができる。ロボットアーム及び
／又は検証記号が複数の参照箇所に配置されてきた場合には、ロボット制御システムは、
複数の参照箇所に関して、それぞれの参照画像座標とそれぞれの検証画像座標との間のそ
れぞれの偏差量を特定することができる。ロボット制御システムは更に、参照箇所ごとの
参照画像座標とそれぞれの検証画像座標との間のそれぞれの偏差量に基づいて、偏差パラ
メーターの値を特定することができる。
【００１６】
一例において、検証記号内の複数の形状のそれぞれの中心が同じ、又は実質的に同じ位
置にあるように、検証記号は互いに同心である複数の形状を含むことができる。例えば、
検証記号は、２つ以上の同心円を含むリングパターンとすることができる。場合によって
は、検証記号の参照画像座標が参照画像内の検証記号の中心座標である場合には、ロボッ
ト制御システムは、参照画像内の複数の形状のそれぞれの中心座標に基づいて、検証記号
の中心座標を特定することができ、特定の形状の中心座標は、その形状の中心の座標であ
る。検証記号がリングパターンである場合には、参照画像内のリングパターンを形成する
第１の円の中心座標と、リングパターンを形成する第２の円の中心座標との平均として、
参照画像内のリングパターンの中心座標を特定することができる。同様に、検証画像内の
検証記号の中心座標は、検証画像内の検証記号を形成する複数の形状のそれぞれの中心座
標に基づいて特定することができる。場合によっては、複数の形状を用いて、検証記号を
形成することにより、検証の精度を改善することができる。例えば、１つの画像内の複数
の形状のそれぞれの中心座標を用いて、検証記号の中心座標を特定することにより、画像
ノイズに対する検証のロバストネスを改善することができる。より具体的には、検証記号
の画像が画像ノイズを含む場合には、画像ノイズによって、ロボット制御システムが検証
記号の特定の形状の中心座標を検出する精度が低下する場合がある。しかしながら、その
形状の中心座標が別の形状の中心座標と平均され、検証記号の中心座標が特定される場合
には、平均した中心座標は、画像ノイズの影響を低減することができる。結果として、検
証記号の中心座標を特定する際の精度を改善することができる。
【００１７】
一例において、検証記号はそれぞれ色が異なる複数の領域を有することができ、複数の
領域のそれぞれの面積が、識別できる規定された比を有することができる。例えば、検証
記号は、第１の色（例えば、黒）を有する第１の領域と、第２の色（例えば、白）を有す
る第２の領域とを有することができ、第１の領域の面積と第２の領域の面積との比が規定
されるか、又は別の方法で既知である。識別できる比は、画像がキャリブレーションパタ
ーンのドット等の他の特徴を取り込むか、又は別の方法で含む場合には特に、画像内の検
証記号を識別するのを容易にすることができる。例えば、検証記号を動かしているロボッ
トアームが、ロボットアーム上に配置されるキャリブレーションパターンを有する場合も
ある。ロボット制御システムは、その比を用いて、検証記号と、キャリブレーションパタ
ーンのドットとを区別することができる。より具体的には、検証記号の複数の領域の面積
の比が識別できる比として規定されるので、ロボット制御システムは、規定された比に基
づいて、画像内の検証記号を識別することができる。画像内に現れる検証記号の識別中に
、ロボット制御システムは、規定された比に基づいて、検証記号と、キャリブレーション
パターン又は他の特徴とを区別することができる。場合によっては、検証記号は、それぞ
れ異なる色の複数の領域を有し、複数の領域のそれぞれの面積間に規定された比を有する
画像の部分として、その画像内で識別することができる。ロボット制御システム又は他の
システム若しくはデバイスが、画像の特定の部分が、それぞれ色が異なる複数の領域を有
しないと判断する場合には、又は複数の領域のそれぞれの面積が規定された比とは異なる
比を有すると判断する場合には、ロボット制御システムは、画像の部分が検証記号でない
と判断することができる。
【００１８】
一例において、ロボット制御システムは、ロボットの周囲の温度に基づいて、検証を実
行することができる。例えば、ロボット制御システムは、温度に基づいて、規定された偏
差閾値を調整する（すなわち、偏差閾値に関する新たな値を規定する）ことができる。例
えば、或る材料が温度の影響を受けやすい場合があり、及び／又は温度に応じて膨張／収
縮する場合があるので、温度はカメラ内、及び／又はロボット内の種々の部品に影響を及
ぼす場合がある。温度の変化によって、カメラの固有パラメーター（複数の場合もある）
が変化する場合があり、及び／又はカメラとその外部環境との間の関係が変化する場合が
ある。一実施形態において、偏差閾値は、温度が規定範囲外にあるときに第１の値を有す
るように設定することができ、一方、偏差閾値は、温度が規定範囲内にあるときに、第１
の値より低い第２の値を有するように設定することができる。例えば、温度が規定された
正常動作温度範囲内（例えば、室温の１０度以内に）あるとき、偏差閾値は、第１の値と
することができる。温度が正常動作温度範囲外にあるとき、偏差閾値は、第１の値より低
い第２の値を有することができる。正常動作温度範囲外の温度では、カメラに、又はカメ
ラと外部環境との関係に変化が生じる可能性が高くなる場合があり、それゆえ、古いカメ
ラキャリブレーション情報でロボットを動作させる際に誤差が生じる可能性が高くなる場
合があるので、温度が正常動作範囲外にあるときに、更なるカメラキャリブレーションを
より容易にトリガーするために、第２の値は第１の値より低くすることができる。
【００１９】
一実施形態において、カメラキャリブレーションの検証は、単一の参照箇所にのみ頼る
場合がある。代替的には、カメラキャリブレーションの検証は、複数の参照箇所に頼るこ
とができる。参照箇所は、カメラ視野内の任意の位置とすることができるか、又は特定の
規定された位置とすることができる。例えば、参照箇所は、カメラに対して凹形である少
なくとも１つの仮想球の表面上の位置として規定することができる。このシナリオにおけ
る各参照箇所において、検証記号が、カメラに面するときに少なくとも１つの仮想球の表
面に対して接線方向に位置決めされるように、検証記号を位置決めするようにロボットア
ームを制御することができる。この位置決めによれば、検証記号をカメラによって真正面
から、より良好に撮影できるか、又は別の方法で取り込めるようになる場合がある（検証
記号がカメラの真正面を向く）ので、検証記号の画像が、検証記号の斜視図ではなく、平
面図に近くなる。例えば、検証記号がリングパターンである場合には、リングパターンを
仮想球の表面に対して接線方向に位置決めすることによって、結果として生じるリングパ
ターン画像が、楕円形に見えるのではなく、依然として円形に見えるようにすることがで
きる。結果として生じる画像は、（リングパターンが画像内で楕円形に見えるシナリオに
対して）少ない射影ひずみを示す場合があるか、又は全く射影ひずみを示さない場合があ
る。射影ひずみがないことは、リングパターンの中心座標の正確な特定を助長することが
できる。場合によっては、参照箇所は、カメラに対して全て凹形である複数の仮想球の中
に分割することができる。複数の仮想球は共通の中心を共有することができ、異なるサイ
ズとすることができ、それにより、各仮想球は、カメラからそれぞれ異なる距離を有する
球面を有する。場合によっては、カメラは、全ての仮想球のための共通の中心とすること
ができる。
【００２０】
図１Ａは、自動カメラキャリブレーション及びカメラキャリブレーションの自動検証を
実行するロボット運用システム１００（システム１００とも呼ばれる）のブロック図を示
す。ロボット運用システム１００は、ロボット１５０と、ロボット制御システム１１０（
ロボットコントローラーとも呼ばれる）と、カメラ１７０とを含む。一実施形態において
、システム１００は倉庫内に、製造工場内に、又は他の施設内に位置することができる。
ロボット制御システム１１０は、後に更に詳細に論じられるカメラキャリブレーションを
実行し、カメラキャリブレーション情報を特定するように構成することができ、カメラキ
ャリブレーション情報は、倉庫内で荷物を持ち上げる等のロボット操作を実行するように
ロボット１５０を制御するために後に使用される。ロボット制御システム１１０は、同じ
く後に更に詳細に論じられるカメラキャリブレーション検証を実行し、カメラキャリブレ
ーション情報が依然として十分に正確であるか否かを検証するように更に構成することが
できる。場合によっては、ロボット制御システム１１０は、カメラキャリブレーションを
実行し、カメラキャリブレーション情報に基づいて、ロボット操作を実行するように、ロ
ボット１５０を制御するように構成される。場合によっては、ロボット制御システム１１
０は、ロボット１５０及びカメラ１７０と通信する単一のデバイス（例えば、単一のコン
ソール又は単一のコンピューター）を形成することができる。場合によっては、ロボット
制御システム１１０は複数のデバイスを含むことができる。
【００２１】
場合によっては、ロボット制御システム１１０は、カメラキャリブレーション及び／又
はカメラキャリブレーションの検証を実行する専用システムとすることができ、最新のカ
メラキャリブレーション情報を別の制御システム（別のコントローラーとも呼ばれる、図
示せず）に通信することができ、その後、別の制御システムが、最新のカメラキャリブレ
ーション情報に基づいて、ロボット操作を実行するように、ロボット１５０を制御する。
ロボット１５０は、カメラ１７０によって取り込まれた画像に基づいて、かつカメラキャ
リブレーション情報に基づいて位置決めすることができる。より具体的には、ロボット制
御システム１１０は、一実施形態において、画像に基づいて、かつカメラキャリブレーシ
ョン情報に基づいて、動作コマンドを生成し、動作コマンドをロボット１５０に通信し、
そのロボットアームの動作を制御するように構成することができる。場合によっては、ロ
ボット制御システム１１０は、ロボット操作時の休止期間中にカメラキャリブレーション
の検証を実行するように構成される。場合によっては、ロボット制御システム１１０は、
ロボット１５０でロボット操作を実行している間に検証を実行するように構成される。
【００２２】
一実施形態において、ロボット制御システム１１０は、有線通信又はワイヤレス通信を
介して、ロボット１５０及びカメラ１７０と通信するように構成することができる。例え
ば、ロボット制御システム１１０は、ＲＳ−２３２インターフェース、ユニバーサルシリ
アルバス（ＵＳＢ）インターフェース、イーサネット（登録商標）インターフェース、Ｂ
ｌｕｅｔｏｏｔｈ（登録商標）インターフェース、ＩＥＥＥ８０２．１１インターフェー
ス又はその任意の組み合わせを介して、ロボット１５０及び／又はカメラ１７０と通信す
るように構成することができる。一実施形態において、ロボット制御システム１１０は、
ペリフェラルコンポーネントインターコネクト（ＰＣＩ）バス等のローカルコンピュータ
ーバスを介して、ロボット１５０及び／又はカメラ１７０と通信するように構成すること
ができる。
【００２３】
一実施形態において、ロボット制御システム１１０は、ロボット１５０とは別に存在す
ることができ、上記で論じられたワイヤレス接続又は有線接続を介して、ロボットと通信
することができる。例えば、ロボット制御システム１１０は、有線接続又はワイヤレス接
続を介してロボット１５０及びカメラ１７０と通信するように構成されるスタンドアロー
ンコンピューターとすることができる。一実施形態において、ロボット制御システム１１
０は、ロボット１５０と一体の構成要素とすることができ、上記で論じられたローカルコ
ンピューターバスを介して、ロボット１５０の他の構成要素と通信することができる。場
合によっては、ロボット制御システム１１０は、ロボット１５０のみを制御する専用制御
システム（専用コントローラーとも呼ばれる）とすることができる。他の場合には、ロボ
ット制御システム１１０は、ロボット１５０を含む、複数のロボットを制御するように構
成することができる。一実施形態において、ロボット制御システム１１０、ロボット１５
０及びカメラ１７０は同じ施設（例えば、倉庫）内に位置する。一実施形態において、ロ
ボット制御システム１１０は、ロボット１５０及びカメラ１７０から遠隔とすることがで
き、ネットワーク通信（例えば、ローカルエリアネットワーク（ＬＡＮ）接続）を介して
、ロボット１５０及びカメラ１７０と通信するように構成することができる。
【００２４】
一実施形態において、ロボット制御システム１１０は、カメラ１７０から、ロボット１
５０上（例えば、ロボットのロボットアーム上）に配置されるキャリブレーションパター
ン１６０及び／又は検証記号１６５の画像を読み出す（retrieve）か、又は別の方法で受
信するように構成することができる。場合によっては、ロボット制御システム１１０は、
そのような画像を取り込むように、カメラ１７０を制御するように構成することができる
。例えば、ロボット制御システム１１０は、カメラ１７０にカメラ１７０の視野（カメラ
視野とも呼ばれる）の画像を取り込ませるカメラコマンドを生成し、有線接続又はワイヤ
レス接続を介して、カメラコマンドをカメラ１７０に通信するように構成することができ
る。同じコマンドによって、カメラ１７０に、ロボット制御システム１１０、又はより一
般的には、ロボット制御システム１１０によってアクセス可能な記憶デバイスに画像を通
信させることもできる。代替的には、ロボット制御システム１１０は、カメラコマンドを
受信すると、カメラ１７０が取り込んだ画像（複数の場合もある）をロボット制御システ
ム１１０に通信する別のカメラコマンドを生成することができる。一実施形態において、
カメラ１７０は、ロボット制御システム１１０からのカメラコマンドを必要とすることな
く、定期的に、又は規定されたトリガー条件に応答して、自らのカメラ視野内の画像を自
動的に取り込むことができる。そのような実施形態において、カメラ１７０は、ロボット
制御システム１１０からのカメラコマンドを用いることなく、ロボット制御システム１１
０に、又はより一般的にはロボット制御システム１１０によってアクセス可能な記憶デバ
イスに画像を自動的に通信するように構成することもできる。
【００２５】
一実施形態において、ロボット制御システム１１０は、ロボット制御システム１１０に
よって生成され、有線接続又はワイヤレス接続を介してロボット１５０に通信される動作
コマンドを介して、ロボット１５０の動作を制御するように構成することができる。ロボ
ット１５０は、ロボット１５０上にキャリブレーションパターン１６０及び検証記号１６
５の一方又は両方を有するように構成することができる。例えば、図１Ｂは、図１Ａのキ
ャリブレーションパターン１６０が存在しない場合の、ロボット１５０上に検証記号１６
５が配置されるロボット運用システム１００Ａを示す。一例において、検証記号１６５は
、ロボット１５０の一部とすることができ、ロボット１５０上に永久に配置することがで
きる。例えば、検証記号１６５は、ロボット１５０上に永久に塗布することができるか、
又はロボット１５０に永久に取り付けられるステッカー又はボードの一部とすることがで
きる。別の例において、検証記号１６５は、ロボット１５０に着脱可能である別の構成要
素とすることができる。検証記号１６５は、ロボット１５０上に永久に配置することがで
きるか、又はロボット１５０に着脱可能である別の構成要素とすることができる。
【００２６】
一実施形態において、ロボット１５０を制御するためにシステム１００において使用さ
れる唯一の画像が、カメラ１７０によって取り込まれた画像である場合がある。別の実施
形態において、システム１００は、複数のカメラを含むことができ、ロボット１５０は、
複数のカメラからの画像によって制御することができる。
【００２７】
図１Ｂは、ロボット制御システム１１０がユーザーインターフェースデバイス１８０と
通信する実施形態を更に示す。ユーザーインターフェースデバイス１８０は、ロボット１
５０が位置する倉庫にいる従業員等の、ロボット１５０の運用者とのインターフェースを
構成することができる。ユーザーインターフェースデバイス１８０は、ロボット１５０の
運用に関連する情報を表示するユーザーインターフェースを提供する、例えば、タブレッ
トコンピューター又はデスクトップコンピューターを含むことができる。上記で言及され
たように、ロボット制御システム１１０は、偏差パラメーター値が規定された偏差閾値を
超える時点を検出するように構成することができる。一実施形態において、ユーザーイン
ターフェースデバイス１８０は、偏差パラメーター値が規定された偏差閾値を超えること
を運用者に通知する警報又は他の警告を与えることができる。
【００２８】
図１Ｃは、ロボット制御システム１１０のブロック図を示す。ブロック図に示されるよ
うに、ロボット制御システム１１０は、制御回路１１１と、通信インターフェース１１３
と、非一時的コンピューター可読媒体１１５（例えば、メモリ）とを含む。一実施形態に
おいて、制御回路１１１は１つ以上のプロセッサ、プログラマブル論理回路（ＰＬＣ）又
はプログラマブル論理アレイ（ＰＬＡ）、フィールドプログラマブルゲートアレイ（ＦＰ
ＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、又は任意の他の制御回路を含むことができ
る。
【００２９】
一実施形態において、通信インターフェース１１３は、図１Ａ又は図１Ｂのカメラ１７
０及び図１Ａ又は図１Ｂのロボット１５０と通信するように構成される１つ以上の構成要
素を含むことができる。例えば、通信インターフェース１１３は、有線プロトコル又はワ
イヤレスプロトコルを介して通信を実行するように構成される通信回路を含むことができ
る。一例として、通信回路は、ＲＳ−２３２ポートコントローラー、ＵＳＢコントローラ
ー、イーサネットコントローラー、Ｂｌｕｅｔｏｏｔｈ（登録商標）コントローラー、Ｐ
ＣＩバスコントローラー、任意の他の通信回路、又はその組み合わせを含むことができる
。一実施形態において、制御回路１１１は、動作コマンド（例えば、モーター動作コマン
ド）を生成し、動作コマンドを通信インターフェース１１３に出力するように構成するこ
とができる。この実施形態において、通信インターフェース１１３は、ロボット１５０の
ロボットアーム又は他の構成要素の動作を制御するために、動作コマンドをロボット１５
０に通信するように構成することができる。一実施形態において、制御回路１１１は、カ
メラコマンドを生成し、カメラコマンド（例えば、画像取込コマンド）を通信インターフ
ェース１１３に出力するように構成することができる。この実施形態において、通信イン
ターフェース１１３は、カメラの視野内の物体の画像を撮影するか、又は別の方法で取り
込むようにカメラ１７０を制御するために、カメラコマンドをカメラ１７０に通信するよ
うに構成することができる。一実施形態において、通信インターフェース１１３は、カメ
ラ１７０から画像又は他のデータを受信するように構成することができ、制御回路１１１
は、通信インターフェース１１３から画像を受信するように構成することができる。
【００３０】
一実施形態において、非一時的コンピューター可読媒体１１５はコンピューターメモリ
を含むことができる。コンピューターメモリは、例えば、ダイナミックランダムアクセス
メモリ（ＤＲＡＭ）、半導体集積メモリ（solid state integrated memory）、及び／又
はハードディスクドライブ（ＨＤＤ）を含むことができる。場合によっては、カメラキャ
リブレーションは、非一時的コンピューター可読媒体１１５上に記憶されるコンピュータ
ー実行可能命令（例えば、コンピューターコード）を通して実施することができる。その
ような場合に、制御回路１１１は、コンピューター実行可能命令を実行し、カメラキャリ
ブレーションの検証（例えば、図４Ａ、図４Ｂ及び図９に示されるステップ）を実行する
ように構成される１つ以上のプロセッサを含むことができる。
【００３１】
図１Ｄは、１つ以上のレンズ１７１と、イメージセンサー１７３と、通信インターフェ
ース１７５とを含むカメラ１７０のブロック図を示す。通信インターフェース１７５は、
図１Ａ、図１Ｂ又は図１Ｃのロボット制御システム１１０と通信するように構成すること
ができ、ロボット制御システム１１０の図１Ｃの通信インターフェース１１３に類似とす
ることができる。一実施形態において、１つ以上のレンズ１７１は、カメラ１７０の外部
から到来している光をイメージセンサー１７３上に合焦することができる。一実施形態に
おいて、イメージセンサー１７３は、それぞれのピクセル強度値を介して画像を表すよう
に構成されるピクセルのアレイを含むことができる。イメージセンサー１７３は、電荷結
合素子（ＣＣＤ）センサー、相補型金属酸化膜半導体（ＣＭＯＳ）センサー、量子イメー
ジセンサー（ＱＩＳ：quanta image sensor）又は任意の他のイメージセンサーを含むこ
とができる。
【００３２】
上記で言及されたように、カメラによって取り込まれた画像に基づいて、ロボットの制
御を助長するために、カメラキャリブレーションを実行することができる。例えば、図２
はロボット運用システム２００（システム２００とも呼ばれる）を示しており、そのシス
テムでは、画像を用いて、倉庫内の物体２９２を持ち上げる操作等の、ロボット操作を実
行するようにロボット２５０を制御する。より具体的には、システム２００は、図１Ａの
システム１００の一実施形態とすることができ、カメラ２７０、ロボット２５０及びロボ
ット制御システム１１０を含む。カメラ２７０は、図１Ａ、図１Ｂ又は図１Ｄのカメラ１
７０の一実施形態とすることができ、ロボット２５０は、図１Ａ又は図１Ｂのロボット１
５０の一実施形態とすることができる。カメラ２７０は、倉庫内のコンベヤベルト２９３
上に配置される物体２９２（例えば、出荷するための荷物）の画像を取り込むように構成
することができ、ロボット制御システム１１０は、物体２９２を持ち上げるように、ロボ
ット２５０を制御するように構成することができる。コンベヤベルト２９３上に１つ以上
の物体が存在するとき、ロボット制御システム１１０は、物体を持ち上げるロボット２５
０の動作をスケジューリングするように構成することができる。ロボット制御システム１
１０は、場合によっては、コンベヤベルト２９３上に物体が存在しない時点、又はコンベ
ヤベルト２９３上の、ロボット２５０の届く範囲内に物体が存在しない時点を検出するこ
とによって、ロボット操作のための休止期間を検出するように構成することができる。
【００３３】
図２の実施形態において、ロボット２５０は、ベース２５２と、ベース２５２に対して
移動可能であるロボットアームとを有することができる。より具体的には、ロボットアー
ムは複数のリンク２５４Ａ〜２５４Ｅと、リンク２５４Ｅに取り付けられるロボットハン
ド２５５とを備えることができる。複数のリンク２５４Ａ〜２５４Ｅは互いに対して回動
可能とすることができ、及び／又は互いに対して直線的に移動可能である直動リンク（pr
ismatic links）とすることができる。図２は、物体を持ち上げるために使用されるロボ
ット２５０に関わるため、ロボットハンド２５５は、物体２９２を掴むために使用される
把持部２５５Ａ及び２５５Ｂを含むことができる。一実施形態において、ロボット制御シ
ステム１１０は、リンク２５４Ａ〜２５４Ｅのうちの１つ以上を回動させる動作コマンド
を通信するように構成することができる。動作コマンドは、モーター動作コマンド等のロ
ーレベルコマンド、又はハイレベルコマンドとすることができる。ロボット制御システム
１１０からの動作コマンドがハイレベルコマンドである場合には、ロボット１５０は、ハ
イレベルコマンドをローレベルコマンドに変換するように構成することができる。
【００３４】
一実施形態において、カメラキャリブレーションから特定されるカメラキャリブレーシ
ョン情報は、カメラ２７０とロボット２５０との間の関係、又はより具体的には、カメラ
２７０と、ロボット２５０のベース２５２に対して静止しているワールド点（world poin
t）２９４との間の関係を記述する。ワールド点２９４は、ロボット２５０が位置する世
界又は他の環境を表すことができ、ベース２５２に対して静止している任意の仮想点（im
aginary point）とすることができる。言い換えると、カメラキャリブレーション情報は
、カメラ２７０とワールド点２９４との間の関係を記述する情報を含むことができる。一
実施形態において、その関係は、ワールド点２９４に対するカメラ２７０の位置と、ロボ
ット２５０のための参照方向に対するカメラ２７０の向きとを指すことができる。カメラ
２７０とワールド点２９４との間の上記の関係はカメラ−ワールド関係と呼ばれる場合が
あり、カメラ２７０とロボット２５０との間の関係を表すために使用することができる。
場合によっては、カメラ−ワールド関係を用いて、カメラ２７０と物体２９２との間の関
係（カメラ−物体関係とも呼ばれる）、及び物体２９２とワールド点２９４との間の関係
（物体−ワールド関係とも呼ばれる）を特定することができる。カメラ−物体関係及び物
体−ワールド関係を用いて、物体２９２を持ち上げるようにロボット２５０を制御するこ
とができる。
【００３５】
一実施形態において、カメラキャリブレーション情報は、カメラ２７０の固有パラメー
ターを記述することができ、固有パラメーターは、その値がカメラ２７０の位置及び向き
から独立している任意のパラメーターとすることができる。固有パラメーターは、カメラ
の焦点距離、カメラのイメージセンサーのサイズ、又はカメラ２７０によって導入される
レンズひずみの影響等の、カメラ２７０の特性を特徴付けることができる。
【００３６】
ロボット３５０の一例の詳細な構造を示す一例が図３に示され、図３は、カメラ３７０
及びロボット３５０と通信するロボット制御システム１１０を含むロボット運用システム
３００を示す。カメラ３７０は、図１Ａ、図１Ｂ、図１Ｄ又は図２のそれぞれカメラ１７
０／２７０の一実施形態とすることができ、ロボット３５０は、図１Ａ、図１Ｂ又は図２
のそれぞれロボット１５０／２５０の一実施形態とすることができる。カメラ３７０は、
カメラ視野３３０内の画像を取り込むことができる場合がある。ロボット３５０は、ベー
ス３５２と、ベース３５２に対して移動可能であるロボットアームとを含むことができる
。ロボットアームは、リンク３５４Ａ〜３５４Ｅ等の１つ以上のリンクと、ロボットハン
ド３５５とを含む。一実施形態において、リンク３５４Ａ〜３５４Ｅは互いに回動可能に
取り付けることができる。例えば、リンク３５４Ａは、ジョイント３５６Ａを介して、ロ
ボットベース３５２に回動可能に取り付けることができる。残りのリンク３５４Ｂ〜３５
４Ｅは、ジョイント３５６Ｂ〜３５６Ｅを介して、互いに回動可能に取り付けることがで
きる。一実施形態において、ベース３５２を用いて、ロボット３５０を、例えば、取付フ
レーム又は取付面（例えば、倉庫の床）に取り付けることができる。一実施形態において
、ロボット３５０は、リンク３５４Ａ〜３５４Ｅを回動させることによってロボットアー
ムを動かすように構成される複数のモーターを含むことができる。例えば、モーターのう
ちの１つは、図３において破線矢印で示されるように、ジョイント３５６Ａ及びベース３
０２に対して第１のリンク３５４Ａを回動させるように構成することができる。同様に、
複数のモーターのうちの他のモーターも、リンク３５４Ｂ〜３５４Ｅを回動させるように
構成することができる。複数のモーターはロボット制御システム１１０によって制御する
ことができる。図３は、第５のリンク３５４Ｅ上に固定されるように配置されるロボット
ハンド３５５を更に示す。ロボットハンド３５５は、その上にキャリブレーションパター
ン３２０を有することができ、ロボット制御システム１１０がカメラ３７０を介してキャ
リブレーションパターン３２０の画像を取り込み、キャリブレーションパターン３２０の
取り込まれた画像に基づいて、カメラキャリブレーションを実行できるようにする。例え
ば、ロボット制御システム１１０は、キャリブレーションパターン３２０の画像（キャリ
ブレーション画像とも呼ばれる）を取り込むためにカメラ３７０が使用されているときに
、キャリブレーションパターン３２０がカメラ視野３３０内に存在することができ、カメ
ラ３７０から視認可能であるように、ロボットアームを動かすことができる。カメラキャ
リブレーションが実行された後に、ロボットハンド３５５を取り外し、後に更に詳細に論
じられるように、その上に配置される検証記号を有するロボットハンド等の別のロボット
ハンドと交換することができる。
【００３７】
上記で言及されたように、一実施形態によれば、カメラキャリブレーション検証は、参
照画像内に検証記号が現れる参照画像座標と、検証画像内に検証記号が現れる検証画像座
標とを比較することを含むことができる。その比較は、検証画像座標と参照画像座標との
間の偏差を特定することができ、その偏差を用いて、更なるカメラキャリブレーションを
実行すべきか否かを判断することができる。検証画像は、ロボット操作の休止期間中に取
り込むことができる。図４Ａ及び図４Ｂは、一実施形態による、カメラキャリブレーショ
ンの検証の方法４００を示すフロー図を示す。一実施形態において、方法４００は、ロボ
ット制御システム１１０の制御回路１１１によって実行することができる。上記で言及さ
れたように、ロボット制御システム１１０は、図１Ｃの通信インターフェース１１３を含
むことができ、通信インターフェースは、図１Ａ又は図１Ｂのロボット１５０、及び図１
Ａ、図１Ｂ又は図１Ｄのカメラ１７０と通信するように構成される。一実施形態において
、ロボットはベース（例えば、図２のベース２５２又は図３のベース３５２）と、その上
に検証記号が配置されるロボットアーム（例えば、図２又は図３のロボットアーム）とを
有することができ、ロボットアームはベースに対して移動可能である。
【００３８】
方法４００が実行される例示的な環境が図５Ａ及び図５Ｂに示されており、その図は、
カメラ５７０及びロボット５５０と通信するロボット制御システム１１０をそれぞれ含む
ロボット運用システム５００／５００Ａを示す。カメラ５７０は、図１、図２又は図３の
それぞれカメラ１７０／２７０／３７０の一実施形態とすることができ、ロボット５５０
は、図１Ａ、図１Ｂ、図２又は図３のそれぞれロボット１５０／２５０／３５０の一実施
形態とすることができる。ロボット５５０は、ベース５５２と、ベース５５２に対して移
動可能であるロボットアームとを含むことができる。ロボットアームは、リンク５５４Ａ
〜リンク５５４Ｅ等の１つ以上のリンクを含む。一実施形態において、リンク５５４Ａ〜
５５４Ｅは互いに回動可能に取り付けることができる。例えば、リンク５５４Ａは、ロボ
ットベース５５２に回動可能に取り付けることができる。残りのリンク５５４Ｂ〜５５４
Ｅは、複数のジョイントを介して、互いに回動可能に取り付けることができる。一実施形
態において、ベース５５２を用いて、ロボット５５０を、例えば、取付フレーム又は取付
面（例えば、倉庫の床）に取り付けることができる。ロボット５５０は、図３のロボット
３５０と同じように動作することができる。例えば、ロボット５５０は、互いに対してリ
ンク５５４Ａ〜５５４Ｅを回動させることによってロボットアームを動かすように構成さ
れる複数のモーターを含むことができる。ロボットアームは、リンク５５４Ｅに取り付け
られるロボットハンドを更に含むことができる。例えば、図５Ａは、第１のロボットハン
ド５５５、第２のロボットハンド５５７及び第３のロボットハンド５５９を示し、それぞ
れ第５のリンク５５４Ｅに着脱可能とすることができる。ロボットハンド５５５／５５７
／５５９は、コンベヤベルト５７３から物体（例えば、５８２Ａ、５８２Ｂ、５８２Ｃ）
を持ち上げるように構成される、例えば、把持部又は吸引デバイスを含むことができる。
ロボットハンド５５５／５５７／５５９が第５のリンク５５４Ｅに取り付けられるとき、
その取付は混在するように行うことができる。その着脱は手動で、又は自動的に実行する
ことができる。一例において、第５のリンク５５４Ｅは、図５Ａ及び図５Ｂに示されるよ
うに、第１のロボットハンド５５５に取り付けることができ、ロボット制御システム１１
０は、第５のリンク５５４Ｅに第１のロボットハンド５５５を解放させて、第５のリンク
５５４Ｅを第２のロボットハンド５５７に取り付けるように、ロボット５５０を制御する
ことができる。別の実施形態では、第５のリンク５５４Ｅは、ロボットハンド（例えば、
ロボットハンド５５９）に永久に取り付けることができる。
【００３９】
一実施形態において、ロボット５５０は、その上に配置される検証記号５３０を有する
ことができる。場合によっては、検証記号５３０はロボット５５０上に永久に配置するこ
とができる。場合によっては、検証記号５３０は、リンク５５４Ａ〜５５４Ｅのうちの１
つ等のロボット５５０のロボットアーム上に、又はロボットハンド上に配置することがで
きる。例えば、図５Ａは、第１のロボットハンド５５５及び第３のロボットハンド５５９
上に配置される検証記号５３０を示し、一方、図５Ｂは、リンク５５４Ｅ上に配置される
検証記号５３０を示す。検証記号５３０は、ロボット５５０上に直接塗布することができ
るか、又はステッカー又は平板等を介して、ロボット５５０に取り付けることができる。
図５Ａに示される例において、第２のロボットハンド５５７又は第３のロボットハンド５
５９はそれぞれその上に配置されるキャリブレーションパターン５２０／５２７を有する
ので、それらのロボットハンドを用いて、カメラキャリブレーションを実行することがで
き、一方、第１のロボットハンド５５５又は第３のロボットハンド５５９はそれぞれその
上に配置される検証記号５３０を有するので、それらのロボットハンドを用いて、カメラ
キャリブレーションの検証を実行することができる。
【００４０】
図４Ａに戻ると、一実施形態において、方法４００はステップ４０１から開始すること
ができ、そのステップでは、制御回路１１１が、第１のカメラキャリブレーションを実行
して、カメラ（例えば、図１、図２、図３又は図５のそれぞれカメラ１７０／２７０／３
７０／５７０）に関連付けられるカメラキャリブレーション情報を特定する。より具体的
には、カメラキャリブレーション情報は、カメラに関するカメラキャリブレーション値を
含むことができる。この実施形態において、制御回路１１１は、キャリブレーションパタ
ーンの画像（キャリブレーション画像とも呼ばれる）に基づいて、第１のカメラキャリブ
レーションを実行することができる。
【００４１】
例えば、第１のカメラキャリブレーションを実行するために、図５Ａのロボット５５０
は、キャリブレーションパターン５２０を有する第２のロボットハンド５５７に、又はキ
ャリブレーションパターン５２７を有する第３のロボットハンド５５９に取り付けること
ができる。図３は、第１のカメラキャリブレーションを実行することができる類似の環境
を示す。このステップ中に、カメラキャリブレーションを実行するためにそのキャリブレ
ーションパターン３２０が使用される第１のロボットハンド５５５を、第５のリンク５５
４Ｅから取り外すことができる。第１のカメラキャリブレーションは、ロボット操作を開
始する前に実行することができる。例えば、ロボット操作は、第１のロボットハンド５５
５がコンベヤベルト上の第１の物体５８２Ａと相互作用する等のロボット作業から開始す
ることができる。第１のカメラキャリブレーション中に、ロボット５５０は第２のロボッ
トハンド５５７を備えることができる。ロボット制御システム１１０は、キャリブレーシ
ョンパターン５２０をカメラ５７０のカメラ視野５１０内の種々の位置に動かし、そのよ
うな位置においてキャリブレーションパターン５２０のそれぞれの画像を取り込むように
、動作コマンドを介して、ロボット５５０のロボットアームを制御することができる。ロ
ボット制御システム１１０は、キャリブレーションパターン５２０の取り込まれた画像に
基づいて、第１のカメラキャリブレーションを実行し、カメラ５７０に関するカメラキャ
リブレーション情報を特定することができる。一例において、カメラキャリブレーション
情報は、カメラ５７０とロボット５５０との間の関係を記述する情報を含むことができる
。一例において、カメラキャリブレーション情報は、カメラ５７０の固有パラメーターを
記述することができる。カメラキャリブレーションは、２０１９年３月７日に出願の「ME
THOD AND DEVICE FOR PERFORMING AUTOMATIC CAMERA CALIBRATION FOR ROBOT CONTROL」
と題する米国特許出願第１６／２９５，９４０号（整理番号ＭＪ００２１ＵＳ１）におい
てより詳細に論じられており、その内容全体が引用することにより本明細書の一部をなす
。
【００４２】
図４Ａに戻ると、方法４００はステップ４０３を更に含むことができ、そのステップで
は、制御回路１１１が、ロボット制御システム１１０の通信インターフェース１１３に第
１の動作コマンドを出力することによって、第１のカメラキャリブレーション中又は後に
、検証記号（例えば、図５の５３０）をカメラ（例えば、５７０）のカメラ視野（例えば
、５１０）内の１つの位置に動かすようにロボットアームを制御する。通信インターフェ
ース１１３は、ロボットアームが、第１のカメラキャリブレーション中又は後に、検証記
号（例えば、５３０）をカメラ視野（例えば、５１０）内のその位置に動かすために、ロ
ボットに動作コマンドを通信するように構成することができる。また、動作コマンドによ
って、ロボットアームは、検証記号をカメラ（例えば、５７０）に面するように、又はよ
り一般的には、カメラから視認可能であるように、検証記号を向けることができる。その
位置は、第１のカメラキャリブレーションの検証のための１つ以上の参照箇所のうちの１
つの参照箇所として使用することができる。例えば、検証プロセスが経時的に検証記号の
画像を取得するとき、制御回路１１１は、１つ以上の位置を１つ以上の参照箇所として使
用することができるように、検証記号（例えば、５３０）を同じ１つ以上の位置に絶えず
位置決めするように、ロボットアームを制御することができる。さらに、ステップ４０５
〜４５９に関して後に説明されるように、検証プロセスは、検証記号の後の画像を、第１
のカメラキャリブレーションが実行された直後に得られた画像等の、検証記号（例えば、
５３０）の１組の早期の画像と比較することができる。後の画像は検証画像として使用す
ることができ、一方、後の画像が比較される画像は、参照画像として使用することができ
る。
【００４３】
ステップ４０５において、制御回路１１１が、通信インターフェース１１３を介して、
カメラ（例えば、１７０／２７０／３７０／５７０）から検証記号（例えば、５３０）の
画像を受信する（例えば、読み出す）ことができ、その画像は検証のための参照画像であ
る。画像は、検証記号が参照箇所にあるか、又は参照箇所にあった間に、カメラによって
取り込まれている場合がある。一実施形態において、最初に、通信インターフェース１１
３がカメラから参照画像を受信することができ、その後、制御回路１１１が、通信インタ
ーフェース１１３から参照画像を受信することができる。一実施形態において、ステップ
４０５は、制御回路１１１がカメラのためのカメラコマンドを生成することなく実行され
る。一実施形態において、ステップ４０５は、制御回路１１１がカメラコマンドを生成す
ることと、通信インターフェース１１３を介してカメラにカメラコマンドを通信すること
とを含むことができる。カメラコマンドは、参照箇所において検証記号の画像を取り込む
ように、カメラを制御することができる。
【００４４】
図５Ａ〜図６Ｂはステップ４０３及び４０５の態様を示す。図５Ａの実施形態において
、第１のカメラキャリブレーションが、例えば、第２のロボットハンド５５７を用いて実
行された後に、第２のロボットハンド５５７を、その上に配置される検証記号５３０を有
する第３のロボットハンド５５９と交換することができる。この例において、ロボット制
御システム１１０は、検証記号５３０をカメラ５７０のカメラ視野５１０内の１つ以上の
参照箇所に動かすように、ロボット５５０のロボットアームを（例えば、１つ以上の動作
コマンドを介して）制御する。１つ以上の参照箇所は、カメラ視野５１０内の任意の位置
を含むことができるか、又は後に更に詳細に論じられるような、仮想球の表面上に配置さ
れる位置等の１組の１つ以上の特定の位置とすることができる。別の例では、図５Ｂの実
施形態において、第１のカメラキャリブレーション中又は後に、ロボット制御システム１
１０は、検証記号５３０をカメラ視野５１０内の１つ以上の参照箇所に動かすようにロボ
ットアームを制御することができる。この例において、１つ以上の参照箇所は、第１のカ
メラキャリブレーション中に検証記号５３０が（キャリブレーションパターン５２０とと
もに）撮影された任意の位置を含むことができるか、又は第１のカメラキャリブレーショ
ンが実行された後に検証記号５３０が動かされた１組の１つ以上の特定の位置とすること
ができる。ロボット制御システム１１０は、第１のカメラキャリブレーションから得られ
るカメラキャリブレーション情報に基づいて、カメラ５７０からの指示によってこのステ
ップにおいてロボット５５０のロボットアームの動作を制御することができるか、又はそ
のような指示を用いることなく動作を制御することができる。一実施形態において、参照
箇所は、ローカル又はリモート記憶デバイス内に記憶され、読み出すことができる規定さ
れた位置とすることができる。参照箇所は、座標（例えば、直交座標）の形で、又はリン
ク５５４Ａ〜５５４Ｅを回動させるためのモーターコマンドとして、又は何らかの他の態
様において記憶することができる。
【００４５】
一実施形態において、ロボットアームが検証記号（例えば、５３０）を動かす１つ以上
の参照箇所は、複数の参照箇所を含むことができ、複数の参照箇所のそれぞれが、カメラ
に対して凹形である仮想球の表面上に配置される位置である。そのような実施形態におい
て、制御回路１１１は、複数の参照箇所の各参照箇所において検証記号が仮想球の表面に
対して接線方向に向くように動かすために、ロボットアームを制御するように更に構成す
ることができる。例えば、図６Ａ及び図６Ｂに示されるように、ロボット制御システム１
１０は、検証記号５３０を参照箇所６１０Ａ〜６１０Ｉに動かすように、ロボット５５０
のロボットアームを制御することができ、参照箇所６１０Ａ〜６１０Ｉのそれぞれにおい
てそれぞれの参照画像を取り込むようにカメラ５７０を制御することができる。図６Ａ及
び図６Ｂの参照箇所６１０Ａ〜６１０Ｉは、カメラ視野５１０内の複数の仮想球の中で分
割することができる。参照箇所６１０Ａ及び６１０Ｂは第１の仮想球６２０の第１の球面
６２１上に配置することができ、ここで、第１の球面６２１はカメラ視野５１０内にある
。参照箇所６１０Ｃ、６１０Ｄ及び６１０Ｅは第２の仮想球６３０の第２の球面６３１上
に配置することができ、ここで、第２の球面６３１はカメラ視野５１０内にある。参照箇
所６１０Ｆ、６１０Ｇ、６１０Ｈ及び６１０Ｉは、第３の仮想球６４０の第３の球面６４
１上に配置することができ、ここで、第３の球面６４１はカメラ視野５１０内にある。図
６Ａ及び図６Ｂに示されるように、第１の球面６２１、第２の球面６３１及び第３の球面
６４１はそれぞれ、カメラ５７０に対して凹形である。図６Ａ及び図６Ｂの例は３つの球
に基づく３つの球面を示すが、参照箇所を配置することができる異なる球面の数は、３つ
より多くすることも、少なくすることもできる。一実施形態において、カメラ５７０は、
仮想球６２０、６３０、６４０のそれぞれの中心に存在することができる。
【００４６】
一実施形態において、図６Ａ及び図６Ｂに示されるように、検証記号５３０が或る参照
箇所に動かされるときに、ロボット制御システム１１０は、検証記号５３０を参照箇所が
配置される球面に対して接線方向に位置決めするように、ロボット５５０のロボットアー
ムを（例えば、動作コマンドを介して）制御することができる。例えば、図６Ｂは、検証
記号５３０が参照箇所６１０Ｄの第２の球面６３１に対して接線方向にあることを示す。
より詳細には、検証記号５３０は平面（例えば、ステッカー）上に配置することができ、
検証記号５３０の平面が、参照箇所６１０Ｄにおいて第２の球面６３１に対して接線方向
に向くことができる。
【００４７】
一実施形態において、制御回路１１１は、検証記号が参照箇所に動かされるときに、カ
メラの真正面を向くように検証記号（例えば、５３０）を動かすために、ロボットアーム
を制御するように構成される。例えば、図６Ａに示されるように、ロボット制御システム
１１０は、検証記号５３０が参照箇所６１０Ｄに動かされるときに、カメラ５７０の真正
面を向くように検証記号５３０を動かすために、ロボット５５０のロボットアームを制御
することができる。この例において、ロボット制御システム１１０は、検証記号５３０が
カメラ５７０の真正面を向くように回動するように、ロボットハンド５５５を制御するこ
とができる。場合によっては、検証記号は、カメラ視野５１０において球面に対して接線
方向に向くことによって、カメラ５７０の真正面を向くことができる。検証記号５３０が
カメラ５７０の真正面を向くとき、カメラ５７０は、検証記号５３０を真正面から撮影で
きる場合があり、それにより、結果として生じる検証記号５３０の画像への斜視効果がな
いか、又は少ない。
【００４８】
一実施形態において、検証記号（例えば、５３０）は、第１の色を有する第１の領域と
、第２の色を有する第２の領域とを含み、第１の領域の面積と第２の領域の面積との比が
規定され、ロボット制御システム１１０の非一時的コンピューター可読媒体（例えば、記
憶デバイス）上に記憶される。そのような実施形態において、制御回路１１１は、規定さ
れた比に基づいて、参照画像又は検証画像内の検証記号を識別するように構成することが
できる。例えば、図５Ｃに示されるように、検証記号５３０は、リング状であり、第１の
色を有する第１の領域５３１（例えば、黒色領域）を含むことができ、第１の領域５３１
によって包囲され、第２の色を有する第２の領域５３３（例えば、白色領域）を含む。検
証記号５３０内の黒色の第１の領域５３１の面積と白色の第２の領域５３３の面積との比
は、識別できる規定値とすることができる。取り込まれた画像内の色を解析することによ
って、ロボット制御システム１１０は、その部分が円形領域を包囲するリング状領域であ
るか否かを判断し、リング状領域の面積と円形領域の面積との比が規定された比に一致す
るか否かを判断することによって、検証記号５３０に対応する画像の部分を識別できる場
合がある。これにより、ロボット制御システム１１０は、検証記号５３０と画像内の取り
込まれた他の特徴とを区別できるようになる場合がある。例えば、図５Ａに示されるよう
に、ロボット５５０は、キャリブレーションパターン５２７及び検証記号５３０の組み合
わせを有する第３のロボットハンド５５９を利用するように設定することができる。この
例において、参照画像は、検証記号５３０及びキャリブレーションパターン５２７の両方
を示すことができる。この例において、キャリブレーションパターン５２７は、いかなる
リングパターンも有しない場合があるか、又は上記で論じられた規定された比とは異なる
比のリングパターンを有する場合がある。制御回路１１１は、参照画像の部分が第１の色
を有する第１の画像領域を有するか、及び第２の色を有する第２の画像領域を有するかを
判断し、第１の画像領域の面積と第２の画像領域の面積との比が規定された比に等しいか
否かを判断することによって、参照画像のその部分が検証記号５３０であるか、キャリブ
レーションパターン５２７であるかを判断することができる。
【００４９】
場合によっては、ロボット制御システム１１０は、取り込まれた画像の特定の部分が第
１の色を有する第１の領域を有するか、及び第２の色を有する第２の領域を有するかを判
断し、第１の領域の面積と第２の領域の面積との比が規定された範囲内にあるか否かを判
断することができる。一例において、規定された比が１．５である場合には、ロボット制
御システム１１０は、特定の領域内の比が１．４〜１．６の範囲内に入る場合に、その特
定の領域が検証記号５３０に対応すると判断することができる。第１の領域及び第２の領
域の２つの色は黒及び白には限定されず、ロボット制御システム１１０によって識別可能
である任意の２つの異なる色とすることができる。
【００５０】
一態様において、検証記号（例えば、５３０）は、互いに同心である第１の形状及び第
２の形状を含むことができ、第１の形状及び第２の形状のそれぞれの中心が実質的に同じ
位置にある。例えば、検証記号は円形リングとして形成することができ、円形リングは、
互いに同心である第１の円及び第２の円を含む。より具体的には、図５Ｃに示されるよう
に、検証記号５３０は、第１の形状５３５（例えば、外円）及び第２の形状５３７（例え
ば、内円）を含むことができる。第１の形状５３５の中心及び第２の形状５３７の中心が
実質的に同じ位置にあるように、第１の形状５３５及び第２の形状５３７は互いに同心と
することができる。例えば、第１の形状５３５の中心が座標
【数１】
2020163565.tif 000003
にあり、第２の形状５３７の中心が座標
【数２】
2020163565.tif 000004
にある場合には、座標
【数３】
2020163565.tif 000005
及び座標
【数４】
2020163565.tif 000006
は実質的に同じとすることができる。
【００５１】
図４Ａに戻ると、方法４００はステップ４０７を更に含むことができ、そのステップで
は、制御回路１１１が、検証記号に関する参照画像座標を特定し、参照画像座標は、参照
画像内に検証記号（例えば、５３０）が現れる座標である。例えば、図６Ａに示されるよ
うに、検証記号５３０の画像を参照箇所６１０Ｄにおいて取り込むことができ、参照画像
として使用することができる。検証記号５３０は、特定の座標において参照画像内に現れ
ることができ、その座標は参照画像座標と呼ばれる場合がある。
【００５２】
一実施形態において、上記で論じられたように、検証記号（例えば、５３０）は互いに
同心である第１の形状及び第２の形状を含むことができ、第１の形状及び第２の形状のそ
れぞれの中心が実質的に同じ位置にある。そのような実施形態において、制御回路１１１
は、ステップ４０７において、参照画像内の第１の形状の中心の第１の座標を特定するこ
とと、参照画像内の第２の形状の中心の第２の座標を特定することと、参照画像内の第１
の座標及び第２の座標の平均として参照画像座標を特定することとによって、そのような
検証記号に関する参照画像座標を特定するように構成することができる。
【００５３】
例えば、図７Ａは、参照箇所のうちの参照箇所Ｎ（ただし、Ｎは整数）において取り込
まれた参照画像７１０を示す。参照画像７１０は検証部分７３０を含み、検証部分は、図
５Ａ、図５Ｂ又は図５Ｃの検証記号５３０を示す参照画像７１０内の画像部分である。図
１Ａ又は図１Ｂのロボット制御システム１１０は、検証部分７３０から、図５Ｃの検証記
号５３０の第１の形状５３５と同じ、又は実質的に同じである第１の形状７３５（例えば
、外円）を識別するように構成することができる。ロボット制御システム１１０は、検証
部分７３０から、図５Ｃの検証記号５３０の第２の形状５３７と同じ、又は実質的に同じ
である第２の形状７３７（例えば、内円）を更に識別するように構成することができる。
その後、参照箇所Ｎに関して、ロボット制御システム１１０は、参照画像７１０内に示さ
れる第１の形状７３５の中心の第１の座標
【数５】
2020163565.tif 000007
（すなわち、第１の形状７３５の中心座標）と、参照画像７１０内に示される第２の形状
７３７の中心の第２の座標
【数６】
2020163565.tif 000008
（すなわち、第２の形状７３７の中心座標）とを特定することができる。参照画像７１０
が参照箇所Ｎにある検証記号５３０に対応するとき、参照画像７１０に関する参照画像座
標
【数７】
2020163565.tif 000009
を全体として特定するために、ロボット制御システム１１０は、以下のように、参照画像
７１０内の第１の座標
【数８】
2020163565.tif 000010
及び第２の座標
【数９】
2020163565.tif 000011
の平均を計算することができる。
【数１０】
2020163565.tif 000012
【００５４】
一実施形態において、検証記号に関する参照画像座標は、その中心座標とすることがで
き、第１の形状７３５及び第２の形状７３７のそれぞれの中心座標に基づいて、検証記号
５３０の中心座標を特定することは、画像ノイズに対する検証プロセスのロバストネスを
改善することができる。例えば、画像ノイズは、第１の形状７３５に関する中心座標の決
定に誤差を導入する場合があるが、第２の形状７３７に関する中心座標の特定に誤差を導
入しない場合がある。場合によっては、第２の形状７３７が実際には第１の形状７３５と
同じ中心位置を共有する場合があるが、画像ノイズによって、第２の形状７３７の中心座
標が第１の形状７３５の中心座標とは異なるように画像内に現れる場合がある。このシナ
リオにおいて、検証記号５３０の中心座標として第２の形状７３７の中心座標を単に使用
すると、結果として望ましくない誤差量が生じる場合がある。誤差量は、検証記号５３０
の中心座標として、第１の形状７３５に関する中心座標と第２の形状７３７に関する中心
座標との平均を使用することによって低減することができる。
【００５５】
一実施形態において、上記で論じられた１つ以上の参照箇所は、複数の参照画像座標に
それぞれ対応する複数の参照箇所とすることができる。この実施形態では、参照画像座標
は複数の参照画像座標のうちの１つとすることができる。例えば、図６Ａ及び図６Ｂに示
されるように、検証記号５３０が動かされるか、又は別の方法で配置される、参照箇所６
１０Ａ〜６１０Ｉ等の複数の参照箇所が存在する場合がある。検証記号５３０の参照箇所
６１０Ａ〜６１０Ｉごとに、ロボット制御システム１１０は、その箇所において検証記号
５３０の、カメラ５７０によって取り込まれたそれぞれの参照画像を読み出すか、又は別
の方法で受信することができ、それぞれの参照画像内に検証記号５３０が現れる位置を示
すそれぞれの参照画像座標を特定することができる。
【００５６】
図４Ａに戻ると、方法４００はステップ４０９を更に含むことができ、そのステップで
は、制御回路１１１が、カメラキャリブレーション情報に基づいて、ロボット操作を実行
するように、ロボットアームの動作を制御する。一実施形態において、このステップは、
制御回路１１１が、カメラキャリブレーション情報に基づく第２の動作コマンドを生成す
ることと、第２の動作コマンドを通信インターフェース１１３に出力することとを含むこ
とができる。通信インターフェース１１３は、その後、ロボットアームの動作を制御する
ために、第２の動作コマンドをロボットに通信することができる。例えば、図５Ａに示さ
れるように、第１のカメラキャリブレーション後に、ロボット制御システム１１０は、物
体５８２Ａ、５８２Ｂ及び５８２Ｃを持ち上げる等の、ロボット作業を含むロボット操作
を実行するように、ロボット５５０を制御する。ロボット５５０の動作は、第１のカメラ
キャリブレーションから得られるカメラキャリブレーション情報に基づくことができ、か
つカメラ５７０によって取り込まれる物体５８２Ａ、５８２Ｂ、５８２Ｃの画像に基づく
ことができる。
【００５７】
ステップ４１１において、制御回路１１１がロボット操作中に休止期間を検出する。一
態様において、ロボットの休止期間は、ロボット操作中にロボットがロボット作業を実行
していない期間とすることができる。場合によっては、ロボット操作がコンベヤベルト５
７３から物体を持ち上げることに基づく場合には、休止期間は、コンベヤベルト５７３上
に物体が存在しないことに基づくことができる。より具体的には、コンベヤベルト５７３
は、ロボットアームによって到達可能とすることができ、制御回路１１１は、コンベヤベ
ルト５７３上に物体が存在しないこと、又はロボット５５０とコンベヤベルト５７３上の
最も近い物体との間の距離が規定された距離閾値を超えることを検出することによって、
休止期間を検出するように構成される。場合によっては、制御回路１１１は、休止期間が
発生しようとしていることを示す信号を受信することができ、その信号は、ロボット操作
を監視する別のデバイス又は構成要素から受信される場合がある。例えば、図５Ａに示さ
れるように、ロボット制御システム１１０は、第２の物体５８２Ｂと第３の物体５８２Ｃ
との間に長い距離があるために、ロボット操作中に、第２の物体５８２Ｂを持ち上げるこ
とを含むロボット作業と、第３の物体５８２Ｃを持ち上げることを含むロボット作業との
間に休止期間を検出することができる。この休止期間中、ロボット５５０が第２の物体５
８２Ｂを持ち上げた後に、物体５８２Ｃはロボット５５０によってまだ到達可能でないの
で、ロボットは、ロボット作業を実行していない休止期間を有することができる。一例に
おいて、ロボット制御システム１１０は、コンベヤベルト５７３上の物体がロボット５５
０によって到達可能でないときに、及び／又はロボット５５０とコンベヤベルト５７３上
の上流の最も近い物体（例えば、第３の物体５８２Ｃ）との間の距離が或る特定の閾値を
超えるとロボット制御システム１１０が判断するときに、休止期間を検出することができ
る。
【００５８】
図４Ａ及び図４Ｂに戻ると、方法４００はステップ４５１を更に含むことができ、その
ステップでは、制御回路１１１が、休止期間中に、検証記号５３０をステップ４０３にお
いて使用された（参照画像を取り込むために使用された）少なくとも参照箇所に動かすよ
うに、ロボットアームを制御する。一実施形態において、ステップ４５１は、制御回路１
１１が第３の動作コマンドを生成することと、第３の動作コマンドを通信インターフェー
ス１１３に出力することとを含むことができる。通信インターフェース１１３は、動作コ
マンドに基づいてロボットアームが動くように、その後、第３の動作をロボットに通信す
るように構成することができる。場合によっては、第３の動作コマンドは、参照箇所に対
応する１組の記憶されたモーターコマンドを含むことができる。場合によっては、第３の
動作コマンドは、ステップ４０１からのカメラキャリブレーション情報に基づいて生成す
ることができる。場合によっては、ステップ４５１の第３の動作コマンドは、ステップ４
０１からのカメラキャリブレーション情報に頼らない。
【００５９】
ステップ４５３において、制御回路１１１が、休止期間中にカメラ（例えば、５７０）
から検証記号（例えば、５３０）の更なる画像を読み出すか、又は別の方法で受信し、更
なる画像は検証のための検証画像であり、休止期間中の少なくとも参照箇所における検証
記号の画像である。すなわち、参照箇所に関する検証画像は、検証記号（例えば、５３０
）が参照箇所にあるか、又は参照箇所にあった間に取り込まれる。一実施形態において、
ステップ４５３は、制御回路１１１が、検証画像を取り込むようにカメラ（例えば、５７
０）を制御するカメラコマンドを生成することを含む。制御回路１１１は、通信インター
フェース１１３にカメラコマンドを出力することができ、通信インターフェースがカメラ
コマンドをカメラ（例えば、５７０）に通信することができる。一実施形態において、ス
テップ４５１は、検証記号を複数の参照箇所に動かすようにロボットアームを制御するこ
とと、カメラによって取り込まれた複数のそれぞれの検証画像を受信することとを含むこ
とができる。例えば、図６Ａ及び図６Ｂに示されるように、休止期間中に、ロボット制御
システム１１０は、検証記号５３０を参照箇所６１０Ａ〜６１０Ｉのうちの１つに動かし
、その位置における検証記号５３０の画像を検証画像として取り込むように、ロボット５
５０のロボットアームを制御することができる。休止期間がまだ終わっていない場合、よ
り具体的には、休止期間に十分な長さの時間が残っている場合には、ロボット制御システ
ム１１０は、検証記号５３０を参照箇所６１０Ａ〜６１０Ｉのうちの別の位置に動かし、
その位置における検証記号５３０の画像を別の検証画像として取り込むように、ロボット
５５０のロボットアームを制御することができる。休止期間が終了する場合には、ロボッ
ト制御システム１１０は、検証画像を取り込むのを中止することができる。その場合に、
各休止期間中に、ロボット制御システム１１０は、検証記号５３０を参照箇所６１０Ａ〜
６１０Ｉのうちの１つ以上に動かし、参照箇所６１０Ａ〜６１０Ｉの１つ以上のそれぞれ
の参照箇所において検証画像を取り込むように、ロボット５５０のロボットアームを制御
することができる。
【００６０】
図４Ｂに戻ると、方法４００はステップ４５５を更に含むことができ、そのステップで
は、制御回路１１１が、検証のために使用される検証画像座標を特定し、検証画像座標は
、検証画像内に検証記号が現れる座標である。検証記号（例えば、５３０）が複数の参照
箇所（例えば、６１０Ａ〜６１０Ｉ）に動かされる場合には、カメラ（例えば、５７０）
が複数の参照箇所にそれぞれ対応する複数の検証画像を取り込むことができ、制御回路１
１１が、複数の検証画像にそれぞれ対応し、複数の参照箇所にそれぞれ対応する複数の検
証画像座標を特定することができる。複数の検証画像は全て、カメラ（例えば、５７０）
によって単一の休止期間において取り込まれる場合があるか（例えば、単一の休止期間が
、ロボットアームが検証記号（例えば、５３０）を全ての参照箇所６１０Ａ〜６１０Ｉに
動かすことができるほど十分に長い場合）、又は複数の異なる休止期間において取り込ま
れる場合がある（例えば、各休止期間が、ロボットアームが検証記号５３０を全ての参照
箇所６１０Ａ〜６１０Ｉに動かすほど十分に長くない場合）。
【００６１】
一実施形態において、検証画像座標は、参照画像座標と同じようにして特定することが
できる。例えば、検証画像座標は検証記号（例えば、５３０）の中心座標とすることがで
き、検証画像（例えば、７６０）内の検証記号（例えば、５３０）の第１の形状の中心座
標と、検証記号の第２の形状の中心座標との平均として特定することができる。例えば、
図７Ｂは、参照箇所のうちの参照箇所Ｎにおいて取り込まれた検証画像７６０を示す。検
証画像７６０は検証部分７８０を示し、その部分は、検証記号５３０を示す検証画像７６
０内の画像部分である。ロボット制御システム１１０は、検証部分７８０から、図５Ｃの
検証記号５３０の第１の形状５８５と同じ、又は実質的に同じである第１の形状７８５を
識別することができる。ロボット制御システム１１０は更に、検証部分７８０から、検証
記号５３０の第２の形状５８７と同じ、又は実質的に同じである第２の形状７８７を識別
することができる。さらに、ロボット制御システム１１０は、検証画像７６０の検証部分
７８０内に示される第１の形状７８５の中心座標
【数１１】
2020163565.tif 000013
を特定し、検証画像７６０の検証部分７８０内に示される第２の形状７８７の中心座標
【数１２】
2020163565.tif 000014
を特定するように構成することができる。ロボット制御システム１１０は更に、以下のよ
うに、検証画像座標７６０に関する検証画像座標
【数１３】
2020163565.tif 000015
を、検証画像７６０内の第１の形状７８５の中心座標と第２の形状７８７の中心座標との
平均として特定することができる。
【数１４】
2020163565.tif 000016
【００６２】
図４Ｂに戻ると、方法４００はステップ４５７を更に含むことができ、そのステップで
は、制御回路１１１が、ステップ４０３の参照画像座標とステップ４５５の検証画像座標
との間の偏差量に基づいて、偏差パラメーター値を特定し、参照画像座標及び検証画像座
標はいずれも参照箇所Ｎに関連付けられる。一例において、参照画像座標と検証画像座標
との間の偏差は、参照画像座標と検証画像座標との間の距離とすることができる。例えば
、参照箇所Ｎにおける参照画像座標が
【数１５】
2020163565.tif 000017
と表され、参照箇所Ｎにおける検証画像座標が
【数１６】
2020163565.tif 000018
と表されると仮定すると、参照箇所Ｎにおける偏差（例えば、距離）は
【数１７】
2020163565.tif 000019
と表すことができる。
【００６３】
上記で論じられたように、１つ以上の参照箇所が複数の参照箇所である態様では、制御
回路１１１は、複数の参照箇所にそれぞれ対応する複数の検証画像座標を特定するように
構成することができ、上記で論じられた検証画像座標は複数の検証画像座標のうちの１つ
である。そのような態様において、偏差パラメーター値は、複数の参照箇所に関する複数
の参照画像座標と複数の検証画像座標との間の複数のそれぞれの偏差量に基づき、複数の
それぞれの偏差量のうちの各偏差量は、（ａ）複数の参照箇所のそれぞれの参照箇所に対
応する参照画像座標と、（ｂ）同じ参照箇所に対応する検証画像座標との間の偏差量であ
る。複数の検証画像座標は、複数の検証画像内に検証記号が現れるそれぞれの座標とする
ことができ、上記で論じられた検証画像は複数の検証画像のうちの１つである。制御回路
１１１は、１つの休止期間内に複数の検証画像の全てを取り込むように、カメラを制御す
るように構成することができ、及び／又は異なる休止期間内に複数の検証画像を取り込む
ように、カメラを制御するように構成することができる。
【００６４】
例えば、図６Ａ及び図６Ｂに示されるように、複数の参照箇所が存在するとき、ロボッ
ト制御システム１１０は、複数の参照箇所に対応する複数のそれぞれの参照画像座標を特
定することができ、複数の参照箇所に対応する複数のそれぞれの検証画像座標を特定する
ことができ、複数の参照画像座標と複数の検証画像座標との間のそれぞれの偏差量を特定
することができる。偏差パラメーター値は、複数の参照画像座標と複数の検証画像座標と
の間のそれぞれの偏差量に基づくことができる。例えば、偏差パラメーターは、以下のよ
うに、それぞれの偏差量の平均とすることができる。
【数１８】
2020163565.tif 000020
【００６５】
上記の式において、Ｎは第Ｎの参照箇所を指すことができ、一方、Ｍは参照箇所の全数
を指すことができる。
【００６６】
図４Ｂに戻ると、方法４００はステップ４５９を更に含むことができ、そのステップで
は、制御回路１１１が、偏差パラメーター値が規定された閾値（規定された偏差閾値と呼
ばれる場合もある）を超えるか否かを判断する。さらに、ステップ４６１において、制御
回路１１１が、偏差パラメーター値が規定された閾値を超えると判断するのに応答して、
第２のカメラキャリブレーションを実行し、カメラに関する更新されたカメラキャリブレ
ーション情報を特定することができる。例えば、規定された閾値を超える偏差パラメータ
ー値は、カメラのカメラキャリブレーション情報が古くなり、及び／又はロボット操作に
おいて望ましくない誤差量を生じさせる可能性が高いことを示す場合がある。それゆえ、
偏差パラメーター値が規定された閾値を超える場合には、カメラに関する第２のカメラキ
ャリブレーションを実行して、カメラ（例えば、５７０）に関するカメラキャリブレーシ
ョン情報を更新することができる。第２のカメラキャリブレーションは第１のカメラキャ
リブレーションと同じ技法を使用することができるが、カメラによって第１のカメラキャ
リブレーションより後に取り込まれた画像に基づくことができる。一例において、ステッ
プ４５９が、偏差パラメーター値が規定された閾値を超えることを示す場合には、ロボッ
ト操作を中止又は中断することができ、その後、第２のカメラキャリブレーションを実行
し始めることができ、第２のカメラキャリブレーションは、第２のカメラキャリブレーシ
ョンのための画像を取り込むことによって開始することができる。第２のカメラキャリブ
レーションが完了し、カメラに関するカメラキャリブレーション情報が更新された後に、
ロボット制御システム１１０は、更新されたカメラキャリブレーション情報を用いて、ロ
ボット操作を再開することができる。
【００６７】
一実施形態において、制御回路１１１は、偏差パラメーター値が規定された閾値を超え
ないと判断するのに応答して、更なるカメラキャリブレーションを実行することなく（例
えば、通信インターフェースを介してロボットに第４の動作コマンドを出力することによ
って）、休止期間後にロボット操作を継続するように、ロボットを制御するように構成す
ることができる。そのような条件は、ステップ４０１からのカメラキャリブレーション情
報が依然として十分に正確であること、及び望ましくない誤差量を受けることなく、ロボ
ット操作が継続できることを示すことができる。
【００６８】
一実施形態において、制御回路１１１は、ロボットが位置する環境の温度を特定し、測
定された温度に基づいて、規定された偏差閾値（偏差閾値を再規定するとも呼ばれる）又
はカメラに関するカメラキャリブレーション情報の少なくとも一方を調整するように構成
することができる。例えば、制御回路１１１は、温度を測定することによって、又は別の
デバイス若しくは構成要素から温度データを受信することによって、環境の温度を特定す
ることができる。そのような実施形態において、制御回路１１１は、測定された温度が規
定範囲外にあるとき、規定された閾値を第１の値を有するように設定し、測定された温度
が規定範囲内にあるとき、閾値を第１の値より低い第２の値を有するように設定すること
によって、測定された温度に基づいて、規定された閾値を調整するように構成することが
できる。例えば、過度に高い温度又は過度に低い温度は、カメラに変化を引き起こす場合
がある。より具体的には、温度変化は、カメラの固有パラメーターに影響を及ぼす場合が
ある。例えば、カメラ内の構成要素は、温度が上昇するときに膨張し、温度が降下すると
きに収縮する場合があり、それがカメラの固有パラメーターに影響を及ぼす場合がある。
それゆえ、温度又は温度変化の量に基づいて、規定された偏差閾値を調整することが有利
な場合がある。例えば、温度が正常動作温度の範囲（例えば、周囲の室温に基づいて規定
された範囲）内にあるとき、その温度はカメラに悪影響を及ぼさないので、規定された偏
差閾値が下げられる場合がある。一方、温度が、正常動作温度の範囲外にあるとき、低温
又は高温がカメラに悪影響を及ぼすので、偏差閾値が上げられる場合がある。代替の例に
おいて、偏差閾値は、更なるカメラキャリブレーションをより頻繁にトリガーするために
、温度が正常動作温度外にあるとき、より低くなるように規定することができる。この例
において、偏差閾値は、温度が正常動作温度内にあるときに、更なるカメラキャリブレー
ションをトリガーする頻度を下げるために、偏差閾値は、より高くなるように規定するこ
とができる。
【００６９】
図８は、カメラキャリブレーション及びカメラキャリブレーションの検証が実行される
例示的なタイムライン８００を示す。ロボット操作が開始する前に、図１Ａ又は図１Ｂの
ロボット制御システム１１０は、キャリブレーション期間８１１中に、第１のカメラキャ
リブレーションを実行し、カメラ（例えば、図５Ａ又は図５Ｂのカメラ５７０）に関する
カメラキャリブレーション情報を特定する。第１のカメラキャリブレーションが完了した
後に、ロボット制御システム１１０は、参照取得期間８１３中に、種々の参照箇所におい
て検証記号（例えば、検証記号５３０）の参照画像を取り込み、それぞれの参照画像（例
えば、図７Ａの参照画像７１０）内に検証記号が現れる参照画像座標を特定する。参照画
像座標を特定すると、参照取得期間８１３後に、ロボット操作を開始することができる。
【００７０】
ロボット操作が開始した後に、作業期間８１５中に、ロボット制御システム１１０は１
つの以上のロボット作業を実行するようにロボット（例えば、図５Ａ又は図５Ｂのロボッ
ト５５０）を制御し、それゆえ、一実施形態では、検証画像（例えば、図７Ｂの検証画像
７６０）を収集できない場合がある。ロボット制御システム１１０は、作業期間８１５後
にロボットがロボット作業を実行していない休止期間８１７を検出する。それゆえ、休止
期間８１７中に、ロボット制御システム１１０は、参照箇所のうちの第１の組の１つ以上
の参照箇所（例えば、６１０Ａ及び６１０Ｂ）においてそれぞれ、検証記号の１つ以上の
検証画像を取り込む。休止期間８１７が終了した後、作業期間８１９中に、ロボット制御
システム１１０は、１つ以上のロボット作業を実行するようにロボットを制御するのを再
開し、それゆえ、検証画像を収集しない場合がある。ロボット制御システム１１０は、作
業期間８１９後に、ロボットがロボット作業を実行していない休止期間８２１を検出する
。休止期間８２１中に、ロボット制御システム１１０は、参照箇所のうちの第２の組の１
つ以上の参照箇所（例えば、６１０Ｃ〜６１０Ｅ）においてそれぞれ、検証記号の１つ以
上の検証画像を取り込む。休止期間８２１後、ロボット作業期間８２３中に、ロボット制
御システム１１０は、１つ以上のロボット作業を実行するようにロボットを制御するのを
再開し、それゆえ、検証画像を収集しない場合がある。ロボット制御システム１１０は、
作業期間８２３後にロボットがロボット作業を実行していない休止期間８２５を検出する
。休止期間８２５中に、ロボット制御システム１１０は、参照箇所のうちの第３の組の１
つ以上の位置（例えば、６１０Ｆ〜６１０Ｉ）においてそれぞれ、検証記号の１つ以上の
検証画像を取り込む。
【００７１】
休止期間８１７、８２１及び８２５中に取り込まれる検証画像（例えば、７６０）は、
参照箇所のうちの異なるそれぞれの位置において取り込むことができる。例えば、第１の
組、第２の組及び第３の組の１つ以上の位置は、互いに異なることができ、重ならないよ
うにすることができる。さらに、休止期間８２５中に、ロボット制御システム１１０は、
検証画像取込が完了したと判断することができ、それは、カメラキャリブレーションの検
証のために十分な数の検証画像が取り込まれたことを示すことができる。一実施形態にお
いて、ロボット制御システム１１０は、全ての参照箇所（例えば、６１０Ａ〜６１０Ｉ）
において検証画像が取り込まれた場合に、検証画像取込が完了したと判断することができ
る。一実施形態において、ロボット制御システム１１０は、検証画像の数が規定された目
標総数に達した場合に、検証画像取込が完了したと判断することができる。
【００７２】
検証画像取込が完了したと判断すると、ロボット制御システム１１０は、それぞれの検
証画像内に検証記号が現れる検証画像座標を特定する。その後、ロボット制御システム１
１０は、参照画像座標からの検証画像座標のそれぞれの偏差量に基づいて、偏差パラメー
ター値を特定する。偏差パラメーターが規定された閾値を超える場合には、ロボット制御
システム１１０は、別のカメラキャリブレーションを実行する。しかしながら、この例で
は、偏差パラメーターは規定された閾値を超えず、それゆえ、ロボット制御システム１１
０は、更なるカメラキャリブレーションを実行することなく、休止期間８２５後、作業期
間８２７中にロボット作業を実行し続ける。
【００７３】
図９は、図８のタイムラインに関連する検証プロセスを示す例示的なフロー図９００を
示す。ステップ９０１において、図１Ａ、図１Ｂ又は図１Ｃのロボット制御システム１１
０が、カメラ（例えば、図５Ａ又は図５Ｂのカメラ５７０）の第１のカメラキャリブレー
ションを実行し、カメラのカメラキャリブレーション情報を特定する。ステップ９０３に
おいて、ロボット制御システム１１０が、検証記号（例えば、図５Ａ又は図５Ｂの検証記
号５３０）を参照箇所に動かすように、ロボット（例えば、図５Ａ又は図５Ｂのロボット
５５０）を制御し、カメラを介して、それぞれの参照箇所において検証記号の参照画像（
例えば、図７Ａの参照画像７１０）のそれぞれの事例を取り込む。ステップ９０５におい
て、ロボット制御システム１１０が、第１のカメラキャリブレーションから得られるカメ
ラキャリブレーション情報に基づいて、ロボットのロボット操作を開始する。
【００７４】
ステップ９０７において、ロボット制御システム１１０が、ロボット操作中に休止期間
を検出する。ステップ９０９において、ロボット制御システム１１０が、休止期間中に検
証記号（例えば、図５Ａ又は図５Ｂの検証記号５３０）を参照箇所のうちの１つ以上の参
照箇所に動かすように、ロボット（例えば、図５Ａ又は図５Ｂのロボット５５０）を制御
し、カメラを介して、参照箇所のうちの１つ以上の参照箇所においてそれぞれ１つ以上の
検証画像（例えば、図７Ｂの検証画像７６０）を取り込む。場合によっては、ロボット制
御システム１１０は、検証記号を、休止期間の持続時間が許すだけ多くの参照箇所に動か
すようにロボットを制御することができる。ステップ９１１において、ロボット制御シス
テム１１０が、取り込まれた検証画像の全数が規定された目標総数に達したか否かを判断
する。取り込まれた検証画像の全数が目標総数に達していなかった場合には、ロボット制
御システム１１０は、より多くの検証画像を取り込むために、ステップ９０７に戻ること
によって、ロボット操作中に別の後続の休止期間を検出しようと試みる。
【００７５】
取り込まれた検証画像の全数が目標総数に達していた場合には、ステップ９１３におい
て、ロボット制御システム１１０は、参照画像（例えば、７１０）及び検証画像（例えば
、７６０）に基づいて、カメラキャリブレーションの検証を実行する。カメラキャリブレ
ーションの検証は、偏差パラメーターを生成する。ステップ９１５において、ロボット制
御システム１１０が、偏差パラメーターが規定された閾値を超えるか否かを判断する。偏
差パラメーターが閾値を超えていない場合には、ロボット制御システム１１０は、ステッ
プ９１９において、取り込まれた検証画像の全数を０にリセットすることができ、休止期
間後にロボット操作を継続することができ、その一方で、ステップ９０７に戻ることによ
って、新たな１組の検証画像を取り込むために別の休止期間を検出しようと試みる。
【００７６】
偏差パラメーターが閾値を超える場合には、ロボット制御システム１１０は、ロボット
操作を中止し、ステップ９１７において、第２のカメラキャリブレーションを実行するこ
とができる。９１７における第２のカメラキャリブレーション後に、ロボット制御システ
ム１１０は、９２１において、取り込まれた検証画像の全数を０にリセットすることがで
きる。ステップ９２１後に、そのフロー図はステップ９０３に戻ることができ、ロボット
制御システム１１０が、検証記号（例えば、５３０）を参照箇所に動かすように、ロボッ
ト（例えば、５５０）を制御し、カメラ（例えば、５７０）を介して、それぞれの参照箇
所において検証記号の新たな１組の参照画像（例えば、７１０）を取り込み、それにより
、後の検証のために、新たな１組の参照画像を使用できるようになる。
【００７７】
種々の実施形態の更なる検討
実施形態１は、ベースと、その上に配置される検証記号を有するロボットアームとを有
するロボットと通信し、カメラ視野を有するカメラと通信するように構成される通信イン
ターフェースを備えるロボット制御システムに関連する。ロボット制御システムは、第１
のカメラキャリブレーションを実行し、カメラに関連付けられるカメラキャリブレーショ
ン情報を特定するように構成される制御回路を更に備える。制御回路は、ａ）通信インタ
ーフェースを介して、ロボットに第１の動作コマンドを出力することによって、第１のカ
メラキャリブレーション中又は後に、検証記号をカメラ視野内の位置に動かすようにロボ
ットアームを制御することであって、その位置は第１のカメラキャリブレーションの検証
のための１つ以上の参照箇所のうちの参照箇所である、ロボットアームを制御することと
、ｂ）通信インターフェースを介して、カメラから検証記号の画像を受信することであっ
て、カメラは参照箇所において検証記号の画像を取り込むように構成され、画像は検証の
ための参照画像である、検証記号の画像を受信することと、ｃ）検証のための参照画像座
標を特定することであって、参照画像座標は参照画像内に検証記号が現れる座標である、
参照画像座標を特定することと、ｄ）通信インターフェースを介して、ロボットにカメラ
キャリブレーション情報に基づく第２の動作コマンドを出力することによって、カメラキ
ャリブレーション情報に基づいて、ロボット操作を実行するようにロボットアームの動作
を制御することと、ｅ）ロボット操作中に休止期間を検出することと、ｆ）通信インター
フェースを介して、ロボットに第３の動作コマンドを出力することによって、休止期間中
に、検証記号を少なくとも参照箇所に動かすようにロボットアームを制御することと、ｇ
）休止期間中に、通信インターフェースを介して、カメラから検証記号の更なる画像を受
信することであって、カメラは少なくともその参照箇所において検証記号の更なる画像を
取り込むように構成され、更なる画像は検証のための検証画像である、検証記号の更なる
画像を受信することと、ｈ）検証のために使用される検証画像座標を特定することであっ
て、検証画像座標は検証画像内に検証記号が現れる座標である、検証画像座標を特定する
ことと、ｉ）参照画像座標と検証画像座標との間の偏差量に基づいて偏差パラメーター値
を特定することであって、参照画像座標及び検証画像座標はいずれもその参照箇所に関連
付けられ、偏差パラメーター値は、第１のカメラキャリブレーション以降のカメラの変化
、又は第１のカメラキャリブレーション以降のカメラとロボットとの間の関係の変化を示
す、偏差パラメーター値を特定することと、ｊ）偏差パラメーター値が規定された閾値を
超えるか否かを判断することと、ｋ）偏差パラメーター値が規定された閾値を超えると判
断することに応答して、第２のカメラキャリブレーションを実行し、更新されたカメラキ
ャリブレーション情報を特定することとを行うように更に構成される。
【００７８】
実施形態２は、実施形態１のロボット制御システムを含み、制御回路は、偏差パラメー
ター値が規定された閾値を超えないと判断することに応答して、通信インターフェースを
介して、ロボットに第４の動作コマンドを出力することによって、更なるカメラキャリブ
レーションを実行することなく、休止期間後にロボット操作を継続するように、ロボット
を制御するように構成される。
【００７９】
実施形態３は実施形態１又は２のロボット制御システムを含み、１つ以上の参照箇所は
、複数の参照画像座標にそれぞれ対応する複数の参照箇所であり、前述の参照画像座標は
複数の参照画像座標のうちの１つである。この実施形態では、制御回路は、複数の参照箇
所にそれぞれ対応する複数の検証画像座標を特定するように更に構成され、検証画像座標
は複数の検証画像座標のうちの１つであり、偏差パラメーター値は、複数の参照箇所に関
する複数の参照画像座標と複数の検証画像座標との間のそれぞれの偏差量に基づき、それ
ぞれの偏差量のうちの各偏差量は、（ａ）複数の参照箇所のそれぞれの参照箇所に対応す
る参照画像座標と、（ｂ）同じ参照箇所に対応する検証画像座標との間の偏差量である。
【００８０】
実施形態４は実施形態３のロボット制御システムを含み、複数の検証画像座標は、複数
の検証画像内に検証記号が現れるそれぞれの座標であり、検証画像は複数の検証画像のう
ちの１つであり、制御回路は、休止期間内に複数の検証画像の全てを取り込むように、カ
メラを制御するように構成される。
【００８１】
実施形態５は実施形態３のロボット制御システムを含み、複数の検証画像座標は、複数
の検証画像内に検証記号が現れるそれぞれの座標であり、検証画像は複数の検証画像のう
ちの１つであり、制御回路は、異なる休止期間内に複数の検証画像を取り込むように、カ
メラを制御するように構成され、休止期間は異なる休止期間のうちの１つである。
【００８２】
実施形態６は実施形態１〜５のいずれか１つのロボット制御システムを含み、検証記号
は第１の色を有する第１の領域と、第２の色を有する第２の領域とを含み、第１の領域の
面積と第２の領域の面積との比が規定され、規定された比としてロボット制御システムの
記憶デバイス上に記憶される。
【００８３】
実施形態７は実施形態６のロボット制御システムを含み、制御回路が、規定された比に
基づいて、参照画像又は検証画像内の検証記号を識別するように構成される。
【００８４】
実施形態８は実施形態７のロボット制御システムを含み、ロボットアームがその上に配
置されるキャリブレーションパターンを有し、参照画像は検証記号及びキャリブレーショ
ンパターンを含み、制御回路は、参照画像の部分が第１の色を有する第１の画像領域を有
するか、及び第２の色を有する第２の画像領域を有するかを判断し、第１の画像領域の面
積と第２の画像領域の面積との比が規定された比に等しいか否かを判断することによって
、参照画像の部分が検証記号であるか、又はキャリブレーションパターンであるかを判断
するように構成される。
【００８５】
実施形態９は実施形態１〜８のいずれか１つのロボット制御システムを含み、検証記号
は、互いに同心である第１の形状及び第２の形状を含み、第１の形状及び第２の形状のそ
れぞれの中心は実質的に同じ位置である。
【００８６】
実施形態１０は実施形態９のロボット制御システムを含み、制御回路は、ａ）参照画像
内の第１の形状の中心の第１の座標を特定することと、ｂ）参照画像内の第２の形状の中
心の第２の座標を特定することと、ｃ）参照画像内の第１の座標及び第２の座標の平均と
して参照画像座標を特定することとによって、参照画像座標を特定するように構成される
。この実施形態では、制御回路は、ｄ）検証画像内の第１の形状の中心の第１の座標を特
定することと、ｅ）検証画像内の第２の形状の中心の第２の座標を特定することと、ｆ）
検証画像内の第１の座標及び第２の座標の平均として検証画像座標を特定することとによ
って、検証画像座標を特定するように構成される。
【００８７】
実施形態１１は実施形態１〜１０のいずれか１つのロボット制御システムを含み、制御
回路は、円形リングを識別することによって、参照画像又は検証画像内の検証記号を識別
するように構成され、検証記号は円形リングとして形成される。
【００８８】
実施形態１２は実施形態１〜１１のいずれか１つのロボット制御システムを含み、制御
回路は、ロボットが位置する環境の温度を特定し、測定された温度に基づいて、規定され
た閾値又はカメラキャリブレーション情報のうちの少なくとも一方を調整するように更に
構成される。
【００８９】
実施形態１３は実施形態１２のロボット制御システムを含み、制御回路は、温度が規定
範囲外にあるとき、規定された閾値を第１の値を有するように設定し、温度が規定範囲内
にあるとき、閾値を第１の値より低い第２の値を有するように設定することによって、温
度に基づいて、規定された閾値を調整するように構成される。
【００９０】
実施形態１４は実施形態１〜１３のいずれか１つのロボット制御システムを含み、制御
回路が、ロボットアームを介して検証記号を動かすように構成される１つ以上の参照箇所
は、カメラに対して凹形である球の表面上に配置される複数の参照箇所を含む。
【００９１】
実施形態１５は実施形態１４のロボット制御システムを含み、制御回路は、複数の参照
箇所の各参照箇所において検証記号が球の表面に対して接線方向に向くように動かすため
に、ロボットアームを制御するように更に構成される。
【００９２】
実施形態１６は実施形態１〜１５のいずれか１つのロボット制御システムを含み、制御
回路は、検証記号が参照箇所に動かされるときに、カメラの真正面を向くように検証記号
を動かすために、ロボットアームを制御するように構成される。
【００９３】
実施形態１７は実施形態１〜１６のいずれか１つのロボット制御システムを含み、制御
回路は、ロボット操作中にロボットがロボット作業を実行していない期間を検出すること
によって、ロボット操作の休止期間を検出するように構成される。
【００９４】
実施形態１８は実施形態１７のロボット制御システムを含み、制御回路は、ロボットア
ームによって到達可能であるコンベヤベルト上の物体と相互作用するように、ロボットア
ームを制御するように構成され、制御回路は、コンベヤベルト上に物体がないことを検出
することによって、又はロボットと、コンベヤベルト上の最も近い物体との間の距離が規
定された距離閾値を超えることを検出することによって、休止期間を検出するように構成
される。
【００９５】
種々の実施形態を上述してきたが、これらの実施形態は、限定としてではなく本発明の
単なる説明及び例として提示されていることを理解すべきである。形式及び細部における
種々の変更は本発明の趣旨及び範囲から逸脱することなく本発明内で行うことができるこ
とは当業者には明らかであろう。したがって、本発明の範囲（breadth and scope）は、
上述の例示的な実施形態のいずれかによって限定されるべきではなく、添付の特許請求の
範囲及びそれらの均等物によってのみ規定されるべきである。本明細書において論考され
た各実施形態、及び本明細書において引用された各引用文献の各特徴は、他の任意の実施
形態の特徴と組み合わせて用いることができることも理解されるであろう。本明細書にお
いて論考された全ての特許及び刊行物は、引用することによりその全体が本明細書の一部
をなす。
【図１Ａ】
2020163565.tif 000021
【図１Ｂ】
2020163565.tif 000022
【図１Ｃ】
2020163565.tif 000023
【図１Ｄ】
2020163565.tif 000024
【図２】
2020163565.tif 000025
【図３】
2020163565.tif 000026
【図４Ａ】
2020163565.tif 000027
【図４Ｂ】
2020163565.tif 000028
【図５Ａ】
2020163565.tif 000029
【図５Ｂ】
2020163565.tif 000030
【図５Ｃ】
2020163565.tif 000031
【図６Ａ】
2020163565.tif 000032
【図６Ｂ】
2020163565.tif 000033
【図７Ａ】
2020163565.tif 000034
【図７Ｂ】
2020163565.tif 000035
【図８】
2020163565.tif 000036
【図９】
2020163565.tif 000037
【手続補正書】
【提出日】令和2年4月28日(2020.4.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピューティングシステムであって、
ベースと、その上に配置される検証記号を備えるロボットアームとを有するロボットと通信すると共に、カメラ視野を有するカメラと通信するように構成される通信インターフェースと、
制御回路と、
を備え、
該制御回路は、前記ロボット及び前記カメラと通信しているときに、
前記カメラによって取り込まれた、前記検証記号とは異なるキャリブレーションパターンを表す１つ以上の画像である、１つ以上のキャリブレーション画像を受信することと、
前記１つ以上のキャリブレーション画像に基づいて第１のカメラキャリブレーションを実行し、前記カメラと関連付けられるカメラキャリブレーション情報を特定することと、
前記第１のカメラキャリブレーション中又は後に、前記検証記号を前記カメラ視野内の位置に動かすように、前記ロボットアームを制御するための第１の動作コマンドを出力することであって、該第１の動作コマンドは、前記通信インターフェースを介して前記ロボットに出力され、前記位置は、前記第１のカメラキャリブレーションの検証のための１つ以上の参照箇所のうちの参照箇所であることと、
前記通信インターフェースを介して、前記カメラから前記検証記号の画像を受信することであって、前記カメラは、前記参照箇所において前記検証記号の該画像を取り込むように構成され、該画像は、前記検証のための参照画像であることと、
前記検証記号に関する参照画像座標を特定することであって、該参照画像座標は、前記参照画像内に前記検証記号が現れる座標であることと、
前記カメラキャリブレーション情報に基づいて、前記ロボットアームの動作を制御するための第２の動作コマンドを出力することであって、該第２の動作コマンドは、前記カメラキャリブレーション情報に基づき、かつ前記通信インターフェースを介して前記ロボットに出力されることと、
前記検証記号を少なくとも前記参照箇所に動かすように前記ロボットアームを制御するための第３の動作コマンドを出力することであって、該第３の動作コマンドは、前記通信インターフェースを介して前記ロボットに出力されることと、
前記通信インターフェースを介して、前記カメラから前記検証記号の更なる画像を受信することであって、前記カメラは、少なくとも前記参照箇所において前記検証記号の該更なる画像を取り込むように構成され、該更なる画像は、前記検証のための検証画像であることと、
前記検証のために使用される検証画像座標を特定することであって、該検証画像座標は、前記検証画像内に前記検証記号が現れる座標であることと、
前記参照画像座標と前記検証画像座標との間の偏差量に基づいて、偏差パラメーター値を特定することであって、前記参照画像座標及び前記検証画像座標は、いずれも前記参照箇所に関連付けられており、該偏差パラメーター値は、前記第１のカメラキャリブレーション以降の前記カメラの変化、又は前記第１のカメラキャリブレーション以降の前記カメラと前記ロボットとの間の関係の変化を示すことと、
を行うように構成されている、コンピューティングシステム。
【請求項２】
前記制御回路は、
前記偏差パラメーター値が規定された閾値を超えるか否かを判断することと、
前記偏差パラメーター値が前記規定された閾値を超えると判断することに応答して、第２のカメラキャリブレーションを実行し、更新されたカメラキャリブレーション情報を特定することと、
を更に行うように構成されている、請求項１に記載のコンピューティングシステム。
【請求項３】
前記制御回路は、前記偏差パラメーター値が前記規定された閾値を超えないと判断することに応答して、前記通信インターフェースを介して前記ロボットに第４の動作コマンドを出力することによって、更なるカメラキャリブレーションを実行することなく、前記ロボット操作を継続するように、前記ロボットを制御するように構成されている、請求項２に記載のコンピューティングシステム。
【請求項４】
前記制御回路は、
前記ロボットが位置する環境の温度を特定することと、
測定された前記温度に基づいて、前記規定された閾値又は前記カメラキャリブレーション情報のうちの少なくとも一方を調整することと、
を更に行うように構成されている、請求項２に記載のコンピューティングシステム。
【請求項５】
前記制御回路は、
前記温度が規定範囲外にあるときに、前記規定された閾値を第１の値を有するように設定することと、
前記温度が前記規定範囲内にあるときに、前記閾値を前記第１の値より低い第２の値を有するように設定することと、
によって、前記温度に基づいて、前記規定された閾値を調整するように構成されている、請求項４に記載のコンピューティングシステム。
【請求項６】
前記制御回路は、前記ロボット操作中に休止期間を検出するように更に構成され、
前記検証記号を少なくとも前記参照箇所に動かすように前記ロボットアームを制御するための前記第３の動作コマンドは、前記休止期間中に出力され、
前記検証画像は、前記休止期間中に前記カメラから受信される、
請求項１に記載のコンピューティングシステム。
【請求項７】
前記１つ以上の参照箇所は、複数の参照画像座標にそれぞれ対応する複数の参照箇所であり、前記参照画像座標は、該複数の参照画像座標のうちの１つであり、
前記制御回路は、前記複数の参照箇所にそれぞれ対応する複数の検証画像座標を特定するように更に構成され、前記検証画像座標は、該複数の検証画像座標のうちの１つであり、
前記偏差パラメーター値は、前記複数の参照箇所に関する前記複数の参照画像座標と前記複数の検証画像座標との間のそれぞれの偏差量に基づき、前記それぞれの偏差量のうちの各偏差量は、（ａ）前記複数の参照箇所のそれぞれの参照箇所に対応する参照画像座標と、（ｂ）同じ参照箇所に対応する検証画像座標との間の偏差量である、請求項６に記載のコンピューティングシステム。
【請求項８】
前記複数の検証画像座標は、複数の検証画像内に前記検証記号が現れるそれぞれの座標であり、
前記検証画像は、前記複数の検証画像のうちの１つであり、
前記制御回路は、前記休止期間内に前記複数の検証画像の全てを取り込むように、前記カメラを制御するように構成されている、請求項７に記載のコンピューティングシステム。
【請求項９】
前記複数の検証画像座標は、複数の検証画像内に前記検証記号が現れるそれぞれの座標であり、
前記検証画像は、前記複数の検証画像のうちの１つであり、
前記制御回路は、異なる休止期間内に前記複数の検証画像を取り込むように、前記カメラを制御するように構成され、
前記休止期間は、前記異なる休止期間のうちの１つである、請求項７に記載のコンピューティングシステム。
【請求項１０】
前記検証記号は、第１の色を有する第１の領域と、第２の色を有する第２の領域とを含み、
前記第１の領域の面積と前記第２の領域の面積との比は規定され、規定された比として前記コンピューティングシステムの記憶デバイス上に記憶される、請求項１に記載のコンピューティングシステム。
【請求項１１】
前記制御回路は、前記規定された比に基づいて、前記参照画像又は前記検証画像内の前記検証記号を識別するように構成されている、請求項１０に記載のコンピューティングシステム。
【請求項１２】
前記参照画像が前記キャリブレーションパターン及び前記検証記号を含むとき、前記制御回路は、前記参照画像の部分が、前記第１の色を有する第１の画像領域を有するか、及び前記第２の色を有する第２の画像領域を有するかを判断し、且つ前記第１の画像領域の面積と前記第２の画像領域の面積との比が前記規定された比に等しいか否かを判断することによって、前記参照画像の該部分が前記検証記号であるか、又は前記キャリブレーションパターンであるかを判断するように構成されている、請求項１１に記載のコンピューティングシステム。
【請求項１３】
前記検証記号は、互いに同心である第１の形状及び第２の形状を含み、
前記第１の形状及び前記第２の形状のそれぞれの中心は、実質的に同じ位置にある、請求項１に記載のコンピューティングシステム。
【請求項１４】
前記制御回路は、
前記参照画像内の前記第１の形状の中心の第１の座標を特定することと、
前記参照画像内の前記第２の形状の中心の第２の座標を特定することと、
前記参照画像内の前記第１の座標及び前記第２の座標の平均として前記参照画像座標を特定することと、
によって前記参照画像座標を特定するように構成され、
前記制御回路は、
前記検証画像内の前記第１の形状の中心の第１の座標を特定することと、
前記検証画像内の前記第２の形状の中心の第２の座標を特定することと、
前記検証画像内の前記第１の座標及び前記第２の座標の平均として前記検証画像座標を特定することと、
によって、前記検証画像座標を特定するように構成される、請求項１３に記載のコンピューティングシステム。
【請求項１５】
前記制御回路は、円形リングを識別することによって前記参照画像又は前記検証画像内の前記検証記号を識別するように構成され、前記検証記号は、前記円形リングとして形成される、請求項１に記載のコンピューティングシステム。
【請求項１６】
前記制御回路が前記ロボットアームを介して前記検証記号を動かすように構成される前記１つ以上の参照箇所は、前記カメラに対して凹形である球の表面上に配置される複数の参照箇所を含む、請求項１に記載のコンピューティングシステム。
【請求項１７】
前記制御回路は、前記複数の参照箇所の各参照箇所において前記検証記号が前記球の前記表面に対して接線方向に向くように動かすために、前記ロボットアームを制御するように更に構成されている、請求項１６に記載のコンピューティングシステム。
【請求項１８】
前記制御回路は、前記検証記号が前記参照箇所に動かされるときに、前記カメラの真正面を向くように前記検証記号を動かすために、前記ロボットアームを制御するように構成されている、請求項１に記載のコンピューティングシステム。
【請求項１９】
コンピューティングシステムによって、キャリブレーションパターンを表す１つ以上の画像である１つ以上のキャリブレーション画像を受信することであって、該コンピューティングシステムは、ベースと、その上に配置される検証記号を備えるロボットアームとを有するロボットと通信するように構成されると共に、カメラ視野を有するカメラと通信するように構成される通信インターフェースを備え、前記１つ以上のキャリブレーション画像は、前記カメラによって取り込まれ、前記キャリブレーションパターンは、前記検証記号とは異なることと、
前記コンピューティングシステムによって、前記１つ以上のキャリブレーション画像に基づいて第１のカメラキャリブレーションを実行し、前記カメラと関連付けられるカメラキャリブレーション情報を特定することと、
前記コンピューティングシステムによって、前記通信インターフェースに第１の動作コマンドを出力することであって、前記通信インターフェースは、前記ロボットアームが、前記第１のカメラキャリブレーション中又は後に、前記検証記号を前記カメラ視野内の位置に動かすように、前記ロボットに該第１の動作コマンドを通信するように構成され、前記位置は、前記第１のカメラキャリブレーションの検証のための１つ以上の参照箇所のうちの参照箇所であることと、
前記コンピューティングシステムによって、前記通信インターフェースから、前記検証記号の画像を受信することであって、前記通信インターフェースは、前記カメラから該画像を受信するように構成され、前記カメラは、前記参照箇所において前記検証記号の該画像を取り込むように構成され、該画像は、前記検証のための参照画像であることと、
前記コンピューティングシステムによって、前記検証記号のための参照画像座標を特定することであって、該参照画像座標は、前記参照画像内に前記検証記号が現れる座標であることと、
前記コンピューティングシステムによって、前記通信インターフェースに、前記カメラキャリブレーション情報に基づく第２の動作コマンドを出力することであって、前記通信インターフェースは、前記ロボットアームを動かしてロボット操作を実行するために、前記ロボットに該第２の動作コマンドを通信するように構成されることと、
前記コンピューティングシステムによって、前記通信インターフェースに第３の動作コマンドを出力することであって、前記通信インターフェースは、前記ロボットアームが前記検証記号を少なくとも前記参照箇所に動かすように、前記ロボットに該第３の動作コマンドを通信するように構成されることと、
前記コンピューティングシステムによって、前記通信インターフェースから、前記検証記号の更なる画像を受信することであって、前記通信インターフェースは、前記カメラから該更なる画像を受信するように構成され、前記カメラは、少なくとも前記参照箇所において前記検証記号の該更なる画像を取り込むように構成され、該更なる画像は、前記検証のための検証画像であることと、
前記コンピュ―ティングシステムによって、前記検証のために使用される検証画像座標を特定することであって、該検証画像座標は、前記検証画像内に前記検証記号が現れる座標であることと、
前記コンピューティングシステムによって、前記参照画像座標と前記検証画像座標との間の偏差量に基づいて、偏差パラメーター値を特定することであって、前記参照画像座標及び前記検証画像座標は、いずれも前記参照箇所に関連付けられており、該偏差パラメーター値は、前記通信インターフェースが通信するように構成される前記カメラの前記第１のカメラキャリブレーション以降の変化、又は前記通信インターフェースが通信するように構成される前記カメラと前記ロボットとの間の関係の前記第１のカメラキャリブレーション以降の変化を示すことと、
を含む、方法。
【請求項２０】
非一時的コンピューター可読媒体であって、コンピューティングシステムの制御回路によって実行されるときに、前記制御回路に、
キャリブレーションパターンを表す１つ以上の画像である１つ以上のキャリブレーション画像を受信することであって、前記コンピューティングシステムは、ベースと、その上に配置される検証記号を備えるロボットアームとを有するロボットと通信するように構成されると共に、カメラ視野を有するカメラと通信するように構成される通信インターフェースを備え、前記１つ以上のキャリブレーション画像は、前記カメラによって取り込まれ、前記キャリブレーションパターンは、前記検証記号とは異なることと、
前記１つ以上のキャリブレーション画像に基づいて第１のカメラキャリブレーションを実行させて、前記カメラと関連付けられるカメラキャリブレーション情報を特定することと、
前記通信インターフェースに第１の動作コマンドを出力することであって、前記通信インターフェースは、前記ロボットアームが、前記第１のカメラキャリブレーション中又は後に、前記検証記号を前記カメラ視野内の位置に動かすように、前記ロボットに前記第１の動作コマンドを通信するように構成され、前記位置は、前記第１のカメラキャリブレーションの検証のための１つ以上の参照箇所のうちの参照箇所であることと、
前記通信インターフェースから、前記検証記号の画像を受信することであって、前記通信インターフェースは、前記カメラから該画像を受信するように構成され、前記カメラは、前記検証記号の該画像を前記参照箇所において取り込むように構成され、該画像は、前記検証のための参照画像であることと、
前記検証記号に関する参照画像座標を特定することであって、該参照画像座標は、前記参照画像内に前記検証記号が現れる座標であることと、
前記通信インターフェースに、前記カメラキャリブレーション情報に基づく第２の動作コマンドを出力することであって、前記通信インターフェースは、前記ロボットアームを動かしてロボット操作を実行するために、前記ロボットに該第２の動作コマンドを通信するように構成されることと、
前記通信インターフェースに第３の動作コマンドを出力することであって、前記通信インターフェースは、前記ロボットアームが前記検証記号を少なくとも前記参照箇所に動かすように、前記ロボットに該第３の動作コマンドを通信するように構成されることと、
前記通信インターフェースから、前記検証記号の更なる画像を受信することであって、前記通信インターフェースは、前記カメラから該更なる画像を受信するように構成され、前記カメラは、少なくとも前記参照箇所において前記検証記号の該更なる画像を取り込むように構成され、該更なる画像は、前記検証のための検証画像であることと、
前記検証のために使用される検証画像座標を特定することであって、該検証画像座標は、前記検証画像内に前記検証記号が現れる座標であることと、
前記参照画像座標と前記検証画像座標との間の偏差量に基づいて偏差パラメーター値を特定することであって、前記参照画像座標及び前記検証画像座標は、いずれも前記参照箇所に関連付けられており、該偏差パラメーター値は、前記通信インターフェースが通信するように構成される前記カメラの前記第１のカメラキャリブレーション以降の変化、又は前記通信インターフェースが通信するように構成される前記カメラと前記ロボットとの間の関係の前記第１のカメラキャリブレーション以降の変化を示すことと、
を行わせる命令を記憶している、非一時的コンピューター可読媒体。
【外国語明細書】
2020163565000001.pdf