mirror of
https://github.com/deepinsight/insightface.git
synced 2026-02-12 23:00:18 +00:00
Update InspireFace to 1.1.0
This commit is contained in:
@@ -9,10 +9,13 @@ class FaceTrackerCase(unittest.TestCase):
|
||||
|
||||
def setUp(self) -> None:
|
||||
# Prepare material
|
||||
track_mode = HF_DETECT_MODE_IMAGE # Use video mode
|
||||
track_mode = HF_DETECT_MODE_ALWAYS_DETECT
|
||||
self.engine = ifac.InspireFaceSession(param=ifac.SessionCustomParameter(),
|
||||
detect_mode=track_mode)
|
||||
|
||||
self.engine_tk = ifac.InspireFaceSession(param=ifac.SessionCustomParameter(),
|
||||
detect_mode=HF_DETECT_MODE_LIGHT_TRACK)
|
||||
|
||||
def test_face_detection_from_image(self):
|
||||
image = cv2.imread(get_test_data("bulk/kun.jpg"))
|
||||
self.assertIsNotNone(image)
|
||||
@@ -33,8 +36,6 @@ class FaceTrackerCase(unittest.TestCase):
|
||||
self.assertEqual(len(self.engine.face_detection(any_image)), 0)
|
||||
|
||||
def test_face_pose(self):
|
||||
self.engine.set_track_mode(HF_DETECT_MODE_IMAGE)
|
||||
|
||||
# Test yaw (shake one's head)
|
||||
left_face = cv2.imread(get_test_data("pose/left_face.jpeg"))
|
||||
self.assertIsNotNone(left_face)
|
||||
@@ -84,11 +85,9 @@ class FaceTrackerCase(unittest.TestCase):
|
||||
self.assertEqual(True, right_face_roll > 30)
|
||||
|
||||
def test_face_track_from_video(self):
|
||||
self.engine.set_track_mode(HF_DETECT_MODE_VIDEO)
|
||||
|
||||
# Read a video file
|
||||
video_gen = read_video_generator(get_test_data("video/810_1684206192.mp4"))
|
||||
results = [self.engine.face_detection(frame) for frame in video_gen]
|
||||
results = [self.engine_tk.face_detection(frame) for frame in video_gen]
|
||||
num_of_frame = len(results)
|
||||
num_of_track_loss = len([faces for faces in results if not faces])
|
||||
total_track_ids = [faces[0].track_id for faces in results if faces]
|
||||
@@ -117,30 +116,27 @@ class FaceTrackerBenchmarkCase(unittest.TestCase):
|
||||
self.image = cv2.imread(get_test_data("bulk/kun.jpg"))
|
||||
self.assertIsNotNone(self.image)
|
||||
# Prepare material
|
||||
track_mode = HF_DETECT_MODE_VIDEO # Use video mode
|
||||
self.engine = ifac.InspireFaceSession(HF_ENABLE_NONE, track_mode, )
|
||||
self.engine = ifac.InspireFaceSession(HF_ENABLE_NONE, HF_DETECT_MODE_ALWAYS_DETECT, )
|
||||
self.engine_tk = ifac.InspireFaceSession(HF_ENABLE_NONE, HF_DETECT_MODE_LIGHT_TRACK, )
|
||||
# Prepare video data
|
||||
self.video_gen = read_video_generator(get_test_data("video/810_1684206192.mp4"))
|
||||
|
||||
@benchmark(test_name="Face Detect", loop=1000)
|
||||
def test_benchmark_face_detect(self):
|
||||
self.engine.set_track_mode(HF_DETECT_MODE_IMAGE)
|
||||
for _ in range(self.loop):
|
||||
faces = self.engine.face_detection(self.image)
|
||||
self.assertEqual(len(faces), 1, "No face detected may have an error, please check.")
|
||||
|
||||
@benchmark(test_name="Face Track", loop=1000)
|
||||
def test_benchmark_face_track(self):
|
||||
self.engine.set_track_mode(HF_DETECT_MODE_VIDEO)
|
||||
for _ in range(self.loop):
|
||||
faces = self.engine.face_detection(self.image)
|
||||
faces = self.engine_tk.face_detection(self.image)
|
||||
self.assertEqual(len(faces), 1, "No face detected may have an error, please check.")
|
||||
|
||||
@benchmark(test_name="Face Track(Video)", loop=345)
|
||||
def test_benchmark_face_track_video(self):
|
||||
self.engine.set_track_mode(HF_DETECT_MODE_VIDEO)
|
||||
for frame in self.video_gen:
|
||||
faces = self.engine.face_detection(frame)
|
||||
faces = self.engine_tk.face_detection(frame)
|
||||
self.assertEqual(len(faces), 1, "No face detected may have an error, please check.")
|
||||
|
||||
@classmethod
|
||||
|
||||
Reference in New Issue
Block a user