Я не знаю, если это должно произойти на математическом форуме или на форумах программирования, но я отправлю его в обоих и посмотрю, где я получу.Попытка получить матрицу 2D-преобразования, используя только изображения
У меня есть два компьютерных изображения ... один из них - это «оригинальное» изображение (большой файл TIF). Другая - преобразованная версия исходного изображения ... она была повернута, сдвинута и переведена в программную программу. Мне нужно сделать некоторую работу над преобразованным изображением, но мне нужно (x-y) координаты каждого пикселя в исходном изображении, чтобы закончить мои вычисления.
Я знаю, что изображение было повернуто и сдвинуто с матрицей трансформации 3x3. Если бы у меня была матрица, я мог бы получить второе изображение с первого (или наоборот) самого. Я точно не знаю, сколько он был повернут, сдвинут или переведен, поэтому я не могу просто вывести матрицы из набора известных преобразований. У меня есть набор соответствующих точек (углы и др.) В каждом изображении и соответствующие им координаты (x, y). Итак, вот моя дилемма:
Используя набор соответствующих преобразованных точек ((x, y) -> (x ', y'), три или более из них), можно получить матрицу преобразования, которая была использована для поворота одно изображение в другое? Если я могу получить матрицу, я могу решить для исходных координат всех пикселей (все 18 миллионов из них) и получить сделанные вычисления, которые мне нужно сделать.
Может ли кто-нибудь помочь? Я знаком с линейной алгеброй ... просто недостаточно знакомы, чтобы получить это без целой царапины. Все ценится!
- Майк
Эта проблема была дайвинг меня с ума. Пожалуйста, посмотрите [здесь] (http://stackoverflow.com/questions/8959657/order-sequence-of-matrix-transformations-in-2d) и [здесь] (http://stackoverflow.com/questions/8834070/матрица-координатно-преобразование порядка). Если бы я мог только перевести ваши ответы на простое программирование. –