Fwd: Store convolutions in array

Posted by PEARSON Matthew on
URL: http://imagej.273.s1.nabble.com/Store-convolutions-in-array-tp5017368p5017371.html



-------- Original message --------
From: PEARSON Matthew <[hidden email]>
Date: 13/10/2016 22:53 (GMT+00:00)
To: [hidden email]
Subject: Re: Store convolutions in array

Hi Herbie,

Thanks for that it's good to know you can use a string that contains the kernel.  Presumably altering this slightly as below to add in a string from an array wouldn't work.

Kernel = newArray ("kernel1", "kernel2");

run( "Convolve...", "text1=["+kernel[0]+"] normalize stack" )

I'll play around with it tomorrow. I could always do it slightly less elegantly with a for loop and a series of if and else if statements to switch the kernel to Convolve with.
run( "Convolve...", "text1=["+kernel[0]+"] normalize stack" )

Thanks,

Matt


-------- Original message --------
From: Herbie <[hidden email]>
Date: 13/10/2016 20:09 (GMT+00:00)
To: [hidden email]
Subject: Re: Store convolutions in array

Good day Matt,

not sure whether it helps in your case, but I use to store the kernels
as a string in a file and then use:

kernel = File.openAsString( path2kernel );
run( "Convolve...", "text1=["+kernel+"] normalize stack" )


This should also work without storing the kernels in a file.

HTH

Herbie

:::::::::::::::::::::::::::::::::::::::::::::
Am 13.10.16 um 18:16 schrieb PEARSON Matthew:

> Hi all,
>
> I'd like to run some convolutions on an image and rather than run
> each convolution in turn as the macro recorder prints it, like
> below: run("Convolve...", "text1=[0 0 0 0 0\n0 -1 -1 -1 0\n0 -1 12 -1
> 0\n0 -1 -1 -1 0\n0 0 0 0 0\n] normalize");
>
> I'd like to set up a loop that will run through several convolutions.
> I thought i could add the convolutions to an array but not quite sure
> of the syntax of this in the macro language.  I thought i could have
> a string array of the convolutions and then do something like:
>
> convolutions = newArray ("text1=[0 0 0 0 0\n0 -1 -1 -1 0\n0 -1 12 -1
> 0\n0 -1 -1 -1 0\n0 0 0 0 0\n] normalize"); run("Convolve…", [0]);
>
> I know what i've done is wrong but wondering if its possible and what
> are the correct statements to use?
>
> Thanks for the help,
>
> Matt
>
> -- Matt Pearson Microscopy Facility MRC Human Genetics Unit Institute
> of Genetics and Molecular Medicine (IGMM) University of Edinburgh
> Crewe Road EH4 2XU
>
>
>
>
>
> -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>
>
>
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>
> -- ImageJ mailing list: http://imagej.nih.gov/ij/list.html
>
--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html


--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

--
ImageJ mailing list: http://imagej.nih.gov/ij/list.html