je débute en matlab,
J'ai un fishier .txt créer avec matlab. comment je peut le convertir en fishier.mat avec matlab??
je débute en matlab,
J'ai un fishier .txt créer avec matlab. comment je peut le convertir en fishier.mat avec matlab??
Tout dépend de ce que contient le fichier .txt
Si tu as une fonction matlab qui peut ouvrir le fichier texte ,y lire les données et créer les variables adéquates, il te suffit de sauvegarder ces variables dans un .mat en utilisant
Code : Sélectionner tout - Visualiser dans une fenêtre à part save nom_de_variable
Voici le code de création de mon fishier.txt
comment je peux lire le contenu du fishier .txt pour le convertir en .mat
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
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 fid = fopen('Base.txt','w'); compte=0; peau=0; nonpeau=0; fprintf(fid,'%s \t %s \t %s \t %s \n','H','S','V','classe'); for f=1:10 ImageReel = imread(['BaseAppSelectionNum/',int2str(f),'.jpg'],'jpg'); Masque = imread(['MasqueBaseAppSelectionNum/',int2str(f),'.jpg'],'jpg'); s=size(ImageReel); m1=s(2)/2; ImageReel_hsv=rgb2hsv(ImageReel); for i=1:10 for j=m1:520 Masque(i,j); if Masque(i,j)==1 nonpeau=nonpeau+1; classe='A'; else peau=peau+1; classe='B'; end ImageReel_h = double(ImageReel_hsv(i,j,1)); ImageReel_s = double(ImageReel_hsv(i,j,2)); ImageReel_v = double(ImageReel_hsv(i,j,3)); fprintf(fid,'%f \t %f \t %f \t %s \n',ImageReel_h,ImageReel_s,ImageReel_v,classe); compte=compte+1; end; end; end fclose(fid); fclose(fid);
Bonjour,
La fonction doc textscan devrait te permettre de faire ce que tu veux.
La et de nombreuses discussions à ce sujet t'y aideront.
j'essaye d'utiliser ce code pour la concaténation du contenu de 12 fishier.txt ayant chacun 1colonne et 11819520 lignes pour avoir un fishier.mat contenat 12 variables et 11819520 lignes :mais il me lance cette erreur:
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
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
59 clear all fid1=fopen('BaseH.txt','rt'); XH=fscanf(fid1,'%f'); fclose(fid1); fid2=fopen('BaseS.txt','rt'); XS=fscanf(fid2,'%f'); fclose(fid2); fid3=fopen('BaseV.txt','rt'); XV=fscanf(fid3,'%f'); fclose(fid3); fid4=fopen('BaseY.txt','rt'); XY=fscanf(fid4,'%f'); fclose(fid4); fid5=fopen('BaseCR.txt','rt'); XCR=fscanf(fid5,'%f'); fclose(fid5); fid6=fopen('BaseCB.txt','rt'); XCB=fscanf(fid6,'%f'); fclose(fid6); fid7=fopen('BaseR.txt','rt'); XR=fscanf(fid7,'%f'); fclose(fid7); fid8=fopen('BaseG.txt','rt'); XG=fscanf(fid8,'%f'); fclose(fid8); fid9=fopen('BaseB.txt','rt'); XB=fscanf(fid9,'%f'); fclose(fid9); fid10=fopen('BaseRnormalise.txt','rt'); Xr=fscanf(fid10,'%f'); fclose(fid10); fid11=fopen('BaseGnormalise.txt','rt'); Xg=fscanf(fid11,'%f'); fclose(fid11); fid12=fopen('BaseBnormalise.txt','rt'); Xb=fscanf(fid12,'%f'); fclose(fid12); fid13=fopen('BaseClasse.txt','rt'); Y=fscanf(fid13,'%f'); fclose(fid13); X=[XH,XS,XV,XY,XCR,XCB,XR,XG,XB,Xr,Xg,Xb]; save FishierMatEssaye X Y;
comment je peut résoudre cette erreur pour pourvoir créer mon fishier.mat??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 ??? Error using ==> fscanf Out of memory. Type HELP MEMORY for your options. Error in ==> conversionTXTenMat at 49 Xb=fscanf(fid12,'%f');
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager