bonjour,
je souhaite créer une fichier avi à partir d'une série d'images bmp 24 bits en 800x600.
Voilà mon script :
Code matlab : Sélectionner tout - Visualiser dans une fenêtre à part
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 clear; cdd=pwd rep = 'C:\\MlabWork\\'; nom = 'MesImages'; repBMP = strcat(rep, 'bmp24\\',nom,'\\'); aviObj = avifile(strcat(nom,'.avi'),'fps',24); extension = '*.bmp'; chemin = fullfile(repBMP,extension); list = dir(chemin); for n = 1:numel(list) [pathstr, name, ext, versn] = fileparts(list(n).name); [img map]= imread(fullfile(repBMP,list(n).name), extension(3:end)); % RGB = ind2rgb(img, map); % f = im2frame(RGB); f = im2frame(img); aviObj = addframe(aviObj, f); end aviObj = close(aviObj);
Mais j'ai ces messages :
Mes images ont bien des dimensions multiples de 4 puisqu'elles sont en 800x600Warning: The frame height has been padded to be a multiple of four as required by the specified codec.
> In avifile.addframe at 166
In BmpToAvi at 24
Warning: The frame width has been padded to be a multiple of four as required by the specified codec.
> In avifile.addframe at 172
In BmpToAvi at 24
De plus je n'arrive pas à lire avec le lecteur windows le fichier avi créé
Où est mon erreur ?
[edit]
En regardant les propriétés de aviObj j'ai :
[/edit]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Adjustable parameters: Fps: 24 Compression: 'Indeo5' Quality: 75 KeyFramePerSec: 2.1429 VideoName: 'MesImages.avi' Automatically updated parameters: Filename: 'MesImages.avi' TotalFrames: 150 Width: 804 Height: 604 Length: 0 ImageType: 'Truecolor' CurrentState: 'Closed'
Partager