Эквивалент рисования полигонов BoofCV для Android - PullRequest
1 голос
/ 30 марта 2019

https://boofcv.org/index.php?title=Example_Fit_Polygon

Эта ссылка выше дает некоторое обнаружение изображения и предоставляет хороший пример, но это не для Android, что мне нужно.То, что я действительно застрял прямо сейчас, есть какой-нибудь эквивалент для этого

        VisualizeShapes.drawPolygon(vertexes,true,g2);

в Andriod.Если есть, может кто-нибудь помочь мне, как нарисовать, как на методе с этими параметрами.Например, drawPolygon принимает вершины как эти

 List<PointIndex_I32> vertexes = ShapeFittingOps.fitPolygon(c.external,true, minSide,cornerPenalty);

, и истинным логическим значением является loop, а g2 является java.awt.Graphics2D.Документация для VisualizeShapes представлена ​​здесь: http://boofcv.org/javadoc/boofcv/gui/feature/VisualizeShapes.html

Проблема в том, что VisualizeShapes выдает мне ошибку, потому что она не поддерживается библиотекой для разработки под Android, и мне нужен какой-то способ найти эквивалент обнаружения polygonFitting на андроиде.

1 Ответ

1 голос
/ 30 марта 2019

Демонстрационное приложение Android - хорошее место, чтобы начать поиск подобных вещей. MiscUtil.java имеет нечто похожее на то, что вы ищете.

public static void renderPolygon(Polygon2D_F64 s, Path path , Canvas canvas , Paint paint ) {
    path.reset();
    for (int j = 0; j < s.size(); j++) {
        Point2D_F64 p = s.get(j);
        if (j == 0)
            path.moveTo((float) p.x, (float) p.y);
        else
            path.lineTo((float) p.x, (float) p.y);
    }
    Point2D_F64 p = s.get(0);
    path.lineTo((float) p.x, (float) p.y);
    path.close();
    canvas.drawPath(path, paint);
}
...