LabVIEWForum.de - Detail in Bild erkennen ->Anschließend Pixelabstand berechnen

LabVIEWForum.de

Normale Version: Detail in Bild erkennen ->Anschließend Pixelabstand berechnen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

kennt jemand eine Möglichkeit, zwei Details in einem Bild zu erkennen und dann einen Pixelabstand auszugeben.
Also ich klebe zum beispiel je einen Rote Punkt auf 2 Bewegte Teile und mache ein Video davon.
Anschließend will ich aus den Einzelbildern den Abstand der zwei Punkte ausgeben.

Wenn dies mit LabVIEW nicht geht, kennt jemand eine Möglichkeit so etwas mit anderer Software zu machen?

Gruß hp
sorry - kann jemand den Beitrag in LabVIEW Allgemein verschieben? Oder kann ich das selber?
' schrieb:sorry - kann jemand den Beitrag in LabVIEW Allgemein verschieben? Oder kann ich das selber?
Nein, das kann nur ein Mod Anniemacht_2
Ist auch kein Problem, aber schön wäre es gewesen, deinen ersten Beitrag zu editieren, anstatt nach 3 Minuten noch einen dran zu hängen.

Jetzt noch eine Antwort:
Ich denke, mit dem NI-Vision Toolkit ist das sicherlich möglich. Deshalb habe ich es auch in diesen Bereich verschoben.

Gruß, Jens
Hallo,

(ich habe die Frage schon im LabVIEW Vision Unterforum gestellt, aber leider keine Antwort erhalten. Vielleicht kann mir hier jemand helfen)

kennt jemand eine Möglichkeit, zwei Details in einem Bild zu erkennen und dann einen Pixelabstand auszugeben.
Also ich klebe zum beispiel je einen Rote Punkt auf 2 Bewegte Teile und mache ein Video davon.
Anschließend will ich aus den Einzelbildern den Abstand der zwei Punkte ausgeben.

Wenn dies mit LabVIEW nicht geht, kennt jemand eine Möglichkeit so etwas mit anderer Software zu machen?

Gruß hp
Zitat:kennt jemand eine Möglichkeit, zwei Details in einem Bild zu erkennen und dann einen Pixelabstand auszugeben

Du könntest eine Maske mit dem gesuchten Detail über deine Bildmatrix laufen lassen und eine Kreuzkorrelation durchfürhen. Wenn der Korrelationskoeffizient einen bestimmten Schwellwert überschreitet hast du dein Detail gefunden und weißt so die x,y- Koordinaten davon. Der Schwellwert hängt dabei maßgeblich davon ab wie genau du vorher weißt wie dein "Detail" aussieht und wie groß die Schrittweite der gleitenden Maske ist. Ausprobieren.

Sowas habe ich in Matlab gemacht; sowohl mit Bildern als auch mit Signalverläufen. Geht bestimmt auch in LabVIEW, wenn nicht sogar leichter.

Das ist allerdings eine sehr rechenaufwendige Methode. Wenn du da was von Videos erzählst weiß ich nicht ob Kreuzkorrelation was für dich ist.



Gruß dimitri
Rechenintensität ist mir völlig egal! Das darf auch ewig dauern...

"Du könntest eine Maske mit dem gesuchten Detail über deine Bildmatrix laufen lassen"

Von der Idee her, ist es genau das was ich suche! ABER kann mir jemand sagen, wie ich das im LabVIEW umsetzte?
Ich habe beipielsweise ein Bild mit einem Roten Punkt und ein Bild von diesem roten Punkt.->Wie bekomme ich LabVIEW dazu, mir zu sagen wo der Punkt liegt (Beispielsweise in Pixel Horizontal und Pixel vertikal)?

Gruß hp

@dimitri84 - DANKE für dem Amsatz!
Würdest du mir eventuell dein Matlab (Simulink?) Modell zur Verfügung stellen?
Offtopic

Doppelposting. Themen zusammengefügt.

Bitte LVF-Regeln beachten!

Gruß, Jens
Jetzt nicht böse bemeint, aber ich habe doch extra darum gebeten, (nachdem ich aus versehen im falschen forum gepostet habe) das ganze in ALLGEMEIN zu verschieben. Ich besitze das Modul LabVIEW Vision nicht.
Ich hätte dir sofort die m-files hier hochgeladen aber es handelt sich um alte Praktika ausm Studium. Ich habe sowas nie besonders gut archiviert; denke nicht, dass ich zuhause was finde ... aber ich schau mal.

In der Palette "Mathematik" -> "Wahrscheinlichkeit & Statistik" findest du 3 verschiedene VI's um einen Korrelationskoeffizienten zu berechnen (hab die auch noch nie benutzt). Was du also "nur noch" basteln musst ist das Abtasten der Bildmatrix.

Deine Maske ist eine 2D-Matrix vom gesuchten roten Punkt der Größe n x m.
1) Korrelationskoeffizient von Maske und Bildausschnitt (0+n,0+m). Korrkoeff+Index Speichern.
2) Korrelationskoeffizient von Maske und Bildausschnitt (0+n,1+m). Korrkoeff+Index Speichern.
3) Korrelationskoeffizient von Maske und Bildausschnitt (0+n,2+m). Korrkoeff+Index Speichern.
....
....
?)Korrelationskoeffizient von Maske und Bildausschnitt (1+n,0+m). Korrkoeff+Index Speichern.
?)Korrelationskoeffizient von Maske und Bildausschnitt (1+n,1+m). Korrkoeff+Index Speichern.
?)Korrelationskoeffizient von Maske und Bildausschnitt (1+n,2+m). Korrkoeff+Index Speichern.
....
....
usw.

Abschließend schaust du dir mal die ganzen KorrKoeffs an und erkennst Maxima an den Stellen wo sich der rote Punkt aus der Maske und der rote Punkt aus dem Bild überlappen. Aus dem zu den Maxima gehörenden Index weißt du nun wo sich der Punkt im Bild befindet.

Fang einfach mal an und wenn du ein Problem hast wird sich hier bestimmt jemand finden der dazu was schlaues sagt.
Zitat:Wie bekomme ich LabVIEW dazu, mir zu sagen wo der Punkt liegt
Das ist etwas zu allgemein gefragt Wink

PS Kann auch sehr gut sein, dass es was fertiges gibt. Schadet jedoch nie etwas selbst zu machen. Meistens lernt man was dabei.





Gruß dimitri
' schrieb:Ich besitze das Modul LabVIEW Vision nicht.
Das hast du bisher nicht erwähnt.;)Deshalb ist der Thread auch damals im VISION-Bereich gelandet, denn ich dachte, da passt er von der Thematik hin. Also ab in den Bereich Grafik & Sound damit! Zufrieden?

Gruß, Jens
Seiten: 1 2
Referenz-URLs