Я пытаюсь создать веб-приложение для распознавания лиц.Я запускаю код захвата и обработки изображений через скрипты Python и вызываю файл python из php.
Код Python работает при вызове через командную строку, но через php cam.read () просто не захватывает кадры, а возвращаемое значение всегда ложно .Я действительно получаю значение cam.isOpened () как истинное , поэтому я знаю, что моя камера включена.Просто он не читает никаких фреймов при вызове через php.
Кроме того, функция read () возвращает значение true, когда я читаю кадры из видеофайла, а не с веб-камеры.
Любая помощь в выяснении причин, по которой будет полезно!Может ли это быть связано с разрешениями xampp или около того?Я использую сервер xampp на macOS .
Вот мой код:
test.py
import cv2
import time
cam = cv2.VideoCapture(0) #initialize webcam
time.sleep(2) #to warm up camera sensor
retL = [] #to store the frame return values
i = 0
while i < 10:
ret, frame = cam.read() #read frames from webcam
retL.append(ret)
i += 1
cam.release()
print(retL) #returns a list filled with 'False' only when the script is called from php
test.php
<?php
$a = shell_exec('/usr/local/bin/python3 test.py 2>&1');
echo $a;
?>