in inference_pkg/src/image_process.cpp [32:65]
bool cvtToCVObjResize (const sensor_msgs::msg::Image &frameData, cv::Mat &retImg,
const std::unordered_map<std::string, int> ¶ms) {
cv_bridge::CvImagePtr cvPtr;
try {
cvPtr = cv_bridge::toCvCopy(frameData, "bgr8");
}
catch (cv_bridge::Exception& e) {
RCLCPP_ERROR(rclcpp::get_logger("rclcpp"), "cv_bridge exception: %s", e.what());
return false;
}
auto itWidth = params.find("width");
if (itWidth == params.end()) {
RCLCPP_ERROR(rclcpp::get_logger("rclcpp"), "Image processing params has no width entry");
return false;
}
auto itHeight = params.find("height");
if (itHeight == params.end()) {
RCLCPP_ERROR(rclcpp::get_logger("rclcpp"), "Image processing params has no height entry");
return false;
}
try {
cv::resize(cvPtr->image, retImg, cv::Size(itWidth->second, itHeight->second));
}
catch (...) {
RCLCPP_ERROR(rclcpp::get_logger("rclcpp"), "Resize failed");
return false;
}
return true;
}