通过命令行向图像添加一个比例尺(使用Ubuntu和eg ImageJ)

通过命令行向图像添加一个比例尺(使用Ubuntu和eg ImageJ),image,imagemagick,imagej,Image,Imagemagick,Imagej,目前,我正在使用ImageJ(与我的Ubuntu 14.04一起)手动将比例尺添加到图像中(半手动精确地说,就像我使用“文件”一样)→ 进口→ 图像序列…)。 我通过插件录制了一个宏(在ImageJ中)→ 宏→ 记录…),如下所示: run("Blobs (25K)"); run("Set Scale...", "distance=500.5 known=200 pixel=1 unit=µm"); <<warning: the options string contains o

目前,我正在使用ImageJ(与我的Ubuntu 14.04一起)手动将比例尺添加到图像中(半手动精确地说,就像我使用“文件”一样)→ 进口→ 图像序列…)。 我通过插件录制了一个宏(在ImageJ中)→ 宏→ 记录…),如下所示:

run("Blobs (25K)");
run("Set Scale...", "distance=500.5 known=200 pixel=1 unit=µm");
  <<warning: the options string contains one or more non-ascii characters>>
run("Scale Bar...", "width=200 height=8 font=28 color=Black background=None location=[Lower Right] bold overlay");
run(“Blobs(25K)”;
运行(“设置比例…”,“距离=500.5已知=200像素=1单位=µm”);
运行(“比例尺…”,“宽度=200高度=8字体=28颜色=黑色背景=无位置=[右下]粗体覆盖”);
当我想为100个图像添加一个比例尺(例如/home/$USER/test/*.tif)时,完整的命令是什么样子的


事实上,我不一定要使用ImageJ。如果使用ImageMagick也很容易做到这一点,那也很好。

很难判断图像或比例尺的外观。假设您的图像如下所示:

您可以使用以下图形包在透明背景上创建比例尺:

然后,您可以使用ImageMagick将该比例尺合成到图表上,如下所示:

convert -gravity southeast chart.tif scale.png -composite result.png

如果要将其向上移动30px并跨越40px,请执行以下操作:

convert -gravity southeast chart.tif scale.png -geometry +40+30 -composite result.png

显然,如果需要,请将
-gravity
更改为
soutwest

如果你有大量的图像要做-首先做一个拷贝或备份,然后试试这个

#!/bin/bash
mkdir annotated
for f in *.tif; do
   convert -gravity southeast "$f" scale.png -geometry +40+30 -composite  annotated/"$f"
done

好的,这可能是我可以处理的。我会尝试一下。谢谢。我是否正确地认为我已经需要一个适当大小的scale-bar.tif?这意味着对于每个图像堆栈,我必须事先创建一个适当的scale-bar图像?对不起,我不知道!我不知道ImageJ代码会产生什么,也不知道如何缩放电子比例尺看起来,也不知道你的图像有多大,或者它们是否都是不同的比例!我只是说,如果你想叠加一个固定的比例尺块或注释,这可能是一种方法。。。