Domanda

Sto creando 49 figure in Matlab, sono tutti creati automaticamente una dopo l'altra. Voglio che anche automaticamente essere salvati come .tif o .jpg immagini con i nomi corrispondenti al loro numero figura. Posso farlo? E se sì, come?

Il codice per la creazione delle figure è:

for num_picture=0:48
  ...
  figure (num_picture+1)
  imshow (screen_im)
end

La parte ... è dove tutti i calcoli di screen_im sono.

Voglio quelle immagini al fine di creare un filmato da loro, se c'è un modo in cui posso creare il filmato formare automaticamente Matlab, sarebbe bene anche, in realtà sarà meglio.

È stato utile?

Soluzione

È possibile salvare cifra attuale in un file con STAMPA di < a href = "http://www.mathworks.com/help/techdoc/ref/saveas.html" rel = "noreferrer"> comando SAVEAS generare il nome file utilizzando contatore di ciclo:

saveas(sprintf('img%d.tif',num_picture))

o

 print('-dtiff','-r300',sprintf('img%d.tif',num_picture))

Altri suggerimenti

Per rispondere alla tua seconda domanda, dare un'occhiata al avifile(). Tuttavia, ho avuto più fortuna risparmiando fotogrammi individualmente (problemi di qualità di compressione, se non ricordo male).

Per salvare singoli fotogrammi, è possibile utilizzare imwrite() o print() con un -dpng o un'opzione simile. Da lì, l'uso sprintf() per generare un nome di file con il numero di frame in esso, e hai la maggior parte di quello che vi serve. Avrete bisogno di un qualche tipo di programma di editor di filmati (VideoMach, ecc) per trasformare tali fotogrammi in un film se non si utilizza avifile di Matlab (), tuttavia.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top