JP2020003428A - 情報処理装置、飛行経路生成方法、プログラム、及び記録媒体 - Google Patents

情報処理装置、飛行経路生成方法、プログラム、及び記録媒体 Download PDF

Info

Publication number
JP2020003428A
JP2020003428A JP2018125369A JP2018125369A JP2020003428A JP 2020003428 A JP2020003428 A JP 2020003428A JP 2018125369 A JP2018125369 A JP 2018125369A JP 2018125369 A JP2018125369 A JP 2018125369A JP 2020003428 A JP2020003428 A JP 2020003428A
Authority
JP
Japan
Prior art keywords
input line
point
output curve
flight path
generating
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.)
Ceased
Application number
JP2018125369A
Other languages
English (en)
Inventor
思杰 沈
Sijie Shen
思杰 沈
磊 顧
Lei Gu
磊 顧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Priority to JP2018125369A priority Critical patent/JP2020003428A/ja
Priority to PCT/CN2019/093764 priority patent/WO2020001629A1/zh
Priority to CN201980005106.1A priority patent/CN111226093A/zh
Publication of JP2020003428A publication Critical patent/JP2020003428A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U20/00Constructional aspects of UAVs
    • B64U20/80Arrangement of on-board electronics, e.g. avionics systems or wiring
    • B64U20/87Mounting of imaging devices, e.g. mounting of gimbals
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/22Plotting boards
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • B64U10/10Rotorcrafts
    • B64U10/13Flying platforms
    • B64U10/14Flying platforms with four distinct rotor axes, e.g. quadcopters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U30/00Means for producing lift; Empennages; Arrangements thereof
    • B64U30/20Rotors; Rotor supports

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)

Abstract

【課題】より制約が少なく、自由な形状で飛行経路が設定可能となることが望ましい。【解決手段】飛行体が飛行するための飛行経路を生成する情報処理装置であって、処理部を備え、処理部は、第1の経路を示す入力線を取得し、入力線の始点を始点とし、入力線の終点を終点とする、出力曲線を生成し、入力線における各点と出力曲線との距離の積算値を算出し、出力曲線と距離の積算値とに基づいて、飛行経路を生成する。【選択図】図6

Description

