8 #ifndef TURI_PARAMETER_SAMPLER_H_ 9 #define TURI_PARAMETER_SAMPLER_H_ 12 #include <Eigen/Dense> 21 namespace one_shot_object_detection {
27 class ParameterSampler {
29 ParameterSampler(
size_t starter_width,
size_t starter_height,
size_t dx,
44 std::vector<double> get_theta_means();
45 std::vector<double> get_phi_means();
46 std::vector<double> get_gamma_means();
47 double get_theta_stdev();
48 double get_phi_stdev();
49 double get_gamma_stdev();
52 Eigen::Matrix<float, 3, 3> get_transform();
53 std::vector<Eigen::Vector3f> get_warped_corners();
59 void set_warped_corners(
const std::vector<Eigen::Vector3f> &warped_corners);
64 void sample(
size_t background_width,
size_t background_height,
size_t seed,
68 size_t starter_width_;
69 size_t starter_height_;
70 size_t max_depth_ = 13000;
71 double angle_stdev_ = 20.0;
72 double focal_stdev_ = 40.0;
73 std::vector<double> theta_means_ = {0.0};
74 std::vector<double> phi_means_ = {0.0};
75 std::vector<double> gamma_means_ = {0.0};
83 Eigen::Matrix<float, 3, 3> transform_;
84 std::vector<Eigen::Vector3f> warped_corners_;
90 #endif // TURI_PARAMETER_SAMPLER_H_