2016-03-25 5 views
0

Ich habe ein kleines Stück Code verwenden zurück, um die Kamera zu bekommen:wie (Größe angepasst) Kamerabild kopieren und in Bearbeitung

void setup() { 
    if (cam.available() == false) { 
     cam.start(); 
    } 
} 

void draw() { 
    if (cam.available() == true) { 
     cam.read(); 
    } 
    image(cam, w/2, h/2, w, 480.0/640.0*w); // resized according to size() 
} 

Wenn ich cam.get() verwenden, ist das Bild nicht verkleinert, behält die Kamera die Auflösung.

Gibt es eine Lösung, um das "resized" Kamerabild zu bekommen?

Ich versuchte

big = copy(cam, int(w/2), int(h/2), int(w), int(480/640*w), 0, 0, int(w), int(h)); 

aber es scheint nicht (gleich für cam.copy (...) zu arbeiten.

Vielen Dank im Voraus!

Antwort

0

Angenommen, du bist Verwendung der Video-Bibliothek und cam ist ein Capture, dann würde ich diese Methoden erwarten zu arbeiten. Capture erstreckt PImage, so sollten Sie in der Lage sein, es zu kopieren und zu ändern.

Als erstes würde ich prüfen, welche Werte Sie in diese Funktionen eingeben. Die println() Funktion ist dein bester Freund.

Oder versuchen Sie hartcodierte Werte geben, so dass Sie wissen, was zu erwarten:

image(cam, 0, 0, 100, 100); 

Wenn das wirklich nicht funktioniert, dann als Worst-Case-Szenario könnten Sie die Capture.get() Funktion können Sie die Pixel selbst erhalten Führen Sie dann die Größenänderung manuell durch. Ich glaube wirklich nicht, dass du das tun musst.