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

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

Animação por Computador Capítulo 4 Animação baseada em Interpolação

Apresentações semelhantes


Apresentação em tema: "Animação por Computador Capítulo 4 Animação baseada em Interpolação"— Transcrição da apresentação:

1 Animação por Computador Capítulo 4 Animação baseada em Interpolação
CRAb – Grupo de Computação Gráfica Departamento de Computação UFC

2 Sumário do Capítulo 4 4. Introdução 4.1 Sistema de key-frames
4.2 Linguagens de animação 4.3 Deformando objetos 4.4 Interpolando formas tridimensionais 4.5 Morphing (2D)

3 4. Introdução Metodos para especificar o movimento de objetos Técnicas
Baixo nível vs. Alto nível Esse capítulo Capítulos mais a frente 3

4 4.1 Sistema de key-frames

5 4.1 Sistema de key-frames Sistemas antigos: Key-frame (generalização)
Versão computadorizada da animação em key-frame (por desenhistas) Key-frame (generalização) Variável cujo valor é definido em um key-frame Variáveis de articulação (avars ) Exemplos de sistemas 3D: TWIXT BBOP 5

6 4.1 Sistema de key-frames Usuário pode manipular as curvas: 6

7 4.1 Sistema de key-frames Interpolação: Curva → Curva
Correspondência ponto-a-ponto em cada par de key-frame Porém nem tem o resultado desejado 7

8 4.1 Sistema de key-frames 8

9 4.1 Sistema de key-frames Interpolação: Curva → Curva
Correspondência curva-a-curva Complicado 9

10 4.1 Sistema de key-frames Interpolação: Curva → Curva Exemplo simples
10

11 4.1 Sistema de key-frames Interpolação: Exemplo simples Assume-se
Uma única curva Continua Aberta Todas as propriedades devem permanecer nos frames intermediários Bijeção P(0) deve ser interpolado com Q(0) O mesmo com o ponto final e todo o intermediário 11

12 4.1 Sistema de key-frames Interpolação: Exemplo simples
Se fossem curvas geradas com o mesmo tipo de informação de interpolação Se fossem curvas de Bezier Interpolar os pontos de controle Gerar as curvas com o mesmo número de pontos Usar interpolação ponto a ponto Pode não dar controle suficiente para o usuário 12

13 4.1 Sistema de key-frames Interpolação: Exemplo simples
Restrições de ponto em movimento (moving point constraints) Usuário pode especificar informações Correspondência entre os pontos Velocidade 13

14 4.1 Sistema de key-frames 14

15 4.2 Linguagens de animação
15

16 4.2 Linguagens de animação
São constituídas de comandos estruturados para produzir uma animação A maioria é baseada em script É composta de instruções textuais Algumas aceitavam inputs do usuário 16

17 4.2 Linguagens de animação
As primeiras linguagens de animação Usavam linguagens “puras” Ex: Fortran Não tinham suporte para animação Em cada animação nova era necessário Refazer as primitivas Estrutura de dados Transformações Renderizador 17

18 4.2 Linguagens de animação
Provêm suporte à animação Implementam API OpenGL SDL Java APIs... Ou alguma especializada para animação 18

19 4.2 Linguagens de animação
Características típicas Input/Output de objetos gráficos Estrutura de dados para representar os objetos Composição hierárquica dos objetos Variavel de tempo Funções de interpolação Funções para animar hierarquias Transformações afins Parâmetros para especificar renderização Especificar câmera Habilidade de renderizar, visualizar e guardar um ou mais frames de uma animação 19

20 4.2 Linguagens de animação
Vantagens em usar uma linguagem de animação Código A animação pode ser refeita a qualquer hora Fácil copia e transmissão Refinado interativamente Modificado incrementalmente Nova animação gerada Abordagem algorítmica para controle de movimento 20

21 4.2 Linguagens de animação
Desvantagens em usar uma linguagem de animação É necessário que o animador seja um programador Além de ter que entender de artes 21

