Matlabproblemchen

~DeD~

Enthusiast
Thread Starter
Mitglied seit
26.01.2006
Beiträge
2.870
Ort
Das kleine Haus auf Karkand
hi,
ich benutze einfahc mal meinen alten thread. folgendes problem:

ich bin gerade dabei etwas in matlab zu programmieren.
clear all
[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)
%Linien setzen
[a d] = ginput(2);%Anzahl der eingaben in klammern
d(2,1)= d(1,1);
line(a,d)

Y=[a d];
X=size(G);
z=(X(1,1)-Y(1,2))/50;
k=floor(z);
M:-),1)=d;
hold on
for i=1:k
d=d+[50;50];
M:-),i+1)=d;
line(a,d)
end

j=ceil(sqrt(k+1));
figure(4)
for i=1:k+1
C=[M(1,i);M(2,i)];
subplot(j-1,j,i), plot((improfile(G,a,C)))
[max,min] = findpeaks(improfile(G,a,C),'minpeakdistance',30);
hold on;
N = [max,min]

end

ein bild wird eingelesen bissel gewandelt und am ende wird die intensität ermittelt und geplottet. was ich jetzt seit mitlerweile ner woche nicht hinbekomme ist es mir aus den intensitätsplots die min/max-werte heraus zuziehen und in ne matrix zu schreiben. in dem markierten teil habe ich eigentlich vor, die werte zu finden, wobei ein mindestabstand von 30 pixel dazwischen sein soll.
die bilder werden folgendermassen aussehen
interferenz1.jpg
in den intensitätskurven hat man dann links und rechts des gitters nur murks, das muss ich auch noch wegschneiden, was ich ja mit den 30 pixeln abstand bezwecke.

so wie ich es habe, nimmt er aber nur die maximalwerte und schreibt mir die position dazu -.-

kennt sich da wer aus und kann mir weiterhelfen?
 

Anhänge

  • Unbenannt.jpg
    Unbenannt.jpg
    13,2 KB · Aufrufe: 61
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.

Ähnliche Themen

Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh