JP2016003886A - 形状抽出装置及び形状抽出方法 - Google Patents
形状抽出装置及び形状抽出方法 Download PDFInfo
- Publication number
- JP2016003886A JP2016003886A JP2014122634A JP2014122634A JP2016003886A JP 2016003886 A JP2016003886 A JP 2016003886A JP 2014122634 A JP2014122634 A JP 2014122634A JP 2014122634 A JP2014122634 A JP 2014122634A JP 2016003886 A JP2016003886 A JP 2016003886A
- Authority
- JP
- Japan
- Prior art keywords
- voxel
- virtual
- voxels
- labeling
- shape
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Length Measuring Devices With Unspecified Measuring Means (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
Abstract
【課題】膨大なデータ量の3次元点群データの場合であっても、3次元点群データから高速に物体の形状を抽出することができる形状抽出装置及び形状抽出方法を提供する。【解決手段】3次元に分布する複数の点からなり、物体の形状を表す3次元点群データに対して、複数の点のすべてを包括する包括ボクセルを設定する包括ボクセル設定部3202と、複数の点のピッチよりも大きなサイズを有する複数の仮想ボクセルで包括ボクセルを分割する仮想ボクセル設定部3204と、複数の仮想ボクセルのそれぞれに固有の識別番号を設定するボクセルID設定部3208と、識別番号が付与された仮想ボクセル内の点の有無に応じて、仮想ボクセルを単位としてラベリング処理を行い、点を含む複数の仮想ボクセルのうち、連結する仮想ボクセルに同一のラベル値を付与するラベリング処理部3212とを有している。【選択図】図3
Description
本発明は、3次元点群データから物体の形状を抽出する形状抽出装置及び形状抽出方法に関する。
アルミニウム鋳造品等の部品の形状には、種々の原因により設計とは異なる欠陥部分が生じることがある。そこで、検査対象である部品の3次元形状データを取得し、これを設計データ、良品の3次元形状データ等の基準となる形状データと比較することにより欠陥部分を検出することが行われている。
上記のような3次元形状データに対する処理の一つとして、ラベリング処理が行われている。ラベリング処理は、2次元画像や3次元画像等の画像において、連結する画素又は領域に対して同一のラベル値を割り振る処理である。このようなラベリング処理は、画像のデータ量が増大するほど処理に要する時間が長時間になる。このため、ラベリング処理の高速化が求められている。
特許文献1には、複雑な2値画像のラベリング処理の処理速度を向上することを目的としたラベリング処理方法が記載されている。特許文献1に記載されたラベリング処理方法では、まず、3次元画像である2値画像にラベリング処理が施され、仮ラベル画像が作成される。次いで、仮ラベル画像の異なるラベル番号が連結している箇所のラベル番号を格納した仮ラベルテーブルが作成される。次いで、仮ラベルテーブルに基づいて、仮ラベル画像のラベル番号に対する最終ラベル画像のラベル番号を格納した再ラベルテーブルが作成される。次いで、再ラベルテーブルが参照され、仮ラベル画像のラベル番号が変換され、最終ラベル画像が作成される。また、仮ラベルテーブルを作成する際には、任意の画素のラベル番号と任意の画素の周囲に存在する3×3×2の画素集合のラベル番号とが比較されている。
しかしながら、従来のラベリング処理方法では、例えば数十万点を超えるような大規模の画素データを有する3次元画像について、全画素データを対象にして処理を行おうとすると、非常に長い処理時間を要することになる。処理時間を短縮するためには、全画素データを複数の画素データ群に分割し、画素データ群毎に並列に処理することも考えられる。しかしながら、特許文献1に記載されるような従来のラベリング処理方法では、各画素データ群の間で同一のラベル番号が存在することになり、これらを区別することができない。区別するためには、分割した全画素データを通して再度ラベル番号を付与する処理等が必要になるため、結局、処理時間を短縮することは困難であると考えられる。
また、分割した画素データ群の間でラベル番号が重複しないように、画素データ群毎にある程度の範囲のラベル番号を割り当てることも考えられる。しかしながら、ラベリング処理前には各画素データ群に必要な最小ラベル番号数が不明であるため、余裕を持った数のラベル番号を割り当てる必要があり、ラベリング処理に負担がかかることになる。また、メモリ等のハードウェア資源を効率的に使用することも困難になる。
また、特許文献1に記載されたラベリング処理方法は、縦横に等ピッチで配列された画素データについて、背景に対応する0と物体に対応する1との2値で表現した2値画像を前提とするものである。このため、縦横に等ピッチで配列されない不等ピッチの画素データには、特許文献1に記載されたラベリング処理方法を適用することは困難であると考えられる。
また、特許文献1に記載されたラベリング処理方法では、上述のように、仮ラベルテーブルを作成する際に、任意の画素のラベル番号と任意の画素の周囲に存在する3×3×2の画素集合のラベル番号とが比較されている。しかしながら、2値画像の周囲端のように、注目画素の周囲に3×3×2の画素集合が存在しない場合、存在しない画素についてのラベリング処理を回避するため、2値画像における注目画素の位置を判定する処理が別途必要になる。この結果、処理時間の短縮化は困難であると考えられる。
本発明の目的は、膨大なデータ量の3次元点群データの場合であっても、3次元点群データから高速に物体の形状を抽出することができる形状抽出装置及び形状抽出方法を提供することにある。
本発明の一観点によれば、3次元に分布する複数の点からなり、物体の形状を表す3次元点群データに対して、前記複数の点のすべてを包括する包括ボクセルを設定する包括ボクセル設定部と、前記複数の点のピッチよりも大きなサイズを有する複数の仮想ボクセルで前記包括ボクセルを分割する仮想ボクセル設定部と、複数の前記仮想ボクセルのそれぞれに固有の識別番号を設定する識別番号設定部と、前記識別番号が付与された前記仮想ボクセル内の前記点の有無に応じて、前記仮想ボクセルを単位として第1のラベリング処理を行い、前記点を含む前記複数の仮想ボクセルのうち、連結する前記仮想ボクセルに同一のラベル値を付与する第1のラベリング処理部とを有する形状抽出装置が提供される。
また、本発明の他の観点によれば、3次元に分布する複数の点からなり、物体の形状を表す3次元点群データに対して、前記複数の点のすべてを包括する包括ボクセルを設定するステップと、前記複数の点のピッチよりも大きなサイズを有する複数の仮想ボクセルで前記包括ボクセルを分割するステップと、複数の前記仮想ボクセルのそれぞれに固有の識別番号を設定するステップと、前記識別番号が付与された前記仮想ボクセル内の前記点の有無に応じて、前記仮想ボクセルを単位としてラベリング処理を行い、前記点を含む前記複数の仮想ボクセルのうち、連結する前記仮想ボクセルに同一のラベル値を付与するステップとを有する形状抽出方法が提供される。
本発明によれは、膨大なデータ量の3次元点群データの場合であっても、3次元点群データから高速に物体の形状を抽出することができる。
[一実施形態]
本発明の一実施形態による形状抽出装置及び形状抽出方法について図1乃至図16を用いて説明する。
本発明の一実施形態による形状抽出装置及び形状抽出方法について図1乃至図16を用いて説明する。
まず、本実施形態による形状抽出装置について図1乃至図7を用いて説明する。図1は、本実施形態による形状抽出装置の全体構成を示す概略図である。図2は、ワークの形状を表す3次元点群データの一例を示す概略図である。図3は、本実施形態による形状抽出装置における演算部の構成を示す概略図である。図4は、本実施形態による形状抽出装置における包括ボクセル設定部による包括ボクセルの設定を説明する概略図である。図5は、本実施形態による形状抽出装置における仮想ボクセル設定部による仮想ボクセルの設定を説明する概略図である。図6は、本実施形態による形状抽出装置における周辺ボクセル設定部による周辺ボクセルの設定を説明する概略図である。図7は、本実施形態による形状抽出装置におけるラベリング処理部によるラベリング処理の際の注目の仮想ボクセルに対する26近傍の仮想ボクセルを示す概略図である。
図1に示すように、本実施形態による形状抽出装置10は、ワーク台12上に載置されたワーク14の画像データを取得するセンサユニット16と、センサユニット16が取り付けられた多関節ロボット18とを有している。また、本実施形態による形状抽出装置10は、多関節ロボット18の動作を制御するロボットコントローラ20と、形状抽出装置10の動作の制御、データの処理等を行う制御装置22とを有している。
センサユニット16は、ワーク14に対してスリット状のレーザ光Lを照射するレーザ光源24を有している。レーザ光源24から出射されたレーザ光Lは、扇形に広がってスリット状の状態でワーク14に照射される。レーザ光源24は、特にその構成が限定されるものではなく、スリット状のレーザ光Lを照射することができるものであればよい。レーザ光源24には、後述する制御装置22のレーザ制御部28が接続されており、レーザ光源24によるレーザ光Lの照射がレーザ制御部28により制御されるようになっている。
また、センサユニット16は、レーザ光源24によりレーザ光Lが照射されたワーク14を撮像してワーク14の画像データを取得する撮像装置26を有している。撮像装置26は、例えばCCDカメラ、CMOSカメラ等で構成することができ、特にその構成が限定されるものではないが、高解像度のものであることが好ましい。撮像装置26には、後述する制御装置22の画像処理部30が接続されており、撮像装置26により取得されたワーク14の画像データが画像処理部30に送られるようになっている。
上記レーザ光源24及び撮像装置26を有するセンサユニット16は、多関節ロボット18のアーム先端部に取り付けられている。多関節ロボット18は、回動可能なアーム、伸縮可能なアーム、屈曲可能な関節部等を有しており、ワーク台12上のワーク14に対するセンサユニット16の位置及び向きを変更することが可能になっている。多関節ロボット18には、ロボットコントローラ20が接続されており、ロボットコントローラ20により多関節ロボット18の動作が制御されるようになっている。ロボットコントローラ20には、後述する制御装置22が接続されている。ロボットコントローラ22は、制御装置22からロボットコントローラ22に出力される制御信号に基づき、多関節ロボット18の動作を制御する。
制御装置22は、演算、制御等の処理を実行するCPUを有し、また、CPUによって実行される制御プログラム、CPUが参照するデータベース等を格納するROMを有している。また、制御装置22は、CPUが処理中のデータや入力データ等を一時的に格納するRAMを有している。このようにCPU等により構成される制御装置22は、具体的には、レーザ制御部28と、画像処理部30と、演算部32と、記憶部34とを有している。レーザ制御部28、画像処理部30及び演算部32は、CPU及びこれにより実行されるプログラムによって構成されている。
レーザ制御部28は、レーザ光源24によるレーザ光Lの照射を制御するものである。レーザ制御部28は、レーザ光源24に対して制御信号を出力することによりレーザ光源24の点灯及び消灯を制御する。
画像処理部30には、撮像装置26により取得されたワーク14の画像データが送られる。画像処理部30は、撮像装置26から送られるワーク14の画像データを格納する画像メモリ(図示せず)を有している。画像処理部30は、ワーク14の画像データに対して所定の画像処理を行うことにより、ワーク17の画像データから、ワーク14の形状を表す3次元点群データを生成する。この3次元点群データは、不等ピッチで分布し、ワーク14の表面上の位置情報を有する複数の点からなり、ワーク14という物体の形状を表すものである。
形状抽出装置10では、光切断法により、ワーク14の形状を表す3次元点群データが取得される。3次元点群データを取得する際には、レーザ光源24により、スリット状のレーザ光Lがワーク14に照射される。レーザ光Lが照射されたワーク14は、撮像装置26により撮像される。こうして、撮像装置26により、スリット状のレーザ光Lが照射されているワーク14の画像データが取得される。ワーク14の画像データは画像処理部30に送られ、画像処理部30の画像メモリに格納される。
画像処理部30は、ワーク14の画像データからレーザ光Lが照射されている部分を抽出する。さらに、画像処理部30は、抽出した部分の画像情報に基づき、三角測量法の原理に従って、レーザ光Lが照射されている部分にわたって、ワーク14の表面上における3次元的な位置を示す点の位置情報を求める。
形状抽出装置10は、レーザ光源24により照射されるレーザ光Lを走査し又はレーザ光Lとワーク14との相対位置を変更して、ワーク14におけるレーザ光Lの照射位置を変更しつつ、各照射位置について撮像装置26によりワーク14の撮像を繰り返す。このようにして得られたワーク14の画像データのそれぞれに基づき、画像処理部30は、上記のようにしてワーク14の表面上における3次元的な位置を示す点の位置情報を求める。こうして、画像処理部30において、ワーク14の表面上の位置情報を有する複数の点からなり、ワーク14の形状を表す3次元点群データが取得される。取得された3次元点群データは、制御装置22が有する記憶部34等の記憶手段に格納される。
図2は、上記のようにして取得されたワーク14の形状を表す3次元点群データの一例を示している。3次元点群データ14Dは、ワーク14の表面上における3次元的な位置を示す複数の点により構成され、それら複数の点によりワーク14の外形形状が表現されている。3次元点群データ14Dに対しては3次元座標系が定義され、3次元点群データ14Dの各点は3次元座標を有している。なお、ワーク14は特定の部品等に限定されるものではなく、あらゆる物体をワーク14として形状抽出の対象とすることができる。
演算部32は、画像処理部30において取得された3次元点群データ14Dが入力され、その3次元点群データ14Dに対し、後述する仮想ボクセルを単位とするラベリング処理を行うものである。演算部32は、図3に示すように、包括ボクセル設定部3202と、仮想ボクセル設定部3204と、周辺ボクセル設定部3206と、ボクセルID設定部3208と、データ有無判定部3210と、ラベリング処理部3212とを有している。
包括ボクセル設定部3202は、図4に示すように、画像処理部30において取得された3次元点群データ14Dに対して、そのすべての点を包括する直方体又は立方体の包括ボクセルVAを設定するものである。包括ボクセルVAは、X軸に沿った方向を幅方向、Y軸に沿った方向を高さ方向、Z軸に沿った方向を奥行き方向とするものとする。包括ボクセル設定部3202は、3次元点群データ14Dの各点について、X座標の最大値及び最小値、Y座標の最大値及び最小値、及びZ座標の最大値及び最小値をそれぞれ求める。次いで、包括ボクセル設定部3202は、X座標の最大値と最小値の差分を包括ボクセルVAの幅として計算し、Y座標の最大値と最小値の差分を包括ボクセルVAの高さとして計算し、Z座標の最大値と最小値の差分を包括ボクセルVAの奥行きとして計算する。
仮想ボクセル設定部3204は、図5に示すように、包括ボクセル設定部3202により設定された包括ボクセルVAを所定のサイズの直方体又は立方体の仮想ボクセルviで分割する。仮想ボクセルviのサイズ、すなわち仮想ボクセルviの幅、高さ及び奥行きは、3次元点群データ14Dの点の間のピッチよりも大きなものとし、例えば、3次元点群データ14Dの点の間の最大ピッチの1.5倍とする。仮想ボクセル設定部3204は、仮想ボクセルviのX方向、Y方向及びZ方向のボクセル数をそれぞれWidth個、Height個及びDepth個として、複数の仮想ボクセルviを包括ボクセルVA内の3次元点群データ14Dに対して設定する。後述するように、ラベリング処理部3212によるラベリング処理は、こうして設定された仮想ボクセルviを単位として行われる。
周辺ボクセル設定部3206は、図6に示すように、仮想ボクセル設定部3204により設定された仮想ボクセル全体の全周囲にわたって、仮想ボクセルviと同様の周辺ボクセルvpを1ボクセル分だけ設定する。なお、周辺ボクセルvpと仮想ボクセルviとの関係を示すため、図6では、正面、上面及び右側面の一部について周辺ボクセルvpの表示を省略している。
周辺ボクセルvpは、ラベリング処理部3212によるラベリング処理に際して、注目する仮想ボクセルviとの連結性を判定するその近傍の仮想ボクセルviに含められる。これにより、ラベリング処理を行う注目の仮想ボクセルviが最外周に位置するものであっても、最外周に位置することを考慮することなく他の仮想ボクセルviと同様にラベリング処理を行うことができる。このように周辺ボクセルvpを設定することにより、ラベリング処理を行う注目の仮想ボクセルviが最外周に位置するか否かの判定処理が不要になるため、ラベリング処理の高速化を図ることができる。
ボクセルID設定部3208は、仮想ボクセル設定部3204により設定された複数の仮想ボクセルviのそれぞれに対して、固有の識別番号(ID番号)を付与するものである。仮想ボクセルviに付与する識別番号は、仮想ボクセルviのそれぞれに固有のものであれば特に限定されるものではないが、仮想ボクセルviの全部について又は仮想ボクセルviの一定数毎について連続する番号であって、簡単な計算式で求められるものが好ましい。具体的には、仮想ボクセルviのボクセル座標を(Xi,Yi,Zi)(ただし、Xiは0≦Xi≦Width−1を満たす整数、Yiは0≦Yi≦Height−1を満たす整数、Ziは0≦Zi≦Depth−1を満たす整数である。)とすると、仮想ボクセルviに付与する識別番号VoxelIDは、例えば、次式により求めることができる。なお、次式では、仮想ボクセルviの全周囲にわたって設定された周辺ボクセルvpがX方向、Y方向及びZ方向の各方向に2ボクセルずつ存在することを考慮し、周辺ボクセルvpも識別番号VoxelIDのカウントに含めたものである。次式における識別番号VoxelIDは、(Width+2)×(Height+2)+(Width+2)+1以上の整数となる。
VoxelID=(Zi+1)×{(Width+2)×(Height+2)}
+(Yi+1)×(Width+2)
+(Xi+1)
VoxelID=(Zi+1)×{(Width+2)×(Height+2)}
+(Yi+1)×(Width+2)
+(Xi+1)
また、次式によりVoxelIDを求めることもできる。
VoxelID=(Xi+1)×{(Height+2)×(Depth+2)}
+(Zi+1)×(Height+2)
+(Yi+1)
VoxelID=(Xi+1)×{(Height+2)×(Depth+2)}
+(Zi+1)×(Height+2)
+(Yi+1)
また、次式によりVoxelIDを求めることもできる。
VoxelID=(Yi+1)×{(Depth+2)×(Width+2)}
+(Xi+1)×(Depth+2)
+(Zi+1)
VoxelID=(Yi+1)×{(Depth+2)×(Width+2)}
+(Xi+1)×(Depth+2)
+(Zi+1)
上記識別番号VoxelIDを求める3式は、3次元点群データにおけるデータの生成順等に応じて選定することができる。例えば、上記3式のうち、1番目の式は、X方向及びY方向にデータが生成され、次いでZ方向にデータが定まる場合に好適に用いることができる。2番目の式は、Y方向及びZ方向にデータが生成され、次いでX方向にデータが定まる場合に好適に用いることができる。3番目の式は、Z方向及びX方向にデータが生成され、次いでY方向にデータが定まる場合に好適に用いることができる。
データ有無判定部3210は、複数の仮想ボクセルviのそれぞれについて、仮想ボクセルvi内に3次元点群データ14Dの点が存在するか否かを判定する。判定の結果、データ有無判定部3210は、3次元点群データ14Dの点が存在する仮想ボクセルviには、点の存在を示す値である「1」を付与する。また、データ有無判定部3210は、3次元点群データ14Dの点が存在しない仮想ボクセルviには、点の不存在を示す値である「0」を付与する。データ有無判定部3210により仮想ボクセルviに対して3次元点群データ14Dの点の存否に応じた値を付与することにより、3次元点群データ14Dの点の存在しない背景部分を3次元点群データ14Dから取り除くことができる。これにより、3次元点群データ14Dからワーク14の形状を高速に抽出することが可能になる。
ラベリング処理部3212は、識別番号が付与された仮想ボクセルvi内の3次元点群データ14Dの点の有無に応じて、仮想ボクセルviを単位としてラベリング処理を行うものである。具体的には、ラベリング処理部3212は、データ有無判定部3210により値「1」が付与された複数の仮想ボクセルviに対してラベリング処理を行う。
ラベリング処理に際し、ラベリング処理部3212は、図7に示すように、注目する仮想ボクセルvi(図7中、網掛けした立方体で示す。)について、その周辺の26近傍に位置する仮想ボクセルvi(図7中、破線の立方体で示す。)との連結関係を判定する。その結果、ラベリング処理部3212は、点の存在を示す値「1」が付与された仮想ボクセルviについて、連結する仮想ボクセルviに同一のラベル値を付与する。
また、ラベリング処理部3212は、仮想ボクセル全体を所定のボクセル数の仮想ボクセルviからなる仮想ボクセル群に分割し、各仮想ボクセル群についてのラベリング処理を並列処理することも可能である。並列処理によりラベリング処理の高速化を図ることができる。なお、仮想ボクセルの分割数は、特に限定されるものではなく、3次元点群データ14Dのデータ量、演算部32の演算速度等に応じて適宜設定することができる。
また、ラベリング処理を並列処理する場合には、ラベリング処理部3212は、各仮想ボクセル群についてのラベリング処理の並列処理の後、仮想ボクセル群の間の接合面に隣接する複数の仮想ボクセルviについてラベリング処理を行う。これにより、ラベリング処理部3212は、分割した仮想ボクセル群の間の接合面を跨ぐ仮想ボクセルvi間の連結関係を判定する。
記憶部34は、3次元点群データ14Dが格納される記憶領域、識別番号等の仮想ボクセルviに関する情報が格納される記憶領域、仮想ボクセルvi間の連結関係を示す連結テーブルが格納される記憶領域等を有するものである。
以下、本実施形態による上記形状抽出装置10を用いた形状抽出方法についてさらに図8乃至図16を用いて説明する。図8は、本実施形態による形状抽出方法を示すフローチャートである。図9は、本実施形態による形状抽出方法におけるラベリング処理の準備を示すフローチャートである。図10及び図11は、本実施形態による形状抽出方法におけるラベリング処理を示すフローチャートである。図12は、本実施形態による形状抽出方法におけるラベリング処理の際のラベル値の付与処理を示すフローチャートである。図13乃至図15は、本実施形態による形状抽出方法におけるラベリング処理の際のラベル値の付与処理の具体例を示す概略図である。図16は、本実施形態による形状抽出方法における分割ラベリングを説明する概略図である。
まず、形状抽出の対象となるワーク14をワーク台12上に載置する。次いで、レーザ光源24により照射されるレーザ光Lを走査し又はレーザ光Lとワーク14との相対位置を変更して、ワーク14におけるレーザ光Lの照射位置を変更しつつ、各照射位置について撮像装置26によりワーク14の撮像を繰り返す。
上記のようにして得られたワーク14の画像データのそれぞれに基づき、画像処理部30により、三角測量法の原理に従って、ワーク14の表面上における3次元的な位置を示す点の位置情報を求める。こうして、画像処理部30において、ワーク14の形状を表す3次元点群データ14Dを取得する(図8:ステップS1)。取得された3次元点群データ14Dは、記憶部34に格納され、ラベリング処理に際して演算部32に読み出されることになる。
次に、取得した3次元点群データ14Dのデータ量等に応じたラベリング処理の準備を行う(図8:ステップS2)。ラベリング処理の準備の詳細は、以下に述べるとおりである。
まず、仮想ボクセル設定部3204において、仮想ボクセルviのサイズ、すなわち仮想ボクセルviの幅、高さ及び奥行きを設定する(図9:ステップS11)。仮想ボクセルviの幅、高さ及び奥行きは、要求されるラベリング処理の分解能等に応じて適宜設定することができるが、3次元点群データ14Dの点の間のピッチよりも大きくなるように設定する。
次いで、包括ボクセル設定部3202において、3次元点群データ14Dのすべての点を包括する包括ボクセルVAのサイズ、すなわち包括ボクセルVAの幅、高さ及び奥行きを設定する(図9:ステップS12)。なお、包括ボクセルVAの幅、高さ及び奥行きは、それぞれステップS11にて設定した仮想ボクセルviの幅、高さ及び奥行きの整数倍になるように設定する。
次いで、仮想ボクセル設定部3204において、上記仮想ボクセルvi及び包括ボクセルVAのサイズに基づき、仮想ボクセルviのX方向、Y方向及びZ方向のボクセル数であるWidth、Height及びDepthをそれぞれ計算する(図9:ステップS13)。計算したWidth、Height及びDepthは、仮想ボクセルviの識別番号の計算に用いられる。
次いで、記憶部34に、識別番号等の仮想ボクセルviに関する情報を格納する記憶領域を確保する(図9:ステップS14)。
次いで、記憶部34に、仮想ボクセルviの連結関係を示す連結テーブルを格納する記憶領域を確保する(図9:ステップS15)。連結テーブルには、仮想ボクセルviの識別番号に対応してラベル値が保存される。
次いで、ラベリング処理を分割して並列処理する分割ラベリングを行うか否かを決定し、分割ラベリングを行う場合には、仮想ボクセル全体を複数の仮想ボクセル群に分割する分割数を設定する(図9:ステップS16)。分割ラベリングを行わない場合には、分割数に1を設定し、分割ラベリングを行う場合には、分割数に2以上の整数を設定する。
こうして、ステップS2のラベリング処理の準備を終了する。
次に、仮想ボクセルviを単位とするラベリング処理を行う(図8:ステップS3)。ラベリング処理の詳細は、以下に述べるとおりである。
まず、上記ステップS1にて取得した3次元点群データ14Dを演算部32に読み込む(図10:ステップS21)。
次いで、包括ボクセル設定部3202により、3次元点群データ14Dに対して、上記ステップS12にてサイズを設定した包括ボクセルVAを設定する(図10:ステップS22)。
次いで、仮想ボクセル設定部3204により、包括ボクセルVAに対して、上記ステップS11にてサイズを設定した仮想ボクセルviを設定して、仮想ボクセルviで包括ボクセルVAを分割する(図10:ステップS23)。
次いで、周辺ボクセル設定部3206により、仮想ボクセル全体の全周囲にわたって、仮想ボクセルviと同様の周辺ボクセルvpを1ボクセル分だけ設定する(図10:ステップS24)。
次いで、ボクセルID設定部3208により、各仮想ボクセルviに識別番号を付与する(図10:ステップS25)。識別番号は、連続する番号とすることができ、例えば、上述した識別番号VoxelIDを計算する式に従って計算することができる。
次いで、データ有無判定部3210により、各仮想ボクセルvi内における3次元点群データ14Dの点の有無を判定する(図10:ステップS26)。判定の結果、3次元点群データ14Dの点が存在する仮想ボクセルviには、点の存在を示す値である「1」を付与し、存在しない仮想ボクセルviには、点の不存在を示す値である「0」を付与する。これにより、3次元点群データ14Dから、その点が存在しない背景部分を高速に除去することができる。
ラベリング処理では、値「1」が付与された仮想ボクセルviを対象にラベリングが行われ、値「1」は、ラベリング処理が行われていないことを示す未ラベル値として扱われる。ここで付与された値「0」又は「1」は、仮想ボクセルviの識別番号と対応付けられて記憶部34に保存される。
次いで、上記ステップS16で設定されたラベリング処理の分割数が1であるか否かを判定する(図10:ステップS27)。
分割数が1である場合、すなわちラベリング処理の分割を行わない場合(ステップS27、YES)、そのままラベル値の付与処理(図10:ステップS30)に移行する。
一方、2以上の分割数が設定されており、分割数が1でない場合(ステップS27、NO)、分割した各仮想ボクセル群について、先頭の仮想ボクセルviの識別番号及びボクセル数を保存する(図10:ステップS28)。次いで、分割した仮想ボクセル群のラベリングを並列処理するためのスレッドを起動する(図10:ステップS29)。次いで、ラベル値の付与処理(図10:ステップS30)に移行し、スレッド毎に各仮想ボクセル群についてラベル値の付与処理を行う。
ステップS30のラベル値の付与処理は、ラベリング処理部3212により、対象となる仮想ボクセルviについてラベル値の付与を行うものである。対象となる仮想ボクセルviは、分割ラベリングを行わない場合には仮想ボクセル全体であり、分割ラベリングを行う場合には分割した仮想ボクセル群に含まれる仮想ボクセルviである。以下、このラベル値の付与処理の詳細について述べる。
まず、未ラベル値「1」が付与されている注目の仮想ボクセルvi及びその26近傍の仮想ボクセルviの位置を特定する(図12:ステップS41)。
次いで、26近傍の仮想ボクセルviに付与されているラベル値のうちの最小値である最小ラベル値を探索する(図12:ステップS42)。なお、値「1」が未ラベル値として扱われ、ラベル値としては2以上の整数が付与される。このため、ここで探索される最小ラベル値は、2以上の整数である。この探索により発見された最小ラベル値は、記憶部34に一時的に格納される。
次いで、26近傍の仮想ボクセルviのなかに、既にラベルが付与されたラベル済みのものがあるか否かを判定する(図12:ステップS43)。
ラベル済みの仮想ボクセルviがない場合(ステップS43、NO)、注目の仮想ボクセルviの識別番号を、その注目の仮想ボクセルviのラベル値とする(図12:ステップS44)。注目の仮想ボクセルviの識別番号に対応付けられて保存されている未ラベル値「1」は、ラベル値としてその注目の仮想ボクセルviの識別番号に書き換えられる。その後、図12:ステップS46に移行する。
一方、ラベル済みの仮想ボクセルviがある場合(ステップS43、YES)、上記ステップS42にて探索により発見した最小ラベル値を、注目の仮想ボクセルviのラベル値とする(図12:ステップS45)。注目の仮想ボクセルviの識別番号に対応付けられて保存されている未ラベル値「1」は、ラベル値として最小ラベル値に書き換えられる。その後、図12:ステップS46に移行する。
ステップS46では、注目の仮想ボクセルviに対する26近傍の仮想ボクセルviのなかに、未ラベル値「1」が付与されている未ラベルの仮想ボクセルviがあるか否かを判定する。
未ラベルの仮想ボクセルviがある場合(ステップS46、YES)、上記ステップS42にて探索により発見した最小ラベル値を、その未ラベルの仮想ボクセルviのラベル値とする(ステップS47)。その未ラベルの仮想ボクセルviの識別番号に対応付けられて保存されている未ラベル値「1」は、ラベル値として最小ラベル値に書き換えられる。なお、26近傍の仮想ボクセルviにラベル済みのものがなく、上記ステップ42において最小ラベル値が発見されていない場合がある。この場合、未ラベルの仮想ボクセルviのラベル値は、上記ステップS44にて付与した注目の仮想ボクセルviのラベル値と同じものとして、その未ラベル値「1」がそのラベル値に書き換えられる。その後、図12:ステップS48に移行する。
一方、未ラベルの仮想ボクセルviがない場合(ステップS46、NO)、そのまま図12:ステップS48に移行する。
ステップS48では、注目の仮想ボクセルviに対する26近傍の仮想ボクセルのすべてのラベル値が、上記ステップS42にて探索により発見した最小ラベル値になっているか否かを判定する。
最小ラベル値になっていない場合(ステップS48、NO)、異なるラベル値が付与された仮想ボクセルviが連結していることになるため、連結テーブルにそれらの異なるラベル値を関連付けて保存する(図12:ステップS49)。連結テーブルには、ラベル値として用いられた仮想ボクセルviの識別番号と、その仮想ボクセルviに連結する仮想ボクセルviのラベル値とを関連づけて保存することができ、これによりラベル済みの仮想ボクセルviの間の連結情報を保存することができる。より具体的には、連結テーブルは、ラベル値として用いられた仮想ボクセルviの識別番号に対応する順番の値として、その仮想ボクセルviに連結する仮想ボクセルviのラベル値を保存することができるようになっている。この点については、後述する図13乃至図15に示す具体例を用いて詳述する。その後、図12:ステップS50に移行する。なお、上記ステップS42において最小ラベル値が発見されていない場合には、そのまま図12:ステップS50に移行する。
一方、最小ラベル値になっている場合(ステップS48、YES)、そのまま図12:ステップS50に移行する。
ステップS50では、ラベル値の付与の対象となっている仮想ボクセルviのすべてについて、ラベル値を付与する処理を終了したか否かを判定する。
対象となる仮想ボクセルviのすべてについてラベル値の付与を終了していない場合(ステップS50、NO)、ラスタースキャン方式により注目の仮想ボクセルviを変更する(図12:ステップS51)。その後、ステップS41に戻り、ラベル値の付与を継続する。
一方、対象となる仮想ボクセルviのすべてについてラベル値の付与を終了している場合(ステップS50、YES)、ラベル値の付与処理を完了する。
ここで、上記ラベル値の付与処理の具体例について図13乃至図15を用いて説明する。図13乃至図15では、グレーで示す注目の仮想ボクセルviに対して、26近傍の仮想ボクセルviのうち、前面側の9個のボクセル(Front)、中央周囲8個のボクセル(Current)、背面側の9個のボクセル(Back)を示している。
まず、図13に示す26近傍の仮想ボクセルviについて、ラベル済みのボクセルがあるか否かを判定する(ステップS43)。図13に示す場合、ラベル値として「91」、「97」が付与されたボクセルが存在している。「91」<「97」であり、26近傍の仮想ボクセルviにおける最小ラベル値は「91」であるため、注目の仮想ボクセルviにラベル値として最小ラベル値である「91」を付与する(ステップS45)。
次いで、図13に示す26近傍の仮想ボクセルviについて、未ラベルのボクセルがあるか否かを判定する(ステップS46)。図13に示す場合、未ラベル値「1」が付与されている未ラベルのボクセルが2個存在している。そこで、図14に示すように、これら未ラベルのボクセルにラベル値として最小ラベル値である「91」をそれぞれ付与する(ステップS47)。
こうして、図15に示すように、注目の仮想ボクセルvi及びその26近傍の仮想ボクセルviについてラベル値が付与される。ここで、26近傍の仮想ボクセルviがすべて最小ラベル値か否かを判定する(ステップS48)。図15に示す場合、注目の仮想ボクセルviに付与された最小ラベル値である「91」ではない「97」が付与されたボクセルが存在している。この「97」が付与されたボクセルが「91」が付与された注目の仮想ボクセルviと連結していることを示す連結情報を連結テーブルLUTに保存するため、連結テーブルLUTの97番目の値として「91」を保存する(ステップS49)。このようにして、仮想ボクセルviの間の連結情報が連結テーブルLUTに保存される。
上記のようにしてステップS30においてラベル値を付与した後、ラベリング処理の分割数が1であるか否かを判定する(図11:ステップS31)。
分割数が1である場合、すなわちラベリング処理の分割を行わない場合(ステップS31、YES)、そのまま図11:ステップS35に移行する。
一方、2以上の分割数が設定されており、分割数が1でない場合(ステップS31、NO)、分割した各仮想ボクセル群が接合する接合面の数を確定する(図32:ステップS32)。接合面の数は、上記ステップS16にて設定した分割数から1を引いた値である。同時に、接合面に隣接する複数の仮想ボクセルviについて、先頭の仮想ボクセルviの識別番号及びボクセル数を保存する。
次いで、ラベル値の付与処理(図11:ステップS33)に移行し、接合面に隣接する複数の仮想ボクセルviについてラベル値の付与処理を行う。ステップS33のラベル値の付与処理は、上述した図12に示すステップS41〜S51を有するものであり、対象となる仮想ボクセルviについてラベル値の付与を行う。ここで対象となる仮想ボクセルviは、接合面に隣接する複数の仮想ボクセルviである。接合面に隣接する複数の仮想ボクセルviについてラベル値の付与を行うことにより、分割した仮想ボクセル群の間の接合面を跨ぐ仮想ボクセルvi間の連結関係がラベリング処理の結果に反映される。
ステップS33においてラベルの付与処理を完了した後、接合面すべてに関し、接合面に隣接する複数の仮想ボクセルviについてラベル値の付与の処理を終了したか否かを判定する(図11:ステップS34)。
接合面すべてに関しラベル値の付与処理を終了していない場合(ステップS34、NO)、ステップS33に戻り、他の接合面に関しラベルの付与処理を行う。
一方、接合面すべてに関しラベル値の付与処理を終了した場合(ステップS34、YES)、図11:ステップS35に移行する。
ここで、分割ラベリングの例について図16を用いて説明する。図16は、分割数を3として分割ラベリングを行う場合を示している。図16(a)に示すように、仮想ボクセル全体を複数の仮想ボクセル群G1、G2、G3に分割する。そして、仮想ボクセル群G1、G2、G3についてのラベリング処理を並列処理し、それぞれのラベリング処理の結果を連結テーブルLUTに保存する。
次に、図16(b)に示すように、仮想ボクセル群G1と仮想ボクセル群G2との接合面に隣接する複数の仮想ボクセルJ1についてラベリング処理を行う。また、仮想ボクセル群G2と仮想ボクセル群G3との接合面に隣接する複数の仮想ボクセルJ2についてラベリング処理を行う。これら複数の仮想ボクセルJ1、J2のラベリング処理の結果を連結テーブルLUTに反映させることにより、接合面を跨ぐ仮想ボクセルviの連結関係をラベリング処理の結果に反映させることができる。
上記のようにしてラベル値の付与処理を行った後、ステップS35では、連結テーブルにおいて、仮想ボクセルviの識別番号と、その仮想ボクセルviのラベル値とが一致しているかを判定する。この判定は、ラベル値を付与した仮想ボクセルviの順序とは逆順に行っていく。図16に示す場合には、図16(c)に示すように、連結テーブルLUTを逆順に探索していく。
注目の仮想ボクセルviの識別番号とこれに対応するラベル値とが一致していない場合(ステップS35、NO)、そのラベル値と同一の識別番号を逆順に遡って参照する。参照した識別番号とこれに対応するラベル値が一致しない場合には、さらに、そのラベル値と同一の識別番号を逆順に遡って参照し、これを繰り返して、識別番号とこれに対応するラベル値とが一致するものを探索する。探索した結果、識別番号とこれに対応するラベル値とが一致する仮想ボクセルviが発見されたら、そのラベル値を、識別番号とラベル値とが一致していない注目の仮想ボクセルviのラベル値として、連結テーブルを書き換える(図11:ステップS36)。その後、ステップS35の判定を繰り返す。
一方、識別番号とラベル値とが一致している場合(ステップS35、YES)、連結関係のすべてが完成し、連結テーブルが完成したかを判定する(ステップS37)。
連結テーブルが完成していない場合(ステップS37、NO)、ステップS35の判定を繰り返す。
一方、連結テーブルが完成した場合(ステップS37、YES)、ステップS3のラベリング処理を終了する。
以上のようにして、仮想ボクセルviを単位とするラベリング処理を行うことにより、ワーク14の形状が抽出される。
本実施形態によれば、3次元点群データ14Dについて、仮想ボクセルviを単位とすするラベリング処理を行うため、3次元点群データ14Dのデータ量が膨大であっても、ラベリング処理を高速に行うことができる。したがって、本実施形態によれば、ワーク14の形状を高速に抽出することができる。しかも、ラベリング処理の単位が仮想ボクセルviであるため、3次元点群データ14Dの点が不等ピッチで分布するものであっても、ラベリング処理を行うことができる。
また、本実施形態によれば、仮想ボクセルviに固有の識別番号を付与し、識別番号に基づいてラベリング処理を行うため、識別番号の数を超えるラベル値の数を確保する必要がない。したがって、本実施形態によれば、ラベリング処理における負担を軽減することができる。
また、本実施形態によれば、仮想ボクセル全体を分割した仮想ボクセル群のラベリング処理を並列処理することにより、ラベリング処理のさらなる高速化を図ることができる。
なお、上記のように仮想ボクセルviを単位とするラベリング処理を行った後、所定の仮想ボクセルviに含まれる3次元点群データの複数の点についてラベリング処理を別個に行うこともできる。この場合、上記仮想ボクセルviを単位とするラベリング処理を行うラベリング処理部3212を第1のラベリング処理部として、演算部32は、この3次元点群データの複数の点についてのラベリング処理を行う第2のラベリング処理部をさらに有するものとすることができる。なお、第2のラベリング処理部によるラベリング処理には常法を用いることができる。このように、第1のラベリング処理部による仮想ボクセルviを単位とする第1のラベリング処理と、第2のラベリング処理部による3次元点群データの複数の点についての第2のラベリング処理とを順次行うこともできる。
また、上記本実施形態による形状抽出方法は、アルミニウム鋳造品等の部品を製造する部品の製造方法において、部品となるワークを得た後、そのワークの形状における欠陥検査に利用することができる。この場合、本実施形態による形状抽出方法を用い、検査対象のワークについてラベリング処理の結果を得る。次いで、検査対象のワークについて得られたラベリング処理の結果を、良品であるワークについて得られたラベリング処理の結果、設計データに基づくラベリング処理の結果等の基準結果と比較する。この比較結果に基づき、検査対象であるワークの形状における欠陥部分を検出することができる。
[変形実施形態]
上記実施形態に限らず、種々の変形が可能である。
上記実施形態に限らず、種々の変形が可能である。
例えば、上記実施形態では、光切断法により3次元点群データを取得する場合について説明したが、3次元点群データの取得方法は特に限定されるものではなく、光切断法のほか、種々の方法を用いることができる。また、3次元点群データは、必ずしも不等ピッチでその点が分布するものである必要はなく、等ピッチでその点が分布するものであってもよい。
また、上記実施形態では、注目の仮想ボクセルviに対して、26近傍の仮想ボクセルviとの連結関係を判定する場合について説明したが、演算部32の処理能力、要求される精度等に応じて、18近傍、6近傍の仮想ボクセルviとの連結関係を判定してもよい。
10・・・形状抽出装置
12・・・ワーク台
14・・・ワーク
14D・・・3次元点群データ
16・・・センサユニット
18・・・多関節ロボット
20・・・ロボットコントローラ
22・・・制御装置
24・・・レーザ光源
26・・・撮像装置
28・・・レーザ制御部
30・・・画像処理部
32・・・演算部
3202・・・包括ボクセル設定部
3204・・・仮想ボクセル設定部
3206・・・周辺ボクセル設定部
3208・・・ボクセルID設定部
3210・・・データ有無判定部
3212・・・ラベリング処理部
34・・・記憶部
VA・・・包括ボクセル
vi・・・仮想ボクセル
vp・・・周辺ボクセル
12・・・ワーク台
14・・・ワーク
14D・・・3次元点群データ
16・・・センサユニット
18・・・多関節ロボット
20・・・ロボットコントローラ
22・・・制御装置
24・・・レーザ光源
26・・・撮像装置
28・・・レーザ制御部
30・・・画像処理部
32・・・演算部
3202・・・包括ボクセル設定部
3204・・・仮想ボクセル設定部
3206・・・周辺ボクセル設定部
3208・・・ボクセルID設定部
3210・・・データ有無判定部
3212・・・ラベリング処理部
34・・・記憶部
VA・・・包括ボクセル
vi・・・仮想ボクセル
vp・・・周辺ボクセル
Claims (8)
- 3次元に分布する複数の点からなり、物体の形状を表す3次元点群データに対して、前記複数の点のすべてを包括する包括ボクセルを設定する包括ボクセル設定部と、
前記複数の点のピッチよりも大きなサイズを有する複数の仮想ボクセルで前記包括ボクセルを分割する仮想ボクセル設定部と、
複数の前記仮想ボクセルのそれぞれに固有の識別番号を設定する識別番号設定部と、
前記識別番号が付与された前記仮想ボクセル内の前記点の有無に応じて、前記仮想ボクセルを単位として第1のラベリング処理を行い、前記点を含む前記複数の仮想ボクセルのうち、連結する前記仮想ボクセルに同一のラベル値を付与する第1のラベリング処理部と
を有する形状抽出装置。 - 前記仮想ボクセルの周辺に前記仮想ボクセルと同様の周辺ボクセルを設定する周辺ボクセル設定部をさらに有し、
前記第1のラベリング処理部は、前記第1のラベリング処理に際して、注目の前記仮想ボクセルとの連結性を判定するその近傍の前記仮想ボクセルに前記周辺ボクセルを含める請求項1記載の形状抽出装置。 - 所定の前記仮想ボクセル内に含まれる前記複数の点について第2のラベリング処理を行う第2のラベリング処理部をさらに有する請求項1又は2に記載の形状抽出装置。
- 前記第1のラベリング処理部は、前記複数の仮想ボクセルを複数の仮想ボクセル群に分割し、前記複数の仮想ボクセル群についての前記第1のラベリング処理を並列処理する請求項1乃至3のいずれか1項に記載の形状抽出装置。
- 前記第1のラベリング処理部は、前記複数の仮想ボクセル群について前記ラベリング処理を行った後、前記複数の仮想ボクセル群の間の接合面に隣接する前記仮想ボクセルについて前記第1のラベリング処理を行って、前記第1のラベリング処理の結果に反映させる請求項4記載の形状抽出装置。
- 前記点が含まれる前記仮想ボクセルに対して前記点の存在を示す値を付与し、前記点が含まれない前記仮想ボクセルに対して前記点の不存在を示す値を付与するデータ有無判別部をさらに有する請求項1乃至5のいずれか1項に記載の形状抽出装置。
- 3次元に分布する複数の点からなり、物体の形状を表す3次元点群データに対して、前記複数の点のすべてを包括する包括ボクセルを設定するステップと、
前記複数の点のピッチよりも大きなサイズを有する複数の仮想ボクセルで前記包括ボクセルを分割するステップと、
複数の前記仮想ボクセルのそれぞれに固有の識別番号を設定するステップと、
前記識別番号が付与された前記仮想ボクセル内の前記点の有無に応じて、前記仮想ボクセルを単位としてラベリング処理を行い、前記点を含む前記複数の仮想ボクセルのうち、連結する前記仮想ボクセルに同一のラベル値を付与するステップと
を有する形状抽出方法。 - 部品となるワークを得るステップと、
請求項7記載の形状抽出方法を用い、前記物体として前記ワークについて前記ラベリング処理を行うステップと、
前記ラベリング処理の結果に基づき、前記ワークの形状における欠陥部分を検出するステップと
を有する部品の製造方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014122634A JP2016003886A (ja) | 2014-06-13 | 2014-06-13 | 形状抽出装置及び形状抽出方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014122634A JP2016003886A (ja) | 2014-06-13 | 2014-06-13 | 形状抽出装置及び形状抽出方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016003886A true JP2016003886A (ja) | 2016-01-12 |
Family
ID=55223270
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014122634A Pending JP2016003886A (ja) | 2014-06-13 | 2014-06-13 | 形状抽出装置及び形状抽出方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016003886A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12046055B2 (en) | 2019-03-07 | 2024-07-23 | Nec Corporation | Associating two dimensional label data with three-dimensional point cloud data |
-
2014
- 2014-06-13 JP JP2014122634A patent/JP2016003886A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12046055B2 (en) | 2019-03-07 | 2024-07-23 | Nec Corporation | Associating two dimensional label data with three-dimensional point cloud data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101604037B1 (ko) | 카메라와 레이저 스캔을 이용한 3차원 모델 생성 및 결함 분석 방법 | |
JP5911934B2 (ja) | 輪郭線計測装置およびロボットシステム | |
JP4492654B2 (ja) | 3次元計測方法および3次元計測装置 | |
JP5953842B2 (ja) | 画像検査方法および検査領域設定方法 | |
JP6270361B2 (ja) | 三次元画像処理装置、三次元画像処理方法及び三次元画像処理プログラム並びにコンピュータで読み取り可能な記録媒体及び記録した機器 | |
JP6242098B2 (ja) | 三次元画像処理装置、三次元画像処理方法及び三次元画像処理プログラム並びにコンピュータで読み取り可能な記録媒体及び記録した機器 | |
WO2012053521A1 (ja) | 光学情報処理装置、光学情報処理方法、光学情報処理システム、光学情報処理プログラム | |
JP2016502750A5 (ja) | ||
EP3985615A1 (en) | Point cloud data processing device, point cloud data processing method, and program | |
JP6635712B2 (ja) | 検査方法、検査装置、画像処理装置、プログラム及び記録媒体 | |
JP2006349586A (ja) | 3次元計測方法および3次元計測装置 | |
JP6621351B2 (ja) | レーザー加工用の画像処理装置及び画像処理方法 | |
TW201705088A (zh) | 基於場景之立體影像所產生之差異圖 | |
JP6599697B2 (ja) | 画像測定装置及びその制御プログラム | |
JP6749528B1 (ja) | 変状管理装置、変状管理方法、および変状管理プログラム | |
JP6599698B2 (ja) | 画像測定装置及びその制御プログラム | |
JP2015021756A (ja) | 三次元画像処理装置、三次元画像処理方法及び三次元画像処理プログラム並びにコンピュータで読み取り可能な記録媒体及び記録した機器 | |
WO2021166381A1 (ja) | 点群データ処理装置、点群データ処理方法及びプログラム | |
KR101653861B1 (ko) | 묘화 데이터 생성 방법, 묘화 방법, 묘화 데이터 생성 장치, 및 묘화 장치 | |
JP2016003886A (ja) | 形状抽出装置及び形状抽出方法 | |
JP2013200648A (ja) | 濃淡画像のエッジ抽出方法、エッジ抽出装置並びに濃淡画像のエッジ抽出プログラム | |
JP6300120B2 (ja) | 制御用データ生成方法および制御用データ生成装置 | |
JP4784396B2 (ja) | 3次元形状計測方法及びこれを用いた3次元形状計測装置 | |
JP6207270B2 (ja) | 三次元画像処理装置、三次元画像処理方法及び三次元画像処理プログラム並びにコンピュータで読み取り可能な記録媒体及び記録した機器 | |
JP6266243B2 (ja) | 三次元画像処理装置、三次元画像処理方法及び三次元画像処理プログラム並びにコンピュータで読み取り可能な記録媒体及び記録した機器 |