(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022137864
(43)【公開日】2022-09-22
(54)【発明の名称】情報処理装置、制御方法、プログラム及び記憶媒体
(51)【国際特許分類】
G01S 17/93 20200101AFI20220914BHJP
B63B 49/00 20060101ALI20220914BHJP
【FI】
G01S17/93
B63B49/00 Z
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2021037561
(22)【出願日】2021-03-09
(71)【出願人】
【識別番号】000005016
【氏名又は名称】パイオニア株式会社
(71)【出願人】
【識別番号】520001073
【氏名又は名称】パイオニアスマートセンシングイノベーションズ株式会社
(74)【代理人】
【識別番号】100107331
【弁理士】
【氏名又は名称】中村 聡延
(72)【発明者】
【氏名】加藤 正浩
(72)【発明者】
【氏名】幸田 健志
(72)【発明者】
【氏名】白鳥 邦雄
(72)【発明者】
【氏名】後藤田 明
(72)【発明者】
【氏名】加藤 将大
【テーマコード(参考)】
5J084
【Fターム(参考)】
5J084AA05
5J084AA07
5J084AA10
5J084AA13
5J084AB16
5J084AC03
5J084AD01
5J084BA03
5J084BA14
5J084BA17
5J084BA40
5J084BA48
5J084CA03
5J084CA31
5J084CA32
5J084EA04
(57)【要約】
【課題】接岸に関する正確な情報を好適に取得可能な情報処理装置を提供する。
【解決手段】情報処理装置1のコントローラ13は、対象船舶に設けられた計測装置であるライダ3が生成する接岸場所の計測データを取得する。そして、コントローラ13は、計測データに基づき、接岸場所に対する法線ベクトルを算出し、当該法線ベクトルに基づき、対象船舶から接岸場所までの対岸距離を算出する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
船舶に設けられた計測装置が生成する接岸場所の計測データを取得する取得手段と、
前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出する第1算出手段と、
前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する第2算出手段と、
を有する情報処理装置。
【請求項2】
前記第2算出手段は、前記接岸場所の側面の法線ベクトルに基づき、前記対岸距離を算出する、請求項1に記載の情報処理装置。
【請求項3】
前記計測装置は、第1計測装置と第2計測装置とを少なくとも含み、
前記第1算出手段は、前記第1計測装置が生成する前記計測データに基づく前記法線ベクトルである第1法線ベクトルと、前記第2計測装置が生成する前記計測データに基づく前記法線ベクトルである第2法線ベクトルとを算出し、
前記第2算出手段は、前記第1法線ベクトルと前記第2法線ベクトルとに基づき、前記対岸距離を算出する、請求項1または2に記載の情報処理装置。
【請求項4】
前記第2算出手段は、
前記第1法線ベクトルと前記第2法線ベクトルとの差が閾値未満の場合、前記第1法線ベクトルと前記第2法線ベクトルとを統合した統合法線ベクトルに基づき前記対岸距離を算出し、
前記第1法線ベクトルと前記第2法線ベクトルとの差が前記閾値以上の場合、前記第1法線ベクトルと前記第2法線ベクトルとに対する前記対岸距離を夫々算出する、請求項3に記載の情報処理装置。
【請求項5】
前記第2算出手段は、前記第1法線ベクトルの平均と前記第2法線ベクトルの平均とを、前記第1法線ベクトル及び前記第2法線ベクトルの各本数又は各分散に基づき重み付け平均することで、前記統合法線ベクトルを算出する、請求項4に記載の情報処理装置。
【請求項6】
前記第1算出手段は、水面位置を基準として前記計測データから水面反射データを除去した後にダウンサンプリングしたデータに基づき、前記法線ベクトルを算出する、請求項1~5のいずれか一項に記載の情報処理装置。
【請求項7】
前記第2算出手段は、前記対岸距離として、前記計測装置から前記接岸場所までの最短距離、又は、前記船舶の基準位置から前記接岸場所までの最短距離を算出する、請求項1~6のいずれか一項に記載の情報処理装置。
【請求項8】
前記第2算出手段は、前記対岸距離又は前記法線ベクトルの少なくとも一方に基づき、前記船舶の前記接岸場所に対する進入角度を算出する、請求項1~7のいずれか一項に記載の情報処理装置。
【請求項9】
前記第2算出手段は、前記対岸距離の時間変化に基づき、前記船舶の前記接岸場所への接岸速度を算出する、請求項1~8のいずれか一項に記載の情報処理装置。
【請求項10】
前記計測データに基づき、前記船舶の位置推定を行う自己位置推定手段をさらに有し、
前記第1算出手段は、前記位置推定の結果と、前記接岸場所に関する地図データとに基づき、前記法線ベクトルを算出する、請求項1~9のいずれか一項に記載の情報処理装置。
【請求項11】
前記地図データは、前記接岸場所の3次元データを含む、請求項10に記載の情報処理装置。
【請求項12】
前記地図データは、前記接岸場所に設けられた基準物の位置及び向きに関する情報を含む、請求項10に記載の情報処理装置。
【請求項13】
コンピュータが実行する制御方法であって、
船舶に設けられた計測装置が生成する接岸場所の計測データを取得し、
前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出し、
前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する、
制御方法。
【請求項14】
船舶に設けられた計測装置が生成する接岸場所の計測データを取得し、
前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出し、
前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する処理をコンピュータに実行させるプログラム。
【請求項15】
請求項14に記載のプログラムを記憶した記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、船舶の接岸時の処理に関する。
【背景技術】
【0002】
従来から、船舶の接岸(着岸)に関する支援を行う技術が知られている。例えば、特許文献1には、船舶の自動接岸を行う自動接岸装置において、ライダから照射される光が接岸位置の周囲の物体に反射してライダにより受光できるように、船舶の姿勢を変化させる制御を行う手法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
接岸場所への船舶の自動接岸などの高度な接岸支援を行う場合には、接岸場所に対する対岸距離等を正確に把握する必要がある。一方、引用文献1には、接岸場所に対する正確な対岸距離等を算出する手法については開示されていない。
【0005】
本開示は、上記のような課題を解決するためになされたものであり、接岸に関する正確な情報を好適に取得可能な情報処理装置を提供することを主な目的とする。
【課題を解決するための手段】
【0006】
請求項に記載の発明は、
船舶に設けられた計測装置が生成する接岸場所の計測データを取得する取得手段と、
前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出する第1算出手段と、
前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する第2算出手段と、
を有する情報処理装置である。
【0007】
また、請求項に記載の発明は、
コンピュータが実行する制御方法であって、
船舶に設けられた計測装置が生成する接岸場所の計測データを取得し、
前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出し、
前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する、
制御方法である。
【0008】
また、請求項に記載の発明は、
船舶に設けられた計測装置が生成する接岸場所の計測データを取得し、
前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出し、
前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する処理をコンピュータに実行させるプログラムである。
【図面の簡単な説明】
【0009】
【
図2】情報処理装置のハードウェア構成を示すブロック図である。
【
図3】接岸支援処理に関する機能ブロック図である。
【
図4】(A)対象船舶の船体を基準とした船体座標系の一例を示す。(B)法線ベクトルを明示した構造物の斜視図である。
【
図5】視野内面及び検出面として接岸場所である構造物の上面及び側面の両方が含まれる接岸状況を表す図である。
【
図6】(A)視野内面が上面及び側面であるのに対し、検出面が側面のみである接岸状況を表す図である。(B)1回の走査周期においてライダが生成するデータの配列の一例を示す。(C)視野内面が上面及び側面であるのに対し、検出面が上面のみである接岸状況を表す図である。
【
図7】(A)視野内面及び検出面が共に側面のみである接岸状況を表す図である。(B)視野内面及び検出面が共に上面のみである接岸状況を表す図である。
【
図8】近傍点及び最近傍点を明示した構造物の斜視図である。
【
図10】平均法線ベクトルの算出方法の概要を表す図である。
【
図11】接岸速度の算出方法の概要を表す図である。
【
図12】進入角度の算出方法の概要を表す図である。
【
図14】接岸支援処理の概要を表すフローチャートの一例である。
【
図15】第2実施例に係る情報処理装置のブロック構成図の一例である。
【
図16】第2実施例における自己位置推定部の機能ブロックの一例である。
【
図17】第3実施例における法線ベクトルの取得の概要を表す図である。
【
図18】第4実施例における自己位置推定部の機能ブロックの一例である。
【
図19】第4実施例における法線ベクトルの取得の概要を表す図である。
【発明を実施するための形態】
【0010】
本開示における好適な実施形態によれば、情報処理装置は、船舶に設けられた計測装置が生成する接岸場所の計測データを取得する取得手段と、前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出する第1算出手段と、前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する第2算出手段と、を有する。この態様によれば、情報処理装置は、計測データに基づき算出した接岸場所の法線ベクトルに基づき、対岸距離を的確に算出することができる。
【0011】
上記情報処理装置の一態様では、前記第2算出手段は、前記接岸場所の側面の法線ベクトルに基づき、前記対岸距離を算出する。この態様により、情報処理装置は、対岸距離を好適に算出することができる。
【0012】
上記情報処理装置の他の一態様では、前記計測装置は、第1計測装置と第2計測装置とを少なくとも含み、前記第1算出手段は、前記第1計測装置が生成する前記計測データに基づく前記法線ベクトルである第1法線ベクトルと、前記第2計測装置が生成する前記計測データに基づく前記法線ベクトルである第2法線ベクトルとを算出し、前記第2算出手段は、前記第1法線ベクトルと前記第2法線ベクトルとに基づき、前記対岸距離を算出する。この態様により、情報処理装置は、複数の計測装置の計測データに基づく法線ベクトルに基づいて、対岸距離を好適に算出することができる。
【0013】
上記情報処理装置の他の一態様では、前記第2算出手段は、前記第1法線ベクトルと前記第2法線ベクトルとの差が閾値未満の場合、前記第1法線ベクトルと前記第2法線ベクトルとを統合した統合法線ベクトルに基づき前記対岸距離を算出し、前記第1法線ベクトルと前記第2法線ベクトルとの差が前記閾値以上の場合、前記第1法線ベクトルと前記第2法線ベクトルとに対する前記対岸距離を夫々算出する。この態様により、情報処理装置は、計測装置毎に対岸距離を算出することが好ましい場合と1つの共通の対岸距離を算出することが好ましい場合とにおいて夫々適切に対岸距離を算出することができる。
【0014】
上記情報処理装置の他の一態様では、前記第2算出手段は、前記第1法線ベクトルの平均と前記第2法線ベクトルの平均とを、前記第1法線ベクトル及び前記第2法線ベクトルの各本数又は各分散に基づき重み付け平均することで、前記統合法線ベクトルを算出する。この態様により、情報処理装置は、計測装置毎に算出した法線ベクトルを統合した法線ベクトルを好適に算出することができる。
【0015】
上記情報処理装置の他の一態様では、前記第1算出手段は、水面位置を基準として前記計測データから水面反射データを除去した後にダウンサンプリングしたデータに基づき、前記法線ベクトルを算出する。この態様により、情報処理装置は、接岸場所に対する法線ベクトルを好適に算出することができる。
【0016】
上記情報処理装置の他の一態様では、前記第2算出手段は、前記対岸距離として、前記計測装置から前記接岸場所までの最短距離、又は、前記船舶の基準位置から前記接岸場所までの最短距離を算出する。
【0017】
上記情報処理装置の他の一態様では、前記第2算出手段は、前記対岸距離又は前記法線ベクトルの少なくとも一方に基づき、前記船舶の前記接岸場所に対する進入角度を算出する。上記情報処理装置の他の一態様では、前記第2算出手段は、前記対岸距離の時間変化に基づき、前記船舶の前記接岸場所への接岸速度を算出する。これらの態様によれば、情報処理装置は、船舶の接岸に必要な対岸距離以外の情報を好適に取得することができる。
【0018】
上記情報処理装置の他の一態様では、前記計測データに基づき、前記船舶の位置推定を行う自己位置推定手段をさらに有し、前記第1算出手段は、前記位置推定の結果と、前記接岸場所に関する地図データとに基づき、前記法線ベクトルを算出する。この態様により、情報処理装置は、接岸場所に対する正確な法線ベクトルを地図データに基づき好適に取得することができる。好適な例では、前記地図データは、前記接岸場所の3次元データを含む。他の好適な例では、前記地図データは、前記接岸場所に設けられた基準物の位置及び向きに関する情報を含む。
【0019】
本開示の他の好適な実施形態によれば、コンピュータが実行する制御方法であって、船舶に設けられた計測装置が生成する接岸場所の計測データを取得し、前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出し、前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する。コンピュータは、この制御方法を実行することで、接岸場所の法線ベクトルに基づき、対岸距離を的確に算出することができる。
【0020】
本開示の他の好適な実施形態によれば、船舶に設けられた計測装置が生成する接岸場所の計測データを取得し、前記計測データに基づき、前記接岸場所に対する法線ベクトルを算出し、前記法線ベクトルに基づき、前記船舶から前記接岸場所までの対岸距離を算出する処理をコンピュータに実行させるプログラムである。コンピュータは、このプログラムを実行することで、接岸場所の法線ベクトルに基づき、対岸距離を的確に算出することができる。好適には、プログラムは、記憶媒体に記憶される。
【実施例0021】
以下、図面を参照して本発明の好適な実施例について説明する。なお、任意の記号の上に「^」または「-」が付された文字を、本明細書では便宜上、「A^」または「A-」(「A」は任意の文字)と表す。
【0022】
<第1実施例>
(1)
運転支援システムの概要
図1は、第1実施例に係る運転支援システムの概略構成である。運転支援システムは、移動体である船舶と共に移動する情報処理装置1と、当該船舶に搭載されたセンサ群2とを有する。以後では、情報処理装置1と共に移動する船舶を「対象船舶」とも呼ぶ。
【0023】
情報処理装置1は、センサ群2と電気的に接続し、センサ群2に含まれる各種センサの出力に基づき、情報処理装置1が設けられた対象船舶の自動運転制御等の運転支援を行う。運転支援には、自動接岸(着岸)などの接岸支援も含まれる。ここで、「接岸」とは、岸壁に対象船舶を着ける場合の他、桟橋等の構造体に対象船舶を着ける場合も含まれる。また、以後では、「接岸場所」とは、接岸の対象となる岸壁、桟橋等の構造体の総称であるものとする。情報処理装置1は、対象船舶に設けられたナビゲーション装置であってもよく、船舶に内蔵された電子制御装置であってもよい。
【0024】
センサ群2は、対象船舶に設けられた種々の外界センサ及び内界センサを含んでいる。本実施例では、センサ群2は、ライダ(Lidar:Light Detection and Ranging、または、Laser Illuminated Detection And Ranging)3を少なくとも含んでいる。
【0025】
ライダ3は、水平方向および垂直方向の所定の角度範囲に対してパルスレーザを出射することで、外界に存在する物体までの距離を離散的に測定し、当該物体の位置を示す3次元の点群データを生成する。この場合、ライダ3は、照射方向を変えながらレーザ光を照射する照射部と、照射したレーザ光の反射光(散乱光)を受光する受光部と、受光部が出力する受光信号に基づくスキャンデータを出力する出力部とを有する。レーザ光を照射する方向(走査位置)ごとに計測されるデータ(「計測点」又は「計測点データ」とも呼ぶ。)は、受光部が受光したレーザ光に対応する照射方向と、上述の受光信号に基づき特定される当該レーザ光の応答遅延時間とに基づき生成される。なお、ライダ3は、上述したスキャン型のライダに限らず、2次元アレイ状のセンサの視野にレーザ光を拡散照射することによって3次元データを生成するフラッシュ型のライダであってもよい。ライダ3は、本発明における「計測装置」の一例である。
【0026】
(2)
情報処理装置の構成
図2は、情報処理装置1のハードウェア構成の一例を示すブロック図である。情報処理装置1は、主に、インターフェース11と、メモリ12と、コントローラ13と、を有する。これらの各要素は、バスラインを介して相互に接続されている。
【0027】
インターフェース11は、情報処理装置1と外部装置とのデータの授受に関するインターフェース動作を行う。本実施例では、インターフェース11は、センサ群2の各センサから出力データを取得し、コントローラ13へ供給する。また、インターフェース11は、例えば、コントローラ13が生成した対象船舶の制御に関する信号を、対象船舶の運転を制御する対象船舶の各構成要素に供給する。例えば、対象船舶は、エンジンや電気モータなどの駆動源と、駆動源の駆動力に基づき進行方向の推進力を生成するスクリューと、駆動源の駆動力に基づき横方向の推進力を生成するスラスターと、船舶の進行方向を自在に定めるための機構である舵等とを備える。そして、自動接岸などの自動運転時には、インターフェース11は、コントローラ13が生成した制御信号を、これらの各構成要素に供給する。なお、対象船舶に電子制御装置が設けられている場合には、インターフェース11は、当該電子制御装置に対し、コントローラ13が生成した制御信号を供給する。インターフェース11は、無線通信を行うためのネットワークアダプタなどのワイヤレスインターフェースであってもよく、ケーブル等により外部装置と接続するためのハードウェアインターフェースであってもよい。また、インターフェース11は、入力装置、表示装置、音出力装置等の種々の周辺装置とのインターフェース動作を行ってもよい。
【0028】
メモリ12は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、フラッシュメモリなどの各種の揮発性メモリ及び不揮発性メモリにより構成される。メモリ12は、コントローラ13が所定の処理を実行するためのプログラムが記憶される。なお、コントローラ13が実行するプログラムは、メモリ12以外の記憶媒体に記憶されてもよい。
【0029】
また、メモリ12には、本実施例において情報処理装置1が実行する処理に必要な情報が記憶される。例えば、メモリ12には、接岸場所の位置に関する情報を含む地図データが記憶されてもよい。他の例では、メモリ12には、ライダ3が1周期分の走査を行った場合に得られる点群データに対してダウンサンプリングを行う場合のダウンサンプリングのサイズに関する情報が記憶される。
【0030】
コントローラ13は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)などの1又は複数のプロセッサを含み、情報処理装置1の全体を制御する。この場合、コントローラ13は、メモリ12等に記憶されたプログラムを実行することで、対象船舶の運転支援等に関する処理を行う。
【0031】
また、コントローラ13は、機能的には、接岸場所検出部15と、接岸パラメータ算出部16と、を有する。接岸場所検出部15は、ライダ3が出力する点群データに基づき、接岸場所の検出に関する処理を行う。接岸パラメータ算出部16は、接岸場所への接岸に必要なパラメータ(「接岸パラメータ」とも呼ぶ。)の算出を行う。ここで、接岸パラメータには、接岸場所までの距離(対岸距離)、接岸場所への進入角度、接岸場所へ近づく速度(接岸速度)などが含まれる。また、接岸パラメータ算出部16は、接岸場所検出部15の処理結果及び接岸パラメータに基づき、接岸場所への接岸に関する信頼度を表す情報(「信頼度情報」とも呼ぶ。)を算出する。そして、コントローラ13は、「取得手段」、「第1算出手段」、「第2算出手段」、「自己位置推定手段」及びプログラムを実行するコンピュータ等として機能する。
【0032】
なお、コントローラ13が実行する処理は、プログラムによるソフトウェアで実現することに限ることなく、ハードウェア、ファームウェア、及びソフトウェアのうちのいずれかの組み合わせ等により実現してもよい。また、コントローラ13が実行する処理は、例えばFPGA(Field-Programmable Gate Array)又はマイコン等の、ユーザがプログラミング可能な集積回路を用いて実現してもよい。この場合、この集積回路を用いて、コントローラ13が本実施例において実行するプログラムを実現してもよい。
【0033】
(3)接岸支援処理
次に、情報処理装置1が実行する接岸支援処理について説明する。概略的には、情報処理装置1は、接岸場所が存在する方向において計測されたライダ3の点群データに基づき、接岸場所の側面の法線ベクトルを算出し、算出した法線ベクトルに基づき、対岸距離などの接岸パラメータを算出する。
【0034】
(3-1)
機能ブロック
図3は、接岸支援処理に関する接岸場所検出部15及び接岸パラメータ算出部16の機能ブロック図である。接岸場所検出部15は、機能的には、法線ベクトル算出ブロック20と、視野・検出面特定ブロック21と、法線数特定ブロック22と、平均・分散算出ブロック23と、接岸状況判定ブロック24とを有する。また、接岸パラメータ算出部16は、機能的には、近傍点探索ブロック25と、最近傍判定ブロック26と、対岸距離算出ブロック27と、進入角度算出ブロック28と、接岸速度算出ブロック29と、信頼度情報生成ブロック30とを有する。
【0035】
法線ベクトル算出ブロック20は、接岸場所が存在する方向に対してライダ3が生成する点群データに基づき、接岸場所が形成する面(「接岸面」とも呼ぶ。)の法線ベクトルを算出する。この場合、法線ベクトル算出ブロック20は、例えば、対象船舶において接岸側を計測範囲に含むライダ3が生成する点群データに基づき、上述の法線ベクトルを算出する。ライダ3の計測範囲及び接岸場所の方向に関する情報は、例えばメモリ12等に予め登録されていてもよい。
【0036】
この場合、法線ベクトル算出ブロック20は、好適には、点群データのダウンサンプリングと、レーザ光が水面で反射することで得られたデータ(「水面反射データ」とも呼ぶ。)の除去と、を夫々行うとよい。
【0037】
この場合、まず、法線ベクトル算出ブロック20は、ライダ3が生成する点群データに対し、水面位置より下方に存在するデータを、水面反射データ(即ち誤検出データ)として除去する。なお、法線ベクトル算出ブロック20は、例えば、周辺に水面以外の物体が存在しないときにライダ3が生成する点群データの高さ方向の平均値等に基づき、水面位置を推定する。そして、法線ベクトル算出ブロック20は、水面反射データを除去後の点群データに対し、所定サイズの格子空間毎に計測点を統合する処理であるダウンサンプリングを行う。そして、法線ベクトル算出ブロック20は、ダウンサンプリング後の点群データにより示される各計測点について、周辺の複数の計測点を用いて法線ベクトルを算出する。なお、ダウンサンプリングは、水面で反射したデータの除去の前に実行されてもよい。
【0038】
視野・検出面特定ブロック21は、ライダ3の視野角内に存在する接岸場所の面(「視野内面」とも呼ぶ。)と、法線ベクトル算出ブロック20が算出した法線ベクトルに基づき検出した接岸場所の面(「検出面」とも呼ぶ。)との特定を行う。この場合、視野・検出面特定ブロック21は、視野内面及び検出面として、接岸場所の上面又は/及び側面が含まれているか否かの特定を行う。具体的な特定方法については
図5~
図7を参照して説明する。
【0039】
法線数特定ブロック22は、法線ベクトル算出ブロック20が算出した法線ベクトルのうち、鉛直方向の法線ベクトルと、それに垂直な方向(即ち水平方向)の法線ベクトルとを夫々抽出し、鉛直方向の法線ベクトルの本数と、水平方向の法線ベクトルの本数とを算出する。ここでは、法線数特定ブロック22は、鉛直方向の法線ベクトルを、接岸場所の上面の計測点に対する法線、水平方向の法線ベクトルを、接岸場所の側面の計測点に対する法線を表すものとみなし、夫々の本数を接岸場所に関する信頼度の一指標として算出している。
【0040】
平均・分散算出ブロック23は、法線ベクトル算出ブロック20が算出した法線ベクトルのうち、鉛直方向の法線ベクトルと、それに垂直な方向(即ち水平方向)の法線ベクトルとを夫々抽出し、鉛直方向の法線ベクトルの平均及び分散と、水平方向の法線ベクトルの平均及び分散を算出する。
【0041】
接岸状況判定ブロック24は、同一の点群データに基づき特定又は算出された、視野・検出面特定ブロック21、法線数特定ブロック22、平均・分散算出ブロック23の各処理結果を、当該点群データの生成時点での接岸場所の検出状況を表す判定結果として取得する。そして、接岸状況判定ブロック24は、視野・検出面特定ブロック21、法線数特定ブロック22、平均・分散算出ブロック23の各処理結果を、接岸場所の検出状況の判定結果として、信頼度情報生成ブロック30に供給する。
【0042】
近傍点探索ブロック25は、距離が短い点を複数個探索することにより、対象船舶に対する接岸場所の所定個数分の近傍点を、点群データを構成する計測点から検出する。最近傍判定ブロック26は、近傍点探索ブロック25が検出した所定個数分の近傍点から、最近傍点を判定する処理を行う。
【0043】
対岸距離算出ブロック27は、最近傍判定ブロック26が判定した最近傍点に基づき、対象船舶と接岸場所との最短距離に相当する対岸距離を算出する。進入角度算出ブロック28は、対岸距離算出ブロック27が算出した対岸距離に基づき、あるいは平均・分散算出ブロック23が算出した法線ベクトルの平均値に基づき、接岸場所に対する対象船舶の進入角度を算出する。接岸速度算出ブロック29は、対岸距離算出ブロック27が算出した対岸距離に基づき、接岸場所に対象船舶が近づく速度である接岸速度を算出する。
【0044】
信頼度情報生成ブロック30は、接岸状況判定ブロック24、近傍点探索ブロック25、最近傍判定ブロック26、対岸距離算出ブロック27及び進入角度算出ブロック28の処理結果に基づき、信頼度情報を生成する。信頼度情報の詳細については後述する。
【0045】
(3-2)
法線ベクトルに関する演算
次に、法線ベクトル算出ブロック20、法線数特定ブロック22及び平均・分散算出ブロック23の処理の具体例について
図4を参照して説明する。
【0046】
図4(A)は、対象船舶の船体を基準とした船体座標系の一例を示す。
図4(A)に示すように、ここでは、対象船舶の正面(前進)方向を「x」座標、対象船舶の側面方向を「y」座標、対象船舶の高さ方向を「z」座標とする。そして、ライダ3が計測した、ライダ3を基準とした座標系の計測データは、
図4(A)に示す船体座標系に変換される。なお、移動体に設置されたライダを基準とした座標系の点群データを移動体の座標系に変換する処理については、例えば、国際公開WO2019/188745などに開示されている。
【0047】
図4(B)は、接岸場所である構造物50に対し、ライダ3が計測した計測位置を表す計測点及び計測点に基づき算出した法線ベクトルを明示した構造物50の斜視図である。
図4(B)では、計測点を丸により示し、法線ベクトルを矢印により示している。ここでは、構造物50の上面及び側面の両方がライダ3により計測できた例が示されている。
【0048】
図4(B)に示すように、法線ベクトル算出ブロック20は、構造物50の側面及び上面の計測点に対する法線ベクトルを算出する。法線ベクトルは、対象とする平面や曲面に垂直なベクトルであるため、面として構成可能な複数の計測点を用いて算出される。したがって、縦横が所定長の格子あるいは半径が所定長の円を設定し、その内部に存在する計測点を用いて計算する。この場合、法線ベクトル算出ブロック20は、計測点毎に法線ベクトルを算出してもよく、所定間隔毎に法線ベクトルを算出してもよい。そして、法線数特定ブロック22は、z成分が所定の閾値より大きい法線ベクトルを、鉛直方向を向いた法線ベクトルであると判定する。なお、法線ベクトルは、単位ベクトル化されているものとする。また、z成分が所定の閾値未満となる法線ベクトルを、水平方向を向いた法線ベクトルであると判定する。そして、法線数特定ブロック22は、鉛直方向の法線ベクトルの本数(ここでは5本)と水平方向の法線ベクトル(ここでは4本)とを特定する。さらに、平均・分散算出ブロック23は、鉛直方向の法線ベクトルの平均及び分散と、水平方向の法線ベクトルの平均及び分散を算出する。なお、エッジ部分は、その周辺の計測点が上面であったり側面であったりするため、斜めの方向になる。
【0049】
(3-3)視野内面及び検出面の特定
視野内面及び検出面の特定処理について、具体的な接岸状況を表す接岸状況A~接岸状況Eに場合分けして説明する。
【0050】
(3-3-1)
接岸状況A:接岸場所の側面及び上面の両方が視野内面及び検出面
図5は、視野内面及び検出面として接岸場所である構造物50の上面及び側面の両方が含まれる接岸状況を表す図である。
図5において、破線51は、推定された水面位置を表す。そして、破線51より下方に存在する丸は、水面位置より下方に存在する計測点として除去された計測点を表す。また、構造物50の上面及び側面に存在する丸は、法線ベクトル算出ブロック20が算出した法線ベクトルに対応する計測点を表す。
【0051】
この場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の上面及び側面の両方を検出面として検出する。例えば、視野・検出面特定ブロック21は、鉛直方向の法線ベクトルの本数が所定個数以上であって、かつ、平均・分散算出ブロック23が算出する分散が閾値以内の場合に、構造物50の上面が検出されたと判定する。また、視野・検出面特定ブロック21は、水平方向の法線ベクトルの本数が所定個数以上であって、かつ、平均・分散算出ブロック23が算出する分散が閾値以内の場合に、構造物50の側面が検出されたと判定する。上述の所定個数及び閾値は、例えば予めメモリ12等に記憶されている。
【0052】
また、視野・検出面特定ブロック21は、
図5の例において、構造物50の上面及び側面が検出面として検出されたことから、構造物50の上面及び側面の両方がライダ3の視野角内に存在すると判定する。
【0053】
そして、
図5に示される接岸状況Aでは、視野内面及び検出面として接岸場所である構造物50の上面及び側面の両方が含まれることから、接岸場所が正確に検出されており、接岸場所の検出に関する信頼度が高いことが推定される。
【0054】
(3-3-2)
接岸状況B:接岸場所の両面が視野内面かつ側面のみ検出面
図6(A)は、視野内面が上面及び側面であるのに対し、検出面が側面のみである接岸状況を表す図である。
【0055】
図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番ではない場合に、視野内面が上面及び側面の両方を含むと判定する。
【0056】
そして、
図6(A)に示される接岸状況では、視野内面が上面及び側面の両方を含むものの、接岸場所の側面のみしか検出できていないため、接岸場所の検出に関する信頼度が
図5の場合と比べて低いことが推定される。
【0057】
(3-3-3)
接岸状況C:接岸場所の両面が視野内面かつ上面のみ検出面
図6(C)は、視野内面が上面及び側面であるのに対し、検出面が上面のみである接岸状況を表す図である。
【0058】
図6(C)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の側面を上面として検出する。一方、視野・検出面特定ブロック21は、構造物50の上面を検出した走査位置より下方を計測可能な走査位置が存在する(言い換えると、構造物50の上面を検出したデータの最下位の垂直番号が垂直視野角の下端の番号(
図6(B)ではm番)ではない)ことから、視野内面が上面及び側面の両方を含むと判定する。
【0059】
そして、
図6(C)に示される接岸状況では、視野内面が上面及び側面の両方を含むものの、接岸場所の上面にみしか検出できていないため、接岸場所の検出に関する信頼度は、
図5及び
図6(A)の場合と比べて低いことが推定される。
【0060】
(3-3-4)
接岸状況D:視野内面及び検出面が共に側面のみ
図7(A)は、視野内面及び検出面が共に側面のみである接岸状況を表す図である。
【0061】
図7(A)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の側面の一部を検出面として検出する。また、視野・検出面特定ブロック21は、構造物50の側面を検出した走査位置より上方を計測可能な走査位置が存在しない(言い換えると、構造物50の側面を検出したデータの最上位の垂直番号が垂直視野角の上端の番号(
図6(B)では1番)である)ことから、視野内面が側面の一部のみを含むと判定する。そして、
図7(A)に示される接岸状況では、接岸場所の側面の一部のみしか検出できていないため、接岸場所の検出に関する信頼度が
図5等の場合と比べて低いことが推定される。
【0062】
(3-3-5)
接岸状況E:視野内面及び検出面が共に上面のみ
図7(B)は、視野内面及び検出面が共に上面のみである接岸状況を表す図である。
【0063】
図7(B)に示される接岸状況の場合、視野・検出面特定ブロック21は、法線ベクトル算出ブロック20が算出する法線ベクトルに基づき、構造物50の上面のみを検出面として検出する。また、視野・検出面特定ブロック21は、構造物50の側面を検出した走査位置より下方を計測可能な走査位置が存在しない(言い換えると、構造物50の上面を検出したデータの最下位の垂直番号が垂直視野角の下端の番号(
図6(B)ではm番)である)ことから、視野内面が上面のみを含むと判定する。そして、
図7(B)に示される接岸状況では、構造物50の上面の一部しか検出できず、接岸場所の検出に関する信頼度が
図5等の場合と比べて低いことが推定される。また、この場合、最近傍点が対岸距離を算出する際の構造物50の基準位置とはならず、対岸距離が正確に計算できない。
【0064】
(3-4)
最近傍点探索
次に、近傍点探索ブロック25及び最近傍判定ブロック26の処理の具体例について、
図8(A)及び
図8(B)を参照して説明する。
図8(A)は、ライダ3により計測した構造物50の計測点及びその中の近傍点を明示した構造物50の斜視図である。
図8(B)は、ライダ3により計測した構造物50の計測点及びその中の最近傍点を明示した構造物50の斜視図である。
【0065】
近傍点探索ブロック25は、ライダ3から取得される点群データの距離情報に基づき、所定個数の近傍点を探索する。
図8(A)の例では、近傍点探索ブロック25は、7個分の近傍点を求めている。この場合、好適には、近傍点探索ブロック25は、点群データにおいて、水面位置と推定できる高さ付近よりも下方の位置を表すデータを、レーザ光が水面に反射することで得られた水面反射データ(即ち誤検出データ)として除去するとよい。
【0066】
最近傍判定ブロック26は、近傍点探索ブロック25が求めた近傍点のうち最も近い距離を示すものを最近傍点の候補とし、当該候補とその他の近傍点との座標の差(例えば他の各近傍点との距離の平均)を算出する。そして、最近傍判定ブロック26は、上述の差が所定の閾値未満である場合、当該候補を最近傍点とみなす。岸壁付近では、波や風が強いと、波しぶきや浮遊物を偶然捉えてしまうこともある。よって上述の閾値は、ノイズ又は接岸場所以外の物の計測点であるか否かを判定するための閾値であって、例えば予めメモリ12等に記憶されている。一方、最近傍判定ブロック26は、上述の差が所定の閾値以上である場合、当該候補はノイズ又は他の物の計測点である可能性が高いと判定し、当該候補を最近傍点とみなさない。この場合、最近傍判定ブロック26は、上述の候補の次に距離が近い近傍点を新たな候補とみなし、上述の差の算出及び閾値との比較を行い、最近傍点の判定を行う。
【0067】
例えば、
図8(A)の例では、最近傍判定ブロック26は、最近傍点の候補として最初に近傍点59を抽出する。そして、最近傍判定ブロック26は、近傍点59と他の近傍点との差が所定閾値以上であることから、近傍点59をノイズ等とみなして除去する。そして、最近傍判定ブロック26は、近傍点59の次に距離が近い近傍点60を次の最近傍点の候補として抽出し、当該近傍点60と他の近傍点との差が所定閾値未満となることから、
図8(B)に示すように、近傍点60を最近傍点であると判定する。
【0068】
(3-5)対岸距離の算出
次に、接岸距離の算出について説明する。以後では、代表例として、対象船舶の前方と後方の2か所にライダ3が設置されている場合について説明する。
【0069】
図9(A)は、対象船舶と接岸場所である構造物50を上から見た図である。この例では、接岸場所である構造物50に対して対象船舶が平行ではない(角度がある)ため、構造物50の実際の最近傍位置がライダ3の計測範囲に含まれておらず、最近傍判定ブロック26が算出する最近傍点までの距離が最短距離となっていない。
【0070】
図9(B)は、対岸距離算出方法の概要を表す図である。ここでは、前方のライダ3の計測結果に基づく最短距離(即ち対岸距離)を「d
1(k)」(「k」は時刻のインデックス)、後方のライダ3の計測結果に基づく最短距離(即ち対岸距離)を「d
2(k)」、前方のライダ3の計測結果に基づく最近傍点を表すベクトルを「p
1」、後方のライダ3の計測結果に基づく最近傍点を表すベクトルを「p
2」と表記している。また、前方のライダ3の計測結果に基づく、接岸場所の側面に対する法線ベクトル(即ち水平方向の法線ベクトル)の平均(「平均法線ベクトル」とも呼ぶ。)を「n
1
-」、後方のライダ3の計測結果に基づく平均法線ベクトルを「n
2
-」と表記している。ここでは、平均法線ベクトルn
1
-、n
2
-は、単位ベクトル化されたベクトルであるものとする。
【0071】
対岸距離算出方法では、対岸距離算出ブロック27は、前方のライダ3と後方のライダ3との夫々について、ライダ3から最近傍点までのベクトルと、接岸場所の側面に対する法線ベクトルの平均である平均法線ベクトルとの内積を算出する。なお、平均法線ベクトルに代えて、最近傍点における法線ベクトルを用いて内積を算出してもよい。そして、対岸距離算出ブロック27は、ライダ3毎の内積の算出結果を、各ライダ3に対する最短距離とみなし、これらの最短距離から対岸距離を定める。
【0072】
具体的には、最近傍点ベクトルp1のベクトル長(即ち前方のライダ3から最近傍点までの距離)を「L1」とし、構造物50までの最短距離の方向とのなす角を「θ」とすると、最短距離d1(k)は以下で求められる。
d1(k)=L1COSθ
【0073】
また、最近傍点ベクトルp1と平均法線ベクトルn1
-のなす角は、以下の式で求められる。
COSθ=(p1・n1
-)/(|p1||n1
-|)
ここで、平均法線ベクトルn1
-は単位ベクトルであるから|n1
-|=1、また最近傍点ベクトルp1の長さはL1であるから|p1|=L1より、最短距離d1(k)は以下のように定まる。
【0074】
【0075】
一般に、船体から接岸場所までの距離は、水平面での値が必要であるため、以後ではz成分を無視して計算することとする。p1=[px1,py1、pz1]T、p2=[px2,py2、pz2]T、n1
-=[nx1
-,ny1
-,nz1
-]T、n2
-=[nx2
-,ny2
-,nz2
-]Tとし、xy成分のみの演算を行うと、対岸距離算出ブロック27は、以下のように最短距離d1(k)、d2(k)を算出する。
【0076】
【0077】
対岸距離算出方法により、対岸距離算出ブロック27は、接岸場所に対する対象船舶の向きによらずに対岸距離を好適に算出することができる。
【0078】
なお、対岸距離算出ブロック27は、ライダ3から接岸場所までの距離を対岸距離(最短距離)として算出する代わりに、対象船舶において予め定めた基準位置(例えば船舶の中心位置)から接岸場所までの距離を対岸距離(最短距離)として算出してもよい。この場合、基準位置に関する情報は、船体座標系又はライダ3を基準とする座標系における座標値として、予めメモリ12に記憶されている。対岸距離算出ブロック27は、最近傍点ベクトルp1の始点を上述の基準位置に定める。また、対岸距離算出ブロック27は、基準位置の複数の候補として対象船舶の外板部(外縁部)の複数の位置を設け、これらの外板部の位置と接岸場所までの最短距離を夫々算出し、当該最短距離が最も短い距離を、対象船舶に対する最短距離(対岸距離)として算出してもよい。
【0079】
次に、対岸距離算出方法において用いる平均法線ベクトルの算出方法の具体的態様について、詳しく説明する。
【0080】
第1態様では、対岸距離算出ブロック27は、平均法線ベクトルとして、上述したように、前方のライダ3の計測結果に基づく平均法線ベクトルn1
-と後方のライダ3の計測結果に基づく平均法線ベクトルn2
-とを夫々求める。第2態様では、対岸距離算出ブロック27は、平均法線ベクトルとして、前方のライダ3と後方のライダ3の両方の計測結果を法線の本数に応じた重み付け平均により統合した1個の平均法線ベクトル(「統合法線ベクトル」とも呼ぶ。)「n-」を算出する。第3態様では、対岸距離算出ブロック27は、前方のライダ3の計測結果に基づく平均法線ベクトルn1
-と後方のライダ3の計測結果に基づく平均法線ベクトルn2
-とを、夫々の分散を用いた重み付け平均により統合した統合法線ベクトルn-を算出する。
【0081】
ここで、第1態様~第3態様の使い分けについて説明する。前方のライダ3が計測する接岸場所の側面と後方のライダ3が計測する接岸場所の側面の向きが異なる場合、対岸距離算出ブロック27は、第1態様に基づき平均法線ベクトルn1
-と平均法線ベクトルn2
-とを算出する。
【0082】
図10(A)は、前方のライダ3が計測する側面と後方のライダ3が計測する側面とで面の向きが異なる構造物50に対して算出した法線ベクトルを明示した図である。ここでは、前方のライダ3の計測結果に基づく側面の法線ベクトルを「n
1(i)=[n
x1(i),n
y1(i),n
z1(i)]
T」(i=1~N
1)とし、後方のライダ3の計測結果に基づく側面の法線ベクトルを「n
2(j)=[n
x2(j),n
y2(j),n
z2(j)]
T」(j=1~N
2)とする。
【0083】
この場合、対岸距離算出ブロック27は、前方のライダ3の計測結果に基づく平均法線ベクトルn1
-と後方のライダ3の計測結果に基づく平均法線ベクトルn2
-とを夫々算出する。そして、対岸距離算出ブロック27は、平均法線ベクトルn1
-と平均法線ベクトルn2
-との差(ベクトル差の大きさ)が所定の閾値より大きい場合、前方のライダ3が計測する接岸場所と後方のライダ3が計測する接岸場所の向きが異なると判定する。ここでは、対岸距離算出ブロック27は、上述の差が閾値より大きいことから、第1態様に基づき平均法線ベクトルn1
-と平均法線ベクトルn2
-との両方を採用する。
【0084】
一方、前方のライダ3が計測する側面と後方のライダ3が計測する側面の向きが同じ場合、対岸距離算出ブロック27は、第2態様に基づき、法線の本数を用いた重み付け平均により統合法線ベクトルn
-を算出する。
図10(B)は、前方のライダ3が計測する側面と後方のライダ3が計測する側面とで面の向きが同じ構造物50に対して算出した法線ベクトルを明示した図である。この場合、対岸距離算出ブロック27は、平均法線ベクトルn
1
-と平均法線ベクトルn
1
-との差が所定の閾値未満となることから、前方のライダ3が計測する接岸場所と後方のライダ3が計測する接岸場所の向きが同じであると判定する。よって、この場合、対岸距離算出ブロック27は、法線ベクトルn
1の本数N
1と、平均法線ベクトルn
2の本数N
2とに基づき、以下の式により統合法線ベクトルn
-を算出する。
【0085】
【0086】
また、前方のライダ3が計測する側面と後方のライダ3が計測する側面の向きが同じであるがこれらの面の平面性が異なる(即ちライダ3毎に求めた法線ベクトルのばらつきが異なる)場合、対岸距離算出ブロック27は、第3態様に基づき統合法線ベクトルn-を算出する。
【0087】
図10(C)は、前方のライダ3が計測する側面と後方のライダ3が計測する側面とで面の平面性が異なる構造物50に対して算出した法線ベクトルを明示した図である。この場合、対岸距離算出ブロック27は、平均法線ベクトルn
1
-と平均法線ベクトルn
1
-との差が所定の閾値未満(例えば内積値が閾値以上)となり、かつ、平均法線ベクトルn
1
-の算出に用いた法線ベクトルの分散と、平均法線ベクトルn
2
-の算出に用いた法線ベクトルの分散との差が閾値以上となると判定する。よって、この場合、対岸距離算出ブロック27は、前方のライダ3が計測する側面と後方のライダ3が計測する側面の向きが同じであるがこれらの面の平面性が異なると判定する。よって、この場合、分散に基づく平均法線ベクトルn
1
-に対する重みベクトルを「w1=[w
x1,w
y1,w
z1]
T」、分散に基づく平均法線ベクトルn
2
-に対する重みベクトルを「w2=[w
x2,w
y2,w
z2]
T」とすると、統合法線ベクトルn
-=[n
x
-,n
y
-,n
z
-]
Tは、以下の式により算出される。
【0088】
【0089】
なお、法線ベクトルは3次元であるため、分散は3行3列の共分散行列で示される。平均法線ベクトルn1
-に対する共分散行列を「Vn1」、平均法線ベクトルn2
-に対する共分散行列を「Vn2」は、以下のように表される。
【0090】
【0091】
この場合、各重みベクトルは、以下の式により表される。それぞれ共分散行列の対角成分である分散値の逆数であり、分散値が小さいほど重みが大きくなる。
【0092】
【0093】
なお、ライダ3が3台以上存在する場合であっても、対岸距離算出ブロック27は、同様に、第1態様~第3態様のいずれかに基づき、平均法線ベクトルを算出することが可能である。例えば、ライダ3が3台(第1ライダ、第2ライダ、第3ライダ)存在する場合であって、第1ライダの法線ベクトル「n1」の本数を「N1」、第2ライダの法線ベクトル「n2」の本数を「N2」、第3ライダの法線ベクトル「n3」の本数を「N3」とし、第1ライダの分散に基づく平均法線ベクトル「n1
-」に対する重みベクトルを[wx1,wy1,wz1]T、第2ライダの分散に基づく平均法線ベクトル「n2
-」に対する重みベクトルを[wx2,wy2,wz2]T、第3ライダの分散に基づく平均法線ベクトル「n3
-」に対する重みベクトルを[wx3,wy3,wz3]Tとする。この場合、対岸距離算出ブロック27は、第2態様に基づく算出方法では、以下の式により統合法線ベクトルn-を算出する。
【0094】
【数7】
また、対岸距離算出ブロック27は、第3態様に基づく算出方法では、以下の式により統合法線ベクトルn
-を算出する。
【0095】
【0096】
(3-6)接岸速度の算出
次に、接岸速度の算出方法について説明する。接岸速度算出ブロック29は、前方のライダ3と後方のライダ3との夫々で求めた対岸距離(最短距離)の時間変化を接岸速度として算出する。
【0097】
図11は、接岸速度の算出方法の概要を表す図である。ここで、「d
1」は前方のライダ3の対岸距離(最短距離)を表し、「d
2」は後方のライダ3の対岸距離(最短距離)を表し、「k」は現在の処理時刻、「k-1」は直前の処理時刻を表し、「Δt」は直前の対岸距離の算出時刻との時間間隔を表す。
【0098】
ここで、接岸速度算出ブロック29は、前時刻と現時刻との対岸距離の差を時間間隔で割る場合に、ノイズの増加に対応するため、フィルタを挿入する。具体的には、接岸速度算出ブロック29は、時定数「τ」とラプラス演算子「s」とを用いて、以下の式により、前方のライダ3に対する接岸速度「v1」と、後方のライダ3に対する接岸速度「v2」とを算出する。
【0099】
【0100】
これにより、接岸速度算出ブロック29は、ノイズの影響を勘案して接岸速度を好適に算出することができる。
【0101】
(3-7)進入角度の算出
次に、進入角度の算出方法(第1算出方法、第2算出方法)について説明する。進入角度の第1算出方法では、進入角度算出ブロック28は、正接を規定する2つの引数から逆正接(アーク・タンジェント)を求める関数である「atan2」を用いて進入角度を算出する。具体的には、進入角度算出ブロック28は、平均法線ベクトルから、関数atan2の計算により、進入角度を算出する。
【0102】
図12(A)は、進入角度の第1算出方法の概要を表す図である。この場合、進入角度算出ブロック28は、前方のライダ3の点群データに基づき算出される進入角度「Ψ
1」、及び、後方のライダ3の点群データに基づき算出される進入角度「Ψ
2」を、以下の式に基づき算出する。
【0103】
【0104】
進入角度の第2算出方法では、進入角度算出ブロック28は、最短距離d
1(k)とd
2(k)の差分「Δd」から算出する。
図12(B)で示すように、前方のライダ3と後方のライダ3の設置間隔「ΔS」を把握しておくことで、進入角度「Ψ」を以下の式に基づき算出することができる。
【0105】
【0106】
(3-8)信頼度情報の生成
信頼度情報生成ブロック30は、接岸場所の検出時の視野角、接岸場所の面検出、法線ベクトルの本数及び分散等の各要素に対してフラグを生成し、生成したフラグのベクトルを信頼度情報として生成する。以後では、フラグは、「1」の場合には対応する要素の信頼度が高く、「0」の場合には対応する要素の信頼度が低いことを表すものとする。
【0107】
図13は、信頼度情報生成ブロック30が生成する信頼度情報のデータ構造の一例を示す。
図13に示すように、信頼度情報は、「上面」、「側面」、「近傍点」、「距離」、「角度」の項目を有する。また、項目「上面」は、サブ項目「視野角」、「検出」、「法線数」、「分散」を有し、項目「側面」は、「視野角」、「検出」、「法線数」、「分散」のサブ項目を有する。また、項目「近傍点」は、サブ項目「分散」を有し、項目「距離」は、サブ項目「変化量」、「変化率」を有し、項目「角度」は、サブ項目「変化量」を有する。
【0108】
ここで、信頼度情報生成ブロック30は、項目「上面」のサブ項目「視野角」には、接岸場所の上面が視野角の範囲内である場合に「1」、上面が視野角外である場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「上面」のサブ項目「視野角」には、接岸場所の上面が検出面である場合に「1」、上面が検出面でない場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「上面」のサブ項目「法線数」には、接岸場所の上面に対する法線ベクトルの本数が所定の閾値(例えば10本)以上の場合に「1」、当該本数が閾値未満の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「上面」のサブ項目「分散」には、接岸場所の上面に対する法線ベクトルのx,y,z成分の分散がいずれも所定の閾値(例えば1.0)未満の場合に「1」、当該いずれかの分散が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「側面」の各サブ項目においても、項目「上面」の各サブ項目と同一規則により定めたフラグを登録する。
【0109】
また、信頼度情報生成ブロック30は、項目「近傍点」のサブ項目「分散」には、近傍点探索ブロック25が探索した近傍点のx,y,z成分の分散がいずれも閾値(例えば1.0)未満の場合に「1」、当該いずれかの分散が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「距離」のサブ項目「変化量」には、対岸距離算出ブロック27が算出する対岸距離の1時刻前からの変化量が所定の閾値(例えば1.0m)未満である場合に「1」、当該変化量が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「距離」のサブ項目「変化率」には、対岸距離算出ブロック27が算出する対岸距離の1時刻前からの変化率が所定の閾値(例えば±10%)未満である場合に「1」、当該変化率が閾値以上の場合に「0」となるフラグを登録する。また、信頼度情報生成ブロック30は、項目「角度」のサブ項目「変化量」には、進入角度算出ブロック28が算出する進入角度の1時刻前からの変化量が所定の閾値(例えば1.0度)未満である場合に「1」、当該変化量が閾値以上の場合に「0」となるフラグを登録する。
【0110】
なお、上述の各閾値は、例えば、メモリ12等に予め記憶された適合値に設定される。また、信頼度情報は、ライダ3毎に生成されてもよい。
【0111】
このようなデータ構造を有する信頼度情報によれば、算出した対岸距離、接岸速度、進入角度の信頼度を把握することが可能となる。なお、信頼度情報の各サブ項目が「1」の場合に、最も信頼度が高いことになる。そして、情報処理装置1は、この信頼度情報に基づき、接岸時の駆動源の出力の調整などを行う。例えば、情報処理装置1は、信頼度情報が示す各サブ項目の合計値に応じて、接岸時の対象船舶の速度の上限値等を決定してもよい。この場合、情報処理装置1は、例えば、上述の合計値が小さいほど、接岸場所に関する情報の信頼性が低く、慎重に接岸する必要があると判断し、接岸時の対象船舶の速度の上限値を小さくする。
【0112】
(3-9)
処理フロー
図14は、本実施例における接岸支援処理の概要を表すフローチャートの一例である。情報処理装置1は、
図14のフローチャートの処理を繰り返し実行する。
【0113】
まず、情報処理装置1は、接岸場所方向の点群データを取得する(ステップS11)。この場合、情報処理装置1は、例えば、対象船舶において接岸側を計測範囲に含むライダ3が生成する点群データを取得する。また、情報処理装置1は、取得した点群データのダウンサンプリング及び水面で反射したデータの除去をさらに行ってもよい。
【0114】
次に、情報処理装置1の接岸場所検出部15は、ステップS11で取得された点群データに基づき、法線ベクトルを算出する(ステップS12)。さらに、接岸場所検出部15は、ステップS12において、法線ベクトルの本数及び法線ベクトルの分散等の算出を行う。また、接岸場所検出部15は、ステップS12の処理結果に基づき、視野内面及び検出面の特定を行う(ステップS13)。
【0115】
次に、接岸パラメータ算出部16は、ステップS11で取得した点群データ及びステップS12で算出された法線ベクトルの情報等に基づき、接岸パラメータを算出する(ステップS14)。この場合、接岸パラメータ算出部16は、接岸場所の近傍点及び最近傍点を算出し、その算出結果を用いて対岸距離、進入角度、接岸速度などをさらに算出する。
【0116】
そして、接岸パラメータ算出部16は、ステップS13での視野内面及び検出面の特定結果及びステップS14での接岸パラメータの算出結果に基づき、信頼度情報を生成する(ステップS15)。その後、情報処理装置1は、信頼度情報に基づく船舶の制御を行う(ステップS16)。これにより、情報処理装置1は、接岸状況を的確に反映した信頼度に基づいて、接岸に関する船舶の制御を的確に実行することができる。
【0117】
そして、情報処理装置1は、対象船舶が接岸(着岸)したか否か判定する(ステップS17)。この場合、情報処理装置1は、例えば、センサ群2の出力信号又はインターフェース11を介したユーザ入力等に基づき、対象船舶が接岸したか否か判定する。そして、情報処理装置1は、対象船舶が接岸したと判定した場合(ステップS17;Yes)、フローチャートの処理を終了する。一方、情報処理装置1は、対象船舶が接岸していない場合(ステップS17;No)、ステップS11へ処理を戻す。
【0118】
以上説明したように、第1実施例に係る情報処理装置1のコントローラ13は、対象船舶に設けられた計測装置であるライダ3が生成する接岸場所の計測データを取得する。そして、コントローラ13は、計測データに基づき、接岸場所に対する法線ベクトルを算出し、当該法線ベクトルに基づき、対象船舶から接岸場所までの対岸距離を算出する。この態様によれば、情報処理装置1は、接岸場所への接岸において重要なパラメータの一つである対岸距離を的確に算出することができる
【0119】
<第2実施例>
図15は、第2実施例における情報処理装置1Aのブロック図の一例を示す。第2実施例に係る情報処理装置1Aは、対象船舶の自己位置処理を行う点で、第1実施例の情報処理装置1と異なる。以後では、第1実施例と同一の構成要素については適宜同一の符号を付し、その説明を省略する。
【0120】
情報処理装置1Aは、
図15に示すように、インターフェース11と、メモリ12と、コントローラ13と、を有する。
【0121】
メモリ12には、ボクセルデータ「VD」を含む地図データベース(DB:DataBase)10が記憶されている。ボクセルデータVDは、3次元空間の最小単位となる立方体(正規格子)を示すボクセルごとに静止構造物の位置情報等を記録したデータである。ボクセルデータVDは、各ボクセル内の静止構造物の計測された点群データを正規分布により表したデータを含み、後述するように、NDT(Normal Distributions Transform)を用いたスキャンマッチングに用いられる。また、地
図DB10には、ボクセルデータVDに加えて、例えば、着岸場所(岸、桟橋を含む)に関する情報、船舶が移動可能な水路に関する情報などが含まれていてもよい。
【0122】
なお、地
図DB10は、インターフェース11を介して情報処理装置1と接続されたハードディスクなどの情報処理装置1の外部の記憶装置に記憶されてもよい。上記の記憶装置は、情報処理装置1と通信を行うサーバ装置であってもよい。また、上記の記憶装置は、複数の装置から構成されてもよい。また、地
図DB10は、定期的に更新されてもよい。この場合、例えば、コントローラ13は、インターフェース11を介し、地図情報を管理するサーバ装置から、自己位置が属するエリアに関する部分地図情報を受信し、地
図DB10に反映させる。
【0123】
コントローラ13は、機能的には、接岸場所検出部15と、接岸パラメータ算出部16と、自己位置推定部17とを有する。接岸場所検出部15及び接岸パラメータ算出部16は、第1実施例において説明した
図3に示される機能ブロックを有する。
【0124】
自己位置推定部17は、センサ群2に含まれる各種センサの出力をインターフェース11を介して取得し、情報処理装置1が設けられた対象船舶の自己位置の推定を行う。ここで、自己位置推定部17は、NDTスキャンマッチングにより、例えば、対象船舶の平面上の位置、高さ位置、ヨー角、ピッチ角及びロール角の推定を行う。なお、特に言及がない限り、自己位置は、対象船舶のヨー角などの姿勢角も含まれるものとする。なお、移動体の位置推定を目的としたNDTスキャンマッチングについては、例えば、特開2019-174675号公報等に記載されている。コントローラ13は、自己位置推定部17による自己位置の推定結果に基づき、対象船舶の自動運転制御等の運転支援を行う。
【0125】
センサ群2は、対象船舶に設けられた種々の外界センサ及び内界センサを含んでいる。本実施例では、センサ群2は、ライダ3と、対象船舶の速度を検出する速度センサ4と、GPS(Global Positioning Satellite)受信機5と、3軸方向における対象移動体対象船舶の加速度及び角速度を計測する慣性計測装置(IMU:Inertial Measurement Unit)6とを含んでいる。速度センサ4は、例えば、ドップラーを利用した速度計であってもよく、GNSSを利用した速度計であってもよい。なお、センサ群2は、GPS受信機5に代えて、GPS以外のGNSSの測位結果を生成する受信機を有してもよい。
【0126】
図16は、自己位置推定部17の機能ブロックの一例である。
図16に示すように、自己位置推定部17は、デッドレコニングブロック31と、座標変換ブロック32と、データ抽出ブロック33と、水面位置算出ブロック34と、水面反射データ除去ブロック35と、NDT位置算出ブロック36とを有する。
【0127】
デッドレコニングブロック31は、センサ群2が出力する信号に基づき、DR位置の算出を行う。具体的には、デッドレコニングブロック31は、速度センサ4及びIMU6等の出力に基づく対象船舶の移動速度と角速度を用い、前回時刻からの移動距離と方位変化を求める。そして、デッドレコニングブロック31は、現在の処理時刻kに対する直前の処理時刻である時刻k-1において最終的に推定された自己位置(「推定自己位置」とも呼ぶ。)に対し、前回時刻からの移動距離と方位変化を加えた時刻kでの暫定的な自己位置(「予測自己位置」とも呼ぶ。)を算出する。この予測自己位置は、デッドレコニングに基づき時刻kにおいて求められた自己位置であり、以後では「DR位置」とも呼ぶ。なお、自己位置推定開始直後であって、時刻k-1の推定自己位置が存在しない場合等には、デッドレコニングブロック31は、例えば、GPS受信機5が出力する信号に基づき、DR位置を定める。
【0128】
座標変換ブロック32は、ライダ3の出力に基づく点群データを、地
図DB10と同一の座標系であるワールド座標系に変換する。この場合、座標変換ブロック32は、例えば、時刻kでデッドレコニングブロック31が出力する予測自己位置に基づき、時刻kでの点群データの座標変換を行う。なお、移動体(本実施例では船舶)に設置されたライダを基準とした座標系の点群データを移動体の座標系に変換する処理、及び移動体の座標系からワールド座標系に変換する処理等については、例えば、国際公開WO2019/188745などに開示されている。
【0129】
データ抽出ブロック33は、水面の高さの算出に用いるサンプルとなる水面反射データを、座標変換ブロック32が出力する点群データから抽出する。この場合、データ抽出ブロック33は、例えば、ボクセルデータが存在しない自己位置周辺(自己位置から所定距離以内)かつ自己位置より下方の位置を示す計測点のデータを、上述の水面反射データとして抽出する。
【0130】
水面位置算出ブロック34は、データ抽出ブロック33が抽出した各計測点が表すz方向の位置(z座標値)の平均値を、水面位置として算出する。この場合、水面位置算出ブロック34は、データ抽出ブロック33が抽出した各計測点のz方向の位置の分散値に基づき、算出した水面位置を現在の水面位置として採用するか否か判定してもよい。また、水面位置算出ブロック34は、算出した暫定の水面位置に対し、過去に算出した水面位置との平均化処理又はフィルタリング処理を行うことで、現在の水面位置を決定してもよい。また、水面位置算出ブロック34又は水面位置算出ブロック34は、誤検出データを確実に除去するため、設定する水面位置に対し、所定距離だけ上方になるようにオフセットを設けてもよい。
【0131】
水面反射データ除去ブロック35は、水面位置算出ブロック34から供給される水面位置よりも下方(同一高さを含む、以下同じ。)の位置(即ちz座標値が同一又は低い位置)を表す点群データの各計測点を水面反射データと判定し、判定した水面反射データを点群データから除去する。
【0132】
NDT位置算出ブロック36は、水面反射データ除去ブロック35から供給される水面反射データ除去後の点群データに基づいてNDT位置を算出する。この場合、NDT位置算出ブロック36は、水面反射データ除去ブロック35から供給されるワールド座標系の点群データと、同じワールド座標系で表されたボクセルデータVDとを照合することで、点群データとボクセルとの対応付けを行う。そして、NDT位置算出ブロック36は、点群データと対応付けがなされた各ボクセルを対象として、マッチングを行うことで、対象船舶の時刻kでの位置・姿勢に関する推定パラメータを算出する。そして、NDT位置算出ブロック36は、デッドレコニングブロック31が出力するDR位置に対し、時刻kで求めた推定パラメータを適用することで定まる時刻kでの位置を、時刻kでの推定自己位置として出力する。
【0133】
なお、自己位置推定部17は、NDTスキャンマッチングに基づく位置推定に限らず、任意の移動体の位置推定手法に基づく位置推定を行ってもよい。例えば、自己位置推定部17は、特開2017-72422号公報に記載されるような、地図のランドマーク情報とライダ3の点群データとのマッチングに基づく自己位置推定を行ってもよい。
【0134】
次に、第2実施例における接岸場所検出部15及び接岸パラメータ算出部16の処理について補足説明する。接岸場所検出部15及び接岸パラメータ算出部16は、
図3に示す機能ブロックを夫々有し、
図14のフローチャートに基づき、法線ベクトルの算出、最近傍点の探索、対岸距離及び進入角度等の算出を行う。この場合、接岸場所検出部15及び接岸パラメータ算出部16は、地
図DB10と、自己位置推定部17が出力する推定自己位置とに基づき、ライダ3の計測範囲に接岸場所が含まれるか否か判定する。そして、接岸場所検出部15及び接岸パラメータ算出部16は、ライダ3の計測範囲に接岸場所が含まれる場合、対象船舶が接岸場所に近づいたと判定し、
図14のフローチャートの処理を開始する。
【0135】
この場合、接岸パラメータ算出部16の進入角度算出ブロック28は、自己位置推定部17が出力する推定自己位置の時間変化により、対象船舶の速度ベクトルを算出し、当該速度ベクトルに基づき、進入角度を算出してもよい。この場合、進入角度算出ブロック28は、例えば、ワールド座標系に変換されたライダ3の点群データに基づき算出された接岸場所の側面の平均法線ベクトルと、対象船舶の速度ベクトルとの内積に基づき、進入角度を算出する。また、接岸速度算出ブロック29は、対岸距離の時間変化に基づき接岸速度を算出する代わりに、対象船舶の速度ベクトルの法線ベクトル方向の成分を、接岸速度として算出してもよい。
【0136】
このように、第2実施例に係る情報処理装置1Aは、自己位置推定を行いつつ、接岸状況に関する情報を好適に取得することができる。
【0137】
<第3実施例>
第3実施例に係る情報処理装置1Aは、接岸場所の側面の法線ベクトルをライダ3の点群データに基づき算出する代わりに、地
図DB10に基づき接岸場所の側面の法線ベクトルを算出する点で、第2実施例に係る情報処理装置1Aと異なる。以後では、第2実施例と同一の構成要素については適宜同一の符号を付し、その説明を省略する。
【0138】
図17(A)は、接岸側の側面に防舷材が設けられた構造物50に接近した場合にライダ3により計測される点群データに基づき算出される構造物50の側面の法線ベクトル(例えば平均法線ベクトル)を明示した対象船舶周辺の俯瞰図である。
図17(A)の例では、対象船舶の近くに他船舶65が存在し、ライダ3の計測範囲内に他船舶65が含まれていることにより、他船舶65の外輪を計測した計測点の点群データが生成されている。また、防舷材の存在により接岸場所である構造物50の側面に対するライダ3の計測が妨げられているため、構造物の50の側面に対する計測点が比較的少なくなっている。なお、防舷材は黒色を有し、ライダ3のレーザ光をほとんど反射しないため、防舷材の位置をライダ3により計測することは難しい。
【0139】
この場合、ライダ3が生成する点群データに基づき構造物50の側面の法線ベクトル(例えば平均法線ベクトル)を算出した場合には、正確でない法線ベクトルが算出されてしまう。
【0140】
図17(B)は、地
図DB10に基づき算出される構造物50の側面の法線ベクトル(「地図法線ベクトル」とも呼ぶ。)を明示した対象船舶周辺の俯瞰図である。
図17(B)では、地
図DB10に構造物50の側面に対する3次元データが含まれており、地
図DB10に基づく3次元データが表す構造物50の側面の位置を矩形により示している。なお、この3次元データは、ボクセルデータとして地
図DB10に含まれてもよく、ボクセルデータ以外の任意のデータ形式により、接岸場所の側面の位置を表すデータとして地
図DB10に含まれてもよい。
【0141】
この場合、情報処理装置1Aは、地
図DB10に基づく構造物50の側面の3次元データに基づき、構造物50の側面の法線ベクトル(例えば平均法線ベクトル)を算出する。この場合、情報処理装置1Aは、ライダ3の計測範囲に存在する他船舶65や防舷材の影響を受けることなく、構造物50の側面の法線ベクトルを正確に算出することができる。そして、情報処理装置1Aは、正確に算出した構造物50の側面の法線ベクトルに基づき、第1実施例又は第2実施例と同様に、対岸距離、接岸速度、進入角度等の算出を行う。これにより、情報処理装置1Aは、対象船舶の接岸時に必要な情報を的確に取得することができる。
【0142】
なお、情報処理装置1Aは、本実施例では、視野・検出面特定ブロック21、法線数特定ブロック22、平均・分散算出ブロック23、接岸状況判定ブロック24の処理及びこれらの処理結果に基づく信頼度情報の生成を行わなくともよい。また、情報処理装置1Aは、近傍点探索ブロック25及び最近傍判定ブロック26が行う処理として、点群データに基づき近傍点の探索等を行う代わりに、推定自己位置と接岸場所の3次元データとに基づき、最近傍点の探索を行ってもよい。
【0143】
<第4実施例>
第4実施例では、地
図DB10には、接岸場所に設けられた案内板の情報が格納されており、情報処理装置1Aは、案内板の情報に基づき接岸場所の側面の法線ベクトル等を算出する点で、第2実施例又は第3実施例と異なる。以後では、第2実施例又は第3実施例と同一の構成要素については適宜同一の符号を付し、その説明を省略する。
【0144】
第4実施例に係る自己位置推定部17は、地
図DB10に登録された地物の位置情報と当該地物に対するライダ3の計測結果とのマッチングに基づく対象船舶の自己位置推定を行う。ここで、地
図DB10には、ランドマークデータが含まれている。ランドマークデータは、自己位置推定において基準とするランドマーク(地物)の位置、サイズ、向き等の属性情報を含んでいる。ここで、ランドマークデータには、少なくとも、接岸場所に設けられた案内板(基準物)の情報が含まれている。案内板は、再帰性反射部材を使用した固定物であり、接岸位置を示すランドマークとして機能する。
【0145】
図18は、第4実施例に係る自己位置推定部17の機能ブロックの一例である。自己位置推定部17は、機能的には、デッドレコニングブロック41と、位置予測ブロック42と、座標変換ブロック43と、ランドマーク探索・抽出ブロック44と、位置補正ブロック45とを有する。
【0146】
デッドレコニングブロック41は、デッドレコニングブロック31と同様に、速度センサ4及びIMU6が出力する信号と、直前の時刻での推定自己位置とに基づき、予測自己位置であるDR位置を算出する。また、これと同時に、予測自己位置の誤差分布に相当する共分散行列を、直前の時刻での共分散行列から算出する。また、座標変換ブロック43は、ライダ3から出力される点群データを、地
図DB10と同一の座標系であるワールド座標系に変換する。なお、自己位置推定部17は、
図16に示す機能ブロックと同様に、データ抽出ブロック33、水面位置算出ブロック34、水面反射データ除去ブロック35を有し、点群データから水面反射データを除去する処理等をさらに行ってもよい。
【0147】
ランドマーク探索・抽出ブロック44は、地
図DB10に登録された計測対象のランドマークの位置ベクトルと、座標変換ブロック43によりワールド座標系に変換されたライダ3の点群データとの対応付けを行う。この場合、ランドマーク探索・抽出ブロック44は、ランドマークデータLDと、位置予測ブロック42が出力する予測自己位置と、に基づき、ライダ3による計測範囲内でのランドマークの存否を判定する。そして、ランドマーク探索・抽出ブロック44は、計測可能なランドマークがランドマークデータLDに登録されている場合には、当該ランドマークの計測範囲において、所定の閾値以上の反射率となる高反射率の点群データの計測点の有無を判定する。そして、ランドマーク探索・抽出ブロック44は、このような計測点が存在する場合に、上述の対応付けができたと判定し、対応付けができたランドマークのライダ3による計測値「Z(t)」と、予測自己位置及びランドマークデータLDに基づくランドマークの位置を示すベクトル値である計測予測値「Z
-(t)」とを決定する。
【0148】
そして、自己位置推定部17の位置補正ブロック45は、以下の式(1)に示すように、計測値Z(t)と計測予測値Z-(t)との差分値にカルマンゲイン「K(t)」を乗算し、これを予測自己位置「X-(t)」に加えることで、推定自己位置「X^(t)」を算出する。
【0149】
【0150】
カルマンゲインK(t)等のパラメータについては、例えば拡張カルマンフィルタを用いた公知の自己位置推定技術と同様に算出することが可能である。なお、この自己位置推定の詳細については、例えば、特開2019-174675号公報等に記載されている。
【0151】
図19は、案内板66、67が設けられた構造物50に接岸する対象船舶の俯瞰図を示す。
図19の例では、情報処理装置1Aの自己位置推定部17は、ランドマークデータLDを参照し、接岸場所である構造物50の2か所に設置された案内板66、67の各々の位置情報を読み取る。そして、自己位置推定部17は、ライダ3による案内板66、67までの距離と角度の計測結果と、読み取った案内板66、67の位置情報とを用いて式(1)に基づくカルマンフィルタによる照合を行い、対象船舶の推定自己位置を算出する。また、接岸場所検出部15の法線ベクトル算出ブロック20は、ランドマークデータLDに含まれる案内板66、67の向き情報に基づき、構造物50の側面の法線ベクトルを認識する。なお、ここでは、構造物50の側面と案内板66、67の向きとが一致することから、法線ベクトル算出ブロック20は、案内板66、67の向き情報により特定される案内板66、67の法線ベクトルを、構造物50の側面の法線ベクトルとみなす。その後、情報処理装置1Aは、第2実施例又は第3実施例と同様に、法線ベクトルに基づく対岸距離、接岸速度、進入角度等の算出を行う。
【0152】
このように、第4実施例に係る情報処理装置1Aは、接岸場所への接岸時に高精度に自己位置を行いつつ、対象船舶の接岸時に必要な情報を的確に取得することができる。なお、案内板66、67の法線ベクトルは、ランドマークデータLDに格納されている向き情報から求めても良く、あるいは案内板66、67の検出データから算出しても良い。
【0153】
なお、上述した実施例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(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))を含む。
【0154】
以上、実施例を参照して本願発明を説明したが、本願発明は上記実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。すなわち、本願発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。