From b28bc88c125eed429bc8e3ba79cc676ed5346f4b Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Tue, 28 May 2024 13:37:20 +0000 Subject: [PATCH 01/11] Expose SetUp of all objects --- src/pym3t.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index 77c5e2d..19c3e61 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -119,11 +119,13 @@ PYBIND11_MODULE(_pym3t_mod, m) { #ifdef PYM3T_WITH_REALSENSE // RealSenseColorCamera py::class_>(m, "RealSenseColorCamera") + .def("SetUp", &RealSenseColorCamera::SetUp) .def(py::init(), "name"_a, "use_depth_as_world_frame"_a=false) ; // RealSenseDepthCamera py::class_>(m, "RealSenseDepthCamera") + .def("SetUp", &RealSenseDepthCamera::SetUp) .def(py::init(), "name"_a, "use_color_as_world_frame"_a=true) ; #endif @@ -131,6 +133,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { // DummyColorCamera py::class_>(m, "DummyColorCamera") .def(py::init(), "name"_a) + .def("SetUp", &DummyColorCamera::SetUp) .def_property("image", &Camera::image, &DummyColorCamera::set_image) .def_property("intrinsics", &DummyColorCamera::get_intrinsics, &DummyColorCamera::set_intrinsics) ; @@ -138,6 +141,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { // DummyDepthCamera py::class_>(m, "DummyDepthCamera") .def(py::init(), "name"_a, "depth_scale"_a=0.001) + .def("SetUp", &DummyDepthCamera::SetUp) .def_property("image", &Camera::image, &DummyDepthCamera::set_image) .def_property("intrinsics", &DummyDepthCamera::get_intrinsics, &DummyDepthCamera::set_intrinsics) .def_property("depth_scale", &DummyDepthCamera::depth_scale, &DummyDepthCamera::set_depth_scale) @@ -148,6 +152,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { // RendererGeometry py::class_>(m, "RendererGeometry") .def(py::init(), "name"_a) + .def("SetUp", &RendererGeometry::SetUp) .def("AddBody", &RendererGeometry::AddBody) .def("DeleteBody", &RendererGeometry::DeleteBody) .def("ClearBodies", &RendererGeometry::ClearBodies) @@ -191,6 +196,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { py::class_>(m, "NormalDepthViewer") .def(py::init &, const std::shared_ptr &, float, float, float>(), "name"_a, "depth_camera_ptr"_a, "renderer_geometry_ptr"_a, "min_depth"_a=0.0f, "max_depth"_a=1.0f, "opacity"_a=0.5f) + .def("SetUp", &NormalDepthViewer::SetUp) .def("UpdateViewer", &NormalDepthViewer::UpdateViewer, "save_index"_a) .def("set_opacity", &NormalDepthViewer::set_opacity, "opacity"_a) ; @@ -210,6 +216,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { py::class_>(m, "FocusedBasicDepthRenderer") .def(py::init &, const std::shared_ptr &, int, float, float>(), "name"_a, "renderer_geometry_ptr"_a, "camera_ptr"_a, "image_size"_a=200, "z_min"_a=0.01f, "z_max"_a=5.0f) + .def("SetUp", &FocusedBasicDepthRenderer::SetUp) .def("AddReferencedBody", &FocusedBasicDepthRenderer::AddReferencedBody) ; @@ -219,6 +226,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { "name"_a, "renderer_geometry_ptr"_a, "camera_ptr"_a, "id_type"_a=IDType::BODY, "image_size"_a=200, "z_min"_a=0.01f, "z_max"_a=5.0f) .def(py::init &, const std::shared_ptr&>(), "name"_a, "metafile_path"_a, "renderer_geometry_ptr"_a, "camera_ptr"_a) + .def("SetUp", &FocusedSilhouetteRenderer::SetUp) .def("AddReferencedBody", &FocusedSilhouetteRenderer::AddReferencedBody) ; @@ -230,6 +238,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def(py::init(), "name"_a, "geometry_path"_a, "geometry_unit_in_meter"_a, "geometry_counterclockwise"_a, "geometry_enable_culling"_a, "geometry2body_pose"_a) .def(py::init(), "name"_a, "metafile_path"_a) + .def("SetUp", &Body::SetUp) .def_property("name", &Body::name, &Body::set_name) .def_property("geometry_path", &Body::geometry_path, &Body::set_geometry_path) .def_property("metafile_path", &Body::metafile_path, &Body::set_metafile_path) @@ -250,6 +259,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { "body2joint_pose"_a=Transform3fA::Identity(), "joint2parent_pose"_a=Transform3fA::Identity(), "link2world_pose"_a=Transform3fA::Identity(), "free_directions"_a=std::array({true, true, true, true, true, true}), "fixed_body2joint_pose"_a=true) .def(py::init &>(), "name"_a, "metafile_path"_a, "body_ptr"_a) + .def("SetUp", &Link::SetUp) .def("AddModality", &Link::AddModality) .def("CalculateGradientAndHessian", &Link::CalculateGradientAndHessian) .def_property("name", &Link::name, &Link::set_name) @@ -274,6 +284,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { // Detector py::class_>(m, "Detector") + .def("SetUp", &Detector::SetUp) .def_property("name", &Detector::name, &Detector::set_name) ; @@ -295,6 +306,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { float, int, int, float, float, bool, int>(), "name"_a, "body_ptr"_a, "model_path"_a, "sphere_radius"_a=0.8f, "n_divides"_a=4, "n_points_max"_a=200, "max_radius_depth_offset"_a=0.05f, "stride_depth_offset"_a=0.002f, "use_random_seed"_a=false, "image_size"_a=2000) + .def("SetUp", &RegionModel::SetUp) .def_property("name", &RegionModel::name, &RegionModel::set_name) ; @@ -304,6 +316,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { float, int, int, float, float, bool, int>(), "name"_a, "body_ptr"_a, "model_path"_a, "sphere_radius"_a=0.8f, "n_divides"_a=4, "n_points_max"_a=200, "max_radius_depth_offset"_a=0.05f, "stride_depth_offset"_a=0.002f, "use_random_seed"_a=false, "image_size"_a=2000) + .def("SetUp", &DepthModel::SetUp) .def_property("name", &DepthModel::name, &DepthModel::set_name) ; @@ -335,6 +348,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { // Modality -> not constructible, just to enable automatic downcasting and binding of child classes py::class_>(m, "Modality") + .def("SetUp", &Modality::SetUp) .def_property_readonly("gradient", &Modality::gradient) .def_property_readonly("hessian", &Modality::hessian) .def_property("name", &Modality::name, &Modality::set_name) @@ -344,6 +358,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { py::class_>(m, "RegionModality") .def(py::init &, const std::shared_ptr &, const std::shared_ptr &>(), "name"_a, "body_ptr"_a, "color_camera_ptr"_a, "region_model_ptr"_a) + .def("SetUp", &RegionModality::SetUp) .def_property("n_lines_max", &RegionModality::n_lines_max, &RegionModality::set_n_lines_max) .def_property("use_adaptive_coverage", &RegionModality::use_adaptive_coverage, &RegionModality::set_use_adaptive_coverage) .def_property("reference_contour_length", &RegionModality::reference_contour_length, &RegionModality::set_reference_contour_length) @@ -393,6 +408,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { py::class_>(m, "DepthModality") .def(py::init &, const std::shared_ptr &, const std::shared_ptr &>(), "name"_a, "body_ptr"_a, "depth_camera_ptr"_a, "depth_model_ptr"_a) + .def("SetUp", &DepthModality::SetUp) .def_property("n_points_max", &DepthModality::n_points_max, &DepthModality::set_n_points_max) .def_property("use_adaptive_coverage", &DepthModality::use_adaptive_coverage, &DepthModality::set_use_adaptive_coverage) @@ -427,6 +443,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { "name"_a, "body_ptr"_a, "color_camera_ptr"_a, "silhouette_renderer_ptr"_a) .def(py::init &, const std::shared_ptr &, const std::shared_ptr&>(), "name"_a, "metafile_path"_a, "body_ptr"_a, "color_camera_ptr"_a, "silhouette_renderer_ptr"_a) + .def("SetUp", &TextureModality::SetUp) .def("ModelOcclusions", &TextureModality::ModelOcclusions) .def("MeasureOcclusions", &TextureModality::MeasureOcclusions) From 3ea5846f88aa669914b246d22596031c54c787eb Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Tue, 28 May 2024 13:49:58 +0000 Subject: [PATCH 02/11] Bind ColorHistograms --- src/pym3t.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index 19c3e61..fc50597 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -300,6 +300,20 @@ PYBIND11_MODULE(_pym3t_mod, m) { //--------------------------// + // ColorHistograms + py::class_>(m, "ColorHistograms") + .def(py::init(), + "name"_a, + "n_bins"_a=16, "learning_rate_f"_a=0.2f, "learning_rate_b"_a=0.2f) + .def("SetUp", &ColorHistograms::SetUp) + .def_property("name", &ColorHistograms::name, &ColorHistograms::set_name) + .def_property("n_bins", &ColorHistograms::n_bins, &ColorHistograms::set_n_bins) + .def_property("learning_rate_f", &ColorHistograms::learning_rate_f, &ColorHistograms::set_learning_rate_f) + .def_property("learning_rate_b", &ColorHistograms::learning_rate_b, &ColorHistograms::set_learning_rate_b) + ; + + //--------------------------// + // RegionModel py::class_>(m, "RegionModel") .def(py::init &, const std::filesystem::path &, @@ -372,6 +386,9 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def_property("scales", &RegionModality::scales, &RegionModality::set_scales) .def_property("standard_deviations", &RegionModality::standard_deviations, &RegionModality::set_standard_deviations) + .def("UseSharedColorHistograms", &RegionModality::UseSharedColorHistograms, "color_histograms_ptr"_a) + .def("DoNotUseSharedColorHistograms", &RegionModality::DoNotUseSharedColorHistograms) + .def_property("n_histogram_bins", &RegionModality::n_histogram_bins, &RegionModality::set_n_histogram_bins) .def_property("learning_rate_f", &RegionModality::learning_rate_f, &RegionModality::set_learning_rate_f) .def_property("learning_rate_b", &RegionModality::learning_rate_b, &RegionModality::set_learning_rate_b) From 21d2e8e6387f277db00f5cfa9f5529d83c02ec65 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Tue, 28 May 2024 13:52:27 +0000 Subject: [PATCH 03/11] Update __init__.py --- src/pym3t/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pym3t/__init__.py b/src/pym3t/__init__.py index 3f78f35..9ed5168 100644 --- a/src/pym3t/__init__.py +++ b/src/pym3t/__init__.py @@ -1,4 +1,5 @@ from ._pym3t_mod import Tracker +from ._pym3t_mod import ColorHistograms from ._pym3t_mod import RendererGeometry from ._pym3t_mod import Intrinsics, IDType from ._pym3t_mod import DummyColorCamera, DummyDepthCamera @@ -14,7 +15,8 @@ if WITH_REALSENSE: from ._pym3t_mod import RealSenseColorCamera, RealSenseDepthCamera -__all__ = ['Tracker', +__all__ = ['Tracker', + 'ColorHistograms', 'RendererGeometry', 'Intrinsics', 'IDType', 'DummyColorCamera', 'DummyDepthCamera', From 024d0885599d25d4d27d851c085bc4db11360dc6 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Wed, 29 May 2024 11:27:21 +0000 Subject: [PATCH 04/11] Add Tracker::optimizer_ptrs --- src/pym3t.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index fc50597..ab7adba 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -69,6 +69,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def_property("name", &Tracker::name, &Tracker::set_name) .def_property("n_corr_iterations", &Tracker::n_corr_iterations, &Tracker::set_n_corr_iterations) .def_property("n_update_iterations", &Tracker::n_update_iterations, &Tracker::set_n_update_iterations) + .def_property_readonly("optimizers", &Tracker::optimizer_ptrs) ; //--------------------------// From c3a3d39d63d10023a97e1c1a46db0bd39919dec1 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Wed, 29 May 2024 14:25:05 +0000 Subject: [PATCH 05/11] Add Tracker::ClearOptimizers --- src/pym3t.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index ab7adba..dc74279 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -66,6 +66,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def("AddViewer", &Tracker::AddViewer) .def("AddDetector", &Tracker::AddDetector) .def("AddOptimizer", &Tracker::AddOptimizer) + .def("ClearOptimizers", &Tracker::ClearOptimizers) .def_property("name", &Tracker::name, &Tracker::set_name) .def_property("n_corr_iterations", &Tracker::n_corr_iterations, &Tracker::set_n_corr_iterations) .def_property("n_update_iterations", &Tracker::n_update_iterations, &Tracker::set_n_update_iterations) From c0abc8dc50b0741f60ad271784560c2664377448 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Wed, 29 May 2024 14:57:06 +0000 Subject: [PATCH 06/11] Add Link::body and Optimizer::root_link --- src/pym3t.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index dc74279..6eecf00 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -265,6 +265,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def("AddModality", &Link::AddModality) .def("CalculateGradientAndHessian", &Link::CalculateGradientAndHessian) .def_property("name", &Link::name, &Link::set_name) + .def_property("body", &Link::body_ptr, &Link::set_body_ptr) .def_property("link2world_pose", &Link::link2world_pose, &Link::set_link2world_pose) .def_property_readonly("modalities", &Link::modality_ptrs) .def("gradient", &Link::gradient) @@ -477,6 +478,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def_property("metafile_path", &Optimizer::metafile_path, &Optimizer::set_metafile_path) .def_property("tikhonov_parameter_rotation", &Optimizer::tikhonov_parameter_rotation, &Optimizer::set_tikhonov_parameter_rotation) .def_property("tikhonov_parameter_translation", &Optimizer::tikhonov_parameter_translation, &Optimizer::set_tikhonov_parameter_translation) + .def_property_readonly("root_link", &Optimizer::root_link_ptr) ; // Constants From 8b3828779ad251e16ca478e9ecb39fc1a36df03a Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Wed, 29 May 2024 15:01:58 +0000 Subject: [PATCH 07/11] Add Tracker::set_up --- src/pym3t.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index 6eecf00..ec4ed5d 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -70,6 +70,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def_property("name", &Tracker::name, &Tracker::set_name) .def_property("n_corr_iterations", &Tracker::n_corr_iterations, &Tracker::set_n_corr_iterations) .def_property("n_update_iterations", &Tracker::n_update_iterations, &Tracker::set_n_update_iterations) + .def_property_readonly("set_up", &Tracker::set_up) .def_property_readonly("optimizers", &Tracker::optimizer_ptrs) ; From 2119dfc81b218fa1ea235e19fbd869fde344eeb4 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Fri, 31 May 2024 13:11:23 +0000 Subject: [PATCH 08/11] TextureModality params --- src/pym3t.cpp | 47 +++++++++++++++++++++++++++++++++++++++++++ src/pym3t/__init__.py | 4 ++-- 2 files changed, 49 insertions(+), 2 deletions(-) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index fc50597..c6a2982 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -453,6 +453,17 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def_property("visualize_points_result", &DepthModality::visualize_points_result, &DepthModality::set_visualize_points_result) ; + py::enum_(m, "DescriptorType") + .value("BRISK", TextureModality::DescriptorType::BRISK) + .value("DAISY", TextureModality::DescriptorType::DAISY) + .value("FREAK", TextureModality::DescriptorType::FREAK) + .value("SIFT", TextureModality::DescriptorType::SIFT) + .value("ORB", TextureModality::DescriptorType::ORB) +#ifdef USE_CUDA + .value("ORB_CUDA", TextureModality::DescriptorType::ORB_CUDA) +#endif + .export_values(); + // TextureModality py::class_>(m, "TextureModality") @@ -464,6 +475,42 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def("ModelOcclusions", &TextureModality::ModelOcclusions) .def("MeasureOcclusions", &TextureModality::MeasureOcclusions) + + .def_property("descriptor_type", &TextureModality::descriptor_type, &TextureModality::set_descriptor_type) + .def_property("focused_image_size", &TextureModality::focused_image_size, &TextureModality::set_focused_image_size) + .def_property("descriptor_distance_threshold", &TextureModality::descriptor_distance_threshold, &TextureModality::set_descriptor_distance_threshold) + .def_property("tukey_norm_constant", &TextureModality::tukey_norm_constant, &TextureModality::set_tukey_norm_constant) + .def_property("standard_deviations", &TextureModality::standard_deviations, &TextureModality::set_standard_deviations) + .def_property("max_keyframe_rotation_difference", &TextureModality::max_keyframe_rotation_difference, &TextureModality::set_max_keyframe_rotation_difference) + .def_property("max_keyframe_age", &TextureModality::max_keyframe_age, &TextureModality::set_max_keyframe_age) + .def_property("n_keyframes", &TextureModality::n_keyframes, &TextureModality::set_n_keyframes) + + .def_property("orb_n_features", &TextureModality::orb_n_features, &TextureModality::set_orb_n_features) + .def_property("orb_scale_factor", &TextureModality::orb_scale_factor, &TextureModality::set_orb_scale_factor) + .def_property("orb_n_levels", &TextureModality::orb_n_levels, &TextureModality::set_orb_n_levels) + .def_property("brisk_threshold", &TextureModality::brisk_threshold, &TextureModality::set_brisk_threshold) + .def_property("brisk_octave", &TextureModality::brisk_octave, &TextureModality::set_brisk_octave) + .def_property("brisk_pattern_scale", &TextureModality::brisk_pattern_scale, &TextureModality::set_brisk_pattern_scale) + .def_property("daisy_radius", &TextureModality::daisy_radius, &TextureModality::set_daisy_radius) + .def_property("daisy_q_radius", &TextureModality::daisy_q_radius, &TextureModality::set_daisy_q_radius) + .def_property("daisy_q_theta", &TextureModality::daisy_q_theta, &TextureModality::set_daisy_q_theta) + .def_property("daisy_q_hist", &TextureModality::daisy_q_hist, &TextureModality::set_daisy_q_hist) + .def_property("freak_orientation_normalized", &TextureModality::freak_orientation_normalized, &TextureModality::set_freak_orientation_normalized) + .def_property("freak_scale_normalized", &TextureModality::freak_scale_normalized, &TextureModality::set_freak_scale_normalized) + .def_property("freak_pattern_scale", &TextureModality::freak_pattern_scale, &TextureModality::set_freak_pattern_scale) + .def_property("freak_n_octaves", &TextureModality::freak_n_octaves, &TextureModality::set_freak_n_octaves) + .def_property("sift_n_features", &TextureModality::sift_n_features, &TextureModality::set_sift_n_features) + .def_property("sift_n_octave_layers", &TextureModality::sift_n_octave_layers, &TextureModality::set_sift_n_octave_layers) + .def_property("sift_contrast_threshold", &TextureModality::sift_contrast_threshold, &TextureModality::set_sift_contrast_threshold) + .def_property("sift_edge_threshold", &TextureModality::sift_edge_threshold, &TextureModality::set_sift_edge_threshold) + .def_property("sift_sigma", &TextureModality::sift_sigma, &TextureModality::set_sift_sigma) + + .def_property("measured_occlusion_radius", &TextureModality::measured_occlusion_radius, &TextureModality::set_measured_occlusion_radius) + .def_property("measured_occlusion_threshold", &TextureModality::measured_occlusion_threshold, &TextureModality::set_measured_occlusion_threshold) + .def_property("modeled_occlusion_radius", &TextureModality::modeled_occlusion_radius, &TextureModality::set_modeled_occlusion_radius) + .def_property("modeled_occlusion_threshold", &TextureModality::modeled_occlusion_threshold, &TextureModality::set_modeled_occlusion_threshold) + + ; // Optimizer diff --git a/src/pym3t/__init__.py b/src/pym3t/__init__.py index 9ed5168..88ffa96 100644 --- a/src/pym3t/__init__.py +++ b/src/pym3t/__init__.py @@ -8,7 +8,7 @@ from ._pym3t_mod import Body, Link from ._pym3t_mod import StaticDetector from ._pym3t_mod import RegionModel, DepthModel -from ._pym3t_mod import RegionModality, DepthModality, TextureModality +from ._pym3t_mod import RegionModality, DepthModality, TextureModality, DescriptorType from ._pym3t_mod import Optimizer from ._pym3t_mod import WITH_REALSENSE @@ -25,7 +25,7 @@ 'Body', 'Link', 'StaticDetector', 'RegionModel', 'DepthModel', - 'RegionModality', 'DepthModality', 'TextureModality' + 'RegionModality', 'DepthModality', 'TextureModality', 'DescriptorType' 'Optimizer',] if WITH_REALSENSE: From 331c3398b1ce643f8a7327a647915de2778e2861 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Thu, 6 Jun 2024 11:03:50 +0000 Subject: [PATCH 09/11] Add COLCON_IGNORE to gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 07f5d9f..32e572b 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ tmp/ examples/tmp/ EXAMPLE_RUN.txt tests/__pycache__ +COLCON_IGNORE \ No newline at end of file From 1b0f6c93abcb3321de4acaf6a0012832efaaeeb2 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski Date: Wed, 12 Jun 2024 20:13:44 +0000 Subject: [PATCH 10/11] Add `modalities` to Tracker class --- src/pym3t.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pym3t.cpp b/src/pym3t.cpp index f76a8d8..256a12b 100644 --- a/src/pym3t.cpp +++ b/src/pym3t.cpp @@ -72,6 +72,7 @@ PYBIND11_MODULE(_pym3t_mod, m) { .def_property("n_update_iterations", &Tracker::n_update_iterations, &Tracker::set_n_update_iterations) .def_property_readonly("set_up", &Tracker::set_up) .def_property_readonly("optimizers", &Tracker::optimizer_ptrs) + .def_property_readonly("modalities", &Tracker::modality_ptrs) ; //--------------------------// From 559862ccafc6f213c40a2dbf344e3542e649a4e3 Mon Sep 17 00:00:00 2001 From: Krzysztof Wojciechowski <49921081+Kotochleb@users.noreply.github.com> Date: Tue, 25 Jun 2024 13:04:01 +0200 Subject: [PATCH 11/11] Remove COLCON_IGNORE from .gitignore --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 32e572b..07f5d9f 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,3 @@ tmp/ examples/tmp/ EXAMPLE_RUN.txt tests/__pycache__ -COLCON_IGNORE \ No newline at end of file