Précédent   Forum des professionnels en informatique > Environnements de développement > MATLAB > Images
Images Forum d'entraide sur le traitement d'images en MATLAB
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/02/2012, 16h54   #1
Invité régulier
 
Inscription : avril 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 20
Points : 8
Points : 8
Par défaut Enregistrer la vidéo d'un plot + title et label

Bonjour
J'aimerais savoir comment je peux sauvegarder en même temps que ma vidéo le texte qui est autour de la vidéo c'est à dire les titles des axes et le titre ou d'autre chose comme un text.

voici le code qui sert à créer la vidéo :
Code :
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
50
51
52
53
54
55
56
57
58
figure(8);
aviobj = avifile('res_num_lacher.avi');
m=moviein(length(Parametres(3,:)));
for i=1:1:length(Parametres(3,:));
    
    % On cherche les points de la fenêtre
    [Sav1,Xav1,Yav1,Sav2,Xav2,Yav2, Num_phase, OA, OB, OC, OD, Av1, Av2, Av3, Av4, Av11, Av22, Av33, Av44 ] = situation_phase_av(Parametres(3,i),Parametres(1,i),Parametres(2,i));
    
    % Barycentre de la surface de contact
    Xpg = Parametres(1,i) + ((lp/2)*cos(Parametres(3,i)) - (hp/2)*sin(Parametres(3,i)));
    Ypg = Parametres(2,i) + ((hp/2)*cos(Parametres(3,i)) + (lp/2)*sin(Parametres(3,i)));
    
    % Barycentre centre des surfaces de contact
    if Xav1 ~= 0
        [Bavx1,Bavy1] = centroid(Xav1,Yav1);
    end
    if Xav2 ~= 0
        [Bavx2,Bavy2] = centroid(Xav2,Yav2);
    end
    
    
    h1 = line('Xdata',[OA(1),OB(1),OC(1),OD(1),OA(1)],'Ydata',[OA(2),OB(2),OC(2),OD(2),OA(2)]);
    hav = line([Av1(1),Av2(1),Av3(1),Av4(1),Av1(1)],[Av1(2),Av2(2),Av3(2),Av4(2),Av1(2)],'Color','r');
    hav2 = line([Av11(1),Av22(1),Av33(1),Av44(1),Av11(1)],[Av11(2),Av22(2),Av33(2),Av44(2),Av11(2)],'Color','r');
    plot(Xpg,Ypg,'o')
 
 
    hold on;
    h1 = line('Xdata',[OA(1),OB(1),OC(1),OD(1),OA(1)],'Ydata',[OA(2),OB(2),OC(2),OD(2),OA(2)]);
    hav = line([Av1(1),Av2(1),Av3(1),Av4(1),Av1(1)],[Av1(2),Av2(2),Av3(2),Av4(2),Av1(2)],'Color','r');
    hav2 = line([Av11(1),Av22(1),Av33(1),Av44(1),Av11(1)],[Av11(2),Av22(2),Av33(2),Av44(2),Av11(2)],'Color','r');
     % On trace les surfaces de contact
    if Xav1 ~= 0
        fill(Xav1,Yav1,'g')
        plot(Xav1,Yav1,'*')
        plot(Bavx1,Bavy1,'x')
    end
    
    if Xav2 ~= 0
        fill(Xav2,Yav2,'g')
        plot(Xav2,Yav2,'*')
        plot(Bavx2,Bavy2,'x')
    end
    plot(Xpg,Ypg,'o')

    set(gca, 'DataAspectRatio', [1 1 1]);
    axis([3 4.2 -0.05 0.2 0 1 ]);
    title('Déplacement du pli dans une zone de lâcher');
    axis manual; 
    Tracer_phase;
    hold off;
    

m(:,i)=getframe;
aviobj = addframe(aviobj,m(:,i));
end
aviobj = close(aviobj);
Merci d'avance pour votre aide
Pilote26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2012, 17h09   #2
Modérateur
 
Avatar de Winjerome
 
Homme Jérôme
Inscription : septembre 2009
Messages : 3 598
Détails du profil
Informations personnelles :
Nom : Homme Jérôme
Âge : 24
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : septembre 2009
Messages : 3 598
Points : 6 824
Points : 6 824
Bonjour,

Les titres et labels étant situés hors des Axes, tu peux rentrer le handle de ta figure (et la position du rectangle voulu?)
Citation:
Envoyé par doc getframe
F = getframe(h) gets a frame from the figure or axes identified by handle h.

F = getframe(h,rect) specifies a rectangular area from which to copy the pixmap. rect is relative to the lower left corner of the figure or axes h, in pixel units. rect is a four-element vector in the form [left bottom width height], where width and height define the dimensions of the rectangle.
au lieu de ton Axes:
Citation:
Envoyé par doc getframe
F = getframe gets a frame from the current axes.
__________________
Débutant en MATLAB? Vous voulez faire une Interface Graphique? Les Tutoriels et la FAQ sont là pour vous aider
Une erreur? FAQ : Messages d'erreur et avertissements
"Ça ne marche pas" n'est pas une réponse acceptable Expliquez clairement votre problème (erreurs, résultats non attendus...).
Citation:
En essayant continuellement on finit par réussir. Donc: plus ça rate, plus on a de chance que ça marche. - Jacques Rouxel
L'expérience, c'est le nom que chacun donne à ses erreurs - Oscar Wilde
Je suis régulièrement sur le chat DVP - Pas de question technique par MP, Merci
Winjerome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 08h25   #3
Invité régulier
 
Inscription : avril 2010
Messages : 20
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 20
Points : 8
Points : 8
Merci pour votre aide. Pour faire une acquisition sur la fenêtre complète j'ai utilisé : getframe(gcf)
Pilote26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h14.


 
 
 
 
Partenaires

Hébergement Web