From 94ea440ee20275ed39a5e15ccea613bf65888ef2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johan=20Aires=20Rast=C3=A9n?= Date: Mon, 28 Dec 2020 18:27:47 +0100 Subject: [PATCH] Flip input frame instead of preview image --- README.md | 2 +- afy/cam_fomm.py | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 13ade3999..7b8de725f 100644 --- a/README.md +++ b/README.md @@ -240,7 +240,7 @@ Shift-Z | Reset camera zoom and translation Z/C | Adjust avatar target overlay opacity. X | Reset reference frame. F | Toggle reference frame search mode. -R | Mirror reference window. +R | Mirror camera input. T | Mirror output window. L | Reload avatars. I | Show FPS diff --git a/afy/cam_fomm.py b/afy/cam_fomm.py index 7a77e70a2..55c91b127 100644 --- a/afy/cam_fomm.py +++ b/afy/cam_fomm.py @@ -258,7 +258,7 @@ def select_camera(config): frame_offset_y = 0 overlay_alpha = 0.0 - preview_flip = False + input_flip = False output_flip = False find_keyframe = False is_calibrated = False @@ -291,6 +291,10 @@ def select_camera(config): break frame = frame[..., ::-1] + + if input_flip: + frame = cv2.flip(frame, 1) + frame_orig = frame.copy() frame, (frame_offset_x, frame_offset_y) = crop(frame, p=frame_proportion, offset_x=frame_offset_x, offset_y=frame_offset_y) @@ -379,7 +383,7 @@ def select_camera(config): elif key == ord('c'): overlay_alpha = min(overlay_alpha + 0.1, 1.0) elif key == ord('r'): - preview_flip = not preview_flip + input_flip = not input_flip elif key == ord('t'): output_flip = not output_flip elif key == ord('f'): @@ -425,9 +429,6 @@ def select_camera(config): draw_face_landmarks(preview_frame, avatar_kp, (200, 20, 10)) frame_kp = predictor.get_frame_kp(frame) draw_face_landmarks(preview_frame, frame_kp) - - if preview_flip: - preview_frame = cv2.flip(preview_frame, 1) if green_overlay: green_alpha = 0.8