2016-03-16 80 views
0

我在ImageJ中從圖像堆棧獲取文件名時出現問題。 我寫的,可以在圖像堆棧中使用,並在堆棧中給出的輸出結果爲每個圖像與插件:ImageJ-如何從圖像堆中的實際處理圖像中獲取slicename

if (mfpc == true) { 
      IJ.log(fileName+": Good"); 
     } else { 
      IJ.log(fileName+": Bad"); 
     } 

的getTitle()適用於單張圖片,但只顯示堆棧的名稱爲堆棧,而不是實際切片的名稱。

我也嘗試用下面的代碼

fileName = imp.getImageStack().getShortSliceLabel(imp.getCurrentSlice()); 

得到片的名稱,但只顯示當前選擇的圖片,而不是它是由插件處理的圖片。我的如意算盤是下面的輸出(而文件名是Imagex.png):

  • Image1.png:好
  • Image2.png:壞
  • Image3.png:好

這是可能的,如果是這樣,如何? :)

回答

0

一個骯髒的方法來解決這個問題:運行Stack to Images,股票在數組中的所有名稱,關閉所有圖像,再次打開你的堆棧。

這裏是在ImageJ的宏語言的代碼片段:

setBatchMode(true); 

open("your_stack.tif") 

n=nSlices; 
titles=newArray(n); 

run("Stack to Images"); 

// for every image (slice of the stack) 
for(cpt=0;cpt<n;cpt++){ 
    titles[cpt]=getTitle(); //get its title 
    close(); //then close it so focus goes to the next image 
} 

Array.print(titles); 
相關問題