Go to the documentation of this file.
4 #ifndef ACC_DETECTOR_PRESENCE_PROCESSING_H_
5 #define ACC_DETECTOR_PRESENCE_PROCESSING_H_
16 struct acc_detector_presence_processing_handle;
23 struct acc_detector_presence_processing_config;
135 uint16_t inter_frame_presence_timeout);
176 float intra_detection_threshold);
217 float inter_detection_threshold);
236 float inter_frame_deviation_time_const);
256 float inter_frame_fast_cutoff);
273 float inter_frame_slow_cutoff);
290 float intra_frame_time_const);
307 float intra_output_time_const);
324 float inter_output_time_const);
acc_detector_presence_processing_handle_t * acc_detector_presence_processing_create(const acc_detector_presence_processing_config_t *processing_config, const acc_config_t *sensor_config)
Create a processing handle with the provided base configuration.
void acc_detector_presence_processing_config_destroy(acc_detector_presence_processing_config_t *processor_config)
Destroy a presence processor configuration.
float acc_detector_presence_processing_config_frame_rate_get(const acc_detector_presence_processing_config_t *processing_config)
Get the frame rate.
struct acc_detector_presence_processing_config acc_detector_presence_processing_config_t
void acc_detector_presence_processing_config_inter_frame_fast_cutoff_set(acc_detector_presence_processing_config_t *processing_config, float inter_frame_fast_cutoff)
Set the cutoff frequency of the low pass filter for the fast filtered absolute sweep mean.
float * depthwise_intra_presence_scores
bool acc_detector_presence_processing_config_intra_detection_get(const acc_detector_presence_processing_config_t *processing_config)
Get if frame intra-frame presence detection is enabled.
Data type for interger-based representation of complex numbers.
float acc_detector_presence_processing_config_inter_frame_slow_cutoff_get(const acc_detector_presence_processing_config_t *processing_config)
Get the cutoff frequency of the low pass filter for the slow filtered absolute sweep mean.
void acc_detector_presence_processing_config_inter_frame_presence_timeout_set(acc_detector_presence_processing_config_t *processing_config, uint16_t inter_frame_presence_timeout)
Set the inter-frame presence timeout in seconds.
float * depthwise_inter_presence_scores
bool acc_detector_presence_processing_reset(acc_detector_presence_processing_handle_t *processing_handle)
Reset existing processing buffers.
struct acc_detector_presence_processing_handle acc_detector_presence_processing_handle_t
void acc_detector_presence_processing_config_inter_output_time_const_set(acc_detector_presence_processing_config_t *processing_config, float inter_output_time_const)
Set the time constant for the output in the inter-frame part.
float acc_detector_presence_processing_config_inter_frame_deviation_time_const_get(const acc_detector_presence_processing_config_t *processing_config)
Get the time constant of the low pass filter for the inter-frame deviation between fast and slow.
bool acc_detector_presence_processing_config_inter_detection_get(const acc_detector_presence_processing_config_t *processing_config)
Get if inter-frame presence detection is enabled.
void acc_detector_presence_processing_config_inter_detection_set(acc_detector_presence_processing_config_t *processing_config, bool enable)
Set inter-frame presence detection.
void acc_detector_presence_processing_config_frame_rate_set(acc_detector_presence_processing_config_t *processing_config, float frame_rate)
Set the frame rate.
void acc_detector_presence_processing_destroy(acc_detector_presence_processing_handle_t *processing_handle)
Destroy a processing handle.
struct acc_config acc_config_t
float acc_detector_presence_processing_config_intra_output_time_const_get(const acc_detector_presence_processing_config_t *processing_config)
Get the time constant for the output in the intra-frame part.
float acc_detector_presence_processing_config_inter_output_time_const_get(const acc_detector_presence_processing_config_t *processing_config)
Get the time constant for the output in the inter-frame part.
acc_detector_presence_processing_config_t * acc_detector_presence_processing_config_create(void)
Create a configuration for a presence processor.
float acc_detector_presence_processing_config_inter_frame_fast_cutoff_get(const acc_detector_presence_processing_config_t *processing_config)
Get the cutoff frequency of the low pass filter for the fast filtered absolute sweep mean.
void acc_detector_presence_processing_config_intra_detection_set(acc_detector_presence_processing_config_t *processing_config, bool enable)
Set intra-frame presence detection.
void acc_detector_presence_processing_config_intra_detection_threshold_set(acc_detector_presence_processing_config_t *processing_config, float intra_detection_threshold)
Set the detection threshold for the intra-frame presence detection.
bool acc_detector_presence_processing_process(acc_detector_presence_processing_handle_t *processing_handle, void *buffer, const acc_int16_complex_t *frame, acc_detector_presence_processing_result_t *presence_result)
Process sensor data.
uint16_t acc_detector_presence_processing_config_inter_frame_presence_timeout_get(const acc_detector_presence_processing_config_t *processing_config)
Get the inter-frame presence timeout in seconds.
float acc_detector_presence_processing_config_intra_frame_time_const_get(const acc_detector_presence_processing_config_t *processing_config)
Get the time constant for the depthwise filtering in the intra-frame part.
float intra_presence_score
Presence detector results container.
float inter_presence_score
float acc_detector_presence_processing_config_inter_detection_threshold_get(const acc_detector_presence_processing_config_t *processing_config)
Get the detection threshold for the inter-frame presence detection.
void acc_detector_presence_processing_config_intra_frame_time_const_set(acc_detector_presence_processing_config_t *processing_config, float intra_frame_time_const)
Set the time constant for the depthwise filtering in the intra-frame part.
void acc_detector_presence_processing_config_intra_output_time_const_set(acc_detector_presence_processing_config_t *processing_config, float intra_output_time_const)
Set the time constant for the output in the intra-frame part.
void acc_detector_presence_processing_config_inter_frame_deviation_time_const_set(acc_detector_presence_processing_config_t *processing_config, float inter_frame_deviation_time_const)
Set the time constant of the low pass filter for the inter-frame deviation between fast and slow.
void acc_detector_presence_processing_config_inter_frame_slow_cutoff_set(acc_detector_presence_processing_config_t *processing_config, float inter_frame_slow_cutoff)
Set the cutoff frequency of the low pass filter for the slow filtered absolute sweep mean.
float acc_detector_presence_processing_config_intra_detection_threshold_get(const acc_detector_presence_processing_config_t *processing_config)
Get the detection threshold for the intra-frame presence detection.
uint32_t depthwise_presence_scores_length
uint32_t acc_detector_presence_processing_get_buffer_size(const acc_config_t *sensor_config)
Get the buffer size needed for presence processing.
void acc_detector_presence_processing_config_inter_detection_threshold_set(acc_detector_presence_processing_config_t *processing_config, float inter_detection_threshold)
Set the detection threshold for the inter-frame presence detection.