一种基于CNN卷积神经网络的图像火焰识别系统的制作方法

文档序号:12825624阅读:678来源:国知局

本发明涉及计算机软件领域,尤其涉及的是一种基于cnn卷积神经网络的图像火焰识别系统。



背景技术:

现有技术中,由于火灾的频发性,尽早预防和避免火灾事故越来越重要。近年来,随着视频监视设备的普及和视频图像处理技术的发展,通过分析图像信息识别有火焰成为一种新技术。

火焰视觉识别系统通常包括三部分:火焰数据采集、特征提取、火焰识别等。在获得数据之后,然后对数据进行特征提取。最后,将提取到的特征数据输入到模糊推理机、神经网络、支持向量机等分类器中,得到识别结果。

然而,计算机为按上述流程完成图像中火焰识别任务,需要大量的训练数据来降低模型系统的不确定性。但是,目前尚未形成火焰的自然大数据集,这就意味着,现有的火焰识别模型系统中存在着大量不确定性。尽管在一个数据集的测试集上表现良好,但当实际应用时,模型对随机的新数据泛化能力就会变得很差,鲁棒性很低,精度急剧下降,无法重现实验室模型的准确率。为此,亟需一种能识别率高、鲁棒性好的火焰识别方法。

因此,现有技术存在缺陷,需要改进。



技术实现要素:

本发明所要解决的技术问题是:提供一种识别率高、鲁棒性好的基于cnn卷积神经网络的图像火焰识别系统。

本发明的技术方案如下:一种基于cnn卷积神经网络的图像火焰识别系统,包括用于识别火焰的cnn神经网络,其中,cnn神经网络包括3个cnn子网络,其分别为cnn子网络1、cnn子网络2和cnn子网络3;3个cnn子网络的输入数据分别为大小为m×n的rgb图像分解为r、g和b的三个通道数据;并且,每个cnn子网络包括4个卷积层、3个池化层、1个全连接层和1个子网络输出层。

应用于上述技术方案,所述的图像火焰识别系统中,每个cnn子网络依次包括3×3大小的卷积核64个的第一卷积层、3×3卷积核64个的第二卷积层、2×2的核第一池化层、5×5卷积核96个的第三卷积层、2×2的核第二池化层、5×5卷积核96个的第四卷积层、2×2的核第三池化层、全连接层和子网络输出层。

应用于各个上述技术方案,所述的图像火焰识别系统中,还包括由3个cnn子网络的输出加权求和得到最终的输出结果的求和输出层。

应用于各个上述技术方案,所述的图像火焰识别系统中,每一子网络输出层输出的结果数据包括无火概率、阴燃火概率、小明火概率和大明火概率。

应用于各个上述技术方案,所述的图像火焰识别系统中,求和输出层输出的结果数据也包括无火概率、阴燃火概率、小明火概率和大明火概率;并且,其输出式为:输出权值w=w1×cnn子网络1输出+w2×cnn子网络2输出+w3×cnn子网络3输出;其中,w1=0.4,w2=0.3,w3=0.3。

应用于各个上述技术方案,所述的图像火焰识别系统中,每个cnn子网络的4个卷积层、3个池化层、1个全连接层的激活函数均采用relu函数;其表达式为:relu(x)=max(0,x);并且,子网络输出层的激活函数为softmax函数,其表达式为

应用于各个上述技术方案,所述的图像火焰识别系统中,各池化层采用选取区域中的最大值maxpooling作为输出值。

应用于各个上述技术方案,所述的图像火焰识别系统中,权值w的初始化采用零均值、常数标准差std,其中,各层常数标准差std分别为:[0.0001,0.001,0.001,0.001,0.01,0.1]。

采用上述方案,本发明在火焰图像数据尚未形成大数据集的当下,训练得到的cnn神经网络识别率和鲁棒性高;即使获取得到的火焰图像存在位移、缩放及其他形式扭曲不变性,也有较好识别效果;避免了显示的特征抽取,而隐式地从训练数据中进行学习,避免了火焰出现的场合、形式不一样,造成的识别错误。

附图说明

图1为本发明的连接示意图。

具体实施方式

以下结合附图和具体实施例,对本发明进行详细说明。

本实施例提供了一种基于cnn卷积神经网络的图像火焰识别系统,其中,其包括用于识别火焰的cnn神经网络,如图1所示,cnn神经网络包括3个cnn子网络,其分别为cnn子网络1、cnn子网络2和cnn子网络3;3个cnn子网络的输入数据分别为大小为m×n的rgb图像分解为r、g和b的三个通道数据;例如,cnn子网络1的输入数据分别为大小为m×n的rgb图像分解为r、g和b的r通道数据,cnn子网络2的输入数据分别为大小为m×n的rgb图像分解为r、g和b的g通道数据,cnn子网络3的输入数据分别为大小为m×n的rgb图像分解为r、g和b的b通道数据;即大小为m×n的rgb图像分解为r、g和b三个通道数据,分别作为cnn子网络1、cnn子网络2和cnn子网络3的输入。

并且,每个cnn子网络包括4个卷积层、3个池化层、1个全连接层和1个子网络输出层。其中,每个cnn子网络依次包括3×3大小的卷积核64个的第一卷积层、3×3卷积核64个的第二卷积层、2×2的核第一池化层、5×5卷积核96个的第三卷积层、2×2的核第二池化层、5×5卷积核96个的第四卷积层、2×2的核第三池化层、全连接层和子网络输出层。

例如,每一个cnn子网络中依次包括:

第一层卷积:3×3大小的卷积核64个。

第二层卷积:与上一层,即第一层卷积为全连接,3×3卷积核64个。

第一层池化:2×2的核。

第三层卷积:5×5卷积核96个。

第二层池化:2×2的核。

第四层卷积:5×5的卷积核96个。

第三层池化:2×2的核。

第五层为全连接层。

第六层为子网络输出层:输出有四个,分别为无火、阴燃火、小明火和大明火,输出的每一维都是图像属于该类别的概率;每一子网络输出层输出的结果数据包括无火概率、阴燃火概率、小明火概率和大明火概率。

并且,还包括由3个cnn子网络的输出加权求和得到最终的输出结果的求和输出层,即整个cnn神经网络的最后一层,求和输出层输出的结果数据也包括无火概率、阴燃火概率、小明火概率和大明火概率;其中,最后一层为输出层,由三个cnn子网络的输出加权求和得到最终的输出结果,同样最终输出有四个分别为无火、阴燃火、小明火和大明火,输出的每一维都是图像属于该类别的概率。

其输出式为:输出权值w=w1×cnn子网络1输出+w2×cnn子网络2输出+w3×cnn子网络3输出;其中,w1=0.4,w2=0.3,w3=0.3。

cnn子网络中,除最后一层之外,其余各层激活函数均采用relu函数,即每个cnn子网络的4个卷积层、3个池化层、1个全连接层的激活函数均采用relu函数。

其表达式为:relu(x)=max(0,x)。

各个卷积层输出激活后,再输出。

最后一层的函数为softmax,其表达式为

每一池化层采用maxpooling即选取区域中的最大值作为输出值。

权值w的初始化采用零均值、常数标准差(standarddeviation,std)方案。各层std分别为:

[0.0001,0.001,0.001,0.001,0.01,0.1]。

以上仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1