3次元形状計測方法及び3次元形状計測装置
【課題】信頼性の高い3次元形状計測結果を得る。
【解決手段】3次元形状計測装置20は、対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して空間コードに変換する空間コード算出手段23と、変換した空間コードを用いた三角測量により画素毎に3次元情報を算出して対象物体の3次元形状を求める三角測量手段26と、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段24と、ノイズと判定された連結領域の3次元情報を除去するノイズ除去手段25とを備える。
【解決手段】3次元形状計測装置20は、対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して空間コードに変換する空間コード算出手段23と、変換した空間コードを用いた三角測量により画素毎に3次元情報を算出して対象物体の3次元形状を求める三角測量手段26と、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段24と、ノイズと判定された連結領域の3次元情報を除去するノイズ除去手段25とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、物体の撮像画像を用いてその物体の3次元形状を計算する3次元形状計測方法及び装置に関するものである。
【背景技術】
【0002】
従来、三角測量に基づいて対象物体の3次元形状を得る計測方法が複数提案されている。この計測方法のひとつにパターン光投影法がある(例えば、特許文献1参照)。パターン光投影法では、コード化された複数の投影パターンを対象物体に照射した状態で撮像し、各投影パターンの撮像画像を画素毎に明暗で2値化し、2値化パターンの内容に基づいて三角測量により対象物体の3次元形状を演算するようにしていた。また、特許文献2に係る3次元形状計測装置では、パターン光投影法のひとつである空間コード化法を用いて、対象物体の3次元形状を計測する。
【0003】
図8及び図9は、従来の、空間コード化法により三角測量を行う3次元形状計測装置の構成を示す図であり、x軸、y軸及びz軸を仮想的に設定した3次元の測定空間のうち、x−z平面を図8に示し、y−z平面を図9に示す。対象物体Pに対して、プロジェクタ12を用いて投影パターンを照射し、カメラ11が視野範囲全面を撮像する。カメラ11は床面Gから高さH1の位置に固定され、固定位置を測定空間の原点Oとする。また、プロジェクタ12は床面Gから高さH2、カメラ11から距離dの位置に固定される。ここで、三角測量を行うには、図8及び図9に示す角度α,β,θを求める必要がある。角度α,θは、カメラ11が撮像した撮像画像中の対象物体Pの位置を利用して求めることができるが、角度βはプロジェクタ12の情報を利用して求める必要がある。
【0004】
この角度βを求めるために、プロジェクタ12から規則に従った投影パターンをN枚投影して、投影領域を2N個に分割する。カメラ11は、対象物体Pに投影パターンを照射した状態で撮像し、3次元形状計測装置がN枚の撮像画像を用いて、分割した個々の領域に対する投影光の角度βを算出し、三角測量を行う。
【0005】
投影パターンは、光が当たる領域(以下、明領域)と当たらない領域(以下、暗領域)からなり、明領域を「1」、暗領域を「0」としてNパターン投影すれば、測定空間の投影領域を2N個に分割してコード化する、即ち各領域に空間コードを割り振ることができる。投影パターンは様々なものが提案されているが、グレイコード(交番2進コード)が一般的である。ここでは、先ずバイナリコードを説明し、その後にグレイコードを説明する。
【0006】
図10は、従来の3次元形状計測装置で用いるバイナリコード投影パターンを示す図である。このバイナリコード投影パターンは、後述する図11のように付与するコード値の2進数を縦方向同一位置に並べたときの、横方向に並んだ各2進数を利用したものである。例えば、投影領域を8個(=23)に分割してコード化するためには、バイナリコード投影パターンが3枚必要となる。図10に示す投影パターン1〜3において、白い部分を明領域、黒い部分を暗領域とする。
図10に示すバイナリコード投影パターン1〜3それぞれをプロジェクタ12が投影し、カメラ11が撮像する。3次元形状計測装置は、投影パターン1〜3の撮像画像の各画素の輝度値に基づいて明暗を「1」、「0」に2値化して、図11に示すように、投影パターン1〜3の同一領域を3ビット長の2進数からなるバイナリコードにし、各バイナリコードを10進数のコード値(空間コード)に変換する。例えば、左端の投影領域のバイナリコードは「111」なので、10進数に変換すればコード値「7」となる。3次元形状計測装置はこのようにして投影領域を「0」〜「7」の8個にコード化する。
【0007】
以下、空間コード化法による3次元形状計測装置の動作を、図12に示すフローチャートを用いて説明する。
図13は、従来の3次元形状計測装置で用いるグレイコード投影パターンを示す図である。グレイコード投影パターンは、付与するコード値の2進数を「最上位桁から1であれば残り下桁を反転、0であれば残り下桁を反転させない」というルールに従って変換する。すると、グレイコードで投影領域を8個に分割してコード化する場合の投影パターン1〜3は図13のようになる。
【0008】
3次元形状計測装置は、図13に示すグレイコード投影パターン1〜3を読み込んで(ステップST1)、プロジェクタ12から測定空間へ向けて各投影パターンを投影し、カメラ11でそれぞれ撮像させる(ステップST2)。
続いて、3次元形状計測装置が、上述のバイナリコート投影パターンと同様に、投影パターン1〜3の撮像画像の同一領域の明暗を「1」、「0」で2値化して(ステップST3)、図14に示すように、投影パターン1〜3の同一領域を3ビット長の2進数からなるグレイコードに変換する(ステップST4)。
【0009】
グレイコード投影パターンを用いる場合は、空間コード取得の際に、グレイコードをバイナリコードに変換するコード変換処理が必要になる。コード変換処理では「最上位ビットはそのまま、以下は全てグレイコードの該当ビットとバイナリコードの1桁上のビットとの排他的論理和を求める」という変換ルールに従ってグレイコードをバイナリコードに変換し、このバイナリコードを10進数に変換してコード値にする(ステップST5)。例えば、左端の投影領域のグレイコードは「100」なので、バイナリコードに変換すると「111」となり、10進数に変換すればコード値「7」となる。
【0010】
ステップST6にて、3次元形状計測装置が、分割された投影領域それぞれの空間コードの値と、撮像画像中の位置情報とから、各投影領域に対する投影光の角度βを求め、下式(1)より対象物体Pの3次元座標(XP,YP,ZP)を算出する。なお、空間コード化法による三角測量は特許文献2等に記載された方法を用いればよいため、ここでは詳細な説明を省略する。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開昭64−54208号公報
【特許文献2】特開2000−65547号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
従来の3次元形状計測方法は以上のように構成されているので、対象物体の表面に凹凸がある場合、投影パターンを照射しても光の当たらない陰の領域が発生してしまい、三角測量に基づいて演算した結果が信頼できないものとなってしまう課題があった。
また、投影パターンの照射時に外乱光及び対象物体の反射光等があると、2値化する際にノイズとなり、投影パターンの誤認識が生じてしまう課題があった。
【0013】
この発明は、上記のような課題を解決するためになされたもので、投影パターンを照射しても光の当たらない陰領域に由来する情報をノイズとして除去することにより、信頼性の高い3次元形状計測結果を得ることを目的とする。
【課題を解決するための手段】
【0014】
この発明に係る3次元形状計測方法は、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定する連結領域設定ステップと、連結領域設定ステップで設定された連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定ステップと、ノイズ判定ステップでノイズと判定した連結領域の3次元情報を除去するノイズ除去ステップとを備えるものである。
【0015】
この発明に係る3次元形状計測方法は、複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成する統合画像生成ステップと、統合画像生成ステップで生成した統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定ステップと、ノイズ判定ステップでノイズと判定した領域内の画素を複数の撮像画像から除去するノイズ除去ステップとを備えるものである。
【0016】
この発明に係る3次元形状計測方法は、変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定ステップと、ノイズ判定ステップで抽出された領域の空間コードを除去するノイズ除去ステップとを備えるものである。
【0017】
この発明に係る3次元形状計測装置は、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、当該連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段と、ノイズ判定手段がノイズと判定した連結領域の3次元情報を除去するノイズ除去手段とを備えるものである。
【0018】
この発明に係る3次元形状計測装置は、複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成し、当該統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定手段と、ノイズ判定手段がノイズと判定した領域内の画素を複数の撮像画像から除去するノイズ除去手段とを備えるものである。
【0019】
この発明に係る3次元形状計測装置は、変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定手段と、ノイズ判定手段が抽出した領域の空間コードを除去するノイズ除去手段とを備えるものである。
【発明の効果】
【0020】
この発明によれば、3次元情報に基づいて高さの差が所定範囲内の画素同士を連結し、連結領域の面積が所定値より小さい場合にノイズと判定して除去するようにしたので、計測結果が近傍の計測結果と比較して大きく変動している場合に陰領域に由来するノイズとして除去できるようになり、この結果、信頼性の高い3次元形状計測結果を得ることができる。
【0021】
この発明によれば、撮像画像から輝度値の変動幅が所定範囲内の画素を抽出し、膨張処理及び収縮処理して結合した領域をノイズと判定して除去するようにしたので、外乱光及び反射光等によって陰領域の輝度値が変動するという原理に基づいて陰領域を判定して撮像画像から除去できるようになり、この結果、信頼性の高い3次元形状計測結果を得ることができる。
【0022】
この発明によれば、空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して除去するようにしたので、陰領域に由来する空間コードを除去できるようになり、この結果、信頼性の高い3次元形状計測結果を得ることができる。
【図面の簡単な説明】
【0023】
【図1】この発明の実施の形態1に係る3次元形状計測装置20の構成を示すブロック図である。
【図2】この発明の実施の形態1に係る3次元形状計測装置20の動作を示すフローチャートである。
【図3】三角測量により得た各画素の3次元座標位置を示す図である。
【図4】ノイズ判定手段24が注目画素と隣接画素が同一領域か否かを判別する同一領域判断処理を説明する図であり、図4(a)は同一領域の例、図4(b)は異なる領域の例を示す。
【図5】この発明の実施の形態2に係る3次元形状計測装置20の動作を示すフローチャートである。
【図6】この発明の実施の形態3に係る3次元形状計測装置20の動作を示すフローチャートである。
【図7】対象物体を撮像した撮像画像において、同一空間コードを持つ領域を示す図であり、図7(a)正しい空間コードを持つ領域の例、図7(b)は誤った空間コードを持つ領域の例を示す。
【図8】空間コード化法により三角測量を行う3次元形状計測装置の構成を示すx−y平面図である。
【図9】図8に示す3次元形状計測装置のy−z平面図である。
【図10】バイナリコード投影パターンを示す図である。
【図11】図10に示すバイナリコード投影パターンに対応する空間コードを示す図である。
【図12】従来の3次元形状計測装置の動作を示すフローチャートである。
【図13】グレイコード投影パターンを示す図である。
【図14】図13に示すグレイコード投影パターンに対応する空間コードを示す図である。
【発明を実施するための形態】
【0024】
実施の形態1.
図1は、この発明の実施の形態1に係る3次元形状計測装置20の構成を示すブロック図である。この3次元形状計測装置20は、例えばロボットを制御して部品の組み立て、加工等を行い製品の製造を行うラインにおいて、整列配置されていない山積みの部品から、ロボットを用いて部品のピッキングを行って、加工、成型等を行う場合を想定したものである。
【0025】
図1に示す3次元形状計測装置20は、先立って説明した図8及び図9に示す配置のカメラ11及びプロジェクタ12を使用するものであり、カメラ11に接続する画像処理手段21と、プロジェクタ12に接続する投影パターン照射手段22と、空間コード算出手段23と、ノイズ判定手段24と、ノイズ除去手段25と、三角測量手段26とを備える。
【0026】
図2は、本実施の形態1に係る3次元形状計測装置20の動作を示すフローチャートである。なお、図2に示すステップST1〜ST6は、図12に示すステップST1〜ST6と同一の処理であるため、詳細な説明は省略する。
投影パターン照射手段22は、プロジェクタ12に接続し、N枚の投影パターンを読み込んでプロジェクタ12から対象物体に照射させる(ステップST1)。画像処理手段21は、カメラ11に接続し、各投影パターンが照射された対象物体をカメラ11に撮像させ、N枚の撮像画像を取得する(ステップST2)。なお、この例では投影パターンとして、図13に示すようなグレイコード投影パターンを用いる。
空間コード算出手段23は、画像処理手段21が取得したN枚の撮像画像の各画素の明暗を「1」、「0」で2値化して(ステップST3)、図14に示すようなNビット長の2進数からなるグレイコードに変換し(ステップST4)、さらに、空間コードに変換する(ステップST5)。
三角測量手段26は、空間コード算出手段23が算出した空間コードを用いて、三角測量により対象物体の各画素の3次元座標を算出し、対象物体の3次元形状を得る(ステップST6)。
【0027】
ここで、対象物体の表面に凹凸がある場合、投影パターンを照射しても光の当たらない陰領域が発生する。この陰領域から得られる計測結果には誤った情報が含まれているため、周辺の計測結果と比較して大きく変動する特徴がある。そこで、撮像画像の各画素から算出した3次元座標に基づいて所定範囲の高さの画素同士を連結する。すると、陰領域は連結領域の面積が小さいという性質があるので、面積が小さい連結領域を陰領域、即ちノイズとして検出して除去することができる。
【0028】
ノイズ判定手段24は、三角測量手段26が3次元座標を算出した撮像画像をラスタスキャンして未処理画素を探す(ステップST7)。ノイズ判定手段24は、発見した未処理画素を注目画素に設定して次のステップST8へ進み(ステップST7“YES”)、未処理画素がなくなればステップST10へ進む(ステップST7“NO”)。
図3は、三角測量により得た各画素の3次元座標位置を示す図である。ノイズ判定手段24は、図中の画素100を開始点にして各画素のラスタスキャンを行い、例えば画素100が未処理画素であれば先ず画素100を注目画素に設定する。
【0029】
続くステップST8にてノイズ判定手段24が、各画素の3次元座標に基づいて、注目画素に接する隣接画素を探索する。このときの探索は、注目画素を中心に4方向を探索する4近傍探索でもよいし、8方向を探索する8近傍探索でもよい。なお、後述のステップST9にて既に別の領域に含まれていると判断した画素は除く。
【0030】
続くステップST9にてノイズ判定手段24は、隣接画素の高さが、注目画素の高さ±h(hは規定値とする)の範囲にあれば隣接画素と注目画素とが同じ領域にあると判断し、範囲外にあれば同じ領域にないと判断する。そして、ノイズ判定手段24は、同一領域と判断した各画素を連結して、連結領域とする。
図4は、ノイズ判定手段24が注目画素と隣接画素が同一領域か否かを判断する同一領域判断処理を説明する図であり、z−y平面において判断する場合を例示する。図4(a)に示すように、注目画素100の高さ位置を中心にして±hの範囲内に隣接画素101が存在する場合、ノイズ判定手段24は同一領域と判断して注目画素100と隣接画素101を連結する。一方、図4(b)に示すように、注目画素100の高さ位置を中心にして±hの範囲外に隣接画素101が存在する場合、ノイズ判定手段24は同一領域にないと判断して、連結しない。
【0031】
このように、ノイズ判定手段24は、注目画素と隣接画素の条件判断を行い、同一領域と判断した画素の連結処理を行う。そして、ノイズ判定手段24は、ステップST9にて同一領域と判断された隣接画素があれば(ステップST9“YES”)、その隣接画素を新たな注目画素に設定して再びステップST8の近傍探索を行う。一方、同一領域と判断される隣接画素がなくなると(ステップST9“NO”)、ノイズ判定手段24は再帰処理を終え、ステップST7に戻って次の注目画素を探索する。
なお、ステップST7〜ST9が連結領域設定ステップである。
【0032】
続くステップST10にて、先ず、ノイズ判定手段24が連結領域の面積が所定値以下であれば陰領域に由来するノイズと判定し(ノイズ判定ステップ)、続いて、ノイズ除去手段25が、この連結領域に含まれる各画素の3次元座標値を除去する(ノイズ除去ステップ)。
【0033】
以上より、実施の形態1によれば、3次元形状計測装置20は、対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、プロジェクタ12から対象物体に順次投影する投影パターン照射手段22と、各投影パターンの投影された対象物体をカメラ11で撮像した複数の撮像画像を取得する画像処理手段21と、撮像画像の各画素を輝度値に応じて2値化して空間コードに変換する空間コード算出手段23と、変換した空間コードを用いた三角測量により画素毎に3次元情報を算出して対象物体の3次元形状を求める三角測量手段26と、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段24と、ノイズと判定された連結領域の3次元情報を除去するノイズ除去手段25とを備えるように構成した。このため、計測結果が近傍の計測結果と比較して大きく変動している場合に陰領域に由来するノイズとして除去できるようになる。この結果、陰領域の計測結果を含めずに対象物体の3次元形状を算出することができ、信頼性を向上できる。
【0034】
実施の形態2.
外乱光が一切ない理想的な環境下で対象物体にパターン投影すると、原理的に、陰領域の輝度値は変化しない。一方、外乱光のある環境下でパターン投影すると、外乱光や対象物体の表面の反射率によって、陰領域で検出される輝度値はわずかに変動する。ただし、輝度値のこの変動幅は、陰領域以外の領域で検出される輝度値の変化に比べて小さい。そこで、光が当たった場合と当たらない場合の輝度値の変動について基準範囲を設け、基準範囲以内で輝度値が変動する画素を撮像画像から抽出して結合し、この結合領域を陰領域、即ちノイズとみなして除去する。
【0035】
図5は、実施の形態2に係る3次元形状計測装置20の動作を示すフローチャートである。なお、図5に示すステップST1〜ST6は、図12に示すステップST1〜ST6と同一の処理であるため、詳細な説明は省略する。また、実施の形態2に係る3次元形状計測装置20の構成は、図面上では図1、図8及び図9に示す構成と同じであるため、以下の説明ではこれらの図を援用する。
【0036】
以下、輝度値の変動を利用したノイズ除去方法を、2例説明する。
(1)全明、全暗投影パターンを使用する場合
ステップST1にて投影パターン照射手段22がN枚の投影パターンを読み込み、ステップST2にて画像処理手段21が各投影パターンの撮像画像を取得するが、これに加えて、対象物体に光を当てた場合(全明投影パターン)と、全く光を当てない場合(全暗投影パターン)の2枚の撮像画像も取得する。
ステップST11にてノイズ判定手段24は、先ず、対象物体に光を当てた場合の撮像画像と全く光を当てない場合の撮像画像の各画素について平均値を算出し、輝度値比較用画像を作成しておく。ノイズ判定手段24は、続いて、各投影パターンの撮像画像と輝度値比較用画像の各画素を比較して、輝度値の差が基準範囲内の画素を抽出する。
【0037】
(2)反転投影パターンを使用する場合
ステップST1にて投影パターン照射手段22がN枚の撮影パターンを読み込み、ステップST2にて画像処理手段21が各投影パターンの撮像画像を取得するが、これに加えて、N枚の投影パターンそれぞれの明暗を反転させた投影パターンを照射・撮像した撮像画像も取得する。
ステップST11にてノイズ判定手段24は、各投影パターンについて、通常の撮像画像と明暗反転させた場合の撮像画像の各画素について輝度値を比較し、輝度値の差が基準範囲内の画素を抽出する。
【0038】
以下の処理は上記(1)、(2)に共通である。
ステップST12にてノイズ判定手段24は、ステップST11の輝度値比較処理で抽出したN枚の撮像画像の各画素を1枚に統合して統合画像を作成する。基準値の設定に応じて各撮像画像からの画素の抽出密度は異なるが、N枚分の抽出画素を統合して得られる統合画像には点が集中する領域が存在することとなる。
なお、ステップST11,ST12が統合画像生成ステップである。
【0039】
続くステップST13にて、先ず、ノイズ判定手段24が、統合画像中の点群に対して、M回の膨張処理、M回の収縮処理によるクロージング処理を行って、点群を結合した結合領域にする(ノイズ判定ステップ)。続いてノイズ除去手段25が、この結合領域を陰領域に由来するノイズとして、各撮像画像から除去する(ノイズ除去ステップ)。
【0040】
続くステップST5にて空間コード算出手段23は、ノイズが除去されたグレイコードを空間コードに変換して、ステップST6にて三角測量手段26が三角測量により対象物体の3次元座標を算出する。
【0041】
以上より、実施の形態2によれば、ノイズ判定手段24が、複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成し、この統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定し、ノイズ除去手段25が、ノイズと判定された領域内の画素を各撮像画像から除去するように構成した。このため、外乱光及び反射光等によって陰領域の輝度値が変動するという原理に基づいて陰領域を判定して撮像画像から除去できるようになる。この結果、陰領域の画素を含めずに空間コードを算出するようにして、陰領域から誤った空間コードが検出されることを防ぐことができ、信頼性を向上できる。
【0042】
実施の形態3.
三角測量によれば、原理的に、同じ空間コードを持つ領域の幅は幾何学的に計算可能である。従って、陰領域から誤った空間コードが検出されると、同一空間コードを持つ領域の幅が、計算で求めた領域幅より広くなる。そこで、領域幅に基準範囲を設け、基準範囲より領域幅が広い領域を、陰領域に由来する誤った空間コード、即ちノイズとみなして除去する。
【0043】
図6は、実施の形態3に係る3次元形状計測装置20の動作を示すフローチャートである。なお、図6に示すステップST1〜ST6は、図12に示すステップST1〜ST6と同一の処理であるため、詳細な説明は省略する。また、実施の形態3に係る3次元形状計測装置20の構成は、図面上では図1、図8及び図9に示す構成と同じであるため、以下の説明ではこれらの図を援用する。
【0044】
ステップST21にてノイズ判定手段24は、同一空間コードを有する領域に対して、領域幅に基準範囲を設定し、基準範囲より幅の広い領域を撮像画像の全ての領域(投影パターンが8枚の場合、撮像画像は28=256個の領域に分割されている)から抽出する(ノイズ判定ステップ)。
続くステップST22にてノイズ除去手段25が、抽出した領域全てを誤った領域とみなし、空間コードを削除する(ノイズ除去ステップ)。
【0045】
図7は、対象物体を撮像した撮像画像において、同一空間コードを持つ領域200,201を示す図である。それぞれの領域に対し図面上横方向に輪切りしたときの長さをここでは領域幅と呼ぶ。図7(a)に示すように、対象物体Pの表面に凹凸が存在しても、ノイズがなければ、同一空間コードの領域200はほぼ一定の領域幅となる。一方、図7(b)に示すように、対象物体P1,P2の間のようにノイズがあると空間コード値に誤りが発生するため、領域201と同一空間コードをもつ画素が検出される。その結果、領域201の領域幅が変化する箇所が発生する。この変化した部分を領域202とする。領域202は領域201と接する場合と離れた場所に発生する場合がある。この領域幅が変化した領域202の部分をノイズとみなし除去を行う。
【0046】
続くステップST6にて三角測量手段26は、誤った空間コードが削除された空間コードを用いて三角測量により対象物体の3次元座標を算出する。
【0047】
以上より、実施の形態3によれば、ノイズ判定手段24が、変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出し、ノイズ除去手段25が、抽出された領域の空間コードを除去するように構成した。このため、陰領域に由来する空間コードを除去できるようになり、信頼性を向上できる。
【0048】
なお、上記実施の形態1〜3では、3次元形状計測装置20がカメラ11及びプロジェクタ12を備える構成としたが、これに限定されるものではなく、3次元形状計測装置20とカメラ11及びプロジェクタ12とを別体で構成して、3次元形状計測装置20はカメラ11及びプロジェクタ12の設置角度や設置位置の情報といった三角測量に必要な情報、並びにカメラ11が撮像した撮像画像を取得して、対象物体の3次元形状を計測するようにしてもよい。
【0049】
以上のように、この発明に係る3次元形状計測方法及び3次元形状計測装置は、3次元形状を計測する際に陰領域に由来する誤った情報を除去するようにしたので、整列配置されていない山積み部品から個々の部品を識別して自動的に取り出す、ロボットのビンピッキング制御等に利用するのに適している。
【符号の説明】
【0050】
11 カメラ
12 プロジェクタ
20 3次元形状計測装置
21 画像処理手段
22 投影パターン照射手段
23 空間コード算出手段
24 ノイズ判定手段
25 ノイズ除去手段
26 三角測量手段
100 注目画素
101 隣接画素
200,201,202 領域
【技術分野】
【0001】
この発明は、物体の撮像画像を用いてその物体の3次元形状を計算する3次元形状計測方法及び装置に関するものである。
【背景技術】
【0002】
従来、三角測量に基づいて対象物体の3次元形状を得る計測方法が複数提案されている。この計測方法のひとつにパターン光投影法がある(例えば、特許文献1参照)。パターン光投影法では、コード化された複数の投影パターンを対象物体に照射した状態で撮像し、各投影パターンの撮像画像を画素毎に明暗で2値化し、2値化パターンの内容に基づいて三角測量により対象物体の3次元形状を演算するようにしていた。また、特許文献2に係る3次元形状計測装置では、パターン光投影法のひとつである空間コード化法を用いて、対象物体の3次元形状を計測する。
【0003】
図8及び図9は、従来の、空間コード化法により三角測量を行う3次元形状計測装置の構成を示す図であり、x軸、y軸及びz軸を仮想的に設定した3次元の測定空間のうち、x−z平面を図8に示し、y−z平面を図9に示す。対象物体Pに対して、プロジェクタ12を用いて投影パターンを照射し、カメラ11が視野範囲全面を撮像する。カメラ11は床面Gから高さH1の位置に固定され、固定位置を測定空間の原点Oとする。また、プロジェクタ12は床面Gから高さH2、カメラ11から距離dの位置に固定される。ここで、三角測量を行うには、図8及び図9に示す角度α,β,θを求める必要がある。角度α,θは、カメラ11が撮像した撮像画像中の対象物体Pの位置を利用して求めることができるが、角度βはプロジェクタ12の情報を利用して求める必要がある。
【0004】
この角度βを求めるために、プロジェクタ12から規則に従った投影パターンをN枚投影して、投影領域を2N個に分割する。カメラ11は、対象物体Pに投影パターンを照射した状態で撮像し、3次元形状計測装置がN枚の撮像画像を用いて、分割した個々の領域に対する投影光の角度βを算出し、三角測量を行う。
【0005】
投影パターンは、光が当たる領域(以下、明領域)と当たらない領域(以下、暗領域)からなり、明領域を「1」、暗領域を「0」としてNパターン投影すれば、測定空間の投影領域を2N個に分割してコード化する、即ち各領域に空間コードを割り振ることができる。投影パターンは様々なものが提案されているが、グレイコード(交番2進コード)が一般的である。ここでは、先ずバイナリコードを説明し、その後にグレイコードを説明する。
【0006】
図10は、従来の3次元形状計測装置で用いるバイナリコード投影パターンを示す図である。このバイナリコード投影パターンは、後述する図11のように付与するコード値の2進数を縦方向同一位置に並べたときの、横方向に並んだ各2進数を利用したものである。例えば、投影領域を8個(=23)に分割してコード化するためには、バイナリコード投影パターンが3枚必要となる。図10に示す投影パターン1〜3において、白い部分を明領域、黒い部分を暗領域とする。
図10に示すバイナリコード投影パターン1〜3それぞれをプロジェクタ12が投影し、カメラ11が撮像する。3次元形状計測装置は、投影パターン1〜3の撮像画像の各画素の輝度値に基づいて明暗を「1」、「0」に2値化して、図11に示すように、投影パターン1〜3の同一領域を3ビット長の2進数からなるバイナリコードにし、各バイナリコードを10進数のコード値(空間コード)に変換する。例えば、左端の投影領域のバイナリコードは「111」なので、10進数に変換すればコード値「7」となる。3次元形状計測装置はこのようにして投影領域を「0」〜「7」の8個にコード化する。
【0007】
以下、空間コード化法による3次元形状計測装置の動作を、図12に示すフローチャートを用いて説明する。
図13は、従来の3次元形状計測装置で用いるグレイコード投影パターンを示す図である。グレイコード投影パターンは、付与するコード値の2進数を「最上位桁から1であれば残り下桁を反転、0であれば残り下桁を反転させない」というルールに従って変換する。すると、グレイコードで投影領域を8個に分割してコード化する場合の投影パターン1〜3は図13のようになる。
【0008】
3次元形状計測装置は、図13に示すグレイコード投影パターン1〜3を読み込んで(ステップST1)、プロジェクタ12から測定空間へ向けて各投影パターンを投影し、カメラ11でそれぞれ撮像させる(ステップST2)。
続いて、3次元形状計測装置が、上述のバイナリコート投影パターンと同様に、投影パターン1〜3の撮像画像の同一領域の明暗を「1」、「0」で2値化して(ステップST3)、図14に示すように、投影パターン1〜3の同一領域を3ビット長の2進数からなるグレイコードに変換する(ステップST4)。
【0009】
グレイコード投影パターンを用いる場合は、空間コード取得の際に、グレイコードをバイナリコードに変換するコード変換処理が必要になる。コード変換処理では「最上位ビットはそのまま、以下は全てグレイコードの該当ビットとバイナリコードの1桁上のビットとの排他的論理和を求める」という変換ルールに従ってグレイコードをバイナリコードに変換し、このバイナリコードを10進数に変換してコード値にする(ステップST5)。例えば、左端の投影領域のグレイコードは「100」なので、バイナリコードに変換すると「111」となり、10進数に変換すればコード値「7」となる。
【0010】
ステップST6にて、3次元形状計測装置が、分割された投影領域それぞれの空間コードの値と、撮像画像中の位置情報とから、各投影領域に対する投影光の角度βを求め、下式(1)より対象物体Pの3次元座標(XP,YP,ZP)を算出する。なお、空間コード化法による三角測量は特許文献2等に記載された方法を用いればよいため、ここでは詳細な説明を省略する。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開昭64−54208号公報
【特許文献2】特開2000−65547号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
従来の3次元形状計測方法は以上のように構成されているので、対象物体の表面に凹凸がある場合、投影パターンを照射しても光の当たらない陰の領域が発生してしまい、三角測量に基づいて演算した結果が信頼できないものとなってしまう課題があった。
また、投影パターンの照射時に外乱光及び対象物体の反射光等があると、2値化する際にノイズとなり、投影パターンの誤認識が生じてしまう課題があった。
【0013】
この発明は、上記のような課題を解決するためになされたもので、投影パターンを照射しても光の当たらない陰領域に由来する情報をノイズとして除去することにより、信頼性の高い3次元形状計測結果を得ることを目的とする。
【課題を解決するための手段】
【0014】
この発明に係る3次元形状計測方法は、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定する連結領域設定ステップと、連結領域設定ステップで設定された連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定ステップと、ノイズ判定ステップでノイズと判定した連結領域の3次元情報を除去するノイズ除去ステップとを備えるものである。
【0015】
この発明に係る3次元形状計測方法は、複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成する統合画像生成ステップと、統合画像生成ステップで生成した統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定ステップと、ノイズ判定ステップでノイズと判定した領域内の画素を複数の撮像画像から除去するノイズ除去ステップとを備えるものである。
【0016】
この発明に係る3次元形状計測方法は、変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定ステップと、ノイズ判定ステップで抽出された領域の空間コードを除去するノイズ除去ステップとを備えるものである。
【0017】
この発明に係る3次元形状計測装置は、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、当該連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段と、ノイズ判定手段がノイズと判定した連結領域の3次元情報を除去するノイズ除去手段とを備えるものである。
【0018】
この発明に係る3次元形状計測装置は、複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成し、当該統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定手段と、ノイズ判定手段がノイズと判定した領域内の画素を複数の撮像画像から除去するノイズ除去手段とを備えるものである。
【0019】
この発明に係る3次元形状計測装置は、変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定手段と、ノイズ判定手段が抽出した領域の空間コードを除去するノイズ除去手段とを備えるものである。
【発明の効果】
【0020】
この発明によれば、3次元情報に基づいて高さの差が所定範囲内の画素同士を連結し、連結領域の面積が所定値より小さい場合にノイズと判定して除去するようにしたので、計測結果が近傍の計測結果と比較して大きく変動している場合に陰領域に由来するノイズとして除去できるようになり、この結果、信頼性の高い3次元形状計測結果を得ることができる。
【0021】
この発明によれば、撮像画像から輝度値の変動幅が所定範囲内の画素を抽出し、膨張処理及び収縮処理して結合した領域をノイズと判定して除去するようにしたので、外乱光及び反射光等によって陰領域の輝度値が変動するという原理に基づいて陰領域を判定して撮像画像から除去できるようになり、この結果、信頼性の高い3次元形状計測結果を得ることができる。
【0022】
この発明によれば、空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して除去するようにしたので、陰領域に由来する空間コードを除去できるようになり、この結果、信頼性の高い3次元形状計測結果を得ることができる。
【図面の簡単な説明】
【0023】
【図1】この発明の実施の形態1に係る3次元形状計測装置20の構成を示すブロック図である。
【図2】この発明の実施の形態1に係る3次元形状計測装置20の動作を示すフローチャートである。
【図3】三角測量により得た各画素の3次元座標位置を示す図である。
【図4】ノイズ判定手段24が注目画素と隣接画素が同一領域か否かを判別する同一領域判断処理を説明する図であり、図4(a)は同一領域の例、図4(b)は異なる領域の例を示す。
【図5】この発明の実施の形態2に係る3次元形状計測装置20の動作を示すフローチャートである。
【図6】この発明の実施の形態3に係る3次元形状計測装置20の動作を示すフローチャートである。
【図7】対象物体を撮像した撮像画像において、同一空間コードを持つ領域を示す図であり、図7(a)正しい空間コードを持つ領域の例、図7(b)は誤った空間コードを持つ領域の例を示す。
【図8】空間コード化法により三角測量を行う3次元形状計測装置の構成を示すx−y平面図である。
【図9】図8に示す3次元形状計測装置のy−z平面図である。
【図10】バイナリコード投影パターンを示す図である。
【図11】図10に示すバイナリコード投影パターンに対応する空間コードを示す図である。
【図12】従来の3次元形状計測装置の動作を示すフローチャートである。
【図13】グレイコード投影パターンを示す図である。
【図14】図13に示すグレイコード投影パターンに対応する空間コードを示す図である。
【発明を実施するための形態】
【0024】
実施の形態1.
図1は、この発明の実施の形態1に係る3次元形状計測装置20の構成を示すブロック図である。この3次元形状計測装置20は、例えばロボットを制御して部品の組み立て、加工等を行い製品の製造を行うラインにおいて、整列配置されていない山積みの部品から、ロボットを用いて部品のピッキングを行って、加工、成型等を行う場合を想定したものである。
【0025】
図1に示す3次元形状計測装置20は、先立って説明した図8及び図9に示す配置のカメラ11及びプロジェクタ12を使用するものであり、カメラ11に接続する画像処理手段21と、プロジェクタ12に接続する投影パターン照射手段22と、空間コード算出手段23と、ノイズ判定手段24と、ノイズ除去手段25と、三角測量手段26とを備える。
【0026】
図2は、本実施の形態1に係る3次元形状計測装置20の動作を示すフローチャートである。なお、図2に示すステップST1〜ST6は、図12に示すステップST1〜ST6と同一の処理であるため、詳細な説明は省略する。
投影パターン照射手段22は、プロジェクタ12に接続し、N枚の投影パターンを読み込んでプロジェクタ12から対象物体に照射させる(ステップST1)。画像処理手段21は、カメラ11に接続し、各投影パターンが照射された対象物体をカメラ11に撮像させ、N枚の撮像画像を取得する(ステップST2)。なお、この例では投影パターンとして、図13に示すようなグレイコード投影パターンを用いる。
空間コード算出手段23は、画像処理手段21が取得したN枚の撮像画像の各画素の明暗を「1」、「0」で2値化して(ステップST3)、図14に示すようなNビット長の2進数からなるグレイコードに変換し(ステップST4)、さらに、空間コードに変換する(ステップST5)。
三角測量手段26は、空間コード算出手段23が算出した空間コードを用いて、三角測量により対象物体の各画素の3次元座標を算出し、対象物体の3次元形状を得る(ステップST6)。
【0027】
ここで、対象物体の表面に凹凸がある場合、投影パターンを照射しても光の当たらない陰領域が発生する。この陰領域から得られる計測結果には誤った情報が含まれているため、周辺の計測結果と比較して大きく変動する特徴がある。そこで、撮像画像の各画素から算出した3次元座標に基づいて所定範囲の高さの画素同士を連結する。すると、陰領域は連結領域の面積が小さいという性質があるので、面積が小さい連結領域を陰領域、即ちノイズとして検出して除去することができる。
【0028】
ノイズ判定手段24は、三角測量手段26が3次元座標を算出した撮像画像をラスタスキャンして未処理画素を探す(ステップST7)。ノイズ判定手段24は、発見した未処理画素を注目画素に設定して次のステップST8へ進み(ステップST7“YES”)、未処理画素がなくなればステップST10へ進む(ステップST7“NO”)。
図3は、三角測量により得た各画素の3次元座標位置を示す図である。ノイズ判定手段24は、図中の画素100を開始点にして各画素のラスタスキャンを行い、例えば画素100が未処理画素であれば先ず画素100を注目画素に設定する。
【0029】
続くステップST8にてノイズ判定手段24が、各画素の3次元座標に基づいて、注目画素に接する隣接画素を探索する。このときの探索は、注目画素を中心に4方向を探索する4近傍探索でもよいし、8方向を探索する8近傍探索でもよい。なお、後述のステップST9にて既に別の領域に含まれていると判断した画素は除く。
【0030】
続くステップST9にてノイズ判定手段24は、隣接画素の高さが、注目画素の高さ±h(hは規定値とする)の範囲にあれば隣接画素と注目画素とが同じ領域にあると判断し、範囲外にあれば同じ領域にないと判断する。そして、ノイズ判定手段24は、同一領域と判断した各画素を連結して、連結領域とする。
図4は、ノイズ判定手段24が注目画素と隣接画素が同一領域か否かを判断する同一領域判断処理を説明する図であり、z−y平面において判断する場合を例示する。図4(a)に示すように、注目画素100の高さ位置を中心にして±hの範囲内に隣接画素101が存在する場合、ノイズ判定手段24は同一領域と判断して注目画素100と隣接画素101を連結する。一方、図4(b)に示すように、注目画素100の高さ位置を中心にして±hの範囲外に隣接画素101が存在する場合、ノイズ判定手段24は同一領域にないと判断して、連結しない。
【0031】
このように、ノイズ判定手段24は、注目画素と隣接画素の条件判断を行い、同一領域と判断した画素の連結処理を行う。そして、ノイズ判定手段24は、ステップST9にて同一領域と判断された隣接画素があれば(ステップST9“YES”)、その隣接画素を新たな注目画素に設定して再びステップST8の近傍探索を行う。一方、同一領域と判断される隣接画素がなくなると(ステップST9“NO”)、ノイズ判定手段24は再帰処理を終え、ステップST7に戻って次の注目画素を探索する。
なお、ステップST7〜ST9が連結領域設定ステップである。
【0032】
続くステップST10にて、先ず、ノイズ判定手段24が連結領域の面積が所定値以下であれば陰領域に由来するノイズと判定し(ノイズ判定ステップ)、続いて、ノイズ除去手段25が、この連結領域に含まれる各画素の3次元座標値を除去する(ノイズ除去ステップ)。
【0033】
以上より、実施の形態1によれば、3次元形状計測装置20は、対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、プロジェクタ12から対象物体に順次投影する投影パターン照射手段22と、各投影パターンの投影された対象物体をカメラ11で撮像した複数の撮像画像を取得する画像処理手段21と、撮像画像の各画素を輝度値に応じて2値化して空間コードに変換する空間コード算出手段23と、変換した空間コードを用いた三角測量により画素毎に3次元情報を算出して対象物体の3次元形状を求める三角測量手段26と、画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段24と、ノイズと判定された連結領域の3次元情報を除去するノイズ除去手段25とを備えるように構成した。このため、計測結果が近傍の計測結果と比較して大きく変動している場合に陰領域に由来するノイズとして除去できるようになる。この結果、陰領域の計測結果を含めずに対象物体の3次元形状を算出することができ、信頼性を向上できる。
【0034】
実施の形態2.
外乱光が一切ない理想的な環境下で対象物体にパターン投影すると、原理的に、陰領域の輝度値は変化しない。一方、外乱光のある環境下でパターン投影すると、外乱光や対象物体の表面の反射率によって、陰領域で検出される輝度値はわずかに変動する。ただし、輝度値のこの変動幅は、陰領域以外の領域で検出される輝度値の変化に比べて小さい。そこで、光が当たった場合と当たらない場合の輝度値の変動について基準範囲を設け、基準範囲以内で輝度値が変動する画素を撮像画像から抽出して結合し、この結合領域を陰領域、即ちノイズとみなして除去する。
【0035】
図5は、実施の形態2に係る3次元形状計測装置20の動作を示すフローチャートである。なお、図5に示すステップST1〜ST6は、図12に示すステップST1〜ST6と同一の処理であるため、詳細な説明は省略する。また、実施の形態2に係る3次元形状計測装置20の構成は、図面上では図1、図8及び図9に示す構成と同じであるため、以下の説明ではこれらの図を援用する。
【0036】
以下、輝度値の変動を利用したノイズ除去方法を、2例説明する。
(1)全明、全暗投影パターンを使用する場合
ステップST1にて投影パターン照射手段22がN枚の投影パターンを読み込み、ステップST2にて画像処理手段21が各投影パターンの撮像画像を取得するが、これに加えて、対象物体に光を当てた場合(全明投影パターン)と、全く光を当てない場合(全暗投影パターン)の2枚の撮像画像も取得する。
ステップST11にてノイズ判定手段24は、先ず、対象物体に光を当てた場合の撮像画像と全く光を当てない場合の撮像画像の各画素について平均値を算出し、輝度値比較用画像を作成しておく。ノイズ判定手段24は、続いて、各投影パターンの撮像画像と輝度値比較用画像の各画素を比較して、輝度値の差が基準範囲内の画素を抽出する。
【0037】
(2)反転投影パターンを使用する場合
ステップST1にて投影パターン照射手段22がN枚の撮影パターンを読み込み、ステップST2にて画像処理手段21が各投影パターンの撮像画像を取得するが、これに加えて、N枚の投影パターンそれぞれの明暗を反転させた投影パターンを照射・撮像した撮像画像も取得する。
ステップST11にてノイズ判定手段24は、各投影パターンについて、通常の撮像画像と明暗反転させた場合の撮像画像の各画素について輝度値を比較し、輝度値の差が基準範囲内の画素を抽出する。
【0038】
以下の処理は上記(1)、(2)に共通である。
ステップST12にてノイズ判定手段24は、ステップST11の輝度値比較処理で抽出したN枚の撮像画像の各画素を1枚に統合して統合画像を作成する。基準値の設定に応じて各撮像画像からの画素の抽出密度は異なるが、N枚分の抽出画素を統合して得られる統合画像には点が集中する領域が存在することとなる。
なお、ステップST11,ST12が統合画像生成ステップである。
【0039】
続くステップST13にて、先ず、ノイズ判定手段24が、統合画像中の点群に対して、M回の膨張処理、M回の収縮処理によるクロージング処理を行って、点群を結合した結合領域にする(ノイズ判定ステップ)。続いてノイズ除去手段25が、この結合領域を陰領域に由来するノイズとして、各撮像画像から除去する(ノイズ除去ステップ)。
【0040】
続くステップST5にて空間コード算出手段23は、ノイズが除去されたグレイコードを空間コードに変換して、ステップST6にて三角測量手段26が三角測量により対象物体の3次元座標を算出する。
【0041】
以上より、実施の形態2によれば、ノイズ判定手段24が、複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成し、この統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定し、ノイズ除去手段25が、ノイズと判定された領域内の画素を各撮像画像から除去するように構成した。このため、外乱光及び反射光等によって陰領域の輝度値が変動するという原理に基づいて陰領域を判定して撮像画像から除去できるようになる。この結果、陰領域の画素を含めずに空間コードを算出するようにして、陰領域から誤った空間コードが検出されることを防ぐことができ、信頼性を向上できる。
【0042】
実施の形態3.
三角測量によれば、原理的に、同じ空間コードを持つ領域の幅は幾何学的に計算可能である。従って、陰領域から誤った空間コードが検出されると、同一空間コードを持つ領域の幅が、計算で求めた領域幅より広くなる。そこで、領域幅に基準範囲を設け、基準範囲より領域幅が広い領域を、陰領域に由来する誤った空間コード、即ちノイズとみなして除去する。
【0043】
図6は、実施の形態3に係る3次元形状計測装置20の動作を示すフローチャートである。なお、図6に示すステップST1〜ST6は、図12に示すステップST1〜ST6と同一の処理であるため、詳細な説明は省略する。また、実施の形態3に係る3次元形状計測装置20の構成は、図面上では図1、図8及び図9に示す構成と同じであるため、以下の説明ではこれらの図を援用する。
【0044】
ステップST21にてノイズ判定手段24は、同一空間コードを有する領域に対して、領域幅に基準範囲を設定し、基準範囲より幅の広い領域を撮像画像の全ての領域(投影パターンが8枚の場合、撮像画像は28=256個の領域に分割されている)から抽出する(ノイズ判定ステップ)。
続くステップST22にてノイズ除去手段25が、抽出した領域全てを誤った領域とみなし、空間コードを削除する(ノイズ除去ステップ)。
【0045】
図7は、対象物体を撮像した撮像画像において、同一空間コードを持つ領域200,201を示す図である。それぞれの領域に対し図面上横方向に輪切りしたときの長さをここでは領域幅と呼ぶ。図7(a)に示すように、対象物体Pの表面に凹凸が存在しても、ノイズがなければ、同一空間コードの領域200はほぼ一定の領域幅となる。一方、図7(b)に示すように、対象物体P1,P2の間のようにノイズがあると空間コード値に誤りが発生するため、領域201と同一空間コードをもつ画素が検出される。その結果、領域201の領域幅が変化する箇所が発生する。この変化した部分を領域202とする。領域202は領域201と接する場合と離れた場所に発生する場合がある。この領域幅が変化した領域202の部分をノイズとみなし除去を行う。
【0046】
続くステップST6にて三角測量手段26は、誤った空間コードが削除された空間コードを用いて三角測量により対象物体の3次元座標を算出する。
【0047】
以上より、実施の形態3によれば、ノイズ判定手段24が、変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出し、ノイズ除去手段25が、抽出された領域の空間コードを除去するように構成した。このため、陰領域に由来する空間コードを除去できるようになり、信頼性を向上できる。
【0048】
なお、上記実施の形態1〜3では、3次元形状計測装置20がカメラ11及びプロジェクタ12を備える構成としたが、これに限定されるものではなく、3次元形状計測装置20とカメラ11及びプロジェクタ12とを別体で構成して、3次元形状計測装置20はカメラ11及びプロジェクタ12の設置角度や設置位置の情報といった三角測量に必要な情報、並びにカメラ11が撮像した撮像画像を取得して、対象物体の3次元形状を計測するようにしてもよい。
【0049】
以上のように、この発明に係る3次元形状計測方法及び3次元形状計測装置は、3次元形状を計測する際に陰領域に由来する誤った情報を除去するようにしたので、整列配置されていない山積み部品から個々の部品を識別して自動的に取り出す、ロボットのビンピッキング制御等に利用するのに適している。
【符号の説明】
【0050】
11 カメラ
12 プロジェクタ
20 3次元形状計測装置
21 画像処理手段
22 投影パターン照射手段
23 空間コード算出手段
24 ノイズ判定手段
25 ノイズ除去手段
26 三角測量手段
100 注目画素
101 隣接画素
200,201,202 領域
【特許請求の範囲】
【請求項1】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測方法であって、
前記画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定する連結領域設定ステップと、
前記連結領域設定ステップで設定された連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定ステップと、
前記ノイズ判定ステップでノイズと判定した連結領域の3次元情報を除去するノイズ除去ステップとを備えることを特徴とする3次元形状計測方法。
【請求項2】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測方法であって、
前記複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成する統合画像生成ステップと、
前記統合画像生成ステップで生成した統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定ステップと、
前記ノイズ判定ステップでノイズと判定した領域内の画素を前記複数の撮像画像から除去するノイズ除去ステップとを備えることを特徴とする3次元形状計測方法。
【請求項3】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測方法であって、
前記変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定ステップと、
前記ノイズ判定ステップで抽出された領域の空間コードを除去するノイズ除去ステップとを備えることを特徴とする3次元形状計測方法。
【請求項4】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測装置であって、
前記画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、当該連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段と、
前記ノイズ判定手段がノイズと判定した連結領域の3次元情報を除去するノイズ除去手段とを備えることを特徴とする3次元形状計測装置。
【請求項5】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮影した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測装置であって、
前記複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成し、当該統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定手段と、
前記ノイズ判定手段がノイズと判定した領域内の画素を前記複数の撮像画像から除去するノイズ除去手段とを備えることを特徴とする3次元形状計測装置。
【請求項6】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測装置であって、
前記変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定手段と、
前記ノイズ判定手段が抽出した領域の空間コードを除去するノイズ除去手段とを備えることを特徴とする3次元形状計測装置。
【請求項1】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測方法であって、
前記画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定する連結領域設定ステップと、
前記連結領域設定ステップで設定された連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定ステップと、
前記ノイズ判定ステップでノイズと判定した連結領域の3次元情報を除去するノイズ除去ステップとを備えることを特徴とする3次元形状計測方法。
【請求項2】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測方法であって、
前記複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成する統合画像生成ステップと、
前記統合画像生成ステップで生成した統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定ステップと、
前記ノイズ判定ステップでノイズと判定した領域内の画素を前記複数の撮像画像から除去するノイズ除去ステップとを備えることを特徴とする3次元形状計測方法。
【請求項3】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測方法であって、
前記変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定ステップと、
前記ノイズ判定ステップで抽出された領域の空間コードを除去するノイズ除去ステップとを備えることを特徴とする3次元形状計測方法。
【請求項4】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測装置であって、
前記画素毎の3次元情報に基づいて、注目画素と隣接画素の高さを比較し、高さの差が所定範囲内の画素同士を連結して連結領域を設定し、当該連結領域の面積が所定値より小さい場合にノイズと判定するノイズ判定手段と、
前記ノイズ判定手段がノイズと判定した連結領域の3次元情報を除去するノイズ除去手段とを備えることを特徴とする3次元形状計測装置。
【請求項5】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮影した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測装置であって、
前記複数の撮像画像それぞれの各画素について、光が投影された場合と光が投影されない場合での輝度値の変動幅が所定範囲内の画素を抽出し、1枚の画像上に統合して統合画像を生成し、当該統合画像を膨張処理及び収縮処理して、各画素が結合した領域をノイズと判定するノイズ判定手段と、
前記ノイズ判定手段がノイズと判定した領域内の画素を前記複数の撮像画像から除去するノイズ除去手段とを備えることを特徴とする3次元形状計測装置。
【請求項6】
対象物体を含む測定空間を分割する空間コードに対応した複数の投影パターンを、前記対象物体に順次投影して撮像した複数の撮像画像を用いて、各画素を輝度値に応じて2値化して前記空間コードに変換し、変換した前記空間コードを用いた三角測量により前記画素毎に3次元情報を算出して前記対象物体の3次元形状を求める3次元形状計測装置であって、
前記変換した空間コードが同一の画素が集合した領域のうち、領域幅が所定値より広い領域をノイズと判定して抽出するノイズ判定手段と、
前記ノイズ判定手段が抽出した領域の空間コードを除去するノイズ除去手段とを備えることを特徴とする3次元形状計測装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2011−133258(P2011−133258A)
【公開日】平成23年7月7日(2011.7.7)
【国際特許分類】
【出願番号】特願2009−290796(P2009−290796)
【出願日】平成21年12月22日(2009.12.22)
【出願人】(000006666)株式会社山武 (1,808)
【Fターム(参考)】
【公開日】平成23年7月7日(2011.7.7)
【国際特許分類】
【出願日】平成21年12月22日(2009.12.22)
【出願人】(000006666)株式会社山武 (1,808)
【Fターム(参考)】
[ Back to top ]