漂浮物图像检测模型生成方法、识别方法及设备与流程

文档序号:15638225发布日期:2018-10-12 21:44阅读:459来源:国知局

本发明涉及图像识别技术领域,尤其涉及一种漂浮物图像检测模型生成方法、漂浮物的图像识别方法、计算机可读存储介质及计算机设备。



背景技术:

随着信息时代的发展,图像数据越发庞大,而且以一个很快的速度在增长。通过这些图像可以发掘出人们的所思所想,为进一步决策提供依据。在进行数据挖掘之前,需要对这些庞大的图像数据进行有效的分类管理。在对图像数据的分类管理中,图像识别是一个基础工作,其在信息提取、信息识别和信息检索方面都有重要的意义和价值。要让计算机像人一样对图像数据进行图像分类或图像识别具有很大的困难,这些困难在于图像数据具有不规则性,不同图像数据的表示方法,图像的数量级不同等方面。深度学习(deeplearning),尤其是卷积神经网络(cnn),是近几年来图像处理及模式识别中的研究重点,受到人们越来越多的关注。它是一种建立、模拟人脑进行分析学习的神经网络,能够模仿人脑的机制来解释数据,例如图像,声音和文本。

漂浮物图像智能识别系统是众多图像识别产品中一款面向水行业及能源行业的河流漂浮物图像自动识别产品,能够自动识别河道或水库前视频图片中是否存在垃圾漂浮物,计算漂浮物的大小及所占面积,并将识别的成果进行专业的业务应用,替代传统的人工视频监视,提高用户工作效率,减少人工操作。

从机器学习模型的层次结构来看,机器学习的发展大概经历了两次变革:浅层学习和深度学习。在面对多个变量的异域问题时,浅层学习模型难以对其进行表达,需要多层隐含结点的网络才能有效进行表示,深度学习模型可以简洁有效的来表示复杂的函数。随着大数据的发展,面对庞大的数据,浅层学习结构在模型描述能力方面更是显现出了短板,难以充分挖掘数据的内在表示,只有表达能力更强的模型才能从大数据中发掘出更多更有价值的信息,这也激发了人们探索深度学习模型对复杂函数建模的学习动机。图像识别的研究目标就是根据图像中所具有的某种属性将其划分到预先定义的不同分类中。如何构建图像特征表示和分类模型是解决图像理解问题的关键,很多研究者进行了广泛的研究并提出了一些有效的方法。传统的方法大部分是基于视觉码本模型,该模型很好的利用了人工巧妙设计的图像描述和有效的机器学习模型,但它对图像中层结构和高层语义信息的表示力有限,无法突破语义鸿沟。近年来,深度学习的突破性发展为解决这一问题提供了新的思路,并在许多模式识别问题中得到成功应用。

然而,现有的基于传统图像颜色处理技术的垃圾漂浮物识别方法,通过提取图像颜色直方图并进行阈值分割,并算出垃圾漂浮物的比例以判断污染的严重程度。该方法受限于漂浮物的种类多样性以及环境的变化,当漂浮物颜色多样时,容易将与水体颜色相近的垃圾误识别成正常水体,更多的是当光照不同时,水体颜色的变化也很大,导致识别错误。现有的基于漂浮物检测的污染程度识别方法,利用支持向量机作为分类器,训练出非常有限的垃圾漂浮物种类,并计算垃圾漂浮物的数量作为依据识别污染程度。该方法同样受限于垃圾漂浮物的种类多样性以及环境的变化,真实环境下,垃圾是随机堆叠、杂乱无章的漂浮,光线差,以至很难识别出相对应的漂浮物种类及其数量,导致污染程度识别错误。



技术实现要素:

本发明提供了一种漂浮物图像检测模型生成方法、识别方法及设备,以提高漂浮物图像识别的准确度。

本发明实施例提供了一种漂浮物图像检测模型生成方法,包括:获取训练数据;所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级;利用所述训练数据训练初始神经网络,得到漂浮物图像检测模型。

一个实施例中,获取训练数据,包括:获取图像数据集;所述图像数据集中的每个图像对应一个漂浮物等级;通过图像变换对所述图像数据集进行数据扩充,得到所述训练数据;所述图像变换包括旋转、镜像、伸缩及扭曲中的一个或多个。

一个实施例中,所述漂浮物等级为正常、轻度污染、中度污染或重度污染;所述初始神经网络为caffenet神经网络。

一个实施例中,利用所述训练数据训练初始神经网络,得到漂浮物图像检测模型,包括:基于imagenet模型,对初始神经网络进行微调训练,得到漂浮物图像检测模型。

本发明实施例还提供一种漂浮物的图像识别方法,包括:获取漂浮物区域的监测图像;利用漂浮物图像检测模型检测所述监测图像,得到至少一个漂浮物等级;所述漂浮物图像检测模型是利用训练数据训练初始神经网络得到的;所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级。

