水中構造物の3次元モデルを構築する方法であって、ソーナー音波を水中構造物に向けて送出することと、前記水中構造物から反射されたソーナー音波を受信することと、前記水中構造物から反射された前記ソーナー音波から、前記水中構造物の3次元画像を提供するように構成された3Dデータ点を取得することと、取得した前記データ点から前記水中構造物の位置合わせモデルを生成することと、別のソーナー音波を水中構造物に向けて送出し、前記水中構造物から反射された、前記水中構造物の3次元画像へと処理されるように構成された別のソーナー音波を受信することと、受信した前記別の応答から、前記水中構造物の3次元画像を提供するように構成された新しい3Dデータ点を取得することと、取得した前記新しいデータ点のサンプルを前記位置合わせモデルに位置合わせすることと、前記新しいデータ点で前記水中構造物の3次元モデルを構築することと、を含む方法。前記水中構造物が静止していない、請求項1に記載の方法。前記水中航走体が、自律型潜水機および遠隔操作探査機のうちの1つである、請求項1に記載の方法。前記データ点を取得するステップと前記新しいデータ点を取得するステップとが、前記ソーナー音波を前記水中構造物に向けて送出することによって受信した応答をフィルタリングすることを含む、請求項1に記載の方法。前記位置合わせするステップが、複数の音響ソーナーパルスにより得られたデータ点に対して当てはめ処理を繰り返し行うことを含み、前記当てはめ処理は、サンプリングされた前記新しいデータ点を、生成した前記位置合わせモデルと対応するように調整することを含む、請求項1に記載の方法。複数の音響ソーナーパルスにより得られた前記データ点が、重複するデータ点を有する、請求項5に記載の方法。前記位置合わせモデルを生成するステップが、前記水中構造物の少なくとも初回のパスのループ閉合loopclosure処理をさらに含み、ループ閉合は誤差伝播errorpropagationを最小化する初期基準initialreferenceを設定するように構成された、請求項1に記載の方法。前記3次元モデルを構築するステップが、新しいデータ点の複数のサンプルを前記位置合わせモデルと位置合わせすることを含む、請求項1に記載の方法。各サンプルが、前記3次元画像に基づくソーナー波によって点検された領域の異なる視点viewpointを表す、請求項8に記載の方法。前記サンプルが、3次元画像へと処理されるように構成されたソーナー音波によって点検された領域のいくらかの重複を含む、請求項8に記載の方法。水中構造物の3次元モデルを構築するためのシステムであって、水中航走体に搭載され、ソーナー音波を水中構造物に向けて送出するように構成されたセンサであって、反射されたソーナー音波が前記水中構造物の3次元3D画像へと処理されるように構成されたセンサと、前記水中航走体に搭載され、前記センサからの応答を受信するように構成されたデータ記憶装置と、前記水中航走体に搭載されたデータ処理装置であって、前記データ記憶装置から、前記水中構造物の3次元画像を提供するように構成された3Dデータ点を取得するように構成され、取得した前記データ点から前記水中構造物の位置合わせモデルを生成するように構成され、追加の3Dソーナーが前記センサによって収集された後に前記データ記憶装置から前記水中構造物の3次元画像を提供するように構成された新しいデータ点を取得するように構成され、取得した前記新しいデータ点のサンプルを前記位置合わせモデルに位置合わせし、前記新しいデータ点で前記水中構造物の3次元モデルを構築するように構成されたデータ処理装置と、を含むシステム。図1は、既存の水中構造物の3次元モデルを構築するための方法10の一実施形態のフローチャートを示す。概して、本方法は、水中航走体の慣性航法機能を、特徴に基づくセンサ、例えばソーナー撮像センサと、水中構造物の位置合わせモデルつまり叩き台となるモデルworkingmodelを生成する処理装置と共に用いることによって実施される。新しく取得されたソーナーデータは位置合わせモデルに位置合わせされる。新しいデータが取得されるとこの叩き台となるモデルが更新および参照され、これにより水中構造物の3次元モデルが構築される。多くの状況において、モデル構築は、水中航走体上でリアルタイムで行うことができる。例えば、3Dソーナー探信音を発信し、それによるデータを受信し、データをフィルタリングし、それを前のモデルに位置合わせする処理が、約1秒以下で完了し得る。本方法10は、ソーナー音波を水中構造物に向けて送出することを含む。ソーナー音波の送出後、ソーナー音波を水中構造物に向けて送出したことによる応答が受信12される。例えば、12では、ソーナー波が当該構造物から反射されて受信される。受信されたソーナー音波はソーナーによって3次元画像へと処理される。すなわち、ソーナーは3次元3D撮像ソーナーであることが理解されるであろう。3D撮像ソーナーは、1つの送信ソーナーパルスつまり探信音の反射ソーナー信号から3D画像を生成するものであればいかなる3Dソーナーでもよい。適切な3Dソーナーの一例は、コーダオクトパスプロダクツCodaOctopusProductsから入手可能なコーダオクトパスエコースコープCodaOctopusEchoscopeである。上記3Dソーナーは、水中構造物を向くように調整および配置できるので、当該水中構造物に向かって探信音を発信でき、かつ、鉛直に対して様々な所望の角度を成す向きで、当該水中構造物から様々な視点viewpointおよび距離で配置できることが理解されるであろう。慣性航法装置inertialnavigationsystemが知られており、水中航走体の位置、向き、および速度例えば、動きの方向および速さを測定determineするのに用いられていることが理解されるであろう。慣性航法装置は、速度測定用に下方に向けられたドップラー速度ログDopplervelocitylogDVLユニットを含み得るが、慣性航法装置は位置、向き、および速度例えば、動きの方向および速さを測定できるものであればいかなる装置でもよいことが理解されるであろう。適切な慣性航法装置の一例は、キアフォット社KearfottCorporationから入手可能なSEADeVilである。応答が3次元撮像ソーナーによって受信されると、水中構造物の3次元画像を提供するように構成されたデータ点が取得14される。次いで、これらのデータ点が用いられることにより、叩き台となる位置合わせモデルが生成16され、このモデルが以降の3D画像の位置合わせにおいて水中構造物の先在するpreexisting3Dモデルとして用いられることになる。ステップ12およびステップ14を繰り返すことによって追加のソーナーデータが収集18され、新しい3Dデータ点が取得され、上記位置合わせモデルに位置合わせ20され、追加22される。位置合わせステップ20に関して、一実施形態においては、追加の3Dソーナーデータは位置合わせモデルと位置合わせされる。位置合わせの際、データを位置合わせモデルに当てはめるfitting反復処理が採用される。いくつかの実施形態において、この反復処理は、複数の3Dソーナー探信音により得られたデータに基づく。新しいデータを位置合わせモデルに位置合わせし、位置合わせされたデータを当該位置合わせモデルに追加することによって、水中構造物の3次元モデルが構築22される。位置合わせモデルは3次元水中構造物の叩き台となるモデルであるので、新しく入ってくるソーナーデータで構築中のモデルは位置合わせモデルを更新するために用いられ、よって、追加の収集データとの位置合わせに用いることができる。図2は、水中構造物の3次元モデルを構築するためのソーナーデータおよび位置向き姿勢情報の処理のための一実施形態のフローチャートである。ソーナーデータ100が適切なセンサによって獲得される。このセンサは、送信されたソーナーパルスつまり探信音毎に3D画像を生成する。この3D画像は点群pointcloud110とも呼ばれ、位置合わせブロック140へ送信される。最初の段階では、位置合わせモデル位置合わせモデルAlignmentModelは空であり、よって、収集された最初のソーナーデータを用いることにより最初の位置合わせモデルが生成される。追加のソーナーデータが収集されると、図3および図4においてさらに説明する反復処理を用いて位置合わせモデル144と位置合わせ140される。位置合わせAlign140は初期姿勢推定値をループ閉合LoopClosure300から取得することが理解されるであろう。追加のソーナーデータが収集されると、点群110が、位置合わせモデル144に位置合わせ140され、位置合わせ140によって計算された精緻な姿勢RefinedPoseによって変換Transform152される。変換152ブロックは、図3以下にさらに説明するに示すものと同じであってもよい。変換152は精緻な姿勢を用いることによりソーナー点を位置合わせモデル144に位置合わせされるように変換することと、図2および図3におけるブロック152は異なる姿勢入力を有している場合があるが、それらのブロックの機能は同じであることとが理解されるであろう。変換152された点群を、データ記憶装置である点群アーカイブ320に記憶することも可能である。位置合わせの際、ブロック140、ブロック152、およびブロック144は反復ループ処理図3および図4参照となり、新しいデータを位置合わせモデル144に位置合わせして当てはめる。ループ閉合300は、入ってくるソーナー点群110毎に推定姿勢をフィルタ312から受信し、位置合わせモデル144を参照することによって、ループ閉合が必要かブロック302が、この推定姿勢での3D画像が1つの3D画像においてまだ感知されていない位置合わせモデルの2つの部分のデータを提供し得るかどうかを決定する。ループ閉合が必要かブロック302がそうではないと決定した場合、推定姿勢は位置合わせ140へ渡される。ループ閉合が必要かブロック302が3D画像が位置合わせモデルの2つの既存部分のデータを提供しそうであると決定した場合、モデル特徴抽出304が位置合わせモデル144の上記2つの既存部分から顕著な特徴を抽出する。その後、対応付けMatch306がこれらの特徴を対応付け、2つのセグメントを位置合わせするために必要な姿勢補正値を計算する。姿勢補正308は、この姿勢補正値が閾値を超えているかどうかを確認し、そうでない場合、姿勢推定値を位置合わせ140へ送信する。姿勢補正値が閾値を超えている場合、姿勢補正308は、上記2つの既存のモデル部分を位置合わせさせるために調整する必要があるモデルの部分を特定し、それらを位置合わせさせるような姿勢調整値を推定し、この情報をモデルセグメント再構築310へ送信し、そこで、姿勢補正308からの補正された姿勢と点群アーカイブ320からの点群とを用いて調整される必要があるモデルの部分が再計算される。次いで、姿勢補正308は、調整された推定姿勢を位置合わせ140へ渡し、そこで、新しい3D画像が新しく調整された位置合わせモデルに位置合わせされる。ループ閉合300のモデル特徴抽出304および対応付け306機能は、図3で説明する位置合わせ140に基づき得ることが理解されるであろう。図示するように、フィルタ312は、精緻な姿勢を位置合わせ140から受信するだけでなく、位置および向きの推定値を例えば慣性航法装置のような航法装置から受信する。フィルタ312は、航走体の状態316姿勢およびその導関数derivativeの推定値を保持し、これらを用いて、ソーナーが3D画像を生成するたびにその時点のソーナー100のセンサの姿勢を予測318する。更新314は、航法装置navからの姿勢推定値と位置合わせ140からの姿勢推定値とを融合fuseして状態316を更新する。フィルタ312の1つの考えられ得る実施例は周知のカルマンフィルタKalmanfilterであることが理解されるべきである。フィルタ312からループ閉合300までの矢印を参照して、位置合わせは構築中のモデルに関して行われるため、各位置合わせにおける誤差が時間とともに蓄積する傾向があり得、そのことが位置合わせモデルに重大な誤差を生じさせ得ることが理解されるであろう。ループ閉合は、前に見たことがある領域が観測中である場合にそのことを認識する処理であり、代替の位置合わせ処理を用いることによりこの誤差を低減する。姿勢予測318によって計算された姿勢は、ループ閉合処理を適用するのに適切なタイミングであるかどうかを決定するために用いられる。位置合わせモデル144の生成およびその後の水中構造物の3次元モデルの構築における使用においては、3Dソーナーからの複数のソーナー探信音が収集されることが理解されるであろう。これらの探信音からの情報は、新しいデータ点の複数のサンプルに変えられ、それらが位置合わせモデルと位置合わせされる。新しいデータ点および各サンプルは、3Dソーナーによって点検される領域の異なる視点viewpointを表し得ることが理解されるであろう。サンプルがほとんどの領域においてかなり重複し得るため、位置合わせモデルにおける3Dデータに重大な冗長性が存在することも理解されるであろう。このような複数の冗長なサンプリングと重複する視野viewのサンプルとは、構築されるモデルの確信度および実効性を高めるのに役立ち得る。[位置合わせ当てはめ処理の詳細]さらに位置合わせ処理の詳細に関して、図3および図4は、ソーナー応答からの情報を位置合わせモデルに位置合わせする一実施形態のフローチャートを示す。一般に、図示した実施形態においては、取得された新しいデータ点のサンプルは位置合わせモデルに位置合わせされる。図示するように、位置合わせステップは、以下にさらに説明する、データ点の複数のサンプルに基づいて当てはめ処理を繰り返し行う反復的方法を含み、ここで、当てはめ処理は、サンプリングされたデータ点を3次元水中構造物の位置合わせモデルと対応するように調整することを含む。一般に、位置合わせ当てはめ処理は、新しいデータをモデルに記憶された以前のデータと位置合わせするためにソーナーの姿勢を推定することを含む。図3の詳細に関して、3Dソーナーからの応答は、上記位置合わせ処理を行うのに用いられる点群110図2も参照を提供する。点群110は、水中構造物の3D画像を表すデータ点を含んでいる。よくある高レベルのノイズと、3Dソーナー点群に発生することが知られている潜在的な有用ではない情報とのために、データ点は、状況によっては、位置合わせの前にフィルタリング142される。図4は、図1に示すデータ点取得ステップ14の一部として含まれ得るフィルタリング処理142の一実施形態のフローチャートを示す。フィルタリング処理142は、位置合わせの際に有用なデータ点を取得できるように、ソーナー音波を水中構造物に向けて送出したことにより受信された応答をフィルタリングすることを含む。ソーナー点群110からのデータは、一連のデータ処理フィルタリングステップを通じて入力され、その結果、フィルタリングされた点群160が得られる。図示した実施形態においては、点群110は、強度閾値フィルタ162へ入力される。一般に、フィルタリング処理142は、点群110についてモルフォロジー演算を行う。例えば、各範囲ビンRangeBinのモルフォロジー収縮164が行われ、次いで、隣接する範囲ビン166が結合される。囲み枠164および166は、フィルタリング処理142で用いられるある特定のモルフォロジー演算の非限定的な例示である。次に、非最大抑制NonmaximumSuppression168ステップが行われて、フィルタリングされた点群160が取得される。囲み枠168において、フィルタリング処理142は、ビーム幅低減/補償処理beamwidthreductioncompensationprocessingを行い得る。さらに図3を参照すると、フィルタリングされた点群160は、処理ループ144へと進む。一実施形態において、この処理ループ144は、ある数学的モデルのパラメータを外れ値outlierを含む1組の観測データから推定する反復的方法であるRANSACループ、すなわち、ランダムサンプルコンセンサスrandomsampleconsensusである。例えば、ループ144は、ある特定の確率で合理的な結果を生みだすという意味で非決定性アルゴリズムを表し、ここで、上記確率は反復回数が増えるにつれて高くなり得る。この場合、数学的モデルのパラメータは、水中構造物の先在するモデルに対する3Dソーナーセンサの位置および向き姿勢であり、観測データは、ソーナーにより得られた3D点である。基本前提は、観測データが、インライアinlier、すなわちいくつかの姿勢パラメータを持つ数学的モデルによって説明することができるデータと、そのようにして説明することができないデータである外れ値とからなるということである。本明細書に記載の方法では先在する3次元モデルが利用可能であるので、少数のインライアが与えられれば、このような反復的処理を用いて、データすなわち、3Dソーナーデータ点がそれに対応する最近傍のモデル点に最適に当てはめられるような姿勢を計算することによって姿勢のパラメータを推定することができる。図3に示すように、ループ144は、変換152、ランダムサンプリング154、および当てはめ156という処理関数を含むRANSACループである。変換152の部分では、点群が、初期姿勢130によって規定される座標系へ変換され、この変換により、先在する3次元モデルと略位置合わせされる。図3にさらに示すように、初期姿勢130が、変換152の部分へ入力される。場合によっては、初期姿勢130は、水中航走体の慣性航法装置から得られる位置および向きである。それ以降の回の反復においては、初期姿勢は、図3に示す手順が行われている間の、実行済みの1回目または任意の先行する回の位置合わせの更新情報による結果であり得る。先行する回の位置合わせは、水中航走体の慣性航法装置からの慣性速度または加速度などの入力のような他の計測結果に基づいて適宜調整され得ることが理解されるであろう。位置合わせモデルとも呼ばれる利用可能な先在する3Dモデルに関して、先在する3Dモデルは、146、156、および150で図に入力され、さらに以下のように説明される。ループ144のランダムサンプリング154の部分では、さらなる処理および先在する3次元モデルとの比較のために、点群から点のサンプルが取得される。ループ144の当てはめ156の部分は、ランダムサンプリング154によりサンプリングされた点が、先在する3次元モデルとそろうように調整される。すなわち、3Dソーナーデータ、例えばデータ点、の集合的な位置姿勢が、各点が先在する3次元モデルと位置合わせされるように、厳密に調整される。当てはめ156の部分では、各データ点について、モデル上の最近傍点を決定するために、1回または複数回の最近傍点計算が行われ得る。データ点と、各データ点に対するモデル上の最近傍点とは、データ点と各データ点に対するモデル上の最近傍点とを最適に位置合わせするような、初期姿勢130に対する補正を計算するために用いられる。上記のように、位置合わせ処理は、3Dソーナーデータのできる限り多くの点インライアを先在する3次元モデルと位置合わせするような、初期姿勢130に対する補正を決定するための反復的方法である。いくつかの実施形態において、これは、3Dソーナーからの1つの探信音または探知、例えば、1つの音響ソーナーパルスによるデータ点によって達成され、そこからデータ点サンプルが取り出される。必要に応じて3Dソーナーの複数の探信音を用いてもよいことも理解されるであろう。このため、変換152、ランダムサンプリング154、および当てはめ156という関数は、必要に応じて繰り返される144aことによりこれらの繰り返しにおいて求められた先在する3次元モデルと3Dソーナーデータとの最良の位置合わせが真に考えられる最良の位置合わせであるという信頼度を高めることができるループ144として構成されることが理解されるであろう。位置合わせステップは、多くの実施形態において、データ点の複数のサンプルに基づいてまたは複数の音響ソーナーパルスにより得られたデータ点に基づいて当てはめ処理を繰り返し行うことを含み、その場合、当てはめ処理は、サンプリングされたデータ点を水中構造物の先在する3次元モデルと位置合わせするように調整することを含む。適切な状況においては、ループ144aの対象となるデータ点の複数のサンプルまたは複数の音響ソーナーパルスにより得られたデータ点がしばしば、重複するデータ点を有し得、このような重複が、データ点とモデルとの考えられる最良の位置合わせが求められる確率を高めるのにさらに役立ち得ることが理解されるであろう。すなわち、当てはめは、データ点のサブサンプルを用いて行われる。当てはめでは、これらの点を用いて、モデルに対するセンサの姿勢を推定する。この推定された変換はすべてのデータ点に適用される。次いで、変換後の点が先在するモデルと比較され、データがどの程度対応しているかが決定される。位置合わせおよび当てはめを実施するのに用いられる適切な反復回数と重複の量とがいくつかの要因のバランスに依存し得ることも理解されるであろう。一部の要因は、限定されるわけではないが、例えば、採用された処理能力量、データ収集にどれだけの時間が使われるか、収集されたデータおよび位置合わせモデルの信頼性、水中航走体がどのように動いているか、ならびに、水中構造物の複雑性を含み得る。2つ以上の3Dソーナー探信音が採用される場合は、例えば、3Dソーナーの探信音発信頻度、初期姿勢130誤差の予想される経時的な増加、およびモデルの精度のような他の要因が、位置合わせ処理を何回反復する必要があるかを決定する際に考慮され得る。データ点の多くのランダムなサンプルの当てはめが行われた後、多数の解が取得され得る。図3は、誤差により解を順序づける146および最良の解を求める148の部分を示す。ループ144aによって提供された解は、最良の解が取得される例えば148でように順序づけされる例えば146で。最良の解が取得されると、この解のインライアのそれぞれに対して先在する3Dモデル上の最近傍点が決定され、これらのインライアを上記最近傍点と最も良く位置合わせするような初期姿勢に対する補正が、インライアでの当てはめ150において計算される。更新された姿勢は、例えば水中航走体の慣性航法装置へ送り返される。[モデル構築システム]本明細書に記載の水中構造物の3次元モデルの構築方法は、水中航走体に搭載された自律型システムに備えられ得ることが理解されるであろう。いくつかの実施形態において、水中航走体は、リアルタイムでモデルを構築するのに適切な機能を備えた自律型潜水機AUVである。但し、本システムは例えばROVまたは有人海洋船のような他の航走体に完全にまたは部分的に搭載されてもよいことが理解されるであろう。一実施形態において、本システムは、3Dソーナーセンサと慣性航法装置とを、水中構造物のモデル構築を実施するのに適切な処理機能と共に備える。図5は、水中構造物の3次元モデルを構築するためのシステム200の一実施形態の概略図を示す。適切な状況において、システム200は、水中航走体に搭載されてその一部をなし、例えば約1秒、場合によってはそれ未満のリアルタイム処理能力を有する。図示した実施形態において、3D撮像ソーナーセンサ210は、3Dソーナー探信音による応答をデータ記憶装置220へ電気的に伝送し得る。センサ210は、ソーナー音波を水中構造物に向けて送出し、水中構造物から反射されたソーナー音波を処理して当該構造物の3次元画像にするように構成される。データ記憶装置220は、センサから応答を受信するように構成される。データ処理装置230は、データ記憶装置220からデータ点を取得するように構成される。データ処理装置230は、例えば、任意の適切な処理ユニットであり得る。データ点は、水中構造物の3次元画像を提供するように構成される。処理装置230は、取得したデータ点に基づいて水中構造物の位置合わせモデル例えば、位置合わせモデル144を生成するように構成される。追加のソーナーデータがセンサ210によって収集されると、このデータは水中構造物の3次元モデルを構築するために位置合わせモデルに位置合わせされる。例えば、処理装置230は、追加の3次元画像に基づくソーナーがセンサによって収集された後で、新しいデータ点をデータ記憶装置から取得するように構成される。最初のデータ点と同様に、新しいデータ点は、水中構造物の3次元画像を提供するように構成される。処理装置230は、取得した新しいデータ点のサンプルを位置合わせモデルに位置合わせし、上記の位置合わせ技術を用いて水中構造物の3次元モデルを新しいデータ点で構築するように構成される。水中構造物に関して取得された情報は例えば慣性航法装置である航走体航法装置240を更新するために用いられ得ることが理解されるであろう。システム200の各構成要素は水中航走体によって電力を供給され得ることが理解されるであろう。上記の方法およびシステムを、3Dソーナー走査に基づいて既存の水中構造物の3次元モデルを構築するために用いることができる。このような用途は、限定されるわけではないが、商業用および軍用の両方の環境における海中構造物の点検および修理、港湾の点検、ならびに機雷探知および/または対策を含み得る。一実施形態においては、3Dソーナー走査により得られたデータが収集され、慣性航法により得られたデータが収集され、これらのデータは、走査された水中構造物の3D画像、つまり位置合わせモデルを生成するために記録および処理される。位置合わせモデルは水中構造物の叩き台となる3次元モデルであり、変化検出のためにこのモデルにさらなる3D画像データを位置合わせすることができる。データの収集、記録、および処理は、水中航走体に搭載された、リアルタイム処理機能を有するデータ処理用電子機器を用いて行われ得る。本明細書に記載のようなモデル構築のためのこのような方法およびシステムは、水中構造物に損傷、変形がないか点検する場合に有用であり得る。上記の方法およびシステムは、例えば、水中航走体が海底から遠く、例えば1000メートルよりも離れていてDVLなどの他の航法ツールを利用できないような状況において有用であり得る。他の特徴に基づくセンサは不要であることと、静止していない水中構造物に対する航行も本明細書に記載の方法およびシステムを用いて可能であり得ることとが、理解されるであろう。3Dソーナーを使用することにより、複雑な3D構造物を走査して、姿勢の完全な6自由度を提供することが可能になる。本出願において開示された例は、すべての点で例示であって限定的なものではないと考えられるべきである。本発明の範囲は、以上の説明によってではなく添付の特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内のすべての変更を包含するものである。