Skip to main content

IPM

Repo​

gitlab repo

deepstream container​

  • clone homography repo
  • git submodule init
  • git submodule update --progress
  • source /opt/ros/eloquent/setup.bash
  • build galaxis_lib in library/
    • also run sudo make install
    • in CMakeLists.txt set cmake version to 15 (or whatever version cmake .. asks for), if cmake .. fails
    • in nodes/galaxis_ipm_package/library/IPM/InversePerspectiveMapping.cpp set the right mapPath in the line containing std::string mapPath = "/home/galaxis/carolo-cup/nodes/homography/models/homologies/combinedmap18.bin";
  • modify:
    • image_transport.hpp -> image_transport.h
    • same for all other headers
  • install realsense sdk
  • uninstall sudo apt purge ros-eloquent-librealsense2 (if necessary)
  • subscribe to the correct camera image topic

galaxis-dev container​

  • clone homography repo
  • build galaxis_lib in library/
  • install realsense sdk
  • subscribe to the correct camera image topic

Troubleshooting​

1​

-- Found rosidl_default_generators: 0.8.0 (/opt/ros/eloquent/share/rosidl_default_generators/cmake)
CMake Error at /usr/local/share/cmake-3.14/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
Could NOT find FastRTPS (missing: FastRTPS_INCLUDE_DIR FastRTPS_LIBRARIES)
Call Stack (most recent call first):
/usr/local/share/cmake-3.14/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
/opt/ros/eloquent/share/fastrtps_cmake_module/cmake/Modules/FindFastRTPS.cmake:95 (find_package_handle_standard_args)
/opt/ros/eloquent/share/rosidl_typesupport_fastrtps_c/cmake/rosidl_typesupport_fastrtps_c-extras.cmake:7 (find_package)
/opt/ros/eloquent/share/rosidl_typesupport_fastrtps_c/cmake/rosidl_typesupport_fastrtps_cConfig.cmake:38 (include)
/opt/ros/eloquent/share/rosidl_default_generators/cmake/rosidl_default_generators-extras.cmake:21 (find_package)
/opt/ros/eloquent/share/rosidl_default_generators/cmake/rosidl_default_generatorsConfig.cmake:38 (include)
CMakeLists.txt:26 (find_package)


-- Configuring incomplete, errors occurred!
  • Problem: You are probably running cmake .. inside the wrong directory.
    • Solution: Make sure you are in folder nodes/homography/src/nodes/galaxis_ipm_package/library/build/ when running cmake ...

2​

std::runtime_error
Failed to load combinedmap.bin
  • change path to models/homologies/combinedmap18.bin in nodes/galaxis_ipm_package/library/IPM/InversePerspectiveMapping.cpp
    • rebuild galaxis_lib after change!
      • use sudo make uninstall followed by make clean and rm -rf build/

3​

/root/docker_volume/git/homography/src/nodes/realsense-ros/realsense2_camera/src/ros_sensor.cpp: In member function 'void realsense2_camera::RosSensor::UpdateSequenceIdCallback()': /root/docker_volume/git/homography/src/nodes/realsense-ros/realsense2_camera/src/ros_sensor.cpp:102:19: error: 'RS2_OPTION_SEQUENCE_ID' was not declared in this scope
if (!supports(RS2_OPTION_SEQUENCE_ID))
^~~~~~~~~~~~~~~~~~~~~~
/root/docker_volume/git/homography/src/nodes/realsense-ros/realsense2_camera/src/ros_sensor.cpp:102:19: note: suggested alternative: 'RS2_OPTION_SHARPNESS'
if (!supports(RS2_OPTION_SEQUENCE_ID))
^~~~~~~~~~~~~~~~~~~~~~
RS2_OPTION_SHARPNESS

und

/root/docker_volume/git/homography/src/nodes/realsense-ros/realsense2_camera/src/base_realsense_node.cpp: In member function 'void realsense2_camera::BaseRealSenseNode::setupFilters()':
/root/docker_volume/git/homography/src/nodes/realsense-ros/realsense2_camera/src/base_realsense_node.cpp:187:76: error: 'hdr_merge' is not a member of 'rs2'
_filters.push_back(std::make_shared<NamedFilter>(std::make_shared<rs2::hdr_merge>(), _parameters, _logger));

und

/root/docker_volume/git/homography/src/nodes/realsense-ros/realsense2_camera/src/base_realsense_node.cpp:188:76: error: 'sequence_id_filter' is not a member of 'rs2'
_filters.push_back(std::make_shared<NamedFilter>(std::make_shared<rs2::sequence_id_filter>(), _parameters, _logger));
  • kommt nur in diesem container, aber nicht in galaxis-dev
  • problem: ros-eloquent-librealsense2 war über apt install installiert, sodass colcon build des realsense2_camera ROS2 package failed
    • solution: sudo apt purge ros-eloquent-librealsense2

4​

CMake Error at CMakeLists.txt:19 (find_package):
By not providing "Findament_cmake.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"ament_cmake", but CMake did not find one.

Could not find a package configuration file provided by "ament_cmake" with
any of the following names:

ament_cmakeConfig.cmake
ament_cmake-config.cmake

Add the installation prefix of "ament_cmake" to CMAKE_PREFIX_PATH or set
"ament_cmake_DIR" to a directory containing one of the above files. If
"ament_cmake" provides a separate development package or SDK, be sure it
has been installed.
  • you have to source /opt/ros/eloquent/setup.bash