Ubuntu 11中最简单的方法是什么?10以编程方式引导(从Bash或Python)用户捕获自己的网络摄像头照片?我可以启动一个简单的应用程序,如奶酪,但我没有看到一个简单的方法来立即检测或检索它捕获的照片。我还可以通过OpenCV直接访问和记录网络摄像头流,但我必须重新设计GUI才能与用户通信。有没有一种脚本是一个快乐的媒介,在那里我可以启动它,它打印在stdout的文件名的图像,用户采取?
uxhixvfz1#
我喜欢使用pygame来实现这一点--它不需要你打开Pygame SDL窗口,不像你想用它来捕获键盘事件。
import pygame.camera pygame.camera.init() cam = pygame.camera.Camera(pygame.camera.list_cameras()[0]) cam.start() img = cam.get_image() import pygame.image pygame.image.save(img, "photo.bmp") pygame.camera.quit()
虽然Pygame只会保存未压缩的“bmp”文件-但您可能希望将其与PIL组合以写入其他格式。
voj3qocg2#
如果你想通过Python来实现这一点,看起来你有几个选择。The Pygame library has the ability to access cameras。如果不满意,您可以进入更低的级别,使用Python's fcntl library直接使用ioctl调用访问Video 4 Linux 2 API。
2条答案
按热度按时间uxhixvfz1#
我喜欢使用pygame来实现这一点--它不需要你打开Pygame SDL窗口,不像你想用它来捕获键盘事件。
虽然Pygame只会保存未压缩的“bmp”文件-但您可能希望将其与PIL组合以写入其他格式。
voj3qocg2#
如果你想通过Python来实现这一点,看起来你有几个选择。The Pygame library has the ability to access cameras。
如果不满意,您可以进入更低的级别,使用Python's fcntl library直接使用ioctl调用访问Video 4 Linux 2 API。