bonjour à tous
je suis une étudiante en imagerie et j'utilise récemment l'image J pour traiter des images .

je voulais sélectionner la première image dans un stack contenant 862, j'ai utilisé set slice(1) mais je n'ai pas réussi .

Pour plus expliquer j'ai une liste qui contient des n stacks d'images et je voulais sélectionner la première image du chaque stack tout le long de la liste, ma macro était

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
j = 1
m = 0
 
//Select folder containing stacks to process.
input = getDirectory("Choose substack Directory");
 
 
//Create output folder.
File.makeDirectory(input+"\Concatenate");
output = input+"\selection"
 
Dialog.create("File type");
Dialog.addString("File suffix: ", ".tif", 5);
Dialog.show();
suffix = Dialog.getString();
 
 
// DETERMINE NUMBER OF .TIF FILES ("m")
list = getFileList(input);
   for (i=0; i<list.length; i++)
	if (endsWith(list[i], suffix)) 
		m = m+1;
 
setBatchMode(true);  
list = getFileList(input);
   for (i=0; i<list.length; i++)
	setSlice(1) {
		processFile(input, output, list[i]);
		j = j+1;
		showProgress(j);
 
}
 
setBatchMode(false);
 
function processFile(input, output, file) {
 
	open(list[i]);
	run("selection",+ " image1=" +list[i] );
	saveAs("tiff", input+"\\selection \\"+ list[i]);
	close();
	}
print(j+1, " substacks were concatenated 2 by 2 and are available in the folder: " + input+"\Concatenate");
Merci pour votre aide