Matlab - ¿Como obtener el nombre de una imagen de un axes?

 
Vista:

¿Como obtener el nombre de una imagen de un axes?

Publicado por Diego (4 intervenciones) el 24/02/2013 21:56:20
Hola mi duda es como puedo obtener el nombre de una imagen que ya esta cargada en un axes
tengo el siguiente codigo :

%Obtener imagen

img3= getimage(handles.axes2);
if isempty(rgb), return, end

%guardar imagen

formatos = {'*.jpg','JPEG (*.jpg)';'*.tif','TIFF (*.tif)'};
[nomb,ruta] = uiputfile(formatos,'GUARDAR IMAGEN');
nomb=getname(rgb);
fName = fullfile(ruta,nomb);
imwrite(rgb,fName);


pero de esta manera el usuario elige el nombre de la imagen y yo quisiera ponerle el mismo nombre mas un subfijo, por ejemplo que la imagen se llame tacos.jpg y guardarla como tacos_copia.jpg

gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Como obtener el nombre de una imagen de un axes?

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 25/02/2013 00:09:57
" ¿Cómo obtener el nombre de una imagen de un axes?". ¿Eso quiere decir que el nombre de la imagen está esta dentro de la imagen y mediante el procesamiento de imágenes quieres extraer el nombre de la imagen y guardarlo agregando el termino copia en forma automática.?.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1368762-COMO__HACER_SUS_PREGUNTAS_DE_MATLAB.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿Como obtener el nombre de una imagen de un axes?

Publicado por Diego (4 intervenciones) el 26/02/2013 06:59:36
hola disculpa no se si el nombre este dentro de la imagen, o ¿puedo extraer su nombre a cargar la imagen? pero si, el aguardado automatico es la idea
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Como obtener el nombre de una imagen de un axes?

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 26/02/2013 14:09:19
Tienes que ser claro en tu pregunta y ser detallado.
Te estoy preguntando y no me das una respuesta clara,

Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1368762-COMO__HACER_SUS_PREGUNTAS_DE_MATLAB.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Como obtener el nombre de una imagen de un axes?

Publicado por Dave (1094 intervenciones) el 26/02/2013 21:43:25
Estimado Diego;

Respecto a tu consulta, te aclaro que el nombre del archivo de la imagen, no se guarda en el axes, ya que el axes únicamente sirve para visualizar el contenido del archivo jpg o cualquier otro formato, que fue leido y asignado previamente a una variable como I, por lo cual es más conveniente que uses el nombre original del archivo para genera el nombre del archivo a guardar.

A continuación coloco un ejemplo de como podrías hacerlo, será fácil adaptarlo a una interfaces o aplicación más compleja.

1
2
3
4
5
6
7
8
9
10
11
12
clear all,
close all
 
fname='imagen_01.jpg';
 
I=imread(fname);
 
imshow(I);
 
name=[fname(1:end-4),'_copia.jpg']
 
print('-djpeg', name)


El resultado será una imagen con el nombre:


1
2
3
name =
 
imagen_01_copia.jpg



Espero que sea de alguna ayuda.

Saludos
Dave Correa
[email protected]
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Como obtener el nombre de una imagen de un axes?

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 26/02/2013 22:28:38
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
function varargout = abrir_guardar_copias_imagenes(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @abrir_guardar_copias_imagenes_OpeningFcn, ...
                   'gui_OutputFcn',  @abrir_guardar_copias_imagenes_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);
if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
function abrir_guardar_copias_imagenes_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
 
function varargout = abrir_guardar_copias_imagenes_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
 
function abrir_imagen_Callback(hObject, eventdata, handles)
[FileName Path]=uigetfile({'*.jpg;*.bmp;*.png'},'Abrir Imagen')
axes(handles.axes1);
if isequal(FileName,0)
    return
else
    foto=imread([Path,FileName]);
    imshow(foto);
    handles.FileName=FileName;
    handles.Path=Path;
end
guidata(hObject,handles)
 
 
function guardar_imagen_Callback(hObject, eventdata, handles)
FileName=handles.FileName;
Path=handles.Path;
rgb=getimage(handles.axes1);
if isequal(FileName,0)
    return
else
    Filename=[FileName(1:end-4),'_copia',FileName(end-3:end)]
    Path
    nombre_foto=fullfile(Path,Filename);
    imwrite(rgb,nombre_foto);
end


1
2
3
4
5
6
7
8
9
10
11
12
13
14
EJECUCION
>> abrir_guardar_copias_imagenes
 
FileName =
multimetro_caballero.jpg
 
Path =
F:\MATLABCABALLERO\AYUDAS\AYUDA GUIDE\
 
Filename =
multimetro_caballero_copia.jpg
 
Path =
F:\MATLABCABALLERO\AYUDAS\AYUDA GUIDE\



Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1368762-COMO__HACER_SUS_PREGUNTAS_DE_MATLAB.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿Como obtener el nombre de una imagen de un axes?

Publicado por Diego (4 intervenciones) el 27/02/2013 04:13:58
hey dave muchas gracias y ahi disculpen si no me expreso bien pero apenas estoy iniciando y pues no se muchas cosas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Como obtener el nombre de una imagen de un axes?

Publicado por Dave (1094 intervenciones) el 27/02/2013 04:19:29
Hola Diego;

Me da mucho gusto que haya sido de ayuda, en cuanto a la disculpas, diría que tu más bien debes disculpar a las personas intolerantes, que se creen perfectos en expresión y redacción.

Cualquier cosa estamos en contacto, y si en algún momento requieres de servicios de programación me contactas, que con mucho gusto te atenderé.

Saludos desde Lima-Perú
Dave Correa
[email protected]
Servicios de Programación Matlab
http://fismatlab.blogspot.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar