1

嗨,我尝试使用 fitLine 但它总是崩溃。我已经尝试修改输入数据(cv::Mat, std::vector<cv::Pointd>)和输出数据(cv::Vect4d, std::vector<cv::Pointd>(2), std::vector<double>(4))格式。

这是我的代码:

std::vector<cv::Point2d> points;
// [...] // push_back some (26) points
std::vector<double> line(4,0);
cv::fitLine(points,line,CV_DIST_L2,0,0.01,0.01);

现在它崩溃了。我正在使用带有 opencv 2.41 构建的 winxp VS2010 我没有调用堆栈,并且崩溃似乎发生在 kernel32.dll xstring

我的失败在哪里?

PS:我在opencv问答论坛上发布了这个问题,但是在查看了问题历史后,我对快速解决方案不太有信心。

4

1 回答 1

0

好的,我低估了 opencv 网站: http ://answers.opencv.org/question/14547/fitline-always-crashes/?answer=14550#post-id-14550

解决办法是:只支持浮点输入数据。

std::vector<cv::Point2f> points;
// [...] // push_back some (26) points
cv::Vec4f line;
cv::fitLine(points,line,CV_DIST_L2,0,0.01,0.01);

将工作

于 2013-06-03T10:33:23.003 回答