22 4.2 Linguagens de animação
4.2.1 Orientada a artista Projetadas para facilitar o trabalho de artistas não-familiares com programação Sintaxe simples Fácil compreensão Exemplo “ANIMA II” set position <name> <x> <y> <z> at frame <number> set rotation <name> [X,Y,Z] to <angle> at frame <number> change position <name> to <x> <y> <z> from frame <number> to frame <number> change rotation <name> [X,Y,Z] by <angle> from frame <number> to frame <number> 22

23 4.2 Linguagens de animação
4.2.1 Orientada a artista Têm seu poder reduzido Por causa da eliminação das construções de linguagem Desenvolvedores começaram a adicionar laços, chamadas de procedimento, suporte a estruturas de dados... Alternativa: Adicionar suporte a objetos gráficos a linguagens como C, C++, Java, Python 23

24 4.2 Linguagens de animação
4.2.2 Com vários recursos Essencialmente interface de usuário sobre o script Intercâmbio entre: Comodidade Através da interface Poder Diretamente através do código 24

25 4.2 Linguagens de animação
4.2.2 Com vários recursos Exemplo “MEL” Linguagem interpretada Testes rápidos Execução lenta Possui Variáveis Instruções de controle Procedimentos Expressões Acesso à atributos do objeto Customizar interface com o usuário 25

26 4.2 Linguagens de animação
4.2.2 Com vários recursos Exemplo “MEL” $number_of_cubes = 10; $delta = 10; $i = 0; while($i++ < $number_of_cubes){ polyCube; scale ; $dist = $i*$delta; move$dist 0 0; } 26

27 4.2 Linguagens de animação
4.2.3 Variáveis de articulação Usada em varias linguagens Associadas com uma função Normalmente do tempo Pode ser: Um procedimento Calculado interativamente com funções de interpolação Técnica conhecida por vários nomes Track Channel Articulation Variables (avars) 27

28 4.2 Linguagens de animação
4.2.3 Variáveis de articulação Deixa o sistema interativo Deixa que funções complexas serem incorporadas Associadas a certo avar 28

29 4.2 Linguagens de animação
4.2.4 Linguagens Gráficas Representam uma animação através de uma rede dataflow 29

30 4.2 Linguagens de animação
30

31 4.2 Linguagens de animação
4.2.4 Linguagens Gráficas Objetos, operações e suas relações representados por um grafo acíclico Um nó é uma operação a ser aplicada sobre os dados recebidos do nó anterior Efetivo no desenvolvimento visual e na representação de dependências Computações Funções Valores 31

32 4.2 Linguagens de animação
4.2.5 Baseadas em Atores Orientação a objetos Atores: objetos gráficos associados a geometria, atributos e movimento Facilita a identificação de informações que variam no decorrer do tempo Pode resultar em ineficiências para simulações, onde cada objeto pode afetar todos os demais 32

33 4.3 Deformando objetos 33

34 4.3 Deformando objetos Tornar a animação mais próxima da realidade
Noção de maleabilidade e densidade Controle preciso da forma do objeto Não se tem isso em simulações físicas, além de serem mais caras Objetos com conectividade em arestas Key-frames deformados Interpolação vértice-a-vértice 34

35 4.3 Deformando objetos Perguntas Escala uniforme não muda a forma
O que são formas? Quando duas formas são diferentes? Escala uniforme não muda a forma Transformadas afins mudam, as vezes, a forma dos objetos Modela Squash and strech Movimentação (jiggling) Cisalhamento Transformações não afins Conseguem deformações mais interessantes 35

36 4.3 Deformando objetos 4.3.1 Selecionando e puxando Deformar um objeto
Vértice-a-vértice Cansativo para um grande número de vértices Conjunto de vértices Mesmo deslocamento Restritivo 36

37 4.3 Deformando objetos 4.3.1 Selecionando e puxando
Usuário escolhe um ou vários vértices semente Há uma propagação do deslocamento para seus vértices vizinhos O deslocamento é atenuado ao longo da malha Em função da distancia da semente ao vértice em questão 37

38 4.3 Deformando objetos 38

39 4.3 Deformando objetos 4.3.1 Selecionando e puxando
Função da distancia Trade off da qualidade e complexidade Tipos: Usar o menor número de arestas entre a semente e o vértice A menor distância sobre a superfície da semente até o vértice 39

