一种基于图像处理算法的深海网箱网衣检测方法转让专利

申请号 : CN202310504538.5

文献号 : CN116228757B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张永波李振张丛马哲常琳王言哲王继业

申请人 : 山东省海洋科学研究院(青岛国家海洋科学研究中心)

摘要 :

本发明公开了一种基于图像处理算法的深海网箱网衣检测方法,涉及计算机图像处理技术和智能识别技术领域,包括:S1:获取传感器采集到的彩色图像;S2:对彩色图像进行预处理;S3:对图像中的网箱网衣目标进行目标检测;S4:提取网箱网衣的边缘信息;S5:对网箱网衣边缘信息进行线段化处理;S6:对网箱网衣线段化信息进行分析处理;S7:网箱网衣缺陷检测结果可视化。本发明通过获取深海网箱网衣的彩色图像,基于图像预处理、目标检测、边缘检测、线段化处理、缺陷检测和结果显示等步骤,能够快速、准确地检测出网衣的整体和局部断裂和缺损情况,旨在预测和预防网衣破损导致的渔业经济损失和损害,提高深海网箱养殖的安全性和效率。

权利要求 :

1.一种基于图像处理算法的深海网箱网衣检测方法,其特征在于,包括以下步骤:S1,获取传感器采集到的深海网箱网衣的彩色图像;

S2,对S1所得的彩色图像进行预处理;

S3,对S2所得图像中的网箱网衣目标进行目标检测;

S4,提取网箱网衣的边缘信息;

S5,对网箱网衣边缘信息进行线段化处理;

S6,对网箱网衣线段化信息进行分析处理;

S7,网箱网衣缺陷检测结果可视化;

所述步骤S7中,网箱网衣缺陷检测结果可视化,进一步包括以下步骤:S71,采用Python的OpenCV库将分析结果与原始图像进行叠加和融合,生成可视化的图像或视频;

S72,根据缺陷类型和位置,选用矩形框、多边形填充、文字标注或颜色映射对缺陷区域进行标注,提高可视化效果;

S73,使用图形界面或动态交互方式,将图像或视频显示在屏幕或设备上,或通过网络或存储介质进行远程访问和共享;

S74,将可视化结果和缺陷信息保存为标准图片格式和标准视频格式;

所述步骤S4中,提取网箱网衣的边缘信息,进一步包括以下步骤:S41,采用高斯滤波去除图像中的噪声信号;

S42,使用Sobel算子和梯度阈值确定图像的边缘位置;

S43,采用非最大抑制算法细化图像边缘位置,保留梯度最大的像素,过滤掉不相邻或低于梯度阈值的像素;

S44,对边缘像素进行高阈值和低阈值处理,边缘像素大于高阈值的被保留,低于低阈值的被过滤,介于两者之间的边缘像素如果与高阈值像素相邻则被保留,不相邻则被过滤;

S441.将通过非最大抑制算法细化之后的边缘像素进行阈值处理,用一个高阈值和一个低阈值来区分不同强度的边缘像素;

S442.对于每个像素,如果其强度值大于高阈值,则将该像素标记为边缘像素,并将其像素值设为1,表示该像素位于深海网箱的网衣位置,如果像素值小于低阈值,则将其标记为非边缘像素,并将其像素值设为0,表示该像素位于深海网箱网衣外;

S443.对于介于高阈值和低阈值之间的边缘像素,如果其与高阈值像素相邻,则将其标记为边缘像素,并将其像素值设为1;相邻的定义是指在8个方向中,至少有一个像素的像素值大于高阈值,如果该像素没有与高阈值像素相邻,则将其标记为非边缘像素,并将其像素值设为0,表示该像素位于深海网箱网衣外;

S444.通过进行阈值处理,可以将深海网箱网衣区域从图像中准确识别出来,并进一步进行分析、定位和控制等操作;

S45,使用曲线拟合方法将保留下的边缘像素连接成一条不间断的曲线,以表示网箱网衣的边缘;

所述步骤S5中,对网箱网衣边缘信息进行线段化处理,进一步包括以下步骤:S51,采用Canny算法实现图像的边缘检测,将网箱网衣边缘提取出来;

S52,使用特征点匹配、拟合或跟踪的方法对边缘检测图像进行边缘连接,形成形状连续、封闭的边缘;

S53,采用霍夫变换或极大值抑制法对边缘进行线段检测,过滤掉噪声和不相关的直线;

S54,使用直线拟合算法将曲线形边缘拟合成直线或折线段;

S55,将线段化处理后的结果转化为数据和图像;

