bool cvtToCVObjResize()

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> &params) {

        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;
    }