منتديات الجلفة لكل الجزائريين و العرب - عرض مشاركة واحدة - comment résoudre ce probleme dans matlab
عرض مشاركة واحدة
قديم 2012-05-09, 15:21   رقم المشاركة : 1
معلومات العضو
khawla MI
عضو مشارك
 
إحصائية العضو










افتراضي comment résoudre ce probleme dans matlab

السلام عليكم
encore une fois un probleme dans le temps de calcule
le programme qui va etre décrit per la suite prendre plus de 35 seconds pour s'executer je veut minimiser ce temps à 0.08 s est ce que ça est fesaible et s'il est le cas comment je peut le minimiser
voila le programme

كود:
global nx
global ny
global dx
global dy
global PD
I=imread('lena.jpg');
I=rgb2gray(I);%I est une image 
[X Y]=size(I); 
J= zeros(X,Y); %Image interpolée
dx = 26;dy = 26;
Tdx = 0:dx:X-1;Tdx = [dx , Tdx, X-1, X-1+dx];
Tdy = 0:dy:Y-1;Tdy = [dy , Tdy, Y-1, Y-1+dy];
nx = length(Tdx);ny = length(Tdy);
PD = zeros(nx*ny,2); 
k=1;
for i=1:length(Tdx)
for j=1:length(Tdy)
PD(k,1)=round(Tdx(i)); PD(k,2)=round(Tdy(j)); 
k=k+1; 
end
end
for x=1:X,
for y=1:Y,
T=Interpolation(x-1,y-1) + 1 ; 
x1 = max(round(x),1); x1=min(x1,X);
y1 = max(round(y),1); y1=min(y1,Y);
J(x,y) = I(x1,y1);
end
end
Où Interpolation est une fonction définit comme:
كود:
function Inter = Interpolation(x,y)
global nx
global ny
global dx
global dy
global PD
i = floor(x/dx)-1; j = floor(y/dy)-1; 
u=(x/dx)-floor(x/dx); v=(y/dy)-floor(y/dy);
Inter =[0,0];
for l=0:3
for m=0:3
k = (i+l+1)*nx + (j+m+2);
 
Inter = Inter + Auxiliaire(u,l)*Auxiliaire(v,m).*PD(k,:);
end
end
de meme la fonction Auxiliaire est definit par:
كود:
function A = Auxiliare(x,i)
switch i
case 0
A=((1-x).*(1-x).*(1-x))/6;
case 1
A=(3*x.*x.*x - 6*x.*x + 4)/6;
case 2
A=(-3*x.*x.*x + 3*x.*x + 3*x +1)/6;
case 3
A=x.*x.*x/6;
otherwise
disp('entré non valide.')
end
la fonction qui prend beaucoup de temps est la fonction Interpolation je veut la minimiser parce que je doit faire appelle de cette fonction dans des autres fonctions et pour un nombre important de fois et ça ne m'aide pas avec un temps de calcule égale à 30 seconds est ce que vous pouver m'aider

merci d'avance








 

الصور المرفقة
نوع الملف: jpg lena.jpg‏ (9.6 كيلوبايت, المشاهدات 11)

رد مع اقتباس