use of net.imglib2.img.array.ArrayImg in project vcell by virtualcell.
the class ImportSBMLCommand method run.
@Override
public void run() {
// Read SBML document
SBMLDocument document = null;
try {
document = SBMLReader.read(file);
} catch (XMLStreamException | IOException e) {
e.printStackTrace();
}
// Get SBML geometry
SpatialModelPlugin modelPlugin = (SpatialModelPlugin) document.getModel().getPlugin("spatial");
Geometry geometry = modelPlugin.getGeometry();
SampledField sampledField = geometry.getListOfSampledFields().get(0);
// Parse pixel values to int
String[] imgStringArray = sampledField.getSamples().split(" ");
int[] imgArray = new int[imgStringArray.length];
for (int i = 0; i < imgStringArray.length; i++) {
imgArray[i] = Integer.parseInt(imgStringArray[i]);
}
// Create the image and display
int width = sampledField.getNumSamples1();
int height = sampledField.getNumSamples2();
ArrayImg<UnsignedIntType, IntArray> img = ArrayImgs.unsignedInts(imgArray, width, height);
displayService.createDisplay(img);
}
use of net.imglib2.img.array.ArrayImg in project imagej-ops by imagej.
the class CreateImgTest method testImageFactory.
@Test
public void testImageFactory() {
final Dimensions dim = new FinalDimensions(10, 10, 10);
@SuppressWarnings("unchecked") final Img<DoubleType> arrayImg = (Img<DoubleType>) ops.run(CreateImgFromDimsAndType.class, dim, new DoubleType(), new ArrayImgFactory<DoubleType>());
final Class<?> arrayFactoryClass = arrayImg.factory().getClass();
assertEquals("Image Factory: ", ArrayImgFactory.class, arrayFactoryClass);
@SuppressWarnings("unchecked") final Img<DoubleType> cellImg = (Img<DoubleType>) ops.run(CreateImgFromDimsAndType.class, dim, new DoubleType(), new CellImgFactory<DoubleType>());
final Class<?> cellFactoryClass = cellImg.factory().getClass();
assertEquals("Image Factory: ", CellImgFactory.class, cellFactoryClass);
}
use of net.imglib2.img.array.ArrayImg in project imagej-ops by imagej.
the class AbstractOpTest method generateUnsignedVariableBitLengthTypeArrayTestImg.
public ArrayImg<UnsignedVariableBitLengthType, LongArray> generateUnsignedVariableBitLengthTypeArrayTestImg(final boolean fill, final int nbits, final long... dims) {
final long[] array = new long[(int) Intervals.numElements(new FinalInterval(dims))];
if (fill) {
seed = 17;
for (int i = 0; i < array.length; i++) {
array[i] = (long) (((pseudoRandom() / Integer.MAX_VALUE)) % (Math.pow(2, nbits)));
}
}
final LongArray l = new LongArray(array);
return ArrayImgs.unsignedVariableBitLengths(l, nbits, dims);
}
use of net.imglib2.img.array.ArrayImg in project imagej-ops by imagej.
the class AbstractOpTest method generateUnsigned128BitArrayTestImg.
public ArrayImg<Unsigned128BitType, LongArray> generateUnsigned128BitArrayTestImg(final boolean fill, final long... dims) {
ArrayImg<Unsigned128BitType, LongArray> bits = ArrayImgs.unsigned128Bits(dims);
if (fill) {
MersenneTwisterFast betterRNG = new MersenneTwisterFast(0xf1eece);
for (Unsigned128BitType b : bits) {
BigInteger big = BigInteger.valueOf(betterRNG.nextLong());
b.set(big);
}
}
return bits;
}
use of net.imglib2.img.array.ArrayImg in project TrakEM2 by trakem2.
the class LinearIntensityMap method main.
public static void main(final String[] args) {
new ImageJ();
final double[] coefficients = new double[] { 0, 2, 4, 8, 1, 1, 1, 1, 1, 10, 5, 1, 1, 1, 1, 1, 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150 };
final LinearIntensityMap<DoubleType> transform = new LinearIntensityMap<DoubleType>(ArrayImgs.doubles(coefficients, 4, 4, 2));
// final ImagePlus imp = new ImagePlus( "http://upload.wikimedia.org/wikipedia/en/2/24/Lenna.png" );
final ImagePlus imp1 = new ImagePlus("http://fly.mpi-cbg.de/~saalfeld/Pictures/norway.jpg");
final ArrayImg<FloatType, FloatArray> image1 = ArrayImgs.floats((float[]) imp1.getProcessor().convertToFloatProcessor().getPixels(), imp1.getWidth(), imp1.getHeight());
final ArrayImg<UnsignedByteType, ByteArray> image2 = ArrayImgs.unsignedBytes((byte[]) imp1.getProcessor().convertToByteProcessor().getPixels(), imp1.getWidth(), imp1.getHeight());
final ArrayImg<UnsignedShortType, ShortArray> image3 = ArrayImgs.unsignedShorts((short[]) imp1.getProcessor().convertToShortProcessor().getPixels(), imp1.getWidth(), imp1.getHeight());
final ArrayImg<ARGBType, IntArray> image4 = ArrayImgs.argbs((int[]) imp1.getProcessor().getPixels(), imp1.getWidth(), imp1.getHeight());
ImageJFunctions.show(ArrayImgs.doubles(coefficients, 4, 4, 2));
transform.run(image1);
transform.run(image2);
transform.run(image3);
transform.run(image4);
ImageJFunctions.show(image1);
ImageJFunctions.show(image2);
ImageJFunctions.show(image3);
ImageJFunctions.show(image4);
}
Aggregations