цифровая электроника
вычислительная техника
встраиваемые системы

 
» » » Как на Raspberry Pi реализовать обнаружение лиц с помощью OpenCV и Python



Как на Raspberry Pi реализовать обнаружение лиц с помощью OpenCV и Python

Автор: Mike(admin) от 15-08-2024, 23:55

Для выполнения обнаружения лиц (Face Detection) на Raspberry Pi с использованием OpenCV и Python, вам потребуется установить необходимые библиотеки и написать скрипт для обнаружения лиц. Вот пошаговое руководство.


Как на Raspberry Pi реализовать обнаружение лиц с помощью OpenCV и Python

Обновите систему и установите необходимые пакеты:



sudo apt update
sudo apt upgrade
sudo apt install python3 python3-pip

Установите OpenCV:


sudo apt install python3-opencv

Установите дополнительные библиотеки (если необходимо):


pip3 install numpy

Создайте новый Python файл, например face_detection.py, и вставьте следующий код:



import cv2

# Загрузка классификатора каскадов Хаара для детекции лиц
face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + 'haarcascade_frontalface_default.xml')

# Инициализация захвата видео с камеры
cap = cv2.VideoCapture(0)

while True:
    # Чтение кадра из видеопотока
    ret, frame = cap.read()
    
    # Преобразование изображения в оттенки серого
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    
    # Обнаружение лиц на изображении
    faces = face_cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
    
    # Отрисовка прямоугольников вокруг обнаруженных лиц
    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (x+w, y+h), (255, 0, 0), 2)
    
    # Отображение видеопотока с детекцией лиц
    cv2.imshow('Face Detection', frame)
    
    # Прерывание цикла по нажатию клавиши 'q'
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# Освобождение ресурсов
cap.release()
cv2.destroyAllWindows()

Сохраните файл и запустите его:


python3 face_detection.py

Объяснение кода:


  • Импортируем необходимые библиотеки: cv2 для OpenCV
  • Загружаем классификатор Хаара: Это предварительно обученная модель для детекции лиц
  • Инициализируем захват видео с камеры: Используем OpenCV для захвата видеопотока с камеры Raspberry Pi
  • Читаем кадр и преобразуем его в оттенки серого: Это необходимо для работы классификатора Хаара
  • Обнаруживаем лица: Используем метод detectMultiScale для нахождения лиц на изображении
  • Рисуем прямоугольники вокруг лиц: Отмечаем обнаруженные лица прямоугольниками
  • Отображаем видеопоток: Показ видеопотока с выделенными лицами
  • Прерываем цикл по нажатию клавиши 'q': Это позволяет остановить программу

Теперь у вас есть базовый скрипт для обнаружения лиц на Raspberry Pi с использованием OpenCV и Python. Вы можете дальше улучшать и настраивать его под свои нужды.




© digitrode.ru


Теги: Raspberry Pi, Python, OpenCV




Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий