Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "bebop_ae_awb.h"
#include "boards/bebop.h"
#include "boards/bebop/mt9f002.h"
#include "boards/bebop/isp/libisp.h"
#include "modules/computer_vision/cv.h"
Go to the source code of this file.
Macros | |
#define | MAX_HIST_Y 255 |
#define | MIN_HIST_Y 1 |
#define | BEBOP_AE_AWB_VERBOSE 0 |
#define | PRINT(string, ...) fprintf(stderr, "[bebop_ae_awb->%s()] " string,__FUNCTION__ , ##__VA_ARGS__) |
#define | VERBOSE_PRINT(...) |
#define | BEBOP_AE_AWB_NICE 5 |
#define | BEBOP_AUTO_EXPOSURE true |
#define | BEBOP_AE_EXPOSURE_GAIN 0.8 |
#define | BEBOP_AE_MIDDLE_INDEX 160 |
#define | BEBOP_AE_DARK_IGNORE 0.4 |
#define | BEBOP_AE_BRIGHT_IGNORE 0.2 |
#define | BEBOP_AE_DARK_BINS 80 |
#define | BEBOP_AE_BRIGHT_BINS 20 |
#define | BEBOP_AUTO_WHITE_BALANCE true |
#define | BEBOP_AWB_MIN_GAINS 1.0 |
#define | BEBOP_AWB_MAX_GAINS 63.5 |
#define | BEBOP_AWB_GAIN 0.5 |
#define | BEBOP_AWB_GAIN_SCHEDULING false |
#define | BEBOP_AWB_GAIN_SCHEDULING_TARGET 10.0 |
#define | BEBOP_AWB_GAIN_SCHEDULING_TOLERANCE 7.5 |
#define | BEBOP_AWB_GAIN_SCHEDULING_STEP 0.02 |
#define | BEBOP_AWB_MIN_GREY_PIXELS 1000 |
Functions | |
static struct image_t * | update_ae_awb (struct image_t *img, uint8_t camera_id) |
void | bebop_ae_awb_init (void) |
Variables | |
struct ae_setting_t | ae_set |
struct awb_setting_t | awb_set |
Definition in file bebop_ae_awb.c.
#define BEBOP_AE_AWB_NICE 5 |
Definition at line 51 of file bebop_ae_awb.c.
#define BEBOP_AE_AWB_VERBOSE 0 |
Definition at line 36 of file bebop_ae_awb.c.
#define BEBOP_AE_BRIGHT_BINS 20 |
Definition at line 90 of file bebop_ae_awb.c.
#define BEBOP_AE_BRIGHT_IGNORE 0.2 |
Definition at line 78 of file bebop_ae_awb.c.
#define BEBOP_AE_DARK_BINS 80 |
Definition at line 84 of file bebop_ae_awb.c.
#define BEBOP_AE_DARK_IGNORE 0.4 |
Definition at line 72 of file bebop_ae_awb.c.
#define BEBOP_AE_EXPOSURE_GAIN 0.8 |
Definition at line 60 of file bebop_ae_awb.c.
#define BEBOP_AE_MIDDLE_INDEX 160 |
Definition at line 66 of file bebop_ae_awb.c.
#define BEBOP_AUTO_EXPOSURE true |
Definition at line 55 of file bebop_ae_awb.c.
#define BEBOP_AUTO_WHITE_BALANCE true |
Definition at line 95 of file bebop_ae_awb.c.
#define BEBOP_AWB_GAIN 0.5 |
Definition at line 112 of file bebop_ae_awb.c.
#define BEBOP_AWB_GAIN_SCHEDULING false |
Definition at line 118 of file bebop_ae_awb.c.
#define BEBOP_AWB_GAIN_SCHEDULING_STEP 0.02 |
Definition at line 136 of file bebop_ae_awb.c.
#define BEBOP_AWB_GAIN_SCHEDULING_TARGET 10.0 |
Definition at line 124 of file bebop_ae_awb.c.
#define BEBOP_AWB_GAIN_SCHEDULING_TOLERANCE 7.5 |
Definition at line 130 of file bebop_ae_awb.c.
#define BEBOP_AWB_MAX_GAINS 63.5 |
Definition at line 106 of file bebop_ae_awb.c.
#define BEBOP_AWB_MIN_GAINS 1.0 |
Definition at line 100 of file bebop_ae_awb.c.
#define BEBOP_AWB_MIN_GREY_PIXELS 1000 |
Definition at line 142 of file bebop_ae_awb.c.
#define MAX_HIST_Y 255 |
Definition at line 32 of file bebop_ae_awb.c.
#define MIN_HIST_Y 1 |
Definition at line 33 of file bebop_ae_awb.c.
#define PRINT | ( | string, | |
... | |||
) | fprintf(stderr, "[bebop_ae_awb->%s()] " string,__FUNCTION__ , ##__VA_ARGS__) |
Definition at line 40 of file bebop_ae_awb.c.
#define VERBOSE_PRINT | ( | ... | ) |
Definition at line 46 of file bebop_ae_awb.c.
void bebop_ae_awb_init | ( | void | ) |
Definition at line 336 of file bebop_ae_awb.c.
References ae_setting_t::active, awb_setting_t::active, ae_set, awb_set, BEBOP_AE_AWB_NICE, BEBOP_AE_BRIGHT_BINS, BEBOP_AE_BRIGHT_IGNORE, BEBOP_AE_DARK_BINS, BEBOP_AE_DARK_IGNORE, BEBOP_AE_EXPOSURE_GAIN, BEBOP_AE_MIDDLE_INDEX, BEBOP_AUTO_EXPOSURE, BEBOP_AUTO_WHITE_BALANCE, BEBOP_AWB_GAIN, BEBOP_AWB_GAIN_SCHEDULING, BEBOP_AWB_GAIN_SCHEDULING_STEP, BEBOP_AWB_GAIN_SCHEDULING_TARGET, BEBOP_AWB_GAIN_SCHEDULING_TOLERANCE, ae_setting_t::bright_bins, ae_setting_t::bright_ignore, cv_add_to_device_async(), ae_setting_t::dark_bins, ae_setting_t::dark_ignore, ae_setting_t::exposure_gain, front_camera, awb_setting_t::gain, awb_setting_t::gain_scheduling, awb_setting_t::gain_scheduling_step, awb_setting_t::gain_scheduling_target, awb_setting_t::gain_scheduling_tolerance, ae_setting_t::middle_index, ae_setting_t::prev_active, awb_setting_t::prev_active, and update_ae_awb().
Definition at line 149 of file bebop_ae_awb.c.
References ae_setting_t::active, awb_setting_t::active, isp_yuv_stats_t::ae_histogram_Y, ae_set, isp_yuv_stats_t::awb_nb_grey_pixels, awb_set, isp_yuv_stats_t::awb_sum_U, isp_yuv_stats_t::awb_sum_V, isp_yuv_stats_t::awb_sum_Y, BEBOP_AWB_MAX_GAINS, BEBOP_AWB_MIN_GAINS, BEBOP_AWB_MIN_GREY_PIXELS, ae_setting_t::bright_bins, ae_setting_t::bright_ignore, ae_setting_t::dark_bins, ae_setting_t::dark_ignore, ae_setting_t::exposure_gain, f, awb_setting_t::gain, mt9f002_t::gain_blue, mt9f002_t::gain_green1, mt9f002_t::gain_green2, mt9f002_t::gain_red, awb_setting_t::gain_scheduling, awb_setting_t::gain_scheduling_step, awb_setting_t::gain_scheduling_target, awb_setting_t::gain_scheduling_tolerance, isp_get_statistics_yuv(), MAX_HIST_Y, ae_setting_t::middle_index, MIN_HIST_Y, mt9f002, mt9f002_reset_color(), mt9f002_reset_exposure(), mt9f002_set_exposure(), mt9f002_set_gains(), isp_yuv_stats_t::nb_valid_Y, ae_setting_t::prev_active, awb_setting_t::prev_active, mt9f002_t::real_exposure, mt9f002_t::target_exposure, and VERBOSE_PRINT.
Referenced by bebop_ae_awb_init().
struct ae_setting_t ae_set |
Definition at line 146 of file bebop_ae_awb.c.
Referenced by bebop_ae_awb_init(), and update_ae_awb().
struct awb_setting_t awb_set |
Definition at line 147 of file bebop_ae_awb.c.
Referenced by bebop_ae_awb_init(), and update_ae_awb().