(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023135106
(43)【公開日】2023-09-28
(54)【発明の名称】情報処理装置、制御方法、プログラム及び記憶媒体
(51)【国際特許分類】
B63B 79/40 20200101AFI20230921BHJP
G01S 17/93 20200101ALI20230921BHJP
B63B 49/00 20060101ALI20230921BHJP
B63B 79/10 20200101ALI20230921BHJP
B63H 25/04 20060101ALI20230921BHJP
B63H 25/02 20060101ALI20230921BHJP
【FI】
B63B79/40
G01S17/93
B63B49/00 Z
B63B79/10
B63H25/04 D
B63H25/04 G
B63H25/02 Z
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022040139
(22)【出願日】2022-03-15
(71)【出願人】
【識別番号】000005016
【氏名又は名称】パイオニア株式会社
(71)【出願人】
【識別番号】520001073
【氏名又は名称】パイオニアスマートセンシングイノベーションズ株式会社
(74)【代理人】
【識別番号】100107331
【弁理士】
【氏名又は名称】中村 聡延
(72)【発明者】
【氏名】松崎 秦
(72)【発明者】
【氏名】加藤 正浩
(72)【発明者】
【氏名】加藤 将大
【テーマコード(参考)】
5J084
【Fターム(参考)】
5J084AA04
5J084AA05
5J084AA07
5J084AA10
5J084AB20
5J084AC03
5J084AD01
5J084BA03
5J084BA34
5J084BA40
5J084BA50
5J084CA03
5J084CA28
5J084CA32
5J084CA49
5J084CA65
5J084CA70
5J084EA04
(57)【要約】
【課題】計測装置が計測した被計測点の法線を好適に算出可能な情報処理装置を提供する。
【解決手段】情報処理装置1のコントローラ13は、主に、取得手段と、法線算出範囲設定手段と、法線算出手段とを有する。取得手段は、計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得する。法線算出範囲設定手段は、計測データが示す計測距離に基づき、被計測点の各々の法線の算出に用いる被計測点の点集合を生成するための法線算出範囲を設定する。法線算出手段は、法線算出範囲に基づき、被計測点の各々の法線を算出する。
【選択図】
図18
【特許請求の範囲】
【請求項1】
計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得する取得手段と、
前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定する法線算出範囲設定手段と、
前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する法線算出手段と、
を有する情報処理装置。
【請求項2】
前記法線算出範囲設定手段は、前記計測距離が長いほど、前記法線算出範囲を大きくする、請求項1に記載の情報処理装置。
【請求項3】
前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、
前記クラスタリングにより形成された前記被計測点のクラスタの各々が岸壁の候補であるか否かを、当該クラスタ内での前記法線のばらつきの度合いに基づき判定する判定手段と、
を有する請求項1または2に記載の情報処理装置。
【請求項4】
前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、
前記クラスタリングにより形成された前記被計測点のクラスタの各々に近似した面を推定し、当該面同士の距離に基づき、前記クラスタの統合の要否を判定する判定手段と、
を有する請求項1~3のいずれか一項に記載の情報処理装置。
【請求項5】
前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、
前記クラスタリングにより形成された前記被計測点のクラスタの各々が岸壁の候補であるか否かを、当該クラスタを形成する前記被計測点の点数及び前記クラスタの面積に基づき判定する判定手段と、
を有する請求項1~4のいずれか一項に記載の情報処理装置。
【請求項6】
前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、
前記クラスタリングにより形成された、岸壁の上面の候補となる前記被計測点のクラスタのうち、所定の存在範囲内に存在し、かつ、最も低い位置に存在するクラスタを、前記上面を表すクラスタと判定する判定手段と、
を有する請求項1~5のいずれか一項に記載の情報処理装置。
【請求項7】
前記判定手段は、前記クラスタリングにより形成された、岸壁の側面の候補となる前記被計測点のクラスタのうち、前記上面を表すクラスタよりも低い位置に存在し、かつ、前記計測装置に最も近くに存在するクラスタを、前記側面を表すクラスタと判定する、請求項6に記載の情報処理装置。
【請求項8】
前記法線に基づき、前記被計測点の各々が、岸壁が計測された壁面点又は前記岸壁以外が計測された非壁面点のいずれであるか分類する分類手段を有し、
前記分類手段は、前記壁面点の間に存在する前記非壁面点を、当該非壁面点と前記壁面点との最短距離に基づき、前記壁面点として再分類する、請求項1~7のいずれか一項に記載の情報処理装置。
【請求項9】
コンピュータが実行する制御方法であって、
計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得し、
前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定し、
前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する、
制御方法。
【請求項10】
計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得し、
前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定し、
前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する処理をコンピュータに実行させるプログラム。
【請求項11】
請求項10に記載のプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、計測データの処理に関する。
【背景技術】
【0002】
従来から、船舶の接岸(着岸)に関する支援を行う技術が知られている。例えば、特許文献1には、船舶の自動接岸を行う自動接岸装置において、ライダから照射される光が接岸位置の周囲の物体に反射してライダにより受光できるように、船舶の姿勢を変化させる制御を行う手法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
一般的に、岸壁は平地である地面部分(上面)と、地面と海とを隔てる垂直壁部分(側面)とで構成される。そのとき、面を抽出するには計測した点群データから計算した法線情報を基にすることが望ましい。一方、例えばライダの場合、遠距離からでは計測した点群が疎になり、近距離からでは計測した点群が密になる測距特性を持つため、被計測点の距離によっては法線計算の精度が悪化もしくは計算不可となる可能性があった。
【0005】
本開示は、上記のような課題を解決するためになされたものであり、計測装置が計測した被計測点の法線を好適に算出可能な情報処理装置を提供することを主な目的とする。
【課題を解決するための手段】
【0006】
請求項に記載の発明は、
計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得する取得手段と、
前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定する法線算出範囲設定手段と、
前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する法線算出手段と、
を有する情報処理装置である。
【0007】
また、請求項に記載の発明は、
コンピュータが実行する制御方法であって、
計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得し、
前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定し、
前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する、
制御方法である。
【0008】
また、請求項に記載の発明は、
計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得し、
前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定し、
前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する処理をコンピュータに実行させるプログラムである。
【図面の簡単な説明】
【0009】
【
図2】情報処理装置のハードウェア構成を示すブロック図である。
【
図3】実施例における処理概要を表すフローチャートの一例である。
【
図4】接岸パラメータの算出処理の概要を示す図である。
【
図5】(A)対象船舶の船体を基準とした船舶座標系の一例を示す。(B)法線ベクトルを明示した構造物の斜視図である。
【
図6】(A)検出対象となる岸壁が比較的遠くに存在する場合の対象船舶及び岸壁の正面図である。(B)検出対象となる岸壁が比較的近くに存在する場合の対象船舶及び岸壁の正面図である。
【
図7】(A)30m地点での点間距離と法線算出半径との関係を示した1m正方形内での被計測点の配列を示す。(B)法線算出半径を「y」とした場合の注目点の計測距離xに応じた1次式を表している。
【
図8】(A)平坦性が高い岸壁側面の各被計測点に対する法線を矢印により示した図である。(B)凹凸がある岸壁側面の各被計測点に対する法線を矢印により示した図である。
【
図9】(A)~(C)防舷材が設けられた岸壁の側面点を明示した図である。
【
図10】同一面統合処理に用いる面間距離の概要を表す図である。
【
図11】面積非壁面除去処理の概要を表す図である。
【
図12】(A)第1疑似面積算出手法の概要を示す。(B)第2疑似面積算出手法の概要を示す。
【
図13】(A)側面の壁面候補クラスタと上面の壁面候補クラスタが夫々3個存在する場合の岸壁の斜視図を示す。(B)最終的に上面と側面とに対応する壁面候補を明示した岸壁の斜視図を示す。
【
図14】上面存在範囲を明示した岸壁の断面図である。
【
図15】(A)(B)上面及び側面に対する壁面候補クラスタを夫々選択する手順(b)~(d)を示す図である。
【
図16】(A)岸壁上の被計測点の分類結果を示す図である。(B)境界点判定処理後の被計測点の分類結果を示す図である。
【
図17】(A)(B)境界点判定処理の概要を示す図である。
【
図18】法線算出処理のフローチャートの一例である。
【
図19】壁面向き判定処理のフローチャートの一例である。
【
図20】分散非壁面除去処理及び同一面統合処理のフローチャートの一例である。
【
図21】面積非壁面除去処理のフローチャートの一例である。
【
図22】最適壁面選択処理のフローチャートの一例である。
【
図23】境界点判定処理のフローチャートの一例である。
【
図30】岸壁検出信頼度の算出例を示すテーブルである。
【発明を実施するための形態】
【0010】
本開示における好適な実施形態によれば、情報処理装置は、計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得する取得手段と、前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定する法線算出範囲設定手段と、前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する法線算出手段と、を有する。この態様によれば、情報処理装置は、計測装置により計測された被計測点の各々の法線を好適に算出することができる。
【0011】
上記情報処理装置の一態様では、前記法線算出範囲設定手段は、前記計測距離が長いほど、前記法線算出範囲を大きくする。この態様により、情報処理装置は、計測装置により計測された被計測点の各々の法線を好適に算出することができる。
【0012】
上記情報処理装置の他の一態様では、情報処理装置は、前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、前記クラスタリングにより形成された前記被計測点のクラスタの各々が岸壁の候補であるか否かを、当該クラスタ内での前記法線のばらつきの度合いに基づき判定する判定手段と、を有する。この態様により、情報処理装置は、平面性が高い岸壁の壁面の被計測点を、岸壁の候補として好適に検出することができる。
【0013】
上記情報処理装置の他の一態様では、情報処理装置は、前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、前記クラスタリングにより形成された前記被計測点のクラスタの各々に近似した面を推定し、当該面同士の距離に基づき、前記クラスタの統合の要否を判定する判定手段と、を有する。この態様により、情報処理装置は、障害物等により分断されたクラスタなどの統合の要否を好適に判定することができる。
【0014】
上記情報処理装置の他の一態様では、情報処理装置は、前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、前記クラスタリングにより形成された前記被計測点のクラスタの各々が岸壁の候補であるか否かを、当該クラスタを形成する前記被計測点の点数及び前記クラスタの面積に基づき判定する判定手段と、を有する。この態様により、情報処理装置は、岸壁の候補となるクラスタを的確に判定することが可能となる。
【0015】
上記情報処理装置の他の一態様では、情報処理装置は、前記法線に基づき前記被計測点のクラスタリングを行うクラスタリング手段と、前記クラスタリングにより形成された、岸壁の上面の候補となる前記被計測点のクラスタのうち、所定の存在範囲内に存在し、かつ、最も低い位置に存在するクラスタを、前記上面を表すクラスタと判定する判定手段と、を有する。この態様により、情報処理装置は、岸壁の上面を表す被計測点のクラスタを的確に判定することが可能となる。
【0016】
上記情報処理装置の他の一態様では、前記判定手段は、前記クラスタリングにより形成された、岸壁の側面の候補となる前記被計測点のクラスタのうち、前記上面を表すクラスタよりも低い位置に存在し、かつ、前記計測装置に最も近くに存在するクラスタを、前記側面を表すクラスタと判定する。この態様により、情報処理装置は、岸壁の側面を表す被計測点のクラスタを的確に判定することが可能となる。
【0017】
上記情報処理装置の他の一態様では、情報処理装置は、前記法線に基づき、前記被計測点の各々が、岸壁が計測された壁面点又は前記岸壁以外が計測された非壁面点のいずれであるか分類する分類手段を有し、前記分類手段は、前記壁面点の間に存在する前記非壁面点を、当該非壁面点と前記壁面点との最短距離に基づき、前記壁面点として再分類する。この態様により、情報処理装置は、法線の向きだけでは正確な分類が難しい、岸壁の上面と側面との境界付近の被計測点の分類を、的確に実行することができる。
【0018】
本開示の他の好適な実施形態によれば、コンピュータが実行する制御方法であって、計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得し、前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定し、前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する。コンピュータは、この制御方法を実行することで、計測装置により計測された被計測点の各々の法線を好適に算出することができる。
【0019】
本開示の他の好適な実施形態によれば、プログラムは、計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得し、前記計測データが示す計測距離に基づき、前記被計測点の各々の法線の算出に用いる前記被計測点の点集合を生成するための法線算出範囲を設定し、前記法線算出範囲に基づき、前記被計測点の各々の法線を算出する処理をコンピュータに実行させるプログラムである。コンピュータは、このプログラムを実行することで、計測装置により計測された被計測点の各々の法線を好適に算出することができる。好適には、上記プログラムは、記憶媒体に記憶される。
【実施例0020】
以下、図面を参照して本発明の好適な実施例について説明する。
【0021】
(1)
運航支援システムの概要
図1(A)~
図1(C)は、本実施例に係る運航支援システムの概略構成である。具体的には、
図1(A)は、運航支援システムのブロック構成図を示し、
図1(B)は、運航支援システムに含まれる船舶及び後述のライダ3の視野範囲(「計測範囲」又は「測距可能範囲」とも呼ぶ。)90を例示した上面図であり、
図1(C)は、船舶及びライダ3の視野範囲90を後ろから示した図である。運航支援システムは、移動体である船舶と共に移動する情報処理装置1と、当該船舶に搭載されたセンサ群2とを有する。以後では、運航支援システムが搭載された船舶を「対象船舶」とも呼ぶ。
【0022】
情報処理装置1は、センサ群2と電気的に接続し、センサ群2に含まれる各種センサの出力に基づき、対象船舶の運航支援を行う。運航支援には、自動接岸(着岸)などの接岸支援などが含まれている。本実施例では、接岸場所である岸壁を的確に計測することで、正確な運航支援を実現する。情報処理装置1は、船舶に設けられたナビゲーション装置であってもよく、船舶に内蔵された電子制御装置であってもよい。
【0023】
センサ群2は、船舶に設けられた種々の外界センサ及び内界センサを含んでいる。本実施例では、センサ群2は、例えば、ライダ(Lidar:Light Detection and Ranging、または、Laser Illuminated Detection And Ranging)3を含んでいる。
【0024】
ライダ3は、水平方向の所定の角度範囲(
図1(B)参照)および垂直方向の所定の角度範囲(
図1(C)参照)に対してパルスレーザを出射することで、外界に存在する物体までの距離を離散的に測定し、当該物体の位置を示す3次元の点群データを生成する外界センサである。
図1(B)及び
図1(C)の例では、ライダ3として、船舶の左側面方向に向けられたライダと、船舶の右側面方向に向けられたライダとが夫々船舶に設けられている。なお、ライダ3の配置は
図1(B)及び
図1(C)の例に限定されない。例えば、対象船舶は、接岸する際に岸壁の複数の計測データが同時に得られるように、同一側面方向を計測する複数のライダ3(例えば対象船舶の前方と後方に設けられたライダ)を有してもよい。また、ライダ3の対象船舶への設置個数は2個に限らず、1個であってもよく、3個以上であってもよい。
【0025】
ライダ3は、照射方向を変えながらレーザ光を照射する照射部と、照射したレーザ光の反射光(散乱光)を受光する受光部と、受光部が出力する受光信号に基づくスキャンデータを出力する出力部とを有する。レーザ光を照射する方向(走査位置)ごとに計測されるデータは、受光部が受光したレーザ光に対応する照射方向と、上述の受光信号に基づき特定される当該レーザ光の応答遅延時間とに基づき生成される。以後では、ライダ3の計測範囲内においてレーザ光が照射されることにより計測された点又はその計測データを「被計測点」とも呼ぶ。
【0026】
ここで、点群データは、各計測方向を画素とし、各計測方向での計測距離及び反射強度値を画素値とする画像(フレーム)とみなすことができる。この場合、画素の縦方向の並びにおいて仰俯角におけるレーザ光の出射方向(即ち計測方向)が異なり、画素の横方向の並びにおいて水平角におけるレーザ光の出射方向が異なる。以後において、点群データを画像とみなした場合に横方向のインデックスの位置が一致する画素の列(即ち縦列)に対応する被計測点を「縦ライン」とも呼ぶ。
【0027】
なお、ライダ3は、上述したスキャン型のライダに限らず、2次元アレイ状のセンサの視野にレーザ光を拡散照射することによって3次元データを生成するフラッシュ型のライダであってもよい。ライダ3は、本発明における「計測装置」の一例である。
【0028】
(2)
情報処理装置の構成
図2は、情報処理装置1のハードウェア構成の一例を示すブロック図である。情報処理装置1は、主に、インターフェース11と、メモリ12と、コントローラ13と、を有する。これらの各要素は、バスラインを介して相互に接続されている。
【0029】
インターフェース11は、情報処理装置1と外部装置とのデータの授受に関するインターフェース動作を行う。本実施例では、インターフェース11は、センサ群2の各センサから出力データを取得し、コントローラ13へ供給する。また、インターフェース11は、例えば、コントローラ13が生成した対象船舶の制御に関する信号を、対象船舶の運航を制御する対象船舶の各構成要素に供給する。例えば、対象船舶は、エンジンや電気モータなどの駆動源と、駆動源の駆動力に基づき進行方向の推進力を生成するスクリューと、駆動源の駆動力に基づき横方向の推進力を生成するスラスターと、船舶の進行方向を自在に定めるための機構である舵等とを備える。そして、自動接岸などの自動運航時には、インターフェース11は、コントローラ13が生成した制御信号を、これらの各構成要素に供給する。なお、対象船舶に電子制御装置が設けられている場合には、インターフェース11は、当該電子制御装置に対し、コントローラ13が生成した制御信号を供給する。インターフェース11は、無線通信を行うためのネットワークアダプタなどのワイヤレスインターフェースであってもよく、ケーブル等により外部装置と接続するためのハードウェアインターフェースであってもよい。また、インターフェース11は、入力装置、表示装置、音出力装置等の種々の周辺装置とのインターフェース動作を行ってもよい。
【0030】
メモリ12は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、フラッシュメモリなどの各種の揮発性メモリ及び不揮発性メモリにより構成される。メモリ12は、コントローラ13が所定の処理を実行するためのプログラムが記憶される。なお、コントローラ13が実行するプログラムは、メモリ12以外の記憶媒体に記憶されてもよい。
【0031】
また、メモリ12には、本実施例において情報処理装置1が実行する処理に必要な情報が記憶される。例えば、メモリ12には、岸壁の位置に関する情報を含む地図データが記憶されてもよい。他の例では、メモリ12には、ライダ3が1周期分の走査を行った場合に得られる点群データに対してダウンサンプリングを行う場合のダウンサンプリングのサイズに関する情報が記憶される。
【0032】
コントローラ13は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)などの1又は複数のプロセッサを含み、情報処理装置1の全体を制御する。この場合、コントローラ13は、メモリ12等に記憶されたプログラムを実行することで、対象船舶の運航支援等に関する処理を行う。
【0033】
また、コントローラ13は、機能的には、岸壁検出部15と、接岸パラメータ算出部16と、を有する。岸壁検出部15は、ライダ3が出力する点群データに基づき、岸壁の検出に関する処理を行う。接岸パラメータ算出部16は、岸壁への接岸に必要なパラメータ(「接岸パラメータ」とも呼ぶ。)の算出を行う。ここで、接岸パラメータには、対象船舶から岸壁までの距離(対岸距離)、対象船舶の岸壁への進入角度、対象船舶が岸壁へ近づく速度(接岸速度)などが含まれる。また、接岸パラメータ算出部16は、岸壁検出部15の処理結果及び接岸パラメータに基づき、岸壁への接岸に関する信頼度を表す情報(「信頼度情報」とも呼ぶ。)を算出してもよい。そして、コントローラ13は、「取得手段」、「法線算出範囲設定手段」、「法線算出手段」、「クラスタリング手段」、「判定手段」、「分類手段」及びプログラムを実行するコンピュータ等として機能する。
【0034】
なお、コントローラ13が実行する処理は、プログラムによるソフトウェアで実現することに限ることなく、ハードウェア、ファームウェア、及びソフトウェアのうちのいずれかの組み合わせ等により実現してもよい。また、コントローラ13が実行する処理は、例えばFPGA(Field-Programmable Gate Array)又はマイコン等の、ユーザがプログラミング可能な集積回路を用いて実現してもよい。この場合、この集積回路を用いて、コントローラ13が本実施例において実行するプログラムを実現してもよい。
【0035】
(2)
処理概要
図3は、本実施例において、岸壁検出部15が実行する処理の概要を示すフローチャートの一例である。
【0036】
まず、岸壁検出部15は、ライダ3がフレーム周期ごとに生成する点群データを取得する(ステップS1)。なお、岸壁検出部15は、ライダ3が生成する点群データに対し、水面位置より下方に存在するデータを、水面の計測データ(即ち誤検出データ)として除去してもよい。なお、岸壁検出部15は、例えば、周辺に水面以外の物体が存在しないときにライダ3が生成する点群データの高さ方向の平均値等に基づき、水面位置を推定する。また、岸壁検出部15は、水面反射データを除去後の点群データに対し、所定サイズの格子空間毎に被計測点を統合する処理であるダウンサンプリングを行ってもよい。なお、ダウンサンプリングは、誤検出データの除去の前に実行されてもよい。
【0037】
次に、岸壁検出部15は、点群データが表す各被計測点の法線を算出する処理である法線算出処理を実行する(ステップS2)。そして、岸壁検出部15は、ステップS2で算出した法線の向きに基づき、壁面向き判定処理を行う(ステップS3)。壁面向き判定処理では、岸壁検出部15は、各被計測点について、岸壁の上面の被計測点(「上面点」とも呼ぶ。)、岸壁の側面の被計測点(「側面点」とも呼ぶ。)、又は岸壁ではない被計測点(「非壁面点」とも呼ぶ。)のいずれであるかの分類(ラベル付け)を行う。
【0038】
次に、岸壁検出部15は、法線の分散に基づき、上面点又は側面点(「壁面点」とも呼ぶ。)であると誤ってラベル付けされた非壁面点を除去する処理である分散非壁面除去処理を行う(ステップS4)。さらに、岸壁検出部15は、防舷材などにより分断された壁面を1つの面として取り扱うために壁面点のクラスタを統合する処理である同一面統合処理を行う(ステップS5)。そして、岸壁検出部15は、ノイズにより発生したノイズ点や小物体の被計測点をクラスタの点数及び面積に基づき除去する処理である面積非壁面除去処理を行う(ステップS6)。
【0039】
次に、岸壁検出部15は、上面点のクラスタ及び側面点のクラスタが夫々複数存在する場合に、1組の上面点のクラスタ及び側面点のクラスタを選択する処理である最適壁面選択処理を実行する(ステップS7)。次に、岸壁検出部15は、上面点と側面点との間に存在する非壁面点(「境界点」とも呼ぶ。)が壁面の境界(上面と側面の境界)に存在する壁面点であるか否かを判定する境界点判定処理を行う(ステップS8)。そして、岸壁検出部15は、上面点又は側面点のいずれかに相当する壁面点であると判定された被計測点を表す点群データである岸壁点群を出力する(ステップS9)。その後、接岸パラメータ算出部16は、岸壁点群に基づき、接岸パラメータ(対岸距離、接岸速度、進入角度)を算出する。
【0040】
図4は、接岸パラメータ算出部16による接岸パラメータの算出処理の概要を示す図である。接岸パラメータ算出部16は、岸壁点群(詳しくは側面点)を対象に、対象船舶から最近傍となる直線(「岸壁エッジ直線」とも呼ぶ。)を生成する。そして、接岸パラメータ算出部16は、その直線への最短距離を対岸距離として算出する。また、接岸パラメータ算出部16は、対岸距離の時間微分によって接岸速度を算出し、岸壁エッジ直線に対する角度から船首向きを表す進入角度を算出する。ここで、ライダ3が計測した被計測点の点群から岸壁ではない小物体やノイズなどの非壁面点を除去できていないと、接岸パラメータを正確に算出することができない。以上を勘案し、本実施例では、岸壁検出部15による岸壁点群の的確な抽出方法について説明する。
【0041】
(3)法線算出処理
岸壁検出部15は、法線算出処理において、ライダ3が取得した点群データが表す各被計測点に対する法線ベクトルを算出する。この場合、岸壁検出部15は、各被計測点を順に処理対象の点(「注目点」とも呼ぶ。)として選択し、注目点から一定距離以内に存在する被計測点の群により近似された面の法線ベクトルを算出する。そして、岸壁検出部15は、対象船舶の船体を基準とした座標系(「船舶座標系」とも呼ぶ。)における法線ベクトルの角度(法線角度)に基づき、各被計測点が側面点、上面点、非壁面点のいずれに該当するかの分類(ラベル付け)を行う。
【0042】
図5(A)は、対象船舶の船体を基準とした船舶座標系の一例を示す。
図5(A)に示すように、ここでは、対象船舶の正面(前進)方向を「X」座標、対象船舶の側面方向を「Y」座標、対象船舶の高さ方向を「Z」座標とする。そして、ライダ3が計測した、ライダ3を基準とした座標系の計測データは、
図5(A)に示す船舶座標系に変換される。なお、移動体に設置されたライダを基準とした座標系の点群データを移動体の座標系に変換する処理については、例えば、国際公開WO2019/188745などに開示されている。
【0043】
図5(B)は、ライダ3が計測した計測位置を表す被計測点及び被計測点に基づき算出した法線ベクトルを明示した岸壁の斜視図である。
図5(B)では、被計測点を丸により示し、法線ベクトルを矢印により示している。ここでは、岸壁の上面及び側面の両方がライダ3により計測できた例が示されている。
【0044】
図5(B)に示すように、岸壁検出部15は、岸壁の側面及び上面の被計測点に対する法線ベクトルを算出する。法線ベクトルは、対象とする平面や曲面に垂直なベクトルであるため、面として構成可能な複数の被計測点を用いて算出される。したがって、岸壁検出部15は、選択した注目点に対し、半径が所定長の円を設定し、その内部に存在する被計測点を用いて法線ベクトルを計算する。以後では、上述の半径を「法線算出半径」と呼び、上述の円(又は球)を「法線算出範囲」とも呼ぶ。
【0045】
ここで、岸壁検出部15は、注目点の計測距離に応じて法線算出半径を定める。この具体例については、
図6(A)及び
図6(B)を参照して説明する。
図6(A)は、検出対象となる岸壁が比較的遠くに存在する場合の対象船舶及び岸壁の正面図であり、
図6(B)は、検出対象となる岸壁が比較的近くに存在する場合の対象船舶及び岸壁の正面図である。
図6(A)及び
図6(B)では、岸壁の被計測点が丸印により示されており、さらに、ある被計測点に対する法線算出範囲が実線枠により示され、法線が矢印により示されている。
【0046】
岸壁検出部15は、
図6(A)に示すように岸壁が比較的遠くに存在する場合には、点群データの点数が少なく(即ち、被計測点が岸壁上で疎に分布し)、法線計算が難しいことを勘案し、法線算出半径を大きく設定する。これにより、法線算出範囲を大きくし、法線計算に用いる被計測点の点数を好適に確保することができる。
【0047】
一方、岸壁検出部15は、
図6(B)に示すように岸壁が近距離に存在する場合には、法線算出半径を小さく設定する。これは、近距離時に遠距離時と同様の法線算出半径を用いた場合には、法線算出に用い被計測点の点数が多くなりすぎてしまい、計算コストの増加や向き推定精度の低下といった問題が生じるからである。
【0048】
図7(A)は、30m地点での点間距離と法線算出半径との関係を示した1m正方形内での被計測点の配列を示す。ここでは、「φ」はライダ3の分解能を示し、「x」は、注目点(
図7(A)の中央の被計測点)の計測距離を示す。この場合、隣接する被計測点の点間距離は「φx」により表される。また、本実施例では、法線算出半径は、注目点ごとに設定され、注目点の計測距離に比例して大きくなるような1次式により表される。この場合、「a」を1次式の傾き(点間距離倍率パラメータ)、「b」を1次式の切片とすると、法線算出半径は、点間距離に「aφx+b」により表される。
図7(B)は、法線算出半径を「y」とした場合の注目点の計測距離xに応じた1次式を表している。ここで、係数a、bは、最低5点以上が法線算出範囲に含まれるように予め実験等に基づき設定され、メモリ12等に記憶されている。
【0049】
このように、岸壁検出部15は、注目点の計測距離に応じて法線算出半径を適応的に設定することで、被計測点ごとの法線を距離によらず一定数の点数により安定的に算出することが可能となる。
【0050】
その後、岸壁検出部15は、壁面向き判定処理において、船舶座標系におけるXY平面に対する法線の角度である法線角度に基づき各被計測点が上面点、側面点、非壁面点のいずれであるかの分類を行う。この場合、岸壁検出部15は、法線角度が予め定められた上面閾値以上となる被計測点を上面点と分類し、法線角度が予め定められた側面閾値(上面閾値より低い閾値)未満となる被計測点を側面点と分類し、その他の被計測点を非壁面点と分類する。
【0051】
(4)分散非壁面除去処理
対象の岸壁が必ずしも地面に対して垂直な側面を持っているとは限らないため、様々な岸壁に対応するために、壁面と判定する法線角度の範囲にはある程度の幅を持たせる必要がある。一方、壁面と判定する法線角度の範囲を大きくすると,平坦でない面まで壁面と判定してしまう恐れがある。このように、防舷材などにより凹凸の激しい部分を除外した岸壁面上の被計測点を壁面点として的確に判定する必要がある。
【0052】
以上を勘案し、岸壁検出部15は、分散非壁面除去処理において、壁面向き判定処理において判定された上面点及び側面点のクラスタにおいて、法線の分散が大きいクラスタを、非壁面点を形成するクラスタとして除去する。なお、上面点及び側面点のクラスタを生成する手法(クラスタリング手法)は、例えば距離に基づくユークリッドクラスタリングなどの任意のクラスタリング手法である。
【0053】
図8(A)は、平坦性が高い岸壁側面の各被計測点に対する法線を矢印により示した図である。
図8(B)は、凹凸がある岸壁側面の各被計測点に対する法線を矢印により示した図である。ここでは、「θ」はある被計測点に対する法線角度を表す。
図8(A)の例では、岸壁側面の各被計測点に対する法線の方向が揃っており、分散が小さい。よって、この場合、岸壁検出部15は、岸壁側面の各被計測点を壁面点と判定する。なお、
図8(A)では、側面が斜めに傾いているが、法線角度θの許容角度(即ち、上述の側面閾値)をある程度大きくすることで、このような側面の被計測点についても壁面点であると的確に判定することが可能である。
【0054】
一方、
図8(B)の例では、岸壁側面の各被計測点に対する法線の方向にばらつきがあり、分散が大きくなっている。よって、この場合、岸壁検出部15は、岸壁側面の各被計測点を非壁面点と判定する。
【0055】
ここで、クラスタごとの分散の算出方法の具体例について説明する。まず、岸壁検出部15は、クラスタごとの被計測点の法線群のXYZ方向の各要素の共分散行列を計算する。共分散行列の対角成分は各軸(X軸、Y軸、Z軸)方向の分散値を表すことから、岸壁検出部15は、共分散行列の対角成分の最大値が所定の閾値以上となる場合、対象のクラスタが非壁面点のクラスタであると判定する。
【0056】
上述した分散非壁面除去処理によれば、壁面と判定する法線角度の範囲をある程度大きくした場合であっても、平面性の低い面(法線がばらついていて分散が大きい面)の被計測点を非壁面点として的確に判定することができる。また、壁面と判定する法線角度の範囲をある程度大きくできるため、
図8(A)に示すような斜めの側面の被計測点を壁面点として的確に判定できると共に、対象船舶のロール角及びピッチ角の変化にもロバストに壁面点の判定を行うことが可能となる。なお、分散は「ばらつきの度合い」を表す指標の一例である。
【0057】
(5)同一面統合処理
岸壁検出を行う際に、ユークリッドクラスタリングなどにより空間的に近い点同士をクラスタ毎に分けた場合、防舷材や岸壁上の障害物によって、本来は同一平面上に存在するはずの壁面候補のクラスタが、複数のクラスタに分断されてしまう場合がある。そして、壁面候補のクラスタのうちいずれか1つのみを壁面を表すクラスタとして採用すると、接岸パラメータ算出部16による対岸距離の算出に用いる壁面点数が少なくなり、対岸距離算出精度の悪化の恐れがある。
【0058】
以上を勘案し、同一面統合処理では、側面点又は上面点のクラスタ(「壁面候補クラスタとも呼ぶ。)を、法線の向きと壁面候補クラスタ同士の面間距離に基づき統合する。
図9(A)は、防舷材が設けられた岸壁の側面点を明示した図である。
図9(A)では、防舷材の存在により岸壁の側面点が二分されており、その結果、第1壁面候補クラスタと第2壁面候補クラスタ(ここではいずれも側面点のクラスタ)とが形成されている。
図9(B)は、第2壁面候補クラスタを、壁面を表すクラスタとして採用し、第1壁面候補クラスタを、非壁面を表すクラスタとした状態を表す。この例では、第1壁面候補クラスタを形成する被計測点が非壁面点に分類されるため、結果として側面点の点数が少なくなってしまう。
図9(C)は、同一面統合処理により第1壁面候補クラスタと第2壁面候補クラスタを統合した統合壁面候補クラスタを示した図である。この例では、第1壁面候補クラスタと第2壁面候補クラスタに属する被計測点が側面点として扱われるため、側面点の点数の減少を抑制することができる。また、生成された統合壁面候補クラスタは、後述する面積非壁面除去処理においても非壁面として除外されにくいという利点もある。
【0059】
図10は、同一面統合処理に用いる面間距離の概要を表す図である。
図10において、「G
1(x
1,y
1,z
1)」は、第1壁面候補クラスタの代表点(代表位置)を表し、「G
2(x
2,y
2,z
2)」は、第2壁面候補クラスタの代表位置を表す。また、「n=(n
x,n
y,n
z)
T」は、第1壁面候補クラスタの代表の法線ベクトル(第2壁面候補クラスタの代表の法線ベクトルと同一)であるものとする。また、「H」は、第2壁面候補クラスタを近似した面(延長面)と法線ベクトルnとの交点を表す。
【0060】
図10に示すように、岸壁検出部15は、面間距離を、壁面候補の重心点や幾何中心点などの代表点同士を結んだベクトルと、法線ベクトルとの内積(|(G2-G1)・n|)として算出する。この面間距離は対象船舶のロール・ピッチ角が変化しても変わらず計算できるため、対象船舶の姿勢によらずに同一面統合処理を的確に実行することができる。
【0061】
次に、統合条件について説明する。岸壁検出部15は、比較する壁面候補クラスタの法線が近似することを第1条件とする。例えば、側面候補クラスタ同士の場合、XY平面上の角度差が10度以内であれば法線が近似すると判定する。次に、岸壁検出部15は、面間距離が所定の閾値未満であることを第2条件とする。また、岸壁検出部15は、比較する壁面候補クラスタの代表点間距離が所定の閾値未満であることを第3条件とする。なお、第3条件は必須の条件としなくともよい。この場合、第1条件及び第2条件を必要十分条件としてもよく、第1~第3条件を必要十分条件としてもよい。
【0062】
ここで、3つ以上の壁面候補クラスタが存在する場合の統合方法について補足説明する。第1の例では、岸壁検出部15は、上述の条件を満たす壁面候補クラスタの組を統合した後,代表の法線と代表点を計算し直した上で、次の候補との比較及び統合を順次行う。第2の例では、岸壁検出部15は、距離が近い壁面候補クラスタ同士で統合判定を行い,最終的に統合すべきと判定された全ての壁面候補クラスタを統合する。
【0063】
(6)面積非壁面除去処理
岸壁検出部15は、面積非壁面除去処理において、ノイズ点や小物体(係留用ロープなど)に対応する壁面候補クラスタを、点数と面積とに基づき除去する。
【0064】
まず、岸壁検出部15は、点数が所定閾値に満たない小さな壁面候補クラスタを非壁面点のクラスタとすることで,ノイズなどの外れ点を除外する。次に、岸壁検出部15は、壁面候補クラスタが空間に占有する面積を判定基準に加え、所定面積を満たさない小さな壁面候補クラスタを、非壁面点のクラスタとして除外する。
【0065】
図11は、面積非壁面除去処理の概要を表す図である。
図11において、被計測点P1~P3は、夫々1個からなるクラスタであり、岸壁検出部15は、これらのクラスタの点数が閾値未満であることから、これらを非壁面点とみなす。また、クラスタCw4は、点数が閾値以上であるものの、面積の閾値を満たしていないことから、岸壁検出部15は、クラスタCw4を、非壁面点のクラスタとみなす。一方、岸壁検出部15は、点数及び面積の両方の条件を満たすクラスタCw5、Cw6を、壁面候補クラスタとして残す。
【0066】
ここで、壁面候補クラスタの面積算出方法について説明する。岸壁検出部15は、壁面候補クラスタ毎に主成分分析を行い、各クラスタが占める疑似面積の計算を行う。
図12(A)は、第1疑似面積算出手法の概要を示し、
図12(B)は、第2疑似面積算出手法の概要を示す。
図12(A)において、「PC
1」はクラスタCw5の第1主成分軸、「PC
2」はクラスタCw5の第2主成分軸、「PC
3」はクラスタCw6の第1主成分軸、「PC
4」はクラスタCw6の第2主成分軸を表す。また、
図12(B)において、「sd
1」はクラスタCw5の第1主成分軸の標準偏差、「sd
2」はクラスタCw5の第2主成分軸の標準偏差、「sd
3」はクラスタCw6の第1主成分軸の標準偏差、「sd
4」はクラスタCw6の第2主成分軸の標準偏差を表す。
【0067】
第1疑似面積算出手法では、岸壁検出部15は、主成分分析の第1及び第2主成分軸方向の長さを縦横の長さとして、クラスタCw5及びクラスタCw6を夫々四角形と見なした場合の面積を計算する。この場合、係数k(0<k<1)を用いて、岸壁検出部15は、第1疑似面積算出手法に基づくクラスタCw5の面積S1を
S1=k×ws×hs
とし、クラスタCw6の面積S1を、
S1=k×wu×hu
とする。この場合、長さ(ws、hs、wu、hu)は第1及び第2主成分軸方向でのクラスタ内の被計測点の最大値及び最小値の差によって決定される。第1疑似面積算出手法では、クラスタが四角形に近いとき、実面積に近い値が得られる。
【0068】
第2疑似面積算出手法では、岸壁検出部15は、第1主成分の固有値及び第2主成分の固有値から標準偏差を求め,その積をクラスタの大きさ(即ちばらつきの度合い)とし、面積を算出する。この場合、岸壁検出部15は、第2疑似面積算出手法に基づくクラスタCw5の面積S2を
S2=k×sd1×sd2=k√(λ1λ2)
とし、クラスタCw6の面積S2を
S2=k×sd3×sd4=k√(λ3λ4)
とする。
【0069】
ここで、「λ1」はクラスタCw5の第1主成分の固有値、「λ2」はクラスタCw5の第2主成分の固有値、「λ3」はクラスタCw6の第1主成分の固有値、「λ4」はクラスタCw6の第2主成分の固有値を表す。第2疑似面積算出手法では、様々な形状の大きさを汎用的に評価できる。
【0070】
(7)最適壁面選択処理
対象とする岸壁が複雑な形状の場合、複数の壁面候補クラスタが存在する。従って、岸壁検出部15は、最適壁面選択処理において、岸壁として尤もらしい壁面候補クラスタを選択する。
【0071】
この場合、岸壁検出部15は、壁面候補クラスタ毎に代表位置を計算し、相互の位置関係を基に最適面を選択する。最終的に、岸壁検出部15は、上面と側面とに対応する壁面候補クラスタを夫々1個に絞り込み、選ばなかった壁面候補クラスタを障害物などの非壁面点のクラスタとみなす。
図13(A)は、側面の壁面候補クラスタと上面の壁面候補クラスタが夫々3個存在する場合の岸壁の斜視図を示す。
図13(B)は、最終的に上面と側面とに対応する壁面候補を明示した岸壁の斜視図を示す。
【0072】
最適壁面選択処理の詳細について説明する。まず、岸壁検出部15は、岸壁上面の存在し得る高さの範囲(「上面存在範囲」とも呼ぶ。)を予め設定し,その範囲外となる上面の壁面候補クラスタ(例えば海面反射点や建造物の屋根などのクラスタ)を除外する。
【0073】
図14は、上面存在範囲を明示した岸壁の断面図である。
図14において、クラスタCw10~Cw14は、上面点からなる壁面候補クラスタである。この場合、岸壁検出部15は、上面存在範囲外となるクラスタCw10及びクラスタCw13を、非壁面点のクラスタとみなす。なお、上面存在範囲は、潮位や船舶の喫水深さにより上下するため,ある程度余裕を持った範囲に設定する。なお、岸壁検出部15は、側面に関しても,存在範囲が限定される場合に存在範囲(側面存在範囲)を設定し、側面存在範囲外の側面点の壁面候補クラスタを非壁面点のクラスタとして分類してもよい。
【0074】
図15(A)及び
図15(B)は、上面及び側面に対する壁面候補クラスタを夫々選択する手順(b)~(d)を示す図である。なお、手順(a)は、前処理として、同一面統合処理による面の統合を行ったことを示している。まず、岸壁検出部15は、手順(b)において、上面存在範囲に存在す上面の壁面候補クラスタのうち、代表位置が最も低い位置となる壁面候補クラスタを選択する。ここで、代表位置は、例えば、壁面候補クラスタの重心点や幾何中心点である。次に、岸壁検出部15は、手順(c)において、手順(b)で選択した上面に対応する壁面候補クラスタの代表位置よりも高い代表位置の位置となる側面の壁面候補クラスタを除外する。そして、岸壁検出部15は、残った側面の壁面候補クラスタのうち、対象船舶に最も近い代表位置となる壁面候補クラスタを選択する。
【0075】
これらの手順によれば、岸壁検出部15は、上面及び側面に夫々対応する1組の壁面候補クラスタを的確に選択することができる。
【0076】
(8)
境界点判定処理
岸壁のエッジ付近では、法線を計算する際に上面と側面の点が混在するため、法線角度が斜め方向になりやすい。従って、エッジ付近の被計測点については、法線角度から上面点、側面点、非壁面点の判定を的確に行うことが難しい。
図16(A)は、岸壁上の被計測点の分類結果を示す図である。
図16(A)において、矢印は法線方向を表している。
図16(A)の例では、側面と上面の境のエッジ付近の被計測点が非壁面点と判定されている。
【0077】
以上を勘案し、岸壁検出部15は、境界点判定処理では、上面と側面の境界に存在する非壁面点である境界点が壁面点として相応しいか否かの再判定を行う。
図16(B)は、境界点判定処理後の被計測点の分類結果を示す図である。この場合、
図16(A)において存在していた非壁面点は、側面点又は上面点のいずれかに適切に再分類されている。
【0078】
図17(A)及び
図17(B)は、境界点判定処理の概要を示す図である。まず、岸壁検出部15は、
図17(A)に示すように、縦ラインごとに下から(即ちライダ3の俯角が最大の位置から仰角が大きくなる方向に)走査することで境界点を探索する。次に、岸壁検出部15は、
図17(B)に示されるように、探索した境界点から最近傍となる壁面点(側面点又は上面点)との距離を計算し、その距離が所定閾値以下であった場合に、探索した境界点を壁面点として再判定(分類)する。詳しくは、岸壁検出部15は、この場合、壁面点であると再判定した境界点について、最近傍となる壁面点が側面点である場合には側面点と分類し、最近傍となる壁面点が上面点であれば上面点と分類する。なお、上面又は側面のうち片面しか検出されていない場合でも、岸壁検出部15は、壁面点の端点から数列分の被計測点を境界点とみなし、境界点と壁面点との最短距離が閾値以下であれば、当該境界点を壁面点として再判定してもよい。
【0079】
(9)
詳細処理フロー
次に、
図3のフローチャートにおいて説明した各処理の詳細フローについて説明する。
【0080】
図18は、
図3のステップS2で実行される法線算出処理のフローチャートの一例である。
【0081】
まず、岸壁検出部15は、法線算出処理において用いる点群データを取得する(ステップS11)。そして、岸壁検出部15は、以下に述べるステップS12~S16の処理ループを実行する。この場合、岸壁検出部15は、取得した点群データの全被計測点を順に注目点として選択し、注目点として選択する被計測点がなくなるまで、処理ループを繰り返し実行する。
【0082】
まず、岸壁検出部15は、ライダ3の基準点から注目点までの距離(即ち計測距離)xを計算する(ステップS12)。次に、岸壁検出部15は、計測距離xに基づき、法線算出半径を計算する(ステップS13)。そして、岸壁検出部15は、注目点から法線算出半径内に存在する他の被計測点(「近傍点」とも呼ぶ。)を探索する(ステップS14)。そして、岸壁検出部15は、注目点と近傍点の合計点数が点数閾値以上であるか否か判定する(ステップS15)。そして、上述の点数が点数閾値以上である場合(ステップS15;Yes)、岸壁検出部15は、注目点及び近傍点に基づき注目点の法線を計算する(ステップS16)。一方、上述の点数が点数閾値未満である場合(ステップS15;No)、岸壁検出部15は、ステップS16を実行しない。
【0083】
そして、岸壁検出部15は、ステップS12~S16の処理ループの終了後、法線算出処理の処理結果として、各被計測点に法線(法線ベクトル)が関連付けられた法線付き点群を出力する(ステップS17)。
【0084】
図19は、
図3のステップS3で実行される壁面向き判定処理のフローチャートの一例である。
【0085】
まず、岸壁検出部15は、法線算出処理の処理結果である法線付き点群を、壁面向き判定処理に用いる入力として取得する(ステップS21)。次に、岸壁検出部15は、ステップS22~S26の処理ループを実行する。この場合、岸壁検出部15は、取得した点群データの全被計測点を順に注目点として選択し、注目点として選択する被計測点がなくなるまで、処理ループを繰り返し実行する。
【0086】
まず、岸壁検出部15は、注目点の法線角度θが上面閾値より大きいか否か判定する(ステップS22)。そして、注目点の法線角度θが上面閾値より大きい場合(ステップS22;Yes)、岸壁検出部15は、注目点に対して上面点であることを示すラベル(上面ラベル)を付与する(ステップS23)。一方、注目点の法線角度θが上面閾値以下の場合(ステップS22;No)、岸壁検出部15は、注目点の法線角度θが側面閾値未満であるか否か判定する(ステップS24)。そして、注目点の法線角度θが側面閾値未満である場合(ステップS24;Yes)、岸壁検出部15は、注目点に対して側面点であることを示すラベル(側面ラベル)を付与する(ステップS25)。一方、注目点の法線角度θが側面閾値以上である場合(ステップS24;No)、岸壁検出部15は、注目点に対して非壁面点であることを示すラベル(非壁面ラベル)を付与する(ステップS26)。上述したラベル(上面ラベル、側面ラベル、非壁面ラベル)を「壁面ラベル」と総称する。
【0087】
そして、岸壁検出部15は、ステップS22~S26の処理ループの終了後、壁面向き判定処理の処理結果として、各被計測点に法線及び壁面ラベルが関連付けられた法線/壁面ラベル付き点群を出力する(ステップS27)。
【0088】
図20は、
図3のステップS4及びステップS5で実行される分散非壁面除去処理及び同一面統合処理のフローチャートの一例である。
【0089】
まず、岸壁検出部15は、壁面向き判定処理の処理結果である法線/壁面ラベル付き点群を、分散非壁面除去処理及び同一面統合処理に用いる入力として取得する(ステップS31)。そして、岸壁検出部15は、壁面点となる被計測点のクラスタリング(例えばユークリッドクラスタリング)を実行する(ステップS32)。そして、岸壁検出部15は、生成されたクラスタの各々について、点数が所定閾値より大きいか否か判定する(ステップS33)。そして、岸壁検出部15は、点数が所定閾値以下のクラスタを、非壁面点のクラスタと判定する(ステップS33;No及びステップS34)。この場合、岸壁検出部15は、点数が所定閾値以下のクラスタの各被計測点の壁面ラベルを非壁面ラベルに変更する。
【0090】
次に、岸壁検出部15は、上面点と側面点を分離し、夫々でクラスタリング(例えばユークリッドクラスタリング)を実行する(ステップS35)。そして、岸壁検出部15は、ステップS36~S45の処理ループを実行する。この場合、岸壁検出部15は、ステップS35で生成したクラスタを順に注目クラスタとして選択し、注目クラスタとして選択するクラスタがなくなるまで、この処理ループを繰り返し実行する。
【0091】
まず、岸壁検出部15は、注目クラスタの各被計測点を対象として分散共分散行列を計算する(ステップS36)。そして、岸壁検出部15は、分散共分散行列の対角成分の最大値を求める(ステップS37)。次に、岸壁検出部15は、ステップS37で求めた最大値が所定閾値未満であるか否か判定する(ステップS38)。そして、ステップS37で求めた最大値が所定閾値未満である場合(ステップS38;Yes)、岸壁検出部15は、注目クラスタが壁面点のクラスタとしての条件を満たすと判定し、ステップS39を実行する。一方、ステップS37で求めた最大値が所定閾値以上である場合(ステップS38;No)、岸壁検出部15は、注目クラスタを、非壁面点のクラスタと判定する(ステップS40)。
【0092】
ステップS39では、岸壁検出部15は、注目クラスタの代表位置(代表点)及び代表法線を計算する(ステップS39)。そして、岸壁検出部15は、代表法線に基づき、注目クラスタと代表法線の向き(即ち壁面向き)が近い他のクラスタが存在するか否か判定する(ステップS41)。そして、注目クラスタと壁面向きが近い他のクラスタが存在する場合(ステップS41;Yes)、岸壁検出部15は、注目クラスタと当該他のクラスタとの面間距離を計算する(ステップS42)。そして、岸壁検出部15は、面間距離が距離閾値未満であると判定した場合(ステップS43;Yes)、注目クラスタと当該他のクラスタとの点群を統合し(ステップS44)、統合した点群を表すクラスタを壁面候補クラスタとしてメモリ12等に保存する(ステップS45)。一方、岸壁検出部15は、注目クラスタと壁面向きが近い他のクラスタが存在しない場合(ステップS41;No)、又は、面間距離が距離閾値以上であると判定した場合(ステップS43;No)、注目クラスタを壁面候補クラスタとしてメモリ12等に保存する(ステップS45)。
【0093】
そして、岸壁検出部15は、クラスタに関する処理ループの終了後、分散非壁面除去処理及び同一面統合処理の処理結果として、壁面候補クラスタの群を出力する(ステップS46)。
【0094】
図21は、
図3のステップS6で実行される面積非壁面除去処理のフローチャートの一例である。
【0095】
まず、岸壁検出部15は、分散非壁面除去処理及び同一面統合処理の処理結果である壁面候補クラスタの群を、面積非壁面除去処理の入力として取得する(ステップS51)。そして、岸壁検出部15は、ステップS52~S59の処理ループを実行する。この場合、岸壁検出部15は、壁面候補クラスタを順に注目クラスタとして選択し、注目クラスタとして選択する壁面候補クラスタがなくなるまで、この処理ループを繰り返し実行する。なお、岸壁検出部15は、第1疑似面積算出手法に基づきステップS53~S55を実行してもよく、第2疑似面積算出手法に基づきステップS57及びS58を実行してもよい。
【0096】
まず、岸壁検出部15は、注目クラスタに対して主成分分析を行う(ステップS52)。そして、第1疑似面積算出手法を採用する場合には、岸壁検出部15は、注目クラスタを構成する各被計測点の元の座標値を第1及び第2主成分軸の座標値に変換する(ステップS53)。次に、岸壁検出部15は、注目クラスタの各軸方向の最大値及び最小値の差から、注目クラスタを矩形とみなした場合の縦横の長さw、hを計算し(ステップS54)、面積S1を計算する(ステップS55)。一方、第2疑似面積算出手法を採用する場合には、岸壁検出部15は、第1及び第2主成分の固有値λから標準偏差sdを計算し(ステップS57)、面積S2を計算する(ステップS58)。
【0097】
そして、岸壁検出部15は、算出した面積が所定閾値よりも大きいか否か判定する(ステップS56)。そして、岸壁検出部15は、算出した面積が所定閾値以下の場合(ステップS56;Yes)、対象クラスタを非壁面点のクラスタと判定する(ステップS59)。
【0098】
そして、岸壁検出部15は、壁面候補クラスタの処理ループの終了後、ステップS59で非壁面点であるとの判定がなされなかった壁面候補クラスタの群を、面積非壁面除去処理の処理結果として出力する(ステップS60)。
【0099】
図22は、
図3のステップS7で実行される最適壁面選択処理のフローチャートの一例である。
【0100】
まず、岸壁検出部15は、面積非壁面除去処理の処理結果である壁面候補クラスタの群を、最適壁面選択処理の入力として取得する(ステップS61)。次に、岸壁検出部15は、各壁面候補クラスタの代表位置を計算する(ステップS62)。そして、岸壁検出部15は、上面存在範囲の上限よりも高い代表位置となる壁面候補クラスタの各点、及び、下限よりも低い代表位置となる壁面候補クラスタの各点には、非壁面ラベルを付す(ステップS63)。
【0101】
そして、岸壁検出部15は、上面点からなる壁面候補クラスタが1個以上あるか否か判定する(ステップS64)。そして、上面点からなる壁面候補クラスタが1個以上ある場合(ステップS64;Yes)、岸壁検出部15は、上面点からなる壁面候補クラスタのうち最も代表位置が低いクラスタを残し、他のクラスタの各点には非壁面ラベルを付与する(ステップS65)。一方、上面点からなる壁面候補クラスタが1個の場合(ステップS64;No)、ステップS65は実行されない。
【0102】
そして、岸壁検出部15は、側面点からなる壁面候補クラスタのうち、残った1個の上面点の壁面候補クラスタの代表点よりも高い(即ちZ座標が大きい)クラスタの各点に非壁面ラベルを付与する(ステップS66)。そして、岸壁検出部15は、残った側面点の壁面候補クラスタのうちY座標の絶対値が最も小さい(即ち原点に近い)クラスタを残し、他のクラスタの各点には非壁面ラベルを付与する(ステップS67)。そして、岸壁検出部15は、最適壁面選択処理の処理結果として、被計測点ごとに法線及び壁面ラベルが関連付けられた法線/壁面ラベル付き点群を出力する(ステップS68)。
【0103】
図23は、
図3のステップS8で実行される境界点判定処理のフローチャートの一例である。
【0104】
まず、岸壁検出部15は、最適壁面選択処理の処理結果である法線/壁面ラベル付き点群を、境界点判定処理の入力として取得する(ステップS71)。次に、岸壁検出部15は、ステップS72~S75の処理ループを実行する。この場合、岸壁検出部15は、点群データの全ての縦ラインを順に注目ラインとして選択し、注目ラインとして選択する縦ラインがなくなるまで繰り返しループを実行する。
【0105】
まず、岸壁検出部15は、側面点と上面点との間に存在する非壁面点を探索する(ステップS72)。そして、岸壁検出部15は、探索した非壁面点の各々について、最近傍に位置する壁面点(上面点又は側面点)との距離を計算する(ステップS73)。そして、岸壁検出部15は、計算した距離が所定閾値未満となる非壁面点が存在すると判定した場合(ステップS74;Yes)、当該非壁面点の壁面ラベルを、最近傍に位置する壁面点と同一の壁面ラベルに設定する(ステップS75)。一方、岸壁検出部15は、計算した距離が所定閾値未満となる非壁面点が存在しないと判定した場合(ステップS74;No)、ステップS75の処理を実行しない。
【0106】
そして、岸壁検出部15は、縦ラインのループ処理の終了後、境界点判定処理の処理結果として、壁面ラベルが各被計測点に関連付けられた壁面ラベル付き点群を出力する(ステップS76)。
【0107】
(10)
適用例
次に、
図3に示すフローチャートの処理結果を利用した適用例(第1適用例~第3適用例)について説明する。
【0108】
図24及び
図25は、第1適用例の概要を示す図である。第1適用例は、船舶が
図24に示される形状の岸壁に着岸するときの岸壁検出である。この場合、ライダは船舶側面に取り付けられ、岸壁方向を照射する。そして、ライダのビームは放射状に出力されるため,取得される被計測点の間隔は位置が遠いほど広がる。
【0109】
第1適用例では、ライダの視野内に岸壁の点群が取得され始めた第1タイミング、岸壁の壁面上に突起物が存在する区間の検出中の第2タイミング、船舶が岸壁に対して近距離となった第3タイミングにおいて本実施例の処理が実行される。この場合、
図25に示されるように、第1タイミングで本実施例の処理を行う場合、法線算出半径を大きくして点の探索をするため,法線計算に用いる点数が少なくなることを防ぐ。また、遠距離からでも法線算出ができることで,岸壁検出可能な最大距離が伸びる。また、第2タイミングで本実施例の処理を行う場合、法線の分散閾値によって突起物を除去し、平坦性が高い面のみを抽出できる。また,分断されてしまった面を統合した上で、面積による壁面判定ができる。また、第3タイミングで本実施例の処理を行う場合、法線算出半径を小さくして点の探索をするため、局所的な法線が求められ、計算精度が向上する。特に、法線方向が乱れやすい上面と側面の境界点における性能が改善される。
【0110】
図26及び
図27は、第2適用例の概要を示す図である。第2適用例では、ライダの視野内に係留用ロープ,ブイといった壁面以外の物体が存在する場合を例とする。そして、これらの障害物の点は法線計算時には角度によっては上面点や側面点である旨のラベル付けがなされ、壁面候補に混ざってしまうことがある。これに対し、本実施例の処理を実行することで、
図27に示すように、点数フィルタ処理(分散非壁面除去処理、面積非壁面除去処理等)によって外れ点を除去できる。また、点数閾値によって除去できなかった障害物に対して誤って壁面ラベルが付与された場合でも,面積を利用した判定によって壁面候補から除外することができる。その結果、
図27に示すように、側面から上面にかけて隔たり無く壁面ラベルが付与されている。
【0111】
図28及び
図29は、第3適用例の概要を示す図である。第3適用例では、複雑形状の岸壁の抽出に関し、岸壁の縁が一直線でなく、また岸壁上の障害物によって複数の壁面候補が表れるような場合を例とする。この場合、引き波に対して上面判定されてしまう場合もある。また、対岸距離を考慮し、船舶に近い位置に存在する壁面候補クラスタを優先的に壁面点と判定する必要がある。これに対し、本実施例に係る処理を実行することで、
図29に示されるように、岸壁上に存在する建造物の屋根やコンテナ側面、船舶の引き波等、誤った面が壁面とみなされる事象を減少させることができる。また、よりもっともらしい面が岸壁と判定されることで、岸壁検出結果を利用した対岸距離(ライダ-岸壁間距離)の計算の安定性を向上させることができる。
【0112】
(11)岸壁検出信頼度の算出
接岸パラメータ算出部16は、岸壁検出部15による岸壁検出結果の信頼度(岸壁検出信頼度)を、上面と側面のそれぞれにおいて算出してもよい。
【0113】
図30は、岸壁検出信頼度の算出例を示すテーブルである。ここで、「検出/未検出」に関する係数「q
3」は、上面や側面が検出されたか否かに応じた値となり、「壁面点数」に関する係数「q
2」は、どの程度の大きさの点群が取得できているかを表し、大きいほど信頼度が高いことを表す。「視野角内/外」に関する係数「q
1」は、ライダの視野角に岸壁が収まっているかを表し、視野余裕度が大きく、視野角内に収まっている場合に1となり、視野角外まで岸壁が存在する可能性がある場合に-0.5となる。「法線ベクトル分散」に関する係数「q
0」は、岸壁と判定されたクラスタの法線ベクトルの分散度合いを表し、分散が小さいほど信頼度は高いことを表す。そして、側面の岸壁検出信頼度「q
s」と上面の岸壁検出信頼度「q
u」は、上述した各係数の重み付け平均によって夫々算出される。この場合に使用される各重み係数「w
0」~「w
3」は例えば予めメモリ12等に記憶されている。
【0114】
以上説明したように、情報処理装置1のコントローラ13は、主に、取得手段と、法線算出範囲設定手段と、法線算出手段とを有する。取得手段は、計測装置により計測された複数の被計測点を表すデータの集合である計測データを取得する。法線算出範囲設定手段は、計測データが示す計測距離に基づき、被計測点の各々の法線の算出に用いる被計測点の点集合を生成するための法線算出範囲を設定する。法線算出手段は、法線算出範囲に基づき、被計測点の各々の法線を算出する。この態様により、コントローラ13は、計測装置により計測された被計測点の各々の法線を好適に算出することができる。
【0115】
なお、上述した実施例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-Trasitory Computer Readable Medium)を用いて格納され、コンピュータであるコントローラ等に供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記憶媒体(Tangible Storage Medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記憶媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記憶媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory)を含む。
【0116】
以上、実施例を参照して本願発明を説明したが、本願発明は上記実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。すなわち、本願発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。