所述步骤S6中,对网箱网衣线段化信息进行分析处理,进一步包括以下步骤:S61,采用图像分割技术将网箱网衣的具体结构从图像中分离出来;

S62,使用SIFT算法、SURF算法或ORB算法提取每个具体结构的代表性特征;

S63,采用监督学习方法训练一个分类模型,将缺陷视为一个分类问题,以区分出网箱网衣的正常部分和缺陷部分;

S64,综合考虑缺陷的尺寸、形状和纹理因素,使用形态学运算和纹理特征分析方法对缺陷进行检测和定位;

S65,分析网箱网衣缺陷的类型、数量和位置。

2.根据权利要求1所述的一种基于图像处理算法的深海网箱网衣检测方法,其特征在于,所述步骤S2中,对彩色图像进行预处理,进一步包括以下步骤:S21,采用中值滤波或均值滤波去除彩色图像中的点、线、面等噪声信息;

S22,使用卷积或加权平均的方法将彩色图像转化为灰度图像;

S23,采用直方图均衡化方法提高深海环境中图像的对比度;

S24,使用拉普拉斯增强方法对图像进行亮度补偿或颜色平衡;

S25,通过调整图像角度方法校正网箱网衣位置。

3.根据权利要求1所述的一种基于图像处理算法的深海网箱网衣检测方法,其特征在于,所述步骤S3中,对图像中的网箱网衣目标进行目标检测,进一步包括以下步骤:S31,通过SIFT算法、SURF算法或ORB算法提取图像中的关键特征;

S32,采用图像区域分割和选择性搜索方法生成包含检测目标的候选区域;

S33,使用卷积神经网络算法对候选区域进行分类和定位,以判断是否包含检测目标,并给出检测目标的边框坐标;

S34,采用非极大值抑制算法过滤重叠的检测框,以及去除置信度较低的检测框;

S35,在图像中绘制边框和标签,并显示检测目标的置信度。

说明书 :

一种基于图像处理算法的深海网箱网衣检测方法

技术领域

[0001] 本发明涉及图像处理技术领域,尤其是一种基于图像处理算法的深海网箱网衣检测方法。

背景技术

[0002] 深海养殖是一种新型的养殖方式,目前仍在不断发展和探索中,深海网箱作为重要的设备之一在其中发挥着重要的作用。随着深海网箱应用范围越来越广,网箱网衣的检查和维护变得越来越重要。传统的检测方法主要有两种,一种是目视检测,包括水下潜水蛙人目视检测和提网目视检测;另一种是利用仪器进行检测。目视检测的方法简单直观,但会存在大量的人为主观因素,且效率低、费时费力;而仪器检测虽然可以实现无人化作业,但设备昂贵、很难适应不同规格的网箱网衣,并且检测结果也存在误差,不能满足精确检测的要求。

发明内容

[0003] 为了克服现有技术中存在的上述问题,本发明提出一种基于图像处理算法的深海网箱网衣检测方法。
[0004] 本发明解决其技术问题所采用的技术方案是:一种基于图像处理算法的深海网箱网衣检测方法,包括以下步骤:S1,获取传感器采集到的深海网箱网衣的彩色图像;
[0005] S2,对S1所得的彩色图像进行预处理;
[0006] S3,对S2所得图像中的网箱网衣目标进行目标检测;
[0007] S4,提取网箱网衣的边缘信息;
[0008] S5,对网箱网衣边缘信息进行线段化处理;
[0009] S6,对网箱网衣线段化信息进行分析处理;
[0010] S7,网箱网衣缺陷检测结果可视化;
[0011] 所述步骤S7中,网箱网衣缺陷检测结果可视化,进一步包括以下步骤:
[0012] S71,采用Python的OpenCV库将分析结果与原始图像进行叠加和融合,生成可视化的图像或视频;
[0013] S72,根据缺陷类型和位置,选用矩形框、多边形填充、文字标注或颜色映射对缺陷区域进行标注,提高可视化效果;
[0014] S73,使用图形界面或动态交互方式,将图像或视频显示在屏幕或设备上,或通过网络或存储介质进行远程访问和共享;
[0015] S74,将可视化结果和缺陷信息保存为标准图片格式和标准视频格式。
[0016] 上述的一种基于图像处理算法的深海网箱网衣检测方法,所述步骤S2中,对彩色图像进行预处理,进一步包括以下步骤:
[0017] S21,采用中值滤波或均值滤波去除彩色图像中的点、线、面等噪声信息;
[0018] S22,使用卷积或加权平均的方法将彩色图像转化为灰度图像;
[0019] S23,采用直方图均衡化方法提高深海环境中图像的对比度;
[0020] S24,使用拉普拉斯增强方法对图像进行亮度补偿或颜色平衡;
[0021] S25,通过调整图像角度方法校正网箱网衣位置。
[0022] 上述的一种基于图像处理算法的深海网箱网衣检测方法,所述步骤S3中,对图像中的网箱网衣目标进行目标检测,进一步包括以下步骤:
[0023] S31,通过SIFT算法、SURF算法或ORB算法提取图像中的关键特征;
[0024] S32,采用图像区域分割和选择性搜索方法生成包含检测目标的候选区域;
[0025] S33,使用卷积神经网络算法对候选区域进行分类和定位,以判断是否包含检测目标,并给出检测目标的边框坐标;
[0026] S34,采用非极大值抑制算法过滤重叠的检测框,以及去除置信度较低的检测框;
[0027] S35,在图像中绘制边框和标签,并显示检测目标的置信度。
[0028] 上述的一种基于图像处理算法的深海网箱网衣检测方法,所述步骤S4中,提取网箱网衣的边缘信息,进一步包括以下步骤:
[0029] S41,采用高斯滤波去除图像中的噪声信号;
[0030] S42,使用Sobel算子和梯度阈值确定图像的边缘位置;
[0031] S43,采用非最大抑制算法细化图像边缘位置,保留梯度最大的像素,过滤掉不相邻或低于梯度阈值的像素;
[0032] S44,对边缘像素进行高阈值和低阈值处理,边缘像素大于高阈值的被保留,低于低阈值的被过滤,介于两者之间的边缘像素如果与高阈值像素相邻则被保留,不相邻则被过滤;
[0033] S45,使用曲线拟合方法将保留下的边缘像素连接成一条不间断的曲线,以表示网箱网衣的边缘。
[0034] 上述的一种基于图像处理算法的深海网箱网衣检测方法,所述S44具体包括:
[0035] S441.将通过非最大抑制算法细化之后的边缘像素进行阈值处理,用一个高阈值和一个低阈值来区分不同强度的边缘像素;
[0036] S442.对于每个像素,如果其强度值大于高阈值,则将该像素标记为边缘像素,并将其像素值设为1,表示该像素位于深海网箱的网衣位置,如果像素值小于低阈值,则将其标记为非边缘像素,并将其像素值设为0,表示该像素位于深海网箱网衣外;
[0037] S443.对于介于高阈值和低阈值之间的边缘像素,如果其与高阈值像素相邻,则将其标记为边缘像素,并将其像素值设为1;相邻的定义是指在8个方向中,至少有一个像素的像素值大于高阈值,如果该像素没有与高阈值像素相邻,则将其标记为非边缘像素,并将其像素值设为0,表示该像素位于深海网箱网衣外;
[0038] S444.通过进行阈值处理,可以将深海网箱网衣区域从图像中准确识别出来,并进一步进行分析、定位和控制等操作。
[0039] 上述的一种基于图像处理算法的深海网箱网衣检测方法,所述步骤S5中,对网箱网衣边缘信息进行线段化处理,进一步包括以下步骤:
[0040] S51,采用Canny算法实现图像的边缘检测,将网箱网衣边缘提取出来;
[0041] S52,使用特征点匹配、拟合或跟踪的方法对边缘检测图像进行边缘连接,形成形状连续、封闭的边缘;
[0042] S53,采用霍夫变换或极大值抑制法对边缘进行线段检测,过滤掉噪声和不相关的直线;
[0043] S54,使用直线拟合算法将曲线形边缘拟合成直线或折线段;
[0044] S55,将线段化处理后的结果转化为数据和图像。
[0045] 上述的一种基于图像处理算法的深海网箱网衣检测方法,所述步骤S6中,对网箱网衣线段化信息进行分析处理,进一步包括以下步骤:
[0046] S61,采用图像分割技术将网箱网衣的具体结构从图像中分离出来;
[0047] S62,使用SIFT算法、SURF算法或ORB算法提取每个具体结构的代表性特征;
[0048] S63,采用监督学习方法训练一个分类模型,将缺陷视为一个分类问题,以区分出网箱网衣的正常部分和缺陷部分;
[0049] S64,综合考虑缺陷的尺寸、形状和纹理因素,使用形态学运算和纹理特征分析方法对缺陷进行检测和定位;
[0050] S65,分析网箱网衣缺陷的类型、数量和位置。
[0051] 本发明的有益效果是,本发明提出一种基于图像处理算法的深海网箱网衣检测方法,将图像处理算法应用于深海网箱网衣质量检测中,其实现原理基于深度学习算法,通过对网箱网衣图像进行采集和处理,优化图像特征,进而通过机器学习算法进行训练和识别,可以对网箱网衣进行精准的缺陷检测,如破洞、断线、附着物等等,从而保证网箱网衣的质量和养殖效益。本发明通过对网箱网衣图像的采集、分析、特征提取等过程,实现对网箱网衣的准确检测和分析,为深海养殖行业安全生产及提高生产效率提供了有力的技术支持。

