JP2018146348A - 三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム - Google Patents

三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP2018146348A
JP2018146348A JP2017040636A JP2017040636A JP2018146348A JP 2018146348 A JP2018146348 A JP 2018146348A JP 2017040636 A JP2017040636 A JP 2017040636A JP 2017040636 A JP2017040636 A JP 2017040636A JP 2018146348 A JP2018146348 A JP 2018146348A
Authority
JP
Japan
Prior art keywords
dimensional shape
data
phase
shape data
light
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
Application number
JP2017040636A
Other languages
English (en)
Inventor
智貴 嶋野
Tomoki Shimano
智貴 嶋野
佐伯 和人
Kazuto Saeki
和人 佐伯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Keyence Corp
Original Assignee
Keyence Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Keyence Corp filed Critical Keyence Corp
Priority to JP2017040636A priority Critical patent/JP2018146348A/ja
Publication of JP2018146348A publication Critical patent/JP2018146348A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

【課題】位相値が同じ三次元形状データを合成することにより、計測対象物の同じ部位に関する三次元形状データを合成することが可能な三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラムを提供する。【解決手段】周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物71に複数回照射する。照射された光を第一の方向及び第二の方向でそれぞれ受光し受光信号を出力する。受光したそれぞれの受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された位相データを画素ごとに生成する。生成された位相データに基づいて計測対象物の三次元形状データをそれぞれ生成し、位相データとそれぞれ同一の位相データを有する三次元形状データを特定し、複数の三次元形状データを合成して合成三次元形状データを生成する。【選択図】図6

Description

