juras3k's picture
Deploy backend API to HF Space
c4ba2f9
Raw
History Blame Contribute Delete
1.59 kB
import cv2
import numpy as np
def draw_landmarks(image, landmarks, draw_indices=False):
img = image.copy()
for i, (x, y, z) in enumerate(landmarks):
x, y = int(x), int(y)
cv2.circle(img, (x, y), 1, (0, 255, 0), -1)
if draw_indices:
cv2.putText(
img,
str(i),
(x, y),
cv2.FONT_HERSHEY_SIMPLEX,
0.3,
(0, 0, 255),
1,
cv2.LINE_AA,
)
return img
def draw_geometry(image, landmarks):
img = image.copy()
def p(idx):
return tuple(map(int, landmarks[idx][:2]))
cv2.line(img, p(10), p(152), (255, 0, 0), 2)
cv2.line(img, p(234), p(454), (0, 255, 255), 2)
cv2.line(img, p(172), p(397), (0, 0, 255), 2)
cv2.line(img, p(33), p(263), (255, 255, 0), 2)
return img
def draw_features(image, features):
img = image.copy()
y = 30
for k, v in features.items():
text = f"{k}: {v:.3f}"
cv2.putText(
img,
text,
(20, y),
cv2.FONT_HERSHEY_SIMPLEX,
0.6,
(255, 255, 255),
2,
cv2.LINE_AA,
)
y += 25
return img
def draw_traits(image, traits):
img = image.copy()
y = 140
for k, v in traits.items():
cv2.putText(
img,
f"{k}: {v}",
(20, y),
cv2.FONT_HERSHEY_SIMPLEX,
0.6,
(0, 255, 0),
2
)
y += 25
return img