文章快速检索          高级检索
  南方水产科学   2018, Vol. 14 Issue (5): 109-114.  DOI: 10.3969/j.issn.2095-0780.2018.05.014
0

 

引用本文 [复制中英文]

袁永明, 施珮. 基于图像处理的鱼群运动监测方法研究[J]. 南方水产科学, 2018, 14(5): 109-114. DOI: 10.3969/j.issn.2095-0780.2018.05.014.
[复制中文]
YUAN Yongming, SHI Pei. Study on fish movement monitoring method based on image processing[J]. South China Fisheries Science, 2018, 14(5): 109-114. DOI: 10.3969/j.issn.2095-0780.2018.05.014.
[复制英文]

资助项目

中国水产科学研究院中央级公益性科研院所基本科研业务费专项资金(2016HY-ZD1404);现代农业产业技术体系建设专项(CARS-46)

作者简介

袁永明(1961 — ),男,研究员,从事渔业信息技术研究。E-mail: yuan@ffrc.cn

文章历史

收稿日期:2018-04-08
修回日期:2018-05-02
基于图像处理的鱼群运动监测方法研究
袁永明 1,2, 施珮 1    
1. 中国水产科学研究院淡水渔业研究中心,国家特色淡水鱼产业技术研发中心,江苏 无锡 214081;
2. 农业农村部淡水渔业和种质资源利用重点实验室,江苏 无锡 214081
摘要:鱼类运动行为的观察能够为鱼类健康监控提供直观信息,而通过人工标定的方式监测鱼群运动行为耗时长、效率低。文章针对鱼类运动行为的监测问题,提出一种基于图像处理技术的罗非鱼运动监测方法。首先利用计算机、CCD高清摄像机获取鱼群运动视频,再对图像进行滤波去噪、灰度等处理;通过Ostu阈值分割法改进Canny边缘检测算法提取鱼群的边缘轮廓;在建立鱼群运动模型的基础上结合目标关联匹配算法,实现罗非鱼运动行为的跟踪和监测。结果显示鱼群的个体检出率为98.96%,轨迹完整度为97%。提出的算法比卡尔曼滤波的轨迹跟踪监测效果略有提升,能够较好地完成鱼群的运动跟踪和动态监测。
关键词鱼群    运动行为    监测    图像处理    扩展卡尔曼滤波    
Study on fish movement monitoring method based on image processing
YUAN Yongming1,2, SHI Pei1    
1. National Special Freshwater Fishery Industry Research Center; Freshwater Fisheries Research Center, Chinese Academy of Fishery Sciences, Wuxi 214081, China;
2. Key Laboratory of Freshwater Fisheries and Germplasm Resources Utilization, Ministry of Agriculture and Rural Affairs, Wuxi 214081, China
Abstract: Observation of fish behavior provides rich visual information for fish health monitoring. However, the method of monitoring the fish behavior by manual marking is time-consuming and inefficient. In order to solve the problem of fish behavior monitoring, a method of monitoring tilapia movement based on image processing is proposed. These fish movement videos were first collected by computer and CCD camera, and then pretreated by graying and filtering. The Canny detection algorithm improved by Otsu was used to extract the edge of fish. Based on modelling the motion of fish school and combining the objective matching algorithm, the tracking and monitoring of fish school can be realized well. The results show that the individual detection rate of fish school was 98.96%, and the trajectory available factor (TAF) was 97%. The proposed algorithm can improve monitoring performance, better than Kalman algorithm, and can realize fish school tracking and monitoring.
Key words: fish school    movement behavior    monitoring    image processing    extended Kalman filter    

在水产养殖中,鱼类对养殖环境的喜好体现在鱼群不同的运动行为[1]。而鱼的运动轨迹更能在一定程度上反映鱼与养殖水体是否合适[2-3]。为了获取鱼的运动行为,需要通过研究大量轨迹之间的关系,进而分析群体运动行为特点。因此,准确地获取鱼群运动轨迹显得尤为重要。

