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
).
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/