Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

02.07.2009, 12:08

Idee/Suche: Zielschießen per Laser auf Webcambewachtes Ziel?

Hallo.

Ich fand hierher, da ich bei Google nach Spiele Programmier Forum suchte.
Ich hoffe der OffTopic ist der passende Bereich für meine Frage.

Ich habe mir überlegt, dass es möglich sein müsste über eine Webcam zu registrieren wo ein roter Laserpunkt erschien, und darüber bestimmte FUnktionen auszulösen.
Es gibt das "MediaPortal" eine freie Alternative zum MS MediaCenter.
Dort soll ein ein AddOn für so etwas geben. Man macht sich z.B. eine Tafel, auf der teilt man sich Felder ein und beschriftet die mit Funktionen.
Diese legt man im Addon fest, und kann mit einem Laserpointer darauf zielen.

Das müsste man doch auch spielerisch nutzen können.
Z.B. mit Zielscheiben.
Was man da im Realen aufhängt und von der Kamera beobachten lässt ist ja egal. Sogar ein Bildschirm oder eine Videoprojektion wäre möglich.
Bei festen Objekten könnte man im PC z.B. Bereiche für verschiedene Punktzahlen festlegen die die SW zählt.
Bei einem Video könnte die SW "dumm" Standbilder mit dem Zielpunkt erzeugen.
Wenn die Software aber selbst bewegliche Ziele erzeugen kann, könnte sie aktiv feststellen ob man diese getroffen hat.
Früher gab es z.B. auch für den PC Lichtpistolen mit Software.
Aber eben die "Lichtpistolen" die nur bei Röhrenmonitoren (wegen des Elektronenstrahls) funktionieren.
Ich habe noch so ein Teil mit ISA-Karte irgendwo rumliegen.

Generell wären Lösungen mit Laser flexibler und billiger.
Neben einer Software (idealerweise Freeware ;) ) braucht es nur noch eine Webcam (so wie auch bei den Kameraspielen) und mindestens einen Laserpointer (den man evtl. in eine Spielzeugpistole einbauen kann so dass es nur kurz auslöst). Es soll aber auch fertige Laserpistolen (harmlos mit <1mW) dieser Art geben.



Grüße,
Tobias Claren

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

2

02.07.2009, 12:41

Ein Ansatz wäre die Bilder jeweils nach dem roten Laserpunkt zu analysieren,
würde aber vorraussetzen dass sonst nix im Ziel gleich aussieht.

3

02.07.2009, 13:37

Hm, imo ist Laserlicht doch extrem hell. Man könnte evtl. schon die Webcam realtiv dunkel stellen und dann den roten Punkt ziemlich gut erkennen. Wenn man dann noch dem Programm sagt, wo im Bild der Webcam der Bildschirm ist, müsste man nur den roten Punkt erkennen und in Bildschirmkoordinaten umrechnen, was man eigentlich relativ einfach hinbekommen müsste (gut, perspektivische Verzerrungen mögen dazu kommen, aber mit etwas Mathe kriegt man das garantiert sehr schnell recht exakt ausgerechnet).

Ich finde die Idee prima, und bin auch fast irgendwie motiviert, da mit zu machen. So schwer dürfte das ganze ja echt nicht sein, man muss nur die Webcam Bilder haben und etwas rumrechnen.

Leider hab ich weder Webcam noch Laserpointer, aber cool ist die Idee auf jeden Fall :)
Lieber dumm fragen, als dumm bleiben!

4

02.07.2009, 15:55

Die Idee ist ja mal geil.
Das Problem denk ich wird halt das die Webcam ganz exakt ermitteln muss wo der Punkt auf dem Bildschirm auftritt, sonst wird das Ganze bei einem Shooter z.b. zu ungenau.
Achja, was den Laserpointer betrifft: Einfach ein Impulsschalter reinbauen und damit dann den Laserpointer anschließen. Den Schalter würde ich einfach hinter dem Abzug platzieren, oder du baust dir ein eigenen Schalter als direkten Abzug, wird aber aufwendiger.
Ich würde da ein Handelsüblichen Laserpointer nehmen und für deine Zwecke umbauen.

Fred

Supermoderator

Beiträge: 2 121

Beruf: Softwareentwickler

  • Private Nachricht senden

5

02.07.2009, 17:31

Ich bin nur gerade am überlegen, wie man das Bild der Kamera bekommt. Vermutlich muss man das über ne einge Webcam-API machen und das wäre dann wiederum herstellerabhängig. Oder gibt's andere Möglichkeiten?

the[V]oid

Alter Hase

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

6

02.07.2009, 18:46

Zitat von »"Fred"«

Ich bin nur gerade am überlegen, wie man das Bild der Kamera bekommt. Vermutlich muss man das über ne einge Webcam-API machen und das wäre dann wiederum herstellerabhängig. Oder gibt's andere Möglichkeiten?


OpenCV
<< an dieser Stelle ist eine Signatur verstorben >>

xardias

Community-Fossil

Beiträge: 2 731

Wohnort: Santa Clara, CA

Beruf: Software Engineer

  • Private Nachricht senden

7

02.07.2009, 19:35

Das ließe sich sicherlichlich auch wunderbar mit Augmented Reality kombinieren:
http://de.wikipedia.org/wiki/Erweiterte_Realität

8

02.07.2009, 20:57

Was mir noch eingefallen ist: Ich glaube viele Webcams sind relativ langsam, mein Laptop hat eine integrierte, und die reagiert sehr langsam und macht bestimmt keine 25 Bilder/sek.
Damit das ganze zuverlässig ist, müsste der Laser also schon mindestens so lange sichtbar sein, dass man bei mindestens einem Bild ein gutes Ergebnis erhält. Und dabei könnte das ganze dann theoretisch etwas zittern und außerdem stören, wenn der Punkt lange sichtbar ist.
Lieber dumm fragen, als dumm bleiben!

xardias

Community-Fossil

Beiträge: 2 731

Wohnort: Santa Clara, CA

Beruf: Software Engineer

  • Private Nachricht senden

9

02.07.2009, 22:25

Hat jemand einen Laserpointer und könnte mal ein paar Testbilder schießen? Mich würde mal interessieren inwieweit man den erkennen kann.

10

02.07.2009, 23:38

Hab mich selbst ma mit dem Thema beschäftig und nen Testprojekt erstellt, bei dem ein belieber roter Controller erkannt wurde und die Bewegung auf nen virtuellen Schläger übertragen wurde, mit dem man dann wie bei Breakanoid son Ball nach oben schlagen konnt ...

theoretisch is des auf jeden Fall möglich, is halt nur des Problem, dass die Bilder die die Webcam liefert sehr viele Störungen hat, die man durch Filter erst ma rausbekommen muss, um sowas wie nen Laserpointer-Punkt zu erkennen..

btw ich hab des Webcam bild mithilfe von SDL bekommen..

Werbeanzeige