CN109983468A - 使用特征点检测和跟踪对象的方法和系统 - Google Patents
使用特征点检测和跟踪对象的方法和系统 Download PDFInfo
- Publication number
- CN109983468A CN109983468A CN201680090733.6A CN201680090733A CN109983468A CN 109983468 A CN109983468 A CN 109983468A CN 201680090733 A CN201680090733 A CN 201680090733A CN 109983468 A CN109983468 A CN 109983468A
- Authority
- CN
- China
- Prior art keywords
- moveable platform
- parallax value
- disparity map
- dimension
- continuum
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 123
- 238000001514 detection method Methods 0.000 title claims abstract description 25
- 238000003384 imaging method Methods 0.000 claims abstract description 130
- 230000033001 locomotion Effects 0.000 claims description 41
- 238000003860 storage Methods 0.000 claims description 28
- 230000004888 barrier function Effects 0.000 claims description 17
- 238000013016 damping Methods 0.000 description 35
- 238000004891 communication Methods 0.000 description 32
- 238000012545 processing Methods 0.000 description 31
- 230000007246 mechanism Effects 0.000 description 29
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 8
- 238000012360 testing method Methods 0.000 description 8
- 230000003068 static effect Effects 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 6
- 238000009432 framing Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 239000000463 material Substances 0.000 description 5
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000037230 mobility Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000007789 gas Substances 0.000 description 2
- 238000010438 heat treatment Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical compound C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 description 1
- 241000406668 Loxodonta cyclotis Species 0.000 description 1
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000001154 acute effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000000571 coke Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000006260 foam Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 229910052738 indium Inorganic materials 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 239000013641 positive control Substances 0.000 description 1
- 238000005036 potential barrier Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000001141 propulsive effect Effects 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 239000012781 shape memory material Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/13—Satellite images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/17—Terrestrial scenes taken from planes or by drones
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/271—Image signal generators wherein the generated image signals comprise depth maps or disparity maps
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64U—UNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
- B64U2101/00—UAVs specially adapted for particular uses or applications
- B64U2101/30—UAVs specially adapted for particular uses or applications for imaging, photography or videography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10032—Satellite or aerial image; Remote sensing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Remote Sensing (AREA)
- Astronomy & Astrophysics (AREA)
- Signal Processing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
系统和方法用于处理图像数据,以便通过可移动平台进行对象检测和跟踪。视差图是基于立体图像帧获得的。连续区域在视差图中被确定为具有在预定义范围内的视差值。将与每个连续区域内的其他元素的视差值相比具有最高视差值的连续子区域标识为对象。对象与可移动平台之间的距离被确定。在由可移动平台上承载的成像设备捕捉的第一图像帧中确定表示对象的元素的位置。选择元素的一个或多个特征点作为跟踪点。根据更新后的视差图和可移动平台的当前位置,在由成像设备捕捉的第二图像帧上更新跟踪点的位置。
Description
技术领域
公开的实施例总体上涉及操作可移动平台,并且更具体地但不排他地涉及基于特征点检测和跟踪对象。
背景技术
可移动平台(例如,可移动对象)如无人机(UAV)可以用于执行军事和民用应用的监视、侦察和勘探任务。可移动平台可以携带被配置为执行特定功能的搭载物。例如,搭载物可以包括用于捕捉周围环境的图像数据以便避开障碍物并跟踪周围环境中的目标的成像设备。重要的是,有效且准确地检测和跟踪在由成像设备捕捉的图像帧中包括的对象。
发明内容
需要用于处理包括视差深度数据的图像数据的设备的系统和方法,以便使用由立体摄像机捕捉的图像帧和由可移动平台承载的成像设备来检测和跟踪对象。这样的系统和方法可选地补充或替代用于处理图像数据的常规方法。通过借助从可移动平台承载的一个或多个传感器获得的传感器数据来处理包括视差深度数据的图像数据,并且通过使用从图像数据中识别出的用于对象检测和跟踪的特征点,本申请的一些实施例可以显著提高图像数据处理和对象检测和跟踪的效率和准确性。另外,在可移动平台沿着路径移动并且捕捉图像数据之后或实时地,可以执行如本文公开的图像处理技术。
根据一些实施例,一种用于选择视差图的方法包括:基于由承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图。该方法还包括接收2维掩模,该2维掩模包括限定与可移动平台相邻的预定义3维体积的多个投影点。每个投影点具有预定义3维体积内的对象的阈值视差值。该方法还包括:通过将元素的视差值与2维掩模上的与元素在2维掩模上的投影对应的阈值视差值相比较,在视差图之中选择元素的子集。元素的子集表示预定义3维体积内的实际对象。
根据一些实施例,系统可以包括:耦合到成像设备的一个或多个处理器;存储器;以及一个或多个程序。该一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行。该一个或多个程序包括用于执行上述方法的操作的指令。根据一些实施例,非暂时性计算机可读存储介质已经在其中存储有指令,该指令在由电子设备执行时使电子设备执行上述方法的操作。
根据一些实施例,一种用于检测对象的方法包括:基于由承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;该方法还包括确定视差图中的多个连续区域。每个连续区域包括具有在预定义范围内的视差值的多个元素。该方法还包括在每个连续区域内将连续子区域标识为对象,所述连续子区域包括与所述连续区域内的其他元素的视差值相比具有最高视差值的一个或多个元素。该方法还包括至少使用所述最高视差值来确定所述对象与所述可移动平台之间的距离。
根据一些实施例,无人机(UAV)可以包括:推进系统;一个或多个传感器;成像设备;以及耦合到推进系统、一个或多个传感器和成像设备的一个或多个处理器。该一个或多个处理器被配置用于执行上述方法的操作。根据一些实施例,系统可以包括:耦合到成像设备的一个或多个处理器;存储器;以及一个或多个程序。该一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行。该一个或多个程序包括用于执行上述方法的操作的指令。根据一些实施例,非暂时性计算机可读存储介质已经在其中存储有指令,该指令在由电子设备执行时使电子设备执行上述方法的操作。
根据一些实施例,一种用于跟踪对象的方法包括:在视差图内识别对象以由可移动平台跟踪。该方法还包括在由承载在所述可移动平台上的成像设备捕捉的第一图像帧中确定表示所述对象的元素的位置。该方法还包括选择表示所述对象的所述元素的一个或多个特征点作为所述第一图像帧上的对象的跟踪点。该方法还包括:根据更新的视差图和所述可移动平台的当前位置,更新由所述成像设备捕捉的第二图像帧上的元素的跟踪点的位置。
根据一些实施例,无人机(UAV)可以包括:推进系统;一个或多个传感器;成像设备;以及耦合到推进系统、一个或多个传感器和成像设备的一个或多个处理器。该一个或多个处理器被配置用于执行上述方法的操作。根据一些实施例,系统可以包括:耦合到成像设备的一个或多个处理器;存储器;以及一个或多个程序。该一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行。该一个或多个程序包括用于执行上述方法的操作的指令。根据一些实施例,非暂时性计算机可读存储介质已经在其中存储有指令,该指令在由电子设备执行时使电子设备执行上述方法的操作。
附图说明
图1示出了根据一些实施例的可移动平台环境。
图2A示出了根据一些实施例的可移动平台。
图2B示出了根据实施例的可移动平台的示例性载体。
图2C示出了根据一些实施例的可移动平台的示例性感测系统。
图3A和图3B示出了根据一些实施例的用于从预定义3维空间准备示例性2维掩模的过程。
图3C和图3D示出了根据一些实施例的用于使用示例性2维掩模来选择视差图的过程。
图4A是示出了根据一些实施例的在可移动平台处于静态悬停模式时处理包括视差深度图的图像数据以检测对象的方法的图。
图4B和图4C示出了根据一些实施例的在可移动平台处于静态悬停模式时处理视差图以便检测视差图中的对象的示例性过程。
图4D示出了根据一些实施例的由可移动平台上承载的成像设备捕捉的示例性图像帧。
图5A是示出了根据一些实施例的当可移动平台处于飞行中模式时处理包括视差图的图像数据以检测对象的方法的图。
图5B至图5D示出了根据一些实施例的当可移动平台处于飞行中模式时处理用于检测对象的视差图的示例性过程。
图5E示出了根据一些实施例的由可移动平台上承载的成像设备捕捉的示例性图像帧。
图6A是示出了根据一些实施例的处理包括视差图的图像数据以利用可移动平台跟踪对象的方法的图。
图6B示出了根据一些实施例的处理用于利用可移动平台跟踪对象的视差图的过程。
图6C示出了根据一些实施例的由可移动平台上承载的成像设备捕捉的示例性图像帧。
图7A至图7B是示出了根据一些实施例的用于选择视差图的方法的流程图。
图8A至图8C是示出了根据一些实施例的用于处理图像数据以便由可移动平台检测对象的的方法的流程图。
图9A至图9C是示出了根据一些实施例的用于处理图像数据以便由可移动平台跟踪对象的的方法的流程图。
具体实施方式
现在将详细参考实施例,其示例在附图中示出。在以下详细描述中,阐述了许多具体细节以便提供对所描述的各种实施例的透彻理解。然而,对于本领域的普通技术人员来说显而易见的是,可以在没有这些具体细节的情况下实践各种所述实施例。在其他实例中,没有详细描述公知的方法、过程、组件、电路和网络,以免不必要地模糊实施例的方面。
以下描述使用无人机(UAV)作为可移动对象(或可移动平台)的示例。无人机包括例如固定翼飞机和旋翼飞机(例如直升机、四轴飞行器和具有其他数量和/或转子配置的飞机)。在一些实施例中,可移动平台还包括但不限于自动驾驶汽车(即,自主汽车、无人驾驶汽车)、虚拟现实(VR)耳机、增强现实(AR)耳机、具有摄像机和图像处理功能的手持式万向节。对于本领域技术人员而言显而易见的是,其他类型的可移动平台可以替代如下所述的UAV,诸如移动电话、平板电脑或遥控器。
本发明提供了与处理图像数据有关的技术,所述图像数据包括由可移动平台上承载的用于检测和跟踪对象的立体摄像机捕捉的视差深度图。在一些实施例中,基于由可移动平台上承载的立体摄像机捕捉的立体图像帧获得视差图。多个连续区域被确定为具有视差值在预定义范围内的元素。在每个连续区域内,具有含最高视差值的元素的连续子区域(即,最接近可移动平台的连续子区域)被标识为检测对象。对象与可移动平台之间的距离被确定。此外,特征点被识别用于跟踪对象。特征点的位置在由可移动平台上承载的成像设备捕捉的图像帧上被识别,并且根据可移动平台的更新的空间信息和更新的视差图来更新该位置。使用本申请中公开的图像处理技术可以实现高效和准确的图像处理以及对象检测和跟踪。
图1示出了根据一些实施例的可移动平台环境100。可移动平台环境100包括可移动平台102。在一些实施例中,可移动平台102包括载体104和/或搭载物106。
在一些实施例中,载体104用于将搭载物106耦合到可移动平台102。在一些实施例中,载体104包括用于将搭载物106与可移动平台102和/或移动机构114的移动进行隔离的元件(例如,万向节和/或阻尼(damping)元件)。在一些实施例中,载体104包括用于控制搭载物106相对于可移动平台102的移动的元件。
在一些实施例中,搭载物106耦合(例如,刚性耦合)到可移动平台102(例如,经由载体104耦合),使得搭载物106相对于可移动平台102保持基本静止。例如,载体104耦合到搭载物106,使得搭载物不能相对于可移动平台102移动。在一些实施例中,搭载物106被直接安装到可移动平台102而不需要载体104。在一些实施例中,搭载物106部分或完全位于可移动平台102内。
在一些实施例中,遥控器108与可移动平台102通信,例如,向可移动平台102提供控制指令和/或在遥控器108的显示器(未示出)上显示从可移动平台102接收的信息。虽然遥控器108通常是便携式(例如,手持式)设备,但遥控器108不需要是便携式的。在一些实施例中,遥控器108是专用控制设备(例如,用于可移动平台102)、膝上型计算机、台式计算机、平板电脑、游戏系统、可穿戴设备(例如眼镜、手套和/或头盔)、麦克风、便携式通信设备(例如,移动电话)和/或其组合。
在一些实施例中,遥控器108的输入设备接收用户输入以控制可移动平台102、载体104、搭载物106和/或其组件的方面。这些方面包括例如取向、位置、取向、速度、加速度、导航和/或跟踪。例如,遥控器108的输入设备的位置(例如,输入设备的组件的位置)由用户手动设置到与输入(例如,预定输入)对应的位置以用于控制可移动平台102。在一些实施例中,输入设备由用户操纵以输入用于控制可移动平台102的导航的控制指令。在一些实施例中,遥控器108的输入设备用于输入可移动平台102的飞行模式,例如根据预定导航路径的自动驾驶或导航。
在一些实施例中,遥控器108的显示器(未示出)显示由可移动平台感测系统210、存储器204和/或可移动平台102的另一系统生成的信息。例如,显示器显示关于可移动平台102、载体104和/或搭载物106的信息,诸如可移动平台102的位置、取向、取向、移动特性和/或可移动平台102与其他对象(例如,目标和/或障碍物)之间的距离。在一些实施例中,由遥控器108的显示器显示的信息包括由成像设备216(图2A)捕捉的图像、跟踪数据(例如,应用于目标的表示的图形跟踪指示符)和/或传送到可移动平台102的控制数据的指示。在一些实施例中,当从可移动平台102接收到信息时和/或在获取图像数据时,由遥控器108的显示器显示的信息基本上是实时显示的。在一些实施例中,遥控器108的显示器是触摸屏显示器。
在一些实施例中,可移动平台环境100包括计算设备110。计算设备110例如是服务器计算机、云服务器、台式计算机、膝上型计算机、平板电脑或其他便携式电子设备(例如,移动电话)。在一些实施例中,计算设备110是与可移动平台102和/或遥控器108通信(例如,无线地)的基站。在一些实施例中,计算设备110提供数据存储、数据检索和/或数据处理操作,例如以减少可移动平台102和/或遥控器108的处理能力和/或数据存储需求。例如,计算设备110通信地连接到数据库和/或计算设备110包括数据库。在一些实施例中,代替遥控器108或者除了遥控器108之外,使用计算设备110来执行关于遥控器108所描述的任何操作。
在一些实施例中,可移动平台102例如经由无线通信112与遥控器108和/或计算设备110通信。在一些实施例中,可移动平台102从遥控器108和/或计算设备110接收信息。例如,由可移动平台102接收的信息包括例如用于控制可移动平台102的控制指令。在一些实施例中,可移动平台102将信息传送到遥控器108和/或计算设备110。例如,由可移动平台102传送的信息包括例如由可移动平台102捕捉的图像和/或视频。
在一些实施例中,计算设备110、遥控器108和/或可移动平台102之间的通信经由网络(例如,因特网116)和/或无线信号发射器(例如,远程无线信号发射器)(如蜂窝塔118)传送。在一些实施例中,卫星(未示出)是因特网116的组件和/或是除了蜂窝塔118之外或代替蜂窝塔118使用。
在一些实施例中,在计算设备110、遥控器108和/或可移动平台102之间传送的信息包括控制指令。控制指令包括例如用于控制可移动平台102的导航参数的导航指令(如可移动平台102、载体104和/或搭载物106的位置、取向、取向和/或一个或多个移动特性。在一些实施例中,控制指令包括引导一个或多个移动机构114的移动的指令。例如,控制指令用于控制无人机的飞行。
在一些实施例中,控制指令包括用于控制载体104的操作(例如移动)的信息。例如,控制指令用于控制载体104的致动机构,以便导致搭载物106相对于可移动平台102的角度移动和/或线性移动。在一些实施例中,控制指令以多达六个自由度来调节载体104相对于可移动平台102的移动。
在一些实施例中,控制指令被用于调节用于搭载物106的一个或多个操作参数。例如,控制指令包括用于调节光学参数(例如,成像设备216的光学参数)的指令。在一些实施例中,控制指令包括用于调节成像特性和/或图像设备功能的指令,如捕捉图像、启动/停止视频捕捉、打开或关闭成像设备216、调节成像模式(例如,捕捉静止图像或捕捉视频)、调节立体成像系统的左组件和右组件之间的距离和/或调节载体104、搭载物106和/或成像设备216的位置、取向和/或移动(例如,摇摄率、摇摄距离)。
在一些实施例中,当控制指令被可移动平台102接收时,控制指令改变可移动平台102的存储器204(图2A)的参数,和/或控制指令被存储器204存储(图2A)。
图2A示出了根据一些实施例的示例性可移动平台102。可移动平台102通常包括一个或多个处理器202、存储器204、通信系统206、可移动平台感测系统210以及用于互连这些组件的一个或多个通信总线208。
在一些实施例中,可移动平台102是无人机并且包括用于实现飞行和/或飞行控制的组件。在一些实施例中,可移动平台102包括具有一个或多个网络或其他通信接口(例如,通过其接收飞行控制指令)的通信系统206、一个或多个移动机构114和/或一个或多个可移动平台致动器212(例如,以响应于接收到的控制指令而引起移动机构114的移动)。尽管可移动平台102被描述为飞行器,但是该描述并非意在限制,而是可以使用任何合适类型的可移动平台。致动器212例如是马达,诸如液压、气动、电动、热力、磁力和/或机械马达。
在一些实施例中,可移动平台102包括移动机构114(例如,推进机构)。尽管在此为了便于参考而使用复数术语“移动机构”,但“移动机构114”是指单个移动机构(例如,单个螺旋桨)或多个移动机构(例如,多个转子)。移动机构114包括一个或多个移动机构类型,例如转子、螺旋桨、叶片、发动机、马达、轮、轴、磁体、喷嘴等。移动机构114在例如顶、底,前、后和/或侧面处耦合到可移动平台102。在一些实施例中,单个可移动平台102的移动机构114包括相同类型的多个移动机构。在一些实施例中,单个可移动平台102的移动机构114包括具有不同移动机构类型的多个移动机构。移动机构114使用任何适当的装置(诸如支撑元件(例如驱动轴)和/或其它致动元件(例如,可移动平台致动器212))耦合到可移动平台102。例如,可移动平台致动器212接收来自(一个或多个)处理器202(例如,经由控制总线208)的控制信号,控制信号激活可移动平台致动器212以引起移动机构114的移动。例如,(一个或多个)处理器202包括向可移动平台致动器212提供控制信号的电子速度控制器。
在一些实施例中,移动机构114使得可移动平台102能够从表面垂直地起飞或在表面上垂直地着陆,而不需要可移动平台102的任何水平移动(例如,不需要沿跑道行进)。在一些实施例中,移动机构114可操作以允许可移动平台102以指定位置和/或取向悬停在空气中。在一些实施例中,移动机构114中的一个或多个可独立于其他移动机构114中的一个或多个来控制。例如,当可移动平台102是四轴飞行器时,四轴飞行器的每个转子都可独立于四轴飞行器的其他转子进行控制。在一些实施例中,多个移动机构114被配置用于同时移动。
在一些实施例中,移动机构114包括向可移动平台102提供升力和/或推力的多个转子。致动多个转子以向可移动平台102提供例如垂直起飞、垂直着陆和悬停能力。在一些实施例中,一个或多个转子在顺时针方向上旋转,同时一个或多个转子在逆时针方向上旋转。例如,顺时针转子的数量等于逆时针转子的数量。在一些实施例中,每个转子的旋转速率是独立可变的,例如,用于控制由每个转子产生的升力和/或推力,并由此调节可移动平台102的空间布置、速度和/或加速度(例如针对高达三度的平移和/或高达三度的旋转)。
在一些实施例中,存储器204存储本文统称为“元素”的一个或多个指令、程序(例如,指令集)、模块、控制系统和/或数据结构。关于存储器204描述的一个或多个元素可选地由遥控器108、计算设备110和/或其他设备来存储。在一些实施例中,成像设备216包括存储器,存储器存储关于存储器204描述的一个或多个参数。
在一些实施例中,存储器204存储包括一个或多个系统设置(例如,如由制造商、管理员和/或用户配置的)的控制系统配置。例如,用于可移动平台102的标识信息被存储为系统配置的系统设置。在一些实施例中,所述控制系统配置包括用于成像设备216的配置。用于成像设备216的配置存储诸如位置、缩放水平和/或对焦参数(例如,对焦量、选择自动对焦或手动对焦和/或调节图像中的自动对焦目标)的参数。成像设备配置所存储的成像属性参数包括例如图像分辨率、图像尺寸(例如,图像宽度和/或高度)、长宽比、像素数、质量、焦距、景深、曝光时间、快门速度和/或白平衡。在一些实施例中,响应于控制指令(例如,由(一个或多个)处理器202生成和/或由可移动平台102从遥控器108和/或计算设备110接收)来更新由成像设备配置存储的参数。在一些实施例中,响应于从可移动平台感测系统210和/或成像设备216接收的信息来更新由成像设备配置存储的参数。
在一些实施例中,控制系统执行成像设备调节。成像设备调节模块存储例如用于调节成像设备216的光学设备与图像传感器之间的距离的指令(例如用于控制成像设备致动器的指令)。在一些实施例中,用于执行成像设备调节的一个或多个指令被存储在存储器204中。
在一些实施例中,控制系统执行自动对焦操作。例如,当设备根据图像分析确定对焦水平已经下降到对焦水平阈值以下时,响应于确定了可移动平台102和/或图像物体(例如,目标或远程对象)已经移动超过阈值距离和/或响应于用户输入,(例如,周期性地)执行自动对焦操作。在一些实施例中,用户输入(例如,在遥控器108和/或计算设备110处接收的)启动和/或调节自动对焦模式。在一些实施例中,用户输入指示为了自动对焦操作而使用和/或优先化的一个或多个区域(例如,在由成像设备216捕捉的图像(诸如由遥控器108和/或计算设备110显示的图像)中)。在一些实施例中,自动对焦模块根据由图像距离确定模块确定的图像距离值来生成用于使光学设备相对于图像传感器移动的控制指令。在一些实施例中,用于执行自动对焦操作的一个或多个指令被存储在存储器204中。
在一些实施例中,控制系统执行图像距离确定,例如以根据这里描述的操作来确定对象距离和/或图像距离。例如,图像距离确定模块使用来自可移动平台的一个或多个深度传感器和一个或多个取向传感器的传感器数据,来确定图像距离并且根据确定的图像距离而生成用于使光学设备相对于图像传感器移动的控制指令。在一些实施例中,用于执行图像距离确定的一个或多个指令被存储在存储器204中。
上述识别的控制系统、模块和/或程序(例如指令集)不需要被实现为单独的软件程序、过程或模块,并且因此这些模块的各种子集可以在各种实施例中被组合或以其他方式重新排列并存储在存储器204中。在一些实施例中,控制系统包括上面识别的数据结构和模块的子集。此外,存储器204可以存储上面未描述的附加模块和数据结构。在一些实施例中,存储在存储器204或存储器204的非暂时性计算机可读存储介质中的程序、模块和数据结构提供用于实现下面描述的方法中的相应操作的指令。在一些实施例中,这些模块中的一些或全部可以用归入部分或全部模块功能的专用硬件电路来实现。一个或多个上述元件可以由可移动平台102的一个或多个处理器202执行。在一些实施例中,一个或多个上面标识的模块被存储在远离可移动平台的设备的一个或多个存储设备(诸如遥控器108、计算设备110和/或成像设备216的存储器)上和/或由远离可移动平台102的设备的一个或多个处理器(例如,遥控器108、计算设备110和/或成像设备216的(一个或多个)处理器)执行。
通信系统206例如经由无线信号112实现与遥控器108和/或计算设备110的通信。通信系统206包括例如用于无线通信的发射器、接收器和/或收发器。在一些实施例中,通信是单向通信,使得数据仅由可移动平台102从遥控器108和/或计算设备110接收,或反之亦然。在一些实施例中,通信是双向通信,使得数据在可移动平台102与遥控器108和/或计算设备110之间在两个方向上传送。在一些实施例中,可移动平台102、遥控器108和/或计算设备110连接到互联网116或其他电信网络,例如,使得由可移动平台102、遥控器108和/或计算设备110生成的数据被传送到服务器以用于数据存储和/或数据检索(例如,用于由网站显示)。
在一些实施例中,如参考图3进一步描述的,可移动平台102的感测系统210包括一个或多个传感器。在一些实施例中,可移动平台102和/或控制单元108使用由感测系统122的传感器生成的感测数据,来确定诸如可移动平台102的位置、可移动平台102的取向、可移动平台102的移动特性(例如,角速度、角加速度、平移速度、平移加速度和/或沿着一个或多个轴的运动方向)、可移动平台102对潜在障碍物的接近度、天气状况、地理特征的位置和/或人造结构的位置等信息。
图2B示出了根据实施例的目标跟踪系统100中的示例性载体108。在一些实施例中,载体108将搭载物106耦合到可移动平台102。
在一些实施例中,载体108包括包含一个或多个框架构件252的框架组件。在一些实施例中,框架构件252与可移动平台102和搭载物106耦合。在一些实施例中,框架构件252支持搭载物106。
在一些实施例中,载体108包括一个或多个机构(如一个或多个致动器254),以引起载体108和/或搭载物106的移动。致动器254例如是马达,诸如液压、气动、电动、热力、磁力和/或机械马达。在一些实施例中,致动器254引起框架构件252的移动。在一些实施例中,致动器254使搭载物106绕一个或多个轴(诸如三个轴)旋转:相对于可移动平台102的X轴(“俯仰轴”)、Z轴(“横滚轴”)和Y轴(“偏航轴”)。在一些实施例中,致动器254使搭载物106相对于可移动平台102沿着一个或多个轴平移。
在一些实施例中,载体108包括一个或多个载体感测系统256,例如用于确定载体108或搭载物106的状态。载体感测系统256包括例如运动传感器(例如,加速度计)、旋转传感器(例如,陀螺仪)、电位计和/或惯性传感器。在一些实施例中,载体感测系统256包括如下面关于图3所述的可移动平台感测系统210的一个或多个传感器。由载体感测系统256确定的传感器数据包括载体108和/或搭载物106的例如空间布置(例如,位置、取向或姿态)和/或诸如速度(例如,线性或角速度)和/或加速度(例如,线性或角度加速度)等移动信息。在一些实施例中,根据感测数据计算的感测数据和/或状态信息被用作反馈数据以控制载体108的一个或多个部件(例如,框架构件252、致动器254和/或阻尼元件258)的移动。载体传感器206耦合到例如框架构件252、致动器254、阻尼元件258和/或搭载物106。在一个实施例中,载体传感器256(例如,电位计)测量致动器254的移动(例如,马达转子和马达定子的相对位置),并且生成表示致动器254的移动的位置信号(例如,表示马达转子和马达定子的相对位置的位置信号)。在一些实施例中,由载体传感器256生成的数据由可移动平台102的(一个或多个)处理器116和/或存储器204接收。
在一些实施例中,载体108到可移动平台102的耦合包括一个或多个阻尼元件258。阻尼元件258被配置为减少或消除由可移动平台102的移动引起的负载(例如,搭载物106和/或载体108)的移动。阻尼元件258包括例如有源阻尼元件、无源阻尼元件和/或具有有源和无源阻尼特性的混合阻尼元件。由阻尼元件258阻尼的运动可以包括振动、振荡、摇动或冲击中的一个或多个。这种运动可能源于传送到负载的可移动平台的运动。例如,运动可以包括由推进系统和/或可移动平台101的其他部件的操作引起的振动。
在一些实施例中,阻尼元件258通过消散或减少传送到负载的运动量(例如,振动隔离)来隔离来自不希望的运动源的负载以提供运动阻尼。在一些实施例中,阻尼元件258减小否则将由负载经历的运动的量值(例如,幅度)。在一些实施例中,由阻尼元件258施加的运动阻尼被用于稳定负载,从而改善由负载(例如,图像捕捉设备)捕捉的图像的质量,并且降低图像拼接步骤基于捕捉的图像生成全景图像所需的计算复杂度。
本文描述的阻尼元件258可以由任何合适的材料或材料的组合(包括固体、液体或气体材料)形成。用于阻尼元件的材料可以是可压缩的和/或可变形的。例如,阻尼元件258由例如海绵、泡沫、橡胶、凝胶等制造。例如,阻尼元件258包括大致球形形状的橡胶球。阻尼元件258例如为大致球形、矩形和/或圆柱形。在一些实施例中,阻尼元件208包括压电材料或形状记忆材料。在一些实施例中,阻尼元件258包括一个或多个机械元件,诸如弹簧、活塞、液压设备、气动设备、缓冲器、减震器、隔离器等。在一些实施例中,选择阻尼元件258的特性以提供预定量的运动阻尼。在一些情况下,阻尼元件208具有粘弹性特性。阻尼元件258的特性例如是各向同性或各向异性的。在一些实施例中,阻尼元件258沿着所有运动方向相等地提供运动阻尼。在一些实施例中,阻尼元件258仅沿着运动方向的子集(例如,沿着单个运动方向)提供运动阻尼。例如,阻尼元件258可以主要沿着Y(偏航)轴提供阻尼。以这种方式,所示的阻尼元件258减少了垂直运动。
在一些实施例中,载体108包括控制器260。控制器260包括例如一个或多个控制器和/或处理器。在一些实施例中,控制器260从可移动平台102的(一个或多个)处理器116接收指令。例如,控制器260经由控制总线208连接到(一个或多个)处理器202。在一些实施例中,控制器260控制致动器254的移动,调节载体传感器256的一个或多个参数,从载体传感器256接收数据,和/或向处理器202传送数据。
图2C示出了根据一些实施例的可移动平台102的示例性感测系统210。在一些实施例中,可移动平台感测系统210的一个或多个传感器安装到外部,位于可移动平台102内或以其他方式耦合到可移动平台102。在一些实施例中,可移动平台感测系统210的一个或多个传感器是载体104(例如,图2B)、搭载物106和/或成像设备216的部件和/或耦合到载体104(例如,图2B)、搭载物106和/或成像设备216。在本文中将感测操作描述为由可移动平台感测系统210执行的情况下,将认识到,除了可移动平台感测系统210的一个或多个传感器之外和/或代替可移动平台感测系统210的一个或多个传感器,此类操作可选地由载体104、搭载物106和/或成像设备216的一个或多个传感器执行。
可移动平台感测系统210生成静态感测数据(例如,响应于接收到的指令而捕捉的单个图像)和/或动态感测数据(例如,以周期性速率捕捉的一系列图像,诸如视频)。
在一些实施例中,可移动平台感测系统210包括一个或多个图像传感器262。在一些实施例中,一个或多个图像传感器262包括多个立体摄像机,诸如包括左立体图像传感器264和右立体图像传感器266的一对立体摄像机。图像传感器262捕捉图像、图像流(例如视频)、立体图像(例如,立体图像)和/或立体图像流(例如立体图像视频)。在一些实施例中,图像传感器262包括位于可移动平台102的不同部分(例如,侧面、分区等)处的多对立体摄像机,诸如可移动平台102的顶部、底部、前部、后部、左部和右部的一个或多个部分。例如,可移动平台感测系统210包括位于可移动平台102前部的一对立体摄像机、位于可移动平台102后部的另一对立体摄像机以及位于可移动平台102底部的又一对立体摄像机。图像传感器262检测诸如可见光、红外光和/或紫外光的光。在一些实施例中,可移动平台感测系统210包括一个或多个光学设备(例如,透镜)以将光对焦或以其他方式改变到一个或多个图像传感器262上。在一些实施例中,图像传感器262包括例如半导体电荷耦合器件(CCD)、使用互补金属氧化物半导体(CMOS)或N型金属氧化物半导体(NMOS、Live MOS)技术的有源像素传感器或任何其他类型的传感器。
在一些实施例中,可移动平台感测系统210包括一个或多个音频换能器268。例如,音频检测系统包括音频输出换能器270(例如,扬声器)和音频输入换能器272(例如麦克风,诸如抛物线麦克风)。在一些实施例中,麦克风和扬声器被用作声纳系统的组件。在一些实施例中,使用声纳系统来检测环境中的对象(例如,障碍物和/或目标)的当前位置信息。
在一些实施例中,可移动平台感测系统210包括一个或多个红外传感器274。在一些实施例中,距离测量系统包括一对红外传感器(例如,红外传感器276(诸如左红外传感器)和红外传感器278(诸如右红外传感器))或另一传感器或传感器对。距离测量系统可以用来测量到环境中的对象(例如,目标和/或障碍物)的距离。
在一些实施例中,用于产生视差图的系统包括可移动平台感测系统210(诸如左立体图像传感器264和右立体图像传感器266;音频输出换能器270和音频输入换能器272;和/或左红外传感器276和右红外传感器278)的一个或多个传感器或传感器对。在一些实施例中,立体声数据系统(例如,立体成像系统)中的一对传感器同时捕捉来自不同位置的数据。在一些实施例中,深度图由立体声数据系统使用同时捕捉的数据生成。在一些实施例中,深度图被用于定位和/或检测操作,诸如检测障碍物、检测障碍物的当前位置信息、检测目标和/或检测目标的当前位置信息。在一些实施例中,可移动平台感测系统210包括一个或多个深度传感器,诸如飞行时间(TOF)摄像机。例如,可移动平台感测系统210包括位于可移动平台102的左侧和右侧处的TOF摄像机。一个或多个TOF摄像机也可以定位可移动平台102的其他部分。TOF摄像机基于光速来计算图像帧中每个点/像素的距离。例如,测量成像系统与图像帧中像素的物体之间的光信号的飞行时间以确定对应像素的距离(例如深度)。
在一些实施例中,可移动平台感测系统210还包括但不限于一个或多个全球定位系统(GPS)传感器280、运动传感器(例如加速度计)282、旋转传感器(例如陀螺仪)、惯性传感器284、接近传感器((例如,红外传感器)和/或天气传感器286(例如,压力传感器、温度传感器、湿度传感器和/或风传感器)、视觉里程(VO)系统288、激光雷达系统290和超声传感器292。在一些实施例中,可移动平台感测系统210包括可包括运动传感器282、旋转传感器和可选的磁强计的惯性测量单元(IMU)。
在一些实施例中,由可移动平台感测系统210的一个或多个传感器生成的感测数据和/或使用来自可移动平台感测系统210的一个或多个传感器的感测数据确定的信息被传送到遥控器108(例如,经由通信系统206)。在一些实施例中,由可移动平台感测系统210的一个或多个传感器生成的数据和/或使用来自可移动平台感测系统210的一个或多个传感器的感测数据确定的信息由存储器204存储。
图3A和图3B示出了根据一些实施例的用于根据预定义3维空间300(也被称为3维体积300)准备示例性2维掩模320的过程。在一些实施例中,可移动平台102的图像传感器302(诸如成像设备216或可移动平台感测系统210的左立体图像传感器264和/或右立体图像传感器266)具有与由图像传感器302更精确地捕捉(一个或多个)对象的图像数据(例如,视差信息)的预定义范围(例如,预定义3维空间)对应的有效检测范围。在一些实施例中,图3A中沿着Z维度的图像传感器302的有效检测范围在0.5米至15米之间。由于图像传感器302的拍摄角度的限制,3维空间300还具有沿X维度和Y维度的限制。在一些实施例中,可以使用沿着可移动平台102(或图像传感器302)的移动轨迹定位的预定义3维空间300(例如,长方体ABCDEFGH)来表示有效检测范围。在一些实施例中,如图3A所示,长方体ABCDEFGH的尺寸为10m×10m×15m。在一些实施例中,3维空间300可以使用包括但不限于圆柱体、球体或锥体的其它合适形状(未示出)来表示。
在一些实施例中,电子设备(例如,计算设备110、遥控器108或可移动平台102,图1)获得2维掩模350,如图3B所示。在一些实施例中,通过将3维体积300投影到2维平面上来获得2维掩模350。2维掩模350上的点A'、B'、C'、D'、E'、F'、G'和H'分别对应于从3维体积到2维平面上的点A、B、C、D、E、F、G和H的投影。2维掩模350上的点A'、B'、C'、D'、E'、F'、G'和H'中的每一个点具有分别由位于3维体积中的点A、B、C、D、E、F、G和H处的对象的视差值确定的阈值。关于2维掩模上的其他点,每个还具有由位于3维体积300的对应位置处的对象的视差值确定的阈值。在一些实施例中,2维掩模350上的阈值限定了用于选择图像传感器302的有效检测范围(例如,3维体积300)内的对象的最小视差值(对应于世界坐标系中的一个或多个最远距离)。
在一些实施例中,这样的点的阈值通过将在3维体积300的边界上(例如,包括在平面EFGH、EFBA、FBCG、DHGC、ADHE和ABCD以及这些平面的边缘上)的点投影到2维掩模350上以识别对应点处的视差值。在一些其他实施例中,2维掩模350上的点的阈值通过以下获得:(1)确定与3维体积的边缘上的点对应的点的视差值;和(2)使用递归关系估计除边缘上以外的位置处的其他点的视差值。例如,在确定边缘EF和FB、BA和AE上的点的视差值之后,使用基于E'F'和F'B'、B'A’和A’E’上的点的阈值的线性递归关系来估计区域A'E'F'B'内的点的阈值。
在一个示例中,如图3A至图3B所示,位于3维体积300的平面ABFE上的点I(例如,位于位置I处的对象)对应于2维掩模350的区域A'B'F'E'内的点I',并且点I'的阈值由位于点I处的对象的视差值确定。在另一实例中,位于3维体积300的本体内的点J(例如,点J位于平面ABCD和EFGH之间、平面ADHE和BCGF之间以及平面ABFE和DCJH之间)可以由图像传感器302投影到位于平面EFGH上的点K上。3维体积300的点K对应于2维掩模350上的点K'。因此,2维掩模350上的K'的阈值由位于点K处的对象的视差值确定。注意,点K的视差值可以或不可以根据图像传感器302的取向与点E、F、G或H的视差值相同。
图3C和图3D示出了根据一些实施例的使用用于选择(或过滤)视差图的示例性2维掩模350的过程。在一些实施例中,可移动平台感测系统210(诸如左立体图像传感器264和右立体图像传感器266)分别用于捕捉一对立体灰度图像。可以基于该对立体灰度图像来生成视差图。在一些实施例中,视差图包括要使用2维掩模350进行评估的点P、Q、M和N。在一些示例中,视差图是使用半全局块匹配(SGBM)算法或任何其他合适的过程生成的。视差图包括一个或多个像素的视差值。视差值分别对应于位于左立体图像和右立体图像上的对象的单个像素(或单个点)的两个位置之间的空间差。视差值与像素的深度信息(例如,对象与成像传感器之间的距离)有关。视差图可以用于获得图像帧中的一个或多个对象的深度信息,例如与(一个或多个)摄像机与对象之间的距离有关的信息。在一些实施例中,电子设备(例如,计算设备110、遥控器108或可移动平台102,图1)处理视差图以选择与图像传感器的有效检测范围对应的更精确范围内的像素。
在一些实施例中,电子设备使用2维掩模350在视差图之中选择具有相应视差值的元素的子集(例如,一个或多个点或一个或多个像素)。在一些实施例中,通过将元素的相应视差值和2维掩模上的与元素在2维掩模上的投影对应的阈值视差值进行比较来选择元素的子集。元素的子集表示预定义3维体积300内的实际对象。在一些实施例中,当处理视差图时,视差图上具有比阈值低的视差值的元素(诸如像素)被排除。在一些实施例中,当使用2维掩模350来选择视差图时,3维体积300相对于图3C所示的空间中的图像传感器302而放置(例如,虚拟地)。图像传感器302位于与3维体积300的平面ABCD相邻或附近(例如,当使用最小有效检测距离时)。将来自视差图的点从与3维体积300相关联的坐标系投影到2维掩模350上,以识别2维掩模350上的对应点。然后,将视差图上该点的视差值与2维掩模350上的投影点的阈值进行比较,以确定是否在有效视差图中包括或排除该点以供进一步处理(例如,用于对象检测和/或对象跟踪)。
在如图3C和图3D所示的一个示例中,来自视差图的像素(或点)P位于3维体积300内(图3C)。将像素P投影到位于2维掩模350上的点P'(图3D)。例如,坐标x1在ADHE和BCGF的平面边界内,坐标y1在AEFB和DHGC的平面边界内,并且深度坐标z1在ABCD和EFGH的平面边界内。在一些实施例中,确定视差图中的P的视差值大于2维掩模350处的P'处的阈值。(如以上参考图3A和图3B所讨论的,P'处的阈值由平面EFGN与投影线OP之间的交点的视差值确定,其中与投影线OP上的点P相比,交点位于距图像传感器302更远)。因此,选择点P以包含在有效视差图中。
在另一示例中,来自视差图的点(或像素)Q位于3维体积300之外。例如,像素Q的深度坐标z2在平面边界EFGH之外。像素Q被投影到位于2维掩模350后面的点Q'。在一些实施例中,Q(在3维体积300中)的视差值低于Q'处的阈值(因为Q'处的阈值由平面EFGN与投影线OQ之间的交点的视差值来确定,与投影线OQ上的Q相比,这样的交点位于更靠近图像传感器302)。因此,从有效视差图中排除点Q。
在又一示例中,位于3维体积300右面(例如,坐标x3在平面ADHE之外)的点(或像素)M被投影到位于2维掩模350之外的点M'。在不必将视差值与2维掩模350上的任何阈值进行比较的情况下,将M点从有效视差中排除。
在又一示例中,位于3维体积300内的点(或像素)N被投影到位于2维掩模350的区域B'F'C'G'内的点N'。点N'的阈值可以由投影线ON和平面BCGF之间的交点确定。因此,点N的视差值大于点N的阈值,并且点N被选择为包括在有效视差图上。
在一些实施例中,电子设备还从视差图中排除与可移动平台102的移动轨迹内的地面对应的区域。可以基于可移动平台102的空间信息(例如高度和/或姿态数据)在视差图中确定与地面对应的区域。因此,图像中的对应区域也被识别并从进一步处理中排除,使得可移动平台102不会将地面作为跟踪对象。
这样,基于视差值与2维掩模350上的对应点的阈值的比较结果,电子设备从处理后的(例如,过滤的、有效的)视差图中识别一个或多个对象。电子设备确定识别的对象和(一个或多个)图像传感器之间的距离。处理后的视差图被用于可移动平台102的对象检测和/或对象跟踪,如下所述。
图4A是示出了根据一些实施例的在可移动平台102处于静态悬停模式时处理包括视差深度图的图像数据以检测一个或多个对象的方法400的图。在一些实施例中,方法400由诸如计算设备110、遥控器108或可移动平台102(图1)的电子设备执行。例如,方法400由图像传感器262的控制器、成像设备216的控制器、可移动平台102的控制器或遥控器108的控制器执行。在一些其他实施例中,方法400由(一个或多个)其他电子设备(诸如移动设备或与遥控器108配对的计算设备)执行以用于操作可移动平台102。图4A中执行的操作对应于存储在(一个或多个)对应设备的计算机存储器或其他计算机可读存储介质中的指令。图4B和图4C示出了根据一些实施例的在可移动平台处于静态悬停模式时处理用于检测(一个或多个)对象的视差图的示例性过程。在图4B和图4C中进一步示出了本公开中结合图4A讨论的方法400的一个或多个步骤。
在一些实施例中,电子设备获得(402)视差图,例如图4B中的视差图420。基于由承载在可移动平台102上的立体摄像机(左立体图像传感器264和右立体图像传感器266)捕捉的立体图像帧获得视差图420。在一些实施例中,可移动平台102静态地悬停在一定高度。在一些实施例中,如参考图3A至图3B所讨论的,使用2维掩模350来选择(例如,预处理)视差图420。仅选择立体成像传感器的有效检测范围内的视差图。将视差图420上的每个点投影到2维掩模350,并将视差图420上的点的视差值与2维掩模350上的对应点的阈值进行比较。将视差值比相应预定义阈值低的像素从有效视差图中排除。
如图4B所示,方法400进行至例如使用网格422将视差图420划分(404)为多个分区。例如,视差图420被均匀分成5×4个分区。方法400进行至在每个分区中识别(406)在有效检测范围内具有最高视差值(例如,最接近成像传感器的对象的相关点)的一个或多个像素,例如分区423中的像素424、分区425中的像素426以及分区427中的像素428。在一些实施例中,在每个分区内,基于视差图中与对象的点相关的像素的视差值来计算对象的每个点与可移动平台102之间的距离。该距离从最低视差值向最高视差值进一步排列。
如图4C所示,方法400进行至选择(408)与每个分区中具有最高视差值的像素相邻的一个或多个邻近像素以形成连续区域,诸如包括与具有最高视差值的像素426相邻的多个像素的连续区域432。因此,可以在视差图430中选择多个连续区域,例如区域432、434、436和438。在一些实施例中,连续区域内的像素与世界坐标系中的具有距最接近成像设备的点的距离在预定义范围内的各个点相关。在一些示例中,由于可以使用两个像素之间的视差值的差来计算分别与世界坐标系中的两个像素相关的两个点之间的距离,因此选择累加成连续区域的一个或多个邻近像素以具有与最高视差值的差在预定义范围内的视差值。在一个示例中,连续区域包括:与世界坐标系中具有距最近点(与具有最高视差值的像素相关)的距离小于0.5米的各个点相关的多个像素。在一些实施例中,连续区域(例如连续区域432)跨多个邻近分区(诸如分区425和分区431)延伸,并且覆盖具有最高视差值的多个像素(例如分别是像素426和像素433)。在一些实施例中,基于在对应分区(例如,分区425和431)中具有最高视差值的相应像素(例如,像素426和像素433)来识别两个子连续区域(例如,子连续区域441和443)。当两个子连续区域在相应分区(例如,分区425和431)上延伸并且重叠时,两个子连续区域(例如,子连续区域441和443)被连接以形成如图4C所示的单个连续区域432。可以如图4C的视差图430所示选择多个连续区域。
方法400进行至在每个连续区域内将包括具有比连续区域内的其他像素的视差值高至少预定义阈值的视差值的一个或多个像素的子区域标识为对象。该子区域被标识为由可移动平台102检测的对象。在一些实施例中,电子设备识别子区域,诸如连续区域中具有最高视差值(即,最接近成像传感器)的像素。例如,如图4C所示,像素442被检测为连续区域436中的对象,像素444被检测为连续区域438中的对象,像素446被检测为连续区域434中的对象,并且像素426被检测为连续区域432中的对象。在一些实施例中,对象是可移动平台回避的障碍物或障碍物的一部分。在一些实施例中,对象是由可移动平台跟踪的目标或目标的一部分。
方法400进行至确定(412)每个连续区域中的识别的对象(例如,子区域或具有最高视差值的像素)与可移动平台102之间的距离。在一些实施例中,至少使用对象的最高视差值来确定距离。在一些实施例中,还使用成像传感器的一个或多个参数(诸如成像传感器的焦距)来确定距离。
在一些实施例中,当可移动平台102在特定高度处悬停或沿着导航路径移动时,承载在可移动平台102上的成像设备216捕捉一个或多个图像帧。方法400进行至在由承载在可移动平台102上的成像设备216捕捉的图像帧内识别(414)分别与子区域对应的一个或多个对象。图4D示出了由承载在可移动平台102上的成像设备216捕捉的示例性图像帧450。在一些实施例中,在图像帧450上识别与在步骤410处在视差图430中识别的子区域对应的一个或多个对象(例如,像素452、454、456和458)。在一些实施例中,基于可移动平台102的空间信息和成像设备216的空间信息,将视差图430中的子区域投影到图像帧450中的各个对象或像素。例如,来自IMU和GPS的数据以及来自用于携带成像设备的万向节的数据被用于计算和识别图像帧450中的对象或像素。在一些实施例中,还使用特征点和/或对象匹配算法来识别成像帧450中与子区域对应的对象/像素。
方法400进行至将图像帧450和所确定的与一个或多个对象相关联的距离发送(416)到电子设备以供显示。在如图4D所示的一些实施例中,与对象相关联的相应距离被实时显示。
图5A是示出了根据一些实施例的当可移动平台102处于飞行中模式时处理包括视差图的图像数据以检测对象的方法500的图。在一些实施例中,方法500由诸如计算设备110、遥控器108或可移动平台102(图1)等电子设备执行。例如,方法500由图像传感器262的控制器、成像设备216的控制器、可移动平台102的控制器或遥控器108的控制器执行。在一些其他实施例中,方法500由(一个或多个)其他电子设备(诸如与遥控器108配对的计算设备或移动设备)执行以用于操作可移动平台102。图5A中执行的操作对应于存储在(一个或多个)对应设备的计算机存储器或其他计算机可读存储介质中的指令。图5B至图5D示出了根据一些实施例的在可移动平台处于飞行中模式时处理用于检测对象的视差图的示例性过程。在图5B至图5D中还示出了本公开中结合图5A讨论的方法500的一个或多个步骤。
在一些实施例中,电子设备获得(502)视差图,例如图5B中的视差图520。基于由承载在可移动平台102上的立体摄像机(左立体图像传感器264和右立体图像传感器266)捕捉的立体图像帧获得视差图520。在一些实施例中,可移动平台102处于飞行模式。例如,可移动平台102沿着导航路径移动。在一些实施例中,如参考图3A和图3B所讨论的,使用2维掩模350来选择(例如,预处理)视差图。仅选择立体成像传感器的有效检测范围内的视差图。将视差图的视差值与2维掩模350进行比较,以排除视差值比2维掩模上的对应的预定义阈值低的像素。
如图5B所示,方法500进行至确定(504)视差图520中的多个连续区域(例如,连续区域522、524、526和528)。在一些实施例中,每个连续区域被确定为包括具有在第一预定义范围内的视差值的相邻像素。例如,连续区域内的任何相邻像素之间的视差值差不高于2个像素。
在一些实施例中,所确定的连续区域是不规则的。如图5C所示,方法500进行至确定(506)分别包围多个连续区域的多个第一框。在一些实施例中,第一框呈规则形状,例如矩形(例如图5C所示的框532、534、536和538)。
方法500进行至将在步骤506处确定的每个第一框内的第二框(对象)确定(508)为子区域。例如,如图5D所示,电子设备确定第一框532、534、536和538内的第二框542、544、546和548。每个第二框包围视差值在第二预定范围内的一个或多个像素。例如,每个第二框包括在对应的第一框中具有最高视差值的一个或多个像素。也就是说,每个第二框表示第一框的最接近可移动平台102的部分。在一些实施例中,每个第二框以对应的第一框中具有最高视差值的像素为中心。在一些实施例中,每个第二框包括在对应的第一框中具有在最高视差值的x%-100%(例如,x=80%、70%、60%、50%...)范围中的视差值的像素。在一个示例中,为了识别第二框,识别每个第一框内具有最高视差值(Dmax)的像素和具有最低视差值(Dmin)的像素。以具有最高视差值的像素为中心,第二框被确定为包括具有最小视差值为(Dmax+Dmin)/2的像素的连续区域。在一些实施例中,每个第二框包围连续区域,并且呈规则形状,例如矩形。在一些替代实施例中,子区域是(1)以具有最高视差值的像素为中心且(2)具有(Dmax+Dmin)/2的半径的圆。在一些其他实施例中,子区域包围具有Dmax的像素,但不必以具有Dmax的像素为中心。例如,子区域被识别为具有以(Dmax+Dmin)/2或Dmax为对角线的矩形区域。子区域被识别为由可移动平台102检测到的对象。在一些实施例中,对象是可移动平台回避的障碍物或障碍物的一部分。在一些实施例中,对象是用于由可移动平台跟踪的目标或目标的一部分。
方法500进行至确定(510)第二框(例如,识别的对象)与可移动平台102之间的距离。在一些实施例中,至少使用对象的最高视差值来确定距离。在一些实施例中,还使用成像传感器的一个或多个参数(诸如成像传感器的焦距)来确定距离。
在一些实施例中,当可移动平台102沿着导航路径移动时,承载在可移动平台102上的成像设备216捕捉一个或多个图像帧。方法500进行至在由承载在可移动平台102上的成像设备216捕捉的图像帧内识别(512)分别对应于子区域(例如,第二框)的一个或多个对象。图5E示出了根据一些实施例的由在可移动平台102上承载的成像设备216捕捉的示例性图像帧550。在一些实施例中,与在步骤508处在视差图520中识别的子区域(例如,第二框542、544、546和548)对应的一个或多个对象(例如,分区或框552、554、556和558)在图像帧550上被识别。在一些实施例中,基于可移动平台102的空间信息和成像设备216的空间信息,将视差图520中的子区域投影到图像帧550中的相应对象。例如,来自IMU和GPS的数据以及来自用于携带成像设备的万向节的数据被用于计算和识别图像帧550内的对象。在一些实施例中,还使用特征点和/或对象匹配算法来识别成像帧550中与子区域对应的对象。
方法500进行至将图像帧550和所确定的与一个或多个对象相关联的距离发送(514)到电子设备以供显示。在一些实施例中,基于可移动平台102的当前速度和对应的距离,计算图像帧550内的每个对象的估计的命中时间(time-to-hit)值。命中时间值被发送到电子设备以供显示。例如,如图5E所示,随着可移动平台102沿着导航路径移动,与对象相关联的相应的距离和/或相应的命中时间值(图5E)被实时显示在图像帧550中。
图6A是示出了根据一些实施例的处理包括视差图的图像数据以利用可移动平台102跟踪对象的方法600的图。在一些实施例中,方法600由诸如计算设备110、遥控器108或可移动平台102(图1)的电子设备执行。例如,方法600由图像传感器262的控制器、成像设备216的控制器、可移动平台102的控制器或遥控器108的控制器执行。在一些其他实施例中,方法600由(一个或多个)其他电子设备(诸如与遥控器108配对的计算设备或移动设备)执行以用于操作可移动平台102。图6A中执行的操作对应于存储在(一个或多个)对应设备的计算机存储器或其他计算机可读存储介质中的指令。图6B示出了根据一些实施例的处理用于利用可移动平台102跟踪对象的视差图620的过程。方法600的一个或多个步骤在图6B中进一步示出,其在本公开中结合图6A进行讨论。
在一些实施例中,电子设备识别/选择(602)从立体摄像机获得的视差图(诸如图6B中的视差图620)内的对象。在一些实施例中,基于由承载在可移动平台102上的立体摄像机(左立体图像传感器264和右立体图像传感器266)捕捉的立体图像帧获得视差图620。在一些实施例中,可移动平台102处于飞行模式。例如,可移动平台102沿着导航路径622(图6B)移动。在一些实施例中,如参考图3A和图3B所讨论的,使用2维掩模350来选择(例如,预处理)视差图。仅选择立体成像传感器的有效检测范围内的视差图。视差图的视差值与2维掩模350进行比较以排除视差值比2维掩模上的对应投影点的阈值低的像素。在一些实施例中,电子设备在视差图620内选择表示对象(例如,障碍物或目标、或障碍物或目标的一部分)的元素。元素可以包括视差图中的一个或多个像素或一个或多个点。在一些示例中,使用方法500(图5A至图5E)或方法400(图4A至图4D)的一个或多个步骤来选择对象(诸如对象624、626或628)或对象的最靠近部分(诸如部分623、625或627)。
方法600进行至识别(604)表示由成像设备捕捉的第一图像帧中的对象的元素。图6C示出了根据一些实施例的由可移动平台102上承载的成像设备216捕捉的示例性图像帧650。在与视差图620中识别的对象(例如与对象624对应的对象654、与对象626对应的对象656和与对象628对应的对象658)对应的图像帧650中识别元素表示(elementrepresenting)。在一些实施例中,在图像帧650中识别的一个或多个部分是视差图620中的(一个或多个)对象的最靠近部分。可以使用成像设备216和承载在可移动平台102上的立体成像传感器之间的相对空间信息来在图像帧650中识别(一个或多个)对象和/或(一个或多个)对象的部分。相对空间信息可以从IMU、GPS和/或用于携带成像设备216的万向节中识别。
方法600进行至识别(606)如图6C所示的图像帧650中的对应元素的一个或多个特征点(例如点664、666或668)。在一些实施例中,特征点是与相邻像素相比具有不同特性的像素,诸如具有最高视差值或灰度值的像素或具有剧烈变化的像素。在一些实施例中,使用适当的方法((如角/边缘检测算法(例如,FAST或HARRIS算法))来识别特征点。在一些实施例中,使用由与特征点选择相关的历史数据训练的机器学习模型来选择特征点。在一些实施例中,可移动平台102的导航路径652是基于可移动平台102的当前速度和姿态数据(例如,取向角度)估计的。在一些实施例中,诸如点664、666或668的特征点也被识别为接近导航路径652,如图6C所示。例如,使用角(corner)检测算法识别的一个或多个点还被过滤以选择在距导航路径652的预定距离范围内的特征点。
方法600进行至跟踪(608)由成像设备216捕捉的两个连续图像帧中的所识别的特征点。在一些实施例中,使用从第一图像帧到第二图像帧的光流向量来跟踪特征点。例如,使用从第一图像帧到第二图像帧的特征点生成的光流向量来跟踪跟踪点的运动轨迹。光流向量可以提供跟踪点的移动方向。
方法600进行至获得(610)特征点与可移动平台102之间的距离信息。在一些实施例中,通过对根据可移动平台102的更新位置的更新视差图和IMU/GPS/万向节数据(例如,可移动平台102的速度和/或飞行距离)获得的视差值进行积分来确定距离信息。在一些实施例中,不同的权重被分配给用于计算距离的不同数据项。例如,当对象更接近可移动平台102时(例如在10米的距离范围内),因为立体传感器在更近的范围内提供更准确的数据,所以将更高的权重分配给视差数据。当对象远离可移动平台102时(例如,在10米的范围之外),将更高的重量分配给IMU/GPS/万向节数据。
例如,最初基于视差图将对象确定为距可移动平台102 20米。在一定时间段的跟踪之后,基于更新的视差值确定的距离可以是8米;IMU/GPS数据显示可移动平台102行进15米。该对象与可移动平台102之间的当前距离可以被确定为d=a×8+b×(20-15),其中a>b,a+b=100%。在一些实施例中,从其他类型的传感器获得的其他数据也可以用于与视差数据和IMU/GPS数据集成以计算距离。
方法600进行至显示(612)与每个特征点相关联的距离信息和/或命中时间值(例如,图6C)。在一些实施例中,根据确定对象与可移动平台102之间的距离在预定阈值(例如,比15米更近或小于4秒)内,电子设备生成给正控制可移动平台102的用户的通知。
在一些实施例中,如果在步骤608处,基于光流向量的特征点的跟踪失败,则可以在更新的视差图中计算特征点的坐标。例如,可以使用成像设备216和可移动平台102之间的相对空间信息来将图像帧中识别的特征点投影到更新的视差图。特征点的坐标可以使用视差值和/或IMU/GPS/万向节数据来计算。然后,可以基于成像设备216与可移动平台102之间的相对空间信息在图像帧中识别特征点。因此,特征点的跟踪不会丢失。
在一些实施例中,当可移动平台102移动时,如果对象已经移动到成像设备216的视场之外,或者如果对象已经移动到立体成像传感器264和266的有效检测范围之外(例如,距可移动平台102超过15米),对象跟踪过程可以报告跟踪中的错误。
图7A和图7B是示出了根据一些实施例的用于选择视差图的方法700的流程图。方法700在诸如可移动平台102、成像设备216、遥控器108和/或计算设备110的电子设备处执行。在一些其他实施例中,方法700由(一个或多个)其他电子设备(诸如与用于操作可移动平台102的遥控器108配对的计算设备或移动设备)执行。在图7A至图7B中执行的操作对应于存储在(一个或多个)对应设备的计算机存储器或其他计算机可读存储介质中的指令。
电子设备基于由承载在可移动平台(例如,可移动平台102)上的立体摄像机(例如,立体图像传感器264和266,图2C)捕捉的立体图像帧获得(701)视差图。
电子设备接收(702)包括限定与可移动平台102相邻的预定义3维体积(例如,3维体积300,图3A和图3C)的多个投影点的2维掩模(例如,2维掩模350,图3B和图3D)。每个投影点具有预定义3维体积内的对象的阈值视差值。
在一些实施例中,3维体积300基于立体摄像机的有效检测范围来确定(706)。在一些实施例中,3维体积是(708)如图3A所示的尺寸为10m×10m×15m的立方体。
在一些实施例中,电子设备选择(710)视差图中视差值大于2维掩模上的阈值视差值的第一元素(例如,点P,图3A),该阈值视差值对应于第一元素在2维掩模上的投影。在一些实施例中,电子设备通过使用在3维体积上的对应点处的对象的视差值确定2维掩模上的投影点的阈值来获得(712)2维掩模。
电子设备在视差图中选择(704)元素的子集。通过将元素的视差值与2维掩模上的阈值视差值进行比较来选择元素的子集,所述阈值视差值对应于元素在2维掩模上的投影。元素的子集表示预定义3维体积内的实际对象。在一些实施例中,元素对应于视差图中的像素、点和/或一组像素。
在一些实施例中,电子设备基于可移动平台的空间信息从视差图中的元素子集中排除(714)与可移动平台的移动轨迹内的地面对应的区域。在一些实施例中,电子设备基于元素子集的视差值从元素子集中识别(716)对象。电子设备确定(718)对象与可移动平台之间的距离。在一些实施例中,电子设备基于更新的视差图和可移动平台102的更新位置来跟踪(720)对象。
图8A至图8C是示出了根据一些实施例的处理用于由可移动平台102检测对象的图像数据的方法800的流程图。方法800在诸如可移动平台102、成像设备216、遥控器108和/或计算设备110的电子设备处执行。在一些其他实施例中,方法800由(一个或多个)其他电子设备(诸如与用于操作可移动平台102的遥控器108配对的计算设备或移动设备)执行。在图8A至图8C中执行的操作对应于存储在(一个或多个)对应设备的计算机存储器或其他计算机可读存储介质中的指令。
电子设备基于由承载在可移动平台102上的立体摄像机(左立体图像传感器264和右立体图像传感器266,图2B)捕捉的立体图像帧获得(802)视差图(例如,视差图520,图5B)。可以基于一对立体灰度图像来生成视差图。视差图包括与该对左立体图像和右立体图像中的两个对应像素之间的距离对应的一个或多个像素的视差值。视差值与像素的深度信息(例如,对象与成像传感器之间的距离)有关。视差图可以用于获得图像帧中的一个或多个对象的深度信息,例如与(一个或多个)摄像机与对象之间的距离有关的信息。
在一些实施例中,电子设备从直接从立体图像帧获得的原始视差图中选择(818)视差图的视差值的子集,所述视差值的子集在2维掩模(例如,2维掩模350,图3B和图3D)上的对应投影点的阈值视差值之间。2维掩模包括限定与可移动平台相邻的预定义3维体积(例如,3维体积300,图3A和图3C)的多个投影点,每个投影点具有用于预定义3维体积范围内的对象的阈值视差值。视差值的子集表示预定义3维体积内的实际对象。
电子设备确定(804)视差图中的多个连续区域(例如,区域432、434、436和438,图4C;框532、534、536和538,图5C)。每个连续区域包括具有在预定义范围内的视差值的多个元素。例如,连续区域包括0.5米内或2像素内的像素。电子设备在每个连续区域内将包括与连续区域内的其他元素的视差值相比具有最高视差值(即,最接近可移动平台102)的一个或多个元素的连续子区域(例如,像素426、442、446或44,图4C;框542、544、546或548,图5D)标识(806)为对象。
在如图4A至图4D所示的一些实施例中,确定多个连续区域包括(820):使用网格(例如,网格422,图4B)将视差图分成多个分区;识别每个分区中具有最高视差值的元素(诸如图4B中的像素424、426)。在一些实施例中,确定多个连续区域还包括(820)在每个分区内选择一个或多个邻近元素以形成多个连续区域中的相应连续区域(例如,作为区域432、434、436和438,图4C)。邻近元素的相应视差值与最高视差值之间的差在预定义范围内。在一些示例中,与一个或多个邻近元素对应的世界坐标系中的对象和与具有最高视差值的元素对应的对象之间的距离在预定义范围(例如0.5米)内。
在如图5A至图5E所示的一些实施例中,每个连续区域(例如,区域522、524、526或528,图5B)中的多个元素的相邻元素之间的视差值的差在预定义范围(如2个像素)内。在一些实施例中,电子设备确定(824)分别包围多个连续区域的多个第一框,例如框532、534、536和538。
在一些实施例中,电子设备将每个第一框(例如框532、534、536和538,图5C)内的第二框(例如,框532、544、546或548,图5D)确定(826)为连续子区域。第二框包围对应的第一框中具有最高视差值的一个或多个元素。在一些实施例中,第二框内的元素具有在从(Dmax+Dmin)/2到Dmax的范围内的视差值。Dmax和Dmin分别对应于包围第二框的对应第一框内的最高视差值和最低视差值。在一些其他实施例中,第二框内的元素具有例如对应第一框内的最高视差值的80%-100%范围内的视差值。
在一些实施例中,当可移动平台102沿着导航路径移动时,电子设备基于更新的视差图和可移动平台的更新位置跟踪(830)对象。在一些实施例中,对象是(814)可移动平台102回避的障碍物或障碍物的一部分。在一些实施例中,对象是(816)由可移动平台跟踪的目标或目标的一部分。
电子设备至少使用最高视差值来确定(808)对象与可移动平台之间的距离。在一些实施例中,电子设备在由可移动平台102承载的成像设备216捕捉的图像帧(例如图像帧450,图4D;图像帧550,图5E)内识别(810)分别对应于连续子区域的一个或多个对象,例如图4D中的像素452、454、456和458或图5E中的框552、554、556和558。可以使用成像设备216和可移动平台102的相对空间信息在图像帧内识别一个或多个对象。可以使用特征点和/或对象匹配在图像帧中识别一个或多个对象。在一些实施例中,电子设备将图像帧和所确定的与一个或多个对象相关联的距离发送(812)到电子设备(诸如遥控器108的显示器或耦合到遥控器108的移动设备的显示器)以供实时显示。
图9A至图9C是示出了根据一些实施例的处理用于由可移动平台102跟踪对象的图像数据的方法900的流程图。方法900在诸如可移动平台102、成像设备216、遥控器108和/或计算设备110的电子设备处执行。在一些其他实施例中,方法900由(一个或多个)其他电子设备(诸如与用于操作可移动平台102的遥控器108配对的计算设备或移动设备)执行。在图9A至图9C中执行的操作对应于存储在(一个或多个)对应设备的计算机存储器或其他计算机可读存储介质中的指令。
电子设备在视差图(例如,视差图620,图6B)内识别(902)用于由可移动平台102跟踪的对象(例如,对象626或对象626的部分625,图6B)。在一些实施例中,电子设备基于由承载在可移动平台102上的立体摄像机捕捉的立体图像帧来获得(910)视差图。在一些实施例中,电子设备将包括具有预定义范围内的视差值的一个或多个元素的连续区域确定(912)为对象,所述一个或多个元素的视差值高于连续区域内的其他元素的视差值。在一些实施例中,电子设备从直接从立体图像帧获得的原始视差图中选择(914)视差图的视差值的子集,所述视差值的子集在2维掩模(例如,2维掩模350,图3B和图3D)上的对应投影点的阈值视差值之间。2维掩模包括限定与可移动平台相邻的预定义3维体积(例如,3维体积300,图3A和图3C)的多个投影点。每个投影点具有预定义3维体积内的对象的阈值视差值。视差值的子集表示预定义3维体积内的实际对象。
电子设备确定(904)由承载在可移动平台102上的成像设备216捕捉的第一图像帧(例如,图像帧650)中的表示对象的元素的位置。在一些实施例中,基于成像设备216和可移动平台102之间的相对空间信息来确定(918)第一图像帧上的元素的位置。例如,基于IMU/GPS/万向节数据将对象投影到图像帧。
电子设备选择(906)表示对象的元素的一个或多个特征点(例如,点664、666、668,图6C)作为第一图像帧上的对象的跟踪点。在一些实施例中,选择(916)一个或多个特征点以比对象的其他部分更接近可移动平台102的导航路径(例如,导航路径652,图6C)。在一些实施例中,使用诸如FAST、HARRIS算法之类的角检测算法来选择特征点。在一些实施例中,使用由与特征点选择相关的历史数据训练的机器学习模型来选择特征点。在一些实施例中,导航路径基于可移动平台102的速度和姿态数据来确定。
电子设备根据更新的视差图和可移动平台102的当前位置来更新(908)由成像设备216捕捉的第二图像帧上的元素的特征点(例如,跟踪点)的位置。在一些实施例中,基于来自与可移动平台102相关联的多个传感器的数据(诸如来自IMU、GPS的空间数据和来自立体摄像机的视差数据)确定(920)可移动平台102的当前位置。在一些实施例中,更新第二图像帧上的跟踪点的位置还包括(922)使用根据从第一图像帧到第二图像帧的跟踪点生成的光流来跟踪跟踪点的运动轨迹。
在一些实施例中,电子设备基于从更新的视差图获得的信息来确定(924)对象与可移动平台102之间的距离。例如,电子设备集成了来自可移动平台102的立体摄像机(视差图)和IMU/GPS(速度、飞行距离)的数据。电子设备为视差数据以及为IMU/GPS数据分配不同的权重。例如,当可移动平台102移动接近对象时,较大的权重被分配给视差数据。当可移动平台102远离对象时,较大的权重被分配给IMU/GPS数据。
在一些实施例中,根据对象与可移动平台之间的距离在预定阈值内的确定,电子设备生成(926)要发送到可移动平台102的控制设备的通知。
本发明的许多特征可以使用或借助于硬件、软件、固件或其组合来执行。因此,可以使用处理系统来实现本发明的特征。示例性处理系统(例如,(一个或多个)处理器202、遥控器108的处理器、计算设备110的处理器和/或成像设备216的处理器)包括但不限于一个或多个通用微处理器(例如,单核或多核处理器)、专用集成电路、专用指令集处理器、现场可编程门阵列、图形处理器、物理处理器、数字信号处理器、协处理器、网络处理器、音频处理器、加密处理器等。
本发明的特征可以使用或借助于计算机程序产品(诸如其上存储有指令/其中可以用于对处理系统进行编程的存储介质(多个介质)或计算机可读存储介质(多个介质))来实施以执行本文中呈现的任何特征。存储介质(例如存储器204)可以包括但不限于任何类型的盘,包括软盘、光盘、DVD、CD-ROM、微型驱动器和磁光盘、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、DDR RAM、闪存设备、磁卡或光卡、纳米系统(包括分子存储器IC)或适用于存储指令和/或数据的任何类型的介质或设备。
存储在机器可读介质(多个介质)中的任何一个上,本发明的特征可以被结合在用于控制处理系统的硬件的软件和/或固件中,并且用于使得处理系统能够利用本发明的结果与其他机构交互。这样的软件或固件可以包括但不限于应用代码、设备驱动器、操作系统和执行环境/容器。
这里所指的通信系统(例如,通信系统206)可选地经由有线和/或无线通信连接进行通信。例如,通信系统可选地接收和发送RF信号,也称为电磁信号。通信系统的RF电路将电信号转换为电磁信号/从电磁信号转换出来,并通过电磁信号与通信网络和其他通信设备通信。RF电路可选地包括用于执行这些功能的公知电路,包括但不限于天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC芯片组、用户身份模块(SIM)卡、存储器等。通信系统可选地与诸如互联网(也称为万维网(WWW))、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN))和/或城域网(MAN)、以及其他无线通信设备通信。无线通信连接可选地使用多种通信标准、协议和技术中的任何一种,包括但不限于全球移动通信系统(GSM)、增强型数据GSM环境(EDGE),高速下行链路分组接入(HSDPA)、高速上行链路分组接入(HSDPA)、仅数据演进(EV-DO)、HSPA、HSPA+、双小区HSPA(DC-HSPDA)、长期演进(LTE)、近场通信(NFC)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、无线保真(Wi-Fi)(例如、IEEE 102.11a、IEEE 102.11ac、IEEE102.11ax、IEEE 102.11b、IEEE102.11g和/或IEEE 102.11n)、因特网协议上的语音(VoIP)、Wi-MAX、用于电子邮件的协议(例如,因特网消息访问协议(IMAP)和/或邮局协议))、即时消息(例如,可扩展消息和存在协议(XMPP),用于即时消息和存在利用扩展的会话发起协议(SIMPLE)、即时消息和存在服务(IMPS))和/或短消息服务(SMS)、扩频技术例如FASST或DESST、或任何其他合适的通信协议、包括尚未开发(如本文档的提交日期)的通信协议。
虽然以上已经描述了本发明的各种实施例,但应该理解,它们已经以示例而非限制的方式呈现。对于相关领域的技术人员来说显而易见的是,在不脱离本发明的精神和范围的情况下,可以在本文中进行形式和细节上的各种改变。
以上借助于功能构建块描述了本发明,功能构建块说明了特定功能及其关系的执行。为了描述的方便,这些功能构建块的边界在本文中经常被任意定义。只要适当地执行了指定的功能和关系,就可以定义替代边界。因此任何这样的替代边界都在本发明的范围和精神之内。
在此描述的各种实施例的描述中使用的术语仅用于描述特定实施例的目的,而不旨在限制。如在各种描述的实施例和所附权利要求的描述中所使用的,除非上下文另外明确指出,否则单数形式“一”、“一个”和“该”旨在还包括复数形式。还将理解的是,本文所使用的术语“和/或”是指并且包含一个或多个所列相关项目的任何和所有可能的组合。还应该理解,术语“具有”、“含有”、“包括”和/或“包含”在本说明书中使用时,表明存在所述的特征、整体、步骤、操作、元件和/或部件,但是并不排除存在或另外添加一个或多个其它特征、整体、步骤、操作、元件、部件和/或其组合。
如本文所使用的,术语“如果”可以被解释为意指“当······时”或“基于”或“响应于确定”或“根据确定”或“响应于检测”,所陈述的先决条件是真实的,取决于上下文。类似地,短语“如果确定[所陈述的先决条件是真实的]”或“如果[所陈述的先决条件是真实的]”或“当[所陈述的先决条件是真实的]”)可以被解释为意指“基于确定”、或“响应于确定”或“根据确定”或“基于检测”或“响应于检测到”所陈述的先决条件是真实的,取决于上下文。
为了说明和描述的目的提供了本发明的前述描述。这并不是穷尽性的或将本发明限制于公开的确切形式。本发明的宽度和范围不应该受到任何上述示例性实施例的限制。对于本领域技术人员而言,许多修改和变化将是显而易见的。修改和变化包括公开特征的任何相关组合。选择和描述实施例是为了最好地解释本发明的原理及其实际应用,从而使本领域的其他技术人员能够理解本发明的各种实施例以及适合于预期的特定用途的各种修改。意图是,本发明的范围由所附权利要求及其等同物限定。
Claims (56)
1.一种方法,包括:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;
接收包括限定与所述可移动平台相邻的预定义3维体积的多个投影点的2维掩模,每个投影点具有所述预定义3维体积内的对象的阈值视差值;以及
通过将元素的视差值与所述2维掩模上的与所述元素在所述2维掩模上的投影对应的阈值视差值进行比较,在所述视差图之中选择所述元素的子集,其中,所述元素的子集表示所述预定义3维体积内的实际对象。
2.根据权利要求1所述的方法,其中,所述3维体积基于所述立体摄像机的有效检测范围来确定。
3.根据权利要求1所述的方法,其中,所述3维体积是尺寸为10m×10m×15m的长方体。
4.根据权利要求1所述的方法,还包括:
从所述视差图中选择第一元素,所述第一元素的视差值比所述2维掩模上的与第一元素在所述2维掩模上的投影对应的阈值视差值大。
5.根据权利要求1所述的方法,还包括:
通过使用所述3维体积上的对应点处的对象的视差值确定所述2维掩模上的投影点的阈值来获得所述2维掩模。
6.根据权利要求1所述的方法,还包括:
基于所述可移动平台的空间信息,从所述视差图中的元素的子集中排除与所述可移动平台的移动轨迹内的地面对应的区域。
7.根据权利要求1所述的方法,还包括:
基于所述元素的子集的视差值来根据所述元素的子集识别所述对象;以及
确定所述对象和所述可移动平台之间的距离。
8.根据权利要求7所述的方法,还包括:
基于更新的视差图和所述可移动平台的更新位置来跟踪所述对象。
9.根据权利要求8所述的方法,还包括:
分别基于所述对象与所述可移动平台之间的相对位置来跟踪所述对象。
10.一种用于处理图像数据的系统,所述系统包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中,所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;
接收包括限定与所述可移动平台相邻的预定义3维体积的多个投影点的2维掩模,每个投影点具有所述预定义3维体积内的对象的阈值视差值;以及
通过将元素的视差值与所述2维掩模上的与所述元素在所述2维掩模上的投影对应的阈值视差值进行比较,在所述视差图之中选择所述元素的子集,其中,所述元素的子集表示所述预定义3维体积内的实际对象。
11.根据权利要求9所述的系统,其中,所述预定义3维体积基于所述立体摄像机的有效检测范围来确定。
12.根据权利要求9所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
从所述视差图中选择第一元素,所述第一元素的视差值比所述2维掩模上的与所述第一元素在所述2维掩模上的投影对应的阈值视差值大。
13.根据权利要求9所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
通过基于所述立体摄像机的参数确定与所述预定义3维体积的各个边界对应的所述2维掩模的边界来获得所述2维掩模。
14.根据权利要求9所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
基于所述可移动平台的空间信息,从所述视差图中的元素的子集中排除与所述可移动平台的移动轨迹内的地面对应的区域。
15.根据权利要求9所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
基于所述元素的子集的视差值来根据所述元素的子集识别所述对象;以及
确定所述对象和所述可移动平台之间的距离。
16.根据权利要求14所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
基于更新的视差图和所述可移动平台的更新位置来跟踪所述对象。
17.一种存储一个或多个程序的非暂时性计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由电子设备执行时使所述电子设备执行用于以下的指令:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;
接收包括限定与所述可移动平台相邻的预定义3维体积的多个投影点的2维掩模,每个投影点具有所述预定义3维体积内的对象的阈值视差值;以及
通过将元素的视差值与所述2维掩模上的与所述元素在所述2维掩模上的投影对应的阈值视差值进行比较,在所述视差图之中选择所述元素的子集,其中,所述元素的子集表示所述预定义3维体积内的实际对象。
18.一种方法,包括:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;
确定所述视差图中的多个连续区域,每个连续区域包括具有预定义范围内的视差值的多个元素;
在每个连续区域内将包括一个或多个元素的连续子区域标识为对象,所述元素具有与所述连续区域内的其他元素的视差值相比的最高视差值;以及
至少使用所述最高视差值来确定所述对象与所述可移动平台之间的距离。
19.根据权利要求18所述的方法,还包括:
在由所述可移动平台承载的成像设备捕捉的图像帧内识别分别与所述连续子区域对应的一个或多个对象。
20.根据权利要求19所述的方法,还包括:
向电子设备发送所述图像帧和所确定的与所述一个或多个对象相关联的距离以供实时显示。
21.根据权利要求18所述的方法,其中,所述对象是所述可移动平台回避的障碍物或所述障碍物的一部分。
22.根据权利要求18所述的方法,其中,所述对象是由所述可移动平台跟踪的目标或所述目标的一部分。
23.根据权利要求18所述的方法,其中,确定所述多个连续区域包括:
使用网格将所述视差图划分为多个分区;
识别每个分区中具有最高视差值的元素;以及
在每个分区内选择一个或多个邻近元素以形成所述多个连续区域中的相应连续区域,其中,所述邻近元素的各个视差值与所述最高视差值之间的差在所述预定义范围内。
24.根据权利要求18所述的方法,其中,每个连续区域中的所述多个元素的相邻元素之间的视差值的差在所述预定义范围内。
25.根据权利要求24所述的方法,还包括:
确定分别包围所述多个连续区域的多个第一框。
26.根据权利要求25所述的方法,还包括:
确定每个第一框内的第二框作为连续子区域,所述第二框包围所述对应第一框中具有最高视差值的一个或多个元素,其中,所述第二框内的元素具有从(Dmax+Dmin)/2到Dmax的范围内的视差值,其中,Dmax和Dmin分别对应于包围所述第二框的对应第一框内的最高视差值和最低视差值。
27.根据权利要求25所述的方法,还包括:
当所述可移动平台沿着导航路径移动时,基于更新的视差图和所述可移动平台的更新位置,跟踪所述对象。
28.根据权利要求18所述的方法,还包括:
通过将元素的视差值与2维掩模上与所述元素在所述2维掩模上的投影点对应的阈值视差值进行比较,从直接从所述立体图像帧获得的原始视差图中选择所述元素的子集,
其中,所述2维掩模包括限定与所述可移动平台相邻的预定义3维体积的多个投影点,每个投影点具有所述预定义3维体积内的对象的阈值视差值,并且
其中,所述视差值的子集表示所述预定义3维体积内的实际对象。
29.一种用于处理图像数据的系统,所述系统包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中,所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;
确定所述视差图中的多个连续区域,每个连续区域包括具有预定义范围内的视差值的多个元素;
在每个连续区域内将包括一个或多个元素的连续子区域标识为对象,所述元素具有与所述连续区域内的其他元素的视差值相比的最高视差值;以及
至少使用所述最高视差值来确定所述对象与所述可移动平台之间的距离。
30.根据权利要求29所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
在由所述可移动平台承载的成像设备捕捉的图像帧内识别分别与所述连续子区域对应的一个或多个对象。
31.根据权利要求29所述的系统,其中,所述对象是所述可移动平台回避的障碍物或所述障碍物的一部分。
32.根据权利要求29所述的系统,其中,所述对象是由所述可移动平台跟踪的目标或所述目标的一部分。
33.根据权利要求29所述的系统,其中,用于确定所述多个连续区域的指令还包括用于以下的指令:
使用网格将所述视差图划分为多个分区;
识别每个分区中具有最高视差值的元素;以及
在每个分区内选择一个或多个邻近元素以形成所述多个连续区域中的相应连续区域,其中,所述邻近元素的相应视差值与所述最高视差值之间的差在所述预定义范围内。
34.根据权利要求29所述的系统,其中,每个连续区域中的所述多个元素的相邻元素之间的视差值的差在所述预定义范围内。
35.一种无人机UAV,包括:
推进系统;
一个或多个感测设备,包括立体摄像机;以及
一个或多个处理器,耦合到所述推进系统和所述一个或多个感测设备,所述一个或多个处理器被配置用于:
基于由所述立体摄像机捕捉的立体图像帧来获得视差图;
确定所述视差图中的多个连续区域,每个连续区域包括具有预定义范围内的视差值的多个元素;
在每个连续区域内将包括一个或多个元素的连续子区域标识为对象,所述元素具有与所述连续区域内的其他元素的视差值相比的最高视差值;以及
至少使用所述最高视差值来确定所述对象与所述可移动平台之间的距离。
36.一种存储一个或多个程序的非暂时性计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由电子设备执行时使所述电子设备执行用于以下的指令:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得视差图;
确定所述视差图中的多个连续区域,每个连续区域包括具有预定义范围内的视差值的多个元素;
在每个连续区域内将包括一个或多个元素的连续子区域标识为对象,所述元素具有与所述连续区域内的其他元素的视差值相比的最高视差值;以及
至少使用所述最高视差值来确定所述对象与所述可移动平台之间的距离。
37.一种方法,包括:
在视差图内识别对象以由可移动平台跟踪;
在由承载在所述可移动平台上的成像设备捕捉的第一图像帧中确定表示所述对象的元素的位置;
选择表示所述对象的所述元素的一个或多个特征点作为所述第一图像帧上的对象的跟踪点;以及
根据更新的视差图和所述可移动平台的当前位置,更新由所述成像设备捕捉的第二图像帧上的元素的跟踪点的位置。
38.根据权利要求37所述的方法,还包括:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得所述视差图。
39.根据权利要求37所述的方法,其中,识别所述视差图中的对象包括:
将包括具有预定义范围内的视差值的一个或多个元素的连续区域确定为所述对象,所述一个或多个元素的视差值高于所述连续区域内的其他元素的视差值。
40.根据权利要求37所述的方法,其中,所述一个或多个特征点被选择为比所述对象的其他部分更接近所述可移动平台的导航路径。
41.根据权利要求37所述的方法,其中,基于所述成像设备与所述可移动平台之间的相对空间信息来确定所述第一图像帧上的表示所述对象的所述元素的位置。
42.根据权利要求37所述的方法,其中,所述可移动平台的当前位置基于来自与所述可移动平台相关联的多个传感器的数据来确定。
43.根据权利要求37所述的方法,其中,更新所述第二图像帧上的跟踪点的位置还包括:
使用根据从所述第一图像帧到所述第二图像帧的跟踪点生成的光流来跟踪所述跟踪点的运动轨迹。
44.根据权利要求37所述的方法,还包括:
基于从所述更新的视差图获得的信息来确定所述对象与所述可移动平台之间的距离。
45.根据权利要求44所述的方法,还包括:
根据所述对象与所述可移动平台之间的距离在预定阈值内的确定,生成要发送至所述可移动平台的控制设备的通知。
46.根据权利要求37所述的方法,还包括:
通过将元素的视差值与2维掩模上的对应于所述元素在所述2维掩模上的投影点的阈值视差值进行比较,从直接从所述立体图像帧获得的原始视差图中选择所述元素的子集,
其中,所述2维掩模包括限定与所述可移动平台相邻的预定义3维体积的多个投影点,每个投影点具有所述预定义3维体积内的对象的阈值视差值,以及
其中,所述视差值的子集表示所述预定义3维体积内的实际对象。
47.一种用于处理图像数据的系统,所述系统包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中,所述一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下的指令:
在视差图内识别对象以由可移动平台跟踪;
在由承载在所述可移动平台上的成像设备捕捉的第一图像帧中确定表示所述对象的元素的位置;
选择表示所述对象的所述元素的一个或多个特征点作为所述第一图像帧上的对象的跟踪点;以及
根据更新的视差图和所述可移动平台的当前位置来更新由所述成像设备捕捉的第二图像帧上的元素的跟踪点的位置。
48.根据权利要求0所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
基于承载在可移动平台上的立体摄像机捕捉的立体图像帧来获得所述视差图。
49.根据权利要求0所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
将包括与所述视差图中的其他元素的视差值相比具有最高视差值的一个或多个元素的连续区域确定为所述对象。
50.根据权利要求0所述的系统,其中,所述一个或多个特征点被选择为比所述对象的其他部分更接近所述可移动平台的导航路径。
51.根据权利要求0所述的系统,其中,基于所述成像设备与所述可移动平台之间的相对空间信息来确定所述第一图像帧上的表示所述对象的所述元素的位置。
52.根据权利要求0所述的系统,其中,所述可移动平台的当前位置基于来自与所述可移动平台相关联的多个传感器的数据来确定。
53.根据权利要求0所述的系统,其中,用于更新所述第二图像帧上的跟踪点的位置的指令还包括用于以下的指令:
使用根据从所述第一图像帧到所述第二图像帧的跟踪点生成的光流来跟踪所述跟踪点的运动轨迹。
54.根据权利要求0所述的系统,其中,所述一个或多个程序还包括用于以下的指令:
基于从所述更新的视差图获得的信息来确定所述对象与所述可移动平台之间的距离。
55.一种无人机UAV,包括:
推进系统;
一个或多个感测设备,包括立体摄像机;
成像设备;以及
一个或多个处理器,耦合到所述推进系统、所述一个或多个感测设备和所述成像设备,所述一个或多个处理器被配置用于:
在视差图内识别对象以由可移动平台跟踪;
在由承载在所述可移动平台上的成像设备捕捉的第一图像帧中确定表示所述对象的元素的位置;
选择表示所述对象的所述元素的一个或多个特征点作为所述第一图像帧上的对象的跟踪点;以及
根据更新的视差图和所述可移动平台的当前位置来更新由所述成像设备捕捉的第二图像帧上的元素的跟踪点的位置。
56.一种存储一个或多个程序的非暂时性计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由电子设备执行时使所述电子设备执行用于以下的指令:
在视差图内识别对象以由可移动平台跟踪;
在由承载在所述可移动平台上的成像设备捕捉的第一图像帧中确定表示所述对象的元素的位置;
选择表示所述对象的所述元素的一个或多个特征点作为所述第一图像帧上的对象的跟踪点;以及
根据更新的视差图和所述可移动平台的当前位置来更新由所述成像设备捕捉的第二图像帧上的元素的跟踪点的位置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/108281 WO2018098789A1 (en) | 2016-12-01 | 2016-12-01 | Method and system for detecting and tracking objects using characteristic points |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109983468A true CN109983468A (zh) | 2019-07-05 |
Family
ID=62240994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680090733.6A Pending CN109983468A (zh) | 2016-12-01 | 2016-12-01 | 使用特征点检测和跟踪对象的方法和系统 |
Country Status (3)
Country | Link |
---|---|
US (2) | US10930000B2 (zh) |
CN (1) | CN109983468A (zh) |
WO (1) | WO2018098789A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110544271A (zh) * | 2019-09-03 | 2019-12-06 | 浙江大华技术股份有限公司 | 抛物动作检测方法及相关装置 |
CN111722240A (zh) * | 2020-06-29 | 2020-09-29 | 维沃移动通信有限公司 | 电子设备、对象跟踪方法及装置 |
CN111722092A (zh) * | 2020-06-22 | 2020-09-29 | 上海华力微电子有限公司 | 晶圆缺陷检测方法及系统 |
TWI732374B (zh) * | 2019-12-10 | 2021-07-01 | 財團法人工業技術研究院 | 物件辨識方法及裝置 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10764561B1 (en) | 2016-04-04 | 2020-09-01 | Compound Eye Inc | Passive stereo depth sensing |
US10759533B1 (en) * | 2018-06-04 | 2020-09-01 | Amazon Technologies, Inc. | Mechanical vibration based inter-module communication in vehicle |
JP7134780B2 (ja) * | 2018-08-13 | 2022-09-12 | 日立Astemo株式会社 | ステレオカメラ装置 |
WO2020200467A1 (en) * | 2019-04-04 | 2020-10-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for classifying a ue as an aerial ue |
US11120280B2 (en) * | 2019-11-15 | 2021-09-14 | Argo AI, LLC | Geometry-aware instance segmentation in stereo image capture processes |
WO2021108626A1 (en) | 2019-11-27 | 2021-06-03 | Compound Eye Inc. | System and method for correspondence map determination |
CN111024098A (zh) * | 2019-12-27 | 2020-04-17 | 江苏欣网视讯软件技术有限公司 | 一种基于低采样数据的机动车路径拟合算法 |
WO2021150784A1 (en) | 2020-01-21 | 2021-07-29 | Compound Eye Inc. | System and method for camera calibration |
WO2021150779A1 (en) * | 2020-01-21 | 2021-07-29 | Compound Eye Inc. | System and method for egomotion estimation |
JP2021177144A (ja) * | 2020-05-08 | 2021-11-11 | キヤノン株式会社 | 情報処理装置、情報処理方法及びープログラム |
CN111798489B (zh) * | 2020-06-29 | 2024-03-08 | 北京三快在线科技有限公司 | 一种特征点跟踪方法、设备、介质及无人设备 |
US11879984B2 (en) * | 2021-05-21 | 2024-01-23 | Booz Allen Hamilton Inc. | Systems and methods for determining a position of a sensor device relative to an object |
CN116596958B (zh) * | 2023-07-18 | 2023-10-10 | 四川迪晟新达类脑智能技术有限公司 | 一种基于在线样本增广的目标跟踪方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102223549A (zh) * | 2010-04-16 | 2011-10-19 | 索尼计算机娱乐公司 | 三维图像显示装置及三维图像显示方法 |
EP2657909A1 (en) * | 2012-04-24 | 2013-10-30 | Vestel Elektronik Sanayi ve Ticaret A.S. | Method and image processing device for determining disparity |
JP2015011619A (ja) * | 2013-07-01 | 2015-01-19 | 株式会社リコー | 情報検出装置、移動体機器制御システム、移動体及び情報検出用プログラム |
CN104380338A (zh) * | 2012-05-22 | 2015-02-25 | 索尼电脑娱乐公司 | 信息处理器以及信息处理方法 |
CN104835136A (zh) * | 2014-02-08 | 2015-08-12 | 本田技研工业株式会社 | 通过迭代插值和扭曲生成深度图的系统和方法 |
CN105144236A (zh) * | 2013-02-23 | 2015-12-09 | 微软技术许可有限责任公司 | 实时立体匹配 |
US9275302B1 (en) * | 2012-08-24 | 2016-03-01 | Amazon Technologies, Inc. | Object detection and identification |
CN105940674A (zh) * | 2014-12-31 | 2016-09-14 | 深圳市大疆创新科技有限公司 | 用于调整具有微镜头阵列的成像系统的基线的系统和方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040223640A1 (en) * | 2003-05-09 | 2004-11-11 | Bovyrin Alexander V. | Stereo matching using segmentation of image columns |
US6956469B2 (en) * | 2003-06-13 | 2005-10-18 | Sarnoff Corporation | Method and apparatus for pedestrian detection |
US7263209B2 (en) * | 2003-06-13 | 2007-08-28 | Sarnoff Corporation | Vehicular vision system |
US7512262B2 (en) * | 2005-02-25 | 2009-03-31 | Microsoft Corporation | Stereo-based image processing |
US8488870B2 (en) * | 2010-06-25 | 2013-07-16 | Qualcomm Incorporated | Multi-resolution, multi-window disparity estimation in 3D video processing |
US20130177237A1 (en) * | 2012-01-09 | 2013-07-11 | Gregory Gerhard SCHAMP | Stereo-vision object detection system and method |
CN103714528B (zh) * | 2012-09-28 | 2017-08-04 | 株式会社理光 | 物体分割装置和方法 |
CN104715249B (zh) * | 2013-12-16 | 2018-06-05 | 株式会社理光 | 物体跟踪方法和装置 |
JP6519262B2 (ja) * | 2014-04-10 | 2019-05-29 | 株式会社リコー | 立体物検出装置、立体物検出方法、立体物検出プログラム、及び移動体機器制御システム |
US9674505B2 (en) * | 2014-12-09 | 2017-06-06 | Intel Corporation | Disparity search range determination for images from an image sensor array |
KR102298652B1 (ko) * | 2015-01-27 | 2021-09-06 | 삼성전자주식회사 | 시차 결정 방법 및 장치 |
CN105930766A (zh) * | 2016-03-31 | 2016-09-07 | 深圳奥比中光科技有限公司 | 无人机 |
WO2018023333A1 (en) * | 2016-08-01 | 2018-02-08 | SZ DJI Technology Co., Ltd. | System and method for obstacle avoidance |
US10033980B2 (en) * | 2016-08-22 | 2018-07-24 | Amazon Technologies, Inc. | Determining stereo distance information using imaging devices integrated into propeller blades |
KR102455632B1 (ko) * | 2017-09-14 | 2022-10-17 | 삼성전자주식회사 | 스테레오 매칭 방법 및 장치 |
US11508079B2 (en) * | 2019-06-28 | 2022-11-22 | Intel Corporation | Parallelism in disparity map generation |
-
2016
- 2016-12-01 WO PCT/CN2016/108281 patent/WO2018098789A1/en active Application Filing
- 2016-12-01 CN CN201680090733.6A patent/CN109983468A/zh active Pending
-
2019
- 2019-05-30 US US16/426,921 patent/US10930000B2/en active Active
-
2021
- 2021-02-11 US US17/174,311 patent/US20210192764A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102223549A (zh) * | 2010-04-16 | 2011-10-19 | 索尼计算机娱乐公司 | 三维图像显示装置及三维图像显示方法 |
EP2657909A1 (en) * | 2012-04-24 | 2013-10-30 | Vestel Elektronik Sanayi ve Ticaret A.S. | Method and image processing device for determining disparity |
CN104380338A (zh) * | 2012-05-22 | 2015-02-25 | 索尼电脑娱乐公司 | 信息处理器以及信息处理方法 |
US9275302B1 (en) * | 2012-08-24 | 2016-03-01 | Amazon Technologies, Inc. | Object detection and identification |
CN105144236A (zh) * | 2013-02-23 | 2015-12-09 | 微软技术许可有限责任公司 | 实时立体匹配 |
JP2015011619A (ja) * | 2013-07-01 | 2015-01-19 | 株式会社リコー | 情報検出装置、移動体機器制御システム、移動体及び情報検出用プログラム |
CN104835136A (zh) * | 2014-02-08 | 2015-08-12 | 本田技研工业株式会社 | 通过迭代插值和扭曲生成深度图的系统和方法 |
CN105940674A (zh) * | 2014-12-31 | 2016-09-14 | 深圳市大疆创新科技有限公司 | 用于调整具有微镜头阵列的成像系统的基线的系统和方法 |
Non-Patent Citations (1)
Title |
---|
F. HE ETC: "Planar Constraints for an Improved UAV-image-based Dense Point Cloud Generation", 《THE INTERNATIONAL ARCHIVES OF THE PHOTOGRAMMETRY》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110544271A (zh) * | 2019-09-03 | 2019-12-06 | 浙江大华技术股份有限公司 | 抛物动作检测方法及相关装置 |
CN110544271B (zh) * | 2019-09-03 | 2022-04-19 | 浙江大华技术股份有限公司 | 抛物动作检测方法及相关装置 |
TWI732374B (zh) * | 2019-12-10 | 2021-07-01 | 財團法人工業技術研究院 | 物件辨識方法及裝置 |
CN111722092A (zh) * | 2020-06-22 | 2020-09-29 | 上海华力微电子有限公司 | 晶圆缺陷检测方法及系统 |
CN111722092B (zh) * | 2020-06-22 | 2023-02-10 | 上海华力微电子有限公司 | 晶圆缺陷检测方法及系统 |
CN111722240A (zh) * | 2020-06-29 | 2020-09-29 | 维沃移动通信有限公司 | 电子设备、对象跟踪方法及装置 |
CN111722240B (zh) * | 2020-06-29 | 2023-07-21 | 维沃移动通信有限公司 | 电子设备、对象跟踪方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2018098789A1 (en) | 2018-06-07 |
US10930000B2 (en) | 2021-02-23 |
US20190279387A1 (en) | 2019-09-12 |
US20210192764A1 (en) | 2021-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109983468A (zh) | 使用特征点检测和跟踪对象的方法和系统 | |
US11644832B2 (en) | User interaction paradigms for a flying digital assistant | |
CN108886572B (zh) | 调整图像焦点的方法和系统 | |
US11049261B2 (en) | Method and system for creating video abstraction from image data captured by a movable object | |
US10958822B2 (en) | Autofocus initialization based on target detection | |
CN106029501B (zh) | Uav全景成像 | |
US20190212751A1 (en) | Method and system for operating a movable object to avoid obstacles | |
US11353891B2 (en) | Target tracking method and apparatus | |
CN111226154B (zh) | 自动对焦相机和系统 | |
CN108701362A (zh) | 目标跟踪期间的障碍避免 | |
CN108702442B (zh) | 用于时刻捕获的系统和方法 | |
CN110799801A (zh) | 基于无人机的测距方法、装置及无人机 | |
WO2022141187A1 (en) | Systems and methods for controlling an unmanned aerial vehicle using a body-attached remote control | |
US20200106958A1 (en) | Method and system for operating a movable platform using ray-casting mapping | |
CN116745725A (zh) | 使用无人机确定物体位置的系统和方法 | |
CN109073877A (zh) | 光程调节 | |
EP3348055B1 (en) | System and method for supporting three-dimensional display in first person view (fpv) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190705 |