JP2020030204A - 距離測定方法、プログラム、距離測定システム、および可動物体 - Google Patents

距離測定方法、プログラム、距離測定システム、および可動物体 Download PDF

Info

Publication number
JP2020030204A
JP2020030204A JP2019139104A JP2019139104A JP2020030204A JP 2020030204 A JP2020030204 A JP 2020030204A JP 2019139104 A JP2019139104 A JP 2019139104A JP 2019139104 A JP2019139104 A JP 2019139104A JP 2020030204 A JP2020030204 A JP 2020030204A
Authority
JP
Japan
Prior art keywords
camera
target
images
movable object
feature points
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
Application number
JP2019139104A
Other languages
English (en)
Inventor
游 周
You Zhou
游 周
潔 劉
Jie Liu
潔 劉
嘉祺 厳
jia qi Yan
嘉祺 厳
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
Publication of JP2020030204A publication Critical patent/JP2020030204A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C39/00Aircraft not otherwise provided for
    • B64C39/02Aircraft not otherwise provided for characterised by special use
    • B64C39/024Aircraft not otherwise provided for characterised by special use of the remote controlled vehicle type, i.e. RPV
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D47/00Equipment not otherwise provided for
    • B64D47/08Arrangements of cameras
    • 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
    • G01C11/00Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
    • G01C11/04Interpretation of pictures
    • G01C11/06Interpretation of pictures by comparison of two or more pictures of the same area
    • G01C11/08Interpretation of pictures by comparison of two or more pictures of the same area the pictures not being supported in the same relative position as when they were taken
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C19/00Gyroscopes; Turn-sensitive devices using vibrating masses; Turn-sensitive devices without moving masses; Measuring angular rate using gyroscopic effects
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P15/00Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration
    • 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/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0038Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement by providing the operator with simple or augmented images from one or more cameras located onboard the vehicle, e.g. tele-operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/695Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • B64U10/10Rotorcrafts
    • B64U10/13Flying platforms
    • 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
    • B64U2101/00UAVs specially adapted for particular uses or applications
    • B64U2101/30UAVs specially adapted for particular uses or applications for imaging, photography or videography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10032Satellite or aerial image; Remote sensing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • G06T2207/20104Interactive definition of region of interest [ROI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mechanical Engineering (AREA)
  • Image Analysis (AREA)
  • Measurement Of Optical Distance (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Studio Devices (AREA)

Abstract

【課題】可動物体において距離測定のための自律動作をする。【解決手段】一実施形態によれば、カメラとセンサを搭載した可動物体を使用して距離を測定する方法は、測定の対象である目標物を特定することと、可動物体の移動中であってカメラが前記目標物を追跡しているときに、前記カメラによって前記目標物を撮影し、複数の画像を取得することと、前記複数の画像の取得時点に対応する可動物体の動き情報を収集することと、前記動き情報と前記複数の画像とに基づいて前記目標物と前記可動物体との間の距離を計算することと、を備える。【選択図】図5

Description

本開示は、距離測定方法、プログラム、距離測定システム、および可動物体に関し、より詳細には、例えば無人航空機(unmanned aerial vehicle;UAV)を用いた距離測定方法を対象とする。
特定の建物や看板までの距離を測定することは、多くの産業活動で必要とされている。従来のレーザ測距方法は煩雑であり、特殊な機器を必要とする。アクセスしにくい場所では、測定方法はさらに制限される。
今日の技術開発と共に、無人航空機(以下、単に「UAV」と称する。)のような航空機を含む可動物体が様々な用途で使用されてきた。UAVを使用する既存の距離測定技術は、UAVの全地球測位システム(lobal ositioning ystem;GPS)位置を利用すること、または複雑であるか効果的でない場合があり得るUAV上に専用のレーザ測距装置を取り付けることを含む。
国際公開番号第2017/004799号
可動物体において距離測定のための自律動作を開発する要求が高まっている。
本発明は、距離測定方法、プログラム、距離測定システム、および可動物体を提供することを主な目的とする。
本発明の第1の態様によれば、カメラを搭載した可動物体を使用した距離測定方法が提供され、該距離測定方法は、
測定の対象である目標物を特定することと、
可動物体の移動中であってカメラが前記目標物を追跡しているときに、前記カメラによって前記目標物を撮影し、複数の画像を取得することと、
前記複数の画像の取得時点に対応する可動物体の動き情報を収集することと、
前記動き情報と前記複数の画像とに基づいて前記目標物と前記可動物体との間、または測定対象物と前記可動物体との間の距離を計算することと、
を備える。
本発明の第2の態様によれば、上述の距離測定方法をコンピュータに実行させるためのプログラムが提供される。
また、本発明の第3の態様によれば、カメラを搭載した外部の可動物体を使用して距離を測定するシステムが提供され、該距離測定システムは、
プロセッサと、
前記プロセッサに距離測定を実行させるためのプログラムを格納するメモリと、
可動物体から送信される複数の画像の表示を可能にするとともに、表示される画像を用いてユーザが目標物を特定するためのユーザインタフェイスと、
を備え、
前記複数の画像は、可動物体の移動中に前記目標物を追跡しているときに可動物体のカメラにより撮影されて前記プロセッサに送信され、
前記プロセッサは、ユーザによる前記目標物の特定を受けて前記目標物を追跡するための指示信号を生成して可動物体に送信し、さらに、前記複数の画像の取得時点に対応する可動物体の動き情報を収集し、収集した動き情報と前記複数の画像とに基づいて前記目標物と可動物体との間の距離を計算する。
さらに、本発明の第4の態様によれば、可動物体が提供され、該可動物体は、
可動物体本体と、
前記可動物体本体に揚力および推力の少なくともいずれかを与えて任意の移動を可能にする推進機構と、
前記可動物体本体に搭載され、可動物体の移動中に画像を撮影するカメラを含む検知装置と、
ユーザからの指示信号を受けて目標物を特定し、前記カメラからの複数の画像の取得時点に対応する前記可動物体の動き情報を収集し、該動き情報と前記複数の画像とに基づいて前記目標物と前記可動物体との間、または測定対象物と前記可動物体との間の距離を計算するプロセッサと、
を備える。
本発明の実施形態によれば、ユーザによって選択された物体の距離測定をリアルタイムで直感的で便利に提供でき、速い計算速度で信頼できる測定結果を提供することができる。
本発明のいくつかの例示的実施形態における距離測定のための動作環境の略図の一例である。 本発明のいくつかの例示的実施形態による可動物体を示す略図の一例である。 本発明の例示的な一実施形態によるUAVの画像センサの例を示す図の一例である。 本発明の例示的な一実施形態によるコンピューティングデバイスを示す概略ブロック図の一例である。 本発明の例示的な一実施形態による距離測定プロセスの概略手順を示すフローチャートの一例である。 本発明の例示的な一実施形態による目標物の特定に関連するグラフィカルユーザインタフェイスの一例を示す図である。 本発明の例示的な一実施形態によるスーパーピクセル領域分割の結果を示す画像の一例である。 図7Aに示す画像の拡大部分の一例を示す図である。 本発明の例示的な一実施形態による距離計算プロセスの一例を示すフローチャートの一例である。 本発明の例示的な一実施形態によるキーフレーム抽出プロセスを示す図の一例である。
以下、本発明の実施の形態のいくつかについて図面を参照しながら説明する。添付の図面は、あくまでも本願発明の理解を容易にするためのものであり、本発明の範囲を限定することを意図するものでは決してない。図面において同一または対応する要素・部材には同一の参照符号を付し、その重複説明は適宜省略する。また、図中の各部材の形状・サイズについては、説明を容易にするため、適宜拡大・縮小・省略するために現実の縮尺・比率とは合致していない場合がある。また、「実質的に」の用語は、測定誤差をも含む趣旨で使用される。
また、以下で使用される第1、第2等のような用語は、同一又は相応する構成要素を区別するための識別記号に過ぎなく、同一又は相応する構成要素が、第1、第2等の用語によって限定されるものではない。
また、結合とは、各構成要素間の接触関係において、各構成要素間に物理的に直接接触される場合だけを意味するのではなく、他の構成が各構成要素間に介在され、その他の構成に構成要素がそれぞれ接触されている場合まで含む概念である。
(1)動作環境
図1は、本発明のいくつかの例示的実施形態における距離測定のための動作環境の概略を示すブロック図の一例である。
図1は、本開示の例示的な実施形態による動作環境を示す概略ブロック図である。図1に示すように、可動物体100は無線でリモートコントローラ104と通信することができる。可動物体100は、例えば、無人航空機(UAV)、無人自動車、移動ロボット、無人ボート、潜水艦、宇宙船、衛星などであり得る。リモートコントローラ104は、通常の制御装置の他、可動物体100を制御することができるアプリケーション(app)を備えた端末装置とすることができる。端末装置は、例えば、スマートフォン、タブレット、ゲーム装置などであり得る。可動物体本体102はカメラ1022を搭載することができる。可動物体100のカメラ1022によって取得された画像またはビデオ(例えば、連続的な画像フレーム)は、リモートコントローラ104に送信され、リモートコントローラ104に結合されたスクリーンに表示されてもよい。本明細書で使用されるとき、リモートコントローラ104に結合された画面は、リモートコントローラ104に埋め込まれた画面、および、リモートコントローラ104に動作可能に接続された表示装置の画面の少なくともいずれかを指すことができる。表示装置は、例えば、スマートフォンまたはタブレットとすることができる。カメラ1022は、可動物体100の支持機構1024(例えば、ジンバル)によって支持された可動物体本体102の搭載物であり得る。カメラ1022は目標物106を追跡することができ、カメラ1022によって取得された画像は目標物106を含み得る。本明細書で記載される「カメラによる物体の追跡」は、物体を含む1つまたは複数の画像を取得するためにカメラを使用することを指すことがある点に留意されたい。例えば、カメラ1022は、可動物体100が特定のパターンで動いている間に、目標物106の複数の画像を取得することができる。目標物106とカメラ1022との間の相対位置は、可動物体100の移動によって変化する可能性があるので、目標物106は、複数の画像内の異なる位置に現れる可能性がある。取得された複数の画像は、目標物以外の1つまたは複数の背景物体も含むことができ、背景物体も複数の画像内の異なる位置に現れることがあることを理解されたい。可動物体100は、直線、ポリライン、円弧、曲線経路などに沿って移動するなど、任意の適切なパターンで移動することができる。移動パターンは、予め決められていてもよいし、可動物体100のセンサからのフィードバックに基づいてリアルタイムで調整されてもよい。可動物体本体102に搭載された、または搭載されていない1つまたは複数のプロセッサ(例えば、UAV上のプロセッサおよびリモートコントローラ104内のプロセッサの少なくともいずれか)は、例えば、カメラ1022によって取得された画像、および、可動物体100によって収集された他のセンサデータの少なくともいずれかを分析することによって、可動物体100(例えばカメラ1022)と目標物106との間の距離を計算するように構成される。
(2)可動物体
以下、可動物体の一例としてUAVを取り上げて本発明に係る可動物体のいくつかの例示的実施形態について説明する。
図2は、例示的な一実施形態であるUAVを示す略図の一例である。図2に示すように、本実施形態のUAV200(例えば、図1に示す可動物体100)は、検知システム202、推進システム204、通信回路206、および搭載コントローラ208を含むことができる。
推進システム204は、(例えば、搭載コントローラ208およびリモートコントローラ104の少なくともいずれかからの制御信号に応答して)UAV200が所望の運動を実行できるように構成されてよい。例えば、表面からの離陸、または表面への着陸、特定の位置および方向の少なくともいずれかでのホバリング、特定の経路に沿った移動、特定の方向への特定の速度での移動などである。推進システム204は、UAV200に揚力および推力の少なくともいずれかを提供してUAV200の移動を可能にするために、1つまたは複数の任意の適切なプロペラ、ブレード、ローター、モーター、エンジンなどを含み得る。通信回路206は、無線通信を確立し、外部のリモートコントローラ104とのデータ送信を実行するように構成されてもよい。送信データは、センシングデータおよび制御データの少なくともいずれかを含み得る。搭載コントローラ208は、(例えば、検知システム202からの検知データの分析に基づいて)UAV200に搭載された1つ以上の部品、またはUAV200と通信する外部装置の動作を制御するように構成され得る。
搭載コントローラ208は、後述する距離測定方法の一連の手順が記述されたプログラムを格納する図示しないメモリに接続され、当該プログラムを読み出して実行することにより、目標物とUAV200との間、または測定対象物とUAV200との間の距離測定を行う。ただし、搭載コントローラ208および図示しないメモリは、後述する上述した距離測定のための機能の全てを実行可能なものである必要はなく、検知システム202、推進システム204および通信回路206の操作に必須の機能を除き、その他の機能、特に高負荷の機能を、例えばクラウドコンピューティングなどを利用して外部の装置に実行させてもよい。この点は、後述する距離測定システム(プロセッサ404及び記憶媒体402)についても同様である。
検知システム202は、UAV200の空間配置、速度、および加速度の少なくともいずれか(例えば、互いに直交する3方向における並進および3度までの回転の少なくともいずれかに関連したUAV200の姿勢)を検知することができる1つまたは複数のセンサを含むことができる。センサの例として、位置センサ(たとえば、全地球測位システム(GPS)センサ、位置三角測量を可能にするモバイルデバイス送信機)、画像センサ(たとえばカメラ1022などの、可視、赤外線および紫外線の少なくともいずれかを検知可能な撮像デバイス、近接センサ(超音波センサ、LIDAR、飛行時間型カメラなど)、慣性センサ(たとえば加速度計、ジャイロスコープ、慣性測定ユニット(IMU))、高度センサ、圧力センサ(例えば気圧計)、音声センサ(例えばマイクロフォン)または磁場センサ(例えば磁力計、電磁気センサ)を挙げることができるが、これらに限定されない。任意の適切な数および組み合わせの少なくともいずれかのセンサを検知システム202に含めることができる。検知システム202によって収集および分析の少なくともいずれかがなされた感知データを使用して、(例えば、搭載コントローラ208およびリモートコントローラ104の少なくともいずれかなどの適切な処理ユニットを使用して)UAV200の空間配置、速度、および向きの少なくともいずれかを制御することができる。さらに、検知システム202を使用して、潜在的な障害物への近接、地理的特徴の位置、人工構造物の位置など、UAV200を囲む環境に関するデータを提供することができる。
いくつかの実施形態では、UAV200は、UAV200によって運ばれる搭載物を支持するための支持機構をさらに含み得る。支持機構は、UAV200の中央/本体に対して自由度1度、2度、または3度で搭載物が動くことができるように、搭載物の動きおよび向きの少なくともいずれかを(たとえば、搭載コントローラ208からの制御信号に応答して)搬送および制御するジンバルを含むことができる。搭載物はカメラ(例えば、カメラ1022)であり得る。いくつかの実施形態では、搭載物はUAV200に固定的に連結されてもよい。
いくつかの実施形態では、検知システム202は少なくとも加速度計、ジャイロスコープ、IMU、および画像センサを含む。加速度計、ジャイロスコープ、およびIMUは、UAV200の中央/本体に配置されてもよい。画像センサは、UAV200の中央/本体内に配置されたカメラであっても、またはUAV200の搭載物であってもよい。UAV200の搭載物がジンバルによって運ばれるカメラを含むとき、検知システム202は、例えば、光電式エンコーダ、ホール効果センサ、および、ジンバルに配置された、またはジンバル内に埋め込まれた第2の組の加速度計、ジャイロスコープ、およびIMUの少なくともいずれかなどの、搭載物カメラの姿勢情報の収集および測定の少なくともいずれかを行うための他の構成要素をさらに含み得る。
いくつかの実施形態では、検知システム202は複数の画像センサをさらに含み得る。図3は、本開示の例示的実施形態によるUAVの画像センサの例を示す。図3に示すように、UAVは、搭載物としてジンバルによって運ばれるカメラ2022と、2つのレンズ(これらは共にステレオビジョンカメラを構成する)を含む前方視システム2024と、ステレオビジョンカメラを含む下方視システム2026とを含む。任意の画像センサによって収集された画像/ビデオは、UAVのリモートコントローラ104に送信されて表示されてもよい。いくつかの実施形態において、カメラ2022はメインカメラと呼ばれることがある。目標物106(図1参照)までの距離は、複数の画像を撮像する際のメインカメラのカメラ姿勢を追跡し、撮像された目標物106を含む複数の画像を解析することによって測定することができる。いくつかの実施形態において、ジンバルによって運ばれるカメラ2022は、カラー画像を取り込む単眼カメラであり得る。
本実施形態のUAVにおいて使用されるカメラモデルでは、カメラ行列を使用して、三次元(3D)世界座標から二次元(2D)画素座標への射影マッピングを記述する。[u,v,1]が均質/射影座標における2D点位置(例えば、画像内の点の2D座標)を表し、そして、[x,y,zが世界座標における3D点位置(例えば、実世界における3D位置)を表すものとする。ここで、zCはカメラの光学中心からのZ軸、Kはカメラ較正行列、Rは回転行列、Tは並進行列を表す。世界座標からピクセル座標へのマッピング関係は、次のように記述できる。

カメラ較正行列Kは、カメラの固有パラメータを記述する。有限射影カメラの場合、その固有行列Kには5つの固有パラメータが含まれる。

ここで、fは距離に対するカメラの焦点距離である。パラメータα=fm,α=fmは、ピクセル単位での焦点距離を表す。ここで、mおよびmは、ピクセルを単位距離に関連づける(たとえば、ピクセル座標系の)x軸およびy軸方向のスケールファクタ、すなわち、1インチなどの単位距離に対応するピクセルの数である。CCD(カップルドデバイス)カメラではピクセルは正方形ではないため、γはX軸とY軸の間のスキュー係数を表す。μo,voは、いくつかの実施形態では画像の中心にある主点の座標を表す。
回転行列Rおよび並進行列Tは、カメラの外部パラメータであり、これは、3D世界座標から3Dカメラ座標への座標系変換を表す。
前方視システム2024および下方視システム2026の少なくともいずれかは、グレースケールステレオ画像対を取り込むステレオカメラを含み得る。カメラ2022の知覚範囲は、ステレオカメラの知覚範囲よりも大きくてもよい。UAVの視覚走行距離(VO)回路は、前方視システム2024および下方視システム2026の少なくともいずれかのステレオカメラによって収集された画像データを分析するように構成されてもよい。UAVのVO回路は、収集されたグレースケールステレオ画像データに基づいてUAVの位置および動きを追跡するために任意の適切な視覚走行距離測定アルゴリズムを実装することができる。視覚オドメトリアルゴリズムは、一連の取得画像内の複数の特徴点の位置変化(すなわち、特徴点のオプティカルフロー)を追跡することと、特徴点のオプティカルフローに基づいてカメラの動きを取得することとを含み得る。いくつかの実施形態では、前方視システム2024および下方視システム2026の少なくともいずれかは、UAVに固定的に結合され、したがって、VO回路によって取得されたカメラの動きおよび姿勢の少なくともいずれかは、UAVの動きおよび姿勢の少なくともいずれかを表すことができる。第1の取得時点における1つの画像から第2の取得時点における別の画像への特徴点の位置変化を分析することによって、VO回路は、2つの取得時点の間のカメラ/UAV姿勢関係を得ることができる。本明細書で使用されるように、任意の2つの瞬間(すなわち、時点)間のカメラ姿勢関係またはUAV姿勢関係は、次のように説明され得る:第1の瞬間から第2の瞬間までのカメラまたはUAVの回転変化、および最初の瞬間から2番目の瞬間までのカメラまたはUAVの空間位置。本明細書で使用されるように、取得モーメントは、画像/フレームがUAV上のカメラによって取得される時点を指す。VO回路は、(例えば、視覚慣性走行距離測定アルゴリズムを実装することによって)向上した精度でカメラ/UAVの姿勢を取得するために慣性航法データをさらに統合することができる。
(3)距離測定システム
以下、本発明に係る距離測定システムのいくつかの実施の形態について図面を参照しながら説明する。以下では、図4に示すコンピューティングデバイス400を取り上げて説明するが、勿論これに限ることなく他の様々な実施形態が可能である。
図4は、本開示の例示的な実施形態によるコンピューティングデバイス400を示す概略ブロック図の一例である。コンピューティングデバイス400は、可動物体100およびリモートコントローラ104の少なくともいずれかの内に実装することができ、本開示と一致する距離測定方法を実行するように構成することができる。図4に示すように、コンピューティングデバイス400は、少なくとも1つのプロセッサ404、少なくとも1つの記憶媒体402、および少なくとも1つのトランシーバ406を含む。本開示によれば、少なくとも1つのプロセッサ404、少なくとも1つの記憶媒体402、および少なくとも1つのトランシーバ406は、別々の装置とすることができ、またはそれらのうちの任意の2つ以上を1つの装置に統合することができる。いくつかの実施形態では、コンピューティングデバイス400はディスプレイ408をさらに含み得る。
少なくとも1つの記憶媒体402は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ、フラッシュメモリ、揮発性メモリ、ハードディスク記憶装置、またはハードディスク記憶媒体などの非一時的コンピュータ可読記憶媒体を含むことができる。光媒体少なくとも1つのプロセッサ404に結合された少なくとも1つの記憶媒体402は、命令およびデータの少なくともいずれかを記憶するように構成されていてもよい。例えば、少なくとも1つの記憶媒体402は、IMUによって収集されたデータ、カメラによって取得された画像、距離測定プロセスを実施するためのコンピュータ実行可能命令などを記憶するように構成され得る。
少なくとも1つのプロセッサ404は、マイクロプロセッサ、マイクロコントローラ、中央処理装置(CPU)、ネットワークプロセッサ(NP)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路などの任意の適切なハードウェアプロセッサを含むことができる。回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネント。少なくとも1つの記憶媒体402は、少なくとも1つのプロセッサ404によって実行されると、少なくとも1つのプロセッサ404並びに少なくとも1つのトランシーバ406の少なくともいずれかを制御して本開示と一致する距離測定方法を実行するコンピュータプログラムコードを記憶する。以下に記載される例示的な方法のうちの1つのようなものである。いくつかの実施形態では、コンピュータプログラムコードはまた、少なくとも1つのプロセッサ404を制御して、上述のように可動物体および遠隔制御の少なくともいずれかによって実行することができる機能のいくつかまたはすべてを実行する。これらの機能のいずれもまたコンピューティングデバイス400の例となり得る。
少なくとも1つのトランシーバ406は、少なくとも1つのプロセッサ404によって制御されて、他の装置へのデータ送信および別の装置からのデータ受信の少なくともいずれかを行う。少なくとも1つのトランシーバ406は、有線および無線通信の少なくともいずれかに適した任意の数の送信機および受信機の少なくともいずれかを含み得る。トランシーバ406は、任意のサポートされている周波数チャネルでの無線通信のための1つ以上のアンテナを含み得る。
ディスプレイ408は、コンピューティングデバイス400内のコンテンツを表示するための、または別のデバイスから送信されるコンテンツを表示するための1つまたは複数の画面を含み得る。例えば、可動物体のカメラにより取得された画像/ビデオを表示し、目標物を決定して入力することをユーザに要求するためのグラフィカルユーザインタフェイス、目標物までの測定距離を示すグラフィカルユーザインタフェイスなどを表示する。いくつかの実施形態では、ディスプレイ408は、ユーザによるタッチ入力/ジェスチャを受け取るように構成されたタッチスクリーンディスプレイとすることができる。いくつかの実施形態では、コンピューティングデバイス400は、ジョイスティック、コントロールパネル、スピーカなどの他のI / O(入力/出力)デバイスを含み得る。動作中、コンピューティングデバイス400は、以下に示す態様の距離測定方法を実施することができる。
(4)距離測定方法
上述したUAVまたは距離測定システムを用いた距離測定について、本発明に係る距離測定方法の一実施形態として図面を参照しながら以下に説明する。
本実施形態では、UAVに搭載された複数のカメラから取得された複数の撮影画像と、これら複数の画像の撮影時刻に対応する動き情報とに基づいて該UAVから目標物までの距離を計算する。後述するように、好適な実施態様としてUAV自身の慣性測定ユニット(IMU)からの慣性航法データを、カメラから取得された撮影画像のデータと統合することによって、ユーザによって選択された物体からの距離をリアルタイムで測定できる。開示される方法は直感的で便利であり、そして速い計算速度で信頼できる測定結果を提供することができる。
図5は、本発明の例示的な一実施形態による距離測定プロセスの概略手順を示すフローチャートの一例である。
図5に示す距離測定プロセスは、例えば前述した可動物体100およびリモートコントローラ104の少なくともいずれかによって実行することができ、また、プロセッサ、記憶媒体、および可動物体に搭載されたカメラを含むシステムによっても実行可能である。
記憶媒体は、プロセッサにより読み出して実行可能なコンピュータ可読命令を格納することができ、コンピュータ可読命令は、開示された距離測定方法をプロセッサに実行させることができる。本明細書では、説明を容易にするため、UAVを可動物体100の一例として使用する。しかしながら、開示された方法は他の任意の適切な可動物体によって実施され得ることは勿論である。
図5を参照すると、本実施形態による距離測定方法は、まず、測定対象である目標物を特定することを含む(ステップS502)。この目標物は、ユーザ入力に基づいて画像から識別される。画像は例えば図1に示すカメラ1022によって取得され、リモートコントローラ104に表示されたものでよい。
いくつかの実施形態では、リモートコントローラ104の他、スマートフォン、スマートタブレット、スマートメガネなどのヒューマンマシンインタラクション端末は、目標物に対するユーザ選択を受け取ることができる。図6は、本本発明の例示的な一実施形態による目標物の特定に関連するグラフィカルユーザインタフェイスの一例である。図6に示すように、グラフィカルユーザインタフェイスは初期画像602を表示してもよい。初期画像602は、UAVと通信しているリモートコントローラの画面上に表示されてもよい。初期画像602は、UAVによって取得され、UAVから送信されたリアルタイム画像であり得る。遠隔制御は、ユーザが初期画像602内の目標領域604を特定することを可能にし得る。目標領域604は、例えば目標領域の中心でのシングルタップ、目標領域内の任意の位置でのダブルタップ、第1のコーナ点でのシングル/ダブルタップ、およびターゲット領域のバウンディングボックスを定義する第2のコーナ点でのシングル/ダブルタップタップをダブルタップする、ターゲット領域を囲む形状の自由描画、またはターゲット領域のバウンディングボックスを定義する始点と終点を有するドラッグ操作などのユーザ選択に基づいて特定することができる。ユーザ入力が目標物に対応するものとして画像内の1つの点のみを識別するとき、複数のセグメント化された画像セクションを得るために画像セグメンテーションプロセスが実行され、ターゲット領域は識別されたポイントを含むセグメント化セクションとして決定され得る。いくつかの実施形態では、ユーザ入力は物体名または物体のタイプであり得る。名前/タイプに基づいて初期画像内の1つまたは複数の物体を識別するためにパターン認識または画像分類アルゴリズムを実施することができ、ユーザによって入力された名前またはタイプと一致する物体が目標物として決定される。
いくつかの実施形態では、UAVのカメラが目標物を追跡している間(すなわち、目標物を含む画像を取得している間)、ユーザは、たとえば次のようにして取得画像に含まれる別の物体までの距離を測定することを要求できる。この要求は、例えば上記グラフィカルユーザインタフェイスに表示された画像において上記測定目標物に対応する領域を選択すること、または上記測定目標物の名称または種類を入力することにより可能である。測定目標物は、目標物の背景物であってもよい。言い換えれば、UAVのカメラによって取得された複数の画像には、目標物と背景物体の両方が含まれる。
いくつかの実施形態において、測定対象物を特定することは、グラフィカルユーザインタフェイス上に表示された複数の画像のうちの1つの中の領域のユーザ選択を取得することと、選択された領域に基づいて測定対象物を取得することを含むことがある。例えば、図6に示すように、ユーザは、測定対象物に対応する領域として領域606を選択してもよい。
いくつかの他の実施形態では、測定対象物を特定することは、以下を含むことができる:
1)複数の画像のうちの1つに含まれる目標物以外の少なくとも1つの物体を自動的に特定する
2)測定対象物を指定するユーザ指示を受信する
3)前記ユーザ指示に基づいて、前記特定された少なくとも1つの物体から前記測定対象物を取得する。
パターン認識または画像分類アルゴリズムを実施して、名前、種類、または他の物体特性に基づいて、取り込まれた画像内の1つまたは複数の物体を自動的に特定することができる。例えば、特定された物体は、傘、オレンジ色の車、平らな屋根の上の建物などである。また、ユーザによって入力された名称または種類に一致するものが目標物として決定される。物体の特定は、特定の名前またはタイプについてのユーザ入力を受け取った後に実行され得る。代替的に、複数の特定された物体を(例えば、物体の名前/特徴を列挙することによって、または画像内の物体に対応する境界ボックスを表示することによって)グラフィカルユーザインタフェイス上で提示することができ、一つの物体のユーザ選択(例えば、1つの名前または1つのバウンディングボックスについての選択)を受けて、目標物が決定される。
いくつかの実施形態では、画像内の物体を特定することは、その物体を表す画像内の領域を特定することを含み得る。例えば、目標物を特定することは、ユーザ入力に基づいて目標物を表す初期画像内の領域を特定することを含み得る。初期画像内の目標物を特定する際の以下の開示された手順は、任意の適切な画像内の任意の適切な物体を特定する際に適用することができることを理解することができる。いくつかの実施形態では、目標領域は、目標物を表す領域と見なされる。いくつかの実施形態では、目標領域のユーザ選択は正確な操作ではない場合があり、最初に特定された目標領域は目標物のおおよその位置およびサイズを示す場合がある。目標物を表す領域は、例えばスーパーピクセル領域分割法を実施することによって、初期画像に従って目標領域を精緻化することによって得ることができる。
スーパーピクセルは、類似のテクスチャ、色、および輝度レベルの少なくともいずれかを有する一群の連結ピクセルを含むことができる。スーパーピクセルは、特定の視覚的意義を有する不規則な形状のピクセルブロックであり得る。スーパーピクセル領域分割は、画像を複数の重ならないスーパーピクセルに分割することを含む。一実施形態では、初期画像のスーパーピクセルは、画素の画像特徴に基づいて初期画像の画素をクラスタリングすることによって得ることができる。単純線形反復クラスタリング(SLIC)アルゴリズム、グラフベースの領域分割アルゴリズム、Nカット領域分割アルゴリズム、ターボピクセル領域分割アルゴリズム、クイックシフト領域分割アルゴリズム、グラフカット領域分割アルゴリズム、グラフカットb領域分割アルゴリズムなど、任意の適切なスーパーピクセル領域分割アルゴリズムを使用することができる。スーパーピクセル領域分割アルゴリズムは、カラー画像とグレースケール画像の両方に使用できることを理解することができる。
また、目標領域内に位置する1つ以上のスーパーピクセルを取得し、該1つ以上のスーパーピクセルによって形成される領域を、目標物を表す領域として特定することができる。目標領域の外側にあるスーパーピクセルは除外される。目標領域内に部分的に位置するスーパーピクセルの場合、目標領域内に位置するスーパーピクセル内のピクセル数をスーパーピクセル内の全ピクセル数で割ることによって占有率を決定することができる。占有率が予め設定された閾値(例えば、50%)より大きい場合、スーパーピクセルは目標領域に位置していると見なすことができる。事前設定の閾値は実際の用途に基づいて調整することができる。
図7Aは、本発明の例示的な一実施形態によるスーパーピクセル領域分割の結果を示す画像の一例である。図7Bは、図7Aに示す画像の拡大部分の一例を示す図である。図7Bを参照すると、スーパーピクセル704、706、および708を含む、複数のスーパーピクセルが全体的にまたは部分的にユーザ選択の目標領域702内に配置されている。スーパーピクセル704は、目標領域702に完全に囲まれており、目標物を表す領域に含まれると見なされる。いくつかの実施形態では、事前設定の占有率しきい値は50%であり得る。したがって、これらの実施形態では、図7Bのスーパーピクセル706は、その50%未満が目標領域702内に位置するため、スーパーピクセル706は目標物を表す領域から除外される。一方、スーパーピクセル708は、50%を超えるスーパーピクセル708が目標領域702内に配置されているため、目標物を表す領域に含まれる。
いくつかの実施形態では、開示された方法は、目標物を特定した後に妥協された測定精度を示す警告メッセージを提示することを含み得る。場合によって、目標物が潜在的に速く動いているとき、または目標物が追跡するのに十分な詳細を含まないときなど、目標物は、測定精度に影響を及ぼす特定の特性を有することがある。リモートコントローラは、目標物が1つまたは複数の特定の特性を有すると判断した場合、警告メッセージおよび、測定精度を潜在的に妥協した理由を提示することがある。いくつかの実施形態では、警告メッセージは、測定を放棄または続行するオプションをさらに含むことができ、測定ステップは、ユーザ入力に基づく確認選択を受け取った後に続けることができる。
いくつかの実施形態において、開示された方法は、目標物が動いている物体であるかどうかを判定することを含み得る。いくつかの実施形態では、開示された方法は、目標物が動いている物体であると決定された場合に妥協された測定精度を示す警告メッセージを提示することをさらに含み得る。例えば、畳み込みニューラルネットワーク(CNN)を目標物上に実行して、目標物の種類を特定することができる。目標物の種類は、例えば、人、動物、自動車、航空機、ボートなど、目標物が移動する可能性が高いことを示す移動性の高い種類や、ドアや椅子など、移動の可能性が低いことを示す移動性の低い種類や、建物、木、道路標識などの移動不可の種類のいずれであってもよい。警告メッセージはそれぞれに応じて表示され得る。いくつかの実施形態では、目標物の移動速度が事前設定された閾値を下回るかどうかを判定することを含み得る。すなわち、目標物がある閾値速度を下回って移動した場合、目標物までの距離の正確な測定を提供することができる。この一方、目標物の移動速度が事前設定された閾値速度以上である場合、妥協された測定精度を示す警告メッセージを提示することがあり得る。
いくつかの実施形態における距離測定方法では、目標物に対応する目標特徴点(例えば、初期画像内の目標物を表す領域)を抽出し、ターゲット特徴点の量が事前設定の閾値量より少ないかどうかを判定するステップを含み得る。いくつかの実施形態における距離測定方法では、目標特徴点の量が事前設定の閾値量未満であることに応答して、妥協された測定精度を示す警告メッセージを提示することをさらに含み得る。目標物が一連の画像フレーム内で追跡され得るかどうかは、目標物が十分なテクスチャ詳細または十分な数量の特徴点を含むかどうかに基づいて判断され得る。特徴点は、ハリスコーナ検出器、HOG(有向勾配ヒストグラム)特徴記述子などのような任意の適切な特徴抽出方法によって抽出することができる。
いくつかの実施形態では、目標物の目標領域が決定されると、リモートコントローラ上のグラフィカルユーザインタフェイスは、例えば、初期画像上に重なる目標領域の境界線または境界ボックス、潜在的に妥協された測定精度の決定に応じた警告メッセージ、並びに継続的な距離測定の確認および目標領域のさらなる編集の少なくともいずれかのオプションの少なくともいずれかを表示することができる。
図5に戻り、UAVが移動しているときにそのカメラが目標物を追跡して一連の画像を取得し、取得された画像をプロセッサが受信し得る(S504)。言い換えれば、UAVに搭載されているカメラは、UAVが動いているときに目標物を含む一連の画像を取得することができる。いくつかの実施形態では、画像取得は、UAVの日常的な(例えば、固定周波数での)動作であり得、リモートコントローラは、UAVから取得画像のリアルタイム送信を受信し、画面上に表示し得る。UAVのルーチン動作とは、UAVの飛行中に通常実行され得るUAVの動作を指す。画像取得の他に、ルーチン操作は、移動制御が受信されないときに安定してホバリングすること、自動的に障害物を回避すること、遠隔制御からの制御コマンドに応答すること(例えば、リモートコントローラへのユーザ入力に基づく飛行高度、速度、および方向の少なくともいずれかの調整)、リモートコントローラでユーザによって選択された場所に向かって飛行すること、並びに、リモートコントローラへフィードバックを提供すること(例えば、位置および飛行状態を報告すること、リアルタイム画像を送信すること)の少なくともいずれかを含み得る。
UAVの移動方向および速度の少なくともいずれかを決定することは、距離測定を容易にする操作であり得る。距離測定プロセスの開始時に、UAVは、目標物の周囲に初期半径を有する円弧または曲線経路に沿って初期速度で移動し得る。目標物は、円弧または曲線経路の中心またはその近くに配置することができる。初期半径は、目標物とUAVとの間の推定距離であり得る。いくつかの実施形態では、初期速度は初期半径に基づいて決定されてもよい。例えば、初速度は初期半径と正の相関関係を有してもよい。
いくつかの実施形態では、目標物とUAVとの間の推定距離は、UAVの立体視カメラ(例えば、図3に示す前方視システム2024)から取得されたデータに基づいて決定され得る。例えば、UAVのメインカメラ(例えば、図3に示すカメラ2022)によって取得された初期画像内の目標物を特定した後、実質的に同じ瞬間にステレオカメラによって取得された画像を分析して深度マップを得ることができる。すなわち、深度マップは、目標物に対応する物体をも含み得る。対応する物体の深度は、目標物とUAVとの間の推定距離として使用することができる。目標物とUAVとの間の推定距離は、UAV上の任意の適切な深度センサ、例えばレーザセンサ、赤外線センサ、レーダなどから得られたデータに基づいて決定され得ることが理解され得る。
いくつかの実施形態では、目標物とUAVとの間の推定距離は、事前設定値に基づいて決定され得る。事前設定値は、(例えば、UAVのメインカメラの解像度に基づいて)UAVによって測定可能な最も遠い距離であり得る。例えば、深度マップにおいて目標物に対応する物体を特定することが困難である場合には、初期半径をそのまま設定値として決定してもよい。
いくつかの実施形態では、UAVが移動しているとき、例えばカメラによって取得された画像などのUAVの感知データをフィードバックデータとして使用することができ、かつ、UAVの速度、UAVの移動方向、UAVの回転角度のうちの少なくとも1つ、またはカメラを支持するジンバルの回転角度は、フィードバックデータに基づいて調整され得る。そのようにして、閉ループ制御を実現することができる。フィードバックデータは、取り込まれた画像内の目標物に対応するピクセル座標を含み得る。いくつかの実施形態では、カメラを支持するジンバルの回転角度は、取得された画像に目標物が確実に含まれるように調整され得る。言い換えれば、目標物はカメラによって追跡される。場合によっては、目標物は、特定の所定の位置(例えば、画像中心)または特定の所定のサイズ(例えば、ピクセル単位)で追跡される。すなわち、フィードバックデータに基づいて判定されるように、目標物の一部が撮像画像内にない場合に、ジンバルの回転度合いを調整してもよい。例えば、目標物に対応する残りのピクセルが取得画像の上端に位置する場合、ジンバルは、次の取得画像が目標物全体を確実に含むようにカメラをある程度上方向に回転させることができる。いくつかの実施形態では、UAVの速度は、現在の画像内および以前に取得された画像内の目標物の位置差(たとえば、一致するスーパーピクセルの2D座標)に基づいて調整することができる。現在の画像および以前に取得された画像は、2つの連続して取得されたフレーム、または所定の間隔で取得されたフレームであり得る。例えば、位置差が第1の閾値より小さければ、UAVの速度を上げることができる。そして、位置差が第2の閾値よりも大きい場合、UAVの速度は遅くなる可能性がある。言い換えれば、2つの画像における目標物の位置の差が第1の閾値より小さいことは、冗長な情報が収集され分析されていることを示唆している。そこで、フレーム間に十分な位置を形成して計算パワー/リソースを確保し、測定プロセスをスピードアップするためUAVの速度を上げてもよい。この一方、2つの画像における目標物の位置の差が大きいと、複数の撮像画像間で同じ特徴点を追跡することが困難になり、不正確な結果につながる可能性があるので、UAVの速度を下げて測定精度および安定性を確保する。いくつかの実施形態では、ユーザが目標物以外の背景物体までの距離を測定することを要求する場合、UAVおよびジンバルの少なくともいずれかの動きは、現在の画像および以前に取得した画像内の背景物体の位置差に基づいて調整され得る。
いくつかの実施形態では、UAVの動きは、ユーザ入力に基づいて手動で制御されてもよい。UAVの速度またはジンバルの回転度がフィードバックデータに基づいて調整されるべきであると決定するとき、遠隔制御はユーザに自動補正を要求するかまたは手動操作への提案を提供するように促し得る(例えばプロンプトメッセージの表示または「距離を測るために速度を落とす」などの音声メッセージを再生する。いくつかの実施形態では、手動入力が存在しない場合、UAVは、距離測定のための事前設定手順に基づいて自動飛行を実行することができる(例えば、上述のようにフィードバックデータに基づいて速度および半径を調整する)。
UAVが移動して画像を撮影している場合、画像の取得時点に対応するUAVの動き情報も収集される(S506)。動き情報は、UAVが移動しているときの加速度計およびジャイロスコープの読み取り値など、UAVによって記録された様々なセンサデータを含み得る。いくつかの実施形態では、動き情報は、ジンバルの回転角度など、メインカメラを支持するジンバルの姿勢情報を含み得る。いくつかの実施形態では、動き情報は、UAVが移動しているときにIMUおよびVO回路から得られるUAV姿勢関係、UAVの姿勢情報(たとえば向きおよび位置)など、UAVのルーティング動作のために定期的に生成される他のセンサデータをさらに含み得る。世界座標系のUAVは、IMUデータ、VOデータ、およびGPSデータの統合から取得される。目標物の画像を取得すること(S504)およびUAVの動き情報を収集すること(S506)は、UAVが移動しているのと同時に実行され得ることが理解され得る。また、S504およびS506における撮影画像および収集された動き情報は、日常的な作業のために定期的に生成されたデータを含んでいてもよく、直接取得して測距に利用することができる。
複数の撮影画像に含まれる物体とUAVとの間の距離は、複数の撮影画像と複数の画像の撮影時刻に対応する動き情報とに基づいて計算することができる(S508)。測定対象物は、目標物でもよいし、複数の画像に含まれる背景物でもよい。メインカメラによって取得された画像と共にIMUおよびVO回路からのデータを分析することによって、複数の画像の取得時点に対応する画像点の3D位置およびカメラ姿勢情報を決定することができる。さらに、複数の画像に含まれる目標物までの距離は、画像点の3D位置に基づいて決定することができる。距離計算は、UAV上および遠隔制御装置上の少なくともいずれかで実行することができる。
図8は、本発明の例示的な一実施形態による距離計算プロセスの一例を示すフローチャートの一例である。図8を参照すると、本実施形態では、メインカメラによって取り込まれた連続画像フレームから複数のキーフレームを選択することができる(S5081)。選択されたキーフレームはキーフレームシーケンスを形成することができる。いくつかの実施形態では、画像フレームの元のシーケンスは固定周波数で取得され、それらが特定の条件を満たさない場合、特定の元の画像フレームはキーフレームとして選択されないことがある。いくつかの実施形態では、キーフレームは、UAVが着実に動いているとき(例えば、小さな回転変化)に取得された画像フレームを含む。いくつかの実施形態では、最新のキーフレームから現在の画像フレームへの位置変化が予め設定された閾値よりも大きい(例えば、顕著な変位の)場合、現在の画像フレームが新しいキーフレームとして選択される。いくつかの実施形態では、第1のキーフレームは、初期画像、またはUAVが定常状態にあるとき(例えば、モーションブラーを回避するため)の初期画像の特定の期間内に取得された画像であり得る。第1のキーフレームの後に取り込まれた画像フレームは、当該画像フレームの取り込み時点と最新のキーフレームとの間の姿勢関係に基づいてキーフレームとして決定され選択され得る。言い換えれば、2つの取得瞬間(例えば、最新のキーフレームが取得された瞬間から現在の画像フレームが取得された瞬間までのメインカメラの回転変化および変位)におけるメインカメラの姿勢関係を評価することによって、現在の画像フレームをキーフレームとして選択することができるかどうかを決定することができる。
いくつかの実施形態では、UAVが動いていてカメラが画像フレームを取り込んでいるときに、新しいキーフレームを決定してキーフレームシーケンスに追加することができる。各キーフレームは、メインカメラの対応する推定カメラ姿勢を有することができる。推定カメラ姿勢は、UAVのIMUデータ、UAVのVOデータ、およびメインカメラを支持するジンバルの位置/回転データを組み込むことによって取得され得る。キーフレームシーケンス中のキーフレームが一定数m(例えば10個)に達すると、測定対象物までの距離を算出するのに使用できる状態になる。
キーフレームが決定されれば、キーフレームごとに特徴抽出を行うことができる(S5082)。いくつかの実施形態において、特徴抽出は、1つのキーフレームが決定/選択されるとすぐに実行され得る。すなわち、キーフレームの特徴抽出は、次のキーフレームが特定されているときに同時に実行することができる。いくつかの他の実施形態では、特徴抽出は、キーフレームシーケンス内のすべてのキーフレームが決定されるときなど、一定数のキーフレームが決定されるときに実行され得る。ここでは任意の適切な特徴抽出方法を実施することができる。例えば、スパース特徴抽出を使用して計算量を減らすことができる。FAST(加速セグメントテストからの特徴)、SUSAN(最小一価セグメント同化核)コーナ演算子、ハリスコーナ演算子などのようなコーナ点を特徴点として得るためにコーナ検出アルゴリズムを実行することができる。一例としてハリスコーナ検出アルゴリズムを使用して、画像点Iを与えられて、その領域(u,v)にわたって画像パッチを取り、それを(u,v)シフトすることを考えると、構造テンソルAは以下のように定義される。


ここで、I,Iは点Iの偏導関数である。像点に対応するx方向およびy方向の勾配情報Mは次のように定義することができる。

ここで、det(A)は行列式A、trace(A)はトレースA、kは調整可能な感度パラメータである。しきい値Mthを設定できる。M>Mthとき、像点は特徴点と見なされる。
1つのキーフレーム内の特徴点は、1つまたは複数の他のキーフレーム内に現れることがある。言い換えれば、2つの連続するキーフレームは、同じ環境/物体を記述する一致する特徴点を含み得る。キーフレーム内のそのような特徴点の2D位置を追跡して、特徴点のオプティカルフローを得ることができる(S5083)。ここでは任意の適切な特徴抽出/追跡および画像登録方法のうちの少なくともいずれかを実施することができる。例としてKanade−Lucas−Tomasi(KLT)フィーチャトラッカーを使用しhを2つの画像F(x),G(x)間の変位を示すものとすると、G(x)=F(x+h)であり、キーフレーム内の特徴点の変位は、次の式の反復に基づいて取得できる。


ここで、


であり、 F(x)は、G(x)より早く取り込まれ、w(x)は重み付け関数であり、xは位置を表すベクトルである。さらに、前の画像hに対する現在の画像の変位を取得した後、現在の画像h’に対する前の画像の変位を取得するために逆計算を実行することができる。理論的にはh=−h’である。実際の計算が理論的条件すなわち、h=−h’を満たす場合、特徴点が正しく追跡されている、すなわち、ある画像内の特徴点が別の画像内の特徴点と一致すると判断することができる。いくつかの実施形態では、追跡された特徴点はキーフレームのいくつかまたはすべてにおいて特定することができ、各追跡された特徴点は少なくとも2つの連続したフレームにおいて特定することができる。
キーフレーム内の追跡された特徴点の2D位置に基づいて、シーンジオメトリの3D構造に関する最適化問題を解き、カメラ姿勢に関連するパラメータを考慮することによって、特徴点の3次元(3D)位置および精緻化されたカメラ姿勢情報を得ることができる(S5084)。例示的な実施形態では、観察された画像点の画像位置と予測された画像点の画像位置との間の再投影誤差を最小限に抑えるためのバンドル調整(BA)アルゴリズムをこのステップで使用することができる。異なる視点からの多数の3D点(すなわち、キーフレームからの特徴点)を表す画像のセットを考えると、バンドル調整は、シーンの幾何学形状を記述する3D座標、相対運動のパラメータ(例えば、キーフレームを取得するときにカメラの姿勢が変化する)、および画像を取得するために使用されるカメラの光学特性をすべての点の対応する画像投影を含む最適性基準に従って同時に精緻化する問題として定義することができる。BAアルゴリズムの数学的表現は次のとおりである。


ここで、iは、追跡されたi番目の三次元点(例えば、S5083からの追跡された特徴点)を表し、nは追跡された点の数であり、bはi番目の点の三次元位置を表す。jは、j番目の画像(例えば、S5081からのキーフレーム)を示し、mは画像の数を示し、ajは、回転情報R、並進情報T、および固有パラメータKの少なくともいずれかを含む、j番目の画像のカメラ姿勢情報を示す。vijiはi番目の点がi番目の画像に射影があるかどうかを示す。もしj番目の画像がi番目の点を含んでいればvij=1であり、そうでなければvij=0である。Q(aj,bi)は、カメラの姿勢情報ajに基づくj番目の画像内のi番目の点の予測投影である。xijは、j番目の画像内のi番目の点の実際の投影を記述するベクトルである(たとえば、画像内のその点の2次元座標)。d(x1,x2)はベクトルx1とベクトルx2とで表される像点間のユークリッド距離を表す。
いくつかの実施形態では、バンドル調整は、一組の利用可能な画像内の観測点の位置を最も正確に予測する一組のパラメータを見つけるための一組の初期カメラ推定値および構造パラメータ推定値を共同で改良することになる。初期カメラおよび構造パラメータ推定値、すなわちa_jの初期値は、UAVのIMUおよびUAVのVO回路からのルーチン動作データに基づいて得られた推定カメラ姿勢情報である。すなわち、UAVの日常的な動作を維持する際に、IMUおよびVO回路は、UAV自体の姿勢情報を特定するためにセンサデータを分析することができる。キーフレームを取得するカメラの推定カメラ姿勢の初期値は、一致する取得時点でのUAVの姿勢情報と、一致する時点でのカメラを支持しているジンバルの姿勢情報とを組み合わせることによって得ることができる。一実施形態では、推定カメラ姿勢の初期値は、UAVのGPSデータをさらに統合することができる。
以上、添付の図面を参照しながら本発明の実施の形態を説明したが、これらは発明の容易な理解のためになされたものであり、これらをもって本発明の特許請求の範囲を限定するものではない。上述の実施の形態に付与した番号は、記載上の便宜を図るためのものに過ぎず、特に実施形態の優劣を示すものではない。また、フローチャートでは論理的な順序を示したが、特定の状況においては、記載されたステップを異なる順序で実行することもできる。
測定対象物とUAVとの間の距離は、測定対象物に関連する1つ以上の特徴点の3D位置に従って得ることができる(S5085)。以下では、距離算出およびサイズ決定の実施形態を説明する際に、測定対象物の一例として目標物を用いる。目標物に関して開示される手順は、キーフレームに含まれる任意の適切な測定対象物に適用することができることを理解することができる。いくつかの実施形態では、目標物までの距離は、目標物の中心点までの距離と見なされる。目標物の中心点は、例えば、目標物の幾何学的中心、目標物の重心、または目標物のバウンディングボックスの中心であり得る。中心点は、S5082から抽出された特徴点に含まれていてもよいし含まれていなくてもよい。中心点が抽出された特徴点に含まれる場合、バンドル調整結果から得られる中心点の三次元位置に基づいて、中心点までの距離を直接求めることができる。
一実施形態では、S5082から抽出された特徴点に中心点が含まれない場合、特徴点のオプティカルフローベクトルと、これに対応する重みとに基づくフィッティングにより中心点のオプティカルフローベクトルを取得する。
キーフレーム内の特徴点の2D位置を追跡すること(S5083)は、中心点を特徴点に追加することと、目標特徴点のオプティカルフローベクトルに基づいて得られた中心点のオプティカルフローベクトルに従って、キーフレーム内の目標物の中心点の2D位置を追跡することをさらに含み得る。いくつかの実施形態において、ターゲット特徴点は、S5082から抽出され、目標物の領域内に位置する特徴点であり得る。すなわち、中心点をBAアルゴリズム計算のための追跡点として追加することによって、中心点の3D位置は、BAアルゴリズムの結果から直接得ることができる。数学的にxiは、i番目の目標特徴点のオプティカルフローベクトルを表し、目標物に対応する領域内に特徴点がnあると仮定すると、中心点x0のオプティカルフローベクトルは次のようにして得ることができる。


ここで、wiは、中心点とi番目の目標特徴点との間の距離に基づくi番目の目標特徴点に対応する重みである。一実施形態では、wiは以下のようにガウス分布に基づいて得ることができる:


ここで、σは経験に基づいて調整することができ、diは画像上の中心点とi番目の目標特徴点との間の距離、すなわち、


であり、ここで、 (ui,vi)はi番目の目標特徴点の2D画像位置であり、 (u0,v0)は中心点の2D画像位置を表す。
いくつかの実施形態では、中心点のオプティカルフローベクトルを取得する際に使用されるいくつかの目標特徴点は、必ずしも目標物の領域内になくてもよい。例えば、その2D位置が中心点から一定範囲内にある特徴点を目標特徴点として用いることができる。このような範囲は目標物の面積よりも大きいことがあり、例えば、中心点のオプティカルフローベクトルを計算する際により多くの特徴点を含む。点のオプティカルフローベクトルを取得し、その点をBA計算に追加する同様の手法を使用して、追加すべき点と抽出された特徴点との間の2D位置関係に基づいて中心点以外の点の3D位置を取得することができる。例えば、目標物の角の点を追跡してBA計算に追加することができ、目標物の角の3次元位置に基づいて目標物のサイズを取得することができる。
別の実施形態では、中心点がS5082から抽出された特徴点に含まれていない場合、目標物に関連付けられた1つまたは複数の特徴点の3D位置に従って目標物までの距離を計算すること(S5085)は、複数の目標特徴点の3D位置に基づいて中心点の3D位置を決定することをさらに含んでよい。2D画像内の中心点の範囲内に位置する特徴点を特定することができ、特定された特徴点の深度情報をそれらの3D位置に基づいて得ることができる。一例では、特定された特徴点の大部分は、事前設定された分散範囲内で同じ深度情報または類似の深度情報を有することがあり、目標物と同じ画像平面内に位置すると見なすことができる。すなわち、特定された特徴点の大部分の深度は、目標物の深度、すなわち目標物とUAVとの間の距離と見なすことができる。別の例では、特定された特徴点の深度の加重平均は、目標物の深度として決定することができる。中心点と特定された特徴点との間の距離に基づいて重みを決定することができる。
いくつかの実施形態では、目標物のサイズは、目標物とUAVとの間の距離に基づいて取得されてもよい。目標物のサイズは、例えば、目標物の長さ、幅、高さ、および体積の少なくともいずれかを含み得る。一実施形態では、目標物が直方体などの平行六面体であると仮定すると、目標物のサイズは、目標物の対角線上の2点/頂点の3D座標を評価することによって得ることができる。一実施形態では、2D画像内の目標物の長さまたは高さは、目標物の奥行きとカメラの焦点距離との比(例えば9000mm/60mm)およびカメラセンサ定義(200ピクセル/mm)に基づいて、ピクセル単位(例えば、2800ピクセル)で得ることができ、目標物の長さまたは高さは通常の単位長で得ることができる(例えば2.1m)。
再び図5を参照すると、本実施形態の距離測定方法は、計算された距離をユーザに提示することをさらに含む(S510)。例えば、距離の提示は、グラフィカルユーザインタフェイスでの表示および音声メッセージによるブロードキャストの少なくともいずれかでなされてもよい。いくつかの実施形態では、リモートコントローラは、取得された画像をグラフィカルユーザインタフェイスに表示し、グラフィカルユーザインタフェイスに現在表示されている画像に距離をマークすることができる。さらに、グラフィカルユーザインタフェイスに現在表示されている画像は、特定された測定対象物を有する初期画像、または測定対象物を含むライブフィード画像であり得る。
いくつかの実施形態では、物体(例えば目標物または背景物体)とUAVとの間の距離は、カメラによって取得された追加の第2の画像と、該第2の画像の取得時点に対応する動き情報とに基づいてリアルタイムで更新され得る。(例えば、S5084およびS5085により)キーフレームに対応する物体の3D位置が得られた後、その後の任意の瞬間に新しい画像、例えば第2の画像が取り込まれると、この第2の画像に対応する物体の位置は、最後のキーフレームに対応する物体の3D位置と、最後のキーフレームの取得時点と第2の画像の取得時点との間のカメラ姿勢関係とを組み合わせることによって得ることができる。いくつかの実施形態では、距離は、一定の時間間隔で(例えば、毎秒)、またはS5082〜S5085を繰り返し実行することなく新しいキーフレームが選択される毎に更新され得る。一例では、物体の3D位置が利用可能であるので、物体とUAVとの間の更新された距離は、UAVの現在の3D位置と物体の3D位置とを積分する(例えば、間のユークリッド距離を計算する)ことによって都合よく決定され得る。別の例では、ある時間における物体とUAVとの間の位置関係が分かっているので(例えば、最後のキーフレームの取得時点での位置関係は、第1の変位ベクトルによって記述することができる)、物体とUAVとは、既知の位置関係と、現在時刻と既知の位置関係に対応する時点との間のUAVの位置変化とを統合する(例えば、最後のキーフレーム以降のUAV自体の位置の変化を表す2番目の変位ベクトルに第1の変位ベクトルを加算することによって得られるベクトルの絶対値を計算する)ことによって都合よく決定され得る。いくつかの他の実施形態では、システムは、ある数の新しいキーフレームが累積されて新しいキーフレームシーケンスを形成するときに、物体までの更新距離を計算するために再びS5082〜S5085を実行することができる。
いくつかの実施形態では、目標物が静止しているときにキーフレームが取得される。いくつかの実施形態では、目標物が動いており、目標物の背景物体が静止しているときにキーフレームが取得される。背景物体の3D位置は、本明細書で開示された方法を使用して取得され得る。さらに、背景物と目標物との間の相対位置に基づいて、目標物の追跡された動きおよび背景物の3D位置に基づいて、目標物までの距離を得ることができる。例えば、背景物が建物であり、目標物が自動車であって、UAVが移動して建物と自動車の両方を含む画像を取得している間にこの自動車が建物に向かって、または建物から離れて移動する場合である。上述のプロセス(例えば、S5081〜S5085)の実行によって、建物の3D位置および建物とUAVとの間の位置関係を得ることができる。さらに、自動車と建物との間の3D位置関係は、UAVに搭載された奥行きセンサ(例えばステレオカメラやレーダーなど)によって示唆される建物と自動車との間の相対的な奥行きの変化と、取得された画像によって示唆される建物と自動車との間の相対的な2D位置の変化との組み合わせから得ることができる。建物とUAVとの間の3D位置関係と、自動車と建物との間の3D位置関係とを統合することによって、自動車とUAVとの間の距離のみならず、自動車とUAVとの間の3D位置関係を得ることができる。
いくつかの実施形態では、測定対象物とUAVとの間の距離を計算すること(S508)は、UAVの日常的な動作を維持する際に生成されたデータにアクセスすることと、この日常動作のためのデータを利用して測定対象物とUAVとの間の距離を計算するためことと、をさらに含み得る。UAVが作動しているとき、様々なセンサデータがリアルタイムで記録され、UAVの日常的な動作を維持するために分析される。
通常の動作は、搭載カメラを使用して画像を取得すること、取得した画像を表示するためにリモートコントローラに送信すること、何らの移動コントロールをも受信しないときに安定的にホバリングすること、障害物を自動的に回避することと、リモートコントローラからの制御コマンドに応答すること(例えば、リモートコントローラへのユーザ入力に基づく飛行の高度、速度、および方向の少なくともいずれか、リモートコントローラ上でユーザによって選択された場所への飛行)並びにリモートコントローラへのフィードバックを提供すること(例えば、場所および飛行状態の報告、リアルタイム画像の実際の送信)の少なくともいずれかをさらに含み得る。記録されたセンサデータは、ジャイロスコープのデータ、加速度計のデータ、メインカメラを支持するジンバルの回転角度、GPSデータ、メインカメラによって収集されたカラー画像データ、ステレオビジョンカメラシステムによって収集されたグレースケール画像データを含み得る。UAVの慣性航法システムを使用して、ルーチン動作のためにUAVの現在位置/所在地を取得することができる。慣性航法システムは、ジャイロスコープデータ、加速度計データ、およびGPSデータの少なくともいずれかに基づくUAVの慣性測定ユニット(IMU)によって実施され得る。UAVの現在位置/所在地はまた、UAVのステレオカメラによって収集されたグレースケール画像データに基づいて視覚オドメトリ機構を実行するVO回路によっても取得され得る。IMUおよびVO回路からのデータは統合され分析されて、世界座標系におけるUAVの位置を含むUAVの姿勢情報をより高い精度で得ることができる。いくつかの実施形態では、開示された距離測定システムは、距離を計算するために必要なデータが、UAVの日常的な動作のために収集されたデータから容易にアクセス可能であるかどうかを判断し得る。特定の種類のデータが利用可能でない場合、システムは、データ収集を可能にし、欠けている種類のデータを取得するために、対応するセンサまたはUAVの他の構成要素と通信し得る。いくつかの実施形態では、開示された距離測定手順は、UAVの日常的な動作のために収集されたデータ以外に、追加のデータを収集する必要がない。さらに、本明細書に開示された距離測定手順は、IMUおよびVO回路によって生成されたデータなど、日常的な動作を維持する際にすでに処理され生成されたデータを利用することができる。
いくつかの実施形態において、UAVの日常的な動作のためにIMUおよびVO回路によって生成されたデータは、距離測定プロセスにおいて直接使用され得る。日常的な操作のために生成されたデータは、距離測定プロセスにおけるキーフレームの選択(例えば、S5081)およびバンドル調整の初期値の決定(例えば、S5084)の少なくともいずれかに使用することができる。
いくつかの実施形態では、キーフレームを選択するために使用することができるUAVのルーチン動作を維持するために生成されるデータは、前の画像フレームの取得時点におけるUAVの姿勢、および前の画像フレームの取得時点以降に収集されたIMUデータを含む。いくつかの実施形態では、そのようなデータは、現在の画像フレームに対応する推定カメラ姿勢を決定し、それに応じて現在の画像フレームがキーフレームであるかどうかを決定する際に使用することができる。例えば、日常的な動作は、(例えば、視覚慣性走行距離測定アルゴリズムを適用することにより)IMUデータおよびVO/GPSデータに基づいて連続的にUAVの姿勢を計算することを含む。したがって、前の画像フレームの取得時点におけるUAVの姿勢は使用される準備ができている。現在の画像フレームに対応するUAVの姿勢は、現在の画像フレームがキーフレームであるかどうかを判断する瞬間には、すぐには解決されないかまたは準備ができていない可能性がある。したがって、前の画像フレームの取得時点におけるUAVの姿勢と、現在の画像フレームの取得時点に対応するIMUデータ(例えば、前の画像フレームの取得時点と現在の画像フレームの取得時点との間に収集されたIMUデータ)とに従って、現在の画像フレームに対応するメインカメラの推定カメラ姿勢を得ることができる。
いくつかの実施形態では、IMU事前統合は、以前のUAV位置と現在のIMUデータとに基づいて一連の画像フレームの取得時点の間におけるUAVの移動/位置変化を推定するために実施することができる。例えば、現在の画像フレームを取り込むときのUAVの位置は、前の画像フレームを取り込むときのUAVの位置および慣性航法システムからのデータのIMU事前統合に基づいて推定することができる。IMU事前統合は、時点AにおけるUAVの位置と、時点Aと時点Bとの間で得られた慣性測定値の累積とを使用して、時点BにおけるUAVの位置を推定するプロセスである。
離散形式でのIMU事前統合の数学的記述は次のとおりである。


ここで、pk+1は、現在の画像フレームを取り込むときのUAVの推定3D位置であり、pkは、(例えば、IMU、VO回路、およびGPSセンサの少なくともいずれかに基づいて計算される)日常の動作からのデータに基づく前の画像フレームを取り込むときのUAVの3D位置である。vk+1は現在の画像フレームを取り込むときのUAVの速度であり、vkは前の画像フレームを取り込むときのUAVの速度である。qk+1は現在の画像フレームを取り込むときはUAVの4元数であり、qkは前の画像フレームを取り込むときはUAVの4元数である。そして、(ba)k+1(ba)kおよび(bω)k+1は、現在の画像フレームと前の画像フレームを取り込むときのそれぞれの加速度計バイアスである。(bω)k+1および(bω)kは、現在の画像フレームと前の画像フレームを取り込むときのそれぞれのジャイロスコープバイアスである。Δtは現在の画像フレームk+1を取り込む瞬間と前の画像フレームkを取り込む瞬間との間の時間差である。amは加速度計の現在の読み値、gは重力加速度、ωはジャイロスコープの現在の読み値を表する。Δqは、現在の画像フレームと前の画像フレームとの間の回転推定値であり、q{ }は、オイラー角表現から4元数表現への変換を表す。RwiはUAV座標系と世界座標系との間の回転関係を示し、四元数qから得ることができる。
いくつかの実施形態では、現在の画像フレームおよび前の画像フレームは、2つの連続して取り込まれた撮像フレームであり得る。IMU事前統合プロセスでは、センサから直接得られるパラメータは、加速度計の読みとジャイロスコープの読みを含む。残りのパラメータは、上記の数学的説明または任意の他の適切な計算に基づいて得ることができる。したがって、現在の画像フレームに対応するUAVの姿勢は、前の画像フレームに対応するUAVの姿勢のIMU事前積分によって推定することができる(例えば、視覚慣性走行距離測定法および現在の画像フレームに対応するIMUデータを使用してUAVの日常的な動作において以前に解決された)。
いくつかの実施形態では、連続画像フレームを取り込む頻度(例えば、20〜30Hz)は、記録加速度計の読みおよびジャイロスコープの読みの頻度(例えば、200〜400Hz)より低い。すなわち、2つの連続する画像フレームの取得時点の間に、複数の加速度計の読みおよびジャイロスコープの読みを得ることができる。一実施形態では、IMU事前統合は、加速度計の記録周波数およびジャイロスコープの読み取り値に基づいて実行することができる。例えば、Δt’は、2つの連続する加速度計とジャイロスコープの読み取り値の間の時間差を表し、Δt=nΔt’であり、nは1より大きい整数であることを示す。IMU事前積分は、Δt’に従って加速度計およびジャイロスコープの読み取りの記録周波数と同じ周波数で実行することができる。現在の画像フレームを取得するときのUAVの推定3D位置は、画像取得と加速度計/ジャイロスコープデータ記録との間の一致する瞬間にn番目の事前積分結果毎に出力することによって得ることができる。一実施形態では、2つの連続した画像フレームの取得時点の間に得られた複数の加速度計/ジャイロスコープの読みをフィルタリングして、IMU事前統合に使用するためのノイズ低減結果を得る。
いくつかの実施形態において、距離測定プロセスにおいて(例えば、キーフレーム選択において)UAVの日常的な動作のために生成されたデータを使用することは、UAVが定常移動状態にあるかどうかを判断する際にジャイロスコープの読み取り値を使用することを含み得る。UAVが定常的な移動状態にない場合、取り込まれた画像は距離測定における使用には適していない可能性がある。例えば、角速度が予め設定された閾値未満の場合、すなわち、


である場合、UAVは定常移動状態にあると判定することができ、定常移動状態で取得された画像を距離測定に使用することができる。また、定常的な移動状態で撮影されていない画像は、キーフレームとして選択されないことがある。
いくつかの実施形態では、2つの連続するフレーム(例えば、前の画像フレームと現在の画像フレーム)の取得時点の間のカメラ姿勢関係は、IMU事前統合からの結果に従って推定することができる。いくつかの実施形態では、VOアルゴリズムがUAVのステレオ画像に対して使用されるとき、VOアルゴリズムから取得されたステレオカメラの動きは、UAVの位置および動きを示すことができる。さらに、ステレオカメラのカメラ姿勢、または、VOアルゴリズム、IMU事前統合データ、およびGPSデータの少なくともいずれかから得られるUAVの姿勢は、メインカメラのカメラ姿勢の粗い推定を提供することができる。いくつかの実施形態では、メインカメラの推定カメラ姿勢は、UAVの姿勢と、UAVに対するジンバルの姿勢(例えば、ジンバルの回転角度と、UAVとジンバル姿勢との間の相対高度との少なくともいずれか)とを組み合わせることによって得られる。例えば、前の画像フレームに対応するメインカメラの推定カメラ姿勢は、(例えば、ルーチン動作からの)前の画像フレームに対応するUAVの姿勢と、前の画像フレームに対応するジンバルの回転度との組み合わせであり得る。現在の画像フレームに対応するメインカメラの推定カメラ姿勢は、(例えば、IMU事前統合からの)現在の画像フレームに対応するUAVの推定姿勢と、現在の画像フレームに対応するジンバルの回転度との組み合わせであり得る。
いくつかの実施形態において、距離測定プロセスにおいて(例えば、キーフレーム選択において)UAVの日常的な動作のために生成されたデータを使用することは、キーフレームと、キーフレームの後に取得された画像フレームとの間のカメラ姿勢関係を取得することにおいて。2つの連続するフレーム間のカメラ姿勢の関係を使用することを含み得る。現在のキーフレームが決定されれば、次のキーフレームを抽出することは、キーフレームと、キーフレームの後に取り込まれた画像フレームとの間のカメラ姿勢関係が予め設定された条件を満たすかどうかを決定することと、予め設定された条件を満たすカメラ姿勢関係に応じて、画像フレームを次のキーフレームとして選択することとを含み得る。
図9は、本発明の例示的な一実施形態によるキーフレーム抽出プロセスを示す図の一例である。図9に示すように、元々の画像順序は、固定周波数(例えば、30Hz)で取り込まれた複数の画像フレームを含む。VO計算およびIMU事前積分の少なくともいずれかは、2つの連続したフレーム毎に実行され、2つの連続した画像取り込み時点の間のカメラ姿勢関係を得る。あるキーフレームとそのキーフレーム以降に撮影された画像フレームとの間のカメラ姿勢関係は、2つの連続する取得時点間のカメラ姿勢関係を繰り返し累積すること、すなわちキーフレームとその最古のペアのカメラ姿勢関係から分析対象の画像フレームとその最新の先行フレームとのペアのカメラ姿勢関係に至るまで累積することによって得ることができる。例えば、図9に示すように、現在のキーフレームは時点T0で取得される。時点T0と時点T1との間のカメラ姿勢関係は、VO計算およびIMU事前積分の少なくともいずれかから得られ、事前設定された条件が満たされるかどうかを決定するために分析され得る。時点T0と時点T1との間のカメラ姿勢関係について事前設定の条件が満たされない場合、キーフレーム選択プロセスは、時点T0と時点T2との間のカメラ姿勢関係が事前設定条件を満たすかどうかを判断するために進む。時点T0と時点T2との間のカメラ姿勢関係と、時点T1と時点T2との間のカメラ姿勢関係とを組み合わせることによって時点T0と時点T2との間のカメラ姿勢関係を得ることができる。時刻T0と時刻T3との間のカメラ姿勢関係について事前設定条件が満たされると、キーフレーム選択プロセスは、時刻T3において取得された画像フレームを次のキーフレームとして決定する。
いくつかの実施形態では、カメラ姿勢関係に対応する事前設定条件は、回転閾値または変位閾値の少なくとも一方を含む。一実施形態では、画像フレームと現在のキーフレームとの間の変位が十分に大きい場合、および画像フレームと現在のキーフレームとの間の回転が十分に小さい場合のいずれにおいても、画像フレームは次のキーフレームとして決定される。言い換えれば、カメラ姿勢関係は、キーフレームを捉える瞬間から画像フレームを捉える瞬間までの回転変化、および、キーフレームを捉える瞬間から画像フレームを捉える瞬間までのカメラの位置変化のうちの少なくとも1つを含む。カメラ姿勢関係がプリセット条件を満たすかどうかを判断することは、回転変化が回転閾値未満であることに応答して、カメラ姿勢関係がプリセット条件を満たすと判断すること、および、回転変化が回転閾値より小さく、位置変化が変位閾値より大きいことに応答してカメラ姿勢関係がプリセット条件を満たすと判断すること少なくともいずれかを含む。いくつかの実施形態では、位置変化が変位閾値以下である(例えば、位置変化が処理するのに十分に有意ではないことを示す)場合、画像フレームはキーフレームとして選択されるためには失格とされ、プロセスは次の画像フレームの分析へ移動する。いくつかの実施形態では、回転変化が回転閾値以上である場合(例えば、画像が安定した環境で撮影されなかったため結果の精度を損なう可能性があることを示す)、画像フレームは破棄され、プロセスは次の画像フレームの分析へ移動する。
数学的には、回転の変化Rはオイラー角で


と記述できる。プリセット条件は、以下の不等式


を満たすことを含み得る。ここで、α_thは回転閾値である。位置/並進変化tは


によって記述することができる。事前設定条件は、以下の不等式


を満たすことを含み得る。ここで、dthは変位閾値である。
いくつかの実施形態では、(例えば、バンドル調整アルゴリズムの初期値を割り当てる際の)距離測定プロセスにおけるUAVのルーチン動作のためのデータの使用は、IMU、VO回路、およびGPSセンサからのデータを統合して、キーフレームの取得時点に対応するUAVの姿勢情報を取得することを含み得る。メインカメラの推定カメラ姿勢情報は、例えば、ステレオカメラのカメラ姿勢の線形重ね合わせ(すなわち、UAVの姿勢情報)およびメインカメラとUAVとの位置関係(すなわち、UAVに対するジンバルの位置/回転)によって得ることができる。BAアルゴリズムは最適化問題であるので、ランダムな初期値を割り当てることは大域的最適化に代えて局所的最適化をもたらすかもしれない。S5084におけるBAアルゴリズムの初期値についてのIMUおよびVOデータからの推定カメラ姿勢情報を使用して、反復回数を減らすことができ、アルゴリズムの収束時間を早くすることができ、そして誤り確率が減少する。さらに、いくつかの実施形態では、正確な結果を得るための初期値および制約としてGPSデータもBAアルゴリズムで使用され得る。
いくつかの実施形態では、距離測定プロセスで使用されるUAVのルーチン動作のためのデータは、UAVによって収集および生成され(たとえば、S504、S506、S5081、およびS5084で初期値を取得するとき)、リモートコントローラに送信される。目標物の特定および距離の計算および提示は、リモートコントローラ上で実行される(例えば、S502、S5082〜S5085、S510)。いくつかの実施形態では、物体を特定し、計算された距離を提示する際にユーザ入力を取得することのみがリモートコントローラ上で実行され、残りのステップはすべてUAVによって実行される。
(5)プロブラム及び記録媒体
上述した距離測定方法の一連の手順は、プログラムに組み込んでコンピュータに読込ませて実行させてもよい。これにより、本発明にかかる距離測定方法を、UAVに通信可能に接続される汎用のコンピュータを用いて実現することができる。
また、上述した距離測定方法の一連の手順をコンピュータに実行させるプログラムとしてフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読込ませて実行させてもよい。
記録媒体は、磁気ディスクや光ディスク等の携帯可能なものに限定されず、ハードディスク装置やリードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)などの固定型の記録媒体でもよいし、非一時的記憶媒体でもよい。
また、上述したパターン計測方法の一連の手順を組込んだプログラムをインターネット等の通信回線(無線通信を含む)を介して頒布してもよい。さらに、上述したパターン計測方法の一連の手順を組込んだプログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、又は記録媒体に収納して頒布してもよい。
本明細書に記載されるカメラ姿勢情報を計算するための数学的手順が唯一の手順ではないことを理解されたい。本明細書開示された特定のステップは他の適切な手順/アルゴリズムで置き換えてもよい。
本開示は、無人航空機(UAV)を使用して距離を測定するための方法およびシステム、ならびに距離を測定することが可能なUAVを提供する。従来の測距方法とは異なり、開示された方法などは、ユーザがUAVのカメラによって取得された画像内の関心対象を選択することを可能にし、測定距離をほぼリアルタイム(例えば500ミリ秒未満)で提供するグラフィカルユーザインタフェイスを提供する。 さらに、開示された方法は、UAV自身のIMUからの慣性航法データおよび日常的な動作のために生成されたVO回路からのデータを距離測定に直接利用することができ、それはさらに計算リソースおよび処理時間を節約する。開示された方法は直感的で便利であり、そして速い計算速度で信頼できる測定結果を提供することができる。
方法の実施形態に関連する図に示されるプロセスは、任意の適切な順序または順序で実行または実行することができ、それは、図に示された順序および上述された順序に限定されない。例えば、2つの連続したプロセスは、関連する機能に応じて、待ち時間および処理時間を短縮するために適切な場合には実質的に同時にまたは並行して実行され、あるいは図示される順序と逆の順序で実行され得る。
さらに、装置の実施形態に関連する図中の構成要素は、必要に応じて図に示すものとは異なる方法で結合することができる。いくつかの構成要素は省略されてもよく、追加の構成要素が追加されてもよい。
本開示の他の実施形態は、本明細書の考察および本明細書に開示された実施形態の実施から当業者には明らかであろう。本明細書および実施例は例示としてのみ考慮されるべきであり、本発明の範囲を限定するものではなく、本発明の真の範囲および精神は特許請求の範囲によって示されることが意図される。
100…可動物体
102…可動物体本体
104…リモートコントローラ
106…目標物
200…UAV
202…検知システム
204…推進システム
206…通信回路
208…搭載コントローラ
400…コンピューティングデバイス
402…記憶媒体
404…プロセッサ
406…トランシーバ
408…ディスプレイ
602…初期画像
604,702…目標領域
606…目標物に対応する領域
704,706,708…スーパーピクセル
1022,2022…カメラ
1024…支持機構
2024…前方視システム
2026…下方視システム

Claims (33)

  1. カメラを搭載した可動物体を使用して距離を測定する方法であって、
    測定の対象である目標物を特定することと、
    可動物体の移動中であってカメラが前記目標物を追跡しているときに、前記カメラによって前記目標物を撮影し、複数の画像を取得することと、
    前記複数の画像の取得時点に対応する可動物体の動き情報を収集することと、
    前記動き情報と前記複数の画像とに基づいて前記目標物と前記可動物体との間、または測定対象物と前記可動物体との間の距離を計算することと、
    を備える距離測定方法。
  2. 前記動き情報は、可動物体自身の慣性航法データと、可動物体自体の姿勢情報を特定するためのセンサデータとを統合することにより、取得される請求項1に記載の距離測定方法。
  3. 前記複数の画像の取得時点に対応する前記動き情報に基づいて前記複数の画像のそれぞれに対応して複数の推定カメラ姿勢を取得することと、
    可動物体の姿勢情報を特定するためのデータを可動物体のセンサから取得することと、
    取得したセンサデータに基づいて前記複数の画像の一つであるキーフレームと、該キーフレームの後に取り込まれた画像フレームとの間のカメラ姿勢関係を取得し、該カメラ姿勢関係が予め設定された条件を満たすかどうかを判定し、前記条件を満たすカメラ姿勢関係に応じて、複数の画像のうちの1つとして画像フレームを選択することと、
    をさらに備え、
    前記画像フレームの選択は、
    第1のカメラ姿勢関係が事前設定条件を満たさないことに応答して、前記キーフレームと、第1の画像フレームの後に取り込まれた第2の画像フレームとの間の第2のカメラ姿勢関係を取得することと、
    第2のカメラ姿勢関係が前記事前設定条件を満たすかどうかを判定し、前記第2のカメラ姿勢関係が前記事前設定条件を満たすことに応答して、第2の画像フレームを複数の画像のうちの1つとして選択することと、
    を含む請求項1に記載の距離測定方法。
  4. 前記複数の画像の取得時点に対応する前記動き情報に基づいて前記複数の画像のそれぞれに対応して複数の推定カメラ姿勢を取得することと、
    可動物体の姿勢情報を特定するためのデータを可動物体のセンサから取得することと、
    取得したセンサデータに基づいて前記複数の画像の一つであるキーフレームと、該キーフレームの後に取り込まれた画像フレームとの間のカメラ姿勢関係を取得し、該カメラ姿勢関係が事前設定条件を満たすかどうかを判定し、前記事前設定条件を満たすカメラ姿勢関係に応じて、複数の画像のうちの1つとして画像フレームを選択することと、
    をさらに備え、
    前記事前設定条件は、回転閾値または変位閾値の少なくともいずれかを含み、
    前記カメラ姿勢関係は、前記キーフレームを捉える瞬間から画像フレームを捉える瞬間までの回転変化、および、前記キーフレームを捉える瞬間から画像フレームを捉える瞬間までの前記カメラの位置変化のうちの少なくともいずれかを含み、
    前記カメラ姿勢関係が事前設定条件を満たすかどうかを判断することは、
    回転変化が回転閾値未満であることに応答して、カメラ姿勢関係が前記予め設定された条件を満たすと判定すること、および、回転変化が回転閾値よりも小さく、位置変化が変位閾値よりも大きいことに応答して、前記カメラ姿勢関係が前記予め設定された条件を満たすと判定すること、の少なくともいずれかを含む、
    請求項1に記載の距離測定方法。
  5. 前記可動物体は支持機構を介して複数のカメラを支持し、前記方法は、
    前記複数の画像の取得時点に対応する動き情報に基づいて複数の推定カメラの姿勢を取得することを備え、
    前記支持機構のステータス情報は、前記複数の画像の取得時点に対応し、
    前記方法は、
    前記複数のカメラの各々から取得された複数の画像の各々から複数の特徴点を抽出することと、
    前記複数の特徴点に対し、それらの二次元(2D)位置を追跡することと、
    前記複数の画像内の前記複数の特徴点の2D位置に基づいて、前記複数の特徴点の3次元(3D)位置と、カメラ姿勢情報とを取得することと、
    前記目標物または前記測定対象物に関連付けられた少なくとも1つの特徴点の3D位置と、カメラ姿勢情報によって示されるカメラの3D位置とに従って、前記目標物と前記可動物体との間、または前記測定対象物と前記可動物体との間の距離を計算することと、
    をさらに備える請求項1に記載の距離測定方法。
  6. 前記複数の特徴点の前記2D位置を追跡することは、
    前記複数の画像のうちの連続する2つの画像間の複数の特徴点の変位を追跡することと、
    追跡された変位に従って複数の特徴点のオプティカルフローベクトルを取得することと、
    をさらに備える請求項4に記載の距離測定方法。
  7. 前記複数の特徴点は目標物の中心点を含み、
    前記複数の画像内の前記複数の特徴点の2D位置を追跡することは、前記複数の画像から特定された、目標物の領域内にある複数の目標特徴点のオプティカルフローベクトルに基づいて、前記複数の画像内の前記目標物の中心点の2D位置を追跡することを含み、
    前記複数の特徴点の3D位置を取得することは、前記複数の画像内の中心点の2D位置と前記複数の画像の取得時点に対応する複数の推定カメラ姿勢とに基づいて中心点の3D位置を取得することを含み、
    前記目標物と前記可動物体との間の距離を計算することは、前記カメラ姿勢情報によって指示される前記中心点の3D位置および前記カメラの3D位置に従って前記距離を計算することを含む、
    請求項5に記載の距離測定方法。
  8. 前記中心点の前記2D位置を追跡することは、
    前記複数の画像における中心点と目標特徴点との位置関係を決定することと、
    前記位置関係に従って、目標特徴点のオプティカルフローベクトルに対応する重みを割り当てることと、
    前記目標特徴点のオプティカルフローベクトルと対応する重みとに基づいて前記中心点のオプティカルフローベクトルをフィッティングすることと、
    を含む請求項7に記載の距離測定方法。
  9. 前記複数の特徴点の前記3D位置と、前記カメラ姿勢情報とを取得することは、
    全再投影誤差を最小化するバンドル調整アルゴリズムに基づく最適化問題を解くことによって、複数の特徴点および複数の推定カメラ姿勢の3D位置を同時に改良し、複数の特徴点の3次元位置およびカメラを取得することと、
    を含む請求項5に記載の距離測定方法。
  10. 前記目標物を特定することは、
    前記カメラによって取得された、前記目標物を含む初期画像を取得し、
    前記初期画像内で目標領域のユーザ選択を取得し、
    画素の画像特徴に基づいて前記初期画像の画素をクラスタリングすることによって前記初期画像のスーパーピクセルを取得することと、
    前記目標領域に位置する少なくとも一つのスーパーピクセルを取得することと、
    前記少なくとも一つのスーパーピクセルによって形成される画像領域を、目標物を表す領域として特定することと、
    を含む請求項1に記載の距離測定方法。
  11. 前記目標物を特定した後に、畳み込みニューラルネットワーク(CNN)を使用して前記目標物が可動物体であるかどうかを判定することをさらに備え、
    前記目標物が可動物体であると決定されたことに応答して、妥協された測定精度が存在することを示す警告メッセージが提示される、
    請求項1に記載の距離測定方法。
  12. 前記目標物を特定した後に、前記目標物に対応する目標特徴点を抽出することと、
    目標特徴点の量が予め設定された量閾値より少ないかどうかを判定することと、
    をさらに備え、
    目標特徴点の量が事前設定量閾値未満であることに応答して、妥協された測定精度が存在することを示す警告メッセージが提示される、
    請求項1に記載の距離測定方法。
  13. 前記目標物と前記可動物体との間の推定距離である初期半径を決定することと、
    前記初期半径に基づいて初期速度を決定ことと、
    目標物の周囲に前記初期半径を有する曲線経路に沿って初期速度で前記可動物体を移動させることと、
    をさらに備える請求項1に記載の距離測定方法。
  14. 前記複数の画像のうちの1つに含まれる目標物以外の少なくとも1つの物体を自動的に特定し、前記測定対象物を指定するユーザ指示を受け取り、該ユーザ指示に基づいて前記少なくとも1つの物体から前記測定対象物を取得することにより、前記複数の画像のうちの1つに含まれる前記測定対象物を特定すること
    をさらに備える請求項1に記載の距離測定方法。
  15. 請求項1から14のいずれか一項に記載の距離測定方法をコンピュータに実行させるためのプログラム。
  16. カメラを搭載した外部の可動物体を使用して距離を測定するシステムであって、
    プロセッサと、
    前記プロセッサに距離測定を実行させるためのプログラムを格納するメモリと、
    可動物体から送信される複数の画像の表示を可能にするとともに、表示される画像を用いてユーザが目標物を特定するためのユーザインタフェイスと、
    を備え、
    前記複数の画像は、可動物体の移動中に前記目標物を追跡しているときに可動物体のカメラにより撮影されて前記プロセッサに送信され、
    前記プロセッサは、ユーザによる前記目標物の特定を受けて前記目標物を追跡するための指示信号を生成して可動物体に送信し、さらに、前記複数の画像の取得時点に対応する可動物体の動き情報を収集し、収集した動き情報と前記複数の画像とに基づいて前記目標物と可動物体との間の距離を計算する、
    距離測定システム。
  17. 前記動き情報は、可動物体自身の慣性航法データと、可動物体自体の姿勢情報を特定するための可動物体が搭載するセンサからのセンサデータとを含み、
    前記プロセッサは、前記慣性航法データと、前記センサデータとを統合することにより、前記動き情報を取得する請求項16に記載の距離測定システム。
  18. 前記プロセッサは、
    前記複数の画像の取得時点に対応する前記動き情報に基づいて前記複数の画像のそれぞれに対応して複数の推定カメラ姿勢を取得し、可動物体の姿勢情報を特定するためのデータを可動物体のセンサから取得し、取得したセンサデータに基づいて前記複数の画像の一つであるキーフレームと、該キーフレームの後に取り込まれた画像フレームとの間のカメラ姿勢関係を取得し、該カメラ姿勢関係が事前設定条件を満たすかどうかを判定し、前記事前設定条件を満たすカメラ姿勢関係に応じて、複数の画像のうちの1つとして画像フレームを選択し、さらに、
    第1のカメラ姿勢関係が前記事前設定条件を満たさないことに応答して、前記キーフレームと、第1の画像フレームの後に取り込まれた第2の画像フレームとの間の第2のカメラ姿勢関係を取得し、第2のカメラ姿勢関係が前記事前設定条件を満たすかどうかを判定し、前記事前設定条件を満たす第2のカメラ姿勢関係に応答して、第2の画像フレームを複数の画像のうちの1つとして選択することにより、前記画像フレームを選択する、
    請求項16に記載の距離測定システム。
  19. 前記可動物体は支持機構を介して複数のカメラを支持し、
    前記プロセッサは、
    前記複数の画像の取得時点に対応する動き情報に基づいて複数の推定カメラの姿勢を取得し、前記複数のカメラの各々から取得された複数の画像の各々から複数の特徴点を抽出し、該複数の特徴点に対し、それらの二次元(2D)位置を追跡し、前記複数の画像内の前記複数の特徴点の2D位置に基づいて、前記複数の特徴点の3次元(3D)位置と、カメラ姿勢情報とを取得し、前記複数の画像の取得時点に対応する支持機構のステータス情報と、前記目標物に関連付けられた少なくとも1つの特徴点の3D位置と、カメラ姿勢情報によって示されるカメラの3D位置と、に従って、前記目標物と前記可動物体との間の距離を計算する、
    請求項16に記載の距離測定システム。
  20. 前記プロセッサは、
    前記複数の画像のうちの連続する2つの画像間の複数の特徴点の変位を追跡し、追跡された変位に従って複数の特徴点のオプティカルフローベクトルを取得することにより、前記複数の特徴点に対して、それらの二次元(2D)位置を追跡する、
    請求項19に記載の距離測定システム。
  21. 前記複数の特徴点は目標物の中心点を含み、
    前記プロセッサは、
    前記複数の画像から特定された、目標物の領域内にある複数の目標特徴点のオプティカルフローベクトルに基づいて、複数の画像内の前記目標物の中心点の2D位置を追跡することにより前記複数の特徴点の2D位置を追跡し、
    前記複数の画像内の中心点の2D位置と前記複数の画像の取得時点に対応する複数の推定カメラ姿勢とに基づいて中心点の3D位置を取得することにより前記複数の特徴点の3D位置を取得し、
    前記カメラ姿勢情報によって指示される前記中心点の3D位置および前記カメラの3D位置に従って前記距離を計算することにより前記目標物と前記可動物体との間の距離を計算する、
    請求項19に記載の距離測定システム。
  22. 前記プロセッサは、
    前記複数の画像における中心点と目標特徴点との位置関係を決定し、前記位置関係に従って、目標特徴点のオプティカルフローベクトルに対応する重みを割り当て、前記目標特徴点のオプティカルフローベクトルと対応する重みとに基づいて前記中心点のオプティカルフローベクトルをフィッティングすることにより、前記目標物の中心点の2D位置を追跡する、
    請求項16に記載の距離測定システム。
  23. 前記プロセッサは、
    全再投影誤差を最小化するバンドル調整アルゴリズムに基づく最適化問題を解くことによって、複数の特徴点および複数の推定カメラ姿勢の3D位置を同時に改良することにより、前記複数の特徴点の3次元(3D)位置と、前記カメラ姿勢情報とを取得する、
    請求項19に記載の距離測定システム。
  24. 可動物体本体と、
    前記可動物体本体に揚力および推力の少なくともいずれかを与えて任意の移動を可能にする推進機構と、
    前記可動物体本体に搭載され、可動物体の移動中に画像を撮影するカメラを含む検知装置と、
    ユーザからの指示信号を受けて目標物を特定し、前記カメラからの複数の画像の取得時点に対応する可動物体の動き情報を収集し、該動き情報と前記複数の画像とに基づいて前記目標物と前記可動物体との間、または測定対象物と前記可動物体との間の距離を計算するプロセッサと、
    を備える可動物体。
  25. 前記検知装置は、前記可動物体の空間配置、速度、および加速度の少なくともいずれかを検出するセンサを含み、
    前記プロセッサは、前記可動物体の慣性航法データと、前記可動物体の姿勢情報を特定するためのセンサデータとを統合することにより、前記動き情報を取得する請求項24に記載の可動物体。
  26. 前記プロセッサは、前記目標物と前記可動物体との間の推定距離から初期半径を決定し、該初期半径に基づいて前記可動物体の初期速度を決定し、前記目標物の周囲に前記初期半径を持つ曲線パスに沿って前記初期速度で前記可動物体を移動する請求項24に記載の可動物体。
  27. 前記プロセッサは、
    複数の画像のそれぞれの取得時点に対応する動き情報に基づいて前記複数の画像のそれぞれに対応して複数の推定カメラ姿勢を取得し、
    前記センサからの検出データに基づいて前記複数の画像の一つであるキーフレームと、該キーフレームの後に取り込まれた画像フレームとの間のカメラ姿勢関係を取得し、該カメラ姿勢関係が事前設定条件を満たすかどうかを判定し、前記事前設定条件を満たすカメラ姿勢関係に応じて、複数の画像のうちの1つとして画像フレームを選択する、
    請求項25に記載の可動物体。
  28. 前記プロセッサは、
    第1のカメラ姿勢関係が前記事前設定条件を満たさないことに応答して、前記キーフレームと、第1の画像フレームの後に取り込まれた第2の画像フレームとの間の第2のカメラ姿勢関係を取得することと、
    第2のカメラ姿勢関係が前記事前設定条件を満たすかどうかを判定し、前記第2のカメラ姿勢関係が前記事前設定条件を満たすことに応答して、第2の画像フレームを複数の画像のうちの1つとして選択することにより、前記画像フレームを選択する請求項27に記載の可動物体。
  29. 前記事前設定条件は、回転閾値または変位閾値の少なくともいずれかを含み、
    前記カメラ姿勢関係は、前記キーフレームを捉える瞬間から画像フレームを捉える瞬間までの回転変化、および、前記キーフレームを捉える瞬間から画像フレームを捉える瞬間までの前記カメラの位置変化のうちの少なくともいずれかを含み、
    前記カメラ姿勢関係が事前設定条件を満たすかどうかを判断することは、
    回転変化が回転閾値未満であることに応答して、カメラ姿勢関係が前記予め設定された条件を満たすと判定すること、および、
    回転変化が回転閾値よりも小さく、位置変化が変位閾値よりも大きいことに応答して、前記カメラ姿勢関係が前記予め設定された条件を満たすと判定すること、
    の少なくともいずれかを含む、請求項27に記載の可動物体。
  30. 前記可動物体本体は支持機構を介して複数のカメラを支持し、
    前記プロセッサは、
    前記複数のカメラからの複数の画像のそれぞれに対応する動き情報に基づいて、複数の推定カメラ姿勢を取得し、
    複数の画像内の複数の特徴点の二次元(2D)位置を追跡し、
    複数の特徴点の3次元(3D)位置および複数の画像内の複数の特徴点の2D位置に基づいてカメラ姿勢情報と、複数の画像の取得時点に対応する可動物体のカメラを支持する支持機構のステータス情報とを取得し、さらに、前記目標物または前記測定対象物に関連付けられた1つまたは複数の特徴点の3D位置と、カメラ姿勢情報によって示されるカメラの3D位置とに従って、前記目標物または前記測定対象物と前記可動物体との間の距離を計算する、
    請求項24に記載の可動物体。
  31. 前記可動物体本体は支持機構を介して複数のカメラを支持し、
    前記センサは、加速度計およびジャイロスコープの少なくともいずれかを含み、
    前記動き情報は、前記加速度計、前記ジャイロスコープ、および前記支持機構のうちの少なくとも1つによって収集されたデータを含む、
    請求項25に記載の可動物体。
  32. 前記プロセッサは、
    前記目標物と前記可動物体との間の距離に基づいて前記目標物または前記測定対象物のサイズを計算する請求項24に記載の可動物体。
  33. 前記プロセッサは、前記複数の画像のうちの1つに含まれる目標物以外の少なくとも1つの物体を自動的に特定し、ユーザからの指示に基づいて、特定された前記物体から前記測定対象物を取得する請求項24に記載の可動物体。
JP2019139104A 2018-08-21 2019-07-29 距離測定方法、プログラム、距離測定システム、および可動物体 Pending JP2020030204A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
PCT/CN2018/101510 WO2020037492A1 (en) 2018-08-21 2018-08-21 Distance measuring method and device
CNPCT/CN2018/101510 2018-08-21

Publications (1)

Publication Number Publication Date
JP2020030204A true JP2020030204A (ja) 2020-02-27

Family

ID=69592395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019139104A Pending JP2020030204A (ja) 2018-08-21 2019-07-29 距離測定方法、プログラム、距離測定システム、および可動物体

Country Status (5)

Country Link
US (1) US20210012520A1 (ja)
EP (1) EP3837492A1 (ja)
JP (1) JP2020030204A (ja)
CN (1) CN112567201B (ja)
WO (1) WO2020037492A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111977006A (zh) * 2020-08-11 2020-11-24 深圳市道通智能航空技术有限公司 一种关节角的初始化方法、装置及飞行器
KR102245220B1 (ko) * 2020-11-09 2021-04-27 주식회사 엔닷라이트 딥러닝 기반으로 2차원 이미지로부터 3차원 모델을 복원하는 장치 및 그 방법
KR102504743B1 (ko) * 2021-08-24 2023-03-03 한국철도기술연구원 시설물의 모델링을 기반으로 하는 점검 드론의 위치 보정장치 및 보정방법
CN115953328A (zh) * 2023-03-13 2023-04-11 天津所托瑞安汽车科技有限公司 一种目标矫正方法、系统及电子设备

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108680185B (zh) * 2018-04-26 2020-09-22 广东宝乐机器人股份有限公司 移动机器人的陀螺仪数据校正方法、装置和设备
NL2022442B1 (nl) * 2019-01-24 2020-01-07 Lely Patent Nv Positiebepalingsinrichting
KR102235589B1 (ko) * 2019-02-19 2021-04-02 주식회사 아르고스다인 무인기 착륙 시스템
CN112073748B (zh) * 2019-06-10 2022-03-18 北京字节跳动网络技术有限公司 全景视频的处理方法、装置及存储介质
US11022972B2 (en) * 2019-07-31 2021-06-01 Bell Textron Inc. Navigation system with camera assist
CN111457895B (zh) * 2020-03-31 2022-04-22 彩虹无人机科技有限公司 一种无人机光电载荷的目标尺寸计算与显示方法
US11370124B2 (en) * 2020-04-23 2022-06-28 Abb Schweiz Ag Method and system for object tracking in robotic vision guidance
CN111505577A (zh) * 2020-04-27 2020-08-07 湖南大学 基于可见光通信的移动车辆定位方法
WO2022015238A1 (en) * 2020-07-15 2022-01-20 Singapore University Of Technology And Design Aerial vehicle and method of forming the same, method of determining dimension of object
EP3957954A1 (en) * 2020-08-19 2022-02-23 Honeywell International Inc. Active gimbal stabilized aerial visual-inertial navigation system
US20220207769A1 (en) * 2020-12-28 2022-06-30 Shenzhen GOODIX Technology Co., Ltd. Dual distanced sensing method for passive range finding
CN113179387B (zh) * 2021-03-31 2022-07-26 深圳市紫光照明技术股份有限公司 一种智能监控系统和方法
CN113379591B (zh) * 2021-06-21 2024-02-27 中国科学技术大学 速度确定方法、速度确定装置、电子设备及存储介质
CN113686867A (zh) * 2021-07-15 2021-11-23 昆山丘钛微电子科技股份有限公司 一种点胶质量检测方法、装置、介质及摄像头调焦机
CN113419563A (zh) * 2021-07-23 2021-09-21 广东电网有限责任公司 一种无人机定位装置、方法、设备及介质
CN113686314B (zh) * 2021-07-28 2024-02-27 武汉科技大学 船载摄像头的单目水面目标分割及单目测距方法
US20230109909A1 (en) * 2021-10-07 2023-04-13 Motional Ad Llc Object detection using radar and lidar fusion
US20230133480A1 (en) * 2021-11-01 2023-05-04 Brookhurst Garage, Inc. Thin object detection and avoidance in aerial robots
CN114295099B (zh) * 2021-12-28 2024-01-30 合肥英睿系统技术有限公司 基于单目摄像头的测距方法、车载测距设备以及存储介质
CN114018215B (zh) * 2022-01-04 2022-04-12 智道网联科技(北京)有限公司 基于语义分割的单目测距方法、装置、设备及存储介质
CN116132798B (zh) * 2023-02-02 2023-06-30 深圳市泰迅数码有限公司 一种智能摄像头的自动跟拍方法
CN117406777B (zh) * 2023-11-17 2024-03-19 广州源颢工程信息技术有限公司 用于水利测绘的无人机云台智能控制方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017004799A1 (en) * 2015-07-08 2017-01-12 SZ DJI Technology Co., Ltd. Camera configuration on movable objects

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101600862B1 (ko) * 2014-08-26 2016-03-08 연세대학교 산학협력단 복수의 uav를 이용한 스테레오 비전 시스템
WO2017008224A1 (zh) * 2015-07-13 2017-01-19 深圳市大疆创新科技有限公司 一种移动物体的距离检测方法、装置及飞行器
CN108139757A (zh) * 2015-09-11 2018-06-08 深圳市大疆创新科技有限公司 用于检测和跟踪可移动物体的系统和方法
CN107209854A (zh) * 2015-09-15 2017-09-26 深圳市大疆创新科技有限公司 用于支持顺畅的目标跟随的系统和方法
CN108139758A (zh) * 2015-10-09 2018-06-08 深圳市大疆创新科技有限公司 基于显著性特征的载运工具定位
KR20170136750A (ko) * 2016-06-02 2017-12-12 삼성전자주식회사 전자 장치 및 그의 동작 방법
CN107300377B (zh) * 2016-11-01 2019-06-14 北京理工大学 一种绕飞轨迹下的旋翼无人机三维目标定位方法
CN106814753B (zh) * 2017-03-20 2020-11-06 成都通甲优博科技有限责任公司 一种目标位置矫正方法、装置及系统
CN107255468B (zh) * 2017-05-24 2019-11-19 纳恩博(北京)科技有限公司 目标跟踪方法、目标跟踪设备及计算机存储介质
CN108364304A (zh) * 2018-04-11 2018-08-03 湖南城市学院 一种用于单目机载目标检测的系统和方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017004799A1 (en) * 2015-07-08 2017-01-12 SZ DJI Technology Co., Ltd. Camera configuration on movable objects

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111977006A (zh) * 2020-08-11 2020-11-24 深圳市道通智能航空技术有限公司 一种关节角的初始化方法、装置及飞行器
KR102245220B1 (ko) * 2020-11-09 2021-04-27 주식회사 엔닷라이트 딥러닝 기반으로 2차원 이미지로부터 3차원 모델을 복원하는 장치 및 그 방법
WO2022097932A1 (ko) * 2020-11-09 2022-05-12 주식회사 엔닷라이트 딥러닝 기반으로 2차원 이미지로부터 3차원 모델을 복원하는 장치 및 그 방법
KR102504743B1 (ko) * 2021-08-24 2023-03-03 한국철도기술연구원 시설물의 모델링을 기반으로 하는 점검 드론의 위치 보정장치 및 보정방법
CN115953328A (zh) * 2023-03-13 2023-04-11 天津所托瑞安汽车科技有限公司 一种目标矫正方法、系统及电子设备

Also Published As

Publication number Publication date
WO2020037492A1 (en) 2020-02-27
CN112567201A (zh) 2021-03-26
CN112567201B (zh) 2024-04-16
US20210012520A1 (en) 2021-01-14
EP3837492A1 (en) 2021-06-23

Similar Documents

Publication Publication Date Title
US20210012520A1 (en) Distance measuring method and device
US11635775B2 (en) Systems and methods for UAV interactive instructions and control
CN111527463B (zh) 用于多目标跟踪的方法和系统
CN108419446B (zh) 用于激光深度图取样的系统及方法
US11120560B2 (en) System and method for real-time location tracking of a drone
US11906983B2 (en) System and method for tracking targets
US20180190014A1 (en) Collaborative multi sensor system for site exploitation
CN111344644B (zh) 用于基于运动的自动图像捕获的技术
JP6943988B2 (ja) 移動可能物体の制御方法、機器およびシステム
JP6321202B2 (ja) モバイルプラットフォームの運動を決定する方法、装置、及びシステム
WO2018120350A1 (zh) 对无人机进行定位的方法及装置
WO2020014987A1 (zh) 移动机器人的控制方法、装置、设备及存储介质
JP7153306B2 (ja) 検出対象位置特定システム
WO2022077296A1 (zh) 三维重建方法、云台负载、可移动平台以及计算机可读存储介质
WO2021250914A1 (ja) 情報処理装置、移動装置、情報処理システム、および方法、並びにプログラム
US20210264666A1 (en) Method for obtaining photogrammetric data using a layered approach
US20200217665A1 (en) Mobile platform, image capture path generation method, program, and recording medium
CN110730934A (zh) 轨迹切换的方法和装置
CN116349222A (zh) 利用集成图像帧渲染基于深度的三维模型
CN108416044B (zh) 场景缩略图的生成方法、装置、电子设备及存储介质
US20210256732A1 (en) Image processing method and unmanned aerial vehicle
JP7437930B2 (ja) 移動体及び撮像システム
CN107703954B (zh) 用于无人机的目标位置勘测方法、装置及无人机
WO2024057779A1 (ja) 情報処理装置、プログラムおよび情報処理システム
Sambolek et al. Determining the Geolocation of a Person Detected in an Image Taken with a Drone

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190729

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221101