10 #include <bnb/utils/defs.hpp>
14 namespace bnb {
namespace interfaces {
17 struct camera_position;
24 static std::shared_ptr<face_data> create();
26 virtual std::vector<float> get_landmarks()
const = 0;
28 virtual void set_landmarks(
const std::vector<float> & lms) = 0;
30 virtual std::vector<float> get_latents()
const = 0;
32 virtual void set_latents(
const std::vector<float> & lats) = 0;
34 virtual std::vector<float> get_vertices()
const = 0;
36 virtual void set_vertices(
const std::vector<float> & verts) = 0;
38 virtual std::vector<float> get_ears_landmarks()
const = 0;
40 virtual void set_ears_landmarks(
const std::vector<float> & lms) = 0;
42 virtual std::vector<float> get_ears_latents()
const = 0;
44 virtual void set_ears_latents(
const std::vector<float> & lats) = 0;
46 virtual std::vector<float> get_brows_lms()
const = 0;
48 virtual void set_brows_lms(
const std::vector<float> & lms) = 0;
55 virtual std::vector<float> get_embeddings()
const = 0;
57 virtual bool has_face() = 0;
61 virtual void set_face_rect(
const pixel_rect & rect) = 0;
63 virtual gender get_gender()
const = 0;
65 virtual void set_gender(gender g) = 0;