Основываясь на том, что я читал об аффинном преобразовании, параллелизм сохраняется после преобразования. Не означает ли это, что непараллельные прямые остаются непараллельными, а параллельные остаются параллельными? Поскольку форма преобразуемого объекта представляет собой трапецию, не означает ли это, что невозможно использовать аффинное преобразование для преобразования объекта в прямоугольник?
Просто чтобы уточнить, выходные данные не обязательно должны быть идеальным прямоугольником, достаточно лишь визуально приблизиться к ним. Также требуется аффинное преобразование.
Перспектива, которую необходимо изменить
Вывод
Я попробовал выполнить аффинное преобразование как обычно (судя по тому, что я найдено в Интернете) с использованием 3 точек отправления и 3 точек назначения. Я обнаружил, что всегда есть одна сторона объекта, которая не находится примерно под углом 90 градусов к двум другим сторонам (т. е. мне не удалось заставить преобразование работать).
Я это знаю. можно использовать cv2.warpPerspective, но для этого требуется 4 точки источника и назначения. AFAIK, аффинное преобразование выполняется всего с 3 точками.
Пожалуйста, дайте мне знать, если я в чем-то ошибаюсь, и если да, то как бы я использовал аффинное преобразование для достижения цели.
Изменить:
Меня попросили опубликовать точную формулировку моего задания:
Цель:
Исправление изображения — это процесс исправления изображения, искаженного аффинным преобразованием в точку обзора, который часто наблюдается при сканировании документов и цифровой фотографии. Целью этого домашнего задания является реализация алгоритма исправления изображения для преобразования входного изображения в другое так, чтобы доминирующие границы объекта были либо горизонтальными, либо вертикальными.
Ожидается следующая основная процедура.< /p>
def imrect(im1)
Искажение ввода im1, искаженного аффинным преобразованием
Параметры: im1: numpy.ndarray (массив, представляющий изображение для исправления)
Возвраты: out: numpy.ndarray (исправленное изображение)
Шаги:
- Использование преобразования Хафа для обнаружения линий
- Определение четырехугольника, отражающего эти линии
- Оценка аффинное преобразование, которое преобразует четырехугольник в прямоугольник.
- Деформация изображения с использованием предполагаемого аффинного преобразования с использованием обратной проекции.
Подробнее здесь: https://stackoverflow.com/questions/790 ... f-an-image