Videokamera auswerten

Allgemeine Fragen zu Lasershow Software und Show-Programmierung.
Antworten
Benutzeravatar
juelin
Beiträge: 93
Registriert: Do 03 Apr, 2008 11:59 am
Do you already have Laser-Equipment?: 3 RGB Laser 1000mW 50KPPS
Wohnort: Mannheim
Kontaktdaten:

Videokamera auswerten

Beitrag von juelin » Mo 16 Okt, 2017 5:54 pm

hi zusammen,
war auf dem Laserfreaktreffen in Berlin. Mir hat besonders das Laserballspiel von dem Franzosen
gefallen. Ich würde gerne auch mal sowas programmieren.
Leider weiss ich nicht wie man die Videokamera auswertet.
Kann mir da jemand einen Tipp geben?
Danke und Gruß Jürgen

Benutzeravatar
tracky
Beiträge: 4843
Registriert: Di 11 Mär, 2003 1:51 pm
Do you already have Laser-Equipment?: Hat sich im Laufe der Jahre doch einiges angesammelt
Wohnort: Germany, Seefeld bei Werneuchen
Kontaktdaten:

Re: Videokamera auswerten

Beitrag von tracky » Mo 16 Okt, 2017 6:16 pm

Infrarot Strahler und Kamera, die auch diese Wellenlänge erkennt. Alte Analog Cams können das. Er hatte was von API Schnittstelle erzählt mit einem maximalen Delay von 40ms. Ansonsten schreibe ihn doch mal direkt an....Bei Beyond Cinect läuft es ähnlich
Gruß Sven

Laser? Was ist das? Licht aus super erschwinglichen Restbeständen

Benutzeravatar
juelin
Beiträge: 93
Registriert: Do 03 Apr, 2008 11:59 am
Do you already have Laser-Equipment?: 3 RGB Laser 1000mW 50KPPS
Wohnort: Mannheim
Kontaktdaten:

Re: Videokamera auswerten

Beitrag von juelin » Mo 16 Okt, 2017 7:18 pm

Sven kannst Du mir da eine Adresse geben?
Gruß Jürgen

xrayz
Beiträge: 623
Registriert: Fr 25 Jul, 2008 11:57 am
Do you already have Laser-Equipment?: 2x 2.5W /w Compact506

Software: RayComposer, HE-LS, Dynamics Nano, Mamba
Wohnort: Berlin

Re: Videokamera auswerten

Beitrag von xrayz » Mo 16 Okt, 2017 8:54 pm

Also da kann ich für solche Spielereien OpenCV absolut empfehlen - zu mindest wenn es etwas professioneller werden soll.
Das ist eine Bibliotheke für die Bild VER-Arbeitung (nicht BE-Arbeitung :wink:).

https://opencv.org/

Allerdings ist es dort schnell nicht mehr mit trivialem "Ich lerne C in 60 Minuten"-Wissen getan.
Man sollte schon ein solides Verständnis für Mathematik (Matritzen, etc.), "nackte" Speicherbereiche, Pointer, Vektoren, Bildformate und Filter etc. haben, damit das Ganze nicht nur im kompletten Frust endet.

Ich habe diese Bibliotheken vor einiger Zeit mal für Algorithmen bei autonomen Roboter Systemen eingesetzt, die selbstständig durch Räume fahren, dabei Wände/Türen/Treppen/Personen erkennen etc.
Das Framework ist genau für solche Dinge ausgelegt - aber eben nur bedingt trivial.

Hier mal ein sehr einfacher Code Schnipsel um kontinuierlich von einer am PC angeschlossenen Webcam ein Image zu ziehen, einen Gauß-Weichzeichner drauf zu anzuwenden und dann eine Kantenerkennung durchzuführen...
Das Ergebnis der Kantenerkennung wird anschließend angezeigt.

C++

Code: Alles auswählen

#include "opencv2/opencv.hpp"
using namespace cv;

