36
Kató Zoltán: Ipari Képfeldolgozás 7. Regisztráció Kató Zoltán Képfeldolgozás és Számítógépes Grafika tanszék SZTE (http://www.inf.u-szeged.hu/~kato/teaching/ )

7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

7. Regisztráció

Kató Zoltán

Képfeldolgozás és Számítógépes Grafika tanszék

SZTE

(http://www.inf.u-szeged.hu/~kato/teaching/)

Page 2: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Kép mozaik

• Nagyobb látószög érhető el

Nagylátószögű optika fokozott torzítás

Több kamera képének összeillesztésével kép mozaik

• Általában akkor állítható elő geometriailag helyes

mozaik, ha a kamera középpontok egybeesnek.

2

Page 3: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

SÍK ALAKZAT MOZAIKOZÁSA

EGY SÍKBA ESŐ KÉPSÍKOKKAL

3

Page 4: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Síkmozaik

• Síkról készült képek, képsík párhuzamos az objektummal

• nincs torzítás

• képsíkok egy síkba esnek

• Képek között részleges átfedés van Merev test

transzformációval összeilleszthetők a képek

– Forgatás R – EltolásT

4

1. kép 2. kép

Mozaik

Page 5: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

1. lépés: pontmegfeleltetés

5

P1 Q1

P2 Q2

.

.

.

PN QN

A megfeleltetett pontok

ugyanazon 3D pont képei az

1. és a 2. képen.

TRQPii :..1 Ni

Page 6: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

TRQPii :..1 Ni

2. lépés: R,T meghatározása

• 3 DOF: θ, Tx, Ty

3 lineárisan független egyenlet 2 pontpár

• A pont megfeleltetések nem tökéletesek Hiba a pont koordinátában LSE

Hibás megfeleltetések (kilógó adatok) RANSAC

• A direkt megoldás nem alkalmas ezeknek a hibáknak a kezelésére

6

y

x

T

TT

JJIR01

10,)sin()cos(

)cos()sin(

)sin()cos(

TRQPii :..1 Ni

Page 7: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

LSE megoldás

• Az eredeti egyenlet helyett minimalizáljuk a négyzetes hibát (SSE) A geometriai hibát az eredeti és transzformált pont euklideszi

távolságával mérjük (ha pontos a R és T, akkor ez 0)

SSE R ésT függvénye

SSE minimuma adja az optimális R és T értékét:

• Ez általában nemlineáris probléma Ebben a speciális esetben azonban a megoldást zárt alakban

kapjuk!

7

Pi

RQi+T

iiPTRQ i

N

i

N

i

iSSE1

2

1

2 iiPTRQ

SSELSETR,

TR, minarg][

Page 8: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

SSE minimalizálása

• Fejtsük ki, majd egyszerűsítsük az alábbiak alapján: Forgató mátrix ortonormált: RTR=I

Mivel QTRTP skalár QTRTP = (QTRTP)T=PTRQ

Minimum ott lesz, ahol: SSE’=0 és SSE’’>0

8

N

i

TTTTTTTTTTTT

N

i

TN

i

SSE

1

11

2

][][][][]][[

][][

TTPTTPRQTTRQRQPPRQPPRQRQ

PTRQPTRQPTRQ

iiiiiiiiiiii

iiiiii

N

i

TTTSSE1

222

222 TPTRQTRQPQPiiiiii

Page 9: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Eltolás

• T szerinti derivált:

• Legyen

• T-re kapjuk:

Geometriai értelemben ez nem más mint Pi és az elforgatott Qi

súlypontja közötti eltérés

9

N

i

N

i

N1

1

)(

0)222(

ii

ii

RQPT

TPRQ

N

i

N

i NN 11

1,

1 iiQQPP

RQPT

Page 10: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Forgatás

10

• θ szerinti derivált:

0)(2

cossin

1

N

i

TSSEd

d

d

d

iiRJQPT

RJJIR

RQPT

0

11

1

][

0)(2

QJQ

iii

ii

QJQRJQPP

RJQPRQP

N

N

i

TN

i

T

N

i

T

T

QPQPJQPJQP

QPPJQPP

iiii

iiii

TN

i

TTN

i

T

B

N

i

T

A

N

i

T

NBNA

11

11

)(,)(

0)]([sin)]([cos

(sinθ,cosθ)-ra két megoldása van:

(A,B) / sqrt(A2+B2)

(-A,-B) / sqrt(A2+B2)

A helyes az, amelyikre SSE’’>0:

Expand R

0sincos

0][2

2

1

2

Q

QRJPT ii

NAB

N

i

T

22

22

cos

sin

BA

BBA

A

Page 11: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Megoldás zárt alakban

11

RQPT

22

22

cos

sin

BA

BBA

A

QPQP

JQPJQP

ii

ii

TN

i

T

TN

i

T

NB

NA

1

1

)(

)(

N

i

N

i NN 11

1,

1 iiQQPP

• Forgatás:

• Eltolás:

ahol:

01

10J

Page 12: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

SÍKMOZAIK KÉSZÍTÉSE

ÁLTALÁNOS ESETBEN

12

Page 13: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

A kamera középpont jelentősége

• Tekintsünk két kamerát azonos

vetítési középponttal:

A közös középpont miatt

• Egy 3D X pont képei között

tehát az alábbi összefüggés van:

• Azaz egy H síkhomográfia:

]C~

|[IR'K'P'],C~

|KR[IP

PKRR'K'P'-1

xKRR'K'PXKRR'K'XP'x'-1-1

-1KRR'K'H aholHx x'

Page 14: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Mozaikozás síkhomográfiával

1. Válasszunk egy referencia képet (célszerűen a középsőt)

2. Számítsuk ki a H síkhomográfiát ami egy képet a referencia képhez illeszt 1. 8 DOF legalább 4 pont

megfeleltetés

3. Transzformáljuk a képet H-val

4. Ismételjük a 2-3 lépéseket minden képre.

Page 15: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

ICP: ITERATIVE CLOSEST POINT

15

Page 16: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

ICP

• Pont megfeleltetéseket nem mindig lehet megbízhatóan

előállítani (pl. biáris képek, alapzatok)

Vegyük a legközelebbi pontot mint megfeleltetést

• 3D ponthalmazok euklideszi illesztésére szolgál

A legjobb merevtest transzformációt keressük

M az ún. model ponthalmaz.

S az ún. kép ponthalmaz.

Feltételezések:

1. NM = NS.

2. Minden Si pont megfelel egy Mi pontnak.

16

Page 17: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

ICP algoritmus

1. Párosítsunk minden Si pontot a legközelebbi Mi ponttal

2. Határozzuk meg azt a merev test transzformációt, ami

minimalizálja az átlag négyzetes hibát (MSE)

3. Alkalmazzuk a transzformációt S-re, és frissítsük az

MSE hibát

4. Iteráljuk 1-3 lépéseket, amíg nem konvergál

• Az algoritmus tulajdonságai:

Közel identikus transzformációra működik (előillesztés)

Pont párosítás számításigényes (minden pont legközelebbi

párját kell megtalálni)

Nem robosztus (kilógó adatokat nem kezel)

Viszont a transzformációt zárt formulával kapjuk

Lassú, de garantált konvergencia egy lokális minimumba

17

Page 18: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

MSE hibafüggvény

• Az illesztő transzformáció és hiba:

18

S

S

N

i

TiRi

S

N

i

ii

S

qsqRmN

qf

TranssRotmN

TRf

1

2

1

2

)(1

)(

)(1

),(

),(),,( SMdTransRot mse

Page 19: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Pont párosítás

• A legközelebbi pont nem mindig ad valódi

megfeleltetést:

• Ha elég közel van a két alakzat, akkor jól működik:

19

Page 20: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

A legközelebbi pontok

• Két pont, r1 és r2 euklideszi távolsága:

• Pont távolsága egy A ponthalmaztól:

• Vagyis a megfeleltetéseket megkapjuk:

C – legközelebbi pont

operátor

Y – az S-hez

legközelebbi pontok

halmaza

20

2

21

2

21

2

212121 )()()(),( zzyyxxrrrrd

),(min),( 1..1

1 ini

ardArd

MY

MSCY

My

ysdsmdMsdMm

),(

),(min),(

Page 21: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Megfeleltetések

• Egy párosítás előállításának komplexitása O(NM)

(legrosszabb eset)

• Ha ismert Y, akkor az illesztő transzformáció

meghatározható:

• Majd S-re alkalmazzuk a tarnszformációt és így kapjuk

az új ponthalmazt:

21

),(),,( YSdTransRot

TransSRotSnew )(

Page 22: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

ICP algoritmus

22

Init the error to ∞

Calculate correspondence

Calculate alignment

Apply alignment

Update error

If error > threshold

Y = CP(M,S),e

(rot,trans,d)

S`= rot(S)+trans

d` = d

Page 23: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

ALAKZATILLESZTÉS PONT

MEGFELELTETÉSEK NÉLKÜL

23

Page 24: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Geometriai kapcsolat alakzat képei között

24

ahol

A geometriai kapcsolat az alakzat pontjai között:

Sablon Megfigyelés (deformált)

Page 25: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Megoldás pont megfeleltetések nélkül

25

Ahol az integrál transzformációt

alkalmaztuk és a Jacobi determináns

Integráljuk ki az egyes pont

megfeleltetéseket az és

előtér régiók felett.

Et egy két nemlineáris egyenletből álló egyenletrendszer

ami nem elegendő kettőnél több paraméter meghatározására

Page 26: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

További egyenletek előállítása

26

Alapötlet: Generáljunk lineárisan független egyenleteket

nemlineáris ω függvények segítségével:

Legyen

egy nemlineáris függvényhalmaz.

Az alábbi egyenletrendszert

kapjuk:

Page 27: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

ω értelmezése

27

• Minden ω az alakzat egy konzisztens színezését adja

• Az egyenletek az ω függvény által meghatározott térfogatok egyenlőségét fejezik ki (megfelelő koordinátarendszerben)

• Az illesztő transzformáció paramétereit egyszerűen az egyenletrendszer megoldásaként kapjuk.

Trigonometrikus

polinomiális

Page 28: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Hogyan válasszuk meg az ω függvényeket?

28

• Elméleti szempontból csak triviális feltételek: Integrálható, kellően

karakterisztikus

Az egyenletek hozzájárulása az algebrai hibához kiegyensúlyozott:

– Normalizált képkoordináták

– Az ω függvények értékkészlete normalizált

• Gyakorlati szempontból fontos, hogy általános esetben egy nemlineáris integrál egyenletrendszert kell megoldani a közbülső deformációkat is ki

kell értékelni

komplexitás nagy mértékben függ a képmérettől

Page 29: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Hogyan válasszuk meg az ω függvényeket?

29

• Vajon redukálható-e az egyenletrendszerünk egy egyszerű polinim egyenletrendszerre? Ha nem kell integrálni, akkor elegendő

egyszer végigmenni a képpontokon, tehát jelentős gyorsulás érhető el (futásidő csaknem független lesz a képmérettől)

• A válasz igen, HA A transzformáció bázisfüggvények

lineáris kombinációjaként írható fel

Polinom vagy TPS transzformáció

Egyébként Taylor sorfejtéssel mindig ilyen alakra hozható

Polinomiális ω függvényeket alkalmazunk

Page 30: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

1. példa: Affin transzformáció

30

• Homogén koordinátákkal felírva:

• A tarnszformációs mátrix:

• ω függvényt alkalmazva:

Page 31: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Polinom egyenletrendszer

31

• Polinomiális esetén

• Szeparálható (x és y szerint) polinom

egyenletrendszert kapunk:

n = 1,2,3; k = 1,2

Affin deformáció polinomiális esetén standard 1.,

2. és 3. alakzatmomentumra vezet:

Page 32: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Algoritmus

32

• Közelítsük az integrált:

• Jacobi:

• Algoritmus: 1. Számoljuk ki a Jacobit

2. Az integrálok (momentumok) kiszámolásával megkapjuk az egyenletek együtthatóit

3. Oldjuk meg az egyenletrendszert

• Komplexitás: , ahol N is az alakzatokat alkotó pixelek száma

Page 33: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

2. példa: Nemlineáris transzformáció

33

• Szerelési jelek épségének

ellenőrzése autóipari

gumitömlőkön

Page 34: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Az ellenőrzés menete

• Az ellenőrzést a tömlőn lévő jel sablonképével történő

összehasonlítással oldhatjuk meg

• Ehhez szükséges a síkbeli sablon és a hengeres

tömlöfelületre nzomtatott jel képénel illesztése

• A nehézséget a szegmentálási hibák és a komplex

torzulások adják

34

Page 35: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Az összetett transzformáció

• A kontakt nyomtatás folyamata:

A sík alakzatot (lényegében a nyomtató idomot) a cső felületén

a megfelelő helyre pozicionáljuk,

Majd a cső felületére nyomjuk

• Ezt az alábbi transzformációkkal írhatjuk le:

1. egy 2D forgatás és skálázás (3 paraméter)

2. 2D3D leképezés r sugarú hengerfelületre (1

paraméter)

3. Ezután a csőről egy képet készítunk egy

projektív kamerával (6 külső paraméter + fókusztávolság)

• A sík alakzat és a csőnyomat közötti P ○ γ ○ S

transzformációnak tehát 11 paramétere van.

35

Page 36: 7. Regisztráció - u-szeged.hukato/teaching/IpariKepfeldolgozas/07-Registration.pdf · at i ás Az összetett transzformáció •A kontakt nyomtatás folyamata: A sík alakzatot

Ka

tó Z

olt

án

: Ip

ari

pfe

ldo

lgo

s

Felhasznált anyagok, szoftver

• Ronen Gvili: ICP

www.cs.tau.ac.il/~dcor/Graphics/adv-slides/ICP.ppt

• Letölthető szoftver at http://www.inf.u-

szeged.hu/~kato/software/ oldalról:

1. Nonlinear Shape Registration without Correspondences.

• JAVA code.

• Implements planar homography, extension to other nonlinear

deformations is relatively easy.

2. Affine Registration of 3D Objects.

• JAVA code with multi-threading (~0.2 sec. CPU time for

megavoxel volumes).

3. Affine Registration of Planar Shapes.

• JAVA code with a direct solver (only runs under Windows).

36