Logitech Webcam Ansteuerung

OP #3166411
Hallo zusammen,

ich habe eine alte Logitech "Logicool" Webcam (P/N 861202-0116, PID 
CE64003). Diese ist für meine Zwecke ideal
1. weil sie ohne Gehäuse sehr kompakt ist
2. weil ich Objekte bis ca. <5 cm vor der Linse scharfstellen kann

Diese Kamera wollte ich nun in eigene Programme einbinden.

Es gibt von Logitech und anderen umfangreiche Software (z.T. >100 MB) 
mit allerlei Funktionen, die ich nicht brauche. An Einbinden oder 
Zugriff auf Einstellungen durch eigene Programme ist da nicht wohl zu 
denken.

Gibt es für diese Kamera DLLs oder universelle DLLs oder kennt jemand 
eine einfache Software, die man einbinden kann?
Es gibt so vieles im Netz, wobei mir das meiste unbrauchbar erscheint, 
und ich nicht alles ausprobieren kann.

Ich möchte lediglich per eigenen Programm ausgelöst Einzelbilder 
aufnehmen und evtl. Belichtungszeit und Kontrast einstellen und die 
Bilder lokal abspeichern. Keine Webpage, Livecam, FTP, Facebook oder 
sonstiger Firlefanz...

Oder gibt es evtl. andere Kameras mit einbindbarer Software (und 
Preisklasse <<50 EUR), die ähnlich kompakt und auf geringe Distanz 
scharfstellen können?
Wer kann da etwas empfehlen?
#3166436
Versuche es mal mit Processing.

Mit ein paar Zeilen Code hast Du dein Ziel erreicht.

1
import processing.video.*;
2

3
Capture cam;
4

5
void setup() {
6
  size(640, 480);
7

8
  String[] cameras = Capture.list();
9
  
10
  if (cameras.length == 0) {
11
    println("There are no cameras available for capture.");
12
    exit();
13
  } else {
14
    println("Available cameras:");
15
    for (int i = 0; i < cameras.length; i++) {
16
      println(cameras[i]);
17
    }
18
    
19
    // The camera can be initialized directly using an 
20
    // element from the array returned by list():
21
    cam = new Capture(this, cameras[0]);
22
    cam.start();     
23
  }      
24
}
25

26
void draw() {
27
  if (cam.available() == true) {
28
    cam.read();
29
  }
30
  image(cam, 0, 0);
31
  // The following does the same, and is faster when just drawing the image
32
  // without any additional resizing, transformations, or tint.
33
  //set(0, 0, cam);
34
}

Quelle:
http://processing.org/reference/libraries/video/index.html
OP #3166498
Danke für den Tipp.

Hab's mal gestartet ohne mich lange einzulesen.

Es kommt eine Fehlermeldung:

The constructor Capture(sketch_may16a, String) is undefined.

Soll das heißen: keine Kamera gefunden? Oder nicht initialisiert?
Vielleicht hat er die Logitech nicht erkannt? Es gibt aber noch eine 
eingebaute Kamera? Auch nicht erkannt?
#3166521
Bei mir funktioniert es mit jeder Kamera, die ich anstecke. Auch mit der 
ganz alten Quickcam.

Welche Processing Version hast Du installiert? 2.0 Beta 8 solltest Du 
haben.

Schau mal bei den USB Geräten nach ob die Kammera als USB Gerät erkannt 
wird.

Grüsse
OP #3166563
Ok.
Mein Fehler. Wollte auf Nummer Sicher gehen und hatte Stable Release 
V1.5 installiert.
Mit 2.0b8 tut's. Sehr schön!

Nun muss ich schauen, wie ich das ganze in mein 
FreePascal/Lazarus-Programm einbinden kann, damit ich gesteuerte 
Schnappschüsse machen kann. Ich hoffe, das Ganze wird kein Ding der 
Unmöglichkeit.
#3166598
Mit direktem einbinden wird es wohl nicht funktionieren. Prozessing 
basiert auf Java.

Du kannst aber eine Processing Anwendung implementieren, die Du aus 
deiner Anwendung starten und stoppen kannst. Konfigrieren über eine 
Datei die deine Anwendung schreibt und die Video App liest. Den Auslöser 
für eine Bildaufnahme lönntest Du über das OS Eventsystem realisieren, 
indem Du z.B. einen Tastendruck simulierst, der vom OS an die Video App 
übergeben wird. Die Bilder legst Du dann wieder mit Zeitstempel auf dem 
Dateisystem ab.

Viele Wege führen zu einer Lösung.

Grüsse
OP #3167938
Hallo zusammen,
danke für die Vorschläge. Ich würde mich als Anfänger mit gewissen 
Grundkenntnissen bezeichnen, der in grauer Vorzeit mal Basic und Pascal 
programmiert hat und sich mit Perl einigermassen auskennt. Habe keine 
Ahnung von Sockets etc...

Ich möchte nur ein einfaches, kompaktes .exe mit simplem GUI 
realisieren, was ohne großartige Runtime Engines (z.B. von LabView 
etc.), Java Zusatzpakete und sonstige Extra-Umwege oder Installationen 
auskommt und mehr oder weniger auf jedem einfachen (auch älteren) 
Rechner (vorerst Windows, später evtl. Linux o.a.) funktioniert.
Da wurde mir FreePascal/Lazarus empfohlen.

In der Zwischenzeit habe ich noch folgendes gefunden:
http://sourceforge.net/projects/freepascalvideo/
Damit habe ich ein kleines FreePascal Programm, dass mir die Webcam 
erkennt und in einem Fenster darstellt. Wie ich diese Daten nun 
abspeichern kann und Einstellungen vornehmen kann, usw. muss ich jetzt 
schauen...
Theo.
#3167955
Du hast mit Freepascal deine Programmiersprache gefunden.

Ich möchte aber  auch noch anmerken, dass mit Processing mit einem Klick 
Standalone Packete für Windows, Mac OS X und Linux erstellt werden 
können. Diese kommen ohne Installation aus.

Grüsse
Gast #3169244
Hi,
ich würde C++ und OpenCV nutzen. In Verbindung mit QT kannst du auch die 
Bilder der Webcam anzeigen. OpenCV unterstützt auch das speichern in 
gängigen Video- und Bildverarbeitungen.

LG

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.