imread with new name

7 ビュー (過去 30 日間)
Jessica Yorzinski
Jessica Yorzinski 2022 年 8 月 22 日
コメント済み: Jessica Yorzinski 2022 年 8 月 25 日
I want to pre-load images before displaying them later. In order to do so, I need to save them with different names. Here is the code to loop through the folder of images:
for i=1:50
Names=imageNames{i};
Number=num2str(i);
NewName=strcat('ImageID_','Number);
NewName=imread(Names);
end;
But, I'd like the images to be saved as a variable string (e.g., "ImageID_1", "ImageID_2", etc.) but it is instead saving the image as "NewName"
  1 件のコメント
Stephen23
Stephen23 2022 年 8 月 22 日
"I'd like the images to be saved as a variable string (e.g., "ImageID_1", "ImageID_2", etc.)"
And force yourself into writing slow, complex, inefficent code that you would need to access those variable names:
The simple, efficient, recommended solution is to use indexing into one array (e.g. a cell array), just as the documentation shows:

サインインしてコメントする。

採用された回答

Voss
Voss 2022 年 8 月 22 日
Instead of 50 different variables named ImageID_1, ImageID_2, etc., how about one variable (a cell array) that contains all 50 images?
n_images = numel(imageNames);
Images = cell(1,n_images);
for ii = 1:n_images
Images{ii} = imread(imageNames{ii});
end
Then you can access any image by indexing into Images. For example, to get the 10th image:
Images{10}
  1 件のコメント
Jessica Yorzinski
Jessica Yorzinski 2022 年 8 月 25 日
This worked-- thanks!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeImage Processing and Computer Vision についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by