foldernameに格納したファイル名をsaveasに対応させたいです。このコードなら150度という名でsaveasに入れたいです。
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
clear;
close all;
%foldername = "フォルダ名";
foldername = "150度";
im_list=dir(foldername);%フォルダ内のデータのリスト化%
file_name = {im_list.name};
file_name = file_name(~ismember(file_name, {'.', '..'}));
for n = 1:size(file_name, 2)
I = imread(fullfile(foldername, file_name{n}));
if n <= 11
subplot(4, 5, n);
imshow(I)
title(file_name{n})
sgtitle(foldername)
elseif n == 12
subplot(4, 5, n);
imshow(I)
title(file_name{n})
sgtitle(foldername)
saveas(gcf,'foldername.jpg')
elseif n <= 24
subplot(4, 5, n-12);
imshow(I)
title(file_name{n})
sgtitle(foldername)
end
end
0 件のコメント
0 commentaires
Réponses (1)
Atsushi Ueno
le 27 Mai 2023
>foldernameに格納したファイル名をsaveasに対応させたいです。このコードなら150度という名でsaveasに入れたいです。
⇒ folderame は string 型なので ”+” 演算子を用いて他の型と結合させる事が可能です。質問のプログラムを(image processing toolbox のサンプルJPG画像枚数33枚を対象に)動かしてみたところ、12枚のサムネイル画像を作成後foldernameに格納したファイル名で保存、その後13~24枚目のサムネイル画像を作成、といった結果になりました。
clear;
close all;
foldername = "150度"; %foldername = "フォルダ名";
copyfile('/MATLAB/toolbox/images/imdata/*.jpg',[pwd filesep convertStringsToChars(foldername)]);
im_list=dir(foldername);%フォルダ内のデータのリスト化%
file_name = {im_list.name};
file_name = file_name(~ismember(file_name, {'.', '..'}));
for n = 1:size(file_name, 2)
I = imread(fullfile(foldername, file_name{n}));
if n <= 11
subplot(4, 5, n);
imshow(I)
title(file_name{n})
sgtitle(foldername)
elseif n == 12
subplot(4, 5, n);
imshow(I)
title(file_name{n})
sgtitle(foldername)
saveas(gcf,foldername+".jpg"); % saveas(gcf,'foldername.jpg')ここを変更
elseif n <= 24
subplot(4, 5, n-12);
imshow(I)
title(file_name{n})
sgtitle(foldername)
end
end
ls
figure;
imshow(imread("150度.jpg"));
0 commentaires
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!