summaryrefslogtreecommitdiff
path: root/units.py
diff options
context:
space:
mode:
Diffstat (limited to 'units.py')
-rwxr-xr-xunits.py27
1 files changed, 24 insertions, 3 deletions
diff --git a/units.py b/units.py
index 8cdbba7..6a656cc 100755
--- a/units.py
+++ b/units.py
@@ -70,9 +70,30 @@ for it in FILES:
break
if len(faces) != 1:
- print("\033[1mERROR: %s has %d faces, no square possible!\033[0m" % (it, len(faces)))
- bf1.append("* ERROR: %s needs a square\n" % it)
- continue
+ print("INFO: %s has %d anime faces, no square possible!" % (it, len(faces)))
+ print("Retrying with human face...")
+ cPath="lbpcascade_face.xml"
+ iPath="ready-units/%s" % it
+ cascade=cv2.CascadeClassifier(cPath)
+ org_img=cv2.imread(iPath)
+ img=cv2.cvtColor(org_img, cv2.COLOR_BGR2GRAY)
+ maxi = 3.2
+ step = 0.1
+ curr = 1.0
+ faces = []
+ # Detect faces
+ while len(faces) != 1:
+ if curr == 1.0:
+ faces = cascade.detectMultiScale(img, scaleFactor=1.01, minNeighbors=5)
+ else:
+ faces = cascade.detectMultiScale(img, scaleFactor=curr, minNeighbors=5)
+ curr+=step
+ if curr > maxi:
+ break
+ if len(faces) != 1:
+ print("\033[1mERROR: %s has %d faces, no square possible!\033[0m" % (it, len(faces)))
+ bf1.append("* ERROR: %s needs a square\n" % it)
+ continue
face=faces[0]