منتديات الجلفة لكل الجزائريين و العرب - عرض مشاركة واحدة - comment résoudre ce probleme dans matlab
عرض مشاركة واحدة
قديم 2012-06-25, 23:48   رقم المشاركة : 8
معلومات العضو
fayssal22
عضو جديد
 
إحصائية العضو










افتراضي

اقتباس:
المشاركة الأصلية كتبت بواسطة khawla MI مشاهدة المشاركة
السلام عليكم

اود تعلم كيفية ادراج الmex function الى برنامج ماتلاب ادا كان ممكن يا أخي جمال و يا أخي فيصل و يا كل من لديه معلومة امدادي بمثال سهل يمككني فهمه
مثلا مادا افعل لو اردت كتابة هادا الكود و مناداته في الماتلاب عن طريق ال mex file
كود:

function k = Interpoler(I,x,y,q)
[X,Y]=size(I);
switch q
case 1
[m,n] = size(I);
x1 = round(x); x1 = max(x1,1); x1=min(x1,m);
y1 = round(y); y1 = max(y1,1); y1=min(y1,n);
k = I(x1,y1);
case 2
n=floor(x);n=max(n,1);n=min(n,X-1);
m=floor(y);m=max(m,1);m=min(m,Y-1);
sigma_x=x-n;
sigma_y=y-m;
k=(1-sigma_x)*(1-sigma_y)*I(n,m)+sigma_x*(1-sigma_y)*I(n+1,m)+(1-sigma_x)*sigma_y*I(n,m+1)+sigma_x*sigma_y*I(n+1,m+1);

otherwise
disp('invalide data');
end
c'est un programme qui fait l'interpolation d'une image
a titre d'exemple

merci d'avance

عذرا على التاخير لانني ظننت ان الموضوع فقد اهميته
شوفي


les mex files ce sont des fichiers ecrits en C ou fortran avec une syntaxe légèrement différente au langage c ou fortran standard
par exemple votre fonction interpoler.c
tapez la commande mex interpoler.c ,dans command window, et vous aurez une nouvelle fonction sous forme .dll (selon la version du matlab et le système d'exploitation) dans votre cas interpoler.dll
il suffit d'appeler cette fonction dans le programme principal

a l’égard des exemples il y en a beaucoup sur le net............

si il y a quoi que ce soit n'hésitez pas a demander









رد مع اقتباس