40 4.3 Deformando objetos 4.3.1 Selecionando e puxando
Usuário escolhe uma função de controle de atenuação Potência Onde é o numero de arestas até a semente, é um fator de escala , atenuação linear , efeito elástico , efeito rígido 40

41 4.3 Deformando objetos 41

42 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão Método:
É definido um sistema em coordenadas locais que englobe a área do objeto a ser distorcida É feita a distorção É recalculado os vértices do objeto em coordenadas globais É uma técnica um pouco mais intuitiva do que manipular vértice por vértice 42

43 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Grade 2D) Sistema em coordenadas locais: Grade bi-dimensional alinhada com os eixos 43

44 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Grade 2D) Ponto A Coordenadas globais: ( 25.6 , 14.7 ) Coordenadas locais: ( 5.6 , 2.7 ) 44

45 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Grade 2D) Após a distorção da grade é feita uma interpolação bi-linear em relação a célula 45

46 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Grade 2D) Interpolação Bi-linear 46

47 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Grade 2D) Interpolação Bi-linear Novo ponto A 47

48 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Grade 2D) Objeto distorcido: 48

49 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Distorção por polyline) Sistema em coordenadas locais: Polyline Linhas de fronteiras Em cada junção dos seguimentos de reta é feito uma linha de interseção Nos extremos da polyline é feito uma linha perpendicular ao último segmento de reta Servem para localizar o segmento de reta mais próximo de cada vértice do objeto 49

50 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Distorção por polyline) 50

51 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Distorção por polyline) Mapeamento Cada vértice tem que saber: A semi-reta mais próxima (L2) A distância do ponto à semi-reta (d) A posição relativa (r) 51

52 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Distorção por polyline) 52

53 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Distorção por polyline) Após a deformação da polyline Reposicionamento Uma linha imaginaria é traçada paralela a L2 a uma distancia d O novo ponto será colocado nesta linha com a proporção r 53

54 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Distorção por polyline) 54

55 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Aplica uma matriz 3x3 de transformação , em função do vértice, Objeto inicial: 55

56 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Afunilar 56

57 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Torcer 57

58 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Curvar 58

59 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Curvar 59

60 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Curvar 60

61 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Observação As funções podem ser diferentes, depende do efeito desejado 61

62 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Combinações 62

63 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Deformação global) Combinações 63

64 4.3 Deformando objetos 64

65 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Deformar um objeto Criar um sistema de coordenadas local Deformar o sistema local Mais fácil e mais intuitivo Mapear a deformação para o sistema de coordenadas global 65

66 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Extensão da técnica de Deformação em grade 2D Interpolação de ordem maior Uma grade de pontos de controle é superposto ao objeto 66

67 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Passos Determinar as coordenadas locais Determinar as coordenadas de cada vértice do objeto em relação ao sistema de coordenadas da grade Manipular a grade Mapear os vértices de volta à grade deformada Usa interpolação cúbica (Bezier) 67

68 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Mapear vértices Definir sistema de coordenadas local Frame de referência: (Po, S, T, U) (S, T, U) não são necessariamente ortogonais 68

69 4.3 Deformando objetos 69

70 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Mapear vértices Encontra as coordenadas do ponto nesse frame Coordenadas estarão no intervalo (0,1) Ponto no espaço global 70

71 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Novas coordenadas dos vértices do objeto Modificar as coordenadas dos vértices dos objetos 71

72 4.3 Deformando objetos 72

73 4.3 Deformando objetos 73

74 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Continuidade C¹ Pode ser o btida entre duas grades de FFD Forçar os pontos de controle adjacentes para serem colineares 74

75 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Free-form Deformation) Outros tipos de grades 75

76 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (FFDs Compostos) Sequênciais Quebrar a deformação em pedaços Mais fácil que criar apenas uma grade com a deformação final desejada 76

77 4.3 Deformando objetos 77

78 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (FFDs Compostos) Hierárquicos Algumas grades podem modificar apenas a posição de alguns vértices Permite maior controle em certas partes do objeto sendo deformado 78

79 4.3 Deformando objetos 79

80 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (FFDs Animados) Métodos: Objeto atravessar um FFD Animar os pontos de controle de um FFD 80

81 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (FFDs Animados) Ferramentas de deformação Composição de uma grade inicial com uma grade final 81

