new camera calibraction fix

This commit is contained in:
cyy_mac
2026-03-26 05:48:03 +08:00
parent e5f044de0d
commit 12353769d2
2 changed files with 22 additions and 10 deletions

View File

@@ -8,7 +8,6 @@ endif()
# Find dependencies
find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(rclcpp_components REQUIRED)
find_package(std_msgs REQUIRED)
find_package(sensor_msgs REQUIRED)
find_package(image_transport REQUIRED)
@@ -23,7 +22,7 @@ include_directories(
${EIGEN3_INCLUDE_DIRS}
)
# Node library
# Node library - without rclcpp_components registration
add_library(camera_calibration_lib SHARED
src/calibration_node.cpp
)
@@ -39,13 +38,21 @@ ament_target_dependencies(camera_calibration_lib
rm_interfaces
)
# Component library for component container
rclcpp_components_register_node(camera_calibration_lib
PLUGIN "camera_calibration::CalibrationNode"
EXECUTABLE camera_calibration_node
# Create executable directly instead of using component registration
add_executable(camera_calibration_node src/calibration_node.cpp)
ament_target_dependencies(camera_calibration_node
rclcpp
std_msgs
sensor_msgs
image_transport
cv_bridge
OpenCV
Eigen3
rm_interfaces
)
target_link_libraries(camera_calibration_node camera_calibration_lib)
install(TARGETS camera_calibration_lib
install(TARGETS camera_calibration_lib camera_calibration_node
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
RUNTIME DESTINATION lib

View File

@@ -488,6 +488,11 @@ cv::Mat CalibrationNode::drawCalibrationResults(const cv::Mat& image,
} // namespace camera_calibration
#include "rclcpp_components/register_node_macro.hpp"
RCLCPP_COMPONENTS_REGISTER_NODE(camera_calibration::CalibrationNode)
int main(int argc, char** argv) {
rclcpp::init(argc, argv);
rclcpp::NodeOptions options;
auto node = std::make_shared<camera_calibration::CalibrationNode>(options);
rclcpp::spin(node->get_node_base_interface());
rclcpp::shutdown();
return 0;
}