发明内容
本申请提供了一种猪只行为数据均衡化方法、装置、计算机设备及存储介质,有利于获得更高识别精度的猪只行为识别网络,从而提高猪只行为识别的准确性。
第一方面,本申请实施例提供了一种猪只行为数据均衡化方法,该方法包括:
获取原始样本图像集,原始样本图像集包括从监控视频中采集到的包含猪只行为姿态的多个原始样本图像;
基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,其中,训练数据生成网络用于生成包含猪只坐立姿态的生成样本图像;
通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集。
在其中一个实施例中,深度卷积生成对抗网络包括生成器和判别器;基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,包括:
将预设的噪声和约束条件输入生成器,经过生成器转置卷积操作后生成伪造样本图像;其中,约束条件为猪只的真实位置信息,噪声的形状为正态分布向量;
从多个原始样本图像中选取包含猪只坐立姿态的原始样本图像作为真实样本图像,并将真实样本图像与伪造样本图像输入判别器进行对比,计算深度卷积生成对抗网络对应的损失信息;
根据损失信息更新深度卷积生成对抗网络,得到更新后的深度卷积生成对抗网络;
基于更新后的深度卷积生成对抗网络重复执行将噪声和约束条件信息输入生成器,经过生成器转置卷积操作后生成伪造样本图像至根据损失信息更新深度卷积生成对抗网络,得到更新后的深度卷积生成对抗网络的步骤,直至损失信息满足预设损失条件;
将损失信息满足预设损失条件时的深度卷积生成对抗网络作为训练数据生成网络。
在其中一个实施例中,通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集,包括:
基于原始样本图像集中包含猪只坐立姿态的原始样本图像,通过训练数据生成网络得到生成样本图像集,生成样本图像集包括多张包含猪只坐立姿态的生成样本图像;
将生成样本图像集加入原始样本图像集,得到训练样本图像集。
另一方面,本申请实施例提供了一种猪只行为识别网络训练方法,该方法包括:
获取训练样本图像集,训练样本图像集包括多张包含猪只行为姿态的训练样本图像;
基于训练样本图像集对预设的分类网络进行训练,得到训练好的猪只行为识别网络;
其中,训练样本图像集是基于上述各实施例中任一项的猪只行为数据均衡化方法生成得到的。
另一方面,本申请实施例提供了一种猪只行为识别方法,该方法包括:
获取待识别图像;
将待识别图像输入训练好的猪只行为识别网络进行识别,得到待识别图像中猪只行为的分类结果;
当检测到待识别图像中猪只的行为出现异常时,发出报警信息;
其中,猪只行为识别网络是基于上述实施例的猪只行为识别网络训练方法训练后得到的。
另一方面,本申请实施例提供了一种猪只行为数据均衡化装置,该装置包括:
原始样本获取模块,用于获取原始样本图像集,原始样本图像集包括从监控视频中采集到的包含猪只行为姿态的多个原始样本图像;
生成网络训练模块,用于基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,其中,训练数据生成网络用于生成包含猪只坐立姿态的生成样本图像;
训练样本生成模块,用于通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集。
另一方面,本申请实施例提供了一种猪只行为识别网络训练装置,该装置包括:
训练样本获取模块,用于获取训练样本图像集,训练样本图像集包括多张包含猪只行为姿态的训练样本图像;
识别网络训练模块,用于基于训练样本图像集对预设的分类网络进行训练,得到训练好的猪只行为识别网络;
其中,训练样本图像集是基于上述实施例的猪只行为数据均衡化装置生成得到的。
另一方面,本申请实施例提供了一种猪只行为识别装置,该装置包括:
待识别图像模块,用于获取待识别图像;
猪只行为识别模块,用于将待识别图像输入训练好的猪只行为识别网络进行识别,得到待识别图像中猪只行为的分类结果;
异常行为报警模块,用于当检测到待识别图像中猪只的行为出现异常时,发出报警信息;
其中,猪只行为识别网络是基于上述实施例的猪只行为识别网络训练装置训练后得到的。
另一方面,本申请实施例提供了一种计算机设备,包括存储器及处理器,存储器中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行如上述任一实施例的猪只行为数据均衡化方法、猪只行为识别网络训练方法或猪只行为识别方法的步骤。
另一方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述任一实施例的猪只行为数据均衡化方法、猪只行为识别网络训练方法或猪只行为识别方法的步骤。
综上,与现有技术相比,本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例提供的一种猪只行为数据均衡化方法,可以获取原始样本图像集,基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,其中,训练数据生成网络用于生成包含猪只坐立姿态的生成样本图像;通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集。上述方法能够利用训练好的深度卷积生成对抗网络生成猪只坐立姿态图像来扩充训练数据,实现猪只行为数据均衡化,解决了因猪只姿态数据不平衡引起行为识别网络过拟合问题,能够获得更高识别精度的猪只行为识别网络,从而提高猪只行为识别的准确性。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图1,本申请实施例提供了一种猪只行为数据均衡化方法,该方法可以采用终端设备作为执行主体,该方法具体包括以下步骤:
步骤S11,获取原始样本图像集,原始样本图像集包括从监控视频中采集到的包含猪只行为姿态的多个原始样本图像。
其中,监控视频可以为安装在养猪场的监控摄像头获取到的视频数据,从上述监控视频中可以采集到多张包含猪只行为姿态的图像作为原始样本图像,根据这些原始样本图像可以创建原始样本图像集;该原始样本图像集一般为预先采集好的图像数据集;猪只行为姿态可以有多种,比如坐立姿态、站立姿态和趴下姿态等。
具体地,终端设备可以通过有线或无线连接方式与猪场监控摄像头连接以获取原始样本图像集;用户也可以预先从摄像设备中将监控视频下载下来,从中进行随机或定时采样以获得原始样本图像集。
步骤S12,基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,其中,训练数据生成网络用于生成包含猪只坐立姿态的生成样本图像。
具体地,可以利用现有的原始样本图像集中的数据对预设的深度卷积生成对抗网络进行训练,得到训练好的深度卷积生成对抗网络,将上述训练好的深度卷积生成对抗网络作为训练数据生成网络,以便生成包含猪只坐立姿态的样本图像。
其中,深度卷积生成对抗网络可以简称DCGAN网络(DeepConvolutionalGenerative Adversarial Networks),DCGAN网络的网络结构图如图2所示,其生成器和判别器的特征提取层使用了卷积神经网络代替了原始GAN(Generative AdversarialNetworks,生成对抗网络)中的多层感知机。图2中左边虚框为DCGAN网络的生成器(Generator,G),可以输入1×100的正态分布向量,经过4层卷积得到高宽不断扩大的特征层,上述过程看似普通卷积神经网络的逆过程,因此可以将其称为反卷积,也称为转置卷积。生成器最后输出64×64的假图像G(z)。图2中右边实框是DCGAN网络的判别器(Discriminator,D),输入的是真实样本图像和生成器生成的假图像,可以在经过普通卷积网络后输出判别结果。
步骤S13,通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集。
其中,训练样本图像集既包括原始样本图像集中的所有原始样本图像,也包括通过训练数据生成网络生成的新样本图像。
具体地,通过上述训练数据生成网络可以生成大量包含猪只坐立姿态的样本图像,将训练数据生成网络生成的样本图像加入原始样本图像集中,就可以实现训练数据扩充,得到训练样本图像更均衡的训练样本图像集。
上述实施例中提供的一种猪只行为数据均衡化方法,可以获取原始样本图像集,基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,其中,训练数据生成网络用于生成包含猪只坐立姿态的生成样本图像;通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集;其中,本实施例是通过随机生成猪只坐立姿态图像来补充数据集的,而不是简单地复制少数类样本,一方面能有效地解决数据不均衡问题,另一方面能进一步解决过拟合问题。上述方法能够利用训练好的深度卷积生成对抗网络生成猪只坐立姿态图像来扩充训练数据,实现猪只行为数据均衡化,解决了因猪只姿态数据不平衡引起行为识别网络过拟合问题,能够获得更高识别精度的猪只行为识别网络,从而提高猪只行为识别的准确性。
在一些实施例中,深度卷积生成对抗网络包括生成器和判别器。本申请实施例中获取的原始样本图像来自于真实场景下拍摄的群养猪视频,因此得到的猪只行为图片中场景较大,猪只目标较小。如果直接将原始样本图像输入DCGAN网络,由于猪只目标信息过少,生成的猪只坐立姿态效果很不理想。为了改进生成的样本图像效果,步骤S12可以包括:
将预设的噪声和约束条件输入生成器,经过生成器转置卷积操作后生成伪造样本图像。
其中,约束条件为猪只的真实位置信息(ground truth),噪声的形状为正态分布向量。
从多个原始样本图像中选取包含猪只坐立姿态的原始样本图像作为真实样本图像,并将真实样本图像与伪造样本图像输入判别器进行对比,计算深度卷积生成对抗网络对应的损失信息(loss)。
根据损失信息更新深度卷积生成对抗网络,得到更新后的深度卷积生成对抗网络。
基于更新后的深度卷积生成对抗网络重复执行将噪声和约束条件信息输入生成器,经过生成器转置卷积操作后生成伪造样本图像至根据损失信息更新深度卷积生成对抗网络,得到更新后的深度卷积生成对抗网络的步骤,直至损失信息满足预设损失条件。
其中,DCGAN网络的损失函数可以用下面的最大最小化过程来描述:
上式中,x表示真实样本,y表示额外输入信息,pdata是真实数据x的分布,z表示输入G网络的噪声,pz是噪声分布,G(z|y)是生成模型根据随机噪声z生成的模拟真实数据的假数据,D(x|y)是判别模型判断真实数据为真的概率,D(G(z|y))是判别模型判断造假数据为真的概率。D(.)的取值是一个0~1之间的概率值,D(.)=0表示概率最小,即判别器认为这是一张假图片;D(.)=1表示概率最小,即判别器认为这是一张真图片。
将损失信息满足预设损失条件时的深度卷积生成对抗网络作为训练数据生成网络。
具体的,预设损失条件可以结合实际应用中对训练数据生成网络的训练精度设定。
在具体实施时,改进后的生成器训练过程如图3所示,首先输入形状为1×100正态分布向量的噪声和目标对象真实位置,通过生成网络转置卷积操作后生成假图片,生成结果通过与1(真实样本图像的标签为1)对比计算loss,生成网络根据loss大小不断调整,以生成更接近真图片的假图片(假图片的标签为0)。图4为原始样本图像直接输入DCGAN网络中训练500Epoch的测试效果,可以看到,生成图片的目标很小,而且模糊不清;图5为融入目标定位约束条件后的DCGAN网络训练的测试效果。对比图4与5的效果,可以看出,改进后图像生成的效果有了明显的改进。
针对由于原始样本图像中猪只目标过小引起的生成图像模糊问题,上述实施例可以采用目标对象真实位置作为约束条件,对DCGAN网络的生成器进行了改进,加快了算法收敛速度,提高了图像生成质量。
在一些实施例中,步骤S13具体包括以下步骤:
基于原始样本图像集中包含猪只坐立姿态的原始样本图像,通过训练数据生成网络得到生成样本图像集,生成样本图像集包括多张包含猪只坐立姿态的生成样本图像;
将生成样本图像集加入原始样本图像集,得到训练样本图像集。
上述实施例可以通过随机生成猪只坐立姿态图像补充训练数据集,而非简单地复制少数类样本,解决了猪只行为数据不均衡的问题,避免了样本不平衡导致的分类网络过拟合问题。
由以上实施例提供的技术方案可见,本申请各实施例中通过原始样本图像集训练预设的深度卷积生成对抗网络,得到可以生成大量包含猪只坐立姿态的样本图像的训练数据生成网络,然后利用训练数据生成网络进行训练数据扩充,保证了训练数据的均衡化,从而提高了猪只行为识别网络的训练精度。
以下介绍本申请实施例提供的一种猪只行为识别网络训练方法,图6为本申请实施例提供的一种猪只行为识别网络训练方法的流程示意图。需要说明的是,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。如图6所示,上述方法可以包括:
步骤S21,获取训练样本图像集,训练样本图像集包括多张包含猪只行为姿态的训练样本图像。
步骤S22,基于训练样本图像集对预设的分类网络进行训练,得到训练好的猪只行为识别网络。
其中,训练样本图像集是利用上述猪只行为数据均衡化方法生成得到的。
具体地,在训练过程中基于反向传播算法调整该分类网络的权重参数至该分类网络输出的训练样本图像中猪只行为的预测分类结果与训练样本图像中猪只行为的实际分类信息相匹配,得到训练好的猪只行为识别网络。在具体实施时,预设的分类网络可以采用现有技术中常用的分类网络,例如:AlexNet、VGG、ResNet、SqueezeNet和DenseNet等,同时本说明书中未作详细描述的内容均属于本领域技术人员公知的现有技术。
由以上实施例提供的技术方案可见,本申请实施例中利用上述猪只行为数据均衡化得到的训练样本图像集对预设的分类网络进行训练,获得了识别精度更高的猪只行为识别网络,能够提高对猪只行为的识别准确度。
以下介绍本申请实施例提供的一种猪只行为识别方法,图7为本申请实施例提供的一种猪只行为识别方法的流程示意图。需要说明的是,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。如图7所示,上述方法可以包括:
步骤S31,获取待识别图像。
步骤S32,将待识别图像输入训练好的猪只行为识别网络进行识别,得到待识别图像中猪只行为的分类结果。
步骤S33,当检测到待识别图像中猪只的行为出现异常时,发出报警信息。
其中,猪只行为识别网络是基于上述猪只行为识别网络训练方法训练后得到的。
由以上本说明书实施例可见,利用上述猪只行为识别网络训练方法训练得到的猪只行为识别网络进行猪只行为识别,提升了猪只行为的识别准确率,具有更好的识别效果。
本申请实施例提供了一种猪只行为数据均衡化装置,请参见图8,该装置包括:
原始样本获取模块101,用于获取原始样本图像集,原始样本图像集包括从监控视频中采集到的包含猪只行为姿态的多个原始样本图像。
生成网络训练模块102,用于基于原始样本图像集对预设的深度卷积生成对抗网络进行训练,得到训练数据生成网络,其中,训练数据生成网络用于生成包含猪只坐立姿态的生成样本图像。
训练样本生成模块103,用于通过训练数据生成网络对原始样本图像集进行数据扩充,得到训练样本图像集。
在一些实施例中,深度卷积生成对抗网络包括生成器和判别器;生成网络训练模块102具体用于:将预设的噪声和约束条件输入生成器,经过生成器转置卷积操作后生成伪造样本图像;其中,约束条件为猪只的真实位置信息,噪声的形状为正态分布向量;从多个原始样本图像中选取包含猪只坐立姿态的原始样本图像作为真实样本图像,并将真实样本图像与伪造样本图像输入判别器进行对比,计算深度卷积生成对抗网络对应的损失信息;根据损失信息更新深度卷积生成对抗网络,得到更新后的深度卷积生成对抗网络;基于更新后的深度卷积生成对抗网络重复执行将噪声和约束条件信息输入生成器,经过生成器转置卷积操作后生成伪造样本图像至根据损失信息更新深度卷积生成对抗网络,得到更新后的深度卷积生成对抗网络的步骤,直至损失信息满足预设损失条件;将损失信息满足预设损失条件时的深度卷积生成对抗网络作为训练数据生成网络。
在一些实施例中,训练样本生成模块103具体用于:基于原始样本图像集中包含猪只坐立姿态的原始样本图像,通过训练数据生成网络得到生成样本图像集,生成样本图像集包括多张包含猪只坐立姿态的生成样本图像;将生成样本图像集加入原始样本图像集,得到训练样本图像集。
本申请实施例提供了一种猪只行为识别网络训练装置,请参见图9,该装置包括:
训练样本获取模块201,用于获取训练样本图像集,训练样本图像集包括多张包含猪只行为姿态的训练样本图像。
识别网络训练模块202,用于基于训练样本图像集对预设的分类网络进行训练,得到训练好的猪只行为识别网络。
其中,训练样本图像集是基于上述猪只行为数据均衡化装置生成得到的。
本申请实施例提供了一种猪只行为识别装置,请参见图10,该装置包括:
待识别图像模块301,用于获取待识别图像。
猪只行为识别模块302,用于将待识别图像输入训练好的猪只行为识别网络进行识别,得到待识别图像中猪只行为的分类结果。
异常行为报警模块303,用于当检测到待识别图像中猪只的行为出现异常时,发出报警信息。
其中,猪只行为识别网络是基于上述猪只行为识别网络训练装置训练后得到的。
本实施例中提供的关于猪只行为数据均衡化装置、猪只行为识别网络训练装置及猪只行为识别装置的具体限定,可以参见上文中关于猪只行为数据均衡化方法、猪只行为识别网络训练方法及猪只行为识别方法的实施例,于此不再赘述。上述猪只行为数据均衡化装置、猪只行为识别网络训练装置及猪只行为识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
本申请实施例提供了一种计算机设备,该计算机设备可以包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。处计算机程序被处理器执行时,使得处理器执行如上述任一实施例的猪只行为数据均衡化方法、猪只行为识别网络训练方法或猪只行为识别方法的步骤。
本实施例提供的计算机设备的工作过程、工作细节和技术效果,可以参见上文中关于猪只行为数据均衡化方法、猪只行为识别网络训练方法或猪只行为识别方法的实施例,于此不再赘述。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述任一实施例的猪只行为数据均衡化方法、猪只行为识别网络训练方法或猪只行为识别方法的步骤。其中,所述计算机可读存储介质是指存储数据的载体,可以但不限于包括软盘、光盘、硬盘、闪存、优盘和/或记忆棒(Memory Stick)等,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
本实施例提供的计算机可读存储介质的工作过程、工作细节和技术效果,可以参见上文中关于猪只行为数据均衡化方法、猪只行为识别网络训练方法或猪只行为识别方法的实施例,于此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。