340 likes | 461 Views
Visão Computacional Shape from Shading e Fotométrico Eséreo. http://www.dca.ufrn.br/~lmarcos/courses/visao. Gradiente 2D. Na prática, uma aproximação. P0(x0,y0). P1(x1,y1). Gradiente de superfícies. Vetor (p,q) tal que:. Normal. p. p. f. q. x. f. q. y. Shape from X.
E N D
Visão ComputacionalShape from Shading e Fotométrico Eséreo http://www.dca.ufrn.br/~lmarcos/courses/visao
Na prática, uma aproximação P0(x0,y0) P1(x1,y1)
Gradiente de superfícies • Vetor (p,q) tal que: Normal p p f q x f q y
Shape from X • X = motion (movimento) • X = shading (sombreamento) • X = textura (regiões com textura uniforme) • X = line-drawing • X = fotométrico estéreo • X = estéreo
Relaxação • Inicializa orientação para cada elemento (aos seus píxels na imagem baseado na intensidade) • Orientação dos vizinhos é “relaxada” umas contra as outras até que cada uma convirja par auma orientação única
Shape from shading • Estimar a forma, dada apenas uma imagem Luz Observador N i e n0
Funções de refletividade • Considere uma fonte de luz distante • Considere os ângulos i (incidente), e (emissor) e g (fase) na figura anterior • Reflectância de uma superfície é a fração do fluxo de energia incidente refletido em uma dada direção • Formalmente, a função de refletividade é: onde L é radiância que sai e E o fluxo incidente • A quantidade de interesse é a irradiância da imagem, dada por: L = r dE
Função de refletividade • Consideremos funções de reflexão mais simples, lambertianas, proporcional apenas ao cosseno do ângulo de incidência da luz • Consideremos a função de refletividade relacionada ao gradiente da superfície, medido em relação a um sistema de coordenadas orientado no observador • Conceito de espaço-gradiente é essencial
O espaço-gradiente • Refere-se à orientação física da superfície, não da intensidade local, não confundir com gradiente da intensidade • Espaço gradiente é o espaço bidimensional da inclinação das superfícies da cena • É definido, para uma superfície expressa por –z=f(x,y) como o vetor (p,q):
O espaço-gradiente • Qualquer plano na imagem pode ser expresso em termos de seu gradiente • Equação geral do plano é: Ax+By+Cz+D=0 • Então: • da equação anterior: -z = px +qy+K • Espaço gradiente é o espaço vetorial (p,q) 2D • Gradiente perpendicular ao eixo ótico é (0,0)
Gradiente de superfícies • Vetor (p,q) tal que: Normal p p f q x f q y
Espaço gradiente (,0) (0,0) (0,) (0,-) (-,0) Direção atan2(q,p) é a direção de mudança mais rápida da profundidade da superfície à medida que x e y mudam. é a taxa de variação.
Mapa de reflectância • O mapa de reflectância R(p,q) representa esta variação de brilho percebido com a orientação da superfície • R(p,q) dá a radiância da cena como uma função do gradiente da superfície • R(p,q) é usualmente mostrado como contornos de radiância constante da cena (curvas de nível ou de mesma intensidade)
Casos importantes • Superfície lambertiana, como observador e fonte de luz na mesma direção (i=e) • Superfície lambertiana possui intensidade constante para ângulos de iluminação constantes • Ângulos constantes ocorrem a círculos concêntricos • Superfícies mais brilhantes são as iluminadas na direção normal, de frente para o observador, portanto de gradientes (0,0).
Mapa de Reflectância • Neste caso, ângulo incidente e de emissão são os mesmos (fonte perto do observador) • Olhando no plano (x,y), significa um vetor para a fonte de luz de (0,0,-1) • Em um dado ponto (p,q) no espaço gradiente, a normal à superfície é (p,q,-1) • R = r0 cos i, onde r0é uma constante de proporcionalidade R a radiância no sistema de coordenadas com origem no observador
Mapa de reflectância • Seja ns e n vetores unitários na direção da fonte e normal à superfície, respectivamente • Desde que cos i = ns . n, então: • Então cos i determina o brilho na imagem e seu gráfico determina o espaço gradiente da imagem, visto anteriormente
Mapa de reflectância • No caso de direção de iluminação qualquer seja ela dada por (ps, qs, -1), tome o produto vetorial entre esta direção e direção da normal à superfície: R = r0ns .n • ou • O ângulo de fase g é constante ao longo do espaço-gradiente, desde que se use projeção ortográfica (observador longe da cena) e luz longe da cena
Shape from shading • Informação local ajuda a determinar orientação da superfície • Suponha uma estimação da orientação da superfície num certo ponto, dada por (p(x,y),q(x,y)) • Se a normal não estiver precisa, a equação I(x,y)=R(p,q) estará com um certo erro • Parece razoável encontrar p e q que minimizem a diferença (I-R)2 • Outro requerimento é que p e q variem de forma suave, que pode ser medido pelas derivadas parciais quadráticas (px2, py2, qx2, qy2)
Shape from shading • Para uma superfície suave, ambos termos devem ser pequenos; o objetivo é minimizar o erro num ponto: E(x,y)=[I(x,y) - (px2+py2+qx2+qy2)] • Onde o multiplicador de Lagrange incorpora a restrição de suavidade.
Shape from shading • Diferenciando E(x,y) com relação a p e q, e aproximando as derivadas numericamente • onde , e
Shape from shading (algoritmo) • Inicialize p0(x,y) e q0(x,y) (nas bordas); • k=0; n=100; • while (k++<n || Emax<Emin) • compute E, para todos os pontos e tome o máximo deles como Emax
Processo iterativo • Resultado mapa de normais ou diagrama de agulhas • Em cada posição, vetor normal indica a direção da normal à superfície.
Problemas • Alguns casos, mais de uma solução • Dependente do tipo de iluminação • Bordas complicam • Necessidade de inicialização (n0)
Estéreo fotométrico • Equação de reflectância restringe a possível orientação da superfície ao resultado do mapa de reflectância • Usando mais de uma fonte, pode-se determinar a orientação de forma única • Cada luz dá uma contribuição diferente a um mesmo ponto na cena (proporcional à radiância) f(x). • Se a reflectância não é conhecida, três equações são necessárias para determinar a reflectância, junto com a normal (unitária).
N Estéreo fotométrico • Variação da posição de iluminação Luz Luz Observador Observador N
Photometrico Stereo • Seja nk (k=1,2,3) o vetor posição de cada fonte de luz, então: Ik(x,y) = r0(nk . n) • I é intensidade normalizada. Em forma matricial, fica: I= r0 N n • onde I = [I1(x,y), I2(x,y), I3(x,y)]T • n11n12 n13 • e N= n21n22 n23 • n31n32 n33
Fotométrico Estéreo • I=fc, onde c é a constante de normalização apropriada • Se c não for conhecida, pode ser assumida como parte de r0, sem afetar o cálculo da normal • Se as 3 fontes não forem coplanares, a matriz N possui uma inversa. • Basta resolver para r0 e n, usando a equação: Ik(x,y) = r0(nk . n)
Estéreo fotométrico • , • mas p1 = p2 e q1 = q2 • ps1 e ps2são conhecidos, portanto, é possível encontrar uma solução