フォルダ内の複数枚存在する画像の操作

조회 수: 7 (최근 30일)
daisuke shuugisono
daisuke shuugisono 2018년 3월 29일
댓글: daisuke shuugisono 2018년 4월 1일
MATLABを使って複数枚画像が入っているフォルダの中から更新日時が一番新しい画像のみを読み込みたいです。 直接新しい画像のみ読み込めない場合はフォルダの中をソートしても構いません。 なにか手段はありますか? よろしくお願い致します。

채택된 답변

Akira Agata
Akira Agata 2018년 3월 30일
もし対象画像の拡張子が決まっている場合は、以下のようにしても更新日時が最新の画像を読み込むことができます。
% カレントフォルダ内の *.jpg ファイル一覧をテーブル形式で取得
fileList = struct2table(dir('./*.jpg'));
% テーブル内の、更新日時が最新の画像の行番号を取得
[~, idx] = max(fileList.datenum);
% 対象画像を読み込み
I = imread(fullfile(fileList.folder{idx},fileList.name{idx}));
  댓글 수: 1
daisuke shuugisono
daisuke shuugisono 2018년 4월 1일
ご回答ありがとうございます。 読み込みまでの記入ありがとうございました。

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Tohru Kikawada
Tohru Kikawada 2018년 3월 30일
MATLABの table 型を使うとこのようにファイル一覧の操作を行うことができます。ご参考まで。
% ファイル一覧取得
listing=dir(fullfile(matlabroot,'toolbox','matlab','icons'));
% 構造体からtable型に変換
filesTable = struct2table(listing);
% フォルダは除去
validFilesTable = filesTable(~filesTable.isdir,:);
% datenum(日付を表す数値)で降順にソート
sortedFilesTable = sortrows(validFilesTable,...
find(strcmp(validFilesTable.Properties.VariableNames,'datenum')),'descend');
% 上位10個を取り出す
disp(sortedFilesTable(1:10,[1 3]));
実行結果
name date
____________________________________ _____________________
'plotpicker-geobubble.png' '19-7-2017 05:49:38'
'appcontainer.ico' '16-2-2017 00:48:04'
'plotpicker-arx.png' '19-5-2016 23:06:20'
'plotpicker-n4sid.png' '19-5-2016 23:06:20'
'plottype-errorbar-horizontal.png' '12-4-2016 08:11:32'
'plottype-errorbar.png' '12-4-2016 08:11:23'
'plotpicker-errorbar-horizontal.png' '12-4-2016 08:11:06'
'plotpicker-errorbar.png' '12-4-2016 08:10:57'
'plotpicker-graphplot.png' '01-10-2015 03:24:07'
'plottype-graphplot.png' '01-10-2015 03:22:28'
  댓글 수: 1
daisuke shuugisono
daisuke shuugisono 2018년 4월 1일
ご回答ありがとうございます。 参考にさせていただきます。

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 ファイルの操作에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!