hallo, ich weiss nicht, ob ich hier richtig bin, aber ich möchte folgende Frage stellen: Auf dem Boden liegen verschiedene Kugeln, deren Abstand untereinander möglichst genau vermessen werden soll. Geht das mittels Kamera? Ich würde mich freuen, wenn jemand eine Antwort weiss und sages chon mal danke
Herbert Sondermann schrieb: > hallo, > ich weiss nicht, ob ich hier richtig bin, aber ich möchte folgende Frage > stellen: > Auf dem Boden liegen verschiedene Kugeln, deren Abstand untereinander > möglichst genau vermessen werden soll. > > Geht das mittels Kamera? Im Prinzip: ja. Aber: was ist über die Kugeln bekannt was bedeutet 'möglichst genau' was ist über die Bodenbeschaffenheit (Unebenheit) bekannt wie wird die Kamera fixiert, wird sie das überhaupt?
Modellbauer machen gerne Fotos von Originalen mit einem Maßstab im Bild. Wenn der auch noch 3D ist, dann hat man auch eine gewisse räumliche Aussagekraft.
>Auf dem Boden liegen verschiedene Kugeln, deren Abstand untereinander >möglichst genau vermessen werden soll. Klingt irgendwie nach Boule. Kamera von oben...
ist auch boulen :-) Es gibt noch keine Möglichkeit, den Abstand im mm-Bereich zu vermessen
Herbert Sondermann schrieb: > ist auch boulen :-) > > Es gibt noch keine Möglichkeit, den Abstand im mm-Bereich zu vermessen Das wirst du auch mit einer Kamera nicht so einfach hinkriegen. Zumindest nicht so, wie du dir das vorstellst: Du baust dich da irgendwo auf, hältst die Kamera in Richtung Ort des Geschehens und auf dem Display steht "Blau-zu-Rot: 89.7 Millimeter" So einfach ist das nicht.
es handelt sich um den freizeitsport boulen hier gibt es eine kleine Holzkugel(30 mm Durchmesser) und diverse Stahlkugeln(Durchmesser ca. 75mm) Der Boden ist uneben Die Messgenauigkeit sollte im mm- Bereich liegen
Jedes Objektiv hat eine gewisse optische Verzerrung. Daher müßte die Messung immer unter gleichen Bedingungen stattfinden und ein Maß als Referenz daneben liegen. Einfacher wäre auf Millimeterpapier zu spielen.
Gut Du müsstest: Aus einem Kamerabild den exakten Abstand einer Kugel von der Kamera und den exakten Winkel extrahieren unter dem die Kugel von der Kamera aus sichtbar ist. Prinzipiell ist das schon möglich, weil du ja das Zielobjekt kennst. Allerdings ist dann nichts mehr mit ~75mm. Das muss dann schon genauer sein. Dazu muss man erst einmal die Kugel im Bild finden. Bei sich gegenseitig verdeckenden Kugeln gar nicht so einfach. Aber seis drumm: Angenommen du hast die Objektivverzeichnung rausgerechnet, dann kann man in der Umkehrung eine virtuelle Kugel so im Raum platzieren, dass ihre perspektivische Abbildung sich mit dem Bild deckt. Damit erhält man dann die genauen 3D-Positionen aller Kugeln. Die Distanz ist dann einfach nur noch Distanz zwischen den Mittelpunkten minus die Radien der beteiligten Kugeln. Machbar ist das. Bei Snooker wird das auch gemacht. Allerdings hat man dort noch besser kontrollierbare Bedinungen. Die Kamera ist immer am gleichen Ort, die Kugeln sind exakt gearbeitet und der Untergrund ist absolut eben und waagrecht. Inwiefern dir da jetzt deine zusätzlichen Schwierigkeiten (keine fixe Kameraposition, kein ebener Boden, Kugeln die wahrscheinlich nicht wirklich rund sind) einen Strich durch die Rechnung machen, wage ich nicht zu beurteilen. Selbst unter Idealbedingungen ist das kein einfaches Problem. Wie fit bist du den in Mathe? Wieviel Erfahrung hast du in Bildverarbeitung?
Ich würde es so aufbauen, dass die Kamera auf ein Gerüst montiert wird - vielleicht zwei Meter über dem Boden. Sie ist dann in der Mitte über dem Spielfeld und fotografiert senkrecht nach unten. Natürlich muss der fotografierte Bildausschnitt so groß sein, dass alle Kugeln erfasst werden: Kamera y-Position | | | +++++++++++++++++++++++ + | + + O | + + | + + +----------+--- Kamera x-Position + O o O + + + + O + + Kugeln + . . . . . . . . . . . ^ ^ . . | | . . | | . . | | . . Spielrichtung . Wenn der Kontrast der Kugeln zum Untergrund groß genug ist, dann sollte es eigentlich nicht so schwer sein diese bildverarbeitungsmäßig zu erkennen. Man könnte auch an den oberen und seitlichen Rändern des Spielfelds entsprechende Markierungen aufbringen die man mitfotografiert, das sollte eigentlich nicht stören.
Reicht es nicht aus einfach das Paar mit der geringsten Entfernung zu bestimmen? Das würde die Sache bestimmt erleichtern. Die mm sind doch egal, wenn man der Gewinner ist, oder?! Da wäre dann das Gestell von Mark angebracht und du bestimmst dann nur die Pixel zwischen den Kugeln. Für Matlab gibts viel Bilderkennungskram mit dem das bestimmt machbar ist. Ein Hoch auf die, die mit Kanonen auf Spatzen schießen!
2D Laserscanner im rechten Winkel über das Feld bewegen?
Mat schrieb: > 2D Laserscanner im rechten Winkel über das Feld bewegen? Kanonen und Spatzen... Da dürfte es schon einfacher sein, eine Stereo-Kamera aufzubauen.
Bollek schrieb: > Da wäre dann das Gestell von Mark angebracht und du bestimmst dann nur > die Pixel zwischen den Kugeln. Dazu musst du die Kamera dann aber möglichst exakt über die Verbindungslinie der beiden Kugeln bringen. Spätestens jetzt wäre dann ein Kreuzschlitten in 2 Meter Höhe auf dem Gestell angebracht. (Geh ins Extrem. Die Kugeln können 1 Meter auseinander liegen, wenn du in 10 Meter Entfernung die Kamera senkrecht nach unten schauen lässt, wird deine Kamera kein einziges freies Pixel zwischen den Kugeln ausmachen können, weil die eine Kugel die andere perspektivisch verdeckt. Diese Perspektivischen Effekte musst du wegkriegen und das geht nun mal nur auf der optischen Achse der Kamera. > Ein Hoch auf die, die mit Kanonen auf Spatzen schießen! Yep. Eine Art "große Schiebelehre" mit langen Fühlern, die man zwischen die Kugel setzt und dann die Fühler solange auseinanderfährt bis sie die Kugeln berühren würde es auch tun. Da muss noch nicht einmal ein Massstab drann (auch wenn er manches ev. erleichtern würde)
Im Prizip ist das ziemlich dasselbe, was die Roboterfußball machen (http://de.wikipedia.org/wiki/Roboterfu%C3%9Fball). Insbesondere in der "Small Size" Liga. Eine zentrale Kamera 4m über dem Boden mit Blick nach unten, dazu ein paar fixe Markierung auf dem Spielfeld (bzw. am Rand).
Vorschlag: Ein Laserentfernungsmesser, der auf einer optischen Achse nach zwei Seiten gleichzeitig misst und die Entfernung addiert (Plus seine eigene Abmessung). Seh ich als das gangbarste, und sowas müsste es eigentlich auch schon geben. (Halt nur nicht für 19,90 bei Obi)
Also wir machen das immer mit ner Stück Schnur :-) Erst werden augenscheinlich alle Kugeln entfernt, die unstritig weiter weg sind. Die Abstände zur Holzkugel werden dann mit nem Stück Schnur verglichen. Keep it simple, stupid and short :-)
Floh schrieb: > Keep it simple, stupid and short :-) Genau :-) Ausserdem ist der Sinn von Sport daß man sich bewegt und nicht vorm Monitor sitzt und sich die Entfernungen nur anzeigen lässt :-))))
...und gerade beim Boule hat man doch Rotwein trinkende alte Menschen vor Augen die in aller Gemütsruhe ihre Spielchen machen. Man braucht ein paar Kugeln und etwas Platz im Park und fertig. Und jetzt Kameras, Strom und Stress. Ne, das passt ja gar nich, bei aller Liebe zur Technik :-)
Das zu überwachende Feld hat vielleicht eine Größe von 4m*4m. Die gewünschte Auflösung von 1mm pro Pixel wäre also erst bei Kameras mit einer Auflösung von typischerweise 4096*4096 Pixeln erfüllt. Es gibt zwar industrielle Farb-Flächen-Kameras mit solchen Eckdaten, aber nur für viel Geld. Da kommt man wahrscheinlich mit einer Nikon D3x (6048*4032) billiger davon. Sind die Kugeln später erkannt, kann deren Schwerpunkt bei hinreichend großem Umfang genauer als ein Pixel² bestimmt werden. In der Praxis kommt man also wahrscheinlich auch mit kleineren Sensoren hin. Messen im Bild: Das Stichwort heißt Kamera-Kalibrierung nach Tsai/Lenz. Jede Menge Literatur dazu erhältlich. Nach Korrelation einiger Kalibrierungspunkte auf der Fläche in Welt-Koordinaten mit deren Bildkoordinaten kann man beliebig zwischen Welt- und Bild-Koordinaten verrechnen. OpenCV kann das. Die stabile Erkennung der Kugeln ist aber ein Kapitel für sich.
JojoS schrieb: > ...und gerade beim Boule hat man doch Rotwein trinkende alte Menschen > vor Augen die in aller Gemütsruhe ihre Spielchen machen. Man braucht ein > paar Kugeln und etwas Platz im Park und fertig. Und jetzt Kameras, Strom > und Stress. Ne, das passt ja gar nich, bei aller Liebe zur Technik :-) Ich denke wenn so etwas einfach machbar wäre, dann hätte man das längst bei Olympischen Spielen oder dergleichen bei Curling eingeführt. So einfach wirds dann eben nicht sein. Apropos Kugeln und Abstände: Hat wer von euch schon mal Indoor Bowls geguckt (kommt selbst auf Eurosport nur ganz selten). Ich finde das faszinierend, wie die ihre 'Bälle' auf die Distanz ins Zielfeld manövrieren. http://www.youtube.com/watch?v=r1oLWF_Y1EU
Karl heinz Buchegger schrieb: > Ich denke wenn so etwas einfach machbar wäre Würde man es u.a. in der Industrie machen...was man auch tut...meine Abschlussarbeit beschäftigte sich damit Objekte auf einem Laufband zu erkennen bzgl. Position und Lage und Form. Keine Frage, da steckt ein riesiger Aufwand dahinter, primär aber in der Erkennung der Objekte. Hat man die auf dem Bild erstmal sicher erkannt (das ist der eigentliche Knackpunkt) dann ist der Rest nur noch Geometrie (Fleißarbeit). Die Genauigkeit wird in erster Linie von der Genauigkeit der Kugeln bestimmt. 75mm±2mm oder doch ±3mm? Ich glaub, man kann hier schon erkennen was das Problem ist. Und genau das ist auch der Grund warums bei den Olympischen Spielen und Co nicht verwendet wird. Soooo genau wird höchstens beim Snooker die Kugel geformt. Bei anderen Spielarten wird und muss die Kugel gar net so genau sein und nur für ne Messeinrichtung...dann greift man im Zweifelsfall doch lieber zum Maßband und ist seit Jahrhunderten quasi erprobt. Sofern man die Abstandsmessung auch wirklich anhand der Kugelgröße machen will. Option zwei wäre ja die Abstandsmessung wie sie z.B. in der Raumfahrt zu machen: Man packt ein Gitter auf die Linse. Dann hat man wieder Spass mit Geometrie (Strahlensatz sei hier mal als Stichwort genannt). An Stelle des TE würde ich mich als erstes mal ins Thema der Objekterkennung in Bildern einlesen. Kantendetektion ist denke ich nicht verkehrt. Aber keine Illusion, sowas lernt man nicht in einer Woche. Da geht eher ein halbes Jahr für drauf, wahrscheinlich noch viel mehr da es ja ein Hobby ist und man hier eher weniger Zeit investiert als in einen Full-Time-Job (also zumindest ich hab deutlich mehr als nur ein Hobby).
Michael schrieb: > Karl heinz Buchegger schrieb: >> Ich denke wenn so etwas einfach machbar wäre > > Würde man es u.a. in der Industrie machen...was man auch tut...meine > Abschlussarbeit beschäftigte sich damit Objekte auf einem Laufband zu > erkennen bzgl. Position und Lage und Form. Klingt interessant. Welche Kamera benutzt ihr (Auflösung, Entfernung) und welche Genauigkeit kriegst du in der Positionsmesung hin? Man bedenke auch bei der Aufgabenstellung: Wir bewegen uns nicht auf einem ebenen Untergrund! Das ist kein 2D Problem!
Muss es denn vollautomatisiert sein? Wenn ein Mensch für die Vermessung eingesetzt werden kann, könnte ich mir Folgendes vorstellen: - An einem fixen Punkt am Rand des Spielfelds (z.B. an einer Ecke) steht ein Laserentfernungsmesser (LEM), der von einem Menschen bedient wird. Dieser LEM hat Sensoren für seine eigene Neigung und seinen Winkel zwischen den beiden einschließenden Rändern. - Der Mensch richtet den LEM auf jede Kugel und loggt die Daten (Entfernung, Winkel, Neigung, Art der Kugel (wegen Durchmesser), ...) Dadurch müsste man doch alle Daten haben, um ein 3D-Koordinatensystem aufzuspannen. Jede Kugelposition ist ein Vektor mit Betrag (Entfernung) und 2 Raumwinkeln. Die Position der LEM ist der Koordinatenursprung. Könnte das so funktionieren?
naja, so wie sich das anhört haben sie ja schon ein richtiges Spielfeld. Du scheinst Dir da jetzt irgendeinen Kartoffelacker vorzustellen. Ich glaub aber nicht das das zutrifft. Zumindest bei den Bouleplätzen die ich so gesehen habe ist das alles immer schön ordentlich und auch recht ebenerdig gewesen. von daher kann man die dritte Dimension sicherlich vernachlässigen Wenn die Kamera stationär aufgebaut werden kann in x Meter Höhe und senkrecht aufs Spielfeld schaut wäre das sicherlich von Vorteil. Dann sollte man außerdem noch für möglichst gleichbleibende Beleuchtung sorgen(sehr wichtig!) Sind die Kugeln immer gleich? z.B. rot oder grün? Eher nicht, oder? Da hat sicherlich jeder Spieler seine eigenen Lieblingskugeln? Ich würde das Hauptproblem auch in der sicheren Kugelerkennung sehen. Die Abstandsmessung kann man doch sicherlich durch einmalige Kalibrierung erledigen...mal ein 20cm Lineal ins Bild legen und Pixel zählen. Der Rest ist dann Mathematik. Viele Probleme kann man erschlagen indem man die Kamera stationär aufbaut und über das Spielfeld hängt. Dann hat man auch keine Probleme mit verdeckten Kugeln oder ähnlichem. OpenCV ist dafür gut geeignet und damit ist das definitiv machbar. Aber selbsterklärend ist etwas anders. Ich würde erstmal kleine Brötchen backen und mit ner Webcam und einer 50x50cm Fläche oder so beginnen.
achso, das war auf Karl-Heinzens Beitrag bezogen bezüglich 2D/3D
funky schrieb: > achso, das war auf Karl-Heinzens Beitrag bezogen bezüglich 2D/3D Ich hab mich nur auf seine eigene Aussage von weiter oben bezogen. > Du scheinst Dir da jetzt irgendeinen Kartoffelacker vorzustellen. Kartoffelacker ist jetzt etwas zu dick aufgetragen. Ich hab da eher mehr an einen normalen Vorgartenrasen gedacht, der schon lange nicht mehr gewalzt wurde.
hmm, ok...hatte nur gelesen das das Spielfeld eine Ausdehnung von 4x4m hat. Und die Bouleplätze die ich so kenne sind mit Kies oder Sand bedeckt und möglichst ebenerdig. Die Frage ist ja nun auch wirklich ob das System stationär aufgebaut wird oder mal hier mal dort. Zweiteres halte ich erstmal für ziemlich unrealistisch in endlicher Zeit. Ersteres ist sicherlich möglich.
Mal n paar Gedanken dazu: funky schrieb: > Ich würde erstmal kleine Brötchen > backen und mit ner Webcam und einer 50x50cm Fläche oder so beginnen. Es braucht aber keine Webcam da es keine bewegten Bilder sind. Eine gute Digitalknipse reicht und macht wohl ausreichend gute Bilder. 12 Megapixel ergibt ne Kantenlänge von 3,464 m in mm Auflösung. Wenn das nicht reicht nimmt man eben mehrere. Die Pixel sind auch immer an der gleichen Stelle. Mit einem Kalibriervorgang (1mm Schachbrettmuster aufnehmen) wird das ganze eingemessen. Dann ist eine Kugel evtl recht einfach zu identifizieren. Einen Bildvergleich Boden mit Kugeln und Boden ohne Kugeln zu differenzieren ist wohl für einen Mathematiker eine recht einfache Matrixoperation ergo machbar. Selbst die Größe lässt sich über Integrale? feststellen Beim ändern der Lichtverhältnisse müssen wohl Referenzbilder her.
Man lässt die kleine weiße Kugel sich einfach aufblasen... die erste Kugel, die berührt wird, gewinnt! ;-) Spaß beiseite: Wenn man es schafft, die Kamera exakt senkrecht über der weißen Kugel zu positionieren, braucht man kein Liniengatter in der Linse, sondern es reichen konzentrische Kreise um das Zentrum. Auch fällt dann die Berücksichtigung des Betrachtungswinkels weg. In der Praxis würde ich es so umsetzen: Man nehme eine kleine mobile drahtlose Webcam, einer der Spieler hält die Webcam möglichs senkrecht über der weißen Kugel und schießt ein Foto. Das Foto wird zu einem nahestehenden Notebook übertragen, wo einfach ein kleines Bildbearbeitungsprogramm läuft, welches die weiße Kugel im Zentrum immer dicker werden lässt... bis sie eine der anderen Kugeln berührt - fertig! EDIT: Das Programm kann simpel sein: Man positioniert die Maus auf das Zentrum der kleinen Kugel und lässt dann per Mausrad einen Kreis konzentrisch um den Mauszeiger wachsen/schrumpfen. Der Betrachter sieht dann schon die Berührung. Eine Objekterkennung per Programm ist nicht notwendig. Gruß, Frank
Karl heinz Buchegger schrieb: > Klingt interessant. > Welche Kamera benutzt ihr (Auflösung, Entfernung) > und welche Genauigkeit kriegst du in der Positionsmesung hin? Die Kamera hatte eine Auflösung von 1024*1280 gehabt und war nen Meter übern Laufband positioniert. Sie beobachtete 200mm*200mm großes Feld auf dem Laufband und es war möglich den Greifer auf einen Millimeter genau ins Ziel zu bringen. Aber ist das für hier interessant? Ich glaub ich schrieb schon, dass die Objekterkennung das große Problem sein wird. Karl heinz Buchegger schrieb: > Man bedenke auch bei der Aufgabenstellung: Wir bewegen uns nicht auf > einem ebenen Untergrund! Das ist kein 2D Problem! Nunja, große Schlaglöcher sind in so einer Bahn auch nicht. Ich denke für die erste Näherung könnten die Höhenunterschiede von vielleicht maximal 10 cm durchaus vernachlässigt werden. Bei einer Kamerahöhe von 2m macht das grad mal 5% aus, wenns direkt unter der Kamera liegt, je weiter Weg es von der Kamera ist desto geringer wirkt sich der Höhenunterschied aus.
. . ich würde das spielfeld mit google maps beobachten lassen ... .
@funky: Das mit den 4m*4m hab ich verbockt. Laut Wikipedia haben die meisten Boule-Bahnen eine Breite von 3-4,5 Metern und Längen von bis zu 30 Metern. Man würde also nur das Zielfeld beobachten. Wie man die Kamera da hin bekommt, ist eine andere Sache. Über die Anforderung an die 3D-Vermessung hab ich gerade noch mal nachgedacht. Da Kugeln rotationssymetrisch sind, kann man über die Randpunkte von als Kugeln erkannten Objekten sehr genau (auch bei durch den Boden verdeckten Rändern) mittels Fit den (2D-) Mittelpunkt finden. Da man die Kamera vorher kalibriert hat, ist bekannt, auf welchem "Strahl" (Winkel+Startpunkt) sich die Kugel, vom Sensor aus gesehen, befindet. Über den Kugelfit kennt man den Radius und kennt damit die Entfernung der Kugel vom als Ebene angenommenen Boden. Das als z-Koordinate bei der Rückprojektion angeben, und man hat die "echte" 3D-Koordinate ohne Parallax-Versatz. Hoffe, das war halbwegs verständlich.
Momentan denke ich, dass Beitrag "Re: Abstandsmessung berührungslos im freien" Frank M. recht hat. Die eigentliche Distanz in Millimeter ist zwar ganz interessant, interessiert aber im konkreten Fall niemanden. Da denken wir alle zu kompliziert. Es geht doch einzig und alleine darum, wer näher an einer Zielkugel ist. Seine Systematik würde das rausfinden.
Karl heinz Buchegger schrieb: > Momentan denke ich, dass > Beitrag "Re: Abstandsmessung berührungslos im freien" > Frank M. recht hat. :-) > Die eigentliche Distanz in Millimeter ist zwar ganz interessant, > interessiert aber im konkreten Fall niemanden. Da denken wir alle zu > kompliziert. Es geht doch einzig und alleine darum, wer näher an einer > Zielkugel ist. Seine Systematik würde das rausfinden. Auch den 2. und 3. Platz kann man so ermitteln. Gruß, Frank
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.