近年来,通过图像处理的方式识别运动群体的技术发展迅速[4]。Miller和Gerlai[5]通过人工标定方法获取斑马鱼(Danio rerio)鱼群运动轨迹,但该方法耗费很多人力,也会因人为问题发生错误;范良忠等[6]提出将帧间差分法与运动平均背景建模相结合对鱼类运动进行检测,不过其对鱼群运动的监测研究较少;江丹丹和桂福坤[7]提出了将图像处理技术结合计算机编程的视频处理方法,通过预处理和目标分割获取鱼体,利用形心点模拟鱼类运动轨迹,但对运动跟踪算法局限在点到线的连接模拟;朱佩儒等[8]提出了一种基于统计学习的鱼头检测器,通过给斑马鱼的运动过程建立运动模型,结合卡尔曼滤波和全局匹配算法完成鱼群的检测和运动跟踪,却没有考虑其建立的状态方程和观测方程多为非线性;张琪和韩战钢[9]提出了鱼群轨迹追踪算法,通过背景去除法检测鱼群,在不进行状态预测的前提下建立目标数据关联模型,但在易变环境或光线变化明显的条件下,无法建立固定的背景模型提取运动鱼体;Teles等[10]提出一种用于检测NaOCI的视频跟踪系统,利用2种概率神经网络算法完成跟踪检测;Saberioon和Cisar[11]利用三维单点成像传感器实时获取三维环境信息,在水族箱中实现罗非鱼鱼群的视频轨迹跟踪,因整个轨迹的跟踪需基于最新的结构光传感器,成本耗费较大;Mao等[12]针对视频跟踪中的鱼群遮挡问题利用几何学、光学原理提出了一种新型的镜面成像3D鱼群检测方法,由于实验对水族箱形状和环境都有特殊要求,在实际应用中有一定局限性。

本文在现有鱼体运动监测技术基础上[5-12],将改进的Canny检测算法和扩展卡尔曼滤波(EKF)应用在鱼群运动监测上,提出适用的多目标鱼群运动检测和跟踪算法。改进的检测算法能够实现鱼体轮廓检测,获取鱼体运动信息。使用的跟踪算法将运动模型与目标关联匹配算法结合在一起,完成鱼群的运动轨迹跟踪。该算法能较好地监测不同环境条件下的运动鱼群,有较好的识别性能,可为鱼群运动行为分析提供理论基础。

1 材料与方法

多目标跟踪通过确定多个目标在视频图像中的位置信息,对目标的运动状态进行估计,同时预测目标在下一帧中的运动特征,进而根据所获取的特征对视频中的目标进行连接匹配,实现连续准确地跟踪和定位[13-14]。多目标跟踪的主要步骤包括视频输入、图像处理、目标检测、目标追踪、目标关联、跟踪输出和数据校正等7个部分。

本研究在目标检测中,使用改进的Canny算子结合鱼群灰度特征进行运动目标提取,对于部分交叉遮挡情况,使用形态学操作进行分割,在保证目标检测效果的同时提高鱼群被检测效率。在目标追踪上,基于鱼群的运动特征,使用扩展卡尔曼滤波器建立运动模型,改变卡尔曼滤波器的线性算子为非线性算子,实现运动状态估算。通过实验对比,本文所提出的方法在检测性能和跟踪性能上都有较好的结果,尤其在实验室鱼群密度较小、运动速度快的情况下,能获取较好的追踪效果,从而为后期鱼群行为分析奠定基础。

1.1 视频图像处理

本研究中视频录制于养殖水槽环境下,在不影响鱼群运动行为的前提下对环境中的光照、温度、水体等进行控制(例如水温需要控制在跟踪鱼群的正常行为水温下),使用固定好的高分辨率专用摄像机,提高获取视频的清晰度和稳定性。实验平台的装置图见图1。本研究中拍摄的目标运动视频都以avi格式保存,获取的视频图像数据均存储在服务器上。获取到的视频经过图像提取和预处理,转换成后期检测算法需要的格式。鉴于图像采集环境有所不同,如拍摄的光照条件、拍摄设备本身或其他人为因素等,使得采集的图像存在一定噪声。为了得到较为一致的图像,需要对所有获取的图像进行预处理操作。

