Проективні перетворення загалом не зберігають паралельності ліній. Властивістю, яка зберігається при проективному перетворенні, є колінеарність точок: три точки, що лежать на одній прямій (тобто є колінеарними), після перетворення залишаються на одній прямій (див.рис.5.3).
Проективне перетворення пов’язане з відображенням тривимірної візуальної інформації на двовимірну площину. З математичної точки зору зручно розглядати світ включеним в тривимірний проективний простір P 3 , а площину зображення, включеною в проективний простір розмірності два - P 2 . Точки на тривимірній сцені і на зображенні представляються в проективных просторах як вектори в однорідних координатах.
а)
б)
Рис.6. а) дія проективного перетворення на п’ять точок площини; б) вихідне зображення; в) та г) проективно перетворені образи; параметри
проективного перетворення відповідно:
Проективне перетворення з P 3 в P 2 (перспективна проекція), відображаюче евклідову точку сцени p (X ,Y , Z )t в точку зображення x (x, y)t і виражене в однорідних координатах, задається у виді:
11
(9)
Однорідні координати векторів проективного простору (X ,Y , Z ,W )t і проективної площини (x, y, w)t співвідносяться з неоднорідними (евклідовими) координатами векторів Р та Х заданим вище чином
та
Нагадаємо, що зображення об’єктів на знімку, сформованому реєструючою камерою, пов’язане з проектуванням з допомогою пучка прямих, оскільки кожна 2D точка є проекцією множини 3D точок вздовж деякого напрямку («променя проектування») в площину знімка (рис.7).
Рис.7. Перспективна проекція
Якщо відстань від площини зображення до центру проекції дорівнює f, то координати елементів зображення xi , yi зв’язані з просторовими координатами об’єкта наступним чином
(10)
Це нелінійні рівняння. Вони можуть стати лінійними введенням однорідних
координат. Промінь, що проходить через 2D точку |
xi , yi |
є направляючим вектором |
|
прямої, з’єднуючої точки 0,0,0 |
та xi , yi , f |
. В |
той же час 3D точка |
також лежить на цьому промені. При довільному Zi отримаємо координати всіх 3D точок
на цьому промені,
відповідних єдиній точці
на зображенні в площині Z
f . По суті,
кожна точка на зображенні визначає промінь, що іде від сцени в початок координат, тому однорідні координати точки на знімку в дійсності представляють (і визначають) лінію, яка
12
проходить через початок в евклідовому тривимірному просторі E 3 . Такий набір всеможливих ліній формує проективний 2D-простір P 2 в площині Z
f . В однорідних координатах рівняння (10) звичайно мають вид (10’)
(10’)
При w 0 , 3D точка (x, y,0) , визначає лінію, паралельну площині Z 1 , не маючу з нею
точок перетину і, відповідно, не має відповідника з якоюсь кінцевою точуою зображення. Такі лінії утворювати на зображеннях проективної площини т.зв. «лінію горизонта»
Таким чином, ідеалізація процесу формування зображення камерою може бути представлена як перспективна проекція з P3 в P 2 . Допустимо, що 3D координати точок об’єкта відомі. Тоді, знаючи елементи матриці P , які стосуються даного проективного перетворення, точки просторового об’єкта можна зв’язати з відповідними їм координатами на знімку в виді (10)
(11)
Очевидно, що невідомий масштабний множник визначається як
а власне координати зображення об’єкта мають вид відношень
(12)
2.1.6. Поліноміальні перетворення
Поліноміальні рівняння використовується для того, щоб виконувати перетворення координат знімка із системи вхідного файла в систему координат трансформованого знімка. За координатами опорних точок будується математична модель трансформування знімка. В залежності від характеру спотворення знімка, кількості опорних точок і їхнього розташування для побудови рівнянь трансформації можуть застосовуватись поліноми різного порядку.
Досі ми застосовували в розгляді геометричних перетворень ідеалізовану модель камери. В дійсності формування зображень супроводжується різного роду нелінійними спотвореннями (типу оптичної дисторсії об’єктива). Приведення текучих знімків до якогось еталону в такому випадку можна здійснити лиш нелінійною функцією перетворення. Крім того, нерівномірність руху носія реєструючої камери теж приводить до геометричного спотворення знімків, які не усуваються афінним перетворенням координат точок знімка. Вихід – у застосуванні поліноміальних апроксимуючих функцій перетворення (рис.8)
13
(13)
де (x, y) - координати точок еталонного знімка, (x
, y
) - відповідні їм координати на текучому (співставлюваному) знімку.
Рис.8. Дія білінійного геометричного перетворення на вхідний знімок; параметри перетворення: 
Лінійне трансформування є простим зразком поліноміальних перетворень. Застосовуються поліноми 1-го порядку. Лінійне трансформування застосовується при перенесенні вхідного, необробленого знімка в плоску картографічну проекцію або при перетворенні із одної плоскої картографічної проекції в іншу плоску картографічну проекцію або при трансформуванні відносно малих площ знімка.
По набору опорних точок, координати яких відомі розраховується матриця трансформування, яка містить коефіцієти поліномів. Кожна опорна точка вносить свій вклад в величину поліноміальних коефіцієнтів. Матриця лінійного трансформування містить шість коефіцієнтів:
a0 |
a1 |
a2 |
b0 |
b1 |
b2 |
Наприклад, на базі цих коефіцієнтів побудуємо систему поліномів першого порядку для трансформування за трьома опорними точками зображення, заданих координатами (xi,yi):
xt1 |
a0 |
a1 x1 |
a2 y1 |
|
y |
b0 |
b1 x1 |
b2 y1 |
|
t1 |
|
|
|
|
xt 2 |
a0 |
a1 x2 |
a2 y2 |
|
y |
b0 |
b1 x2 |
b2 y2 |
(14) |
t 2 |
|
|
|
|
xt3 |
a0 |
a1 x3 |
a2 y3 |
|
y |
b0 |
b1 x3 |
b2 y3 |
|
t3 |
|
|
|
|
де xti , yti – координати трансформованого зображення; xi , yi – вхідні координати;
14
При лінійному трансформуванні відбуваються такого типу операції: масштабування, зміщення, поворот і дзеркальне відображення (рис.9).
Рис. 9. Результати операцій: 1 – вхідне зображення; 2 – масштабування по X; 3 – масштабування по Y; 4 – зсув по X; 5 – зсув по Y; 6 – поворот;
Нелінійне трансформування виконується з допомогою поліномів другого і вищих порядків і може бути використане для виправлення сильно спотворених зображень. Приклад системи рівнянь поліномів третього порядку для трансформування за однією опорною точкою, заданою координатами (x,y):
xt |
5 4x 6y 10 x2 |
5xy y2 3 x3 |
7 x2 y 11x y2 |
4 y3 |
|
|
|
|
(15) |
yt |
13 12x 4y x2 |
21xy 11 y2 x3 |
2 x2 y 5x y2 |
12 y3 |
Нижче представлені деякі приклади нелінійних трансформацій.
Рис. 10. 1 – вхідне зображення; 2,3,4.5 – результуючі зображення
При трансформуванні з допомогою поліномів, трансформаційна матриця містить для кожної з пар координат (X, Y) коефіцієнти, кількість яких визначається за формулою:
15