目标检测与追踪方法、装置、系统、介质和设备与流程

文档序号:20114248发布日期:2020-03-17 19:37阅读:105来源:国知局
目标检测与追踪方法、装置、系统、介质和设备与流程

本发明涉及计算机视觉技术领域,特别涉及一种目标检测与追踪方法、装置、系统、介质和设备。



背景技术:

随着时代的进步和科技的发展,智能移动机器人越来越多的出现在人们的视野中,计算机视觉是当代机器人的重要组成部分之一,相机是机器人感知外界环境、获取信息的重要传感元件,通过对相机获取到的图像信息中的物体进行检测及追踪是智能机器人最重要和基础的技术之一。

在计算机视觉领域,传统的目标检测算法通常包含三个阶段:首先在输入图像上选择一些不同尺度的候选区域,然后对这些候选区域使用harr、hog等方法进行特征提取,最后通过svm等机器学习分类算法对结果进行分类预测。这些检测方法的效果很大程度上取决于背景模型获取质量的好坏及人工选择特征质量的高低,它们费时费力的同时识别效果欠佳,模型通用性较差,对于复杂情况下多目标检测与追踪任务更是感到力不从心。

近些年,得益于硬件性能的提升及卷积神经网络算法的突破,深度学习成为一个越来越热门的领域。深度学习的概念由hinton等人于2006年提出。基于深度置信网络提出非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来希望,随后提出多层自动编码器深层结构。此外lecun等人提出的基于区域的卷积神经网络是第一个真正多层结构的学习算法,它利用空间相对关系减少参数数目以提高训练性能。深度学习的实质是通过构建具有很多隐层的机器学习模型和海量的训练数据来学习更有用的特征,从而最终提升分类或预测的准确性。

随着深度学习的提出,其在各个领域的应用也逐渐被学界和工业界发掘出来,针对目标检测和追踪提出了一系列的方法和框架,如r-cnn、fast-rcnn、faster-rcnn等two-stage方法,以及以yolo、ssd为代表的one-stage方法,这些方法各自针对目标检测的准确度和运算速度做了优化,均在它们提出的时期代表了当时最先进的方法。然而,这些方法存在一个较大的问题,即网络在学习和预测过程中计算量太大。它们无一例外都是运行在桌面gpu或者工作站中,虽然模型具有较好的预测效果,但是搭载这些模型的平台对于能耗的要求过高,在应用于移动机器人上时对于能源储备提出了很高的要求,而搭载gpu的嵌入式设备虽然相对能耗小了很多,但是算力极为有限,对于大型网络无法在高准确度的情况下保持较快的运行速度,无法做到实时的目标检测和追踪。



技术实现要素:

本发明的第一目的在于克服现有技术的缺点与不足,提供一种目标检测与追踪方法,该方法适用于小型无人车、移动机器人等含有低算力嵌入式设备的自动驾驶设备,能够有效提高这些自动驾驶设备完成多目标检测与追踪任务的准确度和速度。

本发明的第二目的在于提供一种目标检测与追踪装置。

本发明的第三目的在于提供一种目标检测与追踪系统。

本发明的第四目的在于提供一种存储介质。

本发明的第五目的在于提供一种计算设备。

本发明的第一目的通过下述技术方案实现:一种目标检测与追踪方法,应用于自动驾驶设备,所述方法包括:

基于卷积神经网络搭建多目标检测器模型;

按照马尔科夫决策规则构建卷积神经网络,作为多目标追踪器模型;

使用训练数据集分别对多目标检测器模型和多目标追踪器模型进行训练,得到训练好的多目标检测器和多目标追踪器;

获取待检测目标图像,并且输入到多目标检测器中,检测出待检测目标图像中的目标;

将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪;

其中,用于搭建多目标检测器模型的卷积神经网络结构如下:包括依次连接的输入层、第一卷积层、第一最大汇合层、第二卷积层、第二最大汇合层、第三卷积层、第三最大汇合层、第四卷积层、第四最大汇合层、第五卷积层、第六卷积层、全连接层和输出层。

优选的,用于搭建多目标检测器模型的卷积神经网络中:

所述第一卷积层包括32个3x3大小的卷积核;在第一卷积层中,针对于输入,使用32个3x3大小的卷积核进行卷积计算;

所述第一最大汇合层包括大小为2x2以及步长为2的卷积核;

