首页 文章

将一些已调整大小的图像放入目录,然后指定它以训练图像

提问于
浏览
0

我有五个RGB jpg图像 . 我应该将所有这些图像(转换为灰度并调整为160x160)放入一个在我的工作文件中占有一席之地的目录中 .

1) 我读了所有五个RGB图像:

img1 = imread('image1.jpg');
img2 = imread('image2.jpg');
img3 = imread('image3.jpg');
img4 = imread('image4.jpg');
img5 = imread('image5.jpg');

2) 我将他们转换为 grayscale

img1_gray = rgb2gray(img1);
img2_gray = rgb2gray(img2);
img3_gray = rgb2gray(img3);
img4_gray = rgb2gray(img4);
img5_gray = rgb2gray(img5);

3) 我将所有图片调整为 160x160

img1_gray_resized=imresize(img1_gray, [160 160]);
img2_gray_resized=imresize(img2_gray, [160 160]);
img3_gray_resized=imresize(img3_gray, [160 160]);
img4_gray_resized=imresize(img4_gray, [160 160]);
img5_gray_resized=imresize(img5_gray, [160 160]);

4) 我有一个名称为'My_directory'的目录,我需要将所有已调整大小的图像放入其中 . 我使用了 imwrite 函数,如下图所示,但是我得到一个错误,我认为它完全不正确,这就是为什么我需要你的帮助 .

imwrite(img1_gray_resized, 'My_directory','jpg');
imwrite(img2_gray_resized, 'My_directory','jpg');
imwrite(img3_gray_resized, 'My_directory','jpg');
imwrite(img4_gray_resized, 'My_directory','jpg');
imwrite(img5_gray_resized, 'My_directory','jpg');

5) 在matlab中,我现在需要指定我的目录来训练所有图像 . 我使用下面的代码:

Train_images = 'My_directory';

这是不正确的 . 请问如何正确指定我的目录以将我的所有图像训练到其中?

任何帮助将非常感激 .

1 回答

  • 1

    再看一下imwrite的语法 . 第二个参数需要指定文件名,因此您需要同时指定子目录和文件名:

    Train_images = 'My_directory';
    mkdir(Train_images);
    imwrite(img1_gray_resized, fullfile(Train_images,'image1_gray_resized.jpg'));
    % and similarly on for the other 4 images
    

    另请注意, imwrite 从文件扩展名中推断出格式 .

    附注:如果您关心图像内容,请不要使用jpg . 使用png或bmp或无损的东西 .

相关问题