def test_image_all_diallo(self): gi = ImageAnalyzer(face_detector=OcvCnnFacedetector(padd_prct=0.), face_classifier=Vggface_LSVM_YTF()) df = gi('./media/Europa21_-_2.jpg') self.assertEqual(len(df), 1) self.assertEqual(df.bbox[0], (432, 246, 989, 803)) self.assertEqual(df.sex_label[0], 'f') self.assertAlmostEqual(df.sex_decfunc[0], -1.16580753, places=3) self.assertAlmostEqual(df.detect_conf[0], 0.99964356, places=3)
def test_image_knuth(self): gi = ImageAnalyzer(face_detector=OcvCnnFacedetector(padd_prct=0.), face_classifier=Vggface_LSVM_YTF()) df = gi('./media/20091020222328!KnuthAtOpenContentAlliance.jpg') self.assertEqual(len(df), 1) e = next(df.itertuples(index=False, name='useless')) self.assertEqual(e.bbox, (79, 47, 322, 290)) self.assertEqual(e.sex_label, 'm') self.assertAlmostEqual(e.sex_decfunc, 8.734114471, places=3) self.assertAlmostEqual(e.detect_conf, 0.99995565, places=3)
def test_image_all_diallo_multioutput(self): gi = ImageAnalyzer(face_classifier=Resnet50FairFaceGRA(), face_detector=OcvCnnFacedetector()) df = gi('./media/Europa21_-_2.jpg') self.assertEqual(len(df), 1) e = next(df.itertuples(index=False, name='useless')) self.assertEqual(e.bbox, (421, 235, 997, 811)) self.assertEqual(e.sex_label, 'f') self.assertAlmostEqual(e.age_label, 22.44171142, places=2) self.assertAlmostEqual(e.sex_decfunc, -4.708023, places=2) self.assertAlmostEqual(e.age_decfunc, 2.744171142, places=2) self.assertAlmostEqual(e.detect_conf, 0.987, places=2)
def test_imagelist(self): # test robustness of Libfacedetection with variable size image list # used to be associated with GPU memory issues on some architectures ia = ImageAnalyzer(face_detector=LibFaceDetection()) ia(glob.glob('./media/*.jpg'))
def test_multifaceimage(self): gi = ImageAnalyzer(face_detector=OcvCnnFacedetector()) ret = gi('./media/800px-India_(236650352).jpg') self.assertEqual(len(ret), 5)