我正在尝试关闭此图片右侧的轮廓:Sample . 打开轮廓的原因在于 kabeja ,这是一个将DXF文件转换为图像的库 . 似乎在某些图像上它没有't convert the last pixel column (or row) and that'为什么样本图片是打开的 .
我有想法在Opencv中使用 Core.copyMakeBorder() ,为图片添加一些空间 . 之后,我尝试使用 Imgproc.approxPolyDP() 来关闭轮廓,但这不会发布超过2个链接't work. I tried this with different Epsilon values: Pics EDIT: Can'
原因可能是轮廓围绕着线条 . 它永远不会关闭我想要它做的轮廓 .
我尝试了另一种使用 Imgproc.convexHull() 的方法,它提供了这个方法:ConvexHull . 这可能对我有用,但我不知道如何取出我需要的凸包部分并将其与轮廓合并在一起以关闭它 .
我希望有人有个主意 .
这是我的Imgproc.approxPolyDP()方法
public static ArrayList makeComplete(Mat mat) {
System.out.println("makeComplete: START");
Mat dst = new Mat();
Core.copyMakeBorder(mat, dst, 10, 10, 10, 10, Core.BORDER_CONSTANT);
ArrayList cnts = Tools.getContours(dst);
ArrayList opened = new ArrayList<>();
//convert