Skip to content

Commit cd866b5

Browse files
authored
Merge pull request #264 from rpng/develop_v2.6.2
Develop v2.6.2
2 parents 2575d93 + bd14ece commit cd866b5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+280
-278
lines changed

ReadMe.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ details on what the system supports.
2121

2222
## News / Events
2323

24-
* **July 14, 2022** - Improved feature extraction logic for >100hz tracking, some bug fixes and updated scripts. See v2.6.1 [PR#259](https://github.com/rpng/open_vins/pull/259).
24+
* **July 14, 2022** - Improved feature extraction logic for >100hz tracking, some bug fixes and updated scripts. See v2.6.1 [PR#259](https://github.com/rpng/open_vins/pull/259) and v2.6.2 [PR#264](https://github.com/rpng/open_vins/pull/264).
2525
* **March 14, 2022** - Initial dynamic initialization open sourcing, asynchronous subscription to inertial readings and publishing of odometry, support for lower frequency feature tracking. See v2.6 [PR#232](https://github.com/rpng/open_vins/pull/232) for details.
2626
* **December 13, 2021** - New YAML configuration system, ROS2 support, Docker images, robust static initialization based on disparity, internal logging system to reduce verbosity, image transport publishers, dynamic number of features support, and other small fixes. See
2727
v2.5 [PR#209](https://github.com/rpng/open_vins/pull/209) for details.

config/euroc_mav/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ min_px_dist: 10 # distance between features (features near each other provide le
8686
knn_ratio: 0.70 # descriptor knn threshold for the top two descriptor matches
8787
track_frequency: 21.0 # frequency we will perform feature tracking at (in frames per second / hertz)
8888
downsample_cameras: false # will downsample image in half if true
89-
multi_threading: true # if should enable opencv multi threading
89+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
9090
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
9191

9292
# aruco tag tracker for the system

config/kaist/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ min_px_dist: 20
8585
knn_ratio: 0.65
8686
track_frequency: 31.0
8787
downsample_cameras: false
88-
multi_threading: true
88+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8989
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
9090

9191
fi_min_dist: 0.25

config/kaist_vio/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ min_px_dist: 15
8686
knn_ratio: 0.70
8787
track_frequency: 31.0
8888
downsample_cameras: false # will downsample image in half if true
89-
multi_threading: true # if should enable opencv multi threading
89+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
9090
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
9191

9292
fi_max_dist: 10.0

config/kaist_vio/pgeneva_ros_kaistvio.launch.old

-154
This file was deleted.

config/rpng_aruco/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 20
8484
knn_ratio: 0.85
8585
track_frequency: 21.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

config/rpng_ironsides/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.65
8585
track_frequency: 31.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
fi_min_dist: 1.0

config/rpng_sim/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.70
8585
track_frequency: 21.0
8686
downsample_cameras: false
87-
multi_threading: false
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

config/tum_vi/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.65
8585
track_frequency: 21.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

config/uzhfpv_indoor/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.70
8585
track_frequency: 31.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

config/uzhfpv_indoor_45/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.70
8585
track_frequency: 31.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

config/uzhfpv_outdoor/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.70
8585
track_frequency: 31.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

config/uzhfpv_outdoor_45/estimator_config.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ min_px_dist: 15
8484
knn_ratio: 0.70
8585
track_frequency: 31.0
8686
downsample_cameras: false
87-
multi_threading: true
87+
num_opencv_threads: 4 # -1: auto, 0-1: serial, >1: number of threads
8888
histogram_method: "HISTOGRAM" # NONE, HISTOGRAM, CLAHE
8989

9090
# aruco tag tracker for the system

docs/eval-timing.dox

+17-2
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,21 @@ mean_time = 0.0128 | std = 0.0035 | 99th = 0.0208 | max = 0.0403 (total)
7474

7575

7676

77+
@subsection eval-ov-timing-hist Script "timing_histogram"
78+
Generates a histogram plot of *binned* execution times for a specific class.
79+
This allows for inspection of the distribution of times as compared to just the mean of it.
80+
The file should be comma separated format, with the first column being the timing, and the last column being the total time.
81+
The middle columns should describe how much each component takes (whose names are extracted from the header of the csv file).
82+
83+
@code{.shell-session}
84+
rosrun ov_eval timing_histogram <file_times.txt> <num_bins>
85+
rosrun ov_eval timing_histogram timing_mono_ethV101.txt 75
86+
@endcode
87+
88+
89+
@image html eval/timing_hist.png width=90%
90+
91+
7792

7893

7994
@subsection eval-ov-timing-compare Script "timing_comparison"
@@ -94,7 +109,7 @@ Example output:
94109
[TIME]: loading data for timing_mono
95110
[TIME]: loaded 2817 timestamps from file (7 categories)!!
96111
mean_time = 0.0037 | std = 0.0011 | 99th = 0.0063 | max = 0.0254 (tracking)
97-
mean_time = 0.0004 | std = 0.0001 | 99th = 0.0006 | max = 0.0014 ( propagation)
112+
mean_time = 0.0004 | std = 0.0001 | 99th = 0.0006 | max = 0.0014 (propagation)
98113
mean_time = 0.0032 | std = 0.0022 | 99th = 0.0083 | max = 0.0309 (msckf update)
99114
mean_time = 0.0034 | std = 0.0013 | 99th = 0.0063 | max = 0.0099 (slam update)
100115
mean_time = 0.0012 | std = 0.0017 | 99th = 0.0052 | max = 0.0141 (slam delayed)
@@ -105,7 +120,7 @@ mean_time = 0.0128 | std = 0.0035 | 99th = 0.0208 | max = 0.0403 (total)
105120
[TIME]: loading data for timing_stereo
106121
[TIME]: loaded 2817 timestamps from file (7 categories)!!
107122
mean_time = 0.0077 | std = 0.0020 | 99th = 0.0124 | max = 0.0219 (tracking)
108-
mean_time = 0.0004 | std = 0.0001 | 99th = 0.0007 | max = 0.0023 ( propagation)
123+
mean_time = 0.0004 | std = 0.0001 | 99th = 0.0007 | max = 0.0023 (propagation)
109124
mean_time = 0.0081 | std = 0.0047 | 99th = 0.0189 | max = 0.0900 (msckf update)
110125
mean_time = 0.0063 | std = 0.0023 | 99th = 0.0117 | max = 0.0151 (slam update)
111126
mean_time = 0.0020 | std = 0.0026 | 99th = 0.0079 | max = 0.0205 (slam delayed)

docs/img/eval/timing_hist.png

31 KB
Loading

ov_core/cmake/ROS1.cmake

+6-6
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ list(APPEND thirdparty_libraries
3434
${Boost_LIBRARIES}
3535
${OpenCV_LIBRARIES}
3636
${catkin_LIBRARIES}
37-
)
37+
)
3838

3939
##################################################
4040
# Make the core library
@@ -55,7 +55,7 @@ list(APPEND LIBRARY_SOURCES
5555
src/feat/FeatureDatabase.cpp
5656
src/feat/FeatureInitializer.cpp
5757
src/utils/print.cpp
58-
)
58+
)
5959
file(GLOB_RECURSE LIBRARY_HEADERS "src/*.h")
6060
add_library(ov_core_lib SHARED ${LIBRARY_SOURCES} ${LIBRARY_HEADERS})
6161
target_link_libraries(ov_core_lib ${thirdparty_libraries})
@@ -64,11 +64,11 @@ install(TARGETS ov_core_lib
6464
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
6565
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
6666
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
67-
)
67+
)
6868
install(DIRECTORY src/
6969
DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION}
7070
FILES_MATCHING PATTERN "*.h" PATTERN "*.hpp"
71-
)
71+
)
7272

