Matlabproblemchen

~DeD~

Lt. Commander
Registriert
Juni 2006
Beiträge
1.725
Hi,

ich schreibe gerade ein Script in MATLAB und komme gerade an einer stelle net weiter.
[name, path] = uigetfile('*.jpg', 'Select Data-File');
bildname = [path, name];
B = imread(bildname);
[n m l] = size(B);
I=B(:,:,1);
G = mat2gray(I); %Intensität auf 0-1 setzen
figure(3)
imshow(G)

[a b] = ginput(2);%Anzahl der eingaben in klammern
b(1,1)= a(1,1);
line(a,b)


figure(4)
improfile(I,a,b)

Ich klicke zweite Punkte an. Damit diese in einer Ebene sind setzte ich den x-Wert gleich und damit man es sieht wird da auch ne schöne Linie eingezeichnet. aAf dieser Linie wird dann die Intensität angezeigt.
Das Problem ist hierbei folgendes: Ohne das gleichsetzten der Koordinaten wird die Linie genau zwischen den Punkten, die ich angeklickt habe, gezogen. Schreibe ich diesen befehl dazu, dann wird zwar der x-Wert gleichgesetzt aber die Linie wird nicht richtig gezogen. ich mache gleich mal ein bild und poste es.
Unbenannt.jpg
Rote Punkte hatte ich angeklickt. Der Punkt a rutscht warum auch immer nach unten. Der Punkt b bleib da wo ich gecklickt habe, ohne in die gleiche Zeile zu springen.
a =

173
356

>> b

b =

173.0000
45.0000

Mich interessiert auch warum die Anzeige der Koordinaten unterschiedlich ist.
 
Zuletzt bearbeitet:
Wenn ich das richtig sehe, dann werden mit "ginput" die x-Werte nach "a" und die y-Warte der Punkte nach "b" geschrieben (a=(x1, x2); b=(y1,y2)).
 
Ein "normaler" Punkt wird ja normalerweise mit x,y angegeben (2-dim). "ginput" liefert aber nur Vektoren mit jeweils den x- bzw. den y-Werten der Koordinaten also a=(x1, x2...) und b=(y1,y2...). Du brauchst und möchtest aber a=(x1,y1) und b=(x2,y2).
 
das ist mir klar. ich will wissen warum ich b=b da stehen haben muss

Mit b(2,1)= b(1,1) überschreibe ich ja quasi nur den y-wert mit dem x-wert. Bei einer Matrix wäre das noch schwachsinniger, da die erste spalte a und nicht b ist

edit:

wenn ich mir [a b] ausgeben lasse kommt
>> [a b]

ans =

178.0000 48.0000
598.0000 48.0000

dann ergibt das zwar einen sinn, aber seit wann stehen die x-werte in der zweiten spalte?
 
Zuletzt bearbeitet:
Zurück
Oben