本開示は、飛行体が飛行するための飛行経路を生成する情報処理装置、飛行経路生成方法、プログラム、及び記録媒体に関する。
無人機の飛行の制御を指示する方式として、リモートコントローラを用いて飛行方向を指示し、この指示に従って無人機が飛行する方式(手動式)、事前に設定された飛行経路に従って無人機が飛行する方式(自動式)、が考えられる。自動式を採用する無人機として、予め設定された固定経路を通りながら撮像を行うプラットフォーム(無人機)が知られている(特許文献1参照)。
特開2010−61216号公報
特許文献1に示すように自動式で飛行経路が設定される場合、飛行経路には、直線的な経路及び曲線的な経路が含まれ得る。直線的な経路が設定される場合、例えば2つの点を通るように、直線的な経路が設定され得る。曲線的な経路が設定される場合、制約された二次ベジェ曲線となるように、曲線的な経路が設定され得る。制約された二次ベジェ曲線では、2つの点を通る二次ベジェ曲線は、この2つの点の垂直二等分線に対して対称性を有する必要があるということを意味する。例えば、複雑に曲がりくねった道路上を無人機が飛行する場合には、道路に沿って飛行させることが困難であり、複雑な曲線形状の飛行経路を設定して無人航空機が飛行することは困難である。したがって、より制約が少なく、自由な形状で飛行経路が設定可能となることが望ましい。
一態様において、情報処理装置は、飛行体が飛行するための飛行経路を生成する情報処理装置であって、処理部を備え、処理部は、第1の経路を示す入力線を取得し、入力線の始点を始点とし、入力線の終点を終点とする、出力曲線を生成し、入力線における各点と出力曲線との距離の積算値を算出し、出力曲線と距離の積算値とに基づいて、飛行経路を生成する。
処理部は、積算値が第1の閾値未満である場合、出力曲線で示された飛行経路を生成してよい。
処理部は、積算値が第1の閾値以上である場合、入力線における各点のうち、距離が最長となる第1の点を決定し、入力線を第1の点で分割して、入力線において第1の入力線部分と第2の入力線部分とを生成し、第1の入力線部分の始点を始点とし、第1の入力線部分の終点を終点とする、出力曲線における第1の出力曲線部分を生成し、第2の入力線部分の始点を始点とし、第2の入力線部分の終点を終点とする、出力曲線における第2の出力曲線部分を生成する。
処理部は、第1の入力線部分における各点と第1の出力曲線部分との距離の積算値を算出し、距離の積算値が第1の閾値未満となるまで、第1の入力線部分の分割及び分割された第1の入力線部分に対応する出力曲線部分の生成を反復してよい。
処理部は、生成された複数の出力曲線部分を接続して、飛行経路を生成してよい。
処理部は、入力線の始点と、入力線の終点と、始点及び終点と等距離な点を結ぶ垂直二等分線上の点である等距離点と、に基づいて、入力線の始点と入力線の終点とを通り、垂直二等分線に対して対称である出力曲線を生成し、距離の積算値を基に、垂直二等分線上において等距離点を移動させるための導関数を算出し、導関数の算出値に基づいて、出力曲線の変形の有無を決定してよい。
処理部は、導関数の算出値が第2の閾値未満である場合、出力曲線を不変としてよい。
処理部は、導関数の算出値が第2の閾値以上である場合、導関数の算出値に基づいて、垂直二等分線上において等距離点を移動させ、入力線の始点と、入力線の終点と、移動された等距離点と、に基づいて、出力曲線を変形してよい。
処理部は、等距離点の移動及び出力曲線の変形を、導関数の算出値が第2の閾値未満となるまで反復してよい。
出力曲線は、入力線の始点と、入力線の終点と、等距離点と、を制御点とする2次ベジェ曲線でよい。
情報処理装置は、通信部、を更に備えてよい。処理部は、通信部を介して、飛行経路の情報を、飛行体に送信してよい。
情報処理装置は、通信部、を更に備えてよい。処理部は、通信部を介して、入力線の始点と入力線の終点と等距離点との情報を、飛行体に送信してよい。
情報処理装置は、表示部、を更に備えてよい。処理部は、表示部を介して、飛行経路の情報を表示してよい。
情報処理装置は、表示部、を更に備えてよい。処理部は、表示部を介して、入力線の始点と入力線の終点と等距離点との情報を表示してよい。
情報処理装置は、飛行体でよい。処理部は、飛行経路に従って、飛行体の飛行を制御してよい。
一態様において、飛行経路生成方法は、飛行体が飛行するための飛行経路を生成する情報処理装置における飛行経路生成方法であって、第1の経路を示す入力線を取得するステップと、入力線の始点を始点とし、入力線の終点を終点とする、出力曲線を生成するステップと、入力線における各点と出力曲線との距離の積算値を算出するステップと、出力曲線と距離の積算値とに基づいて、飛行経路を生成するステップと、を有する。
飛行経路を生成するステップは、積算値が第1の閾値未満である場合、出力曲線で示された飛行経路を生成するステップを含んでよい。
飛行経路を生成するステップは、積算値が第1の閾値以上である場合、入力線における各点のうち、距離が最長となる第1の点を決定するステップと、入力線を第1の点で分割して、入力線において第1の入力線部分と第2の入力線部分とを生成するステップと、第1の入力線部分の始点を始点とし、第1の入力線部分の終点を終点とする、出力曲線における第1の出力曲線部分を生成するステップと、第2の入力線部分の始点を始点とし、第2の入力線部分の終点を終点とする、出力曲線における第2の出力曲線部分を生成するステップと、を含んでよい。
距離の積算値を算出するステップは、第1の入力線部分における各点と第1の出力曲線部分との距離の積算値を算出するステップを含んでよい。飛行経路を生成するステップは、距離の積算値が第1の閾値未満となるまで、第1の入力線部分の分割及び分割された第1の入力線部分に対応する出力曲線部分の生成を反復するステップを含んでよい。
飛行経路を生成するステップは、生成された複数の出力曲線部分を接続して、飛行経路を生成するステップを含んでよい。
出力曲線を生成するステップは、入力線の始点と、入力線の終点と、始点及び終点と等距離な点を結ぶ垂直二等分線上の点である等距離点と、に基づいて、入力線の始点と入力線の終点とを通り、垂直二等分線に対して対称である出力曲線を生成するステップと、距離の積算値を基に、垂直二等分線上において等距離点を移動させるための導関数を算出するステップと、導関数の算出値に基づいて、出力曲線の変形の有無を判定するステップと、を含んでよい。
出力曲線を生成するステップは、導関数の算出値が第2の閾値未満である場合、出力曲線を不変とするステップを含んでよい。
出力曲線を生成するステップは、導関数の算出値が第2の閾値以上である場合、導関数の算出値に基づいて、垂直二等分線上において等距離点を移動させるステップと、入力線の始点と、入力線の終点と、移動された等距離点と、に基づいて、出力曲線を変形するステップと、を含んでよい。
出力曲線を生成するステップは、等距離点の移動及び出力曲線の変形を、導関数の算出値が第2の閾値未満となるまで反復するステップを含んでよい。
出力曲線は、入力線の始点と、入力線の終点と、等距離点と、を制御点とする2次ベジェ曲線でよい。
飛行経路生成方法は、飛行経路の情報を、飛行体に送信するステップ、を更に含んでよい。
飛行経路生成方法は、入力線の始点と入力線の終点と等距離点との情報を、飛行体に送信するステップ、を更に含んでよい。
飛行経路生成方法は、飛行経路の情報を表示するステップ、を更に含んでよい。
飛行経路生成方法は、入力線の始点と入力線の終点と等距離点との情報を表示するステップ、を更に含んでよい。
情報処理装置は、飛行体でよい。飛行経路生成方法は、飛行経路に従って、飛行体の飛行を制御するステップ、を更に含んでよい。
一態様において、プログラムは、飛行体が飛行するための飛行経路を生成する情報処理装置に、第1の経路を示す入力線を取得するステップと、入力線の始点を始点とし、入力線の終点を終点とする、出力曲線を生成するステップと、入力線における各点と出力曲線との距離の積算値を算出するステップと、出力曲線と距離の積算値とに基づいて、飛行経路を生成するステップと、を実行させるための、プログラムである。
一態様において、記録媒体は、飛行体が飛行するための飛行経路を生成する情報処理装置に、第1の経路を示す入力線を取得するステップと、入力線の始点を始点とし、入力線の終点を終点とする、出力曲線を生成するステップと、入力線における各点と出力曲線との距離の積算値を算出するステップと、出力曲線と距離の積算値とに基づいて、飛行経路を生成するステップと、を実行させるための、プログラムを記録したコンピュータ読取り可能な記録媒体である。
なお、上記の発明の概要は、本開示の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
実施形態における飛行体システムの第1構成例を示す模式図 実施形態における飛行体システムの第2構成例を示す模式図 無人航空機の具体的な外観の一例を示す図 無人航空機のハードウェア構成の一例を示すブロック図 端末のハードウェア構成の一例を示すブロック図 端末により飛行経路生成する場合の動作例を示すフローチャート 飛行経路が生成される入力線Qの一例を示す図 初回の曲線フィッティングにより生成された出力曲線Cの一例を示す図 入力線Qと出力曲線Cとの誤差Eの一例を示す図 入力線Qの分割点Kの一例を示す図 分割点Kで分割されて得られた複数の入力線部分q1,q2の一例を示す図 入力線部分q1の曲線フィッティングにより生成された出力曲線部分c1の一例を示す図 入力線部分q2の曲線フィッティングにより生成された出力曲線部分c2の一例を示す図 入力線部分q2と出力曲線部分c2との誤差E2の一例を示す図 入力線部分q2の分割点K2の一例を示す図 分割点K2で分割されて得られた複数の入力線部分q2_1,q2_2の一例を示す図 出力曲線部分を合成して形成された飛行経路と各出力曲線部分cの生成に用いられた制御点とを示す図 端末により曲線フィッティングする場合の具体的な動作例を示すフローチャート 入力線Qの始点P0と等距離点P1としての中点と終点P2との一例を示す図 入力線Q上の各点pと出力曲線Cとしての直線との距離の積算値Dの一例を示す図 垂直二等分線L1に沿うV軸の設定例を示す図 V軸上を移動する等距離点P1の移動距離dの一例を示す図 V軸上を移動した等距離点P1と等距離点P1に基づいて変更された出力曲線Cと一例を示す図
以下、発明の実施形態を通じて本開示を説明するが、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須とは限らない。
特許請求の範囲、明細書、図面、及び要約書には、著作権による保護の対象となる事項が含まれる。著作権者は、これらの書類の何人による複製に対しても、特許庁のファイル又はレコードに表示される通りであれば異議を唱えない。ただし、それ以外の場合、一切の著作権を留保する。
以下の実施形態では、飛行体として、無人航空機(UAV:Unmanned Aerial Vehicle)を例示する。無人航空機は、空中を移動する航空機を含む。本明細書に添付する図面では、無人航空機を「UAV」とも表記する。情報処理装置として、例えば端末を例示するが、他の装置(例えば送信機、サーバ、無人航空機)でもよい。飛行経路生成方法は、情報処理装置の動作が規定されたものである。また、記録媒体は、プログラム(例えば情報処理装置に各種の処理を実行させるプログラム)が記録されたものである。
図1は、実施形態における飛行体システム10の第1構成例を示す模式図である。飛行体システム10は、無人航空機100及び端末80を備える。無人航空機100及び端末80は、相互に有線通信又は無線通信(例えば無線LAN(Local Area Network))により通信可能である。図1では、端末80が携帯端末(例えばスマートフォン、タブレット端末)であることを例示している。
なお、飛行体システムは、無人航空機、送信機(プロポ)、及び携帯端末を備えた構成であってよい。送信機を備える場合、送信機の前面に配置された左右の制御棒を使って、ユーザは、無人航空機の飛行の制御を指示可能である。また、この場合、無人航空機、送信機、及び携帯端末は、相互に有線通信又は無線通信により通信可能である。
図2は、実施形態における飛行体システム10の第2構成例を示す模式図である。図2では、端末80がPCであることを例示している。図1及び図2のいずれであっても、端末80が有する機能は同じでよい。
図3は、無人航空機100の具体的な外観の一例を示す図である。図3には、無人航空機100が移動方向STV0に飛行する場合の斜視図が示される。無人航空機100は移動体の一例である。
図3に示すように、地面と平行であって移動方向STV0に沿う方向にロール軸(x軸参照)が設定される。この場合、地面と平行であってロール軸に垂直な方向にピッチ軸(y軸参照)が設定され、更に、地面に垂直であってロール軸及びピッチ軸に垂直な方向にヨー軸(z軸参照)が設定される。
無人航空機100は、UAV本体102と、ジンバル200と、撮像部220と、複数の撮像部230とを含む構成である。
UAV本体102は、複数の回転翼(プロペラ)を備える。UAV本体102は、複数の回転翼の回転を制御することにより無人航空機100を飛行させる。UAV本体102は、例えば4つの回転翼を用いて無人航空機100を飛行させる。回転翼の数は、4つに限定されない。また、無人航空機100は、回転翼を有さない固定翼機でもよい。
撮像部220は、所望の撮像範囲に含まれる被写体(例えば、空撮対象となる上空の様子、山や川等の景色、地上の建物)を撮像する撮像用のカメラでよい。
複数の撮像部230は、無人航空機100の飛行を制御するために無人航空機100の周囲を撮像するセンシング用のカメラでよい。2つの撮像部230が、無人航空機100の機首である正面に設けられてよい。さらに、他の2つの撮像部230が、無人航空機100の底面に設けられてよい。正面側の2つの撮像部230はペアとなり、いわゆるステレオカメラとして機能してよい。底面側の2つの撮像部230もペアとなり、ステレオカメラとして機能してよい。複数の撮像部230により撮像された画像に基づいて、無人航空機100の周囲の3次元空間データ(3次元形状データ)が生成されてよい。なお、無人航空機100が備える撮像部230の数は4つに限定されない。無人航空機100は、少なくとも1つの撮像部230を備えていればよい。無人航空機100は、無人航空機100の機首、機尾、側面、底面、及び天井面のそれぞれに少なくとも1つの撮像部230を備えてよい。撮像部230で設定できる画角は、撮像部220で設定できる画角より広くてよい。撮像部230は、単焦点レンズ又は魚眼レンズを有してよい。
図4は、無人航空機100のハードウェア構成の一例を示すブロック図である。無人航空機100は、UAV制御部110と、通信インタフェース150と、メモリ160と、ストレージ170と、ジンバル200と、回転翼機構210と、撮像部220と、撮像部230と、GPS受信機240と、慣性計測装置(IMU:Inertial Measurement Unit)250と、磁気コンパス260と、気圧高度計270と、超音波センサ280と、レーザー測定器290と、を含む構成である。
UAV制御部110は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)又はDSP(Digital Signal Processor)を用いて構成される。UAV制御部110は、無人航空機100の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。
UAV制御部110は、メモリ160に格納されたプログラムに従って無人航空機100の飛行を制御する。UAV制御部110は、飛行を制御してよい。UAV制御部110は、画像を空撮してよい。
UAV制御部110は、無人航空機100の位置を示す位置情報を取得する。UAV制御部110は、GPS受信機240から、無人航空機100が存在する緯度、経度及び高度を示す位置情報を取得してよい。UAV制御部110は、GPS受信機240から無人航空機100が存在する緯度及び経度を示す緯度経度情報、並びに気圧高度計270から無人航空機100が存在する高度を示す高度情報をそれぞれ位置情報として取得してよい。UAV制御部110は、超音波センサ280による超音波の放射点と超音波の反射点との距離を高度情報として取得してよい。
UAV制御部110は、磁気コンパス260から無人航空機100の向きを示す向き情報を取得してよい。向き情報は、例えば無人航空機100の機首の向きに対応する方位で示されてよい。
UAV制御部110は、撮像部220が撮像すべき撮像範囲を撮像する時に無人航空機100が存在すべき位置を示す位置情報を取得してよい。UAV制御部110は、無人航空機100が存在すべき位置を示す位置情報をメモリ160から取得してよい。UAV制御部110は、無人航空機100が存在すべき位置を示す位置情報を、通信インタフェース150を介して他の装置から取得してよい。UAV制御部110は、3次元地図データベースを参照して、無人航空機100が存在可能な位置を特定して、その位置を無人航空機100が存在すべき位置を示す位置情報として取得してよい。
UAV制御部110は、撮像部220及び撮像部230のそれぞれの撮像範囲を示す撮像範囲情報を取得してよい。UAV制御部110は、撮像範囲を特定するためのパラメータとして、撮像部220及び撮像部230の画角を示す画角情報を撮像部220及び撮像部230から取得してよい。UAV制御部110は、撮像範囲を特定するためのパラメータとして、撮像部220及び撮像部230の撮像方向を示す情報を取得してよい。UAV制御部110は、例えば撮像部220の撮像方向を示す情報として、ジンバル200から撮像部220の姿勢の状態を示す姿勢情報を取得してよい。撮像部220の姿勢情報は、ジンバル200のピッチ軸及びヨー軸の基準回転角度からの回転角度を示してよい。
UAV制御部110は、撮像範囲を特定するためのパラメータとして、無人航空機100が存在する位置を示す位置情報を取得してよい。UAV制御部110は、撮像部220及び撮像部230の画角及び撮像方向、並びに無人航空機100が存在する位置に基づいて、撮像部220が撮像する地理的な範囲を示す撮像範囲を画定し、撮像範囲情報を生成することで、撮像範囲情報を取得してよい。
UAV制御部110は、メモリ160から撮像範囲情報を取得してよい。UAV制御部110は、通信インタフェース150を介して撮像範囲情報を取得してよい。
UAV制御部110は、ジンバル200、回転翼機構210、撮像部220及び撮像部230を制御する。UAV制御部110は、撮像部220の撮像方向又は画角を変更することによって、撮像部220の撮像範囲を制御してよい。UAV制御部110は、ジンバル200の回転機構を制御することで、ジンバル200に支持されている撮像部220の撮像範囲を制御してよい。
撮像範囲とは、撮像部220又は撮像部230により撮像される地理的な範囲をいう。撮像範囲は、緯度、経度、及び高度で定義される。撮像範囲は、緯度、経度、及び高度で定義される3次元空間データにおける範囲でよい。撮像範囲は、緯度及び経度で定義される2次元空間データにおける範囲でもよい。撮像範囲は、撮像部220又は撮像部230の画角及び撮像方向、並びに無人航空機100が存在する位置に基づいて特定されてよい。撮像部220及び撮像部230の撮像方向は、撮像部220及び撮像部230の撮像レンズが設けられた正面が向く方位と俯角とから定義されてよい。撮像部220の撮像方向は、無人航空機100の機首の方位と、ジンバル200に対する撮像部220の姿勢の状態とから特定される方向でよい。撮像部230の撮像方向は、無人航空機100の機首の方位と、撮像部230が設けられた位置とから特定される方向でよい。
UAV制御部110は、複数の撮像部230により撮像された複数の画像を解析することで、無人航空機100の周囲の環境を特定してよい。UAV制御部110は、無人航空機100の周囲の環境に基づいて、例えば障害物を回避して飛行を制御してよい。
UAV制御部110は、無人航空機100の周囲に存在するオブジェクトの立体形状(3次元形状)を示す立体情報(3次元情報)を取得してよい。オブジェクトは、例えば、建物、道路、車、木等の風景の一部でよい。立体情報は、例えば、3次元空間データである。UAV制御部110は、複数の撮像部230から得られたそれぞれの画像から、無人航空機100の周囲に存在するオブジェクトの立体形状を示す立体情報を生成することで、立体情報を取得してよい。UAV制御部110は、メモリ160又はストレージ170に格納された3次元地図データベースを参照することにより、無人航空機100の周囲に存在するオブジェクトの立体形状を示す立体情報を取得してよい。UAV制御部110は、ネットワーク上に存在するサーバが管理する3次元地図データベースを参照することで、無人航空機100の周囲に存在するオブジェクトの立体形状に関する立体情報を取得してよい。
UAV制御部110は、回転翼機構210を制御することで、無人航空機100の飛行を制御する。つまり、UAV制御部110は、回転翼機構210を制御することにより、無人航空機100の緯度、経度、及び高度を含む位置を制御する。UAV制御部110は、無人航空機100の飛行を制御することにより、撮像部220の撮像範囲を制御してよい。UAV制御部110は、撮像部220が備えるズームレンズを制御することで、撮像部220の画角を制御してよい。UAV制御部110は、撮像部220のデジタルズーム機能を利用して、デジタルズームにより、撮像部220の画角を制御してよい。
撮像部220が無人航空機100に固定され、撮像部220を動かせない場合、UAV制御部110は、特定の日時に特定の位置に無人航空機100を移動させることにより、所望の環境下で所望の撮像範囲を撮像部220に撮像させてよい。あるいは撮像部220がズーム機能を有さず、撮像部220の画角を変更できない場合でも、UAV制御部110は、特定された日時に、特定の位置に無人航空機100を移動させることで、所望の環境下で所望の撮像範囲を撮像部220に撮像させてよい。
通信インタフェース150は、端末80と通信する。通信インタフェース150は、任意の無線通信方式により無線通信してよい。通信インタフェース150は、任意の有線通信方式により有線通信してよい。通信インタフェース150は、空撮画像や空撮画像に関する付加情報(メタデータ)を、端末80に送信してよい。通信インタフェース150は、端末80から飛行の制御の指示の情報を取得してよい。飛行の制御の指示の情報は、無人航空機100を飛行するための飛行経路、飛行経路を生成するための飛行位置(Waypoint)、飛行経路の生成の基となる制御点、等の情報を含んでよい。
メモリ160は、UAV制御部110がジンバル200、回転翼機構210、撮像部220、撮像部230、GPS受信機240、慣性計測装置250、磁気コンパス260、気圧高度計270、超音波センサ280、及びレーザー測定器290を制御するのに必要なプログラム等を格納する。メモリ160は、コンピュータ読み取り可能な記録媒体でよく、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、及びUSB(Universal Serial Bus)メモリ等のフラッシュメモリの少なくとも1つを含んでよい。メモリ160は、無人航空機100から取り外し可能であってよい。メモリ160は、作業用メモリとして動作してよい。
ストレージ170は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、SDカード、USBメモリ、その他のストレージの少なくとも1つを含んでよい。ストレージ170は、各種情報、各種データを保持してよい。ストレージ170は、無人航空機100から取り外し可能であってよい。ストレージ170は、空撮画像を記録してよい。
ジンバル200は、ヨー軸、ピッチ軸、及びロール軸を中心に撮像部220を回転可能に支持してよい。ジンバル200は、ヨー軸、ピッチ軸、及びロール軸の少なくとも1つを中心に撮像部220を回転させることで、撮像部220の撮像方向を変更してよい。
回転翼機構210は、複数の回転翼と、複数の回転翼を回転させる複数の駆動モータと、を有する。回転翼機構210は、UAV制御部110により回転を制御されることにより、無人航空機100を飛行させる。
撮像部220は、所望の撮像範囲の被写体を撮像して撮像画像のデータを生成する。撮像部220の撮像により得られた画像データ(例えば空撮画像)は、撮像部220が有するメモリ、又はストレージ170に格納されてよい。
撮像部230は、無人航空機100の周囲を撮像して撮像画像のデータを生成する。撮像部230の画像データは、ストレージ170に格納されてよい。
GPS受信機240は、複数の航法衛星(つまり、GPS衛星)から発信された時刻及び各GPS衛星の位置(座標)を示す複数の信号を受信する。GPS受信機240は、受信された複数の信号に基づいて、GPS受信機240の位置(つまり、無人航空機100の位置)を算出する。GPS受信機240は、無人航空機100の位置情報をUAV制御部110に出力する。なお、GPS受信機240の位置情報の算出は、GPS受信機240の代わりにUAV制御部110により行われてよい。この場合、UAV制御部110には、GPS受信機240が受信した複数の信号に含まれる時刻及び各GPS衛星の位置を示す情報が入力される。
慣性計測装置250は、無人航空機100の姿勢を検出し、検出結果をUAV制御部110に出力する。慣性計測装置250は、無人航空機100の姿勢として、無人航空機100の前後、左右、及び上下の3軸方向の加速度と、ピッチ軸、ロール軸、及びヨー軸の3軸方向の角速度とを検出してよい。
磁気コンパス260は、無人航空機100の機首の方位を検出し、検出結果をUAV制御部110に出力する。
気圧高度計270は、無人航空機100が飛行する高度を検出し、検出結果をUAV制御部110に出力する。
超音波センサ280は、超音波を放射し、地面や物体により反射された超音波を検出し、検出結果をUAV制御部110に出力する。検出結果は、無人航空機100から地面までの距離つまり高度を示してよい。検出結果は、無人航空機100から物体(被写体)までの距離を示してよい。
レーザー測定器290は、物体にレーザー光を照射し、物体で反射された反射光を受光し、反射光により無人航空機100と物体(被写体)との間の距離を測定する。レーザー光による距離の測定方式は、一例として、タイムオブフライト方式でよい。
図5は、端末80のハードウェア構成の一例を示すブロック図である。端末80は、端末制御部81、操作部83、通信部85、メモリ87、表示部88、及びストレージ89を備える。端末80は、無人航空機100の飛行制御の指示を希望するユーザに所持され得る。
端末制御部81は、例えばCPU、MPU又はDSPを用いて構成される。端末制御部81は、端末80の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。
端末制御部81は、通信部85を介して、無人航空機100からのデータや情報を取得してよい。端末制御部81は、操作部83を介して入力されたデータや情報を取得してもよい。端末制御部81は、メモリ87に保持されたデータや情報を取得してもよい。端末制御部81は、通信部85を介して、無人航空機100へ、データや情報を送信してもよい。端末制御部81は、データや情報を表示部88に送り、このデータや情報に基づく表示情報を表示部88に表示させてもよい。表示部88に表示される情報や通信部85により無人航空機100へ送信される情報は、無人航空機100を飛行するための飛行経路、飛行経路を生成するための飛行位置(Waypoint)、飛行経路の生成の基となる制御点、等の情報を含んでよい。
端末制御部81は、飛行経路を生成するためのアプリケーションを実行してもよい。端末制御部81は、アプリケーションで用いられる各種のデータを生成してもよい。
操作部83は、端末80のユーザにより入力されるデータや情報を受け付けて取得する。操作部83は、ボタン、キー、タッチスクリーン、マイクロホン、等の入力装置を含んでもよい。ここでは、主に、操作部83と表示部88とがタッチパネルにより構成されることを例示する。この場合、操作部83は、タッチ操作、タップ操作、ドラック操作等を受付可能である。
通信部85は、各種の無線通信方式により、無人航空機100との間で無線通信する。この無線通信の無線通信方式は、例えば、無線LAN、Bluetooth(登録商標)、又は公衆無線回線を介した通信を含んでよい。通信部85は、任意の有線通信方式により有線通信してよい。
メモリ87は、例えば端末80の動作を規定するプログラムや設定値のデータが格納されたROMと、端末制御部81の処理時に使用される各種の情報やデータを一時的に保存するRAMを有してもよい。メモリ87は、ROM及びRAM以外のメモリが含まれてよい。メモリ87は、端末80の内部に設けられてよい。メモリ87は、端末80から取り外し可能に設けられてよい。プログラムは、アプリケーションプログラムを含んでよい。
表示部88は、例えばLCD(Liquid Crystal Display)を用いて構成され、端末制御部81から出力された各種の情報やデータを表示する。表示部88は、アプリケーションの実行に係る各種データや情報を表示してもよい。
ストレージ89は、各種データ、情報を蓄積し、保持する。ストレージ89は、HDD、SSD、SDカード、USBメモリ、等でよい。ストレージ89は、端末80の内部に設けられてもよい。ストレージ89は、端末80から取り外し可能に設けられてもよい。ストレージ89は、無人航空機100から取得された空撮画像や付加情報を保持してよい。付加情報は、メモリ87に保持されてもよい。
なお、飛行体システム10が送信機(プロポ)を備える場合、端末80が実行する処理は、送信機が実行してもよい。送信機は、端末80と同様の構成部を有するので、詳細な説明については省略する。送信機は、制御部、操作部、通信部、表示部、メモリ、等を有する。飛行体システム10が送信機を有する場合、端末80が設けられなくてもよい。
次に、端末80の端末制御部81が有する飛行経路の生成に関する機能について説明する。端末制御部81は、処理部の一例である。端末制御部81は、飛行経路の生成に関する処理を行うことで、複雑な経路に対応した飛行経路を生成可能である。
端末制御部81は、無人航空機100の飛行を希望する経路FR1を取得する。経路FR1は、任意の形状の経路でよく、形状が複雑な経路であってよく、無人航空機100の滑らかな飛行が困難な経路であってよい。端末制御部81は、操作部83を介してユーザ操作を受け、ユーザ操作を基に、経路FR1を生成して取得してよい。端末制御部81は、メモリ87等(メモリ87やストレージ89)から、予め保持された経路FR1の情報を取得してよい。端末制御部81は、通信部85を介して、地図情報を保持する外部の地図サーバにアクセスし、経路FR1を識別するための識別情報を送信し、経路FR1の情報を受信して取得してよい。経路FR1は、入力線Qで示されてよい。
端末制御部81は、入力線Qの始点P0及び終点P2を、所定の形状を有する出力曲線Cの始点P0および終点P2として、出力曲線Cを生成する。出力曲線Cは、入力線Q(経路FR1)よりも単純化された形状を有する曲線でよく、無人航空機100の滑らかな飛行が可能な経路の少なくとも一部となり得る。出力曲線Cは、二次ベジェ曲線やその他の曲線でよい。ここでは、出力曲線Cは、二次ベジェ曲線であることを主に例示する。入力線Qを基に又は後述する入力線部分qを基に出力曲線Cを生成することを、曲線フィッティングとも称する。
二次ベジェ曲線は、例えば以下の式(0)で示されてよい。
Figure 2020003428
なお、tは引数である。B(t)は、二次ベジェ曲線上の点である。P0,P1,P2は、二次ベジェ曲線を生成するための制御点となる。式(0)のP0及びP2は、出力曲線Cの始点P0及び終点P2に相当する。式(0)のP1は、始点P0及び終点P2から等距離に位置する等距離点に相当する。
端末制御部81は、入力線Qと出力曲線Cとの差分(誤差E)を算出する。誤差Eは、以下の式(1)で示されてよい。
Figure 2020003428
なお、pは、入力線Q上の点である。dist(p,C)は、出力曲線Cと入力線Q上の点pとの差分(距離)である。したがって、式(1)で示される誤差Eは、例えば図9の点線部分を含む面積で示されてよい。
端末制御部81は、入力線Qにおいて、出力曲線Cとの距離が最も遠い(最長である)分割点Kを決定する。つまり、dist(p,C)の値が最大となるpの位置を算出してよい。なお、分割点Kは、距離が最長であることに限らず、距離が閾値th4以上である複数の位置のうちのいずれかであってもよい。
端末制御部81は、入力線Qを分割点Kの位置で2つの入力線部分q1,q2に分割する。分割点Kは、入力線Qを分割する基準となる点である。そして、端末制御部81は、2つの入力線部分q1,q2に対して曲線フィッティングを行い、入力線部分q1,q2に基づく出力曲線部分c1,c2を生成してよい。また、端末制御部81は、入力線部分qの分離や曲線フィッティングを反復して実施し、入力線部分q3,q4,q5,・・・、出力曲線部分c3,c4,・・・、を生成してよい。
つまり、端末制御部81は、入力線Qを1つ以上の分割点を用いて分割し、複数の入力線部分qを生成し、複数の入力線部分qに対応する複数の出力曲線部分cを生成してよい。複数の出力曲線部分cは、実際に無人航空機100が飛行するための飛行経路FR2の基となる。出力曲線部分cは、部分的な出力曲線Cとも言える。
よって、入力線Q及び出力曲線Cに適用されることは、入力線部分q及び出力曲線部分cにも同様に適用され得る。例えば入力線部分qの始点P0及び終点P2を始点P0及び終点P2として、出力曲線部分cを生成してよい。入力線部分qが分割点Kで分割され、更に複数の入力線部分qが生成されてよい。
入力線部分qの分離や曲線フィッティングの回数が少ない程、飛行経路FR2が、曲線フィッティングを実施する前の元の入力線Qの形状から簡略化された経路となる。そのため、所望の経路FR1の形状が単純化された飛行経路FR2で、飛行方向の変更量を少なくして無人航空機100が飛行できる。
また、入力線部分qの分離や曲線フィッティングの回数が多い程、飛行経路FR2が、曲線フィッティングを実施する前の元の入力線Qの形状に近くなる。そのため、所望の経路FR1に形状が近い飛行経路FR2で、無人航空機100が飛行可能となる。
端末制御部81は、出力曲線Cや複数の出力曲線部分cに基づいて、飛行経路FR2を生成してよい。例えば、端末制御部81は、出力曲線Cを飛行経路FR2としてよい。端末制御部81は、複数の出力曲線部分cのうち、隣り合う出力曲線部分c同士を接続して、飛行経路FR2を生成してよい。この場合、端末制御部81は、隣り合う出力曲線部分cのそれぞれの始点P0及び終点P2を接続して、飛行経路FR2を生成する。無人航空機100は、生成された飛行経路FR2に従って飛行する。よって、出力曲線Cや出力曲線部分cの始点P0及び終点P2は、無人航空機100が飛行する際に通過する飛行位置となる。この飛行位置をウェイポイントとも称する。
端末制御部81は、曲線フィッティングのフィッティング結果をメモリ87等に保存してよい。端末制御部81は、表示部88を介して、フィッティング結果を表示してよい。端末制御部81は、通信部85を介して、フィッティング結果を無人航空機100へ送信してよい。フィッティング結果は、各ウェイポイントWPの情報、飛行経路FR2の情報を含んでよい。飛行経路FR2は、出力曲線Cや、複数の出力曲線部分cの組み合わせで示されてよい。また、フィッティング結果は、出力曲線Cや出力曲線部分cの生成の基となる制御点(始点P0、等距離点P1、終点P2)を含んでよい。
端末80は、フィッティング結果を表示することで、端末80により導出された飛行経路FR2やウェイポイントWPの位置を確認できる。端末80は、フィッティング結果を無人航空機100に通知することで、無人航空機100がフィッティングされた飛行経路FP2に従って飛行できる。
次に、曲線フィッティングの具体例について説明する。
端末制御部81は、曲線フィッティングを行う場合、初期設定として、入力線Qの始点P0と終点P2とから等距離にある等距離点P1を設定する。等距離点P1は、初期値として、始点P0と終点P2との中心の点である中点でよい。これらの始点P0、等距離点P1、終点P2は、出力曲線Cとしての二次ベジェ曲線における3つの制御点となる。等距離点P1が始点P0と終点P2との中点である場合、二次ベジェ曲線は、直線となる。また、等距離点P1は、始点P0と終点P2とを結ぶ仮想線を二等分する垂直二等分線L1上に位置する。垂直二等分線L1に沿う軸を、V軸とする。この場合、等距離点P1は、V軸上を移動可能である。
端末制御部81は、入力線Q上の点pと出力曲線Cとの距離の積算値Dを算出してよい。この積算値Dは、以下の式(2)で示されてよい。点Pは、入力線Q上において任意に移動可能である。
Figure 2020003428
なお、pは、入力線Qの点である。dist(p,C)は、出力曲線Cと入力線Q上の各点pとの距離である。したがって、式(2)で示される距離の積算値Dは、図20の点線部分を含む面積で示されてよい。なお、式(1)、(2)を比較すると理解できるように、式(2)は、式(2)と同様の形式である。
端末制御部81は、距離の積算値Dについて、V軸上での等距離点P1の移動距離dを導出するための導関数σを算出する。導関数σは、以下の式(3)で示されてよい。式(3)の導関数σでは、vが引数となっている。導関数σの値(導関数の算出値)が、移動距離dとなる。
Figure 2020003428
なお、導関数σは、式(3)に示すように、距離の積算値Dの微分値を示し、V軸方向の微小移動に対する距離の積算値Dの変化量を示す。なお、等距離点p1が初期値である始点P0及び終点P2の中点である場合、v=0である。導関数σは、距離の積算値Dを距離の積算値Dを変数vを用いて微分した値であるので、V軸上の位置によって導関数σの値が定まる。V軸上の位置が定まっているので、端末制御部81は、V軸上の位置vでの導関数σの値を算出可能であり、等距離点P1における導関数σの値を算出可能である。
導関数σの値が閾値th1以上である場合、V軸上での微小移動に対する距離の積算値Dの変化が大きい。つまり、この時点での等距離点P1の位置では、等距離点P1を移動させると、距離の積算値Dが大きく変化する。そのため、この場合、端末制御部81は、距離の積算値Dが小さくなるように(例えば最小化するように)、等距離点P1をV軸上で正方向又は負方向に移動距離dだけ移動させてよい。この場合、等距離点P1をV軸上で移動方向を含めて移動距離dだけ移動させてよい。dが、導関数σの値となり、正数はV軸の正方向、負数はV軸の負方向になる。閾値th1は、指定変動値とも称される。
そして、端末制御部81は、始点P0、移動距離dだけ移動した後の等距離点P1、終点P2の3点を制御点とする二次ベジェ曲線としての出力曲線Cを算出してよい。この場合、今回の出力曲線Cは、前回の出力曲線Cよりも、元の入力線Qの形状に近くなる。よって、端末80は、所望の経路FR1に一層近い形状の飛行経路FR2に沿って、無人航空機100が飛行可能である。
導関数σの値が閾値th1未満である場合、V軸上での微小移動に対する距離の積算値Dの変化が小さい。つまり、この時点での等距離点P1の位置では、等距離点P1を移動させても、距離の積算値Dがあまり変化しない。そのため、等距離点P1を移動させなくても、所望の経路FR1と飛行経路FR2との差分はあまり変わらない。よって、端末制御部81は、等距離点P1の移動を省略し、余剰な曲線フィッティングに係る計算を省略してよい。これにより、端末80は、曲線フィッティングに要する時間を短縮でき、したがって飛行経路FR2の生成に要する時間を短縮できる。
端末制御部81は、導出された出力曲線Cに関連する曲線関連情報を、メモリ87等に保存してよい。端末制御部81は、表示部88を介して、曲線関連情報を表示してよい。この曲線関連情報は、導出された出力曲線Cや出力曲線Cを導出するための3点の制御点(始点P0,等距離点P1,終点P2)を含んでよい。
次に、飛行体システム10の動作例について説明する。
図6は、端末80により飛行経路FR2を生成する場合の動作例を示すフローチャートである。
まず、端末制御部81は、無人航空機100の飛行を希望する経路FR1を示す入力線Qを取得する(S11)。図7は、飛行経路FR2が生成される入力線Qの一例を示す図である。
端末制御部81は、入力線Qの始点P0と終点P2とを、出力曲線Cの始点P0及び終点P2として、二次ベジェ曲線としての出力曲線Cを生成する(S12)。つまり、端末制御部81は、曲線フィッティングにより、入力線Qを基に出力曲線Cを生成する。図8は、初回の曲線フィッティングにより生成された出力曲線Cの一例を示す図である。
端末制御部81は、入力線Qと出力曲線Cとの差分としての誤差Eを算出する。誤差Eは、端末制御部81は、誤差Eと比較される閾値th2としての指定誤差Esを取得する。端末制御部81は、誤差Eが指定誤差Es未満であるか否かを判定する(S13)。
図9は、入力線Qと出力曲線Cとの誤差Eの一例を示す図である。誤差Eは、入力線Qの各点pと出力曲線Cとの距離の積算値で示されるので、図9の点線の斜線で示されたエリアが誤差Eとなる。
なお、指定誤差Esは、例えば、メモリ87等に保持されていてメモリ87等から取得されてよいし、操作部83を介してユーザ操作により入力されて取得されてよい。指定誤差Esは、固定値でもよいし、可変値でもよい。指定誤差Esは、出力曲線Cの形状を入力線Qの形状にどの程度近似させるかの指標となる。指定誤差Esは、例えば、出力曲線Cが示す飛行経路FR2の地理的な特性(例えば実際には地形や建物により飛行困難な区域、風力)や無人航空機100の飛行予定の特性(例えば無人航空機100の飛行予定速度)に基づいて、決定されてよい。
誤差Eが指定誤差Es未満である場合、端末制御部81は、曲線フィッティングのフィッティング結果(例えば、飛行経路FR2、各ウェイポイントWP、各制御点)をメモリ87等に保存する(S14)。
つまり、誤差Eが指定誤差Es未満である場合、端末制御部81は、入力線Qの形状に出力曲線Cの形状に、無人航空機100が飛行可能に十分に近似されていると判断可能である。例えば、出力曲線Cとしての二次ベジェ曲線と実曲線とが同一ではないが、許容範囲である。そのため、端末制御部81は、出力曲線Cや出力曲線Cを生成するための各制御点(例えば始点P0、等距離点P1、終点P2)の情報を保存しておく。
誤差Eが指定誤差Es以上である場合、端末制御部81は、入力線Qの各点のうち、出力曲線Cまでの距離が最も遠い最遠点を、分割点Kとして算出する(S15)。言い換えると、複数算出された入力線Qの各点pと出力曲線Cとの距離のうち、最長距離となる入力線Q上の点pが、分割点Kとなる。図10は、出力曲線Cの分割点Kの一例を示す図である。
つまり、誤差Eが指定誤差Es以上である場合、端末制御部81は、入力線Qの形状に出力曲線Cの形状に、十分に近似されていないと判断可能である。この場合、端末制御部81は、誤差Eと指定誤差Es未満となるように、出力曲線Cの形状が入力線Qの形状に一層近づくように、出力曲線Cを改善する。
端末制御部81は、入力線Qを分割点Kの位置で分割し、2つの曲線として入力線部分q1,q2を生成する(S16)。図11は、分割点Kで分割されて得られた複数の入力線部分q1,q2の一例を示す図である。
端末制御部81は、S16の処理が終了すると、S11の処理に進む。つまり、端末制御部81は、S16で生成された入力線部分q(初回は入力線部分q1,q2)について、S11の曲線フィッティングを行う。
端末制御部81は、2回目以降(つまり図6のフローチャートの2周目以降)の曲線フィッティングについて、初回と同様に、入力線部分qと出力曲線部分cとの誤差を誤差E2として算出し、指定誤差Esと比較する。指定誤差Es未満に誤差E2が収まると、フィッティング結果を保存して図6の処理(つまり曲線フィッティング)を終了する。
一方、端末制御部81は、2回目以降の曲線フィッティングの結果、指定誤差Es未満に誤差E2が収まらない場合、再度、入力線部分qにおける分割点として分割点K2を導出し、入力線部分qを更に分割し、分割された入力線部分qについて曲線フィッティングを継続してよい。
図12は、入力線部分q1の曲線フィッティングにより生成された出力曲線部分c1の一例を示す図である。この出力曲線部分c1については、誤差E2が指定誤差Es未満となる。そのため、出力曲線部分c1は、更に分割点K2が導出されて曲線フィッティングが行われることがないので、この出力曲線部分c1は、最終的な飛行経路FR2の一部分として採用される。なお、図12では、入力線部分q1を点線で示している。
図13は、入力線部分q2の曲線フィッティングにより生成された出力曲線部分c2の一例を示す図である。図14は、入力線部分q2と出力曲線部分c2との誤差E2の一例を示す図である。誤差E2の導出方法は、初回の誤差Eの導出方法と同様でよい。この出力曲線部分c2については、誤差E2としての誤差E2が指定誤差Es以上となる。そのため、出力曲線部分c2は、更に分割点K2が導出され、更に複数の入力線部分q2_1,q2_2が生成され、入力線部分q2_1,q2_2について曲線フィッティングが継続される。図15は、入力線部分q2の分割点K2の一例を示す図である。図16は、分割点K2で分割されて得られた複数の入力線部分q2_1,q2_2の一例を示す図である。なお、図13〜図15では、入力線部分q2を点線で示している。
端末制御部81は、この曲線フィッティングを、生成された出力曲線部分cの全てについて誤差Eが指定誤差Es未満となるまで継続してよい。また、端末制御部81は、生成された入力線部分qの数に対して、誤差Eが指定誤差Es未満となった入力線部分qの数の割合が閾値th3以上となった場合に、曲線フィッティングを終了してもよい。
端末制御部81は、各入力線部分qについて誤差Eが指定誤差Es未満となった場合、生成された各出力曲線部分cを接続して、飛行経路FR2を生成する。なお、曲線フィッティングが1回であり、元の入力線Qから入力線部分qが生成されなかった場合、元の入力線Qから曲線フィッティングにより得られた出力曲線Cが、飛行経路FR2となる。
図17は、複数の出力曲線部分cを合成して形成された飛行経路FR2と、各出力曲線部分cの生成に用いられた各制御点とを示す図である。制御点は、始点P0、等距離点P1、終点P2を含む。図17では、出力曲線部分c11〜c19を接続して飛行経路FR2を生成している。図17では、出力曲線部分c12における始点P0、等距離点P1、終点P2を代表して示しているが、他の出力曲線部分cの始点P0、等距離点P1、終点P2も同様である。例えば、出力曲線部分c12における始点P0は、出力曲線部分c11における終点P2となる。例えば、出力曲線部分c12における終点P2は、出力曲線部分c13における始点P0となる。
無人航空機100が飛行する飛行位置(ウェイポイントWP)は、出力曲線部分cの始点P0や終点P2である。よって、入力線Qから導出される出力曲線部分cの数によって、ウェイポイントWPの数が変化する。ウェイポイントWPの数が少ない程、無人航空機100が通過すべき飛行位置の数が減り、飛行効率が向上する。ウェイポイントWPの数が多い程、1つの出力曲線部分cの長さが短くなり、誤差Eが小さくなる。
このように、端末制御部81(処理部の一例)は、経路FR1(第1の経路の一例)を示す入力線Qを取得する。端末制御部81は、入力線Qの始点を始点P0とし、入力線Qの終点を終点P2とする、出力曲線Cを生成する。端末制御部81は、入力線Qと出力曲線Cとの誤差E(入力線Qにおける各点pと出力曲線Cとの距離の積算値の一例)を算出する。端末制御部81は、出力曲線Cと誤差Eとに基づいて、飛行経路FR2を生成する。
これにより、端末80は、経路FR1が複雑な曲線形状を有する経路であり、無人航空機100が経路FR1に正確に沿って飛行することが困難な場合でも、経路FR1の形状に近く、無人航空機100が飛行可能な飛行経路FR2を生成できる。また、端末80は、入力線Qと出力曲線Cとの誤差Eを加味して飛行経路を生成するので、入力線Qと出力曲線Cとの近似具合を調整しながら、飛行経路FR2を生成できる。この場合、単純に1つの経路FR1を1つの二次ベジェ曲線に置換する場合と比較すると、必要に応じて出力曲線Cの形状を調整できる。よって、端末80は、より制約が少なく、自由な形状で飛行経路FR2を生成可能である。
また、端末制御部81は、誤差Eが指定誤差Es(第1の閾値の一例)未満である場合、出力曲線Cで示された飛行経路FR2を生成してよい。
これにより、端末80は、経路FR1と出力曲線Cとの形状が近い場合、出力曲線Cの形状を飛行経路FR2の形状に採用できる。よって、端末80は、経路FR1から容易に飛行経路FR2を生成できる。
また、端末制御部81は、誤差Eが指定誤差Es以上である場合、入力線Qにおける各点pのうち、距離が閾値th4以上となる分割点K1(第1の点の一例)を決定してよい。端末制御部81は、入力線Qを分割点Kで分割して、入力線Qにおいて入力線部分q1(第1の入力線部分の一例)と入力線部分q2(第2の入力線部分の一例)とを生成してよい。端末制御部81は、入力線部分q1の始点を始点P0とし、入力線部分q1の終点を終点P2とする、出力曲線Cにおける出力曲線部分c1(第1の出力曲線部分の一例)を生成してよい。端末制御部81は、入力線部分q2の始点を始点P0とし、入力線部分q2の終点を終点P2とする、出力曲線Cにおける出力曲線部分c2(第2の出力曲線部分の一例)を生成してよい。
これにより、端末80は、経路FR1と出力曲線Cとの形状が近似していない場合、分割点Kで入力線Qを分割できる。分割点Kは入力線Qからの距離が比較的遠い点である。また、分割点Kは、分割された入力線部分q1,q2の始点又は終点となり、対応する出力曲線部分c1の始点P0又は終点P2となり、ウェイポイントとなる。よって、分割された入力線部分q1,q2を基に出力曲線部分c1,c2を生成することで、飛行経路あFr2の形状が入力線Qの形状に近づき、誤差Eが小さくなる。よって、ユーザ所望の経路FR1に近い飛行経路FR2で、無人航空機100が飛行可能となる。
また、端末制御部81は、入力線部分qと出力曲線部分cとの誤差E2(入力線部分q1における各点pと出力曲線部分c1との距離の積算値の一例)を算出してよい。端末制御部81は、誤差E2が指定誤差Es未満となるまで、入力線部分qの分割及び分割された入力線部分qに対応する出力曲線部分cの生成を反復してよい。
これにより、端末80は、誤差E2が指定誤差Es未満となるまで、飛行経路FR2の形状をユーザ所望の経路FR1の形状に近づけることができる。また、端末80は、ある程度飛行経路FR2の形状をユーザ所望の経路FR1の形状にある程度近づいた段階で、曲線フィッティングを終了することで、飛行経路の生成に要する時間を短縮できる。
また、端末制御部81は、生成された複数の出力曲線部分cを接続して、飛行経路FR2を生成してよい。
これにより、端末80は、入力線Qに対して分割点Kを利用して細かく調整して各出力曲線部分cを生成し、各出力曲線部分cを接続して、飛行経路FR2を生成できる。
図18は、端末80により曲線フィッティングする場合の具体的な動作例を示すフローチャートである。曲線フィッティングは、図6のS12で行われる曲線フィッティングでよい。
端末制御部81は、入力線Qの始点P0と終点P2とから等距離に位置する等距離点p1のうち、始点P0と終点P2との中間に位置する中点を算出する(S21)。図19は、入力線Qの始点P0と等距離点P1としての中点と終点P2との一例を示す図である。
端末制御部81は、入力線Q上の各点pと出力曲線Cとの距離の積算値Dを算出する(S22)。図20は、入力線Q上の各点pと出力曲線Cとしての直線との距離の積算値Dの一例を示す図である。
端末制御部81は、入力線Qの始点P0と終点P2とを結ぶ線分を垂直に二等分する垂直二等分線L1を算出し、垂直二等分線L1をV軸として設定する。図21は、垂直二等分線L1に沿うV軸の設定例を示す図である。
端末制御部81は、距離の積算値Dについて、V軸上での等距離点P1としての中点の移動距離dを導出するための導関数σを算出する(S23)。端末制御部81は、等距離点P1(例えば図18のフローチャートの1周目では中点)における導関数σの値を算出する。導関数σの値は、移動距離dに相当する。
端末制御部81は、導関数σの値が、閾値th1としての指定変動値未満であるか否かを判定する(S24)。
なお、指定変動値は、例えば、メモリ87等に保持されていてメモリ87等から取得されてよいし、操作部83を介してユーザ操作により入力されて取得されてよい。指定変動値は、固定値でもよいし、可変値でもよい。指定変動値は、出力曲線Cの算出効率を加味して定められてよい。
つまり、導関数σの値が小さいと、V軸上での等距離点P1の移動に対する距離の積算値Dの変化量が小さいので、等距離点P1を移動させる利点が小さく、出力曲線Cの算出効率が比較的低い。導関数σの値が大きいと、V軸上での等距離点P1の移動に対する距離の積算値Dの変化量が大きいので、等距離点P1を移動させる利点が大きく、出力曲線Cの算出効率が比較的高くなる。この算出効率を加味して、指定変動値が定められてよい。
導関数σの値が指定変動値未満である場合、端末制御部81は、生成された出力曲線C又は出力曲線部分cの曲線関連情報(例えば出力曲線C、出力曲線Cの各制御点としての始点P0、等距離点P1、終点P2)をメモリ87等に保存する(S25)。
導関数σの値が指定変動値未満である場合、端末制御部81は、V軸上での等距離点P1の移動に対する距離の積算値Dの変化量が小さく、時間をかけてV軸上での等距離点P1の移動を反復しても、入力線Qの形状に出力曲線Cの形状があまり近づかないと判断可能である。そのため、端末制御部81は、出力曲線Cや出力曲線Cを生成するための二次ベジェ曲線の各制御点の情報を保存しておく。つまり、等距離点P1が移動されず、出力曲線C又は出力曲線部分cは変形されない。
導関数σの値が指定変動値以上である場合、端末制御部81は、等距離点P1を垂直二等分線L1つまりV軸に沿って移動させる。この場合、端末制御部81は、算出された導関数σの値つまり移動距離dの分、等距離点P1を移動させる。つまり、出力曲線C又は出力曲線部分cが変形される。
図22は、V軸上を移動する等距離点P1の移動距離dの一例を示す図である。図22では、等距離点P1は、最初の位置(始点P0及び終点P2との中点の位置)から点p1’の位置に移動している。また、図23は、V軸上を移動した等距離点P1’と等距離点P1に基づいて変更された出力曲線C’と一例を示す図である。端末制御部81は、出力曲線C’を、始点P0、移動後の等距離点P1’、及び終点P2に基づいて生成する。
このように、導関数σの値が指定変動値以上である場合、端末制御部81は、V軸上での等距離点P1の移動に対する距離の積算値Dの変化量が大きく、入力線Qの形状に出力曲線Cの形状が近づくと判断可能である。この場合、端末制御部81は、時間をかけてV軸上での等距離点P1の移動を反復することで、出力曲線Cの形状が入力線Qの形状に一層近づき、出力曲線Cを改善できる。
等距離点P1の移動後、S22の処理に進み、端末制御部81は、曲線フィッティングの処理を反復する。この反復は、等距離点P1を移動するための導関数σの値が指定変動値未満となるまで継続されてよい。
このように、端末制御部81は、入力線Qの始点P0と、入力線Qの終点P2と、始点P0及び終点P2と等距離な点を結ぶ垂直二等分線L1上の点である等距離点P1と、に基づいて、入力線Qの始点P0と入力線Qの終点P2とを通り、垂直二等分線L1に対して対称である出力曲線Cを生成してよい。端末制御部81は、距離の積算値Dを基に、垂直二等分線L1上において等距離点P1を移動させるための導関数σを算出してよい。端末制御部81は、導関数σの算出値に基づいて、出力曲線Cの変形の有無を決定してよい。
これにより、端末80は、導関数σを算出することで、入力線Qと出力曲線Cとの差分(距離の積算値Dに相当)を縮小するための演算効率を加味して、出力曲線Cを変形するか否かを決定できる。よって、端末80は、入力線Qと出力曲線Cとの差分の低減と出力曲線Cの変形効率との両立を図ることができる。
また、端末制御部81は、導関数σの算出値が指定変動値(第2の閾値の一例)未満である場合、出力曲線Cを不変としてよい。
この場合、端末80は、等距離点P1を移動させても、距離の積算値Dがあまり変化しないと判断でき、等距離点P1の移動を省略して出力曲線Cの変形を省略し、余剰な曲線フィッティングに係る計算を省略できる。これにより、端末80は、曲線フィッティングに要する時間を短縮でき、したがって飛行経路FR2の生成に要する時間を短縮できる。
また、端末制御部81は、導関数σの算出値が指定変動値以上である場合、導関数σの算出値に基づいて、垂直二等分線L1上において等距離点P1を移動させ、入力線Qの始点P0と、入力線Q0の終点P2と、移動された等距離点P1(P1’)と、に基づいて、出力曲線Cを変形してよい。変形の結果、例えば出力曲線C’となる。
この場合、端末80は、等距離点P1を移動させると、距離の積算値Dが大きく変化すると判断でき、出力曲線Cを変形することで、入力線Qと出力曲線Cとの差分を大幅に低減できる。
また、端末制御部81は、等距離点P1の移動及び出力曲線Cの変形を、導関数σの算出値が指定変動値以下となるまで反復してよい。
これにより、端末80は、入力線Qと出力曲線Cとの差分が小さくなるように(例えば最小化するように)、出力曲線の形状を最適化できる。
また、出力曲線Cは、入力線Qの始点P0と、入力線Qの終点P2と、等距離点P1と、を制御点とする2次ベジェ曲線でよい。なお、出力曲線部分も同様に、入力線部分qの始点P0と、入力線部分qの終点P2と、等距離点P1と、を制御点とする2次ベジェ曲線でよい。
これにより、端末80は、公知の2次ベジェ曲線を部分的に用いて、出力曲線Cや出力曲線部分cに基づいて、飛行経路FR2を容易に生成できる。
なお、出力曲線Cとして二次ベジェ曲線を例示したが、これに限られない。例えば、出力曲線Cは、3次以上のベジェ曲線であってもよいし、ベジェ曲線以外の曲線であってもよい。
次に、無人航空機100における飛行経路の設定について説明する。
端末80では、端末制御部81は、通信部85を介して、フィッティング結果を無人航空機100へ送信してよい。無人航空機100では、UAV制御部110は、通信インタフェース150を介して、端末80からフィッティング結果を取得してよい。フィッティング結果は、飛行経路FR2、ウェイポイントWP、出力曲線Cや出力曲線部分cの生成の基となる制御点(始点P0、等距離点P1、終点P2)、等を含んでよい。
UAV制御部110は、飛行経路FR2の情報を取得した場合、飛行経路FR2に沿って、無人航空機100が飛行するよう制御してよい。これにより、無人航空機100は、無人航空機100自身で飛行経路FR2を生成しなくて済み、無人航空機100の飛行経路生成に係る処理負荷を低減して、より制約が少なく、自由な形状の飛行経路FR2に沿って飛行できる。
UAV制御部110は、出力曲線Cや出力曲線部分cの生成の基となる制御点の情報を取得した場合、制御点の情報に基づいて、飛行経路FR2を生成してよい。制御点に基づく飛行経路FR2の生成方法は、端末80が生成する場合と同様でよい。UAV制御部110は、生成された飛行経路FR2に沿って、無人航空機100が飛行するよう制御してよい。これにより、無人航空機100は、無人航空機100自身で飛行経路FR2を生成するための制御点を導出しなくて済み、無人航空機100の制御点の導出に係る処理負荷を低減して、より制約が少なく、自由な形状の飛行経路FR2に沿って飛行できる。
UAV制御部110は、ウェイポイントWPの情報を取得した場合、ウェイポイントWPの情報に基づいて、飛行経路FR2を生成してよい。UAV制御部110は、ウェイポイントWPを通る飛行経路FR2に沿って、無人航空機100が飛行するよう制御してよい。これにより、無人航空機100は、無人航空機100自身で飛行効率の良いウェイポイントWPを導出しなくて済み、ウェイポイントWPの導出に係る処理負荷を低減して、より制約が少なく、自由な形状の飛行経路FR2に沿って飛行できる。
さらに、UAV制御部110は、端末80の代わりに、端末80の端末制御部81が有する飛行経路の生成に関する機能を有してもよい。この場合、上述した端末制御部81の各動作が、UAV制御部110により行われてよい。この場合、UAV制御部110は、自ら生成した飛行経路FR2に沿って、無人航空機100が飛行するよう制御してよい。
これにより、無人航空機100は、無人航空機100自身で飛行経路FR2の生成から飛行経路FR2に沿った飛行まで完結でき、飛行体システム10のシステム構成を単純化できる。つまり、端末80が省略可能である。
以上、本開示を実施形態を用いて説明したが、本開示の技術的範囲は上述した実施形態に記載の範囲には限定されない。上述した実施形態に、多様な変更又は改良を加えることが当業者に明らかである。その様な変更又は改良を加えた形態も本開示の技術的範囲に含まれ得ることが、特許請求の範囲の記載からも明らかである。
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現可能である。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「先ず、」、「次に」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
上記実施形態では、移動体として、無人航空機を示したが、本開示は、これに限らず、カメラを搭載した無人自動車、カメラを搭載した自転車、人が移動しながら把持するカメラ付きのジンバル装置等に適用することも可能である。
10 飛行体システム
80 端末
81 端末制御部
83 操作部
85 通信部
87 メモリ
88 表示部
89 ストレージ
100 無人航空機
110 UAV制御部
150 通信インタフェース
160 メモリ
170 ストレージ
200 ジンバル
210 回転翼機構
220,230 撮像部
240 GPS受信機
250 慣性計測装置
260 磁気コンパス
270 気圧高度計
280 超音波センサ
290 レーザー測定器
C 出力曲線
c1,c2 出力曲線部分
FR1 経路
FR2 飛行経路
K 分割点
p 入力線上の点
P0 始点
P1 等距離点
P2 終点
Q 入力線
q1,q2 入力線部分

Claims (32)

  1. 飛行体が飛行するための飛行経路を生成する情報処理装置であって、
    処理部を備え、
    前記処理部は、
    第1の経路を示す入力線を取得し、
    前記入力線の始点を始点とし、前記入力線の終点を終点とする、出力曲線を生成し、
    前記入力線における各点と前記出力曲線との距離の積算値を算出し、
    前記出力曲線と前記距離の積算値とに基づいて、前記飛行経路を生成する、
    情報処理装置。
  2. 前記処理部は、
    前記積算値が第1の閾値未満である場合、前記出力曲線で示された前記飛行経路を生成する、
    請求項1に記載の情報処理装置。
  3. 前記処理部は、
    前記積算値が第1の閾値以上である場合、前記入力線における各点のうち、前記距離が最長となる第1の点を決定し、
    前記入力線を前記第1の点で分割して、前記入力線において第1の入力線部分と第2の入力線部分とを生成し、
    前記第1の入力線部分の始点を始点とし、前記第1の入力線部分の終点を終点とする、前記出力曲線における第1の出力曲線部分を生成し、
    前記第2の入力線部分の始点を始点とし、前記第2の入力線部分の終点を終点とする、前記出力曲線における第2の出力曲線部分を生成する、
    請求項1に記載の情報処理装置。
  4. 前記処理部は、
    前記第1の入力線部分における各点と前記第1の出力曲線部分との距離の積算値を算出し、
    前記距離の積算値が前記第1の閾値未満となるまで、前記第1の入力線部分の分割及び分割された前記第1の入力線部分に対応する出力曲線部分の生成を反復する、
    請求項3に記載の情報処理装置。
  5. 前記処理部は、生成された複数の出力曲線部分を接続して、前記飛行経路を生成する、
    請求項4に記載の情報処理装置。
  6. 前記処理部は、
    前記入力線の始点と、前記入力線の終点と、前記始点及び前記終点と等距離な点を結ぶ垂直二等分線上の点である等距離点と、に基づいて、前記入力線の始点と前記入力線の終点とを通り、前記垂直二等分線に対して対称である前記出力曲線を生成し、
    前記距離の積算値を基に、前記垂直二等分線上において前記等距離点を移動させるための導関数を算出し、
    前記導関数の算出値に基づいて、前記出力曲線の変形の有無を決定する、
    請求項1〜5のいずれか1項に記載の情報処理装置。
  7. 前記処理部は、前記導関数の算出値が第2の閾値未満である場合、前記出力曲線を不変とする、
    請求項6に記載の情報処理装置。
  8. 前記処理部は、前記導関数の算出値が第2の閾値以上である場合、前記導関数の算出値に基づいて、前記垂直二等分線上において前記等距離点を移動させ、
    前記入力線の始点と、前記入力線の終点と、移動された前記等距離点と、に基づいて、前記出力曲線を変形する、
    請求項6に記載の情報処理装置。
  9. 前記処理部は、前記等距離点の移動及び前記出力曲線の変形を、前記導関数の算出値が前記第2の閾値未満となるまで反復する、
    請求項8に記載の情報処理装置。
  10. 前記出力曲線は、前記入力線の始点と、前記入力線の終点と、前記等距離点と、を制御点とする2次ベジェ曲線である、
    請求項6〜9のいずれか1項に記載の情報処理装置。
  11. 通信部、を更に備え、
    前記処理部は、前記通信部を介して、前記飛行経路の情報を、前記飛行体に送信する、
    請求項1〜10のいずれか1項に記載の情報処理装置。
  12. 通信部、を更に備え、
    前記処理部は、前記通信部を介して、前記入力線の始点と前記入力線の終点と前記等距離点との情報を、前記飛行体に送信する、
    請求項6〜10のいずれか1項に記載の情報処理装置。
  13. 表示部、を更に備え、
    前記処理部は、前記表示部を介して、前記飛行経路の情報を表示する、
    請求項1〜10のいずれか1項に記載の情報処理装置。
  14. 表示部、を更に備え、
    前記処理部は、前記表示部を介して、前記入力線の始点と前記入力線の終点と前記等距離点との情報を表示する、
    請求項6〜10のいずれか1項に記載の情報処理装置。
  15. 前記情報処理装置は、前記飛行体であり、
    前記処理部は、前記飛行経路に従って、前記飛行体の飛行を制御する、
    請求項1〜10のいずれか1項に記載の情報処理装置。
  16. 飛行体が飛行するための飛行経路を生成する情報処理装置における飛行経路生成方法であって、
    第1の経路を示す入力線を取得するステップと、
    前記入力線の始点を始点とし、前記入力線の終点を終点とする、出力曲線を生成するステップと、
    前記入力線における各点と前記出力曲線との距離の積算値を算出するステップと、
    前記出力曲線と前記距離の積算値とに基づいて、前記飛行経路を生成するステップと、
    を有する飛行経路生成方法。
  17. 前記飛行経路を生成するステップは、前記積算値が第1の閾値未満である場合、前記出力曲線で示された前記飛行経路を生成するステップを含む、
    請求項16に記載の飛行経路生成方法。
  18. 前記飛行経路を生成するステップは、
    前記積算値が第1の閾値以上である場合、前記入力線における各点のうち、前記距離が最長となる第1の点を決定するステップと、
    前記入力線を前記第1の点で分割して、前記入力線において第1の入力線部分と第2の入力線部分とを生成するステップと、
    前記第1の入力線部分の始点を始点とし、前記第1の入力線部分の終点を終点とする、前記出力曲線における第1の出力曲線部分を生成するステップと、
    前記第2の入力線部分の始点を始点とし、前記第2の入力線部分の終点を終点とする、前記出力曲線における第2の出力曲線部分を生成するステップと、を含む、
    請求項16に記載の飛行経路生成方法。
  19. 前記距離の積算値を算出するステップは、前記第1の入力線部分における各点と前記第1の出力曲線部分との距離の積算値を算出するステップを含み、
    前記飛行経路を生成するステップは、前記距離の積算値が前記第1の閾値未満となるまで、前記第1の入力線部分の分割及び分割された前記第1の入力線部分に対応する出力曲線部分の生成を反復するステップを含む、
    請求項18に記載の飛行経路生成方法。
  20. 前記飛行経路を生成するステップは、生成された複数の出力曲線部分を接続して、前記飛行経路を生成するステップを含む、
    請求項19に記載の飛行経路生成方法。
  21. 前記出力曲線を生成するステップは、
    前記入力線の始点と、前記入力線の終点と、前記始点及び前記終点と等距離な点を結ぶ垂直二等分線上の点である等距離点と、に基づいて、前記入力線の始点と前記入力線の終点とを通り、前記垂直二等分線に対して対称である前記出力曲線を生成するステップと、
    前記距離の積算値を基に、前記垂直二等分線上において前記等距離点を移動させるための導関数を算出するステップと、
    前記導関数の算出値に基づいて、前記出力曲線の変形の有無を決定するステップと、を含む、
    請求項16〜20のいずれか1項に記載の飛行経路生成方法。
  22. 前記出力曲線を生成するステップは、前記導関数の算出値が第2の閾値未満である場合、前記出力曲線を不変とするステップを含む、
    請求項21に記載の飛行経路生成方法。
  23. 前記出力曲線を生成するステップは、前記導関数の算出値が第2の閾値以上である場合、前記導関数の算出値に基づいて、前記垂直二等分線上において前記等距離点を移動させるステップと、
    前記入力線の始点と、前記入力線の終点と、移動された前記等距離点と、に基づいて、前記出力曲線を変形するステップと、を含む、
    請求項21に記載の飛行経路生成方法。
  24. 前記出力曲線を生成するステップは、前記等距離点の移動及び前記出力曲線の変形を、前記導関数の算出値が前記第2の閾値未満となるまで反復するステップを含む、
    請求項23に記載の飛行経路生成方法。
  25. 前記出力曲線は、前記入力線の始点と、前記入力線の終点と、前記等距離点と、を制御点とする2次ベジェ曲線である、
    請求項21〜24のいずれか1項に記載の飛行経路生成方法。
  26. 前記飛行経路の情報を、前記飛行体に送信するステップ、を更に含む、
    請求項16〜25のいずれか1項に記載の飛行経路生成方法。
  27. 前記入力線の始点と前記入力線の終点と前記等距離点との情報を、前記飛行体に送信するステップ、を更に含む、
    請求項21〜25のいずれか1項に記載の飛行経路生成方法。
  28. 前記飛行経路の情報を表示するステップ、を更に含む、
    請求項16〜25のいずれか1項に記載の飛行経路生成方法。
  29. 前記入力線の始点と前記入力線の終点と前記等距離点との情報を表示するステップ、を更に含む、
    請求項21〜25のいずれか1項に記載の飛行経路生成方法。
  30. 前記情報処理装置は、前記飛行体であり、
    前記飛行経路に従って、前記飛行体の飛行を制御するステップ、を更に含む、
    請求項16〜25のいずれか1項に記載の飛行経路生成方法。
  31. 飛行体が飛行するための飛行経路を生成する情報処理装置に、
    第1の経路を示す入力線を取得するステップと、
    前記入力線の始点を始点とし、前記入力線の終点を終点とする、出力曲線を生成するステップと、
    前記入力線における各点と前記出力曲線との距離の積算値を算出するステップと、
    前記出力曲線と前記距離の積算値とに基づいて、前記飛行経路を生成するステップと、
    を実行させるための、プログラム。
  32. 飛行体が飛行するための飛行経路を生成する情報処理装置に、
    第1の経路を示す入力線を取得するステップと、
    前記入力線の始点を始点とし、前記入力線の終点を終点とする、出力曲線を生成するステップと、
    前記入力線における各点と前記出力曲線との距離の積算値を算出するステップと、
    前記出力曲線と前記距離の積算値とに基づいて、前記飛行経路を生成するステップと、
    を実行させるための、プログラムを記録したコンピュータ読取り可能な記録媒体。
