目标定位方法、系统及存储介质与流程

文档序号:30390589发布日期:2022-06-11 15:15阅读:115来源:国知局
目标定位方法、系统及存储介质与流程

1.本技术涉及定位领域,特别涉及目标定位方法、系统及存储介质。


背景技术:

2.随着科技的发展,救援机器人已成为救援的智能化利器,其能够扮演救生员的角色,代替传统人工救援,对溺水者等救援目标进行救援。救援机器人对救援目标进行救援之前,需要先确定救援目标的位置,然后根据救援目标的位置进行规划和控制,完成救援任务。因此,对救援目标的定位是救援的关键技术之一。但是,目前对救援目标的定位的研究大多局限于对陆地上的救援目标进行定位,无法满足具有大视野和远距离特征的特殊定位环境,比如无法满足水面或水下环境,且目前对水面救援或水下救援目标进行定位的方法鲜有研究。


技术实现要素:

3.本技术提供了一种目标定位方法、系统及存储介质,可以满足大视野和远距离特征的定位环境,实现救援目标的定位。所述技术方案如下:
4.第一方面,提供了一种目标定位方法,所述方法包括:
5.获取监控设备采集的包括救援目标的监控图像作为第一图像;
6.根据所述第一图像确定所述救援目标的位置,得到第一位置;
7.调整所述监控设备的监控参数,所述监控参数包括旋转角和/或焦距;
8.获取监控参数调整后的所述监控设备采集的包括所述救援目标的监控图像作为第二图像;
9.根据所述第二图像和所述监控设备调整后的监控参数,确定所述救援目标的位置,得到第二位置;
10.根据所述第一位置,对所述第二位置进行优化,得到第三位置。
11.作为一个示例,所述调整所述监控设备的监控参数,包括以下方式中的一种或多种:
12.控制所述监控设备进行旋转,以调整所述监控设备的旋转角;
13.控制所述监控设备进行调焦,以调整所述监控设备的焦距。
14.作为一个示例,所述根据所述第二图像和所述监控设备调整后的监控参数,确定所述救援目标的位置,得到第二位置,包括:
15.确定所述救援目标在所述第二图像对应的像素坐标系中的第一坐标;
16.根据监控参数调整后的所述监控设备的目标焦距和所述第一坐标,确定所述救援目标在相机坐标系中的第二坐标,所述相机为三维直角坐标系,所述相机坐标系的坐标原点为所述监控设备的光心、所述相机坐标系的x轴和y轴分别指向平行于所述监控设备的成像平面的两条边的方向,所述相机坐标系的z轴指向光轴方向;
17.根据监控参数调整后的所述监控设备的目标旋转角和所述第二坐标,确定所述救
援目标在世界坐标系中的第三坐标作为所述第二位置,所述世界坐标系为二维直角坐标系,所述世界坐标系的坐标原点为所述监控设备的光心在参考平面上的投影,所述世界坐标系的y轴指向所述监控设备初始安装时的光轴平行于参考平面且指向正北方向,所述世界坐标系的x轴指向平行于参考平面且垂直于正北方向。
18.作为一个示例,所述根据监控参数调整后的所述监控设备的目标焦距和所述第一坐标,确定所述救援目标在相机坐标系中的第二坐标,包括:
19.根据所述目标焦距,确定所述监控设备的内参矩阵;
20.根据所述内参矩阵和所述第一坐标,确定所述救援目标在所述相机坐标系中的第二坐标。
21.作为一个示例,所述根据所述目标焦距,确定所述监控设备的内参矩阵之前,所述方法还包括:
22.确定所述监控设备的多种焦距对应的内参矩阵;
23.所述根据所述目标焦距,确定所述监控设备的内参矩阵,包括:
24.从所述多种焦距对应的内参矩阵中获取所述目标焦距对应的内参矩阵作为所述监控设备的内参矩阵。
25.作为一个示例,监控参数调整后的所述监控设备的目标旋转角为所述相机坐标系与参考坐标系的旋转角,所述参考坐标系为三维直角坐标系,所述参考坐标系的坐标原点为所述监控设备的光心,所述参考坐标系的y轴指向所述监控设备初始安装时的光轴平行于参考平面且指向正北方向,所述参考坐标系的x轴指向平行于参考平面且垂直于正北方向,所述参考坐标系的z轴指向垂直于参考平面向下方向;
26.所述根据监控参数调整后的所述监控设备的目标旋转角和所述第二坐标,确定所述救援目标在世界坐标系中的第三坐标作为所述第二位置,包括:
27.根据所述目标旋转角和所述第二坐标,确定所述救援目标在所述参考坐标系中的第四坐标;
28.根据所述第四坐标确定所述救援目标在所述世界坐标系中的所述第三坐标作为所述第二位置。
29.作为一个示例,所述目标旋转角包括方位角和俯仰角,所述方位角指示所述相机坐标系的z轴与所述参考坐标系的y轴的角度,所述俯仰角指示所述相机坐标系的z轴与所述参考坐标系的z轴的角度;
30.所述根据所述目标旋转角和所述第二坐标,确定所述救援目标在所述参考坐标系中的第四坐标,包括:
31.根据所述目标旋转角和所述第二坐标,通过以下公式确定所述第四坐标:
[0032][0033][0034]
其中,p
′c为所述救援目标在所述参考坐标系中的所述第四坐标,且p
′c=[x

c y

c z
′c]
t
,x
′c、y
′c、z
′c为所述参考坐标系中的坐标;yawc为所述方位角,pitchc为所述俯仰角,
为所述方位角对应的旋转矩阵,为所述俯仰角对应的旋转矩阵;pc为所述救援目标在所述相机坐标系中的所述第二坐标,且pc=[xc/z
c yc/z
c 1]
t
,xc、yc、zc为所述相机坐标系中的坐标。
[0035]
作为一个示例,所述根据所述第四坐标确定所述救援目标在所述世界坐标系中的所述第三坐标作为所述第二位置,包括:
[0036]
根据所述第四坐标,通过以下公式确定所述第三坐标作为所述第二位置:
[0037][0038]
其中,pw为所述救援目标在所述世界坐标系中的所述第三坐标作为所述第二位置,且pw=[x
w yw]
t
,xw、yw为所述世界坐标系中的坐标;pc′
为所述救援目标在所述参考坐标系中的所述第四坐标,且p
′c=[x

c y
′cz
′c]
t
,x
′c、y
′c、z
′c为所述参考坐标系中的坐标;h为所述监控设备的光心距离参考平面的高度。
[0039]
作为一个示例,根据所述第一位置,对所述第二位置进行优化,得到第三位置,包括:
[0040]
根据所述第一位置,对监控参数调整后的所述监控设备采集所述第二图像时所述救援目标的位置进行预测,得到预测位置;
[0041]
根据所述预测位置,对所述第二位置进行调整,得到所述第三位置。
[0042]
第二方面,提供了一种目标定位系统,所述系统包括监控设备和主控单元,所述主控单元与所述监控设备连接;
[0043]
所述监控设备,用于采集包括救援目标的监控图像,将所述监控图像发送至所述主控单元;
[0044]
所述主控单元,用于获取监控设备采集的包括救援目标的监控图像作为第一图像,根据所述第一图像确定所述救援目标的位置,得到第一位置;
[0045]
所述主控单元,还用于调整所述监控设备的监控参数,所述监控参数包括旋转角和/或焦距;
[0046]
所述主控单元,还用于获取监控参数调整后的所述监控设备采集的包括所述救援目标的监控图像作为第二图像,根据所述第二图像和所述监控设备调整后的监控参数,确定所述救援目标的位置,得到第二位置;
[0047]
所述主控单元,还用于根据所述第一位置,对所述第二位置进行优化,得到第三位置。
[0048]
第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述的目标定位方法。
[0049]
本技术实施例提供的技术方案带来的有益效果是:
[0050]
本技术实施例中,先获取监控设备采集的包括救援目标的监控图像作为第一图像,根据第一图像确定救援目标的位置,得到第一位置。然后调整监控设备的监控参数,获取监控参数调整后的监控设备采集的包括救援目标的监控图像作为第二图像,根据第二图像和监控设备调整后的监控参数,确定救援目标的位置,得到第二位置。最后根据第一位置
对第二位置进行优化,得到第三位置。其中,监控参数包括旋转角和/或焦距。由于可以灵活地调整监控设备的监控参数,因此可以获取监控设备以不同的监控参数采集的包括救援目标的多个监控图像,满足大视野和远距离特征的定位环境,且根据不同监控参数对应的多个监控图像可以实现救援目标的定位。
附图说明
[0051]
为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0052]
图1是本技术实施例提供的一种目标定位系统的结构框图;
[0053]
图2是本技术实施例提供一种目标定位方法的流程图;
[0054]
图3是本技术实施例提供的另一种目标定位方法的流程图;
[0055]
图4是本技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
[0056]
为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
[0057]
应当理解的是,本技术提及的“多个”是指两个或两个以上。在本技术的描述中,除非另有说明,“/”表示或的意思,比如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,比如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,为了便于清楚描述本技术的技术方案,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
[0058]
在对本技术实施例进行详细地解释说明之前,先对本技术实施例的应用场景予以说明。
[0059]
救援是指对救援目标进行救援,是一项突发性强、时间紧迫、技术要求高、救援难度大、危险系数高的项目。其中,救援目标为水面的溺水者或船只等,也可以为水下的生物或潜艇等,本技术实施例对救援目标不做限定。
[0060]
目前对救援目标的定位的研究大多局限于对陆地上的救援目标进行定位,无法满足具有大视野和远距离特征的特殊定位环境,比如无法满足水面或水下环境的大视野和远距离特征。另外,目前对水面救援或水下救援目标进行定位的方法鲜有研究。
[0061]
作为一个示例,陆地救援目标的定位通常使用激光雷达和双目视觉实现。但是,由于激光雷达的测量距离有限,硬件成本较高,因此无法满足远距离特征的定位环境。另外,由于双目视觉的测量距离有限,视野范围有限,因此也无法满足大视野和远距离特征的定位环境。
[0062]
基于此,本技术实施例提出了一种目标定位方法,可以满足定位环境的大视野和远距离特征,实现救援目标的定位。比如,可以满足水面或水下的大视野和远距离特征,实
现水面或水下的救援目标的定位。
[0063]
当然,也可以应用于其它大视野或远距离特征的场景,本技术实施例对此不做限定。
[0064]
下面对本技术实施例提供的目标定位系统进行详细地解释说明。
[0065]
请参考图1,图1是本技术实施例提供的一种目标定位系统的结构框图。本技术实施例提供的目标定位方法可以应用于图1所示的目标定位系统中。如图1所示,目标定位系统包括监控设备101和主控单元102,主控单元102与监控设备101连接。
[0066]
其中,监控设备101用于采集包括救援目标的监控图像,将监控图像发送至主控单元102。
[0067]
其中,监控设备101具有监控区域(视野范围)和监控参数,可以通过调整监控参数改变监控区域,从而监控设备101以不同的监控参数采集包括救援目标的监控图像。
[0068]
比如,通过调整监控设备101的旋转角和焦距,改变监控区域的位置和范围,满足定位环境的大视野和远距离特征。
[0069]
比如,监控设备101可以为可旋转和可变焦距的相机。监控设备101可以接收主控单元102发送的调焦指令和/或旋转指令,根据调焦指令和/或旋转指令,调整焦距和/或旋转角。
[0070]
作为一个示例,如图1所示,监控设备101位于水平面上方,可监控水面环境,通过调整监控设备101的旋转角和焦距,改变监控区域的位置和范围,满足水面环境的大视野和远距离特征。
[0071]
比如,如图1所示,目标定位系统还包括云台103,监控设备101通过云台103固定于水平面上方。
[0072]
作为一个示例,云台103用于将监控设备101固定于水平面上方,以便监控设备101采集包括水面救援目标的监控图像。
[0073]
其中,云台103还可以带动监控设备101进行旋转,以调整监控设备101的旋转角。
[0074]
作为一个示例,云台103可以为包括支撑装置和旋转装置的设备。支撑装置的第一端位于水中,支撑装置的第二端位于水平面上方,支撑装置的第二端连接旋转装置的第一端,旋转装置的第二端连接监控设备101。如此,云台103可以通过支撑装置将监控设备101固定于水平面上方,通过旋转装置调整监控设备101的旋转角。这种情况下,监控设备101可以为可变焦距的相机。监控设备101通过云台103的旋转而旋转,通过接收主控单元102发送的调焦指令调整焦距。
[0075]
另外,云台103也可以通过其它方式将监控设备101固定于水平面上方,通过其它方式带动监控设备101进行旋转,本技术实施例对云台103实现将监控设备101固定于水平面上方,带动监控设备101旋转的方式不做限定。
[0076]
作为一个示例,云台103中也可以集成监控设备101,以不同的监控参数采集包括救援目标的监控图像。
[0077]
需要说明是,图1仅以监控设备101位于水平面上方,对水面救援目标进行定位为例进行说明,并不作为定位环境的限定。比如,监控设备101也可以为其它大视野或远距离特征的定位场景,如监控设备101位于水下,用于对水下救援目标进行定位。
[0078]
其中,主控单元102,用于获取监控设备101采集的包括救援目标的监控图像作为
第一图像,根据第一图像确定救援目标的位置,得到第一位置。
[0079]
主控单元102,还用于调整监控设备101的监控参数,获取监控参数调整后的监控设备101采集的包括救援目标的监控图像作为第二图像,根据第二图像和监控设备101调整后的监控参数,确定救援目标的位置,得到第二位置。其中,监控参数包括旋转角和/或焦距。
[0080]
主控单元102,还用于根据第一位置,对第二位置进行优化,得到第三位置。
[0081]
作为一个示例,主控单元102可以为具有处理能力的设备,比如,主控单元102可以为计算机设备或具有处理能力的处理器等。
[0082]
需要说明的是,通过调整监控设备101的监控参数,使主控单元102可以获取监控设备101以不同的监控参数采集的包括救援目标的多个监控图像,从而满足大视野和远距离特征的定位环境,且根据不同监控参数对应的多个监控图像可以实现救援目标的定位。比如,通过调整监控设备101的焦距,可以兼顾不同距离的救援目标(远距离和近距离)的定位;通过调整监控设备101的旋转角,可以适用不同角度的救援目标的定位,从而满足大视野和远距离特征定位环境。
[0083]
作为一个示例,云台103中也可以集成主控单元102,比如主控单元102为具有处理能力的处理器,云台103包括处理器。
[0084]
接下来,对本技术实施例提供的目标定位方法予以说明。
[0085]
请参考图2,图2是本技术实施例提供一种目标定位方法的流程图,该方法可以应用于上述图1所示的目标定位系统的主控单元中,主控单元与监控设备连接。该方法包括如下步骤:
[0086]
步骤201,主控单元获取监控设备采集的包括救援目标的监控图像作为第一图像。
[0087]
其中,主控单元与监控设备通过无线或有线方式连接。比如,主控单元通过无线方式获取监控设备采集的包括救援目标的监控图像。
[0088]
比如,监控设备用于对定位环境进行监控,采集定位环境中包括救援目标的图像。比如,如图1所示,监控设备通过云台固定于水平面上方。
[0089]
其中,救援目标可以为水面的溺水者或船只等,当然也可以为其他目标,如水面的塑料袋等。救援目标可以根据实际需求(定位环境)进行设置,本技术实施例对定位环境和救援目标的具体类型不做限定。
[0090]
作为一个示例,在主控单元获取监控设备采集的包括救援目标的监控图像作为第一图像之前,监控设备在第一时刻,以第一时刻的监控参数采集包括救援目标的监控图像。其中,监控参数包括旋转角和/或焦距。
[0091]
作为一个示例,监控设备在采集包括救援目标的监控图像之前,可以先确定采集的监控图像中是否存在救援目标,若确定采集的监控图像中存在救援目标,则将包括救援目标的监控图像作为第一图像发送至主控单元。或者,监控设备采集监控图像后,将监控图像发送至主控单元,主控单元获取监控设备发送的监控图像,确定监控图像中是否存在救援目标,若确定监控设备发送的监控图像中存在救援目标,则将该存在救援目标的监控图像作为第一图像。
[0092]
其中,可以通过目标检测算法或者预先训练好的目标检测模型确定监控图像中是否存在救援目标。
[0093]
作为一个示例,主控单元在获取监控设备采集的包括救援目标的监控图像之前,还可以预先进行标定工作,以提高定位的准确性。比如,标定工作可以包括以下步骤中的至少一种:
[0094]
步骤1)确定监控设备的多种焦距对应的内参矩阵。
[0095]
其中,内参矩阵由监控设备的焦距和监控设备的光心在成像平面上的投影的坐标组成,内参矩阵是主控单元在获取包括救援目的监控图像之后,根据监控图像确定救援目标的位置时使用的参数,比如在下述步骤202和步骤205中使用,具体参见步骤205中的公式(1)。
[0096]
其中,监控设备是具有调焦功能的设备,且不同焦距对应不同的内参矩阵,因此需要先确定多种焦距分别对应的内参矩阵,以便主控单元根据监控设备采集监控图像时的目标焦距,从多种焦距对应的内参矩阵中获取目标焦距对应的内参矩阵作为监控设备的内参矩阵。
[0097]
作为一个示例,可以根据定位环境的实际需求,设置监控设备的多种焦距,以便兼容不同距离的定位,满足远距离特征的定位环境。再根据设置的多种焦距,对监控设备进行标定,确定多种焦距分别对应的内参矩阵。
[0098]
另外,通常监控设备的内部会包括透镜,透镜会对监控设备的成像产生影响,又称畸变。畸变的存在,会影响定位的精度,因此主控单元还可以确定多种焦距分别对应的畸变系数,以根据畸变系数矫正救援目标在像素坐标系中的坐标,进而提高待救援目标的定位准确性。
[0099]
步骤2)确定监控设备初始安装时的安装误差。
[0100]
其中,监控设备初始安装时一般需保证监控设备的光轴平行于参考平面且指向正北方向,以及监控设备的横向截面平行于参考平面。但是考虑实际情况,监控设备初始安装时可能无法完全平行于参考平面且指向正北方向,因此需要确定监控设备初始安装时的安装误差。
[0101]
其中,根据定位环境的不同,参考平面不同。比如,如图1所示,监控设备位于水平面上方,参考平面可以为水平面。
[0102]
当然,参考平面也可以为其它。比如,定位环境为水下,参考平面可以为水底平面。
[0103]
需要说明的是,本技术实施例中仅以正北方向为例进行说明,并不作为监控设备初始安装时的限定。
[0104]
其中,安装误差可以包括误差方位角yaw
error
、误差俯仰角pitch
error
和误差滚转角roll
error
中的一种或多种。误差方位角是指监控设备的光心与正北方向的误差角,误差俯仰角是指监控设备的光心与参考平面的误差角,误差滚转角是指监控设备的横向截面与参考平面的误差角。其中,yaw
error
∈(-π/2,π/2),pitch
error
∈(-π/2,π/2),roll
error
∈(-π/2,π/2)。
[0105]
作为一个示例,可以通过惯性测量单元(inertial measurement unit,imu)或其他设备确定监控设备的安装误差。
[0106]
步骤3)确定监控设备的光心距离参考平面的高度。
[0107]
比如,如图1所示,监控设备位于水平面上方,参考平面可以为水平面,主控单元可以确定监控设备的光心距离水平面的高度。
[0108]
作为一个示例,可以根据云台的支撑装置的第一端和第二端的距离、以及监控设备初始安装时水平面的高度,确定监控设备的光心距离水平面的初始高度。之后,实时确定水平面的高度,根据监控设备的光心距离水平面的初始高度和水平面的实时高度,确定监控设备的光心距离水平面的高度。
[0109]
当然,参考平面也可以为其它。比如,定位环境为水下,参考平面可以为水底平面,主控单元可以确定监控设备的光心距离水底平面的高度。
[0110]
需要说明的是,上述步骤1)-步骤3)不构成对主控单元的执行顺序的限定。
[0111]
作为一个示例,主控单元还可以确定监控设备的光心所对应的经纬度。
[0112]
步骤202,主控单元根据第一图像确定救援目标的位置,得到第一位置。
[0113]
其中,监控设备在第一时刻采集第一图像。主控单元可以先确定救援目标在第一图像对应的像素坐标系中的像素坐标,再根据监控设备第一时刻的监控参数和该像素坐标,确定救援目标在世界坐标系中的坐标作为第一位置。
[0114]
比如,监控设备在第一时刻的监控参数可以包括第一旋转角和第一焦距,主控单元可以根据第一焦距和该像素坐标,确定救援目标在相机坐标系中的坐标,然后根据第一旋转角和救援目标在相机坐标系中的坐标,确定救援目标在世界坐标系中的坐标作为第一位置。
[0115]
其中,主控单元确定救援目标在第一图像对应的像素坐标系中的像素坐标的计算过程,可以参考确定救援目标在第二图像对应的像素坐标系中的第一坐标的计算过程,也即是,可以参考下述步骤2051,这里先不做说明。
[0116]
另外,主控单元根据监控设备第一焦距和救援目标在第一图像对应的像素坐标系中的像素坐标,确定救援目标在相机坐标系中的坐标的计算过程,以及根据第一旋转角和救援目标在相机坐标系中的坐标,确定救援目标在世界坐标系中的坐标作为第一位置的计算过程,可以参考下述步骤2052-步骤2053,这里先不做说明。
[0117]
其中,相机坐标系为三维直角坐标系,相机坐标系的坐标原点为监控设备的光心、相机坐标系的x轴和y轴分别指向平行于监控设备的成像平面的两条边的方向,相机坐标系的z轴指向光轴方向。比如,如图1所示,oxcyczc表示相机坐标系,xc、yc、zc分别为相机坐标系中x轴、y轴和z轴的坐标。
[0118]
其中,世界坐标系为二维直角坐标系,世界坐标系的坐标原点为监控设备的光心在参考平面上的投影,世界坐标系的y轴指向监控设备初始安装时的光轴平行于参考平面且指向正北方向,世界坐标系的x轴指向平行于参考平面且垂直于正北方向。比如,如图1所示,ox
wyw
表示世界坐标系,xw、yw分别为世界坐标系中的x轴和y轴坐标。
[0119]
需要说明的是,本技术实施例仅以正北方向为例定义世界坐标系,并不作为对世界坐标系的限定。另外,主控单元根据第一图像确定救援目标的位置,得到第一位置的计算过程,可以参考下述步骤205,这里先不做说明。
[0120]
步骤203,主控单元调整监控设备的监控参数。
[0121]
其中,监控参数包括旋转角和/或焦距。比如,监控设备为可旋转、可变焦距的监控设备,主控单元可以调整监控设备的旋转角和焦距。
[0122]
其中,主控单元可以根据实际情况调整监控设备的监控参数,以使救援目标在调整监控参数后的监控设备采集的图像中的位置和范围均较优。且由于可以调整监控设备的
监控参数,因此监控范围较大,满足大视野和远距离特征的定位环境。
[0123]
比如,通过调整旋转角,使得监控设备可以采集包括水面上任意位置的救援目标的监控图像;通过调整焦距,使得监控设备采集的包括救援目标的监控图像兼顾远距离和近距离的情况,可以满足水面环境的大视野和远距离特征,从而根据不同监控参数对应的监控图像可以实现水面救援目标的定位。
[0124]
另外,由于可以调整监控设备的监控参数,因此本技术实施例提供的目标定位方法可以实现移动的救援目标的定位。比如,通过调整监控参数的旋转角,使得移动的救援目标始终存在于监控设备的监控区域(视野范围)内,且根据救援目标距离监控设备的距离调整焦距,可以兼顾不同距离(远距离和近距离)的救援目标的定位。
[0125]
作为一个示例,调整策略可以依据救援目标在图像中的位置和/或救援目标的移动方向进行设置。若救援目标在图像中的位置区域小于阈值,则将监控设备的焦距调大;若救援目标在图像中的位置靠近图像中的边缘,则调整监控设备的旋转角,以使救援目标在监控设备采集的图像中的位置靠近图像中心,以使救援目标在监控设备的监控范围内;根据已采集的多帧图像可以确定救援目标的移动方向,根据救援目标的移动方向可以调整监控设备的旋转角和焦距,以使救援目标在监控设备采集的图像中的位置靠近中心,且救援目标在图像中的位置区域不小于阈值,从而后续根据调整监控参数后的监控设备采集的包括救援目标的监控图像确定救援目标的位置较优,即定位的精度更高。
[0126]
其中,主控单元可以通过以下方式中的一种或多种调整监控设备的监控参数:
[0127]
第一种方式:控制监控设备进行旋转,以调整监控设备的旋转角。
[0128]
比如,主控单元与监控设备通过无线方式连接,主控单元可以通过无线方式向监控设备发送旋转指令,监控设备接收主控单元发送的旋转指令,根据旋转指令进行旋转,调整旋转角。
[0129]
另外,主控单元也可以控制云台进行旋转,以调整监控设备的旋转角。比如,主控单元与云台通过无线方式连接,云台通过旋转装置与监控设备连接。主控单元可以通过无线方式向云台发送旋转指令,云台接收主控单元发送的旋转指令,根据旋转指令进行旋转,从而通过旋转装置带动监控设备旋转,调整监控设备的旋转角。
[0130]
或者,云台在接收主控单元发送的旋转指令后,向监控设备发送该旋转指令,监控设备接收云台发送的旋转指令,根据旋转指令进行旋转。
[0131]
第二种方式:控制监控设备进行调焦,以调整监控设备的焦距。
[0132]
作为一个示例,主控单元与监控设备通过无线方式连接,主控单元通过无线方式向监控设备发送调焦指令,控制监控设备进行调焦。比如,监控设备接收主控单元发送的调焦指令,根据调焦指令调整焦距。
[0133]
作为一个示例,主控单元可以通过云台控制监控设备进行调焦。比如,主控单元与云台通过无线方式连接,云台与监控设备通过无线方式连接。主控单元通过无线方式向云台发送调焦指令,云台接收主控单元发送的调焦指令后,通过无线方式向监控设备发送调焦指令,控制监控设备进行调焦。
[0134]
作为一个示例,主控单元也可以向监控设备或云台发送调参指令,调参指令用于调整监控设备的监控参数。
[0135]
作为一个示例,主控单元调整监控设备的监控参数后,监控设备可以根据调整后
的监控参数采集监控图像。其中,调整监控参数后的监控设备的监控参数的旋转角、焦距可以称为目标旋转角、目标焦距。
[0136]
步骤204,主控单元获取监控参数调整后的监控设备采集的包括救援目标的监控图像作为第二图像。
[0137]
其中,主控单元获取监控参数调整后的监控设备在第二时刻采集的包括救援目标的监控图像作为第二图像之前,监控设备在第二时刻,以第二时刻的监控参数(执行上述步骤203之后,监控设备的监控参数)采集到包括救援目标的监控图像。比如,监控设备在第二时刻的监控参数可以包括第二旋转角和第二焦距。
[0138]
其中,监控设备采集第一图像和采集第二图像时的监控参数不同,也即是,监控设备以不同的监控参数采集第一图像和第二图像,从而改变监控设备的监控区域,满足大视野和远距离特征的定位环境。比如,第二旋转角与第一旋转角不同,和/或,第二焦距与第一焦距不同。
[0139]
步骤205,主控单元根据第二图像和监控设备调整后的监控参数,确定救援目标的位置,得到第二位置。
[0140]
作为一个示例,监控设备在监控参数调整后第二时刻采集到第二图像。主控单元可以先确定救援目标在第二图像对应的像素坐标系中的第一坐标,再根据监控设备第二时刻的监控参数和第一坐标,确定救援目标在世界坐标系中的第三坐标作为第二位置。
[0141]
比如,主控单元根据第二图像和监控设备调整后的监控参数,确定救援目标的位置,得到第二位置,可以包括如下步骤:
[0142]
步骤2051,主控单元确定救援目标在第二图像对应的像素坐标系中的第一坐标。
[0143]
作为一个示例,主控单元可以先识别监控图像中存在的救援目标,再确定救援目标在像素坐标系中的第一坐标。比如,如图1所示,ouv表示第二图像对应的像素坐标系,u、v为救援目标在像素坐标系中的坐标。
[0144]
作为一个示例,主控单元还可以根据畸变系数校正救援目标在像素坐标系中的坐标,将矫正后的坐标作为第一坐标。
[0145]
另外,主控单元在确定救援目标在第二图像对应的像素坐标系中像素坐标作为第一坐标后,可以根据监控设备第二时刻的监控参数和第一坐标,确定救援目标在世界坐标系中的第三坐标作为第二位置。比如,主控单元通过下述步骤2052-步骤2053确定第二位置。
[0146]
步骤2052,主控单元根据监控参数调整后的监控设备的目标焦距和第一坐标,确定救援目标在相机坐标系中的第二坐标。
[0147]
其中,目标焦距是指监控参数调整后的监控设备的焦距,即上述第二焦距。
[0148]
作为一个示例,主控单元可以先根据目标焦距,确定监控设备的内参矩阵,再根据内参矩阵和第一坐标,确定救援目标在相机坐标系中的第二坐标。
[0149]
比如,在根据目标焦距,确定监控设备的内参矩阵之前,主控单元先确定监控设备的多种焦距对应的内参矩阵,之后主控单元可以从多种焦距对应的内参矩阵中获取目标焦距对应的内参矩阵作为监控设备的内参矩阵。
[0150]
比如,主控单元根据内参矩阵和第一坐标,可以通过以下公式(1)确定第二坐标:
[0151][0152]
其中,k为内参矩阵,且k由c
x
、cy、f
x
、fy组成,c
x
、cy为监控设备的光心在成像平面上的投影的坐标,f
x
、fy为目标焦距;pc为救援目标在相机坐标系中的第二坐标,且pc=[xc/z
c yc/z
c 1]
t
,xc、yc、zc为相机坐标系中的坐标;u、v为救援目标在像素坐标系中的第一坐标。
[0153]
比如,如图1所示,ouv表示第二图像对应的像素坐标系,u、v为救援目标在像素坐标系中的坐标,救援目标在像素坐标系中的第一坐标为(u,v);监控设备光心在成像平面上的投影的坐标为(c
x
,cy);目标焦距f在相机坐标系的x轴方向的投影为f
x
,目标焦距f在相机坐标系的y轴方向的投影为fy。
[0154]
步骤2053,根据监控参数调整后的监控设备的目标旋转角和第二坐标,确定救援目标在世界坐标系中的第三坐标作为第二位置。
[0155]
作为一个示例,由于监控设备的旋转角度发生变化,也即是,监控参数调整后的监控设备与监控设备初始安装时存在旋转变化,因此,可以建立参考坐标系,主控单元先确定监控参数调整后的监控设备对应的相机坐标系与参考坐标系的旋转关系,再根据旋转关系确定救援目标在世界坐标系中的第三坐标。
[0156]
其中,参考坐标系为三维直角坐标系,参考坐标系的坐标原点为监控设备的光心,参考坐标系的y轴指向监控设备初始安装时的光轴平行于参考平面且指向正北方向,参考坐标系的x轴指向平行于参考平面且垂直于正北方向,参考坐标系的z轴指向垂直于参考平面向下方向。如图1所示,ox
′cy
′cz
′c表示参考坐标系,x
′c、y
′c、z
′c分别为参考坐标系中的x轴、y轴和z轴坐标。
[0157]
作为一个示例,监控参数调整后的监控设备的目标旋转角为相机坐标系与参考坐标系的旋转角,主控单元根据目标旋转角和第二坐标,先确定救援目标在参考坐标系中的第四坐标,再根据第四坐标确定救援目标在世界坐标系中的第三坐标作为第二位置。
[0158]
作为一个示例,目标旋转角可以包括方位角yawc和俯仰角pitchc,方位角指示相机坐标系的z轴与参考坐标系的y轴的角度,俯仰角指示相机坐标系的z轴与参考坐标系的z轴的角度。也即是,方位角指示相机坐标系的z轴与正北方向的角度,俯仰角指示相机坐标系的z轴与垂直于参考平面方向的角度。
[0159]
作为一个示例,主控单元根据目标旋转角和第二坐标,可以通过以下公式(2)和公式(3)确定第四坐标:
[0160][0161][0162]
其中,p
′c为救援目标在参考坐标系中的第四坐标,且p
′c=[x

c y

c z
′c]
t
,x
′c、y
′c、z
′c为参考坐标系中的坐标;yawc为方位角,pitchc为俯仰角,为方位角对应的旋转矩阵,为俯仰角对应的旋转矩阵;pc为救援目标在相机坐标系中的第二坐标,且pc=[xc/z
c yc/z
c 1]
t
,xc、yc、zc为相机坐标系中的坐标。
[0163]
其中,yawc∈(-π,π),pitchc∈(0,π/2)。
[0164]
作为一个示例,主控单元还可以根据监控设备初始安装时的安装误差,对第四坐标进行校正。比如,安装误差包括pitch
error
误差俯仰角和roll
error
误差滚转角。主控单元根据目标旋转角、第二坐标和安装误差,可以通过以下公式(4)和公式(5)确定第四坐标:
[0165][0166][0167]
其中,p
′c为救援目标在参考坐标系中的第四坐标;pitch
error
为误差俯仰角,roll
error
为误差滚转角,为误差俯仰角对应的旋转矩阵,为误差滚转角对应的旋转矩阵;yawc为方位角,pitchc为俯仰角,为方位角对应的旋转矩阵,为俯仰角对应的旋转矩阵;pc为救援目标在相机坐标系中的第二坐标。
[0168]
作为一个示例,主控单元根据第四坐标,可以通过以下公式(6)确定第三坐标作为第二位置:
[0169][0170]
其中,pw为救援目标在世界坐标系中的第三坐标作为第二位置,且pw=[x
w yw]
t
,xw、yw为世界坐标系中的坐标;p
′c为救援目标在参考坐标系中的第四坐标,且p
′c=[x

c y

c z
′c]
t
,x
′c、y
′c、z
′c为参考坐标系中的坐标;h为监控设备的光心距离参考平面的高度。
[0171]
步骤206,主控单元根据第一位置,对第二位置进行优化,得到第三位置。
[0172]
其中,主控单元可以采用滤波方法对第二位置进行优化。比如,主控单元采用卡尔曼滤波方法对第二位置进行优化。
[0173]
作为一个示例,主控单元采用卡尔曼滤波方法,根据第一位置,对监控参数调整后的监控设备采集第二图像时救援目标的位置进行预测,得到预测位置,再根据预测位置,对第二位置进行调整,得到第三位置。
[0174]
其中,主控单元根据第一位置,可以通过以下公式(7)和公式(8)得到预测位置:
[0175][0176][0177]
其中,上述公式(7)为卡尔曼滤波方法的状态转移方程,上述公式(8)为卡尔曼滤
波方法的观测方程;为第一位置,为救援目标在世界坐标系的第一位置的x轴方向的速度,为救援目标在世界坐标系的第一位置的y轴方向的速度;为预测位置;ω
t+1
~n(0,μ),服从零均值高斯分布;υ
t+1
~n(0,q),服从零均值高斯分布。
[0178]
其中,预测位置为根据救援目标第一时刻的第一位置,对救援目标第二时刻位置进行提前预测的观测位置。
[0179]
之后,主控单元可以根据预测位置和第二位置,得到第三位置。比如,为预测位置,为第二位置,可以对预测位置和第二位置取平均值得到第三位置。
[0180]
当然,也可以根据监控设备采集第二图像之前已采集的包括救援目标的多帧图像,对第二位置进行优化,即采用滑动窗口法,根据多个位置对第二位置进行优化。
[0181]
作为一个示例,在确定第三位置之后,可以根据监控设备的光心所对应的经纬度,确定救援目标的经纬度。
[0182]
需要说明是,由于第二图像是在监控参数调整后监控设备采集的图像,且第二图像中的救援目标的位置均较优,因此根据第二图像确定的第二位置的定位准确度较高,进一步地第三位置的定位准确性也较高。
[0183]
本技术实施例中,先获取监控设备采集的包括救援目标的监控图像作为第一图像,根据第一图像确定救援目标的位置,得到第一位置。然后调整监控设备的监控参数,获取监控参数调整后的监控设备采集的包括救援目标的监控图像作为第二图像,根据第二图像和监控设备调整后的监控参数,确定救援目标的位置,得到第二位置。最后根据第一位置对第二位置进行优化,得到第三位置。其中,监控参数包括旋转角和/或焦距。由于可以灵活地调整监控设备的监控参数,因此可以获取监控设备以不同的监控参数采集的包括救援目标的多个监控图像,满足大视野和远距离特征的定位环境,且根据不同监控参数对应的多个监控图像可以实现救援目标的定位。
[0184]
请参考图3,图3是本技术实施例提供的另一种目标定位方法的流程图,该方法可以应用于上述图1所示的目标定位系统的主控单元中,主控单元与监控设备连接。该方法包括如下步骤:
[0185]
步骤301,主控单元确定标定参数。
[0186]
其中,标定参数可以包括监控设备的多种焦距对应的内参矩阵、安装误差和监控设备的光心距离参考平面的高度中的一种或多种,标定参数可以以提高定位的准确性。
[0187]
作为一个示例,可以通过标定工作确定标定参数。标定工作可以包括以下步骤中的至少一种:
[0188]
步骤1)确定监控设备的多种焦距对应的内参矩阵。
[0189]
步骤2)确定监控设备初始安装时的安装误差。
[0190]
步骤3)确定监控设备的光心距离参考平面的高度。
[0191]
其中,上述步骤1)-步骤3)的详细说明可以参见上述图2实施例中的步骤201,这里不再进行赘述。
[0192]
当然,标定参数还可以包括其它参数,本技术实施例标定参数不做限定。比如,标定参数还包括多种焦距分别对应的畸变系数或监控设备的光心所对应的经纬度等。
[0193]
步骤302,主控单元调整监控设备的监控参数。
[0194]
其中,监控参数包括旋转角和/或焦距。
[0195]
其中,主控单元可以在上述图2实施例中的步骤203之后,再次调整监控设备的监控参数,以使监控设备以再次调整后的监控参数采集包括救援目标的监控图像。比如,再次调整监控设备的监控参数为第三旋转角和第三焦距,第三旋转角与第二旋转角不同,和/或,第三焦距与第二焦距不同。其中,第二旋转角和第二焦距是上述步骤203主控单元调整监控设备的监控参数之后监控设备的监控参数。
[0196]
其中,主控单元调整监控设备的监控参数的详细说明可以参见上述图2实施例中的步骤203,这里不再进行赘述。
[0197]
需要说明的是,主控单元也可以不执行步骤302,即不对监控设备的监控参数进行调整。这种情况下,主控单元可以实时获取监控设备的监控参数或者以上一时刻监控设备的监控参数作为当前时刻监控设备的监控参数。
[0198]
步骤303,主控单元获取监控参数调整后的监控设备采集的包括救援目标的监控图像作为第三图像。
[0199]
其中,在主控单元获取监控参数调整后的监控设备采集的包括救援目标的监控图像作为第三图像之前,监控设备在第三时刻,以第三时刻的监控参数(执行步骤302之后,监控设备的监控参数)采集到包括救援目标的监控图像。比如,监控设备在第三时刻的监控参数包括第三旋转角和第三焦距。
[0200]
另外,主控单元获取监控设备采集的包括救援目标的监控图像作为第三图像的详细说明可以参见上述图2实施例中的步骤201或步骤204,这里不再进行赘述。
[0201]
步骤304,主控单元确定救援目标在第三图像对应的像素坐标系中的第五坐标。
[0202]
其中,主控单元确定救援目标在第三图像对应的像素坐标系中的第五坐标的详细说明可以参见上述图2实施例中的步骤2051,这里不再进行赘述。
[0203]
另外,主控单元还可以根据监控设备第三时刻的畸变系数,矫正救援目标在像素坐标系中的坐标,将矫正后的坐标作为第五坐标。比如,主控单元从多种焦距分别对应的畸变系数中获取第三焦距对应的畸变系数作为监控设备第三时刻的畸变系数。
[0204]
步骤305,主控单元根据第五坐标,确定救援目标在相机坐标系中的第六坐标。
[0205]
比如,主控单元可以根据监控设备第三时刻的第三焦距和第五坐标,确定第三时刻救援目标在相机坐标系中的第六坐标。
[0206]
其中,主控单元根据第三焦距和第五坐标,确定救援目标在相机坐标系中的第六坐标的计算过程可以参考上述图2实施例中的步骤2052,这里不再进行赘述。
[0207]
步骤306,主控单元根据第六坐标,确定救援目标在世界坐标系中的第七坐标作为第四位置。
[0208]
比如,主控单元可以根据监控设备第三时刻的第三旋转角和第六坐标先确定救援目标在参考坐标系中的第八坐标,再根据第八坐标确定救援目标在世界坐标系中的第七坐标作为第四位置。
[0209]
其中,主控单元根据第三旋转角和第六坐标,确定救援目标在世界坐标系中的第七坐标作为第四位置的计算过程可以参考上述图2实施例中的步骤2053,这里不再进行赘述。
[0210]
步骤307,主控单元根据已确定的救援目标在世界坐标系中的位置,对第四位置进
digital,sd)卡、闪存卡(flash card)等。进一步地,存储器402还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器402用于存储操作系统、应用程序、引导装载程序(boot loader)、数据以及其他程序等。存储器402还可以用于暂时地存储已经输出或者将要输出的数据。
[0221]
本技术实施例还提供了一种计算机设备,该计算机设备包括:至少一个处理器、存储器以及存储在该存储器中并可在该至少一个处理器上运行的计算机程序,该处理器执行该计算机程序时实现上述任意各个方法实施例中的步骤。
[0222]
本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。
[0223]
本技术实施例提供了一种计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个方法实施例中的步骤。
[0224]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述方法实施例中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,该计算机程序包括计算机程序代码,该计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。该计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、rom(read-only memory,只读存储器)、ram(random access memory,随机存取存储器)、cd-rom(compact disc read-only memory,只读光盘)、磁带、软盘和光数据存储设备等。本技术提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
[0225]
应当理解的是,实现上述实施例的全部或部分步骤可以通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。该计算机指令可以存储在上述计算机可读存储介质中。
[0226]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0227]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0228]
在本技术所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0229]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0230]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1