我正在对图像使用Canny边缘检测。由于我原来的 10 张图像都在 path 文件夹中,C:UsersXDesktopFoodRGB
01.jpg
、02.jpg
、03.jpg
等,我想将所有输出图像保存在文件夹中,C:UsersXDesktopFoodCanny
为 01.jpg
、02.jpg
、03.jpg
。
我想我必须使用imwrite()
函数将输出图像写入特定文件夹,但我不确定这个大主意。
我正在使用的以下代码是将图像保存为0%d.jpg
保存在我手动创建的文件夹中FoodCanny
。
for k = 1:10
img = sprintf('C:UsersXDesktop4Food Canny %d.jpg',k);
imwrite(canny_image, 'C:UsersXDesktop4Food Canny %d.jpg');
end
假设您想获取C:UsersAsusPicturesScreenshots
中所有屏幕截图的精明边缘并将它们保存到另一个文件夹中 D:.
您可以通过以下方式执行此操作:
clc;clear all;
fpath = fullfile('C:UsersAsusPicturesScreenshots','*.png');
img_dir = dir(fpath);
for k=1:length(img_dir)
input_image=strcat('C:UsersAsusPicturesScreenshots',img_dir(k).name);
original = rgb2gray(imread(input_image));
original= edge(original,'canny');
imwrite(original,strcat('D:',sprintf('edge(%d).jpg',k)));
end