A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves.

Apresentações semelhantes


Apresentação em tema: "Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves."— Transcrição da apresentação:

1 Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves

2 Transformações F Vetores, bases e matrizes F Translação, rotação e escala F Coordenadas homogêneas F Rotações e translações 3D

3 Vetor F Entidade Física wExemplos: F Entidade Geométrica wExemplos:

4 Vetores F Noção da Física: wcomprimento, direção, sentido F Exemplos: wvelocidade, força, deslocamento F Representação matemática: wEnuplas ordenadas v = (v 1,v 2,…,v n ) v u

5 Vetores wSoma, subtração e multiplicação p/ escalar wProduto escalar: u.v = u 1 v 1 +u 2 v 2 +…+u n v n wProduto vetorial: wNorma: ||v ||= (v 1 2 +v 2 2 +…+v n 2 ) 1/2 wUnitário: ||v ||= 1 wÂngulo: (u,v) = acos -1 [(u.v) / (||u|| ||v)] wOrtogonalidade: u.v = 0 ( (u,v)=90 o ) v u 0

6 Uso de transformações F Construir modelos complexos a partir de componentes simples F Transformar coordenadas de câmera em mundo, objeto e imagem e vice-versa F Analisar efeitos de transformações rígidas e não rígidas em objetos xoxo zozo yoyo ycyc xcxc zczc xwxw zwzw ywyw y im x im

7 Uso de transformações F Animação wVariar transformações no tempo para criar movimento xoxo zozo yoyo ycyc xcxc zczc xwxw zwzw ywyw y im x im

8 Cinemática

9 Combinação linear F Dados dois vetores v 1 e v 2,ande uma distância qualquer na direção de v 1 e então ande outra distância na direção de v 2 F O conjunto de todos os lugares (vetores, pontos) que podem ser atingidos é dado pelas combinações lineares possíveis entre v 1 e v 2 F Um conjunto de vetores é dito linearmente independentes se nenhum deles pode ser escrito como uma combinação linear dos outros

10 Combinação linear F V = k 1 V 1 +k 2 V 2 v1v1 v2v2 k1V1k1V1 k2V2k2V2 V = k 1 V 1 +k 2 V 2

11 Independência Linear F Um conjunto de vetores é dito linearmente independente se nenhum dos vetores pode ser escrito como uma combinação linear dos outros F Exemplo de 3 vetores LI: we 1 = (1,0,0) we 2 = (0,1,0) we 3 = (0,0,1)

12 Bases vetoriais F Uma 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. F Para varrer um espaço n-dimensional, são necessários n vetores F Se a base é normalizada e os vetores mutu- amente ortogonais, ela é dita ser ortonormal F Obviamente, há muito mais que uma base possível para um dado espaço vetorial.

13 Representação de vetores F Todo vetor tem uma representação única numa dada base wOs multiplicadores pelos vetores da base são chamados de componentes ou coordenadas wMudando a base, muda os componentes, mas não o vetor V= v 1 E 1 +v 2 E v n E n F Os vetores E 1, E 2,..., E n são a base F Os escalares v 1, v 2,..., v n são os componentes de v com respeito à base.

14 Transformação Linear e Afim F Uma função (ou mapeamento ou ainda transformação) F é linear se, para todos os vetores v 1 e v 2 e todos escalares k: F(V 1 +V 2 ) = F(V 1 ) + F(V 2 ) F(kV 1 ) = kF(V 1 ) F Qualquer mapeamento linear é completamente especificado pelo seu efeito numa base vetorial

15 Efeito na base v = v 1 E 1 + v 2 E 2+ v 3 E 3 F(v) = F(v 1 E 1 +v 2 E 2+ v 3 E 3 )= = F(v 1 E 1 )+F(v 2 E 2 )+F(v 3 E 3 )= = v 1 F(E 1 ) + v 2 F(E 2 )+v 3 F(E 3 ) F Uma função F é afim se ela é linear mais uma translação wEntão a função y = mX+b não é linear, mas é afim

16 Transformando um vetor (f 11 v 1 +f 12 v 2 +f 13 v 3 )E 1 +(f 21 v 1 +f 22 v 2 +f 23 v 3 )E 2 +(f 31 v 1 +f 32 v 2 +f 33 v 3 )E 3 F As coordenadas do vetor da base transformado (em termos dos vetores da base original): F(E 1 ) = f 11 E 1 +f 21 E 2 +f 31 E 3 F(E 2 ) = f 12 E 1 +f 22 E 2 +f 32 E 3 F(E 3 ) = f 13 E 1 +f 23 E 2 +f 33 E 3 F O vetor geral V transformado torna-se: F(V) = v 1 F(E 1 ) + v 2 F(E 2 )+v 3 F(E 3 ) = v 1 (f 11 E 1 +f 21 E 2 +f 31 E 3 )+v 2 (f 12 E 1 +f 22 E 2 +f 32 E 3 )+v 3 (f 13 E 1 +f 23 E 2 +f 33 E 3 )= (f 11 v 1 +f 12 v 2 +f 13 v 3 )E 1 +(f 21 v 1 +f 22 v 2 +f 23 v 3 )E 2 +(f 31 v 1 +f 32 v 2 +f 33 v 3 )E 3

