(57)【要約】【課題】飛行体が位置計測機能を有しない場合や位置計測の精度が低い場合でも、飛行体の位置を計測できることが望ましい。【解決手段】位置推定装置は、飛行体の存在位置の推定に関する処理を行う処理部を備える。処理部は、複数の撮像装置により飛行体が撮像された複数の撮像画像を取得し、各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得し、各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において飛行体が存在すると仮定された各仮定位置と、各撮像画像における飛行体が存在する画像位置と、に基づいて、各仮定位置と飛行体の存在位置との誤差を示す誤差スコアを算出し、誤差スコアに基づいて、実空間における飛行体の存在位置を推定する。【選択図】図２
2020071154.tif 000002
【特許請求の範囲】
【請求項１】
飛行体の存在位置を推定する位置推定装置であって、
前記飛行体の存在位置の推定に関する処理を行う処理部を備え、
前記処理部は、
複数の撮像装置により前記飛行体が撮像された複数の撮像画像を取得し、
各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得し、
各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において前記飛行体が存在すると仮定された各仮定位置と、各撮像画像における前記飛行体が存在する画像位置と、に基づいて、各仮定位置と前記飛行体の存在位置との誤差を示す誤差スコアを算出し、
前記誤差スコアに基づいて、実空間における前記飛行体の存在位置を推定する、
位置推定装置。
【請求項２】
前記処理部は、
前記複数の撮像装置により複数の時刻に前記飛行体が撮像された前記複数の撮像画像を取得し、
前記複数の時刻において前記誤差スコアを算出し、
前記誤差スコアに基づいて、実空間における前記飛行体の存在位置を推定する、
請求項１に記載の位置推定装置。
【請求項３】
前記処理部は、
前記撮像装置と前記飛行体との距離を取得し、
前記距離に基づいて、前記撮像画像についての前記誤差スコアの信頼度を導出し、
前記信頼度に基づいて前記誤差スコアを算出する、
請求項２に記載の位置推定装置。
【請求項４】
前記処理部は、
各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像に、実空間において前記飛行体が存在すると仮定された各仮定位置が投影された各投影仮定位置と、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像における前記飛行体が存在する各画像位置と、の差分に基づいて、前記誤差スコアを算出し、
前記誤差スコアが最小となる前記飛行体の仮定位置を、前記飛行体の存在位置として推定する、
請求項３に記載の位置推定装置。
【請求項５】
前記処理部は、
前記飛行体が備える位置計測部により計測された前記飛行体の第１の計測位置を取得し、
前記第１の計測位置に基づいて、前記誤差スコアを算出する、
請求項１〜４のいずれか１項に記載の位置推定装置。
【請求項６】
前記位置計測部は、複数のＧＰＳ（Global Positioning System）衛星からＧＰＳ信号を受信して前記第１の計測位置を取得し、
前記処理部は、前記位置計測部が受信不可能な前記ＧＰＳ衛星の数が多い程、前記誤差スコアに対する前記第１の計測位置の影響が大きくなるように、前記誤差スコアを算出する、
請求項５に記載の位置推定装置。
【請求項７】
前記処理部は、前記飛行体が物理的に移動可能な位置に基づいて、前記誤差スコアを算出する、
請求項１〜６のいずれか１項に記載の位置推定装置。
【請求項８】
前記処理部は、
前記飛行体が備える加速度計測器により計測された加速度に基づいて、前記飛行体の第２の計測位置を導出し、
前記第２の計測位置に基づいて、前記誤差スコアを算出する、
請求項１〜６のいずれか１項に記載の位置推定装置。
【請求項９】
飛行体の存在位置を推定する位置推定方法であって、
複数の撮像装置により前記飛行体が撮像された複数の撮像画像を取得するステップと、
各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得するステップと、
各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において前記飛行体が存在すると仮定された各仮定位置と、各撮像画像における前記飛行体が存在する画像位置と、に基づいて、各仮定位置と前記飛行体の存在位置との誤差を示す誤差スコアを算出するステップと、
前記誤差スコアに基づいて、実空間における前記飛行体の存在位置を推定するステップと、
を有する位置推定方法。
【請求項１０】
前記複数の撮像画像を取得するステップは、前記複数の撮像装置により複数の時刻に前記飛行体が撮像された前記複数の撮像画像を取得するステップを含み、
前記誤差スコアを算出するステップは、前記複数の時刻において前記誤差スコアを算出するステップを含み、
前記飛行体の存在位置を推定するステップは、前記誤差スコアに基づいて、実空間における前記飛行体の存在位置を推定するステップを含む、
請求項９に記載の位置推定方法。
【請求項１１】
前記誤差スコアを算出するステップは、
前記撮像装置と前記飛行体との距離を取得するステップと、
前記距離に基づいて、前記撮像画像についての前記誤差スコアの信頼度を導出するステップと、
前記信頼度に基づいて前記誤差スコアを算出するステップと、を含む、
請求項１０に記載の位置推定方法。
【請求項１２】
前記誤差スコアを算出するステップは、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像に、実空間において前記飛行体が存在すると仮定された各仮定位置が投影された各投影仮定位置と、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像における前記飛行体が存在する各画像位置と、の差分に基づいて、前記誤差スコアを算出するステップを含み、
前記飛行体の存在位置を推定するステップは、前記誤差スコアが最小となる前記飛行体の仮定位置を、前記飛行体の存在位置として推定するステップを含む、
請求項１１に記載の位置推定方法。
【請求項１３】
前記誤差スコアを算出するステップは、
前記飛行体が備える位置計測部により計測された前記飛行体の第１の計測位置を取得するステップと、
前記第１の計測位置に基づいて、前記誤差スコアを算出するステップと、を含む、
請求項９〜１２のいずれか１項に記載の位置推定方法。
【請求項１４】
前記第１の計測位置を取得するステップは、複数のＧＰＳ衛星からＧＰＳ信号を受信して前記第１の計測位置を取得するステップを含み、
前記誤差スコアを算出するステップは、前記位置計測部が受信不可能な前記ＧＰＳ衛星の数が多い程、前記誤差スコアに対する前記第１の計測位置の影響が大きくなるように、前記誤差スコアを算出するステップを含む、
請求項１３に記載の位置推定方法。
【請求項１５】
前記誤差スコアを算出するステップは、前記飛行体が物理的に移動可能な位置に基づいて、前記誤差スコアを算出するステップを含む、
請求項９〜１４のいずれか１項に記載の位置推定方法。
【請求項１６】
前記誤差スコアを算出するステップは、
前記飛行体が備える加速度計測器により計測された加速度に基づいて、前記飛行体の第２の計測位置を導出するステップと、
前記第２の計測位置に基づいて、前記誤差スコアを算出するステップと、を含む、
請求項９〜１４のいずれか１項に記載の位置推定方法。
【請求項１７】
飛行体の存在位置を推定する位置推定装置に、
複数の撮像装置により前記飛行体が撮像された複数の撮像画像を取得するステップと、
各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得するステップと、
各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において前記飛行体が存在すると仮定された各仮定位置と、各撮像画像における前記飛行体が存在する画像位置と、に基づいて、各仮定位置と前記飛行体の存在位置との誤差を示す誤差スコアを算出するステップと、
前記誤差スコアに基づいて、実空間における前記飛行体の存在位置を推定するステップと、
を実行させるためのプログラム。
【請求項１８】
飛行体の存在位置を推定する位置推定装置に、
複数の撮像装置により前記飛行体が撮像された複数の撮像画像を取得するステップと、
各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得するステップと、
各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において前記飛行体が存在すると仮定された各仮定位置と、各撮像画像における前記飛行体が存在する画像位置と、に基づいて、各仮定位置に前記飛行体の存在位置との誤差を示す誤差スコアを算出するステップと、
前記誤差スコアに基づいて、実空間における前記飛行体の存在位置を推定するステップと、
を実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、飛行体の存在位置を推定する位置推定装置、位置推定方法、プログラム、及び記憶媒体に関する。
【背景技術】
【０００２】
従来、無人飛行体は、ＧＰＳ（Global Positioning System）衛星から送信されるＧＰＳ信号を受信し、このＧＰＳ信号を基に位置を計算して自律飛行することが知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−１４７４６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、橋梁の下や室内等の環境では、無人飛行体は、ＧＰＳ信号を受信することができないことがあり、この場合、自律飛行を行うことが困難である。ＧＰＳ信号を受信できない場合でも、例えば、無人飛行体の速度を積分してその位置を推定である。しかし、無人飛行体の速度を積分してその位置を推定する場合、誤差が生じ易く（例えば１０ｍ当たりで２ｍの誤差）、推定される位置の精度が不十分である。また、物体の位置を検出する技術として、物体に光を照射して撮像することで物体の動きを捉える技術（モーションキャプチャ）がある。しかし、モーションキャプチャの場合、専用のマーカを使ってトラッキングする必要があり、使用する場面が限定される。また、ビーコンが発するビーコン信号を移動体が受信し、自機の位置を検出する技術がある。しかし、ビーコン信号を用いる場合、ビーコンを各場所に配置する必要があり、同様に、使用する場面が限定される。
【課題を解決するための手段】
【０００５】
一態様において、位置推定装置は、飛行体の存在位置を推定する位置推定装置であって、飛行体の存在位置を推定に関する処理を行う処理部を備え、処理部は、複数の撮像装置により飛行体が撮像された複数の撮像画像を取得し、各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得し、各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において飛行体が存在すると仮定された各仮定位置と、各撮像画像における飛行体が存在する画像位置と、に基づいて、各仮定位置と飛行体の存在位置との誤差を示す誤差スコアを算出し、誤差スコアに基づいて、実空間における飛行体の存在位置を推定する。
【０００６】
処理部は、複数の撮像装置により複数の時刻に飛行体が撮像された複数の撮像画像を取得し、複数の時刻において誤差スコアを算出し、誤差スコアに基づいて、実空間における飛行体の存在位置を推定してよい。
【０００７】
処理部は、撮像装置と飛行体との距離を取得し、距離に基づいて、撮像画像についての誤差スコアの信頼度を導出し、信頼度に基づいて誤差スコアを算出してよい。
【０００８】
処理部は、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像に、実空間において飛行体が存在すると仮定された各仮定位置が投影された各投影仮定位置と、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像における飛行体が存在する各画像位置と、の差分に基づいて、誤差スコアを算出し、誤差スコアが最小となる飛行体の仮定位置を、前記飛行体の存在位置として推定してよい。
【０００９】
処理部は、飛行体が備える位置計測部により計測された飛行体の第１の計測位置を取得し、第１の計測位置に基づいて、誤差スコアを算出してよい。
【００１０】
位置計測部は、複数のＧＰＳ（Global Positioning System）衛星からＧＰＳ信号を受信して第１の計測位置を取得し、処理部は、位置計測部が受信不可能なＧＰＳ衛星の数が多い程、誤差スコアに対する第１の計測位置の影響が大きくなるように、誤差スコアを算出してよい。
【００１１】
処理部は、飛行体が物理的に移動可能な位置に基づいて、誤差スコアを算出してよい。
【００１２】
処理部は、飛行体が備える加速度計測器により計測された加速度に基づいて、飛行体の第２の計測位置を導出し、第２の計測位置に基づいて、誤差スコアを算出してよい。
【００１３】
一態様において、位置推定方法は、飛行体の存在位置を推定する位置推定方法であって、複数の撮像装置により飛行体が撮像された複数の撮像画像を取得するステップと、各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得するステップと、各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において飛行体が存在すると仮定された各仮定位置と、各撮像画像における飛行体が存在する画像位置と、に基づいて、各仮定位置と飛行体の存在位置との誤差を示す誤差スコアを算出するステップと、誤差スコアに基づいて、実空間における飛行体の存在位置を推定するステップと、を含む。
【００１４】
複数の撮像画像を取得するステップは、複数の撮像装置により複数の時刻に飛行体が撮像された複数の撮像画像を取得するステップを含んでよい。誤差スコアを算出するステップは、複数の時刻において誤差スコアを算出するステップを含んでよい。飛行体の存在位置を推定するステップは、誤差スコアに基づいて、実空間における飛行体の存在位置を推定するステップを含んでよい。
【００１５】
誤差スコアを算出するステップは、撮像装置と飛行体との距離を取得するステップと、距離に基づいて、撮像画像についての誤差スコアの信頼度を導出するステップと、信頼度に基づいて誤差スコアを算出するステップと、を含んでよい。
【００１６】
誤差スコアを算出するステップは、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像に、実空間において飛行体が存在すると仮定された各仮定位置が投影された各投影仮定位置と、各撮像装置の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像における飛行体が存在する各画像位置と、の差分に基づいて、誤差スコアを算出するステップを含んでよい。飛行体の存在位置を推定するステップは、誤差スコアが最小となる飛行体の仮定位置を、飛行体の存在位置として推定するステップを含んでよい。
【００１７】
誤差スコアを算出するステップは、飛行体が備える位置計測部により計測された飛行体の第１の計測位置を取得するステップと、第１の計測位置に基づいて、誤差スコアを算出するステップと、を含んでよい。
【００１８】
第１の計測位置を取得するステップは、複数のＧＰＳ衛星からＧＰＳ信号を受信して計測位置を取得するステップを含んでよい。誤差スコアを算出するステップは、位置計測部が受信不可能なＧＰＳ衛星の数が多い程、誤差スコアに対する第１の計測位置の影響が大きくなるように、誤差スコアを算出するステップを含んでよい。
【００１９】
誤差スコアを算出するステップは、飛行体が物理的に移動可能な位置に基づいて、誤差スコアを算出するステップを含んでよい。
【００２０】
誤差スコアを算出するステップは、飛行体が備える加速度計測器により計測された加速度に基づいて、飛行体の第２の計測位置を導出するステップと、第２の計測位置に基づいて、誤差スコアを算出するステップと、を含んでよい。
【００２１】
一態様において、プログラムは、飛行体の存在位置を推定する位置推定装置に、複数の撮像装置により飛行体が撮像された複数の撮像画像を取得するステップと、各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得するステップと、各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において飛行体が存在すると仮定された各仮定位置と、各撮像画像における飛行体が存在する画像位置と、に基づいて、各仮定位置と飛行体の存在位置との誤差を示す誤差スコアを算出するステップと、誤差スコアに基づいて、実空間における飛行体の存在位置を推定するステップと、を実行させるためのプログラムである。
【００２２】
一態様において、記録媒体は、飛行体の存在位置を推定する位置推定装置に、複数の撮像装置により飛行体が撮像された複数の撮像画像を取得するステップと、各撮像装置の配置位置及び各撮像装置の撮像向きの情報を取得するステップと、各撮像装置の配置位置と、各撮像装置の撮像向きと、実空間において飛行体が存在すると仮定された各仮定位置と、各撮像画像における飛行体が存在する画像位置と、に基づいて、各仮定位置と飛行体の存在位置との誤差を示す誤差スコアを算出するステップと、誤差スコアに基づいて、実空間における飛行体の存在位置を推定するステップと、を実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体である。
【００２３】
なお、上記の発明の概要は、本開示の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００２４】
【図１】実施形態１における無人飛行体システムの概要の一例を示す図
【図２】飛行制御装置のハードウェア構成を示す図
【図３】無人航空機の具体的な外観の一例を示す図
【図４】無人航空機のハードウェア構成の一例を示すブロック図
【図５】再投影誤差を説明する図
【図６】実施形態２における飛行制御装置のハードウェア構成を示す図
【図７】実施形態３における飛行制御装置のハードウェア構成を示す図
【発明を実施するための形態】
【００２５】
以下、発明の実施形態を通じて本開示を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須とは限らない。
【００２６】
特許請求の範囲、明細書、図面、及び要約書には、著作権による保護の対象となる事項が含まれる。著作権者は、これらの書類の何人による複製に対しても、特許庁のファイル又はレコードに表示される通りであれば異議を唱えない。ただし、それ以外の場合、一切の著作権を留保する。
【００２７】
以下の実施形態では、飛行体として、無人航空機（ＵＡＶ：Unmanned Aerial Vehicle）を例示する。無人航空機は、空中を移動する航空機を含む。本明細書に添付する図面では、無人航空機を「ＵＡＶ」とも表記する。位置推定装置は、例えば、ＰＣ（Personal Computer）、サーバ、端末、各種の処理装置や制御装置である。位置推定方法は、位置推定装置における動作が規定されたものである。また、記録媒体は、プログラム（例えば位置推定装置に各種の処理を実行させるプログラム）が記録されたものである。
【００２８】
（実施形態１）
図１は、実施形態１における無人飛行体システム５の概要の一例を示す図である。無人飛行体システム５は、無人航空機１００がＧＰＳ信号を受信できない場所や受信し難い場所、例えば橋梁の下や室内で無人航空機１００が自律飛行する状況でも使用される。また、無人飛行体システム５は、無人航空機１００がＧＰＳ受信機を備えない場合に無人航空機１００が自律飛行する状況でも使用される。無人航空機１００は、飛行体の一例である。無人飛行体システム５は、複数のカメラ３００と、飛行制御装置８００と、無人航空機１００とを含む構成を有する。カメラ３００は、撮像装置の一例である。飛行制御装置８００は、位置推定装置の一例である。
【００２９】
複数のカメラ３００は、地上や水上の異なる場所に設置され、無人航空機１００を様々な方向から撮像する。複数のカメラ３００は、固定カメラでよいなお、複数のカメラ３００は、撮像位置や撮像方向を可変自在なカメラであってよい。複数のカメラ３００は、同じ場所や領域に設置されてもよいし、異なる場所や領域に設置されてもよい。カメラ３００は、処理部、通信部、記憶部を有してよい。
【００３０】
飛行制御装置８００は、複数のカメラ３００で撮像された画像を基に、無人航空機１００を追跡する処理を行う。また、飛行制御装置８００は、無人航空機１００が存在すると推定される位置を導出するため、無人航空機１００が存在すると仮定された各仮定位置と無人航空機１００の実際の存在位置との誤差を示す誤差スコアが最小となるように、最適化処理を行う。図１では、自律飛行している無人航空機１００を複数のカメラ３００が撮像する状況が想定される。なお、無人航空機１００は、１機に限らず、複数機存在してもよい。
【００３１】
図２は、飛行制御装置８００のハードウェア構成を示す図である。飛行制御装置８００は、追跡フロントエンド４００と、処理バックエンド５００と、ＰＩＤ（Proportional-Integral-Differentia）制御装置７００と、を含む。追跡フロントエンド４００の処理部及び処理バックエンド５００の処理部の少なくとも１つは、位置推定装置の処理部の一例である。なお、追跡フロントエンド４００と処理バックエンド５００とＰＩＤ制御装置７００とは、１台の装置に設けられてもよいし、複数の装置に分散して設けられてもよい。飛行制御装置８００の全体又は一部は、ＰＣ、サーバ、端末、各種の処理装置や制御装置であってよい。飛行制御装置８００の各部（追跡フロントエンド４００、処理バックエンド５００、ＰＩＤ制御装置７００）は、同じ場所や領域に設置されてもよいし、異なる場所や領域に設置されてもよい。
【００３２】
追跡フロントエンド４００は、複数のカメラ３００による各撮像画像に映る無人航空機１００のフレーム上（撮像画像中）の画素位置を取得し、処理バックエンド５００に送信する。追跡フロントエンド４００は、時系列で無人航空機１００が位置する画素位置を検出することで、無人航空機１００の動きを追跡可能であり、撮像画像において無人航空機１００の動きを追跡可能である。また、追跡フロントエンド４００は、各カメラ３００の姿勢の情報を処理バックエンド５００に送信する。各カメラ３００の姿勢は、各カメラ３００の配置位置及び撮像向きにより規定されてよい。追跡フロントエンド４００は、通信部４０５、処理部４１０、および記憶部４２０を有する。なお、各カメラ３００の姿勢が固定の場合、処理バックエンド５００に一度送信されればよいし、各カメラ３００の姿勢が可変の場合、処理バックエンド５００に逐次送信されてよい。
【００３３】
処理部４１０は、同一のタイミングで複数のカメラ３００によって撮像された、各撮像画像に映る無人航空機１００のフレーム上の画素位置を、観測位置として取得する。処理部４１０は、無人航空機１００の画素位置を３０ｆｐｓもしくは６０ｆｐｓの頻度で取得してよい。また、処理部４１０は、各カメラ３００の姿勢の情報を、各カメラ３００や外部サーバ等から取得する。なお、カメラ３００の姿勢が固定されている場合、処理部４１０は、カメラ３００の姿勢情報を記憶部４２０に保持させておいてよい。
【００３４】
通信部４０５は、複数のカメラ３００及び処理バックエンド５００と通信を行う。通信方式には、専用線、有線ＬＡＮ（Local Area Network）、無線ＬＡＮ、モバイル通信等が用いられる。通信部４０５は、複数のカメラ３００から撮像画像を受信する。通信部４０５は、複数のカメラ３００による撮像画像に映る無人航空機１００の観測位置を処理バックエンド５００に送信する。また、通信部４０５は、複数のカメラ３００の姿勢の情報を処理バックエンド５００に送信する。
【００３５】
記憶部４２０は、処理部４１０のワーキングメモリとして使用されてよい。
【００３６】
処理バックエンド５００は、追跡フロントエンド４００から取得された、無人航空機１００の各画素位置（観測位置）を基に、最適化処理を行う。処理バックエンド５００は、通信部５０５、処理部５１０、および記憶部５２０を有する。最適化処理は、例えば後述する式（１）に示す誤差スコアの値を最小化するための処理である。具体的には、最適化処理は、無人航空機１００が存在すると仮定された仮定位置が撮像画像に投影された場合の投影仮定位置と、撮像画像に実際に映り込んだ画像位置（観測位置）と、の差分（再投影誤差）を最小化するための処理である。仮定位置は、３次元空間において任意に変更されてもよい。最適化処理の結果、コストが最小となった無人航空機１００の仮定位置が、無人航空機１００が存在すると推定される位置（推定位置）とされてよい。再投影誤差は、複数のカメラ３００により撮像された複数の撮像画像について合算されてよく、時系列に撮像された複数の撮像画像について合算されてよい。
【００３７】
処理部５１０は、複数の撮像画像に映る無人航空機１００の画素位置及び複数のカメラ３００の姿勢を基に、無人航空機１００の位置を推定してよい。処理部５１０は、複数の撮像画像についての投影仮定位置及び観測位置、並びに複数のカメラ３００の姿勢を基に、無人航空機１００の位置を推定してよい。つまり、処理部５１０は、カメラ３００による無人航空機１００の追跡結果に基づき、再投影誤差を最適化（最小化）することで無人航空機１００の位置を推定してよい。
【００３８】
通信部５０５は、追跡フロントエンド４００及びＰＩＤ制御装置７００と通信を行う。通信方式には、専用線、有線ＬＡＮ、無線ＬＡＮ、モバイル通信等が用いられる。通信部５０５は、観測位置及び各カメラ３００の姿勢の情報を追跡フロントエンド４００から受信する。通信部５０５は、最適化された無人航空機１００の推定位置の情報をＰＩＤ制御装置７００に送信する。なお、各カメラ３００の姿勢の情報は、各カメラ３００から直接取得されなくてもよく、例えば、記憶部５２０に予め保持されていたり、外部サーバから取得されたりしてもよい。
【００３９】
記憶部５２０は、処理部５１０のワーキングメモリとして使用されてよい。
【００４０】
ＰＩＤ制御装置７００は、無人航空機１００の推定位置の情報を基に、飛行経路に沿って無人航空機１００を飛行させるためのＰＩＤ（P:Proportional I:Integral D:Differential）制御を行う。飛行経路は、予め定められた飛行経路でよい。ＰＩＤ制御装置７００は、無人航空機１００が飛行するための飛行パラメータの少なくとも一部の情報を生成し、無人航空機１００に送信してよい。飛行パラメータとして、無人航空機１００の飛行位置、飛行高度、飛行速度、飛行加速度（例えば前後、左右、及び上下の３軸方向の加速度）、機体の向きを表すピッチ角、ヨー角、ロール角、等が挙げられる。ＰＩＤ制御装置７００は、通信部７０５、処理部７１０、及び記憶部７２０を有する。飛行パラメータは、目標状態（例えば目標となる無人航空機１００の飛行位置、飛行高度、飛行速度、飛行加速度、ピッチ角、ヨー角、ロール角、等）と実際の状態（例えば現在の推定された無人航空機１００の飛行位置、飛行高度、飛行速度、飛行加速度、ピッチ角、ヨー角、ロール角、等）との差分を埋めるためのデータであってよい。
【００４１】
処理部７１０は、無人航空機１００の最適化された推定位置を飛行経路に沿った目標位置に近づけるために、ＰＩＤ制御を行い、飛行パラメータを生成してよい。
【００４２】
通信部７０５は、処理バックエンド５００及び無人航空機１００と通信を行う。通信部７０５は、処理部７１０で生成された飛行パラメータを無人航空機１００に送信する。処理バックエンド５００及び無人航空機１００との通信方式には、専用線、有線ＬＡＮ、無線ＬＡＮ、モバイル通信等が用いられる。
【００４３】
記憶部７２０は、処理部７１０のワーキングメモリとして使用されてよい。記憶部７２０は、飛行経路等のデータ、無人航空機１００の飛行に関する目標の状態のデータ、実際の状態のデータ、を記憶してよい。これらのデータは、例えば無人航空機１００や無人航空機１００の飛行の制御を指示する端末から、通信部７０５を介して取得されてよい。
【００４４】
図３は、無人航空機１００の具体的な外観の一例を示す図である。図３には、無人航空機１００が移動方向ＳＴＶ０に飛行する場合の斜視図が示される。無人航空機１００は移動体の一例である。
【００４５】
図３に示すように、地面と平行であって移動方向ＳＴＶ０に沿う方向にロール軸（ｘ軸参照）が設定される。この場合、地面と平行であってロール軸に垂直な方向にピッチ軸（ｙ軸参照）が設定され、更に、地面に垂直であってロール軸及びピッチ軸に垂直な方向にヨー軸（ｚ軸参照）が設定される。
【００４６】
無人航空機１００は、ＵＡＶ本体１０２と、ジンバル２００と、撮像部２２０と、複数の撮像部２３０とを含む構成である。
【００４７】
ＵＡＶ本体１０２は、複数の回転翼（プロペラ）を備える。ＵＡＶ本体１０２は、複数の回転翼の回転を制御することにより無人航空機１００を飛行させる。ＵＡＶ本体１０２は、例えば４つの回転翼を用いて無人航空機１００を飛行させる。回転翼の数は、４つに限定されない。また、無人航空機１００は、回転翼を有さない固定翼機でよい。
【００４８】
撮像部２２０は、所望の撮像範囲に含まれる被写体（例えば、空撮対象となる上空の様子、山や川等の景色、地上の建物）を撮像する撮像用のカメラである。
【００４９】
複数の撮像部２３０は、無人航空機１００の飛行を制御するために無人航空機１００の周囲を撮像するセンシング用のカメラである。２つの撮像部２３０が、無人航空機１００の機首である正面に設けられてよい。さらに、他の２つの撮像部２３０が、無人航空機１００の底面に設けられてよい。正面側の２つの撮像部２３０はペアとなり、いわゆるステレオカメラとして機能してよい。底面側の２つの撮像部２３０もペアとなり、ステレオカメラとして機能してよい。複数の撮像部２３０により撮像された画像に基づいて、無人航空機１００の周囲の３次元空間データが生成されてよい。なお、無人航空機１００が備える撮像部２３０の数は４つに限定されない。無人航空機１００は、少なくとも１つの撮像部２３０を備えていればよい。無人航空機１００は、無人航空機１００の機首、機尾、側面、底面、及び天井面のそれぞれに少なくとも１つの撮像部２３０を備えてよい。撮像部２３０で設定できる画角は、撮像部２２０で設定できる画角より広くてよい。撮像部２３０は、単焦点レンズ又は魚眼レンズを有してよい。
【００５０】
図４は、無人航空機１００のハードウェア構成の一例を示すブロック図である。無人航空機１００は、ＵＡＶ制御部１１０と、通信インタフェース１５０と、メモリ１６０と、ストレージ１７０と、ジンバル２００と、回転翼機構２１０と、撮像部２２０と、撮像部２３０と、ＧＰＳ受信機２４０と、慣性計測装置（ＩＭＵ：Inertial Measurement Unit）２５０と、磁気コンパス２６０と、気圧高度計２７０と、超音波センサ２８０と、レーザー測定器２９０と、を含む構成である。ＧＰＳ受信機２４０は、位置計測部の一例である。
【００５１】
なお、ここでは無人航空機１００がＧＰＳ受信機２４０を備えているが、ＧＰＳ受信機２４０が受信するＧＰＳ信号の精度が低いことを想定している。また、無人航空機１００が、ＧＰＳ受信機２４０を備えずに、ＧＰＳ信号を全く取得できないことを想定してもよい。
【００５２】
ＵＡＶ制御部１１０は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）又はＤＳＰ（Digital Signal Processor）を用いて構成される。ＵＡＶ制御部１１０は、無人航空機１００の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。
【００５３】
ＵＡＶ制御部１１０は、メモリ１６０に格納されたプログラムに従って無人航空機１００の飛行を制御する。ＵＡＶ制御部１１０は、画像を空撮してよい。ＵＡＶ制御部１１０は、通信インタフェース１５０を介して、ＰＩＤ制御装置７００から飛行パラメータの情報を取得してよい。ＵＡＶ制御部１１０は、取得された飛行パラメータを基に、無人航空機１００の飛行を制御してよい。
【００５４】
ＵＡＶ制御部１１０は、無人航空機１００の位置を示す位置情報を取得する。ＵＡＶ制御部１１０は、ＧＰＳ受信機２４０から、無人航空機１００が存在する緯度、経度及び高度を示す位置情報を取得してよい。ＵＡＶ制御部１１０は、ＧＰＳ受信機２４０から無人航空機１００が存在する緯度及び経度を示す緯度経度情報、並びに気圧高度計２７０から無人航空機１００が存在する高度を示す高度情報をそれぞれ位置情報として取得してよい。ＵＡＶ制御部１１０は、超音波センサ２８０による超音波の放射点と超音波の反射点との距離を高度情報として取得してよい。
【００５５】
ＵＡＶ制御部１１０は、磁気コンパス２６０から無人航空機１００の向きを示す向き情報を取得してよい。向き情報は、例えば無人航空機１００の機首の向きに対応する方位で示されてよい。
【００５６】
ＵＡＶ制御部１１０は、撮像部２２０が撮像すべき撮像範囲を撮像する時に無人航空機１００が存在すべき位置を示す位置情報を取得してよい。ＵＡＶ制御部１１０は、無人航空機１００が存在すべき位置を示す位置情報をメモリ１６０から取得してよい。ＵＡＶ制御部１１０は、無人航空機１００が存在すべき位置を示す位置情報を、通信インタフェース１５０を介して他の装置から取得してよい。ＵＡＶ制御部１１０は、３次元地図データベースを参照して、無人航空機１００が存在可能な位置を特定して、その位置を無人航空機１００が存在すべき位置を示す位置情報として取得してよい。ＵＡＶ制御部１１０は、無人航空機１００が存在すべき位置を示す位置情報を、通信インタフェース１５０を介して飛行制御装置８００（例えば処理バックエンド５００）に送信してよい。無人航空機１００が存在すべき位置を示す位置情報は、予定される飛行経路の情報に含まれてよい。
【００５７】
ＵＡＶ制御部１１０は、撮像部２２０及び撮像部２３０のそれぞれの撮像範囲を示す撮像範囲情報を取得してよい。ＵＡＶ制御部１１０は、撮像範囲を特定するためのパラメータとして、撮像部２２０及び撮像部２３０の画角を示す画角情報を撮像部２２０及び撮像部２３０から取得してよい。ＵＡＶ制御部１１０は、撮像範囲を特定するためのパラメータとして、撮像部２２０及び撮像部２３０の撮像方向を示す情報を取得してよい。ＵＡＶ制御部１１０は、例えば撮像部２２０の撮像方向を示す情報として、ジンバル２００から撮像部２２０の姿勢の状態を示す姿勢情報を取得してよい。撮像部２２０の姿勢情報は、ジンバル２００のピッチ軸及びヨー軸の基準回転角度からの回転角度を示してよい。
【００５８】
ＵＡＶ制御部１１０は、撮像範囲を特定するためのパラメータとして、無人航空機１００が存在する推定位置を示す推定位置情報を取得してよい。ＵＡＶ制御部１１０は、撮像部２２０及び撮像部２３０の画角及び撮像方向、並びに無人航空機１００の推定位置に基づいて、撮像部２２０が撮像する地理的な範囲を示す撮像範囲を画定し、撮像範囲情報を生成することで、撮像範囲情報を取得してよい。
【００５９】
ＵＡＶ制御部１１０は、メモリ１６０から撮像範囲情報を取得してよい。ＵＡＶ制御部１１０は、通信インタフェース１５０を介して撮像範囲情報を取得してよい。
【００６０】
ＵＡＶ制御部１１０は、ジンバル２００、回転翼機構２１０、撮像部２２０及び撮像部２３０を制御する。ＵＡＶ制御部１１０は、撮像部２２０の撮像方向又は画角を変更することによって、撮像部２２０の撮像範囲を制御してよい。ＵＡＶ制御部１１０は、ジンバル２００の回転機構を制御することで、ジンバル２００に支持されている撮像部２２０の撮像範囲を制御してよい。
【００６１】
撮像範囲とは、撮像部２２０又は撮像部２３０により撮像される地理的な範囲をいう。撮像範囲は、緯度、経度、及び高度で定義される。撮像範囲は、緯度、経度、及び高度で定義される３次元空間データにおける範囲でよい。撮像範囲は、緯度及び経度で定義される２次元空間データにおける範囲でよい。撮像範囲は、撮像部２２０又は撮像部２３０の画角及び撮像方向、並びに無人航空機１００が存在する位置に基づいて特定されてよい。撮像部２２０及び撮像部２３０の撮像方向は、撮像部２２０及び撮像部２３０の撮像レンズが設けられた正面が向く方位と俯角とから定義されてよい。撮像部２２０の撮像方向は、無人航空機１００の機首の方位と、ジンバル２００に対する撮像部２２０の姿勢の状態とから特定される方向でよい。撮像部２３０の撮像方向は、無人航空機１００の機首の方位と、撮像部２３０が設けられた位置とから特定される方向でよい。撮像方向は、撮像向きと一致してよい。
【００６２】
ＵＡＶ制御部１１０は、複数の撮像部２３０により撮像された複数の画像を解析することで、無人航空機１００の周囲の環境を特定してよい。ＵＡＶ制御部１１０は、無人航空機１００の周囲の環境に基づいて、例えば障害物を回避して飛行を制御してよい。
【００６３】
ＵＡＶ制御部１１０は、無人航空機１００の周囲に存在するオブジェクトの立体形状（３次元形状）を示す立体情報（３次元情報）を取得してよい。オブジェクトは、例えば、建物、道路、車、木等の風景の一部でよい。立体情報は、例えば、３次元空間データである。ＵＡＶ制御部１１０は、複数の撮像部２３０から得られたそれぞれの画像から、無人航空機１００の周囲に存在するオブジェクトの立体形状を示す立体情報を生成することで、立体情報を取得してよい。ＵＡＶ制御部１１０は、メモリ１６０又はストレージ１７０に格納された３次元地図データベースを参照することにより、無人航空機１００の周囲に存在するオブジェクトの立体形状を示す立体情報を取得してよい。ＵＡＶ制御部１１０は、ネットワーク上に存在するサーバが管理する３次元地図データベースを参照することで、無人航空機１００の周囲に存在するオブジェクトの立体形状に関する立体情報を取得してよい。
【００６４】
ＵＡＶ制御部１１０は、回転翼機構２１０を制御することで、無人航空機１００の飛行を制御する。つまり、ＵＡＶ制御部１１０は、回転翼機構２１０を制御することにより、無人航空機１００の緯度、経度、及び高度を含む位置を制御する。ＵＡＶ制御部１１０は、無人航空機１００の飛行を制御することにより、撮像部２２０の撮像範囲を制御してよい。ＵＡＶ制御部１１０は、撮像部２２０が備えるズームレンズを制御することで、撮像部２２０の画角を制御してよい。ＵＡＶ制御部１１０は、撮像部２２０のデジタルズーム機能を利用して、デジタルズームにより、撮像部２２０の画角を制御してよい。
【００６５】
撮像部２２０が無人航空機１００に固定され、撮像部２２０を動かせない場合、ＵＡＶ制御部１１０は、特定の日時に特定の位置に無人航空機１００を移動させることにより、所望の環境下で所望の撮像範囲を撮像部２２０に撮像させてよい。あるいは撮像部２２０がズーム機能を有さず、撮像部２２０の画角を変更できない場合でも、ＵＡＶ制御部１１０は、特定された日時に、特定の位置に無人航空機１００を移動させることで、所望の環境下で所望の撮像範囲を撮像部２２０に撮像させてよい。
【００６６】
通信インタフェース１５０は、他の通信装置（例えば無人航空機１００の飛行の制御を指示する端末や送信機（リモートコントローラ））と通信する。通信インタフェース１５０は、任意の無線通信方式により無線通信してよい。通信インタフェース１５０は、任意の有線通信方式により有線通信してよい。通信インタフェース１５０は、空撮画像や空撮画像に関する付加情報（メタデータ）を、端末に送信してよい。通信インタフェース１５０は、飛行制御装置８００に含まれる少なくとも１つの装置（例えば処理バックエンド５００、ＰＩＤ制御装置７００）と通信してよい。
【００６７】
メモリ１６０は、ＵＡＶ制御部１１０がジンバル２００、回転翼機構２１０、撮像部２２０、撮像部２３０、ＧＰＳ受信機２４０、慣性計測装置２５０、磁気コンパス２６０、気圧高度計２７０、超音波センサ２８０、及びレーザー測定器２９０を制御するのに必要なプログラム等を格納する。メモリ１６０は、コンピュータ読み取り可能な記録媒体でよく、ＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）、ＥＰＲＯＭ（Erasable Programmable Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）、及びＵＳＢ（Universal Serial Bus）メモリ等のフラッシュメモリの少なくとも１つを含んでよい。メモリ１６０は、無人航空機１００から取り外し可能であってよい。メモリ１６０は、作業用メモリとして動作してよい。
【００６８】
ストレージ１７０は、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、ＳＤカード、ＵＳＢメモリ、その他のストレージの少なくとも１つを含んでよい。ストレージ１７０は、各種情報、各種データを保持してよい。ストレージ１７０は、無人航空機１００から取り外し可能であってよい。ストレージ１７０は、空撮画像を記録してよい。
【００６９】
メモリ１６０又はストレージ１７０は、端末又は無人航空機１００により生成された空撮位置や空撮経路（飛行経路）の情報を保持してよい。空撮位置や空撮経路の情報は、無人航空機１００により予定された空撮に係る空撮パラメータ、又は、無人航空機１００により予定された飛行に係る飛行パラメータ、の１つとして、ＵＡＶ制御部１１０により設定されてよい。この設定情報は、メモリ１６０又はストレージ１７０に保持されてよい。
【００７０】
ジンバル２００は、ヨー軸、ピッチ軸、及びロール軸を中心に撮像部２２０を回転可能に支持してよい。ジンバル２００は、ヨー軸、ピッチ軸、及びロール軸の少なくとも１つを中心に撮像部２２０を回転させることで、撮像部２２０の撮像方向を変更してよい。
【００７１】
回転翼機構２１０は、複数の回転翼と、複数の回転翼を回転させる複数の駆動モータと、を有する。回転翼機構２１０は、ＵＡＶ制御部１１０により回転を制御されることにより、無人航空機１００を飛行させる。
【００７２】
撮像部２２０は、所望の撮像範囲の被写体を撮像して撮像画像のデータを生成する。撮像部２２０の撮像により得られた画像データ（例えば空撮画像）は、撮像部２２０が有するメモリ、又はストレージ１７０に格納されてよい。
【００７３】
撮像部２３０は、無人航空機１００の周囲を撮像して撮像画像のデータを生成する。撮像部２３０の画像データは、ストレージ１７０に格納されてよい。
【００７４】
ＧＰＳ受信機２４０は、複数の航法衛星（つまり、ＧＰＳ衛星）から発信された時刻及び各ＧＰＳ衛星の位置（座標）を示す複数の信号（ＧＰＳ信号）を受信する。ＧＰＳ受信機２４０は、受信された複数の信号に基づいて、ＧＰＳ受信機２４０の位置（つまり、無人航空機１００の位置）を算出する。ＧＰＳ受信機２４０は、無人航空機１００の位置情報をＵＡＶ制御部１１０に出力する。なお、ＧＰＳ受信機２４０の位置情報の算出は、ＧＰＳ受信機２４０の代わりにＵＡＶ制御部１１０により行われてよい。この場合、ＵＡＶ制御部１１０には、ＧＰＳ受信機２４０が受信した複数の信号に含まれる時刻及び各ＧＰＳ衛星の位置を示す情報が入力される。
【００７５】
慣性計測装置２５０は、無人航空機１００の姿勢を検出し、検出結果をＵＡＶ制御部１１０に出力する。慣性計測装置２５０は、無人航空機１００の姿勢として、無人航空機１００の前後、左右、及び上下の３軸方向の加速度と、ピッチ軸、ロール軸、及びヨー軸の３軸方向の角速度とを検出してよい。
【００７６】
磁気コンパス２６０は、無人航空機１００の機首の方位を検出し、検出結果をＵＡＶ制御部１１０に出力する。
【００７７】
気圧高度計２７０は、無人航空機１００が飛行する高度を検出し、検出結果をＵＡＶ制御部１１０に出力する。
【００７８】
超音波センサ２８０は、超音波を放射し、地面や物体により反射された超音波を検出し、検出結果をＵＡＶ制御部１１０に出力する。検出結果は、無人航空機１００から地面までの距離つまり高度を示してよい。検出結果は、無人航空機１００から物体（被写体）までの距離を示してよい。
【００７９】
レーザー測定器２９０は、物体にレーザー光を照射し、物体で反射された反射光を受光し、反射光により無人航空機１００と物体（被写体）との間の距離を測定する。レーザー光による距離の測定方式は、一例として、タイムオブフライト方式でよい。
【００８０】
なお、図４では無人航空機１００がＧＰＳ受信機２４０を備えることを例示したが、無人航空機１００がＧＰＳ受信機２４０を備えなくてもよい。この場合でも、無人航空機１００は、ＧＰＳ受信機２４０を備える場合も備えない場合も、無人航空機１００の推定位置を基に、飛行制御可能である。
【００８１】
次に、無人飛行体システム５において、無人航空機１００の自律飛行を支援する動作を示す。ここでは、無人航空機１００が、ＧＰＳ信号を受信困難な空間、例えば橋梁の下や室内等を飛行している状況を想定する。つまり、無人航空機１００の位置計測の精度が低いことを想定してよい。また、無人航空機１００がＧＰＳ受信機２４０を備えなくてもよく、つまり無人航空機１００が位置計測機能を有しないことを想定してよい。複数のカメラ３００は、無人航空機１００を撮像可能な地面等の各場所に配置される。
【００８２】
図５は、再投影誤差を説明する図である。図５では、無人航空機１００の実際の位置、無人航空機１００の仮定位置ｘｔ（ｘｔとも記載する）、複数のカメラ３００による撮像画像の投影面における投影仮定位置π（ｃｊ，ｘｔ）、観測位置ｏｊｔ、が示されている。なお、ｊ、ｔは変数であり、仮定位置ｘｔは位置が可変である。
【００８３】
複数のカメラ３００は、例えば上空を飛行する無人航空機１００をそれぞれ撮像する。１台のカメラによる撮像画像では、無人航空機１００のフレーム上の画素位置が平面的に認識可能であるが、撮像画像の画像面（投影面）に対する奥行き方向の位置の認識が困難である。このため、無人航空機１００を異なる角度から撮像可能なカメラ３００が複数設けられる。
【００８４】
図５では、カメラ姿勢ｃｊ（ｃｊとも記載する）のカメラ３００による撮像画像のフレームＧＭ１、及びカメラ姿勢ｃｊ−１のカメラ３００による撮像画像のフレームＧＭ２が示されている。フレームＧＭ１には、無人航空機１００を観測した画素位置である観測位置ｏｊｔ（ｏｊｔとも記載する）、無人航空機１００の仮定位置ｘｔが投影された投影仮定位置π（ｃｊ，ｘｔ）が存在する。観測位置ｏｊｔと投影仮定位置π（ｃｊ，ｘｔ）とは、一致していないことがあり、これらの間には差分としての再投影誤差が生じる。同様に、フレームＧＭ２には、無人航空機１００の観測位置ｏ（ｊ−１）ｔ、無人航空機１００の仮定位置ｘｔが投影された投影仮定位置π（ｃｊ−１，ｘｔ）が存在する。観測位置ｏ（ｊ−１）ｔと投影仮定位置π（ｃｊ−１，ｘｔ）とは、一致していないことがあり、再投影誤差が生じる。観測位置ｏｊｔ、ｏ（ｊ−１）ｔは、実際に観測された位置が投影された位置であり固定位置であるが、投影仮定位置π（ｃｊ，ｘｔ）、π（ｃｊ−１，ｘｔ）は、可変位置である。処理バックエンド５００は、これらの再投影誤差が小さくなるように、再投影誤差を最適化し、無人航空機１００の推定位置を最適化する。なお、ｊは、カメラの識別情報の一例であり、ｔは時刻の一例である。
【００８５】
追跡フロントエンド４００の通信部４０５は、複数のカメラ３００による撮像画像を受信し、記憶部４２０に記憶させてよい。通信部４０５は、複数のカメラ３００による撮像画像、無人航空機１００の観測位置ｏｊｔ、ｏ（ｊ−１）ｔ、・・・、及びカメラ姿勢ｃｊ、ｃｊ−１、・・・の情報を処理バックエンド５００に送信してよい。処理バックエンド５００の通信部５０５は、撮像画像、無人航空機１００の観測位置、及びカメラ姿勢の情報を受信し、記憶部５２０に記憶してよい。通信部４０５は、撮像画像を処理バックエンド５００に送信しなくてもよい。
【００８６】
処理バックエンド５００の通信部５０５は、無人航空機１００の観測位置ｏｊｔ、ｏ（ｊ−１）ｔ、・・・の情報、及びカメラ姿勢ｃｊ、ｃｊ−１、・・・の情報を受信する。通信部５０５は、撮像画像を受信してもよい。また、処理部５１０は、時刻ｔにおける無人航空機１００の３次元位置を様々な位置で仮定して仮定位置ｘｔを取得し、この仮定位置ｘｔがカメラ姿勢ｃｊ、ｃｊ−１、・・・の画像面（投影面）に投影された投影仮定位置π（ｃｊ，ｘｔ）、π（ｃｊ−１，ｘｔ）、・・・を導出（例えば算出）する。例えば、処理部５１０は、３次元位置としての仮定位置とカメラ姿勢とを基に、カメラ３００の投影仮定位置を算出してよい。処理部５１０は、観測位置ｏｊｔ、ｏ（ｊ−１）ｔ、・・・と投影仮定位置π（ｃｊ，ｘｔ）、π（ｃｊ−１，ｘｔ）、・・・とを基に、式（１）に従って最適化処理を行い、無人航空機１００の仮定位置を最適化し、無人航空機１００の位置を推定する。
【００８７】
【数１】
2020071154.tif 000003
式（１）に示されるａｒｇｍｉｎ関数は、関数値が最小となるｘを引数として渡す関数である。ａｒｇｍｉｎ関数の関数値は、各仮定位置ｘｔと無人航空機１００の存在位置との誤差を示す誤差スコアを示し、再投影誤差を最小化するための関数を示す。ｃｊは、カメラ姿勢を表す。カメラ姿勢は、撮影位置と撮像方向（向き）で定まってよい。ｊ（ｊ＝１，…，ｎ）は、複数のカメラ３００を識別するカメラ番号でよい。ｘｔは、時刻ｔにおける無人航空機１００の実空間における３次元位置を示し、様々な位置に仮定される。ｔは、時刻を示す。カメラ姿勢ｃｊのカメラ３００のフレーム（撮像面、投影面）には、無人航空機１００の投影仮定位置π（ｃｊ，ｘｔ）と、カメラ姿勢ｃｊのカメラ３００によって撮像される無人航空機１００の観測位置ｏｊｔと、が投影される。π（ｃｊ，ｘｔ）は、位置ｘｔに仮定された無人航空機１００がカメラ姿勢ｃｊのカメラ３００のフレームに投影された画素位置である投影仮定位置を表す。ｏｊｔは、時刻ｔにカメラ姿勢ｃｊのカメラ３００によって撮像された撮像画像のフレームに映る無人航空機１００の画素位置である観測位置を表す。ｐ（π（ｃｊ，ｘｔ）−ｏｊｔ）は、投影仮定位置と観測位置との差分としての再投影誤差を積分する関数である。よって、処理部５１０は、式（１）に従って、仮定位置ｘｔを変更しながら、再投影誤差を最小化する仮定位置ｘを探索し、無人航空機１００の位置を推定してよい。
【００８８】
図５では、カメラ姿勢ｃｊのカメラ３００のフレームには、投影仮定位置π（ｃｊ，ｘｔ）及び観測位置ｏｊｔが示される。同様に、カメラ姿勢ｃｊ−１のカメラ３００のフレームには、投影仮定位置π（ｃｊ−１，ｘｔ）及び観測位置ｏ（ｊ−１）ｔが示される。
【００８９】
また、ｗｊｔ（ｗｊｔとも記載する）は、信頼度を表す係数である。信頼度ｗｊｔは、式（２）に従って算出される。なお、信頼度は、式（１）から省略されてもよい。式（２）では、カメラ３００と無人航空機１００との距離で信頼度が定められることを例示している。
【数２】
2020071154.tif 000004
【００９０】
ここで、ωｊｔ（ωｊｔとも記載する）は、カメラ番号ｊと時刻ｔで決まる固定値であり、式（１）、（２）で導出される値の範囲を調整するための値でよい。ｄｓは、固定値である。ｄは、無人航空機１００とカメラ３００との間の距離を表す。例えば、カメラ３００は、撮像した画像に映る無人航空機１００を画像認識等により特定し、無人航空機１００の大きさを基に、無人航空機１００までの距離を導出（例えば算出）してよい。また、カメラ３００は、測距センサを有し、測距センサで無人航空機１００までの距離を計測してよい。距離ｄが短い程、信頼度ｗｊｔは高くなる。また、無人航空機１００が撮像画像に映っていない場合、信頼度Ｗｊｔを値０とし、この場合の無人航空機１００の仮定位置ｘｔが推定位置に採用されないようにしてよい。なお、距離ｄの導出は、追跡フロントエンド４００や処理バックエンド５００で実施されてもよい。例えば、処理バックエンド５００の処理部５１０が、仮定位置ｘｔと各カメラ３００との距離に基づいて、距離ｄを導出（例えば算出）してよい。距離ｄの情報は、カメラ３００や追跡フロントエンド４００から処理バックエンド５００に通知されてよい。
【００９１】
このように、ａｒｇｍｉｎ関数は、無人航空機１００の投影仮定位置π（ｃｊ，ｘｔ）と観測位置ｏｊｔとの差分値（再投影誤差）に、信頼度Ｗｊｔ及び正規化係数ｐを乗じた値を、全てのカメラ３００（カメラ姿勢Ｃ１〜Ｃｎのカメラ）かつ全観測時間ｔで加算した値のうち、最小となる仮定位置ｘｔを推定位置として求める関数である。ｎはカメラの総数を表す任意の値でよい。
【００９２】
なお、式（１）に示したａｒｇｍｉｎ関数を用いて無人航空機１００の位置を推定することは、無人航空機１００の位置推定の一例であり、他の手法で位置推定してもよい。式（２）に従って信頼度ｗｊｔを導出することは、信頼度導出の一例であり、他の手法で信頼度導出してもよい。
【００９３】
処理バックエンド５００の通信部５０５は、処理部５１０によって最適化された無人航空機１００の推定位置のデータをＰＩＤ制御装置７００に送信する。ＰＩＤ制御装置７００の通信部７０５は、無人航空機１００の推定位置のデータを受信し、記憶部７２０に記憶する。ＰＩＤ制御装置７００の処理部７１０は、無人航空機１００の推定位置を基に、記憶部７２０に記憶された目標飛行経路に沿って無人航空機１００を飛行させるためのＰＩＤ制御を行う。通信部７０５は、ＰＩＤ制御によって得られる飛行パラメータを、無人航空機１００に送信する。
【００９４】
無人航空機１００の通信インタフェース１５０は、ＰＩＤ制御装置７００から飛行パラメータを受信すると、メモリ１６０に記憶する。ＵＡＶ制御部１１０は、飛行パラメータに従い、回転翼機構２１０を制御し、無人航空機１００の飛行を制御し、自律飛行を継続する。
【００９５】
このように、無人飛行体システム５は、無人航空機１００の存在位置を推定する飛行制御装置８００（位置推定装置の一例）を備える。飛行制御装置８００は、無人航空機１００の存在位置を推定に関する処理を行う処理部（例えば追跡フロントエンド４００の処理部４１０及び処理バックエンド５００の処理部５１０の少なくとも一方）を備える。追跡フロントエンド４００の処理部４１０は、複数のカメラ３００により無人航空機１００が撮像された複数の撮像画像を取得してよい。追跡フロントエンド４００の処理部４１０は、各カメラ３００の姿勢（配置位置及び各カメラ３００の撮像向き）の情報を取得してよい。処理バックエンド５００の処理部５１０は、カメラ３００の姿勢と、実空間において無人航空機１００が存在すると仮定された各仮定位置と、各撮像画像に投影された無人航空機１００の観測位置（無人航空機１００が存在する画像位置の一例）と、に基づいて、各仮定位置ｘｔと無人航空機１００の存在位置との誤差を示す誤差スコア（例えばａｒｇｍｉｎ関数の導出値）を算出してよい。処理バックエンド５００は、誤差スコアに基づいて、実空間における無人航空機１００の存在位置を推定してよい。なお、処理バックエンド５００単体が、位置推定装置の一例であってもよい。
【００９６】
これにより、飛行制御装置８００は、様々な姿勢（配置位置、撮像向き）の複数のカメラ３００を用いて無人航空機１００を撮像することで、無人航空機１００の位置を、撮像画像の撮像面（投影面）に沿った平面的な位置ではなく奥行方向の位置も加味して推定できる。よって、無人航空機１００がＧＰＳ信号を受信できなくても、無人航空機１００の位置を推定できる。したがって、無人航空機１００がＧＰＳ信号を受信できない場合においても、無人航空機１００は、無人航空機１００の推定位置を基に、自律飛行できる。また、無人航空機がＧＰＳ信号に基づく位置計測機能を有しない場合や、ＧＰＳ信号に基づく位置計測の精度が低い場合においても、無人航空機１００は、自律飛行できる。また、飛行制御装置８００は、無人航空機１００が無人航空機１００の加速度を検出して加速度を二重積分（２回積分）して位置を推定することを不要とするので、二重積分による誤差が発生せず、無人航空機の位置を精度良く推定できる。また、飛行制御装置８００は、モーションキャプチャやビーコン信号を用いた位置推定を行うことを不要とするので、無人航空機１００が使用できる現場が限定されることを抑制できる。
【００９７】
また、追跡フロントエンド４００の処理部４１０は、複数のカメラ３００により複数の時刻ｔに無人航空機１００が撮像された複数の撮像画像を取得してよい。処理バックエンド５００は、複数の時刻ｔにおいて誤差スコアを算出してよい。処理バックエンド５００の処理部５１０は、この誤差スコアに基づいて、実空間における無人航空機１００の存在位置を推定してよい。
【００９８】
これにより、飛行制御装置８００は、複数の時刻ｔ（タイミング）において無人航空機１００の位置を推定できるので、無人航空機１００の動きも加味して無人航空機１００の位置を推定できる。したがって、無人航空機１００の位置の推定精度が向上する。
【００９９】
また、処理バックエンド５００の処理部５１０は、カメラ３００と無人航空機１００との距離ｄを取得してよい。処理部５１０は、この距離ｄに基づいて、撮像画像についての誤差スコアの信頼度ｗｊｔを導出してよい。処理部５１０は、信頼度ｗｊｔに基づいて誤差スコアを算出してよい。
【０１００】
これにより、カメラ３００から無人航空機１００までの距離ｄが長いと、つまり無人航空機１００が遠くにあると、処理部５１０による無人航空機１００の位置の推定精度が下がることを踏まえ、処理部５１０は、無人航空機１００までの距離ｄも加味して無人航空機１００の位置を推定できる。例えば、距離ｄが短い程、信頼度ｗｊｔを大きくし、距離ｄが長い程、信頼度ｗｊｔを小さくできる。したがって、飛行制御装置８００は、誤差スコアを用いた無人航空機１００の位置の推定精度を向上させることができる。
【０１０１】
また、処理部５１０は、各カメラ３００の配置位置及び各カメラ３００の撮像向き（カメラ姿勢ｃｊ）で撮像された各撮像画像に、実空間において無人航空機１００が存在すると仮定された各仮定位置ｘｔが投影された各投影仮定位置π（ｃｊ，ｘｔ）と、各カメラ３００の配置位置及び各撮像装置の撮像向きで撮像された各撮像画像における無人航空機１００が存在する各観測位置ｏｊｔと、の差分（再投影誤差）に基づいて、誤差スコアを算出してよい。処理部５１０は、誤差スコアが最小となる無人航空機１００の仮定位置ｘｔを、無人航空機１００の存在位置として推定してよい。例えば、処理部５１０は、式（１）に従って、誤差スコアを最適化してよい。
【０１０２】
これにより、飛行制御装置８００は、各カメラ３００により撮像された撮像画像に投影された投影仮定位置と画像位置（観測位置）との差分に基づいて、誤差スコアを導出可能である。そして、例えば、飛行制御装置８００は、誤差スコアを各時刻ｔにおいて求め、誤差スコアが最小となる仮定位置ｘｔを、無人航空機１００の存在位置として推定できる。よって、処理部５１０は、例えば式（１）に従って、複数のカメラ３００で撮像された画像を基に、無人航空機１００の推定位置を最適化できる。
【０１０３】
（実施形態２）
実施形態２では、実施形態１に対し、更に、無人航空機１００が検出したＧＰＳ位置情報を考慮して、無人航空機１００の推定位置を最適化する場合を示す。
【０１０４】
図６は、実施形態２における飛行制御装置８００Ａのハードウェア構成を示す図である。実施形態２の無人飛行体システム５Ａは前記実施形態１とほぼ同一の構成を有する。実施形態１と同一の構成要素については、同一の符号を用いることで、その説明を省略する。
【０１０５】
無人航空機１００は、ＧＰＳ受信機２４０を省略せずに備える。無人航空機１００のＵＡＶ制御部１１０は、ＧＰＳ受信機２４０で受信したＧＰＳ信号を基に無人航空機１００のＧＰＳ位置情報を取得する。ＵＡＶ制御部１１０は、通信インタフェース１５０を介して飛行制御装置８００ＡにＧＰＳ位置情報を送信する。
【０１０６】
処理バックエンド５００Ａの通信部５０５Ａは、無人航空機１００からＧＰＳ位置情報を受信する。また、通信部５０５Ａは、実施形態１と同様、追跡フロントエンド４００から複数のカメラ３００による撮像画像、無人航空機１００の観測位置、カメラ姿勢の情報を受信する。なお、撮像画像が受信されなくてもよい。
【０１０７】
処理バックエンド５００Ａの処理部５１０Ａは、再投影誤差の最適化を行う際、通信部５０５Ａを介して受信したＧＰＳ位置情報を考慮する。つまり、処理部５１０Ａは、式（３）に従い、無人航空機１００の推定位置を最適化してよい。
【０１０８】
式（３）に示されるａｒｇｍｉｎ関数は、式（１）と同様、関数値が最小となるｘを引数として渡す関数であり、ＧＰＳ位置情報に関する項λＧＧ（Ｘ，Ｚ）を含む。λＧＧ（Ｘ，Ｚ）は、ＧＰＳ信号を加味したスコアである。
【数３】
2020071154.tif 000005
【０１０９】
λＧ（λＧとも記載する）は、式（４）で表される。
λＧ ＝ Ｃａ×（Ｃｎ−Ｎ）  ……（４）
【０１１０】
ここで、Ｃｎは、ＧＰＳ衛星の総数である。Ｎは、ＧＰＳ受信機２４０が受信に使用しているＧＰＳ衛星の数である。したがって、Ｃｎ−Ｎは、ＧＰＳ受信機２４０が受信に使用していないＧＰＳ衛星の数を表す。Ｃａは係数である。式（４）より、λＧは、ＧＰＳ受信機２４０が受信に使用しているＧＰＳの数が多い程、小さな値となる。なお、λＧは、ＧＰＳ信号の強度に対応する値でよい。ＧＰＳ信号の強度が大きい場合、λＧの値を小さくしてよく、ＧＰＳ信号の強度が小さい場合、λＧの値は大きくしてよい。この場合、式（３）のλＧＧ（Ｘ，Ｚ）において、Ｇ（Ｘ，Ｚ）の値の影響を大きく受けることで、ＧＰＳ位置情報がより反映される。つまり、ＧＰＳ信号の強度が強い場合、ＧＰＳ信号の信頼性が高いので、Ｇ（Ｘ，Ｚ）の値が式（３）の値に大きく影響するようにしてよい。
【０１１１】
また、Ｇ（Ｘ，Ｚ）は、無人航空機１００の全ての仮定位置ｘｔとＧＰＳ位置との差の合計に相当する値であり、式（５）で表される。
【数４】
2020071154.tif 000006
ここで、ζは、ＧＰＳ位置（ＧＰＳ受信機２４０により検出された位置）を表す。仮定位置ｘｔとＧＰＳ位置ζとの差が大きい程、Ｇ（Ｘ，Ｚ）は大きくなる。
【０１１２】
このように、ａｒｇｍｉｎ関数により、無人航空機１００の仮定位置ｘｔは、ａｒｇｍｉｎ関数の括弧内（ａｒｇｍｉｎｘ（）の（）内）の値（再投影誤差）が小さくなるように、最適化される。つまり、ａｒｇｍｉｎ関数で示される無人航空機１００の推定位置は、ａｒｇｍｉｎ関数の括弧内の値が最小となる仮定位置とされる。
【０１１３】
通信部５０５Ａは、処理部５１０Ａで最適化された無人航空機１００の推定位置をＰＩＤ制御装置７００に送信する。ＰＩＤ制御装置７００は、最適化された無人航空機１００の推定位置を基に、無人航空機１００の飛行パラメータを生成し、無人航空機１００に送信する。無人航空機１００の動作は、実施形態１と同様である。
【０１１４】
実施形態２の無人飛行体システム５Ａでは、処理バックエンド５００Ａの処理部５１０Ａは、ＧＰＳ位置情報を加味して、例えば式（３）のａｒｇｍｉｎ関数の値が閾値ｔｈ２以下（例えば最小になる）ように、再投影誤差を最適化し、無人航空機１００の存在位置を推定する。
【０１１５】
このように、処理バックエンド５００の処理部５１０Ａは、無人航空機１００が備えるＧＰＳ受信機２４０（位置計測部の一例）により計測されたＧＰＳ位置（第１の計測位置の一例）を取得してよい。処理部５１０Ａは、ＧＰＳ位置に基づいて、例えば式（３）で示される誤差スコアを算出してよい。
【０１１６】
これにより、飛行制御装置８００Ａは、無人航空機１００において一般的に位置測定に使用されるＧＰＳ信号を加味して、誤差スコアを算出し、無人航空機１００の推定位置を最適化できる。したがって、飛行制御装置８００Ａは、無人航空機１００が備えるＧＰＳ受信機２４０の精度が低くても、ＧＰＳ信号とともに実施形態１と同様の誤差スコアを基に無人航空機１００の位置を推定でき、位置推定精度を向上できる。よって、飛行制御装置８００Ａは、ＧＰＳ受信機２４０の位置計測精度が低い場合でも、誤差スコアを用いた無人航空機１００の位置の推定により、ＧＰＳ受信機２４０による位置計測を補助できる。
【０１１７】
また、ＧＰＳ受信機２４０は、複数のＧＰＳ衛星からＧＰＳ信号を受信してＧＰＳ位置の情報を取得してよい。処理部５１０Ａは、ＧＰＳ受信機２４０が受信可能なＧＰＳ衛星の数が多い程、ＧＰＳ位置情報がより反映されるように、つまり誤差スコアに対するＧＰＳ信号の影響が大きくなるように、誤差スコアを算出してよい。例えば、式（３）のλＧ・Ｇ（Ｘ，Ｚ）において、係数λＧは、無人航空機１００が受信に使用しているＧＰＳの数が多い程、小さな値となり、Ｇ（Ｘ，Ｚ）の値の影響を大きく受けることで、ＧＰＳ位置情報がより反映されるにしてよい。
【０１１８】
これにより、飛行制御装置８００Ａは、ＧＰＳ信号の信頼度（ＧＰＳ信号の強度）に合わせて、ＧＰＳ信号の値が誤差スコアに与える影響を調整して、誤差スコアを算出し、再投影誤差を最適化し、無人航空機１００の位置を推定できる。したがって、飛行制御装置８００Ａは、ＧＰＳの受信状態を加味して無人航空機１００の位置を推定するので、無人航空機１００の位置推定精度を一層向上できる。よって、飛行制御装置８００Ａは、ＧＰＳ信号の信頼度に応じて、実施形態１の誤差スコアを用いた無人航空機１００の位置の推定結果を補正できる。
【０１１９】
（実施形態３）
実施形態３では、実施形態２に対し、更に、ダイナミックファクタや無人航空機１００の加速度に基づく無人航空機１００の推定位置を考慮して、無人航空機１００の推定位置を最適化する場合を示す。ダイナミクスファクタは、物理的な現象を加味したファクタである。
【０１２０】
図７は、実施形態３における飛行制御装置８００Ｂのハードウェア構成を示す図である。
【０１２１】
飛行制御装置８００Ｂは、実施形態１と同様、追跡フロントエンド４００、処理バックエンド５００Ｂ、及びＰＩＤ制御装置７００を有する他、ＩＭＵフロントエンド６００を有する。
【０１２２】
ＩＭＵフロントエンド６００は、通信部６０５、処理部６１０、及び記憶部６２０を有する。処理部６１０は、慣性計測装置２５０で計測された加速度（ＩＭＵデータ）を例えば二重積分（２回積分）して、無人航空機１００の位置を推定し、推定位置の情報を取得する。この加速度を基に推定された位置を加速度推定位置とも称する。
【０１２３】
通信部６０５は、無人航空機１００及び処理バックエンド５００Ｂと通信を行う。無人航空機１００及び処理バックエンド５００Ｂとの通信方式には、専用線、有線ＬＡＮ、無線ＬＡＮ、モバイル通信等が用いられる。通信部６０５は、例えば、無人航空機１００から慣性計測装置２５０で計測された加速度の情報を受信する。通信部６０５は、例えば、加速度に基づく無人航空機１００の加速度推定位置を、処理バックエンド５００Ｂに送信する。記憶部４２０は、処理部４１０のワーキングメモリとして使用される。
【０１２４】
ＩＭＵフロントエンド６００では、例えば１秒間に１００個のＩＭＵのデータ（加速度のデータ）が取得される。また、追跡フロントエンド４００では、例えば１秒間に３０枚（３０ｆｐｓ）又は６０枚（６０ｆｐｓ）の頻度で撮像画像が取得され、無人航空機１００Ａが存在する画像位置（観測位置）が導出される。また、処理バックエンド５００Ｂでは、例えば１秒間に１０個分のＩＭＵを使用する程度の処理速度である。
【０１２５】
ここで、処理バックエンド５００Ｂが再投影誤差を最適化して無人航空機１００の位置を推定する場合、ＩＭＵフロントエンド６００による無人航空機１００の加速度推定位置の更新頻度と、追跡フロントエンド４００による撮像画像の取得頻度（観測位置の導出頻度）と、処理バックエンド５００Ｂによる無人航空機１００の推定位置の処理頻度と、を揃えることが望ましい。処理部５１０Ｂは、ＩＭＵフロントエンド６００、追跡フロントエンド４００、及び処理バックエンド５００Ｂを同一のタイミングで処理するために、処理バックエンド５００Ｂの処理頻度（例えば１秒間に１０回）に合わせるよう制御してよい。
【０１２６】
例えば、処理部５１０Ｂは、通信部５０５及び通信部６０５を介して、例えば、ＩＭＵデータを積分して加速度推定位置を１秒間に１０個取得してよい。処理部５１０Ｂは、通信部５０５及び通信部４０５を介して、例えば、撮像画像における画像位置（観測位置）の情報を１秒間に１０個取得してよい。
【０１２７】
処理バックエンド５００Ｂの通信部５０５Ｂは、実施形態２と同様、無人航空機１００から無人航空機１００のＧＰＳ位置情報を受信する。無人航空機１００のＵＡＶ制御部１１０は、ＧＰＳ受信機２４０で受信したＧＰＳ信号を基に無人航空機１００のＧＰＳ位置情報を取得し、通信インタフェース１５０を介して飛行制御装置８００Ｂに送信してよい。なお、本実施形態では、処理バックエンド５００Ｂは、ＧＰＳ位置情報を取得せず、誤差スコアの算出にＧＰＳ位置情報を考慮しなくてもよい。
【０１２８】
処理バックエンド５００Ｂの通信部５０５Ｂは、実施形態１，２と同様、追跡フロントエンド４００から複数のカメラ３００による撮像画像、カメラ３００の姿勢に関するデータを受信してよい。通信部５０５Ｂは、ＩＭＵフロントエンド６００から加速度推定位置の情報を受信してよい。なお、処理バックエンド３００Ｂは、撮像画像を取得しなくてもよい。
【０１２９】
また、記憶部５２０Ｂは、ダイナミックファクタを記憶してよい。ダイナミックファクタは、例えば運動方程式に則って、無人航空機１００の推定位置が物理的に移動できる範囲に収まるようにするためのデータを含んでよい。ダイナミックファクタは、例えば、カルマンフィルタを含んでよい。カルマンフィルタを用いる場合、処理部５１０Ｂが、無人航空機１００の現在の位置、速度、加速度、等を基に、無人航空機１００の次の位置を推定してよい。
【０１３０】
処理バックエンド５００Ｂの処理部５１０Ｂは、再投影誤差を最適化して無人航空機１００の位置を推定する際、通信部５０５Ｂを介して受信した加速度推定位置及びダイナミックファクタによる物理的な推定位置（物理推定位置）の少なくとも一方を考慮する。また、処理部５１０Ｂは、再投影誤差を最適化して無人航空機１００の位置を推定する際、ＧＰＳ位置情報を考慮してよい。つまり、処理部５１０Ｂは、式（６）に従い、再投影誤差を最適化してよい。
【０１３１】
【数５】
2020071154.tif 000007
ここで、Ｒ（Ｘ，Γ）は、物理推定位置を加味したスコア、つまりダイナミクスファクタを加味したスコアを表し、式（７）で示される。
【０１３２】
【数６】
2020071154.tif 000008
λＲ（λＲとも記載する）は、固定値である。ｘｔ上付きバー（γｔ）は、時刻ｔにおける様々な物理的な法則や公式（例えば運動方程式）に則って得られる物理推定位置を示す。よって、Ｒ（Ｘ，Γ）は、無人航空機１００の仮定位置ｘｔと無人航空機１００の物理推定位置との差分の累積値を示す。なお、ｘｔ上付きバーは、物理推定位置を導出するための関数でよい。γｔ（γｔとも記載する）は、物理推定位置の導出に必要な変数であり、例えば時刻ｔでの無人航空機１００の位置や速度でよい。
【０１３３】
このように、処理部５１０Ｂは、無人航空機１００が物理的に移動可能な位置に基づいて、誤差スコアを算出してよい。
【０１３４】
無人航空機１００の仮定位置ｘｔと無人航空機１００の物理推定位置との差が大きい場合、式（６）におけるλＲＲ（Ｘ，Γ）は、大きな値となり、式（６）の値に対する影響が大きくなる。例えば、算出された無人航空機１００の次の推定位置が、現在の無人航空機１００の仮定位置ｘｔから大きくかけ離れていて移動不可能である場合、このような仮定位置ｘｔが無人航空機１００の位置として推定されないように、ダイナミクスファクタの値が大きくなり、式（６）の値が最小値になり難くなる。また、計算される無人航空機１００の速度（例えば５０ｍ／秒）が無人航空機１００の最高速度（例えば２０ｍ／秒）を超えるような場合、このような速度に対応する仮定位置ｘｔが無人航空機１００の位置として推定されないように、ダイナミクスファクタの値が大きくなり、式（６）の値が最小値になり難くなる。飛行制御装置８００Ｂは、例えば無人航空機１００が移動可能な物理的な推定位置を加味して、無人航空機１００の位置を推定でき、位置推定精度を向上できる。
【０１３５】
また、Ｉ（Ｘ，Δ）は、加速度推定位置を加味したスコア、つまり加速度ファクタを加味したスコアを表し、式（８）で示される。
【０１３６】
【数７】
2020071154.tif 000009
λＩ（λＩとも記載する）は、固定値である。ｘｔ上付きバー（δｔ）は、慣性計測装置２５０により計測された加速度を基に導出される位置（加速度推定位置）を示す。よって、Ｉ（Ｘ，Δ）は、無人航空機１００の仮定位置ｘｔと無人航空機１００の加速度推定位置との差分の累積値を示す。なお、ｘｔ上付きバーは、加速度推定位置を導出するための関数でよい。δｔ（δｔとも記載する）は、加速度推定位置の導出に必要な変数であり、例えば時刻ｔでの無人航空機１００の位置や速度でよい。
【０１３７】
このように、処理部５１０Ｂは、無人航空機１００が備える慣性計測装置２５０（加速度計測器の一例）により計測された加速度に基づいて、無人航空機１００の位置（加速度推定位置）（第２の計測位置の一例を導出（例えば算出）してよい。処理部５１０Ｂは、加速度計測位置に基づいて、誤差スコアを算出してよい。
【０１３８】
無人航空機１００の仮定位置ｘｔと無人航空機１００の加速度推定位置との差が大きい場合、式（８）におけるλＩＩ（Ｘ，Δ）は大きな値となり、式（８）の値に対する影響が大きくなる。飛行制御装置８００Ｂは、無人航空機１００が備える慣性計測装置２５０による計測結果（加速度）を加味して、無人航空機１００の位置を推定でき、位置推定精度を向上できる。
【０１３９】
実施形態３の無人飛行体システム５Ｂでは、処理バックエンド５００Ｂの処理部５１０Ｂは、ＧＰＳ位置情報、物理推定位置、加速度推定位置の少なくとも１つを加味して、例えば式（６）のａｒｇｍｉｎ関数の値が閾値ｔｈ３以下（例えば最小になる）ように、再投影誤差を最適化し、無人航空機１００の存在位置を推定する。
【０１４０】
通信部５０５Ｂは、処理部５１０Ｂで最適化された無人航空機１００の推定位置をＰＩＤ制御装置７００に送信する。ＰＩＤ制御装置７００が、最適化された無人航空機１００の推定位置を基に、無人航空機１００に飛行パラメータを生成し、無人航空機１００に送信する。無人航空機１００の動作は、実施形態１，２と同様である。
【０１４１】
なお、式（６）では、式（３）に対し、ダイナミクスファクタを加味したスコアλＲＲ（Ｘ，Γ）と加速度ファクタを加味したスコアλＲＲ（Ｘ，Γ）の両方が付加されることを例示したが、いずれか一方だけが付加されてよい。
【０１４２】
上記各実施形態における飛行制御装置８００，８００Ａ，８００Ｂは、カメラ３００および無人航空機１００とは、別体の装置として構成されたが、その少なくとも一部の構成は、カメラ３００、無人航空機１００、カメラ３００及び無人航空機１００以外の端末やサーバで構成されてよい。端末は、例えば無人航空機を操縦可能な端末でよい。サーバは、カメラ３００及び無人航空機１００と通信可能にネットワークに接続されたコンピュータでよい。飛行制御装置８００，８００Ａ，８００Ｂのうち、例えば、追跡フロントエンド４００は、カメラ３００、無人航空機１００、端末、およびサーバのいずれに備わってよい。処理バックエンド５００，５００Ａ，５００Ｂは、カメラ３００、無人航空機１００、端末、及びサーバのいずれに備わってよい。ＰＩＤ制御装置７００は、カメラ３００、無人航空機１００、端末、及びサーバのいずれに備わってよい。ＩＭＵフロントエンド６００は、カメラ３００、無人航空機１００、端末、及びサーバのいずれに備わってよい。
【０１４３】
上記各実施形態における各処理部は、例えば、プロセッサが各記憶部に保持されたプログラムを実行することで、各種機能を実現する。プロセッサは、ＭＰＵ（Micro processing Unit）、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＧＰＵ（Graphical Processing Unit）、等を含んでよい。各処理部は、装置内の各部を制御する。各処理部は、各種処理を行う。
【０１４４】
上記各実施形態における各記憶部は、一次記憶装置（例えばＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory））を含む。各記憶部は、二次記憶装置（例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive））や三次記憶装置（例えば光ディスク、ＳＤカード）を含んでよい。各記憶部は、その他の記憶装置を含んでよい。各記憶部は、各種データ、情報、プログラムを記憶する。
【０１４５】
以上、本開示を実施形態を用いて説明したが、本開示の技術的範囲は上述した実施形態に記載の範囲には限定されない。上述した実施形態に、多様な変更又は改良を加えることが当業者に明らかである。その様な変更又は改良を加えた形態も本開示の技術的範囲に含まれ得ることが、特許請求の範囲の記載からも明らかである。
【０１４６】
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現可能である。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「先ず、」、「次に」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０１４７】
５，５Ａ，５Ｂ  無人飛行体システム
１００  無人航空機
１０２  ＵＡＶ本体
１１０  ＵＡＶ制御部
１５０  通信インタフェース
１６０  メモリ
１７０  ストレージ
２００  ジンバル
２１０  回転翼機構
２２０，２３０  撮像部
２４０  ＧＰＳ受信機
２５０  慣性計測装置
２６０  磁気コンパス
２７０  気圧高度計
２８０  超音波センサ
２９０  レーザー測定器
３００  カメラ
４００  追跡フロントエンド
４０５，５０５，５０５Ａ，５０５Ｂ，６０５，７０５  通信部
４１０，５１０，５１０Ａ，５１０Ｂ，６１０，７１０  処理部
４２０，５２０，５２０Ｂ，６２０，７２０  記憶部
５００，５００Ａ，５００Ｂ  処理バックエンド
６００  ＩＭＵフロントエンド
７００  ＰＩＤ制御装置
８００，８００Ａ，８００Ｂ  飛行制御装置
ＧＭ１，ＧＭ２  フレーム
ＳＴＶ０  移動方向
【図１】
2020071154.tif 000010
【図２】
2020071154.tif 000011
【図３】
2020071154.tif 000012
【図４】
2020071154.tif 000013
【図５】
2020071154.tif 000014
【図６】
2020071154.tif 000015
【図７】
2020071154.tif 000016