0

我正在尝试使用 OpenCV 为 3d 重建编译示例代码,但出现以下错误 (1)

您可以在此处找到源代码:https ://sites.google.com/site/3drecon124/

错误列表

(1) 错误 C2668: 'sqrt' : 对重载函数的模糊调用

(2) IntelliSense:多个重载函数“sqrt”实例匹配参数列表

(3) IntelliSense:函数调用中的参数太少

4

1 回答 1

1

我的建议是编译器不能选择合适的重载sqrt函数。

请尝试明确指定操作数的类型:

sqrt(double(T_pts[i].x*T_pts[i].x + T_pts[i].y*T_pts[i].y));
...
float scale=sqrt(2.0)/meandist.val[0];

代替:

dist[i]=sqrt(T_pts[i].x*T_pts[i].x+T_pts[i].y*T_pts[i].y); // It won't hurt to specify operand type

float scale=sqrt(2)/meandist.val[0]; // here '2' has int type
于 2013-04-23T17:00:00.407 回答