From b35745edc5308e66c6de3853d1f03d48b52bea27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E4=BC=9F?= Date: Fri, 20 Sep 2024 11:17:47 +0800 Subject: [PATCH] fix: Fix the iteration error when no face is detected --- faceanalysis.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/faceanalysis.py b/faceanalysis.py index b6d1e6a..635da47 100644 --- a/faceanalysis.py +++ b/faceanalysis.py @@ -127,6 +127,8 @@ class InsightFace: y = [] w = [] h = [] + if faces is None: + return (img, x, y, w, h) for face in faces: x1, y1, x2, y2 = face['bbox'] width = x2 - x1 @@ -212,6 +214,8 @@ class DLib: y = [] w = [] h = [] + if faces is None: + return (img, x, y, w, h) for face in faces: x1 = max(0, face.left() - int(face.width() * padding_percent) - padding) y1 = max(0, face.top() - int(face.height() * padding_percent) - padding) @@ -329,6 +333,8 @@ class FaceBoundingBox: for i in image: i = T.ToPILImage()(i.permute(2, 0, 1)).convert('RGB') img, x, y, w, h = analysis_models.get_bbox(i, padding, padding_percent) + if not img: + continue out_img.extend(img) out_x.extend(x) out_y.extend(y)