图 1 实验装置图 Fig.1 Diagram of experiment device
1.2 目标检测

运动目标检测的目的是通过对运动目标进行分析,在图像预处理之后,从图像数据序列中提取出每个运动目标,为目标追踪和行为分析提供对象[15]。本文采取Canny边缘检测算法提取目标轮廓,能够保留图像中的大部分信息,且减少后续目标识别中的伪信息量。将阈值分割算法(Otsu)应用在Canny算子的高门限值选择上,结合形态学处理,提取鱼群中的运动目标,避免了一些算法中对背景提取要求较高、目标提取实时性不强的问题。

1.2.1 边缘检测算法

边缘检测是通过采用某种算法来提取图像中那些与邻域灰度有明显反差的对象[16]。传统的边缘检测在估算图像灰度变化的梯度方向时,使用梯度算子或者一阶导数检测器,通过设置一个门限值来界定其边缘。依据一阶或二阶微分算法,研究者提出了差分边缘检测算子、Sobel算子和Laplace算子等[17]。在众多边缘检测算法中,Canny算法以其高信噪比和高检测精度得到了广泛应用[18-20]

Canny边缘检测算法采用最优化数值方法,能够获得最佳边缘检测模板。在实际应用中,高斯函数的一阶导数通常选作Canny算子阶跃状边缘的次最优化算子。Canny边缘检测算法的主要步骤:

1) 读入图像I

2) 基于高斯滤波器平滑处理图像II=I(xy)为输入图像,I′=I′(xy)为平滑后图像,G=G(xy)为高斯函数,*为卷积。

3) 分别计算梯度方向和幅值。沿行利用G对图像I做卷积运算得到x分量图像Ix,沿列利用G对图像I做卷积运算得到y分量图像Iy。再利用GxIx进行卷积运算得到 ${I_x'} $ ,即利用高斯函数的导数对Ix分量进行卷积运算,然后利用Gy ${I_x'} $ 进行卷积运算得到 ${I_y'} $

$I_x'(x,y) \approx \frac{{[I(x + 1,y) - I(x,y) + I(x + 1,y + 1) - I(x,y + 1)]}}{2}$ (1)
$I_y'(x,y) \approx \frac{{[I(x,y + 1) - I(x,y) + I(x + 1,y + 1) - I(x + 1,y)]}}{2}$ (2)

结合x分量和y分量分别计算梯度幅值(M)和方位角(θ)。

$\quad\quad\quad \quad\quad M[x,y] = \sqrt {I_x'{{(x,y)}^2} + I_y'{{(x,y)}^2}} $ (3)
$\quad\quad \quad\quad\quad \quad \theta [x,y] = \arctan \left( {\frac{{I_x'(x,y)}}{{I_y'(x,y)}}} \right)$ (4)

4) 对梯度幅值进行极大值抑制。仅仅利用图像的全局梯度值不能够确定检测边缘,所以还需保留局部梯度的最大点,以期抑制非极大值,从而细化梯度幅值图像产生的宽边缘问题。

5) 双阈值法提取边缘。对非极大值抑制图像设置高低阈值ThTl,将大于Th的像素灰度设为0,获得图像a。将大于Tl的像素灰度设为0,获得图像b。经过阈值处理,图像a的非零像素少于图像b,故以图像b为基础,图像a为补充,连接图像边缘,完成边缘提取。

1.2.2 Canny边缘检测改进方案

在图像平滑过程中,Canny算子的性能会受到高斯滤波卷积核宽度和门限值的影响。通过增加高斯卷积核宽度会使得图像的部分细节信息丢失,在降低噪声敏感度的同时也使得目标边缘丢失原有清晰度,同时目标边缘检错率也会随之略有提高。

