Matlab - mostrar archivos de listbox de solo formato dcm

   
Vista:

mostrar archivos de listbox de solo formato dcm

Publicado por Andres andresprzh@hotmail.com (9 intervenciones) el 10/05/2014 03:07:03
hola
estoy haciendo un proyecto de detección de escoliosis, para lo cual necesito hacer una gui en la cual se carquen en un listbox los archivos Dicom de una carpeta, ya pude cargar el directorio, pero de la forma que lo estoy haciendo me muestra todos los archivos en la carpeta y no solo los archivos dicom que es lo que necesito, acá esta la parte del código donde se cargan los archivos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function abrir_Callback(hObject, eventdata, handles)
% hObject    handle to abrir (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
[FileName Path]=uigetfile({'*.dcm'},'Abrir Imagen');
if isequal(FileName,0)
 return
else
[b, alto, ancho, informacion]=consegimagen(FileName,Path);
handles.im=b;
imshow(handles.im,[]);
end
handles.direc=Path;
handles.imc=b;
 
nombres=dir(fullfile(Path));
set(handles.listbox1,'string', {nombres.name});
 
set(handles.cortar,'Enable','on')
set(handles.lineas,'Enable','on')
set(handles.contraste,'Enable','on')
set(handles.listbox1,'Enable','on')
guidata(hObject,handles)


en esta parte cada vez que se presiona el boton de abrir, abre una ventana donde solo puedo escoger las imágenes en formato dicom, de ahi obtengo la directorio y con el comando set lo asigno al listbox, quiero que en ese set solo asigne los archivos con estencion dcm
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 Jorge

mostrar archivos de listbox de solo formato dcm

Publicado por Jorge (212 intervenciones) el 10/05/2014 04:06:08
Hola Andrés.

Debes modificar la instrucción "dir" para que sólo te muestre los archivos con cierta extensión (.dcm para vuestro caso). Así, la instrucción dir que asignas a la variable nombres tendría que ser como sigue:

1
nombres=dir(fullfile([Path,'\*.dcm']));



Espero sea eso lo que necesitas.


Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

mostrar archivos de listbox de solo formato dcm

Publicado por Andres (9 intervenciones) el 10/05/2014 04:19:43
muchas gracias, me funciono perfecto para lo que necesitaba, si no te molesta te hago otra pregunta, es posible quitar la extensión cuando lo valla a mostrar en la listbox?
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 Jorge

mostrar archivos de listbox de solo formato dcm

Publicado por Jorge (212 intervenciones) el 10/05/2014 04:47:47
Si, con un ciclo for modificas la estructura:

1
2
3
4
5
nombres=dir(fullfile([Path,'\*.dcm']));
for i=1:length(nombres)
    nombres(i).name=nombres(i).name(1:end-4);
end
set(handles.listbox1,'string', {nombres.name});


Con ello eliminas los 3 caracteres de la extensión y el punto.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

mostrar archivos de listbox de solo formato dcm

Publicado por Andres (9 intervenciones) el 10/05/2014 05:01:04
muchas gracias me funciono perfecto, me sacaste de una duda que llevaba tiempo viendo como solucionar
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