82 4.3 Deformando objetos 82

83 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (FFDs Animados) Movendo a ferramenta Move a ferramenta de deformação ao longo do objeto, deformando seus vértices Bom para animações que fluem através do objeto 83

84 4.3 Deformando objetos 84

85 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (FFDs Animados) Movendo o objeto Objeto atravessa a grade do FFD 85

86 4.3 Deformando objetos 86

87 4.3 Deformando objetos 87

88 4.3 Deformando objetos 88

89 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Animando os pontos de controle do FFD) Métodos: Animação por key-frame Baseado em simulação física 89

90 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Animando os pontos de controle do FFD) Animando a forma humana Técnica 1: artístico Vértices da grade localizadas em relação a um esqueleto usado para mover a figura Os vértices da grade são reposicionados de acordo com o esqueleto A pele do humano move-se em função do FFD 90

91 4.3 Deformando objetos 91

92 4.3 Deformando objetos Tirado de: “Fast Volume-Preserving Free Form Deformation Using Multi-Level Optimization” - ACM Solid Modelling ‘99 92

93 4.3 Deformando objetos Tirado de: “Fast Volume-Preserving Free Form Deformation Using Multi-Level Optimization” - ACM Solid Modelling ‘99 93

94 4.3 Deformando objetos Tirado de: “Fast Volume-Preserving Free Form Deformation Using Multi-Level Optimization” - ACM Solid Modelling ‘99 94

95 4.3 Deformando objetos 4.3.2 Deformando um espaço de imersão (Animando os pontos de controle do FFD) Animando a forma humana Técnica 2: baseado fisicamente A grade é modelada com Molas Amortecedores Pontos de massa Assim pode responder sofrer consequências da gravidade e dos movimentos cinemáticos O centro da grade é fixa ao esqueleto 95

96 4.4 Interpolando formas tridimensionais
96

97 4.4 Interpolando formas tridimensionais
Interpolação de formas Modificar um objeto em outro Efeito muito útil Técnicas ainda em desenvolvimento para formas arbitrárias Duas categorias Baseadas em superfície Baseadas em volume 97

98 4.4 Interpolando formas tridimensionais
Interpolação de superfícies Representação dos contornos dos objetos Modificação de um ou dos dois objetos Casamento entre as topologias vértice-aresta Interpolação entre os vértices dos objetos Restrições nos tipos de objetos manipulados Número de buracos 98

99 4.4 Interpolando formas tridimensionais
Interpolação de volumes Considera os volumes entre os objetos Mistura os dois objetos Menos sensitivos a diferentes topologias Requer representação do volume Computacionalmente intensivos Conectividade geralmente não considerada Informações importantes em animações são perdidas Técnicas não discutidas no livro 99

100 4.4 Interpolando formas tridimensionais
Termos Objeto Entidade com geometria 3D de superfície Forma Conjunto de pontos que define a superfície Espaço de objeto Modelo Qualquer descrição completa da forma de um objeto Um objeto pode ter diferentes modelos que descrevem sua forma 100

101 4.4 Interpolando formas tridimensionais
Termos Topologia Dois significados Distintos pelo contexto 1º significado: Matemática tradicional Conectividade da superfície de um objeto Número de buracos Número de corpos separados 101

102 4.4 Interpolando formas tridimensionais
Termos Topologia Equivalência topológica (homomorfismo) Objetos com mesma topologia Mapeamento entre os pontos das superfícies Contínuo, inversível e um para um Genus Número de buracos Ou passagens pelo objeto 102

103 4.4 Interpolando formas tridimensionais
Termos Topologia Dois significados Distintos pelo contexto 2º significado: Computação gráfica Conectividade vértice/aresta/face Equivalência topológica Objetos iguais exceto pelas coordenadas Geometrias diferentes 103

104 4.4 Interpolando formas tridimensionais
Transformação de formas Dois subproblemas Problema da correspondência Mapeamento de um vértice de um objeto para um vértice de outro objeto Vértice ou outro elemento geométrico Problema da interpolação Sequência de objetos intermediários Representam visualmente a transformação Relação entre problemas Interpolação entre objetos correspondentes 104