高阈值Th和低阈值Tl的寻找和设置是边缘检测效果的关键所在。Ostu阈值分割法中基于类间方差最大化的分割算法在众多阈值分割方法中一直被认为是最优的[21]。阈值T由Ostu计算得出,能够将图像分割成背景和目标,而Canny算子中的双梯度门限值事实上也属于阈值。使用Ostu阈值分割方法使得Canny算子中的梯度图像幅值得到放大,背景与目标之间的差别更大,计算出的Ostu阈值更加准确。在某幅图像中,Ostu阈值T为:

$\quad\quad \quad\quad\quad \quad\quad T = \arg \left\{ {} \right.\max [\eta (\tau )]\left. {} \right\}$ (5)

图像背景和目标的类间方差为:

$\quad\quad\quad\quad \quad\; \eta (\tau ) = {\alpha _0}{({\mu _0} - \mu )^2} + {\alpha _1}{({\mu _1} - \mu )^2}$ (6)

其中背景和目标的概率分布为: ${\alpha _0} = \sum\limits_{i = 1}^i {{P_i}} $ ${\alpha _1} = 1 - {\alpha _0}$ ;平均灰度分布为: ${\mu _0} = \displaystyle\frac{{{\mu _i}}}{{{\alpha _0}}}$ ${\mu _1} = \displaystyle\frac{{{\mu _i}}}{{1 - {\alpha _0}}}$ ,且 ${\mu _i} = \sum\limits_{i = 0}^i {i{P_i}} $ ${P_i}$ 为各像素中灰度概率。

为了突出图像的某些特征,仅保留图像中的灰度信息[22],对去噪后的图像进行灰度处理,利用Ostu获得分割阈值和Canny算子,从而获取目标轮廓。再对图像进行二值化,同时为了解决鱼体轮廓之间的粘连,使用腐蚀、膨胀操作获取目标个体。操作获取的灰度图和检测结果见图2

图 2 目标检测灰度图 (a) 和目标检测结果图 (b) Fig.2 Grayscale image of object detection (a) and object detection image (b)
1.2.3 多目标遮挡

在多目标检测过程中,若当前帧检测到的目标个数不等于预先观察的鱼数量,则对这一帧的检测结果进行分析处理。本文中以检测连通区域面积作为判定依据,当检测的鱼体面积明显小于平均鱼体面积时,过滤掉这些噪声点;若检测的鱼体面积明显大于平均鱼体面积时,根据前一帧中鱼体个数进行校正,使用形态学操作对面积异常的连通区域进行多次腐蚀、膨胀操作,从而实现分割的目的。本文中实验视频的交叉遮挡率不高。

1.3 目标跟踪

目标跟踪是在运动物体连续运动的空间中进行采样,获得运动物体的观测信息[23]。目标跟踪过程事实上是一个如何利用观测值估算运动物体运动变量的概率预测问题。在鱼群的运动过程中,每个个体鱼的位置信息是观测变量,需要获取的位置和方向信息为状态变量,对鱼群的跟踪可以定义为对状态变量位置信息和方向信息的预测问题。

鱼群运动本身具有多变性和复杂性,在鱼群运动中经典卡尔曼滤波往往不适用于非线性状态方程和观测方程。本文选择扩展卡尔曼滤波器[24]对鱼群进行跟踪,通过泰勒展开将非线性转化为线性,即根据当前鱼群状态,估算其下一时刻的位置信息。其状态方程和观测方程如下:

$\quad \quad\quad\quad\quad\quad X(k + 1) = f[k,x(k)] + v(k)$ (7)
$\quad\quad\quad\quad\quad\quad Z(k) = h[k,X(k)] + W(k)$ (8)

其中X(k)为k时刻状态向量,X(k+1)为k+1时刻状态向量;Z(k)为k时刻观测向量;v(k)为过程噪声,w(k)为观测噪声,假定其均为零均值高斯白噪声;x~(k|k)=E[x(k)|Zk],对公式(7)进行泰勒展开,得到一阶扩展卡尔曼滤波的一步预测状态方程和一步预测协方差:

