Visão Tridimensional Realidade Virtual Formação da Visão 3D

Preview:

Citation preview

Visão Tridimensional

Márcio Sarroglia Pinho http://www.inf.pucrs.br

Faculdade de Informática da PUCRS Grupo de Realidade Virtual

http://grv.inf.pucrs.br

Realidade Virtual

Formação da Visão 3D

w  Informações Visuais Mono-oculares w  Informações Visuais Oculo-motoras w  Informações Visuais Estereoscópicas w Parallax de Movimento

Formação da Visão 3D

w  Informações Visuais Mono-oculares w Perspectiva Linear w Oclusão w Variação de Texturas w Atenuação Atmosférica w Variação da reflexão da luz w Tamanho e conhecimento prévio do objeto

Formação da Visão 3D

w  Perspectiva Linear w  Objetos distantes

aparecem menores w  (X3, Y3, Z3)

w  X2 = X3/Z3 w  Y2 = Y3/Z3

Formação da Visão 3D

w Perspectiva Linear

Formação da Visão 3D

w  Interposição ou oclusão w  Produz os conceitos de

“atrás” e “na frente”

w  Variação de texturas w  Texturas próximas

aparecem melhor definidas

Formação da Visão 3D

Sombras w Facilitam a determinação das posições

relativas do objetos

Formação da Visão 3D

w Atenuação atmosférica w Tamanho e conhecimento prévio do objeto w Variação da reflexão da luz

Formação da Visão 3D

w  Informações Visuais Oculo-motoras w Acomodação

w Mudança do formato das lentes - foco

w Vergência w Ângulo de giro dos olhos w Objetos distantes – ângulo grande w Objetos próximos – ângulo pequeno

Formação da Visão 3D

w  Informações Visuais Estereoscópicas

Imagem Olho Esquerdo

Imagem Olho Direito

Imagem Olho Esquerdo

Imagem Olho Direito

Formação da Visão 3D

Tela

Tela

Imagem OE

Imagem OD

Imagem formada no cérebro

Imagem OE

Imagem OD

Imagem formada no cérebro

Formação da Visão 3D

w Parallax de Movimento w Objetos mais próximos movem-se mais rápido w Muito útil nos casos onde o observador move a

cabeça

Dispositivos de Geração de Imagens 3D

Polarização Passiva

Dispositivos de Geração de Imagens 3D

w Polarização Passiva - Dois Projetores w Precisa de alinhamento dos projetores w Óculos sem bateria

Dispositivos de Geração de Imagens 3D

w Stereo Glasses/Shutter Glasses w Usa um monitor convencional w Exibe a cada instante a imagem para um dos

olhos w Exibe imagem do olho ESQUERDO bloqueia o olho

DIREITO w Exibe imagem do olho DIREITO bloqueia o olho

ESQUERDO

Dispositivos de Geração de Imagens 3D

w Stereo Glasses / Shutter Glasses w Precisa de sincronismo w Óculos com bateria w 1 projetor

Dispositivos de Geração de Imagens 3D

w  Stereo Glasses / Shutter Glasses w  Várias pessoas podem observar a mesma imagem w  O software gasta mais tempo pois tem que gerar 2

imagens diferentes a cada quadro w  Óculos de Cristal Líquido w  Necessita de hardware de sincronismo

Dispositivos de Geração de Imagens 3D

w Polarização Ativa – no projetor w 1 Projetor w Óculos sem bateria

Dispositivos de Geração de Imagens 3D

w Polarização Ativa w RealD – Cinemas – No projetor w Samsung – no óculos w LG – na tela

Dispositivos de Geração de Imagens 3D

w  Surround-Screen Project-Based

w  Cave, Rave

Dispositivos de Geração de Imagens 3D

Anáglifos Entrelaçado

Dispositivos de Geração de Imagens 3D

w Capacetes de RV w HMD - Head Mounted Display w Duas telas, uma para cada olho w Comuns em laboratórios de pesquisa e em

ambientes de jogos

Oculus Rift Iglasses Sony Morpheus

Dispositivos de Geração de Imagens 3D

Google Cardboard Durovis Dive

R$ 200,00

FOV2GO Viewer Google Daydream View

http://vr.google.com/

Dispositivos de Geração de Imagens 3D

Monitor Auto-Estéreo – Lenticular Sem Óculos

Requer o correto posicionamento do observador

Dispositivos de Geração de Imagens 3D

Permite mais de um observador

Monitor Auto-Estéreo – Lenticular Sem Óculos

3dfusion.com

FIM

Dispositivos de Geração de Imagens 3D

w Exibição em múltiplas telas

Geração da Imagem em Estéreo

Zelle, 2004

Geração da Imagem em Estéreo

Geração da Imagem em Estéreo

Cálculo do View Frustum

Cálculo do View Frustum

Divisão do View Frustum

Divisão do View Frustum

Near = 1; // definido na aplicação Far = 100; // definido na aplicação

// Calcula os limites horizontais do View Frustum Left = -Near * tan(ViewAngleRad/2); Right = Near * tan(ViewAngleRad/2);

// Calcula os limites verticais do View Frustum

Bottom = -Near * tan(ViewAngleRad/2); Top = Near * tan(ViewAngleRad/2);

// Calcula a largura e a altura de cada janela

TileWidth = (Right - Left)/3; TileHeight = (Top - Bottom)/2;

// Seta o Frustum de cada janela

if (glutGetWindow()==jan1)// Inferior Esquerda glFrustum(Left, Left+TileWidth,

Bottom, Bottom+TileHeight, Near, Far);

Recommended