特許第6248228号(P6248228)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社日立製作所の特許一覧

<>
  • 特許6248228-図面作成システム及び図面作成方法 図000002
  • 特許6248228-図面作成システム及び図面作成方法 図000003
  • 特許6248228-図面作成システム及び図面作成方法 図000004
  • 特許6248228-図面作成システム及び図面作成方法 図000005
  • 特許6248228-図面作成システム及び図面作成方法 図000006
  • 特許6248228-図面作成システム及び図面作成方法 図000007
  • 特許6248228-図面作成システム及び図面作成方法 図000008
  • 特許6248228-図面作成システム及び図面作成方法 図000009
  • 特許6248228-図面作成システム及び図面作成方法 図000010
  • 特許6248228-図面作成システム及び図面作成方法 図000011
  • 特許6248228-図面作成システム及び図面作成方法 図000012
  • 特許6248228-図面作成システム及び図面作成方法 図000013
  • 特許6248228-図面作成システム及び図面作成方法 図000014
  • 特許6248228-図面作成システム及び図面作成方法 図000015
  • 特許6248228-図面作成システム及び図面作成方法 図000016
  • 特許6248228-図面作成システム及び図面作成方法 図000017
  • 特許6248228-図面作成システム及び図面作成方法 図000018
  • 特許6248228-図面作成システム及び図面作成方法 図000019
  • 特許6248228-図面作成システム及び図面作成方法 図000020
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6248228
(24)【登録日】2017年11月24日
(45)【発行日】2017年12月13日
(54)【発明の名称】図面作成システム及び図面作成方法
(51)【国際特許分類】
   G06F 17/50 20060101AFI20171204BHJP
   G06T 17/20 20060101ALI20171204BHJP
【FI】
   G06F17/50 624A
   G06T17/20
