一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据处理系统、物体检测方法及其装置与流程

2021-11-03 11:20:00 来源:中国专利 TAG:


1.本技术涉及人工智能领域,尤其涉及一种数据处理系统、物体检测方法及其装置。


背景技术:

2.计算机视觉是各个应用领域,如制造业、检验、文档分析、医疗诊断,和军事等领域中各种智能/自主系统中不可分割的一部分,它是一门关于如何运用照相机/摄像机和计算机来获取我们所需的,被拍摄对象的数据与信息的学问。形象地说,就是给计算机安装上眼睛(照相机或摄像机)和大脑(算法)用来代替人眼对目标进行识别、跟踪和测量等,从而使计算机能够感知环境。因为感知可以看作是从感官信号中提取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。总的来说,计算机视觉就是用各种成象系统代替视觉器官获取输入信息,再由计算机来代替大脑对这些输入信息完成处理和解释。计算机视觉的最终研究目标就是使计算机能像人那样通过视觉观察和理解世界,具有自主适应环境的能力。
3.感知网络可以为对图像进行处理分析并得到处理结果的神经网络模型,目前感知网络能完成的功能越来越多,例如,可以是图像分类、2d检测、语义分割(semantic segmentation)、关键点检测、线性物体检测(比如自动驾驶技术中的车道线或停止线检测)、可行驶区域检测等。另外,视觉感知系统具有成本低、非接触性、体积小、信息量大的特点。随着视觉感知算法的精度的不断提高,其成为当今众多人工智能系统的关键技术,得到越来越广泛的应用,如:高级驾驶辅助系统(advanced driving assistant system,adas)和自动驾驶系统(autonomous driving system,ads)中对路面上的动态障碍物(人或车)、静态物体(交通灯、交通标志或交通锥状物)的识别,在终端视觉的拍照美颜功能中通过识别人体掩膜mask和关键点实现瘦身效果等。
4.感知网络通常包括特征金字塔网络(feature pyramid networks,fpn),其引入了一个自顶到底的网络结构,并且引入从原始特征提取网络引出的横向连接支路,将原始特征网络对应分辨率特征图与经过上采样之后的深层特征图进行融合,fpn中引入的自顶到底的网络结构感受野较大,但是其针对于小物体的检测的检测精度较低。


技术实现要素:

