@uSide

Как найти координаты круга на canvas?

Есть вот такое изображение:
52085ed7b59547d7be9b70f087ccff23.png
Как можно найти координаты этого круга?
(Т.е. в задании круг каждый раз на другом месте. Мне нужно обрабатывать изображение и находить круг)
  • Вопрос задан
  • 2623 просмотра
Решения вопроса 1
barkalov
@barkalov
Полагаю, эту задачу проще всего решить "в лоб" перебором:
var bestCircleness = 0;
var bestX, bestY, bestRadius;

for (var x = 0; x < width; x++) {
    for (var y = 0; y < height; y++) {
        for (var radius = minRadius; radius <= maxRadius; radius++) {
            var circleness = getCircleness(x, y, radius);
            if (circleness > bestCircleness) {
                bestCircleness = circleness;
                bestX = x;
                bestY = y;
                bestRadius = radius;
            }
        }
    }
}

Где функция getCircleness(x, y, radius) возвращает количество черных пикселей внутри кольца c внутренним\внешним радиусом radius±1.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы