CN108229307B - 用于物体检测的方法、装置和设备 - Google Patents
用于物体检测的方法、装置和设备 Download PDFInfo
- Publication number
- CN108229307B CN108229307B CN201711175559.8A CN201711175559A CN108229307B CN 108229307 B CN108229307 B CN 108229307B CN 201711175559 A CN201711175559 A CN 201711175559A CN 108229307 B CN108229307 B CN 108229307B
- Authority
- CN
- China
- Prior art keywords
- undetermined
- targets
- category
- target
- image
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/584—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of vehicle lights or traffic lights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
- G06T2207/30261—Obstacle
Abstract
本申请实施方式公开了用于物体检测的方法、介质、装置以及电子设备,其中的方法包括:获取待检测图像中的多个待定目标;确定所述多个待定目标分别针对各类别的置信度,根据所述置信度确定多个待定目标所属类别;并且,确定所述多个待定目标分别针对每一类别的位置偏移值;将所述多个待定目标各自所属类别所对应的位置偏移值作为所述多个待定目标的位置偏移值;根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别。本申请实施方式能够较好的适用于对实时性要求较高的物体检测应用场景中。
Description
技术领域
本申请涉及计算机视觉技术,尤其是涉及一种用于物体检测的方法、装置、电子设备以及计算机可读存储介质。
背景技术
在图像识别等计算机视觉领域中,往往需要快速准确的实现物体尤其是通用物体的检测。
现有的通用物体检测通常包括:物体定位过程和物体类别识别过程;其中的物体定位过程主要用于确定出图像中的物体的外接框,而物体类别识别过程主要用于确定出物体所属类别。
现有的物体定位的实现方式通常为:利用Selective Search(选择性搜索)算法或者RPN(Region Proposal Network,候选区域生成网络)等方式获得图像中可能是物体的多个候选框,再通过卷积神经网络对各候选框进行回归处理,以使候选框的位置更加精准。
现有的物体类别识别的实现方式通常为:针对物体定位过程所确定出的候选框,将CNN(Convolutional Neural Network,卷积神经网络)作为分类器,从而可以通过CNN确定出每一个候选框属于各预设类别的置信度,并将置信度最高的类别作为候选框所属类别。
发明内容
本申请实施方式提供一种用于物体检测的方法、装置以及电子设备。
根据本申请实施方式的一个方面,提供了一种用于物体检测的方法,所述方法包括:获取待检测图像中的多个待定目标;确定所述多个待定目标分别针对各类别的置信度,根据所述置信度确定多个待定目标所属类别;并且,确定所述多个待定目标分别针对每一类别的位置偏移值;将所述多个待定目标各自所属类别所对应的位置偏移值作为所述多个待定目标的位置偏移值;根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别。
在本申请一实施方式中,所述获取待检测图像中的多个待定目标的步骤包括:获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标。
在本申请又一实施方式中,所述获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标的步骤包括:获取待检测图像的特征图;针对特征图中的一个特征点而言,根据基准框配置信息形成该特征点的基准框,且该特征点的一个基准框被作为一个待定目标。
在本申请再一实施方式中,所述获取待检测图像的特征图的步骤包括:将待检测图像提供给卷积神经网络中的主干网络;所述主干网络输出的特征图被提供给所述卷积神经网络中的滤波层,以由所述滤波层根据预设滑窗对所述特征图进行滤波处理,且所述滤波处理后的特征图被作为所述待检测图像的特征图。
在本申请再一实施方式中,所述获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标的步骤包括:获取待检测图像的特征图;基于基准框配置信息对所述特征图进行池化处理,以形成多个新的特征图,且一个新的特征图被作为一个待定目标。
在本申请再一实施方式中,所有预设区域大小包括:三种不同的长度/宽度,所有预设区域大小包括:三种不同的长宽比,且所有预设区域大小包括:基于所述三种不同的长度/宽度和三种不同的长宽比所形成的九个预设区域大小。
在本申请再一实施方式中,所述各类别包括:至少两种物体类别以及一个背景类别。
在本申请再一实施方式中,所述确定所述多个待定目标分别针对各类别的置信度,并根据所述置信度确定多个待定目标所属类别的步骤包括:针对一个待定目标,计算该待定目标分别属于每一类别的置信度,并将最高置信度对应的类别作为该待定目标所属类别。
在本申请再一实施方式中,所述确定多个待定目标分别针对每一类别的位置偏移值的步骤包括:针对一个待定目标,计算该待定目标针对每一类别的上偏移值、下偏移值、左偏移值以及右偏移值。
在本申请再一实施方式中,所述待定目标的位置信息包括:待定目标的外接框位置信息。
在本申请再一实施方式中,所述根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别的步骤包括:从所有待定目标中选取出置信度满足预设置信度要求的待定目标;根据所述选取出的多个待定目标的位置偏移值形成待检测图像中的外接框位置信息;将所述选取出的多个待定目标所属类别作为相应外接框所属类别。
在本申请再一实施方式中,由卷积神经网络实现所述确定所述多个待定目标分别针对各类别的置信度,并根据所述置信度确定多个待定目标所属类别;并且,确定所述多个待定目标分别针对每一类别的位置偏移值的步骤,所述方法还包括:训练所述卷积神经网络的步骤,且所述训练所述卷积神经网络的步骤包括:从图像样本集合中获取标注有至少一个标准位置信息和标准位置所属类别的图像样本;获取图像样本中的多个待定目标;利用卷积神经网络中的一卷积层确定多个待定目标分别针对各类别的置信度,并根据所述置信度确定多个待定目标所属类别;利用卷积神经网络中的另一卷积层确定多个待定目标分别针对每一类别的位置偏移值;将多个待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值;计算多个待定目标相对于相应的标准位置的标准位置偏移值;利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应的标准位置的类别的位置偏移值与相应的标准位置偏移值的误差,利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应标准位置所属类别的置信度与标准位置所属类别之间的误差,并将所述误差在所述卷积神经网络中反向传播;直到从图像样本集合中获取的图像样本的数量达到预定数量,且在误差属于预定范围的情况下,所述卷积神经网络成功训练完成。
在本申请再一实施方式中,所述获取图像样本中的多个待定目标的步骤包括:获取图像样本中的基于至少一个预设区域大小而形成的多个待定目标。
在本申请再一实施方式中,所述标注位置包括:标注外接框。
在本申请再一实施方式中,所述计算多个待定目标相对于相应的标准位置的标准位置偏移值的步骤包括:确定多个待定目标各自对应的重叠面积最大的标准外接框,并分别计算多个待定目标相对于重叠面积最大的标准外接框的标准位置偏移值。
在本申请再一实施方式中,所述部分待定目标包括:从多个待定目标中的多个正待定目标中选取出的正待定目标以及从多个待定目标中的多个负待定目标中选取出的负待定目标,且选取出的正待定目标和选取出的负待定目标满足预定比例;针对一待定目标而言,如果所述待定目标与其重叠面积最大的标准外接框之间的重叠面积与所述待定目标和标准外接框共同覆盖的面积的比值大于第一比例阈值,则所述待定目标为正待定目标;而如果所述比值小于第二比例阈值,则所述待定目标为负待定目标。
根据本申请实施方式的一个方面,提供了一种用于物体检测的装置,包括:获取待定目标模块,用于获取待检测图像中的多个待定目标;预测类别和位置偏移值模块,用于确定所述多个待定目标分别针对各类别的置信度,根据所述置信度确定多个待定目标所属类别;并且,确定所述多个待定目标分别针对每一类别的位置偏移值;确定位置偏移模块,用于将所述多个待定目标各自所属类别所对应的位置偏移值作为所述多个待定目标的位置偏移值;确定检测结果模块,用于根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别。
在本申请一实施方式中,所述获取待定目标模块具体用于:获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标。
在本申请又一实施方式中,所述获取待定目标模块包括:第一获取待定目标子模块,用于获取待检测图像的特征图;针对特征图中的一个特征点而言,根据基准框配置信息形成该特征点的基准框,且该特征点的一个基准框被作为一个待定目标。
在本申请再一实施方式中,所述获第一获取待定目标子模块具体用于:将待检测图像提供给卷积神经网络中的主干网络;所述主干网络输出的特征图被提供给所述卷积神经网络中的滤波层,以由所述滤波层根据预设滑窗对所述特征图进行滤波处理,且所述滤波处理后的特征图被作为所述待检测图像的特征图。
在本申请再一实施方式中,所述获取待定目标模块包括:第二获取待定目标子模块,用于获取待检测图像的特征图;基于基准框配置信息对所述特征图进行池化处理,以形成多个新的特征图,且一个新的特征图被作为一个待定目标。
在本申请再一实施方式中,所有预设区域大小包括:三种不同的长度/宽度,所有预设区域大小包括:三种不同的长宽比,且所有预设区域大小包括:基于所述三种不同的长度/宽度和三种不同的长宽比所形成的九个预设区域大小。
在本申请再一实施方式中,所述各类别包括:至少两种物体类别以及一个背景类别。
在本申请再一实施方式中,所述预测类别和位置偏移值模块具体用于:针对一个待定目标,计算该待定目标分别属于每一类别的置信度,并将最高置信度对应的类别作为该待定目标所属类别。
在本申请再一实施方式中,所述预测类别和位置偏移值模块具体用于:针对一个待定目标,计算该待定目标针对每一类别的上偏移值、下偏移值、左偏移值以及右偏移值。
在本申请再一实施方式中,所述待定目标的位置信息包括:待定目标的外接框位置信息。
在本申请再一实施方式中,所述确定检测结果模块具体用于:从所有待定目标中选取出置信度满足预设置信度要求的待定目标;根据所述选取出的多个待定目标的位置偏移值形成待检测图像中的外接框位置信息;将所述选取出的多个待定目标所属类别作为相应外接框所属类别。
在本申请再一实施方式中,在预测类别和位置偏移值模块利用卷积神经网络实现的情况下,所述装置还包括:训练模块,所述训练模块用于:从图像样本集合中获取标注有至少一个标准位置信息和标准位置所属类别的图像样本;获取图像样本中的多个待定目标;利用卷积神经网络中的一卷积层确定多个待定目标分别针对各类别的置信度,并根据所述置信度确定多个待定目标所属类别;利用卷积神经网络中的另一卷积层确定多个待定目标分别针对每一类别的位置偏移值;将多个待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值;计算多个待定目标相对于相应的标准位置的标准位置偏移值;利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应的标准位置的类别的位置偏移值与相应的标准位置偏移值的误差,利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应标准位置所属类别的置信度与标准位置所属类别之间的误差,并将所述误差在所述卷积神经网络中反向传播;直到从图像样本集合中获取的图像样本的数量达到预定数量,且在误差属于预定范围的情况下,所述卷积神经网络成功训练完成。
在本申请再一实施方式中,所述训练模块具体用于:获取图像样本中的基于至少一个预设区域大小而形成的多个待定目标。
在本申请再一实施方式中,所述标注位置包括:标注外接框。
在本申请再一实施方式中,所述训练模块具体用于:确定多个待定目标各自对应的重叠面积最大的标准外接框,并分别计算多个待定目标相对于重叠面积最大的标准外接框的标准位置偏移值。
在本申请再一实施方式中,所述部分待定目标包括:从多个待定目标中的多个正待定目标中选取出的正待定目标以及从多个待定目标中的多个负待定目标中选取出的负待定目标,且选取出的正待定目标和选取出的负待定目标满足预定比例;针对一待定目标而言,如果所述待定目标与其重叠面积最大的标准外接框之间的重叠面积与所述待定目标和标准外接框共同覆盖的面积的比值大于第一比例阈值,则所述待定目标为正待定目标;而如果所述比值小于第二比例阈值,则所述待定目标为负待定目标。
根据本申请实施方式的再一个方面,提供了一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述方法实施方式中的各步骤。
根据本申请实施方式的再一个方面,提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述方法实施方式中的各步骤。
基于本申请上述实施方式提供的用于物体检测的方法、装置和设备,本申请实施方式通过在确定各待定目标所属类别的同时,确定各待定目标分别针对每一类别的位置偏移值,使确定类别的过程和计算位置偏移的过程可以并行执行,从而可以避免两个过程必须先后顺序执行而对物体检测实时性的影响;通过将各待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值,可以通过简单的选择操作而快速的确定出各待定目标的位置偏移值,避免了确定位置偏移值耗时较长而对物体检测实时性的影响;通过上述过程本申请可以基于置信度从所有待定目标中快速的选取出相应的待定目标,基于选取出的相应的待定目标的位置偏移值快速准确的确定出其位置信息;另外,在本申请预先设置的类别包括三个或者更多的情况下,本申请提供的技术方案可以实现通用物体检测;由此可知,本申请提供的技术方案有利于提高物体检测的实时性,从而使本申请提供的技术方案能够较好的适用于对实时性要求较高的物体检测应用场景中。
下面通过附图和实施方式,对本申请的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本申请的实施方式,并且连同描述一起用于解释本申请的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本申请,其中:
图1为本申请的一个应用场景示意图;
图2为本申请方法一个实施方式的流程图;
图3为本申请方法另一个实施方式的流程图;
图4为本申请实施方式对卷积神经网络进行训练的一个例子的流程图;
图5为本申请实施方式对卷积神经网络进行训练的一个例子的示意图;
图6为本申请装置一个实施方式的具体结构示意图;
图7为本申请电子设备一个实施方式的结构示意图;
图8为本申请计算机存储介质一个实施方式的示意图。
具体实施方式
现在将参照附图来详细描述本申请的各种示例性实施方式。应该注意到:除非另外具体说明,否则在这些实施方式中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施方式的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本申请实施方式可以应用于计算机系统/服务器,其可与众多其它通用或者专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑以及数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或者远程计算系统存储介质上。
应用场景总览
首先参考图1,示意性地示出了根据本申请实施方式的可以在其中实现的应用场景。
图1中,汽车100中安装有图像采集装置,该图像采集装置能够采集到汽车100外部的空间的图像,汽车100在处于自动驾驶过程中,需要针对图像采集装置所采集到的图像进行物体检测,以辨识道路上的行人110、动物、斑马线以及交通信号灯120等物体;例如,通过对图像采集装置所采集到的图像进行物体检测,在确定出前方的交通信号灯120由绿变红时,通过及时控制汽车100的刹车装置等部件,使处于行驶状态的汽车100安全地停在前车的后方或者道路上的停车线的后方;后续,在确定出前方的交通信号灯120由红变绿、前方斑马线上没有行人110、且汽车100与前车保持安全距离等情况下,通过及时控制汽车100的刹车装置等部件,使处于停止状态的汽车100继续在道路上前行。
然而,本领域技术人员完全可以理解,本申请实施方式的适用场景不受到该框架任何方面的限制。
下面具体介绍本申请的非限制性实施方式。
本申请实施方式的用于物体检测的方法也可以称为用于通用物体检测的方法。图2为本申请一实施方式的用于物体检测的方法流程图。如图2所示,本申请的用于物体检测的方法包括:步骤S200、步骤S210、步骤S220以及步骤S230。下面对图2中的各步骤分别进行说明。
S200、获取待检测图像中的多个待定目标。
在一个可选示例中,本申请中的待检测图像可以具体为图片或者实时摄取的视频中的一帧。本申请获取待检测图像中的多个待定目标可以为:获取待检测图像中的基于至少一个预设区域大小(通常为多个预设区域大小)而形成的多个待定目标。本申请中的预设区域大小可以由预先设置的基准框配置信息确定;待定目标可以为待检测图像的特征图中的特征点的基准框,也可以为在待检测图像的特征图的基础上而形成的小特征图(即局部特征图)。
获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标的第一个具体例子为:首先,获取待检测图像的特征图;然后,针对该特征图中的任意一个特征点而言,根据预先设置的基准框配置信息形成该特征点的多个基准框,从而可以获得特征图中的所有特征点的所有基准框,而每一个特征点的每一个基准框均被作为一个待定目标。
获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标的第二个具体例子为:首先,获取待检测图像的特征图;然后,基于预先设置的基准框配置信息对上述特征图进行池化处理,从而可以形成多个新的特征图(即多个小特征图/多个局部特征图),而每一个新的特征图均被作为一个待定目标。
在上述第一个和第二个具体例子中,获取待检测图像的特征图的一种方式可以为:利用现有的VGG16(Visual Geometry Group,视觉组)网络形成本申请实施方式的卷积神经网络中的主干网络,通过将待检测图像提供给该主干网络,该主干网络即可基于VGG16技术输出待检测图像的特征图,从而本申请实施方式可以基于该主干网络的输出获取到待检测图像的特征图。
在上述第一个和第二个具体例子中,获取待检测图像的特征图的另一种方式可以为:利用现有的GoogleNet(谷歌网络)形成本申请实施方式的卷积神经网络中的主干网络,通过将待检测图像提供给该主干网络,该主干网络即可基于GoogleNet技术输出待检测图像的特征图,从而本申请实施方式可以基于该主干网络的输出获取到待检测图像的特征图。
在上述第一个和第二个具体例子中,获取待检测图像的特征图的再一种方式可以为:利用现有的ResNet形成本申请实施方式的卷积神经网络中的主干网络,通过将待检测图像提供给该主干网络,该主干网络即可基于ResNet技术输出待检测图像的特征图,从而本申请实施方式可以基于该主干网络的输出获取到待检测图像的特征图。
在上述第一个具体例子中,本申请实施方式可以将主干网络输出的特征图作为最终获取到的特征图,本申请实施方式也可以对主干网络输出的特征图进行滤波处理,从而基于主干网络输出的特征图中的所有特征点形成具有相同特征点数量的新的特征图,并将该新特征图作为最终获取到的待检测图像的特征图。上述滤波处理的实现方式可以为:设定主干网络输出的所有特征点形成一个特征图,卷积神经网络中的滤波层利用预设滑窗(例如,3×3的滑窗)依次从特征图中选取预定数量的特征点(例如,9个特征点),并利用每一次选取出的所有特征点形成一个新的特征点,滤波层输出其所获得的所有新的特征点,且滤波层输出的所有新的特征点同样可以形成一个特征图,然而,新的特征图中的每一个特征点所对应的待检测图像中的区域比主干网络输出的特征图中的相应特征点所对应的待检测图像中的区域更大。本申请实施方式不限制滤波层对特征图进行滤波处理的具体实现过程。本申请实施方式通过对主干网络输出的特征图进行滤波处理形成新的特征图,有利于提高确定出的外接框位置信息以及外接框所属类别的准确性,从而有利于提高物体检测的准确性。
在一个可选示例中,本申请实施方式通过预先设置的基准框配置信息来定义基准框(即Anchor,锚点)的数量以及尺寸,即基准框的数量及大小均是已知的,且每一个基准框在图像中的位置与基准框对应的特征点相关。在通常情况下,所有基准框的尺寸并不完全相同,即所有基准框的面积并不完全相同,如所有基准框的长度存在差异,所有基准框的宽度存在差异,且所有基准框的长宽比存在差异。
一个具体的例子,本申请实施方式的基准框配置信息中预先设置了三种不同的长度,并预先设置了三种不同的长宽比,从而利用预先设置的三种不同的长度以及三种不同的长宽比,可以形成九个不同形状的基准框;具体的,预先设置的三种不同的长度可以分别为64、128以及256(单位为像素),预先设置的三种不同的长宽比可以分别为0.5、1.0以及2.0,则由上述三种不同的长度以及三种不同的长宽比所形成的九个基准框可以表示为:64×32、64×64、64×128、128×64、128×128、128×256、256×128、256×256以及256×512。
另一个具体的例子,本申请实施方式的基准框配置信息中预先设置了三种不同的宽度,并预先设置了三种不同的长宽比,从而利用预先设置的三种不同的宽度以及三种不同的长宽比,可以形成九个不同形状的基准框。
再一个具体的例子,本申请实施方式的基准框配置信息预先针对九个基准框分别设置其各自的长度以及宽度,从而可以明确的确定出九个形状各异的基准框。
本申请中的基准框的数量以及各基准框的尺寸大小可以根据实际经验设置,本申请实施方式不限制基准框的具体数量,也不限制基准框的尺寸。
S210、确定多个待定目标分别针对各类别的置信度,根据置信度确定多个待定目标所属类别;并且,确定多个待定目标分别针对每一类别的位置偏移值。
在一个可选示例中,本申请可以利用卷积神经网络中的一卷积层确定多个待定目标(例如,所有待定目标)分别针对各类别的置信度,并根据获得的置信度确定多个待定目标分别所属类别。本申请中的卷积神经网络可以是利用大量的带有标注的图像样本训练而成的,该卷积神经网络的训练过程的一个具体例子可以参见下述针对图4的描述,在此不再重复说明。本申请中的神经网络通常包括:主干网络、滤波层/池化层以及两个卷积层(例如,第一卷积层和第二卷积层)。
在一个可选示例中,本申请预先设置有至少三种类别,例如,至少两种物体类别以及一个背景类别。一个具体的例子,预先针对人、狗、火车以及椅子等不同种类的物体设置了20种物体类别,并预先针对背景设置了背景类别,总共21种类别。类别的数量以及待定目标的数量(例如,基准框的数量)会决定卷积神经网络中的相应卷积层的输出维度。本申请不限制物体类别的数量以及物体类别所针对的物体的具体内容等。
在一个可选示例中,本申请实施方式可以通过卷积层针对置信度的计算来确定待定目标所属类别,例如,通过RPN中的用于预测置信度的卷积层等针对置信度的计算来确定待定目标所属类别。一个具体的例子,设定预先设置有21种类别,即第一物体类别、第二物体类别、……、第二十物体类别以及背景类别,在上述设定的情况下,针对第一待定目标而言,可以利用卷积神经网络中的一卷积层计算出第一待定目标属于第一物体类别的置信度、第一待定目标属于第二物体类别的置信度、……、第一待定目标属于第二十物体类别的置信度以及第一待定目标属于背景类别的置信度(总共21个置信度),通过比较这21个置信度,可以确定出一个最高置信度,从而可以将该最高置信度对应的类别作为第一待定目标所属类别;以此类推,本申请实施方式可以确定出所有待定目标分别所属类别。
在一个可选示例中,本申请可以利用卷积神经网络中的另一卷积层确定多个待定目标(例如,所有待定目标)分别针对每一类别的位置偏移值。
在一个可选示例中,本申请中的位置偏移值用于确定待定目标的在属于某一类别时的位置信息。本申请中的位置偏移值通常包括:上偏移值、下偏移值、左偏移值以及右偏移值,即本申请实施方式可以利用卷积层计算出待定目标针对每一类别的上偏移值、下偏移值、左偏移值以及右偏移值;其中的上偏移值表示待定目标的顶边在竖直方向上的偏移量,其中的下偏移值表示待定目标的底边在竖直方向上的偏移量,其中的左偏移值表示待定目标的左侧边在水平方向上的偏移量,其中的右偏移值表示待定目标的右侧边在水平方向上的偏移量。
一个更具体的例子,设定预先设置有21种类别,即第一物体类别、第二物体类别、……、第二十物体类别以及背景类别,在上述设定的情况下,针对第一待定目标而言,可以利用卷积神经网络中的一卷积层计算出第一待定目标针对第一物体类别的上偏移值、下偏移值、左偏移值和右偏移值、第一待定目标针对第二物体类别的上偏移值、下偏移值、左偏移值和右偏移值、……、第一待定目标针对第二十物体类别的上偏移值、下偏移值、左偏移值和右偏移值以及第一待定目标针对背景类别的上偏移值、下偏移值、左偏移值和右偏移值(总共4×21个偏移值);以此类推,本申请实施方式可以计算出所有待定目标分别针对二十一个类别的上偏移值、下偏移值、左偏移值以及右偏移值。
由上述描述可知,本申请中的确定待定目标所属类别的过程与计算待定目标针对每一类别的位置偏移值的过程,两者之间没有相互依赖的关系,因此,这两个过程完全可以并行执行,从而可以避免两个过程需要先后执行而导致的时间成本增加的现象,有利于提高物体检测的实时性。
S220、将多个待定目标(例如,所有待定目标)各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值(例如,所有待定目标各自的位置偏移值)。
在一个可选示例中,本申请实施方式可以从上述确定出的一个待定目标所属类别以及上述计算出的该待定目标针对各类别的位置偏移值最终确定出该待定目标的位置偏移值,即从已经计算出的该待定目标针对各类别的位置偏移值中挑选出上述确定出的该待定目标所属类别对应的位置偏移值,并将该挑选出的位置偏移值作为该待定目标的位置偏移值,以此类推,本申请实施方式可以确定出所有待定目标的位置偏移值。
一个具体的例子,设定已经利用卷积神经网络中的一卷积层确定出第一待定目标属于第一物体类别,而且已经利用卷积神经网络中的另一卷积层计算出第一待定目标针对第一物体类别的上偏移值、下偏移值、左偏移值和右偏移值、第一待定目标针对第二物体类别的上偏移值、下偏移值、左偏移值和右偏移值、……、第一待定目标针对第二十物体类别的上偏移值、下偏移值、左偏移值和右偏移值以及第一待定目标针对背景类别的上偏移值、下偏移值、左偏移值和右偏移值(总共4×21个偏移值),在上述各设定的情况下,本申请实施方式可以将已经计算出的第一待定目标针对第一物体类别的上偏移值、下偏移值、左偏移值和右偏移值作为第一待定目标的位置偏移值;以此类推,本申请实施方式可以确定出所有待定目标的位置偏移值。
S230、根据多个待定目标所属类别(例如,所有待定目标所属类别)、多个待定目标的位置偏移值(例如,所有待定目标的位置偏移值)以及多个待定目标所属类别的置信度(例如,所有待定目标所属类别的置信度)确定待检测图像中各个待定目标的位置信息和所属类别。
在一个可选示例中,本申请中的待定目标的位置信息可以为待定目标的外接框位置信息。本申请通常会从所有待定目标中选取出部分待定目标,并利用选取出的待定目标的位置偏移值形成外接框,且选取出的待定目标各自所属类别即为相应的外接框所属类别。
在一个可选示例中,本申请实施方式可以利用预设置信度要求来选取出部分待定目标,且该预设置信度要求可以具体为置信度阈值(置信度阈值如0.8)等;一个具体的例子,本申请实施方式可以从所有待定目标中选取出置信度超过置信度阈值(如大于等于0.8)的待定目标,之后,可以利用选取出的各待定目标的位置偏移值形成相应外接框位置信息,并将选取出的各待定目标所属类别作为相应外接框所属类别。另外,本申请实施方式也可以利用比例或者外接框数量阈值来选取出部分待定目标,本申请实施方式不限制从所有待定目标中选取出部分待定目标的具体实现方式。
一个更具体的例子,设定通过上述步骤S210和步骤S220确定出第一待定目标的置信度为0.9,第一待定目标属于第一物体类别,且第一待定目标的位置偏移值分别为y1、y2、x1以及x2,在预设置信度要求为置信度不低于置信度阈值0.8的情况下,可以根据第一待定目标对应图像中的区域、y1、y2、x1以及x2确定出第一外接框在图像中的位置信息,并确定出该第一外接框所属类别为第一物体类别。
图3为本申请的用于物体检测的方法的另一流程图。如图3所示,本申请的用于物体检测的方法主要包括:步骤S300、步骤S310、步骤S320以及步骤S330。下面对图3中的各步骤分别进行说明。
S300、获取待检测图像的多个特征点,例如,获取待检测图像的各特征点(即所有特征点)。
在一个可选示例中,本申请中的待处理图像可以为呈现静态的图片或者照片等图像,也可以为呈现动态的视频中的视频帧等。本申请实施方式可以利用现有的多种方式来获取待检测图像的各特征点,如利用现有的VGG16网络或者GoogleNet或者ResNet形成本申请实施方式的卷积神经网络中的主干网络,从而通过将待检测图像提供给该主干网络,该主干网络即可基于VGG16或者GoogleNet或者ResNet技术输出待检测图像的各特征点。
在一个可选示例中,本申请可以将主干网络输出的各特征点作为最终获取到的待检测图像的各特征点,本申请也可以对主干网络输出的各特征点进行滤波处理,从而基于主干网络输出的所有特征点形成具有相同数量的新的特征点,并将所有新的特征点作为最终获取到的待检测图像的各特征点。上述滤波处理的实现方式可以为:设定主干网络输出的所有特征点形成一个特征图,卷积神经网络中的滤波层利用滑窗(例如,3×3的滑窗)依次从特征图中选取预定数量的特征点(例如,9个特征点),并利用每一次选取出的所有特征点形成一个新的特征点,滤波层输出其所获得的所有新的特征点,且滤波层输出的所有新的特征点同样可以形成一个特征图,然而,新的特征图中的每一个特征点所对应的待检测图像中的区域会更大。本申请不限制滤波层对特征图进行滤波处理的具体实现过程。本申请通过对主干网络输出的各特征点进行滤波处理形成新的特征点,能够更准确的确定出外接框位置信息以及外接框所属类别,从而有利于提高物体检测的准确性。
S310、针对每一个特征点:确定该特征点的各基准框所属类别及其置信度,并确定该特征点的各基准框针对每一类别的位置偏移值。
在一个可选示例中,本申请可以利用卷积神经网络中的一卷积层确定该特征点的各基准框所属类别及其置信度。本申请中的卷积神经网络是利用大量的带有标注的图像样本训练而成的,该卷积神经网络的训练过程的一个具体例子可以参见下述实施方式三中的描述。本申请中的卷积神经网络通常包括:主干网络、滤波层以及至少两个卷积层(如第一卷积层和第二卷积层)。
在一个可选示例中,本申请实施方式预先定义了基准框(即Anchor,锚点)的数量及尺寸,即基准框的数量以及大小均是已知的,且基准框在图像中的位置与基准框对应的特征点相关。在通常情况下,所有基准框的尺寸并不完全相同,即所有基准框的面积并不完全相同,如所有基准框的长度存在差异,所有基准框的宽度存在差异,且所有基准框的长宽比存在差异。
一个具体的例子,本申请实施方式可以预先设置三种不同的长度,并预先设置三种不同的长宽比,从而利用预先设置的三种不同的长度以及三种不同的长宽比,可以形成九个不同形状的基准框;例如,预先设置的三种不同的长度分别为64、128以及256(单位为像素),预先设置的三种不同的长宽比分别为0.5、1.0以及2.0,则由上述三种不同的长度以及三种不同的长宽比所形成的九个基准框可以表示为:64×32、64×64、64×128、128×64、128×128、128×256、256×128、256×256以及256×512。
另一个具体的例子,本申请实施方式可以预先设置三种不同的宽度,并预先设置三种不同的长宽比,从而利用预先设置的三种不同的宽度以及三种不同的长宽比,可以形成九个不同形状的基准框。
再一个具体的例子,本申请实施方式可以针对九个基准框分别设置其各自的长度以及宽度,从而可以明确的确定出九个形状各异的基准框。
本申请中的基准框的数量及各基准框的尺寸可以根据实际经验设置,本申请实施方式不限制基准框的具体数量,也不限制基准框的尺寸。
在一个可选示例中,本申请实施方式预先设置有至少三种类别,如至少两种物体类别以及一个背景类别。一个具体的例子,预先针对人、狗、火车以及椅子等不同种类的物体设置了20种物体类别,并预先针对背景设置了背景类别,总共21种类别。类别的数量以及基准框的数量会决定卷积神经网络中的相应卷积层的输出维度,例如,在预先设置了21种类别的情况下,RPN中的用于预测置信度的卷积层的输出维度可以为:21×9×h×w,其中,21表示21种类别,9表示一个特征点的9个基准框,h表示特征图的高度,w表示特征图的宽度。本申请不限制物体类别的数量以及物体类别所针对的物体的具体内容等。
在一个可选示例中,本申请实施方式可以通过卷积层针对置信度的计算来确定基准框所属类别,例如,通过RPN中的用于预测置信度的相应卷积层等针对置信度的计算来确定基准框所属类别。
一个具体例子,针对特征图中的第一特征点而言,设定第一特征点对应九个基准框,即第一基准框至第九基准框,且设定预先设置有21种类别,即第一物体类别、第二物体类别、……、第二十物体类别以及背景类别,在上述设定的情况下,可以利用卷积神经网络中的一卷积层计算出第一基准框属于第一物体类别的置信度、第一基准框属于第二物体类别的置信度、……第一基准框属于第二十物体类别的置信度以及第一基准框属于背景类别的置信度(总共21个置信度),通过比较这21个置信度,可以确定出一个最高置信度,从而可以将该最高置信度对应的类别作为第一基准框所属类别;以此类推,本申请实施方式可以确定出第一特征点的第一基准框至第九基准框分别所属类别(总共9个类别),进而本申请实施方式可以确定出特征图中的所有特征点的第一基准框至第九基准框分别所属类别(总共N×9个类别,其中N为特征图所包含的特征点的数量)。
在一个可选示例中,本申请中的位置偏移值通常包括:上偏移值、下偏移值、左偏移值以及右偏移值,本申请实施方式可以利用另一卷积层计算出基准框针对每一类别的上偏移值、下偏移值、左偏移值以及右偏移值;其中的上偏移值表示基准框的顶边在竖直方向上的偏移量,其中的下偏移值表示基准框的底边在竖直方向上的偏移量,其中的左偏移值表示基准框的左侧边在水平方向上的偏移量,其中的右偏移值表示基准框的右侧边在水平方向上的偏移量。
一个更为具体的例子,针对特征图中的第一特征点而言,设定第一特征点对应九个基准框,即第一基准框至第九基准框,且设定预先设置有21种类别,即第一物体类别、第二物体类别、……、第二十物体类别以及背景类别,在上述设定的情况下,可以利用卷积神经网络中的一卷积层计算出第一基准框针对第一物体类别的上偏移值、下偏移值、左偏移值和右偏移值、第一基准框针对第二物体类别的上偏移值、下偏移值、左偏移值和右偏移值、……、第一基准框针对第二十物体类别的上偏移值、下偏移值、左偏移值和右偏移值以及第一基准框针对背景类别的上偏移值、下偏移值、左偏移值和右偏移值(总共4×21个偏移值);以此类推,本申请实施方式可以计算出第一特征点的第一基准框至第九基准框分别针对二十一个类别的上偏移值、下偏移值、左偏移值以及右偏移值(总共9×4×21个偏移值),进而本申请实施方式可以确定出特征图中的所有特征点的第一基准框至第九基准框分别针对二十一个类别的上偏移值、下偏移值、左偏移值以及右偏移值(总共N×9×4×21个偏移值,其中N为特征图所包含的特征点的数量)。
由上述描述可知,本申请中的确定基准框所属类别的过程(即步骤S310)与计算基准框针对每一类别的位置偏移值的过程(即步骤S310),两个过程之间并不存在相互依赖的关系,因此,这两个过程完全可以并行执行,从而可以避免两个过程需要先后执行而导致的时间成本增加的现象,有利于提高物体检测的实时性。
S320、针对每一个特征点的每一个基准框,将该基准框所属类别所对应的位置偏移值作为该基准框的位置偏移值。
在一个可选示例中,本申请实施方式可以从上述确定出的一个基准框所属类别以及上述计算出的该基准框针对各类别的位置偏移值最终确定出该基准框的位置偏移值,即从上计算出的该基准框针对各类别的位置偏移值中挑选出上述确定出的该基准框所属类别对应的位置偏移值,并将该挑选出的位置偏移值作为该基准框的位置偏移值,从而本申请实施方式可以确定出所有基准框的位置偏移值。
一个具体的例子,设定已经利用卷积神经网络中的一卷积层确定出第一特征点的第一基准框属于第一物体类别,且已经利用卷积神经网络中的另一卷积层计算出第一特征点的第一基准框针对第一物体类别的上偏移值、下偏移值、左偏移值和右偏移值、第一特征点的第一基准框针对第二物体类别的上偏移值、下偏移值、左偏移值和右偏移值、……、第一特征点的第一基准框针对第二十物体类别的上偏移值、下偏移值、左偏移值和右偏移值以及第一特征点的第一基准框针对背景类别的上偏移值、下偏移值、左偏移值和右偏移值(总共4×21个偏移值),在上述设定的情况下,本申请实施方式可以将已经计算出的第一特征点的第一基准框针对第一物体类别的上偏移值、下偏移值、左偏移值以及右偏移值作为第一特征点的第一基准框的位置偏移值;以此类推,本申请实施方式可以确定出第一特征点的第一基准框至第九基准框的位置偏移值,进而本申请实施方式可以确定出特征图中的所有特征点的第一基准框至第九基准框的位置偏移值(总共N×9个位置偏移值,即N×9×4个偏移值,其中N为特征图所包含的特征点的数量)。
S330、根据所有特征点的各基准框所属类别、各基准框的位置偏移值以及各基准框的置信度确定待检测图像中所包含的各外接框位置信息以及外接框所属类别。
在一个可选示例中,本申请通常会从所有特征点的各基准框中选取出部分基准框,并利用选取出的部分基准框的位置偏移值形成外接框,且选取出的部分基准框各自所属类别即为相应的外接框所属类别。
在一个可选示例中,本申请可以利用预设置信度要求来选取出部分基准框,且该预设置信度要求可以具体为置信度阈值(置信度阈值如0.8)等;一个具体的例子,本申请实施方式可以从所有特征点的各基准框中选取出置信度超过置信度阈值(例如,大于等于0.8)的基准框,之后,可以利用选取出的各基准框的位置偏移值形成相应特征点的外接框位置信息,并将选取出的各基准框所属类别作为相应外接框所属类别。另外,本申请实施方式也可以利用比例或者外接框数量阈值来选取出部分基准框,本申请实施方式不限制从所有特征点的各基准框中选取出部分基准框的具体实现方式。
一个更为具体的例子,设定通过上述步骤S310确定出第一特征点的第一基准框的置信度为0.9,第一特征点的第一基准框属于第一物体类别,且第一特征点的第一基准框的位置偏移值分别为y1、y2、x1以及x2,在预设置信度要求为置信度不低于置信度阈值0.8的情况下,可以根据第一特征点对应图像中的区域、第一基准框的长和宽以及y1、y2、x1和x2确定出第一外接框在图像中的位置信息,并确定出该第一外接框所属类别为第一物体类别。
下面以将特征点的基准框作为待定目标为例,对本申请的卷积神经网络的训练过程进行说明。图4为本申请实施方式的训练卷积神经网络的示意图。如图4所示,本申请实施方式的训练过程主要包括:步骤S400、步骤S410、步骤S420、步骤S430、步骤S440以及步骤S450。下面结合图5对图4中的各步骤分别进行说明。
S400、从样本集合中获取一个图像样本。到步骤S410。
在一个可选示例中,本申请中的样本集合通常为非空,且通常包括大量的图像样本。样本集合中的每一个图像样本通常均带有标注,如每一个图像样本均标注有多个外接框位置信息以及各标准外接框所属类别等;外接框位置信息可以包括:外接框对角线上的两个顶点在图像样本中的二维坐标信息等。图像样本的所有标注通常是人工预先标注出来的。本申请实施方式可以从样本集合中安装图像样本的排列次序顺序的选取一个图像样本,也可以从样本集合中随机选取一个图像样本。
S410、通过卷积神经网络中的主干网络生成该图像样本的特征图,即图5中的Feature Map。到步骤S420。
S420、通过卷积神经网络中的滤波层对上述特征图进行滤波处理(例如,利用图5中的Conv(卷积)层实现滤波处理),从而可以将主干网络输出的特征图转换为新的特征图,且主干网络输出的特征图和新的特征图所包含的特征点的数量是相同的。到步骤S430、步骤S440以及步骤S450。
S430、针对滤波处理后的特征图中的每一个特征点的每一个基准框:利用卷积神经网络中的一卷积层(例如,第一卷积层)计算该特征点的该基准框分别属于各类别的置信度,例如,图5中利用卷积层获得的cls_score(用于表示置信度),并根据一个基准框分别属于各个类别的置信度确定出该基准框类别,例如,将最高置信度对应的类别作为该基准框所属类别。到步骤S460。
S440、针对滤波处理后的特征图中的每一个特征点的每一个基准框:利用卷积神经网络中的一卷积层(例如,第二卷积层)计算/预测该特征点的各基准框针对每一类别的位置偏移值,例如,图5中利用卷积层获得的loc_pred可以用于表示预测出的一个位置偏移值,该预测出的位置偏移值可以包括:上偏移值、下偏移值、左偏移值以及右偏移值。到步骤S470。
S450、针对滤波处理后的特征图中的一个特征点的一个基准框:可以利用预先设置的辅助层计算该基准框相对于相应的标准外接框的标准位置偏移值,例如,辅助层计算特征点的基准框与该特征点所对应的标注外接框的上偏移值、下偏移值、左偏移值以及右偏移值。另外,可以利用预先设置的辅助层可以将每一个特征点的每一个基准框所属类别设置为相应标准外接框所属类别。到步骤S460以及步骤S470。
具体的,针对一个特征点的一个基准框:辅助层可以计算该基准框与每一个标准外接框的重叠面积,并将重叠面积最大的标准外接框作为该基准框所对应的标准外接框,并将重叠面积最大的标准外接框所属类别作为该基准框所属类别。
由于辅助层可以根据预先设置的基准框配置信息明确的获知基准框的长宽,因此,本申请中的辅助层可以根据特征点以及基准框的长宽确定出该基准框在图像样本中的具体位置,而由于图像样本中的各标准外接框均是人工预先标注出来的,因此,辅助层可以获知标准外接框在图像样本中的位置信息(例如,标准外接框在其对角线方向上的两个顶点的坐标等),从而本申请中的辅助层可以准确快速的计算出该基准框和与其对应的标准外接框之间的位置偏移值(例如,图5中利用辅助层获得的Anchor Target C21),该计算出的位置偏移值即为标准位置偏移值,且该标准位置偏移值可以包括:标准上偏移值、标准下偏移值、标准左偏移值和标准右偏移值。
需要特别说明的是,本申请可以不针对所有特征点的所有基准框均进行标准位置偏移值的计算,而是从所有特征点的所有基准框中选取部分基准框来进行标准位置偏移值的计算,即不是所有的基准框都会参与位置偏移值之间的误差在卷积神经网络中的反向传递过程;在上述情况下,本申请中的辅助层可以根据基准框与标准外接框的重叠面积来选取需要进行标准位置偏移值的计算的基准框,具体的,针对一个基准框而言,辅助层可以将其与各标准外接框的重叠面积最大的标准外接框作为该基准框对应的标准外接框,从而辅助层可以获得各基准框对应的标准外接框,然后,辅助层根据各基准框与其对应的标准外接框的重叠面积是否满足预定要求,可以将所有的基准框划分为三类,即正样本类(即重叠面积比例大于第一比例阈值的一类)、负样本类(即重叠面积比例小于第二比例阈值的一类)以及忽略样本类(即重叠面积比例介于第一比例阈值和第二比例阈值之间的一类),之后,辅助层可以从正样本类中选取(例如,随机选取)部分基准框,并从负样本类中选取(例如,随机选取)部分基准框,且辅助层从正样本类中选取出的基准框的数量与从负样本类中选取出的基准框的数量通常应满足预先设置的比例,例如3:1;之后,辅助层可以针对选取出的基准框进行标记,从而使后续的损失层可以根据该标记针对相应的基准框计算位置偏移值之间的误差。
上述重叠面积比例可以具体为:针对一待定目标而言,如果该待定目标与其重叠面积最大的标准外接框之间的重叠面积与该待定目标和标准外接框共同覆盖的面积的比值,具体的,设定待定目标A的面积为3,而待定目标A对应的标准外接框B的面积为4,且待定目标A与标准外接框B之间的重叠面积为2,则重叠面积比例为:2/(3+4-2)=2/5。本申请中的第一比例阈值大于第二比例阈值,在一个具体的例子中,第一比例阈值可以为0.7,而第二比例阈值可以为0.3。本申请不限制第一比例阈值和第二比例阈值的具体取值。
S460、针对特征图中的每一个特征点:利用一损失层计算该特征点的每一个基准框属于相应标准外接框所属类别的置信度与标准置信度之间的误差。一个具体的例子,步骤S430中的卷积层计算出的每一个特征点的每一个基准框分别属于各类别的置信度均被传输至图5中的softmaxwitloss层,且步骤S450中的辅助层针对每一个特征点的每一个基准框所设置的所属类别也被传输至图5中的softmaxwitloss层,从而softmaxwitloss层可以根据辅助层传输来的信息以及卷积层传输来的信息计算出每一个特征点的每一个基准框属于相应标准外接框所属类别的置信度与标准置信度之间的误差,且该误差会通过softmaxwitloss层反向传递,直到主干网络。
S470、针对特征图中的一个特征点的一个基准框:利用一损失层(例如,smoothloss层)计算步骤S440预测出的位置偏移值与步骤S450计算出的相应的标准位置偏移值之间的误差。具体的,smoothloss层可以根据辅助层的标记对相应的预测出的位置偏移值与计算出的相应的标准位置偏移值之间的误差,且该误差会通过smoothloss层反向传递,直到主干网络(完成一次迭代过程)。到步骤S480。
S480、误差是否符合要求以及是否继续训练,如果误差符合要求且不需要继续训练,则到步骤S490;而如果需要继续训练(不论误差是否符合要求),则返回步骤S400;如果误差不符合要求且不需要继续训练,则到步骤S481。
本申请中的是否需要继续训练,可以通过迭代次数(即已经从图像样本集合中获取到的图像样本的数量)来判断,例如,在迭代次数已经达到预定数量的情况下,确定不需要继续训练,而在迭代次数还未达到预定数量的情况下,确定需要继续训练。本申请中的误差是否符合要求可以通过误差是否属于预定范围来判断,例如,在当前误差属于预定范围的情况下,确定当前误差可以被接受,卷积神经网络成功训练完成,而在当前误差不属于预定范围的情况下,确定当前误差不能够被接受,卷积神经网络训练失败。
S481、未成功完成卷积神经网络的训练,本次训练过程结束。
具体的,如果样本集合中的所有图像样本已经均被用于训练或者读取的样本数量已经达到预定数量,然而,计算出的误差仍不符合要求,则虽然本次训练过程结束了,但是,卷积神经网络并没有训练成功,后续可以继续对卷积神经网络进行训练。
S490、成功完成卷积神经网络的训练,本次训练过程结束。
本申请可以通过交替执行误差的计算过程以及误差的反向传递过程,对卷积神经网络进行训练,直到计算出的误差符合要求,从而成功完成卷积神经网络的训练过程。
还有,本申请可以对成功训练后的卷积神经网络进行测试。对训练后的卷积神经网络进行测试的过程与上述用于物体检测的方法中的步骤相同,只是可以通过计算AP(Average Precision,平均检测准确率)以及Recall(平均召回率,即所有外接框中与标准外接框的重叠率超过预定阈值的百分比)等参数来衡量本申请的卷积神经网络的物体检测性能。
具体的,本申请可以在利用一卷积层确定出所有特征点的所有基准框所属类别之后,对所有基准框进行NMS处理,即从所有基准框中去除面积重叠率超过一定阈值的基准框,其中的面积重叠率可以为:两个基准框的相交部分的面积÷(两个基准框的面积之和-两个基准框的相交部分面积框相交部分的面积),且上述阈值可以为0.3等;之后,本申请可以从去除了面积重叠率超过一定阈值的基准框之后的所有基准框中选取置信度最高的300个基准框计算AP以及Recall等,以获知训练后的卷积神经网络的物体检测性能。
图6为本申请用于物体检测的装置一个实施方式的结构示意图。该实施方式的装置可用于实现本申请上述各方法实施方式。如图6所示,该实施方式的装置主要包括:获取待定目标模块600、预测类别和位置偏移值模块610、确定位置偏移模块620以及确定检测结果模块630。可选的,该装置还可以包括:训练模块(图6中未示出)。
获取待定目标模块600主要用于获取待检测图像中的多个待定目标,具体的,获取待定目标模块600可以用于获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标。获取待定目标模块600所使用的所有预设区域大小的长度存在差异,所有预设区域大小的宽度存在差异,所有预设区域大小的长宽比存在差异;一个具体的例子,预设区域大小包括:三种不同的长度/宽度,所有预设区域大小包括:三种不同的长宽比,且所有预设区域大小包括:基于上述三种不同的长度/宽度和三种不同的长宽比所形成的九个预设区域大小。
在一个实施方式中,获取待定目标模块600可以包括第一获取待定目标子模块,该第一获取待定目标子模块主要用于获取待检测图像的特征图,并针对特征图中的一个特征点而言,根据基准框配置信息形成该特征点的基准框,且该特征点的一个基准框被作为一个待定目标。第一获取待定目标子模块可以通过将待检测图像提供给卷积神经网络中的主干网络,并将主干网络输出的特征图提供给卷积神经网络中的滤波层,以由滤波层根据预设滑窗对特征图进行滤波处理,且第一获取待定目标子模块可以将滤波处理后的特征图作为待检测图像的特征图。
在一个实施方式中,获取待定目标模块600可以包括可以第二获取待定目标子模块,该第二获取待定目标子模块主要用于获取待检测图像的特征图,并基于基准框配置信息对特征图进行池化处理,以形成多个新的特征图,且一个新的特征图被作为一个待定目标。
获取待定目标模块600(如第二获取待定目标子模块以及第二获取待定目标子模块)执行的具体操作及预设区域大小等可以参见上述方法实施方式中步骤S200和步骤S300中的相关描述,在此不再重复说明。
预测类别和位置偏移值模块610主要用于确定多个待定目标分别针对各类别的置信度,根据置信度确定多个待定目标所属类别;并且,确定多个待定目标分别针对每一类别的位置偏移值,例如,预测类别和位置偏移值模块610利用卷积神经网络中的一卷积层确定多个待定目标分别针对各类别的置信度,并根据上述置信度确定多个待定目标所属类别,并且预测类别和位置偏移值模块610利用卷积神经网络中的另一卷积层确定多个待定目标分别针对每一类别的位置偏移值(例如,上偏移值、下偏移值、左偏移值以及右偏移值)。
在一个可选示例中,本申请中的所有类别可以包括:至少两种物体类别以及一个背景类别,例如,二十种物体类别以及一个背景类别。具体的,针对一个待定目标,预测类别和位置偏移值模块610可以利用卷积神经网络中的一卷积层计算该待定目标分别属于每一类别的置信度,并将最高置信度对应的类别作为该待定目标所属类别。预测类别和位置偏移值模块610执行的具体操作可以参见上述方法实施方式中步骤S210和步骤S310中的相关描述,在此不再重复说明。
确定位置偏移模块620主要用于将多个待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值。确定位置偏移模块620执行的具体操作可以参见上述方法实施方式中步骤S220和步骤S320中的相关描述,在此不再重复说明。
确定检测结果模块630主要用于根据多个待定目标所属类别、多个待定目标的位置偏移值以及多个待定目标所属类别的置信度确定待检测图像中各个待定目标的位置信息和所属类别。一个可选例子,确定检测结果模块630可以从所有待定目标中选取出置信度满足预设置信度要求的待定目标,并根据选取出的多个待定目标的位置偏移值形成待检测图像中的待定目标的位置信息(如外接框位置信息),将选取出的多个待定目标所属类别作为相应待定目标(如外接框)所属类别。确定检测结果模块630执行的具体操作可以参见上述方法实施方式中步骤S230和步骤S330中的相关描述,在此不再重复说明。
训练模块主要用于训练本申请中的卷积神经网络。具体的,训练模块可以从图像样本集合中获取标注有至少一个标准外接框位置信息和标准外接框所属类别的图像样本,并获取图像样本中的基于至少一个预设区域大小而形成的多个待定目标;之后,训练模块利用卷积神经网络中的一卷积层确定多个待定目标分别针对各类别的置信度,并根据置信度确定多个待定目标所属类别,训练模块利用卷积神经网络中的一卷积层确定多个待定目标分别针对每一类别的位置偏移值,并将多个待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值;训练模块计算多个待定目标相对于相应的标准外接框的标准位置偏移值(例如,训练模块确定多个待定目标各自对应的重叠面积最大的标准外接框,并分别计算多个待定目标相对于重叠面积最大的标准外接框的标准位置偏移值),训练模块利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应的标准外接框的类别的位置偏移值与相应的标准位置偏移值的误差;训练模块利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应标准外接框所属类别的置信度与标准外接框所属类别之间的误差,并将误差在卷积神经网络中反向传播;训练模块控制是否继续训练,例如,训练模块在从图像样本集合中获取的图像样本的数量达到预定数量,且在误差属于预定范围的情况下,训练模块确定卷积神经网络成功训练完成。
上述部分待定目标通常包括:正待定目标和负待定目标,例如,训练模块从所有待定目标中的所有正待定目标中选取出正待定目标,并从所有待定目标中的所有负待定目标中选取出负待定目标,且训练模块选取出的正待定目标和选取出的负待定目标满足预定比例。训练模块执行的具体操作、正待定目标以及负待定目标等内容可以参见上述针对图4和图5的相关描述,在此不再重复说明。
本申请实施方式还提供了一种电子设备,例如可以是移动终端、个人计算机(PC)、平板电脑、服务器等。下面参考图7,其示出了适于用来实现本申请实施方式的终端设备或服务器的电子设备700的结构示意图:如图7所示,计算机系统700包括一个或多个处理器、通信部等,所述一个或多个处理器例如:一个或多个中央处理单元(CPU)701,和/或一个或多个图像处理器(GPU)713等,处理器可以根据存储在只读存储器(ROM)702中的可执行指令或者从存储部分708加载到随机访问存储器(RAM)703中的可执行指令而执行各种适当的动作和处理。通信部712可以包括但不限于网卡,所述网卡可以包括但不限于IB(Infiniband)网卡。处理器可与只读存储器702和/或随机访问存储器730中通信以执行可执行指令,通过总线704与通信部712相连、并经通信部712与其他目标设备通信,从而完成本申请实施方式提供的任一项方法对应的操作。
此外,在RAM 703中,还可以存储有装置操作所需的各种程序以及数据。CPU701、ROM702及RAM703通过总线704彼此相连。在有RAM703的情况下,ROM702为可选模块。RAM703存储可执行指令,或在运行时向ROM702中写入可执行指令,可执行指令使处理器701执行上述通信方法对应的操作。输入/输出(I/O)接口705也连接至总线704。通信部712可集成设置,也可以设置为具有多个子模块(如多个IB网卡),并在总线链接上。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
需要说明的,如图7所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图7的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如GPU和CPU可分离设置或者可将GPU集成在CPU上,通信部可分离设置,也可集成设置在CPU或GPU上,等等。这些可替换的实施方式均落入本申请公开的保护范围。
特别地,根据本公开的实施方式,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请公开的实施方式包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本申请实施方式提供的方法步骤对应的指令。在这样的实施方式中,计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的方法中限定的上述功能。
可能以许多方式来实现本申请的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本申请的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本申请的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施方式中,还可将本申请实施为记录在记录介质中的程序,这些程序包括用于实现根据本申请的方法的机器可读指令。因而,本申请还覆盖存储用于执行根据本申请的方法的程序的记录介质,例如,图8所示的计算机可读存储介质800。
本申请的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本申请限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施方式是为了更好说明本申请的原理和实际应用,并且使本领域的普通技术人员能够理解本申请从而设计适于特定用途的带有各种修改的各种实施方式。
Claims (32)
1.一种用于物体检测的方法,其特征在于,包括:
获取待检测图像中的多个待定目标;
确定所述多个待定目标分别针对各类别的置信度,获得n×m个置信度,根据所述置信度确定多个待定目标所属类别;在所述确定所述多个待定目标分别针对各类别的置信度的同时,确定所述多个待定目标分别针对每一类别的位置偏移值,获得n×m个位置偏移值;其中,所述位置偏移值用于确定待定目标的在属于某一类别时的位置信息,n表示待定目标的数量,m表示类别的数量,所述各类别包括:至少两种物体类别以及一个背景类别;
将所述多个待定目标各自所属类别所对应的位置偏移值作为所述多个待定目标的位置偏移值;
根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别。
2.根据权利要求1所述的方法,其特征在于,所述获取待检测图像中的多个待定目标的步骤包括:
获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标,其中所述预设区域大小由预先设置的基准框配置信息确定,所述待定目标为所述待检测图像的特征图中的特征点的基准框,或在所述待检测图像的特征图的基础上而形成的小特征图。
3.根据权利要求2所述的方法,其特征在于,所述获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标的步骤包括:
获取待检测图像的特征图;
针对特征图中的一个特征点而言,根据基准框配置信息形成该特征点的基准框,且该特征点的一个基准框被作为一个待定目标。
4.根据权利要求3所述的方法,其特征在于,所述获取待检测图像的特征图的步骤包括:
将待检测图像提供给卷积神经网络中的主干网络;
所述主干网络输出的特征图被提供给所述卷积神经网络中的滤波层,以由所述滤波层根据预设滑窗对所述特征图进行滤波处理,且所述滤波处理后的特征图被作为所述待检测图像的特征图。
5.根据权利要求2所述的方法,其特征在于,所述获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标的步骤包括:
获取待检测图像的特征图;
基于基准框配置信息对所述特征图进行池化处理,以形成多个新的特征图,且一个新的特征图被作为一个待定目标。
6.根据权利要求2所述的方法,其特征在于,所有预设区域大小包括:三种不同的长度/宽度,所有预设区域大小包括:三种不同的长宽比,且所有预设区域大小包括:基于所述三种不同的长度/宽度和三种不同的长宽比所形成的九个预设区域大小。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述确定所述多个待定目标分别针对各类别的置信度,获得n×m个置信度,根据所述置信度确定多个待定目标所属类别的步骤包括:
针对一个待定目标,计算该待定目标分别属于每一类别的置信度,并将最高置信度对应的类别作为该待定目标所属类别。
8.根据权利要求1至6中任一项所述的方法,其特征在于,所述确定多个待定目标分别针对每一类别的位置偏移值的步骤包括:
针对一个待定目标,计算该待定目标针对每一类别的上偏移值、下偏移值、左偏移值以及右偏移值。
9.根据权利要求1至6中任一项所述的方法,其特征在于,所述待定目标的位置信息包括:待定目标的外接框位置信息。
10.根据权利要求9所述的方法,其特征在于,所述根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别的步骤包括:
从所有待定目标中选取出置信度满足预设置信度要求的待定目标;
根据所述选取出的多个待定目标的位置偏移值形成待检测图像中的外接框位置信息;
将所述选取出的多个待定目标所属类别作为相应外接框所属类别。
11.根据权利要求1至6中任一项所述的方法,其特征在于,由卷积神经网络实现所述确定所述多个待定目标分别针对各类别的置信度,获得n×m个置信度,根据所述置信度确定多个待定目标所属类别;在所述确定所述多个待定目标分别针对各类别的置信度的同时,确定所述多个待定目标分别针对每一类别的位置偏移值的步骤,所述方法还包括:训练所述卷积神经网络的步骤,且所述训练所述卷积神经网络的步骤包括:
从图像样本集合中获取标注有至少一个标准位置信息和标准位置所属类别的图像样本;
获取图像样本中的多个待定目标;
利用卷积神经网络中的一卷积层确定多个待定目标分别针对各类别的置信度,并根据所述置信度确定多个待定目标所属类别;
利用卷积神经网络中的另一卷积层确定多个待定目标分别针对每一类别的位置偏移值;
将多个待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值;
计算多个待定目标相对于相应的标准位置的标准位置偏移值;
利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应的标准位置的类别的位置偏移值与相应的标准位置偏移值的误差,利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应标准位置所属类别的置信度与标准位置所属类别之间的误差,并将所述误差在所述卷积神经网络中反向传播;
直到从图像样本集合中获取的图像样本的数量达到预定数量,且在误差属于预定范围的情况下,所述卷积神经网络成功训练完成。
12.根据权利要求11所述的方法,其特征在于,所述获取图像样本中的多个待定目标的步骤包括:
获取图像样本中的基于至少一个预设区域大小而形成的多个待定目标。
13.根据权利要求11所述的方法,其特征在于,所述标准位置包括:标准外接框。
14.根据权利要求13所述的方法,其特征在于,所述计算多个待定目标相对于相应的标准位置的标准位置偏移值的步骤包括:
确定多个待定目标各自对应的重叠面积最大的标准外接框,并分别计算多个待定目标相对于重叠面积最大的标准外接框的标准位置偏移值。
15.根据权利要求13或14所述的方法,其特征在于,所述部分待定目标包括:从多个待定目标中的多个正待定目标中选取出的正待定目标以及从多个待定目标中的多个负待定目标中选取出的负待定目标,且选取出的正待定目标和选取出的负待定目标满足预定比例;
针对一待定目标而言,如果所述待定目标与其重叠面积最大的标准外接框之间的重叠面积与所述待定目标和标准外接框共同覆盖的面积的比值大于第一比例阈值,则所述待定目标为正待定目标;而如果所述比值小于第二比例阈值,则所述待定目标为负待定目标。
16.一种用于物体检测的装置,其特征在于,所述装置包括:
获取待定目标模块,用于获取待检测图像中的多个待定目标;
预测类别和位置偏移值模块,用于确定所述多个待定目标分别针对各类别的置信度,获得n×m个置信度,根据所述置信度确定多个待定目标所属类别;在所述确定所述多个待定目标分别针对各类别的置信度的同时,确定所述多个待定目标分别针对每一类别的位置偏移值,获得n×m个位置偏移值;其中,所述位置偏移值用于确定待定目标的在属于某一类别时的位置信息,n表示待定目标的数量,m表示类别的数量,所述各类别包括:至少两种物体类别以及一个背景类别;
确定位置偏移模块,用于将所述多个待定目标各自所属类别所对应的位置偏移值作为所述多个待定目标的位置偏移值;
确定检测结果模块,用于根据所述多个待定目标所属类别、所述多个待定目标的位置偏移值以及所述多个待定目标所属类别的置信度确定所述待检测图像中各个待定目标的位置信息和所属类别。
17.根据权利要求16所述的装置,其特征在于,所述获取待定目标模块具体用于:获取待检测图像中的基于至少一个预设区域大小而形成的多个待定目标,其中,所述预设区域大小由预先设置的基准框配置信息确定,所述待定目标包括所述待检测图像的特征图中的特征点的基准框,或在所述待检测图像的特征图的基础上而形成的小特征图。
18.根据权利要求17所述的装置,其特征在于,所述获取待定目标模块包括:
第一获取待定目标子模块,用于获取待检测图像的特征图;针对特征图中的一个特征点而言,根据基准框配置信息形成该特征点的基准框,且该特征点的一个基准框被作为一个待定目标。
19.根据权利要求18所述的装置,其特征在于,所述第一获取待定目标子模块具体用于:将待检测图像提供给卷积神经网络中的主干网络;所述主干网络输出的特征图被提供给所述卷积神经网络中的滤波层,以由所述滤波层根据预设滑窗对所述特征图进行滤波处理,且所述滤波处理后的特征图被作为所述待检测图像的特征图。
20.根据权利要求17所述的装置,其特征在于,所述获取待定目标模块包括:
第二获取待定目标子模块,用于获取待检测图像的特征图;基于基准框配置信息对所述特征图进行池化处理,以形成多个新的特征图,且一个新的特征图被作为一个待定目标。
21.根据权利要求17所述的装置,其特征在于,所有预设区域大小包括:三种不同的长度/宽度,所有预设区域大小包括:三种不同的长宽比,且所有预设区域大小包括:基于所述三种不同的长度/宽度和三种不同的长宽比所形成的九个预设区域大小。
22.根据权利要求16至21中任一项所述的装置,其特征在于,所述预测类别和位置偏移值模块具体用于:
针对一个待定目标,计算该待定目标分别属于每一类别的置信度,并将最高置信度对应的类别作为该待定目标所属类别。
23.根据权利要求16至21中任一项所述的装置,其特征在于,所述预测类别和位置偏移值模块具体用于:
针对一个待定目标,计算该待定目标针对每一类别的上偏移值、下偏移值、左偏移值以及右偏移值。
24.根据权利要求16至21中任一项所述的装置,其特征在于,所述待定目标的位置信息包括:待定目标的外接框位置信息。
25.根据权利要求24所述的装置,其特征在于,所述确定检测结果模块具体用于:从所有待定目标中选取出置信度满足预设置信度要求的待定目标;根据所述选取出的多个待定目标的位置偏移值形成待检测图像中的外接框位置信息;将所述选取出的多个待定目标所属类别作为相应外接框所属类别。
26.根据权利要求16至21中任一项所述的装置,其特征在于,在预测类别和位置偏移值模块利用卷积神经网络实现的情况下,所述装置还包括:训练模块,所述训练模块用于:
从图像样本集合中获取标注有至少一个标准位置信息和标准位置所属类别的图像样本;
获取图像样本中的多个待定目标;
利用卷积神经网络中的一卷积层确定多个待定目标分别针对各类别的置信度,并根据所述置信度确定多个待定目标所属类别;
利用卷积神经网络中的另一卷积层确定多个待定目标分别针对每一类别的位置偏移值;
将多个待定目标各自所属类别所对应的位置偏移值作为多个待定目标的位置偏移值;
计算多个待定目标相对于相应的标准位置的标准位置偏移值;
利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应的标准位置的类别的位置偏移值与相应的标准位置偏移值的误差,利用卷积神经网络中的一损失层计算所有或者部分待定目标针对相应标准位置所属类别的置信度与标准位置所属类别之间的误差,并将所述误差在所述卷积神经网络中反向传播;
直到从图像样本集合中获取的图像样本的数量达到预定数量,且在误差属于预定范围的情况下,所述卷积神经网络成功训练完成。
27.根据权利要求26所述的装置,其特征在于,所述训练模块具体用于:获取图像样本中的基于至少一个预设区域大小而形成的多个待定目标。
28.根据权利要求26所述的装置,其特征在于,所述标准位置包括:标准外接框。
29.根据权利要求28所述的装置,其特征在于,所述训练模块具体用于:确定多个待定目标各自对应的重叠面积最大的标准外接框,并分别计算多个待定目标相对于重叠面积最大的标准外接框的标准位置偏移值。
30.根据权利要求28或29所述的装置,其特征在于,所述部分待定目标包括:从多个待定目标中的多个正待定目标中选取出的正待定目标以及从多个待定目标中的多个负待定目标中选取出的负待定目标,且选取出的正待定目标和选取出的负待定目标满足预定比例;
针对一待定目标而言,如果所述待定目标与其重叠面积最大的标准外接框之间的重叠面积与所述待定目标和标准外接框共同覆盖的面积的比值大于第一比例阈值,则所述待定目标为正待定目标;而如果所述比值小于第二比例阈值,则所述待定目标为负待定目标。
31.一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述权利要求1-15中任一项所述的方法。
32.一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述权利要求1-15中任一项所述的方法。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711175559.8A CN108229307B (zh) | 2017-11-22 | 2017-11-22 | 用于物体检测的方法、装置和设备 |
PCT/CN2018/114572 WO2019100946A1 (zh) | 2017-11-22 | 2018-11-08 | 用于物体检测的方法、装置和设备 |
JP2020500848A JP7016943B2 (ja) | 2017-11-22 | 2018-11-08 | 物体検出のための方法、装置および機器 |
KR1020207000829A KR102407664B1 (ko) | 2017-11-22 | 2018-11-08 | 물체 검출을 위한 방법, 장치 및 기기 |
SG11202000072SA SG11202000072SA (en) | 2017-11-22 | 2018-11-08 | Object detection method, device, and apparatus |
US16/734,369 US11222441B2 (en) | 2017-11-22 | 2020-01-05 | Methods and apparatuses for object detection, and devices |
US17/455,496 US20220076444A1 (en) | 2017-11-22 | 2021-11-18 | Methods and apparatuses for object detection, and devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711175559.8A CN108229307B (zh) | 2017-11-22 | 2017-11-22 | 用于物体检测的方法、装置和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108229307A CN108229307A (zh) | 2018-06-29 |
CN108229307B true CN108229307B (zh) | 2022-01-04 |
Family
ID=62652715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711175559.8A Active CN108229307B (zh) | 2017-11-22 | 2017-11-22 | 用于物体检测的方法、装置和设备 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11222441B2 (zh) |
JP (1) | JP7016943B2 (zh) |
KR (1) | KR102407664B1 (zh) |
CN (1) | CN108229307B (zh) |
SG (1) | SG11202000072SA (zh) |
WO (1) | WO2019100946A1 (zh) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018033137A1 (zh) * | 2016-08-19 | 2018-02-22 | 北京市商汤科技开发有限公司 | 在视频图像中展示业务对象的方法、装置和电子设备 |
EP3545466A4 (en) * | 2016-12-29 | 2019-11-27 | Zhejiang Dahua Technology Co., Ltd. | SYSTEMS AND METHODS FOR DETECTING OBJECTS IN IMAGES |
US11682201B2 (en) * | 2017-04-26 | 2023-06-20 | Skansense S.L.U. | Identifying targets within images |
CN108229307B (zh) | 2017-11-22 | 2022-01-04 | 北京市商汤科技开发有限公司 | 用于物体检测的方法、装置和设备 |
CN109344840B (zh) * | 2018-08-07 | 2022-04-01 | 深圳市商汤科技有限公司 | 图像处理方法和装置、电子设备、存储介质、程序产品 |
CN109492576B (zh) * | 2018-11-07 | 2021-06-22 | 北京旷视科技有限公司 | 图像识别方法、装置及电子设备 |
US11099108B2 (en) * | 2018-11-21 | 2021-08-24 | Qc Labs | Systems and method for providing a graphical user interface for automated determination of randomized representative sampling |
CN109583512B (zh) * | 2018-12-14 | 2021-05-25 | 北京旷视科技有限公司 | 图像处理方法、装置及系统 |
CN109901833B (zh) * | 2019-01-24 | 2022-06-07 | 福建天晴数码有限公司 | 一种限制物体移动的方法及终端 |
CN110059591B (zh) * | 2019-04-01 | 2021-04-16 | 北京中科晶上超媒体信息技术有限公司 | 运动目标区域的识别方法 |
CN110097114B (zh) * | 2019-04-26 | 2021-06-29 | 新华三技术有限公司 | 一种应用于神经网络的先验框确定方法及装置 |
CN110427816B (zh) * | 2019-06-25 | 2023-09-08 | 平安科技(深圳)有限公司 | 物体检测方法、装置、计算机设备和存储介质 |
CN112308105B (zh) * | 2019-08-02 | 2024-04-12 | 北京图森智途科技有限公司 | 目标检测方法、目标检测器及相关设备 |
CN110852258A (zh) * | 2019-11-08 | 2020-02-28 | 北京字节跳动网络技术有限公司 | 物体检测方法、装置、设备及存储介质 |
CN113192252B (zh) * | 2020-01-14 | 2024-02-02 | 深圳怡化电脑股份有限公司 | 票据重张的检测方法、装置、设备及可读介质 |
CN111242088B (zh) * | 2020-01-22 | 2023-11-28 | 上海商汤临港智能科技有限公司 | 一种目标检测方法、装置、电子设备及存储介质 |
US11367347B2 (en) * | 2020-02-24 | 2022-06-21 | Ford Global Technologies, Llc | Enhanced sensor operation |
CN111275011B (zh) | 2020-02-25 | 2023-12-19 | 阿波罗智能技术(北京)有限公司 | 移动红绿灯检测方法、装置、电子设备和存储介质 |
CN111508019A (zh) * | 2020-03-11 | 2020-08-07 | 上海商汤智能科技有限公司 | 目标检测方法及其模型的训练方法及相关装置、设备 |
CN111523548B (zh) * | 2020-04-24 | 2023-11-28 | 北京市商汤科技开发有限公司 | 一种图像语义分割、智能行驶控制方法及装置 |
CN111523484B (zh) * | 2020-04-24 | 2021-08-27 | 北京嘀嘀无限科技发展有限公司 | 一种人脸关键点的检测方法、装置、电子设备及存储介质 |
CN111627001A (zh) * | 2020-05-25 | 2020-09-04 | 深圳市商汤科技有限公司 | 图像检测方法及装置 |
CN111724442B (zh) * | 2020-05-28 | 2022-04-22 | 上海商汤智能科技有限公司 | 图像处理方法及装置、电子设备及存储介质 |
CN111832559A (zh) * | 2020-06-19 | 2020-10-27 | 浙江大华技术股份有限公司 | 目标检测方法及装置、存储介质、电子装置 |
CN111931639A (zh) * | 2020-08-07 | 2020-11-13 | 上海商汤临港智能科技有限公司 | 驾驶员行为检测方法、装置、电子设备及存储介质 |
CN112101134B (zh) * | 2020-08-24 | 2024-01-02 | 深圳市商汤科技有限公司 | 物体的检测方法及装置、电子设备和存储介质 |
CN112070801B (zh) * | 2020-08-31 | 2023-08-11 | 上海沈德医疗器械科技有限公司 | 一种基于图像的运动检测方法 |
CN112215123B (zh) * | 2020-10-09 | 2022-10-25 | 腾讯科技(深圳)有限公司 | 一种目标检测方法、装置及存储介质 |
CN112330597A (zh) * | 2020-10-14 | 2021-02-05 | 浙江大华技术股份有限公司 | 一种图像差异检测方法、装置及计算机设备 |
KR102283197B1 (ko) * | 2020-11-04 | 2021-07-29 | 주식회사 엘지씨엔에스 | 상품의 유형을 결정하는 방법 및 디바이스 |
CN112560726B (zh) * | 2020-12-22 | 2023-08-29 | 阿波罗智联(北京)科技有限公司 | 目标检测置信度确定方法、路侧设备及云控平台 |
CN113111708B (zh) * | 2021-03-10 | 2023-12-29 | 北京爱笔科技有限公司 | 车辆匹配样本生成方法、装置、计算机设备和存储介质 |
CN113160144B (zh) * | 2021-03-25 | 2023-05-26 | 平安科技(深圳)有限公司 | 目标物检测方法、装置、电子设备及存储介质 |
CN113177545B (zh) * | 2021-04-29 | 2023-08-04 | 北京百度网讯科技有限公司 | 目标物体的检测方法、装置、电子设备和存储介质 |
CN114821272A (zh) * | 2022-06-28 | 2022-07-29 | 上海蜜度信息技术有限公司 | 图像识别方法、系统、介质、电子设备及目标检测模型 |
CN114998438B (zh) * | 2022-08-02 | 2022-11-01 | 深圳比特微电子科技有限公司 | 一种目标检测方法、装置和机器可读存储介质 |
CN116523908B (zh) * | 2023-06-30 | 2023-09-12 | 湖南隆深氢能科技有限公司 | 基于卷料涂布生产线的安全生产方法、系统、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106504233A (zh) * | 2016-10-18 | 2017-03-15 | 国网山东省电力公司电力科学研究院 | 基于Faster R‑CNN的无人机巡检图像电力小部件识别方法及系统 |
CN106780612A (zh) * | 2016-12-29 | 2017-05-31 | 浙江大华技术股份有限公司 | 一种图像中的物体检测方法及装置 |
CN106778852A (zh) * | 2016-12-07 | 2017-05-31 | 中国科学院信息工程研究所 | 一种修正误判的图像内容识别方法 |
CN106803071A (zh) * | 2016-12-29 | 2017-06-06 | 浙江大华技术股份有限公司 | 一种图像中的物体检测方法及装置 |
CN107368845A (zh) * | 2017-06-15 | 2017-11-21 | 华南理工大学 | 一种基于优化候选区域的Faster R‑CNN目标检测方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102411716A (zh) | 2010-09-21 | 2012-04-11 | 索尼公司 | 目标检测和分类方法和装置 |
CN102324030B (zh) * | 2011-09-09 | 2013-11-06 | 广州灵视信息科技有限公司 | 一种基于图像块特征的目标跟踪方法及跟踪系统 |
CN104424634B (zh) * | 2013-08-23 | 2017-05-03 | 株式会社理光 | 对象跟踪方法和装置 |
CN106355188B (zh) * | 2015-07-13 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 图像检测方法及装置 |
US9858496B2 (en) * | 2016-01-20 | 2018-01-02 | Microsoft Technology Licensing, Llc | Object detection and classification in images |
CN108475331B (zh) * | 2016-02-17 | 2022-04-05 | 英特尔公司 | 用于对象检测的方法、装置、系统和计算机可读介质 |
JP6656357B2 (ja) * | 2016-04-04 | 2020-03-04 | オリンパス株式会社 | 学習方法、画像認識装置およびプログラム |
CN106529527A (zh) * | 2016-09-23 | 2017-03-22 | 北京市商汤科技开发有限公司 | 物体检测方法和装置、数据处理装置和电子设备 |
WO2019028725A1 (en) * | 2017-08-10 | 2019-02-14 | Intel Corporation | CONVOLUTIVE NEURAL NETWORK STRUCTURE USING INVERTED CONNECTIONS AND OBJECTIVITY ANTERIORITIES TO DETECT AN OBJECT |
CN108229307B (zh) * | 2017-11-22 | 2022-01-04 | 北京市商汤科技开发有限公司 | 用于物体检测的方法、装置和设备 |
-
2017
- 2017-11-22 CN CN201711175559.8A patent/CN108229307B/zh active Active
-
2018
- 2018-11-08 SG SG11202000072SA patent/SG11202000072SA/en unknown
- 2018-11-08 JP JP2020500848A patent/JP7016943B2/ja active Active
- 2018-11-08 KR KR1020207000829A patent/KR102407664B1/ko active IP Right Grant
- 2018-11-08 WO PCT/CN2018/114572 patent/WO2019100946A1/zh active Application Filing
-
2020
- 2020-01-05 US US16/734,369 patent/US11222441B2/en active Active
-
2021
- 2021-11-18 US US17/455,496 patent/US20220076444A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106504233A (zh) * | 2016-10-18 | 2017-03-15 | 国网山东省电力公司电力科学研究院 | 基于Faster R‑CNN的无人机巡检图像电力小部件识别方法及系统 |
CN106778852A (zh) * | 2016-12-07 | 2017-05-31 | 中国科学院信息工程研究所 | 一种修正误判的图像内容识别方法 |
CN106780612A (zh) * | 2016-12-29 | 2017-05-31 | 浙江大华技术股份有限公司 | 一种图像中的物体检测方法及装置 |
CN106803071A (zh) * | 2016-12-29 | 2017-06-06 | 浙江大华技术股份有限公司 | 一种图像中的物体检测方法及装置 |
CN107368845A (zh) * | 2017-06-15 | 2017-11-21 | 华南理工大学 | 一种基于优化候选区域的Faster R‑CNN目标检测方法 |
Also Published As
Publication number | Publication date |
---|---|
US11222441B2 (en) | 2022-01-11 |
US20220076444A1 (en) | 2022-03-10 |
US20200143563A1 (en) | 2020-05-07 |
JP2020527793A (ja) | 2020-09-10 |
KR102407664B1 (ko) | 2022-06-15 |
WO2019100946A1 (zh) | 2019-05-31 |
SG11202000072SA (en) | 2020-02-27 |
KR20200018612A (ko) | 2020-02-19 |
CN108229307A (zh) | 2018-06-29 |
JP7016943B2 (ja) | 2022-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108229307B (zh) | 用于物体检测的方法、装置和设备 | |
CN109635685B (zh) | 目标对象3d检测方法、装置、介质及设备 | |
WO2021003823A1 (zh) | 基于视频帧图片分析的车辆违停检测方法及装置 | |
CN112753038B (zh) | 识别车辆变道趋势的方法和装置 | |
CN112863187B (zh) | 感知模型的检测方法、电子设备、路侧设备和云控平台 | |
CN113420682A (zh) | 车路协同中目标检测方法、装置和路侧设备 | |
CN110796104A (zh) | 目标检测方法、装置、存储介质及无人机 | |
JP6255944B2 (ja) | 画像解析装置、画像解析方法及び画像解析プログラム | |
CN114926766A (zh) | 识别方法及装置、设备、计算机可读存储介质 | |
CN113255445A (zh) | 多任务模型训练及图像处理方法、装置、设备及存储介质 | |
CN111553914A (zh) | 基于视觉的货物检测方法、装置、终端及可读存储介质 | |
CN111429463A (zh) | 实例分割方法、装置、电子设备和存储介质 | |
CN114663871A (zh) | 图像识别方法、训练方法、装置、系统及存储介质 | |
CN113469025A (zh) | 应用于车路协同的目标检测方法、装置、路侧设备和车辆 | |
CN114429631B (zh) | 三维对象检测方法、装置、设备以及存储介质 | |
CN115719436A (zh) | 模型训练方法、目标检测方法、装置、设备以及存储介质 | |
CN111765892B (zh) | 一种定位方法、装置、电子设备及计算机可读存储介质 | |
CN114399671A (zh) | 目标识别方法及装置 | |
CN115431968B (zh) | 车辆控制器、车辆及车辆控制方法 | |
CN113963322B (zh) | 一种检测模型训练方法、装置及电子设备 | |
KR102546193B1 (ko) | 컬러 정보를 이용한 학습 데이터 분류 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 | |
KR102546195B1 (ko) | 수집 환경 기반 학습 데이터 분류 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 | |
KR102546198B1 (ko) | 물리적 요인 기반 학습 데이터 분류 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 | |
KR102531917B1 (ko) | 경계선 이식을 통한 어노테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 | |
CN114399546A (zh) | 目标检测方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: Room 1101-1117, 11 / F, No. 58, Beisihuan West Road, Haidian District, Beijing 100080 Patentee after: BEIJING SENSETIME TECHNOLOGY DEVELOPMENT Co.,Ltd. Address before: Room 710-712, 7th floor, No. 1 Courtyard, Zhongguancun East Road, Haidian District, Beijing Patentee before: BEIJING SENSETIME TECHNOLOGY DEVELOPMENT Co.,Ltd. |