imageJ中如何自动获取图像的比例尺

问题描述 投票:0回答:2

我需要测量一大片叶子的叶面积。问题是每张图像都有不同的比例,因为它们是用不同高度的相机拍摄的。在每张纸旁边我放了一张方格纸作为刻度。

ImageJ有没有方法/宏自动获取每张图像的比例?

另一方面,板材的面积可以自动计算吗?

https://i.sstatic.net/lWiHM.jpg

https://i.sstatic.net/wH0TD.jpg

谢谢!

我知道如何手动执行此操作:例如,选择 10 个等于 1 厘米的正方形,然后应用“设置比例”。然后我应用阈值并测量面积。但我有 1200 张图像需要分析...

automation scale imagej
2个回答
1
投票

原则上可以自动分析它们,但我认为最终仍然需要某种手动跟踪。 也许这将有助于加快速度。 当我没有弄乱任何东西时,这应该一个接一个地打开文件夹中的每个图像,提示您画一条线,然后设置比例并将生成的缩放图像保存在输出文件夹中。 仍然是手动的,但我认为明显更快。

input = getDirectory("");
output = input + "output" + File.separator;
    File.makeDirectory("");
list = getFileList(input);

for (i=0; i<list.length; i++) {

    open(input+list[i]);
    waitForUser("Draw Scale Line");
    getLine(x1, y1, x2, y2, lineWidth)
    distX = pow(x1-x2, 2);
    distY = pow(y1-y2, 2);
    distSUM = distX + distY + distZ;
    lengthScale = pow(distSUM, 0.5);
    run("Set Scale...", "distance="+lengthScale+" known=10 pixel=1 unit=cm");
    saveAs("Tiff", output+list[i]);
    close();
}

0
投票

te ayudo este codigo? o lograste Armar otro? estoy en una situacion muyimilar.... Todas Mis muestras fueron tomadas fuera de Laboratorio por eso no todas titenen la Misma escala a pesar de tener todas la Misma Referencia...

谢谢,致敬。

埃内斯托。

© www.soinside.com 2019 - 2024. All rights reserved.