基于计算机视觉技术的水产养殖中鱼类行为识别与量化研究进展
2019-01-06黄志涛宋协法
何 佳,黄志涛,宋协法,彭 磊
(中国海洋大学水产学院,山东 青岛 266003)
鱼类行为是指鱼类进行的各种运动,包括游泳、摄食、生殖、呼吸等运动;此外,避敌、攻击、求偶以及改变体色等非运动形式也被列入行为范畴之中[1]。鱼类行为与水体环境密切相关,当鱼类受到水体环境中的压力胁迫时,其游泳和摄食行为以及体色均会发生改变[2-4]。当水体中溶氧过低时,鲫鱼的游泳速度和深度呈现出降低的趋势,同时鱼群整体分布更加分散[5]。在感染寄生虫后,大西洋鲑跃出水面的行为发生的频率显著增加,同时表现出游泳速度降低、对刺激的反应时间增加的特征[6]。因此,在水产养殖中,通过观察鱼类个体或鱼群整体的行为变化,养殖人员能够判断养殖环境是否适宜鱼类的生长发育,并且利用鱼类的行为特点进行养殖管理和操作。
在早期的经典行为学研究中,主要依赖人为直接观察[7-8]。对实时的养殖场景进行直接观察,此方法依赖观察人员的主观意识和判断,观察得到的结果很难进行参数化,且此方法耗费较多时间和劳动力[9]。与人为观察相比,利用遥测技术和回声技术观察鱼类行为,具有结果能够参数化、省时省力的优点。但回声技术容易受到水面气泡以及水面波动的影响;而遥测技术属于入侵式的技术,需要在鱼体体表或体内安装信号发射器,从而对试验对象造成损伤[10-12]。
计算机视觉(computer vision,CV)技术作为一种非入侵式且稳定性较好的观察技术,正在被众多的水产养殖行为学研究人员所接受。计算机视觉技术是在图像处理、人工智能、模式识别等技术的基础上逐渐发展形成的一种新技术,其原理是利用摄像机等成像系统,采集拍摄区域的视频序列图像,再通过图像处理的方式检测和跟踪图像中的运动目标,从而得到目标的参数[13-14]。目前已经有许多研究在实验室水平上将计算机视觉技术应用于水产养殖的鱼类行为的观察中,并取得了一定的研究成果。
本文对水产养殖关注的鱼类行为、计算机视觉技术的组成以及目前计算机视觉技术在水产养殖的鱼类行为中的应用情况进行综述,以期为计算机视觉技术在水产养殖中的应用提供参考。
1 水产养殖中的鱼类行为
1.1 游泳行为
鱼类的生态习性复杂,其栖息的水体环境也经常发生变化,而其游泳行为被视为鱼类实现生存繁衍等生命活动的重要基础[15]。尽管许多学者已经就不同的分类标准对鱼类的游泳行为进行了划分[16-17],但总体上,鱼类的游泳行为仍然是一系列比较随机的复杂行为,例如鱼类个体的加速、逃避以及鱼群的聚集和分散等各个游泳行为的组合[18]。在鱼类的整个生命过程中,温度[19]、溶氧[20]、pH[21]、光照度[22]、噪声[23]、水体浑浊度[24],甚至加速流[25]都会对鱼类游泳行为产生影响。并且,游泳行为的变化不仅会对鱼类的生长发育和繁殖活动造成影响,还会对整个鱼群的种群动态产生影响[26]。
1.2 摄食行为
摄食行为是水产养殖中最为关键的一部分,鱼群摄食情况直接影响到鱼体生长发育状况[27]。目前在水产养殖中,饲料是基于鱼体的体质量百分比进行投喂,但由于鱼体质量测量的不精确,饲料精确的投喂量很难获得[28]。而残饲会影响水体环境,尤其是在循环水养殖中,残饲在水体中分解,导致水体中的氨氮和亚硝酸盐氮质量浓度升高,严重影响鱼群的生存环境,进而降低养殖品种的质量[29]。
1.3 体色变化
鱼体的体色变化也属于鱼类行为的范畴,大多数鱼类都具有改变体色以适应环境背景色的能力[30]。因此,当水体环境发生改变或受到刺激时,鱼体的体色会发生变化。Rotllant等[31]发现,在黑色背景养殖池中,当鱼体处于种群密度较大的应激条件下时,鱼体的血浆皮质醇水平会有一个短暂的升高,2 d之后出现下降,而白色背景的养殖池中鱼体的血浆皮质醇水平在升高之后保持不变,未有下降趋势。而Shack[32]给6组鱼投喂含梯度浓度生物素的饲料,结果显示,在投喂42 d之后,饲料中不含生物素的鱼群出现体色变黑的情况。
2 计算机视觉技术
2.1 图像采集
图像采集是运用计算机视觉技术对鱼类行为进行监测的首要部分,采集得到的图像的质量好坏决定之后图像处理的难易程度,图像质量好则处理较为容易。早期摄像系统的像素不高且品种单一,成像的质量较差,因此从图像中较难得到精确的信息。但目前成像精度日益提高,采集的方式也呈现多元化的特点。
目前的图像采集方式包括二维成像和三维成像,其中二维成像主要是研究水平面中的鱼类运动情况或研究鱼类的垂直分布情况,其图像采集系统也均是单摄像机系统[33-34]。三维成像通常是在单摄像机的基础上,通过添加摄像机或在方形养殖池的侧面放置平面镜的方式,使计算机能同时得到鱼体在3个方向上的位置数据[5,35]。但三维拍摄模式普遍存在图像校准的问题,且在面对多摄像机系统时,计算机处理数据的压力也会成倍增加。另外一种基于单摄像机的三维成像系统是利用近红外摄像系统进行图像采集,其原理是基于利用近红外摄像机进行拍摄时水体对红外光的吸收和鱼体对红外光的反射,不同深度的水体中鱼体对红外光的反射显示出的强度不同,因此可以利用近红外摄像系统构建鱼体反射光亮度与深度的关系,从而实现单摄像机三维的图像采集模式[36]。除摄像机的三维成像之外,还有利用结构光传感器进行三维成像的方式[37]。
2.2 预处理
通过成像系统采集到的图像包含鱼体和背景的全部信息,但在许多研究中由于养殖池背景的复杂性和鱼类对环境背景色的体色适应,鱼类与背景之间的颜色差别比较小;或者由于灯光直射,水体表面产生反光;以及由于水体中存在气泡和残饲,导致拍摄得到的图像中出现大量噪声。因此研究人员需要在提取鱼体目标之前对原始图像进行预处理操作。预处理包括灰度化、图像增强和滤波去噪等步骤[38-39]。其中灰度化是将三通道的彩色图像降维转换为单通道的灰度图像,过程中选择性地保留亮度、色度或对比度等属性[40];图像增强则是针对特定的应用目的,增强图像的整体或局部特性,从而加强图像对于某些特征的辨识效果[41];而滤波去噪是通过均值滤波、中值滤波或形态学滤波等方法将图像中与周围灰度值相差较大的像素值替换成与周围像素值相近的值,从而去除图像中的噪点以降低在对图像进行特征分析中产生的误差[42]。
2.3 运动目标检测与跟踪
2.3.1 运动目标检测
运动目标的检测是计算机视觉技术的基础,其目的是基于运动目标与周围环境的不同,将运动的目标从背景中分离,运动目标的检测包括3种方法:基于背景差分的目标检测、基于帧间差分的目标检测以及基于光流的目标检测[43]。
基于背景差分的目标检测又称背景差分法,其基本原理是将当前帧的图像与背景帧图像相减得到差帧图像,再通过阈值分割提取得到运动目标。如Sadoul等[44]通过选取图像序列中前30张图像的每个像素点的最大值来创建背景图像,再对差帧图像利用阈值分割将运动目标与背景分离。背景差分法适用于背景较为稳定的情况,当背景不够稳定,如养殖环境中的光线变化较大时,提取效果就会很差[45]。针对此不足,目前的研究多建立自适应背景模型,使背景帧能够随养殖环境变化而实时改变,常见自适应背景模型有平均背景模型、单高斯分布背景模型和混合高斯分布背景模型等[43]。
基于帧间差分的目标检测又称为帧间差分法或帧差法,其原理是在连续的图像序列中将相邻的两帧图像像素值做差得到差帧图像,再通过阈值分割得到运动目标图像。在帧差法中,阈值分割中选取的阈值尤其重要,阈值过小会导致噪声过多,阈值过大会使运动目标无法被有效地检测[46];其次,帧间时间的选取也很重要,间隔太短,运动目标运动的距离过短,也会导致检测失败[47]。但相较于背景差分法,帧差法的优点是无需考虑背景的更新情况,且该方法更新速度快、计算量较小。
光流法是基于光流场的运动目标检测方法。当在图像中每一像素点上添加一个运动矢量后,整个图像形成了矢量运动场,即光流场。光流场可被认为是图像中每个像素点的运动趋势的集合,当某一像素点与临近区域的像素点产生相对运动时,像素点的运动矢量会出现差异,此时把运动矢量相似的像素点集合形成运动区域,从而检测出运动目标[48]。光流法的优点是运动目标的检测不需要收集背景环境中的任何信息;其缺点是抗噪能力差,且计算方法过于复杂,很难实现实时的运动目标检测[49]。
2.3.2 运动目标跟踪
运动目标跟踪即通过对图像序列的分析,从图像第一帧开始,在后续的图像中确认目标的位置[50]。一个运动目标跟踪系统通常包括外观模型、运动(位置)模型、搜索策略(即匹配机制)以及适应外观模型的持续变化的学习机制[51-52]。根据对目标进行搜索时采用信息的不同,可以将运动目标的跟踪方法分为3种:基于特征的运动目标跟踪、基于区域的运动目标跟踪以及基于活动轮廓的运动目标跟踪[53]。
基于特征的运动目标跟踪包括目标特征的提取和特征的搜索匹配两个过程。常见的特征包括鱼体的外部尺寸、明度值、颜色直方图等[50]。Pinkiewicz等[54]提取了跟踪物体的中心坐标、主轴长和次轴长以及外围尺寸和离心率等目标特征,通过离心率判断检测出的物体是否为鱼体。由于快速跟踪的要求,基于特征的运动目标跟踪经常需要结合运动模型,采用预测算法对后续图像序列进行预测以缩小搜索范围以及优化搜索过程,常用的方法有粒子滤波等[55-56]。
基于区域的运动目标跟踪需要选择包含运动目标的区域作为模板,在运动目标检测后,利用搜索算法搜索与模板相关系数最高的区域,由此实现目标的跟踪[53]。该方法搜索耗时长,且在出现遮挡情况时容易出现匹配和跟踪失败的情况[57]。因此,该方法普遍会结合预测算法以缩短搜索时间。Lin等[58]利用卡尔曼滤波作为预测算法,将鱼体看作点模型,通过计算鱼体的速度和加速度来预估鱼体位置。
基于活动轮廓的运动目标跟踪算法中最重要的部分是主动轮廓模型,也称为Snake模型[59]。该模型不仅将图片本身的灰度信息考虑在内,还会利用目标的整体轮廓,使跟踪更加准确。由于该模型在跟踪方面的优势,使其得到广泛应用[60-62]。此方法的特点是跟踪效果受初始化的影响较大;且当物体运动速度较快时,跟踪效果不理想;同时易受噪声的干扰;且在多目标的跟踪中存在跟踪失败的可能性。
3 计算机视觉技术在水产养殖鱼类行为中的应用现状
3.1 计算机视觉技术在游泳行为中的应用现状
计算机视觉技术在游泳行为的观察研究中应用较早。早期Israeli等[5]以金鱼为研究对象,利用两台摄像机分别在方形养殖池的正前方和正上方进行拍摄,对得到的图像进行灰度化处理并采用阈值分割得到鱼体轮廓,在每张图像中建立统一坐标轴以得到鱼体坐标,以此计算得到鱼体在3个方向上的坐标和标准差,从而研究低氧胁迫(1 mg/L)下鱼群的行为反应。之后Xu等[63]也进行了类似的研究,利用计算机视觉观察溶氧突发性波动情况下 (6.8 mg/L~1.5 mg/L~0.8 mg/L~0.3 mg/L~6.8 mg/L)鱼类游泳行为的变化情况。Kane等[33]以底鳉为研究对象,将12条鱼分别单独放置在12个容器中,利用计算机视觉技术观察鱼体在MS222暴露情况下的游泳行为变化情况,结果表明,在毒物暴露环境中,底鳉的运动所占百分比、速度、与中心的距离、相对速度爆发频率显著增加,而游泳路径的复杂性显著降低。Miller等[64]还研究了鱼体在捕食者压力下的游泳行为反应,试验利用计算机进行观察,并结合人为标记运动目标的方式进行跟踪,从而对鱼体的行为进行量化,结果发现,捕食者的出现会使得鱼群密度有一个短暂的增加,而计算机视觉能够很好地量化这一过程。
除人为环境影响之外,许多研究人员还将计算机视觉技术应用于鱼类游泳行为与自然环境因子之间的关系中。Pinkiewicz 等[54]以大西洋鲑为研究对象,运用背景差分法检测出运动鱼体,并提取鱼体的中心坐标、外围尺寸和离心率等目标特征,并把这些尺寸量化为鱼体的速度和方向,以此研究鱼体速度及方向与潮汐周期之间的关系,结果发现,鱼体速度和方向与潮汐周期在日间试验中没有明显的关系,但在投喂饲料之后,鱼体的游泳速度和方向出现了明显的变化。Yan等[65]在鱼体上做标记,并通过摄像机拍摄图像,利用鱼体和背景中的灰度差异检测和跟踪鱼体,研究了鲤鱼和鳟鱼在不同流速下的游泳行为适应,结果显示,鱼体是通过身体的摆动实现游泳速度的变化,其中,与鳟鱼相比,鲤鱼的摆动周期更长,且摆动幅度更大;同时,鲤鱼在适应速度的过程中依靠其摆动频率和摆动幅度的剧烈变化,而鳟鱼主要是通过控制摆动频率来改变速度。
在鱼群内部联系方面,Salierno等[66]以底鳉为研究对象,研究鱼群在适应环境过程中的集群和聚集行为,试验将采集到的图像通过Adobe软件进行分割之后运用Videoscript软件进行跟踪,对得到鱼体的横纵坐标运用最小二乘法确定路径,并分析鱼群中鱼体之间的夹角平均值和鱼体的距离均值,结果显示,集群行为主要在驯化的第1天出现(因为鱼群的自我保护),而在前24 h中鱼群中两条鱼之间的夹角平均值为54.5°,但在1 d之后,夹角平均值增加到80°,表明鱼群在驯化过程中集群行为逐渐弱化,个体间的交流减少。Suzuki等[67]利用摄像机拍摄并跟踪养殖池中的三线矶鲈,研究其个体与群体游泳状态下的差异,结果发现,当鱼群中个体数目增多时,鱼体将不再沿着养殖池壁游动,而是在养殖池的某一区域进行活动,并且鱼群中个体与养殖池壁的平均距离随着鱼体数目的增加呈指数型增长。
尽管目前已经利用计算机技术进行了许多环境因子变化与游泳行为反应之间的研究,但大多环境刺激因子都集中于低氧或毒物暴露等压力因子,对温度、pH或鱼群密度等压力因子研究的较少。并且在部分研究中,计算机视觉技术在处理过程中仍需要结合人为标记等操作进行应用,这与计算机视觉技术省时省力的特点相违背。
3.2 计算机视觉技术在摄食行为中的应用现状
对于计算机视觉技术在水产养殖中鱼类摄食行为的应用,目前主要是通过计算机视觉技术实时监测鱼类行为并量化其摄食强度,以此进行投饲决策。Liu等[45]以大西洋鲑为研究对象,利用帧差法将两张连续帧相减得到差帧中所有像素强度之和作为鱼群的摄食强度,再利用插值法替代检测出的错误值,之后计算基于计算机视觉得到的结果与基于人为观察得到的摄食情况,并记录这两者的相关性,结果显示计算机视觉与人为观察有0.919 5的相关系数。在部分基于计算机视觉技术的鱼类摄食行为研究中,由于一般不需要计算鱼体的速度、方向等参数,因此并不需要对鱼体进行跟踪,而是通过量化当前图像序列中鱼群整体的摄食强度值来进行投饲决策。Zhou等[68]利用近红外拍摄系统来量化鱼群的摄食行为,实验在提高图像的灰度和对比度的基础上利用背景差分法提取鱼体,将图像中鱼体的形心作为狄罗尼三角剖分的顶点,通过狄罗尼三角剖分计算鱼类摄食行为群集指数,再与人为观察鱼群活跃程度并记录的结果进行相关性分析,结果显示,两者的相关性达到了0.945。Sadoul等[44]以虹鳟为研究对象,利用中值滤波和高斯滤波对灰度图进行平滑处理,再通过背景差分检测鱼体,通过对每一张图像中所有鱼体的周长进行求和来计算鱼群的分散指数,以此估计鱼群的游泳活动,结果发现,在投放饵料之后就出现了游泳活动增强以及鱼群分散度降低,但鱼体的速度和方向也可以作为鱼群摄食强度的一部分来参与量化过程。Zhao等[69]提出一种改进的动能模型来量化鱼群的摄食强度,模型由鱼群的离散程度和空间行为特征综合得到,其中离散程度是通过鱼群的速度和转角(由光流法提取得到)以及鱼群整体的熵值来确定,而空间行为特征是基于水面的反射区域计算得到。
除此之外,目前还有部分研究者将计算机视觉技术应用于鱼类摄食行为中,以研究摄食行为与外部刺激的联想机制或者研究摄食行为与水体环境变化之间的关系。Doyle等[70]研究了斑马鱼的摄食行为与学习及记忆能力之间的关系,通过在声学刺激(FM扫频)和光学刺激(绿色LED照明)之后进行延迟投饲,从而给鱼体建立联想机制,实验利用摄像机进行拍摄并进行手动跟踪,从而计算鱼体的横纵坐标,以此分析鱼体的位置变化,结果显示,鱼体能够建立投饲与刺激之间的联系,并保存这种记忆至少2 d,而在16 d之后,记忆会出现衰退。Wu等[71]基于鱼群在争抢饵料时的养殖区域水流变化会导致溶氧质量浓度变化这一现象,通过监测养殖区域内的溶氧质量浓度变化来确定鱼群的食欲,利用摄像机拍摄图像实时量化鱼群的群集指数以及争抢强度,同时利用推理系统通过鱼体的食欲来确定投饲的阈值, 结果显示,溶氧的变化与鱼群的摄食行为有一定的正相关关系,且推理系统的最优状态下检验误差为0.077 3,同时,以图像观测得到的鱼群的摄食强度为标准得到的投饲决策的阈值为0.17,此时推理系统的准确性达到了97.89%。
在鱼类摄食强度的量化中,鱼体的速度和转角应作为鱼类摄食活跃程度的一部分来参与量化,今后的研究应适当考虑构建包括速度、转角等表示鱼群活跃程度的综合评价参数来对鱼类的摄食强度进行量化。
3.3 计算机视觉技术在体色变化中的应用现状
由于养殖环境中普遍存在水体混浊度高和光线弱的问题,体色变化在RGB颜色空间中并不明显。因此在基于计算机视觉技术的鱼体体色变化研究中,需要将图像转化为HSV色度空间,并在色度空间中挑选鱼体与环境差异最为明显的分量进行量化[72]。李贤等[73]将拍摄得到的图像转化为HSV颜色空间,选取V分量进行观察,在运用最大类间方差法分割得到鱼体图像后,选取CIE-Lab颜色空间作为体色量化标准,计算鱼体体色灰度变化速率,结果发现,大菱鲆幼鱼对于不同的背景颜色具有主动选择性,偏爱于浅色背景。徐建瑜[30]对图像序列进行滤波去噪、图像增强等一系列预处理步骤后,采用最大类间方差法分割图像得到鱼体图像,之后将得到的RGB图像转化为HSV颜色空间,将获得的鱼体明度值与校准后的无色玻璃覆盖的灰阶明度值进行比较,以获得的鱼体的明度阶值表示鱼体的体色明暗程度,从而实现对鱼体体色的量化。
目前关于计算机视觉技术在鱼体体色变化中的应用较少,且仍是单纯地利用计算机视觉技术观察鱼体在适应背景色中的体色变化情况,较少的研究由刺激因子导致的体色变化,并且很少与游泳行为以及摄食行为的变化相结合。
4 展望
作为目前鱼类行为学研究的主流技术,计算机视觉受到国内外鱼类行为学研究者的高度关注并发展迅速。但同时,由于鱼类生活环境的复杂性,计算机视觉技术在研究鱼类行为方面的问题仍然存在。之后的研究重点可以在参数设置、算法统一以及新成像技术3个方面进行延伸:1)在多目标的目标跟踪复杂性较强的情况下,研究鱼群整体参数,如群体活跃程度和摄食强度等参数的量化方法及其统一化。2)在目前研究的算法较为散乱的状况下,针对特定种类和养殖环境,建立能够适应一定养殖条件和特定种类的识别和量化的模型。3)根据目前成像系统的发展,将更多的成像系统应用于鱼类行为观察中,以期为之后鱼类行为更方便快捷和有效的识别奠定基础。
□