一种浒苔检测方法和装置转让专利

申请号 : CN201510747193.1

文献号 : CN105279556B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 崔松雪刘峰郭茂华

申请人 : 国家卫星海洋应用中心

摘要 :

本发明提供了一种浒苔检测方法和装置,包括:采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;对得到的预设卷积神经网络模型进行多次迭代训练,并在预设卷积神经网络模型的精度达到预设阈值时确定为实际应用的卷积神经网络模型;根据确定的卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出绿潮信息是否为浒苔的检测结果,其采用卷积神经网络的方式对大量的数据进行自动计算得到超高维特征,降低了人员参与度,使得计算的样本特征和对应的阈值的可靠性较高,具有较高的鲁棒性,并且还解决了环境、卫星本身等多因素的影响问题,同时也大幅降低了工作量,提升了识别效果。

权利要求 :

1.一种浒苔检测方法,其特征在于,包括:

采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;所述预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层;

计算所述预设卷积神经网络模型中每一层的神经元的值xl=f(ul),ul=Wlxl-1+bl,直至得到最后一层的神经元的值;其中,x代表神经元的值,l代表预设卷积神经网络模型中的层数,f代表激活函数,u代表当前层的一个神经元的输入;W代表权重,l-1代表当前层的上一层,b代表偏置;

根据所述最后一层的神经元的值与最后一层的标签,计算所述预设卷积神经网络模型的误差 其中,E表示误差,c代表两类,k表示每一类的序号,n代表序号的总数;

在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型;

根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果。

2.根据权利要求1所述的浒苔检测方法,其特征在于,所述在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型包括:采用梯度下降法对所述预设卷积神经网络模型中的权重系数进行优化其中,W表示权重,t代表优化的当前次数, 代表误差倒数,η表示学习速率;

将优化结果在最优点时对应权重值进行保存并作为预设卷积神经网络模型的权重系数,得到实际应用的卷积神经网络模型。

3.根据权利要求2所述的浒苔检测方法,其特征在于,所述根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果,包括:设定确定的所述卷积神经网络模型的识别步长;

在采集的绿潮信息中获取每一个识别步长对应的图像数据;

对每一个所述图像数据进行前馈计算,输出所有图像数据对应的绿潮信息是否为浒苔的检测结果。

4.根据权利要求1所述的浒苔检测方法,其特征在于,在采用深度学习方法对选取的样本数据进行模型设计之前,还包括:利用植被指数计算方法,提取含有浒苔的图像数据和不含有浒苔的图像数据作为样本数据;

对提取的所述样本数据进行预处理,所述预处理至少包括以下处理方法中的一种或多种:添加噪声、增强样本数据和增加训练数据量。

5.根据权利要求3或4所述的浒苔检测方法,其特征在于,所述根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测之前,还包括:导入卫星采集的遥感影像,提取所述遥感影像中预设波段的绿潮信息对应的图像数据;

按照预设的数据块大小对提取的所述图像数据进行裁剪处理,得到预设数据块大小的图像数据。

6.根据权利要求5所述的浒苔检测方法,其特征在于,所述方法还包括:在完成每一个所述遥感影像的识别后,根据识别结果生成离散点标注;

对离散点标注进行矢量化处理;所述矢量化处理包括以下处理方法中的一种或多种:位置获取、面积计算和专题制图。

7.根据权利要求6所述的浒苔检测方法,其特征在于,所述方法还包括:在人机交互界面提供对浒苔检测结果的监控:接收用户发送的检测浒苔检测结果是否正常的监控指令,在所述浒苔检测结果存在误判或漏判时,提示用户对所述浒苔检测结果进行人工交互处理。

8.一种浒苔检测装置,其特征在于,包括:

模型设计单元,用于采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;所述预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层;

迭代训练单元,用于对所述模型设计单元设计得到的所述预设卷积神经网络模型进行多次迭代训练,并在所述预设卷积神经网络模型的精度达到预设阈值时确定为实际应用的卷积神经网络模型;

检测单元,用于根据所述迭代训练单元确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果;

所述迭代训练单元包括:

第一计算子单元,用于计算所述预设卷积神经网络模型中每一层的神经元的值xl=f(ul),ul=Wlxl-1+bl,直至得到最后一层的神经元的值;其中,x代表神经元的值,l代表预设卷积神经网络模型中的层数,f代表激活函数,u代表当前层的一个神经元的输入;W代表权重,l-1代表当前层的上一层,b代表偏置;

第二计算子单元,用于根据所述第一计算子单元计算得到的最后一层的神经元的值与最后一层的标签,计算所述预设卷积神经网络模型的误差其中,E表示误差,c代表两类,k表示每一类的序号,n代表序号的总数;