一个实施例中,利用漂浮物图像检测模型检测所述监测图像,得到至少一个漂浮物等级,包括:利用漂浮物图像检测模型检测多个所述监测图像,得到所述监测图像的至少一个漂浮物等级和相应的概率。

一个实施例中,该漂浮物的图像识别方法,还包括:当所述监测图像对应的漂浮物等级为设定等级,且该漂浮物等级的概率超过设定概率值时,发送预警信息至终端设备。

一个实施例中,该漂浮物的图像识别方法,还包括:发送所述监测图像对应的各个漂浮物等级和相应的概率至存储设备或显示设备。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述各实施例所述方法的步骤。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述各实施例所述方法的步骤。

本发明实施例的漂浮物图像检测模型生成方法、漂浮物的图像识别方法、计算机可读存储介质及计算机设备,通过使所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级,并利用所述训练数据训练初始神经网络得到漂浮物图像检测模型,能够避免受漂浮物所在区域的光线影响,克服基于颜色或数量的漂浮物图像识别方法的缺点,提高漂浮物图像识别的准确度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1是本发明一实施例的漂浮物图像检测模型生成方法的流程示意图。

图2是本发明一实施例中获取训练数据的方法流程示意图。

图3是本发明一实施例的漂浮物的图像识别方法的流程示意图。

图4是本发明又一实施例的漂浮物的图像识别方法的流程示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。

图1是本发明一实施例的漂浮物图像检测模型生成方法的流程示意图。如图1所示,该漂浮物图像检测模型生成方法,可包括:

步骤s110:获取训练数据;所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级;

步骤s120:利用所述训练数据训练初始神经网络,得到漂浮物图像检测模型。

该漂浮物图像是包含漂浮物的图像,例如水库表面的图像,图像中可包含漂浮物。训练数据中包含设定数量的漂浮物图像。每个漂浮物图像对应一个或多个漂浮物等级。漂浮物等级可以通过人工评定。将训练数据输入初始神经网络后,可以输出该训练数据的漂浮物等级预测结果,例如,如果属于某一漂浮物等级,输出结果可为1,如果不是,输出结果可以为0,将输出结果与事先知道的正确的漂浮物等级进行比较,由于训练数据的样本数量(设定数量)一定,所以可以计算出预测的正确率,根据预测正确率可以知道预测误差,经过迭代计算可以减小预测误差,达到设定阈值。该漂浮物图像检测模型可以是针对某种网络结构的参数模型。

本实施例中,通过使所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级,并利用所述训练数据训练初始神经网络得到漂浮物图像检测模型,能够避免受漂浮物所在区域的光线影响,克服基于颜色或数量的漂浮物图像识别方法的缺点,提高漂浮物图像识别的准确度。

图2是本发明一实施例中获取训练数据的方法流程示意图。如图2所示,在上述步骤s110中,获取训练数据,可包括:

步骤s111:获取图像数据集;所述图像数据集中的每个图像对应一个漂浮物等级;

步骤s112:通过图像变换对所述图像数据集进行数据扩充,得到所述训练数据;所述图像变换包括旋转、镜像、伸缩及扭曲中的一个或多个。

本实施例中,通过对所述图像数据集进行旋转、镜像、伸缩、扭曲等变换,进行数据扩充,能够在不增加图像收集量的情况下增加训练数据总量,提高了训练数据准备的效率。

一些实施例中,所述漂浮物等级为正常、轻度污染、中度污染或重度污染。该正常,例如是正常水体、正常空气等。一些实施例中,所述初始神经网络为caffenet神经网络。

一些实施例中,在上述步骤s120中,利用所述训练数据训练初始神经网络,得到漂浮物图像检测模型,可包括:基于imagenet模型,对初始神经网络进行微调训练,得到漂浮物图像检测模型。imagenet模型是一个参数模型,以imagenet模型为基础进行微调训练,能减小训练的计算量,减小训练样本的数量要求。例如迭代次数为5万次,学习率为0.005~0.05,例如取0.01。

基于上述实施例的漂浮物图像检测模型,本发明还提供一种漂浮物的图像识别方法。

图3是本发明一实施例的漂浮物的图像识别方法的流程示意图。如图3所示,该漂浮物的图像识别方法,可包括:

步骤s210:获取漂浮物区域的监测图像;

步骤s220:利用漂浮物图像检测模型检测所述监测图像,得到至少一个漂浮物等级;所述漂浮物图像检测模型是利用训练数据训练初始神经网络得到的;所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级。

本实施例中,漂浮物图像检测模型是通过使所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级,并利用所述训练数据训练初始神经网络得到,利用该漂浮物图像检测模型进行漂浮物的图像识别,能够避免受漂浮物所在区域的光线影响,克服基于颜色或数量的漂浮物图像识别方法的缺点,提高漂浮物图像识别的准确度。