本発明は、計測対象物の三次元形状を計測する三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラムに関する。
計測対象物の三次元データを取得する原理として、三角測距の原理を用いる手法が広く用いられている。三角測距の原理を用いて計測対象物の三次元データの取得を行う場合、計測対象物の表面に光を照射し、その反射光を異なる角度からカメラで受光し、計測対象物の高さに応じて変化するカメラ受光面上の受光位置に基づいて計測対象物の表面の高さを計測することができる。
三角測距の原理を用いた三次元計測では、計測対象物に対して投光軸と受光軸が交差するため、光が照射されない領域や、カメラで撮像ができない領域の三次元形状の計測ができない。そこで、計測対象物にそれぞれ異なる方向から複数のカメラで反射光を受光し、各カメラで取得した複数の三次元データを合成することにより、単一のカメラでは死角となってしまう領域の三次元形状の計測を可能にした装置が知られている。
例えば特許文献1では、計測対象物に一定のパターン光を投光して、投光された計測対象物をそれぞれ異なる方向から撮像する複数のカメラで反射光を受光して得られた画像から、三次元点群の座標を求める三次元計測装置が開示されている。特許文献1では、パターン光として縞パターン光を採用しており、画素ごとにプロジェクタ空間上の位相に基づいて位相値−三次元座標変換演算をすることにより、三次元座標値を算出する。
特開2015−021862号公報
しかし、特許文献1に開示されている方法では、投光するプロジェクタとそれぞれのカメラを一つのペアとして、ペアごとに複数の三次元点群からなる三次元データを取得し、所定の座標系に射影し、合成している。したがって、ペアごとに求められた三次元点群に誤差が含まれている場合に、同一座標に射影されたそれぞれの点は、計測対象物の同じ部位の計測値であるとは限らない。そのため、複数のカメラを用いて撮像しているにもかかわらず、座標値の平均化によるノイズの低減、色の境界のノイズの低減、輪郭付近のノイズの低減等、本来得られるべき効果が薄れるとともに、解像度が劣化する恐れがあるという問題点があった。
本発明は斯かる事情に鑑みてなされたものであり、位相値が同じ三次元形状データを合成することにより、計測対象物の同じ部位に関する三次元形状データを合成することが可能な三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラムを提供することを目的とする。
上記目的を達成するために第1発明に係る三次元形状計測装置は、周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射する投光部と、照射された光を第一の方向で受光し、受光量を示す受光信号を出力する第一の受光部と、照射された光を第二の方向で受光し、受光量を示す受光信号を出力する第二の受光部と、前記第一の受光部で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データを画素ごとに生成し、前記第二の受光部で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第二の位相データを画素ごとに生成する位相データ生成部と、前記第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、前記第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する形状データ生成部と、生成された前記第一の位相データと前記第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、前記第一の三次元形状データと前記第二の三次元形状データとを合成して合成三次元形状データを生成する合成処理部とを備えることを特徴とする。
また、第2発明に係る三次元形状計測装置は、第1発明において、前記合成処理部は、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの平均値を算出することが好ましい。
また、第3発明に係る三次元形状計測装置は、第1又は第2発明において、前記合成処理部は、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの差分を算出する差分算出部と、算出した差分が所定の閾値以上であるか否かを判断する差分判断部とを備え、算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては前記第一の三次元形状データと前記第二の三次元形状データとを合成しないことが好ましい。
また、第4発明に係る三次元形状計測装置は、第1乃至第3発明のいずれか1つにおいて、前記パターンは縞パターンであることが好ましい。
次に、上記目的を達成するために第5発明に係る三次元形状計測方法は、計測対象物の三次元座標値を計測する三次元形状計測装置で実行することが可能な三次元形状計測方法であって、前記三次元形状計測装置は、周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射する第一の工程と、照射された光を第一の方向で受光し、受光量を示す受光信号を出力する第二の工程と、照射された光を第二の方向で受光し、受光量を示す受光信号を出力する第三の工程と、前記第二の工程で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データを画素ごとに生成し、前記第三の工程で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第二の位相データを画素ごとに生成する第四の工程と、前記第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、前記第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する第五の工程と、生成された前記第一の位相データと前記第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、前記第一の三次元形状データと前記第二の三次元形状データとを合成して合成三次元形状データを生成する第六の工程とを含むことを特徴とする。
また、第6発明に係る三次元形状計測方法は、第5発明において、前記第六の工程は、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの平均値を算出することが好ましい。
また、第7発明に係る三次元形状計測方法は、第5又は第6発明において、前記第六の工程は、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの差分を算出する第七の工程と、算出した差分が所定の閾値以上であるか否かを判断する第八の工程とを含み、算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては前記第一の三次元形状データと前記第二の三次元形状データとを合成しないことが好ましい。
また、第8発明に係る三次元形状計測方法は、第5乃至第7発明のいずれか1つにおいて、前記パターンは縞パターンであることが好ましい。
次に、上記目的を達成するために第9発明に係るコンピュータプログラムは、計測対象物の三次元座標値を計測する三次元形状計測装置で実行することが可能なコンピュータプログラムであって、前記三次元形状計測装置を、周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射する投光手段、照射された光を第一の方向で受光し、受光量を示す受光信号を出力する第一の受光手段、照射された光を第二の方向で受光し、受光量を示す受光信号を出力する第二の受光手段、前記第一の受光手段で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データを画素ごとに生成し、前記第二の受光手段で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第二の位相データを画素ごとに生成する位相データ生成手段、前記第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、前記第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する形状データ生成手段、及び生成された前記第一の位相データと前記第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、前記第一の三次元形状データと前記第二の三次元形状データとを合成して合成三次元形状データを生成する合成処理手段として機能させることを特徴とする。
また、第10発明に係るコンピュータプログラムは、第9発明において、前記合成処理手段を、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの平均値を算出する手段として機能させることが好ましい。
また、第11発明に係るコンピュータプログラムは、第9又は第10発明において、前記合成処理手段を、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの差分を算出する差分算出手段、及び算出した差分が所定の閾値以上であるか否かを判断する差分判断手段として機能させ、算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては前記第一の三次元形状データと前記第二の三次元形状データとを合成しないことが好ましい。
また、第12発明に係るコンピュータプログラムは、第9乃至第11発明のいずれか1つにおいて、前記パターンは縞パターンであることが好ましい。
第1発明、第5発明及び第9発明では、周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射し、照射された光を第一の方向及び第二の方向で受光し、それぞれ受光量を示す受光信号を出力する。受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データ及び第二の位相データを画素ごとに生成し、第一の位相データに基づいて計測対象物の第一の三次元形状データを、第二の位相データに基づいて計測対象物の第二の三次元形状データを、それぞれ生成する。生成された第一の位相データと第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、第一の三次元形状データと第二の三次元形状データとを合成して合成三次元形状データを生成する。これにより、計測対象物の同一部位のデータに基づいて合成三次元形状データを得ることができるので、色の境界や輪郭付近においてもノイズが少なく、高い解像度を維持した合成三次元形状データを得ることが可能となる。
第2発明、第6発明及び第10発明では、位相データごとに、該位相データに対応する第一の三次元形状データと第二の三次元形状データとの平均値を算出するので、ノイズを低減することが可能となる。
第3発明、第7発明及び第11発明では、位相データごとに、該位相データに対応する第一の三次元形状データと第二の三次元形状データとの差分を算出し、算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては第一の三次元形状データと第二の三次元形状データとを合成しないので、三次元形状データを無効として除外することで合成三次元形状データに含まれることがなく、高い精度で合成三次元形状データを生成することが可能となる。
第4発明、第8発明及び第12発明では、パターンが縞パターンであるので、互いに直交するパターンを容易に生成しやすく、位相を等間隔にずらして照射しやすい。
本発明によれば、計測対象物の同一部位のデータに基づいて合成三次元形状データを得ることができるので、色の境界や輪郭付近においてもノイズが少なく、高い解像度を維持した合成三次元形状データを得ることが可能となる。
本発明の実施の形態に係る三次元形状計測装置を用いた、ピッキングシステムの構成例を示すブロック図である。 本発明の実施の形態に係る三次元形状計測装置の構成を示すブロック図である。 本発明の実施の形態に係る三次元形状計測装置の撮像部の構成を示す例示図である。 撮像部のカメラ及びプロジェクタの配置を示す模式図である。 本発明の実施の形態に係る三次元形状計測装置の機能ブロック図である。 縞パターン撮像による対象物の形状と撮像されるパターン位相との対応関係を説明するための模式図である。 投影したグレーコードに対応する縞パターンの例示図である。 投影した正弦波状の縞パターンの例示図である。 本発明の実施の形態に係る三次元形状計測装置で用いる縦縞パターンの例示図である。 本発明の実施の形態に係る三次元形状計測装置で用いる横縞パターンの例示図である。 本発明の実施の形態に係る三次元形状計測装置のプロジェクト空間上での座標値を特定する方法の説明図である。 本発明の実施の形態に係る三次元形状計測装置のCPUの2基のカメラの画像に基づいて生成された三次元形状データの合成処理の手順を示すフローチャートである。 本発明の実施の形態に係る三次元形状計測装置のCPUの2組の合成三次元形状データの合成処理の手順を示すフローチャートである。 本発明の実施の形態に係る三次元形状計測装置のCPUの三次元計測処理の手順を示すフローチャートである。
以下、本発明の実施の形態に係る三次元形状計測装置について、図面に基づいて具体的に説明する。本実施の形態では、ロボットのピッキング動作において、ロボットの把持部の動作を正確に制御するための位置の特定に用いている。
図1は、本発明の実施の形態に係る三次元形状計測装置を用いた、ピッキングシステムの構成例を示すブロック図である。三次元形状計測装置1には、バラ積みされた計測対象物等に計測光を照射するプロジェクタと、計測対象物からの反射光を受光し、画像を撮像する複数のカメラからなる撮像部2が接続されており、キーボード111及びマウス112等の入力装置で画像処理の設定を行い、表示装置113で設定や動作状態の確認を行うことができる。なお、本明細書において、「三次元形状計測」とは、対象物の三次元の形状を数値として計測するものだけに限るものではなく、三次元の形状に基づいて対象物の位置、姿勢を認識するものも含む。
図2は、本発明の実施の形態に係る三次元形状計測装置1の構成を示すブロック図である。図2に示すように、本実施の形態に係る三次元形状計測装置1は、少なくともCPU11、メモリ12、ハードディスク等の記憶装置13、I/Oインタフェース14、ビデオインタフェース15、通信インタフェース16、可搬型ディスクドライブ17及び上述したハードウェアを接続する内部バス18で構成されている。
CPU11は、内部バス18を介して三次元形状計測装置1の上述したようなハードウェア各部と接続されており、上述したハードウェア各部の動作を制御するとともに、記憶装置13に記憶しているコンピュータプログラム100に従って、種々のソフトウェア的機能を実行する。メモリ12は、SRAM、SDRAM等の揮発性メモリで構成され、コンピュータプログラム100の実行時にロードモジュールが展開され、コンピュータプログラム100の実行時に発生する一時的なデータ等を記憶する。
記憶装置13は、内蔵される固定型記憶装置(ハードディスク)、ROM等で構成されている。記憶装置13に記憶しているコンピュータプログラム100は、プログラム及びデータ等の情報を記録したDVD、CD−ROM等の可搬型記録媒体90から、可搬型ディスクドライブ17によりダウンロードされ、実行時には記憶装置13からメモリ12へ展開して実行される。もちろん、通信インタフェース16を介してネットワークに接続されている外部のコンピュータからダウンロードされたコンピュータプログラムであっても良い。
I/Oインタフェース14は、キーボード111、マウス112等の入力装置と接続され、データの入力を受け付ける。また、ビデオインタフェース15は、CRTモニタ、LCD等の表示装置113と接続され、三次元形状計測装置1の設定データ、ロボットの動作状態等を表示する。
通信インタフェース16は内部バス18に接続されており、インターネット、LAN、WAN等の外部のネットワークに接続されることにより、ロボットコントローラ4、撮像部2、外部のコンピュータ等とデータ送受信することが可能となっている。
図1に戻って、撮像部2は、作業空間内にバラ積みされた計測対象物を三次元的に撮像する。図3は、本発明の実施の形態に係る三次元形状計測装置1の撮像部2の構成を示す例示図である。
図3に示すように、本実施の形態に係る撮像部2は、1個のプロジェクタ21を中心として、計測対象物に対して前後左右方向に1基ずつ、合計4基のカメラ22(22a〜22d)を備えている。これにより、バラ積みされた計測対象物の状態によらず、死角の少ない作業空間内における計測対象物それぞれの位置及び姿勢を把握するための三次元形状データを取得することができる。もちろん、カメラ22の数は少なくとも2基以上備えていれば足りる。
プロジェクタ21の光源は、例えば白色光を出射するハロゲンランプ、白色、単色、又は複数の単色を組み合わせた光を出射するLED(発光ダイオード)等であれば良い。光源から出射された光の経路上に、図示しないパターン生成部を備え、縞パターンを生成する。パターン生成部としては、例えばDMD(デジタルマイクロミラーデバイス)、LCOS(登録商標)(Liquid Crystal on Silicon:反射型液晶素子)、スリット等であれば良い。
カメラ22a〜22dは、バラ積みされた計測対象物に対して前後左右方向の4か所に配置されている。カメラ22a〜22dは、例えばモノクロCCD(電荷結合素子)、CMOS(相補性金属酸化膜半導体)イメージセンサ等の撮像素子を備えている。撮像素子の画素ごとに受光量に対応する受光信号が出力される。そして、受光信号に基づいて画像が生成される。
図4は、撮像部2のカメラ22a〜22d及びプロジェクタ21の配置を示す模式図である。図4(a)は、撮像部2を上から見た模式図、図4(b)は、撮像部2の斜視図である。
図4(a)に示すように、プロジェクタ21をカメラ22a〜22dの中心に位置するように配置し、互いに直交するプロジェクタ空間上の二軸であるX軸、Y軸を定めている。この状態で、図4(b)に示すようにプロジェクタ21から縞パターンを投光し、それをカメラ22a〜22dで撮像する。
本実施の形態では、プロジェクタ21は、撮像する対象物の位置及び姿勢を検出するために、複数の縦縞パターン及び複数の横縞パターンを投光する。投光された複数の縦縞パターン及び複数の横縞パターンにより、プロジェクタ空間上のX座標値及びY座標値が一意に定まるので、異なるカメラ22で撮像されたカメラごとの画像データ群から画素ごとに計測対象物表面の位置と一意に対応したプロジェクト空間上における座標値である位相データが求められる。したがって、カメラごとに同一の位相データに対応した三次元計測データを合成することで、対象物の同じ位置を計測した三次元計測データ同士を合成することができる。
図1に戻って、三次元形状計測装置1はロボットの動作を制御するロボットコントローラ4とデータ通信することが可能に接続されている。三次元形状計測装置1で作業空間上の計測対象物の位置及び姿勢が特定されるので、計測対象物を把持するための動作に関わる信号を生成することができる。生成された動作に関わる信号は、ロボットコントローラ4においてロボット5の把持部50を動作させる信号に変換され、ロボット5の把持部50の動作を制御する。
なお、ロボットコントローラ4にはペンダント6がデータ通信することが可能に接続されており、ロボット5の動作に関する設定データの入力を受け付ける。
以上の構成における三次元形状計測装置1のCPU11の処理手順について説明する。図5は、本発明の実施の形態に係る三次元形状計測装置1の機能ブロック図である。図5において、投光部1001は、周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物、例えばワークがバラ積みされている作業空間に対して、複数回照射する。
本実施の形態では、周期的なパターンとして縞状の縞パターンを用いている。プロジェクタ21から縞パターンの光を投光し、投影された縞パターンをカメラ22で撮像している(本実施の形態ではプロジェクタ21は計測対象物の直上から投光している)。
これにより、プロジェクタ21のプロジェクタ空間上のどの位置が、カメラ22の撮像空間上のどの位置で撮像されているかを観測しておき、その対応関係に基づいて三次元的な位置を算出する。もちろん、カメラ22とプロジェクタ21との位置関係、焦点距離、レンズのひずみ等、正確なキャリブレーションを事前に行っておく必要がある。
図6は、縞パターン撮像による対象物の形状と撮像されるパターン位相との対応関係を説明するための模式図である。例えば計測対象物71の点Pをカメラ22で撮像する場合、グレーコード化された縞パターンを複数投影して撮像することにより、どの位置に存在するかを定めることができる。
図7は、投影するグレーコードに対応する縞パターンの例示図である。図7(a)〜図7(c)に示すようにグレーコード化された縞パターンを複数投影して撮像することにより二進数として計測対象物71の点Pの位置を特定することができる。図6の例では、グレーコード‘111’と‘101’との間、すなわち軸座標値‘5’と‘6’との間に位置することを特定することができる。
しかし、詳細な相対位置を特定することができないので、実際には正弦波状の縞パターンを、位相を一定間隔でスライドさせつつ複数投影して撮像する。図8は、投影した正弦波状の縞パターンの例示図である。
図8(a)〜図8(d)に示すように正弦波状の縞パターンを一定の位相間隔でスライドさせて投影し、投影された縞パターンを撮像している。これにより、図6の例では、軸方向(縞パターンに直交する方向)の位相値として‘5.4’と詳細な位置を特定することができる。
図5に戻って、第一の受光部1002は、照射された光を第一の方向で受光し、受光量を示す受光信号を出力する。同様に第二の受光部1003は、照射された光を第二の方向で受光し、受光量を示す受光信号を出力する。第三の受光部1009、第四の受光部1010も同様にして受光信号を出力する。本実施の形態では4つの受光部を有する例を示しているが、受光部の数は2つ以上であればいくつでも良い。
位相データ生成部1004は、第一の受光部1002で受光した受光信号に基づいて、計測対象物の形状を示すX軸方向の位相値及びY軸方向の位相値で構成された第一の位相データを画素ごとに生成する。同時に、第二の受光部1003で受光した受光信号に基づいて、計測対象物の形状を示すX軸方向の位相値及びY軸方向の位相値で構成された第二の位相データを画素ごとに生成する。同様に、第三の受光部1009で受光した受光信号に基づいて、計測対象物の形状を示すX軸方向の位相値及びY軸方向の位相値で構成された第三の位相データ、第四の受光部1010で受光した受光信号に基づいて、計測対象物の形状を示すX軸方向の位相値及びY軸方向の位相値で構成された第四の位相データも画素ごとに生成する。
本実施の形態では、X軸方向に直交する方向の縦縞パターンと、Y軸方向に直交する方向の横縞パターンとを用いて、画素ごとの位相データを正確に特定する。つまり、X軸方向の位相値がX軸座標値、Y軸方向の位相値がY軸座標値としてプロジェクタ空間上の座標値(X,Y)を求めることになる。
図9は、本発明の実施の形態に係る三次元形状計測装置1で用いる縦縞パターンの例示図であり、図10は、本発明の実施の形態に係る三次元形状計測装置1で用いる横縞パターンの例示図である。図9(a)〜図9(d)では、正弦波状の縦方向の縞パターンを位相間隔π/2ずつスライドさせたものを表示している。また、図9(e)〜図9(h)は、グレーコード化された空間コードを表示している。これら8枚の縞パターンをそれぞれシフトさせながら投光して計測対象物を撮像することにより、X軸方向の位相値を一意に特定することができる。
同様に、図10(a)〜図10(d)では、正弦波状の横方向の縞パターンを位相間隔π/2ずつスライドさせたものを表示している。また、図10(e)〜図10(h)は、グレーコード化された空間コードを表示している。これら8枚の縞パターンをそれぞれシフトさせながら投光して計測対象物を撮像することにより、Y軸方向の位相値を一意に特定することができる。
図11は、本発明の実施の形態に係る三次元形状計測装置1のプロジェクト空間上での座標値を特定する方法の説明図である。まず、図9に示す縦縞パターンを用いることにより、図11(a)におけるX座標値を位相値として特定する。
同様に、図10に示す横縞パターンを用いることにより、図11(b)におけるY座標値を位相値として特定する。X座標値とY座標値を特定することで、図11(c)に示すプロジェクト空間座標において、一意に座標値(X,Y)を特定することができる。
図5に戻って、形状データ生成部1005は、第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する。具体的には、画素ごとにプロジェクト空間座標における座標値が特定されるので、高さ計測用パラメータを用いて座標値(X,Y,Z)を求める。
合成処理部1006は、画素ごとの位相データに基づいて、画素ごとの三次元形状データをカメラごとにプロジェクタ空間座標にマッピングする。具体的には、生成された第一の位相データと第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、第一の三次元形状データと第二の三次元形状データとを合成して合成三次元形状データを生成する。三次元形状データを合成する方法は、特に限定されるものではない。
次に、プロジェクタ空間座標上で一定間隔ごとに座標値をサンプリングし、カメラごとにサンプリング点近傍の三次元形状データに基づいてサンプリング点の三次元形状データを算出する。本実施の形態では、サンプリング点におけるカメラごとの三次元形状データの平均化処理を実行する。
例えば、図4に示すように、カメラ22aとカメラ22cとの間で三次元形状データの合成処理を実行し、カメラ22bとカメラ22dとの間で三次元形状データの合成処理を実行する。そして、合成された2つの合成三次元形状データに対してさらに合成処理を実行することで、最終的な合成三次元形状データを得る。
なお、合成処理部1006は、差分算出部1007と差分判断部1008とを備えることが好ましい。差分算出部1007は、画素ごとの第一の三次元形状データと第二の三次元形状データとの差分を算出する。差分判断部1008は、算出した差分が所定の閾値以上であるか否かを判断する。
そして、画素ごとの第一の三次元形状データと第二の三次元形状データとの差分が、所定の閾値以上であると判断した場合、差分が所定の閾値以上である画素については第一の三次元形状データと第二の三次元形状データとを合成せず、三次元形状データを無効として除外することで合成三次元形状データには含ませない。
以下、2基のカメラ22で求めた三次元形状データの合成処理について説明する。図12は、本発明の実施の形態に係る三次元形状計測装置1のCPU11の2基のカメラ22の画像に基づいて生成された三次元形状データの合成処理の手順を示すフローチャートである。
図12に示すように、三次元形状計測装置1のCPU11は、2基のカメラ22の画像に基づいて生成されたそれぞれの(2つの)三次元形状データを取得する(ステップS1201)。CPU11は、カメラごとに三次元形状データをプロジェクタ空間座標にマッピングして(ステップS1202)、カメラごとに、プロジェクタ空間座標上のサンプリング点における三次元形状データを算出する(ステップS1203)。CPU11は、一の位相データを選択する(ステップS1204)。
CPU11は、選択した位相データに三次元形状データが存在するか否かを判断する(ステップS1205)。具体的には、位相データに対応する三次元座標値(X,Y,Z)が存在するか否かを判断する。CPU11が、三次元形状データが存在しないと判断した場合(ステップS1205:NO)、CPU11は、選択した位相データの三次元形状データを無効として、以下の合成処理から除外し(ステップS1206)、後述するステップS1214を実行する。
CPU11が、三次元形状データが存在すると判断した場合(ステップS1205:YES)、CPU11は、選択された位相データに両方の三次元形状データが存在するか否かを判断する(ステップS1207)。CPU11が、一方のカメラにしか三次元形状データが存在しないと判断した場合(ステップS1207:NO)、CPU11は、存在する三次元形状データをそのまま合成処理に使用し(ステップS1208)、一方にしか三次元形状データが存在しない位相データであることを明確にするために、その旨を示すフラグを付与する(ステップS1209)。CPU11は、後述するステップS1214を実行する。
CPU11が、両方の三次元形状データが存在すると判断した場合(ステップS1207:YES)、CPU11は、両方の三次元形状データの差分を算出して(ステップS1210)、算出した差分が所定の閾値以上であるか否かを判断する(ステップS1211)。CPU11が、算出した差分が所定の閾値以上であると判断した場合(ステップS1211:YES)、CPU11は、選択した位相データの三次元形状データを無効として、以下の合成処理から除外し(ステップS1212)、後述するステップS1214を実行する。
CPU11が、算出した差分が所定の閾値より小さいと判断した場合(ステップS1211:NO)、CPU11は、両方の三次元形状データの平均値を算出する(ステップS1213)。CPU11は、すべての位相データについて合成処理が終了したか否かを判断する(ステップS1214)。
CPU11が、まだ合成処理を行っていない位相データが存在すると判断した場合(ステップS1214:NO)、CPU11は、他の位相データを選択して(ステップS1215)、処理をステップS1205へ戻して上述した処理を繰り返す。CPU11が、すべての位相データについて合成処理が終了したと判断した場合(ステップS1214:YES)、CPU11は処理を終了する。
上述した処理手順により、カメラ22aとカメラ22cとで生成された三次元形状データ、及びカメラ22bとカメラ22dとで生成された三次元形状データの、それぞれの合成三次元形状データが生成される。最後に両者を合成して、最終的な合成三次元形状データを生成する。図13は、本発明の実施の形態に係る三次元形状計測装置1のCPU11の2組の合成三次元形状データの合成処理の手順を示すフローチャートである。
図13に示すように、三次元形状計測装置1のCPU11は、2組の合成三次元形状データを取得する(ステップS1301)。CPU11は、一の位相データを選択する(ステップS1302)。
CPU11は、選択した位相データに三次元形状データが存在するか否かを判断する(ステップS1303)。具体的には、位相データに対応する三次元座標値(X,Y,Z)が存在するか否かを判断する。CPU11が、三次元形状データが存在しないと判断した場合(ステップS1303:NO)、CPU11は、選択した位相データの三次元形状データを無効として、以下の合成処理から除外し(ステップS1304)、後述するステップS1312を実行する。
CPU11が、三次元形状データが存在すると判断した場合(ステップS1303:YES)、CPU11は、選択された位相データに両方の三次元形状データが存在するか否かを判断する(ステップS1305)。CPU11が、一方のカメラにしか三次元形状データが存在しないと判断した場合(ステップS1305:NO)、CPU11は、存在する三次元形状データをそのまま合成処理に使用し(ステップS1306)、一方にしか三次元形状データが存在しない位相データであることを明確にするために、その旨を示すフラグを付与する(ステップS1307)。CPU11は、後述するステップS1312を実行する。
CPU11が、両方の三次元形状データが存在すると判断した場合(ステップS1305:YES)、CPU11は、両方の三次元形状データの差分を算出して(ステップS1308)、算出した差分が所定の閾値以上であるか否かを判断する(ステップS1309)。CPU11が、算出した差分が所定の閾値以上であると判断した場合(ステップS1309:YES)、CPU11は、選択した位相データの三次元形状データを無効として、以下の合成処理から除外し(ステップS1310)、後述するステップS1312を実行する。
CPU11が、算出した差分が所定の閾値より小さいと判断した場合(ステップS1309:NO)、CPU11は、両方の三次元形状データの平均値を算出する(ステップS1311)。CPU11は、すべての位相データについて合成処理が終了したか否かを判断する(ステップS1312)。
CPU11が、まだ合成処理を行っていない位相データが存在すると判断した場合(ステップS1312:NO)、CPU11は、他の位相データを選択して(ステップS1313)、処理をステップS1303へ戻して上述した処理を繰り返す。CPU11が、すべての位相データについて合成処理が終了したと判断した場合(ステップS1312:YES)、CPU11は処理を終了する。
図14は、本発明の実施の形態に係る三次元形状計測装置1のCPU11の三次元計測処理の手順を示すフローチャートである。図14に示すように、三次元形状計測装置1のCPU11は、周期的縞パターンの投光指示を撮像部2へ送信し(ステップS1401)、複数のカメラ22で撮像された画像データを取得する(ステップS1402)。
CPU11は、カメラ単位で画素ごとに交差する軸方向それぞれの位相値を算出する(ステップS1403)。本実施の形態では、画素ごとにX軸方向及びY軸方向の位相値であるX位相値及びY位相値を算出する。
CPU11は、画素ごとの三次元座標値(X,Y,Z)を算出して、三次元形状データをカメラ22ごとに生成する(ステップS1404)。具体的には、算出したX軸方向及びY軸方向の位相値と、それを撮像したカメラ22の高さ計測用パラメータとにより、三次元座標値を算出する。
ここで、同じ計測対象物を撮像した場合であっても、高さ計測用パラメータの誤差等により算出した三次元座標値は変動する。そこでCPU11は、カメラごとの同一位相値ごとに三次元形状データを合成することにより、合成三次元形状データを生成する(ステップS1405)。
合成処理は、座標値の平均値を算出することにより行われる。カメラ22が2基の場合には、同一の位相データの三次元形状データの両者の平均値を、カメラ22が4基の場合には、同一の位相データの三次元形状データの四者の平均値を求める。合成三次元形状データに、周辺と比べ大きく値が異なる特異点が表出した場合には、フラグの有無を確認し、フラグが付与されている位相データである場合には、当該位相データの三次元形状データを無効とすることにより改善することができる。
以上のように本実施の形態によれば、計測対象物の同一部位のデータに基づいて合成三次元形状データを得ることができるので、色の境界や輪郭付近においてもノイズが少なく、高い解像度を維持した合成三次元形状データを得ることが可能となる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨の範囲内であれば多種の変更、改良等が可能である。例えば、カメラ22の数も上記実施例に限定されるものではなく、少なくとも2基以上備えていれば足りる。
また、縞パターンについても上記実施例に限定されるものではなく、正弦波状の位相を等間隔にシフトさせたパターン数と、グレーコードのビット数(グレーコードの縞パターン数)とが相違していても良い。さらに位相を等間隔にシフトさせた正弦波状の複数の縞パターンを、異なる複数の周期分を用いた複数のパターンであっても良い。
1 三次元形状計測装置
2 撮像部
4 ロボットコントローラ
5 ロボット
11 CPU
21 プロジェクタ
22、22a、22b、22c、22d カメラ
50 把持部

