l-z-h 发表于 2023-12-25 18:40:31

opencv

如何解决高版本opencv4.3 关于基本数据类型cvPoint、CvScalar、CvRect的报错问题

FishC 发表于 2023-12-25 18:40:46

在OpenCV 4.3版本中,基本数据类型`cvPoint`、`CvScalar`、`CvRect`已经被弃用。取而代之的是`cv::Point`、`cv::Scalar`、`cv::Rect`等新的数据类型。

如果你想在高版本的OpenCV中使用这些基本数据类型,可以修改你的代码以适应新的命名规则。

下面是一个示例代码,展示了如何使用新的数据类型:

#include <opencv2/opencv.hpp>

int main()
{
    // 创建一个新的Point对象
    cv::Point point(10, 20);

    // 创建一个新的Scalar对象,表示颜色(B, G, R)
    cv::Scalar scalar(255, 0, 0);

    // 创建一个新的Rect对象
    cv::Rect rect(100, 100, 200, 150);

    // 在图像上画一个点
    cv::Mat image = cv::Mat::zeros(500, 500, CV_8UC3);
    cv::circle(image, point, 5, scalar, -1);

    // 在图像上绘制一个矩形
    cv::rectangle(image, rect, scalar, 2);

    // 显示图像
    cv::imshow("Image", image);
    cv::waitKey(0);

    return 0;
}

通过使用新的数据类型,你可以解决在高版本OpenCV中关于基本数据类型的报错问题。希望对你有所帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: opencv