所述第二卷积层包括64个3x3大小的卷积核以及32个1x1的卷积核;在第二卷积层中,针对于输入首先使用64个3x3大小的卷积核进行卷积计算,然后使用32个1x1的卷积核进行卷积计算;

所述第二最大汇合层包括大小为2x2以及步长为2的卷积核;

所述第三卷积层包括64个3x3大小的卷积核以及32个1x1的卷积核;在第三卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、使用64个3x3大小的卷积核进行卷积计算;使用32个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,使用64个3x3大小的卷积核进行卷积计算;使用32个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,使用64个3x3的卷积核进行卷积计算;

所述第三最大汇合层包括大小为2x2以及步长为2的卷积核;

所述第四卷积层包括128个3x3大小的卷积核和64个1x1的卷积核;在第四卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、首先使用128个3x3大小的卷积核进行卷积计算,然后使用64个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,首先使用128个3x3大小的卷积核进行卷积计算,然后使用64个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,首先使用128个3x3大小的卷积核进行卷积计算;然后使用64个1x1的卷积核进行卷积计算;步骤4、针对于步骤3处理后的结果,首先使用128个3x3大小的卷积核进行卷积计算;然后使用64个1x1的卷积核进行卷积计算;步骤5、针对于步骤4处理后的结果,使用128个3x3的卷积核进行卷积计算;

所述第四最大汇合层包括大小为2x2以及步长为2的卷积核;

所述第五卷积层包括256个3x3大小的卷积核和128个1x1的卷积核;在第五卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤4、针对于步骤3处理后的结果,首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤5、针对于步骤4处理后的结果,使用128个大小为3x3以及步长为2的卷积核进行卷积计算;

所述第六卷积层包括512个3x3大小的卷积核和512个1x1的卷积核;在第六卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、首先使用512个3x3大小的卷积核进行卷积计算,然后使用256个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,首先使用512个3x3大小的卷积核进行卷积计算,然后使用256个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,使用512个1x1的卷积核进行卷积计算。

优选的,在对多目标检测器和多目标追踪器进行训练时,利用pytorch深度学习框架,使用coco数据集作为训练数据集对多目标检测器模型进行训练,得到训练好的多目标检测器,使用motbenchmark数据集作为训练数据集对多目标追踪器模型进行训练,得到训练好的的多目标追踪器模型。

更进一步的,在对多目标检测器训练时,针对于coco数据集中的各训练样本,将训练样本中的3通道像素图像进行归一化后,以批处理形式输入到多目标检测器中,对多目标检测器模型进行训练;

获取的待检测目标图像为3通道像素图像;

在通过多目标检测器检测待检测目标图像中的目标时,将待检测目标图像的3通道像素图像进行归一化处理后输入到多目标检测器中。

优选的,多目标追踪器模型追踪目标的具体过程如下:

步骤s1、根据马尔可夫决策过程将多目标追踪器输入的目标状态分为:激活,追踪,丢失和停止;

步骤s2、当多目标检测器将检测到的目标信息输入到多目标追踪器模型后,在多目标追踪器模型中将该目标的状态标记为激活,同时检测该目标是否属于训练数据集所拥有的目标类别:

若是,则多目标追踪器开始工作,进入步骤s3;

若否,则停止对该目标的追踪;

步骤s3、被标记为激活状态的目标随即进入追踪状态,开始对目标进行追踪,此时若每一帧输入图像中被追踪的目标均被检测到,则追踪器正常工作;若前一时刻被追踪的目标在当前时刻从图像中消失,此时该目标便进入丢失状态,丢失状态将保持一定时间段,在该时间段内该目标如果被再次检测到,则重新回到追踪状态,若仍未被检测到则进入停止状态。

优选的,多目标检测器模型的输出结果为含有n个元素的向量,其中4个元素表示目标边界框boundingbox中心位置的坐标(x,y)及目标边界框boundingbox的长w和宽h,1个元素表示对所标记出目标的置信度c,n-5个元素分别表示目标类别,n为定值。

本发明的第二目的通过下述技术方案实现:一种目标检测与追踪装置,应用于自动驾驶设备,包括:

多目标检测器模型搭建模块,用于基于卷积神经网络搭建多目标检测器模型;其中,用于搭建多目标检测器模型的卷积神经网络结构如下:包括依次连接的输入层、第一卷积层、第一最大汇合层、第二卷积层、第二最大汇合层、第三卷积层、第三最大汇合层、第四卷积层、第四最大汇合层、第五卷积层、第六卷积层、全连接层和输出层;