确定子单元,用于在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型。

说明书 :

一种浒苔检测方法和装置

技术领域

[0001] 本发明涉及海洋遥感识别技术领域,具体而言,涉及一种基于卷积神经网络的浒苔检测方法和装置。

背景技术

[0002] 绿潮是在特定的环境条件下,海水中某些大型绿藻(如浒苔)爆发性增殖或高度聚集而引起水体变色的一种有害生态现象。其中,绿潮可导致海洋灾害,当海流将大量绿潮藻类卷到海岸时,绿潮藻体腐败产生有害气体,破坏海岸景观,对潮间带生态系统也可能导致损害。我国自2008至2012年,中国黄海海域连续5年在夏季发生绿潮灾害。因此,为了更好的确定绿潮发生的过程,并对绿潮达到预防、治理进而达到合理利用绿潮的目的,对引发绿潮的浒苔类藻类进行检测是目前亟待解决的问题。
[0003] 相关技术中对浒苔进行检测的方法具体如下:首先对绿潮信息进行提取,然后专家人员根据上述提取的大量的数据样本设计数据样本对应的数据特征值,然后人工对上述数据特征值进行计算,并根据计算结果设定上述数据特征值阈值,最后在利用上述数据特征值及对应的阈值人工对待检测数据进行识别和分类,用以检测提取的待检测绿潮信息是否为浒苔。
[0004] 但是,传统的浒苔检测方法都是人工对样本特征值和上述特征值对应的阈值进行设定,这对设计人员的知识、能力和经验要求较高,并且人工设计针对不同的数据源、不同的目标具有较大的局限性(体现在由于卫星成像色调偏差、环境变化、天气因素等影响,而使得人工设计的特征无法表述所有情况),从而使得人工设定的特征值和阈值的精确度较差;并且,卫星采集的海洋遥感数据处理量巨大,多为海量数据,这给人工交互增加了繁重的工作量。
[0005] 发明人在研究中发现,相关技术中的浒苔检测方法存在样本特征和阈值设定不准确,人工工作量大等缺陷,针对浒苔检测的问题,目前尚未提出有效解决方法。

发明内容