【請求項の数】15
【全頁数】19
(21)【出願番号】特願2017-500205(P2017-500205)
(86)(22)【出願日】2015年2月18日
(86)【国際出願番号】JP2015054482
(87)【国際公開番号】WO2016132490
(87)【国際公開日】20160825
【審査請求日】2016年12月26日
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001678
【氏名又は名称】特許業務法人藤央特許事務所
(72)【発明者】
【氏名】藤本 敬介
(72)【発明者】
【氏名】渡邊 高志
【審査官】 合田 幸裕
(56)【参考文献】
【文献】 国際公開第2011/070927(WO,A1)
【文献】 特開2012−088834(JP,A)
【文献】 特開2014−186566(JP,A)
【文献】 特開2013−131171(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/50
G06T 17/20
IEEE Xplore
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
計測部による周囲の計測結果から形状図面を作成する図面作成システムであって、
前記計測部が計測した形状データによって構成される面の法線を推定する法線認識部と、
前記法線の方向を一つの座標軸とする座標系を算出する座標系算出部と、
前記座標系の座標軸と直交する面に囲まれる形状を部分形状とする部分形状決定部と、
前記部分形状が前記形状データを表す点を包含し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、複数の前記部分形状を配置する形状復元部とを備えることを特徴とする図面作成システム。
【請求項2】
請求項1に記載の図面作成システムであって、
前記形状データを複数の分割形状データに分割する分割部を備え、
前記法線認識部は、前記分割形状データ毎に法線を認識し、
前記座標系算出部は、前記分割形状データ毎に前記法線の方向を一つの軸とする座標系を算出し、
前記形状復元部は、前記分割形状データ毎に、前記部分形状が前記分割形状データを表す点を包含し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、複数の前記部分形状を配置することを特徴とする図面作成システム。
【請求項3】
請求項1に記載の図面作成システムであって、
前記部分形状決定部は、オペレータの指示に基づいて、前記部分形状の各辺の長さを決定し、前記部分形状の形状を決定することを特徴とする図面作成システム。
【請求項4】
請求項1に記載の図面作成システムであって、
前記部分形状決定部は、前記形状データが前記部分形状の表面に位置し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、前記部分形状の形状を決定することを特徴とする図面作成システム。
【請求項5】
請求項1から4のいずれか一つに記載の図面作成システムであって、
前記形状復元部は、前記部分形状の面の作成に利用しなかった二つの法線と直交する方向に前記部分形状を並べて配置することを特徴とする図面作成システム。
【請求項6】
請求項1から4のいずれか一つに記載の図面作成システムであって、
前記法線認識部は、前記形状データによって構成される面が大きい順に法線を推定することを特徴とする図面作成システム。
【請求項7】
請求項6に記載の図面作成システムであって、
前記法線認識部は、前記形状データによって構成される複数の平面の大きさ及び法線を関連付けてメモリに記録し、
前記座標系算出部は、前記複数の平面が大きい順に、当該平面に対応する法線を座標軸として選ぶことによって座標系を算出することを特徴とする図面作成システム。
【請求項8】
請求項7に記載の図面作成システムであって、
前記座標系算出部は、推定された法線のうち、方向が異なる二つの法線の外積を算出することによって、前記形状データによって構成されない面に対応する座標軸を定めることを特徴とする図面作成システム。
【請求項9】
請求項7に記載の図面作成システムであって、
前記座標系算出部は、オペレータが指示した方向に座標軸を定めることを特徴とする図面作成システム。
【請求項10】
請求項1から4のいずれか一つに記載の図面作成システムであって、
前記座標系算出部は、前記形状データの複数の位置毎に座標系を算出し、当該位置の情報と前記算出された座標系の情報とを関連付けてメモリに記録し、
前記形状復元部は、前記位置毎に算出された座標系を用いて、前記部分形状を配置することを特徴とする図面作成システム。
【請求項11】
計測部による周囲の計測結果から形状図面をコンピュータを用いて作成する方法であって、
前記コンピュータは、プログラムを実行するプロセッサと、前記プログラムを格納するメモリとを有し、
前記方法は、
前記プロセッサが、前記計測部が計測した形状データによって構成される面の法線を推定する法線認識手順と、
前記プロセッサが、前記法線の方向を一つの座標軸とする座標系を算出する座標系算出手順と、
前記プロセッサが、前記座標系の座標軸と直交する面に囲まれる形状を部分形状とする部分形状決定手順と、
前記プロセッサが、前記部分形状が前記形状データを表す点を包含し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、複数の前記部分形状を配置する形状復元手順とを含むことを特徴とする図面作成方法。
【請求項12】
請求項11に記載の図面作成方法であって、
前記プロセッサが、前記形状データを複数の分割形状データに分割する分割手順を含み、
前記法線認識手順では、前記分割形状データ毎に法線を認識し、
前記座標系算出手順では、前記分割形状データ毎に前記法線の方向を一つの軸とする座標系を算出し、
前記形状復元手順では、前記分割形状データ毎に算出された座標系を用いて、前記部分形状を配置することを特徴とする図面作成方法。
【請求項13】
請求項11に記載の図面作成方法であって、
前記部分形状決定手順では、オペレータの指示に基づいて、前記部分形状の各辺の長さを決定し、前記部分形状の形状を決定することを特徴とする図面作成方法。
【請求項14】
請求項11に記載の図面作成方法であって、
前記部分形状決定手順では、前記形状データが前記部分形状の表面に位置し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、前記部分形状の形状を決定することを特徴とする図面作成方法。
【請求項15】
請求項11から14のいずれか一つに記載の図面作成方法であって、
前記形状復元手順では、前記部分形状の面の作成に利用しなかった二つの法線と直交する方向に前記部分形状を並べて配置することを特徴とする図面作成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、形状計測センサが計測した形状データから図面を作成するためのシステム及び方法に関する。
【背景技術】
【0002】
空間の形状を記録するための一つの手段として、周囲の存在物までの距離を測ることによって存在物の三次元的な形状を計測できる形状計測センサがある。形状計測センサを用いると、手計りに比べ迅速かつ高精度に空間全体の形状を取得でき、また人の手が届かない高所や危険な場所を離れた地点から非破壊で形状を計測できる。
【0003】
本技術の背景技術として、特開2005−43248号公報(特許文献1)、国際公開2011/070927号公報(特許文献2)、特開2014−089104号公報(特許文献3)がある。特許文献1(特開2005−43248号公報)には、非対称の3次元形状のマーカーを被測定物の測定箇所に取り付け、被測定物の部分領域を形状測定器によりマーカーと共に光学的に3次元測定して測定値を得て、その後、形状測定器を移動して、マーカーを含む被測定物の他の測定箇所の部分領域を光学的に3次元測定して測定値を得る。そして、測定値から、マーカーを認識すると共に、マーカーの位置・姿勢を算出して、マーカーに基づいて座標変換係数を算出し、測定値を同一座標系に変換して、被測定物の外形形状を測定する3次元形状測定方法が記載されている。
【0004】
また、特許文献2(国際公開2011/070927号公報)には、測定対象物の点群データから非面領域の点を除去する非面除去部と、非面除去部によって除去された点以外の点に対して、同一面上の点に同一ラベルを付与する面ラベリング部と、面ラベリング部によって区分けされた面同士の交線および面を凸状に包む凸包線の少なくとも一に基づき三次元エッジを抽出する三次元エッジ抽出部と、面ラベリング部によって区分けされた面内から二次元エッジを抽出する二次元エッジ抽出部と、三次元エッジと二次元エッジを統合するエッジ統合部とを備える点群データ処理装置1が記載されている。
【0005】
また、特許文献3(特開2014−89104号公報)には、レーザ測定手段がレーザ発射点から測定対象の表面上の照射点までの距離を測定し、3次元座標を算定した3次元点群データを取得する3次元点群取得手段と、体積推定対象の物体が存在しない状態を測定対象として取得した3次元点群データである背景データと体積推定対象の物体が存在する状態を測定対象として複数の地点から取得した3次元点群データである複数の前景データを記憶するデータ記憶手段と、複数の前景データのそれぞれと背景データから体積推定対象の物体について複数の物体ボクセルデータを生成するボクセルデータ生成手段と、複数の物体ボクセルデータに共通する部分として抽出した共通部ボクセルデータの体積を体積推定対象の物体の体積として出力する体積計算手段とを備える体積推定装置が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2005−43248号公報
【特許文献2】国際公開2011/070927号公報
【特許文献3】特開2014−89104号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
前述した従来技術によると、特許文献1に記載されるようなレーザ光を用いた形状計測では、周囲の形状を計測点の集合(以下、点群と称する)として測定できる。そして、特許文献2に記載されるように、計測した点群から面やエッジを認識することで3次元図面を生成することができる。
【0008】
しかしながら、面やエッジを認識するために十分な量の計測データが必要である。このため、細かな部分までを図面化するためには、大量の計測データが必要となる。計測データ量が不十分である場合、面やエッジを認識できず、図面が作成できない場合がある。
【0009】
これに対し、細かな部分まで失敗せずに図面化するためには、特許文献3に開示されているように、実測した点群データを複数の小さな立方体の集合で近似することによって、図面を作成できる。しかしながら、立方体の向きと、存在物の面の向きが異なっている場合には、復元される面に段が生じ、面が崩れるという課題がある。
【課題を解決するための手段】
【0010】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、計測部による周囲の計測結果から形状図面を作成する図面作成システムであって、前記計測部が計測した形状データによって構成される面の法線を推定する法線認識部と、前記法線の方向を一つの座標軸とする座標系を算出する座標系算出部と、前記座標系の座標軸と直交する面に囲まれる形状を部分形状とする部分形状決定部と、前記部分形状が前記形状データを表す点を包含し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、複数の前記部分形状を配置する形状復元部とを備える。
【発明の効果】
【0011】
本発明の一形態によれば、存在物の面の形状を崩すことなく、かつ、形状復元に失敗せずに図面を作成することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【0012】
図1】第1実施例の図面作成システムの概要の構成を示す図である。
図2】第1実施例の複数の部位から構成される形状データを処理可能な図面作成システムの概要の構成を示す図である。
図3】第1実施例の図面作成システムの物理的な構成を示すブロック図である。
図4】第1実施例の形状計測部が計測した周囲の存在物の形状データの例を示す図である。
図5】第1実施例の分割部による形状データの分割例を示す図である。
図6】第1実施例の法線認識部による形状データの法線認識処理のフローチャートである。
図7】第1実施例の法線認識部が法線を認識した結果の例を示す図である。
図8】第1実施例の座標系算出部が算出した座標系情報の例を示す図である。
図9】第1実施例の部分形状決定部による部分形状の決定例を示す図である。
図10】第1実施例の部分形状決定部による面配置方向及び部分形状配置方向の算出例を示す図である。
図11】第1実施例の部分形状決定部による部分形状の作成を示す図である。
図12】第1実施例の形状復元部による形状復元例を示す図である。
図13】第1実施例の形状復元部による形状復元結果を示す図である。
図14】第1実施例の本実施例の図面作成システムが実行する処理のフローチャートである。
図15】第2実施例の法線認識部が法線を認識した結果の例を示す図である。
図16】第2実施例の座標系算出部が算出した座標系情報の例を示す図である。
図17】第2実施例の部分形状決定部による部分形状の算出例を示す図である。
図18】第2実施例の形状復元部による部分形状の配置例を示す図である。
図19】第2実施例の形状復元部による形状の復元を示す図である。
【発明を実施するための形態】
【0013】
以下、図面を用いて本発明の実施例について説明する。
【0014】
<第1実施例>
第1実施例の図面作成システムは、存在物の表面と裏面とが平行である場合に、面を崩さずに形状を復元する。多くの人工物が存在する環境であっても、上記条件が成り立つ場合に、第1実施例の図面作成システムを利用することができる。
【0015】
図1は、本実施例の図面作成システムの概要の構成を示す図である。
【0016】
図1に示す図面作成システムは、最小限の構成として、法線認識部12、座標系算出部14、部分形状決定部16及び形状復元部18を有する。また、図面作成システムは、形状計測部10が周囲の形状を計測した形状データ11、形状データの法線を表す法線情報13、形状復元に用いる座標系を示す座標系情報15、対象の形状を近似するために使用する部分形状17及び復元された形状を含む図面情報19を記憶装置(メモリ2、補助記憶装置3)に格納する。
【0017】
本実施例では、形状データ11の一例として、点の集合(点群)を扱うが、形状を表す(具体的には、形状が取得できてエッジや頂点の情報を含まない)データであればよい。
【0018】
まず、法線認識部12は、形状データ上の法線を認識する。複数の法線が存在する場合、法線と面の大きさとを対にして法線情報13として記憶する。例えば、ハフ変換などの平面認識方法を用いて法線を認識することができる。
【0019】
座標系算出部14は、法線情報13を用いて形状データ11の形状復元に用いる座標系情報15を算出する。例えば、法線情報13に記憶されている法線方向を用いて、座標系を構成する各座標軸を決定する。対象空間が三次元空間である場合、3本の座標軸が必要となる。認識できた法線の数が3本未満の場合、オペレータが指定した方向を座標軸として用いてもよい。例えば、オペレータは、計測できなかった存在物の面と等しい向きを指定すればよい。具体的には、上面が計測できなかった場合は、鉛直上向きとすればよい。また、座標軸が2本以上算出されている場合、作成済みの座標軸の外積の方向を新たな座標軸としてもよい。
【0020】
本実施例の図面作成システムは、小さな部分形状17を複数配置することによって対象の形状を近似する。部分形状17の形状は、部分形状決定部16が定める。その際、作成済みの各座標軸と直交する平面の集合で囲まれる領域を部分形状17に定める。部分形状17の各辺の長さは、オペレータの指定に従って定めるとよい。例えば、復元すべき形状の精度によって長さを設定すればよい。又は、本実施例では計測点を包含するように部分形状17を配置するので、計測点の計測密度に応じて長さを設定すればよい。
【0021】
形状復元部18は、計測した形状データ11を包含するように、部分形状17を並べる。形状復元部18は、面が崩れないように、隣り合う面が滑らかに接続されるように並べる。例えば、座標系情報15から以下の方法で算出される方向に部分形状17を積み重ねることによって、面を滑らかに接続することができる。例えば、積み重ねの方向は、部分形状17の各面について、当該面の作成に用いなかった法線群(二次元空間であれば1本の法線、三次元空間であれば2本の法線)と直交する向きとすることができる。また、面が崩れないようにするその他の方法として、新しく追加される部分形状17が既存の部分形状17の面と接続される位置に部分形状17を逐次追加してもよい。
【0022】
形状復元部18は、配置した部分形状17の集合を図面情報19として出力する。
【0023】
図2は、複数の部位から構成される形状データ11を処理可能な図面作成システムの概要の構成を示す図である。
【0024】
図2に示す図面作成システムは、図1に示す構成の他に、複数の部位から構成される形状データ11を部位毎に分割する分割部20を有す。また、図2に示す図面作成システムは、分割部20が生成した分割形状データ21を記憶装置(メモリ2、補助記憶装置3)に格納する。
【0025】
分割された分割形状データ21は、図1に示す図面作成システムと同様に、法線認識部12、座標系算出部14、部分形状決定部16及び形状復元部18によって処理される。但し、複数の分割形状データ21を扱うため、法線情報22、座標系情報23及び部分形状24は、各分割形状データ21毎に独立して算出される。さらに、形状復元部18は、各分割形状データ毎に作成した部分形状24を統合し、図面情報19として出力する。
【0026】
図3は、第1実施例の図面作成システムの物理的な構成を示すブロック図である。
【0027】
本実施形態の図面作成システムは、プロセッサ(CPU)1、メモリ2、補助記憶装置3及び通信インターフェース4を有する計算機によって構成される。
【0028】
プロセッサ1は、メモリ2に格納されたプログラムを実行する。メモリ2は、不揮発性の記憶素子であるROM及び揮発性の記憶素子であるRAMを含む。ROMは、不変のプログラム(例えば、BIOS)などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、プロセッサ1が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
【0029】
補助記憶装置3は、例えば、磁気記憶装置(HDD)、フラッシュメモリ(SSD)等の大容量かつ不揮発性の記憶装置であり、プロセッサ1が実行するプログラム及びプログラムの実行時に使用されるデータ(例えば、地図データ)を格納する。すなわち、プログラムは、補助記憶装置3から読み出されて、メモリ2にロードされて、プロセッサ1によって実行される。
【0030】
図面作成システムは、入力インターフェース5及び出力インターフェース8を有してもよい。入力インターフェース5は、キーボード6やマウス7などが接続され、オペレータからの入力を受けるインターフェースである。出力インターフェース8は、ディスプレイ装置9やプリンタなどが接続され、プログラムの実行結果をオペレータが視認可能な形式で出力するインターフェースである。
【0031】
通信インターフェース4は、所定のプロトコルに従って、他の装置との通信を制御するネットワークインターフェース装置である。図面作成システムは、通信インターフェース4を介して端末(図示省略)と接続されてもよく、該端末から入力された指示に従って動作し、該端末に演算結果を出力してもよい。
【0032】
プロセッサ1が実行するプログラムは、リムーバブルメディア(CD−ROM、フラッシュメモリなど)又はネットワークを介して図面作成システムに提供され、非一時的記憶媒体である不揮発性記憶装置3に格納される。このため、図面作成システムは、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。
【0033】
図面作成システムは、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで動作してもよく、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。
【0034】
以下、本実施例の図面作成システムが実行する処理について、図1に示す図面作成システムを例示して説明するが、図2に示す図面作成システムは、複数の分割形状データ21の各々について同様の処理を実行することによって、実現可能である。
【0035】
図4は、形状計測部10が計測した周囲の存在物30、31、32の形状データの例を示す図である。
【0036】
レーザ光の照射方向33に物体が存在する場合、レーザ光が反射して戻るまでの時間を計測することによって、照射方向にある存在物までの距離を計測できる。形状計測部10は、周囲全方向にレーザ光を繰り返し照射して、周囲全体の存在物までの距離を計測することができる。計測結果として、レーザ1回の照射につき、周囲の物体の表面上の1点が計測できるので、これを繰り返すことによって、周囲の形状を点群として計測できる。存在物30の計測結果として点群34、存在物31の計測結果として点群35、存在物32の計測結果として点群36が、それぞれ得られる。
【0037】
図5は、分割部20による形状データの分割例を示す図である。
【0038】
分割部20は、形状計測部10が計測した形状データを異なる存在物毎に分割する。例えば、ユークリッドクラスタリング、スペクトラルクラスタリングなどのクラスタリング方法を用いて、点群同士の距離が離れている場合に分割すればよい。具体的には、分割部20は、形状データ(点群)11を点群34、35、36に分割し、クラスタ40、41、42に生成する。
【0039】
図6は、法線認識部12による形状データ11(又は、各分割形状データ21)の法線認識処理のフローチャートである。
【0040】
まず、法線認識部12は、形状データ(点群)11から最大の大きさの平面を抽出する平面抽出処理を実行する(S500)。例えば、ハフ変換を用いて平面を抽出することができるが、平面を抽出する方法であればハフ変換以外の方法を用いてもよい。また、平面を大きな順に抽出する方法でなく、一度に複数の平面を抽出する方法を用いてもよい。
【0041】
次に、法線認識部12は、抽出した平面データ502と、それ以外の部分の残りデータ505を分けるデータ分割処理を実行する(S501)。抽出された平面データ502を法線情報22に追加するデータ追加処理を実行する(S503)。複数の法線が存在する場合、平面データ502は、面の大きさと法線の方向との組み合わせであり、法線情報22に記憶される。
【0042】
平面データ502以外の残りデータ505のデータ量が所定の閾値より少ない場合(ステップS506でYES)、処理を終了する。一方、残りデータ505のデータ量が所定の閾値以上である場合(ステップS506でNO)、ステップS500に戻り、平面抽出処理を繰り返し実行する。
【0043】
図7は、法線認識部12が法線を認識した結果の例を示す図である。
【0044】
図7(A)に示すように、点群34からは一つの面のみが抽出されており、抽出された面に対応して1本の法線60が認識されている。また、図7(B)に示すように、点群35からは、手前方向と上方向の2面が抽出されており、抽出された各面に対応して法線61及び62が認識されている。また、図7(C)に示すように、点群35からは3面が抽出されており抽出された各面に対応する法線63、64及び65が認識されている。
【0045】
図8は、座標系算出部14が算出した座標系情報15の例を示す図である。
【0046】
三次元空間において、座標系を構成するためには3本の座標軸が必要である。座標系算出部14は、法線認識部12が認識した法線に基づいて座標軸を決定するが、認識された法線の数が必要な座標軸の数に満たない場合がある。そこで、本実施例の座標系算出部14は、認識済みの法線が3本、2本、1本の場合について説明する。
【0047】
図8(C)に示すように、点群36からは3本の法線が認識されているため、各法線の方向を座標軸の方向とし、座標軸70、71及び72からから構成される座標系を算出する。各軸が直交すれば、座標系は直交座標系となる。一方、各軸が直交しなければ、座標系は非直交座標系となる。
【0048】
図8(B)に示すように、点群35からは2本の法線が認識されており、座標系を構成するためにはさらに1本の座標軸が必要となる。そこで、認識済み法線73と法線74との外積によって方向75を算出する。これにより三つの方向を定め、法線73、74及び方向75によって座標系を構成する。
【0049】
図8(A)に示すように、点群34からは1本の法線が認識されており、座標系を構成するためにはさらに2本の座標軸が必要となる。そこで、鉛直上向きを指定すればよい。これは、復元対象が人工物であれば、多くの場合、上面は水平面であるため、鉛直上向きを指定すればよい。なお、法線認識部12が抽出した平面のエッジの方向を指定してもよい。2本目の座標軸方向77は、座標系算出部14が自動的に指定してもよく、オペレータに1本の座標軸の入力を促し、オペレータが指定した方向を座標軸としてもよい。さらに、3本目の座標軸は法線76と方向77との外積によって方向78を算出し座標軸とする。これにより三つの方向を定め、法線76及び方向77、78によって座標系を構成する。
【0050】
また、4本以上の法線が認識されている場合、法線の数が3本になるまで減らす。例えば、同じ方向の法線の一方(例えば、抽出された平面の面積が大きい面)を選択する。また、抽出された平面の面積が大きい順に3本の法線を抽出してもよい。
【0051】
また、同じ方向(180度逆向きの法線も含む)の法線が認識されている場合、抽出された平面の面積が大きい面の法線を選択するとよい。
【0052】
図9は、部分形状決定部16による部分形状の決定例を示す図である。
【0053】
部分形状決定部16は、座標系算出部14によって算出した座標軸70、71、72のそれぞれに直交する面(各座標軸を法線とする平面)80、81、82を作成し、作成された面80、81、82に囲まれる領域の部分形状83を作成する。なお、部分形状83における各面の反対側の面は、正面側の面と同じ面を用いればよく、面80の裏面は面80と同じ向きの面、面81の裏面は面81と同じ向きの面、面82の裏面は面82と同じ向きの面を生成する。
【0054】
部分形状83の各辺の長さは、オペレータが設定した長さとする。例えば、オペレータは、復元形状の近似精度から長さを設定すればよい。また、本実施例では、計測点(位置データに含まれる点)を包含するように部分形状83を配置するので、計測点の計測密度に応じた長さを設定してもよい。以下、図10及び図11を用いて部分形状決定手順を詳細に説明する。
【0055】
図10は、部分形状決定部16による面配置方向及び部分形状配置方向の算出例を示す図である。
【0056】
部分形状決定部16は、各座標軸に対応する面の配置方向を、他の座標軸と直交する方向を計算して定める。例えば、図10(A)に示すように、座標軸70について作成される面は図9で説明したように面80となる。この面を方向90に配置して部分形状を決定する。方向90は、その他の座標軸(座標軸71と座標軸72)と直交する方向(二次元空間であれば内積がゼロになる方向、三次元空間であれば外積計算によって求まる向き)によって計算できる。座標軸71についても同様に、面81の配置方向91は座標軸70と座標軸72との外積計算によって求まる(図10(B))。座標軸72についても同様に、面82の配置方向92は座標軸70と座標軸71との外積計算によって求まる(図10(C))。
【0057】
図11は、部分形状決定部16による部分形状の作成を示す図である。
【0058】
図11を参照して、部分形状決定部16が部分形状を構成する面及び各面に対応する配置方向から部分形状を作成する方法を説明する。座標軸70について作成される面80を座標軸の交点93の位置に移動して面94を作成し、さらに、方向90に設定された長さ90Lだけ移動した位置に面95を作成する。設定された長さは図9において説明したように、オペレータが設定した長さである。
【0059】
同様に、座標軸71についても、面81を座標軸の交点93の位置に移動して面96を作成し、さらに、方向91に設定された長さ91Lだけ移動した位置に面97を作成する。さらに、座標軸71についても同様に、面82を座標軸の交点93の位置に移動して面98を作成し、さらに、方向92に設定された長さ92Lだけ移動した位置に面99を作成する。
【0060】
これらの面94、95、96、97、98及び99によって囲まれる領域を抽出することによって部分形状83を作成できる。
【0061】
図12は、形状復元部18による形状復元例を示す図である。
【0062】
形状復元部18は、形状データ11を包含するように部分形状決定部16で作成した部分形状83を積み重ねる。例えば、部分形状83の表側の面上に計測点が位置するように部分形状83を配置してもよく、部分形状83の内部に計測点が位置するように部分形状83を配置してもよい。この際、隣り合う部分形状83の面同士が滑らかに接続されるようにすることで、面を崩さずに図面情報19を作成できる。
【0063】
部分形状83の面同士を滑らかに接続する部分形状83の積み重ね方を説明する。面同士を接続するためには、作成した部分形状を前述した面配置方向に積み重ねればよい。具体的には、部分形状83の各辺の長さを計測点の計測密度に応じて設定した場合、部分形状83を方向90に計測点の位置まで平行移動させて積み重ねれば配置例101のようになり、方向91に平行移動させて積み重ねれば配置例102のようになり、方向92に平行移動させて積み重ねれば配置例103のようになる。このように、いずれの面配置方向に部分形状83を積み重ねても、各面が滑らかに接続される。この処理を繰り返すことによって、点群36を復元する形状104を作成できる。
【0064】
また、部分形状83を各計測点の位置に配置するのではなく、部分形状83を各計測点の位置に配置するのではなく、予め定められたグリッドに沿って部分形状83を配置してもよい。
【0065】
また、部分形状83は、任意の位置から配置すればよい。
【0066】
図13は、形状復元部18による形状復元結果を示す図である。
【0067】
存在物30、31、32を独立して形状を復元することによって、それぞれ、復元形状110、111、112となる。本実施例によれば、復元対象の存在物の面と同一の方向の部分形状83を積み重ねることによって、面を崩さずに形状を復元できる。さらに、部分形状83が決まれば、計測された形状データを覆うように部分形状83を繰り返し配置するだけであるため、図面作成に失敗する可能性が低い。
【0068】
なお、本実施例で示す手順は、各存在物の表面と裏面が平行である場合に面を崩さずに形状復元する方法であり、存在物32のように上面と下面が平行でない場合、どちらかの面が崩れる問題がある。しかし、図面化対象の人工物の多くは表面と裏面が平行であり、かつ、計測量が少ない面だけが崩れるので、面の崩れは発生する場合は少ない。
【0069】
図14は、本実施例の図面作成システムが実行する処理のフローチャートである。
【0070】
まず、分割部20が、複数の部位から構成される形状データ11を部位毎に分割し、分割形状データ21を作成する(S1200)。法線認識部12は、分割後の分割形状データ21の各々法線を認識する(S1201)。複数の法線が存在する場合、面の大きさと法線の方向との組み合わせが法線情報22に記憶される。例えば、ハフ変換などの平面認識方法を用いて、法線を認識することができる。
【0071】
次に、座標系算出部14は、法線情報22を用いて形状の復元に用いる座標系情報15を算出する(S1202)。座標系を構成する各座標軸は、法線情報13に記憶されている法線方向を用いる。対象空間が三次元である場合、3本の座標軸が必要となるが、認識された法線の数が3本未満である場合、オペレータが指定した方向(例えば、計測できなかった周囲形状の面の向き)を座標軸として用いてもよい。例えば、上面が計測できなかった場合、鉛直上向きを指定すればよい。また、座標軸が2本以上算出されている場合は、算出済みの座標軸の外積を算出し、その方向を新たな座標軸としてもよい。
【0072】
次に、部分形状決定部16は、部分形状の形状を決定する(S1203)。例えば、作成済みの各座標軸と直交する平面の集合で囲まれる領域を部分形状38とする。部分形状38の各辺の長さは、復元される形状の近似精度に基づいて、オペレータが指定する。又は、本実施例では、計測点を包含するように部分形状38を配置するので、計測点の計測密度に応じた長さとしてもよい。
【0073】
次に、形状復元部18では、計測された形状データを包含するように、部分形状38を並べる(S1204)。復元する面が崩れないように、隣り合う面同士が滑らかに接続されるように並べるとよい。その後、配置した部分形状38の集合を図面情報19として出力する。
【0074】
以上に説明したように、本発明の第1実施例によると、形状復元部18が、部分形状83が形状データ(点群)を包含し、かつ、隣接する部分形状83の面同士が滑らかに接続されるように部分形状83を配置するので、存在物の大きさや向きにかかわらず、存在物の面の形状を崩すことなく、かつ、形状復元に失敗せずに(ロバストに)図面を作成することができる。
【0075】
また、分割部20が形状データ11を分割形状データ21に分割し、法線認識部12が分割形状データ21毎に法線を認識し、座標系算出部14が分割形状データ21毎に法線の方向を一つの軸とする座標系を算出し、形状復元部18が分割形状データ21毎に算出された座標系を用いて部分形状83を配置するので、異なる方向の面を有する2以上の物体が存在する環境でも、存在物の面の形状を崩すことなく図面を作成することができる。
【0076】
また、部分形状決定部16は、オペレータの指示に基づいて部分形状の各辺の長さを決定するので、形状が復元される精度に応じて、部分形状の大きさを決定することができる。
【0077】
また、部分形状決定部16は、形状データが部分形状83の表面に位置し、かつ、隣接する部分形状の面同士が滑らかに接続されるように、部分形状の形状を決定するので、復元される形状の表面の位置の精度を向上することができる。
【0078】
また、形状復元部18は、部分形状83の面の作成に利用しなかった二つの法線と直交する方向(二次元空間では直交する方向、三次元以上の空間では外積の方向)に部分形状83を並べて配置するので、復元される形状の滑らかにすることができる。
【0079】
また、法線認識部12は、形状データのうち大きな平面から順に法線を推定するので、座標系を正しく算出して、復元される形状の精度を向上することができる。
【0080】
また、法線認識部12が形状データによって構成される複数の平面の大きさ及び法線を関連付けて法線情報13、22に記録し、座標系算出部14が形状データによって構成される面が大きい順に当該平面に対応する法線を座標軸として選ぶことによって座標系を算出するので、座標系を正しく算出して、復元される形状の精度を向上することができる。
【0081】
また、座標系算出部14は、推定された法線のうち、方向が異なる二つの法線の外積を算出することによって、形状データによって構成されない面に対応する座標軸を定めるので、計測した点群から適切な3本の法線を推定することができる。
【0082】
また、座標系算出部14は、オペレータが指示した方向に座標軸を定めるので、計測した点群から1本のみの法線が推定された場合でも、適切な法線を決定することができる。
【0083】
<第2実施例>
第2実施例では、存在物の位置毎に異なる座標系を定義する図面作成システムを説明する。なお、第2実施例では、前述した第1実施例との相違点のみを説明し、同一の構成及び機能についての説明は省略する。
【0084】
図15は、第2実施例において、法線認識部12が法線を認識した結果の例を示す図である。
【0085】
第2実施例では計測データの各点毎に座標系を定義するために、法線認識部12は、計測データの各点毎に近傍点を探索し、主成分分析などの法線計算方法によって法線方向1301を求める。これにより、点毎に法線方向を認識できる。
【0086】
図16は、第2実施例の座標系算出部14が算出した座標系情報15の例を示す図である。
【0087】
認識済みの法線は、1方向のみしか計算していないため、2本の軸を追加する必要がある。まず、鉛直上向き方向と認識済みの法線方向との外積を算出し、一つの座標軸を定める。さらに、定められた座標軸と法線方向との外積を算出し、もう一本の座標軸を定める。
【0088】
さらに、隣り合う点同士の座標系が近くなるように座標系を修正してもよい。例えば、法線ベクトルを固定し、他の2軸を法線ベクトルを中心として回転することによって、座標系を修正することができる。また、各軸の方向の2乗和によって各軸の方向の差異を求め、座標系の近さを算出する。最急降下法などの最適化方法によって、座標軸の回転量を求め、各軸の方向の2乗和を最小にするように、座標軸を修正する。これにより、隣接する座標系が近くなる。
【0089】
図17は、第2実施例の部分形状決定部16による部分形状の算出例を示す図である。
【0090】
まず、存在物の位置毎に面の向きを決定する。例えば、面の向きは座標軸方向を法線とする面と決定する。なお、部分形状内で座標系が変化する場合、座標系に合わせて部分形状の表面と裏面とを非平行に定める。また、点群が計測されず座標系が不明である場合、反対の面と平行な面に定めればよい。
【0091】
また、座標系の方向が変化する部分では、基本的な部分形状38が隣接する部分形状と重なる部分を削除して、隣り合う部分形状83の面同士が滑らかに接続されるようにしてもよい。このとき、復元される形状の外側に位置する部分形状83の面が滑らかに接続されればよく、復元される形状の内側に位置する部分形状83の面は不明な面として、その位置が定まらなくてもよい。
【0092】
本実施例では、部分形状の面が点群の位置と一致するように、部分形状の大きさを定める。例えば、図17において、点群1502が計測されている場合、部分形状1501の左側を点群の位置に合わせる。一つの部分形状の面上に二つ以上の点群が計測されている場合、当該二つ以上の点群の一の平均を用いる。また、本実施例においても、図9で示すように、オペレータが部分形状の各辺の長さを定めてもよい。
【0093】
図17では、二次元について説明したが、三次元についても同様の手順で処理が可能である。
【0094】
図18は、第2実施例の形状復元部18による部分形状17の配置例を示す図である。
【0095】
本実施例では、存在物の位置毎に座標系が異なるため、部分形状の配置方向も位置毎に異なる。図12に示すように、部分形状の各面の位置における座標系を用いて部分形状の配置方向を定め、部分形状を逐次追加する。例えば、図18に示すように。範囲1600内の形状を復元する場合、まず、範囲1600内の最も左に位置する部分形状1601の右側1602の面における部分形状配置方向は方向1603となる。そこで、部分形状1604を作成し、方向1603の方向に追加する。同様に、面1605から方向1606に新たな部分形状1607を追加し、更に部分形状1608及び1609を順に追加することによって、範囲1600の点群の形状を復元することができる。
【0096】
そして、図19に示すように、この処理を繰り返して、全ての形状データ1300を復元した復元形状1700を生成する。
【0097】
以上に説明したように、本発明の第2実施例によると、座標系算出部14が形状データ1300の複数の位置毎に座標系を算出し、当該位置の情報と前記算出された座標系の情報とを関連付けて座標系情報15、23に記録し、形状復元部18が前記位置毎に算出された座標系を用いて部分形状を配置する。このため、任意形状の存在物(曲面を含むものや、裏表が平行でない面を含むもの)の形状を復元することができる。
【0098】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加・削除・置換をしてもよい。
【0099】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【0100】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。
【0101】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19