多目标追踪器模型搭建模块,用于按照马尔科夫决策规则构建卷积神经网络,作为多目标追踪器模型;

模型构建模块,用于使用训练数据集分别对多目标检测器模型和多目标追踪器模型进行训练,得到训练好的多目标检测器和多目标追踪器;

图像获取模块,用于获取待检测目标图像;

目标检测模块,用将待检测目标图像输入到多目标检测器中,检测出待检测目标图像中的目标;

目标追踪模块,用于将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪。

本发明的第三目的通过下述技术方案实现:一种目标检测与追踪系统,应用于自动驾驶设备,包括嵌入式系统以及图像采集设备;

所述图像采集设备:用于采集待检测目标图像;

所述嵌入式系统:

用于加载本发明第一目的所述的目标检测与追踪方法中训练好的多目标检测器和多目标追踪器;

用于获取图像采集设备所采集到的待检测目标图像,并且输入到多目标检测器中,检测出待检测目标图像中的目标;

用于将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪。

本发明的第四目的通过下述技术方案实现:一种存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现本发明第一目的所述的目标检测与追踪方法。

本发明的第五目的通过下述技术方案实现:一种计算设备,包括处理器以及用于存储处理器可执行程序的存储器,所述处理器执行存储器存储的程序时,实现本发明第一目的所述的目标检测与追踪方法。

本发明相对于现有技术具有如下的优点及效果:

(1)本发明目标检测与追踪方法,首先搭建多目标检测器模型和多目标追踪器模型,然后训练得到多目标检测器和多目标追踪器;在进行目标检测和追踪测试时,将采集到的图像输入到多目标检测器中,检测出目标;然后将多目标检测器的输出输入到多目标追踪器,以对多目标检测器中检测到的目标进行追踪;在本发明方法中,用于搭建多目标检测器模型的卷积神经网络包括依次连接的输入层、第一卷积层、第一最大汇合层、第二卷积层、第二最大汇合层、第三卷积层、第三最大汇合层、第四卷积层、第四最大汇合层、第五卷积层、第六卷积层、全连接层和输出层,作为多目标追踪器模型的卷积神经网络为就马尔科夫决策规则(mdp)搭建的;由于上述搭建多目标检测器模型的卷积神经网络的层数较少,具有计算量低和功耗小的优点,因此本发明方法适用于小型无人车、移动机器人等含有低算力嵌入式设备(如gpu芯片)的自动驾驶设备;另外,本发明方法利用了卷积神经网络深度学习技术以及mdp的强化学习技术,能够有效提高这些自动驾驶设备的多目标检测与追踪的准确度和速度。

(2)本发明目标检测与追踪方法中,利用pytorch深度学习框架,使用coco数据集作为训练数据集对多目标检测器模型进行训练,得到训练好的多目标检测器,使用motbenchmark数据集作为训练数据集对多目标追踪器模型进行训练,得到训练好的的多目标追踪器模型。coco数据集和motbenchmark数据集为已知标签的数据集,可以节省人为标记标签所需要花费的大量时间,因此本发明利用上述方式能够更加快速的训练得到多目标检测器和多目标追踪器模型。

(3)本发明目标检测与追踪方法中,多目标追踪器模型基于mdp规则实现多目标的追踪,其中,多目标追踪器模型中将多目标检测器输出目标的状态标记为激活,被标记为激活状态的目标随即进入追踪状态,开始对目标进行追踪,此时若每一帧输入图像中被追踪的目标均被检测到,则追踪器正常工作;若前一时刻被追踪的目标在当前时刻从图像中消失,此时该目标便进入丢失状态,丢失状态将保持一定时间段,在该时间段内该目标如果被再次检测到,则重新回到追踪状态,若仍未被检测到则进入停止状态。由上述可知,本发明多目标追踪器基于mdp规则实现多目标追踪和丢失的状态,能够实现目标的准确以及实时的追踪。

附图说明

图1是本发明目标检测与追踪方法流程图。

图2是本发明方法中搭建多目标检测器模型的卷积神经网络结构图。

图3是本发明方法中搭建多目标检测器模型的卷积神经网络的工作原理图。

