我在名爲Images的文件夾內有一個名爲BasePics的文件夾。 BasePics內部有30張JPEG圖像。我想知道是否有以下可能:是否可以編寫一個腳本,使用imread()命令讀取所有這些圖像。圖像的名稱有點順序:C1A_Base.jpg,C1B_Base.jpg,C1C_Base.jpg,C2A_Base.jpg,C2B_Base.jpg,C2C_Base.jpg等...一路到C10C_Base.jpgMATLAB從文件夾中讀取多個圖像
可以在循環中不知何故使用:
file = dir('Images\BasePics');
NF = length(file);
for k = 1:NF
images(k) = imread(fullfile('ImagesBasePics',file(k))
imagesc(images(k))
end
這是我所希望做一個粗略的想法,但我不知道它是否能與目前的命名格式我在圖片文件夾來完成。我還希望每個圖像被讀取爲自己的變量,其名稱與它在當前文件夾Images \ BasePics中命名的名稱相同或相似,而不是在一個變量images
下有30個圖像的連續數組。我想有30級獨立的變量,其名稱如A1, A2,A3,B1,B2,B3
等等
此外,當我剛剛問:
dir images\BasePics
Matlab的輸出33頁的文件,而不是30有兩個額外的文件在文件夾的開頭:'。'和'..',最後一個:'Thumbs.db'當我分別查看文件夾時,這些不存在,有沒有一種方法可以讓程序上的Matlab跳過這些?
謝謝!
十分感謝,這正是我想要的 – user2654568
也許你或@彼得可以進一步幫助我:我實際上有幾個文件夾在圖像文件夾內,每個文件夾有30張圖片。理想情況下,我想寫一個輸入爲子文件夾的函數,即「BasePics」,輸出結構爲「imgs.BasePics」或「imgs。(無論輸入是什麼)」。 – user2654568
@ user2654568您可以用包含子文件夾名稱的變量替換字符串「BasicPics」 - 這基本上是您創建函數所需的全部內容。親自嘗試一下! – Shai