$\quad\quad\quad\quad\quad\quad \mathop x\limits^ \wedge (k + 1|k) = f[k,\mathop x\limits^ \wedge (k|k)]$ (9)
$\quad\quad\quad\quad\; p(k + 1|k) = {f_x}(k)p(k|k)f_x'(k) + Q(x)$ (10)

观测方程:

$\quad\quad\quad\quad \;\; \mathop Z\limits^ \wedge (k + 1|k) = h[k + 1,\mathop X\limits^ \wedge (k + 1|k)]$ (11)

扩展卡尔曼增益为:

$\quad\quad\quad\; K(k + 1) = p(k + 1|k)h_x'(k + 1){S^{ - 1}}(k + 1)$ (12)

状态更新方程为:

$\begin{align}\quad \quad \mathop X\limits^ \wedge (k + 1|k + 1) =& \mathop X\limits^ \wedge (k + 1|k) + K(k + 1) \{ Z(k + 1) - \\ & h[k + 1,\mathop X\limits^ \wedge (k + 1|k)]\} \end{align}$ (13)

本文跟踪处理的视频中鱼群运动过程可近似为匀速运动,鱼的状态变量Xk=[xkykθkxk-1yk-1θk-1]T,表示当前帧和前一帧中个体鱼的质心位置坐标和运动方向;观测变量Zk=[xkykθk]T,表示检测到的图像中鱼体质心位置坐标和运动方向。由此可得其状态转移矩阵和观察矩阵分别为:

$F = \left[ {\begin{array}{*{20}{c}} 1&0&0&0&0&0 \\ 0&1&0&0&0&0 \\ 0&0&1&0&0&0 \\ 1&0&0&1&0&0 \\ 0&1&0&0&1&0 \\ 0&0&1&0&0&1 \end{array}} \right]\;\;H = \left[ {\begin{array}{*{20}{c}} 1&0&0&0&0&0 \\ 0&1&0&0&0&0 \\ 0&0&1&0&0&0 \end{array}} \right]$
1.4 目标关联

多目标追踪过程中,在当前帧检测到多个目标,同时前一帧中也检测到多个目标。故前后帧之间检测到的多目标之间需要建立一种连接对应关系。当被跟踪对象的外观极为相似时,通过目标对象的外观纹理进行目标关联会存在一些问题。本文将目标关联问题作为最优问题处理,力求获得每个追踪鱼体的全局最优解。

若在前一帧中检测的目标个数为m,目标对象观察值 $d_t^i$ $\theta _t^i$ 分别表示第i个鱼体的质心坐标和运动方向;当前帧中检测目标为n个,目标对象观察值 $d_t^j$ $\theta _t^j$ 分别表示第j个鱼体的质心坐标和运动方向;定义1个mn列的代价矩阵 ${C_{m \times n}}$ ,该矩阵中各元素C(ij)表示前一帧中第i个对象与当前帧中第j个对象关联的代价值,为了表征这个代价矩阵,将鱼体质心位置之间欧式距离和方向差异度作为代价矩阵的计算依据[4]