图4是本发明方法中多目标追踪器模型追踪目标的工作原理图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

实施例1

本实施例公开了一种目标检测与追踪方法,应用于自动驾驶设备,例如一些小型无人车、移动机器人,如图1所示,该方法包括如下步骤:

1)、基于卷积神经网络搭建多目标检测器模型;按照马尔科夫决策规则构建卷积神经网络,作为多目标追踪器模型;

在本实施例中,上述用于搭建多目标检测器模型的卷积神经网络结构如图2中所示:包括依次连接的输入层、第一卷积层conv1、第一最大汇合层maxpool1、第二卷积层conv2、第二最大汇合层maxpool2、第三卷积层conv3、第三最大汇合层maxpool3、第四卷积层conv4、第四最大汇合层maxpool4、第五卷积层conv5、第六卷积层conv6、全连接层和输出层。具体为:

第一卷积层conv1包括32个3x3大小的卷积核;在第一卷积层中,针对于输入,使用32个3x3大小的卷积核进行卷积计算;

第一最大汇合层maxpool1包括大小为2x2以及步长为2的卷积核;

第二卷积层conv2包括64个3x3大小的卷积核以及32个1x1的卷积核;在第二卷积层中,针对于输入首先使用64个3x3大小的卷积核进行卷积计算,然后使用32个1x1的卷积核进行卷积计算;

第二最大汇合层maxpool2包括大小为2x2以及步长为2的卷积核;

第三卷积层conv3包括64个3x3大小的卷积核以及32个1x1的卷积核;在第三卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、使用64个3x3大小的卷积核进行卷积计算;使用32个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,使用64个3x3大小的卷积核进行卷积计算;使用32个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,使用64个3x3的卷积核进行卷积计算;

第三最大汇合层maxpool3包括大小为2x2以及步长为2的卷积核;

第四卷积层conv4包括128个3x3大小的卷积核和64个1x1的卷积核;在第四卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、首先使用128个3x3大小的卷积核进行卷积计算,然后使用64个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,首先使用128个3x3大小的卷积核进行卷积计算,然后使用64个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,首先使用128个3x3大小的卷积核进行卷积计算;然后使用64个1x1的卷积核进行卷积计算;步骤4、针对于步骤3处理后的结果,首先使用128个3x3大小的卷积核进行卷积计算;然后使用64个1x1的卷积核进行卷积计算;步骤5、针对于步骤4处理后的结果,使用128个3x3的卷积核进行卷积计算;

第四最大汇合层maxpool4包括大小为2x2以及步长为2的卷积核;

第五卷积层conv5包括256个3x3大小的卷积核和128个1x1的卷积核;在第五卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤4、针对于步骤3处理后的结果,首先使用256个3x3大小的卷积核进行卷积计算,然后使用128个1x1的卷积核进行卷积计算;步骤5、针对于步骤4处理后的结果,使用128个大小为3x3以及步长为2的卷积核进行卷积计算;

第六卷积层conv6包括512个3x3大小的卷积核和512个1x1的卷积核;在第五卷积层中,针对于输入依次进行以下步骤卷积计算:步骤1、首先使用512个3x3大小的卷积核进行卷积计算,然后使用256个1x1的卷积核进行卷积计算;步骤2、针对于步骤1处理后的结果,首先使用512个3x3大小的卷积核进行卷积计算,然后使用256个1x1的卷积核进行卷积计算;步骤3、针对于步骤2处理后的结果,使用512个1x1的卷积核进行卷积计算。

在本实施例中,当卷积神经网络输入层输入的图像尺寸为416x416x3时,卷积神经网络各层的输入和输出如图3中所示。在本实施例中,上述卷积神经网络输入和输出之间的关系如下:

no=(ni+2*p-f)/s+1;

其中,no为神经网络当前层输出图像像素大小,ni为神经网络当前层输入图像像素大小。通常,卷积神经网络第m层的输入为一个wi(m)xhi(m)xdi(m)的三维矩阵,输出为一个wo(m)xho(m)xdo(m)的三维矩阵,其中w为矩阵的宽度,h为矩阵的高度,d为每一次卷积所用卷积核的个数或是输入图像的信道维数,利用上述三维矩阵可得出网络每一层的神经元个数。在本实施例中,经过归一化的图像宽度(w)和高度(h)相同,因此这里统一用n来表示。

p为填充(padding)大小,在图3中,若第m层输入(input)ni(m)和输出(output)no(m)相同,则说明该层使用了填充,否则p为0。

f为卷积核(kernel)(也称为过滤器(filter))大小,其数值可任意设置,但通常根据当前层输入尺寸大小而定,本方法采用了两种卷积核:3x3和1x1。

stride为卷积核的步长,即卷积核每次间隔几个像素值进行滤波。在图4中,以网络第一个输入下方的说明为例,最大汇合层下方的卷积核大小为2x2-s-2,说明该最大汇合层使用了2x2的卷积核,以2为步长进行计算。

2)、使用训练数据集分别对多目标检测器模型和多目标追踪器模型进行训练,得到训练好的多目标检测器和多目标追踪器。

在本实施例中,利用pytorch深度学习框架,使用coco数据集作为训练数据集对多目标检测器模型进行训练,得到训练好的多目标检测器,使用motbenchmark数据集作为训练数据集对多目标追踪器模型进行训练,得到训练好的的多目标追踪器模型。

其中coco数据集中包括80个类别的目标,coco数据集中各样本为目标以及类别已知的样本。motbenchmark数据集中各样本为目标边界框(boundingbox)中心位置坐标(x,y)、长w、宽h、目标的置信度c以及目标类别已知的样本。

在本实施例中,coco数据集中各样本均为3通道像素图像,对多目标检测器训练时,针对于coco数据集中的各训练样本,将训练样本中的3通道像素图像进行归一化,归一化后各样本的大小变为416x416像素,coco数据集中归一化后的图像以批处理形式输入到多目标检测器中,对多目标检测器模型进行训练,其中每批次训练图像个数为256个。

3)、获取待检测目标图像,并且输入到多目标检测器中,检测出待检测目标图像中的目标;在本实施例中,可以通过设置在自动驾驶设备上的相机采集待检测目标图像,采集的该图像为3通道像素图像,在输入多目标检测器之前进行归一化后变为416x416像素大小的图像。

在本实施例中,多目标检测器的输出结果为含有n个元素的向量,其中4个元素表示boundingbox中心位置的坐标(x,y)及boundingbox的长w和宽h,1个元素表示对所标记出目标的置信度c,n-5个元素表示目标类别,n为定值,目标类别总数为n-5。在本实施例中n为85,即目标类别总数为80,通过对应目标类别的80个元素可以确定出图像中目标的类别。

4)、将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪;在本实施例中,如图4所示,多目标追踪器模型追踪目标的具体过程如下:

步骤s1、根据马尔可夫决策过程将多目标追踪器输入的目标状态分为:激活,追踪,丢失和停止;

步骤s2、当多目标检测器将检测到的目标信息输入到多目标追踪器模型后,在多目标追踪器模型中将该目标的状态标记为激活,同时检测该目标是否属于训练数据集所拥有的目标类别:

若是,则多目标追踪器开始工作,进入步骤s3;

若否,则停止对该目标的追踪;

步骤s3、被标记为激活状态的目标随即进入追踪状态(a1),开始对目标进行追踪,此时若每一帧输入图像中被追踪的目标均被检测到,则追踪器正常工作(a3);若前一时刻被追踪的目标在当前时刻从图像中消失,此时该目标便进入丢失状态(a4),丢失状态将保持一定时间段(a5),该时间段可以设置为10秒,在该时间段内该目标如果被再次检测到,则重新回到追踪状态(a6),若仍未被检测到(a7),则进入停止状态(a2)。

实施例2

本实施例公开了一种目标检测与追踪装置,应用于自动驾驶设备,包括多目标检测器模型搭建模块、多目标追踪器模型搭建模块、模型构建模块、图像获取模块、目标检测模块和目标追踪模块,其中:

多目标检测器模型搭建模块,用于基于卷积神经网络搭建多目标检测器模型;其中,用于搭建多目标检测器模型的卷积神经网络结构如下:包括依次连接的输入层、第一卷积层、第一最大汇合层、第二卷积层、第二最大汇合层、第三卷积层、第三最大汇合层、第四卷积层、第四最大汇合层、第五卷积层、第六卷积层、全连接层和输出层。该卷积神经网络中各层的具体结构与实施例1中描述的一致,此处不再赘述。

多目标追踪器模型搭建模块,用于按照马尔科夫决策规则构建卷积神经网络,作为多目标追踪器模型;

