ImageJ是一款强大的软件,它不仅可以自动数出一张图片中有多少个细胞,而且可以自动数出一个文件夹每一张照片中的细胞数量,即批量处理。以下列出两种ImageJ细胞计数的具体步骤,以及批量处理的方法。
工具/原料 ImageJ
细胞图片
方法/步骤 1
第一种:适用于团状细胞计数
用ImageJ打开图片后,
1-1,Image → Type → 8-bit
1-2,Image → Adjust → threshold,弹出Threshold窗口。
1-3,如图,调节这个窗口中间两个横向的滚动条,使图片中的细胞为红色,背景为黑色,其中背景中的红点尽量少而小。其他的不动,然后点apply
2
1-4,Process → Binary → Fill Holes,这一步是将细胞中间的洞填满
1-5,Process → Binary → Watershed,这一步是把重叠的细胞从中间分割开。如果你的图片里面没有重叠的细胞,可以跳过此步。
1-6,先看步骤1-7。为了估计最小的细胞面积,可以使用魔棒工具选中一个相对较小的细胞,然后Analyze → Measure计算其面积(弹出的页面中的Area一栏),然后依据其面积估计一个值。这个值可以很小,只要明显比背景的杂点大就行。
1-7,Analyze → Analyze Particles, 弹出Analyze Particle窗口。如图,Size(inch^2)代表筛选细胞面积范围,默认值为“0.00-Infinity”。为了过滤掉背景中存在一些无关而面积很小的点,这里应该把0.00改为细胞可能的最小面积(通过1-6进行估计)。其余参数如图所示,尤其注意不要勾选Clear results。点击OK,弹出多个窗口,细胞数就在Summary窗口中。
3
第二种:适用于点状细胞计数
用ImageJ打开图片后
2-1,Image → Type → 8-bit
2-2,Process → Enhance Contrast,弹出Enhance Contrast窗口。如图,Saturated pixels中填0.3,勾选Normalize, 不勾选Equalize histogram,点击OK
4
2-3,Process → Find Maxima,弹出Find Maxima窗口。如图,Noise tolerance先填30,output type选Count,其余三个选项勾选第一个和最后一个,不勾选第二个。这时可以看到图片中的细胞都被标记上了,如果有的细胞被标记多次或者没有标记,可以通过调节Noise tolerance的值来调整。点击OK即可得到细胞数。
END
方法/步骤2 1
批量操作多张相似图片
适合对多张相似的细胞图片进行计数。ImageJ将对这些图片进行完全相同的操作。
如果你要处理团状细胞,也就是用第一种方法,那么在批量处理前,你需要提前估计自己所有图片中的细胞面积最小值,估计方法见步骤1-6。
2
3-1,将需要进行相同操作的图片复制到同一个文件夹。然后用ImageJ打开任意一张图片。
3-2,Analyze → Set Measurements,弹出窗口Set Measurements。如图,勾选Display label。
3
3-3,Plugins → Macros → Record,弹出Recorder窗口。接下来你进行的每一步操作,都会以代码的形式记录在这个窗口。
4
3-4,按照第一种方法(需跳过步骤1-6)或者第二种方法一步步进行操作。如果出现误操作被记录下来,直接在Recorder窗口中删除对应的代码,再继续操作即可。
3-5,全选Recorder窗口中的所有代码并复制,然后关闭所有窗口(全都不用保存),只留下ImageJ主程序。
3-6,Process → Batch → Macro,弹出Batch Process窗口。Input选择计数图片所在文件夹,Output选择任意一个无用的文件夹即可,ImageJ会将处理过的图片存入Output选中的文件夹。Output Format和Add Macro Code默认即可。然后将第4步复制的代码粘贴在最大的框中。注意,如果某行代码最前面有两个斜杠(“//”),则需要把每一行最前面的斜杠都删掉。然后点process,ImageJ就会自动对文件夹中所有图片进行相同的处理,并显示结果。结尾有参考代码。
5
参考代码:
第一种方法(团状细胞):
run("8-bit");
setAutoThreshold("Default");
run("Threshold...");
setThreshold(10, 255);
run("Convert to Mask");
run("Fill Holes");
run("Watershed");
run("Analyze Particles...", "size=0.02-Infinity display exclude include summarize record add in_situ");
roiManager("Show All with labels");
roiManager("Show All");
第二种方法(点状细胞):
run("8-bit");
run("Enhance Contrast...", "saturated=0.3");
run("Find Maxima...", "noise=50 output=Count exclude");
END
声明:本文内容及图片来源于读者投稿,本网站无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。请将本侵权页面网址发送邮件到zhongyue_yx1@sina.com,我们会及时做删除处理。
举报/反馈