基于深度机器学习和激光雷达进行多目标跟踪和自动聚焦的系统和方法与流程

文档序号:17120793发布日期:2019-03-15 23:46阅读:627来源:国知局
基于深度机器学习和激光雷达进行多目标跟踪和自动聚焦的系统和方法与流程

本专利文件的公开的一部分包含受到版权保护的材料。版权所有者不反对任何人对专利文献或专利公开的传真复制,因为它出现在专利和商标局的专利文件或记录中,但在其他方面保留所有版权。

本公开总体上涉及一种成像技术,更具体而言,涉及用于基于深度机器学习和激光雷达进行多目标跟踪和自动聚焦的系统和方法。



背景技术:

可移动物体(例如,无人机(“uav”)(有时被称为“无人飞行器”))包括各种尺寸和配置的无人驾驶飞行器,其能够由用户进行远程操作和/或被编程用于进行自动飞行。uav可以配备有成像装置,该成像装置用于从固定和/或移动视角捕捉对于人员进行捕捉来说可能太具有挑战性的镜头。此外,uav可以被设置用于采集一定时间段内或者从一个位置行进到另一个位置的持续时间内的成像数据。在这些情况下,可以结合使用光学或传感器装置所收集的信息,控制uav来识别、跟随(“跟踪”)并聚焦于目标对象(“目标”)(例如,人、车辆、移动物体、静止对象等),以实现高质量的期望图像。



技术实现要素:

本文中公开的实施例中的基于深度机器学习和激光雷达进行多目标跟踪和聚焦的系统和方法克服了传统系统的缺点。

在一个方面,本公开涉及一种用于识别、跟踪并聚焦于移动目标的方法。所述方法包括:识别相对于成像装置行进的移动目标;跟踪所述移动目标;以及确定从所述成像装置到所述移动目标的距离。

在另一方面,本公开涉及一种用于识别、跟踪并聚焦于移动目标的系统。所述系统包括具有一个或多个处理器的控制器。所述控制器可以被配置为:识别相对于成像装置行进的移动目标;跟踪所述移动目标;以及确定从成像装置到移动目标的距离。

在又一方面,本公开涉及一种无人机(uav)系统。所述uav系统可以包括与多个装置进行通信的控制器。所述控制器可以被配置为:识别相对于成像装置行进的移动目标;跟踪所述移动目标;以及确定从所述成像装置到所述移动目标的距离。

在另一方面,本公开涉及一种存储指令的非暂时性计算机可读介质,所述指令在被执行时使计算机执行用于识别、跟踪并聚焦于移动目标的方法。所述方法包括:识别相对于成像装置行进的移动目标;跟踪所述移动目标;以及确定从所述成像装置到所述移动目标的距离。

附图说明

图1是根据本公开实施例的具有载体和负载的示例性可移动物体和控制终端的示意图;

图2a和图2b是可以用于本公开的实施例的示例性控制终端的示意图;

图3是可以用于本公开实施例的示例性控制器的示意图;

图4a是根据本公开实施例的通过深度机器学习的神经网络来识别多个目标的示意图;

图4b是根据本公开实施例的通过深度机器学习的神经网络来识别多个目标以提高帧率的示意图;

图5是根据本公开实施例的示例性目标跟踪技术的示意图;

图6a是根据本公开实施例的示出可以使用目标形成的示例性图像的示意图;

图6b是根据本公开实施例的示出在图6a的目标移动之后该目标的示例性图像的示意图;

图7a是根据本公开实施例的示出可以针对目标确定的示例性方向的示意图;

图7b是根据本公开实施例的示出到图7a的目标的距离的示例性测量的示意图;以及

图8是根据本公开实施例的可以被执行以识别、跟踪并自动聚焦在移动目标的示例性方法的流程图。

具体实施方式

以下详细描述参考附图。在有可能的情况下,在附图和以下描述中使用相同的附图标记指代相同或相似的部件。尽管本文描述了若干说明性实施例,但是也可以有修改、调整和其他实施方式。例如,可以对附图中所示的部件做出替换、添加或修改,并且可以通过向所公开的方法替换、重新排序、删除或添加步骤来修改本文所描述的说明性方法。此外,以下详细描述不限于所公开的实施例和示例。反之,适当的范围由所附权利要求限定。

存在用于识别、跟踪并聚焦于移动物体/目标的现有方案。例如,camshift算法使用红外成像实现了人像识别和跟踪。其基于模板匹配来选择聚焦窗口,并且当使用红外线对移动物体进行成像时可以解决与自动聚焦相关联的问题。尽管camshift算法适于在简单的情况下跟踪目标,但是其难以在更加复杂的情况下跟踪对象。可以通过检测对象的自然特征(例如,角、线、或边)来实现对对象的自动聚焦(“自聚焦”)和跟踪。此外,基于kanade-lucas-tomasi算法的特征点匹配可以用于估计相机运动矢量,且空间位置不变准则可以用于检查匹配点并且有效地删除这些错误匹配的点。尽管这些现有方法可以有效地跟踪移动物体,但是在复杂场景下跟踪准确度不高,并且计算过程更加复杂。此外,在自动聚焦过程中,目标的移动会改变聚焦窗口内的场景,使得背景的一部分可以在聚焦窗口中改变,导致聚焦失败或变得不稳定。

本公开所公开的实施例提供了用于基于深度机器学习和激光雷达进行多目标跟踪和聚焦的方法和系统。所公开的方法和系统可以基于跟踪和聚焦技术的数字图像处理,并且可以应用于各种类型的图像和成像系统,例如相机、视频记录等。基于深度机器学习的数字图像处理可以有效地识别多个目标并且准确地跟踪该目标。通过进一步结合仅针对识别到的目标而非整个场景由激光雷达获得的准确的距离测量结果,可以降低与装置相关联的成本并且可以实现多目标跟踪和聚焦。因此,可以解决与跟踪和聚焦移动目标相关联的传统问题,例如低目标识别率、跟踪不稳定性、和聚焦不稳定或聚焦失败。如在公开的实施例中所使用的,“目标”是被跟踪对象,“移动目标”是正相对于用于跟踪的成像系统移动使得成像系统和目标对象中的至少一个正相对于彼此移动的被跟踪对象。

通常,激光雷达距离测量指例如使用光检测和测距(lidar)技术,通过用脉冲激光照射目标并用传感器测量反射脉冲来测量到该目标的距离的过程。例如,红外激光装置可以向对象发送窄束的激光脉冲,并确定该脉冲被反射离开该对象并返回到激光脉冲的发送器所花费的时间。可以基于测量到的在发送脉冲时与接收到其反射脉冲时之间经过的时间和光的速度来计算从对象到激光装置的距离。尽管使用这样的激光雷达距离测量技术来描述本公开所公开的实施例,但是也可以采用其他适合的距离测量技术,例如超声距离测量。

深度机器学习可以指一类机器学习算法,该类机器学习算法可以使用例如被配置为执行图像特征提取和/或变换的线性和/或非线性处理装置或软件的互连“层”,在该互连“层”中的每个后一层使用来自前一层的输出作为其输入。深度机器学习可以被监督(例如,分类)或不被监督(例如,模式分析),并且较高层特征可以从较低层特征导出以形成数据的分层表示(例如,图像的像素)。可以用许多方式来表示通过深度机器学习处理的观测(例如,图像、音频数据等);例如,每个像素的强度值的矢量、一组边、特定形状的区域、采样的信号、光谱频率等。深度机器学习架构可以包括深度神经网络、卷积深度神经网络、深度信念网络、递归神经网络等。

神经网络是基于个体神经单元(即,神经元)的集合的计算模型或系统。神经单元的集合可以被组织成不同的神经单元层,例如输入层、一个或多个隐藏层和输出层。每个神经单元可以与不同层的许多其他神经单元连接,并且使用激活公式(例如,求和公式)来计算。可以经由输入层将观测(例如,图像数据或模式)呈现给神经网络,该输入层将与该观测相对应的信息发送到一个或多个隐藏层,在该一个或多个隐藏层中使用激活公式和加权连接的模型来进行实际处理。隐藏层可以链接到输出层,输出层又可以提供根据处理该观测所确定的输出。在一些实施例中,神经网络可以自主学习并用示例进行训练。例如,可以将学习规则应用于神经网络以根据输入的观测来修改连接的一个或多个权重(例如,标量参数)。

在公开的实施例中,选择适合的神经网络,并且理解网络中的对应层的特性。优选地,例如使用在不同的环境下收集的大量样本来训练神经网络。从训练获得的权重可以用于识别被输入到神经网络的图像数据中的目标。此外,通过使用对象在不同环境下的图像以及根据训练该网络所确定的权重参数来测试神经网络,跟踪算法可以用于跟踪该图像数据中的一个或多个目标对象。在一些实施例中,通过激光雷达进行的一个或多个距离测量可以仅仅用于测量从成像装置到用户感兴趣的某些目标对象的距离。可以通过基于测量的距离自动调整成像装置的焦距来实现成像装置自动聚焦于期望的目标对象。

通过仅聚焦于感兴趣的目标对象,例如选择包含期望的目标对象的固定聚焦窗口,可以显著地降低与跟踪和聚焦于目标对象相关联的时间和计算成本,并且可以显著地降低因背景信息而导致的干扰,实现实时目标跟踪和灵活地选择仅聚焦于一个或多个期望的目标对象。

尽管在可移动物体(例如,uav)的背景下描述了以下示例性实施例,但是本领域技术人员将认识到,其他实施方式是可能的并且可以部署替代实施例而不使用uav。例如,根据公开的实施例,可以使用各种成像系统来实现本文公开的系统和方法,该成像系统例如在移动或静止的对象上或者是较大系统的一部分。

图1示出了可以被配置为在环境内移动或行进的示例性可移动物体10。可移动物体10可以是被配置为在适合的介质(例如,表面、空气、水、轨道、空间、地下等)上或内行进的任何适合的对象、装置、机构、系统或机器。例如,可移动物体10可以是uav。尽管出于对该描述的示例性目的而在被本文中将可移动物体10示出和描述为uav,但是可以理解的是,根据本公开,其他类型的可移动物体(例如,有轮物体、航海物体、机车物体、其他空中物体等)也可以用于或替代地用于本公开的实施例中。如本文所使用的,术语uav指被配置为自动地(例如,经由电子控制系统)和/或通过场外人员手动地操作和/或控制的空中装置。

可移动物体10可以包括一个或多个推进装置12,并且可以被配置为承载负载14。在一些实施例中,如图1中所示,负载14可以通过载体16连接到或附接到可移动物体10,该载体16可以允许负载14与可移动物体10之间一度或若干度的相对移动。在其他实施例中,负载14可以无需载体16直接安装到可移动物体10。可移动物体10还可以包括与其他部件进行通信的感测系统18、通信系统20以及控制器22。

