how to get file name when i take a image file from imgetfile

3 次查看(过去 30 天)
i want only file name of my image file which i take from imgetfile. as i want to save the file name and data i collected/processed on that particular image file.
  1 个评论
Vish
Vish 2016-2-17
function getImage_Callback(hObject, eventdata, handles)
[f,p]=uigetfile('*.jpg');
oi=imread(strcat(p,f)); %getting Original Image;
imshow(oi)
function getImage_Callback(hObject, eventdata, handles)
%now i want to use variable f in this function how can i use it??
if true
% code
end

请先登录,再进行评论。

回答(1 个)

MHN
MHN 2016-2-17
编辑:MHN 2016-2-17
One easy way is to write a code for that ! (assumption: there is no dot (.) in the name of the image)
IMPORTANT NOTE : if you are using Windows, you have to change '/' to '\'.
[filename, user_canceled] = imgetfile;
if user_canceled==0
L = filename=='/';
m = find(L==1,1,'last');
L = filename=='.';
n = find(L==1,1,'last');
str = filename(m+1:n-1)
end
  2 个评论
MHN
MHN 2016-2-17
编辑:MHN 2016-2-17
You can use the following code to make sure it works for Windows or other OSs :
[filename, user_canceled] = imgetfile;
if user_canceled==0
if ispc
L = filename=='\';
else
L = filename=='/';
end
m = find(L==1,1,'last');
L = filename=='.';
n = find(L==1,1,'last');
str = filename(m+1:n-1)
end
Vish
Vish 2016-2-17
编辑:Vish 2016-2-17
u can also use uigetfile() which return filename and its path. here we dont need imgetfile to get im file use
uigetfile('*.jpg');

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by