How to change image size from 224 x 224 x 1 to 224 x 224 x 3
18 views (last 30 days)
Show older comments
abdullah al-dulaimi
on 4 Nov 2022
Commented: Walter Roberson
on 7 Dec 2023
i have images with 224 x 224 x 1 size i want to convert it to 224 x 224 x 3
0 Comments
Accepted Answer
Kevin Holly
on 4 Nov 2022
Img = rand(224,224,1);
imshow(Img)
new(:,:,1) = Img;
new(:,:,2) = Img;
new(:,:,3) = Img;
imshow(new)
size(Img)
size(new)
2 Comments
Kevin Holly
on 4 Nov 2022
Edited: Kevin Holly
on 4 Nov 2022
folder = uigetdir;
files = dir(fullfile(folder,'*.png'));
for ii = 1:length(files)
grayImage = imread(fullfile(folder,files(ii).name));
rgbImage = cat(3, grayImage, grayImage, grayImage);
imwrite(rgbImage,[fullfile(folder,files(ii).name) '_rgb.png'])
end
More Answers (1)
Walter Roberson
on 4 Nov 2022
I recommend that you consider using an imageDatastore followed by an augmentedImageDatastore -- the augmented store can automatically resize your images and can automatically convert to RGB or grayscale.
2 Comments
Walter Roberson
on 7 Dec 2023
unzip('MerchData.zip');
imds = imageDatastore('MerchData', ...
'IncludeSubfolders',true, ...
'LabelSource','foldernames');
augds = augmentedImageDatastore([224 224], imds, 'ColorPreprocessing', 'gray2rgb');
[imdsTrain,imdsValidation] = splitEachLabel(augds,0.7);
and so on.
See Also
Categories
Find more on Read, Write, and Modify Image in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!