Processing math: 6%

Cursos / Redes de Computadores / Matemática Aplicada / Aula

arrow_back Aula 10 - Aplicações da Matemática na Computação

Saída - Como os computadores nos apresentam resultados? - pt.2

A matriz de transformação que usamos é um exemplo de uma matriz de rotação, que de forma genérica é apresentada da seguinte forma:

[cos(θ)sen(θ)sen(θ)cos(θ)]

onde θ é o ângulo que queremos rotacionar, no sentido anti-horário, o elemento no plano cartesiano. Caso desejássemos rotacionar no sentido horário, usaríamos a matriz

\left[ \begin{array}{cc|c} \text{cos}(\theta)& -sen(\theta)\\ sen(\theta)& cos(\theta) \end{array} \right].

Além da rotação, temos também matrizes específicas para a translação:

\underbrace{[1 \ \ 2]}_{\text{Posição original do vetor} } + \underbrace{[Tx \ \ Ty]}_{\text{Tranlação do Vetor}} = \underbrace{[1 + Tx \ \ 2 + Ty]}_{\text{Vetor transladado}}

onde Tx e Ty é o quanto queremos mover o vetor no plano na escala de X e de Y respectivamente. E de escala:

\underbrace{[1 \ \ 2]}_{\text{Posição original do vetor}} ⋅ \underbrace{\left[ \begin{array}{cc|c} Ex & 0\\ 0 & Ey \end{array} \right]}_{\text{Escala do vetor}} = \underbrace{[1 ⋅ Ex + 0 \ \ 2 ⋅ Ey + 0]}_{\text{Vetor escalado}}

onde Ex e Ey é o quanto queremos redimensionar o vetor no plano na escala de X e de Y respectivamente. A seguir, veremos alguns exemplos de translação e escala no gráfico utilizando o nosso vetor v⃗ como vetor original.

Pense agora que esse ponto extremo do vetor corresponde a um pixel da imagem e que essas transformações devem ser realizadas em cada pixel. Em alguns casos, como a redução ou aumento da imagem, sem deformação, a mesma transformação é aplicada a todos os pixels, aproximando ou distanciando cada pixel da origem de maneira uniforme. Para isso, usamos o produto escalar (verifique multiplicando o vetor v⃗ por um valor escalar k qualquer) . Em outros, queremos deformar a imagem e aplicamos outras transformações ou mesmo transformações diferentes a pixels diferentes.

play_circle_filled
Vídeo 03 - Transformações Lineares - pt. 1

OBS: No ponto de vista da álgebra linear, uma matriz de translação não é uma transformação linear. Porém, as demais transformações citadas (rotação e escalas de ampliação ou redução) são sim transformações lineares. É importante ressaltar que isso não diminui em nada a importância das matrizes de translação nas aplicações que vimos aqui.

play_circle_filled
Vídeo 04 - Transformações Lineares - pt. 2

Mostramos aqui exemplos no espaço vetorial de 2 dimensões, mas todas essas representações e transformações podem ser estendidas para um espaço de 3 ou mais dimensões, para elementos 3D como polígonos e esferas. Como vivemos em um mundo de 3 dimensões, dimensões maiores que essa geralmente não são utilizadas em representações de imagens, mas na análise de outros tipos de dados que possuem mais dimensões. Essas transformações lineares são a base de todos os programas de modelagem de objetos 2D e 3D, desde programas como o Paint, CorelDraw, Photoshop, passando pelo AutoCad, 3DStudioMax até os programas profissionais que os grandes estúdios usam para fazer seus filmes de animação e efeitos especiais.

Versão 5.3 - Todos os Direitos reservados