掌桥专利:专业的专利平台
掌桥专利
首页

一种结合DeepSort的双目测距方法

文献发布时间:2023-06-19 18:37:28


一种结合DeepSort的双目测距方法

技术领域

本发明涉及目标测距技术领域,具体涉及一种结合DeepSort的双目测距方法。

背景技术

常见的测距方法有超声波测距、激光脉冲测距、红外测距、光学测距和立体视觉等。通过测量发射源发射与返回之间的时间差计算距离的方法称为主动法,声、激光、红外等射频装置均利用此方法,虽然这种方法方便、迅速,但在反射、噪音、交叉等问题环境中表现不佳,因此主动法测距应用受到限制。

视觉传感器的测距技术属于被动测距技术,根据系统所采用视觉传感器数量的不同,可以分为单目视觉系统、双目视觉系统以及多目视觉系统。单目视觉系统采用基于先验知识的方式,将目标与数据库中的样本比较,依据目标在图像中的位置和大小进行目标的识别和测距,单目视觉系统结构简单,计算量较小,但是需要建立庞大的样本数据库;多目视觉系统能准确获得距离信息,但是成本较高,而且算法的复杂度也较大,在处理无人机等目标时很难实现实时解算目标距离以及完成目标识别任务。

双目视觉系统通过不同位置的两台摄像机对同一场景进行拍摄,计算在左右两幅图像中对应像素点的视差,便能够全面地恢复场景的深度信息,同时成本相对较低,但是单独使用双目测距方法时,只能采用对整张图像进行像素匹配或前后景区分等处理方式,导致实现指定目标物测距时处理过程复杂等问题。

发明内容

本发明的目的在于提供一种结合DeepSort的双目测距方法,将DeepSort与双目测距结合,解决单独使用现有的双目测距方法时处理过程复杂的技术问题,减少针对目标进行双目测距时的图像处理范围,实现多个目标同时跟踪和测距的效果。

为实现上述目的,本发明提供了一种结合DeepSort的双目测距方法,包括下列步骤:

对双目相机进行标定,获取相机参数;

使用双目相机拍摄指定类别目标的数据集;

使用拍摄数据集训练DeepSort跟踪网络,得到相应类别的权重文件;

使用训练好权重文件的DeepSort跟踪网络,将指定类别目标的数据集作为输入,取跟踪得到的目标框部分作为双目测距的输入,再通过立体匹配算法计算距离。

其中,所述指定类别目标的数据集用作DeepSort跟踪网络的输入,网络输出包括目标物id、类别和置信度。

其中,所述DeepSort跟踪网络使用级联匹配策略,同时考虑目标间距和特征相似度,并对新生成的跟踪轨迹采取验证机制以排除错误的预测结果。

其中,级联匹配的过程中,视频中每帧图像经卡尔曼滤波预测后生成当前帧中所有目标的预测轨迹边界框,根据检测器在当前帧的检测结果,将检测和预测的边界框进行数据关联。

其中,使用卡尔曼滤波生成预测框,使用匈牙利算法解决卡尔曼预测框和检测框的分配问题,使用ReID领域模型来提取外观特征,并使用级联匹配和IoU匹配作为匹配机制,减少了ID switch的次数。

其中,在对双目相机进行标定,获取相机参数的过程中,通过相机焦距f和左右相机基线b获得空间点P离相机的距离z。

其中,所述通用双目测距方法包括相机标定、双目校正、双目匹配和计算深度信息四个步骤,具体为使用张正友标定法,制作棋盘格标定板进行相机标定,使用工具箱得到相机的内参和外参,然后通过python设计双目匹配算法得到视差值,之后对图像进行基线矫正,获得深度图。

其中,取跟踪得到的目标框部分作为双目测距的输入,具体为将DeepSort跟踪网络输出中的目标框部分作为双目测距的深度处理部分,取目标框的上半部分中心点位置作为深度反馈点,在图像上显示出目标与摄像机的距离,实现多目标的跟踪和测距。

本发明提供了一种结合DeepSort的双目测距方法,在测距的同时对目标物进行类别标明和id区分,在跟踪的同时显示目标物与摄像机之间的距离,进而实现多目标的同时跟踪并测距,忽略除跟踪框以外的其他图像区域,提高准确率并减少视差点计算量,能够更加直观的观测到目标的位置和轨迹,最后把多目标跟踪算法处理后的跟踪框作为双目测距方法的输入,更好的针对指定目标进行测距,实现多个目标同时跟踪和测距的效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的一种结合DeepSort的双目测距方法的流程示意图。

图2是本发明的一种结合DeepSort的双目测距方法的DeepSort算法流程图。

图3是双目测距原理示意图。

图4是本发明的具体实施例的结合DeepSort的双目测距方法实现过程示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

请参阅图1,本发明提供了一种结合DeepSort的双目测距方法,包括下列步骤:

S1:对双目相机进行标定,获取相机参数;

S2:使用双目相机拍摄指定类别目标的数据集;

S3:使用拍摄数据集训练DeepSort跟踪网络,得到相应类别的权重文件;

S4:使用训练好权重文件的DeepSort跟踪网络,将指定类别目标的数据集作为输入,取跟踪得到的目标框部分作为双目测距的输入,再通过立体匹配算法计算距离。

