How to change image size from 224 x 224 x 1 to 224 x 224 x 3

18 次查看(过去 30 天)
i have images with 224 x 224 x 1 size i want to convert it to 224 x 224 x 3

采纳的回答

Kevin Holly
Kevin Holly 2022-11-4
Img = rand(224,224,1);
imshow(Img)
new(:,:,1) = Img;
new(:,:,2) = Img;
new(:,:,3) = Img;
imshow(new)
size(Img)
ans = 1×2
224 224
size(new)
ans = 1×3
224 224 3
  2 个评论
abdullah al-dulaimi
broth i have path with 200 images , how can i convert all images in one time
Kevin Holly
Kevin Holly 2022-11-4
编辑:Kevin Holly 2022-11-4
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

请先登录,再进行评论。

更多回答(1 个)

Walter Roberson
Walter Roberson 2022-11-4
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 个评论
Walter Roberson
Walter Roberson 2023-12-7
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.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Read, Write, and Modify Image 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by