本发明属于视觉伺服控制领域,尤其涉及一种基于视觉伺服的果蝇跟踪方法及系统。
背景技术:
因其基因的可跟踪性、复杂的行为能力和其大脑功能与脊椎动物的相似性,果蝇一直是生物遗传学中的重要研究对象。若要在显微镜下对果蝇这类具有运动能力的目标在一段连续时间内进行跟踪观察,目前仍依赖人工手动调整或者扩大视野范围等简单的方法进行。这些方法操作复杂,而且对于运动能力较强的目标往往无能为力。因此,使用显微视觉伺服控制方法对研究目标进行追踪,可以大大简化操作流程,提高研究的效率。
lincong等人使用视觉伺服方法实现了对幼年斑马鱼的追踪,该方法使用图像处理算法对幼年斑马鱼进行位置估计,误差信号通过pid控制器驱动运动平台进行补偿。然而,与果蝇相比,幼年斑马鱼通体透明,通过相对简单的图像处理就能定位,而且幼年斑马鱼运动能力弱,运动姿态简单,对控制系统的响应频率要求不高。因此,该方法难以直接应用到果蝇的追踪问题上。
dhruvgrover等人提出了flyception果蝇自动跟踪系统,该系统的工作原理是:将果蝇放置在一个下凹圆盘中,使用一个二维检流计镜基于视觉反馈调整光路方向,将果蝇保持在相机视野范围内。检流计镜的高速响应使得系统实现了1000hz以上的高精追踪。然而这套系统具有比较复杂的光路,成本较高,难以集成到现有的显微成像系统中。因此,开发一种适用范围广,使用方便,操作灵活的显微伺服跟踪方法及系统,对于生物研究具有重要意义。
技术实现要素:
本发明的目的是为克服已有技术的不足之处,提出一种基于视觉伺服的果蝇跟踪方法及系统。本发明通过设计果蝇跟踪系统,并结合图像处理算法和卡尔曼滤波算法对目标位置进行估计和预测,开发视觉伺服控制算法对目标进行跟踪,从而实现了对自由运动果蝇的高精度追踪。
本发明提出一种基于视觉伺服的果蝇跟踪方法,其特征在于,包括以下步骤:
1)搭建果蝇跟踪系统;所述系统包括:xy平面位移平台,果蝇容器,玻片夹,带有绿色滤光片的汞灯,相机,红色滤光片,显微物镜,反射镜,光学平台和计算机;其中,果蝇容器使用三块边长均为3厘米的石英玻璃片堆叠而成,其中上下两块玻璃片厚度为1毫米,中间一块玻璃片厚度为2.3毫米,中间一块玻璃片中心有一个直径为1厘米的圆孔,该圆孔为果蝇的运动区域;所述xy平面位移平台固定在光学平台上,玻片夹固定在xy平面位移平台上,果蝇容器通过玻片夹固定在xy平面位移平台1上,带有绿色滤光片的汞灯放置在光学平台上,该汞灯从上往下照射果蝇容器,相机固定在光学平台上,相机前端安装显微物镜,显微物镜前端安装红色滤光片,反射镜通过支架固定在光学平台上,反射镜位于果蝇容器正下方,使得从汞灯发出的光线穿过果蝇容器后经反射镜反射垂直进入相机;所述xy平面位移平台与相机分别连接计算机;
2)调节光路共轴,调节汞灯的光线沿竖直方向,反射镜的反射面与汞灯的光线成45°,调节相机光轴沿水平方向且与汞灯光线通过反射镜形成的反射光线平行,使得汞灯的光线垂直进入相机,沿水平方向调节相机位置直至相机获取的图像清晰;
在果蝇容器壁上涂抹防止果蝇爬壁的试剂,通过基因编辑技术将红色荧光蛋白基因植入果蝇体内,将处理完毕的果蝇转移入果蝇容器的圆孔中;
相机与xy平面位移平台分别初始化,其中,相机分辨率设置为256*320,帧率设置为300hz;
3)使用微型圆形标定板和opencv的相机标定函数标定相机成像模型的内参矩阵mc;
标定xy平面位移平台坐标系fm与相机坐标系fc之间的变换矩阵te;具体方法如下:
将所述微型圆形标定板正面朝下放置在xy平面位移平台上,调整微型圆形标定板的位置使得相机图像视野中出现1个以上圆形,然后将微型圆形标定板固定,调整相机水平位置完成对焦;启动xy平面位移平台,令平台搭载其上部件连续运动30个随机运动量,将每次随机运动量分别在x,y方向上的运动量组成矩阵xm,该矩阵维度为2*30,同时在每次随机运动之前通过计算机从相机提取含有圆形的图像,使用霍夫变换检测标定板上圆形圆心在每张图像中位置,计算连续两张图像的圆心因平台的运动而在像素坐标系中x,y方向上产生的位移量组成矩阵xi,该矩阵维度为2*30,表示30次运动圆心分别在图像中x,y方向上的运动量;
假设矩阵xm和xi存在线性关系,用矩阵t表示:
txi=xm
对矩阵t的估计为:
矩阵t即为xy平面位移平台坐标系fm与相机坐标系fc之间的变换矩阵te;
4)将微型圆形标定板从xy平面位移平台上取下,将装有果蝇的容器通过玻片夹固定在xy平面位移平台上,再次调整相机水平位置完成对焦;启动xy平面位移平台,相机以300hz连续采集图像;记当前时刻k=1;
5)提取当前时刻的图像,记为pk;使用中值滤波算法对图像pk进行降噪滤波;对滤波后的图像进行二值图像阈值处理得到pk对应的二值图像,提取出pk中果蝇眼部初步轮廓;
6)对步骤5)得到的二值图像进行判定:
若该二值图像中白色区域的像素数量小于5000,则果蝇在视野之外,然后重新返回步骤5)直至二值图像中白色区域的像素数量大于等于5000;
若该二值图像中白色区域的像素数量大于等于5000,则果蝇在视野当中,首先使用形态学操作去除该二值图像中小于面积阈值的白色区域,然后使用轮廓提取算法提取出形态学操作完毕后的二值图像中果蝇眼睛的轮廓;若提取出的轮廓数量等于2,则该2个轮廓即为果蝇两眼的轮廓,分别计算2个轮廓的质心位置,然后对2个质心坐标取平均值即为对果蝇头部中心位置在pk中的位置的观测值
若提取出的轮廓数量大于2,则使用k均值聚类算法将形态学操作完毕后的二值图像中所有轮廓聚成两类,分别计算出两类轮廓的质心位置,然后对两类轮廓的质心坐标取平均值作为果蝇头部中心位置在pk中的位置的观测值
7)根据步骤6)中得到的
分别对果蝇在xy两个方向上的运动建立模型;
在x方向上:
其中,过程矩阵
卡尔曼滤波器根据
在y方向上:
其中,果蝇在k时刻的y方向的状态
卡尔曼滤波器根据
最终得到果蝇头部中心位置在图像pk 1中的估计值记为
8)在相机坐标系下,计算果蝇k 1时刻预测位置
根据视觉伺服控制律:
其中,vk为xy位移平台在k时刻至k 1时刻之间的运动速度,为一个二维向量,分别包括xy位移平台在k时刻至k 1时刻之间在x方向和y方向上的运动速度;kp,ki,kd分别为比例系数,积分系数和微分系数;系数α的取值为:
9)根据步骤8)得到的vk,计算xy平面位移平台在当前运动周期内的运动量zm,k=vkδt,δt为一个控制周期的持续时间;
xy平面位移平台按照zm,k进行运动直至k 1时刻,实现当前时刻对果蝇的跟踪;当k 1时刻到来时,令k=k 1,然后重新返回步骤5)。
本发明的特点及有益效果在于:
本发明使用在果蝇眼部表达的红色荧光蛋白作为标记,辅以适当的光路设计,使得相机图像中仅出现果蝇眼部,而滤去了果蝇身体的其他部位和环境的干扰,图像内容的简化使得图像处理算法大大简化,提高了程序运行速度和定位精度,实现了对自由运动果蝇的高精度追踪。而且本发明所提出的果蝇跟踪系统结构简单,易于集成到现有的显微成像系统中,为生物遗传学研究人员对果蝇进行追踪观察带来了便利。
附图说明
图1为本发明方法的整体流程图。
图2为本发明中果蝇跟踪系统结构图,其中上图为侧视图,下图为俯视图。
图3为本发明所设计的光路图。
图4为本发明中图像处理算法的结果示意图。
图中:1-xy平面位移平台;2-玻片夹;3-果蝇;4-光源;5-装果蝇的容器;6-红色滤光片;7-显微物镜;8-相机;9-反射镜,10-光学平台。
具体实施方式
本发明提出一种基于视觉伺服的果蝇跟踪方法及系统,下面结合附图和具体实例对本发明做进一步详细说明如下。以下实施实例用于说明本发明,但不限于本发明的范围。
本发明提出了一种基于视觉伺服的果蝇跟踪方法,整体流程如图1所示,包括以下步骤:
1)搭建果蝇跟踪系统;本发明系统整体结构如图2所示,其中上图为正视图,下图为俯视图;所述系统包括:xy平面位移平台1,果蝇容器5,玻片夹2,带有绿色滤光片的汞灯4(以下简称汞灯),相机8,红色滤光片6,显微物镜7,反射镜9,光学平台10和计算机。所述xy平面位移平台1可采用常规型号,本实施例型号为piu-723,该xy平面位移平台包括执行部分和控制器,通过螺纹连接固定在光学平台10上。果蝇容器5使用三块边长均为3厘米的石英玻璃片堆叠而成,其中上下两块玻璃片厚度为1毫米,中间一块玻璃片厚度为2.3毫米,中间一块玻璃片中心有一个直径为1厘米的圆孔,为果蝇的运动区域。玻片夹2通过螺纹连接固定在xy平面位移平台1上。所述果蝇容器5通过玻片夹2固定在xy平面位移平台1上。汞灯4放置在光学平台10上,从上往下照射果蝇容器5,汞灯发出白光,经过绿色滤光片获得单色性较好的绿色光源。相机8使用可调节支架固定在光学平台10上,可使用常规型号,本实施例采用jaigo-5000m-usb,相机前端安装显微物镜7,放大倍数为2,显微物镜前端安装红色滤光片6。反射镜9通过支架固定在光学平台10上,所述反射镜9位于在果蝇容器5正下方,使得从汞灯4发出的光线可以穿过果蝇容器5,经反射镜9反射可以垂直进入相机8。xy平面位移平台1通过tcp接口与计算机连接,相机8通过usb与计算机连接,计算机用于对相机8采集的图片进行图像处理和计算xy平面位移平台1的运动控制指令,计算机可采用常规型号,本实施例所使用的计算机为msigl75。
本发明系统中各部件均可采用常规型号。
2)完成显微物镜调焦及其他准备工作:调节光路共轴,调节汞灯4的光线沿竖直方向,反射镜9的反射面与汞灯的光线成45°,调节相机光轴沿水平方向且与汞灯光线通过反射镜形成的反射光线平行,使得汞灯的光线可以垂直进入相机,光路图如图3所示。进而沿水平方向调节相机位置直至相机获取的图像清晰为止。
在果蝇容器5壁上涂抹防止果蝇爬壁的试剂,本实施例是在圆孔壁上涂抹byformicaptfeplus试剂以防止果蝇爬壁。通过基因编辑技术将红色荧光蛋白基因植入果蝇3体内,该种基因将会在果蝇眼部表达。将处理完毕的果蝇3转移入果蝇容器5的圆孔中,放在一旁待用。
相机8与xy平面位移平台1分别初始化,相机8分辨率设置为256*320,帧率设置为300hz,xy平面位移平台1控制器的pid参数根据平台的阶跃响应进行调节。
3)视觉伺服系统参数标定;
使用微型圆形标定板(gomcc-008-g-0.65)和opencv的相机标定函数标定相机成像模型的内参矩阵mc,此标定方法为常规方法。
标定xy平面位移平台坐标系fm与相机坐标系fc之间的变换矩阵te;具体方法如下:
将所述微型圆形标定板正面朝下放置在xy平面位移平台上,调整微型圆形标定板的位置使得相机图像视野中出现1个以上圆形,然后将微型圆形标定板固定,调整相机水平位置完成对焦。启动xy平面位移平台,令平台搭载其上部件连续运动30个随机运动量,将每次随机运动量分别在x,y方向上的运动量组成矩阵xm,该矩阵维度为2*30;在每次随机运动之前通过相机获取含有圆形的图像并发送给计算机,使用霍夫变换检测标定板上圆形圆心在每张图像中位置,计算连续两张图像的圆心因平台的运动而在像素坐标系中x,y方向上产生的位移量组成矩阵xi,该矩阵维度仍为2*30。
假设矩阵xm和xi存在线性关系,用矩阵t表示:
txi=xm
在测得xm和xi后,对矩阵t的估计为:
4)启动视觉伺服系统:
将微型圆形标定板从xy平面位移平台上取下,将装有果蝇的容器通过玻片夹固定在位移平台上,再次调整相机水平位置完成对焦。将xy平面位移平台启动并等待计算机的控制指令,相机以300hz连续采集图像并发送给计算机,计算机将图片存入图片缓存区中。记当前时刻k=1。
5)提取图像特征检测果蝇位置;
从图片缓存区中提取当前时刻的图像,记为pk,并清空缓存区。由于红色滤光片的作用,该图像中只包含果蝇的眼部,由于荧光亮度不高,该图像中含有较多的噪声,使用中值滤波算法对图像pk进行降噪滤波。对滤波后的图像进行二值图像阈值处理得到pk对应的二值图像(二值图像阈值在30至40之间,具体数值与实际光照环境有关),大致提取出pk中果蝇眼部轮廓,二值图像中果蝇眼部为白色,其余部分为黑色。
6)对步骤5)得到的二值图像进行判定:
若该二值图像中白色区域的像素数量小于5000,则认为果蝇在视野之外,无需采取任何动作,重新返回步骤5),直至二值图像中白色区域的像素数量大于等于5000。
若该二值图像中白色区域的像素数量大于等于5000,则认为果蝇在视野当中,首先使用形态学操作去除二值图像中较小的白色区域(卷积核大小为5),同时使果蝇眼部轮廓更加平滑。然后使用轮廓提取算法提取出形态学操作完毕后的二值图像中果蝇眼睛的轮廓。若提取出的轮廓数量等于2,则该2个轮廓即为果蝇两眼的轮廓,分别计算2个轮廓的质心位置,然后对2个质心坐标取平均值即为对果蝇头部中心位置在当前时刻的图像pk中的位置的观测值
若提取出的轮廓数量大于2,则使用k均值聚类算法将形态学操作完毕后的二值图像中所有轮廓聚成两类,分别计算出两类轮廓的质心位置,然后对两类轮廓的质心坐标取平均值作为果蝇头部中心位置在当前时刻的图像pk中的位置的观测值
本实施例中图像处理效果如图4所示,图4(a)为形态学操作完毕后的二值图像中检测到两个眼部轮廓的情况,图4(b)为形态学操作完毕后的二值图像中检测到多个轮廓的情况,图中实心点为各轮廓质心所在位置,空心点为果蝇头部中心所在位置。
7)预测果蝇位置;
根据步骤6)中得到的果蝇头部中心位置在当前时刻的图像pk中的位置的观测值
将果蝇在xy平面两个方向上的运动视为独立,因此果蝇在两个方向上的运动可以分开独立建模。在x方向上:
其中,过程矩阵
卡尔曼滤波器根据
相似地,在y方向上:
其中,过程矩阵
卡尔曼滤波器根据
最终得到果蝇头部中心位置在图像pk 1中的估计值记为
8)设计视觉伺服控制律;
以步骤7)中的预测结果
其中,vk为xy位移平台在k时刻至k 1时刻之间的运动速度,为一个二维向量,分别包括xy位移平台在k时刻至k 1时刻之间x方向和y方向上的运动速度,kp,ki,kd分别为比例系数,积分系数和微分系数。系数α的取值为:
9)xy位移平台执行运动指令;
由于本实施例中所采用的位移平台使用位置控制模式,根据步骤8)所计算得到运动速度vk,计算xy平面位移平台在当前运动周期内所需的运动量zm,k=vkδt,δt为一个控制周期的持续时间(本实施例所实现的控制频率为100hz,即δt=10ms。)。将运动指令zm,k传入平台的控制器,控制器控制执行部分执行所需的动作,实现当前时刻对果蝇的跟踪;执行完毕后,当下一个时刻到来时,令k=k 1,然后重新返回步骤5)。
本发明还提出一种基于上述方法的果蝇跟踪系统,其特征在于,所述系统包括:xy平面位移平台,果蝇容器,玻片夹,带有绿色滤光片的汞灯,相机,红色滤光片,显微物镜,反射镜,光学平台和计算机;其中,果蝇容器使用三块边长均为3厘米的石英玻璃片堆叠而成,其中上下两块玻璃片厚度为1毫米,中间一块玻璃片厚度为2.3毫米,中间一块玻璃片中心有一个直径为1厘米的圆孔,该圆孔为果蝇的运动区域;所述xy平面位移平台固定在光学平台上,玻片夹固定在xy平面位移平台上,果蝇容器通过玻片夹固定在xy平面位移平台1上,带有绿色滤光片的汞灯放置在光学平台上,该汞灯从上往下照射果蝇容器,相机固定在光学平台上,相机前端安装显微物镜,显微物镜前端安装红色滤光片,反射镜通过支架固定在光学平台上,反射镜位于果蝇容器正下方,使得从汞灯发出的光线穿过果蝇容器后经反射镜反射垂直进入相机;所述xy平面位移平台与相机分别连接计算机。
1.一种基于视觉伺服的果蝇跟踪方法,其特征在于,包括以下步骤:
1)搭建果蝇跟踪系统;所述系统包括:xy平面位移平台,果蝇容器,玻片夹,带有绿色滤光片的汞灯,相机,红色滤光片,显微物镜,反射镜,光学平台和计算机;其中,果蝇容器使用三块边长均为3厘米的石英玻璃片堆叠而成,其中上下两块玻璃片厚度为1毫米,中间一块玻璃片厚度为2.3毫米,中间一块玻璃片中心有一个直径为1厘米的圆孔,该圆孔为果蝇的运动区域;所述xy平面位移平台固定在光学平台上,玻片夹固定在xy平面位移平台上,果蝇容器通过玻片夹固定在xy平面位移平台1上,带有绿色滤光片的汞灯放置在光学平台上,该汞灯从上往下照射果蝇容器,相机固定在光学平台上,相机前端安装显微物镜,显微物镜前端安装红色滤光片,反射镜通过支架固定在光学平台上,反射镜位于果蝇容器正下方,使得从汞灯发出的光线穿过果蝇容器后经反射镜反射垂直进入相机;所述xy平面位移平台与相机分别连接计算机;
2)调节光路共轴,调节汞灯的光线沿竖直方向,反射镜的反射面与汞灯的光线成45°,调节相机光轴沿水平方向且与汞灯光线通过反射镜形成的反射光线平行,使得汞灯的光线垂直进入相机,沿水平方向调节相机位置直至相机获取的图像清晰;
在果蝇容器壁上涂抹防止果蝇爬壁的试剂,通过基因编辑技术将红色荧光蛋白基因植入果蝇体内,将处理完毕的果蝇转移入果蝇容器的圆孔中;
相机与xy平面位移平台分别初始化,其中,相机分辨率设置为256*320,帧率设置为300hz;
3)使用微型圆形标定板和opencv的相机标定函数标定相机成像模型的内参矩阵mc;
标定xy平面位移平台坐标系fm与相机坐标系fc之间的变换矩阵te;具体方法如下:
将所述微型圆形标定板正面朝下放置在xy平面位移平台上,调整微型圆形标定板的位置使得相机图像视野中出现1个以上圆形,然后将微型圆形标定板固定,调整相机水平位置完成对焦;启动xy平面位移平台,令平台搭载其上部件连续运动30个随机运动量,将每次随机运动量分别在x,y方向上的运动量组成矩阵xm,该矩阵维度为2*30,同时在每次随机运动之前通过计算机从相机提取含有圆形的图像,使用霍夫变换检测标定板上圆形圆心在每张图像中位置,计算连续两张图像的圆心因平台的运动而在像素坐标系中x,y方向上产生的位移量组成矩阵xi,该矩阵维度为2*30,表示30次运动圆心分别在图像中x,y方向上的运动量;
假设矩阵xm和xi存在线性关系,用矩阵t表示:
txi=xm
对矩阵t的估计为:
矩阵t即为xy平面位移平台坐标系fm与相机坐标系fc之间的变换矩阵te;
4)将微型圆形标定板从xy平面位移平台上取下,将装有果蝇的容器通过玻片夹固定在xy平面位移平台上,再次调整相机水平位置完成对焦;启动xy平面位移平台,相机以300hz连续采集图像;记当前时刻k=1;
5)提取当前时刻的图像,记为pk;使用中值滤波算法对图像pk进行降噪滤波;对滤波后的图像进行二值图像阈值处理得到pk对应的二值图像,提取出pk中果蝇眼部初步轮廓;
6)对步骤5)得到的二值图像进行判定:
若该二值图像中白色区域的像素数量小于5000,则果蝇在视野之外,然后重新返回步骤5)直至二值图像中白色区域的像素数量大于等于5000;
若该二值图像中白色区域的像素数量大于等于5000,则果蝇在视野当中,首先使用形态学操作去除该二值图像中小于面积阈值的白色区域,然后使用轮廓提取算法提取出形态学操作完毕后的二值图像中果蝇眼睛的轮廓;若提取出的轮廓数量等于2,则该2个轮廓即为果蝇两眼的轮廓,分别计算2个轮廓的质心位置,然后对2个质心坐标取平均值即为对果蝇头部中心位置在pk中的位置的观测值
若提取出的轮廓数量大于2,则使用k均值聚类算法将形态学操作完毕后的二值图像中所有轮廓聚成两类,分别计算出两类轮廓的质心位置,然后对两类轮廓的质心坐标取平均值作为果蝇头部中心位置在pk中的位置的观测值
7)根据步骤6)中得到的
分别对果蝇在xy两个方向上的运动建立模型;
在x方向上:
其中,过程矩阵
卡尔曼滤波器根据
在y方向上:
其中,果蝇在k时刻的y方向的状态
卡尔曼滤波器根据
最终得到果蝇头部中心位置在图像pk 1中的估计值记为
8)在相机坐标系下,计算果蝇k 1时刻预测位置
根据视觉伺服控制律:
其中,vk为xy位移平台在k时刻至k 1时刻之间的运动速度,为一个二维向量,分别包括xy位移平台在k时刻至k 1时刻之间在x方向和y方向上的运动速度;kp,ki,kd分别为比例系数,积分系数和微分系数;系数α的取值为:
9)根据步骤8)得到的vk,计算xy平面位移平台在当前运动周期内的运动量zm,k=vkδt,δt为一个控制周期的持续时间;
xy平面位移平台按照zm,k进行运动直至k 1时刻,实现当前时刻对果蝇的跟踪;当k 1时刻到来时,令k=k 1,然后重新返回步骤5)。
2.一种基于如权利要求1所述方法的果蝇跟踪系统,其特征在于,所述系统包括:xy平面位移平台,果蝇容器,玻片夹,带有绿色滤光片的汞灯,相机,红色滤光片,显微物镜,反射镜,光学平台和计算机;其中,果蝇容器使用三块边长均为3厘米的石英玻璃片堆叠而成,其中上下两块玻璃片厚度为1毫米,中间一块玻璃片厚度为2.3毫米,中间一块玻璃片中心有一个直径为1厘米的圆孔,该圆孔为果蝇的运动区域;所述xy平面位移平台固定在光学平台上,玻片夹固定在xy平面位移平台上,果蝇容器通过玻片夹固定在xy平面位移平台1上,带有绿色滤光片的汞灯放置在光学平台上,该汞灯从上往下照射果蝇容器,相机固定在光学平台上,相机前端安装显微物镜,显微物镜前端安装红色滤光片,反射镜通过支架固定在光学平台上,反射镜位于果蝇容器正下方,使得从汞灯发出的光线穿过果蝇容器后经反射镜反射垂直进入相机;所述xy平面位移平台与相机分别连接计算机。
技术总结