Je débute en matlab, j'ai programmé des lignes de code cité ci dessous. Mais j'ai constaté que mon code et gourmand en temps de calcul:
Pouvez–vous m’aidez à réecrire le code pour évitez le parcourt matricielle dans le but d'optimiser dans le temps ??
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 K=[0.25 0.5 1]; INIT=K(1); I0=imresize(ImageReel,INIT,'nearest'); s=size(I0); Speau=0.77; Sfond=0.22; %M0 et P0 se sont des matrices binaires for i=1:s(1)%parcour row for j=1:s(2)%parcour col if(i==1|j==1|i==s(1)|j==s(2)) if (P0(i,j)==1) M0(i,j)=1; end else E=energie(P0,i,j);%fonction qui calcule l'énergie de chaque pixel dans un bloc de taille 3*3 if(E>Speau|E<Sfond) M0(i,j)=0; else M0(i,j)=1; end end end end






Répondre avec citation
Partager