JP2018125369A 2018-06-29 2018-06-29 情報処理装置、飛行経路生成方法、プログラム、及び記録媒体 Ceased JP2020003428A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018125369A JP2020003428A (ja) 2018-06-29 2018-06-29 情報処理装置、飛行経路生成方法、プログラム、及び記録媒体
PCT/CN2019/093764 WO2020001629A1 (zh) 2018-06-29 2019-06-28 信息处理装置、飞行路径生成方法、程序以及记录介质
CN201980005106.1A CN111226093A (zh) 2018-06-29 2019-06-28 信息处理装置、飞行路径生成方法、程序以及记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018125369A JP2020003428A (ja) 2018-06-29 2018-06-29 情報処理装置、飛行経路生成方法、プログラム、及び記録媒体

Publications (1)

Publication Number Publication Date
JP2020003428A true JP2020003428A (ja) 2020-01-09

Family

ID=68985275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018125369A Ceased JP2020003428A (ja) 2018-06-29 2018-06-29 情報処理装置、飛行経路生成方法、プログラム、及び記録媒体

Country Status (3)

Country Link
JP (1) JP2020003428A (ja)
CN (1) CN111226093A (ja)
WO (1) WO2020001629A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022070851A1 (ja) * 2020-09-30 2022-04-07 株式会社Clue 方法、システムおよびプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012001893A1 (ja) * 2010-06-30 2012-01-05 パナソニック株式会社 曲線分割装置、曲線分割方法、曲線分割プログラム及び集積回路
JP2012128859A (ja) * 2010-12-14 2012-07-05 Internatl Business Mach Corp <Ibm> 実際の位置特定データを提供するためのシステム
JP2016169944A (ja) * 2015-03-11 2016-09-23 三菱電機株式会社 ヘリ位置表示システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102129710A (zh) * 2010-12-30 2011-07-20 北京像素软件科技股份有限公司 一种飞行路径模拟方法及系统
EP3387506B1 (en) * 2015-12-09 2021-01-13 SZ DJI Technology Co., Ltd. Systems and methods for auto-return
CN107990897B (zh) * 2016-10-26 2020-06-05 杭州海康机器人技术有限公司 一种航线数据确定方法及装置
CN106483975B (zh) * 2016-10-26 2018-04-17 广州极飞科技有限公司 确定无人机航线的方法及装置
KR20180051996A (ko) * 2016-11-09 2018-05-17 삼성전자주식회사 무인 비행 장치 및 이를 이용한 피사체 촬영 방법
CN107085437A (zh) * 2017-03-20 2017-08-22 浙江工业大学 一种基于eb‑rrt的无人机航迹规划方法
CN107038899A (zh) * 2017-03-29 2017-08-11 北京小米移动软件有限公司 一种进行飞行的方法和装置
CN107479570B (zh) * 2017-07-05 2021-04-09 南宁学院 一种可调螺旋翼姿态的无人机自动飞行控制方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012001893A1 (ja) * 2010-06-30 2012-01-05 パナソニック株式会社 曲線分割装置、曲線分割方法、曲線分割プログラム及び集積回路
JP2012128859A (ja) * 2010-12-14 2012-07-05 Internatl Business Mach Corp <Ibm> 実際の位置特定データを提供するためのシステム
JP2016169944A (ja) * 2015-03-11 2016-09-23 三菱電機株式会社 ヘリ位置表示システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022070851A1 (ja) * 2020-09-30 2022-04-07 株式会社Clue 方法、システムおよびプログラム

