http://imagej.273.s1.nabble.com/Writing-a-macro-to-save-image-stack-as-series-of-separate-files-tp5009571p5009573.html
> In order for newFileName to be recognised as a variable inside this
> string, you need to write it as
>
> run("Image Sequence... ", "format=TIFF name="+newFileName+" start=0
> digits=3
> save="+firstPlaneName)
>
> Note the "+ before the variable and the +" after the variable - this will
> insert the content of your variable into the string.
> I assume firstPlaneName at the end of that command is also a varibale. So,
> you will have to add "+ before that variable name as well. You don't need a
> +" at the end as there is no more text to be added to that string.
>
> Below is an extract from the ImageJ Macro documentation that gives more
> details
>
> The input fields of a dialog can be set to the contents of a macro
> variables by using string concatentation (
http://rsb.info.nih.gov/ij/> developer/macro/macros.html):
>
> noise = 50; output = "Point Selection"; run("Find Maxima...",
> "noise="+noise+" output=["+output+"] light"); With ImageJ 1.43 and later,
> there is an easier method that only requires adding "&" to the variable
> name in the options string: noise = 50; output = "Point Selection";
> run("Find Maxima...", "noise=&noise output=&output light"); String
> variables passed using this method do not have to be enclosed in brackets.
> For more examples, see theArgumentPassingDemo <
http://rsb.info.nih.gov/ij/> macros/ArgumentPassingDemo.txt>macro.
>
> I hope this helps,
> Volko
>
>
> On 10/09/2014 23:51, jlw wrote:
>
>> Hi, I'm trying to write a macro to open image stacks, manually look at
>> them
>> and adjust brightness/contrast, then save as a series of separate files,
>> each in its own folder. The way the files are named is not flexible
>> because
>> they have to be named in a certain way to feed into another Matlab program
>> that is already written. Here is the code I have:
>>
>>
>> function prepareForMatlab(input, output, filename) {
>> setBatchMode(false);
>> open(input + filename);
>> run("Brightness/Contrast...");
>> waitForUser('Adjust brightness and contrast');
>> run("Close"); //The filename is automatically extracted but we
>> have to
>> modify this to get it without the extension
>> name = getTitle; //Includes .tif
>> dotIndex = indexOf(name, ".");
>> title = substring(name, 0, dotIndex); //name without the extension
>> mouseAndRegionNumber = substring(output,33); //Extracts the mouse and
>> region number, in this case delta_1. Will change if file structure changes
>> print(mouseAndRegionNumber);
>> newFileName = mouseAndRegionNumber + "_" + title + "_";
>> print(newFileName);
>> firstPlaneName = output + "/" + title + "/";
>> print(firstPlaneName);
>> run("Image Sequence... ", "format=TIFF name=newFileName start=0
>> digits=3
>> save=firstPlaneName");
>>
>> run("Close All");
>> }
>>
>> input = "/C:/.../Raw/"; //Here i've omitted some directories with a ...
>> just
>> for the purpose of posting this question
>> output = "/C:/.../delta_1";
>> list = getFileList(input);
>> for (i = 0; i < list.length; i++){
>> setBatchMode(false);
>> prepareForMatlab(input, output, list[i]);
>> }
>>
>>
>> I know this code is probably not the most elegant way to do this
>> (accepting
>> suggestions on that as well!) but the problem I'm having now is that in
>> the
>> line
>> run("Image Sequence... ", "format=TIFF name=newFileName start=0 digits=3
>> save=firstPlaneName")
>> newFileName is not treated as a variable with a string value but rather
>> as a
>> string itself (so all the files end up having the word newFileName in
>> them).
>> How do I fix this?
>>
>> This code also has another weird problem where the images open one by one
>> and allow the user to move the sliders to see different z planes and then
>> adjust brightness/contrast. This works fine unless you try to switch back
>> and forth between toggling z planes and toggling brightness. (Then the
>> macro
>> gives and error "no image open") No idea why this would happen...it works
>> fine if you do one and then the other, just not if you switch back and
>> forth.
>>
>> Any help would be greatly appreciated!!!
>>
>>
>>
>> --
>> View this message in context:
http://imagej.1557.x6.nabble.
>> com/Writing-a-macro-to-save-image-stack-as-series-of-
>> separate-files-tp5009571.html
>> Sent from the ImageJ mailing list archive at Nabble.com.
>>
>> --
>> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html>>
>
>
> --
> ImageJ mailing list:
http://imagej.nih.gov/ij/list.html>