gpt4 book ai didi

c++ - 可以将cv::convexHull应用于 double 点数据

转载 作者:行者123 更新时间:2023-12-01 14:43:53 25 4
gpt4 key购买 nike

以下代码可以正常工作:

typedef cv::Point cvp;

std::vector <cvp> points{ cvp(0, 0), cvp(1, 0), cvp(0, 1), cvp(0.5, 0.5) };
std::vector<cvp> hullPoints;

cv::convexHull(points, hullPoints);

但是,当我更改 cvp的定义时:
typedef cv::Point2d cvp;  // cvp is now a double-precision point

该程序在进入 cv::convexHull过程时崩溃。好像
要么 cv::convexHull只能用于整数值点,要么我做错了什么。

我在OpenCV文档中没有找到关于此问题的信息。

最佳答案

convexHull仅与Point2i(与Point相同)和Point2f一起使用。
请参阅code以供引用:

CV_Assert(total >= 0 && (depth == CV_32F || depth == CV_32S));

因此,您可以使用浮点值,但它们必须是 float,而不是 double:
typedef cv::Point2f cvp;

关于c++ - 可以将cv::convexHull应用于 double 点数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59286458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com