1 IntelliSense: 在没有适当 operator() 的情况下调用类类型的对象或将函数转换到指向函数的类型 d:\code-projectsvs\opencv\tqbiaos\tqbiaos\main.cpp 29
时间: 2023-07-21 13:08:16 浏览: 1052
web2py_intellisense:一个将假智能感知添加到 web2py 对象的模块
这个错误通常出现在尝试将一个类的对象作为函数调用的参数,而该类没有重载`operator()`运算符。另外一个可能的情况是将一个函数转换为指向函数的指针类型,而函数没有声明为指针类型。
在你提供的代码中,出现这个错误的位置在第29行。根据错误信息,我们可以看出可能是在将`contours[i]`作为`moments`构造函数的参数时出现了问题。`moments`是一个类,它的构造函数没有声明为接受一个`vector<Point>`类型的参数。
为了解决这个问题,我们应该将`moments`的构造函数替换为`moments()`,并将`contours[i]`作为参数传递给`moments()`函数,如下所示:
```c++
Moments moments = moments(contours[i]);
```
应该改为:
```c++
Moments moments = moments(contourArea(contours[i]));
```
这里将`contours[i]`的面积作为参数传递给了`moments()`函数,这是计算轮廓的几何矩所必需的。
阅读全文