基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法及设备
技术领域
1.本发明涉及深度学习技术领域,尤其涉及一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法、装置、设备及介质。
背景技术:2.随着风电行业的飞速发展,风力发电在我国能源结构中的地位越来越高。由于长时间运行许多机组已经超出质保期,风电机组的检修维护正在成为制约风电产业飞速发展的瓶颈。据统计,风机的检修维护费用约占风力发电总成本的1/5。风电机组大多工作在恶劣复杂的环境下长期运行,受风况多变的影响叶片负载不断快速切变,叶片表面容易产生砂眼、裂纹、剥皮等缺陷。风机叶片是将风能转化为电能的重要零件,也是机组的易损部件,叶片缺陷会对风机的安全运行和发电效率造成严重影响。
3.随着智能设备和图像技术的不断发展,最近有研究基于无人机进行叶片图像缺陷识别。无人机配备高清摄像机可以进行航迹规划自动巡检,准确清晰捕捉风机叶片的表面,并将拍摄到的高清图像或视频进行无线传输;然后通过深度学习算法对叶片图像进行智能识别,自动识别叶片缺陷并进行精准定位。然而,由于叶片图像缺陷识别方法主要通过深度学习算法实现,而深度学习模型通常需要大量图片样本进行模型训练,由于无人机技术在叶片巡检领域的发展才刚刚起步,虽然拍摄的正常叶片图像数据量充足,但是叶片缺陷图像极度缺失。大量风机叶片图像缺陷识别的研究中提到,由于训练集中缺陷样本数量非常有限,导致模型的泛化能力不足,使模型出现缺陷漏报、误报的现象。
技术实现要素:4.本发明提供一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法及设备,旨在将大量风机叶片的正常图像转换成大量的叶片缺陷图像,从而给叶片图像缺陷识别模型提供充足的缺陷图像数据,提升识别模型的缺陷识别效果。
5.为此,本发明的目的在于提出一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法,包括:
6.构建风机叶片缺陷图像生成及缺陷识别网络,风机叶片缺陷图像生成及缺陷识别网络包括风机叶片缺陷图像生成网络和风机叶片缺陷图像识别网络;
7.获取风机叶片图像数据集,划分风机叶片正常图像和风机叶片缺陷图像,并对风机叶片缺陷图像的缺陷类型和缺陷位置进行标记;通过标记后的风机叶片图像数据集对风机叶片缺陷图像生成网络进行训练;基于训练完成的风机叶片缺陷图像生成网络生成的风机叶片缺陷图像,训练风机叶片缺陷图像识别网络;
8.将实时拍摄的风机叶片缺陷图像输入训练完成的风机叶片缺陷图像识别网络,输出结果即为对拍摄的风机叶片缺陷图像的缺陷识别结果。
9.其中,将风机叶片图像数据集划分为风机叶片正常图像数据集和n个类型的风机
叶片缺陷图像数据集;n为缺陷类型,至少包括胶衣脱落、油漆脱落、开裂、表面裂纹、腐蚀、油污、砂眼及结冰。
10.其中,风机叶片缺陷图像生成网络使用cyclegan模型结构,风机叶片缺陷图像生成网络设计与缺陷类型数量相同的风机叶片缺陷图像生成子网络,每一风机叶片缺陷图像生成子网络包括2个生成器g、f和2个判别器d
x
、dy;每一风机叶片缺陷图像生成子网络的输入为一张风机叶片正常图像x和一张具有缺陷类型中的一种缺陷的风机叶片缺陷图像y,生成器g通过输入风机叶片正常图像x,生成一张与风机叶片缺陷图像y的缺陷类型相同的风机叶片缺陷图像x’;生成器f通过输入风机叶片缺陷图像y,生成一张风机叶片正常图像y’;d
x
用于区分真实风机叶片正常图像x和生成的风机叶片正常图像y’,dy用于真实区分风机叶片缺陷图像y和生成的风机叶片缺陷图像x’。
11.其中,每一风机叶片缺陷图像生成子网络用于生成一种指定类型的风机叶片缺陷;通过将指定类型的风机叶片缺陷图像和风机叶片正常图像,输入对应的风机叶片缺陷图像生成子网络进行训练,利用adam优化器对风机叶片缺陷图像生成子网络模型参数进行更新。
12.其中,利用adam优化器对风机叶片缺陷图像生成子网络模型参数进行更新的步骤中,包括:
13.设定第一损失函数,结合输入的风机叶片正常图像x和具有缺陷类型中的一种缺陷的风机叶片缺陷图像y,训练生成器g和生成器f;第一损失函数公式表示为:
[0014][0015]
其中,loss
gan
表示使生成器g生成的风机叶片缺陷图像尽可能被判别器dy判定为真实风机叶片缺陷图像;使生成器f生成的风机叶片正常图像尽可能被判别器d
x
判定为真实风机叶片正常图像;表示为:
[0016][0017]
loss
cycle
表示将生成的风机叶片缺陷图像输入生成器f使其能够尽可能恢复原图,将生成的风机叶片正常图像输入生成器g使其能够尽可能恢复原图;表示为:
[0018][0019]
loss
identity
′
表示保证生成器g、f生成的图像与输入的图像在内容上基本保持一致,仅实现正常和缺陷图像的转换;表示为:
[0020][0021]
设定第二损失函数,通过输入真实风机叶片正常图像x和生成的风机叶片正常图像y'训练判别器d
x
,其目的是区分真实和生成的风机叶片正常图像;表示为:
[0022][0023]
设定第三损失函数,通过输入真实风机叶片缺陷图像y和生成的风机叶片缺陷图像x’训练判别器dy,其目的是区分真实和生成的风机叶片缺陷图像;表示为:
[0024]
[0025]
通过迭代训练,当达到迭代次数时,停止迭代训练,输出生成器g、f和判别器d
x
、dy。
[0026]
其中,将风机叶片正常图像数据集输入训练完成的每一风机叶片缺陷图像生成子网络,生成对应缺陷类型的风机叶片缺陷图像数据集,作为风机叶片缺陷图像识别网络的训练数据。
[0027]
其中,风机叶片缺陷图像识别网络为yolo网络模型,通过风机叶片图像数据集中的风机叶片缺陷图像和通过风机叶片缺陷图像生成网络生成的风机叶片缺陷图像训练风机叶片缺陷图像识别网络;训练完成后,将实时获取的风机叶片缺陷图像输入训练完成的风机叶片缺陷图像识别网络中,输出结果为对实时获取的风机叶片缺陷图像的缺陷类型识别结果。
[0028]
此外,本发明的目的还在于提出一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别装置,包括:
[0029]
模型构建模块,用于构建风机叶片缺陷图像生成及缺陷识别网络,风机叶片缺陷图像生成及缺陷识别网络包括风机叶片缺陷图像生成网络和风机叶片缺陷图像识别网络;
[0030]
模型训练模块,用于获取风机叶片图像数据集,划分风机叶片正常图像和风机叶片缺陷图像,并对风机叶片缺陷图像的缺陷类型和缺陷位置进行标记;通过标记后的风机叶片图像数据集对风机叶片缺陷图像生成网络进行训练;基于训练完成的风机叶片缺陷图像生成网络生成的风机叶片缺陷图像,训练风机叶片缺陷图像识别网络;
[0031]
缺陷识别模块,用于将实时拍摄的风机叶片缺陷图像输入训练完成的风机叶片缺陷图像识别网络,输出结果即为对拍摄的风机叶片缺陷图像的缺陷识别结果。
[0032]
本发明的目的还在于提出一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现如前述技术方案任一的方法。
[0033]
本发明的目的还在于提出一种非临时性计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如前述技术方案的方法。
[0034]
区别于现有技术,本发明提供的基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法,针对风机叶片不同的缺陷类型,基于cyclegan生成多个缺陷图像生成模型;利用cyclegan模型,能够将正常的风机叶片图像生成不同类型的缺陷图像,解决风机叶片缺陷图像稀少的问题;利用原始的缺陷图像和生成的大量不同类型的风机叶片缺陷图像,基于yolo训练一个风机叶片图像缺陷识别模型,解决风机叶片图像缺陷识别准确率不高的问题。通过本发明,能够将大量风机叶片的正常图像转换成大量的叶片缺陷图像,从而给叶片图像缺陷识别模型提供充足的缺陷图像数据,提升识别模型的缺陷识别效果。
附图说明
[0035]
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0036]
图1是本发明提供的一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法的流程示意图。
[0037]
图2是本发明提供的一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法中风机叶片缺陷图像生成网络的逻辑示意图。
[0038]
图3是本发明提供的一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别装置的结构示意图。
[0039]
图4是本发明提供的一种非临时性计算机可读存储介质的结构示意图。
具体实施方式
[0040]
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0041]
下面参考附图描述本发明实施例的一种基于单应性和重建网络的风机叶片图像拼接方法。
[0042]
图1为本发明实施例所提供的一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别方法的流程示意图。该方法包括以下步骤:
[0043]
步骤101,构建风机叶片缺陷图像生成及缺陷识别网络,风机叶片缺陷图像生成及缺陷识别网络包括风机叶片缺陷图像生成网络和风机叶片缺陷图像识别网络。
[0044]
风机叶片缺陷图像生成网络使用cyclegan模型结构,风机叶片缺陷图像生成网络设计与缺陷类型数量相同的风机叶片缺陷图像生成子网络,每一风机叶片缺陷图像生成子网络包括2个生成器g、f和2个判别器d
x
、dy;每一风机叶片缺陷图像生成子网络的输入为一张风机叶片正常图像x和一张具有缺陷类型中的一种缺陷的风机叶片缺陷图像y,生成器g通过输入风机叶片正常图像x,生成一张与风机叶片缺陷图像y的缺陷类型相同的风机叶片缺陷图像x’;生成器f通过输入风机叶片缺陷图像y,生成一张风机叶片正常图像y’;d
x
用于区分真实风机叶片正常图像x和生成的风机叶片正常图像y’,dy用于真实区分风机叶片缺陷图像y和生成的风机叶片缺陷图像x’。
[0045]
本发明中,风机叶片缺陷图像识别网络为yolo网络模型。
[0046]
步骤102:获取风机叶片图像数据集,划分风机叶片正常图像和风机叶片缺陷图像,并对风机叶片缺陷图像的缺陷类型和缺陷位置进行标记;通过标记后的风机叶片图像数据集对风机叶片缺陷图像生成网络进行训练;基于训练完成的风机叶片缺陷图像生成网络生成的风机叶片缺陷图像,训练风机叶片缺陷图像识别网络。
[0047]
将风机叶片图像数据集划分为风机叶片正常图像数据集和n个类型的风机叶片缺陷图像数据集;n为缺陷类型,至少包括胶衣脱落、油漆脱落、开裂、表面裂纹、腐蚀、油污、砂眼及结冰。
[0048]
每一风机叶片缺陷图像生成子网络用于生成一种指定类型的风机叶片缺陷;通过将指定类型的风机叶片缺陷图像和风机叶片正常图像,输入对应的风机叶片缺陷图像生成子网络进行训练,利用adam优化器对风机叶片缺陷图像生成子网络模型参数进行更新。
[0049]
其中,利用adam优化器对风机叶片缺陷图像生成子网络模型参数进行更新的步骤中,包括:
[0050]
设定第一损失函数,结合输入的风机叶片正常图像x和具有缺陷类型中的一种缺陷的风机叶片缺陷图像y,训练生成器g和生成器f;第一损失函数公式表示为:
[0051]
[0052]
其中,loss
gan
表示使生成器g生成的风机叶片缺陷图像尽可能被判别器dy判定为真实风机叶片缺陷图像;使生成器f生成的风机叶片正常图像尽可能被判别器d
x
判定为真实风机叶片正常图像;表示为:
[0053][0054]
loss
cycle
表示将生成的风机叶片缺陷图像输入生成器f使其能够尽可能恢复原图,将生成的风机叶片正常图像输入生成器g使其能够尽可能恢复原图;表示为:
[0055][0056]
loss
identity
′
表示保证生成器g、f生成的图像与输入的图像在内容上基本保持一致,仅实现正常和缺陷图像的转换;表示为:
[0057][0058]
设定第二损失函数,通过输入真实风机叶片正常图像x和生成的风机叶片正常图像y'训练判别器d
x
,其目的是区分真实和生成的风机叶片正常图像;表示为:
[0059][0060]
设定第三损失函数,通过输入真实风机叶片缺陷图像y和生成的风机叶片缺陷图像x’训练判别器dy,其目的是区分真实和生成的风机叶片缺陷图像;表示为:
[0061][0062]
通过迭代训练,当达到迭代次数时,停止迭代训练,输出生成器g、f和判别器d
x
、dy。
[0063]
将风机叶片正常图像数据集输入训练完成的每一风机叶片缺陷图像生成子网络,生成对应缺陷类型的风机叶片缺陷图像数据集,作为风机叶片缺陷图像识别网络的训练数据。
[0064]
风机叶片缺陷图像识别网络为yolo网络模型,通过风机叶片图像数据集中的风机叶片缺陷图像和通过风机叶片缺陷图像生成网络生成的风机叶片缺陷图像训练风机叶片缺陷图像识别网络。
[0065]
步骤103:将实时拍摄的风机叶片缺陷图像输入训练完成的风机叶片缺陷图像识别网络,输出结果即为对拍摄的风机叶片缺陷图像的缺陷识别结果。
[0066]
训练完成后,将实时获取的风机叶片缺陷图像输入训练完成的风机叶片缺陷图像识别网络中,输出结果为对实时获取的风机叶片缺陷图像的缺陷类型识别结果。
[0067]
如图3所示,本发明的目的还在于提出一种基于cyclegan的风机叶片缺陷图像生成及缺陷识别装置,包括:
[0068]
模型构建模块310,用于构建风机叶片缺陷图像生成及缺陷识别网络,风机叶片缺陷图像生成及缺陷识别网络包括风机叶片缺陷图像生成网络和风机叶片缺陷图像识别网络;
[0069]
模型训练模块320,用于获取风机叶片图像数据集,划分风机叶片正常图像和风机叶片缺陷图像,并对风机叶片缺陷图像的缺陷类型和缺陷位置进行标记;通过标记后的风机叶片图像数据集对风机叶片缺陷图像生成网络进行训练;基于训练完成的风机叶片缺陷图像生成网络生成的风机叶片缺陷图像,训练风机叶片缺陷图像识别网络;
[0070]
缺陷识别模块330,用于将实时拍摄的风机叶片缺陷图像输入训练完成的风机叶片缺陷图像识别网络,输出结果即为对拍摄的风机叶片缺陷图像的缺陷识别结果。
[0071]
上述装置的实施过程与前述实施方式中的方法的实施方式相似甚至相同,此处不再赘述。
[0072]
为了实现实施例,本发明还提出一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行前述技术方案的风机叶片缺陷图像生成及缺陷识别方法中的各步骤。
[0073]
如图4所示,非临时性计算机可读存储介质包括指令的存储器810,接口830,指令可由根据风机叶片缺陷图像生成及缺陷识别处理器820执行以完成方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0074]
为了实现实施例,本发明还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如本发明实施例的风机叶片缺陷图像生成及缺陷识别方法。
[0075]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0076]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0077]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0078]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部 (电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器
(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0079]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0080]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0081]
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0082]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。