int main(int, char**)
{
    VideoCapture cap(0);
    if(!cap.isOpened()) 
        return -1;
    Mat edges;
    namedWindow("edges",1);
    for(;;)
    {
        Mat frame;
        cap >> frame; // read a frame from camera
        cvtColor(frame, edges, COLOR_BGR2GRAY); //convert colors to grayscale
        GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5); //apply blur to the image
        Canny(edges, edges, 0, 30, 3); //Detect edges in the frame
        imshow("edges", edges); //display the image
        if(waitKey(30) >= 0) break; //Break if the user hits a button
    }
    //camera object is automatically "cleaned-up" by the destructor
    return 0;
}
Wer es deutlich einfacher haben möchte sollte sich mal Processing und P5 anschauen. Das Ganze ist Java/Java Script basiert, absolut trivial und auch für absolute Einsteiger, Künstler, Designer, etc. gedacht die nur wenig Verständnis für die Hintergründe haben, aber dennoch etwas Programmieren können:
https://processing.org/
https://p5js.org/

Ein Webcam-Capture sähe da z.B. so aus (läuft per JS im Browser):
https://p5js.org/examples/dom-video-capture.html


//Ergänzung:
Fällt mir gerade noch so ein: Für erste Gehversucheeignet sich ein RaspberryPi 3 sehr gut.
Dort läuft openCV und auch p5 und es gibt die IR-Kamera direkt zum anstecken.

Quasi alles Plug-and-Play und kostet keine 70€ :)

https://www.raspberrypi.org/products/ra ... 3-model-b/
https://www.raspberrypi.org/products/pi-noir-camera-v2/
https://tutorials-raspberrypi.de/opencv ... tallieren/
Sincere regards, Max :)

In the Beginning God said: "Let the four-dimensional divergence of an anti-symmetric second rank tensor equal zero" And there was light! - Michio Kaku

Benutzeravatar
VDX
Beiträge: 3482
Registriert: Mi 17 Mär, 2010 11:16 am
Do you already have Laser-Equipment?: ... diverse Laser für die Materialbearbeitung

weitere Hobbies: - CNC-Fräsen, 3D-Scannen, 3D-Drucken, Laserbearbeitung, Mikrotechnik ...
Wohnort: Nähe Hanau, Main-Kinzig-Kreis

Re: Videokamera auswerten

Beitrag von VDX » Mo 16 Okt, 2017 10:18 pm

... bei OpenCV sind einige Beispiele dabei, um einiges an Grundfunktionalität auszuprobieren, so daß für den ersten Einstieg Basis-Programmierkenntnisse ausreichen - für die Erstellung eigener Programme braucht's dann aber doch einiges an Einarbeitung ... ist aber schaffbar ;)

Viktor
Aufruf zum Projekt "Müll-freie Meere" - https://reprap.org/forum/list.php?426 -- Facebook-Gruppe - https://www.facebook.com/groups/383822522290730
Call for the project "garbage-free seas" - https://reprap.org/forum/list.php?425

xrayz
Beiträge: 623
Registriert: Fr 25 Jul, 2008 11:57 am
Do you already have Laser-Equipment?: 2x 2.5W /w Compact506

Software: RayComposer, HE-LS, Dynamics Nano, Mamba
Wohnort: Berlin

Re: Videokamera auswerten

Beitrag von xrayz » Di 17 Okt, 2017 10:26 am

Jup. Wie gesagt einstieg geht noch relativ einfach, danach wird's aber schnell anspruchsvoller.

Habe gerade auch noch was zum Object Tracking gefunden...dürfte für diesen Fall hier wohl auch hilfreich sein.
Ist aber eben dann schon etwas anspruchsvoller, da wissen zu Filtern etc. benötigt wird.

Unten im C++ Code kann entsprechend auch statt dem MP4 Video (Zeile 45) der Cam-Stream aus dem anderen Beispiel genutzt werden.
Dann werden die Algorithmen entsprechend auf das Livebild angewandt. :)

https://www.learnopencv.com/object-trac ... pp-python/
Sincere regards, Max :)

In the Beginning God said: "Let the four-dimensional divergence of an anti-symmetric second rank tensor equal zero" And there was light! - Michio Kaku

Antworten

Zurück zu „Software & Programmierung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste