-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Standardize time in ILLIXR #250
Conversation
05ff870
to
c8dba46
Compare
c8dba46
to
7446ba6
Compare
40a41fe
to
610ea7a
Compare
610ea7a
to
35d7fce
Compare
f0c5804
to
962c594
Compare
5fbb13e
to
655fe06
Compare
I don't think we need to test the full cartesian product of {OpenVINS, Kimera} x {gtasm, rk4, dummy} x {pose_predict, pose_lookup}. I suggest:
I know that rk4 has some "weird vibrations," but I think it's ok to ignore, since rk4 is only a secondary integrator, and it mostly works. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unsure if theres more planned for this PR so Ill approve later
Ready for review @JeffreyZh4ng |
I'm also going to remove |
Also closes #332. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Finally!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Has this been tested with Realsense, DepthAI, and Zed?
@mhuzai had Zed and RealSense tested and they are good. Not sure about DepthAI. |
Unfortunately, we don't have a DepthAI camera, so can't really test the changes beyond checking for compilation and logical sanity. |
…R/ILLIXR into issue-58-standardize-clock
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yay!
Yay |
Been a long time coming. Approximately 14 months. 😆 |
* Correct configs * Fix sqlite * Exorcise glfw3 * Rename classes * Exorcise glfw3 (electric boogaloo) * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * Added '_m_dataset_first_time' in 'ground_truth_slam/plugin.cpp' (ILLIXR#58) * disable debugview * add condition * remove -Werror in OPT-FLAGS * copy common/debug.hpp from the scheduling branch * add declaration of NANO_SEC * use local monado * remove NANO_SEC * add absolute_ns but has error with + * convert _m_start and relative to ns before adding them * change name to passthrough_integrator and zeor out matrice * comment conditions * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * use issue-58-standardize-clock branch in monado_integration * change back to size_t for imu_data loop * fix naming and spacing * remove repeated synchronization * enable debugview * add back glfw3 for debugview * Added documentation for using Switchboard and Phonebook externally (ILLIXR#320) * Added documentation for using Switchboard and Phonebook externally * fix typo and spacing * Fix typos Co-authored-by: Qinjun Jiang <90299267+qinjunj@users.noreply.github.com> * added new line at EOF * use offload_duration to be less confusing * remove dummy * change back to size_t * update comments * synchronize after thread setup * synchronize before p_thread_setup * Fix and add documentation (ILLIXR#330) * Add documentation for updating tags and documentation * Set up using master instead of v2-latest * Update doxygen project name * Update Monado's main branch (they renamed 'master' to 'main') * Fix typo in mkdocs.yml * Update README with IISWC paper info * Update bibtex Co-authored-by: Sam Grayson <sam@samgrayson.me> * Fix bibtex Co-authored-by: Sam Grayson <sam@samgrayson.me> * reponses to comments * remove trailing space * Add IMU and Cam Recorder (ILLIXR#327) * Added record_imu_cam plugin * Fixing fstream precision * Adding data_record option for native.yaml * Adding record_imu_cam plugin option * Remove data_record. * Fix minor issues * Fix minor issues * Used boost::filesystem instead of system * Add lboost_filesystem flag * Add the description for record_imu_cam * Fix record_imu_cam path * Fix boost filesystem operator * Remove extra / * Fix minor issues * compute data paths using list initialization * Fix minor issues and clean up extra variables Co-authored-by: yingj4 <yingj4@illinois.edu> * remove pose_lookup * able to compile * restore * Add stoplight to synchronize thread starts/stops * Add missing file (the perils of -u instead of -A) * Respond to reviewer comments * Add documentation and comments * Respond to reviewer comments * Respond to reviewer comments * Fix compile bugs * Add stoplight to synchronize thread starts/stops * Add relative clock to common and runtime * Use relative clock in offline_imu_cam * Use relative clock in gldemo (exorcise GLFW) * Use relative clock in pose_* * Use relative clock in timewarp * wip * Use relative clock in integrators * Use relative clock in offload_data * Use relative clock in realsense and ZED * Fix stuff * wip * Fix stuff * wip * Fix integrators * wip (ov + dummy int works) * wip (ov + rk4 works but its shakey) * wip (ov + gtsam works) * Correct configs * Fix sqlite * Exorcise glfw3 * Rename classes * Exorcise glfw3 (electric boogaloo) * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * Added '_m_dataset_first_time' in 'ground_truth_slam/plugin.cpp' (ILLIXR#58) * disable debugview * add condition * remove -Werror in OPT-FLAGS * copy common/debug.hpp from the scheduling branch * add declaration of NANO_SEC * use local monado * remove NANO_SEC * add absolute_ns but has error with + * convert _m_start and relative to ns before adding them * change name to passthrough_integrator and zeor out matrice * comment conditions * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * use issue-58-standardize-clock branch in monado_integration * change back to size_t for imu_data loop * fix naming and spacing * remove repeated synchronization * enable debugview * add back glfw3 for debugview * added new line at EOF * use offload_duration to be less confusing * remove dummy * change back to size_t * update comments * synchronize after thread setup * synchronize before p_thread_setup * reponses to comments * remove trailing space * remove pose_lookup * able to compile * restore * remove dummy integrator * correct order of declaring * suggested change to replace dataset_time * Add Offloading VIO Plugins to ILLIXR (ILLIXR#331) * Semi working with reader using callbacks * Semi working with reader using sequential reads * Semi working offloading. VIO doesnt work ATM * test commit * Add offloading server and device code * Fixing common and adding extra prints for debugging * Add prints and offloading config * Server fix for zed pt1 * Offloading device cleanup * Add offload client config * Renamed files and merge master * Cleaned up code ready for PR * Fix readme * Revert hotfix and address comments * Revert rt_slam config * Minor fix and verify all combinations of ZED/dataset with OV/Kimera work * Address comments, add plugins to clean.yaml * Add nproc back and update docs * Typo * Fix RealSense plugin (ILLIXR#337) * Fix counter initialization and tidy up some code * Properly initialize camera iteration count * Add stoplight to synchronize thread starts/stops * Add missing file (the perils of -u instead of -A) * Respond to reviewer comments * Add documentation and comments * Respond to reviewer comments * Respond to reviewer comments * Fix compile bugs * Add stoplight to synchronize thread starts/stops * Add relative clock to common and runtime * Use relative clock in offline_imu_cam * Use relative clock in gldemo (exorcise GLFW) * Use relative clock in pose_* * Use relative clock in timewarp * wip * Use relative clock in integrators * Use relative clock in offload_data * Use relative clock in realsense and ZED * Fix stuff * wip * Fix stuff * wip * Fix integrators * wip (ov + dummy int works) * wip (ov + rk4 works but its shakey) * wip (ov + gtsam works) * Correct configs * Fix sqlite * Exorcise glfw3 * Rename classes * Exorcise glfw3 (electric boogaloo) * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * Added '_m_dataset_first_time' in 'ground_truth_slam/plugin.cpp' (ILLIXR#58) * disable debugview * add condition * remove -Werror in OPT-FLAGS * copy common/debug.hpp from the scheduling branch * add declaration of NANO_SEC * use local monado * remove NANO_SEC * add absolute_ns but has error with + * convert _m_start and relative to ns before adding them * change name to passthrough_integrator and zeor out matrice * comment conditions * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * use issue-58-standardize-clock branch in monado_integration * change back to size_t for imu_data loop * fix naming and spacing * remove repeated synchronization * enable debugview * add back glfw3 for debugview * added new line at EOF * use offload_duration to be less confusing * remove dummy * change back to size_t * update comments * synchronize after thread setup * synchronize before p_thread_setup * reponses to comments * remove trailing space * remove pose_lookup * able to compile * restore * Add stoplight to synchronize thread starts/stops * Add missing file (the perils of -u instead of -A) * Respond to reviewer comments * Add documentation and comments * Respond to reviewer comments * Respond to reviewer comments * Fix compile bugs * Add stoplight to synchronize thread starts/stops * Add relative clock to common and runtime * Use relative clock in offline_imu_cam * Use relative clock in gldemo (exorcise GLFW) * Use relative clock in pose_* * Use relative clock in timewarp * Use relative clock in realsense and ZED * Fix stuff * wip * Fix stuff * wip * Fix integrators * wip (ov + dummy int works) * wip (ov + gtsam works) * Wip (works with gtsam) * Correct configs * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * disable debugview * add declaration of NANO_SEC * remove NANO_SEC * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * change back to size_t for imu_data loop * enable debugview * add back glfw3 for debugview * remove dummy * change back to size_t * synchronize after thread setup * synchronize before p_thread_setup * reponses to comments * remove trailing space * remove pose_lookup * able to compile * restore * suggested change to replace dataset_time * respond to comments * use relative clock in offload_vio * respond to comments * update distribution checking and warning msg for realsense * Fix device_rx compilation * Fix offload server config * Resolve pending review comments * update empty constructor of pose_type * Update OV tag * Update Kimera, OV, and Monado tags to reflect the usage of RelativeClock * Update tags in offload-server Co-authored-by: Giordano Salvador <73959795+e3m3@users.noreply.github.com> Co-authored-by: Qinjun Jiang <qinjunj2@illinois.edu> Co-authored-by: Jeffrey Zhang <23205149+JeffreyZh4ng@users.noreply.github.com> Co-authored-by: Qinjun Jiang <90299267+qinjunj@users.noreply.github.com> Co-authored-by: Muhammad Huzaifa <mhuzai@users.noreply.github.com> Co-authored-by: Henry Che <90811347+hungdche@users.noreply.github.com> Co-authored-by: yingj4 <yingj4@illinois.edu> Co-authored-by: Muhammad Huzaifa <huzaifa2@illinois.edu>
* Correct configs * Fix sqlite * Exorcise glfw3 * Rename classes * Exorcise glfw3 (electric boogaloo) * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * Added '_m_dataset_first_time' in 'ground_truth_slam/plugin.cpp' (ILLIXR#58) * disable debugview * add condition * remove -Werror in OPT-FLAGS * copy common/debug.hpp from the scheduling branch * add declaration of NANO_SEC * use local monado * remove NANO_SEC * add absolute_ns but has error with + * convert _m_start and relative to ns before adding them * change name to passthrough_integrator and zeor out matrice * comment conditions * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * use issue-58-standardize-clock branch in monado_integration * change back to size_t for imu_data loop * fix naming and spacing * remove repeated synchronization * enable debugview * add back glfw3 for debugview * Added documentation for using Switchboard and Phonebook externally (ILLIXR#320) * Added documentation for using Switchboard and Phonebook externally * fix typo and spacing * Fix typos Co-authored-by: Qinjun Jiang <90299267+qinjunj@users.noreply.github.com> * added new line at EOF * use offload_duration to be less confusing * remove dummy * change back to size_t * update comments * synchronize after thread setup * synchronize before p_thread_setup * Fix and add documentation (ILLIXR#330) * Add documentation for updating tags and documentation * Set up using master instead of v2-latest * Update doxygen project name * Update Monado's main branch (they renamed 'master' to 'main') * Fix typo in mkdocs.yml * Update README with IISWC paper info * Update bibtex Co-authored-by: Sam Grayson <sam@samgrayson.me> * Fix bibtex Co-authored-by: Sam Grayson <sam@samgrayson.me> * reponses to comments * remove trailing space * Add IMU and Cam Recorder (ILLIXR#327) * Added record_imu_cam plugin * Fixing fstream precision * Adding data_record option for native.yaml * Adding record_imu_cam plugin option * Remove data_record. * Fix minor issues * Fix minor issues * Used boost::filesystem instead of system * Add lboost_filesystem flag * Add the description for record_imu_cam * Fix record_imu_cam path * Fix boost filesystem operator * Remove extra / * Fix minor issues * compute data paths using list initialization * Fix minor issues and clean up extra variables Co-authored-by: yingj4 <yingj4@illinois.edu> * remove pose_lookup * able to compile * restore * Add stoplight to synchronize thread starts/stops * Add missing file (the perils of -u instead of -A) * Respond to reviewer comments * Add documentation and comments * Respond to reviewer comments * Respond to reviewer comments * Fix compile bugs * Add stoplight to synchronize thread starts/stops * Add relative clock to common and runtime * Use relative clock in offline_imu_cam * Use relative clock in gldemo (exorcise GLFW) * Use relative clock in pose_* * Use relative clock in timewarp * wip * Use relative clock in integrators * Use relative clock in offload_data * Use relative clock in realsense and ZED * Fix stuff * wip * Fix stuff * wip * Fix integrators * wip (ov + dummy int works) * wip (ov + rk4 works but its shakey) * wip (ov + gtsam works) * Correct configs * Fix sqlite * Exorcise glfw3 * Rename classes * Exorcise glfw3 (electric boogaloo) * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * Added '_m_dataset_first_time' in 'ground_truth_slam/plugin.cpp' (ILLIXR#58) * disable debugview * add condition * remove -Werror in OPT-FLAGS * copy common/debug.hpp from the scheduling branch * add declaration of NANO_SEC * use local monado * remove NANO_SEC * add absolute_ns but has error with + * convert _m_start and relative to ns before adding them * change name to passthrough_integrator and zeor out matrice * comment conditions * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * use issue-58-standardize-clock branch in monado_integration * change back to size_t for imu_data loop * fix naming and spacing * remove repeated synchronization * enable debugview * add back glfw3 for debugview * added new line at EOF * use offload_duration to be less confusing * remove dummy * change back to size_t * update comments * synchronize after thread setup * synchronize before p_thread_setup * reponses to comments * remove trailing space * remove pose_lookup * able to compile * restore * remove dummy integrator * correct order of declaring * suggested change to replace dataset_time * Add Offloading VIO Plugins to ILLIXR (ILLIXR#331) * Semi working with reader using callbacks * Semi working with reader using sequential reads * Semi working offloading. VIO doesnt work ATM * test commit * Add offloading server and device code * Fixing common and adding extra prints for debugging * Add prints and offloading config * Server fix for zed pt1 * Offloading device cleanup * Add offload client config * Renamed files and merge master * Cleaned up code ready for PR * Fix readme * Revert hotfix and address comments * Revert rt_slam config * Minor fix and verify all combinations of ZED/dataset with OV/Kimera work * Address comments, add plugins to clean.yaml * Add nproc back and update docs * Typo * Fix RealSense plugin (ILLIXR#337) * Fix counter initialization and tidy up some code * Properly initialize camera iteration count * Add stoplight to synchronize thread starts/stops * Add missing file (the perils of -u instead of -A) * Respond to reviewer comments * Add documentation and comments * Respond to reviewer comments * Respond to reviewer comments * Fix compile bugs * Add stoplight to synchronize thread starts/stops * Add relative clock to common and runtime * Use relative clock in offline_imu_cam * Use relative clock in gldemo (exorcise GLFW) * Use relative clock in pose_* * Use relative clock in timewarp * wip * Use relative clock in integrators * Use relative clock in offload_data * Use relative clock in realsense and ZED * Fix stuff * wip * Fix stuff * wip * Fix integrators * wip (ov + dummy int works) * wip (ov + rk4 works but its shakey) * wip (ov + gtsam works) * Correct configs * Fix sqlite * Exorcise glfw3 * Rename classes * Exorcise glfw3 (electric boogaloo) * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * Added '_m_dataset_first_time' in 'ground_truth_slam/plugin.cpp' (ILLIXR#58) * disable debugview * add condition * remove -Werror in OPT-FLAGS * copy common/debug.hpp from the scheduling branch * add declaration of NANO_SEC * use local monado * remove NANO_SEC * add absolute_ns but has error with + * convert _m_start and relative to ns before adding them * change name to passthrough_integrator and zeor out matrice * comment conditions * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * use issue-58-standardize-clock branch in monado_integration * change back to size_t for imu_data loop * fix naming and spacing * remove repeated synchronization * enable debugview * add back glfw3 for debugview * added new line at EOF * use offload_duration to be less confusing * remove dummy * change back to size_t * update comments * synchronize after thread setup * synchronize before p_thread_setup * reponses to comments * remove trailing space * remove pose_lookup * able to compile * restore * Add stoplight to synchronize thread starts/stops * Add missing file (the perils of -u instead of -A) * Respond to reviewer comments * Add documentation and comments * Respond to reviewer comments * Respond to reviewer comments * Fix compile bugs * Add stoplight to synchronize thread starts/stops * Add relative clock to common and runtime * Use relative clock in offline_imu_cam * Use relative clock in gldemo (exorcise GLFW) * Use relative clock in pose_* * Use relative clock in timewarp * Use relative clock in realsense and ZED * Fix stuff * wip * Fix stuff * wip * Fix integrators * wip (ov + dummy int works) * wip (ov + gtsam works) * Wip (works with gtsam) * Correct configs * Respond to reviewer comments * Respond to reviewer comments * Remove dataset_time * disable debugview * add declaration of NANO_SEC * remove NANO_SEC * removed dummy_integrator, changed to passthrough_integrator * tests * Started time_point * create our own time_point * change back to size_t for imu_data loop * enable debugview * add back glfw3 for debugview * remove dummy * change back to size_t * synchronize after thread setup * synchronize before p_thread_setup * reponses to comments * remove trailing space * remove pose_lookup * able to compile * restore * suggested change to replace dataset_time * respond to comments * use relative clock in offload_vio * respond to comments * update distribution checking and warning msg for realsense * Fix device_rx compilation * Fix offload server config * Resolve pending review comments * update empty constructor of pose_type * Update OV tag * Update Kimera, OV, and Monado tags to reflect the usage of RelativeClock * Update tags in offload-server Co-authored-by: Giordano Salvador <73959795+e3m3@users.noreply.github.com> Co-authored-by: Qinjun Jiang <qinjunj2@illinois.edu> Co-authored-by: Jeffrey Zhang <23205149+JeffreyZh4ng@users.noreply.github.com> Co-authored-by: Qinjun Jiang <90299267+qinjunj@users.noreply.github.com> Co-authored-by: Muhammad Huzaifa <mhuzai@users.noreply.github.com> Co-authored-by: Henry Che <90811347+hungdche@users.noreply.github.com> Co-authored-by: yingj4 <yingj4@illinois.edu> Co-authored-by: Muhammad Huzaifa <huzaifa2@illinois.edu>
Closes #58.
Based on #217. If you rebase that, rebase this too.