J'ai un problème avec cette fonction
je l'utilise dans une boucle les 11 premier fois elle ne pose aucun problème et au 12 ème passage il me sort cette erreur que je ne comprend pas :
Je cherche a trouvé la distance entre 1 point et le centre d'une tache??? Improper assignment with rectangular empty matrix.
Error in ==> C:\MATLAB6p5\toolbox\matlab\elmat\sub2ind.m
On line 25 ==> mn(i) = min(varargin{i}(: ));
Error in ==> C:\MATLAB6p5\toolbox\images\images\bwselect.m
On line 58 ==> seed_indices = sub2ind(size(BW), r(: ), c(: ));
Error in ==> C:\Documents and Settings\...\MainP.M
On line 201 ==> Imbin_Light_Point1 = bwselect(Imbin_Light_Point,VecImbin_Light_Point_X(index_dist),VecImbin_Light_Point_Y(index_dist));
Voici le code
ci : coordonné du point
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 [VecImbin_Light_Point_X VecImbin_Light_Point_Y] = find(Imbin_Light_Point); n=size(VecImbin_Light_Point_X ); Distance_Vec=zeros(n,1); for i=1:n Diff_X=VecImbin_Light_Point_X(i)-ci(1); Diff_Y=VecImbin_Light_Point_Y(i)-ci(2); Distance_Vec(i)=sqrt(Diff_X * Diff_X+ Diff_Y * Diff_Y); end [Distance_centre_Point index_dist]= min(Distance_Vec); Imbin_Light_Point1 = bwselect(Imbin_Light_Point,VecImbin_Light_Point_X(index_dist),VecImbin_Light_Point_Y(index_dist)); [VecImbin_Light_Point_X1 VecImbin_Light_Point_Y1] = find(Imbin_Light_Point1); spot_center_x = mean(VecImbin_Light_Point_X1); spot_center_y = mean(VecImbin_Light_Point_Y1);
VecImbin_Light_Point_.. : coordonné de la tache
quelqu'un a t il une idée ?
Merci d'avance .
Partager