In [1]:
#!groovy
// @ImageJ ij
// @NotebookService nb
Out[1]:
In [2]:
sinusoid32 = ij.op().run("create.img", [150, 100])
formula = "63 * (Math.cos(0.3*p[0]) + Math.sin(0.3*p[1])) + 127"
ij.op().image().equation(sinusoid32, formula)
println("geometricMean = " + ij.op().stats().geometricMean(sinusoid32))
println("harmonicMean = " + ij.op().stats().harmonicMean(sinusoid32))
println("kurtosis = " + ij.op().stats().kurtosis(sinusoid32))
println("max = " + ij.op().stats().max(sinusoid32))
println("mean = " + ij.op().stats().mean(sinusoid32))
println("median = " + ij.op().stats().median(sinusoid32))
println("min = " + ij.op().stats().min(sinusoid32))
println("moment1AboutMean = " + ij.op().stats().moment1AboutMean(sinusoid32))
println("moment2AboutMean = " + ij.op().stats().moment2AboutMean(sinusoid32))
println("moment3AboutMean = " + ij.op().stats().moment3AboutMean(sinusoid32))
println("moment4AboutMean = " + ij.op().stats().moment4AboutMean(sinusoid32))
println("size = " + ij.op().stats().size(sinusoid32))
println("skewness = " + ij.op().stats().skewness(sinusoid32))
println("stdDev = " + ij.op().stats().stdDev(sinusoid32))
println("sum = " + ij.op().stats().sum(sinusoid32))
println("sumOfInverses = " + ij.op().stats().sumOfInverses(sinusoid32))
println("sumOfLogs = " + ij.op().stats().sumOfLogs(sinusoid32))
println("sumOfSquares = " + ij.op().stats().sumOfSquares(sinusoid32))
println("variance = " + ij.op().stats().variance(sinusoid32))
Out[2]:
In [3]:
// Prepare a couple of equally sized images.
import net.imglib2.type.numeric.real.FloatType
image1 = ij.op().run("create.img", [160, 96], new FloatType())
image2 = ij.op().run("copy.rai", image1)
// Gradient toward bottom right.
ij.op().image().equation(image1, "p[0] + p[1]")
minMax1 = ij.op().stats().minMax(image1)
println("image1 range = (" + minMax1.getA() + ", " + minMax1.getB() + ")")
// Sinusoid.
ij.op().image().equation(image2, "64 * (Math.sin(0.1 * p[0]) + Math.cos(0.1 * p[1])) + 128")
minMax2 = ij.op().stats().minMax(image2)
println("image2 range = (" + minMax2.getA() + ", " + minMax2.getB() + ")")
Out[3]:
In [4]:
nb.display(image1)
Out[4]:
In [5]:
nb.display(image2)
Out[5]:
In [6]:
ij.op().help("eval")
Out[6]:
In [ ]: