INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Edgde detection



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

03.10.2019, 15:14
Beitrag #1

Jolle Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2019

2016
2019
kA



Edgde detection
Hallo Leute,

das hier ist mein erster Beitrag in diesem Forum und ich hoffe ihr könnt mir mit meinem Problem weiterhelfen:
Ich bin ein blutiger Anänger was Labview angeht und versuche ein Programm zu basteln, das bei einer Kameraaufnahme erkennt, wenn ein quadratisches Objekt in das Bild gelegt wird.
Ich habe bei meinen Recherchen rausgefunden, dass es einige SubVIs gibt die das direkt erledigen können. Allerdings sind diese alle beim Vision development module und nicht beim Image acquisition module erhältlich. Leider steht mir nur das letztere zur verfügung. Hat jemand eine Idee wie ich das bewerkstelligen kann bzw. ob das überhaupt möglich ist? Leider ist es mir nicht möglich meine Programme anzuhängen. Ich hoffe das ist jetzt und in Zukunft kein Problem.

Grüße Jolle
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.10.2019, 20:29
Beitrag #2

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.681
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Edgde detection
Hallo Jolle,

Willkommen im LVF ...

Also ich würde das Bild wahrscheinlich mit einer geeigneten Schwelle binarisieren und dann die Bool-Übergänge als X/Y-Werte extrahieren. Dann müsste man irgendwie die Eckpunkte extrahieren. Da ist es sicher wichtig zu wissen, ob das Quadrat in einer Vorzugsrichtung unter der Kamera liegt, wenn es denn eins ist, oder ob es irgendwie dort liegen kann.
Im letzteren Fall ist hier sicher die größte Schwierigkeit. Wenn man die Eckpunkte aber hat, kann man die Punkte dazwischen in eine Linear-fit Funktion geben und prüfen, ob eine Gerade herauskommt. Wenn das gegeben ist, würde ich prüfen, ob die gegenüberliegenden Streckenabschnitte parallel zueinander sind, und ob alle 4 nahezu gleich lang sind.


Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.10.2019, 16:53
Beitrag #3

Jolle Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2019

2016
2019
kA



RE: Edgde detection
Cool vielen Dank für deine Antwort. Ich versuche die Sachen mal umzusetzen, aber das wird ein bisschen Zeit beanspruchen.
Ich melde mich dann nochmal, ob das so geklappt hat.

Gruß Jolle
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.10.2019, 12:22
Beitrag #4

83Daniel Offline
LVF-Grünschnabel
*


Beiträge: 36
Registriert seit: Oct 2017

2019
2010
DE_EN


Deutschland
RE: Edgde detection
Such mal bei Google nach OpenCV und LabVIEW, da gibt es einige Fertige Bibliotheken. Die machen genau das was du willst.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.10.2019, 18:14
Beitrag #5

Jolle Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2019

2016
2019
kA



RE: Edgde detection
Servus, also ich hab jetzt mein Bild binärisiert, gebe mir dann ein Array mit der Pixelzahl aus und kann mein Objekt nach einigen Arrayoperationen mit roten Punkten umranden.
Allerdings lass ich zur Zeit vier for-loops über die Anzahl der Pixel laufen (um dann die Differenz benachbarter Pixel zu berechnen und ab einer gewissen Schwelle eben mit einen roten Punkt zu markieren).
Anscheinend ist das aber zu viel Rechenarbeit für Labview denn das Programm bricht immer zusammen (obwohl es mir das gewünschte Bild davor ausgibt).
Habt Ihr da irgendwelche Vorschläge wie ich dass optimieren kann?
Außerdem möchte ich immer noch die Eckpunkte detektieren, da fehlt mir aber noch die Idee wie ich mit Arrayoperationen an die Koordinaten komme.
Wäre cool wenn mir da jemand auf die Sprünge helfen könnte.
Liebe Grüße 2hands
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.10.2019, 21:41
Beitrag #6

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.681
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Edgde detection
(13.10.2019 18:14 )Jolle schrieb:  ...
Anscheinend ist das aber zu viel Rechenarbeit für Labview denn das Programm bricht immer zusammen (obwohl es mir das gewünschte Bild davor ausgibt).
Habt Ihr da irgendwelche Vorschläge wie ich dass optimieren kann?
...

Hallo Jolle,

zum einen müsstest du mal erklären, was du mit dem Zusammenbruch meinst und zum anderen: Warum hängst du nicht das von dir erstellte VI an?
So ist es etwas viel gerate...

Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
15.10.2019, 17:43
Beitrag #7

Jolle Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: Oct 2019

2016
2019
kA



RE: Edgde detection
Hallo Marko,

also das Programm stoppt nicht nachdem es mir das Bild ausgibt. Sobald ich irgendetwas anklicke kommt eine Fehlermeldung und das Programm schließt sich.
Du hast recht. Ich versuche mal das Programm anzuhängen. Vielleicht kann man mir dann bessere Tips geben Smile
Wie gesagt vermute ich, dass die for-loops das Problem darstellen.

Liebe Grüße
Jolle


Angehängte Datei(en)
16.0 .vi  edgedet.vi (Größe: 50,66 KB / Downloads: 4)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.10.2019, 21:05
Beitrag #8

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.681
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: Edgde detection
(15.10.2019 17:43 )Jolle schrieb:  Wie gesagt vermute ich, dass die for-loops das Problem darstellen.

Hallo Jolle,

ich denke , wenn sich dein Programm bzw. LabVIEW einfach schließt, dann liegt das sicher nicht an den For-Loops. Wenn Forloops ein Problem haben, weil die Datenmenge zu groß ist, dann gibt es i.d.R. eine Speicherüberlaufmeldung.
Ich habe dir dein VI aber mal etwas modifiziert - die Vision-VIs kann ich nicht öffnen, da ich hier kein Vision installiert habe. Nach deiner Beschreibung denke ich aber, dass es da irgendwo haken wird.

Bei den For-Loops musst du dir angewöhnen, die Autoindizierung zu nutzen und ansonsten die Polymorphie von LabView, die deine ersten Doppelschleifen obsolet macht, zu nutzen.

Gruß, Marko


Angehängte Datei(en) Thumbnail(s)
   

16.0 .vi  Unbenannt 1.vi (Größe: 8,66 KB / Downloads: 1)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  kein output bei edge detection oe-ms1 0 1.110 27.04.2018 07:19
Letzter Beitrag: oe-ms1
  Frage zu Shape Detection Faitagg 3 3.214 16.11.2009 10:45
Letzter Beitrag: Faitagg
  Edge Detection in 10-Bit Graubildern Darkwolf359 0 2.692 18.09.2007 10:01
Letzter Beitrag: Darkwolf359
  Vision 8.5 - Enhanced Edge Detection Algorithm Darkwolf359 0 2.210 18.09.2007 08:58
Letzter Beitrag: Darkwolf359
  pinhole detection pa647 0 2.122 15.08.2006 13:49
Letzter Beitrag: pa647

Who read this thread?
15 User(s) read this thread:
MaxP, BNT, Lucki, schwabo11, Freddy, Sakis, Jolle, Trinitatis, GerdW, IchSelbst, Morpheus, kpa, 83Daniel, jg, MarcoN

Gehe zu: