10#include <bnb/types/full_image.hpp>
11#include <bnb/utils/defs.hpp>
16#include <unordered_map>
19namespace bnb {
namespace interfaces {
21class frx_recognition_result;
22enum class face_data_source;
25struct action_units_data;
29struct external_face_data;
32struct feature_parameter;
33struct full_image_format;
34struct lips_shine_mask;
35struct transformed_mask_byte;
36struct transformed_mask_gpu;
47 static std::shared_ptr<frame_data>
create();
51 virtual std::vector<float> get_full_img_transform() = 0;
56 virtual void set_frx_recognition_result(
const std::shared_ptr<frx_recognition_result> & result) = 0;
69 virtual bool get_is_smile() = 0;
71 virtual bool get_is_mouth_open() = 0;
73 virtual bool get_is_brows_raised() = 0;
75 virtual bool get_is_brows_shifted() = 0;
77 virtual bool get_is_wear_glasses() = 0;
79 virtual float get_ruler() = 0;
83 virtual float get_light_correction() = 0;
117 virtual std::optional<std::string> get_face_attributes() = 0;
140 virtual void add_external_face_data(face_data_source source,
const std::vector<external_face_data> & data) = 0;
144 virtual void add_frame_number(int64_t frame_number) = 0;
157 virtual std::vector<float> get_chromakey_color() = 0;
basis is the base basis: for y/rgb basis use .basis or get_subchannel_basis_transform(1); for uv basi...
getters throw exceptions when data are not available android NNs usually output gpu masks
virtual float get_lips_glare_max_brightness()=0
Lips glare max brightness.
virtual std::vector< int32_t > get_teeth_color()=0
Teeth color in Lab color space.
static std::shared_ptr< frame_data > create()
Creates empty FrameData.
virtual void add_timestamp_us(double timestamp_us)=0
add frame timestamp in microseconds
virtual float get_pupillary_distance()=0
Pupillary distance in mm.
virtual std::shared_ptr< frx_recognition_result > get_frx_recognition_result()=0
Get frx_recognition_result or null if not exists.
virtual std::vector< detected_face > get_face_detector_result()=0
Face detector is an input for face recognizer.
virtual void add_feature_parameters(const std::unordered_map< feature_id, std::vector< feature_parameter > > ¶ms)=0
Extra parameters during in-CPU feature calculations.
virtual std::vector< float > get_light_source_params()=0
list[0] and list[1] - x and y coordinates of the thermal temperature of the light source list[2] - th...
for order of values in action units array see action_units_indices enum
Results from depth camera.