105 4.4 Interpolando formas tridimensionais
4.4.1 Adaptando Topologias Caso mais simples Duas formas Mesma topologia Vértice-aresta Não existe o problema da correspondência Problema da interpolação Interpolação das posições dos vértices De um objeto para o outro Usado com modificação de formas Sem modificação na topologia Free form deformation 105

106 4.4 Interpolando formas tridimensionais
4.4.2 Poliedro estrelado Dois poliedros estrelados Existe pelo menos um ponto de onde uma linha pode ser criada para qualquer ponto da superfície sem interceptá-la Kernel O conjunto de pontos que enxergam todos os pontos da superfície 106

107 4.4 Interpolando formas tridimensionais
4.4.2 Poliedro estrelado Coordenadas polares Indução de um mapeamento Superfícies são amostradas A partir de um ponto do kernel Distribuição regular de raios Objeto intermediário Vértices Interseções entre os raios e as superfícies Triângulos Vértices intermediários de raios adjacentes 107

108 4.4 Interpolando formas tridimensionais
4.4.2 Poliedro estrelado Coordenadas polares Indução de um mapeamento Superfícies são amostradas A partir de um ponto do kernel Distribuição regular de raios Objeto intermediário Vértices Interseções entre os raios e as superfícies Triângulos Vértices intermediários de raios adjacentes 108

109 4.4 Interpolando formas tridimensionais
4.4.2 Poliedro estrelado Coordenadas polares Distribuição de raios Regular (anteriormente) Entre os vértices das superfícies 109

110 4.4 Interpolando formas tridimensionais
4.4.2 Poliedro estrelado Coordenadas polares Distribuição de raios Regular (anteriormente) Entre os vértices das superfícies 110

111 4.4 Interpolando formas tridimensionais
4.4.2 Poliedro estrelado Extensão para o 3D Direta É necessário a formação das definições da superfície 111

112 4.4 Interpolando formas tridimensionais
4.4.3 Fatias axiais Eixo pelo meio do objeto Definido pelo usuário Criação das fatias (slices) Intervalos regulares ao longo do eixo Fatias perpendiculares ao eixo Devem ser polígonos estrelados Fatias correspondentes Mesmo parâmetro no eixo Vetor de orientação Perpendicular ao eixo 112

113 4.4 Interpolando formas tridimensionais
4.4.3 Fatias axiais Fatias dos objetos Interpoladas uma a uma Raios emanando do eixo e amostrados na superfície Intervalos regulares Com respeito ao vetor de orientação 113

114 4.4 Interpolando formas tridimensionais
114

115 4.4 Interpolando formas tridimensionais
4.4.3 Fatias axiais Fatias dos objetos Interpoladas uma a uma Amostragem mais densa Maior precisão Interpolação Entre pontos correspondentes Linear ou de ordem maior 115

116 4.4 Interpolando formas tridimensionais
4.4.3 Fatias axiais Fatias dos objetos 116

117 4.4 Interpolando formas tridimensionais
4.4.3 Fatias axiais Generalização Eixo central segmentado Sequência linear de segmentos de linhas adjacentes Não é possível gerar um eixo Restrição de criar polígonos estrelados Parametrização parecida Pode variar o segmento do eixo 117

118 4.4 Interpolando formas tridimensionais
118

119 4.4 Interpolando formas tridimensionais
4.4.4 Mapeamento para esfera Motivação Uso em objetos de genus 0 Natural pela parametrização Tratamento após mapeamento 119

120 4.4 Interpolando formas tridimensionais
4.4.4 Mapeamento para esfera Ideia Mapear objetos em uma esfera Métodos específicos Escolha apropriada Construir malha combinada Superconjunto Vértices Arestas Triangularizadas Originais Gerada 120

121 4.4 Interpolando formas tridimensionais
121

122 4.4 Interpolando formas tridimensionais
4.4.4 Mapeamento para esfera Algoritmo Mapear para esfera Encontrar interseções de arestas Ordenar interseções Triangularizar resultado Posições (novos vértices) Coordenadas baricêntricas 122

123 4.4 Interpolando formas tridimensionais
123

124 4.4 Interpolando formas tridimensionais
4.4.5 Subdivisão recursiva Motivação Reduzir o número de arestas Aproveitar coincidência de aresta 124

