Building the robot

img source: google

相关背景

相比其他生物类别,国内仔稚鱼形态鉴定的人员特别稀缺,再加上基础资料的匮乏,使得这方面一直是海洋浮游环境和渔业资源研究里最薄弱的一环。而且即使是在这样小的圈子里,对资料的理解和对样本的观察因人而异,经常导致在大的时空尺度上的鉴定结果出现偏差。我们亟需充足的、标准化的分类鉴定力量。

鉴于近年来人工智能的飞速发展,可以考虑引入人工智能对仔稚鱼的鉴定工作进行辅助。当拿不准一个标本是什么鱼的时候,掏出手机对准目镜拍一张,几秒钟内计算机反馈出它可能是什么鱼的概率有多大,自己再对照资料确认一下,可以省下很多功夫,避免一些人为的差错。而且这项技术还可以继续开发,将模型泛化,拓展到其他生物类别。

工作流程

img source: google

一个粗犷的流程是这样:

收集仔稚鱼图像(当前

图像预处理

构建神经网络

图像采集

(YG Chan 2017.11)
计划采集3-5万张仔稚鱼图片用于训练神经网络。前期的图像收集工作展现出来的速度十分打脸(截止目前2000多张),深感力有不逮,所以邀请各位同行们(在未获得授权之前不便公布单位和姓名)共同参与这部分工作。感谢大家的参加。

目前采集图片主要使用了3台设备,供参考:Zeiss Stemi 2000、Leica M205FA和Zeiss Discovery V20,其中M205FA和Discovery V20是带电动臂和CCD的比较大型的体视显微镜,Stemi 2000是没有数码成像配件的裸机(也就是大家平时工作用的比较多的类型)。

Stemi 2000现在是用手机对着目镜拍照,对拍摄人的操作要求相对高一点,为了减轻负担,后面我打算用转接环加单反机身拍摄。带电动臂的大型的体视显微镜(M205FA,Discovery V20)一般可以加Z轴叠加的功能。当拍摄较大个体时,一个焦距并不能看清标本全貌,使用Z轴叠加的功能可以把多个焦距拍摄的图片合成起来,成为一张可以清晰展示所有细节的图。

手机拍摄比较难控制图片质量,需要注意几点:

  • 对准焦点,拍摄完后可以放大图片看一下想要拍摄的位置是否清晰。
  • 图像干净,经常出现的问题有:背景的玻璃太花水里漂浮杂质遮盖鱼体鱼体有高光反射出现手机摄像头在目镜内的映像画面部分太亮部分太暗。对应的措施一般有:换个平皿用纯水水淹没鱼体减弱或遮蔽环境光调整入射光角度
  • 仅使用上光源。一种例外是:标本较扁薄,且具有不得不用下光源才能看清的特征。
  • 调整手机摄像头到目镜的距离,可以找到一个位置能拍摄到整个视野。
6张插图分别是:连接电脑的拍摄,使用手机在平时鉴定用的体视镜上拍摄,同一个标本使用Z轴叠加拍摄前后的两张对比图,手机在Stemi 2000上拍摄的两张图。
训练神经网络需要的是大量的图片,提取出各种特征,所以,同一种鱼可以拍摄很多图片。即使是同一个标本,换一边或者换一个角度,拍出来的图片上展示的特征也是可能不同的。当我们实际应用训练好的神经网络的时候,并不能保证送给系统检测的图片都是标标准准的180°躺平头朝左立正站好,使用更多的各种角度的图才能提高模型的鲁棒性。即便是一个标本,可以左边拍一张,右边拍一张,比较厚的标本可以不同焦距拍两三张,圆一点的标本向上滚一点、向下滚一点各拍一张,不建议对着背、腹部拍。
目前并不需要把鱼的种类定好,但是如果已经确定好种类的标本可以在文件名里写上鱼的名字(非必须),对后面的加标工作可能是有帮助的。
拍好的照片上传百度网盘,分享给我的一个帐号,具体方法步骤见WY Lu写的这个介绍(很简单)。