JP2022095408A - 処理システム、飛行体、処理方法及びプログラム - Google Patents
処理システム、飛行体、処理方法及びプログラム Download PDFInfo
- Publication number
- JP2022095408A JP2022095408A JP2020208725A JP2020208725A JP2022095408A JP 2022095408 A JP2022095408 A JP 2022095408A JP 2020208725 A JP2020208725 A JP 2020208725A JP 2020208725 A JP2020208725 A JP 2020208725A JP 2022095408 A JP2022095408 A JP 2022095408A
- Authority
- JP
- Japan
- Prior art keywords
- data
- flying object
- attitude
- image data
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 168
- 238000003672 processing method Methods 0.000 title claims description 24
- 238000001514 detection method Methods 0.000 claims abstract description 112
- 230000010354 integration Effects 0.000 claims description 20
- 230000001133 acceleration Effects 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 10
- 238000000034 method Methods 0.000 claims description 9
- 238000003384 imaging method Methods 0.000 abstract description 9
- 230000002093 peripheral effect Effects 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 9
- 230000015654 memory Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000005259 measurement Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Image Analysis (AREA)
Abstract
【課題】本開示は、飛行体の動きをより精度良く制御することを目的とする。【解決手段】処理システム4は、飛行体1の姿勢に関する姿勢データを生成する。飛行体1は、カメラ2と、センサ3と、を備える。カメラ2は、飛行体1の周辺環境を撮像して画像データを生成する。センサ3は、飛行体1の動きを検出して検出データを生成する。処理システム4は、第1取得部41と、第2取得部42と、処理部43と、を備える。第1取得部41は、カメラ2で生成された画像データを取得する。第2取得部42は、センサ3で生成された検出データを取得する。処理部43は、画像データ及び検出データを用いて姿勢データを生成する。【選択図】図1
Description
本開示は一般に処理システム、飛行体、処理方法及びプログラムに関し、より詳細には、飛行体の姿勢に関する姿勢データを生成する処理システム、飛行体、処理方法及びプログラムに関する。
特許文献1に記載の飛行体の姿勢角検出装置(処理システム)は、2台1組のカメラからなるステレオカメラと、ステレオ処理部と、姿勢角算出部と、を備える。ステレオカメラは、飛行体に搭載されて下方風景をステレオ撮像する。ステレオ処理部は、ステレオカメラで撮像した一対の撮像画像を処理して下方風景に対する距離情報を算出する。姿勢角算出部は、複数の計測点の距離情報に基づいて下方の表面形状を平面として求め、該平面の飛行体に対する傾きより、飛行体の姿勢角を算出する。
特許文献1に記載の姿勢角検出装置(処理システム)では、飛行体の姿勢角(動き)が算出される周期は、カメラが撮像画像(画像データ)を生成する周期(撮像周期)に依存して決まる。そのため、撮像周期よりも短い周期では、飛行体の動きを算出することができなかった。そのため、飛行体の動きを精度良く制御できない場合があった。
本開示は、飛行体の動きをより精度良く制御することができる処理システム、飛行体、処理方法及びプログラムを提供することを目的とする。
本開示の一態様に係る処理システムは、飛行体の姿勢に関する姿勢データを生成する。前記飛行体は、カメラと、センサと、を備える。前記カメラは、前記飛行体の周辺環境を撮像して画像データを生成する。前記センサは、前記飛行体の動きを検出して検出データを生成する。処理システムは、第1取得部と、第2取得部と、処理部と、を備える。前記第1取得部は、前記カメラで生成された前記画像データを取得する。前記第2取得部は、前記センサで生成された前記検出データを取得する。前記処理部は、前記画像データ及び前記検出データを用いて前記姿勢データを生成する。
本開示の一態様に係る飛行体は、前記処理システムと、前記カメラと、前記センサと、前記処理システムを搭載した装置本体と、動力源を用いて前記装置本体を飛行させる動力装置と、を備える。
本開示の一態様に係る処理方法は、飛行体の姿勢に関する姿勢データを生成する処理方法である。前記飛行体は、カメラと、センサと、を備える。前記カメラは、前記飛行体の周辺環境を撮像して画像データを生成する。前記センサは、前記飛行体の動きを検出して検出データを生成する。前記処理方法は、第1取得ステップと、第2取得ステップと、生成ステップと、を有する。前記第1取得ステップでは、前記カメラで生成された前記画像データを取得する。前記第2取得ステップでは、前記センサで生成された前記検出データを取得する。前記生成ステップでは、前記画像データ及び前記検出データを用いて前記姿勢データを生成する。
本開示の一態様に係るプログラムは、前記処理方法を、1以上のプロセッサに実行させるためのプログラムである。
本開示は、飛行体の動きをより精度良く制御できるという利点がある。
以下、実施形態に係る処理システム、飛行体、処理方法及びプログラムについて、図面を用いて説明する。ただし、下記の実施形態は、本開示の様々な実施形態の1つに過ぎない。下記の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、下記の実施形態において説明する各図は、模式的な図であり、図中の各構成要素の大きさ及び厚さそれぞれの比が必ずしも実際の寸法比を反映しているとは限らない。
(概要)
まず、図1を参照して、処理システム4及び飛行体1の概要を説明する。
まず、図1を参照して、処理システム4及び飛行体1の概要を説明する。
本実施形態の処理システム4は、飛行体1の姿勢に関する姿勢データを生成する。飛行体1は、カメラ2と、センサ3と、を備える。カメラ2は、飛行体1の周辺環境を撮像して画像データを生成する。センサ3は、飛行体1の動きを検出して検出データを生成する。処理システム4は、第1取得部41と、第2取得部42と、処理部43と、を備える。第1取得部41は、カメラ2で生成された画像データを取得する。第2取得部42は、センサ3で生成された検出データを取得する。処理部43は、画像データ及び検出データを用いて姿勢データを生成する。
一般に、カメラ2が画像データを生成する周期は、飛行体1の動きを検出するセンサ3が検出データを生成(更新)する周期よりも長い。そこで、上記の構成により、画像データのみを用いて姿勢データを生成する場合と比較して、姿勢データの更新の頻度を高くすることができる。また、検出データのみを用いて姿勢データを生成する場合と比較して、姿勢データの精度を向上させることができる。よって、飛行体1の動きをより精度良く制御することができる。
また、飛行体1は、処理システム4と、カメラ2と、センサ3と、装置本体61(図2参照)と、動力装置5と、を備える。装置本体61は、処理システム4を搭載している。動力装置5は、動力源を用いて装置本体61を飛行させる。動力源は、例えば、電力である。
(詳細)
(1)全体構成
以下、飛行体1の構成について、より詳細に説明する。
(1)全体構成
以下、飛行体1の構成について、より詳細に説明する。
飛行体1は、遠隔操作又は自動操縦により飛行できるものであって構造上人が乗ることができないもの、すなわちドローン(空中ドローン)である。ドローンは、無人航空機の一種である。また、ドローンは、3つ以上のプロペラ52を有したマルチコプターの一種である。ドローンは、自律的に飛行する機能を有している。ドローンは、3つ以上のプロペラ52の各々の回転数を制御することで、機体(装置本体61)の姿勢を制御する。また、機体の姿勢の変化に応じて、機体の移動方向が変化する。
図1に示すように、飛行体1は、カメラ2と、センサ3と、処理システム4と、動力装置5と、記憶部11と、電源部12と、通信部13と、を備える。動力装置5は、複数(本実施形態では、4つ。図1では1つのみを図示している。)のモータ51と、複数(図2では4つ)のプロペラ52と、を有する。また、図2、図3に示すように、飛行体1は、装置本体61と、複数(図2では4つ)のアーム62と、複数(本実施形態では、4つ。図3では2つのみを図示している。)のスキッド63と、を更に備える。
(2)飛行体の構造部分
図2、図3では、装置本体61のロール軸、ピッチ軸及びヨー軸を、X軸、Y軸及びZ軸として図示している。X軸、Y軸及びZ軸を表す矢印はそれぞれ、説明のために表記しているに過ぎず、実体を伴わない。
図2、図3では、装置本体61のロール軸、ピッチ軸及びヨー軸を、X軸、Y軸及びZ軸として図示している。X軸、Y軸及びZ軸を表す矢印はそれぞれ、説明のために表記しているに過ぎず、実体を伴わない。
装置本体61は、例えば、直方体状に形成されている。装置本体61からは、4つのアーム62が延びている。各アーム62の先端には、プロペラ52が取り付けられている。以下では、4つのプロペラ52を区別するために、4つのプロペラ52をそれぞれプロペラ52A、52B、52C、52Dと称することがある。4つのプロペラ52A、52B、52C、52Dは、装置本体61を囲む周方向において(ヨー軸(Z軸)の周りに)この順に並んでいる。
4つのプロペラ52のうち2つのプロペラ52A、52Cは、第1の向きに回転し、残りの2つのプロペラ52B、52Dは、第1の向きとは反対向きの第2の向きに回転する。互いに対角に位置する2つのプロペラ52は、同じ向きに回転する。
4つのプロペラ52は、4つのモータ51と一対一で対応する。4つのプロペラ52の各々が、対応するモータ51の駆動力により回転力し、推力を発生させる。4つのプロペラ52の各々の推力に応じて、装置本体61の姿勢及び加速度が変化する。例えば、飛行体1の前半分に設けられた2つのプロペラ52C、52Dの回転数を、飛行体1の後ろ半分に設けられた2つのプロペラ52A、52Bの回転数よりも小さくすることで、飛行体1が前傾するので、飛行体1に前寄りの推力が発生して飛行体1が前進する。
また、4つのプロペラ52から装置本体61に作用するトルクは、4つのプロペラ52の各々の回転数により決まる。例えば、互いに対角に位置する2つのプロペラ52A、52Cの回転数を、残りの2つのプロペラ52B、52Dの回転数よりも小さく又は大きくしたとする。すると、2つのプロペラ52A、52Cのトルクと2つのプロペラ52B、52Dのトルクとの差分に相当するトルクが装置本体61に作用するので、装置本体61がヨー軸(Z軸)を中心に回転する。
センサ3は、装置本体61に内蔵されている。図2に示すように、センサ3は、飛行体1のヨー軸の方向から見て装置本体61の中心610(幾何中心)を含む中心領域に配置されている。
また、カメラ2の一部は、装置本体61の下面611から露出している。カメラ2は、飛行体1のヨー軸の方向から見て装置本体61の中心610を含む領域に配置されている。飛行体1のヨー軸の方向から見て、カメラ2の少なくとも一部とセンサ3とは、重なっている。
複数のスキッド63は、複数のアーム62から突出している。複数のスキッド63は、飛行体1が着陸した際に、地面等の着陸面に接する。これにより、複数のスキッド63は、装置本体61を支持する。
(3)カメラ
カメラ2は、例えばCCD(Charge Coupled Devices)イメージセンサ、又はCMOS(Complementary Metal-Oxide Semiconductor)イメージセンサ等の二次元イメージセンサを有する。
カメラ2は、例えばCCD(Charge Coupled Devices)イメージセンサ、又はCMOS(Complementary Metal-Oxide Semiconductor)イメージセンサ等の二次元イメージセンサを有する。
カメラ2は、飛行体1の周辺環境を撮像する。これにより、カメラ2は、画像データを生成する。本実施形態のカメラ2は、飛行体1の下方の環境を撮像する。より詳細には、カメラ2は、飛行体1の下方の地面等の基準面を含む環境を撮像する。カメラ2は、所定の時間間隔で画像データを生成する。
本実施形態では一例として、カメラ2は、ステレオカメラである。ステレオカメラは、2眼のカメラである。すなわち、カメラ2は、2つのレンズを有する。カメラ2は、2つのレンズにそれぞれ入射した光に基づいて、2つの画像データを生成する。
なお、ステレオカメラであるカメラ2に代えて、2つの単眼カメラを含むカメラ2を用いても同様に、カメラ2は、2つのレンズにそれぞれ入射した光に基づいて、2つの画像データを生成することができる。
(4)センサ
センサ3は、飛行体1の動きを検出する。これにより、センサ3は、検出データを生成する。図1に示すように、センサ3は、加速度センサ31と、ジャイロセンサ32と、を含む。加速度センサ31は、3軸方向の加速度を検出する。ジャイロセンサ32は、3軸方向の角速度を検出する。つまり、検出データは、飛行体1の加速度に関する情報と、飛行体1の角速度に関する情報とを含む。加速度センサ31における3軸方向及びジャイロセンサ32における3軸方向は、一致していてもよいし、異なっていてもよい。本実施形態では、加速度センサ31における3軸方向及びジャイロセンサ32における3軸方向はいずれも、X軸、Y軸、Z軸方向である。
センサ3は、飛行体1の動きを検出する。これにより、センサ3は、検出データを生成する。図1に示すように、センサ3は、加速度センサ31と、ジャイロセンサ32と、を含む。加速度センサ31は、3軸方向の加速度を検出する。ジャイロセンサ32は、3軸方向の角速度を検出する。つまり、検出データは、飛行体1の加速度に関する情報と、飛行体1の角速度に関する情報とを含む。加速度センサ31における3軸方向及びジャイロセンサ32における3軸方向は、一致していてもよいし、異なっていてもよい。本実施形態では、加速度センサ31における3軸方向及びジャイロセンサ32における3軸方向はいずれも、X軸、Y軸、Z軸方向である。
センサ3は、所定の時間間隔で検出データを生成する。なお、加速度センサ31が検出データを生成する第1の時間間隔と、ジャイロセンサ32が検出データを生成する第2の時間間隔とが、異なっていてもよいし、同じであってもよい。
センサ3が検出データを生成する時間間隔は、カメラ2が画像データを生成する時間間隔よりも短い。つまり、第1の時間間隔及び第2の時間間隔は、いずれも、カメラ2が画像データを生成する時間間隔よりも短い。
本実施形態のセンサ3は、IMU(Inertial Measurement Unit)を含む。IMUは、1つのパッケージに統合された加速度センサ31とジャイロセンサ32とを含む。
また、センサ3は、例えば、地磁気センサ、GNSS(Global Navigation Satellite System)センサ及び、気圧センサ等を更に含むことが好ましい。地磁気センサは、飛行体1の方位を検出する。GNSSセンサは、飛行体1の現在位置を検出する。GNSSセンサの一例は、GPS(Global Positioning System)センサである。気圧センサは、飛行体1の現在位置の気圧を検出する。
(5)記憶部
記憶部11は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)又はEEPROM(Electrically Erasable Programmable Read-Only Memory)等である。記憶部11は、飛行体1の制御に係る情報を記憶している。記憶部11は、例えば、飛行体1の識別情報、飛行体1と通信する装置の識別情報、飛行体1が飛行するエリアの地図データ、及び、飛行体1の設定パラメータ等を記憶している。
記憶部11は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)又はEEPROM(Electrically Erasable Programmable Read-Only Memory)等である。記憶部11は、飛行体1の制御に係る情報を記憶している。記憶部11は、例えば、飛行体1の識別情報、飛行体1と通信する装置の識別情報、飛行体1が飛行するエリアの地図データ、及び、飛行体1の設定パラメータ等を記憶している。
(6)電源部
飛行体1の動力源は電力である。電源部12は、動力源としての電力を供給する。すなわち、電源部12は、動力装置5のモータ51を駆動するための電力を供給する。また、電源部12は、飛行体1の処理部43、カメラ2、センサ3及び通信部13等の電気回路及び電子部品を動作させるための電力を供給する。
飛行体1の動力源は電力である。電源部12は、動力源としての電力を供給する。すなわち、電源部12は、動力装置5のモータ51を駆動するための電力を供給する。また、電源部12は、飛行体1の処理部43、カメラ2、センサ3及び通信部13等の電気回路及び電子部品を動作させるための電力を供給する。
電源部12は、電池及び電力変換回路を備える。電池は、一次電池でもよいし、二次電池でもよい。電力変換回路は、電池の出力電圧を所望の電圧に変換して、変換後の電圧を出力する。
(7)通信部
通信部13は、例えば、アンテナと通信回路とを備える。通信部13は、電波を媒体として無線通信を行う機能を有する。通信部13は、例えば、飛行体1の目的地を指示する指令信号を操作端末から受信する。処理部43は、指令信号に基づいて、飛行体1の移動を制御する。
通信部13は、例えば、アンテナと通信回路とを備える。通信部13は、電波を媒体として無線通信を行う機能を有する。通信部13は、例えば、飛行体1の目的地を指示する指令信号を操作端末から受信する。処理部43は、指令信号に基づいて、飛行体1の移動を制御する。
(8)動力装置
動力装置5は、複数のモータ51と、複数のモータ51と一対一で対応する複数のプロペラ52と、を含む。各モータ51は、対応するプロペラ52を回転させる。動力装置5の動作は、処理部43により制御される。つまり、処理部43は、動力装置5を制御して、複数のプロペラ52の各々の回転を制御することにより、飛行体1を全方位に移動させることが可能である。
動力装置5は、複数のモータ51と、複数のモータ51と一対一で対応する複数のプロペラ52と、を含む。各モータ51は、対応するプロペラ52を回転させる。動力装置5の動作は、処理部43により制御される。つまり、処理部43は、動力装置5を制御して、複数のプロペラ52の各々の回転を制御することにより、飛行体1を全方位に移動させることが可能である。
(9)第1取得部
処理システム4の第1取得部41は、カメラ2で生成された画像データを、カメラ2から取得する。第1取得部41は、画像データを処理部43へ転送する。
処理システム4の第1取得部41は、カメラ2で生成された画像データを、カメラ2から取得する。第1取得部41は、画像データを処理部43へ転送する。
第1取得部41は、画像データに対して画像処理を行い、画像処理された後の画像データを処理部43へ送信してもよい。また、画像処理は、処理部43が行ってもよい。画像処理の一例は、画像データを圧縮する処理、画像データに示される画像を拡大又は縮小する処理、画像をトリミングする処理、画像の歪みを補正する処理、及び、画像データのノイズを除去する処理等である。
(10)第2取得部
第2取得部42は、センサ3で生成された検出データを、センサ3から取得する。第2取得部42は、検出データを処理部43へ転送する。
第2取得部42は、センサ3で生成された検出データを、センサ3から取得する。第2取得部42は、検出データを処理部43へ転送する。
(11)処理部
処理部43は、1以上のプロセッサ及びメモリを有するコンピュータシステムにより構成されている。コンピュータシステムのメモリに記録されたプログラムを、コンピュータシステムのプロセッサが実行することにより、処理部43の少なくとも一部の機能が実現される。プログラムは、メモリに記録されていてもよいし、インターネット等の電気通信回線を通して提供されてもよく、メモリカード等の非一時的記録媒体に記録されて提供されてもよい。
処理部43は、1以上のプロセッサ及びメモリを有するコンピュータシステムにより構成されている。コンピュータシステムのメモリに記録されたプログラムを、コンピュータシステムのプロセッサが実行することにより、処理部43の少なくとも一部の機能が実現される。プログラムは、メモリに記録されていてもよいし、インターネット等の電気通信回線を通して提供されてもよく、メモリカード等の非一時的記録媒体に記録されて提供されてもよい。
処理部43は、データ処理部431と、指示部432と、を含む。これらは、処理部43によって実現される機能を示しているに過ぎず、必ずしも実体のある構成を示しているわけではない。
データ処理部431は、画像データと検出データとのうち少なくとも一方を用いて、飛行体1の姿勢に関する姿勢データを生成することができる。また、データ処理部431は、画像データと検出データとのうち少なくとも一方を用いて、飛行体1の位置に関する位置データを生成することができる。指示部432は、データ処理部431で生成された姿勢データ及び位置データに基づいて、動力装置5の動作を制御する指示信号を生成する。これにより、指示部432は、飛行体1の姿勢を所望の姿勢にし、飛行体1を所望の位置へ移動させることができる。
(11.1)画像データを用いて姿勢データ及び位置データを生成する処理
まず、データ処理部431が画像データを用いて姿勢データ及び位置データを生成する処理の一例について説明する。なお、以下で説明するような、画像データを用いて姿勢データ及び位置データを生成する処理については、例えば、特許文献1、JP2020-056627A及び「GPSを利用しない自己位置検知技術の開発(山根知之)(https://tiit.or.jp/userfiles/Reports%20of%20the%20Tottori%20institute%20of%20Industrial%20Tecnology%20%20No22%202019%20-%20p13-17.pdf)」に記載されているので、以下では概略のみを説明する。
まず、データ処理部431が画像データを用いて姿勢データ及び位置データを生成する処理の一例について説明する。なお、以下で説明するような、画像データを用いて姿勢データ及び位置データを生成する処理については、例えば、特許文献1、JP2020-056627A及び「GPSを利用しない自己位置検知技術の開発(山根知之)(https://tiit.or.jp/userfiles/Reports%20of%20the%20Tottori%20institute%20of%20Industrial%20Tecnology%20%20No22%202019%20-%20p13-17.pdf)」に記載されているので、以下では概略のみを説明する。
前提として、飛行体1は、略水平な面からなる領域である平面領域の付近を飛行し、カメラ2は、平面領域を撮像するとする。
データ処理部431は、画像データに基づいて、距離分布データを生成する。距離分布データは、画像データに示される画像においての、カメラ2から被写体までの間の距離分布を示すデータである。
カメラ2は、2つのレンズにそれぞれ入射した光に基づいて、2つの画像データを生成する。カメラ2は、所定の撮像周期ごとに、撮像時刻が同時刻である2つの画像データを生成する。データ処理部431は、2つの画像データに示される画像を複数のブロックに分割する。各ブロックは、単一の画素であってもよいし、複数の画素を含んでいてもよい。
カメラ2の2つのレンズの間には視差があるため、2つの画像データの間には、視差に起因した画素ズレが生じる。データ処理部431は、画素ズレの大きさに基づいて、カメラ2から各ブロックの被写体までの距離を算出する。このようにして求められた距離を、当該ブロックの距離値と称するとする。各ブロックの距離値の情報の集合が、上述の距離分布データである。
記憶部11には、飛行体1が飛行するエリアの地図データが記憶されている。地図データは、略水平な面からなる領域である平面領域のエッジの形状の情報、及び、平面領域の位置情報を含む。データ処理部431は、距離分布データに基づいて、画像データから、平面領域のエッジを抽出する。平面領域の法線方向に対して飛行体1が傾いている場合、距離分布データのうち平面領域のデータは、飛行体1に対して傾いた平面のデータとなる。そのため、データ処理部431は、距離分布データに基づいて、平面領域に対する飛行体1の傾きを求めることができる。つまり、データ処理部431は、飛行体1のロール軸及びピッチ軸周りの回転角を求めることができる。
さらに、データ処理部431は、平面領域のエッジの形状に基づいて、平面領域に対する飛行体1の向き(ヨー軸周りの回転角)を求めることができる。
このようにして求められた、ロール軸、ピッチ軸及びヨー軸周りの回転角は、飛行体1の姿勢を表す姿勢データに相当する。つまり、データ処理部431は、画像データを用いて、姿勢データを生成することができる。
また、データ処理部431は、距離分布データ、及び、飛行体1の姿勢を表す姿勢データ等の情報を地図データと比較する。これにより、データ処理部431は、飛行体1と平面領域との位置関係を求め、飛行体1の位置を表す位置データを生成することができる。
(11.2)検出データを用いて姿勢データ及び位置データを生成する処理
次に、データ処理部431が検出データを用いて姿勢データ及び位置データを生成する処理の一例について説明する。
次に、データ処理部431が検出データを用いて姿勢データ及び位置データを生成する処理の一例について説明する。
検出データは、加速度センサ31で検出された3軸方向の加速度に関する情報と、ジャイロセンサ32で検出された3軸方向の角速度に関する情報と、を含む。データ処理部431は、これらの情報にカルマンフィルタをかける。本実施形態では、データ処理部431で処理される「検出データ」は、カルマンフィルタがかけられた後の検出データを指す。
記憶部11には、初期位置(例えば、飛行体1の着陸時)における飛行体1の姿勢データが記憶される。データ処理部431は、所定の時間間隔ごとに、検出データに基づいて、飛行体1の姿勢の変化量を求める。データ処理部431は、初期位置における飛行体1の姿勢データに、飛行体1の姿勢の変化量の積分値を加算することで、現在の飛行体1の姿勢データを生成する。
また、記憶部11には、初期位置(例えば、飛行体1の着陸時、又は、ある時点にGNSSにより求められた位置)における飛行体1の位置データが記憶される。データ処理部431は、所定の時間間隔ごとに、検出データに基づいて、飛行体1の移動量を求める。上記移動量は、3軸方向のそれぞれの移動量である。データ処理部431は、初期位置における飛行体1の位置データに、飛行体1の移動量の積分値を加算することで、現在の飛行体1の位置データを生成する。
(11.3)画像データ及び検出データを用いて姿勢データ及び位置データを生成する処理
データ処理部431は、画像データ及び検出データの両方を用いて、姿勢データ及び位置データを生成することができる。つまり、処理部43は、画像データ及び検出データを用いて飛行体1の位置に関する位置データを生成することができる。
データ処理部431は、画像データ及び検出データの両方を用いて、姿勢データ及び位置データを生成することができる。つまり、処理部43は、画像データ及び検出データを用いて飛行体1の位置に関する位置データを生成することができる。
以下では、データ処理部431が画像データ及び検出データを用いて姿勢データ及び位置データを生成する処理の一例について、図4を参照して説明する。なお、図4に示すフローチャートは、一例に過ぎず、処理の順序が適宜変更されてもよいし、処理が適宜追加又は省略されてもよい。
フローチャートの一部のフローにおいて、データ処理部431は、姿勢データ及び位置データを生成する。姿勢データ及び位置データは、逐次更新される。指示部432は、直近に生成された姿勢データ及び位置データに基づいて、飛行体1の移動を制御する。
カメラ2は、所定の時間間隔(撮像周期)で画像データを生成する。つまり、撮像周期ごとに画像データが更新される。センサ3は、所定の時間間隔(検出周期)で検出データを生成する。つまり、検出周期ごとに検出データが更新される。撮像周期は、検出周期よりも長い。画像データが更新されてから、次に画像データが更新されるまでの間に、検出データは複数回更新される。一例として、撮像周期は1/20[秒]程度、検出周期は1/1000[秒]程度である。
ここでは、カメラ2で生成される画像データが更新された時点(ステップST1)を、フローの始点とする。データ処理部431は、(11.1)節で説明したように、画像データを用いて姿勢データ及び位置データを生成する(ステップST2)。
その後、検出データが更新されると(ステップST3:Yes)、データ処理部431は、画像データ及び検出データを用いて姿勢データ及び位置データを生成する(ステップST4)。より詳細には、データ処理部431(すなわち、処理部43)は、第1取得部41が画像データを取得した後、第2取得部42が検出データを取得すると、画像データを用いて求められた飛行体1の姿勢から、検出データを用いて求められた変化量だけ傾いた姿勢の情報を、姿勢データとして生成する。つまり、ステップST1で第1取得部41が画像データを取得した後、ステップST3で第2取得部42が検出データを取得する。すると、ステップST4においてデータ処理部431は、ステップST2で画像データを用いて求められた飛行体1の姿勢から、検出データを用いて求められた変化量だけ傾いた姿勢の情報を、姿勢データとして生成する。姿勢データは、例えば、ロール軸、ピッチ軸及びヨー軸周りの回転角からなる3つの成分を含むベクトル量である。
例えば、ステップST2で求められた、飛行体1の回転角(ベクトル量)をθ1とする。また、ステップST4で検出データを用いて求められる飛行体1の角速度(ベクトル量)をω1とする。さらに、画像データが取得(更新)されてから検出データが更新されるまでの時間をΔt1とする。ステップST4において、データ処理部431は、飛行体1の回転角θ2を、[数1]により求める。
[数1]θ2=θ1+ω1×Δt1
また、第1取得部41が画像データを取得した後、第1取得部41が画像データを更新するまでの間、第2取得部42は、検出データを複数回更新する。検出データが更新される度に、データ処理部431は、飛行体1の回転角θ2を、下記の[数2]により求める。すなわち、データ処理部431は、飛行体1の角速度を時間積分することで、回転角θ2を求める。
[数2]θ2=θ1+Σωi×Δti
Nを、直近に画像データが取得されてからの検出データの更新回数(Nは1以上の自然数)とすると、i=1、2、3、……N、である。ωiは、検出データのi番目の更新時に求められた飛行体1の角速度(ベクトル量)である。i≧2のとき、Δtiは、検出データのi-1番目の更新からi番目の更新までの時間である。
[数1]θ2=θ1+ω1×Δt1
また、第1取得部41が画像データを取得した後、第1取得部41が画像データを更新するまでの間、第2取得部42は、検出データを複数回更新する。検出データが更新される度に、データ処理部431は、飛行体1の回転角θ2を、下記の[数2]により求める。すなわち、データ処理部431は、飛行体1の角速度を時間積分することで、回転角θ2を求める。
[数2]θ2=θ1+Σωi×Δti
Nを、直近に画像データが取得されてからの検出データの更新回数(Nは1以上の自然数)とすると、i=1、2、3、……N、である。ωiは、検出データのi番目の更新時に求められた飛行体1の角速度(ベクトル量)である。i≧2のとき、Δtiは、検出データのi-1番目の更新からi番目の更新までの時間である。
また、回転角θ1は、画像データが更新される度に更新される。つまり、後述のステップST5で画像データが更新された場合は、データ処理部431は、更新後の画像データを用いて求められた飛行体1の回転角を、上述の回転角θ1として用いて、回転角θ2を求める。
ステップST4では、位置データも生成される。データ処理部431(すなわち、処理部43)は、第1取得部41が画像データを取得した後、第2取得部42が検出データを取得すると、画像データを用いて求められた飛行体1の位置から、検出データを用いて求められた移動量だけ移動した位置の情報を、位置データとして生成する。つまり、ステップST1で第1取得部41が画像データを取得した後、ステップST3で第2取得部42が検出データを取得する。すると、ステップST4においてデータ処理部431は、ステップST2で画像データを用いて求められた飛行体1の位置から、検出データを用いて求められた移動量だけ移動した位置の情報を、位置データとして生成する。位置データは、例えば、地上に設定された3次元座標空間における飛行体1の座標の情報(ベクトル量)である。
例えば、ステップST2で求められた、飛行体1の座標(ベクトル量)をX1とする。また、ステップST4で検出データを用いて求められる飛行体1の速度(ベクトル量)をv1とする。さらに、画像データが取得(更新)されてから検出データが更新されるまでの時間をΔt1とする。ステップST4において、データ処理部431は、飛行体1の座標X2を、[数3]により求める。
[数3]X2=X1+v1×Δt1
また、第1取得部41が画像データを取得した後、第1取得部41が画像データを更新するまでの間、第2取得部42は、検出データを複数回更新する。検出データが更新される度に、データ処理部431は、飛行体1の座標X2を、下記の[数4]により求める。すなわち、データ処理部431は、飛行体1の速度を時間積分することで、座標X2を求める。
[数4]X2=X1+Σvi×Δti
viは、検出データのi番目の更新時に求められた飛行体1の速度(ベクトル量)である。
[数3]X2=X1+v1×Δt1
また、第1取得部41が画像データを取得した後、第1取得部41が画像データを更新するまでの間、第2取得部42は、検出データを複数回更新する。検出データが更新される度に、データ処理部431は、飛行体1の座標X2を、下記の[数4]により求める。すなわち、データ処理部431は、飛行体1の速度を時間積分することで、座標X2を求める。
[数4]X2=X1+Σvi×Δti
viは、検出データのi番目の更新時に求められた飛行体1の速度(ベクトル量)である。
また、座標X1は、画像データが更新される度に更新される。つまり、後述のステップST5で画像データが更新された場合は、データ処理部431は、更新後の画像データを用いて後述のステップST8において求められた飛行体1の座標を、上述の座標X1として用いて、座標X2を求める。ただし、後述のステップST7の判定が「No」の場合は座標X1が更新されない。
次に、ステップST5以降の処理について説明する。
画像データが更新されると(ステップST5:Yes)、データ処理部431は、(11.1)節で説明したように、画像データを用いて姿勢データを生成する(ステップST6)。すなわち、データ処理部431は、姿勢データとして、飛行体1のロール軸、ピッチ軸及びヨー軸周りの回転角を求める。
ステップST6の後に、データ処理部431は、画像データによる姿勢角誤差と、検出データによる姿勢角誤差と、を比較する(ステップST7)。姿勢角とは、鉛直方向に対するヨー軸(Z軸)の傾きである。姿勢角誤差とは、検出データに示される姿勢角と、実際の姿勢角との差分である。姿勢角誤差は、飛行体1の姿勢の誤差の一例である。まず、図5を参照して、姿勢角誤差について説明する。
画像データを用いて求められる飛行体1の姿勢角については、その姿勢角誤差701(第1姿勢角誤差)は、時間に依存しない値である。一方で、検出データを用いて求められる飛行体1の姿勢角は、検出された検出データ(角速度)を時間積分することにより求められるので、検出データを用いて求められる飛行体1の姿勢角の姿勢角誤差702(第2姿勢角誤差)は、時間の経過につれて蓄積する。例えば、検出データ(角速度)の検出誤差が時間によらず一定であるとすると、姿勢角誤差702は、図5に示すように、時間に比例して増加する。実際には、検出データ(角速度)の検出誤差は時間の経過と共に揺らぎ得る。予め測定等により検出データ(角速度)の検出誤差(姿勢角誤差702)の時間変化と、画像データの検出誤差(姿勢角誤差701)と、を求めておくことで、時間Tm1を見積もることができる。時間Tm1は、センサ3が角速度を検出し始めてから、姿勢角誤差702が姿勢角誤差701以上となるまでに要する時間である。時間Tm1は、記憶部11に記憶されている。
検出データのみを用いて姿勢データ及び位置データを生成する場合は、このように時間積分により誤差が蓄積し得るが、画像データを併用することで、姿勢データ及び位置データの精度を向上させることができる。
図4におけるステップST7では、姿勢角誤差701が姿勢角誤差702よりも小さいと(ステップST7:Yes)、(11.1)節で説明したように、データ処理部431は、画像データを用いて位置データを生成する(ステップST8)。
要するに、データ処理部431は、センサ3の誤差(姿勢角誤差702)がカメラ2の誤差(姿勢角誤差701)を超えていない期間は、画像データと検出データとを用いて位置データを作成する処理を継続する(ステップST4)。一方で、センサ3の誤差(姿勢角誤差702)がカメラ2の誤差(姿勢角誤差701)を超えると、データ処理部431は、検出データを用いず画像データを用いて位置データを作成する処理を一時的に実行する(ステップST8)。
ステップST8の後(すなわち、姿勢角誤差701が姿勢角誤差702よりも小さいと)、データ処理部431は、検出データの角速度の零点誤差E1を算出する(ステップST9)。データ処理部431は、画像データと検出データとに基づいて零点誤差E1を算出する。零点誤差E1は、ベクトル量である。零点誤差E1の単位は、[deg/s]である。零点誤差E1は、[数5]により算出される。
[数5]E1=(“画像データを用いて求められる角度”-“センサ3で検出された角速度の積分値”)/積分時間
分子の第1項は、ステップST5において直近に取得された画像データを用いて求められる。すなわち、分子の第1項は、ステップST6で求められる飛行体1の角度(回転角)である。また、分子の第2項は、[数2]により求められる飛行体1の回転角θ2である。つまり、分子の第2項は、直近に取得された画像データよりも1つ前に取得された画像データと、検出データと、に基づいて求められる回転角θ2である。分母の“積分時間”は、“ΣΔti”(ただし、i=1、2、3、……N)である。
[数5]E1=(“画像データを用いて求められる角度”-“センサ3で検出された角速度の積分値”)/積分時間
分子の第1項は、ステップST5において直近に取得された画像データを用いて求められる。すなわち、分子の第1項は、ステップST6で求められる飛行体1の角度(回転角)である。また、分子の第2項は、[数2]により求められる飛行体1の回転角θ2である。つまり、分子の第2項は、直近に取得された画像データよりも1つ前に取得された画像データと、検出データと、に基づいて求められる回転角θ2である。分母の“積分時間”は、“ΣΔti”(ただし、i=1、2、3、……N)である。
データ処理部431は、検出データの角速度の零点誤差E1を算出した後、零点誤差E1をリセットする。さらに、データ処理部431は、検出データの角速度の積分誤差をリセットする(ステップST10)。これにより、検出データの精度を向上させることができる。
零点誤差E1をリセットする処理は、検出データの角速度のオフセットを、零点誤差E1だけ差し引く処理である。零点誤差E1が負の値の場合は、零点誤差E1をリセットする処理によりオフセットは小さくなる。例えば、オフセットが-10[deg/s]の状態から、零点誤差E1としての-7[deg/s]が差し引かれて、オフセットが-3[deg/s]となる。
積分誤差は、例えば、姿勢角誤差702(図5参照)であって、経過時間から算出される。検出データの角速度の積分誤差をリセットする処理は、検出データの角速度のオフセットを、積分誤差だけ差し引く処理である。
このように、データ処理部431(すなわち、処理部43)は、第2誤差が第1誤差よりも大きいと、検出データの積分誤差をリセットする。第1誤差は、飛行体1の姿勢に関する第1姿勢データの誤差(姿勢角誤差)である。第1姿勢データは、画像データを用いて求められる。第2誤差は、飛行体1の姿勢に関する第2姿勢データの積分誤差(姿勢角誤差)である。第2姿勢データは、検出データを用いて求められる。
また、データ処理部431(すなわち、処理部43)は、第2誤差が第1誤差よりも大きいと、検出データの零点誤差E1をリセットする。
次に、ステップST11について説明する。データ処理部431は、通信部13で受信された指令信号に基づいて、飛行体1の動作の制御を継続するか否かを定期的に判定する(ステップST11)。例えば、指令信号により指定された地点に飛行体1が着陸すると、データ処理部431は、制御を終了する。
ステップST10の後、制御が継続される場合は(ステップST11:Yes)、ステップST3に戻る。
(12)処理方法及びプログラム
処理システム4と同様の機能は、処理方法、(コンピュータ)プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。
処理システム4と同様の機能は、処理方法、(コンピュータ)プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。
一態様に係る処理方法は、飛行体1の姿勢に関する姿勢データを生成する処理方法である。飛行体1は、カメラ2と、センサ3と、を備える。カメラ2は、飛行体1の周辺環境を撮像して画像データを生成する。センサ3は、飛行体1の動きを検出して検出データを生成する。処理方法は、第1取得ステップと、第2取得ステップと、生成ステップと、を有する。第1取得ステップでは、カメラ2で生成された画像データを取得する。第2取得ステップでは、センサ3で生成された検出データを取得する。生成ステップでは、画像データ及び検出データを用いて姿勢データを生成する。
一態様に係るプログラムは、上記の処理方法を1以上のプロセッサに実行させるためのプログラムである。プログラムは、コンピュータで読み取り可能な非一時的記録媒体に記録されていてもよい。
本開示における処理システム4は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における処理システム4としての機能の少なくとも一部が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路(IC)又は大規模集積回路(LSI)を含む1ないし複数の電子回路で構成される。ここでいうIC又はLSI等の集積回路は、集積の度合いによって呼び方が異なっており、システムLSI、VLSI(Very Large Scale Integration)、又はULSI(Ultra Large Scale Integration)と呼ばれる集積回路を含む。さらに、LSIの製造後にプログラムされる、FPGA(Field-Programmable Gate Array)、又はLSI内部の接合関係の再構成若しくはLSI内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、1つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、1つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、1以上のプロセッサ及び1以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む1ないし複数の電子回路で構成される。
また、処理システム4における複数の機能が、1つの装置に集約されていることは処理システム4に必須の構成ではなく、処理システム4の構成要素は、複数の装置に分散して設けられていてもよい。さらに、処理システム4の少なくとも一部の機能、例えば、データ処理部431の少なくとも一部の機能がクラウド(クラウドコンピューティング)等によって実現されてもよい。
(実施形態の変形例)
以下、実施形態の変形例を列挙する。以下の変形例は、適宜組み合わせて実現されてもよい。
以下、実施形態の変形例を列挙する。以下の変形例は、適宜組み合わせて実現されてもよい。
飛行体1は、ドローン(空中ドローン)に限定されず、例えば、ラジコン機、又は、ヘリコプターであってもよい。
飛行体1が備えるプロペラ52の個数及びモータ51の個数は、4つに限定されない。飛行体1のプロペラ52の個数及びモータ51の個数は、例えば、2つ、3つ、6つ、又は8つであってもよい。
カメラ2は、ステレオカメラに限定されず、1又は複数の単眼カメラを含む構成であってもよい。
処理システム4は、装置本体61に搭載されるのではなく、別の装置に搭載されていてもよい。すなわち、処理システム4は、処理システム4を備えていない飛行体1から画像データ及び検出データを取得し、姿勢データ及び位置データを生成してもよい。
データ処理部431(すなわち、処理部43)は、第1取得部41が画像データを取得する度に、検出データの積分誤差をリセットしてもよい。
データ処理部431(すなわち、処理部43)は、第1取得部41が画像データを取得する度に、検出データの零点誤差E1をリセットしてもよい。
(まとめ)
以上説明した実施形態等から、以下の態様が開示されている。
以上説明した実施形態等から、以下の態様が開示されている。
第1の態様に係る処理システム(4)は、飛行体(1)の姿勢に関する姿勢データを生成する。飛行体(1)は、カメラ(2)と、センサ(3)と、を備える。カメラ(2)は、飛行体(1)の周辺環境を撮像して画像データを生成する。センサ(3)は、飛行体(1)の動きを検出して検出データを生成する。処理システム(4)は、第1取得部(41)と、第2取得部(42)と、処理部(43)と、を備える。第1取得部(41)は、カメラ(2)で生成された画像データを取得する。第2取得部(42)は、センサ(3)で生成された検出データを取得する。処理部(43)は、画像データ及び検出データを用いて姿勢データを生成する。
一般に、カメラ(2)が画像データを生成する周期は、飛行体(1)の動きを検出するセンサ(3)が検出データを生成(更新)する周期よりも長い。そこで、上記の構成により、画像データのみを用いて姿勢データを生成する場合と比較して、姿勢データの更新の頻度を高くすることができる。また、検出データのみを用いて姿勢データを生成する場合と比較して、姿勢データの精度を向上させることができる。よって、飛行体(1)の動きをより精度良く制御することができる。
また、第2の態様に係る処理システム(4)では、第1の態様において、処理部(43)は、第1取得部(41)が画像データを取得した後、第2取得部(42)が検出データを取得すると、画像データを用いて求められた飛行体(1)の姿勢から、検出データを用いて求められた変化量だけ傾いた姿勢の情報を、姿勢データとして生成する。
上記の構成によれば、カメラ(2)が第1の画像データを生成してから、次の第2の画像データを生成するまでの間の期間に、第1の画像データと検出データとの両方を用いて、姿勢データを生成することができる。
また、第3の態様に係る処理システム(4)では、第1又は2の態様において、処理部(43)は、画像データ及び検出データを用いて飛行体(1)の位置に関する位置データを生成する。
上記の構成によれば、画像データのみを用いて位置データを生成する場合と比較して、位置データの更新の頻度を高くすることができる。また、検出データのみを用いて位置データを生成する場合と比較して、位置データの精度を向上させることができる。よって、飛行体(1)の動きをより精度良く制御することができる。
また、第4の態様に係る処理システム(4)では、第3の態様において、処理部(43)は、第1取得部(41)が画像データを取得した後、第2取得部(42)が検出データを取得すると、画像データを用いて求められた飛行体(1)の位置から、検出データを用いて求められた移動量だけ移動した位置の情報を、位置データとして生成する。
上記の構成によれば、カメラ(2)が第1の画像データを生成してから、次の第2の画像データを生成するまでの間の期間に、第1の画像データと検出データとの両方を用いて、位置データを生成することができる。
また、第5の態様に係る処理システム(4)では、第1~4の態様のいずれか1つにおいて、処理部(43)は、第2誤差が第1誤差よりも大きいと、検出データの積分誤差をリセットする。第1誤差は、飛行体(1)の姿勢に関する第1姿勢データの誤差である。第1姿勢データは、画像データを用いて求められる。第2誤差は、飛行体(1)の姿勢に関する第2姿勢データの積分誤差である。第2姿勢データは、検出データを用いて求められる。
上記の構成によれば、積分誤差をリセットすることにより、検出データの精度を向上させることができる。
また、第6の態様に係る処理システム(4)では、第1~5の態様のいずれか1つにおいて、処理部(43)は、第2誤差が第1誤差よりも大きいと、検出データの零点誤差をリセットする。第1誤差は、飛行体(1)の姿勢に関する第1姿勢データの誤差である。第1姿勢データは、画像データを用いて求められる。第2誤差は、飛行体(1)の姿勢に関する第2姿勢データの積分誤差である。第2姿勢データは、検出データを用いて求められる。
上記の構成によれば、零点誤差をリセットすることにより、検出データの精度を向上させることができる。
また、第7の態様に係る処理システム(4)では、第1~6の態様のいずれか1つにおいて、センサ(3)は、3軸方向の加速度を検出する加速度センサ(31)と、3軸方向の角速度を検出するジャイロセンサ(32)と、を含む。
上記の構成によれば、センサ(3)により、任意の方向への飛行体(1)の傾き及び移動を検出できる。
第1の態様以外の構成については、処理システム(4)に必須の構成ではなく、適宜省略可能である。
また、第8の態様に係る飛行体(1)は、第1~7の態様のいずれか1つに係る処理システム(4)と、カメラ(2)と、センサ(3)と、処理システム(4)を搭載した装置本体(61)と、動力源を用いて装置本体(61)を飛行させる動力装置(5)と、を備える。
上記の構成によれば、処理システム(4)を一体に備えた飛行体(1)を提供できる。
また、第9の態様に係る飛行体(1)では、第8の態様において、センサ(3)は、中心領域に配置されている。中心領域は、飛行体(1)のヨー軸の方向から見て装置本体(61)の中心(610)を含む。
上記の構成によれば、飛行体(1)の動きをより精度良く制御することができる。
第8の態様以外の構成については、処理システム(4)に必須の構成ではなく、適宜省略可能である。
また、第10の態様に係る処理方法は、飛行体(1)の姿勢に関する姿勢データを生成する処理方法である。飛行体(1)は、カメラ(2)と、センサ(3)と、を備える。カメラ(2)は、飛行体(1)の周辺環境を撮像して画像データを生成する。センサ(3)は、飛行体(1)の動きを検出して検出データを生成する。処理方法は、第1取得ステップと、第2取得ステップと、生成ステップと、を有する。第1取得ステップでは、カメラ(2)で生成された画像データを取得する。第2取得ステップでは、センサ(3)で生成された検出データを取得する。生成ステップでは、画像データ及び検出データを用いて姿勢データを生成する。
上記の構成によれば、飛行体(1)の動きをより精度良く制御することができる。
また、第11の態様に係るプログラムは、第10の態様に係る処理方法を、1以上のプロセッサに実行させるためのプログラムである。
上記の構成によれば、飛行体(1)の動きをより精度良く制御することができる。
上記態様に限らず、実施形態に係る処理システム(4)の種々の構成(変形例を含む)は、処理方法及びプログラムにて具現化可能である。
1 飛行体
2 カメラ
3 センサ
4 処理システム
5 動力装置
31 加速度センサ
32 ジャイロセンサ
41 第1取得部
42 第2取得部
43 処理部
61 装置本体
610 中心
2 カメラ
3 センサ
4 処理システム
5 動力装置
31 加速度センサ
32 ジャイロセンサ
41 第1取得部
42 第2取得部
43 処理部
61 装置本体
610 中心
Claims (11)
- 飛行体の姿勢に関する姿勢データを生成する処理システムであって、
前記飛行体は、前記飛行体の周辺環境を撮像して画像データを生成するカメラと、前記飛行体の動きを検出して検出データを生成するセンサと、を備え、
前記処理システムは、
前記カメラで生成された前記画像データを取得する第1取得部と、
前記センサで生成された前記検出データを取得する第2取得部と、
前記画像データ及び前記検出データを用いて前記姿勢データを生成する処理部と、を備える、
処理システム。 - 前記処理部は、前記第1取得部が前記画像データを取得した後、前記第2取得部が前記検出データを取得すると、前記画像データを用いて求められた前記飛行体の姿勢から、前記検出データを用いて求められた変化量だけ傾いた姿勢の情報を、前記姿勢データとして生成する、
請求項1に記載の処理システム。 - 前記処理部は、前記画像データ及び前記検出データを用いて前記飛行体の位置に関する位置データを生成する、
請求項1又は2に記載の処理システム。 - 前記処理部は、前記第1取得部が前記画像データを取得した後、前記第2取得部が前記検出データを取得すると、前記画像データを用いて求められた前記飛行体の位置から、前記検出データを用いて求められた移動量だけ移動した位置の情報を、前記位置データとして生成する、
請求項3に記載の処理システム。 - 前記処理部は、第2誤差が第1誤差よりも大きいと、前記検出データの積分誤差をリセットし、
前記第1誤差は、前記飛行体の姿勢に関する第1姿勢データの誤差であり、前記第1姿勢データは、前記画像データを用いて求められ、
前記第2誤差は、前記飛行体の姿勢に関する第2姿勢データの積分誤差であり、前記第2姿勢データは、前記検出データを用いて求められる、
請求項1~4のいずれか一項に記載の処理システム。 - 前記処理部は、第2誤差が第1誤差よりも大きいと、前記検出データの零点誤差をリセットし、
前記第1誤差は、前記飛行体の姿勢に関する第1姿勢データの誤差であり、前記第1姿勢データは、前記画像データを用いて求められ、
前記第2誤差は、前記飛行体の姿勢に関する第2姿勢データの積分誤差であり、前記第2姿勢データは、前記検出データを用いて求められる、
請求項1~5のいずれか一項に記載の処理システム。 - 前記センサは、3軸方向の加速度を検出する加速度センサと、3軸方向の角速度を検出するジャイロセンサと、を含む、
請求項1~6のいずれか一項に記載の処理システム。 - 請求項1~7のいずれか一項に記載の処理システムと、
前記カメラと、
前記センサと、
前記処理システムを搭載した装置本体と、
動力源を用いて前記装置本体を飛行させる動力装置と、を備える、
飛行体。 - 前記センサは、前記飛行体のヨー軸の方向から見て前記装置本体の中心を含む中心領域に配置されている、
請求項8に記載の飛行体。 - 飛行体の姿勢に関する姿勢データを生成する処理方法であって、
前記飛行体は、前記飛行体の周辺環境を撮像して画像データを生成するカメラと、前記飛行体の動きを検出して検出データを生成するセンサと、を備え、
前記処理方法は、
前記カメラで生成された前記画像データを取得する第1取得ステップと、
前記センサで生成された前記検出データを取得する第2取得ステップと、
前記画像データ及び前記検出データを用いて前記姿勢データを生成する生成ステップと、を有する、
処理方法。 - 請求項10に記載の処理方法を、1以上のプロセッサに実行させるための、
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020208725A JP2022095408A (ja) | 2020-12-16 | 2020-12-16 | 処理システム、飛行体、処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020208725A JP2022095408A (ja) | 2020-12-16 | 2020-12-16 | 処理システム、飛行体、処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022095408A true JP2022095408A (ja) | 2022-06-28 |
Family
ID=82162979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020208725A Pending JP2022095408A (ja) | 2020-12-16 | 2020-12-16 | 処理システム、飛行体、処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022095408A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116030501A (zh) * | 2023-02-15 | 2023-04-28 | 北京拙河科技有限公司 | 一种飞鸟检测数据提取方法及装置 |
-
2020
- 2020-12-16 JP JP2020208725A patent/JP2022095408A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116030501A (zh) * | 2023-02-15 | 2023-04-28 | 北京拙河科技有限公司 | 一种飞鸟检测数据提取方法及装置 |
CN116030501B (zh) * | 2023-02-15 | 2023-10-10 | 北京拙河科技有限公司 | 一种飞鸟检测数据提取方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11649052B2 (en) | System and method for providing autonomous photography and videography | |
US10901437B2 (en) | Unmanned aerial vehicle including an omnidirectional depth sensing and obstacle avoidance aerial system and method of operating same | |
JP2017065467A (ja) | 無人機およびその制御方法 | |
WO2019242553A1 (zh) | 控制拍摄装置的拍摄角度的方法、控制装置及可穿戴设备 | |
US11019270B2 (en) | Unmanned aerial vehicle | |
WO2017181513A1 (zh) | 无人机的飞行控制方法和装置 | |
US10386857B2 (en) | Sensor-centric path planning and control for robotic vehicles | |
WO2019061064A1 (zh) | 图像处理方法和设备 | |
US20210165388A1 (en) | Gimbal rotation control method and apparatus, control device, and movable platform | |
WO2021168819A1 (zh) | 无人机的返航控制方法和设备 | |
CN110568860A (zh) | 一种无人飞行器的返航方法、装置及无人飞行器 | |
WO2019183789A1 (zh) | 无人机的控制方法、装置和无人机 | |
WO2021217371A1 (zh) | 可移动平台的控制方法和装置 | |
CN111247389B (zh) | 关于拍摄设备的数据处理方法、装置及图像处理设备 | |
WO2019189381A1 (ja) | 移動体、制御装置、および制御プログラム | |
US20210229810A1 (en) | Information processing device, flight control method, and flight control system | |
WO2019019172A1 (en) | ADAPTIVE IMAGE PROCESSING IN A ROBOTIC VEHICLE | |
JP2022095408A (ja) | 処理システム、飛行体、処理方法及びプログラム | |
WO2020019175A1 (zh) | 图像处理方法和设备、摄像装置以及无人机 | |
JP6900029B2 (ja) | 無人航空機、位置推定装置、飛行制御装置、位置推定方法、制御方法及びプログラム | |
JP2019191888A (ja) | 無人飛行体、無人飛行方法及び無人飛行プログラム | |
WO2018214015A1 (zh) | 一种航向修正方法、设备及飞行器 | |
US20210256732A1 (en) | Image processing method and unmanned aerial vehicle | |
CN214409706U (zh) | 一种基于机器视觉的室内无人机定位系统 | |
WO2019127192A1 (zh) | 图像处理方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231211 |