2012-12-20 33 views
0

我正在爲我的父母製作一個在線攝像頭,使用覆盆子pi。我希望它能夠捕獲照片,將其上傳到網絡服務器,然後將副本上傳到不同的服務器進行歸檔。我使用腳本拖放器從網絡攝像頭捕捉靜止圖像。它的工作原理是,看起來拖纜有時會崩潰,循環錯誤消息「v4l2:oops:select timeout」。這可能發生在幾次鏡頭之後,或者在運行10分鐘後,它似乎是隨機的。我在每次快照後添加了一個殺死流轉過程的命令,它確實使程序更加穩定,但最終它仍然陷入錯誤循環。我不知道問題是什麼,甚至不知道如何調試。我該怎麼辦?v4l2 /拖纜運行不穩定

我正在使用包含驅動程序的raspbian。網絡攝像頭是Logitech c200。我第一次嘗試使用opencv捕獲劇照,但無法使其正常工作。如果有人可以提供幫助的也許會解決這個問題,我不知道..

這是代碼,這是蟒蛇:

import time 
import sys 
from subprocess import call 
import ftputil 

while True: 
    call("streamer -q -f jpeg -s 640x480 -o ./current.jpeg", shell=True) 
    time.sleep(0.2); 
    call("killall -q streamer", shell=True) 
    filename = str(time.time()) + ".jpg" 
    host = ftputil.FTPHost(*****) 
    #host.remove("/domains/***/public_html/webcam.jpg") 
    host.upload("./current.jpeg", "/domains/***/public_html/webcam.jpg", mode='b') 
    host.close() 
    host = ftputil.FTPHost(****) 
    #host.remove("/domains/***/public_html/webcam.jpg") 
    host.upload("./current.jpeg", "/webcamarchive/"+filename, mode='b') 
    host.close() 
    time.sleep(10); 

回答

1

沒關係,改爲使用pygame的:

cam = pygame.camera.Camera("/dev/video0",(640,480)) 
cam.start() 
image = cam.get_image()