Я не знаю, как прервать imread
объектом таймера. Кроме того, я подозреваю о его возможности. Но я могу порекомендовать вам проверить, можете ли вы сначала получить доступ к файлу, а затем вы получите файл. Я написал следующую функцию для проверки состояния файла и Интернета:
function flag = does_url_exist(urlName)
url =java.net.URL(urlName);
try
link = openStream(url);
parse = java.io.InputStreamReader(link);
snip = java.io.BufferedReader(parse);
if ~isempty(snip)
flag = 1;
else
flag = 0;
end
catch exception
flag = 0;
end
end
Тогда это выглядит следующим образом:
fname = 'http://www.hollywoodheadache.com/wp-content/uploads/2007/12/tom-and-julia.jpg';
if(does_url_exist(fname))
img = imread(fname);
end
Обратите внимание, что для проверки интернет-соединения я взял исходный код этого поста . Также обратите внимание, что если вы уверены, что файл существует, его неэффективно проверять снова, поскольку это увеличивает время выполнения.