Ich möchte die Kamera in meinem Macbook in einem Programm verwenden. Ich bin ziemlich sprachunabhängig - C, Java, Python usw. sind alle in Ordnung. Könnte jemand vorschlagen, der beste Ort, um nach Dokumenten oder "Hallo Welt" Typ Code suchen?Beispielcode für die Verwendung von Mac-Kamera in einem Programm?
Antwort
Das ImageKit-Framework in Leopard verfügt über eine IKPictureTaker
-Klasse, mit der Sie das Standard-Bildblatt oder -Panel ausführen können, das Sie in iChat und anderen Anwendungen gesehen haben.
Wenn Sie nicht die standardmäßige Bildaufnahme/Panel-Schnittstelle verwenden möchten, verwenden Sie die QTKit Capture-Funktion, um ein Bild von der iSight zu erhalten.
Beides wird das Schreiben von Cocoa Code in Objective-C erfordern, aber das sollte heutzutage kein wirkliches Hindernis sein.
Es gibt ein Dienstprogramm namens Isightcapture, das von der Unix-Befehlszeile ausgeführt wird, die ein Bild von der Isight-Kamera aufnimmt und speichert.
Sie können es auf dieser Website aus: http://www.macupdate.com/info.php/id/18598
Ein Beispiel dieses mit Applescript zu verwenden ist:
tell application "Terminal" tun Skript "/ Applications/isightcapture myimage.jpg" end tell
Wenn Sie die Kamera direkt aus Ihrem Code manipulieren möchten, müssen Sie die QuickTime Capture-APIs oder den Cocoa QTKit Capture Wrapper (viel besser) verwenden.
Der einzige Nachteil ist: Wenn Sie ein QTCaptureDecompressedVideoOutput verwenden, denken Sie daran, dass die Rückrufe nicht auf dem Haupt-Thread, sondern auf dem QuickTime-verwalteten Capture-Thread vorgenommen werden. Verwenden Sie [someObject performSelectorOnMainThread: ... withObject: ... waitUntilDone: NO], um Nachrichten an ein Objekt im Hauptthread zu senden.
Der Quartz Composer ist auch eine angenehme Methode, Videos zu erfassen und mit ihnen zu arbeiten, wenn dies möglich ist. Es gibt ein Video-Eingabe-Patch.
Quartz Composer ist eine visuelle Programmierumgebung, die bei Bedarf in ein größeres Cocoa-Programm integriert werden kann.
http://developer.apple.com/graphicsimaging/quartz/quartzcomposer.html
Von einer verwandten Frage, die die Lösung ausdrücklich darum gebeten werden pythonic, sollten Sie einen Versuch zu motmot's camiface Bibliothek von Andrew Straw geben. Es funktioniert auch mit FireWire-Kameras, aber es funktioniert auch mit der Isight, die Sie suchen.
aus dem Tutorial:
import cv
capture = cv.CaptureFromCAM(0)
img = cv.QueryFrame(capture)
Kann nicht tun Einfacher:
import motmot.cam_iface.cam_iface_ctypes as cam_iface
import numpy as np
mode_num = 0
device_num = 0
num_buffers = 32
cam = cam_iface.Camera(device_num,num_buffers,mode_num)
cam.start_camera()
frame = np.asarray(cam.grab_next_frame_blocking())
print 'grabbed frame with shape %s'%(frame.shape,)
Es wird in diesem sample neuroscience demo
Eine andere Lösung ist OpenCV+python mit einem Skript wie verwendet!
- 1. Beispielcode für die asynchrone Programmierung in C
- 2. Beispielcode von libssh2 wird für die Portweiterleitung verwendet
- 3. Verwendung von sched_getaffinity (2) und sched_setaffinity (2). Bitte geben Beispielcode in C-Programm verwenden
- 4. Beispielcode für die Verwendung von IBMs PCOMM in C# o Schreiben Sie einen as400 screenscraper
- 5. Verwendung von externen Bibliotheken in einem C-Programm
- 6. Beispielcode für Subversion
- 7. C++ \ IronPython Integration Beispielcode?
- 8. Aufruf Python von einem C++ - Programm für die Verteilung
- 9. UISearchBar Beispielcode
- 10. in einem C# -Programm
- 11. von Beispielcode Confused endianness
- 12. Beispiel für die Verwendung von fastcgi_finish_request()
- 13. Speichern von Anmeldeinformationen für die automatische Verwendung
- 14. Verwendung von ICEpdf "inside" Java-Programm
- 15. Demontage von Abschnitten in einem c-Programm
- 16. Beispielcode für Java-Backend in Google Appengine
- 17. Gutes Beispiel für die Verwendung von AppDomain
- 18. Beispielcode für schnelle Primtests in C#
- 19. Vorschläge/Beispielcode für fileSystemWatcher in Java
- 20. Wie sichere ich mein C# -Programm (.exe) für die Verwendung nur auf einem Laufwerk
- 21. Beliebiger Beispielcode für KomponentenSeparatedByCharactersInSet? (auf dem iPhone)
- 22. Anwendung implementieren Easing-Funktion (Beispielcode) für iPhone
- 23. LazyTableImages für iPhone Beispielcode Neu laden Frage
- 24. Beispielcode für einfache Datenausführungsverhinderung für Delphi
- 25. Doppel Klammer in Beispielcode
- 26. Anwendungen für die Verwendung von couchDB und einem RDBMS zusammen
- 27. Bluetooth Beispielcode für Kakao (Objective-C)
- 28. Aktuelle OpenHardwareMonitor Beispielcode C#
- 29. Konvertieren von WSE-Beispielcode in WCF
- 30. die Verwendung in einem Fragment
Ich bin froh, einige Beispielcode zu sehen, wenn jemand das erreicht. Vielleicht direkt durch Ctypes? – meduz