CN115294172A - 目标检测方法、装置、电子设备及存储介质 - Google Patents
目标检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115294172A CN115294172A CN202210890889.XA CN202210890889A CN115294172A CN 115294172 A CN115294172 A CN 115294172A CN 202210890889 A CN202210890889 A CN 202210890889A CN 115294172 A CN115294172 A CN 115294172A
- Authority
- CN
- China
- Prior art keywords
- target
- position information
- image
- confidence
- initial position
- 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
Images
Classifications
-
- 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
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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
-
- 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/20—Special algorithmic details
- G06T2207/20024—Filtering details
Abstract
本公开提供了一种目标检测方法、装置、电子设备及存储介质,涉及人工智能技术领域,进一步涉及图像识别、云计算和深度学习领域,以至少解决相关技术中对运动目标进行检测的检测准确率低的技术问题。具体实现方案为:获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像;利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确;基于目标置信度和初始位置信息,确定目标位置信息。
Description
技术领域
本公开涉及人工智能技术领域,尤其涉及一种目标检测方法、装置、电子设备及存储介质。
背景技术
随着目标追踪算法的飞速发展,近些年,目标追踪算法在驾驶领域也有着广泛的应用。但是现有的目标追踪算法,都是按照固定的计算方式对运动目标进行检测,但运动目标在不同区域的运动情况并不相同,这就导致了对运动目标进行检测的检测准确率低。
发明内容
本公开提供了一种目标检测方法、装置、电子设备及存储介质,以至少解决相关技术中对运动目标进行检测的检测准确率低的技术问题。
根据本公开的一方面,提供了一种目标检测方法,包括:获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像;利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确;基于目标置信度和初始位置信息,确定目标位置信息。
根据本公开的又一方面,提供了一种目标检测装置,包括:获取模块,用于获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像;检测模块,用于利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确;确定模块,用于基于目标置信度和初始位置信息,确定目标位置信息。
根据本公开的又一方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开提出的目标检测方法。
根据本公开的又一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开提出的目标检测方法。
根据本公开的又一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行本公开提出的目标检测方法。
在本公开中,首先获取图像序列中的目标图像,其次通过目标追踪算法对目标图像进行检测得到运动目标的初始位置信息和初始位置信息的目标置信度,最后通过初始位置信息和目标置信度,可以得到更加准确的运动目标的位置信息。容易注意到的是,目标位置信息是通过实时获取的初始位置信息和初始位置信息对应的目标置信度得到的,达到了能够实时获得更加准确的运动目标的位置信息的目的。实现了提高对运动目标进行检测的检测准确率的技术效果从而解决了相关技术中对运动目标进行检测的检测准确率低的技术问题。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的一种可选的现有技术的目标追踪算法流程图;
图2是根据本公开实施例的一种用于实现目标检测方法的计算机终端(或移动设备)的硬件结构框图;
图3是根据本公开实施例的一种目标检测方法流程图;
图4是根据本公开实施例的一种可选的卡尔曼滤波算法的流程图;
图5是根据本公开实施例的一种可选的优化后的目标追踪算法流程图;
图6是根据本公开实施例的一种目标检测装置的结构框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
近些年,人工智能(Artificial Intelligence,AI)技术获得了飞速发展,并开始走进百姓生活,极大的提升了人民生活的智能化。在交通与零售等很多领域,目标追踪算法(DeepSort)都有广泛的应用。在边缘计算服务器(ECS)上部署的目标追踪算法,可用于对车辆和行人的持续追踪,实现对场景的安全监控和突发事件的及时应对。因此,使用DeepSort算法获取车辆准确的位置和行动轨迹,是完成交通事件监控的前提。
图1是根据本公开实施例的一种可选的现有技术的目标追踪算法流程图,如图1所示,该算法包括以下流程:
步骤S11,图像经过目标检测网络,输出目标物位置信息Box1;
步骤S12,将当前目标物与追踪器(Tracker)进行匹配,获取追踪器的标志信息(Tracker ID);
步骤S13,对当前Tracker进行卡尔曼滤波的预测算法,获得目标物的预测位置Box2;
步骤S14,使用卡尔曼滤波的更新算法对位置信息Box1,Box2进行更新,得到校准后的位置信息Box;
步骤S15,将位置信息Box作为结果输出。
现有的算法使用卡尔曼滤波进行最终目标物位置的确定。其中,卡尔曼滤波是从统计学的角度出发,将测量数据和预测数据均视为标准的高斯分布,按照固定的计算方式进行处理,忽略了目标检测框的置信度信息。对于置信度高低不同的检测框,DeepSort并未进行差异化处理。因此造成当目标检测框置信度极高,检测框很准确的时候,经过卡尔曼滤波后的物体位置准确度反而下降,偏离了物体本身的位置,造成目标追踪的准确度下降。
根据本公开实施例,提供了一种目标检测方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本公开实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的电子设备中执行。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。图2示出了一种用于实现目标检测方法的计算机终端(或移动设备)的硬件结构框图。
如图2所示,计算机终端200包括计算单元201,其可以根据存储在只读存储器(ROM)202中的计算机程序或者从存储单元208加载到随机访问存储器(RAM)202中的计算机程序,来执行各种适当的动作和处理。在RAM 202中,还可存储计算机终端200操作所需的各种程序和数据。计算单元201、ROM 202以及RAM 202通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
计算机终端200中的多个部件连接至I/O接口205,包括:输入单元206,例如键盘、鼠标等;输出单元207,例如各种类型的显示器、扬声器等;存储单元208,例如磁盘、光盘等;以及通信单元209,例如网卡、调制解调器、无线通信收发机等。通信单元209允许计算机终端200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元101的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元201执行本文所描述的目标检测方法。例如,在一些实施例中,目标检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元208。在一些实施例中,计算机程序的部分或者全部可以经由ROM202和/或通信单元209而被载入和/或安装到计算机终端200上。当计算机程序加载到RAM 202并由计算单元201执行时,可以执行本文描述的目标检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行目标检测方法。
本文中描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
此处需要说明的是,在一些可选实施例中,上述图2所示的电子设备可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图2仅为特定具体实例的一个实例,并且旨在示出可存在于上述电子设备中的部件的类型。
在上述运行环境下,本公开提供了如图3所示的目标检测方法,该方法可以由图2所示的计算机终端或者类似的电子设备执行。图3是根据本公开实施例的一种目标检测方法流程图。如图3所示,该方法可以包括如下步骤:
步骤S30,获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像。
上述的图像序列可以是在道路交通场景中对获取到的初始视频进行抽帧得到的具有时间间隔的图像序列,但不仅限于此,还可以是任意一种对初始视频进行处理后得到的具有时间间隔的图像序列;上述的目标图像可以是图像序列中待检测的图像,例如,可以是包含有车辆的图像,但不仅限于此。
在一种可选的实施例中,首先可以对初始视频进行抽帧得到图像序列,其次,可以获取图像序列中待检测的图像(即目标图像)。需要说明的是,对初始视频进行处理不仅限于抽帧,还可以是任意一种能够得到具有时间间隔的图像序列的处理,在本实施例中,以抽帧为例进行说明。
在另一种可选的实施例中,首先可以获取道路交通场景中的图像序列,其次,可以获取图像序列一段时间内中的包含有车辆的目标图像,但不仅限于此。
在本步骤中,通过获取道路交通场景中的图像序列以及包含有车辆的目标图像,可以对车辆的运动信息进行检测。
步骤S31,利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确。
上述的目标追踪算法可以是任意一种能够对目标进行追踪的算法,例如,可以是光流算法、粒子滤波算法、相关滤波算法等,在本实施例中,以深度分类算法为例进行说明。其中,深度分类算法引入深度学习模型,在实时目标追踪过程中,可以提取目标的外观特征进行最近邻近匹配。
上述的运动目标可以是通过目标追踪算法在目标图像中追踪得到的,可以是目标图像中任意一种运动的物体,在本实施例中,以在道路上行驶的车辆为例进行说明。
上述的初始位置信息可以是通过目标追踪算法对运动目标进行检测后输出的运动目标的位置信息,例如,可以是车辆在目标图像中的位置信息。可选的,初始位置信息可以是对目标图像中的车辆进行检测后,车辆所处检测框的位置信息。
上述的目标置信度可以是通过目标追踪算法对运动目标进行检测后输出的置信度,其中,目标置信度可以表示检测到的运动目标的初始位置信息是否准确,例如,当目标置信度为1时,可以表示检测到的初始位置信息准确,目标置信度为0.5时,可以表示检测到的初始位置信息不准确,但不仅限于此。
在一种可选的实施例中,在获取到目标图像后,可以通过目标追踪算法对目标图像中的运动目标进行追踪,可选的,在利用目标追踪算法对目标图像中的运动目标进行检测的过程中,可以通过目标检测框对目标图像中的运动目标进行标注,但是,由于运动目标的移动速度过大,因此目标检测框难以将运动目标完全进行标注,此时会出现运动目标的一部分在目标检测框之外,一部分处于目标检测框之内,因此,需要根据目标检测框的置信度来确定目标检测框是否完全将运动目标进行标注,若完全标注,则说明目标检测框的标注准确性较高,此时,对目标检测框中的运动目标检测时,其检测的结果准确度较高,若未完全标注,则说明目标检测框的标注准确度较低,此时,若使用该检测框进行检测,则会导致检测的结果准确度较低。
可以通过目标追踪算法对目标图像进行检测,则可以确定出目标图像中的车辆(即运动目标),并且能通过目标追踪算法输出对车辆进行检测后的初始位置信息和初始位置信息对应的目标置信度。
在本步骤中,通过获取运动目标的初始位置信息和初始位置信息对应的目标置信度,可以为后续的确定目标位置信息提供数据。
步骤S32,基于目标置信度和初始位置信息,确定目标位置信息。
上述的目标位置信息,可以是基于目标置信度和初始位置信息,通过目标追踪算法确定的运动目标的准确度较高的位置信息。
在一种可选的实施例中,首先可以将获取到的目标置信度与预设置信度进行比对,响应于目标置信度大于或等于预设置信度,则表示获取到的初始位置准确,则可以将初始位置信息直接确定为目标位置信息。
其中,预设置信度可以是提前设置的;可选的,预设置信度可以是用户提前设置的;可选的,预设置信度可以是用户提前设置的一种用于确定目标置信度是否准确的置信度,具体的置信度可以根据用户需求自行设定,在本实施例中不做具体限定。
在另一种可选的实施例中,首先可以将获取到的目标置信度与预设置信度进行比对,在目标置信度小于预设置信度的情况下,说明初始位置信息不准确,此时可以通过目标更新算法对初始位置信息进行更新,得到准确度较高的目标位置信息。其中,目标更新算法可以是卡尔曼滤波算法,卡尔曼滤波算法是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。
在本步骤中,通过将目标置信度和预设置信度进行比对,可以确定是否对初始位置信息进行更新,进而可以得到更加准确的目标位置信息。
在本实施例中,首先获取图像序列中的目标图像,其次通过目标追踪算法对目标图像进行检测得到运动目标的初始位置信息和初始位置信息的目标置信度,最后通过初始位置信息和目标置信度,可以得到更加准确的运动目标的位置信息。容易注意到的是,目标位置信息是通过实时获取的初始位置信息和初始位置信息对应的目标置信度得到的,达到了能够实时获得更加准确的运动目标的位置信息的目的。
下面对该实施例的上述方法进行进一步介绍。
可选地,基于目标置信度和初始位置信息,确定目标位置信息,包括:判断目标置信度是否小于预设阈值;响应于目标置信度小于预设阈值,利用目标更新算法对初始位置信息进行更新,得到目标位置信息;响应于目标置信度大于或等于预设阈值,直接将初始位置信息确定为目标位置信息。
上述的预设阈值可以是提前设置的;可选的,上述的预设阈值可以是用户提前设置的;可选的,上述的预设阈值可以是用户提前设置的一种用于确定目标置信度是否准确的置信度。在本实施例中,以0.8为例进行说明,但不仅限于此,具体数值可根据用户需求自行设定。
上述的目标更新算法可以是任意一种能够对运动目标的初始位置信息进行更新的算法,例如,可以是匈牙利算法、卡尔曼滤波算法等,在本实施例中,以卡尔曼滤波算法为例进行说明。
在一种可选的实施例中,可以将目标置信度与预设阈值进行比较,在目标置信度小于预设阈值的情况下,则表明目标检测框对运动目标的检测准确度较低,例如可以是运动目标只有一部分在目标检测框中,为了提高目标检测框的检测准确度,可以通过卡尔曼滤波算法对车辆(即运动目标)初始位置信息进行更新,则可以得到准确度较高的目标位置信息。
在另一种可选的实施例中,在目标置信度为0.5的情况下,由于0.5小于0.8(即预设阈值),则说明获取到的车辆的初始位置信息不准确,此时为了获取更准确的运动目标的位置信息,可以通过目标更新算法对初始位置信息进行更新,得到准确度较高的车辆的目标位置信息。
在又一种可选的实施例中,可以将目标置信度与预设阈值进行比较,在目标置信度大于或等于预设阈值的情况下,说明车辆的初始位置信息的准确度较高,此时为了降低目标追踪算法的计算量,可以直接将车辆的初始位置信息确定为目标位置信息。可选的,在目标置信度为0.9的情况下,由于0.9大于0.8(即预设阈值),则说明获取到的车辆的初始位置信息准确,此时可以直接将车辆的初始位置信息确定为目标位置信息。
在本步骤中,通过将目标置信度与预设阈值进行比较,可以确定是否对车辆的初始位置信息进行更新,进而可以得到更加准确的目标位置信息。
可选地,利用目标更新算法对初始位置信息进行更新,得到目标位置信息,包括:获取图像序列中第一图像的第一位置信息,其中,第一图像为图像序列中对应于第一时刻的图像,目标图像为图像序列中对应于第二时刻的图像,第一时刻是与第二时刻相邻的前一时刻;根据第一位置信息和初始位置信息,确定目标偏移量;基于目标更新算法和目标偏移量对初始位置信息进行更新,得到目标位置信息。
上述的第一图像可以是图像序列中的与第一时刻对应的图像,第一时刻可以是图像序列中的初始时刻。
上述的第一位置信息可以是检测到的第一图像中的车辆(即运动目标)的位置信息。
上述的目标图像可以是图像序列中的与第二时刻相对应的待检测的图像,第二时刻可以是图像序列中,与第一时刻相邻的具有时间间隔的后一时刻。
上述的目标偏移量可以是能够表示车辆的位置在第二时刻时,相对于第一时刻的移动距离的偏移量。
在一种可选的实施例中,首先可以获取第一图像的第一位置信息和目标图像的初始位置信息,其中第一图像为图像序列中第一时刻对应的图像,目标图像为图像序列中第二时刻对应的图像,第二时刻是与第一时刻相邻的具有时间间隔的后一时刻。
在另一种可选的实施例中,首先可以通过目标追踪算法获取第一图像的第一位置信息和目标图像的初始位置信息。需要说明的是获取位置信息不仅限于目标追踪算法,还可以是任意一种能够获取位置信息的算法,在本实施例中,以目标追踪算法为例进行说明。
在另一种可选的实施例中,通过获取初始位置信息和第一位置信息的差值,可以得到目标偏移量,在得到目标偏移量后,可以基于目标更新算法和目标偏移量,对运动目标的初始位置信息进行更新,则可以得到运动目标的目标位置信息。
在又一种可选的实施例中,在得到目标偏移量后,可以基于卡尔曼滤波算法和目标偏移量,对车辆(即运动目标)的初始位置信息进行更新,则可以得到车辆的目标位置信息。需要说明的是,对初始位置信息进行更新可以包括但不限于卡尔曼滤波算法,还可以是任意一种能够对初始位置信息进行更新的算法,在本实施例中,以卡尔曼滤波算法为例进行说明。
在本步骤中,通过目标更新算法和目标偏移量对车辆的初始位置信息进行更新,可以提高目标检测框对运动目标的检测准确度,进而可以得到更准确的车辆的位置信息。
可选地,利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,包括:利用目标追踪算法对目标图像进行检测,得到目标检测框;对目标检测框进行目标识别,得到第一识别结果,其中,第一识别结果用于表示目标检测框中是否存在运动目标;基于第一识别结果确定目标置信度。
上述的目标检测框可以是一种能够表示运动目标在第一图像中的位置的检测框,通过目标检测框,可以确认运动目标在第一图像中的具体位置。
上述的第一识别结果,可以是运动目标完全在目标检测框中,也可以是运动目标不在目标检测框中,还可以是运动目标部分在目标检测框中,但不仅限于此。
在一种可选的实施例中,首先可以通过目标追踪算法对目标图像进行检测,则可以得到目标检测框,其中,目标检测用于表示运动目标在第一图像中的具体位置信息。
在另一种可选的实施例中,在得到目标检测框后,可以对目标检测框进行目标识别,得到第一识别结果,其中,第一识别结果可以表示运动目标在目标检测框中的具体位置信息,例如,可以是运动目标完全在目标检测框中,也可以是运动目标不在目标检测框中,但不仅限于此。
在又一种可选的实施例中,可以根据第一识别结果,通过目标追踪算法得到目标置信度。目标追踪算法可以基于第一识别结果计算出与第一识别结果对应的目标置信度,例如,当第一识别结果为运动目标全部在目标检测框中时,其对应的目标置信度可以为1;当第一识别结果为运动目标不在目标检测框中时,其对应的目标置信度可以为0,但不仅限于此。
在本步骤中,通过第一识别结果确定目标置信度,可以根据预设置信度和目标置信度的比对结果确定目标检测框检测到的运动目标是否准确。
可选地,基于第一识别结果确定目标置信度,包括:响应于识别结果为目标检测框中存在运动目标,对目标检测框进行位置识别,得到第二识别结果,其中,第二识别结果用于表示运动目标是否完全处于目标检测框中的区域;基于第一识别结果和第二识别结果确定目标置信度。
在一种可选的实施例中,响应于识别结果为目标检测框中存在车辆(即运动目标),可以继续对目标检测框进行位置识别,得到第二识别结果,其中,第二识别结果可以表示车辆是否完全处在目标检测框中。
在另一种可选的实施例中,响应于识别结果为目标检测框中存在运动目标,可以继续对目标检测框进行位置识别,则可以得到第二识别结果,例如,可以是运动目标完全处在目标检测框中,还可以是运动目标部分在目标检测框中,但不仅限于此。
在另一种可选的实施例中,目标追踪算法可以根据第一识别结果得到第一置信度,目标追踪算法可以根据第二识别结果得到第二置信度,最后,可以将第一置信度和第二置信度进行比较,选择数值高的置信度作为目标置信度;还可以获取第一置信度和第二置信度的和值,将和值作为目标置信度,但不仅限于此。
在本步骤中,通过第一识别结果和第二识别结果确定目标置信度,可以根据目标置信度判断目标检测框检测到的运动目标是否准确,因此可以得到更准确的运动目标的位置信息。
可选地,基于第一识别结果和第二识别结果确定目标置信度,包括:确定第一识别结果对应的第一置信度;确定第二识别结果对应的第二置信度;基于第一置信度和第二置信度的和值,确定目标置信度。
在一种可选的实施例中,根据第一识别结果,目标追踪算法可以计算出第一识别结果对应的第一置信度;根据第二识别结果,目标追踪算法可以计算出第二识别结果对应的第二置信度,最后,通过获取第一置信度与第二置信度的和值,可以得到目标置信度。
在本步骤中,通过第一识别结果和第二识别结果确定目标置信度,可以根据目标置信度判断目标检测框检测到的运动目标是否准确,因此可以得到更准确的运动目标的位置信息。
可选地,目标追踪算法为深度分类算法。
在一种可选的实施例中,目标追踪算法可以包括但不限于:光流算法、粒子滤波算法、相关滤波算法等,在本实施例中,以深度分类算法为例进行说明。
在本步骤中,通过使用深度分类算法,可以得到更准确的运动目标。
可选地,目标更新算法为卡尔曼滤波算法。
在一种可选的实施例中,目标更新算法可以包括但不限于:匈牙利算法、卡尔曼滤波算法等,在本实施例中,以卡尔曼滤波算法为例进行说明。
图4是根据本公开实施例的一种可选的卡尔曼滤波算法的流程图,如图4所示:
卡尔曼方程如下所示:
其中,上面的为运动方程,表示在已知车辆在k时刻的状态和k+1时刻的控制命令的情况下,车辆在k时刻的状态,xk+1表示在k+1时刻的状态,ωk是状态误差;下面的为预测方程,表示车辆在k时刻状态下观测到距离yk的物体,或者表示距离传感器数据为yk,vk表示传感器误差。
xk-1表示车辆在k-1时刻的初始值。
xk=f(xk-1,uk-1)表示根据k-1时刻的初始值对车辆在k时刻的状态进行更新。
Ek=yk-f(xk-1,uk-1)表示基于k时刻的状态对k时刻车辆的信息进行更新。
xk=xk-1+KkEk表示根据k时刻车辆的状态和信息对状态变量xk进行更新,Kk为卡尔曼增益。
xk表示预测得到的车辆在k时刻的状态。
x0,P0,Q0,R0表示初始化后的滤波值。
一方面,首先获取卡尔曼原始方程,其次获取k-1时刻的初始值,基于初始值对状态方程进行更新,得到状态更新方程,然后基于状态更新方程对信息进行更新,得到信息更新方程。
另一方面,首先初始卡尔曼方程的滤波值,其次基于初始值对误差协方差时间方程进行更新,得到误差协方差时间更新方程,然后基于信息更新方程和误差协方差时间更新方程对自适应过程进行更新,得到自适应过程更新方程,然后基于自适应过程更新方程对卡尔曼增益进行更新,得到卡尔曼增益更新方程,然后基于卡尔曼增益更新方程,可以得到噪声协方差更新至。
最后基于初始值、信息更新方程和卡尔曼增益更新方程,可以得到k时刻的状态估计值。
在本步骤中,通过对置信度较低的位置信息使用卡尔曼滤波算法,可以得到更准确的运动目标的位置信息。
在本公开中,首先获取图像序列中的目标图像,其次通过目标追踪算法对目标图像进行检测得到运动目标的初始位置信息和初始位置信息的目标置信度,最后通过初始位置信息和目标置信度,可以得到更加准确的运动目标的位置信息。容易注意到的是,目标位置信息是通过实时获取的初始位置信息和初始位置信息对应的目标置信度得到的,达到了能够实时获得更加准确的运动目标的位置信息的目的。实现了提高对运动目标进行检测的检测准确率的技术效果,从而解决了相关技术中对运动目标进行检测的检测准确率低的技术问题。
在本公开中,充分利用目标检测算法输出的置信度信息(con f)。对于每个检测框,当置信度conf大于阈值T(实验中T取0.8)时,直接将目标检测的位置信息作为最终的目标物位置信息输出,而不再使用卡尔曼滤波更新后的位置信息。当置信度conf<T时,仍然采用卡尔曼滤波更新后的位置信息作为输出。这样充分利用目标检测的置信度信息,得到更准确的目标物位置。图5是根据本公开实施例的一种可选的优化后的目标追踪算法流程图,优化之后完整的算法流程如下:
步骤S51,图像经过目标检测网络,输出目标物位置信息1(Box1)和置信度conf;
步骤S52,将conf与阈值T做比较;如果conf<T,进入步骤S53;如果conf>T,直接令位置信息Box=Box1,进入步骤S56;
步骤S53,将当前目标物与追踪器(Tracker)进行匹配,获取追踪器标志信息(Tracker ID);
步骤S54,对当前Tracker进行卡尔曼滤波的预测算法,获得目标物的预测位置2(Box2);
步骤S55,使用卡尔曼滤波的更新算法对位置信息Box1,Box2进行更新,得到校准后的位置信息Box;
步骤S56,将位置信息Box作为结果输出。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本公开各个实施例所述的方法。
在本公开中还提供了一种目标检测装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本公开实施例的一种目标检测装置的结构框图,如图6所示,一种目标检测装置600包括:获取模块601,用于获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像;检测模块602,用于利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确;确定模块603,用于基于目标置信度和初始位置信息,确定目标位置信息。
可选地,确定模块包括:判断单元,用于判断目标置信度是否小于预设阈值;更新单元,用于响应于目标置信度小于预设阈值,利用目标更新算法对初始位置信息进行更新,得到目标位置信息;确定单元,用于响应于目标置信度大于或等于预设阈值,直接将初始位置信息确定为目标位置信息。
可选地,更新单元包括:获取子单元,用于获取图像序列中第一图像的第一位置信息,其中,第一图像为图像序列中对应于第一时刻的图像,目标图像为图像序列中对应于第二时刻的图像,第一时刻是与第二时刻相邻的前一时刻;确定子单元,用于根据第一位置信息和初始位置信息,确定目标偏移量;更新子单元,用于基于目标更新算法和目标偏移量对初始位置信息进行更新,得到目标位置信息。
可选地,检测模块包括:检测单元,用于利用目标追踪算法对目标图像进行检测,得到目标检测框;识别单元,用于对目标检测框进行目标识别,得到第一识别结果,其中,第一识别结果用于表示目标检测框中是否存在运动目标;确定单元,用于基于第一识别结果确定目标置信度。
可选地,确定子单元还用于:确定第一识别结果对应的第一置信度;确定第二识别结果对应的第二置信度;基于第一置信度和第二置信度的和值,确定目标置信度。
可选地,检测模块用于利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法为深度分类算法。
可选地,更新单元用于响应于目标置信度小于预设阈值,利用目标更新算法对初始位置信息进行更新,得到目标位置信息,其中,目标更新算法为卡尔曼滤波算法。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
根据本公开的实施例,本公开还提供了一种电子设备,包括存储器和至少一个处理器,该存储器中存储有计算机指令,该处理器被设置为运行计算机指令以执行上述任一项方法实施例中的步骤。
可选地,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本公开中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像;
S2,利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确;
S3,基于目标置信度和初始位置信息,确定目标位置信息。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
根据本公开的实施例,本公开还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该非瞬时计算机可读存储介质中存储有计算机指令,其中,该计算机指令被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述非易失性存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取图像序列中的目标图像,其中,目标图像为图像序列中待检测的当前图像;
S2,利用目标追踪算法对目标图像进行检测,得到运动目标的初始位置信息和初始位置信息的目标置信度,其中,目标追踪算法用于检测图像序列中每张图像的运动目标,目标置信度用于表示初始位置信息是否准确;
S3,基于目标置信度和初始位置信息,确定目标位置信息。
可选地,在本实施例中,上述非瞬时计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的实施例,本公开还提供了一种计算机程序产品。用于实施本公开的方法实施例的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本公开所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM)、随机存取存储器(RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本公开的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本公开原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本公开的保护范围。
Claims (19)
1.一种目标检测方法,包括:
获取图像序列中的目标图像,其中,所述目标图像为所述图像序列中待检测的当前图像;
利用目标追踪算法对所述目标图像进行检测,得到运动目标的初始位置信息和所述初始位置信息的目标置信度,其中,所述目标追踪算法用于检测所述图像序列中每张图像的所述运动目标,所述目标置信度用于表示所述初始位置信息是否准确;
基于所述目标置信度和所述初始位置信息,确定目标位置信息。
2.根据权利要求1所述的方法,其中,基于所述目标置信度和所述初始位置信息,确定所述目标位置信息,包括:
判断所述目标置信度是否小于预设阈值;
响应于所述目标置信度小于所述预设阈值,利用目标更新算法对所述初始位置信息进行更新,得到所述目标位置信息;
响应于所述目标置信度大于或等于所述预设阈值,直接将所述初始位置信息确定为所述目标位置信息。
3.根据权利要求2所述的方法,其中,利用目标更新算法对所述初始位置信息进行更新,得到所述目标位置信息,包括:
获取所述图像序列中第一图像的第一位置信息,其中,所述第一图像为所述图像序列中对应于第一时刻的图像,所述目标图像为所述图像序列中对应于第二时刻的图像,所述第一时刻是与所述第二时刻相邻的前一时刻;
根据所述第一位置信息和所述初始位置信息,确定目标偏移量;
基于所述目标更新算法和所述目标偏移量对所述初始位置信息进行更新,得到所述目标位置信息。
4.根据权利要求1所述的方法,其中,利用目标追踪算法对所述目标图像进行检测,得到运动目标的初始位置信息和所述初始位置信息的目标置信度,包括:
利用所述目标追踪算法对所述目标图像进行检测,得到目标检测框;
对所述目标检测框进行目标识别,得到第一识别结果,其中,所述第一识别结果用于表示所述目标检测框中是否存在所述运动目标;
基于所述第一识别结果确定所述目标置信度。
5.根据权利要求4所述的方法,其中,基于所述第一识别结果确定所述目标置信度,包括:
响应于所述识别结果为所述目标检测框中存在所述运动目标,对所述目标检测框进行位置识别,得到第二识别结果,其中,所述第二识别结果用于表示所述运动目标是否完全处于所述目标检测框中的区域;
基于所述第一识别结果和所述第二识别结果确定所述目标置信度。
6.根据权利要求5所述的方法,其中,基于所述第一识别结果和所述第二识别结果确定所述目标置信度,包括:
确定所述第一识别结果对应的第一置信度;
确定所述第二识别结果对应的第二置信度;
基于所述第一置信度和所述第二置信度的和值,确定所述目标置信度。
7.根据权利要求1所述的方法,其中,所述目标追踪算法为深度分类算法。
8.根据权利要求2所述的方法,其中,所述目标更新算法为卡尔曼滤波算法。
9.一种目标检测装置,包括:
获取模块,用于获取图像序列中的目标图像,其中,所述目标图像为所述图像序列中待检测的当前图像;
检测模块,用于利用目标追踪算法对所述目标图像进行检测,得到运动目标的初始位置信息和所述初始位置信息的目标置信度,其中,所述目标追踪算法用于检测所述图像序列中每张图像的所述运动目标,所述目标置信度用于表示所述初始位置信息是否准确;
确定模块,用于基于所述目标置信度和所述初始位置信息,确定目标位置信息。
10.根据权利要求9所述的装置,其特征在于,确定模块包括:
判断单元,用于判断所述目标置信度是否小于预设阈值;
更新单元,用于响应于所述目标置信度小于所述预设阈值,利用目标更新算法对所述初始位置信息进行更新,得到所述目标位置信息;
确定单元,用于响应于所述目标置信度大于或等于所述预设阈值,直接将所述初始位置信息确定为所述目标位置信息。
11.根据权利要求9所述的装置,其特征在于,更新单元包括:
获取子单元,用于获取所述图像序列中第一图像的第一位置信息,其中,所述第一图像为所述图像序列中对应于第一时刻的图像,所述目标图像为所述图像序列中对应于第二时刻的图像,所述第一时刻是与所述第二时刻相邻的前一时刻;
确定子单元,用于根据所述第一位置信息和所述初始位置信息,确定目标偏移量;
更新子单元,用于基于所述目标更新算法和所述目标偏移量对所述初始位置信息进行更新,得到所述目标位置信息。
12.根据权利要求9所述的装置,其特征在于,检测模块包括:
检测单元,用于利用所述目标追踪算法对所述目标图像进行检测,得到目标检测框;
识别单元,用于对所述目标检测框进行目标识别,得到第一识别结果,其中,所述第一识别结果用于表示所述目标检测框中是否存在所述运动目标;
确定单元,用于基于所述第一识别结果确定所述目标置信度。
13.根据权利要求9所述的装置,其特征在于,确定单元包括:
识别子单元,用于响应于识别结果为所述目标检测框中存在所述运动目标,对所述目标检测框进行位置识别,得到第二识别结果,其中,所述第二识别结果用于表示所述运动目标是否完全处于所述目标检测框中的区域;
确定子单元,用于基于第一识别结果和所述第二识别结果确定所述目标置信度。
14.根据权利要求9所述的装置,其特征在于,确定子单元还用于:
确定第一识别结果对应的第一置信度;
确定第二识别结果对应的第二置信度;
基于所述第一置信度和所述第二置信度的和值,确定所述目标置信度。
15.根据权利要求9所述的装置,其特征在于,检测模块用于利用目标追踪算法对所述目标图像进行检测,得到运动目标的初始位置信息和所述初始位置信息的目标置信度,其中,所述目标追踪算法为深度分类算法。
16.根据权利要求9所述的装置,其特征在于,更新单元用于响应于所述目标置信度小于预设阈值,利用目标更新算法对所述初始位置信息进行更新,得到所述目标位置信息,其中,所述目标更新算法为卡尔曼滤波算法。
17.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的方法。
18.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-8中任一项所述的方法。
19.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210890889.XA CN115294172A (zh) | 2022-07-27 | 2022-07-27 | 目标检测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210890889.XA CN115294172A (zh) | 2022-07-27 | 2022-07-27 | 目标检测方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115294172A true CN115294172A (zh) | 2022-11-04 |
Family
ID=83823491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210890889.XA Pending CN115294172A (zh) | 2022-07-27 | 2022-07-27 | 目标检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115294172A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115861400A (zh) * | 2023-02-15 | 2023-03-28 | 北京百度网讯科技有限公司 | 目标对象检测方法、训练方法、装置以及电子设备 |
-
2022
- 2022-07-27 CN CN202210890889.XA patent/CN115294172A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115861400A (zh) * | 2023-02-15 | 2023-03-28 | 北京百度网讯科技有限公司 | 目标对象检测方法、训练方法、装置以及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109003390B (zh) | 一种商品识别方法、无人售货机及计算机可读存储介质 | |
CN108229456B (zh) | 目标跟踪方法和装置、电子设备、计算机存储介质 | |
US20150310297A1 (en) | Systems and methods for computer vision background estimation using foreground-aware statistical models | |
US20060067562A1 (en) | Detection of moving objects in a video | |
CN108230352B (zh) | 目标对象的检测方法、装置和电子设备 | |
CN109754009B (zh) | 物品识别方法、装置、售货系统和存储介质 | |
US20170358093A1 (en) | Method and apparatus for updating a background model | |
US20220172378A1 (en) | Image processing apparatus, image processing method and non-transitory computer readable medium | |
CN103593672A (zh) | Adaboost分类器在线学习方法及系统 | |
CN104219488A (zh) | 目标图像的生成方法和装置、以及视频监控系统 | |
EP3376438A1 (en) | A system and method for detecting change using ontology based saliency | |
CN115294172A (zh) | 目标检测方法、装置、电子设备及存储介质 | |
Djalalov et al. | An algorithm for vehicle detection and tracking | |
CN114359669A (zh) | 图片分析模型调整方法、装置以及计算机可读存储介质 | |
Hardas et al. | Moving object detection using background subtraction shadow removal and post processing | |
Xie et al. | Robust vehicles extraction in a video-based intelligent transportation systems | |
CN110163029B (zh) | 一种图像识别方法、电子设备以及计算机可读存储介质 | |
CN107886524B (zh) | 一种电梯门运动轨迹识别方法 | |
Yu et al. | Length-based vehicle classification in multi-lane traffic flow | |
CN113723431A (zh) | 图像识别方法、装置以及计算机可读存储介质 | |
CN113888599A (zh) | 基于标签统计和结果后处理的目标检测系统运行时监测方法 | |
CN113989720A (zh) | 目标检测方法、训练方法、装置、电子设备及存储介质 | |
CN113673395A (zh) | 一种车辆轨迹的处理方法及装置 | |
Chandorkar et al. | Vehicle detection and speed tracking | |
Amézquita et al. | Dealing with occlusion in a probabilistic object tracking method |
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 |