前面介绍了怎么使用ImageJ中的宏记录器,减少重复的图片操作:
Treasure琛:ImageJ实用技巧——宏记录器(解放双手篇)zhuanlan.zhihu.com
然而宏记录器的缺点在于:每次都需要打开某一张照片,然后Run Macro。如果需要操作的图片过多,这也是不少的工作量。所以为了进一步解放双手,实现多图片的自动处理,就需要用到ImageJ中自带的批处理工具。
基于上一篇宏的应用,这篇为大家介绍怎么对多张图片进行批处理(Batch process)。
1、新建两个文件夹
将需要处理的图片统一存放在同一文件夹中,建立一个空文件夹存放处理后的照片:
注意:输入/输出文件夹一定要选择不一样的,因为输出的文件命名和输入一样,很容易把原始文件覆盖掉。
2、打开基于宏的批处理(Process-Batch-Macro)
弹出批处理初始化界面:
Input/Output:选择输入文件夹和输出文件夹
Add macro code:这里有一些常用的命令语句,可以直接调用
File name contains:这里其实是一步筛选,只处理文件名中含有...的图片。如果不填,即默认都处理。
3、选择输入、输出,写入宏代码
选择输入、输出文件夹。如果之前保存有宏记录器的代码,可以直接Open...。
这里我选择了测量平均荧光强度的宏代码。
设置完成之后点击Process,即可得到结果。
Tips:可以先点击Test,测试输入文件夹中第一张图片,从而检验宏代码是否有误。
可以看到处理后图片都输出到了指定文件夹里,检测数据也显示在Results中。
ImageJ的处理速度也非常快,大大节省了时间和精力。
如果想进一步学习批处理,可以参考官网的说明:
Batch Processingimagej.net
但批处理也有一些弊端,并不是特别灵活,更加强大的批处理可以直接通过代码实现,具体可以参考开发教程的文章:
Treasure琛:ImageJ开发教程——循环和存储zhuanlan.zhihu.com
如果对于ImageJ使用有什么问题可以私信我,
ImageJ实用教程zhuanlan.zhihu.com
希望对大家有帮助~