2011-12-29 24 views
6

आइए कहें कि मेरे पास 3 डी सरणी 'आईएमजी' (एक्स, वाई, फ्रेम) है और इसे टीआईएफएफ के रूप में सहेजना है। अब तक मैं इसे एक-एक करके इस तरह सहेज कर कर रहा था:matlab: टीआईएफएफ श्रृंखला को कैसे बचाएं?

for K=1:length(img(1, 1, :)) 
    outputFileName = sprintf('img_%d.tif',K); 
    imwrite(img(:, :, K), outputFileName); 
end 

शांत है, लेकिन क्या मैं एक एक टिफ ढेर के रूप में इसे सहेजना चाहते हैं? यह कैसे करना है? धन्यवाद :)

उत्तर

8

पैरामीटर 'append' पैरामीटर जो आप चाहते हैं उसके अनुरूप लगता है।

outputFileName = 'img_stack.tif' 
for K=1:length(img(1, 1, :)) 
    imwrite(img(:, :, K), outputFileName, 'WriteMode', 'append'); 
end 

संपादित करें: जब इस तरह बचाया multipletiffs खोलने ImageJ समस्या है। 'संपीड़न', 'कोई नहीं' समस्या :) उपयोग सुलझाने जाता है:

imwrite(img(:, :, K), outputFileName, 'WriteMode', 'append', 'Compression','none'); 
+0

मदद के लिए बहुत बहुत धन्यवाद :) – Art

-1

मुझे लगता है कि पसंदीदा तरीका इन दिनों MATLAB के नए संस्करण में Tiff class उपयोग करने के लिए है।

+1

क्या आप यह समझा सकते हैं कि यह कैसे करें? – Art

+1

क्या आपने अभी तक MATLAB सहायता पढ़ी है? – Nzbuu

+0

@Nzbuu: बहुसंख्यक होने पर सहायता अनुभाग अस्पष्ट है। यदि आपके पास हमें प्रबुद्ध करने के लिए स्निपेट था तो यह बहुत अच्छा होगा। –