不确定您是否想要一种方法来获取答案,或者您是否设置了Python解决方案。无论如何,似乎没有任何Python解决方案即将推出,所以我正在演示一种非常简单的方法来获取ImageMagick,它安装在大多数Linux发行版上,可用于macOS和Windows。
基本上,我只是在终端,运行从ImageMagick套件。
我加载了一个形象,并得到ImageMagick的来计算绿色像素的平均值除以红色像素(mean.r
)的平均值(mean.g
):
convert Stack0000.tif -format "%[fx:mean.r/mean.g]\n" info:
0.715659
现在,如果我想获得同样的统计的所有文件,我再次做同样的事情,但加载所有图像,并且还用前缀的文件名(%f
)每一个结果,就像这样:
convert Stack*.tif -format "%f %[fx:mean.r/mean.g]\n" info:
输出
Stack0000.tif 0.715659
Stack0001.tif 0.704214
Stack0002.tif 0.710086
Stack0003.tif 0.711458
Stack0004.tif 0.715423
Stack0005.tif 0.715327
Stack0006.tif 0.720593
Stack0007.tif 0.719039
Stack0008.tif 0.725973
Stack0009.tif 0.730682
Stack0010.tif 0.731558
Stack0011.tif 0.769168
Stack0012.tif 0.808623
Stack0013.tif 0.863428
Stack0014.tif 0.952388
Stack0015.tif 1.02525
Stack0016.tif 1.09869
Stack0017.tif 0.857375
Stack0018.tif 1.24331
Stack0019.tif 1.18171
Stack0020.tif 1.10395
Stack0021.tif 1.07511
Stack0022.tif 1.05641
Stack0023.tif 1.04386
Stack0024.tif 1.03314
Stack0025.tif 1.02554
Stack0026.tif 1.02284
Stack0027.tif 1.02046
Stack0028.tif 1.01807
请注意,如果你在29页的多页TIFF的一大摞所有的图像,你可以使用“场景号”(%s
),而不是文件名(%f
):
convert StackOf29.tif -format "%s %[fx:mean.r/mean.g]\n" info:
0 0.715659
1 0.704214
2 0.710085
3 0.711457
4 0.715425
5 0.71533
6 0.720594
7 0.719038
8 0.725976
9 0.730682
10 0.731559
11 0.76917
12 0.808621
13 0.863424
14 0.952388
15 1.02525
16 1.09869
17 0.857375
18 1.24331
19 1.18171
20 1.10395
21 1.07511
22 1.05641
23 1.04386
24 1.03314
25 1.02554
26 1.02283
27 1.02046
28 1.01808
如果你想绘制的是,你可以使用gnuplot
这样的:
convert StackOf29.tif -format "%s %[fx:mean.r/mean.g]\n" info: > ratios.dat
gnuplot < plot.cmd
其中plot.cmd
包含:
set terminal png size 900,300
set output "graph.png"
set title 'Intensity Plot'
set ylabel 'Green:Red Ratio'
set xlabel 'Frame number'
plot "ratios.dat" lt 3
您能描述一下,或者更好的草图,如何您理想的输出可能? –
理想的输出是按照时间顺序(根据图像序列)的比率列表,我可以使用它来生成线图来计算信号衰减曲线等。 –
这是一个TIF中的100帧吗?你能分享图像吗? –