17 Transformando um vetor F Suas coordenadas ainda em referência a E tornam-se: v 1 ´ = f 11 v 1 +f 12 v 2 +f 13 v 3 v 2 ´ = f 21 v 1 +f 22 v 2 +f 23 v 3 v 3 ´ = f 31 v 1 +f 32 v 2 +f 33 v 3 F Ou simplesmente v i = f ij v j que é a fórmula de multiplicação matricial

18 Multiplicação de matrizes! F Uma matriz F de dimensões nxn representa uma função linear em n dimensões wA i-ésima coluna mostra o que a função faz ao vetor de base correspondente F Transformação é uma combinação linear das colunas de F wPrimeiro componente do vetor de entrada escala a primeira coluna da matriz wacumula no vetor de saída wrepete para cada coluna e componente

19 Exemplo: ACHANDO A MATRIZ F F:R2->R2: (x, y) -> (2x, 3y) F E 1 = (1,0), E 2 = (0,1) F F(E 1 ) = (2, 0) F F(E 2 ) =(0,3) F Em forma matricial: 2 0 X F 0 3 Y F F:R2->R2: (x, y) -> (2x+y, 3y+x)

20 Multiplicação matricial F Usualmente calcula-se de modo diferente wfaça o produto interno da coluna i da matriz com o vetor de entrada para conseguir componente i do vetor de saída: v 1 ´ f 11 f 12 f 13 v 1 v 2 ´ = f 21 f 22 f 23 v 2 v 3 ´ f 31 f 32 f 33 v 3

21

22 Translação

23 Rotação

24 Matriz de rotação possui vetores unitários

25 Representação da rotação

26 Rotação em torno de Z

27 Exemplo de rotação

28

29

30

31 Relações espaciais F Representação em relação a um frame (sistema de coordenadas) F P (X,Y,Z)

32 Orientação

33

34 Matriz de orientação

35 Propriedade elementar (unitária)

36 Transformações Homogêneas F Juntando posição e orientação

37 Juntando orientação e posição

38 Coordenadas Homogêneas

39 Juntar rotação e translação

40 Coordenadas homogêneas F Translação não é linear. Como representar em forma de matriz? wAdiciona uma coordenada extra a cada vetor x ´ 100t x x y ´ =0 10t y y z´0 01t z z F Coordenada extra é chamada de homogênea (ou w) F Transformação denominada homogênea

41 Transformação Homogênea

42

43 Transformações Homogêneas 3D F São muito similar ao 2D F Coordenadas homogêneas requerem matrizes 4x4 F Matrizes de translação e escala são:

44 Representação da rotação Representação da rotaçao é mais complexa

45 Rotação 3D F Rotação é um pouco mais complicado F Sistema de coordenadas de mão direita ou esquerda afeta direção de rotação F Sistema de mão direita F Sistema de mão esquerda x y z x y z

46 Produto Cruzado (Vetorial) F Eixo Z é determinado a partir dos eixos X e Y pelo produto vetorial F 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 F Estaremos trabalhando quase sempre com sistema de mão direita

47 Matriz dual F Se v = (x,y,z) é um vetor, a matriz v*= é denominada matriz dual de v F Produto vetorial: v x a = v* a wAjuda a definir rotações em torno de eixo arbitrário wVelociade angular e matriz dual vezes derivadas F Interpretação geométrica de v* a: wProjeta a num plano normal a v wRotaciona de 90º em torno de v wVetor resultante é perpendicular a v e a a

48 Ângulos de Euler para rotações 3D F Ângulos de Euler: 3 rotações em torno de cada eixo, porém: wInterpolação de ângulos para animação produz movimentos bizarros wRotações dependem da ordem, e não existem convenções para que ordem usar F Usado amplamente, devido à simplicidade F Conhecidos como row, pitch, yaw

49 Roll (x), Pitch (y), Yaw (z)

50 Rotação em torno de cada eixo

51 Generalização da Rotação

52 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 ) -

53 Exemplo de rotação + translação

54 Exemplo: continuação

55 Problema da comutatividade F Translação seguida de rotação é diferente de rotação seguida de translação

56 Transformações em cadeia

57 Seqüência de transformações F Mesmo conjunto aplicado a vários pontos F Calcular e combinar matrizes é rápido F Reduzir a seqüência numa única matriz

58 Colapsando transformações F Considere a seqüência p=ABCDp F Multiplicação não é comutativa (ordem) F Multiplicação é associativa wDa esquerda para a direita (pré-multiplicação) wDireita para a esquerda (pós-multiplicação) F ABCD = (((AB)C)D) = (A(B(CD))) F Troque cada matriz pelo produto do par

59 Colapsando transformações F Mesmo resultado:

60 Convenção vetor-coluna F Transformação por matriz x vetor F A(B(C(D(x)))) = produto matriz-vetor dado pela seqüência ABCDx

61 Convenção vetor-linha F Transformação por vetor x matriz F Todas as matrizes devem ser transpostas F Seqüência ABCDx transposta é x t D t C t B t A t F OpenGL usa esta regra

62

63 Invertendo a transf. homogênea

64


Carregar ppt "Www.dca.ufrn.br/~lmarcos/courses/visao Visão Computacional Geometria de Transformações Luiz M. G. Gonçalves."

Apresentações semelhantes


Anúncios Google