一些实施例中,在所述监测图像为多个的情况下,上述步骤s210,利用漂浮物图像检测模型检测所述监测图像,得到至少一个漂浮物等级,可包括:利用漂浮物图像检测模型检测多个所述监测图像,得到所述监测图像的至少一个漂浮物等级和相应的概率。

通过某一监测图像对应的漂浮物等级在多个监测图像的漂浮物等级中所占的比例可以得到概率。一个监测图像可以对应一个或多个漂浮物等级,每个漂浮物等级可以对应一个概率。当监测图像对应多个漂浮物等级时,如果其中一个漂浮物等级的概率明显较大,可以认为识别结果为概率较大的这个漂浮物等级,如果各个漂浮物等级概率差不多,可以认为正常或认为识别无效。

图4是本发明又一实施例的漂浮物的图像识别方法的流程示意图。如图4所示,该漂浮物的图像识别方法,还可包括:

步骤s230:当所述监测图像对应的漂浮物等级为设定等级,且该漂浮物等级的概率超过设定概率值时,发送预警信息至终端设备。

漂浮物等级可以为正常水体、轻度污染、中度污染或重度污染,例如,当漂浮物等级为重度污染(设定等级)时,可以发送预警信息至终端设备,以通知相关人员进行处理。该终端设备例如为电脑、手机等设备。进一步,可以将预警信息发送至终端设备上的app(应用)中,例如短信、微信等。

一些实施例中,漂浮物的图像识别方法,还可包括:发送所述监测图像对应的各个漂浮物等级和相应的概率至存储设备或显示设备。例如可以将漂浮物等级和相应的概率发送至电脑,并在电脑的web页面上查看或查询。

一些实施例中,上述步骤s210,获取漂浮物区域的监测图像,可包括:获取漂浮物区域的视频图像;将所述视频图像转换为监测图像。视频图像可以从待测对象的监控点获得。

一个具体实施例中,以水体中的垃圾漂浮物识别为例,基于深度学习的垃圾漂浮物图像自动识别算法,可包括:

步骤s1:定义垃圾漂浮物图像识别网络结构,使用caffenet作为基础训练网络。

步骤s2:对数据集进行数据扩充,增加数据集随机旋转、镜像、伸缩、扭曲变换图像,并将数据集分为四个等级:正常水体、轻度污染、中度污染、重度污染。

步骤s3:根据s1配置的网络结构与参数,设置迭代次数为50000次,学习率为0.01,batch大小为50,并在imagenet模型上面进行微调训练,得到垃圾漂浮物识别模型。

步骤s4:根据s3得到的垃圾漂浮物识别模型与输入图像i送入网络进行前向计算,预测时输出垃圾漂浮物预测的等级种类及其概率,至此算法描述结束。

本实施例的方法,利用计算机图像自动识别技术自动识别河道或水库前视频图片中是否存在垃圾漂浮物,计算漂浮物的大小及所占面积,以代替传统人工肉眼判断读数,并设定预警条件,自动分析预警,能够逐步降低河道水库垃圾漂浮物视频监控人工精力的投入,真正提升工作效率,垃圾漂浮物视频监控能力和力度将大幅提升,发现异常更加及时准确,垃圾漂浮物视频监控站的作用将最大程度得到发挥。

一些实施例中,漂浮物图像智能识别系统主要可包括视频图像的接入、图像识别计算模型、计算结果分析预警、计算结果展示。视频图像的接入是指漂浮物图像智能识别系统与视频监控点设备连接,实时获取视频图像信息,系统自动将视频图像转换图片保存,用于图片内容识别。图像识别计算模型是针对河道或水库前视频图像监控建立漂浮物自动识别计算模型,让计算机能够自动识别出图片是否存在垃圾漂浮物,计算漂浮物的大小及所占面积,并不断自我学习优化,提高识别准确度。计算结果分析预警是针对识别出的成果,通过设定预警阈值,自动判断是否超阈值,超阈值后能够自动产生预警信息,并通过微信、短信发送相关人员。计算结果展示是针对系统自动识别计算的成果信息,通过web进行直观的展示及查询。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述各实施例所述方法的步骤。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述各实施例所述方法的步骤。

综上所述,本发明实施例的漂浮物图像检测模型生成方法、漂浮物的图像识别方法、计算机可读存储介质及计算机设备,通过使所述训练数据包括设定数量的漂浮物图像和每个所述漂浮物图像对应的漂浮物等级,并利用所述训练数据训练初始神经网络得到漂浮物图像检测模型,能够避免受漂浮物所在区域的光线影响,克服基于颜色或数量的漂浮物图像识别方法的缺点,提高漂浮物图像识别的准确度。

在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本发明的实施,其中的步骤顺序不作限定,可根据需要作适当调整。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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