Задать вопрос

Как получить соотношение сторон искаженного прмоугольника?

Здравствуйте!
У меня есть фото прямоугольного объекта, сделаное под некоторым углом, т. е. он искажен. Мне нужно обрезать фото так, чтобы фото содержало в себе только прямоугольник, причем уже выравненный. Я сделал это при помощи матрицы, все работает отлично, но я сам задаю конечные координаты, куда он будет "впихиваться". Как мне получить реальные пропорции прямоугольника?

Пишу под Андроид. сorners - это координаты углов искаженного прямоугольника на фото. w & h - размеры, под которые я подгоняю прямоугольник, именно их мне и надо вычислить:
float[] dest = new float[]{0, 0, w, 0, w, h, 0, h};
        float[] source = new float[]{corners.get(0).getX(), corners.get(0).getY(), corners.get(1).getX(), corners.get(1).getY(), corners.get(2).getX(), corners.get(2).getY(), corners.get(3).getX(), corners.get(3).getY()};
        matrix.setPolyToPoly(source, 0, dest, 0, 4);
  • Вопрос задан
  • 341 просмотр
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Математика для анализа данных
    6 месяцев
    Далее
  • Яндекс Практикум
    Основы математики для цифровых профессий
    2 месяца
    Далее
  • Нетология
    Data Scientist: расширенный курс
    13 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
2ord
@2ord
Формулы не скажу - не знаю.
При помощи OpenCV попробуй getPerspectiveTransform
stackoverflow.com/questions/8235288/perspective-co...
Automatic perspective correction for quadrilateral...
Ответ написан
Комментировать
@Hakito Автор вопроса
А формулы никто не подскажет? Не хочется подключать для такой мелочи OpenCV
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы