如何自动将输出的图片文件保存到指定的文件夹中?
How to automatically save the output image file in a specified folder?
我在图像上使用 Canny 边缘检测。由于我原来的 10 张图像在路径文件夹中,C:\Users\X\Desktop\FoodRGB
为 01.jpg
、02.jpg
、03.jpg
等,我想将所有输出图像保存在文件夹 C:\Users\X\Desktop\FoodCanny
作为 01.jpg
, 02.jpg
, 03.jpg
.
我想我必须使用 imwrite()
函数将输出图像写入特定文件夹,但我不确定这个大主意。
我使用的以下代码将图像保存为 0%d.jpg
在我手动创建的 FoodCanny
文件夹中。
for k = 1:10
img = sprintf('C:\Users\X\Desktop\Food Canny[=10=]%d.jpg',k);
imwrite(canny_image, 'C:\Users\X\Desktop\Food Canny[=10=]%d.jpg');
end
假设您想获取 C:\Users\Asus\Pictures\Screenshots
中所有屏幕截图的精巧边缘并将它们保存到另一个文件夹 D:\.
您可以通过以下方式完成此操作:
clc;clear all;
fpath = fullfile('C:\Users\Asus\Pictures\Screenshots','*.png');
img_dir = dir(fpath);
for k=1:length(img_dir)
input_image=strcat('C:\Users\Asus\Pictures\Screenshots\',img_dir(k).name);
original = rgb2gray(imread(input_image));
original= edge(original,'canny');
imwrite(original,strcat('D:\',sprintf('edge(%d).jpg',k)));
end
我在图像上使用 Canny 边缘检测。由于我原来的 10 张图像在路径文件夹中,C:\Users\X\Desktop\FoodRGB
为 01.jpg
、02.jpg
、03.jpg
等,我想将所有输出图像保存在文件夹 C:\Users\X\Desktop\FoodCanny
作为 01.jpg
, 02.jpg
, 03.jpg
.
我想我必须使用 imwrite()
函数将输出图像写入特定文件夹,但我不确定这个大主意。
我使用的以下代码将图像保存为 0%d.jpg
在我手动创建的 FoodCanny
文件夹中。
for k = 1:10
img = sprintf('C:\Users\X\Desktop\Food Canny[=10=]%d.jpg',k);
imwrite(canny_image, 'C:\Users\X\Desktop\Food Canny[=10=]%d.jpg');
end
假设您想获取 C:\Users\Asus\Pictures\Screenshots
中所有屏幕截图的精巧边缘并将它们保存到另一个文件夹 D:\.
您可以通过以下方式完成此操作:
clc;clear all;
fpath = fullfile('C:\Users\Asus\Pictures\Screenshots','*.png');
img_dir = dir(fpath);
for k=1:length(img_dir)
input_image=strcat('C:\Users\Asus\Pictures\Screenshots\',img_dir(k).name);
original = rgb2gray(imread(input_image));
original= edge(original,'canny');
imwrite(original,strcat('D:\',sprintf('edge(%d).jpg',k)));
end