Ich habe einen Python-Code geschrieben, der einige opencv-Code enthält, um mit meiner Webcam herumzuspielen. Ich habe es an raspi 3 angeschlossen. Ich will das beim Start (Booten), es beginnt Video automatisch aufzunehmen. Ich benutze Crontab für diese.Automatisierung der Videoaufnahme beim Booten von Himbeer pi3
Mein Python-Code:
import cv
if __name__ == "__main__":
# find the webcam
capture = cv2.VideoCapture(0)
capture1 = capture
# video recorder
fourcc = cv2.cv.CV_FOURCC(*'XVID') #cv2.VideoWriter_fourcc() does not exist
videoOut = cv2.VideoWriter('out1.avi', fourcc, 10.0, (640, 480))
videoOut1 = cv2.VideoWriter('out2.avi', fourcc, 10.0, (640, 480))
# record video
while (capture.isOpened() and capture1.isOpened()):
ret, frame = capture.read()
ret1, frame1 = capture1.read()
if ret:
videoOut.write(frame)
cv2.imshow('Video Stream', frame)
else:
break
if ret1:
frame1 = cv2.flip(frame1,1)
videoOut1.write(frame1)
cv2.imshow('Video Stream1', frame1)
else:
break
# Tiny Pause
key = cv2.waitKey(1)
capture1.release()
videoOut1.release()
capture.release()
videoOut.release()
cv2.destroyAllWindows()
Dann machte ich ein Bash-Skript, das wie folgt aussieht,
cd/
cd absolute path to my python file directory
sudo python cam22.py
cd/
cam22.py ist der Name meiner Python Datei
Dann habe ich contrab diesen Bash-Skript zur Laufzeit durch das Schreiben
@reboot path to my bash file
Nach dem Neustart zwei AVI-Dateien erzeugt werden im gleichen Verzeichnis aber das Video wird nicht aufgenommen, die Webcam nicht läuft laufen, was jedoch perfekt läuft, wenn ich diese bash-Datei selbst ausführe, um die Python-Datei auszuführen.
Wie in den Kommentaren Schlug ich eine Log-Datei erstellt haben, zeigt es das Fehlerprotokoll zeigt (Video Stream: 542): Gtk-Warnung **: nicht offen Anzeige:
Schwer zu sagen, aber wenn Sie Fehler protokollieren möchten, schreiben Sie einfach '@ Reboot Pfad zu meiner Bash-Datei >> Logfile ', um zu wissen, was tatsächlich passiert. – Bhavyanshu
Versuchen Sie, Interaktionen mit Bildschirm und Tastatur zu entfernen, die für 'cron' Prozesse nicht verfügbar sind -' imshow() ',' waitkey() '... –
@Bhavyanshu Das Fehlerprotokoll zeigt (Video Stream: 542): Gtk-Warnung **: Anzeige kann nicht geöffnet werden: – Shirish