我有一系列图像保存在一个文件夹中,我编写了一个简短的程序来打开其中两个图像文件,连接它们(最好是垂直的,虽然现在我正在水平尝试),然后将这个新图像保存到同一个文件夹。这是我到目前为止所写的:
function concatentateImages
%this is the folder where the original images are located path='/home/packremote/SharedDocuments/Amina/zEXAMPLE/';
file1 = strcat(cr45e__ch_21', '.pdf');
[image1,map1] = imread(graph1);
file2 = strcat('cr45f__ch_24', '.jpg');
[image2,map2] = imread(graph2);
image1 = ind2rgb(image1,map1);
image2 = ind2rgb(image2,map2);
image3 = cat(2,image1,image2);
%this is the directory where I want to save the new images
dircase=('/home/packremote/SharedDocuments/Amina/zEXAMPLE/');
nombrejpg=strcat(dircase, 'test', jpgext)
saveas(f, nombrejpg, 'jpg')
fclose('all');
但是,我不断收到我的文件不存在的错误,但我确定这些名称已正确复制。
我目前正在使用jpg文件,但格式可以轻松转换。
非常感谢有关如何修复此错误的任何输入,或者更好的预处理此任务的方法!
干杯,
阿米娜
答案 0 :(得分:1)
替换
[image1,map1] = imread(graph1);
和
[image2,map2] = imread(graph2);
通过
[image1,map1] = imread(file1);
和
[image2,map2] = imread(file2);
同时检查您是否在正确的工作目录中。
答案 1 :(得分:1)
除了@Simon的回答,您还需要更改
file1 = strcat(cr45e__ch_21', '.pdf');
到
file1 = strcat('cr45e__ch_21', '.pdf');
即。你忘记了'。此外,您的功能似乎不包含jpgext
的定义。我希望你想要像
jpgext = '.jpg';
最后,主要是编码练习问题,但您可能希望切换到使用fullfile
来构建完整的文件路径。
此外,如果您使用完整路径,而不是担心进入正确的工作目录,您可以避免跟踪您所在的目录。 所以我建议:
dir1 ='/home/packremote/SharedDocuments/Amina/zEXAMPLE/';
file1 = fullfile(dir1, 'cr45e__ch_21.pdf');
等