2012-05-26 11 views
8

Editted:Cómo mostrar varias imágenes en el mismo figue - Matlab

Hii, siento no mencionar que antes, lo que tengo que hacer es mostrar 6 imágenes en la misma figura, al mismo tiempo. Además, en cada imagen (cuadro) que necesitan para dibujar algunos puntos (mi código de seguimiento de los movimientos de la cara - los ojos, la nariz, los labios.) Tengo 246 imágenes (frames)

Ésta es la principal funciones que uso:

// The points/ coordinates of the lips, eyes and nose of the image "i". 
Points = createPointsStructure (landmarks , i , NumOfLandarkPerFrame); 
    // Draw landmarks and splines on the frame i (and draw/show the frame) 
DrawAllPointsOnFace (pointArr , Points , img , 1 , position, i); 

¿Alguna idea de cómo puedo hacerlo?


Necesito escribir un código que muestre 6 imágenes en la misma figura (al mismo tiempo). y permite al usuario elegir una de las imágenes para editarla (haciendo clic en ella).

Cualquier ayuda ¿cómo puedo hacerlo?

Gracias de antemano.

+1

Ha intentado " función subplot "? –

+0

Sí, lo he hecho, pero no funcionó como debería. La mayor parte de la figura estaba vacía y las imágenes eran tan pequeñas. –

+0

@HowaidaKhoureieh: ¿puedes mostrar el código que has probado hasta ahora? – Amro

Respuesta

14

Aquí está un ejemplo sencillo para empezar:

function ImagesExample() 
    %# read images in a cell array 
    imgs = cell(6,1); 
    for i=1:6 
     imgs{i} = imread(sprintf('AT3_1m4_%02d.tif',i)); 
    end 

    %# show them in subplots 
    figure(1) 
    for i=1:6 
     subplot(2,3,i); 
     h = imshow(imgs{i}, 'InitialMag',100, 'Border','tight'); 
     title(num2str(i)) 
     set(h, 'ButtonDownFcn',{@callback,i}) 
    end 

    %# mouse-click callback function 
    function callback(o,e,idx) 
     %# show selected image in a new figure 
     figure(2), imshow(imgs{idx}) 
     title(num2str(idx)) 
    end 
end 

enter image description here

Otra función a estudiar es la función MONTAGE del IPT Caja de herramientas:

%# given the above cell array `imgs` 
montage(cat(4,imgs{:})) 
+2

+1, muy bien detallado. –

+0

@Amro, muchas gracias por la respuesta. Es realmente útil. Pero edité la pregunta, y estaría muy feliz si me ayudaras con eso. Gracias de nuevo. –

Cuestiones relacionadas