IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社フジタの特許一覧

特開2024-127147空間情報処理装置および空間情報処理方法
<>
  • 特開-空間情報処理装置および空間情報処理方法 図1
  • 特開-空間情報処理装置および空間情報処理方法 図2
  • 特開-空間情報処理装置および空間情報処理方法 図3
  • 特開-空間情報処理装置および空間情報処理方法 図4
  • 特開-空間情報処理装置および空間情報処理方法 図5
  • 特開-空間情報処理装置および空間情報処理方法 図6
  • 特開-空間情報処理装置および空間情報処理方法 図7
  • 特開-空間情報処理装置および空間情報処理方法 図8
  • 特開-空間情報処理装置および空間情報処理方法 図9
  • 特開-空間情報処理装置および空間情報処理方法 図10
  • 特開-空間情報処理装置および空間情報処理方法 図11
  • 特開-空間情報処理装置および空間情報処理方法 図12
  • 特開-空間情報処理装置および空間情報処理方法 図13
  • 特開-空間情報処理装置および空間情報処理方法 図14
  • 特開-空間情報処理装置および空間情報処理方法 図15
  • 特開-空間情報処理装置および空間情報処理方法 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024127147
(43)【公開日】2024-09-20
(54)【発明の名称】空間情報処理装置および空間情報処理方法
(51)【国際特許分類】
   G01C 15/00 20060101AFI20240912BHJP
