Загрузить файлы в «/»
This commit is contained in:
commit
87f2225526
29
face_search.py
Normal file
29
face_search.py
Normal file
@ -0,0 +1,29 @@
|
||||
import cv2
|
||||
import numpy as np
|
||||
|
||||
# Загрузка модели HOG + SVM
|
||||
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
|
||||
|
||||
# Функция для поиска лиц на изображении
|
||||
def find_faces(image):
|
||||
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
|
||||
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
|
||||
|
||||
# Рисование прямоугольников вокруг обнаруженных лиц
|
||||
|
||||
for (x, y, w, h) in faces:
|
||||
cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)
|
||||
|
||||
return image
|
||||
|
||||
# Загрузка изображения
|
||||
|
||||
image = cv2.imread('image.jpg')
|
||||
|
||||
# Поиск лиц на изображении
|
||||
detected_image = find_faces(image)
|
||||
|
||||
# Отображение результата
|
||||
cv2.imshow('Detected Faces', detected_image)
|
||||
cv2.waitKey(0)
|
||||
cv2.destroyAllWindows()
|
36
face_search_cam.py
Normal file
36
face_search_cam.py
Normal file
@ -0,0 +1,36 @@
|
||||
import cv2
|
||||
|
||||
# Загрузка модели HOG + SVM
|
||||
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
|
||||
|
||||
# Функция для поиска лиц на изображении
|
||||
def find_faces(image):
|
||||
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
|
||||
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
|
||||
|
||||
# Рисование прямоугольников вокруг обнаруженных лиц
|
||||
for (x, y, w, h) in faces:
|
||||
cv2.rectangle(image, (x, y), (x + w, y + h), (0, 255, 0), 2)
|
||||
|
||||
return image
|
||||
|
||||
# Захват видео с веб-камеры
|
||||
cap = cv2.VideoCapture(0)
|
||||
|
||||
while(True):
|
||||
# Чтение кадра с камеры
|
||||
ret, frame = cap.read()
|
||||
|
||||
# Поиск лиц на кадре
|
||||
detected_frame = find_faces(frame)
|
||||
|
||||
# Отображение результата
|
||||
cv2.imshow('Detected Faces', detected_frame)
|
||||
|
||||
# Прерывание цикла при нажатии клавиши 'q'
|
||||
if cv2.waitKey(1) & 0xFF == ord('q'):
|
||||
break
|
||||
|
||||
# Освобождение ресурсов
|
||||
cap.release()
|
||||
cv2.destroyAllWindows()
|
23
haarcascade.py
Normal file
23
haarcascade.py
Normal file
@ -0,0 +1,23 @@
|
||||
import cv2
|
||||
|
||||
# Загрузка изображения
|
||||
image = cv2.imread('image.jpg')
|
||||
print(image)
|
||||
|
||||
# Преобразование изображения в оттенки серого
|
||||
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
|
||||
|
||||
# Загрузка каскадного классификатора для поиска лиц
|
||||
face_cascade = cv2.CascadeClassifier(r'haarcascade_frontalface_default.xml')
|
||||
print(face_cascade)
|
||||
# Обнаружение лиц на изображении
|
||||
faces = face_cascade.detectMultiScale(gray, 1.1, 4)
|
||||
|
||||
# Рисование прямоугольников вокруг найденных лиц
|
||||
for (x, y, w, h) in faces:
|
||||
cv2.rectangle(image, (x, y), (x+w, y+h), (255, 0, 0), 2)
|
||||
|
||||
# Отображение результата
|
||||
cv2.imshow('Результат', image)
|
||||
cv2.waitKey(0)
|
||||
cv2.destroyAllWindows()
|
BIN
haarcascade_frontalface_default.xml.zip
Normal file
BIN
haarcascade_frontalface_default.xml.zip
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user