OpenCV:使用额外顶点初始化Subdiv2D

时间:2017-02-04 10:31:59

标签: c++ opencv

由于某种原因,当我使用Subdiv2D时,我得到一个额外的顶点(并且无法删除它)

[代码嵌入在更大的应用程序中]

Subdiv2D mesh(Rect(0,0,1,1));
vector<Vec6f> triangleList;
mesh.getTriangleList(triangleList);
for(auto triangle : triangleList)
{
        cout <<
            "Vertex 1:" << endl << "\t"
                "x: " << triangle[0] <<
                "y: " << triangle[1] << endl <<
            "Vertex 2:" << endl << "\t"
                "x: " << triangle[2] <<
                "y: " << triangle[3] << endl <<
            "Vertex 3:" << endl << "\t"
                "x: " << triangle[4] <<
                "y: " << triangle[5] << endl <<
            endl;
}

在输出中我得到这两个三角形

Vertex 1:
    x: 3y: 0
Vertex 2:
    x: 0y: 3
Vertex 3:
    x: -3y: -3

Vertex 1:
    x: 0y: 3
Vertex 2:
    x: 3y: 0
Vertex 3:
    x: -3y: -3

首先..列表没有意义(这两个三角形是等价的) 如果我添加更多顶点,那些初始超出范围的顶点会保留并将所有顶点都清理干净。

我觉得我必须遗漏一些简单的事情

0 个答案:

没有答案