6 #include "../lib/args.h" 7 #include "../lib/json.h" 8 #include "../lib/misc.h" 16 int main(
int argc,
const char* argv[]) {
17 get_args(argc, argv,
"in_cors.json pseudo_refgrid.json outreach_radius out_cors.json");
20 int outreach_radius =
int_arg();
23 int outreach_radius_sq =
sq(outreach_radius);
26 for(std::ptrdiff_t col = 0; col < refgrid.cols(); ++col)
27 for(std::ptrdiff_t row = 0; row < refgrid.rows(); ++row) {
30 std::cout <<
"pseudo refgrid does not have view " << idx << std::endl;
35 for(std::ptrdiff_t col = 0; col < pseudo_refgrid.
cols(); ++col)
36 for(std::ptrdiff_t row = 0; row < pseudo_refgrid.
rows(); ++row) {
39 std::cout <<
"no features for pseudo reference view " << idx << std::endl;
49 std::cout <<
"reference view " << ref_idx << std::endl;
52 for(std::ptrdiff_t col = 0; col < pseudo_refgrid.
cols(); ++col)
53 for(std::ptrdiff_t row = 0; row < pseudo_refgrid.
rows(); ++row) {
55 std::cout <<
" pseudo reference view " << pseudo_idx << std::endl;
57 for(
const auto& kv : ref_cors.features) {
58 const std::string& feature_name = kv.first;
65 for(
const auto& kv2 : feature.
points) {
69 if(
sq(idx.
x - pseudo_idx.
x) +
sq(idx.
y - pseudo_idx.
y) <= outreach_radius_sq)
70 new_feature.
points[idx] = fpoint;
73 if(new_feature.
points.size() > 0) {
75 new_cors.
features[new_feature_name] = new_feature;
Numeric sq(Numeric n)
Compute square of a number.
int main(int argc, const char *argv[])
image_correspondences image_correspondences_with_reference(const image_correspondences &cors, const view_index &reference_view)
Set of features, each on set of views.
feature_points feature_points_for_view(const image_correspondences &cors, view_index idx, bool is_distorted)
std::map< std::string, image_correspondence_feature > features
references_grid references_grid_arg()
bool has_view(const view_index &) const
std::vector< view_index > get_reference_views(const relative_camera_positions &rcpos)
view_index reference_view
view_index view(std::ptrdiff_t col, std::ptrdiff_t row) const
image_correspondences image_correspondences_arg()
std::string to_string(const T &)
std::string out_filename_arg()
Feature on set of views. Optionally one view is "reference".
references_grid get_references_grid(const image_correspondences &cors)
void export_image_corresponcences(const image_correspondences &cors, const std::string &filename)
std::map< view_index, feature_point > points
void get_args(int argc, const char *argv[], const std::string &usage)