用于图像分析的ZooScan系统的ZooProcess学习。
# ZooProcess
ZooProcess 是基于ImageJ 宏语言的一套程序。所以Zooprocess对用户来说是免费的,用户也可以用它来满足他们的需求。
Zooprocess 是由Marc Picheral 开发出来并且为我们所使用的,然而他并不是一名程序员。 Zooprocess 依旧在完善并且新的版本会在主页上发布出来。 我们认为文件的格式和项目的结构是不允许被修改的。但是上行的兼容性是会保持的。
计算机规格
系统规格
Zooprocess 已经在这些系统上测试并且可以兼容他们:
因此建议就在这三个系统上进行实验。
操作系统区域设定
配置电脑使用点作为十进制的符号。
提供的安装文件,可以到此链接下载安装文件,包含所有相关的文件及文档。
在使用过程中会用到的软件:
使用Zooscan时相关的软件
处理Zooscan 数据时相关的软件
运行UVP相关的软件
UVP(underwater vision profiler)系统,被设计用于对直径大于100um的课件颗粒和浮游生物的垂直分布进行量化。参考来源
处理UVP数据时相关的软件
其他软件
安装顺序
必须要按照说明的顺序去安装。
下表说明了不同系统安装的文件:
安装JAVA
用户必须通过提供的JAVA machines 运行ImageJ。永远不要升级JAVA。 1. 在32位系统下只安装 jre-6u29-windows-i586-s.exe 2. 在64位系统下只安装 jre-6u29-windows-x64.exe
在安装的时候保持默认的选项。
安装 ImageJ
只有1.41版本的ImageJ 会适用于 7.0以上版本的Zooprocess。
64位系统下的安装过程:
64位系统运行扫描和处理2400分辨率的大帧图像以及4800分辨率的窄帧图像需要在拥有8Gb的内存的前提下。对于更多的内存,并不会提高处理速度。
安装Tanagra、PID viewer、Plankton Identifier和Xnview。
从提供的文件夹内安装前三个软件,Xnview自己上网下载,任何版本都可以。
注意:
建立一个名为test的项目,选择无扫描文件。 项目建立之后,会生成一系列的子目录对于不同的目的,如图所示:
enter sample ID:例如001
填充metadate:
主要的内容如图所示:
在这里需要我们填充很多信息,包括采样的地点、经度、纬度、采样网格的大小等参数,这些会在以后的log文件和meta元数据文件中写入。具体的条目我就不再详细介绍了,毕竟不是很明白。
选择好项目后,会进入到菜单选择窗口,用户在这里可以选择要进行的工作,在这里有两种工作模式User模式和Advanced模式,一般情况下我们选择User模式就好了,其他的选择默认。高级模式就是为用户提供了更多手动操作的步骤和功能,让用户可以更加全面的参与参数的修改等工作。
两种模式包含的功能分别如下图所示:
进行处理的第一步就是需要扫描背景图像和扫描样本图像两项工作,在这里由于没有实际的ZooScan仪器,所以就跳过,直接进行下面的步骤,在下载的实例文件中已经为我们提供了示例的扫描后的样本图像和空白图像。分别保存在项目目录下面的Zooscan_back和Zooscan_scan目录下面。
扫描后的样本的原始的.tif图像文件和log.txt记录文件和meta.txt元数据文件都会在\path\to\project\Zooscan_scan_raw目录下建立并存储。
在Zooprocess的主菜单中选择”Convert and process image in batch mode”选项来使用批处理的方法进行样本的处理和转换。
这个过程会持续很长时间,做了很多的工作,从原图像中检测并且识别个体,并且把识别后的单个个体片段提取出来,以jpg的格式存储在\path\to\project\Zooscan_scan\_work目录下。存储的文件除了每一个识别出来的个体片段外还包括原图像以及去掉背景后样本图和本次处理后对应的pid文件。这个.PID文件是后面数据分析的主要文件,它是一个连接了log.txt文件、meta.txt文件、应用的处理功能和meas.txt(一个包含所有目标(列)和测量值(行)的表格)文件的单一文件。测量值中可能会用于数据分析的计算值有Area,Major和Minor(同测量的目标拥有相同区域的椭圆的长轴和短轴)。其他测量值是用于自动识别目标的形状和结构的参数以及他们在托盘中的位置。除了work目录内,PID文件也被自动的复制到项目目录下的”PID_Result”目录下。PID文件可以通过“PID Viewer”程序来查看。
检查图像质量
图像处理过后,必须检查背景是否是通过专用的工具从样本图像中被完全减去了。
选择Zooprocess菜单中的“CHECK process by viewing segmented images”功能,手动检查每一张处理后的原图像。检查完后会给出一个checked的标识。
如果对于图像质量依旧有疑问的话,可以继续通过“view image with outlines”和“view vignettes”两个工具来检查。这些工具可以让系统通过用户点击来来手动的判断是否是有多个生物体被检测成了一个单一的个体。
检查“接触问题”并且通过点击物体来分离图片上的物体。
如果你对放在扫描托盘手动分离效果(很多个体在图像上接触在一起)不满意的话,还有如果你注意到很多的小片段上包含接触的目标或者很白图像上显示出很多接触的目标的话,你应该在图像上手动的添加分割。
使用“SEPARATION from global image(msk or vis)”功能来分离接触在一起的生物体通过在他们之间用鼠标划线的方法。
注意,如果使用“vis”的话会比其他的需要更多的内存。
分离后重新处理。
完成了上面的分离之后,必须重新进行“CONVERT and PROCESS”步骤来使上面的分离方法生效并且得到新的结果。
参考文献: