2015-02-14 7 views
0

им пытается загрузить группу изображений в MatLab, чтобы сделать какой-то процесс над каждой, и вот мой код:Загрузка нескольких изображений в MATLAB из определенной папки

s=dir(fullfile('D:\Matlab\pics\dude2\*.jpg\')) % My specific destination 
numel(s) 
for n=1:numel(s) 
    load(s(n).name); 
    % my processes over each image 
end 

, но я получил эту errur:

Error using load 
Unable to read file 'PIC_0134.JPG': no such file 
or directory. 

где PIC_0134.JPG это изображение существует в файле назначения.

ANY HELP ??

ответ

0

s(n).name возвращает только имя файла без пути. Вы должны добавить имя на весь путь, прежде чем передать его load():

path = 'D:\Matlab\pics\dude2\'; 
s=dir(fullfile([path '*.jpg'])); 
numel(s) 
for n=1:numel(s) 
    img = imread([path s(n).name]); 
    % your image processing 
end 
+1

Плюс есть проблема с 'load' используется вместо 'imload'. См. Мой ответ на [эту тему] (http://stackoverflow.com/questions/28519005/loading-multiple-bmp-images-in-matlab) того же автора. – Ratbert

+0

Да, конечно. Я этого не заметил. Я изменил это. Спасибо. – gfkri

+0

Хорошо, я проверил это и на самом деле 'imread' (по крайней мере, используя мою версию Matlab). – gfkri

Смежные вопросы