Claims (12)

  1. 周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射する投光部と、
    照射された光を第一の方向で受光し、受光量を示す受光信号を出力する第一の受光部と、
    照射された光を第二の方向で受光し、受光量を示す受光信号を出力する第二の受光部と、
    前記第一の受光部で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データを画素ごとに生成し、前記第二の受光部で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第二の位相データを画素ごとに生成する位相データ生成部と、
    前記第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、前記第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する形状データ生成部と、
    生成された前記第一の位相データと前記第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、前記第一の三次元形状データと前記第二の三次元形状データとを合成して合成三次元形状データを生成する合成処理部と
    を備えることを特徴とする三次元形状計測装置。
  2. 前記合成処理部は、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの平均値を算出することを特徴とする請求項1に記載の三次元形状計測装置。
  3. 前記合成処理部は、
    位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの差分を算出する差分算出部と、
    算出した差分が所定の閾値以上であるか否かを判断する差分判断部と
    を備え、
    算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては前記第一の三次元形状データと前記第二の三次元形状データとを合成しないことを特徴とする請求項1又は2に記載の三次元形状計測装置。
  4. 前記パターンは縞パターンであることを特徴とする請求項1乃至3のいずれか一項に記載の三次元形状計測装置。
  5. 計測対象物の三次元座標値を計測する三次元形状計測装置で実行することが可能な三次元形状計測方法であって、
    前記三次元形状計測装置は、
    周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射する第一の工程と、
    照射された光を第一の方向で受光し、受光量を示す受光信号を出力する第二の工程と、
    照射された光を第二の方向で受光し、受光量を示す受光信号を出力する第三の工程と、
    前記第二の工程で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データを画素ごとに生成し、前記第三の工程で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第二の位相データを画素ごとに生成する第四の工程と、
    前記第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、前記第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する第五の工程と、
    生成された前記第一の位相データと前記第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、前記第一の三次元形状データと前記第二の三次元形状データとを合成して合成三次元形状データを生成する第六の工程と
    を含むことを特徴とする三次元形状計測方法。
  6. 前記第六の工程は、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの平均値を算出することを特徴とする請求項5に記載の三次元形状計測方法。
  7. 前記第六の工程は、
    位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの差分を算出する第七の工程と、
    算出した差分が所定の閾値以上であるか否かを判断する第八の工程と
    を含み、
    算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては前記第一の三次元形状データと前記第二の三次元形状データとを合成しないことを特徴とする請求項5又は6に記載の三次元形状計測方法。
  8. 前記パターンは縞パターンであることを特徴とする請求項5乃至7のいずれか一項に記載の三次元形状計測方法。
  9. 計測対象物の三次元座標値を計測する三次元形状計測装置で実行することが可能なコンピュータプログラムであって、
    前記三次元形状計測装置を、
    周期的なパターンを有する光を、互いに交差する軸方向にそれぞれ位相シフトさせながら計測対象物に複数回照射する投光手段、
    照射された光を第一の方向で受光し、受光量を示す受光信号を出力する第一の受光手段、
    照射された光を第二の方向で受光し、受光量を示す受光信号を出力する第二の受光手段、
    前記第一の受光手段で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第一の位相データを画素ごとに生成し、前記第二の受光手段で受光した受光信号に基づいて、計測対象物の形状を示す一方の軸方向の位相値及び他方の軸方向の位相値で構成された第二の位相データを画素ごとに生成する位相データ生成手段、
    前記第一の位相データに基づいて計測対象物の第一の三次元形状データを生成し、前記第二の位相データに基づいて計測対象物の第二の三次元形状データを生成する形状データ生成手段、及び
    生成された前記第一の位相データと前記第二の位相データとが同一である位相データを有する第一の三次元形状データ及び第二の三次元形状データを特定し、前記第一の三次元形状データと前記第二の三次元形状データとを合成して合成三次元形状データを生成する合成処理手段
    として機能させることを特徴とするコンピュータプログラム。
  10. 前記合成処理手段を、位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの平均値を算出する手段として機能させることを特徴とする請求項9に記載のコンピュータプログラム。
  11. 前記合成処理手段を、
    位相データごとに、該位相データに対応する前記第一の三次元形状データと前記第二の三次元形状データとの差分を算出する差分算出手段、及び
    算出した差分が所定の閾値以上であるか否かを判断する差分判断手段
    として機能させ、
    算出した差分が所定の閾値以上であると判断した場合、差分が所定の閾値以上である位相データについては前記第一の三次元形状データと前記第二の三次元形状データとを合成しないことを特徴とする請求項9又は10に記載のコンピュータプログラム。
  12. 前記パターンは縞パターンであることを特徴とする請求項9乃至11のいずれか一項に記載のコンピュータプログラム。