可移动物体10可以包括位于各种位置处(例如,可移动物体10的顶部、侧面、前面、后面、和/或底部)的用于推进和操纵可移动物体10的一个或多个(例如,1、2、3、4、5、10、15、20个等)推进装置12。推进装置12可以是生成用于维持受控飞行的力的可操作的装置或系统。推进装置12可以共享电源或者可以各自单独地包括电源或可操作地连接到电源,该电源例如是电机(例如,电动机、液压电机、气动电机等)、发动机(例如,内燃机、涡轮发动机等)、电池组等或其组合。每个推进装置12还可以包括可驱动地连接到电源并且被配置为参与生成用于维持受控飞行的力的一个或多个旋转部件24。例如,旋转部件24可以包括转子、推进器、叶片、喷嘴等,其可以由轴、轮轴、轮、液压系统、气动系统或被配置为从电源传送电力的其他部件或系统来驱动。推进装置12和/或旋转部件24可以相对于彼此和/或相对于可移动物体10是可调整的(例如,可倾斜的)。或者,推进装置12和旋转部件24可以相对于彼此和/或相对于可移动物体10具有固定朝向。在一些实施例中,每个推进装置12可以是相同类型的。在一些实施例中,推进装置12可以是多种不同类型的。在一些实施例中,所有推进装置12可以被协同控制(例如,全部以相同的速度和/或角度)。在其他实施例中,一个或多个推进装置可以例如关于速度和/或角度被单独控制。

推进装置12可以被配置为沿着一个或多个垂直和水平方向推进可移动物体10并允许可移动物体10以一个或多个轴为中心旋转。亦即,推进装置12可以被配置为提供升力和/或推力以建立和维持可移动物体10的平移和旋转运动。例如,推进装置12可以被配置为使得可移动物体10能够实现并维持期望的高度,为沿所有方向的运动提供推力,并且提供对可移动物体10的操纵。在一些实施例中,推进装置12可以使可移动物体10能够执行垂直起飞和着陆(即,在没有水平推力的情况下起飞和着陆)。在其他实施例中,可移动物体10可以需要恒定的最小水平推力来实现并维持飞行。推进装置12可以被配置为实现可移动物体10沿着多个轴和/或围绕多个轴运动。

负载14可以包括一个或多个传感装置19。传感装置19可以包括用于采集或生成数据或信息的装置,所述数据或信息例如是测量、跟踪和捕捉目标(例如,照片或视频拍摄的对象、风景、主题)的图像或视频。传感装置19可以包括被配置为收集可以用于生成图像的数据的成像装置。例如,成像装置可以包括照相机、摄像机、红外成像装置、紫外成像装置、x射线装置、超声成像装置、雷达装置等。传感装置19还可以或替代地包括用于捕捉音频数据的装置,例如麦克风或超声检测器。传感装置19还可以或替代地包括用于捕捉视觉、音频和/或电磁信号的其他适合的传感器。成像装置能够通过调整焦距来执行自动聚焦在目标上,从而以期望的成像质量对目标进行成像。传感装置19可以包括对从成像装置到目标的距离进行测量的一个或多个距离测量装置。距离测量装置可以实现激光雷达装置、超声装置和/或其组合。

载体16可以包括被配置为承载负载14和/或允许负载14相对于可移动物体10被调整(例如,旋转)的一个或多个装置。例如,载体16可以是云台。载体16可以被配置为允许负载14绕一个或多个轴旋转,如下所述。在一些实施例中,载体16可以被配置为允许绕每个轴旋转360°,以允许对负载14的视角的较大控制。在其他实施例中,载体16可以将负载14的旋转范围限制到绕其轴中的一个或多个轴小于360°(例如,≤270°、≤210°、≤180°、≤120°、≤90°、≤45°、≤30°、≤15°等)。

载体16可以包括框架组件26、一个或多个致动器构件28以及一个或多个载体传感器30。框架组件26可以被配置为将负载14连接到可移动物体10,并且在一些实施例中,允许负载14相对于可移动物体10移动。在一些实施例中,框架组件26可以包括相对于彼此可移动的一个或多个子框架或部件。致动部件28可以被配置为相对于彼此驱动框架组件的部件以提供负载14相对于可移动物体10的水平和/或旋转运动。在其他实施例中,致动器构件28可以被配置为直接作用在负载14上,以引起负载14相对于框架组件26和可移动物体10的运动。致动器构件28可以是或者可以包括适合的致动器和/或力传递部件。例如,致动器构件28可以包括电动机,其被配置为结合轴、轮轴、轨道、带、链、齿轮和/或其他部件向框架组件26和/或负载14的部件提供线性或旋转运动。

载体传感器30可以包括被配置为测量、感测、检测或确定载体16和/或负载14的状态信息的装置。状态信息可以包括位置信息(例如,相对位置、朝向、高度、线位移、角位移等)、速度信息(例如,线速度、角速度等)、加速度信息(例如,线性加速度、角加速度等)和/或与载体16或负载14相对于可移动物体10的移动控制有关的其他信息。载体传感器30可以包括一种或多种类型的适合的传感器,例如电位计、光学传感器、视觉传感器、磁传感器、运动或旋转传感器(例如,陀螺仪、加速度计、惯性传感器等)。载体传感器30可以与载体16的各种部件(例如,框架组件26或致动器构件28的部件)或可移动物体10相关联或附接到这些部件。载体传感器30可以被配置为经由有线或无线连接(例如,rfid、蓝牙、wi-fi、无线电、蜂窝电话等)与控制器22传送数据和信息。由载体传感器30生成并被传送到控制器22的数据和信息可以由控制器22用于进行进一步处理,例如用于确定可移动物体10和/或目标的状态信息。

