mirror of
https://github.com/serengil/deepface.git
synced 2025-06-08 12:35:22 +00:00
Use return boolean to detect effective capture
Actually an image is always returned but empty
This commit is contained in:
parent
810dfac4fe
commit
051a8d3172
@ -68,9 +68,8 @@ def analysis(
|
|||||||
|
|
||||||
cap = cv2.VideoCapture(source) # webcam
|
cap = cv2.VideoCapture(source) # webcam
|
||||||
while True:
|
while True:
|
||||||
_, img = cap.read()
|
has_frame, img = cap.read()
|
||||||
|
if not has_frame:
|
||||||
if img is None:
|
|
||||||
break
|
break
|
||||||
|
|
||||||
# cv2.namedWindow('img', cv2.WINDOW_FREERATIO)
|
# cv2.namedWindow('img', cv2.WINDOW_FREERATIO)
|
||||||
@ -111,36 +110,34 @@ def analysis(
|
|||||||
detected_faces = []
|
detected_faces = []
|
||||||
face_index = 0
|
face_index = 0
|
||||||
for x, y, w, h in faces:
|
for x, y, w, h in faces:
|
||||||
if w > 130: # discard small detected faces
|
if w <= 130: # discard small detected faces
|
||||||
|
continue
|
||||||
|
face_detected = True
|
||||||
|
if face_index == 0:
|
||||||
|
face_included_frames += 1 # increase frame for a single face
|
||||||
|
|
||||||
face_detected = True
|
cv2.rectangle(
|
||||||
if face_index == 0:
|
img, (x, y), (x + w, y + h), (67, 67, 67), 1
|
||||||
face_included_frames = (
|
) # draw rectangle to main image
|
||||||
face_included_frames + 1
|
|
||||||
) # increase frame for a single face
|
|
||||||
|
|
||||||
cv2.rectangle(
|
cv2.putText(
|
||||||
img, (x, y), (x + w, y + h), (67, 67, 67), 1
|
img,
|
||||||
) # draw rectangle to main image
|
str(frame_threshold - face_included_frames),
|
||||||
|
(int(x + w / 4), int(y + h / 1.5)),
|
||||||
|
cv2.FONT_HERSHEY_SIMPLEX,
|
||||||
|
4,
|
||||||
|
(255, 255, 255),
|
||||||
|
2,
|
||||||
|
)
|
||||||
|
|
||||||
cv2.putText(
|
detected_face = img[int(y) : int(y + h), int(x) : int(x + w)] # crop detected face
|
||||||
img,
|
|
||||||
str(frame_threshold - face_included_frames),
|
|
||||||
(int(x + w / 4), int(y + h / 1.5)),
|
|
||||||
cv2.FONT_HERSHEY_SIMPLEX,
|
|
||||||
4,
|
|
||||||
(255, 255, 255),
|
|
||||||
2,
|
|
||||||
)
|
|
||||||
|
|
||||||
detected_face = img[int(y) : int(y + h), int(x) : int(x + w)] # crop detected face
|
# -------------------------------------
|
||||||
|
|
||||||
# -------------------------------------
|
detected_faces.append((x, y, w, h))
|
||||||
|
face_index = face_index + 1
|
||||||
|
|
||||||
detected_faces.append((x, y, w, h))
|
# -------------------------------------
|
||||||
face_index = face_index + 1
|
|
||||||
|
|
||||||
# -------------------------------------
|
|
||||||
|
|
||||||
if face_detected == True and face_included_frames == frame_threshold and freeze == False:
|
if face_detected == True and face_included_frames == frame_threshold and freeze == False:
|
||||||
freeze = True
|
freeze = True
|
||||||
|
Loading…
x
Reference in New Issue
Block a user