IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ダイヘンの特許一覧

特許7228070点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム
<>
  • 特許-点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム 図1
  • 特許-点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム 図2
  • 特許-点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム 図3
  • 特許-点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム 図4
  • 特許-点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム 図5
  • 特許-点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-02-14
(45)【発行日】2023-02-22
(54)【発明の名称】点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20230215BHJP
【FI】
G06T7/00 C
【請求項の数】 6
(21)【出願番号】P 2022115172
(22)【出願日】2022-07-20
【審査請求日】2023-01-23
【早期審査対象出願】
(73)【特許権者】
【識別番号】000000262
【氏名又は名称】株式会社ダイヘン
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】池口 誠人
【審査官】大塚 俊範
(56)【参考文献】
【文献】特開2017-106749(JP,A)
【文献】米国特許出願公開第2016/0364905(US,A1)
【文献】特開2020-075325(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00- 7/90
B25J 1/00-21/02
(57)【特許請求の範囲】
【請求項1】
作業対象を含む複数の画像を取得する画像取得部と、
前記画像を撮影するカメラを基準にしたカメラ座標系上の点群データを、前記画像ごとに取得する点群取得部と、
それぞれの前記画像に共通して含まれる視覚的な特徴点の前記カメラ座標系の位置をそれぞれ検出する検出部と、
前記検出部により前記画像ごとに検出された前記特徴点の前記カメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部と、
前記画像ごとに、前記カメラ座標系の点群データを前記ユーザ座標系の点群データに変換する座標変換部と、
前記座標変換部により前記画像ごとに変換された前記ユーザ座標系の点群データを合成する点群合成部と、
を備える点群データ合成装置。
【請求項2】
前記検出部は、前記画像に基づいて前記特徴点を検出した場合に、当該検出した前記特徴点の位置を、前記画像上及び前記点群データ上の前記特徴点の位置に設定する、
請求項1記載の点群データ合成装置。
【請求項3】
前記検出部は、前記画像に基づいて前記特徴点を検出できない場合に、前記画像上にある前記視覚的な特徴点を指定させることで前記視覚的な特徴点を検出し、当該検出した前記特徴点の位置を、前記画像上及び前記点群データ上の前記特徴点の位置に設定する、
請求項1記載の点群データ合成装置。
【請求項4】
コンピュータを、
作業対象を含む複数の画像を取得する画像取得部、
前記画像を撮影するカメラを基準にしたカメラ座標系上の点群データを、前記画像ごとに取得する点群取得部、
それぞれの前記画像に共通して含まれる視覚的な特徴点の前記カメラ座標系の位置をそれぞれ検出する検出部、
前記検出部により前記画像ごとに検出された前記特徴点の前記カメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部、
前記画像ごとに、前記カメラ座標系の点群データを前記ユーザ座標系の点群データに変換する座標変換部、
前記座標変換部により前記画像ごとに変換された前記ユーザ座標系の点群データを合成する点群合成部、
として機能させる点群データ合成プログラム。
【請求項5】
プロセッサにより実行される方法であって、
作業対象を含む複数の画像を取得するステップと、
前記画像を撮影するカメラを基準にしたカメラ座標系上の点群データを、前記画像ごとに取得するステップと、
それぞれの前記画像に共通して含まれる視覚的な特徴点の前記カメラ座標系の位置をそれぞれ検出するステップと、
前記画像ごとに検出された前記特徴点の前記カメラ座標系の位置を基準にするユーザ座標系を設定するステップと、
前記画像ごとに、前記カメラ座標系の点群データを前記ユーザ座標系の点群データに変換するステップと、
前記画像ごとに変換された前記ユーザ座標系の点群データを合成するステップと、
を含む点群データ合成方法。
【請求項6】
作業対象を含む複数の画像を撮影するイメージセンサ及び前記作業対象までの距離を測定する距離計測センサを含む撮影装置と、
前記画像を前記イメージセンサから取得する画像取得部と、
前記撮影装置を基準にしたカメラ座標系上の点群データを、前記距離計測センサから前記画像ごとに取得する点群取得部と、
それぞれの前記画像に共通して含まれる視覚的な特徴点の前記カメラ座標系の位置をそれぞれ検出する検出部と、
前記検出部により前記画像ごとに検出された前記特徴点の前記カメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部と、
前記画像ごとに、前記カメラ座標系の点群データを前記ユーザ座標系の点群データに変換する座標変換部と、
前記座標変換部により前記画像ごとに変換された前記ユーザ座標系の点群データを合成する点群合成部と、
を備える点群データ合成システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システムに関する。
【背景技術】
【0002】
レーザスキャナなどで測定した三次元の点群データを利用してロボット動作を教示する場合、一つの方向からの一度の測定だけでは十分なデータを得ることができない場合が多い。したがって、必要なデータを得るために、複数の方向から測定することが行われている。この場合、複数の方向から測定して得られたそれぞれのデータを高精度で合成することが要求される。
【0003】
下記特許文献1には、二つの点群データを重ね合わせる際に、双方の点群データから三点以上の特徴点を抽出し、双方の特徴点を重ね合わせることで点群データ全体を合成する方法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2016-70708号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、点群データは一般的に精度や解像度が低いため、特許文献1の方法では、合成した点群データの精度も低くなってしまう。
【0006】
そこで、本発明は、複数の点群データを合成する際の精度を高めることができる点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様に係る点群データ合成装置は、作業対象を含む複数の画像を取得する画像取得部と、画像を撮影するカメラを基準にしたカメラ座標系上の点群データを、画像ごとに取得する点群取得部と、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置をそれぞれ検出する検出部と、検出部により画像ごとに検出された特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部と、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換する座標変換部と、座標変換部により画像ごとに変換されたユーザ座標系の点群データを合成する点群合成部と、を備える。
【0008】
この態様によれば、作業対象を含む複数の画像を取得し、それらの画像ごとにカメラ座標系上の点群データを取得し、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置を検出し、検出した特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定し、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換し、変換したユーザ座標系の点群データを合成できる。これにより、カメラ座標系の点群データを、一般に点群データよりも解像度の高い複数の画像に共通して含まれる特徴点を基準にするユーザ座標系に変換してから合成することが可能となる。
【0009】
上記態様において、検出部は、画像に基づいて特徴点を検出した場合に、当該検出した特徴点の位置を、画像上及び点群データ上の特徴点の位置に設定してもよい。
【0010】
この態様によれば、画像に基づいて検出した特徴点の位置を、画像上及び点群データ上の共通の位置として設定することが可能となる。
【0011】
上記態様において、検出部は、画像に基づいて特徴点を検出できない場合に、画像上にある視覚的な特徴点を指定させることで視覚的な特徴点を検出し、当該検出した特徴点の位置を、画像上及び点群データ上の特徴点の位置に設定してもよい。
【0012】
この態様によれば、例えば画像を解析する等して特徴点を検出できない場合であっても、その画像上にある特徴点を作業員に指定させる等により、特徴点を容易に検出し、さらに検出した特徴点の位置を、画像上及び点群データ上の共通の位置として設定することが可能となる。
【0013】
本発明の他の態様に係る点群データ合成プログラムは、コンピュータを、作業対象を含む複数の画像を取得する画像取得部、画像を撮影するカメラを基準にしたカメラ座標系上の点群データを、画像ごとに取得する点群取得部、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置をそれぞれ検出する検出部、検出部により画像ごとに検出された特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換する座標変換部、座標変換部により画像ごとに変換されたユーザ座標系の点群データを合成する点群合成部、として機能させる。
【0014】
この態様によれば、作業対象を含む複数の画像を取得し、それらの画像ごとにカメラ座標系上の点群データを取得し、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置を検出し、検出した特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定し、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換し、変換したユーザ座標系の点群データを合成できる。これにより、カメラ座標系の点群データを、一般に点群データよりも解像度の高い複数の画像に共通して含まれる特徴点を基準にするユーザ座標系に変換してから合成することが可能となる。
【0015】
本発明の他の態様に係る点群データ合成方法は、プロセッサにより実行される方法であって、作業対象を含む複数の画像を取得するステップと、画像を撮影するカメラを基準にしたカメラ座標系上の点群データを、画像ごとに取得するステップと、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置をそれぞれ検出するステップと、画像ごとに検出された特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定するステップと、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換するステップと、画像ごとに変換されたユーザ座標系の点群データを合成するステップと、を含む。
【0016】
この態様によれば、作業対象を含む複数の画像を取得し、それらの画像ごとにカメラ座標系上の点群データを取得し、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置を検出し、検出した特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定し、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換し、変換したユーザ座標系の点群データを合成できる。これにより、カメラ座標系の点群データを、一般に点群データよりも解像度の高い複数の画像に共通して含まれる特徴点を基準にするユーザ座標系に変換してから合成することが可能となる。
【0017】
本発明の他の態様に係る点群データ合成システムは、作業対象を含む複数の画像を撮影するイメージセンサ及び作業対象までの距離を測定する距離計測センサを含む撮影装置と、画像をイメージセンサから取得する画像取得部と、撮影装置を基準にしたカメラ座標系上の点群データを、距離計測センサから画像ごとに取得する点群取得部と、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置をそれぞれ検出する検出部と、検出部により画像ごとに検出された特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部と、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換する座標変換部と、座標変換部により画像ごとに変換されたユーザ座標系の点群データを合成する点群合成部と、を備える。
【0018】
この態様によれば、作業対象を含む複数の画像を取得し、それらの画像ごとにカメラ座標系上の点群データを取得し、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置を検出し、検出した特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定し、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換し、変換したユーザ座標系の点群データを合成できる。これにより、カメラ座標系の点群データを、一般に点群データよりも解像度の高い複数の画像に共通して含まれる特徴点を基準にするユーザ座標系に変換してから合成することが可能となる。
【発明の効果】
【0019】
本発明によれば、複数の点群データを合成する際の精度を高めることができる点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システムを提供することができる。
【図面の簡単な説明】
【0020】
図1】実施形態に係る点群データプログラムをインストールした撮影装置を含む溶接ロボットシステムの構成を例示する図である。
図2】マーカの一例を示す図である。
図3】撮影装置の機能的な構成を例示する図である。
図4】複数の画像からそれぞれ基準マーカの特徴点を検出する際のイメージ図である。
図5】サイコロの1の目を表す赤丸部分を視覚的な特徴点として検出する場合のイメージ図である
図6】実施形態に係る点群データ合成プログラムをインストールした撮影装置の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【0021】
添付図面を参照して、本発明の好適な実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。また、図面は模式的なものであるため、各構成要素の寸法や比率は実際のものとは相違する。
【0022】
図1は、実施形態に係る点群データ合成プログラムをインストールした撮影装置(点群データ合成装置)1を含む溶接ロボットシステム100の構成を例示する図である。溶接ロボットシステム100は、例えば、撮影装置1と、ロボット制御装置2と、マニピュレータ3とを備える。撮影装置1とロボット制御装置2とは、例えばネットワークNaを介して接続され、ロボット制御装置2とマニピュレータ3とは、例えば通信ケーブルNbを介して接続される。ネットワークNaは、無線であっても、有線(通信ケーブルを含む)であってもよい。なお、溶接ロボットシステム100に、ティーチペンダントを含めてもよい。ティーチペンダントは、作業員がマニピュレータ3の動作を教示する際に用いる操作装置であり、ロボット制御装置2に接続して使用することができる。
【0023】
マニピュレータ3は、ロボット制御装置2において設定される施工条件に従ってアーク溶接を行う溶接ロボットである。マニピュレータ3は、例えば、工場の床面等に固定されるベース部材上に設けられる多関節アーム31と、多関節アーム31の先端に連結される溶接トーチ32とを有する。多関節アーム31の先端には、溶接トーチ32に替えてツール等を連結することもできる。
【0024】
ロボット制御装置2は、マニピュレータ3の動作を制御する制御ユニットであり、例えば、制御部21、記憶部22、通信部23及び溶接電源部24を含む。
【0025】
制御部21は、例えば、プロセッサであり、プロセッサが記憶部22に記憶されている作業プログラムを実行することで、マニピュレータ3及び溶接電源部24を制御する。
【0026】
通信部23は、ネットワークNaを介して接続される撮影装置1との通信を制御することや、通信ケーブルNbを介して接続されるマニピュレータ3との通信を制御する。
【0027】
溶接電源部24は、例えば、溶接ワイヤの先端とワークとの間にアークを発生させるために、予め定められた溶接の施工条件に従って、溶接電流及び溶接電圧等をマニピュレータ3に供給する。溶接の施工条件には、例えば、溶接条件、溶接開始位置、溶接終了位置、溶接距離及び溶接トーチの姿勢等のデータ項目が含まれる。溶接条件には、例えば、溶接電流、溶接電圧、溶接速度、ワイヤ送給速度及びワークの厚さ等のデータ項目が含まれる。溶接電源部24は、ロボット制御装置2と別個に備えることとしてもよい。
【0028】
撮影装置1は、例えば、デジタルカメラ付きのタブレット端末を用いることができるが、これに限定されず、デジタルカメラ付きの可搬型端末であってよい。可搬型端末には、例えば、ARデバイス、スマートフォン、携帯情報端末(PDA)、ノートPC(パーソナルコンピュータ)等の持ち運び可能な端末を含むことができる。
【0029】
撮影装置1は、例えば、制御部11、記憶部12、通信部13、撮影部14、座標取得部15、表示部16を含む。
【0030】
制御部11は、例えば、プロセッサであり、プロセッサが記憶部12に記憶されている点群データ合成プログラム等のプログラムを実行することにより、撮影装置1の各部を制御する。
【0031】
記憶部12は、各種のプログラム及びデータを記憶する。各種のプログラムには、例えば、実施形態に係る点群データ合成プログラム等が含まれる。各種のデータには、例えば、マーカに関するマーカ情報や、後述する点群データに関する点群データ情報が含まれる。なお、マーカ情報や点群データ情報は、ロボット制御装置2の記憶部22に記憶させてもよい。
【0032】
マーカ情報には、例えば、マーカを特定するためのマーカID及び識別画像、マーカの形状に関する形状情報(例えば正方形や長方形)、マーカのサイズに関するサイズ情報(例えば四角形の各辺の長さや各頂点の角度)、マーカの模様や色に関する色模様情報、並びにマーカの特徴点に関する情報等を含むことができる。マーカの特徴点として、例えば、マーカにある複数のコーナーや、マーカの中心を設定することができる。図2に、マーカの一例を示す。
【0033】
同図に示すマーカMの上部中央付近には、マーカを特定するためのマーカID(マーカ識別子)として“1”が付与され、マーカMの四つのコーナー付近には、コーナー位置を特定するためのコーナーNO(コーナー識別子)として“0”~“3”までの番号が付与されている。また、マーカMの周縁部の内側には、マーカごとに模様や形状が異なる識別画像Iが付与されている。
【0034】
なお、マーカは、図2に示すマーカに限定されず、撮影装置1に認識させることができるものであればよい。マーカとして、ARマーカを用いることが好ましい。ARマーカを用いることで、ARマーカを認識したときに、そのARマーカを基準にするマーカ座標系を、実際の映像に重ね合わせて表示させること等が簡易に実現できるようになる。また、マーカ識別子は、マーカIDに限定されず、例えば、番号や画像、形状、それらの組み合わせであってもよい。さらに、コーナー識別子は、コーナーNOに限定されず、例えば、記号や色、形状、それらの組み合わせであってもよい。
【0035】
図1に示す通信部13は、ネットワークNaを介して接続されるロボット制御装置2との通信を制御する。
【0036】
撮影部14は、例えば、レンズ及びイメージセンサ(撮像素子)を含むデジタルカメラであり、レンズで受光した被写体の光を電気信号(画像データ)に変換する。デジタルカメラは、二次元カメラ又は三次元カメラのいずれであってもよい。
【0037】
座標取得部15は、例えば、距離計測センサであり、対象物に対応する三次元の座標データ(以下、「点群データ」ともいう。)を取得する。距離計測センサとして、例えば、LiDAR(Light Detection and Ranging)センサ、ミリ波センサ、超音波センサ等を用いることができる。なお、対象物に対応する三次元の座標データを、異なる複数の位置から被写体を撮影した複数の画像に基づいて算定し、取得してもよい。
【0038】
イメージセンサ(撮影部14)と距離計測センサ(座標取得部15)とを撮影装置1に備えることで、デジタルカメラ(例えば、レンズの中心)を基準とする三次元のカメラ座標系と距離計測センサにより取得される点群データの座標系とを一致するように調整し、その状態を保持させることが可能となる。また、イメージセンサと距離計測センサとを撮影装置1に備えることで、溶接対象とマーカとを同時に撮影できる任意の位置に、撮影装置1を操作する作業者が自由に移動して撮影することが可能となるため、作業効率を高めることができる。
【0039】
なお、距離計測センサを、撮影装置1と別個に備えてもよいが、この場合、距離計測センサと撮影装置1との位置関係が変わるたびに、デジタルカメラを基準とするカメラ座標系と距離計測センサにより取得される点群データの座標系とを一致させる調整作業を実施することが好ましい。
【0040】
表示部16は、例えば、タッチパネルを有するディスプレイであり、撮影部14による被写体の映像を表示するとともに、作業員による操作指示等の入力を受け付ける。表示部16は、例えばタッチパネルを有するディスプレイ装置として、撮影装置1とは別個に備えることとしてもよい。
【0041】
図3は、本発明に係る撮影装置1の機能的な構成を例示する図である。撮影装置1は、機能的な構成として、例えば、画像取得部111と、点群取得部112と、検出部113と、ユーザ座標系設定部114と、座標変換部115と、点群合成部116とを有する。各部について、以下に順次説明する。
【0042】
画像取得部111は、デジタルカメラにより撮影される画像を取得する。本実施形態では、複数の異なる位置からそれぞれ溶接対象を撮影した画像を取得する。取得する複数の画像は、個別に撮影された静止画像であってもよいし、動画像から所定の条件で切り出される(抽出される)複数の画像であってもよい。所定の条件として、例えば、一定の時間が経過する、画像が一定の割合以上変化する、ジャイロセンサ等により検出される値が一定量以上変化する等のように、撮影装置1が異なる位置に移動したことを判定可能な条件を用いることが好ましい。これにより、複数の異なる位置から計測した点群データを取得することができる。
【0043】
点群取得部112は、デジタルカメラの被写体に対応する点群データを距離計測センサから取得する。取得した点群データは、デジタルカメラを基準にしたカメラ座標系上に描画される。
【0044】
検出部113は、それぞれの画像において溶接対象と共に撮影される基準マーカの特徴点を検出し、その検出した特徴点のカメラ座標系の位置を取得する。検出部113は、検出した特徴点の位置を、画像上及び点群データ上の基準マーカの特徴点の位置に設定する。基準マーカは、マーカのうち、マーカ情報に登録されているマーカである。基準マーカは、例えば、溶接対象の周辺又は溶接対象の上に配置することができる。
【0045】
検出部113は、基準マーカの特徴点を検出する際に、例えば、マーカ情報に含まれるマーカの形状やサイズ、模様、色等に基づいて画像を解析し、画像に含まれる基準マーカを認識し、その認識した基準マーカの特徴点(例えば、マーカのコーナーや中心等)を検出する。
【0046】
ここで、図4に、複数の画像からそれぞれ基準マーカの特徴点を検出する際のイメージ図を示す。図4(B)は、二つの異なる位置にある撮影装置1a、1bが、それぞれ溶接対象W及び基準マーカMを撮影している状態を模式的に表した図である。図4(A)は、図4(B)の撮影装置1aのディスプレイを正面から見た図であり、図4(C)は、図4(B)の撮影装置1bのディスプレイを正面から見た図である。
【0047】
図4に示す撮影装置1a、1bのディスプレイには、溶接対象W及び基準マーカMがカメラ座標系Cc上に表示されている。同図では、検出部113が、基準マーカMの特徴点として、マーカの中心を検出し、検出したマーカの中心に対応するカメラ座標系Ccの位置を取得する。
【0048】
なお、検出部113が検出する対象は、マーカの特徴点であることに限定されず、撮影した画像に含まれ、位置が固定された視覚的な特徴点であればよい。視覚的な特徴点は、溶接対象上の目印になり得るものであってもよく、例えば、溶接対象を仮にサイコロとした場合に、そのサイコロの1の目を表す赤丸部分を視覚的な特徴点としてもよい。
【0049】
また、検出部113は、画像を解析等しても視覚的な特徴点を検出できない場合に、例えば、画像取得部111により取得される画像上にある視覚的な特徴点を作業員に指定させる等により、視覚的な特徴点を検出してもよい。この場合、検出部113は、例えば画像と点群データとを照らし合わせる等して、上記検出した画像上の視覚的な特徴点の位置を、画像上及び点群データ上の視覚的な特徴点の位置に設定する。これにより、解像度の高い画像上の特徴点の位置と解像度の低い点群データ上の特徴点の位置とを、カメラ座標系上で対応付けることができる。
【0050】
ここで、図5に、サイコロの1の目を表す赤丸部分を視覚的な特徴点として検出する場合のイメージ図を示す。図5(A)は、溶接対象Wであるサイコロの1の目を表す赤丸部分に設けられた切れ目が、視覚的な特徴点の候補Pとして検出されることを例示する模式図である。図5(B)は、図5(A)の画像に点群データが重ねて表示され、その画像上にある視覚的な特徴点の候補Pに対応するカメラ座標系の位置が取得されることを例示する模式図である。図5(C)は、図5(A)の画像から視覚的な特徴点が検出されたことを例示する模式図である。
【0051】
図3に示すユーザ座標系設定部114は、検出部113により検出された特徴点を基準にするユーザ座標系を設定する。ユーザ座標系は、撮影された画像ごとに設定する。例示的に、図4(A)、(C)には、基準マーカMの特徴点を基準にするユーザ座標系(マーカ座標系)Cuがそれぞれの画像上に表示され、図5(C)には、溶接対象Wの視覚的な特徴点を基準にするユーザ座標系Cuが表示されている。
【0052】
特徴点を基準とするユーザ座標系は、カメラ座標系の原点(例えば、レンズの中心)を特徴点に移動させることで設定することができる。このようなユーザ座標系は、例えば、ARマーカの座標系を設定する公知の技術を適用して設定することができる。
【0053】
ここで、点群データは、画像に比べて、一般に解像度及びデータの精度が低くなるため、実際に存在する物体の位置からずれる程度や誤差を含む程度も画像より大きくなる。したがって、解像度が高い画像上で検出した特徴点を基準にしてユーザ座標系を設定することで、解像度が低い点群データ上で検出した特徴点を基準にしてユーザ座標系を設定するよりも、特徴点の位置を正確に反映した精度の高い座標系を設定することが可能となる。
【0054】
図3に示す座標変換部115は、撮影された画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換する。点群データの座標系を変換するための変換式は、例えば、カメラ座標系及びユーザ座標系それぞれにおける基準マーカのコーナー位置に基づいて、以下のように算定できる。
【0055】
まず、基準マーカのコーナーNO“0”、“1”、“2”の各座標に基づいてカメラ座標系A及びユーザ座標系Bをそれぞれ以下(1)のように定義する。ここで、コーナーNO“0”のカメラ座標系の座標を(x0、y0、z0)とし、同ユーザ座標系の座標を(x'0、y'0、z'0)とする。コーナーNO“1”のカメラ座標系の座標を(x1、y1、z1)とし、同ユーザ座標系の座標を(x'1、y'1、z'1)とする。コーナーNO“2”のカメラ座標系の座標を(x2、y2、z2)とし、同ユーザ座標系の座標を(x'2、y'2、z'2)とする。
【数1】
【0056】
上記(1)のカメラ座標系A及びユーザ座標系Bを用いてカメラ座標系とユーザ座標系との変換行列(A0、B0、Mt)を算出する。この変換行列を構成する座標A0、座標B0及び回転行列Mtを、それぞれ以下(2)のように定義する。
【数2】
【0057】
上記(2)のVAは、以下(3)のように算出する。
【数3】
【0058】
上記(3)のvecA0、vecA1及びvecA2は、それぞれ以下(4)のように算出する。
【数4】
【0059】
上記(2)のVBは、以下(5)のように算出する。
【数5】
【0060】
上記(5)のvecB0、vecB1及びvecB2は、それぞれ以下(6)のように算出する。
【数6】
【0061】
上記(1)から(6)に基づいて、点群取得部112により取得されたカメラ座標系の点pAを、ユーザ座標系の点pBに変換するための変換式は、以下(7)のように表すことができる。
【数7】
【0062】
同様に、カメラ座標系の位置ベクトルの点vAを、ユーザ座標系の位置ベクトルの点vBに変換するための変換式は、以下(8)のように表すことができる。
【数8】
【0063】
同様に、ユーザ座標系の点pBを、カメラ座標系の点pAに変換するための変換式は、以下(9)のように表すことができる。
【数9】
【0064】
同様に、ユーザ座標系の位置ベクトルの点vBを、カメラ座標系の位置ベクトルの点vAに変換するための変換式は、以下(10)のように表すことができる。
【数10】
【0065】
上記(7)から(10)の変換式により、カメラ座標系とユーザ座標系とを対応付けることができる。
【0066】
図3に示す点群合成部116は、座標変換部115により画像ごとに変換されたユーザ座標系の点群データを合成する。各画像に対応する点群データを合成すると、各画像に共通する部分の点群データが合わせて加えられるため、各画像に共通する部分の点群データの密度が増すことになる。
【0067】
ここで、点群データは比較的大きな誤差を含むため、点群データが重なる部分では、本来同じ位置にある点群データ同士にずれが生じやすい。したがって、点群データが重なる部分では、合成する点群データにフィルターをかける等して、ずれによる影響が減少するように調整してもよい。他方、点群に抜け等がある場合には、周辺の点群を用いて補完してもよい。
【0068】
図6を参照して、実施形態に係る撮影装置1の動作の一例について説明する。本動作は、撮影装置1が溶接対象を撮影するたびに繰り返し行われる。
【0069】
最初に、撮影装置1の撮影部14が、溶接対象を含む被写体を撮影した画像を取得しつつ、撮影装置1の座標取得部15が、撮影部14の被写体に対応する点群データを取得する(ステップS101)。
【0070】
続いて、撮影装置1の検出部113は、上記ステップS101で取得された画像から、基準マーカの特徴点を検出し(ステップS102)、その特徴点のカメラ座標系の位置を取得する。
【0071】
上記ステップS102で特徴点が検出できない場合(ステップS103;NO)には、後述するステップS108に処理を移行する。一方、上記ステップS102で特徴点が検出できた場合(ステップS103;YES)に、撮影装置1のユーザ座標系設定部114は、上記ステップS102で検出された特徴点を基準にするユーザ座標系を設定する(ステップS104)。
【0072】
続いて、撮影装置1の座標変換部115は、カメラ座標系の点群データをユーザ座標系の点群データに変換する(ステップS105)。
【0073】
続いて、他の画像をまだ処理していない場合(ステップS106;NO)には、後述するステップS108に処理を移行する。一方、他の画像を既に処理している場合(ステップS106;YES)に、撮影装置1の点群合成部116は、他の画像に対する処理でユーザ座標系に変換された点群データに対し、上記ステップS105でユーザ座標系に変換された点群データを合成し、記憶部12に記憶させる(ステップS107)。
【0074】
続いて、撮影装置1の制御部11は、次の撮影画像がある場合(ステップS108;YES)には、上記ステップS101に処理を移行する一方、次の撮影画像がない場合(ステップS108;NO)には、本動作を終了する。
【0075】
上述したように、実施形態に係る撮影装置1によれば、溶接対象を含む複数の画像を取得し、それらの画像ごとにカメラ座標系上の点群データを取得し、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置を検出し、検出した特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定し、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換し、変換したユーザ座標系の点群データを合成できる。
【0076】
これにより、カメラ座標系の点群データを、点群データよりも解像度の高い複数の画像に共通して含まれる特徴点を基準にするユーザ座標系に変換してから合成することができる。つまり、解像度が高い複数の画像上で検出した共通の特徴点を基準にしてユーザ座標系を設定することで、解像度が低い点群データ上で検出した特徴点を基準にしてユーザ座標系を設定するよりも、実際の特徴点の位置を正確に反映した精度の高い座標系を設定することが可能となる。そして、精度の高いユーザ座標系上の点群データ同士を合成することで、合成後の点群データの精度も高めることが可能となる。
【0077】
それゆえ、実施形態に係る撮影装置1によれば、複数の点群データを合成する際の精度を高めることができる。
【0078】
なお、本発明は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。
【0079】
例えば、上述した実施形態では、溶接ロボットを用いて説明したが、これに限定されない。例えば、ピッキング等を行うハンドリングロボットを含む産業用ロボットに本発明を適用することができる。この場合、上記実施形態で用いた溶接ロボットシステム及び溶接対象をそれぞれ産業用ロボットシステム及び作業対象と置き換えることができる。
【0080】
また、上述した実施形態では、撮影装置1が、イメージセンサ(撮影部14)、距離計測センサ(座標取得部15)及び図3に示す各構成要素を備える態様について説明したが、これに限定されない。例えば、それぞれの構成要素を複数の装置に分散し、それら複数の装置を含む点群データ合成システムとして実現してもよい。例示的に、図3に示す撮影装置1の各構成要素をサーバ装置に備え、そのサーバ装置が、イメージセンサ及び距離計測センサからネットワークを介して画像及び点群データを取得し、取得した画像及び点群データに基づいて合成した点群データをネットワークを介して撮影装置1に送信してもよい。
【符号の説明】
【0081】
1…撮影装置、2…ロボット制御装置、3…マニピュレータ、11…制御部、12…記憶部、13…通信部、14…撮影部、15…座標取得部、16…表示部、21…制御部、22…記憶部、23…通信部、24…溶接電源部、31…多関節アーム、32…溶接トーチ、100…溶接ロボットシステム、111…画像取得部、112…点群取得部、113…検出部、114…ユーザ座標系設定部、115…座標変換部、116…点群合成部
【要約】
【課題】複数の点群データを合成する際の精度を高めることができる点群データ合成装置を提供する。
【解決手段】点群データ合成装置は、溶接対象を含む複数の画像を取得する画像取得部111と、画像を撮影するカメラを基準にしたカメラ座標系上の点群データを画像ごとに取得する点群取得部112と、それぞれの画像に共通して含まれる視覚的な特徴点のカメラ座標系の位置をそれぞれ検出する検出部113と、画像ごとに検出された特徴点のカメラ座標系の位置を基準にするユーザ座標系を設定するユーザ座標系設定部114と、画像ごとに、カメラ座標系の点群データをユーザ座標系の点群データに変換する座標変換部115と、画像ごとに変換されたユーザ座標系の点群データを合成する点群合成部116と、を備える。
【選択図】図3
図1
図2
図3
図4
図5
図6