载体16可以经由一个或多个减震元件连接到可移动物体10,该一个或多个减震元件被配置为降低或消除从可移动物体10到负载14的不期望的震动或其他力传递。减震元件可以是有源的、无源的或混合的(即,具有有源和无源特性)。减震元件可以由任何适合的材料或材料组合形成,包括固体、液体和气体。可压缩或可变形材料(例如,橡胶、弹簧、胶体、泡沫)和/或其他材料可以用于减震元件。减震元件可以用于将负载14与可移动物体10隔离和/或耗散从可移动物体10到负载14的力传播。减震元件还可以包括被配置为提供减震效果的机构或装置,例如活塞、弹簧、液压装置、气动装置、缓冲器、震动吸收器和/或其他装置或其组合。

感测系统18可以包括与可移动装置10的一个或多个部件或其他系统相关联的一个或多个传感器。例如,感测系统可以包括用于确定与可移动物体10和/或目标相关的位置信息、速度信息和加速度信息的传感器。在一些实施例中,感测系统还可以包括载体传感器30。感测系统18的部件可以被配置为生成可以用于(例如,由控制器22或另一装置处理)确定与可移动物体10、其部件或其目标有关的附加信息的数据和信息。感测系统18可以包括用于感测可移动物体10的移动的一个或多个方面的一个或多个传感器。例如,感测系统18可以包括如上所述与负载14相关联的传感装置和/或附加传感装置,例如用于定位系统(例如,gps、glonass、伽利略、北斗、gagan等)的定位传感器、运动传感器、惯性传感器(例如,imu传感器)、近距离传感器、图像传感器等。感测系统18还可以包括传感器或者被配置为提供与周围环境有关的数据或信息,例如天气信息(例如,温度、气压、湿度等)、照明条件(例如,光源频率)、空气成分或附近的障碍物(例如,物体、建筑物、人、其他车辆等)。

感测系统18可以包括一个或多个光发射器和用于执行激光雷达距离测量(例如,用于进行lidar测量以确定从可移动物体到目标对象的距离)的传感器。在一些实施例中,lidar激光和对应的传感器可以安装在可移动物体10上的任何地方,或者可以作为单独的模块附接到可移动物体(例如,在载体16上)、或者可以包括在可移动物体上的任何其他装置或传感器中。

通信系统20可以被配置用于在控制器22与场外实体之间实现数据、信息、命令和/或其他类型的信号的传送。通信系统20可以包括被配置用于发送和/或接收信号的一个或多个部件,例如接收机、发射机或被配置用于执行单向或双向通信的收发机。通信系统20的部件可以被配置为经由一个或多个通信网络与场外实体进行通信,该通信网络例如是无线电、蜂窝、蓝牙、wi-fi、rfid和/或可用于发送指示数据、信息、命令的信号和/或其他信号的其他类型的通信网络。例如,通信系统20可以被配置为在用于在飞行期间提供用于控制可移动物体10的输入的装置(例如,控制终端(“终端”)32)实现通信。

终端32可以被配置为接收输入(例如,来自用户的输入(即,用户输入)并将指示输入的信号传送到控制器22。终端32可以被配置为接收输入并生成指示一种或多种类型的信息的对应信号,例如用于移动或操纵可移动装置10(例如,经由推进装置12)、负载14和/或载体16的控制数据(例如,信号)。终端32还可以被配置为从可移动物体10接收数据和信息,例如,与例如位置数据、速度数据、加速度数据、传感器数据以及与可移动物体10、其部件和/或其周围环境有关其他数据和信息相关的操作数据。终端32可以是具有被配置为控制飞行参数的物理棒状物的远程控件,或者可以是具有用于相同目的的虚拟控件的触摸屏装置,例如智能电话或平板,并且可以在智能电话或平板上使用应用,或其组合。

在一些实施例中,终端32可以是智能眼镜。如本文所使用的,智能眼镜可以包括任何可穿戴计算机眼镜或者能够向穿戴者所看的图像或场景提供附加信息的其他可穿戴物品。智能眼镜可以包括光学头戴式显示器(ohmd)或具有透明的平视显示器(hud)或增强现实(ar)覆盖的嵌入式无线眼镜,其具有对投影的数字图像进行反射以及允许用户看穿它或者利用它更好地看的能力。智能眼镜可以用作例如经由蜂窝技术或wi-fi从可移动物体10接收的图像、视频和其他数据或信息的前端显示器。在一些实施例中,智能眼镜还可以经由自然语言语音命令和/或使用智能眼镜上的触摸按钮来控制可移动物体10。

在图2a和2b中所示的示例中,终端32可以包括通信装置34,其有助于终端32与其他实体(例如,可移动物体10或另一终端32)之间的信息传输。通信装置34可以包括被配置为发送或接收信号的天线或其他装置。终端32还可以包括被配置为从用户接收输入以传输至可移动物体10的一个或多个输入装置36。图2a示出了具有输入装置36的终端32的一个示例性实施例,该输入装置36具有多个输入装置38、40、42和44,其被配置为接收指示可移动物体10或其部件的期望的运动的用户输入。然而,可以理解的是,终端的其他可能的实施例或布局是可能的,并且在被公开的范围内。

终端32可以包括输入装置,例如输入杆38和40、按钮42、触发件44和/或用于从用户接收一个或多个输入的其他类型的输入装置。终端32的每个输入装置可以被配置为生成可传输到控制器22且控制器22可使用的输入信号作为输入用于进行处理。除了飞行控制输入之外,终端32还可以用于例如可以经由按钮42和/或触发件44来接收其他信息(例如手动控制设置、自动控制设置、控制辅助设置等)的用户输入。应当理解的是,终端32可以包括其他或附加输入装置,例如按钮、开关、拨轮、扳手、触发件、触摸板、触摸屏、软键、鼠标、键盘、语音识别装置和/或其他类型的输入装置。

如图2b中所示,终端32还可以包括显示装置46,其被配置为向用户显示信息和/或从用户接收信息。例如,终端32可以被配置为从可移动物体10接收信号,该信号可以指示与可移动物体10的移动有关的信息或数据和/或使用可移动物体10(例如,结合负载14)捕捉的数据(例如,成像数据)。在一些实施例中,显示装置46可以是多功能显示装置,其被配置为在多功能屏幕48上显示信息以及经由多功能屏幕48接收用户输入。例如,在一个实施例中,显示装置46可以被配置为经由多功能屏幕48接收一个或多个用户输入。在另一个实施例中,多功能屏幕48可以构成用于接收用户输入的唯一的输入装置。

在一些实施例中,终端32可以是或可以包括用于接收一个或多个用户输入的交互图形界面。亦即,终端32可以是图形用户界面(gui)和/或包括用于接收用户输入的输入装置36的一个或多个图形版本。终端32和/或输入装置36的图形版本可以显示在显示装置(例如,显示装置46)或者多功能屏幕(例如,多功能屏幕48)上,并且包括图形特征,例如交互图形特征(例如,图形按钮、文本框、下拉菜单、交互图像等)。例如,在一个实施例中,终端32可以包括输入杆38和40、按钮42和触发件44的图形表示,其可以被显示在多功能屏幕48上并被配置为经由多功能屏幕48接收用户输入。在一些实施例中,终端32可以被配置为经由图形输入装置(例如,输入装置36的图形版本)接收所有的用户输入。终端32可以被配置为结合计算机应用(例如,“app”)生成输入装置36的图形版本,以在用于在任何适合的电子装置(例如,蜂窝电话、平板等)的显示装置或多功能屏幕上提供交互界面以接收用户输入。

在一些实施例中,显示装置46可以是终端32的整体部件。亦即,显示装置46可以附接或固定到终端32。在其他实施例中,显示装置可以连接到终端32(或从终端32断开连接)。亦即,终端32可以被配置为可电连接到显示装置46(例如,经由连接端口或无线通信链路)和/或可经由安装装置50(例如,通过钳、夹、扣、钩、粘)或其他类型的安装装置连接到终端32。

在一些实施例中,终端32可以被配置为与可配置用于控制可移动物体10的移动和/或其他操作方面的电子装置通信。例如,显示装置46可以是电子装置的显示部件,该电子装置例如是蜂窝电话、平板电脑、个人数字助理、膝上型计算机或其他装置。以此方式,用户能够将其他电子装置的功能包含在控制可移动物体10的方面中,这可以允许使用更加灵活且可适配的控制方案。例如,终端32可以被配置为与具有存储器和至少一个处理器的电子装置进行通信,然后控制装置可以用于经由与该电子装置相关联的输入装置向用户提供输入(例如,多功能显示器、按钮、所存储的app、基于web的应用等)。终端32和电子装置之间的通信还可以被配置为允许软件更新包和/或其他信息被接收并且然后被传输到控制器22(例如,经由通信系统20)。

注意,如果期望的话,可以使用其他控制规范,其将经由终端32接收的输入关联到可移动物体10的期望或实际移动。

如图3所示,控制器22可以包括一个或多个部件,例如,存储器52和至少一个处理器54。存储器52可以是或可以包括至少一个非易失性计算机可读介质,并且可以包括非易失性计算机可读介质的一个或多个存储器单元。存储器52的非易失性计算机可读介质可以是或可以包括任何类型的易失性或非易失性存储装置,例如包括:软盘、光盘、dvd、cd-rom、微型驱动器和磁光盘、rom、ram、eprom、eeprom、dram、vram、闪存装置、磁卡或光卡、纳米系统(包括分子存储器ic)或者适于存储指令和/或数据的任何类型的介质或装置。存储器单元可以包括非暂时性计算机可读介质(例如,可移除介质或外部存储装置,例如sd卡、ram等)的永久和/或可移除部分。

来自感测系统18的信息和数据可以被传输到存储器的非暂时性计算机可读介质并被存储在其中。与存储器52相关联的计算机可读介质还可以被配置为存储可由处理器54执行的逻辑、代码和/或程序指令,以执行本文描述的方法的任何合适的实施例。例如,与存储器52相关联的计算机可读介质可以被配置为存储计算机可读指令,其在被处理器54执行时使得处理器执行包括一个或多个步骤的方法。基于被存储在非暂时性计算机可读介质中的指令的由处理器执行的方法可以涉及处理输入,例如被存储在存储器52的非暂时性计算机可读介质中的数据或信息的输入、从终端32接收的输入、从感测系统18接收的输入(例如,直接从感测系统接收或从存储器接收)和/或经由通信系统20接收的其他输入。非暂时性计算机可读介质可以被配置为存储将由处理单元处理的来自感测模块的感测数据。在一些实施例中,非暂时计算机可读介质可以用于存储由处理单元产生的处理结果。

图1中的传感装置19可以通过图3的示例性实施例中的成像装置19来实现。在本公开的实施例中,成像系统19可以包括被配置为收集数据的成像装置,该数据用于生成用来测量、跟踪和捕捉目标(例如,照片或视频拍摄的对象、风景、主题等)的图像或视频的图像。例如,成像装置可以包括照相机、摄像机、红外成像装置、紫外成像装置、x射线装置、超声成像装置、雷达装置等。在该示例性实施例中,成像装置可以被配置为生成目标的光学数据以用于识别和跟踪该目标。例如,成像装置可以是光学装置,例如相机或摄像机。成像装置可以被配置为生成指示目标的一个或多个特征的成像数据。成像系统19可以进一步被配置为经由有线或无线连接(例如,rfid、蓝牙、wi-fi、无线电、蜂窝电话等)与控制器22传送数据(例如,图像帧)和信息。由成像装置19生成并被传送到控制器22的数据和信息可以由控制器22用于进行进一步处理。

处理器54可以包括一个或多个处理器,并且可以包含可编程处理器,例如中央处理单元(cpu)。处理器54可以可操作地耦合到存储器52或被配置为存储程序或指令的另一存储器装置,该程序或指令可由处理器54执行以执行一个或多个方法步骤。注意,本文描述的方法步骤可以存储在存储器52中,并且被配置为由处理器54执行以使处理器54执行该方法步骤。

在一些实施例中,处理器54可以包括和/或替代地可操作地耦接到一个或多个控制模块,例如目标识别模块56、目标跟踪模块58、目标距离模块60和目标对焦模块62,将在下文对其进行进一步详细的解释。目标识别模块56、目标跟踪模块58、目标距离模块60和目标对焦模块62可以通过软件实现并在处理器54上执行,或者可以通过与处理器54(未示出)分离的硬件和/或软件部件来实现。

目标识别模块56可以被配置为识别在成像系统19所捕捉的图像或视频中出现的一个或多个目标。目标识别模块可以通过任何适合的技术来实现,包括(但不限于)深度机器学习。例如,在深度机器学习的示例中,神经网络接收整个图像或视频帧作为输入,且神经网络可以将整个图像或视频帧划分成不同的区域。神经网络还可以预测每个区域的边界框以及目标出现在区域中的概率。本文所使用的深度机器学习算法可以是任何适合的深度机器学习算法,可以包括可商用深度机器学习软件包,例如yolo(youonlylookonce)实时目标检测系统。

例如,yolo(第二版)的神经网络包括32层,其中22层是卷积层,其可以有效地识别目标并检测包含目标对象的目标区域。根据公开的实施例,该神经网络可以用于准确地跟踪目标。

在一些实施例中,可以执行对深度机器学习的神经网络的离线训练。例如,可以准备和标记各种训练样本。训练样本可以包括在不同的环境、情况和场景下捕捉的大量样本。标记的训练样本可以被输入到神经网络用于离线训练以学习大量的对象特征,以使得可以通过uav以实时的方式准确地识别多个目标。可以测试训练后的权重。在多次迭代之后,可以基于输入的训练样本获得权重参数的可操作集合。图4a示出了可以使用神经网络识别的图像中的多个对象(例如,狗、汽车、自行车)及其对应区域(边界框)的示意图。这些识别的对象中的一个或多个然后可以被指定为目标对象以进行跟踪。

在一些实施例中,可以采用不同的神经网络来改善图像帧率处理。例如,可以利用微型yolo神经网络,其包括17层,包括8个卷积层。图4b示出了可以使用被配置为改善图像帧率处理的神经网络来识别的图像中的多个目标对象(例如,牛、人、羊)及其对应区域(边界框)的示意图。

目标跟踪模块58可以被配置为对目标识别模块56已经准确地识别出的一个或多个目标进行跟踪。一旦已经识别出一个或多个目标,目标跟踪模块58就可以使用目标跟踪算法来跟踪目标。这样的跟踪算法可以有助于控制可移动物体10的推进装置12来调整可移动物体10相对于六个自由度(例如,沿其坐标轴的三个平移方向、绕其坐标轴的三个旋转方向)的空间布局、速度和/或加速度,以使可移动物体10能够自动地跟踪期望的目标对象。

参考图5,可以结合连接到可移动物体10的传感装置(即,图1中的传感装置19和图3中的成像系统19),例如相机64,执行目标跟踪。相机64可以被配置为在图像坐标系67中的图像平面66上捕捉包含目标对象(例如,图4a中的狗或图4b中的羊)的图像。目标对象的目标图像65可以形成在图像平面66中,且可以在目标图像65的周围生成边界框68。

可以基于孔径成像模型来表示目标图像65,该孔径成像模型假设来自三维空间中的物点的光线可以被投射到二维图像平面上以形成图像点。相机64可以包括光轴69(例如,从相机的中心70测量的)和焦距72。当光轴69穿过相机中心70和图像平面66两者的中心时,相机中心70和图像平面66的中心之间的距离可以等于相机的焦距72或基本是与相机的焦距72相同的距离。

然后可以基于几何关系和坐标变换来确定相机中心70和目标80之间在地面上的投影相对距离74(例如,自照相机64和目标对象的距离)。例如,目标80可以在世界坐标系中具有顶部目标点(xt,yt,zt)和底部目标点(xb,yb,zb),其可以分别被投影在图像平面66上作为顶部图像点(ut,vt)和底部图像点(ub,vb)。顶部线相对于世界坐标系的z轴以第一倾斜角76穿过相机中心70和顶部图像点。同样,底部线相对于z轴以第二倾斜角78穿过相机中心70和底部图像点。

表示从相机64到目标图像65的顶部和底部的顶部线和底部线的方向矢量可以被表示为如下

其中,k表示相机的固有矩阵,r表示相机旋转。

然后可以基于相机的高度hc以及边界框68在图像坐标系67中的位置来确定到目标的距离74。例如,到目标对象80的距离74可以被计算为d=-hc/zb*pb,目标高度可以被计算为ho=hc+ztd/pt,其中hc是相机的测量高度或有效高度,pb是在地面上的投影长度,且pt是在地面上的投影长度,它们被定义为如下。

此后,系统可以估计到目标的线性距离74(例如,沿x轴),即使当目标高度变化时(例如,当目标跨越粗糙地形、斜坡、阶梯、攀爬对象、悬停或飞行在不同高度等)。在目标对象80和可移动物体10之间的地面上投影的相对距离74可以被计算为hc/dh,其中dh表示目标在距相机单位距离处的估计高度,其可以使用以下公式来计算。

根据一些实施例,为了提供目标跟踪,控制器22可以被配置为通过目标跟踪模块60自动地控制推进装置12,以便在飞行期间维持恒定距离74为期望值或默认值。例如,目标跟踪模块60可以被配置为连续地或周期性地计算距离74并且使用反馈控制(例如,pid控制)来维持距离74为期望值(例如,经由终端32由用户输入的)或默认值。即使当可移动物体10的高度变化时,例如在跟踪目标时可移动物体跨越粗糙地形、陡坡、其他物体等时,也可以进行目标跟踪。

在一些实施例中,即使成像系统19处于捕捉一个或多个图像的过程中,也可以执行跟踪。该一个或多个图像可以聚焦在该图像中的第一目标上,而可以针对若干其他目标(例如,各自被相应的边界框包围的目标)执行跟踪。在这样的实施例中,当焦点从位于第一目标上切换到第二目标上时,该系统可以基于测量的到第二目标的距离来执行重新聚焦操作,该第二目标是若干其他目标之一(例如,一个或多个图像中的另一目标)。此外对于这些公开的实施例,可以通过扫描包围第二目标的边界框中的区域而不是扫描图像的整个区域来确定测量到第二目标的距离。因此,这些实施例中的系统还可以具有降低处理时间和成本的优点。

此外,在一些实施例中,可以仅针对感兴趣的目标来执行跟踪,例如以降低成本并增加帧率。在这样的场景下,感兴趣的目标可以经由深度机器学习的神经网络来识别,其识别感兴趣的目标在图像的某个区域内,例如识别狗在图4a中的边界框内。在这样的实施例中,系统可以降低跟踪、聚焦于感兴趣的目标以及对感兴趣的目标进行成像的计算成本。此外对于这些实施例,当感兴趣的目标被切换时,例如从第一目标(例如,图4a中的狗)切换到第二目标(例如,图4a中的汽车),因为第二目标靠近第一目标,可以快速且高效地执行对第二目标(例如,汽车)的跟踪,由此不仅降低了与跟踪、聚焦于感兴趣的目标和对第二目标进行成像相关联的计算成本、还提高了成像目标的帧率。

在一些实施例中,跟踪可以包括uav的移动或者可以从静态对象开始执行。

目标距离模块60可以被配置为确定例如从成像系统19到目标对象的距离。在标识、识别和跟踪目标之后,采用准确的焦点来获取目标的高质量图像。由于目标对象与可移动物体10之间的相对移动,从成像系统19到目标对象的距离可以一直变化。为了准确地聚焦于目标,需要以实时的方式测量到目标的距离。

图6a示出了在相对于目标对象移动之前形成目标对象的图像的示例性实施例的示意图。如图6a中所示,在成像平面上形成目标s的图像s′0。从目标对象和图像到成像平面的距离分别是-l和l。图像s′0的高度是-h′0,如在等式(1)中所定义:

其中,是图像放大率。当目标对象移动时,如图6b中所示,物距和像距分别变为-l+δl′和l′-δl′。目标s的图像s′1的高度变为-h′1,如在等式(2)中所定义:

其中,是目标移动之后的图像放大率。可见,由于目标的移动,目标图像改变。

通过结合等式(1)和(2),可以将等式(3)确定为:

因此,可以在等式(4)中将图像高度的偏移表示为:

从等式(4)可见,对于具有相同的初始图像高度和视角的目标,目标对象距离越大,图像高度偏移越小。然而,即使当目标对象距离是无穷大时,图像高度偏移依然可以表示为等式(5)中所示:

因此,当目标移动时,必须准确地测量目标对象距离,并且可以通过基于所测量的物距来驱动聚焦控制机构以实现准确聚焦。

在一些实施例中,为了降低成本并提高帧率,可以仅针对感兴趣的目标对象执行距离测量。例如,深度机器学习的神经网络识别感兴趣的目标以及包含该感兴趣的目标的区域(即,边界框)。根据边界框,可以计算目标对象的中心位置和该中心位置的方向,如图7a中所示。在图7a中,目标对象的中心位置t被显示在具有中心点p和图像坐标系的图像平面上,通过将相机(例如,成像系统19)的中心c连接到目标对象的中心位置t来呈现中心位置的方向。在图7b中,假设目标中心位置t在图像坐标系中的像素位置是(u,v),则v可以在等式(6)中被表示为:

其中,f是可以通过校准相机而获得的相机的焦距,且y和z是相机坐标系(即,世界坐标系)中的坐标。目标的中心位置t的方向的角度α可以在等式(7)中被确定为:

距离测量装置,例如图7b中所示的激光雷达,可以用于测量在中心位置方向的范围内到目标的距离。测量装置可以紧靠相机,使得激光雷达可以通过扫描基于中心位置方向的角度α的特定范围(例如,在图7b中所示的角度范围ψ内)来测量到感兴趣的目标的距离。目标对焦模块62可以被配置为控制成像系统19中的焦点控制机构/模块。焦点控制机构可以是成像系统10中的内置机构,或者可以是本领域技术人员公知的任何焦点控制机构。在确定了到目标对象的距离之后,可以启动焦点控制机构来自动地调整成像系统19的焦距,以根据所测量的距离来实现准确聚焦在感兴趣的目标上。

处理器54可以可操作地耦合到通信系统20,并且可以被配置为从一个或多个外部装置(例如,终端32、显示装置46或其他遥控器)发送和/或接收数据。可以使用任何合适的通信手段向或从控制器22传送数据和信息,例如通过有线通信或无线通信。例如,通信系统20可以利用局域网(lan)、广域网(wan)、红外线、无线电、wifi、点对点(p2p)网络、电信网络、云通信等中的一个或更多个。可选地,可以使用中继站,例如塔、卫星或移动站。无线通信可以是接近度相关的或接近度不相关的。在一些实施例中,通信可能需要或可能不需要视距。通信系统20可以发送和/或接收以下一个或多个:来自感测模块18的感测数据,由处理器54产生的处理结果、预定控制数据、来自终端32或遥控器的用户命令等。

控制器22的部件可以以任何合适的配置来布置。例如,控制器22的一个或多个部件可以位于可移动物体10、载体16、负载14、终端32、感测系统18上或与上述一个或多个进行通信的附加的外部装置上。在一些实施例中,一个或多个处理器或存储器装置可以位于不同的位置,例如,在可移动物体10、载体16、负载14、终端32、感测模块18、与上述器件中的一个或多个通信的其他外部装置或其合适组合上,使得由该系统执行的处理和/或存储功能的任何合适方面可以发生在上述位置的一个或多个位置处。

根据公开的实施例,图8示出了可以用于基于深度机器学习和激光雷达来识别、跟踪和聚焦于目标的示例性方法800。尽管仅出于示例性目的描述了一个目标,但是方法800可以应用于多个目标。

在步骤802中,在图像中识别目标对象。该目标可以是在图像中识别的任何对象,例如图4a中的狗或汽车,并且可以相对于成像系统移动。可以通过成像系统在一个或多个图像或视频中捕捉目标对象。如上所述,可以通过深度机器学习技术的算法和神经网络在一个或多个图像或视频帧中标识和识别目标对象。深度机器学习技术的算法和神经网络可以在可移动物体10的控制器22中实现。

在步骤804处,跟踪目标。如上所述,可以通过控制可移动物体10的推进装置12来调整可移动物体10相对于六个自由度(例如,沿其坐标轴的三个平移方向、以其坐标轴为中心的三个旋转方向)的空间布局、速度和/或加速度以使可移动物体10能够自动地跟踪目标,来实现在目标移动时跟踪目标。

在步骤806中,可以确定从成像系统19到目标的距离。一旦可以跟踪感兴趣的目标,则例如可以通过激光雷达装置来测量从成像系统10到目标的距离。激光雷达装置可以包含在成像系统19中或附接到成像系统19。或者,激光雷达系统可以是独立装置,其与成像系统协作用于测量距离。激光雷达装置可以向目标发射红外激光脉冲、或者任何其他期望频率的激光脉冲或光束,并且可以接收被反射离开目标对象的光束。可以使用光束在目标与激光雷达装置之间来回行进的总行进时间和光速来计算从激光雷达装置/成像系统19到目标的距离。

在步骤808中,基于所确定的距离来执行聚焦于目标。当确定移动目标的距离时,可以基于所测量的距离通过成像系统19的聚焦控制机构来自动地调整成像系统的焦距。

本公开的公开的实施例提供了一种用于基于深度机器学习的神经网络来标识和识别多个目标的方法和系统。可以在不同的环境、情况和场景下有效地识别多个目标。激光雷达装置简单且具有高可靠性,并且可以基于激光雷达装置所确定的距离来自动地实现准确聚焦。可以使用高质量成像装置来捕捉移动目标对象的图像。此外,根据所公开的实施例,也可以对暗对象或玻璃后的对象进行自动聚焦。因此,本公开的公开的实施例采用激光测距和神经网络/深度学习的组合来进行对象跟踪。

对于本领域技术人员显而易见的是,可以对所公开的方法和系统进行各种修改和变化。考虑所公开的方法和系统的说明和实现,其他实施例对本领域技术人员而言将是显而易见的。预期的是,本说明书和示例仅认为是示例性的,本发明的真实范围由所附权利要求及其等效形式指明。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1