www.dca.ufrn.br/~lmarcos/courses/visao visão computacional geometria de transformações luiz m. g....
TRANSCRIPT
![Page 1: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/1.jpg)
www.dca.ufrn.br/~lmarcos/courses/visao
Visão ComputacionalGeometria de Transformações
Luiz M. G. Gonçalves
![Page 2: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/2.jpg)
Transformações
Vetores, bases e matrizesTranslação, rotação e escalaCoordenadas homogêneasRotações e translações 3D
![Page 3: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/3.jpg)
Vetor
Entidade Física Exemplos:
Entidade Geométrica Exemplos:
![Page 4: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/4.jpg)
Vetores
Noção da Física: comprimento, direção, sentido
Exemplos: velocidade, força, deslocamento
Representação matemática: Enuplas ordenadas v = (v1,v2,…,vn)
v
u
![Page 5: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/5.jpg)
Vetores Soma, subtração e multiplicação p/
escalar Produto escalar: u.v = u1v1+u2v2+…
+unvn
Produto vetorial: Norma: ||v ||= (v1
2+v22+…+vn
2)1/2
Unitário: ||v ||= 1 Ângulo: (u,v) = acos-1[(u.v) / (||u|| ||v)] Ortogonalidade: u.v = 0 ((u,v)=90o)
v
u
0
![Page 6: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/6.jpg)
Uso de transformações
Construir modelos complexos a partir de componentes simples
Transformar coordenadas de câmera em mundo, objeto e imagem e vice-versa
Analisar efeitos de transformações rígidas e não rígidas em objetos
xo
zoyo
yc
xc
zc
xwzw
yw
yimxim
![Page 7: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/7.jpg)
Uso de transformações
Animação Variar transformações no tempo para
criar movimento
xo
zoyo
yc
xc
zc
xwzw
yw
yimxim
![Page 8: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/8.jpg)
Cinemática
![Page 9: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/9.jpg)
Combinação linearDados dois vetores v1 e v2,ande uma
distância qualquer na direção de v1 e então ande outra distância na direção de v2
O conjunto de todos os lugares (vetores, pontos) que podem ser atingidos é dado pelas combinações lineares possíveis entre v1 e v2
Um conjunto de vetores é dito linearmente independentes se nenhum deles pode ser escrito como uma combinação linear dos outros
![Page 10: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/10.jpg)
Combinação linear
V = k1V1+k2V2
v1
v2
k1V1
k2V2
V = k1V1+k2V2
![Page 11: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/11.jpg)
Independência Linear
Um conjunto de vetores é dito linearmente independente se nenhum dos vetores pode ser escrito como uma combinação linear dos outros
Exemplo de 3 vetores LI: e1 = (1,0,0)
e2 = (0,1,0)
e3 = (0,0,1)
![Page 12: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/12.jpg)
Bases vetoriaisUma base vetorial é um conjunto de
vetores linearmente independentes entre si, cuja combinação linear leva a qualquer lugar dentro do espaço, isto é, varre o espaço.
Para varrer um espaço n-dimensional, são necessários n vetores
Se a base é normalizada e os vetores mutu-amente ortogonais, ela é dita ser ortonormal
Obviamente, há muito mais que uma base possível para um dado espaço vetorial.
![Page 13: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/13.jpg)
Representação de vetores
Todo vetor tem uma representação única numa dada base Os multiplicadores pelos vetores da base são
chamados de componentes ou coordenadas Mudando a base, muda os componentes,
mas não o vetor
V= v1E1+v2E2+...+vnEn
Os vetores E1, E2, ..., En são a base
Os escalares v1, v2 , ..., vn são os componentes de v com respeito à base.
![Page 14: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/14.jpg)
Transformação Linear e AfimUma função (ou mapeamento ou
ainda transformação) F é linear se, para todos os vetores v1 e v2 e todos escalares k:
F(V1+V2) = F(V1) + F(V2)
F(kV1) = kF(V1)Qualquer mapeamento linear é
completamente especificado pelo seu efeito numa base vetorial
![Page 15: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/15.jpg)
Efeito na base
v = v1E1+ v2E2+ v3E3
F(v) = F(v1E1+v2E2+v3E3)=
= F(v1E1)+F(v2E2)+F(v3E3)= = v1F(E1) + v2F(E2)+v3F(E3)
Uma função F é afim se ela é linear mais uma translação Então a função y = mX+b não é linear,
mas é afim
![Page 16: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/16.jpg)
Transformando um vetor (f11v1+f12v2 +f13v3)E1+(f21v1+f22v2+f23v3)E2+(f31v1+f32v2+f33v3)E3
As coordenadas do vetor da base transformado (em termos dos vetores da base original):
F(E1) = f11E1 +f21E2+f31E3
F(E2) = f12E1 +f22E2+f32E3
F(E3) = f13E1 +f23E2+f33E3
O vetor geral V transformado torna-se:F(V) = v1F(E1) + v2F(E2)+v3F(E3) =v1(f11E1+f21E2+f31E3)+v2(f12E1+f22E2+f32E3)+v3(f13E1+f23E2+f33
E3)=(f11v1+f12v2 +f13v3)E1+(f21v1+f22v2+f23v3)E2+
(f31v1+f32v2+f33v3)E3
![Page 17: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/17.jpg)
Transformando um vetor
Suas coordenadas ainda em referência a E tornam-se:
v1´= f11v1 +f12v2+f13v3
v2´= f21v1+f22v2+f23v3
v3´= f31v1+f32v2+f33v3
Ou simplesmentevi = fijvj
que é a fórmula de multiplicação matricial
![Page 18: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/18.jpg)
Multiplicação de matrizes!
Uma matriz F de dimensões nxn representa uma função linear em n dimensões A i-ésima coluna mostra o que a função
faz ao vetor de base correspondenteTransformação é uma combinação
linear das colunas de F Primeiro componente do vetor de
entrada escala a primeira coluna da matriz
acumula no vetor de saída repete para cada coluna e componente
![Page 19: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/19.jpg)
Exemplo: ACHANDO A MATRIZ
F:R2->R2: (x, y) -> (2x, 3y)E1 = (1,0), E2 = (0,1)
F(E1) = (2, 0)
F(E2) =(0,3)
Em forma matricial: 2 0 X 0 3 YF:R2->R2: (x, y) -> (2x+y, 3y+x)
![Page 20: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/20.jpg)
Multiplicação matricial
Usualmente calcula-se de modo diferente faça o produto interno da coluna i da
matriz com o vetor de entrada para conseguir componente i do vetor de saída:
v1´ f11 f12 f13 v1
v2´ = f21 f22 f23 v2
v3´ f31 f32 f33 v3
![Page 21: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/21.jpg)
![Page 22: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/22.jpg)
Translação
![Page 23: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/23.jpg)
Rotação
![Page 24: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/24.jpg)
Matriz de rotação possui vetores unitários
![Page 25: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/25.jpg)
Representação da rotação
![Page 26: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/26.jpg)
Rotação em torno de Z
![Page 27: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/27.jpg)
Exemplo de rotação
![Page 28: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/28.jpg)
![Page 29: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/29.jpg)
![Page 30: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/30.jpg)
![Page 31: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/31.jpg)
Relações espaciais
Representação em relação a um frame (sistema de coordenadas)
P (X,Y,Z)
![Page 32: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/32.jpg)
Orientação
![Page 33: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/33.jpg)
Orientação
![Page 34: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/34.jpg)
Matriz de orientação
![Page 35: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/35.jpg)
Propriedade elementar (unitária)
![Page 36: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/36.jpg)
Transformações Homogêneas
Juntando posição e orientação
![Page 37: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/37.jpg)
Juntando orientação e posição
![Page 38: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/38.jpg)
Coordenadas Homogêneas
![Page 39: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/39.jpg)
Juntar rotação e translação
![Page 40: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/40.jpg)
Coordenadas homogêneas
Translação não é linear. Como representar em forma de matriz? Adiciona uma coordenada extra a cada vetor
x´ 1 0 0 tx xy´ = 0 1 0 ty yz´ 0 0 1 tz z1 0 0 0 1 1
Coordenada extra é chamada de homogênea (ou w)
Transformação denominada homogênea
![Page 41: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/41.jpg)
Transformação Homogênea
![Page 42: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/42.jpg)
![Page 43: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/43.jpg)
Transformações Homogêneas 3D
São muito similar ao 2DCoordenadas homogêneas requerem
matrizes 4x4Matrizes de translação e escala são:
![Page 44: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/44.jpg)
Representação da rotaçãoRepresentação da rotaçao é mais complexa
![Page 45: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/45.jpg)
Rotação 3D
Rotação é um pouco mais complicado
Sistema de coordenadas de mão direita ou esquerda afeta direção de rotação
Sistema de mão direita
Sistema de mão esquerda
x
y
z
x
y z
![Page 46: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/46.jpg)
Produto Cruzado (Vetorial)
Eixo Z é determinado a partir dos eixos X e Y pelo produto vetorial
Produto vetorial segue regra da mão direita em um sistema de mão direita e regra da mão esquerda em um sistema de mão esquerda
Estaremos trabalhando quase sempre com sistema de mão direita
![Page 47: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/47.jpg)
Matriz dual
Se v = (x,y,z) é um vetor, a matriz v*=é denominada matriz dual de v
Produto vetorial: v x a = v* a Ajuda a definir rotações em torno de eixo
arbitrário Velociade angular e matriz dual vezes
derivadas Interpretação geométrica de v* a:
Projeta a num plano normal a v Rotaciona de 90º em torno de v Vetor resultante é perpendicular a v e a a
![Page 48: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/48.jpg)
Ângulos de Euler para rotações 3D
Ângulos de Euler: 3 rotações em torno de cada eixo, porém: Interpolação de ângulos para animação
produz movimentos bizarros Rotações dependem da ordem, e não
existem convenções para que ordem usar
Usado amplamente, devido à simplicidade
Conhecidos como row, pitch, yaw
![Page 49: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/49.jpg)
Roll (x), Pitch (y), Yaw (z)
![Page 50: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/50.jpg)
Rotação em torno de cada eixo
![Page 51: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/51.jpg)
Generalização da Rotação
![Page 52: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/52.jpg)
Rotação arbitrária
Dado um eixo ou direção (x,y,z) e um ângulo , a matriz de rotação fica:
X
Y
Z
(x,y,z)
(Px’,Py’,Pz’)
(Px,Py,Pz)
-
![Page 53: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/53.jpg)
Exemplo de rotação + translação
![Page 54: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/54.jpg)
Exemplo: continuação
![Page 55: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/55.jpg)
Problema da comutatividade
Translação seguida de rotação é diferente de rotação seguida de translação
![Page 56: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/56.jpg)
Transformações em cadeia
![Page 57: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/57.jpg)
Seqüência de transformações
Mesmo conjunto aplicado a vários pontos
Calcular e combinar matrizes é rápido
Reduzir a seqüência numa única matriz
![Page 58: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/58.jpg)
Colapsando transformações
Considere a seqüência p’=ABCDpMultiplicação não é comutativa (ordem)Multiplicação é associativa
Da esquerda para a direita (pré-multiplicação)
Direita para a esquerda (pós-multiplicação)ABCD = (((AB)C)D) = (A(B(CD)))Troque cada matriz pelo produto do par
![Page 59: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/59.jpg)
Colapsando transformações
Mesmo resultado:
![Page 60: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/60.jpg)
Convenção vetor-coluna
Transformação por matriz x vetor
A(B(C(D(x)))) = produto matriz-vetor dado pela seqüência ABCDx
![Page 61: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/61.jpg)
Convenção vetor-linha
Transformação por vetor x matriz
Todas as matrizes devem ser transpostas
Seqüência ABCDx transposta é xtDtCtBtAt
OpenGL usa esta regra
![Page 62: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/62.jpg)
![Page 63: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/63.jpg)
Invertendo a transf. homogênea
![Page 64: Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves](https://reader036.vdocuments.pub/reader036/viewer/2022062512/552fc111497959413d8c6047/html5/thumbnails/64.jpg)