125 4.4 Interpolando formas tridimensionais
4.4.5 Subdivisão recursiva Ideia Partir cada malha Associar vértices da borda Número diferente de vértices Criar novos vértices 125

126 4.4 Interpolando formas tridimensionais
4.4.5 Subdivisão recursiva Algoritmo Para cada malha Encontrar um laço Dividir a malha em duas Ajustar número de vértices no contorno Associar vértices do contorno Aplicar recursivamente Compatibilizar caminhos 126

127 4.4 Interpolando formas tridimensionais
4.4.5 Subdivisão recursiva Algoritmo Método para escolha do contorno Não crítico Sugestão: Front Mesh e Back Mesh Método para adição de vértices Influencia na qualidade Dividir maior aresta do contorno 127

128 4.4 Interpolando formas tridimensionais
4.4.5 Subdivisão recursiva Algoritmo Compatibilizar caminho Complicado Manter associação entre vértices Pode aumentar as malhas Vértices Arestas Faces 128

129 4.4 Interpolando formas tridimensionais
129

130 4.4 Interpolando formas tridimensionais
130

131 4.4 Interpolando formas tridimensionais
131

132 4.5 Morphing (2D) 132

133 4.5 Morphing (2D) É uma técnica de posprocessamento de imagens
O usuário deve especificar elementos correspondentes nas duas imagens Controlar a transformação “Transformação” de uma imagem em outra Imagem de origem Imagem de destino 133

134 4.5 Morphing (2D) 4.5.1 Abordagem de Coordenada de Grade Ideia geral:
Tratar as imagens como texturas aplicadas sobre grades Faz-se, então, interpolação das grades Aplica-se a mistura das imagens (interpolação de cores) na grade interpolada 134

135 4.5 Morphing (2D) 135

136 4.5 Morphing (2D) Deformando a imagem de destino para a grade intermediaria Imagem de destino Interpolando a grade intermediária para o tempo T Cross-dissolve entre as duas imagens Imagem de origem Deformando a imagem de origem para a grade intermediaria 136

137 4.5 Morphing (2D) 4.5.1 Abordagem de Coordenada de Grade Algoritmo:
Gera-se grades inicial e final de pontos de controle de curvas cúbicas (CatmullRom) Para cada passo do morphing: Gera-se grade interpolada Interpolação linear dos pontos de controle Interpolação de alta ordem pode ser feita usando grades dos key-frames adjacentes Gera-se grade auxiliar com seus pontos de controle tendo X da grade inicial e Y da grade intermediária Distorce-se as imagens em X usando a grade auxiliar e, após, em Y usando a grade 137

138 4.5 Morphing (2D) 138

139 4.5 Morphing (2D) Exemplo de mapeamento de imagem na grade na coordenada X 139

140 4.5 Morphing (2D) Exemplo de mapeamento de imagem na grade na coordenada X 140

141 4.5 Morphing (2D) Exemplo de mapeamento de imagem na grade na coordenada Y 141

142 4.5 Morphing (2D) Exemplo de mapeamento de imagem na grade na coordenada Y 142

143 4.5 Morphing (2D) 4.5.1 Abordagem de Coordenada de Grade
Apos as duas imagens terem sido deformadas Cálculo das cores dos pixels da imagem interpolada: 143

144 4.5 Morphing (2D) 4.5.2 Morphing Baseado em Características
Linhas de “Características” nas imagens são demarcadas Essas linhas são interpoladas durante o morphing Para cada linha, um sistema de coordenadas local é definido para mapeamento dos pixels A influência de cada linha em um pixel é ponderada pela sua distância 144

145 4.5 Morphing (2D) 145

146 4.5 Morphing (2D) 4.5.2 Morphing Baseado em Características
Cálculo das coordenadas locais Sistema local Pixel 146

147 4.5 Morphing (2D) 4.5.2 Morphing Baseado em Características Peso
A média ponderada de cada pixel para todas as linhas é calculada para definir a nova posição pixel 147


Carregar ppt "Animação por Computador Capítulo 4 Animação baseada em Interpolação"

Apresentações semelhantes


Anúncios Google