#include <optimizer.h>
Classes | |
struct | settings |
Public Member Functions | |
double | calc_correction_in_pixels (std::vector< double2 > const &old_uvmap, std::vector< double2 > const &new_uvmap) const |
double | calc_correction_in_pixels (calib const &from_calibration, calib const &to_calibration) const |
double | calc_correction_in_pixels (calib const &to_calibration) const |
calib const & | get_calibration () const |
double | get_cost () const |
decision_params const & | get_decision_params () const |
rs2_dsm_params const & | get_dsm_params () const |
std::vector< double > const & | get_extracted_features () const |
ir_frame_data const & | get_ir_data () const |
params const & | get_params () const |
yuy2_frame_data const & | get_yuy_data () const |
z_frame_data const & | get_z_data () const |
bool | input_validity_checks (input_validity_data *data=nullptr) |
bool | is_scene_valid (input_validity_data *data=nullptr) |
bool | is_valid_results () |
size_t | optimize (std::function< void(data_collect const &data) > iteration_callback=nullptr) |
optimizer (settings const &, bool debug_mode=false) | |
void | set_cycle_data (const std::vector< double3 > &vertices, const rs2_intrinsics_double &k_depth, const p_matrix &p_mat, const algo_calibration_registers &dsm_regs_cand, const rs2_dsm_params_double &dsm_params_cand) |
void | set_final_data (const std::vector< double3 > &vertices, const p_matrix &p_mat, const p_matrix &p_mat_opt=p_matrix()) |
void | set_ir_data (std::vector< ir_t > &&ir_data, size_t width, size_t height) |
void | set_yuy_data (std::vector< yuy_t > &&yuy_data, std::vector< yuy_t > &&prev_yuy_data, std::vector< yuy_t > &&last_successful_yuy_data, calib const &calibration) |
void | set_z_data (std::vector< z_t > &&z_data, rs2_intrinsics_double const &depth_intrinsics, rs2_dsm_params const &dms_params, algo_calibration_info const &cal_info, algo_calibration_registers const &cal_regs, float depth_units) |
void | write_data_to (std::string const &directory) |
Private Member Functions | |
void | adjust_params_to_apd_gain () |
void | adjust_params_to_auto_mode () |
void | adjust_params_to_manual_mode () |
optimization_params | back_tracking_line_search (optimization_params const &opt_params, const std::vector< double3 > &new_vertices, data_collect *data=nullptr) const |
std::vector< double > | blur_edges (std::vector< double > const &edges, size_t image_width, size_t image_height) |
void | clip_ac_scaling (rs2_dsm_params_double const &ac_data_orig, rs2_dsm_params_double &ac_data_new) const |
void | clip_pixel_movement (size_t iteration_number=0) |
void | collect_decision_params (z_frame_data &z_data, yuy2_frame_data &yuy_data) |
std::vector< double > | cost_per_section_diff (calib const &old_calib, calib const &new_calib) |
calib | decompose_p_mat (p_matrix p) |
void | gaussian_filter (std::vector< uint8_t > const &lum_frame, std::vector< uint8_t > const &prev_lum_frame, std::vector< double > &yuy_diff, std::vector< double > &gaussian_filtered_image, size_t width, size_t height) |
std::vector< uint16_t > | get_closest_edges (const z_frame_data &z_data, ir_frame_data const &ir_data, size_t width, size_t height) |
std::vector< direction > | get_direction (std::vector< double > gradient_x, std::vector< double > gradient_y) |
std::vector< direction > | get_direction2 (std::vector< double > gradient_x, std::vector< double > gradient_y) |
std::vector< uint8_t > | get_logic_edges (std::vector< double > const &edges) |
std::vector< byte > | get_luminance_from_yuy2 (std::vector< yuy_t > const &yuy2_imagh) |
rs2_intrinsics_double | get_new_z_intrinsics_from_new_calib (const rs2_intrinsics_double &orig, const calib &new_c, const calib &orig_c) |
std::vector< uint8_t > | images_dilation (std::vector< uint8_t > const &logic_edges, size_t width, size_t height) |
bool | is_edge_distributed (z_frame_data &z_data, yuy2_frame_data &yuy_data) |
bool | is_movement_in_images (movement_inputs_for_frame const &prev, movement_inputs_for_frame const &curr, movement_result_data *result_data, double const move_thresh_pix_val, double const move_threshold_pix_num, size_t width, size_t height) |
size_t | optimize_p (const optimization_params ¶ms_curr, const std::vector< double3 > &new_vertices, optimization_params ¶ms_new, calib &optimaized_calibration, calib &new_rgb_calib_for_k_to_dsm, rs2_intrinsics_double &new_z_k, std::function< void(data_collect const &data)> cb, data_collect &data) |
void | section_per_pixel (frame_data const &, size_t section_w, size_t section_h, byte *section_map) |
std::vector< double3 > | subedges2vertices (z_frame_data &z_data, const rs2_intrinsics_double &intrin, double depth_units) |
void | sum_per_section (std::vector< double > &sum_weights_per_section, std::vector< byte > const §ion_map, std::vector< double > const &weights, size_t num_of_sections) |
bool | valid_by_svm (svm_model model) |
Definition at line 278 of file optimizer.h.
optimizer::optimizer | ( | settings const & | s, |
bool | debug_mode = false |
||
) |
Definition at line 132 of file optimizer.cpp.
|
private |
Definition at line 1850 of file optimizer.cpp.
|
private |
Definition at line 1875 of file optimizer.cpp.
|
private |
Definition at line 1860 of file optimizer.cpp.
|
private |
Definition at line 1756 of file optimizer.cpp.
|
private |
Definition at line 1233 of file optimizer.cpp.
double librealsense::algo::depth_to_rgb_calibration::optimizer::calc_correction_in_pixels | ( | std::vector< double2 > const & | old_uvmap, |
std::vector< double2 > const & | new_uvmap | ||
) | const |
double optimizer::calc_correction_in_pixels | ( | calib const & | from_calibration, |
calib const & | to_calibration | ||
) | const |
Definition at line 13 of file valid-results.cpp.
|
inline |
Definition at line 344 of file optimizer.h.
|
private |
Definition at line 140 of file valid-results.cpp.
Definition at line 56 of file valid-results.cpp.
|
private |
Definition at line 229 of file valid-results.cpp.
|
private |
Definition at line 88 of file valid-results.cpp.
Definition at line 1093 of file optimizer.cpp.
|
private |
Definition at line 565 of file valid-scene.cpp.
calib const & optimizer::get_calibration | ( | ) | const |
Definition at line 1629 of file optimizer.cpp.
|
private |
double optimizer::get_cost | ( | ) | const |
Definition at line 1639 of file optimizer.cpp.
|
inline |
Definition at line 350 of file optimizer.h.
|
private |
Definition at line 1110 of file optimizer.cpp.
|
private |
Definition at line 1131 of file optimizer.cpp.
rs2_dsm_params const & optimizer::get_dsm_params | ( | ) | const |
Definition at line 1634 of file optimizer.cpp.
|
inline |
Definition at line 351 of file optimizer.h.
|
inline |
Definition at line 349 of file optimizer.h.
|
private |
Definition at line 1287 of file optimizer.cpp.
|
private |
Definition at line 1277 of file optimizer.cpp.
|
private |
Definition at line 1100 of file optimizer.cpp.
|
inline |
Definition at line 352 of file optimizer.h.
|
inline |
Definition at line 348 of file optimizer.h.
|
inline |
Definition at line 347 of file optimizer.h.
|
private |
Definition at line 532 of file valid-scene.cpp.
bool optimizer::input_validity_checks | ( | input_validity_data * | data = nullptr | ) |
Definition at line 923 of file valid-scene.cpp.
|
private |
Definition at line 339 of file valid-scene.cpp.
|
private |
Definition at line 650 of file valid-scene.cpp.
bool optimizer::is_scene_valid | ( | input_validity_data * | data = nullptr | ) |
Definition at line 732 of file valid-scene.cpp.
bool optimizer::is_valid_results | ( | ) |
Definition at line 340 of file valid-results.cpp.
size_t optimizer::optimize | ( | std::function< void(data_collect const &data) > | iteration_callback = nullptr | ) |
Definition at line 1977 of file optimizer.cpp.
|
private |
Definition at line 1891 of file optimizer.cpp.
|
private |
Definition at line 484 of file valid-scene.cpp.
void optimizer::set_cycle_data | ( | const std::vector< double3 > & | vertices, |
const rs2_intrinsics_double & | k_depth, | ||
const p_matrix & | p_mat, | ||
const algo_calibration_registers & | dsm_regs_cand, | ||
const rs2_dsm_params_double & | dsm_params_cand | ||
) |
Definition at line 1837 of file optimizer.cpp.
void optimizer::set_final_data | ( | const std::vector< double3 > & | vertices, |
const p_matrix & | p_mat, | ||
const p_matrix & | p_mat_opt = p_matrix() |
||
) |
Definition at line 1828 of file optimizer.cpp.
Definition at line 1081 of file optimizer.cpp.
void optimizer::set_yuy_data | ( | std::vector< yuy_t > && | yuy_data, |
std::vector< yuy_t > && | prev_yuy_data, | ||
std::vector< yuy_t > && | last_successful_yuy_data, | ||
calib const & | calibration | ||
) |
Definition at line 991 of file optimizer.cpp.
void optimizer::set_z_data | ( | std::vector< z_t > && | z_data, |
rs2_intrinsics_double const & | depth_intrinsics, | ||
rs2_dsm_params const & | dms_params, | ||
algo_calibration_info const & | cal_info, | ||
algo_calibration_registers const & | cal_regs, | ||
float | depth_units | ||
) |
Definition at line 455 of file optimizer.cpp.
|
private |
Definition at line 1379 of file optimizer.cpp.
|
private |
Definition at line 1302 of file optimizer.cpp.
|
private |
Definition at line 302 of file valid-results.cpp.
void optimizer::write_data_to | ( | std::string const & | directory | ) |
Definition at line 1715 of file optimizer.cpp.
|
private |
Definition at line 451 of file optimizer.h.
|
private |
Definition at line 424 of file optimizer.h.
|
private |
Definition at line 448 of file optimizer.h.
|
private |
Definition at line 447 of file optimizer.h.
|
private |
Definition at line 426 of file optimizer.h.
|
private |
Definition at line 437 of file optimizer.h.
|
private |
Definition at line 434 of file optimizer.h.
|
private |
Definition at line 436 of file optimizer.h.
|
private |
Definition at line 430 of file optimizer.h.
|
private |
Definition at line 443 of file optimizer.h.
|
private |
Definition at line 450 of file optimizer.h.
|
private |
Definition at line 435 of file optimizer.h.
|
private |
Definition at line 432 of file optimizer.h.
|
private |
Definition at line 433 of file optimizer.h.
|
private |
Definition at line 444 of file optimizer.h.
|
private |
Definition at line 445 of file optimizer.h.
|
private |
Definition at line 423 of file optimizer.h.
|
private |
Definition at line 438 of file optimizer.h.
|
private |
Definition at line 422 of file optimizer.h.
|
private |
Definition at line 425 of file optimizer.h.
|
private |
Definition at line 428 of file optimizer.h.
|
private |
Definition at line 427 of file optimizer.h.
|
private |
Definition at line 446 of file optimizer.h.
|
private |
Definition at line 429 of file optimizer.h.
|
private |
Definition at line 431 of file optimizer.h.
|
private |
Definition at line 441 of file optimizer.h.
|
private |
Definition at line 442 of file optimizer.h.