[0006] 本发明的目的在于提供一种浒苔检测方法和装置,采用卷积神经网络对大量的数据进行自动计算得到超高维特征,降低了人员参与度,具有较高的鲁棒性;并且解决了环境、卫星本身等多因素的影响问题,大幅降低了人工工作量,提升了识别效果。
[0007] 第一方面,本发明实施例提供了一种浒苔检测方法,其特征在于,包括:
[0008] 采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;所述预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层;
[0009] 对得到的所述预设卷积神经网络模型进行多次迭代训练,并在所述预设卷积神经网络模型的精度达到预设阈值时确定为实际应用的卷积神经网络模型;
[0010] 根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果。
[0011] 结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述对得到的所述预设卷积神经网络模型进行多次迭代训练,并在所述预设卷积神经网络模型的精度达到预设阈值时确定为实际应用的卷积神经网络模型包括:
[0012] 计算所述预设卷积神经网络模型中每一层的神经元的值xl=f(ul),ul=Wlxl-1+bl,直至得到最后一层的神经元的值;其中,x代表神经元的值,l代表预设卷积神经网络模型中的层数,f代表激活函数,u代表当前层的一个神经元的输入;W代表权重,l-1代表当前层的上一层,b代表偏置;
[0013] 根据所述最后一层的神经元的值与最后一层的标签,计算所述预设卷积神经网络模型的误差 其中,E表示误差,c代表两类,k表示每一类的序号,n代表序号的总数;
[0014] 在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型。
[0015] 结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型包括:
[0016] 采用梯度下降法对所述预设卷积神经网络模型中的权重系数进行优化其中,W表示权重,t代表优化的当前次数, 代表误差倒数,η表示学习速率;
[0017] 将优化结果在最优点时对应权重值进行保存并作为预设卷积神经网络模型的权重系数,得到实际应用的卷积神经网络模型。
[0018] 结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果,包括:
[0019] 设定确定的所述卷积神经网络模型的识别步长;
[0020] 在采集的绿潮信息中获取每一个识别步长对应的图像数据;
[0021] 对每一个所述图像数据进行前馈计算,输出所有图像数据对应的绿潮信息是否为浒苔的检测结果。
[0022] 结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,在采用深度学习方法对选取的样本数据进行模型设计之前,还包括:
[0023] 利用植被指数计算方法,提取含有浒苔的图像数据和不含有浒苔的图像数据作为样本数据;
[0024] 对提取的所述样本数据进行预处理,所述预处理至少包括以下处理方法中的一种或多种:添加噪声、增强样本数据和增加训练数据量。
[0025] 结合第一方面的第三种可能的实施方式或第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测之前,还包括:
[0026] 导入卫星采集的遥感影像,提取所述遥感影像中预设波段的绿潮信息对应的图像数据;
[0027] 按照预设的数据块大小对提取的所述图像数据进行裁剪处理,得到预设数据块大小的图像数据。
[0028] 结合第一方面的第五种可能的实施方式,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述方法还包括:
[0029] 在完成每一个所述遥感影像的识别后,根据识别结果生成离散点标注;对离散点标注进行矢量化处理;所述矢量化处理包括以下处理方法中的一种或多种:位置获取、面积计算和专题制图。
[0030] 结合第一方面的第六种可能的实施方式,本发明实施例提供了第一方面的第七种可能的实施方式,其中,所述方法还包括:
[0031] 在人机交互界面提供对浒苔检测结果的监控:接收用户发送的检测浒苔检测结果是否正常的监控指令,在所述浒苔检测结果存在误判或漏判时,提示用户对所述浒苔检测结果进行人工交互处理。
[0032] 第二方面,本发明实施例还提供了一种浒苔检测装置,其特征在于,包括:
[0033] 模型设计单元,用于采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;所述预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层;
[0034] 迭代训练单元,用于对所述模型设计单元设计得到的所述预设卷积神经网络模型进行多次迭代训练,并在所述预设卷积神经网络模型的精度达到预设阈值时确定为实际应用的卷积神经网络模型;
[0035] 检测单元,用于根据所述迭代训练单元确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果。
[0036] 结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述迭代训练单元包括:
[0037] 第一计算子单元,用于计算所述预设卷积神经网络模型中每一层的神经元的值xl=f(ul),ul=Wlxl-1+bl,直至得到最后一层的神经元的值;其中,x代表神经元的值,l代表预设卷积神经网络模型中的层数,f代表激活函数,u代表当前层的一个神经元的输入;W代表权重,l-1代表当前层的上一层,b代表偏置;
[0038] 第二计算子单元,用于根据所述第一计算子单元计算得到的最后一层的神经元的值与最后一层的标签,计算所述预设卷积神经网络模型的误差其中,E表示误差,c代表两类,k表示每一类的序号,n代表序号的总数;
[0039] 确定子单元,用于在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型。
[0040] 本发明实施例提供的浒苔检测方法和装置,包括:首先采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;然后不断对上述模型进行多次迭代训练,并在其精度达到预设阈值时确定为实际应用的卷积神经网络模型;最后根据确定的卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出绿潮信息是否为浒苔的检测结果,与现有技术中的浒苔检测方法存在样本特征和阈值设定不准确,人工工作量大等缺陷相比,其采用卷积神经网络的方式对大量的数据进行自动计算得到超高维特征,降低了人员参与度,使得计算的样本特征和对应的阈值的可靠性较高,具有较高的鲁棒性,并且还解决了环境、卫星本身等多因素的影响问题,同时也大幅降低了工作量,提升了识别效果。
[0041] 为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

[0042] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0043] 图1示出了本发明实施例所提供的一种浒苔检测方法的流程图;
[0044] 图2示出了本发明实施例所提供的另一种浒苔检测方法的流程图;
[0045] 图3示出了本发明实施例所提供的另一种浒苔检测方法的流程图;
[0046] 图4示出了本发明实施例所提供的另一种浒苔检测方法的流程图;
[0047] 图5示出了本发明实施例所提供的一种浒苔检测装置的结构示意图;
[0048] 图6示出了本发明实施例所提供的一种浒苔检测装置中迭代训练单元的结构示意图;
[0049] 图7示出了本发明实施例所提供的一种浒苔检测装置中确定子单元的结构示意图;
[0050] 图8示出了本发明实施例所提供的一种浒苔检测装置中检测单元的结构示意图;
[0051] 图9示出了本发明实施例所提供的另一种浒苔检测装置的结构示意图。

具体实施方式