附图说明

[0052] 下面结合附图和实施例对本发明进一步说明。
[0053] 图1为本发明流程图;
[0054] 图2为本发明中对彩色图像进行预处理的流程图;
[0055] 图3为本发明中对图像中的网箱网衣目标进行目标检测的流程图;
[0056] 图4为本发明中提取网箱网衣的边缘信息的流程图;
[0057] 图5为本发明中对网箱网衣边缘信息进行线段化处理的流程图;
[0058] 图6为本发明中对网箱网衣线段化信息进行分析处理的流程图;
[0059] 图7为本发明中网箱网衣缺陷检测结果可视化的流程图。

具体实施方式

[0060] 为使本领域技术人员更好的理解本发明的技术方案,下面结合附图和具体实施方式对本发明作详细说明。
[0061] 如图1所示,本实施例公开了一种基于图像处理算法的深海网箱网衣检测方法,包括如下步骤:
[0062] S1,获取传感器采集到的彩色图像:
[0063] 本实施例通过光学传感器获取深海网箱网衣的彩色图像。
[0064] S2,对彩色图像进行预处理:
[0065] 在深海环境中,光线的反射和散射会产生很多噪声,使得图像质量下降并且难以进行准确的识别和分析。彩色图像预处理可以帮助去除深海环境中的色彩失真和图像模糊,以便更准确地分析网箱网衣的质量和结构。对彩色图像进行预处理的流程图,如图2所示。
[0066] S21,采用中值滤波或均值滤波去除彩色图像中的点、线、面等噪声信息:
[0067] 采用彩色图像分解技术将彩色图像拆分为红、绿、蓝三个分量。然后,分别对三个分量进行中值滤波或均值滤波。对于中值滤波,首先需要定义一个固定的窗口大小,将窗口中的像素进行排序,取其中位数的像素值作为当前像素的值,重复这个过程,直到遍历完整个图像。对于均值滤波,也需要定义一个固定的窗口大小,将窗口中的像素取平均值,作为当前像素的值,重复这个过程,直到遍历完整个图像。中值滤波和均值滤波虽然处理噪声的方式不同,但都能有效地去除彩色图像中的点、线、面等噪声信息。
[0068] S22,使用卷积或加权平均的方法将彩色图像转化为灰度图像:
[0069] 将彩色图像转化为灰度图像有两种主要方法,一种是使用加权平均法,另一种是使用卷积法。具体方法如下:
[0070] 1.加权平均法:将彩色图像的R、G、B三个分量通过人为的权重进行线性组合,最终得到一个灰度值。通常使用下面的公式进行加权平均:
[0071] 灰度值 =0.299 * R +0.587 * G +0.114 * B 其中,各分量的权重是根据亮度感知因素得出的。
[0072] 2.卷积法:卷积法根据平均灰度的思想,采用3x3或5x5的卷积核,将RGB颜色空间转换为灰度空间。卷积法的过程如下:
[0073] 1)对原始彩色图像进行平滑处理,去除高频噪声。2)将平滑后的图像使用卷积核进行卷积,将R、G、B三个分量加权平均,得到一个灰度值。3)通过逐像素处理,得到转换后的灰度图像。
[0074] S23,采用直方图均衡化方法提高深海环境中图像的对比度:
[0075] 在深海网箱网衣检测方法中,可以按照以下步骤采用直方图均衡化方法来提高图像的对比度:
[0076] 1.对灰度图像进行直方图统计,得到图像像素值的频率分布。2.对直方图进行均衡化处理,得到均衡化后的直方图。3.根据均衡化后的直方图,重新计算图像像素值,并将其映射回原图像。这样就得到了增强后的图像,其对比度会显著提高。
[0077] 采用直方图均衡化方法可以有效提高深海环境中的图像对比度,从而提高深海网箱网衣检测方法的准确性和可靠性。
[0078] S24,使用拉普拉斯增强方法对图像进行亮度补偿或颜色平衡:
[0079] 在深海网箱网衣检测方法中,可以按照以下步骤采用拉普拉斯增强方法来对图像进行亮度补偿或颜色平衡:
[0080] 1.对图像进行拉普拉斯变换,得到图像的高频特征。2.对拉普拉斯变换后的图像进行调整,可以改变图像的亮度、对比度、饱和度等参数,进而实现亮度补偿或颜色平衡。3.根据调整后的图像,可以检测深海网箱网衣的状态和位置,从而实现深海网箱网衣检测。
[0081] S25,通过调整图像角度方法校正网箱网衣位置:
[0082] 本发明使用图像处理中的旋转操作来调整图像的角度,以使网箱网衣的位置水平或竖直,从而使网箱网衣的位置更准确。利用图像处理算法中的边缘检测算法或者特征点检测算法来定位图像中的网箱网衣位置,进而进行图像角度的调整,并实现网箱网衣的位置校正。需要注意的是,网箱网衣位置的校正应该视具体情况而定,以达到最佳的校正效果。
[0083] S3,对图像中的网箱网衣目标进行目标检测:
[0084] 在基于图像处理算法的深海网箱网衣检测方法发明专利中,对图像中的网箱网衣进行目标检测的主要目的是识别和定位图像中的网箱网衣目标,以便进一步进行检测和分析。
[0085] 具体而言,通过目标检测算法识别图像中的网箱网衣目标,可以在深海环境中自动检测和定位网箱网衣,提高检测的准确性和效率。同时,通过图像处理技术对检测到的网箱网衣目标进行进一步分析,例如计算网箱网衣的大小、形状和数量等信息,可以帮助深海渔业工作者更加全面地了解海洋环境和目标物体,同时也对深海生态环境和渔业资源进行有效保护和管理。对图像中的网箱网衣目标进行目标检测的流程图,如图3所示。
[0086] S31,通过SIFT算法、SURF算法或ORB算法提取图像中的关键特征:
[0087] SIFT算法、SURF算法和ORB算法都是常用的特征提取算法,都是基于局部特征的算法,其步骤包括:
[0088] 1.尺度空间构建:通过高斯滤波对图像进行尺度空间的构建,以检测不同尺度下的关键点;2. 关键点检测:在构建的尺度空间中,通过寻找极值点和满足一定条件的关键点,例如局部极值、边缘响应等,以确定图像中的关键点;3. 局部方向估计:利用梯度方向对每个关键点周围的像素进行方向估计,以确保关键点的旋转不变性;4. 局部特征描述:以关键点为中心提取关键区域,并计算该区域内的特征向量,例如梯度幅值和方向等,以生成关键点的局部特征描述符。
[0089] S32,采用图像区域分割和选择性搜索方法生成包含检测目标的候选区域:
[0090] 本发明采用图像区域分割和选择性搜索方法来生成包含检测目标的候选区域,具体步骤如下:
[0091] 1.区域分割:利用图像分割算法,例如基于颜色和纹理的分割算法、基于边缘的分割算法或者区域生长算法等,将图像分割为若干个区域,每个区域代表图像中的一个可能的目标区域。2.候选区域生成:对于每个区域,利用选择性搜索方法生成若干个不同尺度和不同形状的候选区域,以覆盖可能包含检测目标的所有情况。选择性搜索方法通常是以多尺度分割为基础,在所有尺度上联合考虑颜色、纹理、形状等因素,以生成一系列相似度高的候选区域。3.区域筛选:利用分类器对每个候选区域进行分类,以判断该区域中是否存在目标,进而筛选出最终的目标区域。
[0092] S33,使用卷积神经网络算法对候选区域进行分类和定位,以判断是否包含检测目标,并给出检测目标的边框坐标:
[0093] 本发明采用卷积神经网络算法对候选区域进行分类和定位,以判断是否包含检测目标,并给出检测目标的边框坐标。具体实现步骤如下:1.数据准备:首先需要准备训练数据和测试数据,并对数据进行预处理。2.建立卷积神经网络模型:建立包含多个卷积层、池化层和全连接层的卷积神经网络模型。3.训练卷积神经网络模型:利用准备好的训练数据对卷积神经网络模型进行训练,从而实现对目标区域的分类和定位。4.对候选区域进行分类和定位:对于每个候选区域,通过卷积神经网络模型进行分类和定位。5.目标筛选:根据分类和定位结果,对各个候选区域进行筛选,选出最终的目标区域,进而实现深海网箱网衣的检测和识别。
[0094] S34,采用非极大值抑制算法过滤重叠的检测框,以及去除置信度较低的检测框:
[0095] 本发明采用非极大值抑制算法来过滤重叠的检测框,以及去除置信度较低的检测框。具体实现步骤如下:
[0096] 1.对所有检测框按置信度从高到低进行排序,选择置信度最高的检测框作为最终输出结果。2.对于剩余的检测框,根据它们与最高置信度检测框的IoU值来判断是否与最高置信度框重叠。3.重复执行第1、2步,直到所有的检测框都被处理过。4.采用置信度阈值过滤方法,去除置信度低于一个设定阈值的检测框。
[0097] S35,在图像中绘制边框和标签,并显示检测目标的置信度:
[0098] 本发明通过绘制边框和标签的方式,快速直观地显示检测目标的位置和类别,并显示检测目标的置信度,以进一步提高检测可视化效果。具体实现步骤如下:1.对于每个检测到的目标,计算其边框的坐标。2.将边框的坐标在图像中绘制出来。3.在边框旁边标上检测到目标的标签。4.在标签旁边显示检测到目标的置信度,常常使用百分数表示置信度。
[0099] S4,提取网箱网衣的边缘信息:
[0100] 在基于图像处理算法的深海网箱网衣检测方法中,提取网箱网衣的边缘信息的目的是为了检测网箱网衣的位置和形状,从而实现对网箱网衣的准确识别和分类。提取网箱网衣的边缘信息的流程图,如图4所示。
[0101] S41,采用高斯滤波去除图像中的噪声信号:
[0102] 本发明采用高斯滤波去除图像中的噪声信号,以提高网箱网衣检测的准确性和可靠性。具体实现步骤如下:1.利用高斯滤波器对图像进行滤波,以去除噪声和平滑图像。2.选择适当的高斯核大小和标准差,一般对于不同的应用场景和噪声程度,需要进行调整和优化,以满足特定的需求。3.采用自适应高斯滤波算法,动态调整高斯核大小和标准差。
[0103] S42,使用Sobel算子和梯度阈值确定图像的边缘位置:
[0104] 本发明采用Sobel算子和梯度阈值确定图像的边缘位置,具体实现步骤如下:1.使用Sobel 算子计算图像的梯度幅值 G,并得到 x 方向和 y 方向上的梯度幅值 Gx和 Gy,通过将图像与 Sobel 算子进行卷积,得到变换后的 Gx 和 Gy。2.根据梯度阈值 T,对梯度幅值 G(x,y) 进行二值化处理,将 G(x,y)
[0105] S43,采用非最大抑制算法细化图像边缘位置,保留梯度最大的像素,过滤掉不相邻或低于梯度阈值的像素:
[0106] 采用非最大抑制算法对图像进行边缘细化处理,以保留梯度最大的像素,并过滤掉不相邻或低于梯度阈值的像素。具体而言,具体步骤如下:1.将图像分为若干个象限,每个象限的大小为 45°,总共有8个象限。2.对于边缘位置上的每个像素,将其所在的梯度方向在全局坐标系中的角度值转换为相对于相应象限的角度值。3.根据相对角度值,确定像素所处的两个相邻的象限和其在两个象限上的权重。4.对于图像中每个像素,比较其和相邻两个象限中的梯度值大小,如果其梯度值是相邻象限中最大的,则保留该像素。如果梯度值低于设定的梯度阈值,则过滤掉该像素。如果该像素不与相邻象限的像素相邻,则也会被过滤掉,这是非最大抑制算法的重要特性之一。5.将经过非最大抑制处理的像素点作为最终的边缘位置。
[0107] S44,对边缘像素进行高阈值和低阈值处理,边缘像素大于高阈值的被保留,低于低阈值的被过滤,介于两者之间的边缘像素如果与高阈值像素相邻则被保留,不相邻则被过滤:
[0108] 在本发明专利中,对边缘像素进行高阈值和低阈值处理,以实现对深海网箱网衣的精准检测。具体步骤如下:1.将通过非最大抑制算法细化之后的边缘像素进行阈值处理,用一个高阈值和一个低阈值来区分不同强度的边缘像素。2.对于每个像素,如果其强度值大于高阈值,则将该像素标记为边缘像素,并将其像素值设为1,表示该像素位于深海网箱的网衣位置。如果像素值小于低阈值,则将其标记为非边缘像素,并将其像素值设为0,表示该像素位于深海网箱网衣外。3.对于介于高阈值和低阈值之间的边缘像素,如果其与高阈值像素相邻,则将其标记为边缘像素,并将其像素值设为1。相邻的定义是指在8个方向中,至少有一个像素的像素值大于高阈值。如果该像素没有与高阈值像素相邻,则将其标记为非边缘像素,并将其像素值设为0,表示该像素位于深海网箱网衣外。4.最终,通过进行阈值处理,可以将深海网箱网衣区域从图像中准确识别出来,并进一步进行分析、定位和控制等操作。
[0109] S45,使用曲线拟合方法将保留下的边缘像素连接成一条不间断的曲线,以表示网箱网衣的边缘:
[0110] 在该发明专利中,使用曲线拟合方法将保留下的边缘像素连接成一条不间断的曲线,以表示网箱网衣的边缘。具体步骤如下:1.将保留下的边缘像素作为曲线的离散点输入到曲线拟合算法中。2.根据具体需要和拟合精度等要求选择不同的曲线拟合方法,如最小二乘法拟合、最小二乘二次曲线拟合等。3.通过曲线拟合算法,将边缘像素连接成一条曲线,以表示深海网箱网衣的边缘。4.对于一些不完整或断裂的边缘像素,可以使用插值等方法进行填充或修复,以保持曲线的完整性。
[0111] S5,对网箱网衣边缘信息进行线段化处理:
[0112] 在该发明专利中,对深海网箱网衣的边缘信息进行线段化处理的目的是将其表示为若干条线段,可以消除深海网箱网衣边缘信息中的噪声和干扰,提高检测算法的准确性和鲁棒性。对网箱网衣边缘信息进行线段化处理的流程图,如图5所示。
[0113] S51,采用Canny算法实现图像的边缘检测,将网箱网衣边缘提取出来:
[0114] 首先,将图像中的像素分为边缘像素和非边缘像素。其次,将边缘像素连接起来,以形成连续的边缘线。最后,滤除一些非最大边缘像素,以使边缘线变得更加清晰和精细。
[0115] S52,使用特征点匹配、拟合或跟踪的方法对边缘检测图像进行边缘连接,形成形状连续、封闭的边缘:
[0116] 首先,可以使用不同的方法进行匹配,例如SIFT,SURF或ORB等算法。其次,通过匹配的特征点,可以得到一些形状连续但不封闭的边缘线。最后,可以使用拟合算法将这些不连续的边缘线转换为光滑、连续的曲线。
[0117] S53,采用霍夫变换或极大值抑制法对边缘进行线段检测,过滤掉噪声和不相关的直线:
[0118] 首先,对边缘图像进行霍夫变换检测出其中的所有直线。其次,对于检测到的所有直线,计算其倾斜角度和长度,并过滤掉不必要的信息。最后通过极大值抑制法,将相似的线段合并为一个,根据模板的尺寸和形状,保留那些与之匹配的线段,过滤掉不相关的直线。
[0119] S54,使用直线拟合算法将曲线形边缘拟合成直线或折线段:
[0120] 常用的直线拟合算法有最小二乘法、RANSAC算法等。在实际应用中可以选择适合自己的拟合算法。将得到的直线或折线段与模板进行匹配,以提取出深海网箱的形状和结构。
[0121] S55,将线段化处理后的结果转化为数据和图像:
[0122] 每个线段可以用起点和终点的坐标来表示,或者使用线段的长度、方向和位置等参数来表示。在深海网箱网衣检测中,需要将检测出来的线段转化为与深海网箱形状相匹配的图像。
[0123] S6,对网箱网衣线段化信息进行分析处理:
[0124] 本发明中,对网箱网衣线段化信息进行分析处理的目的是为了实现快速、准确地检测和识别深海网箱的形状和结构,以提供更加安全、高效和人性化的深海养殖和水下探测服务。对网箱网衣线段化信息进行分析处理的流程图,如图6所示。
[0125] S61,采用图像分割技术将网箱网衣的具体结构从图像中分离出来:
[0126] 图像分割技术有基于区域的分割方法、基于边缘的分割方法、基于阈值的分割方法等。其中,基于区域的分割方法适合处理具有一定空间连续性的纹理较为简单的网箱网衣图像,基于边缘的分割方法适合处理具有明显边缘的网箱网衣图像,而基于阈值的分割方法适合处理像素值分布较为单一的网箱网衣图像。
[0127] S62,使用SIFT算法、SURF算法或ORB算法提取每个具体结构的代表性特征:
[0128] SIFT、SURF和ORB都是常用的图像特征点提取算法,用于检测图像中的局部特征。对于一种基于图像处理算法的深海网箱网衣检测方法,可以使用这些算法来提取每个具体结构的代表性特征。
[0129] S63,采用监督学习方法训练一个分类模型,将缺陷视为一个分类问题,以区分出网箱网衣的正常部分和缺陷部分:
[0130] 为了将深海网箱网衣中的缺陷部分与正常部分进行区分,使用监督学习方法来训练一个分类模型。在分类模型训练过程中,将深海网箱网衣的图片视为输入,缺陷和正常部分的标签视为输出。可以选择适合分类问题的算法进行模型训练,例如支持向量机(SVM)、决策树、随机森林等。
[0131] S64,综合考虑缺陷的尺寸、形状和纹理因素,使用形态学运算和纹理特征分析方法对缺陷进行检测和定位:
[0132] 本发明通过设置适当的阈值,将缺陷区域和正常区域分离出来,并使用形态学运算来进一步分离缺陷区域的连通域。然后,通过计算缺陷区域的纹理特征,例如LBP等,定位缺陷位置并量化缺陷的大小和形状。
[0133] S65,分析网箱网衣缺陷的类型、数量和位置:
[0134] 通过对缺陷区域的纹理特征、形状特征、颜色特征等进行分析,确定缺陷的类型;通过检测缺陷区域的数量来分析深海网箱网衣中的缺陷情况;通过检测缺陷区域的位置,确定缺陷所在的网箱网衣区域。
[0135] S7,网箱网衣缺陷检测结果可视化:
[0136] 网箱网衣缺陷检测结果可视化的目的在于提供直观、清晰的检测结果和针对性的维修指导,使用户可以更加深入地了解网箱网衣的缺陷情况并采取相应的行动。同时也方便后续的分析和研究,帮助改进和提高深海网箱网衣的设计和使用效果。网箱网衣缺陷检测结果可视化的流程图,如图7所示。
[0137] S71,采用Python的OpenCV库将分析结果与原始图像进行叠加和融合,生成可视化的图像或视频:
[0138] 使用OpenCV库将分析结果与原始图像进行叠加和融合,生成可视化的图像或视频,具体步骤如下:1.使用OpenCV中的cv2.imread()函数加载图像,然后使用cv2.resize()函数调整大小。2.使用高斯滤波器、阈值分割、形态学操作等技术进行预处理,然后使用适当的算法进行特征提取和计算,例如边缘检测、轮廓检测、二进制形态学等。3.使用OpenCV中的addWeighted()函数将两个图像进行融合。4.将图像保存为文件,使用OpenCV中的VideoWriter类将多个图像以视频的形式拼接在一起。
[0139] S72,根据缺陷类型和位置,选用矩形框、多边形填充、文字标注或颜色映射对缺陷区域进行标注,提高可视化效果:
[0140] 使用图像处理软件库(例如OpenCV)中的函数实现注释。例如,使用cv2.rectangle()函数在缺陷区域周围绘制矩形框,使用cv2.fillPoly()函数在缺陷区域内绘制多边形填充,使用cv2.putText()函数向缺陷区域添加文字标注,使用cv2.applyColorMap()函数将颜色映射应用于缺陷区域。
[0141] S73,使用图形界面或动态交互方式,将图像或视频显示在屏幕或设备上,或通过网络或存储介质进行远程访问和共享:
[0142] 本发明中,为了显示图像或视频并允许用户与之交互,使用Python中的GUI库(例如Tkinter、wxPython、PyQt等)来构建GUI,以便在窗口中显示图像或视频。加载和显示图像或视频使用OpenCV中的cv2.imread()和cv2.VideoCapture()函数加载图像或视频,然后使用GUI库中的组件(例如标签、画布等)将它们显示在屏幕上。为了实现远程访问与共享,将图像或视频共享到网络或其他存储介质中,采用网络协议(例如HTTP、FTP等),或将它们保存为具有适当格式(例如jpg、png、mp4等)的文件。
[0143] S74,将可视化结果和缺陷信息保存为标准图片格式和标准视频格式:
[0144] 使用OpenCV库的cv2.imwrite()函数将可视化结果保存为标准图片格式,使用OpenCV库的VideoWriter()函数将可视化结果保存为标准视频格式。
[0145] 以上实施例仅为本发明的示例性实施例,不用于限制本发明,本发明的保护范围由权利要求书限定。本领域技术人员可以在本发明的实质和保护范围内,对本发明做出各种修改或等同替换,这种修改或等同替换也应视为落在本发明的保护范围内。