Parameterize Image Name In Function

Hello Colleagues, I have Function with parameter image name, inside the function i want to write image after some of editing, but i want to take part from image name and add another part as imwrite image name for example
function editing (ImageName)
w=imread(ImageName);
w=double(w);
w=w+0.02;
w=uint8(w);
imwrite(w,'w_ImageName.jpg','jpg');
end
I want the new image name to be w letter with image name.

 采纳的回答

So what you can do is strip the extension off of the ImageName string variable.
function editing (ImageName)
w=imread(ImageName);
w=double(w);
w=w+0.02;
w=uint8(w);
ImageName=ImageName(1:end-4); %strip off the extension;
imwrite(w,['w_' ImageName '.jpg'],'jpg'); %concatenate your prefix and new extension.
end

1 个评论

It seems ImageName variable in line ImageName=ImageName(1:end-4); %strip off the extension; will store the image pixels values not the image name itself;

请先登录,再进行评论。

更多回答(1 个)

Thank you for your helping, It solved by adding this line ImageName =ImageName; at the first of the function like this :
function editing (ImageName)
ImageName =ImageName;
w=imread(ImageName);
w=double(w);
w=w+0.02;
w=uint8(w);
ImageName=ImageName(1:end-4); %strip off the extension;
imwrite(w,['w_' ImageName '.jpg'],'jpg'); %concatenate your prefix and new extension.
end

类别

在 帮助中心 和 File Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by