级联卷积神经网络训练和图像检测方法、装置及系统的制作方法

文档序号:10725767阅读:1386来源:国知局
级联卷积神经网络训练和图像检测方法、装置及系统的制作方法
【专利摘要】本发明公开一种级联卷积神经网络训练和图像检测方法、装置及系统,其中,所述训练方法包括:将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据,N为大于或等于2的整数;分别将N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练;将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。在将训练结果传播至各级卷积神经网络时,能够调整各级神经网络的参数,使得级联卷积神经网络在训练时能够达到神经网络参数的全局优化。
【专利说明】
级联卷积神经网络训练和图像检测方法、装置及系统
技术领域
[0001]本发明涉及图像数据处理领域,具体涉及一种级联卷积神经网络训练和图像检测方法、装置及系统。
【背景技术】
[0002]物体检测即对于输入的图片,精确地检测出所有某类物体的位置,在计算机视觉和模式识别领域中占有重要地位。
[0003]传统的基于卷积神经网络的物体检测方法,首先在图片上选出一系列位置、大小不同的待检测区域,然后将该区域直接输入一个卷积神经网络,得到分类结果。通过适当设计卷积神经网络的结构,可以让计算机直接学习出图片中的隐藏特征,避免了人工设计特征,能更广泛地应用到各种类别物体的检测中。但是由于卷积神经网络的计算时间往往比人工设计特征的计算时间长许多,因此在检测时会面临检测速度与检测效果不可兼得的矛盾。
[0004]对于基于卷积神经网络的物体检测方法,目前常见的是单级多层卷积神经网络。由于分类效果较好的单级卷积神经网络结构较复杂,检测每个区域的时间较长,如果在选择待检测区域时采用全面覆盖图片的滑动窗口选择法,则检测速度较慢;如果采用针对图片某些特征设计的算法选择最可能包含物体的少量区域,则检测速度有所提高,但在选择区域阶段可能漏掉某些包含物体的区域。对于物体检测问题,由于数据标注非常耗费人力、时间,数据集中往往负样本很多,正样本很少。在训练时,由于正负样本分布不均衡,训练效果往往较差。
[0005]级联卷积神经网络通过使用小型的、复杂度递增的多级多层神经网络,可以在使用滑动窗口选择法的同时提高检测速度,并对不同级的网络提供不同比例的正负样本训练,在一定程度上缓解上述的两个问题。但是在传统的级联网络中,不同级的神经网络通常分开训练,只能使每一级神经网络达到局部优化,多级多层神经网络的整体性能不理想。

【发明内容】

