Помогите решить эту проблему, пжж для робота, компьютерное зрение (ARDUINO + OPENCV-PYTHON+ PCA9685+6 servo MG996R)
Такую ошибку выдает:
Warning (from warnings module):
File "C:\cascades\машинное_зрение.py", line 9
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + f"C:\cascades\haarcascade_frontalface_default.xml")
SyntaxWarning: invalid escape sequence '\c'
>>>
= RESTART: C:\cascades\машинное_зрение.py
Traceback (most recent call last):
File "C:\cascades\машинное_зрение.py", line 21, in <module>
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
cv2.error: OpenCV(4.9.0) D:\a\opencv-python\opencv-python\opencv\modules\objdetect\src\cascadedetect.cpp:1689: error: (-215:Assertion failed) !empty() in function 'cv::CascadeClassifier::detectMultiScale'
Вот скрипт!
import cv2
import serial
import numpy as np
# Инициализация сериального порта для связи с Arduino
ser = serial.Serial('COM13', 9600, timeout=1)
# Загрузка предобученного классификатора для распознавания лиц
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + f"C:\cascades\haarcascade_frontalface_default.xml")
# Инициализация видеопотока с веб-камеры
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read ()
if not ret:
break
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.3, 5)
for (x, y, w, h) in faces:
# Вычисление углов поворота для каждого сервопривода
angle_x # вычислить угол поворота по x
angle_y # вычислить угол поворота по y
# Отправка углов поворота на Arduino
ser.write(f'{angle_x} {angle_y}\n'.encode())
cv2.imshow('Face Detection', frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
ser.close()
C:\casca => C:\\casca
и т.д.