Привет, я пытаюсь улучшить себя, и меня интересует малина Pi. Я хочу разработать студенческий проект с малиновой пи, малиновой пи-камерой и tft-экраном. Он включает в себя, когда raspi cam обнаруживает лицо, отображает один фильм и не обнаруживает какого-либо лицевого дисплея другого фильма. Я написал код, как показано ниже. Я использовал python opencv omxplayer libs. Когда я запускаю код, если лицо не обнаружено, видео не воспроизводится, но если лицо обнаружено, видео очень сильно включается и выключается, видео не появляется, только черные тени быстро появляются и выходят на экран. Спасибо за помощь. С уважениемRaspberry Pi Omxplayer OpenCV
from picamera.array import PiRGBArray
from picamera import PiCamera
import time
import cv2
import os
import numpy
from subprocess import Popen
#setup movies
movie1 = ("my_movie1_path")
movie2 = ("my_movie2_path")
camera = PiCamera()
camera.resolution = (320, 240)
camera.framerate = 60
rawCapture = PiRGBArray(camera, size=(320, 240))
# Load a cascade file for detecting faces
face_cascade = cv2.CascadeClassifier('my_path/lbpcascade_frontalface.xml')
t_start = time.time()
fps = 0
# Capture frames from the camera
for frame in camera.capture_continuous(rawCapture, format="bgr", use_video_port=True):
image = frame.array
# Use the cascade file we loaded to detect faces
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray)
print "1"
While True:
if len(faces) > 0 :
os.system('killall omxplayer.bin')
omcx = Popen(['omxplayer', '-b', movie2])
else :
os.system('killall omxplayer.bin')
omcx = Popen(['omxplayer', '-b', movie1])
#print "Found " + str(len(faces)) + " face(s)"
print "2"
rawCapture.truncate(0)
Думаю, вам стоит лучше объяснить проблему здесь. Я не могу понять последнее предложение. –
спасибо за ваш повтор, я отредактировал. –