Also Published As

Publication number Publication date
WO2020001629A1 (zh) 2020-01-02
CN111226093A (zh) 2020-06-02

Similar Documents

Publication Publication Date Title
JP6765512B2 (ja) 飛行経路生成方法、情報処理装置、飛行経路生成システム、プログラム及び記録媒体
JP6962775B2 (ja) 情報処理装置、空撮経路生成方法、プログラム、及び記録媒体
JP6962812B2 (ja) 情報処理装置、飛行制御指示方法、プログラム、及び記録媒体
JP6878194B2 (ja) モバイルプラットフォーム、情報出力方法、プログラム、及び記録媒体
WO2018146803A1 (ja) 位置処理装置、飛行体、位置処理システム、飛行システム、位置処理方法、飛行制御方法、プログラム、及び記録媒体
US20230032219A1 (en) Display control method, display control apparatus, program, and recording medium
JPWO2018198281A1 (ja) 情報処理装置、空撮経路生成方法、空撮経路生成システム、プログラム、及び記録媒体
CN111344650B (zh) 信息处理装置、飞行路径生成方法、程序以及记录介质
JP6788094B2 (ja) 画像表示方法、画像表示システム、飛行体、プログラム、及び記録媒体
JP2019028560A (ja) モバイルプラットフォーム、画像合成方法、プログラム、及び記録媒体
JP2018201119A (ja) モバイルプラットフォーム、飛行体、支持装置、携帯端末、撮像補助方法、プログラム、及び記録媒体
WO2019105231A1 (zh) 信息处理装置、飞行控制指示方法及记录介质
US20210185235A1 (en) Information processing device, imaging control method, program and recording medium
CN109891188B (zh) 移动平台、摄像路径生成方法、程序、以及记录介质
JP2020003428A (ja) 情報処理装置、飛行経路生成方法、プログラム、及び記録媒体
JP7067897B2 (ja) 情報処理装置、飛行制御指示方法、プログラム、及び記録媒体
JP6875269B2 (ja) 情報処理装置、飛行制御指示方法、プログラム、及び記録媒体
US20210092306A1 (en) Movable body, image generation method, program, and recording medium
JP2020095519A (ja) 形状推定装置、形状推定方法、プログラム、及び記録媒体
JP2020088821A (ja) 画像生成装置、画像生成方法、プログラム、及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210430

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210921

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20220125