(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022139982
(43)【公開日】2022-09-26
(54)【発明の名称】情報処理装置、制御方法、プログラム及び記憶媒体
(51)【国際特許分類】
G01S 7/481 20060101AFI20220915BHJP
B63B 49/00 20060101ALI20220915BHJP
B63B 79/40 20200101ALI20220915BHJP
【FI】
G01S7/481 Z
B63B49/00 Z
B63B79/40
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021040594
(22)【出願日】2021-03-12
(71)【出願人】
【識別番号】000005016
【氏名又は名称】パイオニア株式会社
(71)【出願人】
【識別番号】520001073
【氏名又は名称】パイオニアスマートセンシングイノベーションズ株式会社
(74)【代理人】
【識別番号】100107331
【弁理士】
【氏名又は名称】中村 聡延
(72)【発明者】
【氏名】幸田 健志
(72)【発明者】
【氏名】加藤 正浩
(72)【発明者】
【氏名】加藤 将大
(72)【発明者】
【氏名】松崎 秦
【テーマコード(参考)】
5J084
【Fターム(参考)】
5J084AA05
5J084AA08
5J084AB16
5J084AC03
5J084AD01
5J084BA03
5J084BA40
5J084BA50
5J084EA22
(57)【要約】
【課題】接岸に関する正確な情報を好適に取得可能な情報処理装置を提供する。
【解決手段】情報処理装置1のコントローラ13は、対象船舶に設けられた第1ライダ31が生成する第1計測データと、対象船舶に設けられ、第1ライダ31と異なる計測範囲を有する第2ライダ32が生成する第2計測データとを取得する。そして、コントローラ13は、第1計測データに基づき、第1ライダ31に対する接岸場所の最近傍点である第1最近傍点を特定し、第2計測データに基づき、第2ライダ32に対する接岸場所の最近傍点である第2最近傍点を特定する。そして、コントローラ13は、第1最近傍点と第2最近傍点とに基づき、対象船舶と接岸場所との距離である対岸距離を算出する。
【選択図】
図10
【特許請求の範囲】
【請求項1】
船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得する計測データ取得手段と、
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定する最近傍点特定手段と、
前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する対岸距離算出手段と、
を有する情報処理装置。
【請求項2】
前記第1最近傍点と前記第2最近傍点とに基づく直線式を生成する直線式生成手段をさらに有し、
前記対岸距離算出手段は、前記第1計測装置又は前記第2計測装置の少なくともいずれか一方から前記直線式が示す直線へ垂らした垂線の長さに基づき、前記対岸距離を算出する、請求項1に記載の情報処理装置。
【請求項3】
前記直線式生成手段は、前記第1計測データの座標系と前記第2計測データの座標系との関係を示す座標系情報に基づき、前記第1最近傍点の座標と前記第2最近傍点の座標とを共通の座標系に変換することで、前記直線式を算出する、請求項2に記載の情報処理装置。
【請求項4】
前記計測データ取得手段は、前記船舶に設けられ、前記第1計測装置及び前記第2計測装置と異なる計測範囲を有する第3計測装置が生成する第3計測データを取得し、
前記最近傍点特定手段は、前記第3計測データに基づき、前記第3計測装置に対する前記接岸場所の最近傍点である第3最近傍点をさらに特定し、
前記直線式生成手段は、前記第1最近傍点と前記第2最近傍点と前記第3最近傍点とに基づき、前記直線式を算出する、請求項2または3に記載の情報処理装置。
【請求項5】
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の所定個数の第1近傍点を探索し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の所定個数の第2近傍点を探索する近傍点探索手段をさらに有し、
前記最近傍点特定手段は、前記第1近傍点間の距離に基づき、前記第1最近傍点を前記第1近傍点から選択し、前記第2近傍点間の距離に基づき、前記第2最近傍点を前記第2近傍点から選択する、請求項1~4のいずれか一項に記載の情報処理装置。
【請求項6】
前記最近傍点特定手段は、前記第1近傍点間又は前記第2近傍点間において他の近傍点との距離が所定の閾値以上となる近傍点を、前記第1最近傍点及び前記第2最近傍点の候補から除外する、請求項5に記載の情報処理装置。
【請求項7】
前記計測データ取得手段は、水面位置を基準として前記第1計測装置及び前記第2計測装置が生成したデータに対し、水面反射データの除去、あるいは、ダウンサンプリングによるデータ点数の低減、の少なくともいずれかを行ったデータを、前記第1計測データ及び前記第2計測データとして取得する、請求項1~6のいずれか一項に記載の情報処理装置。
【請求項8】
コンピュータが実行する制御方法であって、
船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得し、
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定し、
前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する、
制御方法。
【請求項9】
船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得し、
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定し、
前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する処理をコンピュータに実行させるプログラム。
【請求項10】
請求項9に記載のプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、船舶の接岸時の処理に関する。
【背景技術】
【0002】
従来から、船舶の接岸(着岸)に関する支援を行う技術が知られている。例えば、特許文献1には、船舶の自動接岸を行う自動接岸装置において、ライダから照射される光が接岸位置の周囲の物体に反射してライダにより受光できるように、船舶の姿勢を変化させる制御を行う手法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
接岸場所への船舶の自動接岸などの高度な接岸支援を行う場合には、接岸場所に対する対岸距離を正確に把握する必要がある。一方、特許文献1には、接岸場所に対する正確な対岸距離を算出する手法については開示されていない。
【0005】
本開示は、上記のような課題を解決するためになされたものであり、船舶における対岸距離を正確に算出可能な情報処理装置を提供することを主な目的とする。
【課題を解決するための手段】
【0006】
請求項に記載の発明は、
船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得する計測データ取得手段と、
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定する最近傍点特定手段と、
前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する対岸距離算出手段と、
を有する情報処理装置である。
【0007】
また、請求項に記載の発明は、
コンピュータが実行する制御方法であって、
船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得し、
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定し、
前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する、
制御方法である。
【0008】
また、請求項に記載の発明は、
船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得し、
前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定し、
前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する処理をコンピュータに実行させるプログラムである。
【図面の簡単な説明】
【0009】
【
図2】情報処理装置のハードウェア構成を示すブロック図である。
【
図3】接岸支援処理に関する機能ブロック図である。
【
図4】(A)対象船舶の船体を基準とした船体座標系の一例を示す。(B)法線ベクトルを明示した構造物の斜視図である。
【
図5】視野内面及び検出面として接岸場所である構造物の上面及び側面の両方が含まれる接岸状況を表す図である。
【
図6】(A)視野内面が上面及び側面であるのに対し、検出面が側面のみである接岸状況を表す図である。(B)1回の走査周期においてライダが生成するデータの配列の一例を示す。(C)視野内面が上面及び側面であるのに対し、検出面が上面のみである接岸状況を表す図である。
【
図7】(A)視野内面及び検出面が共に側面のみである接岸状況を表す図である。(B)視野内面及び検出面が共に上面のみである接岸状況を表す図である。
【
図8】近傍点及び最近傍点を明示した構造物の斜視図である。
【
図9】対象船舶と接岸場所である構造物を上から見た図である。
【
図10】接岸側面直線の算出方法の概要を示す図である。
【
図11】対岸距離の算出方法の概要を示す図である。
【
図12】3台のライダが搭載された対象船舶の俯瞰図を示す。
【
図13】最近傍点探索においてノイズが発生した場合の最近傍点及び接岸側面直線Lsを明示した図である。
【
図14】接岸速度の算出方法の概要を表す図である。
【
図15】進入角度の算出方法の概要を表す図である。
【
図17】接岸支援処理の概要を表すフローチャートの一例である。
【発明を実施するための形態】
【0010】
本開示における好適な実施形態によれば、情報処理装置は、船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得する計測データ取得手段と、前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定する最近傍点特定手段と、前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する対岸距離算出手段と、を有する。この態様によれば、情報処理装置は、船舶に設けられた複数の計測装置が出力する計測データに基づき、船舶に対する対岸距離を的確に算出することができる。
【0011】
上記情報処理装置の一態様では、情報処理装置は、前記第1最近傍点と前記第2最近傍点とに基づく直線式を生成する直線式生成手段をさらに有し、前記対岸距離算出手段は、前記第1計測装置又は前記第2計測装置の少なくともいずれか一方から前記直線式が示す直線へ垂らした垂線の長さに基づき、前記対岸距離を算出する。この態様により、情報処理装置は、計測装置ごとに特定した最近傍点を用い、対岸距離を幾何学的に算出することができる。
【0012】
上記情報処理装置の一態様では、前記直線式生成手段は、前記第1計測データの座標系と前記第2計測データの座標系との関係を示す座標系情報に基づき、前記第1最近傍点の座標と前記第2最近傍点の座標とを共通の座標系に変換することで、前記直線式を算出する。この態様により、情報処理装置は、対岸距離の算出に必要な直線式を的確に生成することができる。
【0013】
上記情報処理装置の一態様では、前記計測データ取得手段は、前記船舶に設けられ、前記第1計測装置及び前記第2計測装置と異なる計測範囲を有する第3計測装置が生成する第3計測データを取得し、前記最近傍点特定手段は、前記第3計測データに基づき、前記第3計測装置に対する前記接岸場所の最近傍点である第3最近傍点をさらに特定し、前記直線式生成手段は、前記第1最近傍点と前記第2最近傍点と前記第3最近傍点とに基づき、前記直線式を算出する。この態様によれば、情報処理装置は、3台以上の計測装置が存在する場合であっても、これらの計測データに基づいて、対岸距離の算出に必要な直線式を的確に生成することができる。
【0014】
上記情報処理装置の一態様では、情報処理装置は、前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の所定個数の第1近傍点を探索し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の所定個数の第2近傍点を探索する近傍点探索手段をさらに有し、前記最近傍点特定手段は、前記第1近傍点間の距離に基づき、前記第1最近傍点を前記第1近傍点から選択し、前記第2近傍点間の距離に基づき、前記第2最近傍点を前記第2近傍点から選択する。この態様によれば、情報処理装置は、近傍点間の距離を考慮することで、ノイズの影響を受けることなく最近傍点を的確に決定することができる。
【0015】
上記情報処理装置の他の一態様では、前記最近傍点特定手段は、前記第1近傍点間又は前記第2近傍点間において他の近傍点との距離が所定の閾値以上となる近傍点を、前記第1最近傍点及び前記第2最近傍点の候補から除外する。この態様により、情報処理装置は、他の近傍点から離れた近傍点を最近傍点として選択することを防ぎ、ノイズの影響を受けることなく最近傍点を的確に決定することができる。
【0016】
上記情報処理装置の他の一態様では、前記計測データ取得手段は、水面位置を基準として前記第1計測装置及び前記第2計測装置が生成したデータに対し、水面反射データの除去、あるいは、ダウンサンプリングによるデータ点数の低減、の少なくともいずれかを行ったデータを、前記第1計測データ及び前記第2計測データとして取得する。この態様により、情報処理装置は、ノイズが除去され、あるいは、データ量が過多とならないように調整された計測データを好適に取得して対岸距離の算出を行うことができる。
【0017】
本開示の他の好適な実施形態によれば、コンピュータが実行する制御方法であって、船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得し、前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定し、前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する。コンピュータは、この制御方法を実行することで、船舶に設けられた複数の計測装置が出力する計測データに基づき、船舶に対する対岸距離を的確に算出することができる。
【0018】
本開示の他の好適な実施形態によれば、プログラムは、船舶に設けられた第1計測装置が生成する第1計測データと、前記船舶に設けられ、前記第1計測装置と異なる計測範囲を有する第2計測装置が生成する第2計測データとを取得し、前記第1計測データに基づき、前記第1計測装置に対する前記接岸場所の最近傍点である第1最近傍点を特定し、前記第2計測データに基づき、前記第2計測装置に対する前記接岸場所の最近傍点である第2最近傍点を特定し、前記第1最近傍点と前記第2最近傍点とに基づき、前記船舶と前記接岸場所との距離である対岸距離を算出する処理をコンピュータに実行させる。コンピュータは、このプログラムを実行することで、船舶に設けられた複数の計測装置が出力する計測データに基づき、船舶に対する対岸距離を的確に算出することができる。好適には、上記プログラムは、記憶媒体に記憶される。
【実施例0019】
以下、図面を参照して本発明の好適な実施例について説明する。なお、任意の文字「A」の上に任意の記号「x」が付された文字を、本明細書では便宜上、「Ax」と表す。
【0020】
(1)
運転支援システムの概要
図1は、実施例に係る運転支援システムの概略構成である。運転支援システムは、移動体である船舶と共に移動する情報処理装置1と、当該船舶に搭載されたセンサ群2とを有する。以後では、情報処理装置1と共に移動する船舶を「対象船舶」とも呼ぶ。
【0021】
情報処理装置1は、センサ群2と電気的に接続し、センサ群2に含まれる各種センサの出力に基づき、情報処理装置1が設けられた対象船舶の自動運転制御等の運転支援を行う。運転支援には、自動接岸(着岸)などの接岸支援も含まれる。ここで、「接岸」とは、岸壁に対象船舶を着ける場合の他、桟橋等の構造体に対象船舶を着ける場合も含まれる。また、以後では、「接岸場所」とは、接岸の対象となる岸壁、桟橋等の構造体の総称であるものとする。情報処理装置1は、対象船舶に設けられたナビゲーション装置であってもよく、船舶に内蔵された電子制御装置であってもよい。
【0022】
センサ群2は、対象船舶に設けられた種々の外界センサ及び内界センサを含んでいる。本実施例では、センサ群2は、ライダ(Lidar:Light Detection and Ranging、または、Laser Illuminated Detection And Ranging)3を少なくとも含んでいる。
【0023】
ライダ3は、水平方向および垂直方向の所定の角度範囲に対してパルスレーザを出射することで、外界に存在する物体までの距離を離散的に測定し、当該物体の位置を示す3次元の点群データを生成する。この場合、ライダ3は、照射方向を変えながらレーザ光を照射する照射部と、照射したレーザ光の反射光(散乱光)を受光する受光部と、受光部が出力する受光信号に基づくスキャンデータを出力する出力部とを有する。レーザ光を照射する方向(走査位置)ごとに計測されるデータ(「計測点」とも呼ぶ。)は、受光部が受光したレーザ光に対応する照射方向と、上述の受光信号に基づき特定される当該レーザ光の応答遅延時間とに基づき生成される。なお、ライダ3は、上述したスキャン型のライダに限らず、2次元アレイ状のセンサの視野にレーザ光を拡散照射することによって3次元データを生成するフラッシュ型のライダであってもよい。ライダ3は、本発明における「計測装置」の一例である。
【0024】
(2)
情報処理装置の構成
図2は、情報処理装置1のハードウェア構成の一例を示すブロック図である。情報処理装置1は、主に、インターフェース11と、メモリ12と、コントローラ13と、を有する。これらの各要素は、バスラインを介して相互に接続されている。
【0025】
インターフェース11は、情報処理装置1と外部装置とのデータの授受に関するインターフェース動作を行う。本実施例では、インターフェース11は、センサ群2の各センサから出力データを取得し、コントローラ13へ供給する。また、インターフェース11は、例えば、コントローラ13が生成した対象船舶の制御に関する信号を、対象船舶の運転を制御する対象船舶の各構成要素に供給する。例えば、対象船舶は、エンジンや電気モータなどの駆動源と、駆動源の駆動力に基づき進行方向の推進力を生成するスクリューと、駆動源の駆動力に基づき横方向の推進力を生成するスラスターと、船舶の進行方向を自在に定めるための機構である舵等とを備える。そして、自動接岸などの自動運転時には、インターフェース11は、コントローラ13が生成した制御信号を、これらの各構成要素に供給する。なお、対象船舶に電子制御装置が設けられている場合には、インターフェース11は、当該電子制御装置に対し、コントローラ13が生成した制御信号を供給する。インターフェース11は、無線通信を行うためのネットワークアダプタなどのワイヤレスインターフェースであってもよく、ケーブル等により外部装置と接続するためのハードウェアインターフェースであってもよい。また、インターフェース11は、入力装置、表示装置、音出力装置等の種々の周辺装置とのインターフェース動作を行ってもよい。
【0026】
メモリ12は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、フラッシュメモリなどの各種の揮発性メモリ及び不揮発性メモリにより構成される。メモリ12は、コントローラ13が所定の処理を実行するためのプログラムが記憶される。なお、コントローラ13が実行するプログラムは、メモリ12以外の記憶媒体に記憶されてもよい。
【0027】
また、メモリ12には、本実施例において情報処理装置1が実行する処理に必要な情報が記憶される。例えば、メモリ12には、接岸場所の位置に関する情報を含む地図データが記憶されてもよい。他の例では、メモリ12には、ライダ3が1周期分の走査を行った場合に得られる点群データに対してダウンサンプリングを行う場合のダウンサンプリングのサイズに関する情報が記憶される。
【0028】
コントローラ13は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)などの1又は複数のプロセッサを含み、情報処理装置1の全体を制御する。この場合、コントローラ13は、メモリ12等に記憶されたプログラムを実行することで、対象船舶の運転支援等に関する処理を行う。
【0029】
また、コントローラ13は、機能的には、接岸場所検出部15と、接岸パラメータ算出部16と、を有する。接岸場所検出部15は、ライダ3が出力する点群データに基づき、接岸場所の検出に関する処理を行う。接岸パラメータ算出部16は、接岸場所への接岸に必要なパラメータ(「接岸パラメータ」とも呼ぶ。)の算出を行う。ここで、接岸パラメータには、接岸場所までの距離(対岸距離)、接岸場所への進入角度、接岸場所へ近づく速度(接岸速度)などが含まれる。また、接岸パラメータ算出部16は、接岸場所検出部15の処理結果及び接岸パラメータに基づき、接岸場所への接岸に関する信頼度を表す情報(「信頼度情報」とも呼ぶ。)を算出する。そして、コントローラ13は、「計測データ取得手段」、「近傍点探索手段」、「最近傍点特定手段」、「対岸距離算出手段」、「直線式生成手段」及びプログラムを実行するコンピュータ等として機能する。
【0030】
なお、コントローラ13が実行する処理は、プログラムによるソフトウェアで実現することに限ることなく、ハードウェア、ファームウェア、及びソフトウェアのうちのいずれかの組み合わせ等により実現してもよい。また、コントローラ13が実行する処理は、例えばFPGA(Field-Programmable Gate Array)又はマイコン等の、ユーザがプログラミング可能な集積回路を用いて実現してもよい。この場合、この集積回路を用いて、コントローラ13が本実施例において実行するプログラムを実現してもよい。
【0031】
(3)接岸支援処理
次に、情報処理装置1が実行する接岸支援処理について説明する。概略的には、情報処理装置1は、接岸場所が存在する方向において計測されたライダ3の点群データに基づき、接岸場所の側面に沿った直線式を生成し、当該直線式に基づき、対岸距離などの接岸パラメータを算出する。
【0032】
(3-1)
機能ブロック
図3は、接岸支援処理に関する接岸場所検出部15及び接岸パラメータ算出部16の機能ブロック図である。接岸場所検出部15は、機能的には、法線ベクトル算出ブロック20と、視野・検出面特定ブロック21と、法線数特定ブロック22と、平均・分散算出ブロック23と、接岸状況判定ブロック24とを有する。また、接岸パラメータ算出部16は、機能的には、近傍点探索ブロック25と、最近傍判定ブロック26と、直線式生成ブロック27と、対岸距離算出ブロック28と、進入角度算出ブロック29と、接岸速度算出ブロック30と、信頼度情報生成ブロック40とを有する。
【0033】
法線ベクトル算出ブロック20は、接岸場所が存在する方向に対してライダ3が生成する点群データに基づき、接岸場所が形成する面(「接岸面」とも呼ぶ。)の法線ベクトルを算出する。この場合、法線ベクトル算出ブロック20は、例えば、対象船舶において接岸側を計測範囲に含むライダ3が生成する点群データに基づき、上述の法線ベクトルを算出する。ライダ3の計測範囲及び接岸場所の方向に関する情報は、例えばメモリ12等に予め登録されていてもよい。
【0034】
この場合、法線ベクトル算出ブロック20は、好適には、点群データのダウンサンプリングと、レーザ光が水面で反射することで得られたデータ(「水面反射データ」とも呼ぶ。)の除去と、を夫々行うとよい。
【0035】
この場合、まず、法線ベクトル算出ブロック20は、ライダ3が生成する点群データに対し、水面位置より下方に存在するデータを、水面反射データ(即ち誤検出データ)として除去する。なお、法線ベクトル算出ブロック20は、例えば、周辺に水面以外の物体が存在しないときにライダ3が生成する点群データの高さ方向の平均値等に基づき、水面位置を推定する。そして、法線ベクトル算出ブロック20は、水面反射データを除去後の点群データに対し、所定サイズの格子空間毎に計測点を統合する処理であるダウンサンプリングを行う。そして、法線ベクトル算出ブロック20は、ダウンサンプリング後の点群データにより示される各計測点について、周辺の複数の計測点を用いて法線ベクトルを算出する。なお、ダウンサンプリングは、水面で反射したデータの除去の前に実行されてもよい。
【0036】
視野・検出面特定ブロック21は、ライダ3の視野角内に存在する接岸場所の面(「視野内面」とも呼ぶ。)と、法線ベクトル算出ブロック20が算出した法線ベクトルに基づき検出した接岸場所の面(「検出面」とも呼ぶ。)との特定を行う。この場合、視野・検出面特定ブロック21は、視野内面及び検出面として、接岸場所の上面又は/及び側面が含まれているか否かの特定を行う。具体的な特定方法については
図5~
図7を参照して説明する。
【0037】
法線数特定ブロック22は、法線ベクトル算出ブロック20が算出した法線ベクトルのうち、鉛直方向の法線ベクトルと、それに垂直な方向(即ち水平方向)の法線ベクトルとを夫々抽出し、鉛直方向の法線ベクトルの本数と、水平方向の法線ベクトルの本数とを算出する。ここでは、法線数特定ブロック22は、鉛直方向の法線ベクトルを、接岸場所の上面の計測点に対する法線、水平方向の法線ベクトルを、接岸場所の側面の計測点に対する法線を表すものとみなし、夫々の本数を接岸場所に関する信頼度の一指標として算出している。
【0038】
平均・分散算出ブロック23は、法線ベクトル算出ブロック20が算出した法線ベクトルのうち、鉛直方向の法線ベクトルと、それに垂直な方向(即ち水平方向)の法線ベクトルとを夫々抽出し、鉛直方向の法線ベクトルの平均及び分散と、水平方向の法線ベクトルの平均及び分散を算出する。
【0039】
接岸状況判定ブロック24は、同一の点群データに基づき特定又は算出された、視野・検出面特定ブロック21、法線数特定ブロック22、平均・分散算出ブロック23の各処理結果を、当該点群データの生成時点での接岸場所の検出状況を表す判定結果として取得する。そして、接岸状況判定ブロック24は、視野・検出面特定ブロック21、法線数特定ブロック22、平均・分散算出ブロック23の各処理結果を、接岸場所の検出状況の判定結果として、接岸パラメータ算出部16に供給する。
【0040】
近傍点探索ブロック25は、距離が短い点を複数個探索することにより、対象船舶に対する接岸場所の所定個数分の近傍点を、点群データを構成する計測点から検出する。最近傍判定ブロック26は、近傍点探索ブロック25が検出した所定個数分の近傍点から、最近傍点を判定する処理を行う。
【0041】
直線式生成ブロック27は、最近傍判定ブロック26が判定した最近傍点に基づき、接岸場所の側面に沿った直線(「接岸側面直線Ls」とも呼ぶ。)を生成する。対岸距離算出ブロック28は、直線式生成ブロック27が生成する接岸側面直線Lsに基づき、対象船舶と接岸場所との最短距離に相当する対岸距離を算出する。この場合、対岸距離算出ブロック28は、接岸側面直線Lsと各ライダ3との最短距離を対岸距離として算出する。なお、対岸距離算出ブロック28は、ライダ3ごとの最短距離を対岸距離とみなす代わりに、対岸距離をライダ3毎の最短距離のうち短い距離を対岸距離として定めてもよく、これらの最短距離の平均を対岸距離として定めてもよい。
【0042】
進入角度算出ブロック29は、直線式生成ブロック27が生成した接岸側面直線Lsに基づき、接岸場所に対する対象船舶の進入角度を算出する。接岸速度算出ブロック30は、対岸距離算出ブロック28が算出した対岸距離に基づき、接岸場所に対象船舶が近づく速度である接岸速度を算出する。
【0043】
信頼度情報生成ブロック40は、接岸状況判定ブロック24、近傍点探索ブロック25、最近傍判定ブロック26、対岸距離算出ブロック28及び進入角度算出ブロック29の処理結果に基づき、信頼度情報を生成する。信頼度情報の詳細については後述する。
【0044】
(3-2)
法線ベクトルに関する演算
次に、法線ベクトル算出ブロック20、法線数特定ブロック22及び平均・分散算出ブロック23の処理の具体例について
図4を参照して説明する。
【0045】
図4(A)は、対象船舶の船体を基準とした船体座標系の一例を示す。
図4(A)に示すように、ここでは、対象船舶の正面(前進)方向を「x」座標、対象船舶の側面方向を「y」座標、対象船舶の高さ方向を「z」座標とする。そして、ライダ3が計測した、ライダ3を基準とした座標系の計測データは、
図4(A)に示す船体座標系に変換される。なお、移動体に設置されたライダを基準とした座標系の点群データを移動体の座標系に変換する処理については、例えば、国際公開WO2019/188745などに開示されている。
【0046】
図4(B)は、接岸場所である構造物50に対し、ライダ3が計測した計測位置を表す計測点及び計測点に基づき算出した法線ベクトルを明示した構造物50の斜視図である。
図4(B)では、計測点を丸により示し、法線ベクトルを矢印により示している。ここでは、構造物50の上面及び側面の両方がライダ3により計測できた例が示されている。
【0047】
図4(B)に示すように、法線ベクトル算出ブロック20は、構造物50の側面及び上面の計測点に対する法線ベクトルを算出する。法線ベクトルは、対象とする平面や曲面に垂直なベクトルであるため、面として構成可能な複数の計測点を用いて算出される。したがって、縦横が所定長の格子あるいは半径が所定長の円を設定し、その内部に存在する計測点を用いて計算する。この場合、法線ベクトル算出ブロック20は、計測点毎に法線ベクトルを算出してもよく、所定間隔毎に法線ベクトルを算出してもよい。そして、法線数特定ブロック22は、z成分が所定の閾値より大きい法線ベクトルを、鉛直方向を向いた法線ベクトルであると判定する。なお、法線ベクトルは、単位ベクトル化されているものとする。また、z成分が所定の閾値未満となる法線ベクトルを、水平方向を向いた法線ベクトルであると判定する。そして、法線数特定ブロック22は、鉛直方向の法線ベクトルの本数(ここでは5本)と水平方向の法線ベクトル(ここでは4本)とを特定する。さらに、平均・分散算出ブロック23は、鉛直方向の法線ベクトルの平均及び分散と、水平方向の法線ベクトルの平均及び分散を算出する。なお、エッジ部分は、その周辺の計測点が上面であったり側面であったりするため、斜めの方向になる。
【0048】
(3-3)視野内面及び検出面の特定
視野内面及び検出面の特定処理について、具体的な接岸状況を表す接岸状況A~接岸状況Eに場合分けして説明する。
【0049】
(3-3-1)
接岸状況A:接岸場所の側面及び上面の両方が視野内面及び検出面
図5は、視野内面及び検出面として接岸場所である構造物50の上面及び側面の両方が含まれる接岸状況を表す図である。
図5において、破線51は、推定された水面位置を表す。そして、破線51より下方に存在する丸は、水面位置より下方に存在する計測点として除去された計測点を表す。また、構造物50の上面及び側面に存在する丸は、法線ベクトル算出ブロック20が算出した法線ベクトルに対応する計測点を表す。
【0050】
この場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の上面及び側面の両方を検出面として検出する。例えば、視野・検出面特定ブロック21は、鉛直方向の法線ベクトルの本数が所定個数以上であって、かつ、平均・分散算出ブロック23が算出する分散が閾値以内の場合に、構造物50の上面が検出されたと判定する。また、視野・検出面特定ブロック21は、水平方向の法線ベクトルの本数が所定個数以上であって、かつ、平均・分散算出ブロック23が算出する分散が閾値以内の場合に、構造物50の側面が検出されたと判定する。上述の所定個数及び閾値は、例えば予めメモリ12等に記憶されている。
【0051】
また、視野・検出面特定ブロック21は、
図5の例において、構造物50の上面及び側面が検出面として検出されたことから、構造物50の上面及び側面の両方がライダ3の視野角内に存在すると判定する。
【0052】
そして、
図5に示される接岸状況Aでは、視野内面及び検出面として接岸場所である構造物50の上面及び側面の両方が含まれることから、接岸場所が正確に検出されており、接岸場所の検出に関する信頼度が高いことが推定される。
【0053】
(3-3-2)
接岸状況B:接岸場所の両面が視野内面かつ側面のみ検出面
図6(A)は、視野内面が上面及び側面であるのに対し、検出面が側面のみである接岸状況を表す図である。
【0054】
図6(A)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の側面を検出面として検出する。例えば、視野・検出面特定ブロック21は、水平方向の法線ベクトルの本数が所定本数以上存在し、鉛直方向の法線ベクトルの本数が所定本数未満しか存在しないことから、構造物50の側面を検出面として検出する。一方、視野・検出面特定ブロック21は、構造物50の側面を検出した走査位置より上方を計測可能な走査位置が存在する(言い換えると、構造物50の側面を検出したデータの最上位の垂直番号(
図6(B)において後述する)が垂直視野角の上端の番号ではない)ことから、視野内面が上面及び側面の両方を含むと判定する。
図6(B)は、1回の走査周期においてライダ3が生成するデータの配列の一例を示す。ライダ3が生成する各データは、レーザ光の出射方向に応じた垂直番号(ここでは1~m)と水平番号(ここでは1~n)との組により特定される。
図6(B)の例では、垂直番号が1番のデータが垂直視野角の上端の番号であるものとする。この場合、
図6(A)の例では、視野・検出面特定ブロック21は、構造物50の側面を検出したデータの最上位の垂直番号が1番ではない場合に、視野内面が上面及び側面の両方を含むと判定する。
【0055】
そして、
図6(A)に示される接岸状況では、視野内面が上面及び側面の両方を含むものの、接岸場所の側面のみしか検出できていないため、接岸場所の検出に関する信頼度が
図5の場合と比べて低いことが推定される。
【0056】
(3-3-3)
接岸状況C:接岸場所の両面が視野内面かつ上面のみ検出面
図6(C)は、視野内面が上面及び側面であるのに対し、検出面が上面のみである接岸状況を表す図である。
【0057】
図6(C)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の側面を上面として検出する。一方、視野・検出面特定ブロック21は、構造物50の上面を検出した走査位置より下方を計測可能な走査位置が存在する(言い換えると、構造物50の上面を検出したデータの最下位の垂直番号が垂直視野角の下端の番号(
図6(B)ではm番)ではない)ことから、視野内面が上面及び側面の両方を含むと判定する。
【0058】
そして、
図6(C)に示される接岸状況では、視野内面が上面及び側面の両方を含むものの、接岸場所の上面にみしか検出できていないため、接岸場所の検出に関する信頼度は、
図5及び
図6(A)の場合と比べて低いことが推定される。
【0059】
(3-3-4)
接岸状況D:視野内面及び検出面が共に側面のみ
図7(A)は、視野内面及び検出面が共に側面のみである接岸状況を表す図である。
【0060】
図7(A)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の側面の一部を検出面として検出する。また、視野・検出面特定ブロック21は、構造物50の側面を検出した走査位置より上方を計測可能な走査位置が存在しない(言い換えると、構造物50の側面を検出したデータの最上位の垂直番号が垂直視野角の上端の番号(
図6(B)では1番)である)ことから、視野内面が側面の一部のみを含むと判定する。そして、
図7(A)に示される接岸状況では、接岸場所の側面の一部のみしか検出できていないため、接岸場所の検出に関する信頼度が
図5等の場合と比べて低いことが推定される。
【0061】
(3-3-5)
接岸状況E:視野内面及び検出面が共に上面のみ
図7(B)は、視野内面及び検出面が共に上面のみである接岸状況を表す図である。
【0062】
図7(B)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の上面のみを検出面として検出する。また、視野・検出面特定ブロック21は、構造物50の側面を検出した走査位置より下方を計測可能な走査位置が存在しない(言い換えると、構造物50の上面を検出したデータの最下位の垂直番号が垂直視野角の下端の番号(
図6(B)ではm番)である)ことから、視野内面が上面のみを含むと判定する。そして、
図7(B)に示される接岸状況では、構造物50の上面の一部しか検出できず、接岸場所の検出に関する信頼度が
図5等の場合と比べて低いことが推定される。また、この場合、最近傍点が対岸距離を算出する際の構造物50の基準位置とはならず、対岸距離が正確に計算できない。
【0063】
(3-4)
最近傍点探索
次に、近傍点探索ブロック25及び最近傍判定ブロック26の処理の具体例について、
図8(A)及び
図8(B)を参照して説明する。
図8(A)は、ライダ3により計測した構造物50の計測点及びその中の近傍点を明示した構造物50の斜視図である。
図8(B)は、ライダ3により計測した構造物50の計測点及びその中の最近傍点を明示した構造物50の斜視図である。
【0064】
近傍点探索ブロック25は、ライダ3から取得される点群データの距離情報に基づき、所定個数の近傍点を探索する。
図8(A)の例では、近傍点探索ブロック25は、7個分の近傍点を求めている。この場合、好適には、近傍点探索ブロック25は、点群データにおいて、水面位置と推定できる高さ付近よりも下方の位置を表すデータを、レーザ光が水面に反射することで得られた水面反射データ(即ち誤検出データ)として除去するとよい。
【0065】
最近傍判定ブロック26は、近傍点探索ブロック25が求めた近傍点のうち最も近い距離を示すものを最近傍点の候補とし、当該候補とその他の近傍点との位置の差(即ち近傍点間の距離)を算出する。この場合、最近傍判定ブロック26は、最近傍点の候補と他の近傍点との位置の差として、例えば他の各近傍点との距離に関する平均、中央値などの代表値を算出する。そして、最近傍判定ブロック26は、上述の位置の差が所定の閾値未満である場合、当該候補を最近傍点とみなす。岸壁付近では、波や風が強いと、波しぶきや浮遊物を偶然捉えてしまうこともある。よって上述の閾値は、ノイズ又は接岸場所以外の物の計測点であるか否かを判定するための閾値であって、例えば予めメモリ12等に記憶されている。一方、最近傍判定ブロック26は、上述の差が所定の閾値以上である場合、当該候補はノイズ又は他の物の計測点である可能性が高いと判定し、当該候補を最近傍点とみなさない。この場合、最近傍判定ブロック26は、上述の候補の次に距離が近い近傍点を新たな候補とみなし、上述の差の算出及び閾値との比較を行い、最近傍点の判定を行う。
【0066】
例えば、
図8(A)の例では、最近傍判定ブロック26は、最近傍点の候補として最初に近傍点59を抽出する。そして、最近傍判定ブロック26は、近傍点59と他の近傍点との差が所定閾値以上であることから、近傍点59をノイズ等とみなして除去する。そして、最近傍判定ブロック26は、近傍点59の次に距離が近い近傍点60を次の最近傍点の候補として抽出し、当該近傍点60と他の近傍点との差が所定閾値未満となることから、
図8(B)に示すように、近傍点60を最近傍点であると判定する。
【0067】
最近傍判定ブロック26は、以上説明した処理により最近傍点を決定することで、ノイズに対してロバストに最近傍点を決定することができる。また、最近傍点がノイズに対してロバストに決定されることで、後述する直線式生成ブロック27による接岸側面直線Lsの算出及び対岸距離算出ブロック28による対岸距離の算出についても的確に実行される。この効果については、「(3-5-5)最近傍点探索時のノイズによる影響」のセクションにて詳しく説明する。
【0068】
(3-5)接岸側面直線Ls及び対岸距離の算出
次に、接岸側面直線Ls及び接岸側面直線Lsに基づく対岸距離の算出方法について詳しく説明する。以後では、代表例として、対象船舶の前方と後方の2か所にライダ3が設置されている場合について説明する。
【0069】
(3-5-1)概要
図9(A)及び
図9(B)は、対象船舶と接岸場所である構造物50を上から見た図である。ここで、
図9(A)及び
図9(B)では、前方のライダ3である第1ライダ31の点群データに基づき求められた最近傍点(「第1最近傍点」とも呼ぶ。)と第1ライダ31とを結ぶ線分「L1」と、後方のライダ3である第2ライダ32の点群データに基づき求められた最近傍点(「第2最近傍点」とも呼ぶ。)と第2ライダ32とを結ぶ線分「L2」とが明示されている。
【0070】
ここで、
図9(A)の例では、対象船舶の向きが接岸場所である構造物50の側面と平行に近く角度が小さいことから、線分L1の長さ及び線分L2の長さは、各ライダ3と構造物50との最短距離(即ち対岸距離)と等しい。一方、
図9(B)の例では、対象船舶の向きが接岸場所である構造物50の側面に対して小さくない角度であることから、線分L1の長さ及び線分L2の長さは、各ライダ3と構造物50との最短距離(即ち対岸距離)にはならない。
【0071】
以上を勘案し、情報処理装置1は、第1最近傍点と第2最近傍点とを結んだ接岸側面直線Lsを生成し、第1ライダ31及び第2ライダ32から当該接岸側面直線Lsへの垂線の足を求め、その距離を対岸距離として算出する。これにより、情報処理装置1は、対象船舶の前方と後方のそれぞれの接岸場所までの最短距離である対岸距離を算出する。
【0072】
(3-5-2)接岸側面直線Lsの算出
図10(A)は、接岸側面直線Lsの算出方法の概要を表す図である。以後では、第1ライダ31の点群データにおいて採用される座標系(「第1座標系」と及ぶ。)における基準点(「第1基準点O
1」と呼ぶ。)を第1ライダ31の設置位置とし、第2ライダ32の点群データにおいて採用される座標系(「第2座標系」とも呼ぶ。)における基準点(「第2基準点O
2」とも呼ぶ。)を第2ライダ32の設置位置とする。そして、第1基準点O
1を基準とする第1座標系における第1最近傍点の座標を「p
1=[p
x1,p
y1,p
z1]
T」とし、第2基準点O
2を基準とする第2座標系における第2最近傍点の座標を「p
2=[p
x2,p
y2,p
z2]
T」とする。
【0073】
図10(B)は、第1基準点O
1と第2基準点O
2を同一位置とした場合の座標p
1及び座標p
2の関係を示す。この図からわかるように、第1基準点O
1と第2基準点O
2を同一位置にしたままでは、第1最近傍点の座標p
1と第2最近傍点の座標p
2が近い場所となり、位置接岸側面直線Lsを算出することができない。よってこの場合、まず、直線式生成ブロック27は、第1最近傍点及び第2最近傍点の座標を、第1基準点O
1を基準とする第1座標系により統一的に表す。
【0074】
第1基準点O1から見た第2基準点O2の座標(言い換えると、第1座標系における第2基準点O2の座標)を「[Ox0,Oy0,Oz0]T」とすると、第2最近傍点の座標p2は、以下の座標「p2’」に変換される。
p2’=[Ox0+px2,Oy0+py2,Oz0+pz2]T
【0075】
なお、第1基準点O
1から見た第2基準点O
2の座標[O
x0,O
y0,O
z0]
Tに関する情報は、例えば予めメモリ12等に記憶されている。この情報は、第1ライダ31の点群データにおいて採用される第1座標系と第2ライダ32の点群データにおいて採用される第2座標系との関係を示しており、本開示における「座標系情報」の一例である。そして、座標[O
x0,O
y0,O
z0]
Tを用いることで、第1最近傍点及び第2最近傍点を同一座標系において扱うことが可能となる。
図10(C)は、第1基準点O
1に基づく第1座標系における、第1基準点O
1と第2基準点O
2と座標p
1と座標p
2’との位置関係を示している。
【0076】
ここで、第2最近傍点の座標p
2’から第1最近傍点の座標p
1へのベクトル「u」(
図10(C)参照)は、以下の式(1)ように表される。
【0077】
【数1】
この場合、直線式生成ブロック27は、ベクトルuを単位ベクトル化した以下の式(2)に示される方向ベクトル「u’」を算出する。
【0078】
【数2】
従って、直線式生成ブロック27は、媒介変数を「t」とすると、第1最近傍点及び第2最近傍点を通る直線である接岸側面直線Lsの式を、以下の式(3)のように求める。
【0079】
【数3】
このように、直線式生成ブロック27は、座標[O
x0,O
y0,O
z0]
Tと、第1ライダ31が出力する点群データに基づく第1最近傍点の座標p
1と、第2ライダ32が出力する点群データに基づく第2最近傍点の座標p
2とを用い、式(1)~式(3)に基づき、好適に接岸側面直線Lsの直線式を生成することができる。
【0080】
(3-5-3)対岸距離の算出
図11(A)は、第1基準点O
1から構造物50への時刻kでの最短距離「d
1(k)」及び第2基準点O
2から構造物50への時刻kでの最短距離「d
2(k)」を算出する概要を表す図である。
図11(B)は、最短距離d
1(k)の算出に関する部分の拡大図である。
【0081】
まず、対岸距離算出ブロック28は、第1基準点O1から接岸側面直線Lsへの垂線の足となる座標「H1」を算出する。ここで、第1最近傍点の座標p1から座標H1へのベクトルを「b1」(=H1-p1)とし、座標p1から第1基準点O1へのベクトルを「a1」(=O1-p1)とすると、ベクトルa1とベクトルu’の内積は、以下の式(4)により表される。
【0082】
【数4】
ここで、座標p
1と座標H
1は接岸側面直線Ls上に存在することから、ベクトルb
1は、以下の式(5)により表される。
【0083】
【数5】
よって、座標H
1は、以下の式(6)により求められる。
【0084】
【0085】
次に、第1基準点O1と座標H1との間の距離の算出方法について検討する。一般的に、船体から接岸場所までの距離は、水平面での値が必要であるため、対岸距離算出ブロック28は、高さ方向の成分であるz成分は無視して上述の距離を計算する。従って、この場合、対岸距離算出ブロック28は、x、y成分のみの演算により、距離d1(k)を以下の式(7)により求める。
【0086】
【数7】
同様に、対岸距離算出ブロック28は、距離d
2(k)を以下の式(8)により求める。
【0087】
【0088】
以上のように、対岸距離算出ブロック28は、接岸側面直線Lsに基づき、時刻kにおける対岸距離に相当する距離d
1(k)及び距離d
2(k)を好適に算出することができる。なお、この方法による対岸距離の算出は、
図9(A)の場合であっても成立するため、場合分けなどを行う必要はない。
【0089】
なお、対岸距離算出ブロック28は、各ライダ3から接岸場所までの距離を対岸距離(最短距離)として算出する代わりに、対象船舶において予め定めた基準位置(例えば船舶の中心位置)から接岸場所までの距離を対岸距離(最短距離)として算出してもよい。この場合、基準位置に関する情報は、船体座標系又はライダ3を基準とする座標系(第1座標系、第2座標系)における座標値として、予めメモリ12に記憶されている。また、対岸距離算出ブロック28は、基準位置の複数の候補として対象船舶の外板部(外縁部)の複数の位置を設け、これらの外板部の位置と接岸場所までの最短距離を夫々算出し、当該最短距離が最も短い距離を、対象船舶に対する最短距離(対岸距離)として算出してもよい。
【0090】
(3-5-4)ライダが3台以上存在する場合
ライダ3が3台以上存在する場合、対岸距離算出ブロック28は、主成分分析や最小二乗法などの回帰分析等により接岸側面直線Lsを算出することが可能である。以下に、主成分分析を用いた接岸側面直線Lsの方向ベクトルuを求める手順を説明する。
【0091】
図12は、3台のライダ3(第1ライダ31、第2ライダ32、第3ライダ33)が搭載された対象船舶の俯瞰図を示す。ここでは、第1ライダ31の点群データに基づき算出した最近傍点(第1最近傍点)の座標を「p
1=(x
1,y
1,z
1)」、第2ライダ32の点群データに基づき算出した最近傍点(第2最近傍点)の座標を「p
2=(x
2,y
2,z
2)」、第3ライダ33の点群データに基づき算出した最近傍点(第3最近傍点)の座標を「p
3=(x
3,y
3,z
3)」とする。座標p1~座標p3は、共通の座標系(例えば第1基準点O
1に基づく第1座標系)での座標を表すものとする。
【0092】
この場合、対岸距離算出ブロック28は、まず、座標p1~座標p3を用いて、以下の式(9)に示される共分散行列「C」を算出する。なお、ここでは、最近傍点が3点であるので、n=3であり、「μx」はx1,x2,x3の平均値、「μy」はy1,y2,y3の平均値、「μz」はz1,z2,z3の平均値である。
【0093】
【数9】
次に、対岸距離算出ブロック28は、この共分散行列Cの固有値「λ」と固有ベクトル「v」を算出する。ここで、固有値λと固有ベクトルvを用いると、以下の式(10)が成立する。
【0094】
【数10】
従って、以下の式(11)に示される特性方程式(Iは単位行列)を解くことにより固有値λを求め、固有値λから固有ベクトルvを算出する。
【0095】
【数11】
この方程式の3つの解である固有値λが大きい順に「λ
1」、「λ
2」、「λ
3」とすると、それぞれ第1主成分軸,第2主成分軸、第3主成分軸における分散を意味している。ゆえにλ
1は、座標p1~座標p3の分散が最も大きい第1主成分軸の固有値であるため、λ
1を式(10)に代入することで得られる固有ベクトルvが、接岸側面直線Lsの方向ベクトルuとなる。なお、対岸距離算出ブロック28は、4個以上のX個のライダ3を用いる場合においても、各ライダ3に対応するX個の最近傍点の座標に対する共分散行列C及びその固有値・固有ベクトルを算出すればよい。
【0096】
(3-5-5)最近傍点探索時のノイズによる影響
次に、最近傍点探索においてノイズが発生した場合に算出される接岸側面直線Lsへの影響について補足説明する。
図13(A)及び
図13(B)は、最近傍点探索においてノイズが発生した場合の最近傍点及び接岸側面直線Lsを明示した図である。
図13(A)は、第1最近傍点にノイズによる誤差が生じた例に相当し、
図13(B)は、第2最近傍点にノイズによる誤差が生じた例に相当する。
【0097】
図13(A)及び
図13(B)に示すように、最近傍点探索においてノイズが発生した場合、ノイズが反映された側(
図13(A)では第1ライダ31側、
図13(B)では第2ライダ32側)のみでなく、最近傍点が正しく抽出できた側(
図13(A)では第2ライダ32側、
図13(B)では第1ライダ31側)の最短距離も不正確になってしまう。また、接岸場所との角度(進入角度)も不正確となってしまう。結果として、算出される最短距離(対岸距離)が実際より長くなってしまったり、接岸場所に対する進入角度が小さくなってしまったりすることもある。これらは、対象船舶と接岸場所との距離が近いときや進入角度が大きいときのような危険性が高い状況において実際の値よりも安全な方向にずれた値となってしまい、安全性が低下してしまう虞がある。
【0098】
以上を勘案し、本実施例に係る最近傍判定ブロック26は、近傍点間の距離を考慮して最近傍点を決定する処理を行う。これにより、ノイズにより生じた近傍点が存在する場合であっても、その近傍点を最近傍点として判定することを好適に抑制し、接岸側面直線Ls、対岸距離、進入角度等の各算出精度を好適に保つことができる。
【0099】
(3-6)接岸速度の算出
次に、接岸速度の算出方法について説明する。接岸速度算出ブロック30は、第1ライダ31と第2ライダ32との夫々で求めた対岸距離(最短距離)の時間変化を接岸速度として算出する。
【0100】
図14は、接岸速度の算出方法の概要を表す図である。ここで、「d
1」は第1ライダ31の対岸距離(最短距離)を表し、「d
2」は第2ライダ32の対岸距離(最短距離)を表し、「k」は現在の処理時刻、「k-1」は直前の処理時刻を表し、「Δt」は直前の対岸距離の算出時刻との時間間隔を表す。
【0101】
ここで、接岸速度算出ブロック30は、前時刻と現時刻との対岸距離の差を時間間隔で割る場合に、ノイズの増加に対応するため、フィルタを挿入する。具体的には、接岸速度算出ブロック30は、時定数「τ」とラプラス演算子「s」とを用いて、以下の式により、前方のライダ3に対する接岸速度「v1」と、後方のライダ3に対する接岸速度「v2」とを算出する。
【0102】
【0103】
これにより、接岸速度算出ブロック30は、ノイズの影響を勘案して接岸速度を好適に算出することができる。
【0104】
(3-7)進入角度の算出
次に、進入角度の算出方法について説明する。進入角度算出ブロック29は、正接を規定する2つの引数から逆正接(アーク・タンジェント)を求める関数である「atan2」を用いて進入角度を算出する。具体的には、進入角度算出ブロック29は、接岸側面直線Lsの方向ベクトルu’から、関数atan2の計算により、進入角度を算出する。
【0105】
図15は、進入角度の算出方法の概要を表す図である。この場合、進入角度算出ブロック29は、式(2)に示される方向ベクトルu’のx成分「u
x’」及びy成分「u
y’」を夫々関数atan2の引数とする以下の式に基づき、時刻kにおける進入角度「Ψ(k)」を算出する。
【0106】
【0107】
(3-8)信頼度情報の生成
信頼度情報生成ブロック40は、接岸場所の検出時の視野角、接岸場所の面検出、法線ベクトルの本数及び分散等の各要素に対してフラグを生成し、生成したフラグのベクトルを信頼度情報として生成する。以後では、フラグは、「1」の場合には対応する要素の信頼度が高く、「0」の場合には対応する要素の信頼度が低いことを表すものとする。
【0108】
図16は、信頼度情報生成ブロック40が生成する信頼度情報のデータ構造の一例を示す。
図16に示すように、信頼度情報は、「上面」、「側面」、「近傍点」、「距離」、「角度」の項目を有する。また、項目「上面」は、サブ項目「視野角」、「検出」、「法線数」、「分散」を有し、項目「側面」は、「視野角」、「検出」、「法線数」、「分散」のサブ項目を有する。また、項目「近傍点」は、サブ項目「分散」を有し、項目「距離」は、サブ項目「変化量」、「変化率」を有し、項目「角度」は、サブ項目「変化量」を有する。
【0109】
ここで、信頼度情報生成ブロック40は、項目「上面」のサブ項目「視野角」には、接岸場所の上面が視野角の範囲内である場合に「1」、上面が視野角外である場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「上面」のサブ項目「視野角」には、接岸場所の上面が検出面である場合に「1」、上面が検出面でない場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「上面」のサブ項目「法線数」には、接岸場所の上面に対する法線ベクトルの本数が所定の閾値(例えば10本)以上の場合に「1」、当該本数が閾値未満の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「上面」のサブ項目「分散」には、接岸場所の上面に対する法線ベクトルのx,y,z成分の分散がいずれも所定の閾値(例えば1.0)未満の場合に「1」、当該いずれかの分散が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「側面」の各サブ項目においても、項目「上面」の各サブ項目と同一規則により定めたフラグを登録する。
【0110】
また、信頼度情報生成ブロック40は、項目「近傍点」のサブ項目「分散」には、近傍点探索ブロック25が探索した近傍点のx,y,z成分の分散がいずれも閾値(例えば1.0)未満の場合に「1」、当該いずれかの分散が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「距離」のサブ項目「変化量」には、対岸距離算出ブロック28が算出する対岸距離の1時刻前からの変化量が所定の閾値(例えば1.0m)未満である場合に「1」、当該変化量が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「距離」のサブ項目「変化率」には、対岸距離算出ブロック28が算出する対岸距離の1時刻前からの変化率が所定の閾値(例えば±10%)未満である場合に「1」、当該変化率が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック40は、項目「角度」のサブ項目「変化量」には、進入角度算出ブロック29が算出する進入角度の1時刻前からの変化量が所定の閾値(例えば1.0度)未満である場合に「1」、当該変化量が閾値以上の場合に「0」となるフラグを登録する。
【0111】
なお、上述の各閾値は、例えば、メモリ12等に予め記憶された適合値に設定される。また、信頼度情報は、ライダ3毎に生成されてもよい。
【0112】
このようなデータ構造を有する信頼度情報によれば、算出した対岸距離、接岸速度、進入角度の信頼度を把握することが可能となる。なお、信頼度情報の各サブ項目が「1」の場合に、最も信頼度が高いことになる。そして、情報処理装置1は、この信頼度情報に基づき、接岸時の駆動源の出力の調整などを行う。例えば、情報処理装置1は、信頼度情報が示す各サブ項目の合計値に応じて、接岸時の対象船舶の速度の上限値等を決定してもよい。この場合、情報処理装置1は、例えば、上述の合計値が小さいほど、接岸場所に関する情報の信頼性が低く、慎重に接岸する必要があると判断し、接岸時の対象船舶の速度の上限値を小さくする。
【0113】
(3-9)
処理フロー
図17は、本実施例における接岸支援処理の概要を表すフローチャートの一例である。情報処理装置1は、
図17のフローチャートの処理を繰り返し実行する。
【0114】
まず、情報処理装置1は、接岸場所方向の点群データを取得する(ステップS11)。この場合、情報処理装置1は、例えば、対象船舶において接岸側を計測範囲に含むライダ3が生成する点群データを取得する。また、情報処理装置1は、取得した点群データのダウンサンプリング及び水面で反射したデータの除去をさらに行ってもよい。
【0115】
次に、情報処理装置1の接岸場所検出部15は、ステップS11で取得された点群データに基づき、法線ベクトルを算出する(ステップS12)。さらに、接岸場所検出部15は、ステップS12において、法線ベクトルの本数及び法線ベクトルの分散等の算出を行う。また、接岸場所検出部15は、ステップS12の処理結果に基づき、視野内面及び検出面の特定を行う(ステップS13)。
【0116】
次に、接岸パラメータ算出部16は、ステップS11で取得した点群データ及びステップS12で算出された法線ベクトルの情報等に基づき、近傍点探索を行い、最近傍点判定による最近傍点を求める(ステップS14)。
【0117】
次に、接岸パラメータ算出部16は、ステップS14で求めた最近傍点を用いて、接岸側面直線Lsを算出する(ステップS15)。
【0118】
次に、接岸パラメータ算出部16は、ステップS15で算出した接岸側面直線Lsを用いて、接岸パラメータである対岸距離、進入角度、接岸速度を算出する(ステップS16)。
【0119】
そして、接岸パラメータ算出部16は、ステップS13での視野内面及び検出面の特定結果及びステップS16での接岸パラメータの算出結果に基づき、信頼度情報を生成する(ステップS17)。その後、情報処理装置1は、信頼度情報に基づく船舶の制御を行う(ステップS18)。これにより、情報処理装置1は、接岸状況を的確に反映した信頼度に基づいて、接岸に関する船舶の制御を的確に実行することができる。
【0120】
そして、情報処理装置1は、対象船舶が接岸(着岸)したか否か判定する(ステップS19)。この場合、情報処理装置1は、例えば、センサ群2の出力信号又はインターフェース11を介したユーザ入力等に基づき、対象船舶が接岸したか否か判定する。そして、情報処理装置1は、対象船舶が接岸したと判定した場合(ステップS19;Yes)、フローチャートの処理を終了する。一方、情報処理装置1は、対象船舶が接岸していない場合(ステップS19;No)、ステップS11へ処理を戻す。
【0121】
以上説明したように、第1実施例に係る情報処理装置1のコントローラ13は、対象船舶に設けられた第1ライダ31が生成する第1計測データと、対象船舶に設けられ、第1ライダ31と異なる計測範囲を有する第2ライダ32が生成する第2計測データとを取得する。そして、コントローラ13は、第1計測データに基づき、第1ライダ31に対する接岸場所の最近傍点である第1最近傍点を特定し、第2計測データに基づき、第2ライダ32に対する接岸場所の最近傍点である第2最近傍点を特定する。そして、コントローラ13は、第1最近傍点と第2最近傍点とに基づき、対象船舶と接岸場所との距離である対岸距離を算出する。この態様によれば、情報処理装置1は、接岸場所への接岸において重要なパラメータの一つである対岸距離を的確に算出することができる。
【0122】
なお、上述した実施例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory 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))を含む。
【0123】
以上、実施例を参照して本願発明を説明したが、本願発明は上記実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。すなわち、本願発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。