[0052] 下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0053] 绿潮是海洋大型藻爆发性生长聚集形成的藻华现象去,其可导致海洋灾害,当海流将大量绿潮藻类卷到海岸时,绿潮藻体腐败产生有害气体,破坏海岸景观,对潮间带生态系统也可能导致损害。自2008至2012年,中国黄海海域连续5年在夏季发生绿潮灾害。故为了追溯的绿潮的发生过程,并对绿潮达到预防、治理进而达到合理利用绿潮的目的,对引发绿潮的浒苔类藻类进行检测是目前亟待解决的问题。
[0054] 针对现有技术中的浒苔检测方法均是人工进行操作,存在样本特征和阈值设定不准确,人工工作量大等缺陷等问题,本发明实施例提供了一种基于卷积神经网络的浒苔检测方法,是针对浒苔检测的传统问题及卷积神经网络技术的应用,主要基于卫星可见光传感器采集的绿潮数据进行自动识别的方法,该方法具有通用性,还可用于光学卫星影像数据采集的其他领域的数据并进行识别。
[0055] 下面首先对卷积神经网络技术进行简要说明:
[0056] 机器学习技术在各行各业得到广泛应用,用来识别图片中的目标。机器学习最主要的形式是监督学习,需要我们事先收集样本数据,并标定样本数据的类别。具体的,深度学习就是一种特征学习方法,把原始数据通过多层次、非线性的模型转变成为更高层次的,更加抽象的表达。对于目标识别,高层次的表达能够提升数据的区分能力方面,同时削弱不相关因素。比如,遥感图像的原始格式是像素灰度值,底层的特征表达通常指的是在图像的特定位置和方向上有没有边的存在。第二层检测这些边缘的主要成分构成图斑,忽略掉部分边上的小的干扰。第三层把那些图斑进行组合,从而使其对应于熟悉目标的某部分。随后的一些层会将这些部分再组合,从而构成待检测目标。深度学习的核心思想是,各层的特征都不需要专家设计,而是使用自动学习的方式,从数据中提取。深度学习正在取得重大进展,解决了部分的很多年仍没有进展的问题。已经证明,深度学习能够擅长在复杂结构的数据中提取特征,因此它能够被应用于科学、商业等领域,因此,该方式较传统的方法会涵盖更全面的数据,阈值设定更准确。
[0057] 随着计算机GPU(Graphics Processing Unit,图形处理器)的发展,深度学习快速发展,在应用领域得到广泛应用,并且理论研究也开始起步。在深学习系统中,有可能有数以百万计的权值,为了正确地调整权值向量,学习算法计算每个权值的梯度向量,表示了如果误差减少一定量,需要权重调整的幅度,权值向量在梯度矢量的相反方向上进行调整。目标函数,可以看作是一种在权值空间上的地形。负的梯度矢量表示在该地形中下降方向最快,使其更接近于局部最小值,也就是平均输出误差低局部最低的地方。
[0058] 卷积神经网络作为深度学习在图像识别应用中的主流手段,其效果得到广泛的验证,并且随着研究的深入,模型的不断改进,精度得到很大提升。典型的卷积神经网络是由一系列过程组成的。前几层是由卷积层和池化层组成,卷积层的单元被应用在特征图中;在上层特征图中,每个单元通过一个共享滤波器,连接到下层的特征图的一个局部块,进行局部加权求和,然后传给一个非线性函数,比如ReLU(rectified linear units,激活函数)。在一个特征图中的全部单元共用一个过滤器,不同层的特征图使用不同的过滤器。共享滤波器是卷积神经网络区别于其他深度网络的主要特征之一,使用这种结构具有三方面的优势:首先,在图像数据中,一个像素附近的值经常是相关的,可以形成比较容易被探测到的有区分性的局部特征。其次,不同位置局部统计特征不太相关的,也就是说,在一个地方出现的某个特征,也可能出现在别的地方,所以不同位置的单元可以共享权值以及可以探测相同的样本。最后,该方式大幅的降低了权值数量,使得更深层的网络实现具有可能性。在数学上,这种由图像执行的过滤操作是一个离线的卷积,故该类型网络称为卷积神经网络。
[0059] 本发明提供的浒苔检测方法正是应用了上述卷积神经网络技术,参见图1所示的本发明实施例所提供的一种浒苔检测方法的流程图,该方法包括以下步骤:
[0060] S101,采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;所述预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层。
[0061] 在本发明实施例中,利用上述深度学习的方法通过多次尝试建立预设卷积神经网络模型,该模型包括:1个输入数据层、1个标签层、4个卷积层、4个池化层、3个全连接层和1个softmax层;其中,上述输入数据层为第一层,按照上述顺序,softmax层为最后一层。
[0062] 具体的,上述输入数据层用于输入选取的样本数据;上述标签层用于对输入的样本进行标识,即在样本数据上设置一个对应的标签,本发明实施例中的标签为:有浒苔和无浒苔;上述卷积层用于,通过不同核与数据进行卷积运算,得到下一层数据,其能够大幅降低权重数量;上述池化层用于实现降采样(即降低分辨率),并保证上述样本数据的数据值有效;上述全连接层是两层神经元间全连接;上述Softmax层用于进行逻辑判断,用以识别是否有浒苔。
[0063] 具体的,对模型进行多次迭代训练的优化方法采用随机梯度下降的方式;优选的,学习速率采用0.001,梯度退化设定0.005。
[0064] 本实施例中,卷积层是上述模型的深度学习的核心,通过设计一个卷积核,实现局部相关(即根据视场野理论,某像素点只跟周围像素有关,使用卷积核与该理论相符)与共享权重(卷积层权重数量只与卷积核有关,与神经元个数无关,即采用共享权重),大幅的降低了模型的复杂度,并提升了识别效果。
[0065] 在本发明实施例中采用的高斯核与平均核混合使用(即形成上述卷积核),经过试验验证该卷积核使用方式效果较好。池化层,进行2*2下采样,取最大值方式;全连接层进行降维处理;Softmax层输出采用两类输出方式。
[0066] S102,对得到的所述预设卷积神经网络模型进行多次迭代训练,并在所述预设卷积神经网络模型的精度达到预设阈值时确定为实际应用的卷积神经网络模型;
[0067] 本发明实施例中,通过不断的计算训练样本,优选设定迭代次数20w次,或者控制预设卷积神经网络模型的精度达到97%,误差达到0.05截止。
[0068] S103,根据确定的所述卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出所述绿潮信息是否为浒苔的检测结果。
[0069] 在上述识别过程中,首先先获取待检测区域的绿潮信息,然后将该绿潮信息导入到上述建立的卷积神经网络模型中,由卷积神经网络模型对接收的绿潮信息进行前馈计算,获取绿潮信息对应的类别,该类别对应待检测区域的绿潮信息是否为浒苔。
[0070] 本发明实施例提供的浒苔检测方法和装置,与现有技术中的浒苔检测方法存在样本特征和阈值设定不准确,人工工作量大等缺陷相比,其采用卷积神经网络的方式对大量的数据进行自动计算得到超高维特征,降低了人员参与度,使得计算的样本特征和对应的阈值的可靠性较高,具有较高的鲁棒性,并且还解决了环境、卫星本身等多因素的影响问题,同时也大幅降低了工作量,提升了识别效果。
[0071] 上述步骤101中采用深度学习的方法建立的预设卷积神经网络模型是根据选取的大量的样本数据初步建立得到的,其存在一定的误差,故为了提高该模型的识别精度或者说为了将该模型的误差控制在一定范围内,需要对上述模型不断进行训练(即对该模型中的特征值阈值进行不断训练),以得到精度较高的卷积神经网络模型。参考图2,上述步骤102中对上述预设卷积神经网络模型的训练方法具体如下:
[0072] 首先,计算所述预设卷积神经网络模型中每一层的神经元的值xl=f(ul),ul=Wlxl-1+bl,直至得到最后一层的神经元的值;其中,x代表神经元的值,l代表预设卷积神经网络模型中的层数,f代表激活函数,u代表当前层的一个神经元的输入;W代表权重,l-1代表当前层的上一层,b代表偏置;
[0073] 具体的,第l-1层的值X(l-1)乘以权重加上偏置,作为l层的输入,l层根据输入及激活函数计算出当前层的数值,按照该计算方式直至计算到最后一层,即softmax层;其中,权重和偏置的初始值是训练得到,是固定值;
[0074] 然后,根据所述最后一层(即softmax层)的神经元的值与最后一层的标签,计算所述预设卷积神经网络模型的误差 其中,E表示误差,c代表两类,k表示每一类的序号,n代表序号的总数;
[0075] 最后,在所述预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型。
[0076] 其中,上述得到卷积神经网络模型的过程就是训练优化,使误差不断减小的过程,具体包括;
[0077] 首先采用梯度下降法对所述预设卷积神经网络模型中的权重系数进行优化其中,W表示权重,t代表优化的当前次数, 代表误差倒数,η表示学习速率;
[0078] 上述过程即是根据误差总和E进行反向修正,通过误差对权重的取偏导,并结合当前的权重值和对应的学习速率η,计算下一次权重值;本发明实施例中,学习速率η是预先设定的常数,其初始值优选设置为0.01,迭代10000次后设置为0.001。
[0079] 然后,将优化结果在最优点时对应权重值进行保存,并作为上述预设卷积神经网络模型的权重系数,得到实际应用的卷积神经网络模型。
[0080] 本发明实施例中采用多个步长方式对上述权重值进行优化,以便较快的学习到最优点,其中,优化步骤的前期步长可以设置较长,便于较快到达最优点附近,后期(即在最优点附近)步长较短,用以降低震荡风险。在确定了最优点对应的权重值后,将该权重值进行保存,作为整个网络模型的系数,以建立卷积神经网络模型(即生成识别模型),便于在识别中使用。
[0081] 考虑到相关技术中的识别过程是人工进行的,存在人工工作量大且效率低的问题,本发明实施例提供了一种利用训练好的上述卷积神经网络模型自动对采集的绿潮信息进行识别,如图2所示,具体识别方法如下:
[0082] S201,设定确定的所述卷积神经网络模型的识别步长;
[0083] S202,在采集的绿潮信息中获取每一个识别步长对应的图像数据;
[0084] S203,对每一个所述图像数据进行前馈计算,输出所有图像数据对应的绿潮信息是否为浒苔的检测结果。
[0085] 本实施例中,如图3所示,上述步骤102的模型设计之前,还需要进行样本采集的准备,具体包括如下步骤:
[0086] S104,利用植被指数计算方法,提取含有浒苔的图像数据和不含有浒苔的图像数据作为样本数据;
[0087] 本发明实施例中,由于对绿潮卫星遥感信息提取可利用陆地上对植物生长状况进行评估的植被指数方法,本发明实施例中同样采用开展光学卫星数据绿潮信息提取,即通过光学卫星传感器采集带采集区别的影像信息,该影像信息包括绿潮信息。
[0088] 然后将提取的上述数据进行整理,得到准备好的数据:20景包含浒苔的影像,30景不包括浒苔的影像。接着,首先设定数据块大小为64*64;通过抠图工具,扣取包含浒苔的海面数据(正样本)8000张,不包含浒苔的区域(负样本)3w张,数据包括四个波段。
[0089] 具体的,基于遥感数据的绿潮信息提取方法类似于对陆地草场生长状况进行评估的植被指数法,关键是要通过海上绿潮的光谱、反射率、叶绿素、海水温度等参数的测量分析,获取适宜于绿潮信息提取的卫星遥感波段。根据不同的监测海区和绿潮发生的不同阶段,应用不同的阈值,再辅以海温这一重要的绿潮生长环境因素,提取绿潮信息。
[0090] 光学卫星数据绿潮信息提取均需进行识别量的阈值选取。光学卫星数据绿潮信息提取阈值包括单波段反射率阈值和NDVI阈值(NDVI,植被覆盖指数。应用于检测植被生长状态、植被覆盖度和消除部分辐射误差等)不同的成像条件和海洋环境,阈值在一个范围内变化,因此要综合不同成像条件和海洋环境,针对不同卫星数据源,建立动态阈值数据库,确定动态阈值选取标准。
[0091] S105,对提取的所述样本数据进行预处理,所述预处理至少包括以下处理方法中的一种或多种:添加噪声、增强样本数据和增加训练数据量。
[0092] 具体的,上述添加噪声的方法即对准备的样本数据添加不同的噪声,不同程度的噪声等,用于增加样本的数量;增强样本数据的方法中,增强方式很多,如直方图拉伸,旋转、变形等,同样用于增加样本的数量。需要说明的是,上述预处理不仅仅是为了增加样本的数量,通过添加噪声及增强样本数据还可以模拟成像的不同效果,提升识别精度。
[0093] 其中,通过预处理的方式使得正样本数量达到4w张,负样本12w张,其中3.2w正样本、10w张负样本用来训练;剩下的8000张正样本、2w张负样本用来测试。
[0094] 其中,在进行上述步骤103的识别过程之前,需要采集待检测区域的绿潮信息,同样是光学卫星传感器采集带采集区别的影像信息,该影像信息包括绿潮信息,然后根据采集的绿潮信息进行如下步骤的处理,参考图4:
[0095] S301、导入卫星采集的遥感影像,提取所述遥感影像中预设波段的绿潮信息对应的图像数据;
[0096] S302、按照预设的数据块大小对提取的所述图像数据进行裁剪处理,得到预设数据块大小的图像数据。
[0097] 本发明实施例中的预设的数据块大小可以根据需要进行设置,如设置成64*64;并且,除了上述裁剪处理还可以包括其他处理,如模数转换处理等,目的均是用于提升图像数据的图像质量。
[0098] 另外,在步骤103的识别过程之后,本发明实施例提供的浒苔检测方法还包括:在完成每一个所述遥感影像的识别后,根据识别结果生成离散点标注;对离散点标注进行矢量化处理;所述矢量化处理包括以下处理方法中的一种或多种:位置获取、面积计算和专题制图。
[0099] 其中,上述过程中的矢量化的目的是后期的位置获取、面积计算、专题制图等用途。
[0100] 并且,在人机交互界面提供对浒苔检测结果的监控:接收用户发送的检测浒苔检测结果是否正常的监控指令,在所述浒苔检测结果存在误判或漏判时,提示用户对所述浒苔检测结果进行人工交互处理。
[0101] 具体的,本步骤的目的是用户可以检测上述自动化识别是否正确,并在检测到存在小部分误判、漏判等情况下,人工可参与对上述误判、漏判情况进行人工交互修订,以提升识别结果的准确度。
[0102] 下面,结合整体对本发明提供的一种浒苔检测方法进行说明:
[0103] 本发明实施例中的待检测区域中的绿潮信息为高分一二号可见光数据青岛近海区域的绿潮信息,并对该区域的绿潮信息进行检测识别,其中,高分一二号可见光数据即通过高分一号二号光学传感器(多光谱数据)采集的数据,上述传感器包含4个波段固定且相同。
[0104] 本发明实施例的主要目标是利用适应面更宽的中高分辨率光学卫星遥感数据针对近海浒苔检测问题,开发高效、精确的检测方法,采用卷积神经网络的深度学习方式,提升检测效果。
[0105] 本发明实施例提供的浒苔检测方法主要包括两阶段流程:训练流程和识别流程。
[0106] 训练流程中,需要进行数据准备,人工标定大量的高分遥感样本数据,标定青岛近海附近有浒苔和没有浒苔两类数据。对标定的数据进行预处理,提升数据质量及数据样例覆盖。设计模型,构建卷积神经网络模型,将标定的样本放到模型中训练,通过GPU的高效计算,不断迭代,直至计算误差满足要求,如果识别率不高,则调整模型。最终生成导出识别模型。
[0107] 识别流程,应用阶段为识别流程,新采集的遥感卫星数据通过模型计算识别出是否是浒苔。首先,导入模型,对识别网络进行初始化,即将训练得到的权重赋给识别网络,然后将待识别数据加载到识别网络中进行前馈计算,输出与计算结果对应的是否为浒苔的结果。
[0108] 本发明与现有技术相比的优点在于:
[0109] 1、采用现有技术,通过专家设定特征,受限特征表述能力及专家知识。因为卫星成像色调偏差、环境变化、天气因素等影响,人工设计的特征无法表述所有情况。而采用卷积神经网络的方式,可以通过大量的数据自动计算出超高维特征,解决多因素影响问题。
[0110] 2、由于卫星数据成像效果差异较大,特征阈值设定精确度有可能降低识别效果,另外同一景影像中不同区域可能存在天气差异及浒苔分布密度不同,造成同一阈值不能满足整景影像提取精度要求。采用本发明的技术,可以在不降识别效果的情况下,提高识别的效率。由于海洋遥感数据处理量巨大,多为海量数据,现有技术需要大量的人工交互,进行识别提取。采用本发明提升自动化率,其中计算提取部分实现自动化,需要人工交互进行部分误报剔除及漏报添加,大幅降低工作量,提升了识别效果。
[0111] 3、采用传统方案,在识别提取阶段需要人工交互,调整提取阈值,依赖工作人员主观设定,如果阈值设置不当,有可能会出现大量的误报或漏报,另外同一景影像中不同区域可能存在天气差异及浒苔分布密度不同,造成同一阈值不能满足整景影像提取精度要求;而采用本发明的方案,降低人员参与度,具有较高的鲁棒性;上述鲁棒性是指在不降低精度的条件下满足不成像效果的数据。
[0112] 本发明实施例还提供了一种浒苔检测装置,所述装置用于执行上述浒苔检测方法,参考图5,装置具体包括:
[0113] 模型设计单元11,用于采用深度学习方法对选取的样本数据进行模型设计,得到预设卷积神经网络模型;预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层对选取的样本数据进行模型设计,得到预设卷积神经网络模型;预设卷积神经网络模型包括:输入数据层、标签层、卷积层、池化层、全连接层和softmax层;
[0114] 迭代训练单元12,用于对模型设计单元11设计得到的预设卷积神经网络模型进行多次迭代训练,并在预设卷积神经网络模型的精度预设阈值时确定为实际应用的卷积神经网络模型;
[0115] 检测单元13,用于根据迭代训练单元12确定的卷积神经网络模型对采集的待检测区域的绿潮信息进行检测,输出绿潮信息是否为浒苔的检测结果根据确定单元确定的卷积神经网络模型对采集的待检测对象的卫星遥感数据进行检测,并根据检测结果判断待检测对象是否为浒苔。
[0116] 上述模型设计单元11采用深度学习的方法建立的预设卷积神经网络模型是根据选取的大量的样本数据初步建立得到的,其存在一定的误差,故为了提高该模型的识别精度或者说为了将该模型的误差控制在一定范围内,需要对上述模型不断进行训练(即对该模型中的特征值阈值进行不断训练),以得到精度较高的卷积神经网络模型。参考图6,本发明实施例提供的浒苔检测装置中,迭代训练单元12包括:
[0117] 第一计算子单元121,用于计算所述预设卷积神经网络模型中每一层的神经元的值xl=f(ul),ul=Wlxl-1+bl,直至得到最后一层的神经元的值;其中,x代表神经元的值,l代表预设卷积神经网络模型中的层数,f代表激活函数,u代表当前层的一个神经元的输入;W代表权重,l-1代表当前层的上一层,b代表偏置;
[0118] 第二计算子单元122,用于根据所述第一计算子单元121计算得到的最后一层的神经元的值与最后一层的标签,计算所述预设卷积神经网络模型的误差其中,E表示误差,c代表两类,k表示每一类的序号,n代表序号的总数;
[0119] 确定子单元123,用于在第二计算子单元122计算的预设卷积神经网络模型的误差符合预设误差阈值时,确定对应的预设卷积神经网络模型为实际应用的卷积神经网络模型。
[0120] 进一步的,浒苔检测装置中,参考图7,确定子单元123包括:
[0121] 权重系数优化处理模块1231,用于采用梯度下降法对预设卷积神经网络模型中的权重系数进行优化 其中,W表示权重,t代表优化的当前次数, 代表误差倒数,η表示学习速率;
[0122] 权重值保存模块1232,用于将优化结果在最优点时对应权重值进行保存并作为预设卷积神经网络模型的权重系数,得到实际应用的卷积神经网络模型。
[0123] 进一步的,参考图8,上述浒苔检测装置中,检测单元13包括:
[0124] 设定子单元131,用于设定确定的卷积神经网络模型的识别步长;
[0125] 获取子单元132,用于在采集的绿潮信息中获取每一个识别步长对应的图像数据;
[0126] 前馈计算子单元133,用于对每一个图像数据进行前馈计算,输出所有图像数据对应的绿潮信息是否为浒苔的检测结果。
[0127] 进一步的,参考图9,上述浒苔检测装置还包括:
[0128] 提取单元14,用于利用植被指数计算方法,提取含有浒苔的图像数据和不含有浒苔的图像数据作为样本数据;
[0129] 预处理单元15,用于对提取的样本数据进行预处理,预处理至少包括以下处理方法中的一种或多种:添加噪声、增强样本数据和增加训练数据量。
[0130] 进一步的,参考图9,上述浒苔检测装置还包括:
[0131] 导入提取单元16,用于导入卫星采集的遥感影像,提取遥感影像中预设波段的绿潮信息对应的图像数据;
[0132] 裁剪处理单元17,用于按照预设的数据块大小对提取的图像数据进行裁剪处理,得到预设数据块大小的图像数据。
[0133] 进一步的,参考图9,上述浒苔检测装置还包括:
[0134] 离散点标注单元18,用于在完成每一个遥感影像的识别后,根据识别结果生成离散点标注;
[0135] 矢量化处理单元19,用于对离散点标注进行矢量化处理;矢量化处理包括以下处理方法中的一种或多种:位置获取、面积计算和专题制图。
[0136] 进一步的,参考图9,上述浒苔检测装置还包括:人机交互界面20,用于提供对浒苔检测结果的监控;上述人机交互界面20包括:
[0137] 接收子单元201,用于接收用户发送的检测浒苔检测结果是否正常的监控指令;
[0138] 提示子单元202,用于在浒苔检测结果存在误判或漏判时,提示用户对浒苔检测结果进行人工交互处理。
[0139] 本发明实施例提供的浒苔检测装置,与现有技术中的浒苔检测方法存在样本特征和阈值设定不准确,人工工作量大等缺陷相比,其采用卷积神经网络的方式对大量的数据进行自动计算得到超高维特征,降低了人员参与度,使得计算的样本特征和对应的阈值的可靠性较高,具有较高的鲁棒性,并且还解决了环境、卫星本身等多因素的影响问题,同时也大幅降低了工作量,提升了识别效果。
[0140] 本发明实施例所提供的进行浒苔检测方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
[0141] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0142] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0143] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0144] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0145] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0146] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。