JP2017040636A 2017-03-03 2017-03-03 三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム Pending JP2018146348A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017040636A JP2018146348A (ja) 2017-03-03 2017-03-03 三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017040636A JP2018146348A (ja) 2017-03-03 2017-03-03 三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム

Publications (1)

Publication Number Publication Date
JP2018146348A true JP2018146348A (ja) 2018-09-20

Family

ID=63590993

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017040636A Pending JP2018146348A (ja) 2017-03-03 2017-03-03 三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP2018146348A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020180948A (ja) * 2019-04-26 2020-11-05 株式会社キーエンス 三次元測定装置及び三次元測定方法
CN117190910A (zh) * 2023-09-05 2023-12-08 南京信息工程大学 一种多元格雷相位编码的高频条纹解包裹方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013187204A1 (ja) * 2012-06-13 2013-12-19 株式会社島精機製作所 3次元計測装置のための合成パラメータの生成装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013187204A1 (ja) * 2012-06-13 2013-12-19 株式会社島精機製作所 3次元計測装置のための合成パラメータの生成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020180948A (ja) * 2019-04-26 2020-11-05 株式会社キーエンス 三次元測定装置及び三次元測定方法
JP7202966B2 (ja) 2019-04-26 2023-01-12 株式会社キーエンス 三次元測定装置及び三次元測定方法
CN117190910A (zh) * 2023-09-05 2023-12-08 南京信息工程大学 一种多元格雷相位编码的高频条纹解包裹方法
CN117190910B (zh) * 2023-09-05 2024-04-05 南京信息工程大学 一种多元格雷相位编码的高频条纹解包裹方法

