如何使用C ++ / CLR环境在OpenCV中为轮廓声明'''vector <point>'''?

时间:2019-05-14 03:59:04

标签: c++ opencv vector clr opencv-contour

我正在将我的代码(OpenCV本机C ++)导入到.Net环境的clr托管语言中。 我修复了所有不匹配的托管和非托管相关功能(例如字符串转换),除了一个问题。

当我在form.h头文件中使用<vector<Point> > contours;时,出现两个错误:    1)C2872点在form.h中是不明确的    2)C3699'&&':不能在vector.h头文件中的'System :: Drawing :: Point'类型上使用此间接访问。

为此行vector<Vec4i> hierarchy;使用向量很好,并且看来问题是与CLR托管语言不匹配的“点”。

如何使用'''vector'''来将“ contours”定义为“ findContours”功能。

谢谢您的提及。

vector<Vec4i> hierarchy;
vector<vector<Point> > contours0;
findContours(image2, contours0, hierarchy, RETR_EXTERNAL, CHAIN_APPROX_SIMPLE);

1 个答案:

答案 0 :(得分:0)

我删除了 STD 和 CV 全局命名空间,并从 form.h 代码的第一个中保留了 System 及其分支命名空间。 它运作良好。 解决方案很简单,但它可能是一个大麻烦。 我真的很感激。