2015年3月11日 星期三

[Matlab] Loading multiple images files and converting to movie

最近因為實驗上需要, 想使用 Matlab 讀取多張影像, 並將影像播放出來

首先, 需要克服的是如何讀取檔案的問題。

1. 讀取多張影像 / Load images into Matlab

(1) Loading multiple images files  (2)Matlab 中 Dir 的用法

Matlab 中提供了一個指令叫做 dir('path') ,  這邊的path需要提供明確的資料夾路徑位

置  Ex. C:\users\folder\

而後面如果要抓出特定的影像格式檔, 例如tiff檔, 則使用 *.tif

這邊的*是指所有為tif檔案格式的檔案

下面我從別人的博客借來的範例程式碼

fpath = dir('path\*.tif'); 
n = length(fpath); 
data = cell(n,1); 

for i=1:n 
 filename = ['path\',fpath(i).name]; 
 data{i} = imread(filename); 
end

for 迴圈裡面則是執行讀檔的動作

2.將影像轉成影片 / Convert images into movie

這邊 getframe 與 im2frame 這兩個指令可以使用(官方對於im2frame指令的說明)

將圖片存成一個序列檔

例如

imshow('1.tif'); 
F(1) = getframe; 

imshow('2.tif'); 
F(2) = getframe; 

... 

imshow('n.tif'); 
F(n) = getframe;

movie(F);

最後, Matlab 就會將數張影像進行播放, 達到播放影片般的效果


1 則留言:

/* 載入prettify的autoloader */ /* 載入JQuery */