【FI】
G01C15/00 104Z
G01C15/00 103A
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023036097
(22)【出願日】2023-03-09
(71)【出願人】
【識別番号】302060926
【氏名又は名称】株式会社フジタ
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】100121083
【弁理士】
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【弁理士】
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100182936
【弁理士】
【氏名又は名称】矢野 直樹
(72)【発明者】
【氏名】山口 瞳
(72)【発明者】
【氏名】久保田 善経
(57)【要約】      (修正有)
【課題】対象空間から部屋等の空間を容易に抽出することができる空間情報処理装置および空間情報処理方法を提供する。
【解決手段】空間情報処理装置10は、レーザスキャナにより測量する対象空間に存在する物体を表す複数の点よりなる点群を取得する取得部100Aと、取得部により取得された点群に基づき、対象空間を区画する区画体を検出する検出部100Cと、検出部で検出された区画体に基づき、対象空間を、区画体により区画される少なくとも1つの区画空間に分類する分類部100Dと、を備える。
【選択図】図5
【特許請求の範囲】
【請求項1】
レーザスキャナにより測量する対象空間に存在する物体を表す複数の点よりなる点群を取得する取得部と、
前記取得部により取得された点群を含む前記対象空間を複数のボクセルに分割する分割部と、
前記分割部により分割された各前記ボクセル内の前記点に基づき、前記各ボクセル内の物体の有無を判定し、前記対象空間の第1軸方向において、物体有りと判定した第1の前記ボクセルの数が第1の閾値以上の場合、前記第1軸方向に並ぶ前記第1のボクセルに、前記対象空間を区画する区画体が位置することを検出する、検出部と、を備える、
空間情報処理装置。
【請求項2】
前記第1軸方向は、鉛直方向であり、
前記区画体は、前記鉛直方向に立設された壁または閉まっているドアである、
請求項1に記載の空間情報処理装置。
【請求項3】
前記検出部は、前記第1軸方向において前記第1のボクセルの数が第1の閾値未満の場合、前記第1軸方向に並ぶ、物体なしと判定した第2の前記ボクセルが、前記区画体で区画される空間内に位置することを検出する、
請求項1または請求項2に記載の空間情報処理装置。
【請求項4】
前記検出部は、前記第1軸方向において前記第1のボクセルの数が第1の閾値未満であっても、前記第1のボクセルが前記第1軸方向に第2の閾値以上連続して並び且つ前記第2のボクセルが前記第1軸方向に第3の閾値以上連続して並ぶ場合、前記第1軸方向に並ぶボクセルに、窓または開いているドアが位置することを検出する、
請求項3に記載の空間情報処理装置。
【請求項5】
前記検出部は、前記窓または開いているドアが位置することが検出されたボクセルが前記対象空間の外縁部に位置する場合、前記ボクセルに、窓が位置すると判定する、
請求項4に記載の空間情報処理装置。
【請求項6】
前記検出部は、前記窓または開いているドアが位置することが検出されたボクセルが前記対象空間の外縁部の内側に位置する場合、前記ボクセルに、開いているドアが位置すると判定する、
請求項4に記載の空間情報処理装置。
【請求項7】
前記検出部は、
前記対象空間の前記ボクセルのデータを、前記第1軸方向と直交する平面上の2次元データに変換し、
前記2次元データにおいて、前記区画体が検出されたボクセルに対応する画素に第1の値を付与し、前記区画体が検出されないボクセルに対応する画素に第2の値を付与することにより、前記2次元データを2値画像に変換する、
請求項1に記載の空間情報処理装置。
【請求項8】
前記検出部は、前記2値画像に対し、前記第1の値が付与された画素で表される前記区画体の形状を修正するノイズ除去処理を施す、
請求項7に記載の空間情報処理装置。
【請求項9】
前記2値画像上で表される前記区画体の傾きに応じて前記ボクセルの座標系を回転させたうえで、前記分割部による前記ボクセルの分割および前記検出部による前記区画体の検出を行う、
請求項8に記載の空間情報処理装置。
【請求項10】
前記2値画像内で前記第2の値の画素が連続する領域毎に異なるラベルを付け、前記ラベルが付けられた2値画像に基づき、前記対象空間を、前記区画体で区画される少なくとも1つの空間に分類する、分類部、を更に備える、
請求項7から請求項9の何れか一項に記載の空間情報処理装置。
【請求項11】
前記区画体で区画された、隣接する2つの空間の境界付近のボクセルを細分化し、細分化されたボクセルに対して、再度、前記ラベルを付ける、
請求項10に記載の空間情報処理装置。
【請求項12】
前記分類部により分類された空間を視覚的に区別できるように、前記空間に視覚的情報を付加する付加部を更に備える、
請求項10に記載の空間情報処理装置。
【請求項13】
レーザスキャナにより測量する対象空間に存在する物体を表す複数の点よりなる点群を取得し、
前記取得された点群を含む前記対象空間を複数のボクセルに分割し、
前記分割された各前記ボクセル内の前記点に基づき、前記各ボクセル内の物体の有無を判定し、前記対象空間の第1軸方向において、物体有りと判定した第1の前記ボクセルの数が第1の閾値以上の場合、前記第1軸方向に並ぶ前記第1のボクセルに、前記対象空間を区画する区画体が位置することを検出する、処理を、コンピュータに実行させる、
空間情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、空間情報処理装置および空間情報処理方法に関する。
【背景技術】
【0002】
工事現場や建設現場等における進捗確認および出来形測量等を行うため、レーザスキャナを用いて現場の3次元データを点群データとして立体的に測量する技術が知られている(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007-277813号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
レーザスキャナを用いて得られる点群データは、測量対象の形状を判定するには有効である。しかし、このような点群データから例えば建物の部屋等の空間を抽出することは難しい。
【0005】
本発明は上記の事情に鑑みてなされたものであり、対象空間から部屋等の空間を容易に抽出することができる空間情報処理装置および空間情報処理方法を提供することである。
【課題を解決するための手段】
【0006】
本発明の一実施形態に係る空間情報処理装置は、レーザスキャナにより測量する対象空間に存在する物体を表す複数の点よりなる点群を取得する取得部と、取得部により取得された点群を含む対象空間を複数のボクセルに分割する分割部と、分割部により分割された各ボクセル内の点に基づき、各ボクセル内の物体の有無を判定し、対象空間の第1軸方向において、物体有りと判定した第1のボクセルの数が第1の閾値以上の場合、第1軸方向に並ぶ第1のボクセルに、対象空間を区画する区画体が位置することを検出する、検出部と、を備える。
【0007】
本発明の一実施形態において、第1軸方向は、例えば、鉛直方向である。区画体は、例えば、鉛直方向に立設された壁または閉まっているドアである。
【0008】
本発明の一実施形態において、検出部は、例えば、第1軸方向において第1のボクセルの数が第1の閾値未満の場合、第1軸方向に並ぶ、物体なしと判定した第2のボクセルが、区画体で区画される空間内に位置することを検出する。
【0009】
本発明の一実施形態において、検出部は、例えば、第1軸方向において第1のボクセルの数が第1の閾値未満であっても、第1のボクセルが第1軸方向に第2の閾値以上連続して並び且つ第2のボクセルが第1軸方向に第3の閾値以上連続して並ぶ場合、第1軸方向に並ぶボクセルに、窓または開いているドアが位置することを検出する。
【0010】
本発明の一実施形態において、検出部は、例えば、窓または開いているドアが位置することが検出されたボクセルが対象空間の外縁部に位置する場合、ボクセルに、窓が位置すると判定する。
【0011】
本発明の一実施形態において、検出部は、例えば、窓または開いているドアが位置することが検出されたボクセルが対象空間の外縁部の内側に位置する場合、ボクセルに、開いているドアが位置すると判定する。
【0012】
本発明の一実施形態において、検出部は、例えば、対象空間のボクセルのデータを、第1軸方向と直交する平面上の2次元データに変換し、2次元データにおいて、区画体が検出されたボクセルに対応する画素に第1の値を付与し、区画体が検出されないボクセルに対応する画素に第2の値を付与することにより、2次元データを2値画像に変換する。
【0013】
本発明の一実施形態において、検出部は、例えば、2値画像に対し、第1の値が付与された画素で表される区画体の形状を修正するノイズ除去処理を施す。
【0014】
本発明の一実施形態に係る空間情報処理装置は、2値画像上で表される区画体の傾きに応じてボクセルの座標系を回転させたうえで、分割部によるボクセルの分割および検出部による区画体の検出を行ってもよい。
【0015】
本発明の一実施形態に係る空間情報処理装置は、2値画像内で第2の値の画素が連続する領域毎に異なるラベルを付け、ラベルが付けられた2値画像に基づき、対象空間を、区画体で区画される少なくとも1つの空間に分類する、分類部、を更に備える構成としてもよい。
【0016】
本発明の一実施形態に係る空間情報処理装置は、区画体で区画された、隣接する2つの空間の境界付近のボクセルを細分化し、細分化されたボクセルに対して、再度、ラベルを付けてもよい。
【0017】
本発明の一実施形態に係る空間情報処理装置は、分類部により分類された空間を視覚的に区別できるように、空間に視覚的情報を付加する付加部を更に備える構成としてもよい。
【0018】
本発明の一実施形態に係る空間情報処理方法は、レーザスキャナにより測量する対象空間に存在する物体を表す複数の点よりなる点群を取得し、取得された点群を含む対象空間を複数のボクセルに分割し、分割された各ボクセル内の点に基づき、各ボクセル内の物体の有無を判定し、対象空間の第1軸方向において、物体有りと判定した第1のボクセルの数が第1の閾値以上の場合、第1軸方向に並ぶ第1のボクセルに、対象空間を区画する区画体が位置することを検出する、処理を、コンピュータに実行させる、方法である。
【発明の効果】
【0019】
本発明の一実施形態によれば、対象空間から部屋等の空間を容易に抽出することができる空間情報処理装置および空間情報処理方法が提供される。
【図面の簡単な説明】
【0020】
図1】本発明の一実施形態に係る空間情報処理装置および空間情報処理方法を説明するための概略図である。
図2】本発明の一実施形態に係る空間情報処理装置および空間情報処理方法を説明するための概略図である。
図3】対象空間である建物の3次元モデルの一例を示す図である。
図4】本発明の一実施形態に係る空間情報処理装置のハードウェア構成を示す図である。
図5】本発明の一実施形態に係る空間情報処理装置の機能ブロック図である。
図6】本発明の一実施形態において空間情報処理装置のプロセッサにより実行される空間情報処理を示すフローチャートである。
図7図6のボクセル処理(ステップS102)のサブルーチンを示す図である。
図8図6の区画体検出処理(ステップS103)のサブルーチンを示す図である。
図9図8の判定処理(ステップS103b)を説明するための図である。
図10図8の画像変換処理(ステップS103f)で得られる2値画像の一例を示す図である。
図11図8の補間処理(ステップS103g)のサブルーチンを示す図である。
図12図8の画像変換処理(ステップS103f)で得られる2値画像の一例を示す図である。
図13図8の補間処理(ステップS103g)で得られる2値画像の一例を示す図である。
図14図6の区画空間分類処理(ステップS104)のサブルーチンを示す図である。
図15図6の区画空間分類処理(ステップS104)を説明するための図である。
図16】ボクセルの細分化を説明するための図である。
【発明を実施するための形態】
【0021】
図面を参照して、本発明の一実施形態に係る空間情報処理装置、空間情報処理方法および空間情報処理プログラムについて詳細に説明する。
【0022】
図1図3は、本発明の一実施形態に係る空間情報処理装置および空間情報処理方法を説明するための概略図である。符号BLは、建物を示す。符号RM1~RM5は、対象空間である建物BL内に設けられた部屋を示す。図1および図2は、部屋RM1~RM5を含む建物BLの概略平面図を示す。
【0023】
本実施形態において、便宜上、鉛直方向をz軸方向とし、z軸方向と直交し且つ互いに直交する2つの軸方向(水平方向)をそれぞれx軸方向、y軸方向とする。互いに直交するx軸方向、y軸方向およびz軸方向は、右手系をなす。
【0024】
符号LSは、空間情報を測量するレーザスキャナである。レーザスキャナLSは、例えばTLS(Terrestrial Laser Scanner)である。レーザスキャナLSは、水平方向および垂直方向に回転可能な本体部のレーザ射出口より射出されるレーザ光Lにより、レーザスキャナLSを中心としてほぼ全方位(半球状の範囲)をスキャンする。これにより、例えば、レーザスキャナLSが設置された部屋全体が(場合によっては、開いているドアの向こうにある部屋等も)スキャンされて、建物BL内の空間の3次元データが点群データとして得られる。
【0025】
レーザ光1が遮蔽物により反射されたデータが点群データとして空間内に表示される。そのため各点群データには遮蔽物が何であるか判断することができない。例えば、図1および図2において、符号BLが指す太枠は、建物BLの外壁を模しているが点群データからは判断できない。同様に建物BLの外壁を模す太枠内に描かれた5つの太枠は、部屋RM1~RM5を区画する壁(より詳細には壁面)を模しているが点群データからは判断できない。つまり点群データでは、CAD(Computer-Aided Design)、BIM(Building Information Modeling)(本実施の形態ではBIMを中心に説明する)の図面と容易に比較することが難しい課題がある。さらに、太枠のなかで欠けている部分は、例えば開いているドアや透明な窓(すなわち、レーザ光Lが反射しない窓)の場合があり、点群データからは判断できない課題がある。
【0026】
建物BL内に配置されたレーザスキャナLSが建物BL内をスキャンする場合、各部屋RM1~RM5を仕切る壁が設けられているため、レーザ光Lが壁に遮られ、一回の測量で全ての部屋RM1~RM5をスキャンすることはできない。全ての部屋RM1~RM5をスキャンするため、建物BL内の複数箇所でレーザスキャナLSによる測量を行う。
【0027】
レーザスキャナLSは、空間情報処理装置10と無線で接続される。レーザスキャナLSは、空間情報処理装置10と有線で接続されてもよい。レーザスキャナLSは、各測量箇所の点群データを空間情報処理装置10へ送信する。
【0028】
空間情報処理装置10は、各測量箇所の点群データをレーザスキャナLSより受信する。空間情報処理装置10は、各測量箇所の点群データをレジストレーションする。これにより、全ての部屋RM1~RM5を含む建物BL内の点群データが得られる。
【0029】
空間情報処理装置10は、建物BL内の点群データに基づき、対象空間である建物BLを区画する壁(区画体の一例)を検出し、検出された壁に基づき、建物BL内を、少なくとも1つの区画空間(ここでは部屋)に分類する。
【0030】
本実施形態では、建物BLを区画する壁を検出するためボクセル処理が用いられる。点群データから2次元データを抽出することで、BIMのデータとの比較を容易にすることができる。
【0031】
空間情報処理装置10は、対象空間である建物BLを複数のボクセルに分割する。なお、図2に示される格子は、ボクセルを表現している。ボクセルとは、レーザスキャナLSで対象空間である建物BLを計測し、対象空間を任意の大きさで分割することを意味する。対象空間をボクセル化することで点群データを容易に扱うことができる。
【0032】
空間情報処理装置10は、各ボクセルに含まれる点に基づき、各ボクセルに、”busy”または”free”のステータスを付与する。上記の「各ボクセルに含まれる点」は、点群データをなす各点を示す。便宜上、これらの点を「点P」と記す。
【0033】
ステータス”busy”は、ボクセル内に物体が存在することを示す。ステータス”free”は、ボクセル内に物体が存在しないことを示す。図2では、便宜上、ステータス”busy”のボクセルは、斜線のハッチングが付されたマスで示される。ステータス”free”のボクセルは、ハッチングが付されない白のマスで示される。斜線のハッチングが付されたマスを「ハッチングマス」と記し、ハッチングが付されない白のマスを「白マス」と記す。
【0034】
空間情報処理装置10は、ステータス付与後のボクセルに基づき、区画体である壁の輪郭を抽出した情報を取得する。この情報は、例えば、壁の形状を表す2値の2次元画像である。
【0035】
ここで、説明の都合上、図2の各マスを、2値画像をなす各画素とする。また、ハッチングマス、白マスのそれぞれを値1、値0の画素とする。空間情報処理装置10は、値1で表された画素を壁部分として検知し、検知された値1の画素でおおよそ囲われる領域を部屋として分類する。図2では、値1で表された画素(壁部分)で囲われた符号RM1~RM5が指す値0の画素で示される領域が、それぞれ部屋RM1~RM5として抽出および分類される。
【0036】
このように、本実施形態によれば、対象空間である建物BLの点群データをもとに、建物BLに含まれる部屋が容易に抽出および分類される。
【0037】
空間情報処理装置10は、建物BLの点群データまたはボクセルをもとに建物BLの3次元モデルを作成することができる。
【0038】
図3は、色情報が付加された建物BLの3次元モデルの一例を示す。図3に示されるように、空間情報処理装置10は、分類した各部屋RM1~RM5に対して3次元モデル上で異なる色を付加することができる。このような3次元モデルを確認することにより、例えば、対象空間に含まれる各部屋を容易に識別することができ、また、BIMと比較しやすくなり支援情報として活用することができる。
【0039】
本実施形態に係る空間情報処理装置、空間情報処理方法および空間情報処理プログラムについて、より具体的な説明を行う。
【0040】
図4は、空間情報処理装置10のハードウェア構成を示す図である。
【0041】
空間情報処理装置10は、例えば汎用のPC(Personal Computer)である。図4に示されるように、空間情報処理装置10は、バス100を備える。バス100に、プロセッサ111、メモリ112、補助記憶装置113、通信インタフェース114、入力装置115および出力装置116が接続される。なお、空間情報処理装置10は、図4に示されていない他の構成を備えていてもよい。すなわち、空間情報処理装置10の態様には自由度があり、各種の設計変更が可能である。
【0042】
プロセッサ111は、メモリ112上に展開されたプログラムを実行する。プロセッサ111により実行されるプログラムには、本発明の一実施形態に係る空間情報処理プログラム113Aが含まれる。
【0043】
プロセッサ111は、例えばシングルプロセッサまたはマルチプロセッサであり、少なくとも1つのプロセッサを含む。複数のプロセッサを含む構成とした場合、プロセッサ111は、単一の装置としてパッケージ化されたものであってもよく、空間情報処理装置10内で物理的に分離した複数の装置で構成されてもよい。
【0044】
メモリ112は、例えば、RAM(Random Access Memory)であり、ワークエリアを提供する。
【0045】
補助記憶装置113は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリである。補助記憶装置113には、空間情報処理プログラム113Aを含む各種プログラムが記憶される。プロセッサ111は、メモリ112内に確保したワークエリアにプログラムを展開し、展開されたプログラムに従って空間情報処理装置10を制御する。
【0046】
コンピュータの一例である空間情報処理装置10は、空間情報処理プログラム113Aにより、本発明の一実施形態に係る空間情報処理方法を実行する。
【0047】
例示的には、空間情報処理装置10は、レーザスキャナLSにより測量する対象空間(例えば建物BL)に存在する物体を表す複数の点Pよりなる点群を取得し、取得された点群を含む対象空間を複数のボクセルに分割し、分割された各ボクセル内の点Pに基づき、各ボクセル内の物体の有無を判定し、対象空間の第1軸方向(例えば鉛直方向)において、物体有りと判定した第1のボクセルの数が第1の閾値以上の場合、第1軸方向に並ぶ第1のボクセルに、対象空間を区画する区画体(例えば壁)が位置することを検出する、という一連の処理を実行する。
【0048】
空間情報処理装置10が空間情報処理プログラム113Aを実行することにより、点群データから例えば対象空間内の部屋を容易に抽出し分類できるようになる。空間情報処理プログラム113Aの詳細は後述する。
【0049】
通信インタフェース114は、レーザスキャナLSと空間情報処理装置10とを相互通信可能に接続する。また、通信インタフェース114は、例えば、外部ネットワークを介して空間情報処理装置10をクラウドコンピューティングと接続してもよい。この場合、クラウドコンピューティングが空間情報処理プログラム113Aを備えていてもよい。すなわち、空間情報処理プログラム113Aによる処理は、空間情報処理装置10に代えて、クラウドコンピューティングで実行されてもよい。
【0050】
入力装置115は、キーボード、ポインティングデバイス、タッチパネル等であり、例えば、オペレータによる入力を受け付ける。
【0051】
出力装置116は、表示装置、音声出力装置、プリンタ等を含む。出力装置116は、例えば、空間情報処理プログラム113Aによる処理結果を出力する。
【0052】
図5は、空間情報処理装置10の機能ブロック図である。空間情報処理装置10は、図5に示されるように、機能ブロックとして、点群取得部100A、ボクセル分割部100B、区画体検出部100C、空間分類部100Dおよび視覚的情報付加部100Eを含む。各機能ブロックは、コンピュータの一例である空間情報処理装置10が実行する空間情報処理プログラム113Aにより実現される。各機能ブロックは、一部または全部が専用の論理回路等のハードウェアにより実現されてもよい。
【0053】
点群取得部100Aは、レーザスキャナLSにより測量する対象空間に存在する物体を表す複数の点Pよりなる点群を取得する。ボクセル分割部100Bは、点群取得部100Aにより取得された点群を含む対象空間(ここでは建物BL)を複数のボクセルに分割する。区画体検出部100Cは、ボクセル分割部100Bにより分割された各ボクセル内の点Pに基づき、各ボクセル内の物体の有無を判定してステータス(”busy”、”free”など)を付与する。区画体検出部100Cは、建物BLの鉛直方向においてステータス”busy”のボクセルの数が第1の閾値以上の場合、これらのボクセルに建物BLを区画する区画体(例えば壁)が位置することを検出する。空間分類部100Dは、区画体検出部100Cで検出された壁に基づき、建物BLを、壁で区画される少なくとも1つの空間(例えば部屋)に分類する。視覚的情報付加部100Eは、空間分類部100Dにより分類された部屋を視覚的に区別できるように、部屋に視覚的情報を付加する。
【0054】
これら機能ブロックの動作により、例えば、上述したように、点群データから建物BL内の部屋を容易に抽出し分類することができる。また、オペレータは、例えば、分類処理で得られた情報を利用して3次元モデル上で各部屋を視覚的に区別できるように3次元モデルに色を付加したり、BIMとの比較の際に用いる支援情報として活用できたりする。
【0055】
レーザスキャナLSは、レーザスキャナLSを中心とした一定範囲内の空間をスキャンする。レーザスキャナLSにより測量される対象空間は、x軸、y軸、z軸の3軸で定義される三次元空間である。レーザスキャナLSは、スキャンにより得られた対象空間の点群を空間情報処理装置10に出力する。
【0056】
上述したように、一回の測量で全ての部屋RM1~RM5をスキャンすることはできない。よって、全ての部屋RM1~RM5をスキャンするためには、建物BL内の複数箇所でレーザスキャナLSによる測量を行う。
【0057】
図6は、空間情報処理装置10のプロセッサ111により実行される空間情報処理を示すフローチャートである。例えば、複数箇所での測量完了後、図6に示される空間情報処理の実行が開始される。
【0058】
空間情報処理装置10は、各測量箇所の点群データをレジストレーションする。これにより、空間情報処理装置10は、全ての部屋RM1~RM5を含む建物BL内の点群を取得する(ステップS101)。なお、ここで得られる点群は、色情報(例えばRGB)を持つものであってもよく、また、処理負荷軽減のため色情報を持たないものであってもよい。
【0059】
このように、ステップS101において、空間情報処理装置10は、レーザスキャナLSにより測量する対象空間に存在する物体を表す複数の点Pよりなる点群を取得する取得部(すなわち、点群取得部100A)として動作する。
【0060】
空間情報処理装置10は、ボクセル処理を実行する(ステップS102)。図7は、ボクセル処理(ステップS102)のサブルーチンを示す。
【0061】
空間情報処理装置10は、対象空間を複数のボクセルに分割する(ステップS102a)。例示的には、空間情報処理装置10は、ステップS101で取得された点群のxyz座標の最大値および最小値を用いて、全ての点Pを囲う直方体を作成する。空間情報処理装置10は、作成された直方体内の空間(対象空間)を複数のボクセルに分割する。一例として、空間情報処理装置10は、対象空間を、一辺が10cmの立方体のボクセルに分割する。なお、ボクセルのサイズは任意に変更することができる。
【0062】
このように、ステップS102aにおいて、空間情報処理装置10は、点群を含む対象空間を複数のボクセルに分割する分割部(すなわち、ボクセル分割部100B)として動作する。
【0063】
空間情報処理装置10は、ステップS102aで分割されたボクセルに含まれる点Pの数をカウントする(ステップS102b)。
【0064】
ボクセルに含まれる点Pの数が閾値TH0以上の場合(ステップS102c:YES)、空間情報処理装置10は、このボクセルにステータス”busy”を付与する(ステップS102d)。ボクセルに含まれる点Pの数が閾値TH0未満の場合(ステップS102c:NO)、空間情報処理装置10は、このボクセルにステータス”free”を付与する(ステップS102e)。本実施形態では、物体の有無を判定するのに適切な閾値が予め設定されている。また、この閾値は任意に変更することができる。
【0065】
このように、ステップS102b~S102eにおいて、区画体検出部100Cとして動作する空間情報処理装置10は、ボクセル分割部100Bにより分割された各ボクセル内の点Pに基づき、各ボクセル内の物体の有無を判定してステータスを付与する。
【0066】
なお、空間情報処理装置10は、例えば処理の効率を向上させるため、対象空間である建物BLの外に位置するボクセルに仮ステータス”error”を付与してもよい。具体的には、空間情報処理装置10は、点Pの数が閾値TH0(または閾値TH0と異なる閾値TH0’)未満で且つ内外判定で建物BLの外に位置すると推定されるボクセルにステータス”error”を付与する。この内外判定には、WNA(Winding Number Algorithm)等のアルゴリズムが用いられる。
【0067】
空間情報処理装置10は、ステップS102aで分割された全てのボクセルに対してステータスを付与したか否かを判定する(ステップS102f)。未処理のボクセルが残っている場合(ステップS102f:NO)、空間情報処理装置10は、ステップS102bに戻り、未処理のボクセルに対するステータスの付与を行う。空間情報処理装置10は、全てのボクセルに対してステータスを付与すると(ステップS102f:YES)、本サブルーチンを終了させる。
【0068】
空間情報処理装置10は、区画体検出処理を実行する(ステップS103)。図8は、区画体検出処理(ステップS103)のサブルーチンを示す。
【0069】
空間情報処理装置10は、xy平面(水平面)上のボクセル位置毎に、z軸方向(鉛直方向)のボクセルのなかでステータス”busy”のボクセルが幾つあるかをカウントする(ステップS103a)。
【0070】
空間情報処理装置10は、ステップS103aでカウントされたボクセル数に基づいて判定対象のボクセル位置に区画体(ここでは壁)があるか否かを判定する(ステップS103b)。
【0071】
図9は、ステップS103bの判定処理を説明するための図である。図9では、ステータス”busy”のボクセルを斜線のハッチングが付されたハッチングマスで示し、ステータス”free”のボクセルをハッチングが付されない白マスで示す。
【0072】
図9中、黒塗り部分は、建物BLの区画体(壁、天井、床など)や部屋内に置かれた物体(家具など)を表す。図9の例1において、黒塗り部分は、床から天井に立設された壁部分または閉まっているドアを模している。図9の例2において、黒塗り部分は、天井、床、部屋内に置かれた物体等を模している。図9の例2において、白部分は、部屋内の空間を表している。図9の例3において、白部分は、開いているドアを表している。図9の例4において、白部分は、窓を表している。便宜上、閉まっているドアを「閉ドア」と略記する。開いているドアを「開ドア」と略記する。
【0073】
通常、部屋の壁およびドアは、鉛直方向に立設されている。そのため、xy平面(水平面)上で壁または閉ドアのあるボクセル位置では、図9の例1に示されるように、z軸方向(鉛直方向)のボクセルの全てに、ステータス”busy”が付与される。便宜上、xy平面上で壁のあるボクセル位置を「壁有りボクセル位置WWP」と記す。
【0074】
これに対し、xy平面(水平面)上で壁のないボクセル位置では、図9の例2に示されるように、z軸方向(鉛直方向)のボクセルのなかでステータス”free”が付与されるボクセルが比較的多い。便宜上、xy平面上で壁のないボクセル位置を「壁無しボクセル位置NWP」と記す。
【0075】
そこで、空間情報処理装置10は、ステップS103aでカウントされたステータス”busy”のボクセル数が閾値TH1(第1の閾値の一例)以上の場合(ステップS103b:YES)、判定対象のボクセル位置に壁または閉ドアがあると判定する(ステップS103c)。
【0076】
また、空間情報処理装置10は、ステップS103aでカウントされたステータス”busy”のボクセル数が閾値TH1未満の場合(ステップS103b:NO)、判定対象のボクセル位置に壁または閉ドアがない(言い換えると、空間(室内)である)と判定する(ステップS103d)。
【0077】
例えば、ボクセルのサイズが10立法センチメートルで、床から天井までの高さが200センチメートルの場合を考える。この場合、ボクセルは、z軸方向(鉛直方向)に20個配置される。そのため、図9の例1および例2を参考にすると、閾値TH1は20となる。
【0078】
しかし、例えば壁に小窓が設けられている場合、この小窓が位置するボクセルにステータス”free”が付与されることがある。また、ノイズの影響により、ボクセルにステータス”free”が誤って付与されることがある。すなわち、壁有りボクセル位置WWPであっても、z軸方向のボクセルの全てにステータス”busy”が付与されるとは限らない。
【0079】
一例として、壁有りボクセル位置WWPでは、ステータス”busy”が付与されるボクセル数は、通常、15個以上であり、壁無しボクセル位置NWPでは、ステータス”busy”が付与されるボクセル数は、通常、5個以下である。そのため、閾値TH1は、例えばこれらの中間値(10など)に設定される。なお、この閾値は任意に変更することができる。
【0080】
壁の有無を判定していないボクセル位置が残っている場合(ステップS103e:NO)、空間情報処理装置10は、ステップS103aに戻り、未処理のボクセル位置に対する壁の有無判定を行う。
【0081】
なお、別の実施形態では、空間情報処理装置10は、鉛直方向下方から上方に向けて、ステータス”free”が付与されるボクセル数が一定数連続する場合、ステータス”busy”が付与されるボクセル数に拘わらず、そのボクセル位置が空間(室内)であると判定してもよい。
【0082】
このように、区画体検出処理(ステップS103)では、判定対象のボクセル位置が壁(および閉ドア)に該当するか空間(室内)に該当するかを判定している。より精度の高い判定アルゴリズムを導入することにより、判定対象のボクセル位置が開ドアに該当するか窓に該当するかを更に判定することができる。
【0083】
図9の例3および例4では、ステータス”busy”が付与されるボクセル数が閾値TH1未満であるものの、このボクセルがz軸方向(鉛直方向)に閾値TH2(第2の閾値の一例)以上連続して並んでいる。また、ステータス”free”が付与されるボクセルがz軸方向に閾値TH3(第3の閾値の一例)以上連続して並んでいる。この場合、空間情報処理装置10は、このボクセル位置に、開ドア(図9の例3)または窓(図9の例4)が位置することを検出する。
【0084】
開ドアまたは窓と検出されたボクセル位置が対象空間の外縁部に位置する場合、空間情報処理装置10は、このボクセル位置に窓が位置すると判定する。これに対し、開ドアまたは窓と検出されたボクセル位置が対象空間の外縁部の内側に位置する場合、空間情報処理装置10は、このボクセル位置に開ドアが位置すると判定する。
【0085】
例えば、後述する2値画像BIa(図10参照)において、符号WDで示される位置は、窓が位置すると判定され、符号DRで示される位置は、開ドアが位置すると判定される。
【0086】
空間情報処理装置10は、xy平面(水平面)上の全てのボクセル位置に対して壁の有無判定を終えると(ステップS103e:YES)、壁有りボクセル位置WWPおよび壁無しボクセル位置NWPに基づく画像変換を行う(ステップS103f)。
【0087】
具体的には、空間情報処理装置10は、3次元のボクセルデータをxy平面(第1軸方向であるz軸方向と直交する平面)上の2次元データに変換する。空間情報処理装置10は、ステップS103cおよびS103dの判定結果に基づき、2次元データ上でxy平面に並ぶ各ボクセル位置に、壁有りボクセル位置WWPと壁無しボクセル位置NWPの情報を付与する。
【0088】
空間情報処理装置10は、壁有りボクセル位置WWPおよび壁無しボクセル位置NWPの情報が付与されたxy平面上の2次元データを2次元の2値画像に変換する。より詳細には、空間情報処理装置10は、壁有りボクセル位置WWPに対応する2値画像上の画素に値0(白)を付与し、壁無しボクセル位置NWPに対応する2値画像上の画素に値1(黒)を付与する。
【0089】
すなわち、空間情報処理装置10は、3次元のボクセルデータを、壁のある位置を白で表し且つ壁のない位置を黒で表す2値画像に変換する。便宜上、ステップS103fの変換処理で得られる2値画像に符号BIaを付す。
【0090】
ここで、図10に、ステップS103fの画像変換処理で得られる2値画像BIaの一例を示す。図10中、白部分は、壁有りボクセル位置WWPに対応する画素を示し、黒部分は、壁無しボクセル位置NWPに対応する画素を示す。このように、2値画像BIaは、建物BL内の区画体である壁を白(値0の情報)として検出したものとなっている。
【0091】
なお、空間情報処理装置10は、仮ステータス”error”が付与されたボクセル位置に対応する2値画像BIa上の画素に、値0や値1以外の情報、例えばNullを付与してもよい。
【0092】
このように、空間情報処理装置10は、図6のステップS101で取得された点群に基づき、対象空間である建物BLを区画する区画体(ここでは壁)を検出する検出部(すなわち、区画体検出部100C)として動作する。
【0093】
より詳細には、区画体検出部100Cとして動作する空間情報処理装置10は、ボクセル分割部100Bにより分割された各ボクセル内の点Pに基づき、各ボクセル内の物体の有無を判定し、物体有りと判定された第1のボクセル(すなわち、ステータス”busy”が付与されたボクセル)と、物体なしと判定された第2のボクセル(すなわち、ステータス”free”が付与されたボクセル)に基づき、対象空間を区画する区画体を検出する。
【0094】
附言するに、区画体検出部100Cとして動作する空間情報処理装置10は、対象空間のz軸方向(鉛直方向であり、第1軸方向の一例)において第1のボクセル(すなわち、ステータス”busy”が付与されたボクセル)が閾値TH1(第1の閾値の一例)以上含まれる場合、z軸方向に並ぶ第1のボクセルに、区画体である壁が位置することを検出する。
【0095】
図10の符号WDは、部屋RM1の窓を示す。図10の符号DRは、各部屋で開いた状態のドアを示す。図10に示されるように、このような窓やドアが位置する箇所では区画体が検出されない。そのため、2値画像BIa上では、部屋を囲う区画体がこれらの箇所で欠けてしまう。この欠けた箇所は、部屋RM1~RM5を分類する際の精度を低下させる要因となってしまう。
【0096】
そこで、空間情報処理装置10は、2値画像BIaに対し、白(別の表現では、ステータス”busy”が付与された第1のボクセルで表される区画体)の形状を補間する補間処理を施す(ステップS103g)。
【0097】
なお、図9の例3を用いて説明したように、符号DRで示される位置が開ドアと判定された場合、開ドアを示すシンボルデータが2値画像BIaに付与されてもよい。また、図9の例4を用いて説明したように、符号WDで示される位置が窓と判定された場合、窓を示すシンボルデータが2値画像BIaに付与されてもよい。
【0098】
図11は、補間処理(ステップS103g)のサブルーチンを示す。補間処理(ステップS103g)において、空間情報処理装置10は、2値画像BIaに対してモルフォロジ変換を施す。本実施形態では、区画体を表す、2値画像BIa内の線分のうち、欠損部分が、モルフォロジ変換によって埋められる。そのため、ノイズ除去処理の一種であるモルフォロジ変換を便宜的に「補間処理」と記している。
【0099】
ここで、図12に、区画体を表す線分(すなわち白の線分)が2値画像BIa内で斜めに大きく傾いている場合を示す。このように、線分が斜めに傾いている場合、モルフォロジ変換による補間精度が劣化する。
【0100】
そこで、空間情報処理装置10は、2値画像BIaに含まれる線分を検出する(ステップS103gA)。線分の検出には、例えばハフ(Hough)変換が用いられる。
【0101】
空間情報処理装置10は、ステップS103gAで検出された線分のなかで最も長い線分が2値画像座標系のx軸方向またはy軸方向に沿っているか否かを判定する(ステップS103gB)。なお、多少のずれ(例えば10度以下の傾き)は、上記軸方向に実質的に沿っているものとし、許容してもよい。また、許容される傾きのずれは、ボクセルのサイズに応じて決定されてもよい。
【0102】
ステップS103gAで検出された線分のなかで最も長い線分が2値画像座標系のx軸方向またはy軸方向に沿っていない場合(ステップS103gB:NO)、空間情報処理装置10は、モルフォロジ変換による補間精度を向上させるため、前処理を実行する(ステップS103gC)。
【0103】
具体的には、空間情報処理装置10は、前処理として、ステップS103gAで検出された線分のなかで最も長い線分が2値画像座標系のx軸方向またはy軸方向に沿うように、ボクセルデータのxyz座標系を回転させる。図12の例は、最も長い線分LS1がx軸方向に沿うように回転変換する様子を示している。
【0104】
空間情報処理装置10は、前処理後、ボクセル処理(図6のステップS102)に戻り、xyz座標系回転後のボクセルデータを用いて、図6のステップS102以降の処理を実行する。このような前処理を行うことにより、例えば、図10のように、区画体を表す線分が軸方向に沿う2値画像BIaが得られる。
【0105】
空間情報処理装置10は、2値画像BIaに対してモルフォロジ変換を施す(ステップS103gD)。
【0106】
具体的には、空間情報処理装置10は、2値画像BIaに対してオープニングまたはクロージングを行う。オープニングは、2値画像BIaに対し、膨張(Dilation)を複数回実施し、その後、収縮(Erosion)を複数回実施する処理である。クロージングは、2値画像BIaに対し、収縮を複数回実施し、その後、膨張を複数回実施する処理である。
【0107】
ここで、「膨張」は、2値画像BIa内のオブジェクト(例えば2値画像BIa内で白で表される壁)の境界にピクセルを加える処理である。「収縮」は、2値画像BIa内のオブジェクトの境界のピクセルを除去する処理である。
【0108】
モルフォロジ変換において膨張、収縮を1、2回程度実施した場合、2値画像BIa内のノイズを良好に除去することができる。しかし、膨張および収縮の実施回数を増やすと、膨張で増えるオブジェクトの面積と収縮で減るオブジェクトの面積が異なることから、モルフォロジ変換の前後でオブジェクトが意図しない形状に大きく変わる可能性がある。
【0109】
そこで、空間情報処理装置10は、モルフォロジ変換の際、近傍係数を設定する。空間情報処理装置10は、着目画素の近傍係数をチェックし、着目画素の周囲に値1の画素が近傍係数以上存在する場合、この着目画素に対して膨張または収縮を実施する。
【0110】
このように、オープニング、クロージングにおける膨張、収縮の実施回数は、近傍係数に基づいて動的に設定される。一例として、膨張に対する近傍係数が1に設定され、また、収縮に対する近傍係数が0に設定される。この場合、x軸方向およびy軸方向に対して画像補間の影響が大きくなる。そのため、例えば、2値画像BIaにおいてx軸方向、y軸方向に延びる、区画体を示す白の線分が、良好に補間される。
【0111】
なお、近傍係数は、任意に設定可能である。
【0112】
図13は、モルフォロジ変換後の2値画像BIbの一例を示す。図13に示されるように、モルフォロジ変換を行うことにより、モルフォロジ変換前(図10の2値画像BIa参照)に欠けていた部分(例えば開いているドアDR)が補間される。この結果、各部屋RM1~RM5が、2値画像BIb上で、区画体を示す白の線分によって明確に区画された状態となる。
【0113】
このように、区画体検出部100Cとして動作する空間情報処理装置10は、第1のボクセル(すなわち、ステータス”busy”が付与されたボクセル)に対応する画素に第1の値(例えば値0)を付与し、第2のボクセル(すなわち、ステータス”free”が付与されたボクセル)に対応する画素に第2の値(例えば値1)を付与した2値画像BIaを作成し、作成された2値画像BIaに対し、区画体を示す白の線分(言い換えると、第1の値が付与された画素で表される区画体の形状)を補間する補間処理を施す。これにより、例えば各部屋RM1~RM5を明確に区画した2値画像BIbが得られる。
【0114】
空間情報処理装置10は、区画空間分類処理を実行する(ステップS104)。図14は、区画空間分類処理(ステップS104)のサブルーチンを示す。図15は、区画空間分類処理(ステップS104)を説明するための図である。
【0115】
空間情報処理装置10は、モルフォロジ変換によって得た2値画像BIbに対してラベリングを行う(ステップS104a)。
【0116】
本実施形態では、画素単位でラベルが付けられる。また、4連結でラベリングが行われる。4連結では、縦、横方向に連続する、値が同じ画素に、同じラベルが付けられる。4連結に代わり、8連結でラベリングが行われてもよい。8連結では、縦、横、斜め方向に連続する、値が同じ画素に、同じラベルが付けられる。
【0117】
本実施形態では、図15に示されるように、2値画像BIb内で値1の画素(すなわち、区画体がないと推定される画素)が連続する領域であって、部屋RM1に対応する画素のそれぞれに、ラベルLB1が付けられる。同様に、2値画像BIb内で値1の画素が連続する領域であって、部屋RM2~RM5に対応する画素のそれぞれに、ラベルLB2~LB5が付けられる。
【0118】
なお、図15中、斜線のハッチング領域は、仮ステータス”error”が付与されたボクセルに対応する画素領域である。この画素領域には、値0や値1以外の情報、例えばNullが付与されている。そのため、この画素領域は、ラベリング処理の対象外となっている。
【0119】
2値画像BIbは、対象空間を大まかに分割したボクセルをもとに作成されるとともにモルフォロジ変換で細かい情報が除去された影響から、点群データと比べて粒度の粗い情報となっている。そのため、各画素のラベルをそのまま点群に適用して区画空間を分類すると、隣接する区画空間の境界付近で分類精度が低下してしまう。
【0120】
そこで、空間情報処理装置10は、隣接する区画空間の境界付近においてボクセルを細分化して再ラベリングを行う(ステップS104b)。
【0121】
図16は、ボクセルの細分化を説明するための図である。図16中、符号BX1は、部屋RM1に対応するボクセルを示す。符号BX2は、部屋RM2に対応するボクセルを示す。符号BX3は、部屋RM1と部屋RM2との境界付近で細分化されたボクセルを示す。
【0122】
図16に例示されるように、空間情報処理装置10は、隣接する区画空間の境界付近でボクセルを4分の1に細かく分割する(符号BX3参照)。次いで、空間情報処理装置10は、この境界付近に限定して、ステップS102b~102f、S103およびS104aの処理を実行する。
【0123】
このように、隣接する区画空間の境界付近でボクセルを細分化したうえでラベルを付けることにより、ラベリング処理の精度が向上する。
【0124】
空間情報処理装置10は、z軸方向に並ぶ各ボクセルを2値画像BIbに変換し、変換されたこれらの2値画像BIbの各画素にも、最初に作成した2値画像BIbと同じラベルを付ける(ステップS104c)。これにより、xyzの3軸方向にラベル付きの画素が並ぶラベル情報が得られる。
【0125】
空間情報処理装置10は、ステップS104cで得られたラベル情報に基づき、対象空間を少なくとも1つの区画空間に分類する(ステップS104d)。すなわち、空間情報処理装置10は、対象空間を、同じラベルが付けられた画素群が位置する区画空間毎に分類する。これにより、対象空間である建物BLを区画する5つの区画区間(部屋RM1~RM5)が情報として得られる。本実施形態によれば、対象空間から部屋等の空間を容易に分類することができる。
【0126】
このように、空間情報処理装置10は、区画体検出部100Cで検出された区画体に基づき、対象空間を、区画体により区画される少なくとも1つの区画空間に分類する分類部(すなわち、空間分類部100D)として動作する。附言するに、空間分類部100Dとして動作する空間情報処理装置10は、2値画像BIb内で第2の値(例えば値1)の画素が連続する領域毎に異なるラベル(例えばラベルLB1~LB5)を付け、ラベルが付けられた2値画像BIbに基づき、対象空間を、区画体により区画される少なくとも1つの区画空間(例えば部屋RM1~RM5)に分類する。
【0127】
空間情報処理装置10は、ステップS104で分類された区画空間(例えば部屋RM1~RM5)毎に異なる色情報を付加する(ステップS105)。
【0128】
図3に示される3次元モデルは、部屋RM1~RM5毎に異なる色情報が付加された建物BLの一例である。一例として、空間情報処理装置10は、部屋RM1~RM5のそれぞれに、赤、青、緑、黄、紫の色情報を付加する。オペレータは、このような3次元モデルを確認することにより、例えば、対象空間に含まれる各部屋を容易に識別することができ、また、BIMの支援情報として活用することができる。
【0129】
2値画像BIbに付与された開ドアや窓を示すシンボルデータも、BIMとの比較の際に用いる支援情報として活用することができる。
【0130】
このように、空間情報処理装置10は、空間分類部100Dにより分類された区画空間を視覚的に区別できるように、区画空間に視覚的情報を付加する付加部(すなわち、視覚的情報付加部100E)として動作する。
【0131】
以上が本発明の例示的な実施形態の説明である。本発明の実施形態は、上記に説明したものに限定されず、本発明の技術的思想の範囲において様々な変形が可能である。例えば明細書中に例示的に明示される実施形態等または自明な実施形態等を適宜組み合わせた内容も本発明の実施形態に含まれる。
【符号の説明】
【0132】
10 :空間情報処理装置
100 :バス
100A :点群取得部
100B :ボクセル分割部
100C :区画体検出部
100D :空間分類部
100E :視覚的情報付加部
111 :プロセッサ
112 :メモリ
113 :補助記憶装置
113A :空間情報処理プログラム
114 :通信インタフェース
115 :入力装置
116 :出力装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16