$\quad\quad\quad Dist(i,j) = \left\{ \begin{aligned} {\displaystyle\frac{{\left\| {d_t^i - d_t^j} \right\|}}{{{\delta _d}}}{\rm{ }}\quad {\rm if}\;\;\left\| {d_t^i - d_t^j} \right\| \leqslant {\delta _d}} \\ {1\;\;\;\quad\quad\quad{\rm other}}\quad\quad\quad \end{aligned} \right.$ (14)
$\quad\quad\quad\quad\quad \theta (i,j) = \left\{ \begin{aligned}&{\displaystyle\frac{{\left| {\theta _t^i - \theta _t^j} \right|}}{{{\delta _\theta }}}{\rm{ }}\quad {\rm if}\;\;\left| {\theta _t^i - \theta _t^j} \right| \leqslant {\delta _\theta }} \\ &{\quad1\;\quad\quad\;\;\;\;\;\;{\rm other}} \quad\end{aligned} \right.$ (15)

式中Dist(ij)为目标距离代价值, ${\delta _d}$ 为距离阈值; $\theta (i,j)$ 为方向代价值, ${\delta _\theta }$ 为方向阈值(本文中取30°)[5];参数ab分别为权值,定义代价矩阵为:

$\quad\quad\quad\quad C(i,j) = aDist(i,j) + b\theta (i,j)\quad{\rm{ }}a + b = 1$ (16)

定义矩阵S(i, j),当S(i, j)=1时,表明当前帧第j个目标与前一帧第i个目标建立了关联,目标关联问题变为矩阵S的求解问题,故当目标关联问题中的代价函数达到最小时,可获得公式(17):

$S = \arg \min \sum\limits_{i = 1}^m {\sum\limits_{j = 1}^n {C(i,j)} } S(i,j){\rm{ }}\quad \left\{ \begin{aligned} &{{\rm if}{\;{ n}} \leqslant {{m }}\;\;\sum\limits_{j = 1}^n {S(i,j)} = 1} \\ &{{\rm if}{\;{ n > m }}\;\;\sum\limits_{i = 1}^m {S(i,j) = 1} } \end{aligned} \right.$ (17)

对于矩阵S的求解问题,可利用匈牙利算法求其最优解。同时,前后帧目标的关联需满足下述条件:

$\quad\quad\quad\quad\quad\quad\; C(i,j) \leqslant 1\;\;{\rm{ }}{\rm if}{\rm\;\;{ }}S(i,j) = 1{\rm{ }}$ (18)
2 结果与分析

选择5尾罗非鱼水花作为实验对象,在养殖水槽中完成视频拍摄;视频帧率为32帧·s–1,视频尺寸为1 920×1 080像素,摄像机放置于水槽正上方,便于拍摄到鱼群运动的整个画面。当罗非鱼受到外界刺激时开始拍摄,从中选取较为活跃的500帧(时长15 s)来验证上述视频追踪算法。使用Matlab实现所有程序并运行在Windows 7专业版操作系统上,计算机处理器为AMD X4 750 3.4 GHz,内存为4 G。

本文中的鱼群目标检测结果将每一帧图像中目标数据与实际目标数据进行对比,采用目标检出率P,漏检率L,检错个数F来衡量鱼群检测结果:

$\quad\quad\quad\quad\quad\quad\quad\; P = \frac{{{T_p}}}{{{T_a}}},\;L = \frac{{{T_l}}}{{{T_a}}}$ (19)

式中Tp为在检测的所有帧中正确检测的结果数;Ta为所有帧中应该检测到目标个体;Tl为没有检测到目标的结果数。

实验结果表明,使用Ostu阈值分割改进的Canny边缘检测的鱼体检测率达到98.96%,说明系统不会将其他噪声点误认为目标个体。在500帧图片中个体漏检率仅为0.48%,检测到非鱼体次数仅14次,说明系统目标丢失概率较低。

为了验证跟踪算法的效果,本文选取卡尔曼滤波算法作为跟踪效果的对比算法。本文中的跟踪算法将每条轨迹之间关联起来,鱼群的追踪性能使用轨迹断裂程度(TFF)和轨迹完整程度(TAF)来衡量。在多目标跟踪过程中,各运动目标的轨迹可能由多条轨迹片段拼接而成,所有轨迹片段数总和与实际多目标应该获得的轨迹数的比值即为TFF。获取的轨迹片段数一定大于真实轨迹数,故TFF必定大于1;同时TFF越大,表明获得的轨迹片段越多,算法的跟踪性能越差。TAF表示获取的轨迹片段覆盖真实轨迹的帧数与真实轨迹长度之间的比值。TAF越小,则表明算法保留的信息更多,轨迹更完整。

表1为轨迹跟踪性能统计表。本文所用跟踪算法获取10条轨迹,对比卡尔曼滤波算法获得了18条轨迹。表1显示,对比跟踪算法的TFF是本文跟踪算法TFF的1.8倍,说明本文算法的断裂程度要明显好于对比算法;并且本文算法的轨迹完整度TAF比卡尔曼滤波的TAF高3.4%,表明扩展卡尔曼滤波算法能获取更为完整的轨迹。

表 1 轨迹跟踪统计表 Tab.1 Trajectory tracking statistics

为了呈现实际跟踪效果,图3为实际跟踪轨迹图,显示了5尾鱼在500帧(15 s)内的运动轨迹。z轴为帧序号。由图3可知目标跟踪方法断裂程度低,轨迹完整度高,对丢失和错检的鱼体有很好的容错性,能实现鱼群的稳定跟踪。

图 3 鱼群轨迹跟踪结果图 Fig.3 Fish school trajectory tracking results

图3的鱼群运动轨迹可以发现,鱼群在运动过程中,在监控时间段内轨迹存在一定的相似性和时滞性——即在不受外界突然刺激或干扰的条件下,鱼群的运动呈现出较强的群体性和跟踪性。

3 结论

复杂动态的鱼群生活环境使得鱼体运动检测具有一定难度。通过CCD摄像头采集大量原始视频和图片,经过图形去噪、灰度处理,再由Ostu阈值分割改进Canny检测,提取鱼体的边缘特征,获取监测鱼体,是本研究实现鱼群运动监测的基础和依据。

扩展卡尔曼滤波是将卡尔曼滤波器扩展到非线性领域的一种状态方程,在处理目标运动跟踪时有较高的效率和实用性。本文提出基于扩展卡尔曼滤波算法和目标关联算法相结合的鱼群运动跟踪算法,建立鱼群运动模型,通过前一时刻运动状态预测后一时刻的鱼群运动位置、方向信息,完成轨迹连接。由大量运动图像的鱼体检测和跟踪实验得出结论:本文的改进Canny检测算法对部分漏检、错检问题有一定的容错性,与传统卡尔曼相比,扩展卡尔曼的跟踪算法对短暂遮挡、错误有一定的容忍性,轨迹完整度有一定提高,能体现跟踪算法的优势。

本文提出的算法具有一定的适用性,可以应用于其他生物的二维运动轨迹跟踪,但在目标长时间遮挡的情况下,仍存在一定的跟踪误差,这将是后期工作的研究方向;同时,基于获取运动轨迹的鱼群行为分析也将是今后研究的重点。

参考文献
[1]
张慧. 鱼类群体行为特性分析及应激仿真技术研究[D]. 舟山: 浙江海洋大学, 2017:1-7.
[2]
颜鹏东, 谭均军, 高柱, 等. 基于视频跟踪的竖缝式鱼道内鱼类运动行为分析[J]. 水生生物学报, 2018, 42(2): 250-254.
[3]
谭均军, 高柱, 戴会超, 等. 竖缝式鱼道水力特性与鱼类运动特性相关性分析[J]. 水利学报, 2017, 48(8): 924-932.
[4]
李相军, 李壮. 地面红外运动目标图像处理与识别算法分析[J]. 舰船电子工程, 2013, 33(5): 53-56. DOI:10.3969/j.issn.1627-9730.2013.05.018
[5]
MILLER N, GERLAI R. Quantification of shoaling behaviour in zebrafish (Danio rerio) [J]. Behav Brain Res, 2007, 184(2): 157-166. DOI:10.1016/j.bbr.2007.07.007
[6]
范良忠, 刘鹰, 余心杰, 等. 基于计算机视觉技术的运动鱼检测算法[J]. 农业工程学报, 2011, 27(7): 226-230. DOI:10.3969/j.issn.1002-6819.2011.07.040
[7]
江丹丹, 桂福坤. 基于视频图像的鱼类行为轨迹追踪[J]. 浙江海洋学院学报(自然科学版), 2015, 34(2): 112-118. DOI:10.3969/j.issn.1008-830X.2015.02.002
[8]
朱佩儒, 刘烨, 王硕鸿, 等. 基于学习的斑马鱼检测与跟踪[J]. 计算机应用与软件, 2015, 32(9): 227-230, 250. DOI:10.3969/j.issn.1000-386x.2015.09.054
[9]
张琪, 韩战钢. 一种简单有效的鱼群轨迹追踪算法[J]. 北京师范大学学报(自然科学版), 2017, 53(4): 406-411.
[10]
TELES L O, FERNANDES M, AMORIM J A. Video-tracking of zebrafish (Danio rerio) as a biological early warning system using two distinct artificial neural networks: probabilistic neural network (PNN) and self-organizing map (SOM) [J]. Aquat Toxicol, 2015, 165: 241-248. DOI:10.1016/j.aquatox.2015.06.008
[11]
SABERIOON M M, CISAR P. Automated multiple fish tracking in three-dimension using a Structured Light Sensor[J]. Comput Electron Agric, 2016, 121: 215-221. DOI:10.1016/j.compag.2015.12.014
[12]
MAO J F, XIAO G, SHENG W G, et al. Research on realizing the 3D occlusion tracking location method of fish's school target[J]. Neurocomputing, 2016, 214: 61-79. DOI:10.1016/j.neucom.2016.05.067
[13]
石龙伟, 邓欣, 王进, 等. 基于光流法和卡尔曼滤波的多目标跟踪[J]. 计算机应用, 2017, 37(s1): 131-136.
[14]
毛家发, 胡海彪, 程振波, 等. 半遮挡目标鱼体的识别与跟踪方法研究[J]. 浙江工业大学学报, 2015, 43(2): 207-211. DOI:10.3969/j.issn.1006-4303.2015.02.018
[15]
李波. 视频序列中运动目标检测与跟踪算法的研究[D]. 北京: 北京交通大学, 2011: 7-16.
[16]
孙亮, 李敬文. 一种简单的灰度图像边缘检测算法[J]. 兰州交通大学学报, 2013, 32(1): 111-115. DOI:10.3969/j.issn.1001-4373.2013.01.025
[17]
陈益杉, 卢伟, 王玲, 等. 基于GIF-Shearlet算法的新旧土边界线视觉导航技术研究[J]. 农业现代化研究, 2017, 38(2): 343-351.
[18]
郭萌, 胡辽林, 赵江涛. 基于Kirsch和Canny算子的陶瓷碗表面缺陷检测方法[J]. 光学学报, 2016, 36(9): 27-33.
[19]
GOULART J T, BASSANI R A, MAGALHAES BASSANI J W. Application based on the Canny edge detection algorithm for recording contractions of isolated cardiac myocytes[J]. Comput Biol Med, 2017, 81: 106-110. DOI:10.1016/j.compbiomed.2016.12.014
[20]
JIANG W, ZHOU H, SHEN Y, et al. Image segmentation with pulse-coupled neural network and Canny operators[J]. Comput Electr Eng, 2015, 46: 528-538. DOI:10.1016/j.compeleceng.2015.03.028
[21]
林国余, 张为公. 基于进化规划的最大类间方差的图像分割算法[J]. 传感技术学报, 2006, 19(1): 179-182. DOI:10.3969/j.issn.1004-1699.2006.01.043
[22]
刘丽娟, 刘仲鹏, 程芳. 玉米生长期叶部病害图像识别预处理研究[J]. 河南农业科学, 2013, 42(10): 91-94. DOI:10.3969/j.issn.1004-3268.2013.10.023
[23]
朱琳, 周杰, 宋靖雁. 一种新的基于在线采样的多物体跟踪方法[J]. 计算机学报, 2008, 31(1): 151-160. DOI:10.3321/j.issn:0254-4164.2008.01.017
[24]
KULIKOVA M V, KULIKOV G Y. NIRK-based accurate continuous-discrete extended Kalman filters for estimating continuous-time stochastic target tracking models[J]. J Comput Appl Math, 2016, 316: 260-270.