Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Конспект лекцій 2 (Перетворення цифрових зображень)

.pdf
Скачиваний:
12
Добавлен:
28.06.2022
Размер:
649.1 Кб
Скачать

Проективні перетворення загалом не зберігають паралельності ліній. Властивістю, яка зберігається при проективному перетворенні, є колінеарність точок: три точки, що лежать на одній прямій (тобто є колінеарними), після перетворення залишаються на одній прямій (див.рис.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

t

1

 

N 2 *

i

(16)

 

 

i

1

 

де N – кількість коефіцієнтів трансформаційної матриці; t – порядок поліному;

Чим вищим є порядок поліномів трансформування, тим більш складні спотворення можуть бути виправлені. Однак з підвищенням порядку поліномів буде потрібно більшу кількість опорних точок. Наприклад, при трансформуванні першого порядку (лінійному), поліноми для X та Y описують рівняння площини. А площина однозначно визначається трьома опорними точками. Аналогічно, при трансформуванні другого порядку, поліноми для X і Y описують рівняння параболоїда, який однозначно описують шість точок. Проаналізуємо поліноми третього порядку.

xt

5 4x 6y 10 x2

5xy y2 3 x3

7 x2 y 11x y2

4 y3

yt

13 12x 4y x2

21xy 11 y2 x3

2 x2 y 5x y2

12 y3

Тут x та y – відомі координати поточної опорної точки. А коефіцієнти трансформування a0 a9 , b0 b9 (всього 20 коефіцієнтів) - невідомі величини. Для

вирішення такої системи потрібні не менше 20 рівнянь (по два на кожну опорну точку). Отже, при трансформуванні поліномами третього порядку мінімальна кількість опорних точок - 10.

В загальному випадку мінімальна кількість опорних точок, необхідна для виконання трансформування визначається за формулою:

N min

((t 1) * (t

2))

(17)

 

 

2

 

 

 

 

де Nmin – мінімальна кількість опорних точок; t – порядок полінома;

Розглянемо одномірний випадок – зміна координати X на вхідному і трансформованому знімках. По осях графіка відкладаємо значення Xc (вхідні координати X) і Xr (опорні координати X).

На правому графіку показана наступна ситуація. Потрібне трансформування неможливо виконати з допомогою поліномів першого порядку, бо він задає рівняння прямої лінії і опорна точка номер 2 (вісь Xc) не буде трансформована правильно. Необхідне застосування поліномів більш високого порядку, що й відображено на рисунку нижче.

16

Тепер поліном другого порядку справляється із ситуацією до тих пір, поки не буде ускладнена картина додаванням четвертої точки. Це ускладнення приводить до необхідності використання піліномів третього порядку, що відображено на рисунках нижче.

Проте, при трансформуванні може статись так, що на трансформованому зображенні зміниться порядок слідування пікселів. Видно, що порядок точок 3 і 4 на трансформованому зображенні порушений. Такі явища на зображеннях називаються

артефактами.

Точність трансформування описує средня квадратична помилка (СКП, RMSE). Це евклідова відстань між заданим місцеположенням опорної точки на вхідному знімку і дійсним місцеположенням тієї ж точки після геометричного трансформування. СКП для даної точки розраховується за формулою:

RMSError

 

2

2

(xt

xi) ( yt yi)

(18)

 

де xi , yi – вхідні координати; xt , yt

–трансформовані координати.

СКП виражається в одиницях вхідної координатної системи. Наприклад, якщо опорний знімок записано в файловій системі координат, то СКП виражатиметься в пікселях. Наприклад, СКП = 2 означає, що точка на референц-зображенні відрізняється на 2 пікселя від точки на трансформованому знімку.

СКП по певному напрямку (по осі X або Y) називається нев’язкою (residual). Наприклад нев’язка по X даної точки – це відстань по осі X між вхідною і трансформованою X-координатами точки. СКП кожної точки виражається через нев’язки:

Ri XRi2 YRi2 (19)

де Ri – СКП точки з індексом i; XRi , YR i – X та Y – нев’язки точки з індексом i;

Загальну СКП для всіх точок виражають через нев’язки окремих точок:

17

R x

де

1

 

n

 

 

1

 

n

 

 

 

 

 

2

 

 

2

T XRi2 YRi2

(20)

 

 

XRi

R y

 

 

YRi

n i

n i

1

 

 

1

 

 

 

 

R x , R y – узагальнена СКП по X і Y;

T – загальна планова СКП; n –кількість опорних точок;

XRi , YR i – X – нев’язка і Y – нев’язка точки з індексом i;

Вклад(Contribution) точки з індексом i в СКП: E i

Ri

(21)

T

 

 

де Ei - вклад точки з індексом i в СКП; T -загальна СКП; Ri -СКП точки з індексом i.

Ці оцінки є підставою для відбракування точок, де значення СКП недопустимо велике і, можливо, вибір нових точок, зміна їхнього взаємного розташування, вибору більш складної моделі геометричного трансформування.

18