Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
80d38b5
Initial code structure for change detection using khronos sink
MultyXu Jan 21, 2026
bd150bd
First basic draft of AWCD for remobed object only.
MultyXu Jan 24, 2026
8974261
Minor edition of code styles.
MultyXu Jan 26, 2026
c64e7e1
Modify to use MLOG (but an earlier version)
MultyXu Jan 26, 2026
d0af06b
Added activew window change detection visualizer as active window sin…
MultyXu Feb 2, 2026
7b1c5c9
add sinks for active window change detector, now visualize the prior …
MultyXu Feb 4, 2026
7de8694
Visualize removed objects as red boundingbox
MultyXu Feb 4, 2026
8cdf1d6
More option for viewing everfree slice
MultyXu Feb 8, 2026
fd9e287
first version of icp
MultyXu Mar 3, 2026
0f35a03
icp module
MultyXu Mar 3, 2026
6b1817a
remove active window change detector ros, and replace it with a get t…
MultyXu Mar 3, 2026
4329230
Change removed object detection logit to only consider points that ar…
MultyXu Mar 23, 2026
33925c3
Add new boundingbox type, plan out new object addition.
MultyXu May 12, 2026
2d87a1a
Detect added objects. Adding option for rotated bbox.
MultyXu Jun 14, 2026
5b500b7
Persistent removed object bounding box.
MultyXu Jun 14, 2026
064d156
Added track probability for more stable visualization.
MultyXu Jun 15, 2026
f024bf8
Solving visualization flickering
MultyXu Jun 15, 2026
61481cc
Change tf frame order, add a new frame in the midel pre_icp_odom
MultyXu Jun 15, 2026
837a785
Add new msg type for global msg back to base station. Add removed obj…
MultyXu Jul 1, 2026
7743c82
initial version for track saving.
MultyXu Jul 8, 2026
033ddf7
add serialization method for Track class.
MultyXu Jul 8, 2026
7cca695
step 3 complete, we now have a new formalized tracking and framedata …
MultyXu Jul 8, 2026
a26840a
initial version of full pipeline test
MultyXu Jul 9, 2026
ef76277
frame data construct rgb too
MultyXu Jul 9, 2026
6d27a78
Getting full tracker replay to work.
MultyXu Jul 9, 2026
0238925
Better color blending.
MultyXu Jul 9, 2026
17f44f1
better tracker debug message print.
MultyXu Jul 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 49 additions & 1 deletion khronos/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,19 +15,37 @@ find_package(spatial_hash REQUIRED)
find_package(Eigen3 REQUIRED)
find_package(pose_graph_tools REQUIRED)
find_package(GTSAM REQUIRED)
find_package(OpenCV REQUIRED COMPONENTS core imgproc)
find_package(OpenCV REQUIRED COMPONENTS core imgproc imgcodecs)
find_package(spark_dsg REQUIRED)
find_package(kimera_pgmo REQUIRED)
find_package(hydra REQUIRED)
find_package(small_gicp REQUIRED)
find_package(CLI11 REQUIRED)

include(GNUInstallDirs)

#############
# Libraries #
#############

add_library(${PROJECT_NAME}_registration
src/utils/icp_registration_utils.cpp
)
target_include_directories(${PROJECT_NAME}_registration
PUBLIC $<INSTALL_INTERFACE:include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
)
target_link_libraries(${PROJECT_NAME}_registration
PRIVATE small_gicp::small_gicp
)
set_property(TARGET ${PROJECT_NAME}_registration PROPERTY POSITION_INDEPENDENT_CODE ON)
add_library(khronos::${PROJECT_NAME}_registration ALIAS ${PROJECT_NAME}_registration)

add_library(${PROJECT_NAME}
src/active_window/active_window.cpp
src/active_window/change_detection/active_window_change_detector.cpp
src/active_window/change_detection/transformation_getter.cpp
src/active_window/data/frame_data.cpp
src/active_window/data/frame_data_buffer.cpp
src/active_window/data/track.cpp
src/active_window/integration/object_integrator.cpp
Expand All @@ -37,6 +55,7 @@ add_library(${PROJECT_NAME}
src/active_window/object_detection/instance_forwarding.cpp
src/active_window/object_extraction/mesh_object_extractor.cpp
src/active_window/object_extraction/object_worker_pool.cpp
src/active_window/track_saver_sink.cpp
src/active_window/tracking/external_tracker.cpp
src/active_window/tracking/max_iou_tracker.cpp
src/backend/backend.cpp
Expand All @@ -54,6 +73,7 @@ add_library(${PROJECT_NAME}
src/spatio_temporal_map/spatio_temporal_map.cpp
src/spatio_temporal_map/incremental_mesh.cpp
src/utils/geometry_utils.cpp
src/utils/json_utils.cpp
src/utils/khronos_attribute_utils.cpp
src/utils/output_file_utils.cpp
)
Expand All @@ -75,11 +95,39 @@ ${PROJECT_NAME}
spatial_hash::spatial_hash
${kimera_pgmo_LIBRARIES}
${hydra_LIBRARIES}
${PROJECT_NAME}_registration
PRIVATE ${tf2_eigen_LIBRARIES}
)
set_property(TARGET ${PROJECT_NAME} PROPERTY POSITION_INDEPENDENT_CODE ON)
add_library(khronos::${PROJECT_NAME} ALIAS ${PROJECT_NAME})

###############
# Executables #
###############

# Standalone round-trip check for Track::save/Track::load (see tracker_debug.md Step 1).
add_executable(test_track_serialization app/test_track_serialization.cpp)
target_link_libraries(test_track_serialization PRIVATE ${PROJECT_NAME})
install(TARGETS test_track_serialization RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})

# Replays a saved track's observations through MaxIoUTracker against another loaded track (see
# tracker_debug.md Step 2).
add_executable(test_track_association app/test_track_association.cpp)
target_link_libraries(test_track_association PRIVATE ${PROJECT_NAME} CLI11::CLI11)
install(TARGETS test_track_association RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})

# Standalone round-trip check for FrameData::save/FrameData::load and
# saveCameraIntrinsics/loadCameraIntrinsics (see tracker_debug.md Step 3).
add_executable(test_frame_data_serialization app/test_frame_data_serialization.cpp)
target_link_libraries(test_frame_data_serialization PRIVATE ${PROJECT_NAME})
install(TARGETS test_frame_data_serialization RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})

# Replays an entire saved run through a fresh MaxIoUTracker, with active-window eviction
# simulation, for parameter tuning (see tracker_debug.md Step 4).
add_executable(full_run_tracker_replay app/full_run_tracker_replay.cpp)
target_link_libraries(full_run_tracker_replay PRIVATE ${PROJECT_NAME} CLI11::CLI11)
install(TARGETS full_run_tracker_replay RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})

##########
# Export #
##########
Expand Down
Loading