(57)【特許請求の範囲】
【請求項１】
複数のスリット光を計測対象物に照射する照射部と、
前記照射部の一方側に前記照射部の位置から第一の所定距離だけ離れた位置に配置され、前記計測対象物を撮像する第一撮像部と、
前記照射部の前記一方側に前記照射部の位置から前記第一の所定距離より大きい第二の所定距離だけ離れた位置に配置され、前記計測対象物を撮像する第二撮像部と、
前記第一撮像部が撮像した複数のスリット光が、第一スリット光群画像として記憶される第一記憶部と、
前記第二撮像部が撮像した画像に含まれる複数のスリット光が、第二スリット光群画像として記憶される第二記憶部と、
前記第一撮像部が撮像する画像内の位置を示す座標と、前記第二撮像部が撮像する画像内の位置を示す座標との座標変換情報が記憶されている第三記憶部と、
前記第一記憶部に記憶される前記第一スリット光群画像の中から、前記複数のスリット光毎にスリット光画像を抽出する第一抽出部と、
前記第一抽出部が抽出するスリット光画像と、前記第三記憶部に記憶されている前記座標変換情報とに基づいて、前記第二記憶部に記憶される前記第二スリット光群画像の中から、前記第一スリット光群画像に含まれる前記複数のスリット光のそれぞれに対応するスリット光画像をそれぞれ抽出する第二抽出部と、
前記第二抽出部が抽出するスリット光画像に基づいて、前記計測対象物の三次元形状を算出する三次元形状算出部と
を備える三次元形状測定装置。
【請求項２】
前記第二抽出部は、
前記第一抽出部が抽出するスリット光画像内のスリット光の座標が前記座標変換情報によって座標変換された座標変換後のスリット光の座標と、前記第二スリット光群画像内のスリット光の座標との対応に基づいて、前記第二記憶部に記憶される前記第二スリット光群画像の中から、前記第一スリット光群画像に含まれる前記複数のスリット光のそれぞれに対応するスリット光画像をそれぞれ抽出する
請求項１に記載の三次元形状測定装置。
【請求項３】
前記第二抽出部は、
前記第二スリット光群画像に含まれる前記複数のスリット光画像のうち、前記座標変換後のスリット光の座標を含む所定の座標範囲内に、スリット光の座標が含まれるスリット光画像を、前記座標変換後のスリット光に対応するスリット光画像として抽出する
請求項２に記載の三次元形状測定装置。
【請求項４】
前記第二抽出部は、
前記第二スリット光群画像に対して、前記第一抽出部が抽出するスリット光画像の数に対応する数の抽出窓を設け、かつ前記抽出窓毎に、前記抽出窓に含まれる複数のスリット光画像の中から、前記第一抽出部が抽出したスリット光画像に対応するスリット光画像を選択することにより、前記三次元形状算出部に供給されるスリット光画像を抽出する
請求項１から請求項３のいずれか一項に記載の三次元形状測定装置。
【請求項５】
前記第二抽出部は、
前記第二スリット光群画像に含まれる前記複数のスリット光画像について、スリット光画像どうしの交点がある場合に、スリット光画像どうしの交点を除外してスリット光画像を抽出する
請求項１から請求項４のいずれか一項に記載の三次元形状測定装置。
【請求項６】
前記三次元形状算出部が算出する前記計測対象物の三次元形状を示す点群データが、前記三次元形状算出部が前記点群データを算出する毎に順次記憶される第四記憶部と、
前記三次元形状算出部が算出する前記点群データと、前記第四記憶部に記憶されている過去に算出された前記点群データとの比較に基づいて、前記計測対象物に対する前記第二撮像部の移動の軌跡を算出する軌跡算出部と、
をさらに備える請求項１から請求項５のいずれか一項に記載の三次元形状測定装置。
【請求項７】
前記三次元形状算出部は、
算出した前記計測対象物の三次元形状を、複数の前記点群データどうしの比較に基づいて補正する
請求項６に記載の三次元形状測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、可搬型の三次元形状測定装置に関する。
【背景技術】
【０００２】
従来、レーザー光を測定対象物に照射し、その反射光を２台のカメラによって撮像することにより、測定装置と測定対象物との相対的な位置関係に基づいて測定対象物の形状を測定するとともに、特に高さ方向の測定精度を向上させる技術が提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２１０２５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の技術によると、測定装置を可搬型にした場合には、測定装置と測定対象物との相対的な位置関係を特定することが困難であるため、測定対象物の形状を高精度に測定することができないという問題があった。すなわち、特許文献１に記載の技術によると、可搬型の三次元形状測定装置による測定精度を向上させることができないという問題があった。
【０００５】
本発明は上記の点に鑑みてなされたものであり、可搬型の三次元形状測定装置による測定精度を向上することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一つの態様に係る三次元形状測定装置は、複数のスリット光を計測対象物に照射する照射部と、前記照射部の一方側に前記照射部の位置から第一の所定距離だけ離れた位置に配置され、前記計測対象物を撮像する第一撮像部と、前記照射部の前記一方側に前記照射部の位置から前記第一の所定距離より大きい第二の所定距離だけ離れた位置に配置され、前記計測対象物を撮像する第二撮像部と、前記第一撮像部が撮像した複数のスリット光が、第一スリット光群画像として記憶される第一記憶部と、前記第二撮像部が撮像した画像に含まれる複数のスリット光が、第二スリット光群画像として記憶される第二記憶部と、前記第一撮像部が撮像する画像内の位置を示す座標と、前記第二撮像部が撮像する画像内の位置を示す座標との座標変換情報が記憶されている第三記憶部と、前記第一記憶部に記憶される前記第一スリット光群画像の中から、前記複数のスリット光毎にスリット光画像を抽出する第一抽出部と、前記第一抽出部が抽出するスリット光画像と、前記第三記憶部に記憶されている前記座標変換情報とに基づいて、前記第二記憶部に記憶される前記第二スリット光群画像の中から、前記第一スリット光群画像に含まれる前記複数のスリット光のそれぞれに対応するスリット光画像をそれぞれ抽出する第二抽出部と、前記第二抽出部が抽出するスリット光画像に基づいて、前記計測対象物の三次元形状を算出する三次元形状算出部とを備える。
【発明の効果】
【０００７】
本発明によれば、可搬型の三次元形状測定装置による測定精度を向上することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態の三次元形状測定装置の使用例を示す模式図である。
【図２】本実施形態の三次元形状測定装置の構成の概要を示すブロック図である。
【図３】本実施形態の三次元形状測定装置の撮像部間の位置関係の一例を示す模式図である。
【図４】本実施形態の三次元形状測定装置の撮像部の撮像する角度の一例を示す模式図である。
【図５】本実施形態の三次元形状測定装置の機能構成の一例を示すブロック図である。
【図６】第一スリット光群画像、及び第一スリット光群画像の抽出ウインドウの一例を示す模式図である。
【図７】第二スリット光群画像、及び第二スリット光群画像の第二抽出ウインドウの一例を示す模式図である。
【図８】スリット光についての第二スリット光群画像の抽出ウインドウの一例を示す模式図である。
【図９】本実施形態の三次元形状測定装置の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
［実施形態］
以下、図面を参照しながら本実施形態について説明する。まず、図１及び図２を参照して、三次元形状測定装置１の概要について説明する。
図１は、本実施形態の三次元形状測定装置１の使用例を示す模式図である。
図２は、本実施形態の三次元形状測定装置１の構成の概要を示すブロック図である。
この三次元形状測定装置１は、可搬型の装置であり、計測対象物の三次元形状を測定する。以下の説明では、三次元形状測定装置１が、ハンディー三次元スキャナーである場合を一例にして説明する。また、図１に示すように、三次元形状測定装置１が、測定台ＴＢＬの上に載置された計測対象物Ｍの三次元形状を測定する場合を一例にして説明する。
【００１０】
三次元形状測定装置１は、照射部１０と、第一撮像部２０と、第二撮像部３０とを備えている。
照射部１０は、照射軸ＡＸＳＬに沿って、複数のスリット光ＳＬを計測対象物Ｍに照射する。この一例においては、照射部１０は、スリット光ＳＬ１からスリット光ＳＬ８までの互いに平行な８本のスリット光ＳＬを計測対象物Ｍに照射する。照射部１０がスリット光ＳＬを照射することにより、計測対象物Ｍの表面には、計測対象物Ｍの表面の形状に応じて変形したスリット光ＳＬが現れる。
なお、ここでは、スリット光ＳＬの本数が８本である場合を一例にして説明するが、これに限られない。スリット光ＳＬの本数は、例えば、２０〜３０本であってもよい。
【００１１】
第一撮像部２０は、撮像軸ＡＸ１に沿って、計測対象物Ｍを撮像する。この第一撮像部２０が撮像した画像には、計測対象物Ｍの表面の形状に応じて変形した複数のスリット光ＳＬが含まれる。以下の説明において、この第一撮像部２０が撮像した画像を、第一スリット光群画像Ｐ１とも称する。
【００１２】
第二撮像部３０は、撮像軸ＡＸ２に沿って、計測対象物Ｍを撮像する。この第二撮像部３０が撮像した画像には、計測対象物Ｍの表面の形状に応じて変形した複数のスリット光ＳＬが含まれる。以下の説明において、この第二撮像部３０が撮像した画像を、第二スリット光群画像Ｐ２とも称する。
三次元形状測定装置１は、これら第一スリット光群画像Ｐ１、又は第二スリット光群画像Ｐ２に基づいて、計測対象物Ｍの三次元形状を測定する。なお、以下の説明において、第一撮像部２０と、第二撮像部３０とを総称する場合には、単に撮像部と記載する。
【００１３】
この三次元形状測定装置１は、可搬型であるため、自装置と、測定台ＴＢＬとの相対位置が不定である。ここで、２つの座標系を示す。第１の座標系とは、三次元形状測定装置１の測定方向を示すｘｙｚ直交座標系である。第２の座標系とは、測定台ＴＢＬ上の計測対象物Ｍの方向を示すＸＹＺ直交座標系である。
第１の座標系、すなわちｘｙｚ直交座標系のｚ軸とは、照射軸ＡＸＳＬに平行な軸である。ｘ軸とは、照射部１０が照射するスリット光ＳＬが延びる方向を示す軸である。ｙ軸とは、ｚ軸に直交する平面のうち、照射部１０、第一撮像部２０、第二撮像部３０が並んで配置される方向を示す軸である。第一撮像部２０が撮像する画像の座標、及び第二撮像部３０が撮像する画像の座標は、ｘｙｚ直交座標系のｘ軸及びｙ軸によって示される。第一撮像部２０が撮像する画像の座標と、第二撮像部３０が撮像する画像の座標とを区別する場合には、第一撮像部２０が撮像する画像の座標をｘ１軸及びｙ１軸によって、第二撮像部３０が撮像する画像の座標をｘ２軸及びｙ２軸によって示す。
第２の座標系、すなわちＸＹＺ直交座標系のＺ軸とは、測定台ＴＢＬ上の計測対象物Ｍの鉛直方向、つまり高さを示す軸である。Ｘ軸、Ｙ軸とは、それぞれ測定台ＴＢＬの平面上の位置を示す軸である。
【００１４】
次に、図２を参照して、三次元形状測定装置１の構成の概要について説明する。三次元形状測定装置１は、上述した照射部１０、第一撮像部２０、第二撮像部３０に加え、記憶部４０と、制御部５０と、表示部６０と、操作部７０と、Ｉ／Ｏポート８０とを備えている。
【００１５】
表示部６０は、液晶ディスプレイ等を備えており、制御部５０の制御に基づいて、三次元形状測定装置１の動作状態を示す画像等を表示する。
操作部７０は、三次元形状測定装置１の操作者によって操作される押しボタンスイッチやタッチパネル等を備えている。
Ｉ／Ｏポート８０は、メモリカード等の外部機器との通信端子を備えており、接続された外部機器との間において、データの授受を行う。このデータには、三次元形状測定結果のデータが含まれる。
なお、これら表示部６０、操作部７０、及びＩ／Ｏポート８０は、三次元形状測定装置１において必須の構成ではない。三次元形状測定装置１は、これらの一部又は全部を備えていなくてもよい。
【００１６】
記憶部４０は、揮発性のメモリ又は不揮発性のメモリを備えており、各種の情報を記憶する。この記憶部４０は、第一記憶部４１と、第二記憶部４２と、第三記憶部４３とを備えている。
第一記憶部４１には、第一撮像部２０が撮像した画像、すなわち第一スリット光群画像Ｐ１が記憶される。
第二記憶部４２には、第二撮像部３０が撮像した画像、すなわち第二スリット光群画像Ｐ２が記憶される。
第三記憶部４３には、第一撮像部２０が撮像する画像内の位置を示す座標と、第二撮像部３０が撮像する画像内の位置を示す座標との座標変換情報が、予め記憶されている。すなわち、第三記憶部４３には、撮像部間の位置関係を示す情報が予め記憶されている。ここで、図３を参照して、撮像部間の位置関係の具体例について説明する。
【００１７】
図３は、本実施形態の三次元形状測定装置１の撮像部間の位置関係の一例を示す模式図である。同図に示すように、照射部１０、第一撮像部２０、第二撮像部３０は、ｙ軸方向に延びる中心線ＣＬに沿って配置される。照射部１０の中心位置と、第一撮像部２０の中心位置との間の距離は、距離Ｌ１である。すなわち、第一撮像部２０は、照射部１０の一方側に照射部１０の位置から第一の所定距離である距離Ｌ１だけ離れた位置に配置される。また、照射部１０の中心位置と、第二撮像部３０の中心位置との間の距離は、距離Ｌ２である。このとき、距離Ｌ２は、距離Ｌ１よりも大きい。すなわち、第二撮像部３０は、照射部１０の一方側に照射部１０の位置から、距離Ｌ１より大きい距離Ｌ２だけ離れた位置に配置される。換言すれば、第二撮像部３０は、照射部１０の一方側に照射部１０の位置から、第二の所定距離である距離Ｌ２だけ離れた位置に配置される。
【００１８】
次に、図４を参照して、撮像部が撮像する角度の一例について説明する。
図４は、本実施形態の三次元形状測定装置１の撮像部の撮像する角度の一例を示す模式図である。同図に示すように、照射部１０の照射軸ＡＸＳＬを基準にした場合、第一撮像部２０は、交点ＴＰを中心にしたｘ軸周りに角度θ１の方向から撮像する。すなわち、照射部１０の照射軸ＡＸＳＬと、第一撮像部２０の撮像軸ＡＸ１とのなす角の大きさは、角度θ１である。
また、照射部１０の照射軸ＡＸＳＬを基準にした場合、第二撮像部３０は、交点ＴＰを中心にしたｘ軸周りに角度θ２の方向から撮像する。すなわち、照射部１０の照射軸ＡＸＳＬと、第二撮像部３０の撮像軸ＡＸ２とのなす角の大きさは、角度θ２である。
なお、上述したように距離Ｌ２は、距離Ｌ１よりも大きいため、角度θ２は、角度θ１よりも大きい。例えば、角度θ１は、約２度であり、角度θ２は、約１５〜２５度である。
【００１９】
なお、本実施形態の照射部１０、第一撮像部２０及び第二撮像部３０は、図１に示すｙ軸方向に照射部１０、第一撮像部２０、第二撮像部３０の順に配置されているが、これに限られない。照射部１０の照射軸ＡＸＳＬと第一撮像部２０の撮像軸ＡＸ１とがなす角の大きさと、照射部１０の照射軸ＡＸＳＬと第二撮像部３０の撮像軸ＡＸ２とがなす角の大きさとが相違していれば、これら各部の配置は例示したものに限られない。具体的には、照射部１０、第一撮像部２０及び第二撮像部３０は、図１に示すｙ軸方向に照射部１０、第二撮像部３０、第一撮像部２０の順に配置されてもよい。また、照射部１０、第一撮像部２０及び第二撮像部３０は、図１に示すｙ軸方向に第一撮像部２０、照射部１０、第二撮像部３０の順に配置されてもよい。
【００２０】
図２に戻り、制御部５０は、ＣＰＵ（中央演算処理装置）を備えており、三次元形状測定装置１の各部の制御を行なう。この制御部５０の機能の詳細について、図５を参照して説明する。
【００２１】
図５は、本実施形態の三次元形状測定装置１の機能構成の一例を示すブロック図である。制御部５０は、照射部１０による照射、撮像部による撮像を制御する。具体的には、制御部５０は、操作者が操作部７０を操作したことを検出すると、照射部１０にスリット光ＳＬの照射指令を出力するとともに、第一撮像部２０及び第二撮像部３０に対して、同時に撮像指令を出力する。第一撮像部２０は、撮像した画像、すなわち第一スリット光群画像Ｐ１を第一記憶部４１に記憶させる。第二撮像部３０は、撮像した画像、すなわち第二スリット光群画像Ｐ２を第二記憶部４２に記憶させる。
【００２２】
制御部５０は、第一抽出部５１と、第二抽出部５２と、三次元形状算出部５３とを、その機能部として備えている。
【００２３】
第一抽出部５１、及び第二抽出部５２は、いずれもスリット光ＳＬの画像を抽出する。第一抽出部５１は、第一記憶部４１に記憶された第一スリット光群画像Ｐ１から、スリット光ＳＬの画像を抽出する。第二抽出部５２は、第二記憶部４２に記憶された第二スリット光群画像Ｐ２から、スリット光ＳＬの画像を抽出する。三次元形状算出部５３は、第二抽出部５２が抽出したスリット光ＳＬの画像に含まれる、スリット光ＳＬの形状に基づいて、計測対象物Ｍの三次元形状を算出する。
【００２４】
［スリット光ＳＬの画像の抽出：概要］
図６は、第一スリット光群画像Ｐ１、及び第一スリット光群画像Ｐ１の抽出ウインドウの一例を示す模式図である。第一スリット光群画像Ｐ１において座標を示す場合には、上述したｘ１軸及びｙ１軸を座標軸にして説明する。図７は、第二スリット光群画像Ｐ２、及び第二スリット光群画像Ｐ２の抽出ウインドウの一例を示す模式図である。第二スリット光群画像Ｐ２において座標を示す場合には、上述したｘ２軸及びｙ２軸を座標軸にして説明する。また、第一スリット光群画像Ｐ１と、第二スリット光群画像Ｐ２とを区別せずにスリット光群画像上の座標を示す場合には、ｘ軸及びｙ軸を座標軸にして説明する。
【００２５】
ここで、図６に示す第一スリット光群画像Ｐ１と、図７に示す第二スリット光群画像Ｐ２との相違点について説明する。上述したように、第一スリット光群画像Ｐ１と、第二スリット光群画像Ｐ２とは、同一の計測対象物Ｍの同一部分が、同時に撮像された画像である。つまり、第一スリット光群画像Ｐ１に含まれるスリット光ＳＬの画像、及び、第二スリット光群画像Ｐ２に含まれるスリット光ＳＬの画像は、いずれも同一の計測対象物Ｍの形状を示している。
上述したように、第二スリット光群画像Ｐ２は、照射軸ＡＸＳＬに対して、第一スリット光群画像Ｐ１の角度θ１よりも大きな角度θ２によって撮像されている。したがって、第二スリット光群画像Ｐ２においては、計測対象物Ｍの形状変化に伴うスリット光ＳＬの形状変化が、第一スリット光群画像Ｐ１よりも大きく現れる。つまり、第二スリット光群画像Ｐ２は、第一スリット光群画像Ｐ１に比べて、計測対象物Ｍの形状変化をより詳細に示している。したがって、計測対象物Ｍの三次元形状を算出する場合、第二スリット光群画像Ｐ２に基づいて算出する方が、第一スリット光群画像Ｐ１に基づいて算出するよりも、より精度の高い算出が可能になる。
【００２６】
ここで、三次元形状算出部５３は、スリット光ＳＬの１本ずつの形状変化に基づいて、計測対象物Ｍの三次元形状を算出する。したがって、三次元形状算出部５３が計測対象物Ｍの三次元形状を算出するためには、複数あるスリット光ＳＬが１本ずつ分離された状態で、スリット光ＳＬの画像が抽出されることが好ましい。そこで、第二抽出部５２は、スリット光ＳＬの画像を、スリット光ＳＬ毎に１本ずつ分離して抽出する。また、三次元形状算出部５３は、第二抽出部５２が１本ずつ分離して抽出したスリット光ＳＬの画像に基づいて、計測対象物Ｍの三次元形状を算出する。
【００２７】
ところが、第二スリット光群画像Ｐ２に含まれるスリット光ＳＬの画像は、その形状変化が比較的大きいため、複数のスリット光ＳＬの画像どうしが重なる場合がある。この場合において、重なったスリット光ＳＬの画像どうしを画像処理によって分離することは、一般的に困難である。つまり、第二スリット光群画像Ｐ２からスリット光ＳＬの画像を抽出することは、第一スリット光群画像Ｐ１からスリット光ＳＬの画像を抽出することに比べて、より困難な場合がある。
【００２８】
そこで、本実施形態の三次元形状測定装置１は、第一抽出部５１によって抽出されたスリット光ＳＬの画像を利用して、第二抽出部５２がスリット光ＳＬの画像を抽出する。これにより、三次元形状測定装置１は、第二スリット光群画像Ｐ２からスリット光ＳＬの画像を抽出することの困難さを低減しつつ、第二スリット光群画像Ｐ２に基づいて三次元形状の算出をすることができる。すなわち、三次元形状測定装置１は、計測対象物Ｍの形状変化をより詳細に示している第二スリット光群画像Ｐ２に基づいて三次元形状を算出するため、三次元形状の測定精度を向上させることができる。
【００２９】
［スリット光ＳＬの画像の抽出：詳細］
以下、第一抽出部５１及び第二抽出部５２によるスリット光ＳＬの画像の抽出について、より詳細に説明する。ここでは、第一抽出部５１及び第二抽出部５２が、スリット光ＳＬの画像を抽出する仕組みについて、図６から図８を参照して説明する。この一例では、第一抽出部５１及び第二抽出部５２は、スリット光ＳＬ１〜ＳＬ８の画像を、スリット光ＳＬ毎に１本ずつ抽出する。これらスリット光ＳＬ１〜ＳＬ８のうち、第一抽出部５１及び第二抽出部５２が、スリット光ＳＬ１の画像を抽出する場合を、図６及び図７を参照して説明する。
【００３０】
［抽出ウインドウＷについて］
第一抽出部５１、及び第二抽出部５２は、いずれも、スリット光群画像に対して抽出ウインドウＷを適用し、この抽出ウインドウＷに含まれる輝線の画像を、スリット光ＳＬの画像として抽出する。ここで、抽出ウインドウＷとは、スリット光群画像上で、輝線の抽出を行う画像処理を実行する範囲を示す枠である。また、抽出ウインドウＷとは、抽出ウインドウＷ１、及び抽出ウインドウＷ２の総称である。抽出ウインドウＷ１とは、第一抽出部５１が第一スリット光群画像Ｐ１に適用する抽出ウインドウＷである。抽出ウインドウＷ２とは、第二抽出部５２が第二スリット光群画像Ｐ２に適用する抽出ウインドウＷである。
【００３１】
抽出ウインドウＷ１のスリット光群画像Ｐ１上の位置、大きさ、形状等は、照射部１０と、第一撮像部２０との相対的な位置関係に基づいて、定められている。また、抽出ウインドウＷ２のスリット光群画像Ｐ２上の位置、大きさ、形状等は、照射部１０と、第二撮像部３０との相対的な位置関係に基づいて、定められている。以下の説明において、これら抽出ウインドウＷの位置、大きさ、形状等を、単に、抽出ウインドウＷの形と記載する。この抽出ウインドウＷの形は、複数のスリット光ＳＬのうち、抽出対象である１本のスリット光ＳＬが、１つの抽出ウインドウＷ内に収まるようにして、つまり、抽出ウインドウＷからｙ軸方向に、はみ出さないようにして、定められている。また、抽出ウインドウＷの数は、照射部１０が照射するスリット光ＳＬの本数に対応して定められている。具体的には、照射部１０が照射するスリット光ＳＬの数が８本である場合には、抽出ウインドウＷの数は、８つである。第一抽出部５１、及び第二抽出部５２は、抽出ウインドウＷ内の輝線を、抽出ウインドウＷ毎に抽出することにより、複数のスリット光ＳＬをそれぞれ互いに分離して抽出する。
なお、この一例では抽出ウインドウＷの形状が、矩形であるとして説明するが、これに限られない。例えば、抽出ウインドウＷは、例えば、多角形であってもよく、また、円弧、高次曲線などによって囲まれる形状であってもよい。
【００３２】
［第一抽出部５１によるスリット光ＳＬの抽出］
第一抽出部５１は、スリット光ＳＬの本数に対応する数の抽出ウインドウＷ１を、第一スリット光群画像Ｐ１に対して適用する。一例として、スリット光ＳＬの本数が８本である場合には、第一抽出部５１は、８つの抽出ウインドウＷ１１〜Ｗ１８を、第一スリット光群画像Ｐ１に対して適用する。ここで、抽出ウインドウＷ１１を、第一スリット光群画像Ｐ１の第一抽出ウインドウとも記載する。また、抽出ウインドウＷ１２〜抽出ウインドウＷ１８を、第一スリット光群画像Ｐ１の第二抽出ウインドウ〜第八抽出ウインドウとも記載する。
【００３３】
第一抽出部５１は、抽出ウインドウＷ１毎に、１本のスリット光ＳＬの画像を抽出する。具体的には、第一抽出部５１は、画像の画素値を二値化するなど等の既知の手段を用いて、抽出ウインドウＷ１１内の輝線の座標を算出することにより、スリット光ＳＬの画像を抽出する。また、第一抽出部５１は、抽出ウインドウＷ１１と同様にして、抽出ウインドウＷ１２〜Ｗ１８によって、スリット光ＳＬ２〜ＳＬ８の画像をそれぞれ抽出する。これら各抽出ウインドウＷ１１〜Ｗ１８のｙ１軸方向の幅ｈ１は、第一スリット光群画像Ｐ１に含まれるスリット光ＳＬの画像の、ｙ１軸方向の形状変化の幅にあわせて設定されている。つまり、抽出ウインドウＷ１１〜Ｗ１８のｙ１軸方向の幅ｈ１は、第一スリット光群画像Ｐ１に含まれるスリット光ＳＬ１〜ＳＬ８の画像が、ｙ１軸方向に、はみ出さないようにして設定されている。
【００３４】
［第二抽出部５２によるスリット光ＳＬの抽出］
第二抽出部５２は、スリット光ＳＬの本数に対応する数の抽出ウインドウＷを、第二スリット光群画像Ｐ２に対して適用する。第二抽出部５２は、スリット光ＳＬの本数が、一例として８本である場合には、第二抽出部５２は、８つの抽出ウインドウＷ２１〜Ｗ２８を、第二スリット光群画像Ｐ２に対して適用する。ここで、抽出ウインドウＷ２１を、第二スリット光群画像Ｐ２の第一抽出ウインドウとも記載する。また、抽出ウインドウＷ２２〜抽出ウインドウＷ２８を、第二スリット光群画像Ｐ２の第二抽出ウインドウ〜第八抽出ウインドウとも記載する。
また、抽出ウインドウＷ２のｙ２軸方向の幅ｈ２は、第二スリット光群画像Ｐ２に含まれるスリット光ＳＬの画像の、ｙ２軸方向の形状変化の幅にあわせて設定されている。具体的には、図６に示すように、抽出ウインドウＷ２１のｙ２軸方向の幅は、第二スリット光群画像Ｐ２に含まれるスリット光ＳＬ１の画像が、ｙ２軸方向に、はみ出さないようにして設定されている。
すなわち、抽出ウインドウＷ２の幅ｈ２は、抽出ウインドウＷ１の幅ｈ１よりも大きく設定されている。つまり、抽出ウインドウＷ１の幅ｈ１と、抽出ウインドウＷ２の幅ｈ２との関係は、幅ｈ２＞幅ｈ１である。
【００３５】
ここで、仮に抽出ウインドウＷ２の幅ｈ２が、抽出ウインドウＷ１の幅ｈ１と同程度であるとすると、スリット光ＳＬの形状変化が比較的大きく現れた場合には、スリット光ＳＬの画像が抽出ウインドウＷ２の外に、はみ出してしまうことがある。本実施形態の抽出ウインドウＷ２の幅ｈ２は、抽出ウインドウＷ１の幅ｈ１よりも大きい。このため、本実施形態の抽出ウインドウＷ２によれば、スリット光ＳＬの形状変化が比較的大きく現れても、スリット光ＳＬの画像が抽出ウインドウＷ２の外に、はみ出してしまうことを抑止することができる。
【００３６】
ところで、抽出ウインドウＷ２の幅ｈ２は、抽出ウインドウＷ１の幅ｈ１に比べて大きいため、第二スリット光群画像Ｐ２内に複数のスリット光ＳＬの画像が含まれてしまうことがある。具体的には、図７に示すように、抽出ウインドウＷ２１には、スリット光ＳＬ１〜ＳＬ３の３本のスリット光が含まれる。
また、上述したように、第二スリット光群画像Ｐ２においては、計測対象物Ｍの形状変化に伴うスリット光ＳＬの形状変化が、第一スリット光群画像Ｐ１よりも大きく現れる。したがって、第二スリット光群画像Ｐ２においては、複数のスリット光ＳＬどうしが交差する場合がある。具体的には、図７に示すように、第二スリット光群画像Ｐ２においては、スリット光ＳＬ１〜ＳＬ３の３本のスリット光ＳＬが交差する。
つまり、抽出ウインドウＷ２内においては、複数のスリット光ＳＬが含まれる場合や、さらに、これら複数のスリット光ＳＬが交差する場合がある。このように、抽出ウインドウＷ２内に複数のスリット光ＳＬが含まれていると、スリット光ＳＬの画像を抽出する場合に、複数のスリット光ＳＬの画像が、どのスリット光ＳＬの画像であるかを判別することが求められる。つまり、第二スリット光群画像Ｐ２からスリット光ＳＬの画像を抽出することが、第一スリット光群画像Ｐ１からスリット光ＳＬの画像を抽出することに比べて、困難である場合がある。
【００３７】
そこで、第二抽出部５２は、第一抽出部５１が抽出したスリット光ＳＬの画像を利用して、第二スリット光群画像Ｐ２からスリット光ＳＬの画像を抽出する。上述したように、第三記憶部４３には、撮像部間の位置関係を示す情報が予め記憶されている。第二抽出部５２は、第三記憶部４３に記憶されている撮像部間の位置関係を示す情報に基づいて、第一抽出部５１が抽出したスリット光ＳＬの画像に対して座標変換を行うことにより、第二スリット光群画像Ｐ２上のスリット光ＳＬの位置を推定する。第二抽出部５２は、推定したスリット光ＳＬの位置に基づいて、第二スリット光群画像Ｐ２内の複数のスリット光ＳＬの画像を、スリット光ＳＬ毎に、１本ずつ分離して抽出する。
【００３８】
つまり、第二抽出部５２は、第二スリット光群画像Ｐ２に含まれる複数のスリット光ＳＬの画像のうちから、スリット光ＳＬの画像を抽出する。ここで、第二抽出部５２は、座標変換後のスリット光ＳＬの座標を含む所定の座標範囲内に、スリット光ＳＬの座標が含まれるスリット光ＳＬの画像を、座標変換後のスリット光ＳＬに対応するスリット光ＳＬの画像として抽出する。
【００３９】
また、第二抽出部５２は、第二スリット光群画像Ｐ２に対して、第一抽出部５１が抽出するスリット光ＳＬの画像の数に対応する数の抽出ウインドウを設ける。また、第二抽出部５２は、抽出ウインドウ毎に、抽出ウインドウに含まれる複数のスリット光ＳＬの画像の中から、第一抽出部５１が抽出したスリット光ＳＬの画像に対応するスリット光ＳＬの画像を選択する。このようにして第二抽出部５２は、三次元形状算出部５３に供給されるスリット光ＳＬの画像を抽出する。
【００４０】
［サブウインドウによる画像間のスリット光座標の対応付け］
第二抽出部５２がスリット光ＳＬの画像を抽出する、より具体的な仕組みについて、改めて図６及び図７を参照して説明する。ここでは、第二抽出部５２が、スリット光ＳＬ１の画像を抽出する場合を一例として説明する。
第二抽出部５２についての説明の前に、まず、第一抽出部５１によるスリット光ＳＬの画像の抽出結果の一例について説明する。第一抽出部５１は、抽出ウインドウＷ１１によって、スリット光ＳＬ１の座標を算出する。ここで、スリット光ＳＬ１の座標とは、抽出ウインドウＷ１１内に含まれるスリット光ＳＬ１を示す輝点の座標である。図６に示す一例の場合、第一抽出部５１は、ｘ１軸方向の座標ｘ１０から座標ｘ１Ｑまでの、各ｘ１座標において、スリット光ＳＬ１を示す輝点のｙ１軸方向の座標を算出する。具体的には、第一抽出部５１は、座標ｘ１Ｐにおいて、スリット光ＳＬ１のｙ１軸方向の座標ｙ１Ｐを算出する。つまり、第一抽出部５１は、座標ｘ１Ｐにおけるスリット光ＳＬ１の座標を、座標（ｘ１Ｐ、ｙ１Ｐ）として算出する。ここで、第一抽出部５１は、スリット光ＳＬ１のｙ１軸方向の座標を、第一スリット光群画像Ｐ１内のある一点を原点にした絶対座標として算出してもよく、抽出ウインドウＷ１１内のある一点を原点にした相対座標として算出してもよい。
すなわち、第一抽出部５１は、ｘ１軸方向の座標ｘ１０から座標ｘ１Ｑまでの、各ｘ１座標において、スリット光ＳＬ１の座標（ｘ１、ｙ１）を算出する。
【００４１】
第二抽出部５２は、第一抽出部５１が抽出したスリット光ＳＬ１の座標を、第一抽出部５１から取得する。第二抽出部５２は、第一抽出部５１から取得したスリット光ＳＬ１の座標に基づいて、第二スリット光群画像Ｐ２の抽出ウインドウＷ２１内の複数のスリット光ＳＬのうち、どのスリット光ＳＬが、スリット光ＳＬ１であるのかを判定する。
より具体的には、第二抽出部５２は、第一スリット光群画像Ｐ１内のサブウインドウと、第二スリット光群画像Ｐ２内のサブウインドウとの対応関係に基づいて、スリット光ＳＬどうしの対応関係を判定する。この「サブウインドウ」について説明する。以下の説明において、サブウインドウの中心の座標のことを、単に「サブウインドウの座標」とも記載する。
【００４２】
第一抽出部５１は、サブウインドウＳＷ１１を用いて、スリット光ＳＬ１の画像のｙ１軸方向の座標の変化を算出する。第一抽出部５１は、サブウインドウＳＷ１１内にスリット光ＳＬ１の画像を捉えながら、サブウインドウＳＷ１１を座標ｘ１０から座標ｘ１Ｑまで移動させる。第一抽出部５１は、サブウインドウＳＷ１１を座標ｘ１０から座標ｘ１Ｑまで移動させたときの、サブウインドウＳＷ１１のｙ１軸方向の座標の変化を、スリット光ＳＬ１のｙ１軸方向の座標の変化として算出する。図６に示す一例の場合、第一抽出部５１は、サブウインドウＳＷ１１を座標ｘ１０からｘ１軸方向に沿って移動させる。第一抽出部５１は、サブウインドウＳＷ１１のｘ１軸方向の座標が座標ｘ１Ｐ１である場合に、サブウインドウＳＷ１１の座標Ｐ１（ｘ１Ｐ１、ｙ１Ｐ１）を読み取る。この場合、第一抽出部５１は、スリット光ＳＬ１のｘ１軸方向の座標が座標ｘ１Ｐ１である場合に、スリット光ＳＬ１のｙ１軸方向の座標が座標ｙ１Ｐ１であるとして、スリット光ＳＬ１のｙ１軸方向の座標を算出する。
【００４３】
また、第二抽出部５２は、サブウインドウＳＷ２１を用いて、スリット光ＳＬ１の画像のｙ２軸方向の座標の変化を算出する。第二抽出部５２は、サブウインドウＳＷ２１内にスリット光ＳＬ１の画像を捉えながら、サブウインドウＳＷ２１を座標ｘ２０から座標ｘ２Ｑまで移動させる。第二抽出部５２は、サブウインドウＳＷ２１を座標ｘ２０から座標ｘ２Ｑまで移動させたときの、サブウインドウＳＷ２１のｙ２軸方向の座標の変化を、スリット光ＳＬ１のｙ２軸方向の座標の変化として算出する。図７に示す一例の場合、第二抽出部５２は、サブウインドウＳＷ２１を座標ｘ２０からｘ２軸方向に沿って移動させる。第二抽出部５２は、サブウインドウＳＷ２１のｘ２軸方向の座標が座標ｘ２Ｐ２である場合に、サブウインドウＳＷ２１の座標Ｐ２（ｘ２Ｐ２、ｙ２Ｐ２）を読み取る。この場合、第二抽出部５２は、スリット光ＳＬ１のｘ２軸方向の座標が座標ｘ２Ｐ２である場合に、スリット光ＳＬ１のｙ２軸方向の座標が座標ｙ２Ｐ２であるとして、スリット光ＳＬ１のｙ２軸方向の座標を算出する。
【００４４】
ここで、サブウインドウＳＷ２１の座標が座標ｘ２Ｐ３から座標ｘ２Ｐ４までの間における、第二抽出部５２によるスリット光ＳＬの抽出について説明する。座標ｘ２Ｐ３から座標ｘ２Ｐ４までの間においては、スリット光ＳＬ１の画像と、スリット光ＳＬ３の画像とが重なる。このように複数のスリット光ＳＬの画像どうしが重なる場合、第二抽出部５２は、第一抽出部５１によるサブウインドウＳＷ１１の座標と、サブウインドウＳＷ２１の座標とを対応付けて、スリット光ＳＬ１の画像のｙ２軸方向の座標の変化を算出する。
【００４５】
具体的には、第二抽出部５２は、サブウインドウＳＷ１１がｘ１軸方向に移動した場合における、サブウインドウＳＷ１１のｙ１軸方向の座標変化を取得する。第一スリット光群画像Ｐ１において、スリット光ＳＬ１を抽出する抽出ウインドウＷ１のｙ１軸方向の高さは、高さｈ１である。つまり、第一スリット光群画像Ｐ１において、スリット光ＳＬ１は、高さｈ１の範囲に収まる。また、第二スリット光群画像Ｐ２において、スリット光ＳＬ１を抽出する抽出ウインドウＷ２のｙ２軸方向の高さは、高さｈ２である。つまり、第二スリット光群画像Ｐ２において、スリット光ＳＬ１は、高さｈ２の範囲に収まる。
【００４６】
第二抽出部５２は、高さｈ１と高さｈ２との比率に基づいて、サブウインドウＳＷ１１のｙ１軸方向の座標変化を、サブウインドウＳＷ２１のｙ２軸方向の座標変化に変換する。具体的には、第二抽出部５２は、サブウインドウＳＷ１１のｙ１軸方向の座標変化を（ｈ２／ｈ１）倍して、サブウインドウＳＷ２１のｙ２軸方向の座標変化を算出する。
【００４７】
図６に示す一例では、スリット光ＳＬ１がｘ１軸に平行であるため、サブウインドウＳＷ１１のｙ１軸方向の座標変化は０（ゼロ）である。このため、第二抽出部５２は、スリット光ＳＬ１のｙ２軸方向の座標変化が０（ゼロ）であると算出する。この場合、第二抽出部５２は、座標ｘ２Ｐ３から座標ｘ２Ｐ４までの間において、図７に示す推定線ＡＬ１を、スリット光ＳＬ１に対応する線であるとして算出する。つまり、第二抽出部５２は、２つのサブウインドウの座標どうしの対応関係に基づいてスリット光ＳＬの画像の対応を判定する。
【００４８】
なお、本実施形態の一例では、第二抽出部５２が、複数のスリット光ＳＬの画像どうしが重なる場合に、スリット光ＳＬ１の画像のｙ２軸方向の座標の変化を算出するとして説明したが、これに限られない。第二抽出部５２が、複数のスリット光ＳＬの画像どうしが重ならない場合であっても、スリット光ＳＬ１の画像のｙ２軸方向の座標の変化を算出する。具体的には、複数のスリット光ＳＬの画像どうしが重ならない場合であっても、第二抽出部５２は、第一抽出部５１によるサブウインドウＳＷ１１の座標と、サブウインドウＳＷ２１の座標とを対応付けて、スリット光ＳＬ１の画像のｙ２軸方向の座標の変化を算出する。
【００４９】
ここで、図７に示す推定線ＡＬ１は、スリット光ＳＬ１に対応する線であり、推定線ＡＬ３は、スリット光Ｌ３に対応する線である。第二抽出部５２は、座標ｘ２Ｐ３から座標ｘ２Ｐ４までの間において、推定線ＡＬ３ではなく、推定線ＡＬ１を、スリット光ＳＬ１に対応する線であるとして算出する。第二抽出部５２は、複数のスリット光ＳＬの画像どうしが重なる場合であっても、スリット光ＳＬの画像を正しく抽出することができる。
【００５０】
なお、第二抽出部５２は、複数のスリット光ＳＬの画像どうしが重なる場合において、この重なる点、すなわち交点の座標を除外して、スリット光ＳＬの画像を抽出してもよい。すなわち、第二抽出部５２は、第二スリット光群画像Ｐ２に含まれる複数のスリット光ＳＬの画像について、スリット光ＳＬの画像どうしの交点がある場合に、スリット光ＳＬの画像どうしの交点を除外してスリット光ＳＬの画像を抽出してもよい。
【００５１】
また、第二抽出部５２がスリット光ＳＬ４の画像を抽出する場合について、図６及び図８を参照して説明する。なお、上述した、スリット光ＳＬ１の画像を抽出する場合と同様の部分については、その説明を適宜省略する。
【００５２】
図８は、スリット光ＳＬ４についての第二スリット光群画像Ｐ２の抽出ウインドウの一例を示す模式図である。第二抽出部５２は、サブウインドウＳＷ２４を用いて、スリット光ＳＬ４の画像のｙ２軸方向の座標の変化を算出する。第二抽出部５２は、第一スリット光群画像Ｐ１のサブウインドウＳＷ１４がｘ１軸方向に移動した場合における、サブウインドウＳＷ１４のｙ１軸方向の座標変化を取得する。第一スリット光群画像Ｐ１において、スリット光ＳＬ４を抽出する抽出ウインドウＷ４のｙ１軸方向の高さは、高さｈ１である。つまり、第一スリット光群画像Ｐ１において、スリット光ＳＬ４は、高さｈ１の範囲に収まる。また、第二スリット光群画像Ｐ２において、スリット光ＳＬ４を抽出する抽出ウインドウＷ４のｙ２軸方向の高さは、高さｈ２である。つまり、第二スリット光群画像Ｐ２において、スリット光ＳＬ４は、高さｈ２の範囲に収まる。
【００５３】
第二抽出部５２は、高さｈ１と高さｈ２との比率に基づいて、サブウインドウＳＷ１４のｙ１軸方向の座標変化を、サブウインドウＳＷ２４のｙ２軸方向の座標変化に変換する。具体的には、第二抽出部５２は、サブウインドウＳＷ１４のｙ１軸方向の座標変化を（ｈ２／ｈ１）倍して、サブウインドウＳＷ２４のｙ２軸方向の座標変化を算出する。つまり、第二抽出部５２は、サブウインドウＳＷ１４のｙ１軸方向の高さｈ１４を、（ｈ２／ｈ１）倍して、サブウインドウＳＷ２４のｙ２軸方向の高さｈ２４を算出する。つまり、第一撮像部２０が撮像する画像と、第二撮像部３０が撮像する画像との位置関係をキャリブレーションすることにより、第一スリット光群画像Ｐ１の座標（ｘ１、ｙ１）と、第二スリット光群画像Ｐ２の座標（ｘ２、ｙ２）とは、一意に相互に変換することができる。
このようにして第二抽出部５２は、複数のスリット光ＳＬの画像どうしが重なる場合であっても、スリット光ＳＬの画像を正しく抽出することができる。
【００５４】
三次元形状算出部５３は、第二抽出部５２が抽出したスリット光ＳＬの画像に基づいて、計測対象物Ｍの三次元形状を算出する。この三次元形状算出部５３による三次元形状の算出には、スリット光の形状に基づく既知の技術が用いられる。
【００５５】
ここで、第一スリット光群画像Ｐ１において、サブウインドウＳＷ１１〜サブウインドウＳＷ１８は、ｙ１軸方向に重なり合うことがない。したがって、スリット光ＳＬ１〜スリット光ＳＬ８は、サブウインドウＳＷ１１〜サブウインドウＳＷ１８に対して、１：１の関係で対応する。したがって、第一抽出部５１は、サブウインドウＳＷ１１〜サブウインドウＳＷ１８を用いて、スリット光ＳＬ１〜スリット光ＳＬ８の画像を、一意に抽出することができる。よって、第一スリット光群画像Ｐ１に基づけば、計測対象物Ｍの三次元形状を一意に特定することができる。
また、第一スリット光群画像Ｐ１のスリット光ＳＬ１〜スリット光ＳＬ８のｙ１軸方向の座標変化の程度は、第二スリット光群画像Ｐ２のスリット光ＳＬ１〜スリット光ＳＬ８のｙ２軸方向の座標変化の程度に比べて小さい。したがって、第一スリット光群画像Ｐ１に基づいて計測対象物Ｍの三次元形状を特定すると、第二スリット光群画像Ｐ２に基づいて計測対象物Ｍの三次元形状を特定する場合に比べて、特定される三次元形状の精度が低下する。
【００５６】
また、第二スリット光群画像Ｐ２において、各サブウインドウＳＷは、ｙ２軸方向に重なり合う部分がある。したがって、スリット光ＳＬ１〜スリット光ＳＬ８は、第二スリット光群画像Ｐ２の各サブウインドウＳＷに対して、１：１の関係で対応しない。したがって、第二抽出部５２は、第二スリット光群画像Ｐ２の各サブウインドウＳＷを用いると、スリット光ＳＬ１〜スリット光ＳＬ８の画像を、一意に抽出することができないことがある。
また、第二スリット光群画像Ｐ２のスリット光ＳＬ１〜スリット光ＳＬ８のｙ２軸方向の座標変化の程度は、第一スリット光群画像Ｐ１のスリット光ＳＬ１〜スリット光ＳＬ８のｙ１軸方向の座標変化の程度に比べて大きい。したがって、第二スリット光群画像Ｐ２に基づいて計測対象物Ｍの三次元形状を特定すると、第一スリット光群画像Ｐ１に基づいて計測対象物Ｍの三次元形状を特定する場合に比べて、特定される三次元形状の精度が向上する。
【００５７】
つまり、三次元形状測定装置１は、第一スリット光群画像Ｐ１に基づけば、一意に三次元形状を特定することができ、第二スリット光群画像Ｐ２に基づけば、精度よく三次元形状を特定することができる。
本実施形態の三次元形状測定装置１は、第一スリット光群画像Ｐ１を利用して、第二スリット光群画像Ｐ２の各スリット光ＳＬと各サブウインドウＳＷとを対応付ける。三次元形状測定装置１は、第一スリット光群画像Ｐ１の利点と第二スリット光群画像Ｐ２の利点を利用することにより、一意かつ精度よく計測対象物Ｍの三次元形状を特定することができる。
【００５８】
[三次元形状測定装置の動作]
次に、図９を参照して、三次元形状測定装置１の動作について説明する。
図９は、本実施形態の三次元形状測定装置１の動作の一例を示すフローチャートである。
【００５９】
照射部１０は、制御部５０の制御に基づき、計測対象物Ｍに対してスリット光ＳＬを照射する（ステップＳ１０）。
撮像部は、制御部５０の制御に基づき、ステップＳ１０において照射されるスリット光ＳＬを撮像する（ステップＳ２０）。ここで、制御部５０は、第一撮像部２０と、第二撮像部３０とに対して、同時に撮像指令を出力する。これにより、第一撮像部２０と、第二撮像部３０とは、同時にスリット光ＳＬを撮像する。第一撮像部２０は、撮像した画像、すなわち第一スリット光群画像Ｐ１を第一記憶部４１に記憶させる。第二撮像部３０は、撮像した画像、すなわち第二スリット光群画像Ｐ２を第二記憶部４２に記憶させる。
【００６０】
この第一スリット光群画像Ｐ１には、図６に示すように、複数のスリット光ＳＬの画像が含まれる。この図６に示す一例においては、スリット光ＳＬ１、ＳＬ２、ＳＬ６〜ＳＬ８は、いずれもｘ１軸に平行な直線である。このことは、スリット光ＳＬ１、ＳＬ２、ＳＬ６〜ＳＬ８の照射領域が平面であることを示す。また、この図６に示す一例においては、スリット光ＳＬ３〜ＳＬ５は、いずれもｙ軸の負の方向に凸である曲線である。このことは、スリット光ＳＬ３〜ＳＬ５の照射領域が凸形状であることを示す。
【００６１】
また、第二スリット光群画像Ｐ２には、図７に示すように、複数のスリット光ＳＬの画像が含まれる。この図７に示す一例においては、スリット光ＳＬ１、ＳＬ２は、その一部が他のスリット光ＳＬと交差している。このことは、スリット光ＳＬ１、ＳＬ２の照射領域が撮像されていないことを示す。また、この図７に示す一例においては、ＳＬ６〜ＳＬ８は、いずれもｘ軸に平行な直線である。このことは、スリット光ＳＬ１、ＳＬ２、ＳＬ６〜ＳＬ８の照射領域が平面であることを示す。また、この図７に示す一例においては、スリット光ＳＬ３〜ＳＬ５は、いずれもｙ軸の負の方向に凸である曲線である。このことは、スリット光ＳＬ３〜ＳＬ５の照射領域が凸形状であることを示す。
【００６２】
第一抽出部５１は、第一スリット光群画像Ｐ１からスリット光ＳＬの画像を抽出する（ステップＳ３０）。
次に、第二抽出部５２は、ステップＳ３０において抽出されたスリット光ＳＬの画像に基づいて、第二スリット光群画像Ｐ２内のスリット光ＳＬの位置を推定し（ステップＳ４０）、推定した位置に基づいて、第二スリット光群画像Ｐ２からスリット光ＳＬの画像を抽出する（ステップＳ５０）。
【００６３】
次に、三次元形状算出部５３は、ステップＳ５０において抽出されたスリット光ＳＬの画像に基づいて、計測対象物Ｍの三次元形状を算出する（ステップＳ１００）。
【００６４】
次に、第二抽出部５２は、各スリット光ＳＬについて、計測対象物Ｍの三次元形状を算出済みである否かを判定する（ステップＳ１１０）。具体的には、第二抽出部５２は、スリット光ＳＬ１〜ＳＬ８について、それぞれ、計測対象物Ｍの三次元形状を算出済みであるか否かを判定する。
第二抽出部５２は、すべてのスリット光ＳＬについて、計測対象物Ｍの三次元形状を算出済みであると判定した場合（ステップＳ１１０；ＹＥＳ）には処理をステップＳ１２０に進める。一方、第二抽出部５２は、いずれかのスリット光ＳＬについて、計測対象物Ｍの三次元形状を算出済みでないと判定した場合（ステップＳ１１０；ＮＯ）には処理をステップＳ３０に戻す。
【００６５】
次に、三次元形状算出部５３は、ステップＳ８０においてスリット光ＳＬの画像が抽出された第二スリット光群画像Ｐ２と、過去に撮像されている第二スリット光群画像Ｐ２とに基づいて、スリット光ＳＬの画像どうしをパターンマッチングする（ステップＳ１２０）。以下、三次元形状算出部５３が行うパターンマッチングの具体例について説明する。この一例では、第二スリット光群画像Ｐ２が５０〜１００［ｍｓ］毎に撮像されている。ここで、時刻ｔにおいて撮像された第二スリット光群画像Ｐ２を、第二スリット光群画像Ｐ２（ｔ）と称する。三次元形状算出部５３は、第二スリット光群画像Ｐ２（ｔ）に基づいて、計測対象物Ｍの三次元座標Ｑ（ｉ，ｔ）を算出する。このｉは座標の数を示す。なお、座標数ｉは、第二スリット光群画像Ｐ２が撮像された時刻ｔ毎に、すなわち、第二スリット光群画像Ｐ２（ｔ）毎に互いに異なる。
【００６６】
三次元形状算出部５３は、第二スリット光群画像Ｐ２（ｔ）に含まれるスリット光ＳＬの点Ｐ（ｉ，ｔ）を算出する。ここで、時刻ｔにおける第二撮像部３０の６軸姿勢を姿勢Ａ（ｔ）とする。第二スリット光群画像Ｐ２の撮像時間間隔Δｔが姿勢Ａ（ｔ）の変化に対して十分に短い場合、時刻ｔにおける第二スリット光群画像Ｐ２（ｔ）と、時刻ｔ−１における第二スリット光群画像Ｐ２（ｔ−１）の画像に大きな差が生じない。三次元形状算出部５３は、式（１）に基づいて、時刻ｔにおける計測対象物Ｍの三次元座標Ｑ（ｉ，ｔ）を算出する。
Ｑ（ｉ，ｔ）＝Ａ（ｔ）・Ｐ（ｉ，ｔ）・・・（１）
次に、三次元形状算出部５３は、次の式（２）
Ｑ（ｉ，ｔ−１）＝Ａ（ｔ−１）・Ｐ（ｉ，ｔ−１）・・・（２）
によって示される、時刻ｔ−１における三次元座標Ｑ（ｉ，ｔ−１）が、三次元座標Ｑ（ｉ，ｔ）と重なるように、姿勢Ａ（ｔ−１）を算出する。ここで、三次元形状算出部５３は、ある姿勢Ａ（ｔ）を仮定した上で、三次元座標Ｑ（ｉ，ｔ）を算出し、三次元座標Ｑ（ｉ，ｔ）の近傍にある点Ｐ（ｊ，ｔ）の法線方向の距離ｄｐを、点Ｐごとに求める。また、三次元形状算出部５３は、この距離ｄｐの二乗平均が最小となるように、姿勢Ａ（ｔ）を補正する。
【００６７】
三次元形状算出部５３は、時刻ｔにおける姿勢Ａ（ｔ）が定まった後、上述の式（１）に基づいて、三次元座標Ｑ（ｉ，ｔ）を算出する。このとき、三次元形状算出部５３は、時刻ｔ−１における三次元座標Ｑ（ｉ，ｔ−１）に、算出した三次元座標Ｑ（ｉ，ｔ）を加え、三次元座標Ｑ（ｉ，ｔ−１）を三次元座標Ｑ（ｉ，ｔ）として置き換える。
【００６８】
三次元形状算出部５３は、時刻ｔ＋１においても上述の処理を繰り返すことにより、過去に算出した三次元座標Ｑ（ｉ，ｔ）を時系列に蓄積する。
【００６９】
次に、三次元形状算出部５３は、パターンマッチングの結果に基づいて、撮像部の位置を推定する。これにより、仮に、第二スリット光群画像Ｐ２に含まれるスリット光ＳＬの画像の一部が欠落していたとしても、三次元形状算出部５３は、スリット光ＳＬの画像を補間することができる。すなわち、三次元形状算出部５３は、ステップＳ１００において補間されたスリット光ＳＬの画像に基づいて、計測対象物Ｍの三次元形状を算出する。したがって、三次元形状算出部５３は、単一の第二スリット光群画像Ｐ２に基づきスリット光ＳＬの画像を補間せずに計測対象物Ｍの三次元形状を算出する場合に比べて、高精度に計測対象物Ｍの三次元形状を算出することができる。
【００７０】
次に、制御部５０は、スキャンデータの取得を終了するか否かを判定する（ステップＳ１３０）。制御部５０は、スキャンデータの取得を終了すると判定した場合（ステップＳ１３０；ＹＥＳ）には、処理をステップＳ１４０に進める。一方、制御部５０は、スキャンデータの取得を終了しないと判定した場合（ステップＳ１３０；ＮＯ）には、処理をステップＳ１０に戻す。
【００７１】
なお、三次元形状算出部５３は、計測対象物Ｍの三次元形状を算出した後に、ベストフィット処理を行ってもよい（ステップＳ１４０）。
【００７２】
このベストフィット処理を行う構成の場合、図５に示すように、記憶部４０は、第四記憶部４４を備えている。また、制御部５０は、軌跡算出部５４を備えている。第四記憶部４４には、三次元形状算出部５３が算出する計測対象物Ｍの三次元形状を示す点群データが、三次元形状算出部５３が点群データを算出する毎に順次記憶される。軌跡算出部５４は、三次元形状算出部５３が算出する点群データと、第四記憶部４４に記憶されている過去に算出された点群データとの比較に基づいて、計測対象物Ｍに対する第二撮像部３０の移動の軌跡を算出する。
また、三次元形状算出部５３は、算出した計測対象物Ｍの三次元形状を、第四記憶部４４に記憶されている複数の点群データどうしの比較に基づいて補正する。
【００７３】
具体的には、三次元形状算出部５３は、時刻ｔ＝０〜Ｔにおいて、次の式（３）
Ｒ（ｉ，ｔ）＝Ａ（ｔ）・Ｐ（ｉ，ｔ）・・・（３）
を計算し、三次元座標Ｑ（ｊ，Ｔ）との法線方向誤差が最小となるような姿勢Ａ（ｔ）を求め直す。さらに三次元形状算出部５３は、三次元座標Ｑ（ｊ，Ｔ）内の時刻ｔの情報を、三次元座標Ｒ（ｉ，ｔ）によって置き換える。
上述のベストフィット処理により、三次元座標Ｑ（ｊ，Ｔ）が計測対象物Ｍの三次元形状を示す情報となる。さらに、三次元形状算出部５３は、三次元座標Ｑ（ｊ，Ｔ）が示す点が密集している部分を平均化することにより、情報量を削減し、ファイル化して出力してもよい。
【００７４】
以上説明したように、三次元形状測定装置１は、三次元形状の算出に適する画像を選択するため、可搬型であっても、三次元形状の測定精度を高めることができる。また、三次元形状測定装置１は、三次元形状の算出に適する画像を繰り返し選択することにより、より多くのスリット光ＳＬの情報に基づいて三次元形状を測定することができる。したがって、三次元形状測定装置１は、三次元形状の測定精度をさらに高めることができる。
【００７５】
[画像推定の変形例]
また、上述において、第一抽出部５１は、撮像部間の位置関係に基づいて、第一スリット光群画像Ｐ１を座標変換することにより、スリット光ＳＬの位置を推定するとして説明したが、これに限られない。第一抽出部５１は、第一スリット光群画像Ｐ１と、第二スリット光群画像Ｐ２とを対応付けることにより、スリット光ＳＬの位置を推定してもよい。
【００７６】
この変形例の場合、第一抽出部５１は、第一スリット光群画像Ｐ１が示すスリット光ＳＬの位置と、第二スリット光群画像Ｐ２が示すスリット光ＳＬの位置とを対応付けることにより、第二撮像部３０の位置から計測対象物Ｍを撮像した場合のスリット光ＳＬの位置を推定する。具体的には、第一抽出部５１は、図６に示す第一スリット光群画像Ｐ１の各スリット光ＳＬ１〜ＳＬ８と、図７に示す第二スリット光群画像Ｐ２の各スリット光ＳＬ１〜ＳＬ８とを、それぞれ対応付ける。また、第一抽出部５１は、第一スリット光群画像Ｐ１の各スリット光ＳＬ１〜ＳＬ８と、第二スリット光群画像Ｐ２の各スリット光ＳＬ１〜ＳＬ８とを比較して、第一スリット光群画像Ｐ１を座標変換するための変換パラメータを算出する。第一抽出部５１は、算出した変換パラメータに基づいて、第一スリット光群画像Ｐ１を座標変換することにより、第二撮像部３０の位置から計測対象物Ｍを撮像した場合のスリット光ＳＬの位置を推定する。
上述のように構成しても、三次元形状測定装置１は、三次元形状の算出に適する画像を選択できるため、三次元形状の測定精度を高めることができる。
【００７７】
なお、三次元形状測定装置１における制御部５０の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理の手順を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境あるいは表示環境を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【００７８】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク又は通信網や電話回線等の通信回線又は通信線のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル又は差分プログラムであってもよい。
【符号の説明】
【００７９】
１…三次元形状測定装置、１０…照射部、２０…第一撮像部、３０…第二撮像部、４０…記憶部、４１…第一記憶部、４２…第二記憶部、４３…第三記憶部、４４…第四記憶部、５０…制御部、５１…第一抽出部、５２…第二抽出部、５３…三次元形状算出部、５４…軌跡算出部
【図１】
0006631225.tif 000002
【図２】
0006631225.tif 000003
【図３】
0006631225.tif 000004
【図４】
0006631225.tif 000005
【図５】
0006631225.tif 000006
【図６】
0006631225.tif 000007
【図７】
0006631225.tif 000008
【図８】
0006631225.tif 000009
【図９】
0006631225.tif 000010