模型构建模块,用于使用训练数据集分别对多目标检测器模型和多目标追踪器模型进行训练,得到训练好的多目标检测器和多目标追踪器;

在本实施例中,模型构建模块利用pytorch深度学习框架,使用coco数据集作为训练数据集对多目标检测器模型进行训练,得到训练好的多目标检测器,使用motbenchmark数据集作为训练数据集对多目标追踪器模型进行训练,得到训练好的的多目标追踪器模型。

图像获取模块,用于获取待检测目标图像;该图像为3通道像素图像,在输入多目标检测器之前进行归一化后变为416x416像素大小的图像。

目标检测模块,用于将待检测目标图像输入到多目标检测器中,检测出待检测目标图像中的目标;

目标追踪模块,用于将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪。

本实施例目标检测与追踪装置与实施例1的目标检测与追踪方法相对应,因此各个模块的具体实现可以参见上述实施例1,在此不再一一赘述;需要说明的是,本实施例提供的装置仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

实施例3

本实施例公开了一种目标检测与追踪系统,应用于自动驾驶设备,自动驾驶设备可以是一些小型无人车、移动机器人;这些自动驾驶设备含有一些低算力和低功耗的嵌入式设备,例如gpu;

本实施例目标检测与追踪系统包括嵌入式系统以及图像采集设备;

所述图像采集设备:用于采集待检测目标图像;在本实施例中,图像采集设备可以是安装在自动驾驶设备上的相机。

所述嵌入式系统,具体可以是jetsontx2搭载的ubuntu系统,实现如下:

用于加载实施例1所述目标检测与追踪方法中训练好的多目标检测器和多目标追踪器;

用于获取图像采集设备所采集到的待检测目标图像,并且输入到多目标检测器中,检测出待检测目标图像中的目标;本实施例中,多目标检测器的输出结果为含有n个元素的向量,其中4个元素表示boundingbox中心位置的坐标(x,y)及boundingbox的长w和宽h,1个元素表示对所标记出目标的置信度c,n-5个元素表示目标类别总数,n为定值。

用于将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪,具体追踪的方法如实施例1中步骤s1至s3。

实施例4

本实施例公开了一种存储介质,存储有程序,所述程序被处理器执行时,实现实施例1所述的目标检测与追踪方法,如下:

基于卷积神经网络搭建多目标检测器模型;

按照马尔科夫决策规则构建卷积神经网络,作为多目标追踪器模型;

使用训练数据集分别对多目标检测器模型和多目标追踪器模型进行训练,得到训练好的多目标检测器和多目标追踪器;

获取待检测目标图像,并且输入到多目标检测器中,检测出待检测目标图像中的目标;

将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪。

其中,用于搭建多目标检测器模型的卷积神经网络结构如下:包括依次连接的输入层、第一卷积层、第一最大汇合层、第二卷积层、第二最大汇合层、第三卷积层、第三最大汇合层、第四卷积层、第四最大汇合层、第五卷积层、第六卷积层、全连接层和输出层。

本实施例中的存储介质可以是磁盘、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、u盘、移动硬盘等介质。

实施例5

本实施例公开了一种计算设备,包括处理器以及用于存储处理器可执行程序的存储器,其特征在于,所述处理器执行存储器存储的程序时,实现实施例1所述的目标检测与追踪方法,如下:

基于卷积神经网络搭建多目标检测器模型;

按照马尔科夫决策规则构建卷积神经网络,作为多目标追踪器模型;

使用训练数据集分别对多目标检测器模型和多目标追踪器模型进行训练,得到训练好的多目标检测器和多目标追踪器;

获取待检测目标图像,并且输入到多目标检测器中,检测出待检测目标图像中的目标;

将多目标检测器的输出输入到多目标追踪器中,通过多目标追踪器对多目标检测器中检测到的目标进行追踪;

其中,用于搭建多目标检测器模型的卷积神经网络结构如下:包括依次连接的输入层、第一卷积层、第一最大汇合层、第二卷积层、第二最大汇合层、第三卷积层、第三最大汇合层、第四卷积层、第四最大汇合层、第五卷积层、第六卷积层、全连接层和输出层。

本实施例中所述的计算设备可以是台式电脑、笔记本电脑、智能手机、pda手持终端、平板电脑或其他具有处理器功能的终端设备。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

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