Скорее всего, каждый из Вас хоть раз в жизни слышал термин «афинные преобразования». Действительно, все постоянно о них говорят: «инвариантность к афинным преобразованиям», «аугментация с помощью афинных преобразований», «афинные преобразования в компьютерной графике» и так далее. Однако, далеко не все могут сходу ответить на простой вопрос: «А расскажите, что такое афинные преобразования простыми словами».
Вы сможете? В любом случае, давайте немного обсудим этот вопрос.
Начнем с классики – определение из Википедии.
Аффинное преобразование (от лат. affinis «соприкасающийся, близкий, смежный») — отображение плоскости или пространства в себя, при котором параллельные прямые переходят в параллельные прямые, пересекающиеся — в пересекающиеся, скрещивающиеся — в скрещивающиеся.
Внесем немного ясности.
Во-первых, что значит «отображение в себя»? Это значит, что если мы находились в пространстве
Во-вторых, что такое «скрещивающиеся прямые»? Конечно, все это проходили в школе, но на всякий случай напомним. Прямые называются скрещивающимися, если они не лежат в одной плоскости. Вот если бы они лежали в одной плоскости и пересекались, они назывались бы пересекающимися. А если в разных плоскостях, то скрещивающимися. Пример – на рисунке.
В целом, это определение уже нам что-то говорит и мы начинаем потихоньку рисовать для себя картинку. Как минимум, мы должны остаться в той же плоскости: значит мы представляем себе
По сути, мы с Вами только что описали один из видов афинных преобразований – сдвиг.
Но давайте пойдем чуть дальше и дадим еще одно определение (не нами придуманное).
Преобразование плоскости называется аффинным, если оно непрерывно, взаимно однозначно и образом любой прямой является прямая.
Звучит это, пожалуй, чуть сложней и путанней, но дает нам больше конкретной информации, чем предыдущее определение.
Преобразование называется непрерывным, если «близкие точки переходят в близкие». Т.е. иначе – если у нас есть две точки и они находятся рядом, то после преобразования они все равно будут находиться где-то поблизости друг от друга.
Далее – преобразование взаимооднозначно, если разные точки переводятся в разные точки и в каждую точку переводится какая-то точка. Например: если мы отобразили отрезок и он слипся в точку – это не взаимооднозначное преобразование. Из отрезка мы должны получить ровно такой же отрезок, тогда будет взаимооднозначно (если это сработает для всех отрезков, конечно).
Итак, с определениями мы разобрались. Давайте теперь запишем в общем виде, а как выглядит преобразование координат в формульном виде.
Пусть у нас есть исходная система координат. Точка в этой системе характеризуется двумя числами –
При этом, числа
На всякий случай: матрица называется невырожденной, если ее определитель не равен нулю, т.е.
Можно записать и в более общем в виде.
Афинное преобразование
Мы с Вами достаточно подробно разобрали, что такое афинное преобразование и как его можно описать с помощью формул. Давайте теперь рассмотрим популярные примеры.
Приходят ли Вам в голову какие-нибудь претенденты на роль
Пусть
Значит, матрица
И новые координаты будут выглядеть так:
Ничего не напоминает? Если Вы еще не узнали, то встречайте – это просто повернутая система координат на угол
Теперь мы предлагаем сконструировать матрицунесколько иначе:
Новые координаты тогда принимают вид:
В целом, тут даже уже из вида системы уравнений понятно, что мы просто растягиваем наши оси, если коэффициент меньше 1 и сжимаем, если больше 1. Пример на рисунке.
Кстати говоря, а попробуйте поставить вместо
Ну и давайте напоследок еще один пример.
Пусть теперь матрица
Таким образом, наша система принимает вид:
Если отразить это на графике, то мы просто сдвинули начало координат в точку
Эта короткая статья позволит Вам чуть сильней прочувствовать «внутренности» афинных преобразований (мы надеемся на это). После прочтения попробуйте все-таки ответить на вопрос, который мы ставили в самом начале – «А расскажите, что такое афинные преобразования простыми словами». Теперь сможете?
P.S. Кстати говоря, было бы неплохо не верить нам на слово и проверить самим – а матрицы
VK объявляет о приобретении 40% компании Intickets.ru (Интикетс). Это облачный сервис для контроля и управления продажей билетов на мероприятия. Сумма…
OpenAI готовится запустить собственную поисковую систему на базе ChatGPT. Информацию об этом публикуют западные издания. Ожидается, что новый поисковик может…
Центр управления связью общего пользования (ЦМУ ССОП) Роскомнадзора рекомендовал компаниям из реестра провайдеров ограничить доступ поисковых ботов к информации на российских сайтах.…
Apple возобновила переговоры с OpenAI о возможности внедрения ИИ-технологий в iOS 18, на основе данной операционной системы будут работать новые…
Конкурсный управляющий российской «дочки» Google подготовил 23 иска к участникам рекламного рынка. Общая сумма исков составляет 16 млрд рублей –…
Google завершил обновление основного алгоритма March 2024 Core Update. Раскатка обновлений была завершена 19 апреля, но сообщил об этом поисковик…