本发明中采用DeepSort多目标跟踪算法结合通用双目测距方法实现指定类别目标的跟踪和测距,其中多目标跟踪算法主要解决的问题是对视频中每一帧图像里的具体目标进行检测并获取目标的位置,对每个目标分配一个id,在目标运动过程中,维持每个目标的id保持不变。在多目标跟踪问题中,目标跟踪算法需要对视频中每帧图像里的所有目标进行检测,将检测到的新目标与已经分配轨迹的目标进行匹配,如果匹配成功,将归类于已有轨迹的目标中,对没有匹配成功的目标,将其归类为新出现的目标,需要分配一个新的id,对于离开视频区域的目标,将不再对其进行轨迹追踪,并在已有轨迹的集合中将其删除。

DeepSort算法在Sort算法的基础上增加了级联匹配算法(Matching Cascade)、表示运动信息的马氏距离和代表外观模型的Re-id特征,一定程度上减少了目标id的变化,实现了性能的提升,具有实际应用意义。

以下通过具体术语和具体实施步骤对本发明作进一步说明:

1、DeepSort的核心流程是预测、观测、更新相结合的方式,特点是使用级联匹配策略,同时考虑目标间距和特征相似度,并对新生成的跟踪轨迹采取验证机制以排除错误的预测结果。

DeepSort算法流程图如图2所示。

DeepSort原理是将检测器的检测结果(detections)与卡尔曼滤波器预测的跟踪结果(tracks)进行匹配,tracks分为确认态(confirmed),和不确认态(unconfirmed),新产生的tracks是不确认态的;不确认态的tracks必须要和detections连续匹配一定的次数(默认3次)才可以转化成确认态。确认态的tracks必须和detections连续失配一定次数(默认30次),才会被删除。

以输入一段视频为例介绍DeepSort的跟踪流程:

(1)将第一帧次检测到的结果创建其对应的tracks,通过卡尔曼滤波预测该检测结果在下一帧中对应的框,此时的tracks是unconfirmed的。

(2)将该帧目标的检测框和第上一帧通过tracks预测的框进行级联匹配(matching cascade),进行级联匹配后有三种可能的结果。第一种,匹配成功(matchedtracks),则通过卡尔曼滤波更新其对应的tracks变量(kalman filter update)。第二种是detection匹配失败(unmatched detections),第三种是tracks匹配失败(unmatchedtracks),将这两种结果得到的detections和tracks一一进行IoU匹配,再通过IoU匹配的结果计算其代价矩阵(costmatrix),再将得到的代价矩阵作为匈牙利算法的输入,得到线性匹配结果。

(3)步骤(2)之后得到的结果有三种,第一种是检测框和预测框配对成功(matchedtracks),将其对应的detections通过卡尔曼滤波更新其对应的tracks变量(kalmanfilter update)。第二种是detections匹配失败(unmatched detections),将这样的detections初始化为一个新的tracks(new tracks),新的tracks是unconformed的状态,该状态的跟踪框将和步骤(2)中的unmatched tracks一起进行IoU匹配并得到线性匹配结果,匹配之后的tracks如果还是unmatched状态,则直接删除,如果可以连续匹配一定的次数(默认3次),就转为confirmed;第三种是tracks匹配失败(unmatched tracks),因为此时tracks是confirmed状态,所以会设置一个最大生命周期值(max_age,默认为30),当连续失配的次数达到max_age才可以删除,否则也转换成uncomfimed状态继续匹配。

(4)反复循环(2)-(3)步骤,直到视频帧结束。

2、双目测距方法就是利用两个CCD相机模拟人眼,通过成像设备获取目标物不同位置的两幅图像,对这两幅图像进行图像处理,计算两幅图像中对应点的位置偏差,利用视差原理恢复被测物三维信息。使用相机拍摄时,现实中的物体反射的光线通过相机镜头聚焦投影至成像屏上。这一过程实际上是将三维空间中的点通过一系列坐标系转换映射到二维图像上,其中涉及了四个坐标系:世界坐标系,相机坐标系,图像坐标系及像素坐标系。在相机实际成像过程中涉及了三次坐标转换,理想相机模型中像素坐标系与世界坐标系之间的转换关系如式(1),

其中,目标在世界坐标系中的坐标是(x

通过求解相机内参矩阵M

如式(2),根据三角形相似定律可得:

易得(3),

即要求得空间点P离相机的距离(深度)z,必须知道相机焦距f和左右相机基线b(通过相机标定得到),以及视差d=xl-xr,即左相机像素点(xl,yl)和右相机中对应点(xr,yr)的关系,这是双目视觉的核心问题。

进一步的,本发明提出了一个具体实施例进行说明,整体实现过程如下所示(详见如图4):

(1)以杯子作为目标物进行实验,首先使用双目相机拍摄数据集,将数据集作为DeepSort网络的输入,网络输出包括目标物id、类别、置信度。

(2)接下来是双目测距部分,双目测距实际操作分4个步骤:相机标定、双目校正、双目匹配、计算深度信息。相机标定用来获得相机的内外参数,双目校正是使用得到的参数分别对左右视图进行消除畸变和行对准,使得左右视图的成像原点坐标一致、两摄像头光轴平行、左右成像平面共面。双目匹配的作用是把同一场景在左右视图上对应的像点匹配起来,得到视差图。

首先使用张正友标定法,制作棋盘格标定板进行相机标定,使用工具箱得到相机的内参和外参,然后通过python设计双目匹配算法得到视差值,之后对图像进行基线矫正,获得深度图。

(3)最后将DeepSort输出中的目标框部分作为双目测距的深度处理部分,取目标框的上半部分中心点位置作为深度反馈点,在图像上显示出目标与摄像机的距离,实现多目标的跟踪和测距。

以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

技术分类

06120115638475