小编axe*_*xel的帖子

Delaunay三角剖分opencv c ++

由于这段代码,我使用openCv进行了delaunay三角测量: 示例代码 (在partiluclar draw_subdiv中).然而,当我想显示三角测量时,我得到不属于三角测量的网格和线.这条线是由于三角测量算法开始其工作考虑在"无限"处发布的三角形.

你能解释一下我如何只将网格划入凸包(没有这条线)吗?

显示功能:

 void draw_subdiv(Mat &img, Subdiv2D& subdiv, Scalar delaunay_color)
{

  vector<Vec6f> triangleList;
  subdiv.getTriangleList(triangleList);
  vector<Point> pt(3);

  for(size_t i = 0; i < triangleList.size(); ++i)
    {
      Vec6f t = triangleList[i];

      pt[0] = Point(cvRound(t[0]), cvRound(t[1]));
      pt[1] = Point(cvRound(t[2]), cvRound(t[3]));
      pt[2] = Point(cvRound(t[4]), cvRound(t[5]));

      line(img, pt[0], pt[1], delaunay_color, 1);
      line(img, pt[1], pt[2], delaunay_color, 1);
      line(img, pt[2], pt[0], delaunay_color, 1);
    }
}
Run Code Online (Sandbox Code Playgroud)

主功能 :

Mat image = imread(argv[1], 1);

 ..... ....
 //creat delaunay                                                                                                                                 
 Scalar delaunay_color(255, 255, 255), point_color(0,0,255);
 Rect rect(0,0,image.cols, image.rows); …
Run Code Online (Sandbox Code Playgroud)

c++ opencv

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

opencv ×1