JP2022052112A - 画像認識方法およびロボットシステム - Google Patents
画像認識方法およびロボットシステム Download PDFInfo
- Publication number
- JP2022052112A JP2022052112A JP2020158303A JP2020158303A JP2022052112A JP 2022052112 A JP2022052112 A JP 2022052112A JP 2020158303 A JP2020158303 A JP 2020158303A JP 2020158303 A JP2020158303 A JP 2020158303A JP 2022052112 A JP2022052112 A JP 2022052112A
- Authority
- JP
- Japan
- Prior art keywords
- importance
- feature points
- image
- model
- learning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000005259 measurement Methods 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims description 22
- 230000036544 posture Effects 0.000 description 30
- 230000007246 mechanism Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 238000011960 computer-aided design Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 210000000078 claw Anatomy 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/04—Viewing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
- G06V20/647—Three-dimensional objects by matching two-dimensional images to three-dimensional objects
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39376—Hierarchical, learning, recognition and skill level and adaptation servo level
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40564—Recognize shape, contour of object, extract position and orientation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/06—Recognition of objects for industrial automation
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
【課題】学習にかかる時間を短くすることのできる画像認識方法およびロボットシステムを提供すること。【解決手段】画像認識方法は、対象物の実測データを得るステップと、複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、前記更新した重要度を用いて学習するステップと、前記学習の結果に基づいて前記対象物の物体認識を行うステップと、を有する。【選択図】図4
Description
本発明は、画像認識方法およびロボットシステムに関する。
特許文献1には3Dモデルデータを用いた位置姿勢推定方法が記載されており、この位置姿勢推定方法では、カメラ等の撮像装置により得られた実写画像に基づいて3Dモデルデータの表面情報が更新される。
しかしながら、3Dモデルデータを更新すると、更新された3Dモデルデータに基づいて学習をやり直す必要が生じ、対象物の位置姿勢推定を再開できるようになるまでに大きな手間と時間がかかってしまう。
本発明の画像認識方法は、対象物の実測データを得るステップと、
複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、
前記更新した重要度を用いて学習するステップと、
前記学習の結果に基づいて前記対象物の物体認識を行うステップと、を有する。
複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、
前記更新した重要度を用いて学習するステップと、
前記学習の結果に基づいて前記対象物の物体認識を行うステップと、を有する。
本発明のロボットシステムは、対象物を把持する把持部と、
前記対象物を撮像する撮像装置と、
前記撮像装置で撮像された画像に基づいて物体認識する物体認識処理装置と、を有し、
前記物体認識処理装置は、対象物の実測データを得るステップと、複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、前記更新した重要度を用いて学習するステップと、前記学習の結果に基づいて前記対象物の物体認識を行うステップと、により前記対象物の画像認識を行い、
前記把持部は、前記物体認識処理装置による前記物体認識の結果に基づいて前記対象物を把持する。
前記対象物を撮像する撮像装置と、
前記撮像装置で撮像された画像に基づいて物体認識する物体認識処理装置と、を有し、
前記物体認識処理装置は、対象物の実測データを得るステップと、複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、前記更新した重要度を用いて学習するステップと、前記学習の結果に基づいて前記対象物の物体認識を行うステップと、により前記対象物の画像認識を行い、
前記把持部は、前記物体認識処理装置による前記物体認識の結果に基づいて前記対象物を把持する。
以下、本発明の画像認識方法およびロボットシステムを添付図面に示す実施形態に基づいて詳細に説明する。
<第1実施形態>
図1は、第1実施形態のロボットシステムの全体構成を示す図である。図2は、図1のロボットシステムが有する物体認識処理装置の構成を示すブロック図である。図3は、ロボットシステムの動作を示すフローチャートである。図4は、教示作業を示すフローチャートである。図5は、物体Xの3Dモデルと現実世界の物体Xとを示す図である。図6および図7は、それぞれ、モニターに表示する画像の一例を示す図である。図8は、大きな差異点が輪郭形状に現れ易い位置姿勢の一例を示す図である。図9は、大きな差異点が輪郭形状に現れ難い位置姿勢の一例を示す図である。図10は、物体認識作業および把持作業を示すフローチャートである。
図1は、第1実施形態のロボットシステムの全体構成を示す図である。図2は、図1のロボットシステムが有する物体認識処理装置の構成を示すブロック図である。図3は、ロボットシステムの動作を示すフローチャートである。図4は、教示作業を示すフローチャートである。図5は、物体Xの3Dモデルと現実世界の物体Xとを示す図である。図6および図7は、それぞれ、モニターに表示する画像の一例を示す図である。図8は、大きな差異点が輪郭形状に現れ易い位置姿勢の一例を示す図である。図9は、大きな差異点が輪郭形状に現れ難い位置姿勢の一例を示す図である。図10は、物体認識作業および把持作業を示すフローチャートである。
図1に示すロボットシステム100は、載置台200上に配置された対象物としての物体Xを撮像する撮像装置としてのカメラ300と、カメラ300の撮像結果に基づいて物体認識処理を行う物体認識処理装置400と、物体認識処理装置400の物体認識処理結果に基づいて載置台200から物体Xを把持する把持部500を備えるロボット600と、を有する。
ロボット600は、6つの駆動軸を有する6軸ロボットであり、例えば、電子部品等のワークの保持、搬送、組立および検査等の各作業で用いられる。なお、ロボット600の用途は、特に限定されない。
ロボット600は、床に固定された基台610と、基台610に接続されたアーム620と、を有する。また、アーム620は、基台610に接続され、基台610に対して回動可能な第1アーム621と、第1アーム621に接続され、第1アーム621に対して回動可能な第2アーム622と、第2アーム622に接続され、第2アーム622に対して回動可能な第3アーム623と、第3アーム623に接続され、第3アーム623に対して回動可能な第4アーム624と、第4アーム624に接続され、第4アーム624に対して回動可能な第5アーム625と、第5アーム625に接続され、第5アーム625に対して回動可能な第6アーム626と、を有する。
そして、第6アーム626の先端部に把持部500が接続され、第5アーム625にカメラ300が配置されている。
把持部500としては、載置台200に載置された物体Xをピックアップすることができれば、特に限定されず、例えば、一対の爪で物体Xを挟持する構成、エアチャック、電磁チャック等によって物体Xを吸着する構成等とすることができる。
カメラ300は、把持部500の先端側を撮像可能なように配置されている。カメラ300としては、特に限定されず、本実施形態では、RGBカメラを用いている。カメラ300としては、他にも、例えば、グレースケールカメラ、赤外線カメラ等を用いることもできる。また、カメラ300に替えて、または、カメラ300に加えて、例えば、物体Xの点群データを取得できる深度センサーを用いてもよい。
また、本実施形態では、カメラ300は、ロボット600の第5アーム625に配置されているが、その配置は、これに限定されない。例えば、アーム620の第5アーム625以外の部分に配置されていてもよい。また、例えば、ロボット600ではなく、載置台200の上方の天井等に固定されていてもよい。つまり、カメラ300と載置台200との相対的な位置関係は、固定されていてもよいし、固定されていなくてもよい。
また、ロボット600は、第1アーム621を基台610に対して回動させる駆動機構631と、第2アーム622を第1アーム621に対して回動させる駆動機構632と、第3アーム623を第2アーム622に対して回動させる駆動機構633と、第4アーム624を第3アーム623に対して回動させる駆動機構634と、第5アーム625を第4アーム624に対して回動させる駆動機構635と、第6アーム626を第5アーム625に対して回動させる駆動機構636と、を有する。なお、駆動機構631~636には、それぞれ、駆動源としてのモーター、モーターの回転を減速させる減速機、モーターの駆動を制御するコントローラー、モーターの回転量を検出するエンコーダー等が含まれている。
また、ロボット600は、物体認識処理装置400からの指令に基づいて駆動機構631~636および把持部500の駆動を制御するロボット制御装置640を有する。ロボット制御装置640は、例えば、コンピューターから構成され、情報を処理するプロセッサー(CPU)と、プロセッサーに通信可能に接続されたメモリーと、外部インターフェースと、を有する。また、メモリーにはプロセッサーにより実行可能な各種プログラムが保存され、プロセッサーは、メモリーに記憶された各種プログラム等を読み込んで実行することができる。
以上、ロボット600について簡単に説明した。ただし、ロボット600の構成については、特に限定されない。例えば、ロボット600としては、6軸ロボットの他にも、水平多関節ロボット(スカラロボット)、前述したようなアーム620を2つ有する双腕ロボット等であってもよい。また、ロボット600は、床に固定されていなくてもよく、例えば、AMR(Autonomous Mobile Robot)、AGV(Automatic Guided Vehicle)等の無人搬送車に固定されていてもよい。
次に、物体認識処理装置400について説明する。物体認識処理装置400は、例えば、コンピューターから構成され、情報を処理するプロセッサー(CPU)と、プロセッサーに通信可能に接続されたメモリーと、外部インターフェースと、を有する。また、メモリーにはプロセッサーにより実行可能な各種プログラムが保存され、プロセッサーは、メモリーに記憶された各種プログラム等を読み込んで実行することができる。
図2に示すように、物体認識処理装置400は、ユーザーインターフェース部430と、画像取得部440と、認識部450と、学習部460と、通信部480と、これら各部を制御する制御部490と、を有する。また、物体認識処理装置400には、画像表示装置としてのモニター700が接続されている。ロボットシステム100は、図3に示すように、教示作業と、物体認識作業と、把持作業と、を実行するように構成され、画像取得部440、認識部450および学習部460によって教示作業が行われ、画像取得部440および認識部450によって物体認識作業が行われ、通信部480によって把持作業が行われる。
まず、教示作業について、図4に示すフローチャートに基づいて説明する。教示作業は、CAD(computer-aided Design)を用いて作成した3Dモデルで学習するステップS1と、物体Xの実測データを得るステップS2と、3Dモデルと実測データとを比較し、3Dモデルと実測データとの差分に基づいて3Dモデルが有する複数の特徴点の重要度を更新するステップS3と、更新した重要度を用いて再学習するステップS4と、を有する。
[ステップS1]
まず、ステップS11として、学習部460は、CADを用いて物体Xの3Dモデルを作成する。次に、ステップS12として、学習部460は、ステップS11で作成した3Dモデルに基づいて学習する。例えば、3Dモデルを360°様々な位置および姿勢(以下、単に「位置姿勢」とも言う。)とし、その際の輪郭形状(表面形状)から複数の特徴点を抽出すると共に、その輪郭形状における物体Xの位置姿勢を推定し、これらが紐付いた学習モデルを生成する。この段階では、各位置姿勢の3Dモデルに含まれる複数の特徴点の重要度は、互いに等しく設定されている。重要度は、感度とも言い、重要度が高い特徴点ほど、位置姿勢を推定する際の影響力が大きい。
まず、ステップS11として、学習部460は、CADを用いて物体Xの3Dモデルを作成する。次に、ステップS12として、学習部460は、ステップS11で作成した3Dモデルに基づいて学習する。例えば、3Dモデルを360°様々な位置および姿勢(以下、単に「位置姿勢」とも言う。)とし、その際の輪郭形状(表面形状)から複数の特徴点を抽出すると共に、その輪郭形状における物体Xの位置姿勢を推定し、これらが紐付いた学習モデルを生成する。この段階では、各位置姿勢の3Dモデルに含まれる複数の特徴点の重要度は、互いに等しく設定されている。重要度は、感度とも言い、重要度が高い特徴点ほど、位置姿勢を推定する際の影響力が大きい。
[ステップS2]
まず、ステップS21として、カメラ300が物体Xを撮像し、当該撮像により得られた画像データを画像取得部440が取得する。次に、ステップS22として、画像取得部440は、取得した画像データから物体Xを抽出し、物体Xの実測データを生成する。
まず、ステップS21として、カメラ300が物体Xを撮像し、当該撮像により得られた画像データを画像取得部440が取得する。次に、ステップS22として、画像取得部440は、取得した画像データから物体Xを抽出し、物体Xの実測データを生成する。
[ステップS3]
まず、ステップS31として、認識部450は、ステップS1で生成した学習モデルを用いてステップS2で生成された実測データ中の物体Xの位置姿勢を推定する。次に、ステップS32として、認識部450は、位置姿勢の推定結果をモニター700に表示し、ユーザーに報知する。モニター700に表示することにより、より確実にユーザーに報知することができ、ユーザーも確認し易くなる。次に、ステップS33として、認識部450は、推定結果の正否判定をユーザーに求める。正否判定をユーザーに求めることにより、異常な推定を阻止できる可能性が高まり、位置姿勢の推定精度が向上する。ユーザーは、認識部450の推定結果に対し、キーボード、マウス等の各種入力デバイスを用いて判定する。ただし、報知方法や判定方法としては、特に限定されない。
まず、ステップS31として、認識部450は、ステップS1で生成した学習モデルを用いてステップS2で生成された実測データ中の物体Xの位置姿勢を推定する。次に、ステップS32として、認識部450は、位置姿勢の推定結果をモニター700に表示し、ユーザーに報知する。モニター700に表示することにより、より確実にユーザーに報知することができ、ユーザーも確認し易くなる。次に、ステップS33として、認識部450は、推定結果の正否判定をユーザーに求める。正否判定をユーザーに求めることにより、異常な推定を阻止できる可能性が高まり、位置姿勢の推定精度が向上する。ユーザーは、認識部450の推定結果に対し、キーボード、マウス等の各種入力デバイスを用いて判定する。ただし、報知方法や判定方法としては、特に限定されない。
推定結果が正しくないと判定された場合、認識部450は、推定結果が正しいと判定されるまでステップS31~S33を繰り返す。ただし、これに限定されず、例えば、認識部450の推定した位置姿勢を初期状態とし、ユーザーがこの初期状態から3Dモデルの位置姿勢を微調整して正しい位置姿勢を決定してもよい。また、認識部450に推定させることなく、初めからユーザーが3Dモデルの位置姿勢を調整して正しい位置姿勢を決定してもよい。つまり、正しい推定結果となるまで認識部450に推定を繰り返させてもよいし、誤った推定結果からユーザーが微調整を加えてもよいし、初めからユーザーが正しい位置姿勢を決定してもよい。
反対に、推定結果が正しいと判定された場合、認識部450は、ステップS34として、実測データの位置姿勢に合わせた3Dモデル(以下、「正解位置姿勢3Dモデル」とも言う。)と実測データとを比較し、正解位置姿勢3Dモデルに含まれる各特徴点について実測データとの差分を算出する。そして、算出した差分を数値化して、その大きさを示す指標である一致度を生成する。特徴点のずれは、例えば、エッジのずれ、曲率のずれ等に基づいて算出することができる。ここで、図5に示すように、物体XをボルトBとした例について説明する。3DモデルのボルトBにはナットNが螺号していないのに対して、現実世界のボルトBにはナットNが螺号している。そのため、3Dモデルと実測データとを比較すると、ナットNの部分において大きな特徴点の差異が生じ、当該部分が大きな差分として算出される。
次に、ステップS35として、学習部460は、ステップS34で算出した差分に基づいて正解位置姿勢3Dモデルに含まれる複数の特徴点の重要度を更新する。具体的に説明すると、まず、ステップS351として、実測データとの差分が大きい(一致度が低い)特徴点ほど重要度が低くなるように正解位置姿勢3Dモデルの各特徴点に設定されている重要度を変更する。言い換えると、実測データとの差分が小さい(一致度が高い)特徴点ほど重要度が高くなるように正解位置姿勢3Dモデルの各特徴点に設定されている重要度を変更する。
なお、変更方法としては、特に限定されない。例えば、差分の大きさと比例させて各特徴点の重要度を変更してもよい。また、予め、差分をその大きさに基づいて複数の領域に区画すると共に領域毎に重要度を設定し、差分の大きさに対応する重要度を当てはめることで各特徴点の重要度を変更してもよい。
前述したように、本実施形態では、ナットNの部分において大きな特徴点の差異が生じているため、当該部分が大きな差分として算出される。そのため、学習部460は、ナットNと重なる領域S内に位置する特徴点の重要度を、領域S外に位置する特徴点の重要度よりも低くする。あるいは、領域S外に位置する特徴点の重要度を、領域S内に位置する特徴点の重要度よりも高くする。その結果、領域S内に位置する特徴点の重要度が領域S外に位置する特徴点の重要度に対して相対的に低下する。
次に、ステップS352として、学習部460は、特徴点の重要度を更新することをモニター700に表示し、ユーザーに報知する。モニター700に表示することにより、より確実にユーザーに報知することができ、ユーザーも確認し易くなる。モニター700に表示する情報としては、特に限定されないが、例えば、図6に示すように、差分の大きかった領域Sが可視化された正解位置姿勢3Dモデルと、重要度が変更される特徴点と、これら各特徴点の更新前後の重要度と、が挙げられる。このように、重要度が変更される特徴点だけを選択して表示することにより、モニター700に表示される情報量を抑えることができ、ユーザーは、重要度の変更を確認し易くなる。また、更新後の重要度を表示することにより、ユーザーは、今後、どのような重み付けで物体認識が行われるのかを確認し易くなる。特に、更新前後の重要度を表示することにより、ユーザーは、重要度の変化を確認し易くなる。なお、図6には図示していないが、各特徴点が3Dモデル中の何処に位置するのかを可視的に表示してもよい。
また、図7に示すように、図6の例からさらに情報量を絞って、重要度が更新される特徴点のうち、更新後の重要度が所定値以下の特徴点およびその重要度だけをモニター700に表示してもよい。図7では、更新後の重要度が10以下の特徴点だけが表示されている。これにより、モニター700に表示される情報量をさらに抑えることができ、ユーザーは、重要度の変化をさらに確認し易くなる。
次に、ステップS353として、学習部460は、重要度更新の是非をユーザーに求める。更新の是非をユーザーに求めることにより、異常な更新を事前に阻止できる可能性が高まる。ユーザーは、学習部460の要求に対し、キーボード、マウス等の各種入力デバイスを用いて是非を判定する。ただし、報知方法や判定方法としては、特に限定されない。
重要度の更新をユーザーが拒んだ場合、学習部460は、重要度の更新が認められるまでステップS351~S353を繰り返す。この際、重要度の決定方法の条件等を前回から変更してもよい。ただし、これに限定されず、例えば、学習部460が決定した各特徴点の重要度を初期状態として、ユーザーが各特徴点の重要度を初期状態から上下させて好ましい重要度を決定してもよい。一方、重要度の更新をユーザーが認めた場合、学習部460は、ステップS354として、正解位置姿勢3Dモデルの特徴点の重要度を更新する。
以上のようなステップS3を様々な位置姿勢の3Dモデルについて繰り返し行い、様々な位置姿勢の3Dモデルの特徴点の重要度を更新する。ここで、360°全ての3Dモデルについて重要度を更新してもよいが、3Dモデルには、例えば、図8に示すような、大きな差異点であるナットNが輪郭形状に現れ易い位置姿勢と、図9に示すような、大きな差異点であるナットNが輪郭形状に現れ難い位置姿勢と、が存在する。ナットNが輪郭形状に現れ難い図9のような位置姿勢の場合には、ナットNにおける大きな差異が位置姿勢の推定に与える影響が少ないため、位置姿勢の推定を精度よく行うことができる。これに対して、ナットNが輪郭形状に現れ易い図8のような位置姿勢の場合には、ナットNにおける大きな差異が位置姿勢の推定に与える影響が大きいため、位置姿勢の推定精度が著しく低下する。そこで、ナットNが輪郭形状に現れ易い図8のような位置姿勢の3Dモデルについてのみ、特徴点の重要度の更新を行い、ナットNが輪郭形状に現れ難い図9のような位置姿勢の3Dモデルについては特徴点の重要度の更新を行わないことが好ましい。これにより、重要度の更新にかかる時間や手間を削減することができる。
ここで、前述したように、ステップS31において、認識部450は、学習モデルを用いて実測データに係る物体Xの位置姿勢を推定する。この際、認識部450は、推定結果の自信度を、特徴点の一致率等に基づいて算出する。自信度は、差異点であるナットNが輪郭形状に現れ易い位置姿勢ほど低くなるため、自信度が所定値以下である正解位置姿勢3Dモデルについてのみ、特徴点の重要度の更新を行えばよい。これにより、重要度の更新にかかる時間や手間を削減することができる。
[ステップS4]
次に、ステップS4として、学習部460は、ステップS3にて更新した重要度を用いて再学習し、新たな学習モデルを生成する。これにより、重要度の大小が考慮された学習モデルが得られる。この再学習では、自信度が所定値よりも低い位置姿勢について、前回の学習時と比べて、特徴点の差異が大きい領域すなわちナットNと重なる領域S内から抽出する特徴点の数を減らし、反対に領域S外から抽出する特徴点の数を増やすことが好ましい。より好ましくは、領域S内から抽出する特徴点の数をゼロとする。つまり、特徴点の差分が所定値以下(重要度が所定値以上)の領域に制限して再学習することが好ましい。これにより、後の物体認識作業において、差異の大きな特徴点の発生を抑制することができ、物体認識の精度が向上する。
次に、ステップS4として、学習部460は、ステップS3にて更新した重要度を用いて再学習し、新たな学習モデルを生成する。これにより、重要度の大小が考慮された学習モデルが得られる。この再学習では、自信度が所定値よりも低い位置姿勢について、前回の学習時と比べて、特徴点の差異が大きい領域すなわちナットNと重なる領域S内から抽出する特徴点の数を減らし、反対に領域S外から抽出する特徴点の数を増やすことが好ましい。より好ましくは、領域S内から抽出する特徴点の数をゼロとする。つまり、特徴点の差分が所定値以下(重要度が所定値以上)の領域に制限して再学習することが好ましい。これにより、後の物体認識作業において、差異の大きな特徴点の発生を抑制することができ、物体認識の精度が向上する。
以上、教示作業について説明した。このような教示作業によれば、3Dモデルの更新を行わず、特徴点の重要度のみを更新するため、ステップS4における再学習にかかる時間を短くすることができる。そのため、速やかに、物体認識作業を開始することができる。
次に、物体認識作業および把持作業について、図10に示すフローチャートに基づいて説明する。
まず、ステップS51として、カメラ300が載置台200上の物体Xを撮像し、当該撮像により得られた画像データを画像取得部440が取得する。次に、ステップS52として、認識部450は、画像データから物体Xを抽出すると共に、その実測データを生成する。次に、ステップS53として、認識部450は、ステップS4で得られた学習モデルを用いて実測データに係る物体Xの位置姿勢を推定する。これにより、物体認識作業が終了する。このような方法によれば、特徴点の重要度に優劣が付いた学習モデルに基づいて物体Xの位置姿勢を推定するため、物体Xの位置姿勢を精度よく推定することができる。
次に、ステップS6として、通信部480は、位置姿勢を推定した物体Xを把持するための指令をロボット制御装置640に送信し、ロボット600による物体Xの把持作業を実行する。これにより、把持作業が終了する。
以上、ロボットシステム100について説明した。このようなロボットシステム100は、前述したように、対象物である物体Xを把持する把持部500と、物体Xを撮像する撮像装置であるカメラ300と、カメラ300で撮像された画像に基づいて物体認識する物体認識処理装置400と、を有する。また、物体認識処理装置400は、物体Xの実測データを得るステップS2と、複数の特徴点を有する3Dモデルと実測データとを比較し、3Dモデルと実測データとの差分に基づいて複数の特徴点の重要度を更新するステップS3と、更新した重要度を用いて学習するステップS4と、学習の結果に基づいて物体Xの物体認識を行うステップS53と、により物体Xの画像認識を行う。また、把持部500は、物体認識処理装置400による物体認識の結果に基づいて物体Xを把持する。このような構成によれば、3Dモデルの更新を行わず、特徴点の重要度のみを更新するため、ステップS4における再学習にかかる時間を短くすることができる。そのため、速やかに、物体認識作業を開始することができる。また、特徴点の重要度に優劣が付いた学習モデルに基づいて物体Xの位置姿勢を推定するため、物体Xの位置姿勢を精度よく推定することができる。
また、ロボットシステム100が用いる画像認識方法は、前述したように、対象物である物体Xの実測データを得るステップS2と、複数の特徴点を有する3Dモデルと実測データとを比較し、3Dモデルと実測データとの差分に基づいて複数の特徴点の重要度を更新するステップS3と、更新した重要度を用いて学習するステップS4と、学習の結果に基づいて物体Xの物体認識を行うステップS53と、を有する。このような方法によれば、3Dモデルの更新を行わず、特徴点の重要度のみを更新するため、ステップS4における再学習にかかる時間を短くすることができる。そのため、速やかに、物体認識作業を開始することができる。また、特徴点の重要度に優劣が付いた学習モデルに基づいて物体Xの位置姿勢を推定するため、物体Xの位置姿勢を精度よく推定することができる。
また、このような画像認識方法では、前述したように、実測データとの差分が大きい特徴点ほど、重要度を低く設定する。あるいは、実測データとの差分が小さい特徴点ほど、重要度を高く設定する。これにより、差分が大きい特徴点の重要度が、差分が小さい特徴点の重要度に対して相対的に低下する。そのため、物体Xの位置姿勢を精度よく推定することができる。
また、このような画像認識方法では、前述したように、更新によって重要度が変更される特徴点を画像表示装置であるモニター700に表示する。これにより、より確実にユーザーに報知することができ、ユーザーも確認し易くなる。
また、このような画像認識方法では、前述したように、更新によって重要度が変更される特徴点の更新後の重要度をモニター700に表示する。これにより、モニター700に表示される情報量を抑えることができ、ユーザーは、重要度の更新を確認し易くなる。
また、このような画像認識方法では、前述したように、更新によって重要度が変更される特徴点のうち、更新後の重要度が所定値以下の特徴点の重要度だけをモニター700に表示する。これにより、モニター700に表示される情報量をさらに抑えることができ、ユーザーは、重要度の変化をさらに確認し易くなる。
また、このような画像認識方法では、前述したように、学習モデルを生成するステップS4では、3Dモデルのうち、差分が所定値以下の領域すなわち領域S外にある一致度の高い領域内の特徴点を抽出して学習する。これにより、物体認識作業において、差異の大きな特徴点の発生を抑制することができ、物体認識の精度が向上する。
以上、本発明の画像認識方法およびロボットシステムを図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物が付加されていてもよい。
100…ロボットシステム、200…載置台、300…カメラ、400…物体認識処理装置、430…ユーザーインターフェース部、440…画像取得部、450…認識部、460…学習部、480…通信部、490…制御部、500…把持部、600…ロボット、610…基台、620…アーム、621…第1アーム、622…第2アーム、623…第3アーム、624…第4アーム、625…第5アーム、626…第6アーム、631~636…駆動機構、640…ロボット制御装置、700…モニター、B…ボルト、N…ナット、S…領域、S1,S11,S12,S2,S21,S22,S3,S31~S35,S351~S354,S4,S51~S53,S6…ステップ、X…物体
Claims (8)
- 対象物の実測データを得るステップと、
複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、
前記更新した重要度を用いて学習するステップと、
前記学習の結果に基づいて前記対象物の物体認識を行うステップと、を有することを特徴とする画像認識方法。 - 前記実測データとの差分が大きい前記特徴点ほど、前記重要度を低く設定する請求項1に記載の画像認識方法。
- 前記実測データとの差分が小さい前記特徴点ほど、前記重要度を高く設定する請求項1または2に記載の画像認識方法。
- 前記更新によって前記重要度が変更される前記特徴点を画像表示装置に表示する請求項1ないし3のいずれか1項に記載の画像認識方法。
- 前記更新によって前記重要度が変更される前記特徴点の更新後の前記重要度を前記画像表示装置に表示する請求項4に記載の画像認識方法。
- 前記更新によって前記重要度が変更される前記特徴点のうち、更新後の前記重要度が所定値以下の前記特徴点の前記重要度だけを前記画像表示装置に表示する請求項5に記載の画像認識方法。
- 前記学習するステップでは、前記3Dモデルのうち、前記差分が所定値以下の領域内の前記特徴点を抽出して学習する請求項1ないし6のいずれか1項に記載の画像認識方法。
- 対象物を把持する把持部と、
前記対象物を撮像する撮像装置と、
前記撮像装置で撮像された画像に基づいて物体認識する物体認識処理装置と、を有し、
前記物体認識処理装置は、対象物の実測データを得るステップと、複数の特徴点を有する3Dモデルと前記実測データとを比較し、前記3Dモデルと前記実測データとの差分に基づいて複数の前記特徴点の重要度を更新するステップと、前記更新した重要度を用いて学習するステップと、前記学習の結果に基づいて前記対象物の物体認識を行うステップと、により前記対象物の画像認識を行い、
前記把持部は、前記物体認識処理装置による前記物体認識の結果に基づいて前記対象物を把持することを特徴とするロボットシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020158303A JP2022052112A (ja) | 2020-09-23 | 2020-09-23 | 画像認識方法およびロボットシステム |
US17/481,453 US20220092290A1 (en) | 2020-09-23 | 2021-09-22 | Image Recognition Method And Robot System |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020158303A JP2022052112A (ja) | 2020-09-23 | 2020-09-23 | 画像認識方法およびロボットシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022052112A true JP2022052112A (ja) | 2022-04-04 |
Family
ID=80740538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020158303A Pending JP2022052112A (ja) | 2020-09-23 | 2020-09-23 | 画像認識方法およびロボットシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220092290A1 (ja) |
JP (1) | JP2022052112A (ja) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5889536B2 (ja) * | 2011-03-08 | 2016-03-22 | ローム株式会社 | 制御システム、制御装置、映像システム、眼鏡、および映像表示装置 |
US10518409B2 (en) * | 2014-09-02 | 2019-12-31 | Mark Oleynik | Robotic manipulation methods and systems for executing a domain-specific application in an instrumented environment with electronic minimanipulation libraries |
CN112088070A (zh) * | 2017-07-25 | 2020-12-15 | M·奥利尼克 | 用于操作机器人系统并执行机器人交互的系统及方法 |
US11701771B2 (en) * | 2019-05-15 | 2023-07-18 | Nvidia Corporation | Grasp generation using a variational autoencoder |
US11724401B2 (en) * | 2019-11-13 | 2023-08-15 | Nvidia Corporation | Grasp determination for an object in clutter |
US20240005547A1 (en) * | 2022-05-23 | 2024-01-04 | Nvidia Corporation | Object pose tracking from video images |
-
2020
- 2020-09-23 JP JP2020158303A patent/JP2022052112A/ja active Pending
-
2021
- 2021-09-22 US US17/481,453 patent/US20220092290A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220092290A1 (en) | 2022-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9616569B2 (en) | Method for calibrating an articulated end effector employing a remote digital camera | |
JP5850962B2 (ja) | ビジュアルフィードバックを利用したロボットシステム | |
KR102276259B1 (ko) | 비전-기반 조작 시스템들의 교정 및 동작 | |
US9519736B2 (en) | Data generation device for vision sensor and detection simulation system | |
RU2700246C1 (ru) | Способ и система захвата объекта с помощью роботизированного устройства | |
US20070071310A1 (en) | Robot simulation device | |
WO2021218542A1 (zh) | 基于视觉感知设备的机器人本体坐标系的空间标定方法、装置和存储介质 | |
JP7275759B2 (ja) | 物体検出方法、物体検出装置およびロボットシステム | |
Lepora et al. | Pose-based tactile servoing: Controlled soft touch using deep learning | |
JP2018169660A (ja) | オブジェクト姿勢検出装置、制御装置、ロボットおよびロボットシステム | |
JP2014029664A (ja) | 比較画像範囲生成方法、位置姿勢検出方法、比較画像範囲生成装置、位置姿勢検出装置、ロボット、ロボットシステム、比較画像範囲生成プログラム及び位置姿勢検出プログラム | |
WO2023037634A1 (ja) | 指令値生成装置、方法、及びプログラム | |
JP2018122376A (ja) | 画像処理装置、ロボット制御装置、及びロボット | |
JP6265784B2 (ja) | 姿勢推定システム、プログラムおよび姿勢推定方法 | |
JP2022052112A (ja) | 画像認識方法およびロボットシステム | |
CN116652939A (zh) | 一种并联机器人无标定视觉伺服柔顺控制方法 | |
JP2021026599A (ja) | 画像処理システム | |
US11559888B2 (en) | Annotation device | |
CN115082550A (zh) | 从对象的相机图像中定位对象的位置的设备和方法 | |
JP2021061014A (ja) | 学習装置、学習方法、学習モデル、検出装置及び把持システム | |
CN117207190B (zh) | 基于视觉与触觉融合的精准抓取机器人系统 | |
US20230154162A1 (en) | Method For Generating Training Data Used To Learn Machine Learning Model, System, And Non-Transitory Computer-Readable Storage Medium Storing Computer Program | |
WO2023013739A1 (ja) | ロボット制御装置、ロボット制御システム、及びロボット制御方法 | |
TWI788253B (zh) | 適應性移動操作設備及方法 | |
US20230321836A1 (en) | Correction device, correction method, and robot system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20210916 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20211108 |