1. 引言
鱼群浮头是因鱼塘水质肥沃而导致的一种常见养殖现象,鱼群浮头现象在丰产塘或养殖密度较大的鱼塘中出现是正常现象。相反,若是鱼塘中鱼群浮头行为从未发生,则表明这个鱼塘并不会丰产 [1]。因此在巡塘时及时发现并判断鱼群是否是正常的浮头还是严重浮头尤为重要。严重的浮头行为将会导致翻塘,造成严重的经济损失 [2]。
浮头鱼群主要活动在鱼塘的中心区域,当鱼群受到外界刺激反应就会重新潜入水下,这种浮头行为一般在日出之后很快就会结束。而严重的浮头行为通常在午夜前后发生,浮头鱼群会逐渐地分散到鱼塘的四周,即使受惊也不会下潜,并且其体色会逐渐变淡,鱼群游动无力且反应迟钝,这种表现已经表示鱼群濒临死亡了。鱼群浮头还可以根据一些具体的情况加以判断:鱼群游动散乱且不下潜,仔细观看可以明显看出水的中上层有阵阵水花浮现,这种现象说明鱼塘底层水体缺氧,从而导致鱼群上浮,这种鱼群浮头现象称为暗浮头 [3]。如果鱼群在鱼塘的中央产生浮头行为,受惊下沉且有响动则是轻浮头,相反若是在鱼塘周边浮头,受惊无反应则为重浮头,这时需要工作人员停止施肥,立即加注新水。如果加注新水鱼群仍旧不下潜,此时就需要边注水边排水抢救,否则会引起翻塘死鱼 [4]。为实现鱼群浮头的有效及时监测,本文提出并完成基于图像识别技术的鱼群浮头检测控制系统设计。系统通过分析鱼群图像,实现对鱼群行为走势的判定,从而给出鱼群浮头与否的判定。
2. 识别鱼群浮头的关键问题
2.1. 室外监控设备选择
鱼塘处于室外环境,监控设备经常会遇到恶劣的天气环境,所以不仅需要满足清晰度的要求,还需要具备基本的防雷、防水、防潮等功能 [5]。一般情况下鱼塘在夜晚时分不会有专门的照明设备在周边提供照明服务,所以为了夜间监控的清晰度和夜视效果考虑,本文在监控摄像头的选择上,选择了星光级的超低照度高清网络监控摄像机。该设备具备高倍数长焦镜头,可实现自动变焦及夜视功能,并具备自动识别报警,防止小偷夜晚作业。该监控摄像头由百万高清镜头组成,成像稳定清晰,镜头采用硬度高、透光率强、防水防雾防眩光的双层玻璃。同时,该星光级摄像机采用进口灯芯和阵列红外灯,具有发光亮、光通量均匀、低光衰率、低发热量等优点。不仅如此,其高灵敏度光敏电阻开关能够有效地确保摄像机在弱光、无光的情况下能够及时地开启红外阵列光源。
2.2. 通信模块的选择
通信模块在保持数据传输稳定的同时,考虑到生产成本,选择了NB-IOT通信模块 [6]。NB-IOT通信模块作为IOT领域的一个新兴技术,因其支持低功耗率的设备在广域网中进行蜂窝数据连接,被称作低功耗广域网。又因NB-IOT通信模块具有功耗低、速率快、成本低、架构优等特点 [7],主要集中在低功耗广覆盖物联网市场。在同样的频段覆盖下,NB-IOT可比现有的网络增益10 dB,并且其覆盖面积扩大100倍,同时其一面扇区可以支持十万个连接。选用具有功耗率低、性能优越的无线通信GPRS模块R518芯片作为NB-IOT通信模块能够进行两种业务:GPRS数据传输和GSM短信业务。不仅如此,R518芯片作为工业级的两频段GSM/GPRS无线模块,有丰富的网络服务协议内嵌其中,可以完成无线通信功能。
2.3. 存储转发设备的选择
考虑经济成本,本文选用可用于固定数字设备之间的远距离、高速无线组网的存储转发设备--无线网桥 [8],作为链路层互联。无线网桥有点对点,点对多点和中继连接三种工作方式。无线网桥可以用于连接多个独立的、位置不同的、相距几百米到几十公里的网络段,因此广泛地被应用于不同建筑物间的互联。
3. 图像识别的主要研究内容
检测控制系统程序由多个模块组成,主要有:打开图像模块、边缘检测模块、平滑选择模块、掩模生成模块、数目标记模块以及报告生成模块。软件部分的工作是整个系统设计的核心,能否准确地对鱼群浮头做出判断及对鱼群行为活动走势做出预测,很大程度取决去软件部分图像识别的精度。
3.1. 灰度处理
图像的灰度化处理 [9] 就是将彩色图像转化为灰色图像,即使像素点矩阵中的每一个像素点都满足R = G = B的关系式,此时的这个值叫做灰度值。像素点较亮的表示其灰度值大,相反则表示其灰度值小。
图像灰度化处理有以下几种方式:
1) 分量法:将彩色图像中的R、G、B三色分量的亮度作为三个灰度图像的灰度值,根据实际应用需求选取其中一种灰度图像。
2) 取最大值法:将彩色图像中的R、G、B三色分量中亮度的最大值作为灰度图的灰度值。
3) 求平均值法:将彩色图像中的R、G、B三色分量求平均值,得到的平均值即为该图像的灰度值。
4) 加权平均法:根据指标要求,将R、G、B三色分量以不同的权值进行加权平均计算。因人眼对绿色敏感度最高,对蓝色敏感度最低,按下式对三分量进行加权平均可得到较合理的灰度图像。
本文选择了产生灰度图像比较柔和且计算量并不复杂的平均值法,增强浮头鱼群和其他部位图像的对比度,使浮头鱼体明暗鲜明,便于识别。
3.2. 边缘检测
对采集图像先进行边缘检测可以大幅度地减少数据量的计算,剔除不相关的信息,保留图像中重要的属性,从而加快程序的反应时间。边缘检测 [10] 主要是提取图像中不连续部分的特征,从而根据闭合的边缘来确定区域。边缘检测的实质就是通过采用某种算法来提取出图像中对象与背景间的交界线。图像中灰度发生急剧变化的区域边界我们将定义为边缘。图像灰度的变化情况可以用图像灰度分布的梯度来反映,因此我们可以用局部图像微分技术来获得边缘检测算子。本文主要选择了两种算子:Sobel算子和Canny算子。
Sobel算子作为一阶导数算子,原理比较简单,在实际应用中,其效率比Canny算子检测效率高。该算子对噪声具有一定的平滑作用,且抗噪声性能强,同时对灰度渐变低噪声的图像具有较好的检测效果。
Canny算子作为一种比较完善的边缘检测算法,与Sobel算子一样,具有很强的抗噪性能,适用高斯滤波来进行图像平滑处理,该算子通过一阶偏导的有限差分来计算梯度的幅值和方向,能够对梯度幅值进行非极大值抑制,且采用双阈值检测和连接边缘。Canny算子其优点就在于使用了两种不同的阈值来分别对强边缘和弱边缘进行检测,并且只有当弱边缘和强边缘相连时,该算子才会将弱边缘包含在输出图像中。
3.3. 图像平滑
大多数拍摄到的图像都会存在水面波纹,在进行图像识别时如果不能有效地抑制或去除这些噪点,将会影响浮头鱼群的识别或不能达到识别精准度要求。图像噪声是指存在于图像数据中的不必要的或多余的干扰信息。噪声的存在严重影响了采集图像的质量,因此在对图像进行预处理之前,必须予以去除。根据噪声的特点,可以知道噪声的灰度与其周围的灰度之间有明显的灰度差,因此造成了视觉障碍。消除噪声要利用图像平滑 [11],因此如何把边缘部分与噪声部分区分开是关键所在。图像平滑的方法可分为频率法和空域法这两类。频率法的处理以傅里叶变换和低通滤波技术为基础,空域法的处理以模板卷积为基础。
3.4. 掩模处理
图像处理中的掩膜生成借鉴于制作PCB板的过程,在半导体制造中,许多芯片工艺步骤采用光刻技术,用于这些工艺步骤的图形“底片”就被称为掩膜 [12]。掩模的作用是在硅片上选定的区域中对一个不透明的图形模板进行遮盖,继而下面的腐蚀或扩散将只影响选定的区域以外的区域。
浮头鱼体可识别区域通常只拥有很少的像素点,因此在进行掩模处理前,需要先进行合适的膨胀处理。从数学方面来讲,图像的膨胀处理就是将图像或图像选中0的一部分区域与核进行卷积处理。核具有任意的形状和大小这一特点,它拥有一个单独定义出来的参考点,我们称其为anchor point。将核与图形进行卷积处理,计算核覆盖区域的像素点的最大值,并把这个最大值赋值给参考点指定的像素,这样就会使图像中的高亮区域逐渐增长。膨胀就是求局部最大值的操作。
3.5. 鱼群浮头数目标记及行为预判
鱼群浮头往往是在复杂的水面环境中拍摄到的,由于水面波纹对图像处理具有较大的影响作用,经常会被误认为浮头鱼体,如何在复杂背景中准确地识别出浮头鱼体并快速标记是鱼群浮头检测的难点所在。目前,有不少研究人员在这方面进行了一定研究,主要有以下几种方法:
1) 基于Hough变换的定位,该方法是利用浮头鱼体形状的几何特征来进行定位;
2) 基于鱼群颜色特征的定位,该方法主要利用浮头鱼体和周边环境的明显反差特征来排除干扰,从而进行标记;
3) 基于图像水平的灰度变化特征的定位,该方法在对鱼体进行标记前,需要进行图像预处理,使原本彩色图像转化为灰度图像后,利用图像水平方向的纹理特征来进行鱼体标记;
4) 基于边缘检测的定位,该方法主要利用浮头鱼体的丰富边缘特征来进行标记。
这些方法各有优缺点,为了实现快速、精准地标记浮头鱼体,本文综合了基于水平灰度变化特征和基于边缘检测两种方法,为提高浮头鱼体的标记提供了更加有力的保障。在对浮头鱼体进行标记后,根据获取到的数据自动对鱼群行为走势活动作出一定的预测,并生成关于鱼群是否浮头和走势坐标的报告。
4. 图像识别系统在养殖渔场中的应用
为了验证系统识别的准确性,将由NB-IOT鱼塘远程视频在线检测系统采集到的彩色图像,即RGB图像,如图1所示,进行实验验证。去除图像中水面波纹对边缘检测的影响,先对图像进行平滑处理,降低水面波纹对图像处理的不利影响。经过这些步骤可以获得与原图像相似度更高的图像,最终获得的结果也更加精确。初步仿真后的图像使得浮头鱼群部分从采集图像中被精准地提取出来,达到了对浮头鱼群的初步定位及图像预处理的目的。
经过多次调试,调整平滑幅度为5,图像处理更为清晰,其准确度也更高。膨胀量的选择与鱼群密集程度有着显著联系,当膨胀量输入过大时图像识别会将多条靠近在一起的鱼体误认为一条,当膨胀量输入过大时又会使得一些浮头鱼体无法被准确识别。当膨胀量输入为2时,经过膨胀处理后得到的掩模图像会更加精准。对浮头鱼体进行数目标记是在生成掩模图之后对其进行标记,如图2所示,同时生成关于是否浮头及鱼群行为活动走势预测的报告。
由仿真结果可以看出,程序对浮头鱼体的识别精度达到95%以上,同时能够对图像边缘鱼体进行有效识别,且其图像识别速度在5秒内。
5. 结论
本文通过图像识别技术实现了对鱼群浮头进行判断和对鱼群行为趋势进行预判。选择的星光级摄像头采像清晰,具有夜视功能。对采集到的图像进行的预处理、边缘检测、掩模生成、浮头标记等操作,对浮头鱼体的定位非常有效果。从运行结果来看,该检测控制系统可以有效地识别浮头鱼体数目并进行标记,同时生成鱼群浮头及其行为活动走势预测的报告。与传统的人工监测鱼群浮头相比,该系统具有二十四小时不间断监测、节省资源、快速准确等优点。
基金项目
国家自然科学基金(61803325)资助项目,江苏省自然科学基金(BK2018049)资助项目,江苏省教育厅自然基金面上(18KJB510046)资助项目,江苏省第十六批“六大人才高峰”高层次人才项目(XYDXX-103)资助项目,江苏省应急管理厅新技术研发示范项目(YJGL-YF-2020-13),教育部科技发展中心(2019ITA01024),盐城工学院研究生科研与实践创新计划项目(SJCX21_XZ019)。