[0006]本发明实施例提供一种级联卷积神经网络及其训练和检测方案。
[0007]根据第一方面,本发明实施例提供了一种级联卷积神经网络训练方法,包括:
[0008]将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据,N为大于或等于2的整数;分别将N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练,其中,N级级联的卷积神经网络中的每一级卷积神经网络分别与N种输入区域的一种输入区域对应;将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。
[0009]可选地,对各级卷积神经网络进行训练,包括:根据第I级卷积神经网络最后一层的输出,得到第I级卷积神经网络的特征向量;根据第η级卷积神经网络最后一层的输出和第n-1级卷积神经网络的特征向量,得到第η级卷积神经网络的特征向量,其中,11为正整数,且1<η彡N。
[0010]可选地,第I级卷积神经网络的最后一层为卷积层;第2至N级卷积神经网络中各级卷积神经网络的最后一层均为全连接层。
[0011]可选地,对各级卷积神经网络进行训练,包括:至少分别求取各级卷积神经网络的本级损失;将各级卷积神经网络分别输出的至少一训练结果进行关联,包括:至少对各级卷积神经网络分别输出的本级损失进行加权求和,得到N级级联的卷积神经网络的全局损失。
[0012]可选地,至少分别求取各级卷积神经网络的本级损失,包括:分别求取各级卷积神经网络的本级损失函数和回归边界框真值损失;至少对各级卷积神经网络分别输出的本级损失进行加权求和,得到N级级联的卷积神经网络的全局损失,包括:对各级卷积神经网络分别输出的本级损失函数和/或回归边界框真值损失进行加权求和,得到N级级联的卷积神经网络的全局损失。
[0013]可选地,第i级卷积神经网络输入区域的尺寸小于第j级卷积神经网络输入区域的尺寸,其中,i和j为正整数,且l<i<j<N。
[0014]本发明实施例还提供了一种级联卷积神经网络训练装置,包括:
[0015]学习数据获取单元,用于将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据,所述N为大于或等于2的整数;训练单元,用于分别将所述N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练,其中,所述N级级联的卷积神经网络中的每一级卷积神经网络分别与所述N种输入区域的一种输入区域对应;回传单元,用于将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。
[0016]可选地,训练单元包括:第一向量单元,用于根据第I级卷积神经网络最后一层的输出,得到所述第I级卷积神经网络的特征向量;第二向量单元,用于根据第η级卷积神经网络最后一层的输出和所述第η-1级卷积神经网络的特征向量,得到第η级卷积神经网络的特征向量,其中,所述η为正整数,且1<η<Ν。
[0017]可选地,所述训练单元包括:本级损失求取单元,用于至少分别求取各级卷积神经网络的本级损失;全局损失求取单元,用于至少对各级卷积神经网络分别输出的本级损失进行加权求和,得到所述N级级联的卷积神经网络的全局损失。
[0018]本发明实施例还提供了一种计算机存储介质,存储了用于实现本发明实施例提供的任一种级联卷积神经网络训练方法的计算机可读取的指令。例如,所述指令包括:将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据的指令,N为大于或等于2的整数;分别将N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练的指令,其中,N级级联的卷积神经网络中的每一级卷积神经网络分别与N种输入区域的一种输入区域对应;将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数的指令。
[0019]本发明实施例还提供了一种级联卷积神经网络训练系统,包括:
[0020]图像获取装置,用于获取待学习图像的图像数据;存储器,用于存储程序;处理器,接收待学习图像的图像数据,用于执行程序以实现上述训练方法中的操作。
[0021]根据第二方面,本发明实施例提供了一种基于级联卷积神经网络的图像检测方法,包括:
[0022]获取待检测图像的图像数据;将待检测图像的图像数据作为上述的训练方法建立的神经网络模型的输入对待检测图像进行检测,得到待检测图像的检测结果。
[0023]可选地,在获取待检测图像的图像数据之后,还包括:将图像数据划分成多个区域得到各个区域的图像数据;将待检测图像的图像数据作为神经网络模型的输入对待检测图像进行检测,得到待检测图像的检测结果,包括:分别将各个区域的图像数据依次作为神经网络模型的输入对各个区域的图像数据进行检测,得到各个区域的检测结果。
[0024]可选地,对待检测图像进行检测包括:在神经网络模型的N级级联卷积神经网络的至少一级神经网络中对图像数据进行分类得分计算;将至少一级卷积神经网络的分类得分的计算值与至少一预定分值进行比较,并根据至少一比较结果确定图像数据是否包含目标对象。
[0025]可选地,在获取待检测图像的图像数据之后,还包括:将图像数据的尺寸压缩成符合第η级卷积神经网络输入区域的尺寸,其中,η为正整数,且I彡η彡N-1;将待检测图像的图像数据作为神经网络模型的输入对待检测图像进行检测,得到待检测图像的检测结果,包括:将压缩后的图像数据输入第η级卷积神经网络;通过第η级卷积神经网络对压缩后的图像数据进行第一分类得分计算;如果第一分类得分小于第一预定分值,则判断为图像数据不包含目标对象。
[0026]可选地,如果第一分类得分大于或等于第一预定分值,则还包括:将图像数据的尺寸压缩成符合第η+1级卷积神经网络输入区域的尺寸;将压缩后的图像数据输入第η+1级卷积神经网络;通过第η+1级卷积神经网络对压缩后的图像数据进行第二分类得分计算;如果第二分类得分小于第二预定分值,则判断为图像数据不包含目标对象。
[0027]可选地,如果第二分类得分大于或等于第二预定分值,并且η= Ν_1时,则判断为图像数据包含目标物体。
[0028]可选地,在判断图像数据包含目标物体之后,还包括:输出包含目标物体的图像数据的特征信息。
[0029]本发明实施例还提供了一种基于级联卷积神经网络的图像检测装置,包括:
[0030]图像数据获取单元,用于获取待检测图像的图像数据;检测单元,用于将所述待检测图像的图像数据作为上述的训练装置建立的神经网络模型的输入对所述待检测图像进行检测,得到所述待检测图像的检测结果。
[0031]可选地,还包括:区域划分单元,用于将所述图像数据划分成多个区域得到各个区域的图像数据;所述检测单元用于分别将所述各个区域的图像数据依次作为所述神经网络模型的输入对所述各个区域的图像数据进行检测,得到所述各个区域的检测结果。
[0032]可选地,所述检测单元包括:分类得分单元,用于在所述神经网络模型的N级级联卷积神经网络的至少一级神经网络中对所述图像数据进行分类得分计算;比较单元,用于将至少一级卷积神经网络的分类得分的计算值与至少一预定分值进行比较,并根据至少一比较结果确定所述图像数据是否包含目标对象。
[0033]可选地,还包括:压缩单元,用于将所述图像数据的尺寸压缩成符合第η级卷积神经网络输入区域的尺寸,其中,η为正整数,且I彡η彡N-1;所述检测单元用于将压缩后的所述图像数据输入所述第η级卷积神经网络;第一分类得分单元,用于通过所述第η级卷积神经网络对压缩后的所述图像数据进行第一分类得分计算;判断单元,用于如果所述第一分类得分小于第一预定分值,则判断为所述图像数据不包含目标对象。
[0034]本发明实施例还提供了一种计算机存储介质,存储了用于实现本发明实施例提供的任一种基于级联卷积神经网络的图像检测方法的计算机可读取的指令。例如,所述指令包括:用于获取待检测图像的图像数据的指令;用于将待检测图像的图像数据作为上述的训练方法建立的神经网络模型的输入对待检测图像进行检测,得到待检测图像的检测结果的指令。
[0035]本发明实施例还提供了一种基于级联卷积神经网络的图像检测系统,包括:
[0036]图像获取装置,用于获取待检测图像的图像数据;存储器,用于存储程序;处理器,接收待检测图像的图像数据,用于执行程序以实现上述检测方法中的操作。
[0037]根据第三方面,本发明实施例提供了一种级联卷积神经网络,包括:
[0038]级联的N级卷积神经网络,N级卷积神经网络的用于接收N种不同大小的输入区域的图像数据,用于分别对N种不同大小的输入区域的图像数据进行训练/检测,N为大于或等于2的整数;各级卷积神经网络分别输出的至少一训练结果相关联,关联后的训练结果被回传至各级卷积神经网络。
[0039]本发明实施例提供的技术方案,将待学习图像至少局部区域的图像数据分别处理成N种输入区域的图像数据,并分别输入至N级级联的卷积神经网络,而后,对N级级联的卷积神经网络进行训练,至少一训练结果关联,因此,在将训练结果传播至各级卷积神经网络时,能够调整各级神经网络的参数,使得级联卷积神经网络在训练时能够达到神经网络参数的全局优化。
【附图说明】
[0040]为了更清楚地说明本发明【具体实施方式】或现有技术中的技术方案,下面将对【具体实施方式】或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]图1为本发明实施例1中一种级联卷积神经网络训练方法流程图;
[0042]图2为本发明实施例1中一种级联卷积神经网络训练装置原理框图;
[0043]图3为本发明实施例2中一种基于级联卷积神经网络的图像检测方法流程图;
[0044]图4为本发明实施例2中另一种基于级联卷积神经网络的图像检测方法流程图;
[0045]图5为本发明实施例2中一种基于级联卷积神经网络的图像检测装置原理框图;
[0046]图6示意性地示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
【具体实施方式】
[0047]下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
[0049]实施例1
[0050]为了实现多级神经网络全局最优训练,本实施例公开了一种级联卷积神经网络训练方法,请参考图1,为该级联卷积神经网络训练方法流程图,该方法包括如下步骤:
[0051]步骤S110,获取待学习图像至少局部区域的图像数据。在具体实施例中,可以用滑动窗口选择法选择待学习图像的至少局部区域作为该图像的学习区域。在可选的实施例中,每个学习区域可以用例如方形的边界框圈出,并根据与图像中物体区域边界框真值的重合度,来标记该学习区域是否包含带检测物体,以便于神经网络学习训练。在本实施例中,可以将各个学习区域调成为预设的标准尺寸大小,例如48*48,需要说明的是,本实施例及下述实施例中,在未作特别申明的情况下,具体的数值对本实施例的技术方案不构成限制,应当理解为便于本领域技术人员理解技术方案而举的示例。
[0052]步骤S120,将待学习图像至少局部区域的图像数据分别处理成N种输入区域的图像数据。本实施例中,N种输入区域两两之间具有不同的尺寸,N为大于等于2的整数。在可选的实施例中,可以对待学习图像至少局部区域的图像数据分别进行压缩,从而得到N中输入区域的图像数据。
[0053]步骤S130,分别将N种输入区域的图像数据输入至N级级联的卷积神经网络。在本实施例中,N级级联的卷积神经网络中的每一级分别与N种输入区域的一种输入区域一一对应。级联的卷积神经网络具有不同级网络结构,不同级之间输入数据的属性类型(例如不同级的输入数据分别对应不同大小的输入区域的数据)不同,为实现针对同一学习区域的数据学习,需要将该学习区域的图像数据分别处理(处理手段可包括但不限于压缩、采样等)成符合各级神经网络输入的数据尺寸。在本实施例中,共有N级卷积神经网络级联,因此,需要有N种输入区域的图像数据,每一级卷积神经网络对应一种输入区域。在优选的实施例中,第i级卷积神经网络输入区域的尺寸小于第j级卷积神经网络输入区域的尺寸,其中,i和j为正整数,且l<i<j<N。下文以N=3为例进行说明,第I级输入区域的尺寸为例如12*12、第2级输入区域的尺寸为例如24*24、第3级输入区域的尺寸为例如48*48,需要说明的是,本实施例中,并未限制不同级输入区域的尺寸之间满足某种倍数关系。可以将由步骤SllO获取的预设区域的尺寸分别调成为12*12、24*24和48*48,以分别作为上述三级级联神经网络的输入区域。本实施例中,将前级卷积神经网络的输入区域的尺寸减小,能够提高前级神经网络的运行效率,而将后级卷积神经网络的输入区域的尺寸变大,以满足后级网络判断精细度的需求,采用不同尺寸的输入区域,使得各级卷积神经网络能够权衡效率和判断的精细度。
[0054]步骤S140,对N级级联的卷积神经网络进行训练。在具体实施例中,可以根据经验或需要来确定各级神经网络结构。例如:在确保召回率的情况下,可以适当减少卷积层,以提高计算速度。当输入区域的尺寸越大,则训练时精细度越高,相应的计算复杂程度也提高,此时,可以适当减少卷积层。以N= 3为例进行说明:第I级神经网络(例如12net神经网络)输入区域的尺寸例如为12*12,包括例如3个卷积层、2个池化层,其中,卷积层输出图像为输入图像与卷积核的卷积,卷积核的参数可由训练调整;池化层输出图像的每个像素点为输入图像某个区域的平均值。12net的输出由最后一个卷积层的输出,计算得到第I级神经网络的本级损失lossO。第2级神经网络(例如24net神经网络)输入区域的尺寸例如为24*24,包括例如I个卷积层、I个池化层和I个全连接层,24net的输出由全连接层输出,计算得到第2级神经网络的本级损失10SS1。第3级神经网络(例如48net神经网络)输入区域的尺寸例如为48*48,包括例如2个卷积层、2个池化层和I个全连接层,48net的输出由全连接层输出,计算得到第3级神经网络的本级损失loss2。在优选的实施例中,各级神经网络还可以利用回归边界框真值的损失函数计算本级输入区域回归边界框真值损失,例如12net的回归边界框真值bbox 1ssO、24net的回归边界框真值bbox 1ssl以及48net的回归边界框真值bbox loss20
[0055]步骤S150,根据训练结果调整各级神经网络的参数。具体地,将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。本实施例中,训练结果中,各级卷积神经网络至少有一个参数相关联,通过神经网络的训练结果可以调整各层网络的参数,从而,使得该神经网络向全局最优靠近。在可选的实施例中,该相关联的参数为各级卷积神经网络的本级损失,各级卷积神经网络分别输出的本级损失函数和/或回归边界框真值损失进行加权求和,得到N级级联的卷积神经网络的全局损失loss,具体地,N级级联的卷积神经网络的全局损失loss至少由各级卷积神经网络的本级损失加权求和得到,可选地,在加权求和时,可以对各级卷积神经网络的本级损失(1ssO、loss I和loss2)以及各级的回归边界框真值的损失(bbox 1ssO、bbox 1ssl和bbox loss2)进行。在具体实施例中,具体的加权系数可以根据经验和/或实验来确定。
[0056]为了实现各级卷积神经网络损失函数相关联,在可选的实施例中,在执行步骤S140对N级级联的卷积神经网络进行训练时,可以进一步包括:根据第I级卷积神经网络最后一层的输出,得到第I级卷积神经网络的特征向量;根据第η级卷积神经网络最后一层的输出和第η-1级卷积神经网络的特征向量,得到第η级卷积神经网络的特征向量,其中,η为正整数,且1<η<Ν。在具体实施例中,根据得到的本级卷积神经网络的特征向量可以得到预测标签,而后至少分别求取各级卷积神经网络的本级损失,具体地,可以利用神经网络的损失函数及回归边界框真值的损失函数基于预测标签和真实标签计算本级损失。将该计算得到的损失反向传播至神经网络的相应位置,可以对神经网络结构参数进行优化调整。具体地,以3级联的神经网络为例进行说明,其中,第I级卷积神经网络的最后一层为卷积层,该卷积层的输出为第I级卷积神经网络的特征向量Α;第2级卷积神经网络,包括依次串接的卷积层、池化层和全连接层,第2级神经网络的最后一层为全连接层,该全连接层输出特征向量B,而后与第I级神经网络的特征向量A相连得到第2级神经网络的特征向量A-B;第3级神经网络的最后一层为全连接层,该全连接层输出特征向量C而后与第2级神经网络的特征向量A-B相连得到第3级神经网络的特征向量A-B-C。本实施例中,第I级卷积神经网络的最后一层为卷积层,第I级卷积神经网络的特征向量为该级卷积神经网络中最后一层卷积层的输出,第2至N级卷积神经网络中每级卷积神经网络的最后一层为全连接层,在具体实施中,可以将卷积层输出的特征向量调整成符合连接层连接的特征向量的数据格式。通过不同级的卷积神经网络的特征向量进行连接,从而实现了各级神经网络参数进行关联。在本实施例中,对于不同级的卷积神经网络,第I级卷积神经网络采用全卷积层进行计算,可以节约计算量;而第2至N级的卷积神经网络最后一层为全连接层,可以实现正负样本的判别。
[0057]本实施例还公开了一种级联卷积神经网络训练装置,请参考图2,为该级联卷积神经网络训练装置结构示意框图,该训练装置包括:学习数据获取单元110、训练单元120和回传单元130,其中:
[0058]学习数据获取单元110用于将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据,N为大于或等于2的整数;训练单元120用于分别将N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练,其中,N级级联的卷积神经网络中的每一级卷积神经网络分别与N种输入区域的一种输入区域对应;回传单元130用于将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。
[0059]在可选的实施例中,训练单元120包括:第一向量单元,用于根据第I级卷积神经网络最后一层的输出,得到第I级卷积神经网络的特征向量;第二向量单元,用于根据第η级卷积神经网络最后一层的输出和第η-1级卷积神经网络的特征向量,得到第η级卷积神经网络的特征向量,其中,η为正整数,且1<η<Ν。
[0060]在可选的实施例中,训练单元120包括:本级损失求取单元,用于至少分别求取各级卷积神经网络的本级损失;全局损失求取单元,用于至少对各级卷积神经网络分别输出的本级损失进行加权求和,得到N级级联的卷积神经网络的全局损失。
[0061]本实施例还公开了一种级联卷积神经网络训练系统,包括:摄像装置、存储器和处理器,其中:
[0062]图像获取装置,用于获取待学习图像的图像数据;存储器,用于存储程序;处理器,接收待学习图像的图像数据,用于执行程序以实现上述级联卷积神经网络训练方法中的操作。
[0063]本实施例提供的级联卷积神经网络训练方法、装置及系统,将待学习图像至少局部区域的图像数据分别处理成N种输入区域的图像数据,并分别输入至N级级联的卷积神经网络,而后,对N级级联的卷积神经网络进行训练,至少一训练结果关联,因此,在将训练结果传播至各级卷积神经网络时,能够调整各级神经网络的参数,使得级联卷积神经网络在训练时能够达到神经网络参数全局优化。
[0064]实施例2
[0065]本实施例公开了一种基于级联卷积神经网络的图像检测方法,请参考图3,为该基于级联卷积神经网络的图像检测方法流程图,该检测方法包括如下步骤:
[0066]步骤S210,训练级联卷积神经网络模型。本实施例中,可以根据实施例1公开的级联卷积神经网络训练方法训练神经网络得到级联卷积神经网络模型。需要说明的是,本实施例中,步骤SlO是在训练神经网络时执行,在神经网络训练完成后,可不再执行该步骤。
[0067]步骤S220,获取待检测图像的图像数据。在具体实施例中,可以预先对图像数据进行预处理,得到预处理后的待检测图像的图像数据,可选地,可以将图像数据的像素值减去某一数值,该数值可以是ImageNet数据集的均值,也可以是根据训练图片集合计算出的均值。当然,在其它可选实施例中,也可以预先对图像数据进行二值化的预处理。
[0068]步骤S230,对待检测图像的图像数据进行检测,得到检测结果。本实施例中,可以根据上述实施例的训练方法建立神经网络模型,而后,在获得待检测图像的图像数据之后,将该待检测图像的图像数据作为该神经网络模型的输入对待检测图像进行检测,得到待检测图像的检测结果。在可选的实施例中,在对待检测图像进行检测时,可以检测待检测图像中目标对象的位置信息(例如坐标位置),目标对象的位置信息可以作为检测结果输出。
[0069]需要说明的是,在具体实施例中,在首次进行图像检测,执行步骤S210训练建立得到级联卷积神经网络后,在后续的检测过程中,可以不必再执行步骤S210。
[0070]需要说明的是,步骤S220获取的待检测图像的图像数据可以为预设的标准尺寸大小,例如48*48。
[0071]当然,步骤S220获取的待检测图像的图像数据也可以是其它尺寸,此时,在执行步骤S220之后,可以将该获取的待检测图像数据划分成多个区域,以得到各个区域的图像数据,而后对各个区域分别进行检测,即分别将各个区域的图像数据依次作为神经网络模型的输入对各个区域的图像数据进行检测,得到各个区域的检测结果。在可选的实施例中,在将获取的待检测图像的图像数据划分成多个区域时,可以将各个区域调成为预设的标准尺寸大小,例如48*48。在具体实施例中,在执行步骤S230时,应当分别将各个区域的图像数据依次输入神经网络模型,应当依次对各个区域的图像数据进行检测分别得到各个区域的检测结果。
[0072]在具体实施例中,在进行检测时,可以通过分类得分的方式来检测待检测图像是否包含目标对象,具体地,在神经网络模型的N级级联卷积神经网络的至少一级神经网络中对图像数据进行分类得分计算,将至少一级卷积神经网络的分类得分的计算值与至少一预定分值进行比较,并根据至少一比较结果确定图像数据是否包含目标对象。作为例子,如果分类得分小于预定分值,则判断为特征组合不包含目标对象。具体地,请参考图4,在执行步骤S220之后,还包括:
[0073]步骤S250,将图像数据的尺寸压缩成符合第η级卷积神经网络输入区域的尺寸,其中,η为正整数,且1<η<Ν-1。例如,将步骤S220获取的待检测图像的图像数据压缩成符合第I级卷积神经网络输入区域的尺寸(例如12*12)。
[0074]在执行步骤S230时,可以包括:
[0075]步骤S231,将压缩后的图像数据输入第η级卷积神经网络。譬如,将步骤S250压缩成符合第I级卷积神经网络输入区域的尺寸(例如12*12)的待检测图像的图像数据输入至第I级卷积神经网络。
[0076]步骤S241,通过第η级卷积神经网络对压缩后的图像数据进行第一分类得分计算。譬如,在将压缩后的图像数据输入至第I级卷积神经网络后,可以得到第一分类得分,在本实施例中,通过该第I级神经网络最后一层的卷积层可以输出该级卷积神经网络的分类得分cls score I。在具体实施例中,各级神经网络的特征向量中的某一元素表征了该级神经网络的分类得分,例如第I级神经网络的特征向量A中的某一元素表征了该分类得分clsscore I。需要说明的是,在具体实施例中,当η为例如2时,则第一分类得分为第2级神经网络计算的分类得分cls score 2。
[0077]步骤S242,判断第一分类得分是否小于第一预定分值。在具体实施例中,可以根据经验来确定第一预定分值。如果步骤S242判断第一分类得分小于第一预定分值,则判断结果为图像数据不包含目标对象。
[0078]在可选的实施例中,如果步骤S242判断第一分类得分大于或等于第一预定分值,则还包括:
[0079]步骤S243,将图像数据的尺寸压缩成符合第η+1级卷积神经网络输入区域的尺寸。譬如,当η=1时,如果第I级分类得分cls score I小于该级预定值,则将图像数据的尺寸压缩成符合第2级卷积神经网络输入区域的尺寸(例如24*24);当n = 2时,如果第2级分类得分cls score 2小于该级预定值,则将图像数据的尺寸压缩成符合第3级卷积神经网络输入区域的尺寸(例如48*48)。
[0080]步骤S244,将压缩后的图像数据输入第η+1级卷积神经网络。
[0081]步骤S245,通过第η+1级卷积神经网络对压缩后的图像数据进行第二分类得分计算。在将压缩后的图像数据输入至各级卷积神经网络后,可以得到本级神经网络分类得分,当η=1时,则第二分类得分为第2级神经网络计算的分类得分cls score 2;当n = 2时,则第二分类得分为第3级神经网络计算的分类得分cls score 3。
[0082]步骤S246,判断第二分类得分是否小于第二预定分值。在具体实施例中,可以根据经验来确定第二预定分值。如果步骤S242判断第二分类得分小于第二预定分值,则判断结果为图像数据不包含目标对象。
[0083]在优选的实施例中,执行步骤S246时,如果第二分类得分大于或等于第二预定分值,并且n = N-1时,则判断为图像数据包含目标对象。
[0084]在优选的实施例中,当判断图像数据包含目标对象之后,还可以进一步包括:输出包含目标对象的图像数据的特征信息。在具体实施例中,可以根据预测的调整量微调待检测区域边界框的位置、大小。在将一张图片的所有待检测区域检测完毕后,选出预测包含对象的区域,用例如非最大值抑制法去除重合度较高的区域。即为该检测方法预测图中目标对象的位置与大小。
[0085]本实施例还公开了一种基于级联卷积神经网络的图像检测装置,请参考图5,为该基于级联卷积神经网络的图像检测装置结构示意框图,该检测装置包括:上述实施例的级联卷积神经网络训练装置1、图像数据获取单元2和检测单元3,其中:
[0086]图像数据获取单元2用于获取待检测图像的图像数据;检测单元,用于将待检测图像的图像数据作为上述的训练装置建立的神经网络模型的输入对待检测图像进行检测,得到待检测图像的检测结果。
[0087]在可选的实施例中,该基于级联卷积神经网络的图像检测装置还包括:区域划分单元,用于将图像数据划分成多个区域得到各个区域的图像数据;检测单元用于分别将各个区域的图像数据依次作为神经网络模型的输入对各个区域的图像数据进行检测,得到各个区域的检测结果。
[0088]在优选的实施例中,检测单元包括:分类得分单元,用于在神经网络模型的N级级联卷积神经网络的至少一级神经网络中对图像数据进行分类得分计算;比较单元,用于将至少一级卷积神经网络的分类得分的计算值与至少一预定分值进行比较,并根据至少一比较结果确定图像数据是否包含目标对象。
[0089]在优选的实施例中,该基于级联卷积神经网络的图像检测装置还包括:压缩单元,用于将图像数据的尺寸压缩成符合第η级卷积神经网络输入区域的尺寸,其中,η为正整数,且I彡η彡N-1;检测单元用于将压缩后的图像数据输入第η级卷积神经网络;第一分类得分单元,用于通过第η级卷积神经网络对压缩后的图像数据进行第一分类得分计算;判断单元,用于如果第一分类得分小于第一预定分值,则判断为图像数据不包含目标对象。
[0090]本实施例还公开了一种基于级联卷积神经网络的图像检测系统,包括:
[0091]图像获取装置,用于获取待学习图像的图像数据;存储器,用于存储程序;处理器,接收待学习图像的图像数据,用于执行程序以实现上述检测方法中的操作。
[0092]本实施例还公开了一种级联的卷积神经网络,包括:级联的N级卷积神经网络,N级卷积神经网络的用于接收N种不同大小的输入区域的图像数据,用于分别对N种不同大小的输入区域的图像数据进行训练/检测,N为大于或等于2的整数;各级卷积神经网络分别输出的至少一训练结果相关联,关联后的训练结果被回传至各级卷积神经网络。
[0093]本实施例提供的基于级联卷积神经网络的图像检测方法、装置及系统,在神经网络训练时,将训练结果传播至各级卷积神经网络,调整各级神经网络的参数,使得级联卷积神经网络在训练时能够达到神经网络参数的全局优化。从而在利用该网络进行检测时,可以在提高检测速度的同时取得更好的检测效果。
[0094]下面参考图6,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统600的结构示意图。
[0095]如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(R0M)602中的可执行指令或者从存储部分608加载到随机访问存储器(RAM)603中的可执行指令而执行各种适当的动作和处理。CPU601还可存储有系统600操作所需的各种程序和数据。CPU60UR0M602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口 605也连接至总线604。
[0096]以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606 ;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口 605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
[0097]特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机分别进行图像块划分以得到图像块集合的指令;根据图像块集合中的各图像块生成至少一个第一图像块组的指令;根据至少一个第一图像块组训练卷积神经网络的指令;基于第一卷积神经网络对图像块集合中的各图像块进行分类以得到至少一个第二图像块组的指令……。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU) 601执行时,执行本申请的方法中限定的上述功能。
[0098]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0099]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0100]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0101]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0102]显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
【主权项】
1.一种级联卷积神经网络训练方法,其特征在于,包括: 将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据,所述N为大于或等于2的整数; 分别将所述N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练,其中,所述N级级联的卷积神经网络中的每一级卷积神经网络分别与所述N种输入区域的一种输入区域对应; 将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。2.如权利要求1所述的级联卷积神经网络训练方法,其特征在于,所述对各级卷积神经网络进行训练,包括: 根据第I级卷积神经网络最后一层的输出,得到所述第I级卷积神经网络的特征向量;根据第η级卷积神经网络最后一层的输出和所述第η-1级卷积神经网络的特征向量,得到第η级卷积神经网络的特征向量,其中,所述η为正整数,且1<η<Ν。3.如权利要求1或2所述的级联卷积神经网络训练方法,其特征在于, 所述对各级卷积神经网络进行训练,包括:至少分别求取各级卷积神经网络的本级损失; 将各级卷积神经网络分别输出的至少一训练结果进行关联,包括:至少对各级卷积神经网络分别输出的本级损失进行加权求和,得到所述N级级联的卷积神经网络的全局损失。4.一种基于级联卷积神经网络的图像检测方法,其特征在于,包括: 获取待检测图像的图像数据; 将所述待检测图像的图像数据作为如权利要求1-3任意一项所述的训练方法建立的神经网络模型的输入对所述待检测图像进行检测,得到所述待检测图像的检测结果。5.如权利要求4所述的基于级联卷积神经网络的图像检测方法,其特征在于,在所述获取待检测图像的图像数据之后,还包括: 将所述图像数据划分成多个区域得到各个区域的图像数据; 将所述待检测图像的图像数据作为神经网络模型的输入对所述待检测图像进行检测,得到所述待检测图像的检测结果,包括:分别将所述各个区域的图像数据依次作为所述神经网络模型的输入对所述各个区域的图像数据进行检测,得到所述各个区域的检测结果。6.—种级联卷积神经网络训练装置,其特征在于,包括: 学习数据获取单元,用于将待学习图像至少局部区域的图像数据分别处理成N种不同大小的输入区域的图像数据,所述N为大于或等于2的整数; 训练单元,用于分别将所述N种输入区域的图像数据作为N级级联的卷积神经网络中各级卷积神经网络的输入,对各级卷积神经网络进行训练,其中,所述N级级联的卷积神经网络中的每一级卷积神经网络分别与所述N种输入区域的一种输入区域对应; 回传单元,用于将各级卷积神经网络分别输出的至少一训练结果进行关联,并将关联后的训练结果回传至各级卷积神经网络以调整各级神经网络的参数。7.—种基于级联卷积神经网络的图像检测装置,其特征在于,包括: 图像数据获取单元,用于获取待检测图像的图像数据; 检测单元,用于将所述待检测图像的图像数据作为如权利要求6所述的训练装置建立的神经网络模型的输入对所述待检测图像进行检测,得到所述待检测图像的检测结果。8.一种级联卷积神经网络训练系统,其特征在于,包括: 图像获取装置,用于获取待学习图像的图像数据; 存储器,用于存储程序; 处理器,接收所述待学习图像的图像数据,用于执行所述程序以实现如权利要求1-3任意一项所述方法中的操作。9.一种基于级联卷积神经网络的图像检测系统,其特征在于,包括: 图像获取装置,用于获取待检测图像的图像数据; 存储器,用于存储程序; 处理器,接收所述待检测图像的图像数据,用于执行所述程序以实现如权利要求4或5所述方法中的操作。10.一种级联卷积神经网络,其特征在于,包括: 级联的N级卷积神经网络,所述N级卷积神经网络的用于接收N种不同大小的输入区域的图像数据,用于分别对所述N种不同大小的输入区域的图像数据进行训练/检测,所述N为大于或等于2的整数; 各级卷积神经网络分别输出的至少一训练结果相关联,关联后的训练结果被回传至各级卷积神经网络。
【文档编号】G06T7/00GK106096670SQ201610439342
【公开日】2016年11月9日
【申请日】2016年6月17日
【发明人】秦红伟, 闫俊杰
【申请人】北京市商汤科技开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1