Similar Documents

Publication Publication Date Title
JP5346033B2 (ja) 物体の三次元形状を光学的に測定する方法
JP5583761B2 (ja) 動的基準フレームを用いた3次元表面検出方法及び装置
JP6429772B2 (ja) 3d走査および位置決めシステム
US10218955B2 (en) Motion blur compensation
JP5757950B2 (ja) 非接触物体測定
US8923603B2 (en) Non-contact measurement apparatus and method
JP2017528727A (ja) 2dカメラ画像からの3d画像の生成に当たり3d計量器と併用される拡張現実カメラ
US20200278197A1 (en) Measurement apparatus, measurement method, system, storage medium, and information processing apparatus
JP5132832B1 (ja) 計測装置および情報処理装置
JP5032943B2 (ja) 3次元形状計測装置及び3次元形状計測方法
JP4830871B2 (ja) 3次元形状計測装置及び3次元形状計測方法
JP6016912B2 (ja) 3次元計測装置と3次元計測方法
JP2018514237A (ja) 歯科用3dスキャナ用のテクスチャマッピングの装置及び方法
JP2004144557A (ja) 3次元視覚センサ
JP2008076303A (ja) 位置測定装置及び位置測定方法及び位置測定プログラム
JPWO2008078744A1 (ja) パターン投影法による3次元形状計測装置、方法およびプログラム
KR20000071453A (ko) 렌지파인더 장치
JP2021117228A (ja) 三次元形状測定装置及び三次元形状測定方法
KR20150133591A (ko) 3차원 영상 획득 방법, 장치 및 컴퓨터 판독 가능한 기록 매체
JP2018146348A (ja) 三次元形状計測装置、三次元形状計測方法、及びコンピュータプログラム
JP2015523108A (ja) 歯の状況の測定方法
JP6486083B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20210183092A1 (en) Measuring apparatus, measuring method and microscope system
JP2011075336A (ja) 3次元形状計測装置、3次元形状計測方法
JP2003279332A (ja) 3次元形状入力装置および位置ずれ検出方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210420

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211026