7373
##################################################
7474
# Make binary files!
@@ -82,7 +82,7 @@ if (catkin_FOUND AND ENABLE_ROS)
8282
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
8383
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
8484
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
85-
)
85+
)
8686

8787
endif ()
8888

@@ -92,7 +92,7 @@ install(TARGETS test_webcam
9292
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
9393
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
9494
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
95-
)
95+
)
9696

9797

9898

ov_core/cmake/ROS2.cmake

+4-4
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ include_directories(
2323
list(APPEND thirdparty_libraries
2424
${Boost_LIBRARIES}
2525
${OpenCV_LIBRARIES}
26-
)
26+
)
2727

2828
##################################################
2929
# Make the core library
@@ -44,7 +44,7 @@ list(APPEND LIBRARY_SOURCES
4444
src/feat/FeatureDatabase.cpp
4545
src/feat/FeatureInitializer.cpp
4646
src/utils/print.cpp
47-
)
47+
)
4848
file(GLOB_RECURSE LIBRARY_HEADERS "src/*.h")
4949
add_library(ov_core_lib SHARED ${LIBRARY_SOURCES} ${LIBRARY_HEADERS})
5050
ament_target_dependencies(ov_core_lib rclcpp cv_bridge)
@@ -54,11 +54,11 @@ install(TARGETS ov_core_lib
5454
LIBRARY DESTINATION lib
5555
RUNTIME DESTINATION bin
5656
PUBLIC_HEADER DESTINATION include
57-
)
57+
)
5858
install(DIRECTORY src/
5959
DESTINATION include
6060
FILES_MATCHING PATTERN "*.h" PATTERN "*.hpp"
61-
)
61+
)
6262
ament_export_include_directories(include)
6363
ament_export_libraries(ov_core_lib)
6464

0 commit comments

Comments
 (0)