5.第一方面,本技术提供了一种物体检测方法,所述方法用于第一感知网络,所述方法包括:
6.接收输入的第一图像,并对所述第一图像进行卷积处理,以生成多个第一特征图;
7.需要说明的是,这里的“对所述输入的图像进行卷积处理”,不应理解为,仅仅对对所述输入的图像进行卷积处理,在一些实现中,可以对所述输入的图像进行卷积处理、池化操作等等。
8.需要说明的是,这里的“对所述第一图像进行卷积处理,以生成多个第一特征图”,不应仅理解为,对所述第一图像进行多次卷积处理,每次卷积处理可以生成一个第一特征
图,即不应该理解为每张第一特征图都是基于对第一图像进行卷积处理得到的,而是,从整体上来看,第一图像是多个第一特征图的来源;在一种实现中,可以对所述第一图像进行卷积处理得到一个第一特征图,之后可以对生成的第一特征图进行卷积处理,得到另一个第一特征图,以此类推,就可以得到多个第一特征图。
9.需要说明的是,可以是对所述输入的图像进行一系列的卷积处理,具体的,在每次卷积处理时,可以是对前一次卷积处理得到的第一特征图进行卷积处理,进而得到一个第一特征图,通过上述方式,可以得到多个第一特征图。
10.需要说明的是,多个第一特征图可以是具有多尺度分辨率的特征图,即多个第一特征图并不是分辨率相同的特征图,在一种可选实现中,多个第一特征图可以构成一个特征金字塔。
11.其中,可以接收输入的图像,并对所述输入的图像进行卷积处理,生成具有多尺度分辨率的多个第一特征图;卷积处理单元可以对输入的图像进行一系列的卷积处理,得到在不同的尺度(具有不同分辨率)下的特征图(feature map)。卷积处理单元可以采用多种形式,比如视觉几何组(visual geometry group,vgg)、残差神经网络(residual neural network,resnet)、googlenet的核心结构(inception-net)等。
12.根据所述多个第一特征图生成多个第二特征图;其中,所述多个第一特征图比所述多个第二特征图包括更多的所述输入的图像的纹理细节和/或所述输入的图像中的位置细节。
13.需要说明的是,这里的“根据所述多个第一特征图生成多个第二特征图”,并不应该理解为生成多个第二特征图中的每个第二特征图的来源都是多个第一特征图;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于多个第一特征图中的一个或多个第一特征图生成的;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于多个第一特征图中的一个或多个第一特征图,以及除自身之外的其他第二特征图生成的;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于除自身之外的其他第二特征图生成的,此时,由于“除自身之外的其他第二特征图是基于多个第一特征图中的一个或多个第一特征图”生成的,因此,可以理解为根据所述多个第一特征图生成多个第二特征图。
14.需要说明的是,多个第二特征图可以是具有多尺度分辨率的特征图,即多个第二特征图并不是分辨率相同的特征图,在一种可选实现中,多个第二特征图可以构成一个特征金字塔。
15.其中,可以对卷积处理单元生成的多个第一特征图中的最顶层特征图c4进行卷积操作,示例性的,可以使用空洞卷积和1
×
1卷积将最顶层特征图c4的通道数下降为256,作为特征金字塔的最顶层特征图p4;横向链接最顶层下一层特征图c3的输出结果并使用1
×
1卷积降低通道数至256后,与特征图p4逐通道逐像素相加得到特征图p3;以此类推,从上到下,构建出第一特征金字塔,该第一特征金字塔可以包括多个第二特征图。
16.其中,纹理细节可以用于表达细小目标和边缘特征的细节信息,相比于第二特征图,第一特征图中包括更多的纹理细节信息,使得其在针对于小目标检测的检测结果的检测精度更高。其中,位置细节可以为表达图像中物体所处的位置以及物体之间的相对位置的信息。
17.相比于第一特征图,多个第二特征图可以包括更多的深层特征,深层特征包含丰富的语义信息,其对分类任务有很好的效果,同时深层特征具有较大感受野,可以对大型目标有较好的检测效果;在一种实现中,通过引入自上向下的通路来生成多个第二特征图,可以自然地将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息。
18.根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图。
19.需要说明的是,这里的“根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图”,并不应该理解为多个第二特征图中的每个第三特征图的来源都是多个第一特征图和多个第二特征图,而是,从整体上来看,多个第一特征图和所述多个第二特征图是多个第三特征图的来源;在一种实现中,多个第三特征图中的一部分第三特征图是基于多个第一特征图中的一个或多个第一特征图以及多个第二特征图中的一个或多个第二特征图生成的;在一种实现中,多个第三特征图中的一部分第三特征图是基于多个第一特征图中的一个或多个第一特征图、多个第二特征图中的一个或多个第二特征图,以及除自身之外的其他第三特征图生成的;在一种实现中,多个第三特征图中的一部分第三特征图是基于除自身之外的其他第三特征图生成的。
20.需要说明的是,多个第三特征图可以是具有多尺度分辨率的特征图,即多个第三特征图并不是分辨率相同的特征图,在一种可选实现中,多个第三特征图可以构成一个特征金字塔。
21.根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果。
22.在一种实现中,物体可以是人、动物、植物、物品等。
23.在一种实现中,可以根据所述多个第三特征图中的至少一个第三特征图,对图像进行物体检测,其中,物体检测是为了标识出图像中包括的物体的种类,以及物体所在的位置等。
24.在现有的一种实现中,第二特征图生成单元(例如特征金字塔网络)通过引入自上向下的通路,将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息,同时深层特征具有较大感受野,使得可以对大型目标有较好的检测效果。但是现有的实现中,忽略了更浅层特征图所包含的更加精细的位置细节信息以及纹理细节信息,这对中、小目标的检测精度的影响很大。本技术实施例中,第二特征图生成单元将原始特征图(卷积处理单元生成的多个第一特征图)浅层的纹理细节信息引入到深层特征图(第一特征图生成单元生成的多个第二特征图)中,来生成多个第三特征图,将该具有浅层的丰富纹理细节信息的第三特征图作为检测单元进行目标检测的输入数据,可以提升后续物体检测的检测精度。
25.需要说明的是,本实施例中并不是指对于任意包括小目标的图像的物体检测的检测精度都会更高,而是以一个大的数量样本来说,本实施例可以具有更高的综合检测精度。
26.需要说明的是,上述物体检测方法可以由数据处理系统,例如一个训练好的感知网络来实现,其中,感知网络可以包括卷积处理单元、第一特征图生成单元、第二特征图生成单元和检测单元,所述卷积处理单元分别与所述第一特征图生成单元和所述第二特征图生成单元连接,所述第一特征图生成单元和所述第二特征图生成单元连接,所述第二特征
图生成单元与所述检测单元连接,所述卷积处理单元,用于接收输入的图像,并对所述输入的图像进行卷积处理,以生成多个第一特征图;所述第一特征图生成单元,用于根据所述多个第一特征图生成多个第二特征图;其中,所述多个第一特征图比所述多个第二特征图包括更多的所述输入的图像的纹理细节和/或所述输入的图像中的位置细节;所述第二特征图生成单元,用于根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图;所述检测单元,用于根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的检测结果。
27.在一种实现中,所述感知网络可以包括:主干网络、第一特征金字塔网络fpn、第二fpn和头端header,所述主干网络分别与所述第一fpn和所述第二fpn连接,所述第一fpn和所述第二fpn连接,所述第二fpn与所述head连接(其中,卷积处理单元为主干网络,所述第一特征图生成单元为为第一特征金字塔网络fpn,所述第二特征图生成单元为第二特征金字塔网络fpn,所述检测单元为头端head)。
28.所述主干网络,可以用于接收输入的图像,并对所述输入的图像进行卷积处理,生成具有多尺度分辨率的多个第一特征图;主干网络可以对输入的图像进行一系列的卷积处理,得到在不同的尺度(具有不同分辨率)下的特征图(feature map)。主干网络可以采用多种形式,比如视觉几何组(visual geometry group,vgg)、残差神经网络(residual neural network,resnet)、googlenet的核心结构(inception-net)等。
29.所述第一fpn,可以用于根据所述多个第一特征图生成第一特征金字塔,所述第一特征金字塔包括具有多尺度分辨率的多个第二特征图;其中,对主干网络生成的最顶层特征图c4进行卷积操作,示例性的,可以使用空洞卷积和1
×
1卷积将最顶层特征图c4的通道数下降为256,作为特征金字塔的最顶层特征图p4;横向链接最顶层下一层特征图c3的输出结果并使用1
×
1卷积降低通道数至256后,与特征图p4逐通道逐像素相加得到特征图p3;以此类推,从上到下,构建出第一特征金字塔。
30.所述第二fpn,可以用于根据所述多个第一特征图和所述多个第二特征图生成第二特征金字塔,所述第二特征金字塔包括具有多尺度分辨率的多个第三特征图;
31.所述head,用于根据所述多个第三特征图中的至少一个第三特征图,对所述图像中的目标物体进行检测,并输出检测结果。
32.本技术实施例中,第二fpn将原始特征图(主干网络生成的多个第一特征图)浅层的丰富的边缘、纹理等细节信息引入到深层特征图(第一fpn生成的多个第二特征图)中,来生成第二特征金字塔,将该具有浅层的丰富的边缘、纹理等细节信息的第三特征图作为head进行目标检测的输入数据,可以提升后续物体检测的检测精度。
33.在一种可选的实现中,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图和第四目标特征图,所述第三目标特征图的分辨率小于所述第四目标特征图;所述根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图,包括:
34.对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样和卷积处理,以得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的通道数和分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征
图做通道叠加,以生成所述第四目标特征图;
35.本技术实施例中,可以对所述第三目标特征图进行下采样和卷积处理,得到第五目标特征图,其中下采样的目的是使得第五目标特征图中各个通道的特征图的分辨率与第二目标特征图相同,卷积处理的目的是使得第五目标特征图的通道数与第二目标特征图相同。通过上述方式,使得所述第五目标特征图与第二目标特征图具有相同的分辨率和通道数,进而可以将第五目标特征图、第六目标特征图所述和第二目标特征图逐通道相加,得到第四目标特征图。
36.或,对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样,得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图做通道叠加以及进行卷积处理,以生成所述第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的通道数。
37.本技术实施例中,表述“通道叠加”可以理解为对对应的通道(即相同语义信息的通道)的特征图中对应的元素(对应的元素可以理解为特征图上位于相同位置的元素)进行叠加(例如做加法运算等)。
38.本技术实施例中,第二目标特征图可以为包括多个通道的特征图,每个通道对应的特征图可以为包括一种语义信息的特征图。
39.本技术实施例中,可以对所述第三目标特征图进行下采样,得到第五目标特征图,其中下采样的目的是使得第五目标特征图中各个通道的特征图的分辨率与第二目标特征图相同。通过上述方式,使得所述第五目标特征图与所述第二目标特征图具有相同的分辨率,进而可以将第五目标特征图与所述第二目标特征逐通道相加;可以对所述第一目标特征图进行下采样,得到第六目标特征图,其中下采样的目的是使得第六目标特征图中各个通道的特征图的分辨率与第二目标特征图相同。通过上述方式,使得所述第五目标特征图、所述第六目标特征图以及所述第二目标特征图具有相同的分辨率,进而可以将所述第五目标特征图、所述第六目标特征图以及所述第二目标特征图逐通道相加,之后再通过卷积处理,以使得到的第四目标特征图与第二目标特征图具有相同的通道数,其中,上述卷积处理可以是concatenation操作。
40.本实施例中,可以生成分辨率不同的第三目标特征图和第四目标特征图,第三目标特征图的分辨率小于所述第四目标特征图,其中,分辨率较大的第四目标特征图是基于多个第一特征图中的一个第一特征图、多个第二特征图中的一个第二特征图以及第三目标特征图生成的。此时,第二特征图生成单元生成的多个第三特征图保留了特征金字塔网络的优点,其具有自下向上(从小分辨率的特征图依次生成更大分辨率的特征图),将浅层神经网络所具有的丰富的纹理细节信息和/或位置细节信息引入到深层卷积层中,检测网络利用通过这种方式生成的多个第三特征图的小目标检测结果的检测精度更高。
41.在一种实现方式中,所述方法还包括:
42.通过第一卷积层对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第四特征图;
43.以及对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第
五特征图;其中,所述第四特征图对应的感受野大于所述第五特征图对应的感受野;
44.相应的,所述根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果,包括:
45.根据所述至少一个第四特征图和所述至少一个第五特征图,输出对所述图像中包括的物体的第一检测结果。
46.本实施例中,通过对第三特征图进行处理后得到的第四特征图和第五特征图具有不同的感受野,由于具有不同的感受野的特征图,可以适应性的对不同大小的目标进行检测,例如可以通过具有不同扩张率(dilation rate)的卷积层对第三特征图进行处理,其得到的处理结果可以即包括大目标的信息也可以包括小目标的信息,使得后续的目标检测过程中既可以实现大目标的检测也可以实现小目标的检测。
47.在一种实现方式中,所述方法还包括:
48.根据第一权重值对所述第四特征图进行处理,以得到处理后的第四特征图;
49.需要说明的是,可以将所述第一权重值对所述第四特征图进行基于通道的相乘操作或者其他数值处理,使得第四特征图中的元素进行相应大小的增益。
50.根据第二权重值对所述第五特征图进行处理,以得到处理后的第五特征图;需要说明的是,可以将所述第二权重值对所述第五特征图进行基于通道的相乘操作或者其他数值处理,使得第五特征图中的元素进行相应大小的增益。
51.其中,在所述第四特征图包括的待检测物体大于所述第五特征图包括的待检测物体的情况下,所述第一权重值大于所述第二权重值;
52.相应的,所述根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果,包括:
53.根据所述处理后的第四特征图和所述处理后的第五特征图,输出对所述图像中包括的物体的第一检测结果。
54.本实施例中,若所述第四特征图包括的待检测物体大于所述第五特征图包括的待检测物体,则相应的,第一权重值大于所述第二权重值,则处理后的第四特征图相对处理后的第五特征图获得的增益会更大,由于第四特征图本身对应的感受野大于第五特征图对应的感受野,感受野越大的特征图,其具有更多的大目标的信息,相应利用其进行的目标检测中大目标的检测精度也更高,本实施例中,当图像中具有的较大的目标时,第四特征图相应进行的增益相比于第五特征图也更多,在检测单元基于处理后的第四特征图和所述处理后的第五特征图,对所述图像进行目标检测时,整体会具有更大的感受野,相应的,检测精度也更高。
55.本实施例中,可以通过训练,使得中间特征提取层学习到权重值的识别规律:针对于包括大目标的特征图,其确定的第一卷积层的第一权重值较大,其确定的第二卷积层的第二权重值较小。针对于包括小目标的特征图,其确定的第一卷积层的第一权重值较小,其确定的第二卷积层的第二权重值较大。
56.在一种实现方式中,所述方法还包括:
57.对所述多个第三特征图中的至少一个第三特征图进行空洞卷积处理;
58.根据空洞卷积处理后的所述至少一个第三特征图,对所述图像中的目标物体进行检测,并输出第一检测结果。
59.本技术实施例中,可以在候选区域提取网络(rpn)中会有一个3x3卷积起到滑动窗口的作用,在至少一个第三特征图上移动该卷积核通过后续中间层和类别判断以及边框回归层可以获取得到各锚点(anchor)边框中是否存在目标以及预测边框与真实边框之间的差别,通过训练候选区域提取网络可以获取到较好的边框提取结果。本实施例中,将3x3的滑动窗口卷积核替换为3x3的空洞卷积核,对所述多个第三特征图中的至少一个第三特征图进行空洞卷积处理,根据空洞卷积处理后的所述至少一个第三特征图,对所述图像中的目标物体进行检测,并输出检测结果,在不增加计算量的情况下,增大感受野,减少对大目标和部分遮挡目标的漏检。
60.在一种实现方式中,所述第一检测结果包括第一检测框,所述方法还包括:
61.获取所述第一图像的第二检测结果,所述第二检测结果为通过第二感知网络对所述第一图像进行物体检测得到的,所述第一感知网络的物体检测精度高于所述第二感知网络的物体检测精度,所述第二检测结果包括第二检测框,所述第二检测框所在的区域与所述第一检测框所在的区域之间存在交集;
62.若所述交集的面积与所述第一检测框的面积的比值小于预设值,则更新所述第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。
63.本技术实施例中,若所述第一交集的面积与所述第一检测框的面积的比值小于预设值,则可以认为第二检测结果中遗漏了第一检测框,进而可以更新后的第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。将时序特性引入模型中进行辅助判断疑似漏检结果是否为真正漏检结果,并对漏检结果类别进行判断,提升了校验效率。
64.在一种实现方式中,所述第二检测结果包括多个检测框,所述多个检测框中的每个检测框所在的区域与所述第一检测框所在的区域之间存在交集,所述多个检测框包括所述第二检测框,其中,在所述多个检测框中每个检测框所在的区域与所述第一检测框所在的区域的交集的面积中,所述第二检测框所在的区域与所述第一检测框所在的区域之间的交集的面积最小。
65.在一种实现方式中,所述第一图像为视频中的一个图像帧,第二图像为视频中的一个图像帧,所述第一图像与所述第二图像在所述视频中的帧间距小于预设值,所述方法还包括:
66.获取所述第二图像的第三检测结果,所述第三检测结果包括第四检测框以及所述第四检测框对应的物体类别;
67.在所述第四检测框与所述第一检测框之间的形状差异以及位置差异在预设范围内的情况下,所述第一检测框对应于所述第四检测框对应的物体类别。
68.在一种实现方式中,所述第四检测框的检测置信度大于预设阈值。
69.第二方面,本技术提供了一种数据处理系统,所述数据处理系统包括:卷积处理单元、第一特征图生成单元、第二特征图生成单元和检测单元,所述卷积处理单元分别与所述第一特征图生成单元和所述第二特征图生成单元连接,所述第一特征图生成单元和所述第二特征图生成单元连接,所述第二特征图生成单元与所述检测单元连接;
70.所述卷积处理单元,用于接收输入的图像,并对所述输入的图像进行卷积处理,以生成多个第一特征图;
71.所述第一特征图生成单元,用于根据所述多个第一特征图生成多个第二特征图;
其中,所述多个第一特征图比所述多个第二特征图包括更多的所述输入的图像的纹理细节和/或所述输入的图像中的位置细节;
72.所述第二特征图生成单元,用于根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图;
73.所述检测单元,用于根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的检测结果。
74.例如,数据处理系统可以是感知网络系统,用于实现感知网络的功能。
75.在现有的一种实现中,第二特征图生成单元(例如特征金字塔网络)通过引入自上向下的通路,将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息,同时深层特征具有较大感受野,使得可以对大型目标有较好的检测效果。但是现有的实现中,忽略了更浅层特征图所包含的更加精细的位置细节信息以及纹理细节信息,这对中、小目标的检测精度的影响很大。本技术实施例中,第二特征图生成单元将原始特征图(卷积处理单元生成的多个第一特征图)浅层的纹理细节信息引入到深层特征图(第一特征图生成单元生成的多个第二特征图)中,来生成多个第三特征图,将该具有浅层的丰富纹理细节信息的第三特征图作为检测单元进行目标检测的输入数据,可以提升后续物体检测的检测精度。
76.需要说明的是,本实施例中并不是指对于任意包括小目标的图像的物体检测的检测精度都会更高,而是以一个大的数量样本来说,本实施例可以具有更高的综合检测精度。
77.由于第三方面是第一方面对应的装置,其各种实现方式、解释说明以及相应的技术效果请参见第一方面的描述,这里不再赘述。
78.第三方面,本技术提供了一种感知网络训练方法,所述方法包括:
79.获取图像中目标物体的预标注检测框;
80.获取对应于所述图像以及第一感知网络的目标检测框,所述目标检测框用于标识所述目标物体;
81.在一种设计中,可以获取所述图像的检测结果,所述检测结果为通过第一感知网络对所述图像进行物体检测得到的,所述检测结果包括所述第一物体对应的目标检测框;
82.根据损失函数对所述第一感知网络进行迭代训练,以输出第二感知网络;其中,所述损失函数与所述预标注检测框和所述目标检测框之间的交并比iou有关;
83.在一种设计中,可以根据损失函数对所述第一感知网络进行迭代训练,以更新所述第一感知网络包括的参数,以得到第二感知网络;其中,所述损失函数与所述预标注检测框和所述目标检测框之间的交并比iou有关。
84.在一种设计中,可以输出所述第二感知网络。
85.本技术实施例中,新设计的边框回归损失函数利用了具有尺度不变性,应用于目标检测度量方法的iou损失项、考虑了预测边框与真实边框长宽比的损失项以及预测边框中心坐标与真实边框中心坐标距离与预测边框右下角坐标与真实边框左上角坐标距离比值的损失项,iou损失项自然引入尺度不变的边框预测质量评估指标,两边框长宽比的损失项度量了两边框之间形状的贴合程度,第三个距离比值度量项用于解决在iou=0时,无法得知预测边框与真实边框之间相对位置关系以及难以进行反向传播。
86.在一种实现方式中,所述预设的损失函数还与所述目标检测框与所述预标注检测
框的形状差异有关,其中,所述形状差异与所述预标注检测框的面积负相关。
87.在一种实现方式中,所述预设的损失函数还与所述目标检测框与所述预标注检测框在所述图像中的位置差异有关,其中,所述位置差异与所述预标注检测框的面积负相关;或所述位置差异与所述预标注检测框和所述目标检测框的凸包的最小外接矩形的面积负相关。
88.在一种实现方式中,所述目标检测框包括第一角点和第一中心点,所述预标注检测框包括第二角点和第二中心点,所述第一角点和所述第二角点为矩形对角线的两个端点,所述位置差异还与所述第一中心点和所述第二中心点在所述图像中的位置差异正相关、以及与所述第一角点和所述第二角点的长度负相关。
89.在一种实现方式中,所述预设的损失函数包括与所述位置差异有关的目标损失项,所述目标损失项随着所述位置差异的变化而变化;其中,当所述位置差异大于预设值时,所述目标损失项的变化率大于第一预设变化率;和/或,当所述位置差异小于预设值时,所述目标损失项的变化率小于第二预设变化率。当所述位置差异大于预设值时,所述目标损失项的变化率大于第一预设变化率;和/或,当所述位置差异小于预设值时,所述目标损失项的变化率小于第二预设变化率,可以在训练过程中实现快速收敛的效果。
90.第四方面,本技术提供了一种感知网络训练装置,所述装置包括:
91.获取模块,用于获取图像中目标物体的预标注检测框;以及获取对应于所述图像以及第一感知网络的目标检测框,所述目标检测框用于标识所述目标物体;
92.迭代训练模块,用于根据损失函数对所述第一感知网络进行迭代训练,以输出第二感知网络;其中,所述损失函数与所述预标注检测框和所述目标检测框之间的交并比iou有关。
93.在一种实现方式中,所述预设的损失函数还与所述目标检测框与所述预标注检测框的形状差异有关,其中,所述形状差异与所述预标注检测框的面积负相关。
94.在一种实现方式中,所述预设的损失函数还与所述目标检测框与所述预标注检测框在所述图像中的位置差异有关,其中,所述位置差异与所述预标注检测框的面积负相关;或所述位置差异与所述预标注检测框和所述目标检测框的凸包的最小外接矩形的面积负相关。
95.在一种实现方式中,所述目标检测框包括第一角点和第一中心点,所述预标注检测框包括第二角点和第二中心点,所述第一角点和所述第二角点为矩形对角线的两个端点,所述位置差异还与所述第一中心点和所述第二中心点在所述图像中的位置差异正相关、以及与所述第一角点和所述第二角点的长度负相关。
96.在一种实现方式中,所述预设的损失函数包括与所述位置差异有关的目标损失项,所述目标损失项随着所述位置差异的变化而变化;其中,
97.当所述位置差异大于预设值时,所述目标损失项的变化率大于第一预设变化率;和/或,当所述位置差异小于预设值时,所述目标损失项的变化率小于第二预设变化率。
98.由于第四方面是第二方面对应的装置,其各种实现方式、解释说明以及相应的技术效果请参见第一方面的描述,这里不再赘述。
99.第五方面,本技术实施例提供了一种物体检测装置,可以包括存储器、处理器以及总线系统,其中,存储器用于存储程序,处理器用于执行存储器中的程序,以执行如上述第
二方面及第二方面任一可选的方法。
100.第六方面,本技术实施例提供了一种物体检测装置,可以包括存储器、处理器以及总线系统,其中,存储器用于存储程序,处理器用于执行存储器中的程序,以执行如上述第三方面及第三方面任一可选的方法。
101.第七方面,本发明实施例还提供一种感知网络应用系统,该感知网络应用系统包括至少一个处理器,至少一个存储器、至少一个通信接口以及至少一个显示设备。处理器、存储器、显示设备和通信接口通过通信总线连接并完成相互间的通信。
102.通信接口,用于与其他设备或通信网络通信;
103.存储器用于存储执行以上方案的应用程序代码,并由处理器来控制执行。所述处理器用于执行所述存储器中存储的应用程序代码;
104.存储器存储的代码可执行以上提供的一种物体检测方法也可以是上述实施例提供的训练该感知网络的方法;
105.显示设备用于显示待识别图像、该待识别图像中感兴趣物体的2d、3d、mask、关键点等信息。
106.第八方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行上述第二方面及其任一可选的方法或第一方面及其任一可选的方法。
107.第九方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行上述第三方面及其任一可选的方法。
108.第十方面,本技术实施例提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面及其任一可选的方法。
109.第十一方面,本技术实施例提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第三方面及其任一可选的方法。
110.第十二方面,本技术提供了一种芯片系统,该芯片系统包括处理器,用于支持执行设备或训练设备实现上述方面中所涉及的功能,例如,发送或处理上述方法中所涉及的数据;或,信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存执行设备或训练设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
111.本技术提供了一种数据处理系统,所述第二特征图生成单元将原始特征图(卷积处理单元生成的多个第一特征图)浅层的纹理细节信息引入到深层特征图(第一特征图生成单元生成的多个第二特征图)中,来生成多个第三特征图,将该具有浅层的丰富纹理细节信息的第三特征图作为检测单元进行目标检测的输入数据,可以提升后续物体检测的检测精度。
附图说明
112.图1为人工智能主体框架的一种结构示意图;
113.图2为本技术实施例的应用场景;
114.图3为本技术实施例的应用场景;
115.图4为本技术实施例的应用场景;
116.图5为本技术实施例提供的一种系统架构的示意图;
117.图6为本技术实施例采用的卷积神经网络的结构示意;
118.图7为本技术实施例采用的卷积神经网络的结构示意;
119.图8为本技术实施例提供的一种芯片的硬件结构;
120.图9为本技术实施例提供的一种感知网络的结构示意图;
121.图10为一种主干网络的结构示意;
122.图11为一种第一fpn的结构示意;
123.图12a为一种第二fpn的结构示意;
124.图12b为一种第二fpn的结构示意;
125.图12c为一种第二fpn的结构示意;
126.图12d为一种第二fpn的结构示意;
127.图12e为一种第二fpn的结构示意;
128.图13a为一种head的结构示意;
129.图13b为一种head的结构示意;
130.图14a为本技术实施例提供的一种感知网络的结构示意;
131.图14b为本技术实施例提供的一种空洞卷积核的示意;
132.图14c为一种中间特征提取的处理流程示意;
133.图15为本技术实施例提供的一种物体检测方法的流程示意;
134.图16为本技术实施例提供的一种感知网络训练方法的流程示意;
135.图17为本技术实施例提供的一种物体检测方法的流程示意;
136.图18为本技术实施例提供的一种感知网络训练装置的示意;
137.图19为本技术实施例提供的一种物体检测装置的示意;
138.图20为本技术实施例提供的执行设备的一种结构示意图;
139.图21是本技术实施例提供的训练设备一种结构示意图;
140.图22为本技术实施例提供的芯片的一种结构示意图。
具体实施方式
141.下面结合本发明实施例中的附图对本发明实施例进行描述。本发明的实施方式部分使用的术语仅用于对本发明的具体实施例进行解释,而非旨在限定本发明。
142.下面结合附图,对本技术的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
143.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本技术的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
144.首先对人工智能系统总体工作流程进行描述,请参见图1,图1示出的为人工智能
主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“it价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。“it价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。
145.(1)基础设施
146.基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(cpu、npu、gpu、asic、fpga等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。
147.(2)数据
148.基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。
149.(3)数据处理
150.数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
151.其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
152.推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
153.决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
154.(4)通用能力
155.对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
156.(5)智能产品及行业应用
157.智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能终端、智能交通、智能医疗、自动驾驶、平安城市等。
158.本技术实施例主要应用在驾驶辅助、自动驾驶、手机终端等需要完成多种感知任务的领域。本发明的应用系统框架如图2和图3所示,图2展示了本技术实施例的应用场景,本技术实施例处于数据处理平台中数据自动标注的模块中,虚线框出了本发明所在的位置。该系统是人机协同的智能数据平台,为构筑效率更高、训练更快、模型更强的人工智能能力。数据自动标注模块是为解决人工标注成本高,人工标注集少的一种智能标注系统框架。
159.本技术实施例的产品实现形态,是包含在智能数据存储系统中,并部署在服务器
硬件上的程序代码,因本方案而功能增强或改造的网元属于软改造,属于一个相对独立的模块,以图3所示的应用场景为例,本技术实施例的程序代码存在于智能数据系统件的运行时训练模块中,程序运行时,本技术实施例的程序代码运行于服务器的主机存储和加速硬件(gpu/fpga/专用芯片)内存,未来可能产生的影响是,数据读入模块之前可能从某个ftp、文件、数据库、内存中读取数据,采用本技术实施例后,可以只需要将数据源更新为本方案中涉及功能模块的接口。
160.图3给出了本发明在服务器及平台软件中的实现形态,其中标签生成装置和自动校准装置为本发明在现有平台软件基础上新增加的模块。
161.下面分别对adas/ads视觉感知系统和手机美颜两种应用场景做简单的介绍。
162.应用场景1:adas/ads视觉感知系统
163.如图4所示,在adas和ads中,需要实时进行多类型的2d目标检测,包括:动态障碍物(行人(pedestrian)、骑行者(cyclist)、三轮车(tricycle)、轿车(car)、卡车(truck)、公交车(bus)),静态障碍物(交通锥标(trafficcone)、交通棍标(trafficstick)、消防栓(firehydrant)、摩托车(motocycle)、自行车(bicycle)),交通标志((trafficsign)、导向标志(guidesign)、广告牌(billboard)、红色交通灯(trafficlight_red)/黄色交通灯(trafficlight_yellow)/绿色交通灯(trafficlight_green)/黑色交通灯(trafficlight_black)、路标(roadsign))。另外,为了准确获取动态障碍物的在3维空间所占的区域,还需要对动态障碍物进行3d估计,输出3d框。为了与激光雷达的数据进行融合,需要获取动态障碍物的mask,从而把打到动态障碍物上的激光点云筛选出来;为了进行精确的泊车位,需要同时检测出泊车位的4个关键点;为了进行构图定位,需要检测出静态目标的关键点。使用本技术实施例提供的技术方案,可以在感知网络中完成上述的全部或一部分功能。
164.应用场景2:手机美颜功能
165.在手机中,通过本技术实施例提供的感知网络检测出人体的mask和关键点,可以对人体相应的部位进行放大缩小,比如进行收腰和美臀操作,从而输出美颜的图像。
166.应用场景3:图像分类场景:
167.物体识别装置在获取待分类图像后,采用本技术的物体识别方法获取待分类图像中的物体的类别,然后可根据待分类图像中物体的类别对待分类图像进行分类。对于摄影师来说,每天会拍很多照片,有动物的,有人物,有植物的。采用本技术的方法可以快速地将照片按照照片中的内容进行分类,可分成包含动物的照片、包含人物的照片和包含植物的照片。
168.对于图像数量比较庞大的情况,人工分类的方式效率比较低下,并且人在长时间处理同一件事情时很容易产生疲劳感,此时分类的结果会有很大的误差;而采用本技术的方法可以快速地将图像进行分类,并且不会有误差。
169.应用场景4:商品分类:
170.物体识别装置获取商品的图像后,然后采用本技术的物体识别方法获取商品的图像中商品的类别,然后根据商品的类别对商品进行分类。对于大型商场或超市中种类繁多的商品,采用本技术的物体识别方法可以快速完成商品的分类,降低了时间开销和人工成本。
171.下面从模型训练侧和模型应用侧对本技术提供的方法进行描述:
172.本技术实施例提供的训练感知网络的方法,涉及计算机视觉的处理,具体可以应用于数据训练、机器学习、深度学习等数据处理方法,对训练数据(如本技术中的物体的图像或图像块和物体的类别)进行符号化和形式化的智能信息建模、抽取、预处理、训练等,最终得到训练好的感知网络的;并且,本技术实施例将输入数据(如本技术中的物体的图像)输入到所述训练好的感知网络中,得到输出数据(如本技术中得到该图像中感兴趣物体的2d、3d、mask、关键点等信息)。
173.由于本技术实施例涉及大量神经网络的应用,为了便于理解,下面先对本技术实施例涉及的相关术语及神经网络等相关概念进行介绍。
174.(1)物体检测,利用图像处理和机器学习、计算机图形学等相关方法,物体检测可以确定图像物体的类别,并确定用于定位物体的检测框。
175.(2)卷积神经网络(convosutionas neuras network,cnn)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。该特征抽取器可以看作是滤波器。本实施例中的感知网络可以包括卷积神经网络,用于对图像进行卷积处理或者对特征图进行卷积处理来生成特征图。
176.(3)反向传播算法
177.卷积神经网络可以采用误差反向传播(back propagation,bp)算法在训练过程中修正初始的超分辨率模型中参数的大小,使得超分辨率模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的超分辨率模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的超分辨率模型的参数,例如权重矩阵。本实施例中,在进行感知网络的训练时,可以基于反向传播算法来更新感知网络。
178.图5是本技术实施例提供的一种系统架构的示意图,在图5中,执行设备110配置输入/输出(input/output,i/o)接口112,用于与外部设备进行数据交互,用户可以通过客户设备140向i/o接口112输入数据,所述输入数据在本技术实施例中可以包括:待识别图像或者图像块或者图像。
179.在执行设备120对输入数据进行预处理,或者在执行设备120的计算模块111执行计算等相关的处理(比如进行本技术中神经网络的功能实现)过程中,执行设备120可以调用数据存储系统150中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储系统150中。
180.最后,i/o接口112将处理结果,如上述得到的图像或图像块或者图像中感兴趣物体的2d、3d、mask和关键点等信息中的至少一种返回给客户设备140,从而提供给用户。
181.可选地,客户设备140,可以是自动驾驶系统中的控制单元、手机终端中的功能算法模块,例如该功能算法模块可以用于实现与感知相关的任务。
182.值得说明的是,训练设备120可以针对不同的目标或称不同的任务,基于不同的训练数据生成相应的目标模型/规则,该相应的目标模型/规则即可以用于实现上述目标或完成上述任务,从而为用户提供所需的结果。其中,目标模型/规则可以是后续实施例中描述的感知网络,为用户提供的结果可以是后续实施例中的物体检测结果。
183.在图5中所示情况下,用户可以手动给定输入数据,该手动给定可以通过i/o接口112提供的界面进行操作。另一种情况下,客户设备140可以自动地向i/o接口112发送输入
数据,如果要求客户设备140自动发送输入数据需要获得用户的授权,则用户可以在客户设备140中设置相应权限。用户可以在客户设备140查看执行设备110输出的结果,具体的现形式可以是显示、声音、动作等具体方式。客户设备140也可以作为数据采集端,采集如图所示输入i/o接口112的输入数据及输出i/o接口112的输出结果作为新的样本数据,并存入数据库130。当然,也可以不经过客户设备140进行采集,而是由i/o接口112直接将如图所示输入i/o接口112的输入数据及输出i/o接口112的输出结果,作为新的样本数据存入数据库130。
184.值得注意的是,图5仅是本技术实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图5中,数据存储系统150相对执行设备110是外部存储器,在其它情况下,也可以将数据存储系统150置于执行设备110中。
185.如图5所示,可以根据训练设备120训练得到感知网络。
186.其中,感知网络可以包括带有卷积结构的深度神经网络。本技术实施例采用的卷积神经网络的结构可以如图6所示。在图6中,卷积神经网络(cnn)200可以包括输入层210,卷积层/池化层220(其中池化层为可选的),以及神经网络层230。其中,输入层210可以获取待处理图像,并将获取到的待处理图像交由卷积层/池化层220以及后面的神经网络层230进行处理,可以得到图像的处理结果。下面对图6中的cnn 200中内部的层结构进行详细的介绍。
187.卷积层/池化层220:
188.卷积层:
189.如图6所示卷积层/池化层220可以包括如示例221-226层,举例来说:在一种实现中,221层为卷积层,222层为池化层,223层为卷积层,224层为池化层,225为卷积层,226为池化层;在另一种实现方式中,221、222为卷积层,223为池化层,224、225为卷积层,226为池化层。即卷积层的输出可以作为随后的池化层的输入,也可以作为另一个卷积层的输入以继续进行卷积操作。
190.下面将以卷积层221为例,介绍一层卷积层的内部工作原理。
191.卷积层221可以包括很多个卷积算子,卷积算子也称为核,其在图像处理中的作用相当于一个从输入图像矩阵中提取特定信息的过滤器,卷积算子本质上可以是一个权重矩阵,这个权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,权重矩阵通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素
……
这取决于步长stride的取值)的进行处理,从而完成从图像中提取特定特征的工作。
192.这些权重矩阵中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个权重矩阵可以用来从输入图像中提取信息,从而使得卷积神经网络200进行正确的预测。
193.当卷积神经网络200有多个卷积层的时候,初始的卷积层(例如221)往往提取较多的一般特征,该一般特征也可以称之为低级别的特征;随着卷积神经网络200深度的加深,越往后的卷积层(例如226)提取到的特征越来越复杂,比如高级别的语义之类的特征,语义越高的特征越适用于待解决的问题。
194.池化层:
195.由于常常需要减少训练参数的数量,因此卷积层之后常常需要周期性的引入池化层,在如图6中220所示例的221-226各层,可以是一层卷积层后面跟一层池化层,也可以是
多层卷积层后面接一层或多层池化层。
196.神经网络层230:
197.在经过卷积层/池化层220的处理后,卷积神经网络200还不足以输出所需要的输出信息。因为如前所述,卷积层/池化层220只会提取特征,并减少输入图像带来的参数。
198.需要说明的是,如图6所示的卷积神经网络210仅作为一种卷积神经网络的示例,在具体的应用中,卷积神经网络还可以以其他网络模型的形式存在。
199.本技术实施例的感知网络可以包括带有卷积结构的深度神经网络,其中,卷积神经网络的结构可以如图7所示。在图7中,卷积神经网络(cnn)200可以包括输入层110,卷积层/池化层120(其中池化层为可选的),以及神经网络层130。与图6相比,图7中的卷积层/池化层120中的多个卷积层/池化层并行,将分别提取的特征均输入给全神经网络层130进行处理。
200.参见图8,图8为本技术实施例提供的一种数据处理系统的结构示意图。如图8所示,该数据处理系统可以包括:
201.卷积处理单元801、第一特征图生成单元802、第二特征图生成单元803和检测单元804,所述卷积处理单元801分别与所述第一特征图生成单元802和所述第二特征图生成单元803连接,所述第一特征图生成单元802和所述第二特征图生成单元803连接,所述第二特征图生成单元803与所述检测单元804连接。
202.在一种实现中,数据处理系统可以实现感知网络的功能,其中,所述卷积处理单元801为主干网络,所述第一特征图生成单元802和所述第二特征图生成单元803为特征金字塔网络,所述检测单元804为头端head。
203.参见图9,图9为本技术实施例提供的一种感知网络的结构示意图。如图9所示,该感知网络包括:
204.主干网络901、第一特征金字塔网络fpn 902、第二fpn 903和头端header 904,所述主干网络901分别与所述第一fpn 902和所述第二fpn 903连接,所述第一fpn 901和所述第二fpn 902连接,所述第二fpn 903与所述head 904连接;
205.本技术实施例中,感知网络的架构可以为如图9中示出的架构,其主要由主干网络901、第一fpn 902、第二fpn 903以及头端header 904组成。
206.在一种实现中,所述卷积处理单元801为主干网络,所述卷积处理单元801,用于接收输入的图像,并对所述输入的图像进行卷积处理,以生成多个第一特征图。
207.需要说明的是,这里的“对所述输入的图像进行卷积处理”,不应理解为,仅仅对对所述输入的图像进行卷积处理,在一些实现中,可以对所述输入的图像进行卷积处理以及其他处理。
208.需要说明的是,这里的“对所述第一图像进行卷积处理,以生成多个第一特征图”,不应仅理解为,对所述第一图像进行多次卷积处理,每次卷积处理可以生成一个第一特征图,即不应该理解为每张第一特征图都是基于对第一图像进行卷积处理得到的,而是,从整体上来看,第一图像是多个第一特征图的来源;在一种实现中,可以对所述第一图像进行卷积处理得到一个第一特征图,之后可以对生成的第一特征图进行卷积处理,得到另一个第一特征图,以此类推,就可以得到多个第一特征图。
209.需要说明的是,可以是对所述输入的图像进行一系列的卷积处理,具体的,在每次
卷积处理时,可以是对前一次卷积处理得到的第一特征图进行卷积处理,进而得到一个第一特征图,通过上述方式,可以得到多个第一特征图。
210.需要说明的是,多个第一特征图可以是具有多尺度分辨率的特征图,即多个第一特征图并不是分辨率相同的特征图,在一种可选实现中,多个第一特征图可以构成一个特征金字塔。
211.其中,所述卷积处理单元,可以用于接收输入的图像,并对所述输入的图像进行卷积处理,生成具有多尺度分辨率的多个第一特征图;卷积处理单元可以对输入的图像进行一系列的卷积处理,得到在不同的尺度(具有不同分辨率)下的特征图(feature map)。卷积处理单元可以采用多种形式,比如视觉几何组(visual geometry group,vgg)、残差神经网络(residual neural network,resnet)、googlenet的核心结构(inception-net)等。
212.本技术实施例中,卷积处理单元可以是主干网络,主干网络901,用于接收输入的图像,并对所述输入的图像进行卷积处理,生成具有多尺度分辨率的多个第一特征图。
213.参照图10,图10为本技术实施例提供的一种主干网络的结构示意,如图10中示出的那样,主干网络用于接收输入的图像,并对输入的图像进行卷积处理,输出对应所述图像的具有不同分辨率的特征图(特征图c1、特征图c2、特征图c3、特征图c4);也就是说输出对应所述图像的不同大小的特征图,主干网络完成基础特征的提取,为后续的检测提供相应的特征。
214.具体的,主干网络可以对输入的图像进行一系列的卷积处理,得到在不同的尺度(具有不同分辨率)下的特征图(feature map)。这些特征图将为后续的检测模块提供基础特征。主干网络可以采用多种形式,比如视觉几何组(visual geometry group,vgg)、残差神经网络(residual neural network,resnet)、googlenet的核心结构(inception-net)等。
215.主干网络可以对输入的图像进行卷积处理,生成若干不同尺度的卷积特征图,每张特征图是一个h*w*c的矩阵,其中h是特征图的高度,w是特征图的宽度、c是特征图的通道数。
216.backbone可以采用目前多种现有的卷积网络框架,比如vgg16、resnet50、inception-net等,下面以resnet18为backbone为例进行说明。
217.假设输入的图像的分辨率为h*w*3(高度h,宽度w,通道数为3,也就是rbg三个通道)。输入图像可以经过resnet18的一个卷积层res18-conv1进行卷积操作,生成featuremap(特征图)c1,这个特征图相对于输入图像进行了2次下采样,并且通道数扩充为64,因此c1的分辨率是h/4*w/4*64。c1可以经过resnet18的res18-conv2进行卷积操作,得到featuremap c2,这个特征图的分辨率与c1一致;c2继续经过res18-conv3进行卷积操作,生成featuremap c3,这个特征图相对c2进一步下采样,通道数增倍,其分辨率为h/8*w/8*128;最后c3经过res18-conv4进行卷积操作,生成featuremap c4,其分辨率为h/16*w/16*256。
218.需要说明的是,本技术实施例中的主干网络也可以称为骨干网络,这里并不限定。
219.需要说明的是,图10中示出的主干网络仅为一种实现方式,并不构成对本技术的限定。
220.所述第一特征图生成单元802,用于根据所述多个第一特征图生成多个第二特征
图;其中,所述多个第一特征图比所述多个第二特征图包括更多的纹理细节信息和/或位置细节信息。
221.需要说明的是,这里的“根据所述多个第一特征图生成多个第二特征图”,并不应该理解为生成多个第二特征图中的每个第二特征图的来源都是多个第一特征图;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于多个第一特征图中的一个或多个第一特征图生成的;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于多个第一特征图中的一个或多个第一特征图,以及除自身之外的其他第二特征图生成的;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于除自身之外的其他第二特征图生成的,此时,由于“除自身之外的其他第二特征图是基于多个第一特征图中的一个或多个第一特征图”生成的,因此,可以理解为根据所述多个第一特征图生成多个第二特征图。
222.需要说明的是,多个第二特征图可以是具有多尺度分辨率的特征图,即多个第二特征图并不是分辨率相同的特征图,在一种可选实现中,多个第二特征图可以构成一个特征金字塔。
223.其中,可以对卷积处理单元生成的多个第一特征图中的最顶层特征图c4进行卷积操作,示例性的,可以使用空洞卷积和1
×
1卷积将最顶层特征图c4的通道数下降为256,作为特征金字塔的最顶层特征图p4;横向链接最顶层下一层特征图c3的输出结果并使用1
×
1卷积降低通道数至256后,与特征图p4逐通道逐像素相加得到特征图p3;以此类推,从上到下,构建出第一特征金字塔,该第一特征金字塔可以包括多个第二特征图。
224.需要说明的是,这里的纹理细节信息,可以为浅层的用于表达细小目标和边缘特征的细节信息,相比于第二特征图,第一特征图中包括更多的纹理细节信息,使得其在针对于小目标检测的检测结果的检测精度更高。其中,位置细节可以为表达图像中物体所处的位置以及物体之间的相对位置的信息。
225.需要说明的是,相比于第一特征图,多个第二特征图可以包括更多的深层特征,深层特征包含丰富的语义信息,其对分类任务有很好的效果,同时深层特征具有较大感受野,可以对大型目标有较好的检测效果;在一种实现中,通过引入自上向下的通路来生成多个第二特征图,可以自然地将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息。
226.本技术实施例中,第一特征图生成单元802可以是第一fpn 902。
227.本技术实施例中,所述第一fpn 902,用于根据所述多个第一特征图生成第一特征金字塔,所述第一特征金字塔包括具有多尺度分辨率的多个第二特征图。本技术实施例中,第一fpn与主干网络连接,第一fpn可以对主干网络生成的多个不同分辨率的特征图进行卷积处理和合并处理,来构造第一特征金字塔。
228.参照图11,图11为一种第一fpn的结构示意,第一fpn 902可以根据所述多个第一特征图生成第一特征金字塔,所述第一特征金字塔包括具有多尺度分辨率的多个第二特征图(特征图p2、特征图p3、特征图p4、特征图p5)。其中,对主干网络901生成的最顶层特征图c4进行卷积操作,示例性的,可以使用空洞卷积和1
×
1卷积将最顶层特征图c4的通道数下降为256,作为特征金字塔的最顶层特征图p4;横向链接最顶层下一层特征图c3的输出结果并使用1
×
1卷积降低通道数至256后,与特征图p4逐通道逐像素相加得到特征图p3;以此类
推,从上到下,构建出第一特征金字塔φp={特征图p2、特征图p3、特征图p4、特征图p5}。
229.本技术实施例中,为了获取更大感受野,第一特征金字塔还可以包括特征图p5,其可以通过直接对特征图p4进行卷积操作产生。第一特征金字塔中间的特征图可以将深层特征所包含的丰富的语义信息通过自上而下的结构一层层引入的各个特征层,使不同尺度的特征图都包含较丰富的语义信息,可以为小目标提供更好的语义信息,提升小目标的分类性能。
230.需要说明的是,图11中示出的第一fpn仅为一种实现方式,并不构成对本技术的限定。
231.所述第二特征图生成单元803,用于根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图。
232.需要说明的是,这里的“根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图”,并不应该理解为多个第二特征图中的每个第三特征图的来源都是多个第一特征图和多个第二特征图,而是,从整体上来看,多个第一特征图和所述多个第二特征图是多个第三特征图的来源;在一种实现中,多个第三特征图中的一部分第三特征图是基于多个第一特征图中的一个或多个第一特征图以及多个第二特征图中的一个或多个第二特征图生成的;在一种实现中,多个第三特征图中的一部分第三特征图是基于多个第一特征图中的一个或多个第一特征图、多个第二特征图中的一个或多个第二特征图,以及除自身之外的其他第三特征图生成的;在一种实现中,多个第三特征图中的一部分第三特征图是基于除自身之外的其他第三特征图生成的。
233.需要说明的是,多个第三特征图可以是具有多尺度分辨率的特征图,即多个第三特征图并不是分辨率相同的特征图,在一种可选实现中,多个第三特征图可以构成一个特征金字塔。
234.本技术实施例中,第二特征图生成单元803可以是第二fpn 903。
235.本技术实施例中,所述第二fpn 903,用于根据所述多个第一特征图和所述多个第二特征图生成第二特征金字塔,所述第二特征金字塔包括具有多尺度分辨率的多个第三特征图。
236.参照图12a,图12a为一种第二fpn的结构示意,第二fpn 903可以根据主干网络901生成的所述多个第一特征图和第一fpn 902生成的多个第二特征图生成第二特征金字塔,其中,第二特征金字塔可以包括多个第三特征图(例如图12a中示出的特征图q1、特征图q2、特征图q3和特征图q4)。
237.本技术实施例中,第二特征金字塔包括具有多尺度分辨率的多个第三特征图,其中多个第三特征图中的最底层特征图(即分辨率最低的特征图)可以根据主干网络生成的一个第一特征图和第一fpn生成的一个第二特征图生成。
238.具体的,在一种实施例中,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图,所述第三目标特征图为所述多个第三特征图中分辨率最小的特征图,所述第二fpn用于通过以下步骤来生成所述第三目标特征图:
239.对所述第一目标特征图进行下采样和卷积处理,得到第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的通道数和分辨率;将所述第四目标特征图和
所述第二目标特征图逐通道相加,以生成所述第三目标特征图。
240.参照图12b,多个第一特征图包括第一目标特征图,第一目标特征图可以为图12b中的特征图c2,所述多个第二特征图包括第二目标特征图,第二目标特征图可以为图12b中的特征图p3,所述多个第三特征图包括第三目标特征图,第三目标特征图可以为图12b中的特征图q1。
241.本技术实施例中,可以对所述第一目标特征图进行下采样和卷积处理,得到第四目标特征图,如图12b中示出的那样,可以对特征图c2进行下采样和卷积处理,其中下采样的目的是使得第四目标特征图中各个通道的特征图的分辨率与特征图p3相同,卷积处理的目的是使得第四目标特征图的通道数与特征图p3相同。通过上述方式,使得所述第四目标特征图与所述第二目标特征图具有相同的通道数和分辨率,进而可以将第四目标特征图与所述第二目标特征逐通道相加,如图12b中示出的那样,第四目标特征图与所述第二目标特征逐通道相加后可以得到特征图q1。
242.具体的,在另一种实施例中,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图,所述第三目标特征图为所述多个第三特征图中分辨率最小的特征图,所述第二fpn用于通过以下步骤来生成所述第三目标特征图:
243.对所述第一目标特征图进行下采样,得到第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的分辨率;将所述第四目标特征图和所述第二目标特征图逐通道相加以及进行卷积处理,以生成所述第三目标特征图,所述第三目标特征图与所述第二目标特征图具有相同的通道数。
244.参照图12c,多个第一特征图包括第一目标特征图,第一目标特征图可以为图12c中的特征图c2,所述多个第二特征图包括第二目标特征图,第二目标特征图可以为图12c中的特征图p3,所述多个第三特征图包括第三目标特征图,第三目标特征图可以为图12c中的特征图q1。
245.本技术实施例中,可以对所述第一目标特征图进行下采样,得到第四目标特征图,如图12c中示出的那样,可以对特征图c2进行下采样,其中下采样的目的是使得第四目标特征图中各个通道的特征图的分辨率与特征图p3相同。通过上述方式,使得所述第四目标特征图与所述第二目标特征图具有相同的分辨率,进而可以将第四目标特征图与所述第二目标特征逐通道相加,之后再通过卷积处理,以使得到的第三目标特征图与特征图p3具有相同的通道数,其中,上述卷积处理可以是concatenation操作。
246.本技术实施例中,第二特征金字塔包括具有多尺度分辨率的多个第三特征图,其中多个第三特征图中的非最底层特征图(即分辨率不是最低的特征图)可以根据主干网络生成的一个第一特征图、第一fpn生成的一个第二特征图以及相邻底层的一个第三特征图生成。
247.具体的,在一种实施例中,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图和第四目标特征图,所述第三目标特征图的分辨率小于所述第四目标特征图,所述第二特征图生成单元用于通过以下步骤来生成所述第四目标特征图:
248.对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征
图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样和卷积处理,以得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的通道数和分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图基于各自的通道叠加,以生成所述第四目标特征图。
249.参照图12d,多个第一特征图包括第一目标特征图,第一目标特征图可以为图12d中的特征图c3,所述多个第二特征图包括第二目标特征图,第二目标特征图可以为图12d中的特征图p4,所述多个第三特征图包括第三目标特征图和第四目标特征图,第三目标特征图可以为图12d中的特征图q2。
250.本技术实施例中,可以对所述第三目标特征图进行下采样,得到第五目标特征图,如图12d中示出的那样,可以对特征图q1进行下采样,其中下采样的目的是使得第五目标特征图中各个通道的特征图的分辨率与特征图p4相同。
251.本技术实施例中,可以对所述第三目标特征图进行下采样和卷积处理,得到第五目标特征图,其中下采样的目的是使得第五目标特征图中各个通道的特征图的分辨率与第二目标特征图相同,卷积处理的目的是使得第五目标特征图的通道数与第二目标特征图相同。通过上述方式,使得所述第五目标特征图与第二目标特征图具有相同的分辨率和通道数,进而可以将第五目标特征图、第六目标特征图所述和第二目标特征图逐通道相加,得到第四目标特征图。
252.具体的,在另一种实施例中,可以对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样,得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图基于各自的通道叠加以及进行卷积处理,以生成所述第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的通道数。
253.参照图12e,多个第一特征图包括第一目标特征图,第一目标特征图可以为图12e中的特征图c3,所述多个第二特征图包括第二目标特征图,第二目标特征图可以为图12e中的特征图p4,所述多个第三特征图包括第三目标特征图和第四目标特征图,第三目标特征图可以为图12e中的特征图q2。
254.本技术实施例中,可以对所述第三目标特征图进行下采样,得到第五目标特征图,其中下采样的目的是使得第五目标特征图中各个通道的特征图的分辨率与第二目标特征图相同。通过上述方式,使得所述第五目标特征图与所述第二目标特征图具有相同的分辨率,进而可以将第五目标特征图与所述第二目标特征逐通道相加;可以对所述第一目标特征图进行下采样,得到第六目标特征图,其中下采样的目的是使得第六目标特征图中各个通道的特征图的分辨率与第二目标特征图相同。通过上述方式,使得所述第五目标特征图、所述第六目标特征图以及所述第二目标特征图具有相同的分辨率,进而可以将所述第五目标特征图、所述第六目标特征图以及所述第二目标特征图逐通道相加,之后再通过卷积处理,以使得到的第四目标特征图与第二目标特征图具有相同的通道数,其中,上述卷积处理可以是concatenation操作。
255.本实施例中,第二特征图生成单元可以生成分辨率不同的第三目标特征图和第四目标特征图,第三目标特征图的分辨率小于所述第四目标特征图,其中,分辨率较大的第四
目标特征图是基于多个第一特征图中的一个第一特征图、多个第二特征图中的一个第二特征图以及第三目标特征图生成的。此时,第二特征图生成单元生成的多个第三特征图保留了特征金字塔网络的优点,其具有自下向上(从小分辨率的特征图依次生成更大分辨率的特征图),将浅层神经网络所具有的丰富的纹理细节信息和/或位置细节信息引入到深层卷积层中,检测网络利用通过这种方式生成的多个第三特征图的小目标检测结果的检测精度更高。
256.物体检测任务不同于图像分类,在图像分类任务中,模型只需要回答图像里面是什么的问题,因此,图像分类任务具有平移、尺度等变换不变性(translation invariance)。而在物体检测任务中,模型需要同时知道图像中的目标在哪,以及该目标属于哪个类别这两个并行任务,而在实际所获取的可见光图像中,目标的大小和位置是一直在变化的,存在多尺度目标检测的问题,原始的单阶段(one stage)和两阶段(two stage)模型都是基于图像分类任务直接迁移图像分类网络的一部分用于检测,并且为了获取具有足够表达能力和语义信息的特征图,一般会选取网络的较深层特征进行后续处理,目前的深度神经网络模型为了得到更好的表达能力和更高精度的结果,都在朝着更深和多分支拓扑结构上进行拓展,随着网络层的加深,随之而来的网络退化问题也出现了,恒等映射、跳跃连接的resnet网络结构能够很好的解决网络退化问题。目前在高精度的检测模型中,网络层数都是10到100量级的深度,这样可以让网络获取更好的表达能力,但是这样做的问题是网络层越深,所获取的特征所具有的感受野越大,这样会导致检测中遗漏掉小目标。
257.而且在传统的检测算法中只用到某一层所获取的特征,这样会产生一个固定的感受野,虽然在后续处理中会引入锚点(anchor),通过设置不同大小、长宽比的锚点通过特征图映射回原图进行处理,解决多尺度问题,但是不可避免还是会存在一定目标漏检问题。特征金字塔网络(fpn)的提出能够很好的解决多尺度目标检测问题,通过对深度卷积神经网络的观察,深度网络模型本身就自带多层次多尺度的特征图,浅层特征图具有较小的感受野,深层特征图具有较大的感受野,这样直接利用这样具有金字塔层次结构的特征图可以引入多尺度信息,但是这样会存在一个问题,浅层特征图虽然具有较小的感受野,有益于检测小目标,但是浅层特征图所包含的语义信息比较少,可以理解为浅层特征不够抽象,很难用于对检测出来的目标进行分类。特征金字塔网络(fpn)采用了一种巧妙的结构设计来解决浅层特征语义信息不丰富的问题。对于一个基础的深度卷积神经网络,有一个自底到顶的前向计算获取层次特征图的过程,并且每一个尺度的特征有一个缩放因子,特征图分辨率逐渐减小。特征金字塔网络(fpn)引入了一个自顶到底的网络结构,逐渐放大特征图分辨率,并且引入从原始特征提取网络引出的横向连接支路,将原始特征网络对应分辨率特征图与经过上采样之后的深层特征图进行融合。
258.本技术实施例中,考虑将主干网络生成的浅层信息再一次融入到各特征层中,设计了一个自下而上跳跃连接的多尺度特征层设计,浅层的特征图包含非常丰富的边缘、纹理和细节信息,通过在原始特征图和自底到顶的多尺度网络层之间引入跳跃连接,并且将下采样的原始特征图与横向连接的第二个自顶到底的多次度特征层中对应分辨率的特征图进行融合,这一网络层改进,对于小目标和部分遮挡目标有较好的检测效果,能够在多尺度的特征金字塔层中引入丰富语义信息和细节信息的特征。
259.在现有的一种实现中,第二特征图生成单元(例如特征金字塔网络)通过引入自上
向下的通路,将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息,同时深层特征具有较大感受野,使得可以对大型目标有较好的检测效果。但是现有的实现中,忽略了更浅层特征图所包含的更加精细的位置细节信息以及纹理细节信息,这对中、小目标的检测精度的影响很大。本技术实施例中,所述第二特征图生成单元将原始特征图(卷积处理单元生成的多个第一特征图)浅层的纹理细节信息引入到深层特征图(第一特征图生成单元生成的多个第二特征图)中,来生成多个第三特征图,将该具有浅层的丰富纹理细节信息的第三特征图作为检测单元进行目标检测的输入数据,可以提升后续物体检测的检测精度。
260.需要说明的是,本实施例中并不是指对于任意包括小目标的图像的物体检测的检测精度都会更高,而是以一个大的数量样本来说,本实施例可以具有更高的综合检测精度。
261.所述检测单元804,用于根据所述多个第三特征图中的至少一个第三特征图,对所述图像进行目标检测,并输出检测结果。
262.本技术实施例中,检测单元804可以是头端head。
263.本技术实施例中,所述head,用于根据所述多个第三特征图中的至少一个第三特征图,对所述图像中的目标物体进行检测,并输出检测结果。
264.本技术实施例中,感知网络可以包括一个或多个head,如图13a示出的那样,每个并行头端head,用于根据所述第二fpn输出的第三特征图,对一个任务中的任务物体进行检测,输出所述任务物体所在区域的2d框以及每个2d框对应的置信度;其中,所述每个并行head可以完成不同的任务物体的检测;其中,所述任务物体为该任务中需要检测的物体;所述置信度越高,表示所述对应该置信度的2d框内存在所述任务所对应的物体的概率越大。
265.本技术实施例中,不同的head可以完成不同的2d检测任务,比如多个head中的一个head可以完成车的检测,输出car/truck/bus的2d框和置信度;多个head中的head1可以完成人的检测,输出pedestrian/cyclist/tricyle的2d框和置信度;多个head中的head可以完成交通灯的检测,输出red_trafficligh/green_trafficlight/yellow_trafficlight/black_trafficlight的2d框和置信度。
266.本技术实施例中,感知网络可以包括多个串行head;所述串行head与一个并行head连接;这里需要强调的是,实际上,串行head并不是必须的,对于只需要检测2d框的场景,就不需要包括串行head。
267.其中,所述串行head可以用于:利用其连接的并行head提供的所属任务的任务物体的2d框,在第二fpn上的一个或多个特征图上提取所述2d框所在区域的特征,根据所述2d框所在区域的特征对所述所属任务的任务物体的3d信息、mask信息或keypiont信息进行预测。串行head可选地串接在并行head的后面,在检测出该任务的2d框的基础上,完成2d框内部物体的3d/mask/keypoint检测。比如,串行3d_head0完成车辆的朝向、质心和长宽高的估计,从而输出车辆的3d框;串行mask_head0预测车辆的精细掩膜,从而把车辆分割开来;串行keypont_head0完成车辆的关键点的估计。串行head并不是必须的,某些任务不需要进行3d/mask/keypoint检测,则不需要串接串行head,比如交通灯的检测,只需要检测2d框,就不用串接串行head。另外,某些任务可以根据任务的具体需求,选择串接一个或者多个串行head,比如停车场(parkingslot)的检测,除了需要得到2d框外,还需要车位的关键点,因此在这个任务中只需要串接一个串行keypoint_head即可,不需要3d和mask的head。
maximum suppression,nms)合并后,作为最后的2d框输出。
274.2d候选区域细分类主要由图13b中的head的rcnn模块实施,其根据roi-align模块提取出来的每个proposal的特征,进一步回归出更加紧致的2d框坐标,同时对这个proposal进行分类,输出其属于各个类别的置信度。rcnn的可实现形式很多,roi-align模块输出的特征大小可以为n*14*14*256(feature of proposals),其在rcnn模块中首先经过resnet18的卷积模块4(res18-conv5)处理,输出的特征大小为n*7*7*512,然后通过一个global avg pool(平均池化层)进行处理,把输入特征中每个通道内的7*7的特征进行平均,得到n*512的特征,其中每个1*512维的特征向量代表每个proposal的特征。接下来通过2个全连接层fc分别回归框的精确坐标(输出n*4的向量,这4个数值分表表示框的中心点x/y坐标,框的宽高),框的类别的置信度(在head0中,需要给出这个框是backgroud/car/truck/bus的分数)。最后通过框合并操作,选择分数最大的若干个框,并且通过nms操作去除重复的框,从而得到紧致的框输出。
275.在一些实际应用场景中,该感知网络还可以包括其他head,可以在检测出2d框的基础上,进一步进行3d/mask/keypoint检测。示例性的,以3d为例,roi-align模块根据head提供的准确的2d框,在fpn输出的特征图上提取出每个2d框所在区域的特征,假设2d框的个数为m,那么roi-align模块输出的特征大小为m*14*14*256,其首先经过resnet18的res18-conv5处理,输出的特征大小为n*7*7*512,然后通过一个global avg pool(平均池化层)进行处理,把输入特征中每个通道的7*7的特征进行平均,得到m*512的特征,其中每个1*512维的特征向量代表每个2d框的特征。接下来通过3个全连接层fc分别回归框中物体的朝向角(orientation,m*1向量)、质心点坐标(centroid,m*2向量,这2个数值表示质心的x/y坐标)和长宽高(dimention)。
276.需要说明的是,图13a和图13b中示出的header仅为一种实现方式,并不构成对本技术的限定。
277.本技术实施例中,所述感知网络还可以包括:空洞卷积层,用于对所述多个第三特征图中的至少一个第三特征图进行空洞卷积处理;相应的,所述head,具体用于根据空洞卷积处理后的所述至少一个第三特征图,对所述图像中的目标物体进行检测,并输出检测结果。
278.参照图14a和图14b,图14a为本技术实施例提供的一种感知网络的结构示意,图14b为本技术实施例提供的一种空洞卷积核的示意。本技术实施例中,在候选区域提取网络(rpn)中会有一个3x3卷积起到滑动窗口的作用,在至少一个第三特征图上移动该卷积核通过后续中间层和类别判断以及边框回归层可以获取得到各锚点(anchor)边框中是否存在目标以及预测边框与真实边框之间的差别,通过训练候选区域提取网络可以获取到较好的边框提取结果。本实施例中,将3x3的滑动窗口卷积核替换为3x3的空洞卷积核,对所述多个第三特征图中的至少一个第三特征图进行空洞卷积处理,根据空洞卷积处理后的所述至少一个第三特征图,对所述图像中的目标物体进行检测,并输出检测结果,在不增加计算量的情况下,增大感受野,减少对大目标和部分遮挡目标的漏检。其中,假设原始普通卷积核空间尺寸为k
×
k,引入新参数d,将(d-1)个空格塞入原始卷积核中,那么新的卷积核大小为:
279.n=k (k-1)
×
(d-1)
280.例如针对于3x3的卷积核,设置d=2,得到新卷积核感受野为5x5。
281.现有候选区域提取网络(rpn)通过设置3x3普通卷积核作为滑动窗口在特征图上滑动进行后续处理,本实施例中将该3x3普通卷积核替换为3x3空洞卷积核,用于提升网络对大型目标和遮挡目标漏检的纠正,本实施例中经过对特征提取网络的改进和候选区域提取网络(rpn)的改进,最终所得到的标注模型能够获取很好的检测效果,且在利用3x3空洞卷积对普通卷积进行替换之后,在不增加计算量的情况下,可以获取更大的感受野,同时由于具有更大的感受野,可以获取到更好的上下文信息,减少背景误判为前景的发生。
282.本技术提供了一种数据处理系统,其特征在于,所述数据处理系统包括:卷积处理单元、第一特征图生成单元、第二特征图生成单元和检测单元,所述卷积处理单元分别与所述第一特征图生成单元和所述第二特征图生成单元连接,所述第一特征图生成单元和所述第二特征图生成单元连接,所述第二特征图生成单元与所述检测单元连接;所述卷积处理单元,用于接收输入的图像,并对所述输入的图像进行卷积处理,以生成多个第一特征图;所述第一特征图生成单元,用于根据所述多个第一特征图生成多个第二特征图;其中,所述多个第一特征图比所述多个第二特征图包括更多的所述输入的图像的纹理细节和/或所述输入的图像中的位置细节;所述第二特征图生成单元,用于根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图;所述检测单元,用于根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的检测结果。本技术实施例中,第二特征图生成单元将原始特征图(卷积处理单元生成的多个第一特征图)浅层的纹理细节信息引入到深层特征图(第一特征图生成单元生成的多个第二特征图)中,来生成多个第三特征图,将该具有浅层的丰富纹理细节信息的第三特征图作为检测单元进行目标检测的输入数据,可以提升后续物体检测的检测精度。
283.可选的,本技术实施例中的所述数据处理系统还可以包括:
284.中间特征提取层,用于对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第四特征图;以及对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第五特征图;其中,所述第四特征图对应的感受野大于所述第五特征图对应的感受野;所述检测单元,具体用于根据所述至少一个第四特征图和所述至少一个第五特征图,输出对所述图像中包括的物体的检测结果。
285.参照图14c,图14c为一种中间特征提取的处理流程示意,如图14c中示出的那样,可以分别利用不同扩张率(dilation rate)的卷积层的对第三特征图进行卷积处理,得到对应的特征图(每个特征图的通道数为c),并进行拼接操作,得到特征图4(通道数为3c),之后通过全局平均池化和算术平局处理得到global info descriptor,并通过第一个全连接层给予非线性特征,通过第二个全连接层和sigmoid函数处理,将各个权重值限制在0-1的范围,之后将所述权重值和对应的特征图进行逐通道相乘,得到处理后的特征图。
286.本实施例中,若所述第四特征图包括的待检测物体大于所述第五特征图包括的待检测物体,则相应的,第一权重值大于所述第二权重值,则处理后的第四特征图相对处理后的第五特征图获得的增益会更大,由于第四特征图本身对应的感受野大于第五特征图对应的感受野,感受野越大的特征图,其具有更多的大目标的信息,相应利用其进行的目标检测中大目标的检测精度也更高,本实施例中,当图像中具有的较大的目标时,第四特征图相应进行的增益相比于第五特征图也更多,在检测单元基于处理后的第四特征图和所述处理后的第五特征图,对所述图像进行目标检测时,整体会具有更大的感受野,相应的,检测精度
也更高。
287.本实施例中,可以通过训练,使得中间特征提取层学习到权重值的识别规律:针对于包括大目标的特征图,其确定的第一卷积层的第一权重值较大,其确定的第二卷积层的第二权重值较小。针对于包括小目标的特征图,其确定的第一卷积层的第一权重值较小,其确定的第二卷积层的第二权重值较大。
288.参照图15,图15为本技术实施例提供的一种物体检测方法的流程示意,如图15中示出的那样,物体检测方法包括:
289.1501、接收输入的第一图像。
290.本技术实施例中,当需要对第一图像进行物体检测时,可以接收输入的第一图像。
291.1502、通过第一感知网络对所述第一图像进行物体检测,得到第一检测结果,所述第一检测结果包括第一检测框。
292.本技术实施例中,接收输入的第一图像之后,可以通过第一感知网络对所述第一图像进行物体检测,得到第一检测结果,所述第一检测结果包括第一检测框,其中,第一检测框可以表示检测出的一个物体在第一图像中的像素位置。
293.1503、通过第二感知网络对所述第一图像进行物体检测,得到第二检测结果,所述第二检测结果包括第二检测框,所述第二检测框与所述第一检测框之间存在第一交集。
294.本技术实施例中,可以通过第二感知网络对所述第一图像进行物体检测,得到第二检测结果,所述第二检测结果包括第二检测框,其中,第一检测框可以表示检测出的一个物体在第一图像中的像素位置。
295.本技术实施例中,所述第二检测框与所述第一检测框之间存在第一交集,即在第一图像上,第二检测框所在的像素位置与第一检测框所在的像素位置存在重叠。
296.1504、若所述交集的面积与所述第一检测框的面积的比值小于预设值,则更新所述第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。
297.本技术实施例中,若所述第一交集的面积与所述第一检测框的面积的比值小于预设值,则可以认为第二检测结果中遗漏了第一检测框,进而可以更新后的第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。
298.本技术实施例中,所述第二检测结果还可以包括第三检测框,所述第三检测框与所述第一检测框之间存在第二交集,所述第二交集的面积小于所述第一交集的面积。
299.本技术实施例中,第二检测结果中可以存在多个和第一检测框之间存在交集的检测框,而其中,第二检测框与所述第一检测框之间的交集的大小是最大的,即与所述第一检测框之间的交集的大小是最大的第二检测框与第一检测框之间的交集的面积与所述第一检测框的面积的比值都小于预设值,那么其余的和第一检测框之间存在交集的检测框与第一检测框之间的交集的面积与所述第一检测框的面积的比值也都小于预设值。
300.本技术实施例中,针对于同一张图像,所述第一感知网络的物体检测精度高于所述第二感知网络的物体检测精度,所述物体检测精度与如下至少一种特征有关:检测框的形状、位置、或检测框对应的物体的类别。
301.即,本技术实施例中,第一感知网络的物体检测精度高于所述第二感知网络的物体检测精度,即可以用第一感知网络的检测结果来更新第二感知网络的检测结果。
302.可选地,可以接收输入的第一图像,并对所述第一图像进行卷积处理,以生成多个
第一特征图;根据所述多个第一特征图生成多个第二特征图;其中,所述多个第一特征图比所述多个第二特征图包括更多的纹理细节信息和/或位置细节信息;根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图;根据所述多个第三特征图中的至少一个第三特征图,对所述第一图像进行目标检测,并输出第一检测结果。
303.可选地,所述多个第二特征图比所述多个第一特征图包括更多的语义信息。
304.可选地,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图和第四目标特征图,所述第三目标特征图的分辨率小于所述第四目标特征图;对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样和卷积处理,以得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的通道数和分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图基于各自的通道叠加,以生成所述第四目标特征图;或,对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样,得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图基于各自的通道叠加以及进行卷积处理,以生成所述第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的通道数。
305.可选地,可以通过第一卷积层对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第四特征图;通过第二卷积层对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第五特征图;其中,所述第四特征图对应的感受野大于所述第五特征图对应的感受野;根据所述第四特征图和所述第五特征图,对所述第一图像进行目标检测,并输出第一检测结果。
306.可选地,确定所述第四特征图对应的第一权重值以及所述第五特征图对应的第二权重值;根据所述第一权重值对所述第四特征图进行处理,以得到处理后的第四特征图;根据所述第二权重值对所述第五特征图进行处理,以得到处理后的第五特征图;其中,在所述第四特征图包括的待检测物体大于所述第五特征图包括的待检测物体的情况下,所述第一权重值大于所述第二权重值;根据所述处理后的第四特征图和所述处理后的第五特征图,对所述第一图像进行目标检测,并输出第一检测结果。
307.可选地,所述第一检测结果包括第一检测框,可以获取所述第一图像的第二检测结果,所述第二检测结果为通过第二感知网络对所述第一图像进行物体检测得到的,所述第一感知网络的物体检测精度高于所述第二感知网络的物体检测精度,所述第二检测结果包括第二检测框,所述第二检测框所在的区域与所述第一检测框所在的区域之间存在交集;
308.若所述交集的面积与所述第一检测框的面积的比值小于预设值,则更新所述第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。
309.可选地,所述第二检测结果包括多个检测框,所述多个检测框中的每个检测框所在的区域与所述第一检测框所在的区域之间存在交集,所述多个检测框包括所述第二检测框,其中,在所述多个检测框中每个检测框所在的区域与所述第一检测框所在的区域的交
集的面积中,所述第二检测框所在的区域与所述第一检测框所在的区域之间的交集的面积最小。
310.可选地,所述第一图像为视频中的一个图像帧,第二图像为视频中的一个图像帧,所述第一图像与所述第二图像在所述视频中的帧间距小于预设值,获取所述第二图像的第三检测结果,所述第三检测结果包括第四检测框以及所述第四检测框对应的物体类别;在所述第四检测框与所述第一检测框之间的形状差异以及位置差异在预设范围内的情况下,所述第一检测框对应于所述第四检测框对应的物体类别。
311.可选地,所述第四检测框的检测置信度大于预设阈值。
312.本技术实施例中,所述第一图像为视频中的一个图像帧,第二图像为视频中的一个图像帧,所述第一图像与所述第二图像在所述视频中的帧间距小于预设值,还可以获取所述第二图像的第三检测结果,所述第三检测结果为通过所述第一感知网络或所述第二感知网络对所述第二图像进行物体检测得到的,所述第三检测结果包括第四检测框以及所述第四检测框对应的物体类别;若所述第四检测框与所述第一检测框之间的形状差异以及位置差异在预设范围内,则确定所述第一检测框对应于所述第四检测框对应的物体类别。可选地,所述第四检测框的检测置信度大于预设阈值。
313.本技术实施例中,如果第一图像是通过视频抽帧得到的,可以考虑加入时序检测算法。针对漏检算法所检测出的漏检目标,在当前图像前后帧选取几帧图像,通过对比前后帧中在漏检目标中心附近区域比较是否有与漏检目标面积、长宽比、中心坐标相似的目标,选取特定数量的相似目标框,然后比较相似目标框与疑似漏检图像中的其他目标框是否有相似目标框,在检测出的相似目标框中去除与其他目标框相似的目标框。通过基于内容相似度和特征相似度算法得到前后帧中各一个最相似的目标框,得到疑似漏检目标框的最相似目标框,如果最相似目标框的置信度高于某一阈值,则可以确定漏检目标的类别,如果低于某一阈值,对比疑似漏检目标与最相似目标框类别,如果类别相同,判断为漏检,如果类别不同,则可以进行人工校验。
314.本技术实施例提供了一种物体检测方法,所述方法包括:接收输入的第一图像;通过第一感知网络对所述第一图像进行物体检测,得到第一检测结果,所述第一检测结果包括第一检测框;通过第二感知网络对所述第一图像进行物体检测,得到第二检测结果,所述第二检测结果包括第二检测框,所述第二检测框与所述第一检测框之间存在第一交集;若所述第一交集的面积与所述第一检测框的面积的比值小于预设值,则更新所述二检测结果,更新后的第二检测结果包括所述第一检测框。通过上述方式,将时序特性引入模型中进行辅助判断疑似漏检结果是否为真正漏检结果,并对漏检结果类别进行判断,提升了校验效率。
315.参照图16,图16为本技术实施例提供的一种感知网络训练方法的流程示意,该感知网络训练方法可以用于训练得到上述实施例中的感知网络,需要说明的是,本实施例中的第一感知网络可以是上述实施例中感知网络的初始网络,通过对第一感知网络进行训练得到的第二感知网络可以是上述实施例中感知网络。
316.如图16中示出的那样,感知网络训练方法包括:
317.1601、获取图像中目标物体的预标注检测框。
318.1602、获取对应于所述图像以及第一感知网络的目标检测框,所述目标检测框用
stage和one stage算法,具有很好的通用性,以及对目标尺度、边框贴合,以及中心点和边框角点之间的贴合起到了很优良的促进作用。
330.本技术实施例中,通过将目标检测中衡量检测边框与真实边框贴合程度的iou作为边框回归的损失函数,由于iou自带的尺度不变性,解决了以往其他边框回归函数对尺度变化较为敏感的问题;且引入预测边框与真实边框之间长宽比的损失项,促使训练过程中预测边框更加贴合真实边框,并通过引入与成正比的权重系数,减少尺度变化的影响;引入预测边框中心坐标与真实边框中心坐标距离与预测边框右下角坐标与真实边框左上角坐标距离比值,用于解决当iou=0时,无法得知两个边框之间相对位置、距离远近,无法进行反向传播的问题,引入距离比之后,为使距离比变小,会自然拉近o
p
与o
g
之间的距离,拉远和之间的距离促进边框朝着正确的方向进行变化。
331.所述预设的损失函数包括与所述位置差异有关的目标损失项,所述目标损失项随着所述位置差异的变化而变化;其中,当所述位置差异大于预设值时,所述目标损失项的变化率大于第一预设变化率;和/或,当所述位置差异小于预设值时,所述目标损失项的变化率小于第二预设变化率。
332.可选的,边框回归损失函数还可以为如下损失函数:
[0333][0334][0335]
上述边框回归损失函数利用了具有尺度不变性,被广泛应用于检测度量方法的iou损失项、考虑了预测边框与真实边框长宽比的损失项以及拉近预测边框与真正边框距离的pull损失项,iou损失项自然引入尺度不变的边框预测质量评估指标,两边框长宽比的损失项度量了两边框之间形状的贴合程度,第三个距离比值度量项用于解决在iou=0时,无法得知预测边框与真实边框之间相对位置关系以及难以进行反向传播,最小化损失函数的问题,因此引入了第三项拉近预测边框与真实边框距离的pull损失项,其中以预测边框中心与真实边框中心构成对角线的矩形的面积area1和预测边框与真实边框最小凸包矩形的面积area2之比作为distance_iou项,采用f(x)=-ln(1-x)作为损失函数计算项,可知distance_iou变化区间为[0,1),从f(x)=-ln(1-x)的曲线中可以看出其在[0,1)之间有快速收敛的趋势,因此将x设置为x=distance_iou来得到第三项损失项能够起到快速拉近预测边框与真实边框的目的。
[0336]
参照图17,图17为本技术实施例提供的一种物体检测方法的流程示意,如图17中示出的那样,物体检测方法包括:
[0337]
1701、接收输入的第一图像;
[0338]
1702、对所述第一图像进行卷积处理,以生成多个第一特征图;
[0339]
需要说明的是,这里的“对所述输入的图像进行卷积处理”,不应理解为,仅仅对对所述输入的图像进行卷积处理,在一些实现中,可以对所述输入的图像进行卷积处理、池化操作等等。
[0340]
需要说明的是,这里的“对所述第一图像进行卷积处理,以生成多个第一特征图”,
不应仅理解为,对所述第一图像进行多次卷积处理,每次卷积处理可以生成一个第一特征图,即不应该理解为每张第一特征图都是基于对第一图像进行卷积处理得到的,而是,从整体上来看,第一图像是多个第一特征图的来源;在一种实现中,可以对所述第一图像进行卷积处理得到一个第一特征图,之后可以对生成的第一特征图进行卷积处理,得到另一个第一特征图,以此类推,就可以得到多个第一特征图。
[0341]
需要说明的是,可以是对所述输入的图像进行一系列的卷积处理,具体的,在每次卷积处理时,可以是对前一次卷积处理得到的第一特征图进行卷积处理,进而得到一个第一特征图,通过上述方式,可以得到多个第一特征图。
[0342]
需要说明的是,多个第一特征图可以是具有多尺度分辨率的特征图,即多个第一特征图并不是分辨率相同的特征图,在一种可选实现中,多个第一特征图可以构成一个特征金字塔。
[0343]
其中,可以接收输入的图像,并对所述输入的图像进行卷积处理,生成具有多尺度分辨率的多个第一特征图;卷积处理单元可以对输入的图像进行一系列的卷积处理,得到在不同的尺度(具有不同分辨率)下的特征图(feature map)。卷积处理单元可以采用多种形式,比如视觉几何组(visual geometry group,vgg)、残差神经网络(residual neural network,resnet)、googlenet的核心结构(inception-net)等。
[0344]
1703、根据所述多个第一特征图生成多个第二特征图;其中,所述多个第一特征图比所述多个第二特征图包括更多的所述输入的图像的纹理细节和/或所述输入的图像中的位置细节;
[0345]
需要说明的是,这里的“根据所述多个第一特征图生成多个第二特征图”,并不应该理解为生成多个第二特征图中的每个第二特征图的来源都是多个第一特征图;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于多个第一特征图中的一个或多个第一特征图生成的;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于多个第一特征图中的一个或多个第一特征图,以及除自身之外的其他第二特征图生成的;在一种实现中,多个第二特征图中的一部分第二特征图是直接基于除自身之外的其他第二特征图生成的,此时,由于“除自身之外的其他第二特征图是基于多个第一特征图中的一个或多个第一特征图”生成的,因此,可以理解为根据所述多个第一特征图生成多个第二特征图。
[0346]
需要说明的是,多个第二特征图可以是具有多尺度分辨率的特征图,即多个第二特征图并不是分辨率相同的特征图,在一种可选实现中,多个第二特征图可以构成一个特征金字塔。
[0347]
其中,可以对卷积处理单元生成的多个第一特征图中的最顶层特征图c4进行卷积操作,示例性的,可以使用空洞卷积和1
×
1卷积将最顶层特征图c4的通道数下降为256,作为特征金字塔的最顶层特征图p4;横向链接最顶层下一层特征图c3的输出结果并使用1
×
1卷积降低通道数至256后,与特征图p4逐通道逐像素相加得到特征图p3;以此类推,从上到下,构建出第一特征金字塔,该第一特征金字塔可以包括多个第二特征图。
[0348]
其中,纹理细节可以用于表达细小目标和边缘特征的细节信息,相比于第二特征图,第一特征图中包括更多的纹理细节信息,使得其在针对于小目标检测的检测结果的检测精度更高。其中,位置细节可以为表达图像中物体所处的位置以及物体之间的相对位置
的信息。
[0349]
相比于第一特征图,多个第二特征图可以包括更多的深层特征,深层特征包含丰富的语义信息,其对分类任务有很好的效果,同时深层特征具有较大感受野,可以对大型目标有较好的检测效果;在一种实现中,通过引入自上向下的通路来生成多个第二特征图,可以自然地将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息。
[0350]
1704、根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图;
[0351]
1705、根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果。
[0352]
在现有的一种实现中,第二特征图生成单元(例如特征金字塔网络)通过引入自上向下的通路,将深层特征所包含的丰富语义信息向下进行传播,使各个尺度的第二特征图都包含丰富的语义信息,同时深层特征具有较大感受野,使得可以对大型目标有较好的检测效果。但是现有的实现中,忽略了更浅层特征图所包含的更加精细的位置细节信息以及纹理细节信息,这对中、小目标的检测精度的影响很大。本技术实施例中,第二特征图生成单元将原始特征图(卷积处理单元生成的多个第一特征图)浅层的纹理细节信息引入到深层特征图(第一特征图生成单元生成的多个第二特征图)中,来生成多个第三特征图,将该具有浅层的丰富纹理细节信息的第三特征图作为检测单元进行目标检测的输入数据,可以提升后续物体检测的检测精度。
[0353]
需要说明的是,本实施例中并不是指对于任意包括小目标的图像的物体检测的检测精度都会更高,而是以一个大的数量样本来说,本实施例可以具有更高的综合检测精度。
[0354]
可选地,所述多个第二特征图比所述多个第一特征图包括更多的语义信息。
[0355]
可选地,所述多个第一特征图、所述多个第二特征图以及所述多个第三特征图为具有多尺度分辨率的特征图。
[0356]
可选地,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图和第四目标特征图,所述第三目标特征图的分辨率小于所述第四目标特征图;所述根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图,包括:
[0357]
对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样和卷积处理,以得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的通道数和分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图做通道叠加,以生成所述第四目标特征图;或,
[0358]
对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样,得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图做通道叠加以及进行卷积处理,以生成所述第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的通道数。
[0359]
可选地,所述方法还包括:
[0360]
通过第一卷积层对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第四特征图;
[0361]
以及对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第五特征图;其中,所述第四特征图对应的感受野大于所述第五特征图对应的感受野;
[0362]
相应的,所述根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果,包括:
[0363]
根据所述至少一个第四特征图和所述至少一个第五特征图,输出对所述图像中包括的物体的第一检测结果。
[0364]
可选地,所述方法还包括:
[0365]
根据第一权重值对所述第四特征图进行处理,以得到处理后的第四特征图;
[0366]
根据第二权重值对所述第五特征图进行处理,以得到处理后的第五特征图;其中,在所述第四特征图包括的待检测物体大于所述第五特征图包括的待检测物体的情况下,所述第一权重值大于所述第二权重值;
[0367]
相应的,所述根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果,包括:
[0368]
根据所述处理后的第四特征图和所述处理后的第五特征图,输出对所述图像中包括的物体的第一检测结果。
[0369]
可选地,所述第一检测结果包括第一检测框,所述方法还包括:
[0370]
获取所述第一图像的第二检测结果,所述第二检测结果为通过第二感知网络对所述第一图像进行物体检测得到的,所述第一感知网络的物体检测精度高于所述第二感知网络的物体检测精度,所述第二检测结果包括第二检测框,所述第二检测框所在的区域与所述第一检测框所在的区域之间存在交集;
[0371]
若所述交集的面积与所述第一检测框的面积的比值小于预设值,则更新所述第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。
[0372]
可选地,所述第二检测结果包括多个检测框,所述多个检测框中的每个检测框所在的区域与所述第一检测框所在的区域之间存在交集,所述多个检测框包括所述第二检测框,其中,在所述多个检测框中每个检测框所在的区域与所述第一检测框所在的区域的交集的面积中,所述第二检测框所在的区域与所述第一检测框所在的区域之间的交集的面积最小。
[0373]
可选地,所述第一图像为视频中的一个图像帧,第二图像为视频中的一个图像帧,所述第一图像与所述第二图像在所述视频中的帧间距小于预设值,所述方法还包括:
[0374]
获取所述第二图像的第三检测结果,所述第三检测结果包括第四检测框以及所述第四检测框对应的物体类别;
[0375]
在所述第四检测框与所述第一检测框之间的形状差异以及位置差异在预设范围内的情况下,所述第一检测框对应于所述第四检测框对应的物体类别。
[0376]
可选地,所述第四检测框的检测置信度大于预设阈值。
[0377]
参照图18,图18为本技术实施例提供的一种感知网络训练装置的示意,如图18中示出的那样,感知网络训练装置1800包括:
[0378]
获取模块1801,用于获取图像中目标物体的预标注检测框;以及获取对应于所述
图像以及第一感知网络的目标检测框,所述目标检测框用于标识所述目标物体;
[0379]
迭代训练模块1802,用于根据损失函数对所述第一感知网络进行迭代训练,以输出第二感知网络;其中,所述损失函数与所述预标注检测框和所述目标检测框之间的交并比iou有关。
[0380]
可选地,所述预设的损失函数还与所述目标检测框与所述预标注检测框的形状差异有关,其中,所述形状差异与所述预标注检测框的面积负相关。
[0381]
可选地,所述预设的损失函数还与所述目标检测框与所述预标注检测框在所述图像中的位置差异有关,其中,所述位置差异与所述预标注检测框的面积负相关;或所述位置差异与所述预标注检测框和所述目标检测框的凸包的最小外接矩形的面积负相关。
[0382]
可选地,所述目标检测框包括第一角点和第一中心点,所述预标注检测框包括第二角点和第二中心点,所述第一角点和所述第二角点为矩形对角线的两个端点,所述位置差异还与所述第一中心点和所述第二中心点在所述图像中的位置差异正相关、以及与所述第一角点和所述第二角点的长度负相关。
[0383]
可选地,所述预设的损失函数包括与所述位置差异有关的目标损失项,所述目标损失项随着所述位置差异的变化而变化;其中,
[0384]
当所述位置差异大于预设值时,所述目标损失项的变化率大于第一预设变化率;和/或,当所述位置差异小于预设值时,所述目标损失项的变化率小于第二预设变化率。
[0385]
参照图19,图19为本技术实施例提供的一种物体检测装置的示意,如图19中示出的那样,物体检测装置1900包括:
[0386]
接收模块1901,用于接收输入的第一图像,并对所述第一图像进行卷积处理,以生成多个第一特征图;
[0387]
卷积处理模块1902,用于对所述第一图像进行卷积处理,以生成多个第一特征图;
[0388]
第一特征图生成模块1903,用于根据所述多个第一特征图生成多个第二特征图;其中,所述多个第一特征图比所述多个第二特征图包括更多的所述输入的图像的纹理细节和/或所述输入的图像中的位置细节;
[0389]
第二特征图生成模块1904,用于根据所述多个第一特征图和所述多个第二特征图生成多个第三特征图;
[0390]
检测模块1905,用于根据所述多个第三特征图中的至少一个第三特征图,输出对所述图像中包括的物体的第一检测结果。
[0391]
可选地,所述多个第二特征图比所述多个第一特征图包括更多的语义信息。
[0392]
可选地,所述多个第一特征图、所述多个第二特征图以及所述多个第三特征图为具有多尺度分辨率的特征图。
[0393]
可选地,所述多个第一特征图包括第一目标特征图,所述多个第二特征图包括第二目标特征图,所述多个第三特征图包括第三目标特征图和第四目标特征图,所述第三目标特征图的分辨率小于所述第四目标特征图,所述第二特征图生成模块,具体用于:
[0394]
对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样和卷积处理,以得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的通道数和分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征
图做通道叠加,以生成所述第四目标特征图;或,
[0395]
对所述第三目标特征图进行下采样,以得到第五目标特征图,所述第五目标特征图与所述第二目标特征图具有相同的通道数和分辨率;对所述第一目标特征图进行下采样,得到第六目标特征图,所述第六目标特征图与所述第二目标特征图具有相同的分辨率;将所述第五目标特征图、所述第二目标特征图和所述第六目标特征图做通道叠加以及进行卷积处理,以生成所述第四目标特征图,所述第四目标特征图与所述第二目标特征图具有相同的通道数。
[0396]
可选地,所述装置还包括:
[0397]
中间特征提取模块,用于通过第一卷积层对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第四特征图;
[0398]
以及对所述多个第三特征图中的至少一个第三特征图做卷积,以得到至少一个第五特征图;其中,所述第四特征图对应的感受野大于所述第五特征图对应的感受野;
[0399]
相应的,所述检测模块,具体用于:
[0400]
根据所述至少一个第四特征图和所述至少一个第五特征图,输出对所述图像中包括的物体的第一检测结果。
[0401]
可选地,所述装置还包括:
[0402]
根据第一权重值对所述第四特征图进行处理,以得到处理后的第四特征图;
[0403]
根据第二权重值对所述第五特征图进行处理,以得到处理后的第五特征图;其中,在所述第四特征图包括的待检测物体大于所述第五特征图包括的待检测物体的情况下,所述第一权重值大于所述第二权重值;
[0404]
相应的,所述检测模块,具体用于:
[0405]
根据所述处理后的第四特征图和所述处理后的第五特征图,输出对所述图像中包括的物体的第一检测结果。
[0406]
可选地,所述第一检测结果包括第一检测框,所述获取模块还用于:
[0407]
获取所述第一图像的第二检测结果,所述第二检测结果为通过第二感知网络对所述第一图像进行物体检测得到的,所述第一感知网络的物体检测精度高于所述第二感知网络的物体检测精度,所述第二检测结果包括第二检测框,所述第二检测框所在的区域与所述第一检测框所在的区域之间存在交集;
[0408]
更新模块,用于若所述交集的面积与所述第一检测框的面积的比值小于预设值,则更新所述第二检测结果,以使得更新后的第二检测结果包括所述第一检测框。
[0409]
可选地,所述第一图像为视频中的一个图像帧,第二图像为视频中的一个图像帧,所述第一图像与所述第二图像在所述视频中的帧间距小于预设值,所述获取模块还用于:
[0410]
获取所述第二图像的第三检测结果,所述第三检测结果包括第四检测框以及所述第四检测框对应的物体类别;
[0411]
在所述第四检测框与所述第一检测框之间的形状差异以及位置差异在预设范围内的情况下,所述第一检测框对应于所述第四检测框对应的物体类别。
[0412]
可选地,所述第四检测框的检测置信度大于预设阈值。
[0413]
接下来介绍本技术实施例提供的一种执行设备,请参阅图20,图20为本技术实施例提供的执行设备的一种结构示意图,执行设备2000具体可以表现为虚拟现实vr设备、手
机、平板、笔记本电脑、智能穿戴设备、监控数据处理设备等,此处不做限定。其中,执行设备2000上可以部署有图19对应实施例中所描述的物体检测装置,用于实现图19对应实施例中物体检测的功能。具体的,执行设备2000包括:接收器2001、发射器2002、处理器2003和存储器2004(其中执行设备2000中的处理器2003的数量可以一个或多个,图20中以一个处理器为例),其中,处理器2003可以包括应用处理器20031和通信处理器20032。在本技术的一些实施例中,接收器2001、发射器2002、处理器2003和存储器2004可通过总线或其它方式连接。
[0414]
存储器2004可以包括只读存储器和随机存取存储器,并向处理器2003提供指令和数据。存储器2004的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,nvram)。存储器2004存储有处理器和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。
[0415]
处理器2003控制执行设备的操作。具体的应用中,执行设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
[0416]
上述本技术实施例揭示的方法可以应用于处理器2003中,或者由处理器2003实现。处理器2003可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2003中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2003可以是通用处理器、数字信号处理器(digital signal processing,dsp)、微处理器或微控制器,还可进一步包括专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。该处理器2003可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器2004,处理器2003读取存储器2004中的信息,结合其硬件完成上述方法的步骤。
[0417]
接收器2001可用于接收输入的数字或字符信息,以及产生与执行设备的相关设置以及功能控制有关的信号输入。发射器2002可用于通过第一接口输出数字或字符信息;发射器2002还可用于通过第一接口向磁盘组发送指令,以修改磁盘组中的数据;发射器2002还可以包括显示屏等显示设备。
[0418]
本技术实施例中,在一种情况下,处理器2003,用于执行图9至图11对应实施例中的执行设备执行的图像处理方法。具体的,应用处理器20031,用于执行上述实施例中的物体检测方法。
[0419]
本技术实施例还提供了一种训练设备,请参阅图21,图21是本技术实施例提供的训练设备一种结构示意图,训练设备2100上可以部署有图18对应实施例中所描述的感知网络训练装置,用于实现图18对应实施例中感知网络训练装置的功能,具体的,训练设备2100由一个或多个服务器实现,训练设备2100可因配置或性能不同而产生比较大的差异,可以
包括一个或一个以上中央处理器(central processing units,cpu)2121(例如,一个或一个以上处理器)和存储器2132,一个或一个以上存储应用程序2142或数据2144的存储介质2130(例如一个或一个以上海量存储设备)。其中,存储器2132和存储介质2130可以是短暂存储或持久存储。存储在存储介质2130的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对训练设备中的一系列指令操作。更进一步地,中央处理器2121可以设置为与存储介质2130通信,在训练设备2100上执行存储介质2130中的一系列指令操作。
[0420]
训练设备2100还可以包括一个或一个以上电源2126,一个或一个以上有线或无线网络接口2150,一个或一个以上输入输出接口2158;或,一个或一个以上操作系统2141,例如windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm等等。
[0421]
本技术实施例中,中央处理器2121,用于执行上述实施例中的感知网络训练方法相关的步骤。
[0422]
本技术实施例中还提供一种包括计算机程序产品,当其在计算机上运行时,使得计算机执行如前述执行设备所执行的步骤,或者,使得计算机执行如前述训练设备所执行的步骤。
[0423]
本技术实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有用于进行信号处理的程序,当其在计算机上运行时,使得计算机执行如前述执行设备所执行的步骤,或者,使得计算机执行如前述训练设备所执行的步骤。
[0424]
本技术实施例提供的执行设备、训练设备或终端设备具体可以为芯片,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使执行设备内的芯片执行上述实施例描述的数据处理方法,或者,以使训练设备内的芯片执行上述实施例描述的数据处理方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述无线接入设备端内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)等。
[0425]
具体的,请参阅图22,图22为本技术实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器npu 2200,npu 2200作为协处理器挂载到主cpu(host cpu)上,由host cpu分配任务。npu的核心部分为运算电路2203,通过控制器2204控制运算电路2203提取存储器中的矩阵数据并进行乘法运算。
[0426]
在一些实现中,运算电路2203内部包括多个处理单元(process engine,pe)。在一些实现中,运算电路2203是二维脉动阵列。运算电路2203还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路2203是通用的矩阵处理器。
[0427]
举例来说,假设有输入矩阵a,权重矩阵b,输出矩阵c。运算电路从权重存储器2202中取矩阵b相应的数据,并缓存在运算电路中每一个pe上。运算电路从输入存储器2201中取矩阵a数据与矩阵b进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)2208中。
[0428]
统一存储器2206用于存放输入数据以及输出数据。权重数据直接通过存储单元访
问控制器(direct memory access controller,dmac)2205,dmac被搬运到权重存储器2202中。输入数据也通过dmac被搬运到统一存储器2206中。
[0429]
biu为bus interface unit即,总线接口单元2210,用于axi总线与dmac和取指存储器(instruction fetch buffer,ifb)2209的交互。
[0430]
总线接口单元2210(bus interface unit,简称biu),用于取指存储器2209从外部存储器获取指令,还用于存储单元访问控制器2205从外部存储器获取输入矩阵a或者权重矩阵b的原数据。
[0431]
dmac主要用于将外部存储器ddr中的输入数据搬运到统一存储器2206或将权重数据搬运到权重存储器2202中或将输入数据数据搬运到输入存储器2201中。
[0432]
向量计算单元2207包括多个运算处理单元,在需要的情况下,对运算电路2203的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如batch normalization(批归一化),像素级求和,对特征平面进行上采样等。
[0433]
在一些实现中,向量计算单元2207能将经处理的输出的向量存储到统一存储器2206。例如,向量计算单元2207可以将线性函数;或,非线性函数应用到运算电路2203的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元2207生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路2203的激活输入,例如用于在神经网络中的后续层中的使用。
[0434]
控制器2204连接的取指存储器(instruction fetch buffer)2209,用于存储控制器2204使用的指令;
[0435]
统一存储器2206,输入存储器2201,权重存储器2202以及取指存储器2209均为on-chip存储器。外部存储器私有于该npu硬件架构。
[0436]
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,asic,或一个或多个用于控制上述程序执行的集成电路。
[0437]
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本技术提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
[0438]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本技术而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、rom、ram、磁碟或者光盘等,包括若干指令用以使得一
台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本技术各个实施例所述的方法。
[0439]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
[0440]
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献