Matlab - Video en tiempo real en un GUI

 
Vista:

Video en tiempo real en un GUI

Publicado por Jorge Rodriguez (15 intervenciones) el 28/02/2013 06:29:06
Hola,

Estoy desarrollando un GUI en el cual quiero poner en un Axes el video en tiempo real que me genera una cámara web conectada al ordenador.

Para plantear el problema de manera breve, resumiré el código. En el GUI tengo un axes (en el cual quiero que salga el video), y un push button. Cuando oprimo el push button, este hace el llamado a un archivo llamado "Proceso", este archivo tiene el siguiente código:

vid = videoinput('winvideo', 1, 'I420_2592x1944');
vid.LoggingMode='memory';
FocusMode= 'auto';
src = getselectedsource(vid);
vid.TriggerFrameDelay = 80;
vid.FramesPerTrigger = 1;
vid.ReturnedColorspace = 'grayscale';
triggerconfig(vid, 'manual');
start(vid);
trigger(vid);
m = getdata(vid);

Lo que pretendo hacer es que en el axes del GUI aparezca el video en tiempo real cuando oprimo el push button.

Gracias por su ayuda.
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

Video en tiempo real en un GUI

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 28/02/2013 13:01:40
Enlaza esta parte con tu codigo.

1
2
3
4
vidRes = get(obj, 'VideoResolution');
nBands = get(obj, 'NumberOfBands');
hImage = image( zeros(vidRes(2), vidRes(1), nBands) );
preview(obj, hImage);



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/1371532-FORMA_DE_APRENDER_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 JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Video en tiempo real en un GUI

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 28/02/2013 14:09:55

1
2
3
4
5
6
7
8
function activar_camara_Callback(hObject, eventdata, handles)
vid = videoinput('winvideo',1);
vidRes = get(vid, 'VideoResolution');
imWidth = vidRes(1);
imHeight = vidRes(2);
nBands = get(vid, 'NumberOfBands');
hImage = image( zeros(imHeight, imWidth, nBands),'Parent',handles.axes1 );
preview(vid,hImage);


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/1371532-FORMA_DE_APRENDER_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

Video en tiempo real en un GUI

Publicado por Jorge Rodriguez (15 intervenciones) el 19/03/2013 15:30:47
Lo adapte de esta manera y funciona muy bien:

vidRes = get(vid, 'VideoResolution');
imWidth = vidRes(1);
imHeight = vidRes(2);
nBands = get(vid, 'NumberOfBands');
hImage = image( zeros(imHeight, imWidth, nBands),'Parent',handles.cameraAxes );
preview(vid,hImage);

Este código lo anexe al código que plantee arriba. En el código de la interfaz solo aparece esto:

function cameraAxes_CreateFcn(hObject, eventdata, handles)

axis off


Gracias.
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

Video en tiempo real en un GUI

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 19/03/2013 16:23:00
Cual seria el código preciso y completo que lo estas haciendo.
Dices que esta funciona muy bien. Seria de ayuda para los demás usuarios de matlab que visiten al foro.

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/1371532-FORMA_DE_APRENDER_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

Video en tiempo real en un GUI

Publicado por Jorge Rodriguez (15 intervenciones) el 19/03/2013 16:38:51
Este es el código que permite ver vídeo en tiempo real en una interfaz de usuario, para mi aplicación:

vid = videoinput('winvideo', 1, 'I420_2592x1944');
vid.LoggingMode='memory';
FocusMode= 'auto';
src = getselectedsource(vid);
vid.TriggerFrameDelay = 25;
vid.FramesPerTrigger = 1;
vid.ReturnedColorspace = 'grayscale';
vidRes = get(vid, 'VideoResolution');
imWidth = vidRes(1);
imHeight = vidRes(2);
nBands = get(vid, 'NumberOfBands');
hImage = image( zeros(imHeight, imWidth, nBands),'Parent',handles.cameraAxes );
preview(vid,hImage);
start(vid);
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
sin imagen de perfil

Video en tiempo real en un GUI

Publicado por Bryan (1 intervención) el 23/06/2015 16:56:58
Hola,soy principiante en Matlab pero quería hacer lo mismo que tú haz hecho, y quería preguntar si alguien me podría ayudar. He tratado de hacerlo por mi cuenta pero no he podido lograr nada, ya probé los codigos que haz usado pero no sé donde agregarselo. Me podrian ayudar por favor?
Espero puedan ayudarme, basicamente así tengo la GUI pero no puedo programar los "pushbotton"
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

Video en tiempo real en un GUI

Publicado por gabriel (1 intervención) el 13/05/2013 01:59:56
buenas tardes chios este codigo excelente muchas gracias.
solo alguna duda me gustaria alguna explicacion en cada una de las lineas de codigo si comprendo como funciona pero quiera saber que es lo que hace realmente cada linea.
se los agradeceria muxisimo muxas graxias excelente tarde
saludos!!!!!!!!!!!!!!
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

Video en tiempo real en un GUI

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 13/05/2013 02:19:00
Bueno es parte del usuario poder investigar mas de los códigos que aportamos al foro de esa manera aprenderá mas acerca del tema.
El usuario Jorge comparte su código en el foro y cada usuario ya incrementa sus conocimientos sobre este tema, investigando cada función que se usa en este código.


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/1371532-FORMA_DE_APRENDER_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 gerald tajan

Video en tiempo real en un GUI

Publicado por gerald tajan (2 intervenciones) el 09/09/2014 03:00:16
de casualidad alguno sabe como podré visualizar 2 vídeos corriendo al tiempo en matlab, que al pausar uno se pausen los 2 y al reanudar se reanuden los 2?
la idea es que tengo un vídeo lo divido en frames, cada frame lo vuelvo una imagen, de cada imagen saco un histograma, ahora uno todos los histogramas en 1 solo vídeo, ahora tengo 2 vídeos que quiero ver simultáneamente.. gracias por cualquier ayuda :)
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
sin imagen de perfil

como mostrar un video hecho de frame

Publicado por Larry suarez (9 intervenciones) el 09/09/2014 19:56:18
saludos de 16 imágenes cree un video por el código implay e immovie
ahora deseo colocar el video en un axes de una guide
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
sin imagen de perfil

Video en tiempo real en un GUI

Publicado por Larry suarez (9 intervenciones) el 09/09/2014 19:59:07
tengo 16 imágenes hice un video de ellas
ahora quiero colocarlas en un axes de una guide
el video quiero que salga en la guide
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