Fotografia Panorâmica Imersiva 360x180° com Software Livre

De Cartola

Edição feita às 10h58min de 4 de fevereiro de 2015 por Cartola (Discussão | contribs)

Fotografia e Vídeo > Fotografia Panorâmica Imersiva

Este material está em constante evolução. Caso não encontre o que procura aqui ou tenha outras dúvidas ou críticas entre em contato pelo email Image:meuend.png

Tabela de conteúdo

A fotografia panorâmica surgiu logo depois da invenção da fotografia. A fotografia panorâmica imersiva, também chamada de fotografia 360x180º, fotografia panorâmica esférica ou fullsphere já existe desde o final da década de 90. Mesmo entre fotógrafos profissionais ainda é um tema relativamente desconhecido, sendo hoje muito difundido pelo google street view. Veja aqui como é viável fazer esse tipo de trabalho usando software livre e chegando a resultados profissionais.

Objetivos

Este material procura atingir os seguintes objetivos principais:

  • apresentar como montar panoramas simples,
  • apresentar como fazer fotografias panorâmicas imersivas.

A partir desses dois objetivos, aparentemente simples, entraremos em diversas complexidades e estenderemos o assunto, entrando em alguns outros nichos de conhecimento que poderiam ser assuntos separados, mas serão correlacionados ao tema.

Há inúmeras ferramentas distintas que podem fazer o que vou sugerir ao longo do texto. Meu objetivo aqui é sugerir um caminho possível. Além de ferramentas distintas há também maneiras diferentes de se chegar a um mesmo resultado e minha ideia é mostrar uma ou poucas alternativas.

Alguns objetivos adicionais:

  • exemplificar outros tipos de uso das ferramentas usadas para panorâmicas
  • cobrir o maior número possível de situações de uso
  • apresentar conceitos com exemplos práticos passo a passo

O que você já deve saber

Dou mais detalhes na próxima seção, mas em resumo você já deve saber:

  • fotografar,
  • lidar com o computador:
    • boa habilidade com o mouse,
    • conceito de janelas,
    • conceito de menus e abas.
  • usar um editor avançado de imagens como GIMP (http://www.gimp.org) ou Photoshop para a etapa de ajustes finais

Sobre o autor

Engenheiro eletrônico pela UFRJ (1995). Especialista em sistemas Unix e software livre com experiência em infra-estrutura de TIC, desenvolvimento de sistemas e gestão de projetos. Organização da BSDCon Brasil (2003), criação da BSD em Revista, site de notícias www.myfreebsd.com.br e cursos de FreeBSD. Fotografa desde 1985, construiu ampliadores, tripés, máquinas fotográficas caseiras, cabeças de tripé para panorâmicas. Faz panorâmicas desde 2002 tendo se especializado em 2010. Mantém um blog de fotos 360 e criou o PanoFórum, primeiro fórum em língua portuguesa dedicado à fotografia panorâmica.

Palestras realizadas sobre panorâmicas: GnuGraf, SINDPD-RJ, Latinoware, SERPRO, UFRRJ, Colégio Graham Bell.

Sobre este material

Algumas notas relevantes, de leitura opcional, antes de iniciar o assunto propriamente dito.

Você já deve saber fotografar

Este material não pretende passar conceitos de fotografia. Serão usados termos como distância focal, profundidade de campo, abertura de diafragma, sensor APS-C e outros. Na medida do possível colocarei links para uma definição dos termos. Assumo que você já sabe determinar a exposição correta para uma cena e que entenda os comandos de sua máquina. Algumas técnicas de tratamento e fotografia, como HDR, fusão de exposições e pilha de foco serão um pouco mais detalhados por serem assuntos muitas vezes desconhecidos por alguns fotógrafos, principalmente amadores e também em função da proposta de uso de ferramentas não comerciais para realizar essas tarefas.

Este é um material puramente técnico

Não tenho nenhuma pretensão de ensinar ou influenciar o olhar, a arte da fotografia de quem vier a ler esse texto. Comentarei minha visão sobre alguns pontos que diferenciam panorâmicas, principalmente as da esfera visual completa, mas a arte é sua e continuará sendo. Nem sequer me considero um bom fotógrafo, mas creio ser um bom técnico no assunto. O material não é destinado a leigos nem em fotografia nem em computadores. Um certo grau de intimidade com o computador será necessário em vários pontos.

Tá com pressa? Pode ser que esteja no lugar errado

Minha intenção aqui não é fazer um guia rápido e sim um guia completo. Há muitos conceitos, softwares e equipamentos envolvidos, principalmente no objetivo final do material, que é chegar à fotografia panorâmica imersiva 360x180º. Acho que tenho uma experiência razoável com a confecção desse tipo de fotos e em geral não se leva menos do que umas quatro horas para tirar, montar, finalizar e publicar uma foto dessas. Aprender a fazer todas as etapas, portanto, pode levar umas boas horas também. Minha sugestão é que para ler este material você reserve algum tempo para leitura e prática.

É necessário ter certa intimidade com o computador

Embora a intenção seja fazer um guia completo, não incluirei informática básica. Esse material não será adequado a usuários iniciantes em computadores. Espero que você se sinta à vontade com todos os conceitos básicos de arquivos e pastas, janelas, uso do mouse, seus diversos botões e algumas teclas de atalho do teclado, bem como o uso conjugado do teclado e mouse.

Para tirar proveito completo é bom também saber executar comandos numa janela de comandos, seja lá qual for seu sistema. Na medida do possível os exemplos se adequarão a Windows e sistemas tipo Unix, como Linux, MacOS, BSDs e outros.

Por que software livre?

A opção pelo software livre é muito pessoal. Há softwares comerciais bons que dão conta do recado. Não necessariamente um ou outro é melhor ou pior, mais simples ou complexo. Alguns comerciais inclusive são muito parecidos com os que apresentarei aqui. O uso do software livre, na minha visão, tem o preço bom (gratuito) e evitam que você cometa o crime de pirataria, tão comum no Brasil quando se trata de software. Se você é profissional talvez prefira usar um software comercial para ter um suporte formal e "garantido" caso necessário. Para isso procurarei comentar sempre sobre as alternativas de softwares comerciais equivalentes, mas não farei os passos dos tutoriais neles, até por que na maioria dos casos não os possuo.

Há motivos um pouco mais profundos e ideológicos também. O software livre evita a saída de divisas do país, mantém mais dinheiro por aqui, para a economia local. O software livre permite que você use seu dinheiro para pagar por serviços, provavelmente prestados por um agente local e não por um sujeito do outro lado do mundo, movimentando a economia de outro país. Não que isso seja necessariamente ruim, mas é muito melhor se seu dinheiro circular por aqui, pense um pouco. Outra ideologia que tem nisso é que o trabalho de um consultor que está ali dispendendo tempo para te ajudar realmente tem algum valor na minha opinião, enquanto que a cópia simples de um software não exigiu nenhum esforço de quem o desenvolveu, o que acaba permitindo que alguém concentre muita renda, muito além do que o que merecia pelo esforço dispendido no desenvolvimento. Alguns softwares comerciais, como o PTGui e o krpano, tem até licenças muito justas, por preços bem razoáveis, mas tem toda essa questão filosófica por trás. Se quiser entender um pouco mais leia aqui um artigo sobre por que não se deveria cobrar por softwares.

Por que compartilho isso?

Essa explicação também está relacionada à minha experiência com software livre. Em princípio fotografia para mim é um hobby. Não que eu não goste de dinheiro, mas tenho um emprego fixo e algum tempo livre, no qual, dentre outras coisas, brinco de fotografar. Se surgir algum trabalho decorrente disso, ótimo, estou à disposição, dentro do meu tempo livre, é só entrar em contato. Enquanto isso vou curtindo também o compartilhamento do conhecimento. Essa lógica é parte da cultura do software livre. Você usa programas de graça e contribui também para a comunidade. Todos saem ganhando. A ideia de quem faz esse tipo de software é ganhar na prestação de serviço, na sua dedicação de horas, e não em licenças de software ou na venda passiva de material. O conhecimento é publicado numa via de mão dupla. Tudo o que ensinarei aqui aprendi pela Internet e essa é uma maneira de retribuir. Se quiser entender um pouco mais essa lógica leia o texto “A Catedral e o Bazar”. É um bom começo.

Introdução

Para uma visão geral do processo, o que é uma panorâmica imersiva, possibilidades do que fazer com esse tipo de técnica e uma demonstração veja o vídeo de uma palestra que ministrei no FISL em 2014:

O que é uma panorâmica?

Todo mundo sabe o que é uma foto panorâmica, não? Pelo menos eu não me lembro de alguém perguntando o que é isso. Apesar disso, chegar a uma definição exata é um pouco difícil. Vejamos algumas possibilidades de definição:

  • É uma imagem que estende o ângulo de visão normal?
  • É uma imagem que estende o ângulo de visão normal da lente da câmera?
  • É uma imagem montada a partir de outras imagens?

O ângulo de visão humano alcança algo em torno de 160º por 75º, considerando aí a visão periférica, onde em geral não vemos a imagem com boa definição. O valor preciso desse ângulo varia dependendo da fonte, mas provavelmente esse ângulo também varia um pouquinho de pessoa para pessoa, então o importante é a ordem de grandeza. Na Wikipédia, no verbete "Fotografia panorâmica" diz:

"Não há nenhuma definição formal para o ponto em que "ângulo largo" termina e "panorâmica" começa, mas uma imagem verdadeiramente panorâmica deve capturar um campo de vista comparável (ou maior do que) a do olho humano, que é de 160° por 75°, e deve fazer assim ao manter os detalhes precisos através do retrato inteiro."

Eu diria que se uma foto tiver esse ângulo já é uma panorâmica, até por que a foto provavelmente será toda nítida, enquanto nosso olho tem boa parte dessa área como visão periférica.

Existe ainda a questão da proporção. Seria um pouco estranho chamar uma imagem quadrada de panorâmica? Bem, algumas projeções de panorâmicas da esfera completa podem ficar quadradas e apresentam ainda assim 360º de ângulo de visão. Um exemplo disso é o formato Mini Mundo (Little Planet).

A origem da palavra panorama é grega: παν (pan) e ὅραμα (órama). Em resumo quer dizer "vista total" ou "toda a visão", o que nos leva a uma definição mais associada ao ângulo de visão do que a proporção ou ao fato da imagem ter sido ou não composta por várias fotos.

Além da definição precisa ser pouco clara, a detecção posterior também pode ser complicada. Olhando para uma imagem finalizada eu diria que a detecção mais intuitiva passa mais pelas proporções do que pelo ângulo. Muitas vezes é difícil dizer qual o ângulo fotografado só olhando para uma foto.

Veja as duas fotos abaixo:

A primeira foi feita com a junção de 6 imagens usando uma câmera digital básica, uma point-and-shoot Olympus C-120. A segunda foi feita com uma lente 6.5mm numa DSLR com sensor APS-C. Foi feita apenas uma única foto, que foi recortada tirando principalmente as partes de cima e de baixo, deixando o aspecto panorâmico. Essa lente atinge um ângulo de visão de quase 180 graus, que é maior que o ângulo final conseguido na primeira.

Eu diria que as duas são panorâmicas, mas penso que a maioria das pessoas diria que a primeira não é. Veja que ela tem um ângulo provavelmente perto de uns 150º, dificilmente atingido por lentes comuns. As distorções das linhas, deixando a imagem com aspecto parecido com o das lentes olho-de-peixe, evidenciam também o ângulo largo.

Um pouco de história

Alguns registros que podem ser encontrados pela internet contam que as primeiras fotografias panorâmicas surgiram praticamente após a invenção da própria fotografia em 1839. As primeiras panorâmicas foram feitas colocando-se dois ou mais daguerreótipos lado a lado, compondo a imagem.

Um panorama de 1851 mostrando São Francisco do bairro de Rincon Hill pelo fotógrafo Martin Behrmanx. Acredita-se que o panorama inicialmente tinha onze pratos, mas os daguerreótipos originais não existem mais.

As primeiras fotografias panorâmicas de que se tem notícia foram feitas na década de 1840.

Uma das primeiras patentes de câmera para panorâmicas foi submetida por Joseph Puchberger na Austria em 1843. Era de uma câmera com uma manivela, com campo de visão de 150° e distância focal de 8 polegadas que sensibilizava um Daguerreótipo relativamente largo de até 24 polegadas (610mm) de comprimento. No ano seguinte Friedrich von Martens na Alemanha lançou um modelo que fez mais sucesso e era tecnicamente superior. Sua câmera, a Megaskop, trouxe uma novidade crucial, um conjunto de engrenagens que propiciou uma velocidade de giro relativamente estável. Com isso a câmera conseguia expor corretamente o material fotográfico, evitando velocidades irregulares que criavam desequilíbrios na exposição, causando defeitos no resultado final. Martens arranjou um emprego com Lerebours, um fotógrafo e editor. É possível que a invenção de Martens tenha sido aperfeiçoada antes da patente de Puchberger. Por conta do alto custo do material e da dificuldade técnica de expor adequadamente os pratos, panoramas Daguerreótipos são bastante raros, especialmente aqueles feitos em partes a partir de vários pratos.

Sua primeira panorâmica

Vamos começar a entrar na prática com um exemplo bem simples. Digamos que temos uma cena que queremos fotografar, mas que o objeto desejado não cabe numa foto só e não dá pra chegar mais para trás para encaixá-lo. Isso pode acontecer num cômodo da sua casa ou numa vista da praia. Algumas máquinas hoje em dia resolvem isso sozinhas. Conheço alguns modelos da Sony, como a HX100V ou TX100V, que têm o que a Sony chama de Sweep Panorama. Eu traduziria isso para “Panorama em Varredura”. Eles automatizaram diretamente na máquina o que eu mostrarei aqui.

Com qualquer máquina é possível resolver a questão proposta e criar uma imagem cobrindo todo o ângulo desejado. Para isso é necessário tirar várias fotos, mas é bom já tomar alguns cuidados para facilitar e melhorar o resultado final:

  1. Tente não girar a máquina em torno de você e sim em torno dela mesma.
  2. Procure, claro, manter o alinhamento da máquina no giro
  3. Cada imagem deve se sobrepor com a adjacente em cerca de 30% (um terço) da foto

A sobreposição vai viabilizar a costura das imagens, dando insumos para que os pontos em comum entre cada duas imagens sejam encontrados e o alinhamento e distorção correto seja feito nas fotos, permitindo a perfeita junção. Comentando cada recomendação:

  1. O giro em torno da máquina é menos importante por agora, mas em algumas situações, principalmente se houver alguns objetos perto da máquina e outros longe, pode causar problemas na junção. Mais adiante falarei mais sobre isso.
  2. O alinhamento é bom, pois se numa imagem o horizonte está no meio da foto, noutra está mais acima e noutra mais abaixo, ao juntar teremos buracos em cima e embaixo e a imagem final terá que ter um corte maior, ficando possivelmente mais fina do que precisava.
  3. Essa última recomendação é a mais importante. É necessário sobrepor uma parte das imagens. Não sei se alguém acharia que dá para juntar duas imagens encostando suas bordas, mas na prática isso é meio impossível. Não é tão importante que seja exatamente um terço. Pode ser mais e pode ser menos, mas se for muito pouco pode ficar difícil encontrar pontos em comum, o que é essencial para a junção.

Fotos feitas, é necessário passá-las para o computador, o que espero que você saiba fazer. Utilizaremos então a primeira e mais fundamental ferramenta apresentada aqui: o costurador, comumente chamado de stitcher, que é o termo em inglês.

A ferramenta proposta é o Hugin, que pode ser baixado diretamente de seu site oficial: http://hugin.sourceforge.net/download/

A ferramenta é multiplataforma, com versões para Mac, Windows, Linux e outros, dentre os quais o FreeBSD. Eu costumo usar no Windows XP 32 bits, Windows 7 64 bits e no FreeBSD. Baixe e instale a versão adequada ao seu computador.

Ao abrir o Hugin (faça isso, se já não o fez) a tela inicial dele tem a cara mostrada abaixo.

Na forma mais simples de uso, que pretendo mostrar neste momento, ficaremos praticamente só na primeira aba do programa, chamada “Assistente”. As outras abas tem cada uma sua função e veremos as mais relevantes no uso mais avançado, mais adiante.

Primeiro clique no botão “Carregar imagens”. Você verá uma janela para a seleção dos arquivos. Escolha suas imagens e abra as imagens.

Selecionando Imagens

Dependendo da sua máquina, você já voltará direto à tela inicial do Hugin ou não. Caso as imagens tenham sido gravadas por ela com as informações que o programa precisa, então você foi feliz e pode pular o próximo passo. Caso contrário, o Hugin lhe pedirá informações sobre sua lente, como na janela mostrada abaixo:

Janela de dados da câmera e lente

Não se preocupe se você não conhece essas informações. Se conhece, ótimo, mas um chute também vai resolver o problema. Elas são mais relevantes na criação de panoramas 360x180 graus. No caso de não saber, mantenha o tipo da lente como Normal, chute um campo de visão e uma distância focal. Deixe o multiplicador em 1 também e dê o OK.

Em seguida vem, claro, o próximo passo: “2. Alinhar...”. Clicar nesse botão vai fazer a ferramenta executar uma série de passos que podem parecer demorados, principalmente se você usou muitas imagens, mas certamente levará mais tempo realizá-los manualmente, como veremos depois, então recomendo um pouquinho de paciência.

Janela de pré-visualização rápida do panorama

A figura acima é a janela de visualização rápida de panoramas. Ela é aberta automaticamente ao final do processo de “alinhamento”, que é na verdade mais do que um simples alinhar. Basicamente o programa:

  • Encontra pontos em comum entre as imagens e linhas verticais em cada imagem
  • Reposiciona e distorce as imagens de acordo com esses pontos e linhas
  • Analisa a exposição das imagens, corrigindo se necessário
  • Auto recorta o resultado para a obtenção de uma imagem inteira

Depois desse complexo alinhamento, se tudo deu certo, então é hora de gerar o resultado final. De volta à aba Assistente do Hugin temos o botão “3. Criar panorama...”, que podemos clicar para isso.

Ao clicar, se você até agora não salvou o projeto, o programa sugere que você o faça agora. Em seguida pede o nome do arquivo de saída para gerar a imagem final. Coloque um nome sem extensão. Por padrão a imagem gerada será um TIFF com extensão .tif. Esse processamento também pode demorar um pouco, dependendo do computador que você está usando, da quantidade e tamanho das imagens do seu projeto.

A imagem final, gerada no exemplo usado nas figuras acima, é mostrado abaixo. Foi obtido com a junção de 8 fotos.

Panorama gerado com o Hugin

Possíveis Problemas e Suas Soluções

Claro que na vida nem tudo são flores, mas mesmo assim a vida é bela. No próprio exemplo acima eu tive que acertar alguns problemas para simular uma situação perfeita, que acreditem, acontece, mas não foi o caso e foi mais prático não mencionar os problemas e correções por questões didáticas. Também pelo mesmo motivo vou tentar não estender muito as possíveis complexidades aqui, mencionarei basicamente o que acho que pode acontecer nessa fase.

1. E se não forem encontrados pontos em comum?
Isso inclusive aconteceu no exemplo mostrado. Pode acontecer por motivos diversos e existem algumas alternativas para isso. Na seção Pontos de Controle é possível verificar algumas alternativas. A que sugiro para essa etapa do aprendizado é a marcação entre cada par de imagens que se sobrepõem, correspondente ao Método 2: via aba "Imagens" na referida seção.
Isso ainda pode falhar, dependendo das suas fotos ou do problema que aconteceu. A alternativa mais garantida é realmente a adição manual de pontos de controle.
Ao terminar com sucesso, seja a adição automática de pontos em imagens aos pares, seja a adição manual, retorne na aba “Assistente” e clique novamente em “2. Alinhar...”
2. E se a imagem ficar toda torta?
Depois de um primeiro alinhamento o resultado mostrado na janela “Pre-visualização rápida” pode estar meio torto, literalmente. Algo assim:
Montagem automática gerando imagem torta
Isso vai acontecer quando o Hugin não tiver conseguido encontrar linhas verticais suficientes para o alinhamento automático. É por isso que é importante definir linhas horizontais e/ou verticais quando criamos pontos de controle manualmente. Por agora o meio mais prático para corrigir isso é na própria janela de pré-visualização rápida. Alterne para a aba “Mover/arrastar”. Clique com o botão esquerdo do mouse numa imagem e arraste para ajustar. Neste caso poderíamos arrastar o meio para cima ou as pontas para baixo. As demais imagens acompanham o arrastamento, já que estão conectadas por pontos de controle. Se necessário você pode também girar uma imagem com o botão direito, clicando e arrastando. Neste caso acima isso não foi necessário.
3. E se objetos ou linhas verticais, como prédios ou postes, ficarem tortos?
No caso de objetos isolados ficarem tortos e o problema não der pra ser resolvido com a sugestão do item (2) acima, arrastando a imagem na aba "Mover/Arrastar", então não há muita escapatória além de criar pontos de controle do tipo linhas verticais. Isso será explicado mais adiante, na criação de um panorama da esfera completa. Você pode pular para essa seção ou dar uma olhada na janela do Hugin, na aba Pontos de Controle. A dica é que linhas são marcadas na mesma imagem e não entre duas imagens distintas.
4. E se o corte ficar ruim?
O corte automático as vezes não é o que você quer. Ajustar isso, porém, é bem fácil. Basta ir na aba "Cortar" na própria janela de "Pré-visualização rápida do panorama" e deslocar as linhas de corte como quiser. O retângulo mais claro, contornado de branco, é a área que ficará após o corte. Basta deslocar suas laterais com o botão esquerdo do mouse clicando e arrastando de modo a deixar o retângulo com as dimensões desejadas.
Uma dica: se quiser uma imagem com dimensões maiores pense em não recortar as áreas pretas onde tem céu ou cores facilmente preenchíveis num editor de imagens. Você pode gerar uma imagem maior e preencher esses buracos no GIMP ou Photoshop, por exemplo.
5. E se eu quiser salvar em JPG?
O formato padrão é o TIFF, mas basta alterar a opção de formato de saída na aba "Montador" do Hugin, mostrada na Figura XX. A opção "Formato" deve ser trocada para JPG e a "Qualidade", que aparecerá ao lado ao trocar de TIFF para JPG, definida. A qualidade deve variar de 0 a 100, sendo melhor quão maior for o valor. Um valor de 90 já é bom. Costumo usar 95. Claro que é fácil converter também de *.tif para *.jpg em vários editores ou conversores de imagens, mas se for fazer isso muitas vezes e quiser o resultado em JPG, então gerar direto em JPG já poupa um passo no processo.
Figura XX - Aba "Montador" do Hugin

Panorâmica Imersiva 360x180°

As panorâmicas imersivas são um pouco mais complicadas do que panorâmicas simples. Como dizem que dizia Napoleão, vamos dividir para conquistar. Eu gosto de dividir a questão nas seguintes etapas:

  1. Fotografia
  2. Montagem
  3. Ajustes pós-montagem
  4. Publicação

Os cuidados com a primeira etapa trarão mais facilidade nas etapas posteriores. Quanto mais bem feita for a fotografia, mais facilidade teremos na montagem. Quando melhor for a montagem, mais fácil será fazer ajustes depois num editor de imagens. Se você tiver sorte, inclusive, pode ser que essa terceira etapa nem seja necessária. Pessoalmente acho que nunca fiz uma foto em que não ajustei nada, a não ser que eu não olhe o resultado de perto.

Muitas vezes divido o processo em 5 etapas ao invés de quatro, colocando uma etapa de "Tratamento de Imagens" antes da montagem. Em geral prefiro tratá-las antes de montar, mas conheço muita gente que o faz depois. Trata-se de coisas como ajuste de cores, balanço de branco, combinação de exposições, HDR, tratamento de ruídos e tudo o que se pode fazer para aprimorar e corrigir uma foto comum. Tenho alguns tutoriais sobre isso a partir desta outra página por enquanto. Os artigos que já escrevi, mencionados lá embaixo nas Referências Externas também dão uma passada no assunto.

1. Fotografia: Fotografando uma Panorâmica 360x180°

Para a etapa da fotografia o mais importante é entender que é preciso girar a câmera corretamente em torno do ponto sem erro de perspectiva (SEP), mas não é só isso:

  1. é preciso fazer fotos suficientes para cobrir toda a "esfera visual";
  2. é preciso que as fotos tenham sobreposição entre si;
  3. é preciso girar a câmera em torno do ponto sem erro de perspectiva (SEP)

O que é a esfera visual?

Imagine-se dentro de uma esfera. Você pode olhar para todos os lados. A esfera visual é a esfera que cobre toda a sua visão, aparecendo em qualquer direção que você olhe. A imagem projetada nessa esfera que envolve completamente a pessoa que olhe a partir de um ponto central da mesma é a imagem da esfera visual completa, correspondente à uma panorâmica imersiva.

Esfera visual

Na figura acima é mostrada propositalmente uma esfera dividida em partes. Para cobrir essa esfera com fotos é preciso fazer várias fotos. Pra que essas fotos correspondam à imagem que uma pessoa vê numa sala, por exemplo, é preciso que as imagens correspondam às projeções da cena sobre essa esfera imaginária e para conseguir isso são necessários os 3 requisitos mencionados ali em cima. Comentando rapidamente cada um:

1. é preciso fazer fotos suficientes para cobrir toda a "esfera visual";
se faltar uma foto vai ficar um buraco na imagem final montada. Esse inclusive é um cuidado importante a ser tomado pelo fotógrafo e por isso é bom usar um método para fotografar.
2. é preciso que as fotos tenham sobreposição entre si;
sem sobreposição não é possível encontrar pontos em comum entre as imagens de modo a distorcê-las encaixá-las corretamente umas nas outras.
3. é preciso girar a câmera em torno do ponto sem erro de perspectiva (SEP)
se a câmera muda de lugar, tira uma foto correspondente à outra panosfera e pode ficar muito difícil juntar as fotos.

Os dois primeiros quesitos são mais intuitivamente entendidos. O giro no ponto correto, encontrar e usar esse ponto, porém, já são coisas um pouco mais complicadas. Pra facilitar isso lançamos mão de alguns possíveis acessórios e métodos, como tripés com cabeças especiais, prumos ou melhores práticas pros casos em que nenhum acessório for usado.

.. .. ..

No caso de uma panorâmica parcial (não da esfera visual completa), principalmente se forem feitas poucas fotos, o uso de um tripé é até dispensável. Já nas panorâmicas imersivas não só ele é muito recomendável, como o uso de uma cabeça de tripé apropriada, que permita que a máquina gire em torno do ponto sem erro de perspectiva (SEP), é importantíssimo. É possível fotografar mesmo sem tripé, usando acessórios que cumpram seu papel, como o philopod, ou mesmo só com a câmera na mão, mas quanto mais fugir do ponto de giro correto, o ponto SEP, mais trabalho terá para ajustar e corrigir erros depois. Se for iniciante pode nem conseguir montar.

Nos casos em que não usar um tripé com uma cabeça apropriada, uma lente com ângulo de visão maior, como uma olho de peixe ou uma gopro, vão ajudar, bem como a escolha da cena com menos "linhas geométricas". Essa aqui, por exemplo, foi feita na praia com uma gopro. Não usei tripé e fiz 8 fotos na horizontal mais uma pra cima e uma pra baixo. Veja a "Ficha Técnica" pra mais informações.

Resumindo
girar a câmera em torno do eixo SEP é FUNDAMENTAL e isso pode ser conseguido com o uso de um tripé com uma cabeça panorâmica multi-nível, por exemplo, e fará uma diferença ENORME na junção das imagens.

Você pode comprar uma cabeça ou fabricar a sua. Não é necessário uma obra prima de engenharia para fazê-la. Uma coisa que pode permitir uma fabricação mais simples é o conhecimento das medidas que levam ao ponto SEP. Veja aqui algumas medidas conhecidas. Veja aqui uma sugestão de como fazer. Veja também no wiki do panotools referências de fabricantes e outros modelos caseiros.

Eu já fabriquei alguns modelos. Um projeto mais simples pode ser visto aqui no meu blog, enquanto um mais elaborado é mostrado neste vídeo.

Outros acessórios
a medida que você vai se aprimorando pode querer fazer uso de outros acessórios, como:

O philopod, mencionado mais acima, pode ser um bom substituto para o tripé com a cabeça panorâmica. Trata-se basicamente de um "prumo", como os utilizados por pedreiros, de modo que ele marcará a posição da câmera apontando para um ponto fixo no chão. Se for fixado no ponto adequado da lente permitirá o giro com pouca margem de erro em relação ao ponto SEP. Com uma boa dose de treino pode se conseguir junções sem necessidade de correções na pós edição mesmo para cenas com muitas linhas geométricas.

Seu custo é muito menor, mas para que ele possa ser usado com mais frequência o ideal é usar com uma lente olho de peixe numa câmera DSLR. Os conjuntos que darão mais praticidade em seu uso são uma lente 8mm numa câmera APS-C ou fullframe. Na fullframe pode se estender a lente até 10 ou mesmo 12mm mantendo ainda 4 fotos por panorâmica.

Lentes

Vejo muitas pessoas perguntando que lente usar. De fato pode se fazer uma panorâmica da esfera visual completa com qualquer lente, mas alguma pode ser mais adequada para uma situação ou outra. Mais fundamental que a lente usada é o que comento no próximo item sobre o giro e sobreposição.

Já vi algumas pessoas pensando que uma lente olho de peixe era requisito pra fazer uma 360x180 e eu mesmo pensava isso antes de conseguir minhas primeiras, mas não é. Já ouviu falar em gigapixels? Pois é, uma foto 360x180º pode ter gigapixels, bastando que a lente usada seja fechada o suficiente.

Uma foto da qual gosto muito é a de 40 gigapixels da biblioteca de Strahov, feita em Praga, na República Tcheca. Ela bateu o recorde de fotografia indoor na época, tendo usado uma lente 70-200mm em 200mm o que propiciou a junção de quase 3.000 fotos.

Se não me engano uma câmera com algo em torno de 20 megapixels com sensor cropado (1.5 ou 1.6) e uma lente 50mm já produz uma foto que chega aos gigapixels. Seriam necessárias mais de 180 fotos pra cobrir toda a esfera visual com esse equipamento usando uma sobreposição de uns 20 ou 30% e na minha opinião fazer isso sem um tripé com cabeça apropriada seria uma missão impossível.

Pra saber o ângulo de visão de uma lente você pode usar fórmulas conhecidas. Algumas pessoas já colocaram essas formas em "calculadoras" pra facilitar nossa vida. Uma delas pode ser encontrada nesta página, parcialmente traduzida. O "Cálculo de Campo de Visão Angular" lhe dirá qual o ângulo de visão de uma lente na sua máquina e te ajudar a tomar uma decisão. Pro pessoal mais técnico, tem um programa em Python que faz o cálculo pra cabeças robotizadas. Ele vai calcular menos fotos a medida que o giro for feito fora da horizontal. Pra usar ele como parâmetro pra fotografar manualmente ou usando um rodador mecânico o mais prático é tomar o número de fotos da horizontal como o número de paradas a ser usado.

Há uma matemática simples na escolha da lente: quando menor o ângulo de visão (ou Campo de Visão ou Field of View - FOV) mais fotos serão necessárias, mais trabalho você vai ter e pode precisar de um computador mais potente. A resolução final da imagem ficará maior e isso pode ser bom e até necessário. Lentes muito abertas podem facilitar, mas vai chegar um limite em que a qualidade vai ficar pobre, pois a resolução final vai ser pequena. Eu particularmente gosto de fotos com pelo menos 12.000 x 6.000 pixels. Sites como o 360cities.net exigem pelo menos 6.000x3.000 pixels para aceitar uma panorâmica. Você pode fazer as contas e ver que lente chega nesses tamanhos em sua máquina.

Já usei muito uma Opteka 6.5mm numa câmera com sensor cropado (1.6) e achava bom. Nessas uma 8mm acho que está ótimo. Em câmeras full frame já acho ruim e tenho usado 12 a 15mm como distância focal.

Disponibilizo aqui um conjunto de imagens feitas com uma lente 6.5mm numa Canon T2i (550D), cujo fator de corte é aproximadamente 1.6. Uma boa ideia para o iniciante é baixar essas fotos para tentar montar, mas isso pularia a etapa de fotografia, da qual me propus a tratar nesse item, levando você direto para a montagem. O objetivo deve ser verificar o ângulo que ela cobre e a possibilidade de resolução final desse exemplo para te ajudar a decidir sobre lentes.

Outra questão é a qualidade ótica, mas esse aspecto vou deixar de comentar aqui pois não é específico de panorâmicas. Gráficos MTF podem te ajudar nesse aspecto.

Giro e sobreposição: quantas imagens usar

Por fim é preciso saber o quanto girar para cobrir toda a esfera. Isso vai naturalmente depender da lente que estiver usando. O meio mais fácil de fazer talvez seja olhando pelo visor. Procure sobrepor uma imagem com a sua anterior em cerca de 30% do tamanho da imagem e a partir daí defina o ângulo de giro adequado. Não é necessário ser preciso nem girar sempre com o mesmo ângulo. Basta que haja sobreposição suficiente para que pontos em comum consigam ser identificados entre as fotos. A partir desse giro, que também deve ser considerado na vertical, você definirá quantas fotos são necessárias para cobrir a esfera completa.

Em cenas com movimento você pode ainda bater várias fotos em cada posição, de modo que tenha material depois para escolher e fazer os ajustes necessários. Imagine, por exemplo, alguém apresentando algo pra uma plateia. Também seria bom fazer várias fotos do apresentador, de modo a escolher depois qual ficou com uma expressão melhor dele, que é o destaque na foto. Em situações como essa pode ser também trocada a lente num ponto de destaque para ter uma imagem melhor do objeto principal. Já fiz isso num recital de harpa, por exemplo.

Fotometria

Outro aspecto importante é a luz. Como você vai capturar em todas as direções é muito mais frequente o problema do range dinâmico.

Primeira dica importante: use o modo manual da câmera. Se sua máquina não tiver modo manual isso vai dificultar a junção das fotos.

Onde fotometrar? Se a cena permitir o ideal é que sejam feitas várias exposições. Se isso não for possível, seja por movimentos que a cena possui ou outra coisa qualquer, considere fotografar em RAW e a partir dele gerar exposições depois com + e - 2EV para melhorar a latitude da foto.

Composição da imagem

É necessário escolher o ponto de onde fotografar. Você deve pensar de modo angular. Lembre-se que você não terá um objeto enquadrado. A composição da imagem é diferente de uma fotografia comum. Se você ficar muito perto de alguma coisa, essa coisa pode ocupar quase a metade da sua foto e isso pode não ficar muito bom, a não ser que seja sua intenção explícita. Tente pensar assim, buscando o equilíbrio (ou desequilíbrio) desejado para o efeito que quer.

Fotografando sem tripé

É possível fazer uma 360 sem uma cabeça panorâmica, com qualquer máquina e qualquer lente, mas algumas dicas podem facilitar essa tentativa suicida :).

Como girar sem tripé
  1. Gire em torno da máquina e não de você, buscando assim girar em torno do ponto SEP
  2. Escolha uma cena com menos linhas humanas. Falhas de emendas em árvores, céu, água ou no meio de uma parece em geral não são percebidas.
  3. Escolha uma cena com objetos mais distantes. Os erros de perspectiva são menos relevantes em objetos mais distantes.
  4. Escolha uma lente mais aberta ou tire todo o zoom nos casos de lentes que tenham zoom. Isso vai reduzir o número de imagens necessárias, reduzindo o número de junções e de erros que poderão ocorrer.
  5. Redobre a atenção às áreas cobertas. Fotografando manualmente, principalmente com um ângulo de visão mais fechado, aumenta o risco de esquecermos de fotografar um pedacinho da cena, o que pode gerar um "buraco negro" em sua panorâmica.
  • Veja aqui uma cena fotografada com uma lente 6.5mm numa câmera com sensor com fator de corte 1.6x usando um tripé comum. Percebam que na época eu não sabia corrigir bem a visão pra baixo (nadir):
Colônia de Férias Citibankense
  • Veja aqui uma cena fotografada com uma lente 6.5mm numa câmera com sensor com fator de corte 1.6x sem sequer usar tripé. Veja que faltou uma imagem no topo da cena (zenith):
Lago do Sítio Bom
  • Nessa outra ficou tudo bom no final, mas foram necessárias umas 10h de pós edição para corrigir os erros de parallax:
Piscina no Village Rio Verde
  • Um último exemplo com a situação ideal: Cachoeira do Itapecuru
    • Fotógrafo já mais experiente :)
    • Muita natureza em volta
    • Objetos em sua maioria distantes
    • Objetos próximos se encaixaram inteiros em fotos
    • Lente muito aberta (6.5mm em sensor cropado 1.6x)

Montando uma Panorâmica Imersiva da Esfera Completa

A ferramenta que uso para montar minhas panorâmicas é o Hugin: http://hugin.sourceforge.net/ e a proposta deste material é falar sobre ela.

O Hugin é uma ferramenta gratuita, mantida nos moldes do software livre. Já existe há muitos anos, o que fez dela uma ferramenta madura e com muitas funcionalidades, e é robusta e estável. Ela é multi-plataforma, podendo ser usada num Windows, num Linux, Mac OS, FreeBSD e talvez outros sistemas operacionais. Ela é, na verdade, basicamente uma interface gráfica para outras ferramentas.

Baixe e instale a ferramenta e, com ela aberta, iniciaremos os passos a seguir.

O Hugin oferece muitas maneiras de se chegar a um resultado positivo e inclusive pode ser usado para a criação de panorâmicas em segundo plano (em batch). Mostrarei aqui alguns possíveis caminhos para chegar a um resultado final. Não necessariamente um ou outro caminho é melhor, mas pode se adaptar melhor a um tipo de uso. Sugiro que você tente entender o programa e, quem sabe, descobrir sua própria forma de utilizá-lo.

Após o final da a montagem sugerirei soluções para possíveis problemas.

Montando Automaticamente

Essa é provavelmente a forma que todos gostariam de usar sempre. Acho que só eu sou maluco de querer fazer as coisas na mão e entender o que se passa por trás. De qualquer forma nem sempre é possível ser feliz e mesmo aqueles que não querem meter a mão na massa podem ter que fazê-lo vez por outra, então não se limite a entender apenas este modo, use ele como primeira opção.

Para aqueles que realmente não querem aprender nada além do mínimo necessário, querem apenas resultado, seja por que motivo for, minha recomendação é que atentem para o processo da fotografia. A etapa da fotografia pode facilitar muito a montagem. Da escolha da lente e dos equipamentos até a adoção de um processo sempre igual, tudo lá pode refletir na montagem como uma facilidade ou uma dificuldade. Por exemplo, eu considero irrelevante e desnecessário o nivelamento da câmera durante a fotografia, mas se você usar uma cabeça panorâmica nivelada sobre um tripé, isso pode facilitar o programa a encontrar linhas verticais e entregar automaticamente seu panorama já nivelado. Outra vantagem de fotografar sempre da mesma forma é poder usar um arquivo de uma montagem anterior como modelo (template) para as próximas montagens, precisando talvez apenas de pequenos ajustes.

Bom, vamos voltar então ao tópico proposto aqui, a montagem automática. O Hugin, após a mudança de interface na versão 2013.0.0, criou um novo menu superior chamado "Interface". Nele podemos escolher entre três tipos de interface no programa: Simples, Avançada ou Especialista, como mostrado na figura abaixo.

Acima a interface "Simples" está selecionada, o que pode ser visto pela pequena bolinha branca ao lado da palavra "Simples". Nessa interface o Hugin trabalha apenas com uma janela. Nas outras duas ele usa duas janelas em geral. Nessa janela da interface simples já podemos ver três botões que nos conduzem ao fluxo de trabalho da montagem automática:

  1. Carregar imagens
  2. Alinhar
  3. Criar panorama

Vamos lá então:

  • Ao clicar em "1. Carregar imagens" a tela para carregá-las se apresenta. Selecione as imagens do seu panorama. Neste momento selecione apenas imagens feitas a partir do ponto SEP. Se você fez alguma imagem deslocando a câmera, como por exemplo para corrigir a visão nadir, não a carregue agora.
Selecionando Imagens
  • Dependendo da sua câmera você já voltará direto à tela inicial do Hugin ou não. Caso o programa encontre no EXIF as informações que precisa, então você foi feliz e pode pular o próximo passo. Caso contrário, o Hugin lhe pedirá informações sobre sua lente, como na janela mostrada abaixo:
Janela de dados da câmera e lente
  • Se você não souber essas informações, preencha com qualquer valor razoável. É possível tentar definir esses parâmetros para sua lente ou procurar esses valores pela Internet. Veja nesse tutorial como criar um arquivo com as informações para sua lente. Pode também usar esse calculador de campo de visão, no item "Angular Field of View Calculator", mas vai precisar saber o fator de corte de sua máquina.
  • Um dos atributos importantes aí é o tipo da lente. Normalmente as lentes das câmeras serão "Normal (retilinear)" ou "Olho de peixe". Neste momento não fará diferença a escolha entre os tipos de olho de peixe apresentados, basta que escolha um deles se sua lente for deste tipo.
  • Se você tiver salvo os parâmetros da lente em outro arquivo clique em "Ler parâmetros de lente..."
  • Depois de preenchida corretamente essa tela, seja lá como obteve os dados, dê "OK"
  • De volta então à tela principal, o próximo passo é clicar em "2. Alinhar..."
    • Essa etapa é crítica para o sucesso da montagem, mas algumas coisas podem falhar
    • O Hugin tentará encontrar pontos em comum entre todas as combinações de imagem e isso pode tomar tempo e precisar de muita memória
    • O problema mais comum da falta de memória é o não encontro de pontos em comum em todas as sobreposições de imagem. Se isso acontecer você terá que lançar mão de outro meio de marcação de pontos de controle, como veremos mais adiante.
    • Essa etapa fará a marcação dos pontos de controle (comuns e linhas verticais), a otimização do panorama (reposicionamento na esfera visual e distorções), possíveis correções de exposição necessárias e o corte automático, caso as imagens não cubram toda a esfera visual. Se nem todas as imagens estiverem conectadas esses passos serão interrompidos, sendo executada apenas a etapa de marcação de pontos de controle.
  • Se tudo deu certo, o panorama no formato equirretangular (vide apêndice B) será mostrado
  • Depois então é possível voltar à janela principal e clicar em "3. Criar panorama..."
  • Se você ainda não salvou o projeto, algumas versões do Hugin solicitarão que faça isso agora
  • Será criada então uma imagem TIF na mesma pasta onde o projeto foi salvo ou onde você optar por salvar
  • Essa imagem terá o formato equirretangular por padrão. Para visualizar o panorama é preciso usar uma ferramenta auxiliar ou publicar o panorama. Veja as seções "Visualização do Panorama" e "Publicando com Software Livre" para maiores detalhes.

Possíveis Problemas

Pontos de Controle não Encontrados

Um problema que pode ocorrer frequentemente em máquinas com pouca memória é o Hugin não encontrar pontos de controle entre as imagens ou encontrar grupos desconectados de imagens. Nas duas situações ele dará as devidas mensagens de erro indicando claramente isso, mas não indicando a razão. Para resolver o problema ou você bota mais memória na sua máquina, o que pode inclusive ser um problema em alguns sistemas operacionais, como no Windows XP, ou você tenta dividir as etapas.

Antes de partir pra solução, observe na janela que se abriu para mostrar o progresso da operação se você vê algo como mostrado abaixo:

 --- Analyze Images ---
 i0 : Analyzing image...
 i1 : Analyzing image...
 i2 : Analyzing image...
 i3 : Analyzing image...
 i4 : Analyzing image...
 An error happened while loading image : caught exception: bad allocation
 i5 : Analyzing image...
 An error happened while loading image : caught exception: bad allocation

A mensagem "caught exception: bad allocation" indica que houve falta de memória disponível.

Algumas maneiras de lidar com isso:

  1. Crie os pontos de controle através do uso de scripts. Isso será mostrado na próxima sessão.
  2. Crie um script para achar os "arquivos de pontos-chave" previamente (em breve)
  3. Crie pontos de controle por partes, selecionando um grupo menor de imagens por vez
    1. Ative a interface Avançada ou Especialista
    2. Vá na aba "Imagens" e clique na primeira imagem
    3. Com a tecla "Shift" apertada clique na última imagem que deseja adicionar à lista para a criação de pontos de controle
    4. Com as imagens desejadas selecionadas, clique lá embaixo no botão "Criar pontos de controle"
    5. Se a falha persistir tente novamente, com menos imagens selecionadas, até conseguir encontrar pontos de controle
    6. Em testes que fiz num Windows XP com 2GB de memória só consegui sucesso selecionando no máximo 2 imagens de 18 megapixels por vez. Ao selecionar 3 o processo já falhava.
Diferenças marcantes de luminosidade

Isso pode ocorrer por vários motivos numa montagem:

  • Tratamento fotométrico do Hugin distorceu a luminosidade - normalmente muda as cores também
  • Luminosidade da cena mudou durante a fotografia
  • Balanço de branco automático durante as fotos
  • Não uso de exposição manual, gerando fotos com exposições diferentes, seja por que a máquina não tem modo manual ou por descuido

No primeiro caso é fácil resolver, é só zerar o tratamento fotométrico do Hugin. Na aba "Imagens" da interface "Avançada" ou "Especialista":

  • Selecione todas as imagens
  • Clique com o botão direito sobre a seleção
  • Escolha a opção "Reiniciar" do menu que aparece e em seguida:
  • Escolha a opção "Reiniciar parâmetros fotométricos" no sub menu

Nos demais três casos é possível usar o GIMP para acertar isso na pós edição, opcionalmente com seleções enevoadas e ajustes de luminosidade e cor

Usando um Script para Pontos de Controle

Montando com Marcação Manual de Pontos de Controle

  • Na tela inicial clique no botão "1. Carregar Imagens..."
  • Na tela que se abriu escolha as imagens feitas para a panorâmica
  • Em seguida pode ser que se abra uma janela para a configuração da lente
    • Essa janela só se abrirá se nos arquivos de imagem as informações da lente não estiverem presentes
    • Isso acontece tipicamente em câmeras com lentes manuais ou câmeras mais amadoras, que não gravam informações EXIF da lente nos arquivos
    • Preencha com o que souber e chute valores que não souber
    • O mais importante é definir corretamente o "Tipo da Lente", que no meu caso é uma olho de peixe full-frame
    • Não fará muita diferença qual olho de peixe você escolherá e você pode ainda escolher o tipo como estereográfica
    • A escolha provavelmente deve ficar entre olho de peixe (qualquer uma) ou Retilinear, caso não seja olho de peixe
  • Em seguida abra a aba "Imagens" e veja se as fotos estão com a orientação correta

(incompleto)

Definindo Previamente as Posições Visualmente

Usando um Modelo Pré-definido

Gerando a Saída Final

Na aba "Montador" selecionamos as opções desejadas e, por fim, clicamos no botão "Montar", lá embaixo à direita. Aos poucos vou tentar comentar melhor as diversas opções desta aba, mas por enquanto segue um tutorial em vídeo mostrando como gerar e usar imagens em camadas num editor externo.

Os passos basicamente são:

  • Ir até a aba "Montador"
  • Escolher um tipo de imagem panorâmica: gerará uma única imagem de saída, correspondente a junção das imagens originais
  • Escolher um tipo de imagem remapeada: gerará uma imagem correspondente à cada imagem original, porém distorcida e pronta para compor a panorâmica
  • Vá no botão "Opções" do "nona" e desmarque "Imagens recortadas salvas"
  • Clique em "Montar"

No final você terá uma imagem panorâmica já juntada e uma imagem correspondente à cada original para poder carregar em camadas num editor, como o GIMP, e acertar, por exemplo, pessoas que se mexeram ou outros erros de montagem.

Abaixo um vídeo onde podemos ver como salvar imagens para pós edição em camadas:


Vídeo no Vimeo


Vídeo no Youtube

Considerações Gerais

Lembre-se do ponto sem parallax (NPP)
usar o NPP para o giro da câmera é fundamental para a montagem da esfera completa. Sem fazer isso, fotografando manualmente, você terá muito mais dificuldade em montar e a etapa de ajustes da imagem após a montagem se estenderá bastante.
Tente fotografar sempre da mesma forma
se você fotografar sempre da mesma forma com determinada lente isso pode permitir que você use arquivos anteriores do hugin como modelos para montar uma nova panorâmica. Quão mais precisa for a repetição da realização das fotos, mais proveito você poderá tirar disso.
Conheça bem a ferramenta
mesmo que você opte pela montagem automática ou pelo uso de modelos, pode ser que caia em situações em que tenha que intervir na montagem para garantir um bom resultado. Para isso é preciso conhecer a ferramenta, saber eliminar pontos de controle ruins, criar novos, criar linhas, máscaras, configurar o comportamento das ações. Experimente sempre, troque informações com outras pessoas e leia sempre que puder.

Vídeo Tutoriais

Visualização do Panorama

Depois de criar uma primeira versão equirretangular do panorama a primeira coisa que queremos é ver como ele ficou, interagir com ele. Pra isso existem algumas ferramentas que podem lidar diretamente com essa projeção e te permitir a imersão na imagem.

Panini

Essa é a ferramenta mais versátil para a visualização de panoramas. Ela é multi-plataforma, gratuita e pode ler diversas projeções diferentes, como equirretangular, cúbica e outras. O problema talvez seja conseguir dispor dela.

Existe uma versão mais atual disponível para Windows e Mac no site do desenvolvedor.

A versão mais antiga também atende ao propósito desejado aqui. Ela pode ser obtida na página do projeto no sourceforge onde há um binário para Windows e o código fonte (arquivo zip) e aqui tem algumas dicas de como compilar.

Depois de compilar o programa ou de posse do executável pré-compilado, basta usar o arquivo "Panini" para executar o programa.

Ele é feito em inglês apenas e para abrir, por exemplo, uma imagem equirretangular vá ao menu "Source" e então em "equirectangular". Escolha o arquivo de imagem e ele já aparecerá na tela do Panini, podendo se interagir com ele.

O Panini usa alguns outros programas, como o Qt e o OpenGL, para funcionar. Por vezes o funcionamento dele não é muito bom no windows por conta disso. Em Linux e FreeBSD até hoje não tive problemas. Depois de alguma possível dificuldade em compilar ele sempre funcionou sem problemas.

Deval VR Player

Pra usar no Windows eu prefiro essa ferramenta do que o Panini, por conta dos erros de execução que este apresenta as vezes.

Para baixar o Deval VR vá na página do produto. Eu costumo usar a versão DevalVR player (Unicode).

A Pós Edição

(rascunho)

Na maioria das vezes, mesmo usando uma cabeça apropriada e bem calibrada, é preciso acertar algumas coisas na imagem final.

Acertando o Nadir

O acerto do nadir pode ser deixado para a pós edição, principalmente em casos em que não for feita uma foto dele. Já vimos que isso pode ser definido na escolha do local a partir de onde fotografar. Deixar um gramado, asfalto, cimentado, areia ou coisas assim no nadir pode ajudar e facilitar sua finalização e nesses casos poderemos fechar a visão pra baixo na pós edição.

Usando uma equirretangular deslocada

(complementar com imagens)

  • Abra a janela de pré visualização rápida
  • Vá na aba Mover/Arrastar
  • No campo "Inclinação" coloque 90 e clique em "Aplicar"
  • Gere o panorama equirretangular como de costume

Isso te permitirá editar o nadir mais facilmente, até um certo ângulo de visão, antes de começar a distorcer muito. Mas não recomendo isso no caso de linhas humanas no nadir, pois pode ficar difícil acertar a curvatura delas para que voltem a ficar retas na visualização.

Em seguida é só fazer o processo inverso, trocando a "Inclinação" por -90, aplicando e gerando novamente a equirretangular, já com o nadir acertado.

Usando o formato cúbico

Acerto de erros de parallax

Tutoriais com GIMP

Publicando com Software Livre

Publicando num Site Pronto

Uma das maneiras mais fáceis de publicar é usando um site que facilite sua vida, como o 360 Cities. A tela de entrada do site, capturada no fim de 2012, é mostrada na figura seguinte.

Site 360 Cities, página principal

Basta criar uma conta, que pode ser gratuita, e mandar sua imagem no formato equirretangular. Pode levar um tempinho para sua imagem ser aprovada, algo em torno de um dia. Para aumentar as chances de aprovação envie uma imagem com pelo menos 6.000 x 3.000 pixels e preencha os campos que descrevem a imagem, incluindo seu local no mapa. Se tiver sorte sua imagem pode também ser selecionada para a galeria do 360 Cities no Google Earth.

Também é possível usar a foto publicada no 360 Cities em seu próprio site. É só usar o trecho de código que eles te fornecem na visualização do seu panorama. Com seu panorama interativo sendo visto, clique no botão “EMBED & SHARE”, que pode ser visto na figura abaixo, na seta 1. Depois você deve concordar com o uso não comercial na janela que se abre. Copie então o código para colocar no seu site, como visto na seta 2, ou o link mostrado pela seta 3 para apontar do seu site para o 360 Cities.

Apontando ou usando um panorama do 360 Cities

Podem haver outras opções de site para publicação. Uma outra que conheço é o site TourWrist. Ele te permitirá a publicação de panoramas mais simples e parciais. Não conheço bem o site ainda, mas a exigência de qualidade deles me parece ser menor, o que tem o lado bom e o ruim. Como site, talvez o 360Cities seja mais interessante, com imagens melhores, mas para quem está começando talvez o TourWrist permita a publicação de panoramas com menos restrições. Mais recentemente (Jan/2014) descobri também o View At, que parece seguir o modelo do 360Cities, permitindo publicações de panorâmicas esféricas com alta qualidade. Não achei mapa no View At, como tem no 360Cities. Acho que um mapa é uma boa forma de navegar por panorâmicas.

O 360Cities e o View At oferecem ainda o registro para profissionais, com diversas vantagens para quem quer ser um panoramista profissional.

Há ainda a opção brasileira, o 360 Cidades e um site da Microsoft chamado Photosynth.

O Google+ (leia-se "gugou plus") também permite a publicação de fotos imersivas. Eles chamam de foto esferas (Photo Spheres). Tendo uma conta no google basta acessar o Google+, ir nas fotos pelo menu "Início" e fazer o upload de uma foto equirretangular. Depois de algum tempo ele vai processar a foto e reconhecer que é uma panorâmica imersiva, permitindo a navegação interativa e o compartilhamento da foto.

Lista de sites:

Publicando no Seu Site

Salado Player, #VR5 (Salado Converter + script)

Apontando para site externo (embed)

Disponibilizando off-line

Uma necessidade muito comum pra quem trabalha com fotos é enviar para clientes ou criar uma demonstração local (não online) de seu trabalho. Há algumas formas de se visualizar localmente uma panorâmica e através disso criar um CD com seu trabalho ou simplesmente ter como mostrar isso num notebook, celular ou tablet.

Usando um navegador

  • no desktop
  • no tablet ou celular
  • iOS
  • android

Usando um visualizador

Gravando um CD

Imprimindo com Software Livre

Existem muitas maneiras diferentes de se imprimir uma fotografia panorâmica da esfera completa. As mais óbvias são possivelmente as provenientes das projeções em faces de um cubo ou mesmo a equirretangular, seja completa ou cortada.

Outras formas talvez menos pensadas podem nos levar à impressão da foto com objetivo de montá-la em 3 dimensões. Vamos falar um pouco de cada uma delas.

Impressões Planas

Sugiro aqui algumas possibilidades, mas tente não se ater a elas.

A mudança do formato da projeção final pode ser feita no Hugin tanto na aba "Projeção" da janela de pré-visualização rápida, quanto na aba "Montagem" da janela principal.

Equirretangular

A projeção mais comum de uma panorâmica esférica é a equirretangular. Em cenas na natureza, sem linhas arquitetônicas ou linhas retas nas partes superior e inferior da foto, as distorções ficam menos evidentes, como no exemplo abaixo.

Equirretangular com 360x180o montada a partir de 10 fotos

Basta gerá-la da mesma forma que gerou antes para fazer o panorama, talvez cortando um pouco, dependendo do propósito e do destino da impressão.

Equirretangular cortada em cima e embaixo

A remoção das partes superior e inferior, retirando um pouco das áreas distorcidas da foto, pode deixar a panorâmica mais agradável ao olho, mas eu pessoalmente não me incomodo com isso. Notadamente em cenas de interior esse corte pode fazer mais diferença.

Outra possibilidade é juntar seja a equirretangular inteira ou cortada em uma longa imagem horizontal. Já que as laterais se encaixam perfeitamente a longa tripa fica uniforme.

Equirretangular cortada e repetida três vezes, totalizando 1080o na horizontal

Cilíndrica, Mercator e outras

As projeções cilíndrica e mercator mudam um pouco essas distorções. Essas duas, no Hugin, nem permitem usar os 180o de visão vertical, chegando no máximo a 179. É como se o ponto de visão nadir e zenith estivessem no infinito, como na teoria do ponto de fuga. A medida que nos aproximamos dos 179o a imagem vai ficando super esticada, meio inutilizável, a não ser talvez com algum propósito artístico. Ao definirmos a projeção cilíndrica, por exemplo, o programa já corta a imagem, colocando um campo de visão vertical de apenas 105,1o, fornecendo a imagem abaixo.

Projeção cilíndrica com 360x105,1o de visão

Quando mudei para mercator o Hugin mudou o ângulo de visão vertical para 119,2, mas reprogramei para ficar igual ao campo que usei na cilíndrica, permitindo que vejamos melhor a diferença das imagens com um campo de visão igual.

Projeção mercator com 360x105,1o de visão

Cubo

O formato cúbico é uma das formas de se apresentar a imagem da esfera completa em duas dimensões. Nos permite imprimir de modo que a cena fica legível e é também uma das formas usadas para facilitar a pós-edição dos pontos de vista para cima (zenith) e para baixo (nadir).

O formato é composto de 6 imagens separadas, como visto na figura abaixo. Podemos pensar nelas como sendo as 6 faces de um cubo conosco dentro. Cada imagem está no formato retilinear, sem distorções: linhas retas no mundo real estarão retas nelas, facilitando a edição e o entendimento da cena.

Imagem no formato cúbico

Para gerar tais imagens podemos usar o próprio Hugin, que para isso é pouco prático, ou um conjunto de ferramentas chamadas Panotools::Script, de autoria de Bruno Postle.

Para gerá-las com o Hugin vamos entender primeiro como são formadas essas imagens. Cada face do cubo é a projeção retilinear com ângulo de visão de 90 graus. Podemos verificar isso notando que um giro completo na horizontal abrange 4 faces do cubo. Esse giro tem 360 graus, portanto cada face deve abranger um ângulo de visão de 90 graus.

Pra tornar a tarefa menos complicada no Hugin, evitando ter que gerar uma visão de cada vez e uma imagem de cada vez, podemos usar a possibilidade que ele nos fornece de carregar a mesma imagem várias vezes. Basta então reposicionar cada imagem para que a parte adequada esteja no campo de visão de 90 graus e no montador selecionaremos as imagens remapeadas apenas, sem necessidade da imagem montada final. Isso nos dará as 6 imagens separadas. Pra fazer essa carga temos que já ter finalizado a imagem equirretangular e usar apenas ela, e não as imagens originais, como imagens fonte para o Hugin. Vamos aos passos:

  • abra um novo arquivo no Hugin, zerado,
  • carregue seis vezes a imagem equirretangular que quer passar para o formato cúbico, não esquecendo de configurar corretamente a imagem como "Equirretangular" com HFOV de 360 graus,
  • infelizmente é necessário repetir a carga por 6 vezes, não havendo um modo prático de carregar a mesma imagem mais de uma vez, a não ser que crie cópias dela no disco (mesmo que sejam links, como pode ser feito em sistemas *nix),
  • vamos logo então na aba "Montador" e configuramos os campos de visão horizontal e vertical como 90 graus,
  • ainda ali configure a "Projeção" como Retilinear,
  • de volta para a aba "Imagens", vamos configurar o deslocamento de cada imagem:
    • deixe a primeira imagem como está,
    • clique na segunda imagem, marcando-a, e configure lá embaixo uma guinada de 90 graus,
    • clique na terceira imagem, marcando-a e desmarcando a segunda, e configure lá embaixo uma guinada de 180 graus,
    • clique na quarta imagem e configure uma guinada de 270 graus,
    • clique na quinta imagem e configure uma inclinação de 90 graus,
    • e finalmente para a sexta imagem configure uma inclinação de -90 graus
  • nesse momento já é possível abrir a janela de "Pré-visualização rápida do panorama" e checar as projeções,
    • passe o mouse sobre o número de cada imagem (1, 2, 3, 4, 5 e 6) e aguarde que ela apareça na pré-visualização,
    • em versões mais antigas do Hugin talvez a imagem não seja mostrada com a passagem do mouse, clique então no botão "Nenhum" nas "Imagens mostradas" e vá selecionando uma a uma que desejar checar
  • voltamos então na aba "Montador",
  • se quiser clique no botão "Calcular tamanho ótimo",
  • desmarque todas as opções em "Resultados do panorama",
  • marque a opção "Correção da exposição, baixa faixa dinâmica" em "Imagens remapeadas",
  • clique finalmente em "Montar!".

As imagens geradas ficarão no formato TIFF, podendo ser convertidas com sua ferramenta preferida. Dá para fazer um script com o convert do ImageMagick, por exemplo.

Na maioria das vezes, porém, eu prefiro usar as ferramentas erect2cubic e cubic2erect, que vem com o pacote Panotools::Script. A instalação dele pode ser meio enrolada, por conta da quantidade de dependências que ele tem, mas depois de finalizada o uso fica muito mais tranquilo.

A ferramenta erect2cubic deve ser usada assim:

 erect2cubic --ptofile=cubic.pto --erect=suaEquirretangular.jpg 

Troque o nome suaEquirretangular.jpg pelo nome do seu arquivo com a projeção equirretangular e dê o nome que preferir ao arquivo PTO. Aqui usei cubic.pto como exemplo. Depois disso você terá um arquivo do Hugin pronto com o cubo. Poderá gerar as imagens da mesma forma que nos passos que sugeri para o Hugin, acima, ou usar a seguinte linha de comandos:

 nona -o cubic cubic.pto

nona é um comando que vem com o Hugin e neste caso gerará as 6 imagens remapeadas correspondentes às 6 faces do cubo. No exemplo teremos, ao final, os arquivos cubic0000.tif, cubic0001.tif, cubic0002.tif, cubic0003.tif, cubic0004.tif e cubic0005.tif. O arquivo com a visão nadir é o último e com a visão zenith o penúltimo cubic0004.tif. Caso você queira converter de volta para equirretangular, por exemplo após editar as imagens para correção de erros, basta usar o comando:

 cubic2erect cubic0000.tif cubic0001.tif cubic0002.tif cubic0003.tif cubic0004.tif cubic0005.tif novaEquirretangular.tif 

O Panini consegue ler as 6 imagens do cubo e te mostrar o panorama interativamente. As ferramentas que vem com o Panotools::Script podem fazer muitas outras coisas. Com elas podemos, por exemplo, automatizar a montagem de panoramas com scripts. Legal, não?

Estereográfica, Mini-Mundo ou Little Planet

Uma das maneiras que mais aprecio para imprimir um panorama é usando a projeção estereográfica.

Menino na piscina

Usando o Hugin a melhor maneira de fazer isso é criando um novo arquivo, inserindo como imagem original a projeção equirretangular já finalizada de sua panorâmica 360. Isso vai garantir que todos os ajustes de cor e acertos de erros de parallax já foram feitos e sua imagem final estará perfeita.

  • Inicie um novo projeto no Hugin
  • Carregue como imagem apenas sua equirretangular já finalizada
  • Abra a janela de pré-visualização rápida do panorama
  • Na aba "Projeção" escolha a estereográfica
  • Mude para a aba "Mover/Arrastar"
  • Importante: não se preocupe com a junção que o programa te mostra nessa pré-visualização. Ela aparecerá bem ruim, mas na saída final ficará ok.
  • Será necessário acertar o encaixe da foto usando as setas horizontal e vertical a direita e embaixo da imagem pré-visualizada.
  • Depois disso você poderá também mover com o botão esquerdo do mouse para ajustar a posição
  • Pode também girar com o botão direito do mouse para encontrar a melhor posição da imagem
  • Pode ir na aba "Cortar" para adequar os limites da foto ou deixar pra fazer isso depois
  • Quando estiver satisfeito vá na janela principal do Hugin, na aba "Montador"
  • Defina um tamanho bom para sua saída. Nessa situação a escolha automática do melhor tamanho não é boa.
  • Escolha o formato de arquivo desejado (TIF ou JPG) e processe sua imagem

Impressões Para Montagens em 3D

http://cartola.org/panoforum/viewtopic.php?f=15&t=91

Mitos e Lendas

Nivelamento

Não é necessário nivelar a câmera para fazer uma panorâmica da esfera completa. Na verdade você pode fazer as fotos com o tripé totalmente na horizontal, inclinado ou como preferir. Em algumas situações pode ser necessário definir manualmente linhas verticais como pontos de controle para alinhar o panorama, mas isso já é necessário muitas vezes mesmo com a estrutura nivelada.

Imagine as possibilidades que isso traz. Você vai conseguir prender a máquina num suporte horizontal e projetá-la em vãos abertos, girando-a num eixo que está na horizontal sem problemas. O conhecido "buraco nadir" vai ficar então num ponto lateral da foto.

Veja este exemplo de uma foto feita com um mastro inclinado, apoiado na mureta da varanda próxima. É a terceira foto do tour. Olhando para baixo é possível ver que não há ponto de apoio para o tripé.

Dito isso, na prática isso significa que você não precisa de um equipamento que facilite ou sequer possibilite o nivelamento da cabeça do tripé. O nivelamento pode ser útil em caso de panorâmicas parciais, de modo a coincidir o horizonte com os limites da foto e tirar melhor proveito da área fotografada. Nesses casos, tirar uma foto desnivelada pode fazer com que seja necessário cortar posteriormente a foto, reduzindo a área restante para o panorama.

Foto Nadir no Ponto SEP

Já fiz muitas fotos nadir super preocupado em manter a câmera no ponto SEP. Já pensei em fazer adaptações na cabeça do tripé pra facilitar isso, mas esse mito já caiu pra mim. Em algumas situações eu pedia ajuda pra alguém tirar o tripé de baixo da câmera, enquanto eu a segurava mantendo a posição depois de soltá-la da cabeça.

Isso na verdade é desnecessário na maioria dos casos. Só será importante caso no buraco deixado pelo tripé existam elementos não planos. Vamos ver as situações e depois de entender isso você poderá inclusive escolher melhor os pontos de onde fará as fotos pra facilitar a montagem.

Chão plano e subjetivo

Nos casos de piso plano e sem formatos geométricos esperados pelo olho humano, como grama, areia, asfalto, cimentado e outros é possível até dispensar a foto nadir e tapar o buraco com as ferramentas clone e restauração do seu editor de imagens preferido. Eu uso o GIMP.

Chão plano com linhas regulares

Em pisos como azulejo, tacos de madeira, mosaicos e outros, com geometrias regulares em que o nosso olho certamente veria imperfeições, você pode tirar uma foto totalmente fora do ponto SEP e depois ajustar a perspectiva da foto tirada pra tapar o buraco do tripé. breve tutorial (rascunho) As vezes as linhas regulares estão disfarçadas, mas perceba como é possível definir conjuntos de linhas perpendiculares no piso da Candelária nesta foto. Aqui usei o mesmo tipo de montagem da foto do Real Gabinete, mostrada no tutorial acima.

Chão plano com linhas irregulares

Em pisos ainda planos, mas com linhas irregulares e que seriam criticadas por nossos olhos se estivessem mal encaixadas temos que usar alguma criatividade. Exemplos desse tipo de piso podem ser paralelepípedos ou pedras como as das ruas de Paraty, pedras portuguesas, pedras de piscina irregulares e outros. Nesses casos não dá pra marcar linhas como verticais e horizontais para o ajuste da perspectiva. Poderíamos ainda lançar mão dessa opção caso consigamos definir um modelo preciso para a foto. Se mantivermos a posição do tripé, sua altura e o ângulo fotografado, podemos então aproveitar um arquivo de uma foto que tinha linhas para aplicar a mesma distorção. Possivelmente atingir a perfeição neste caso será difícil, mas nada que uma pós edição não acabe de acertar.

É possível ainda costurar se for possível encontrar pontos de controle precisos próximos ao buraco no nadir. É necessário fazer, porém, translação dessa foto. O PTGui chama esse processo de otimização do "ponto de vista", ou seja, a câmera mudou seu ponto de vista, foi deslocada para fazer a foto. É exatamente o que fiz com as linhas verticais e horizontais. O Hugin pode inclusive conseguir fazer isso quase automaticamente. Podemos definir os pontos de controle automaticamente, mas antes de otimizar temos que escolher "parâmetros customizados" e otimizar apenas essa imagem, ativando a alteração dos parâmetros de translação x, y e z. Nos casos mais difíceis é bom procurar botar os pontos de controle manualmente, preferindo defini-los mais perto do buraco e, em seguida, criar máscaras para excluir as áreas da imagem que não ficam sobre o buraco e tenderão a ficar mal distorcidas.

Outra ideia que ainda não pus em prática seria levar umas cordas ou papéis ou qualquer material para usar como linhas perpendiculares. Faríamos uma foto normal do piso e outra, mantendo a câmera parada, com as linhas perpendiculares que levamos colocadas sobre o piso. Bastaria então usar uma foto como modelo para distorcer a outra.

Este tipo de cena é um exemplo de onde já vale voltar a tentar fotografar o nadir a partir do ponto SEP.

Chão não plano

Finalmente nesta situação seria impossível deslocar a máquina e manter o ponto de vista original. As diferenças de parallax impossibilitariam uma foto com perspectiva corrigida de se encaixar bem tendo sido feita muito fora do ponto SEP. Notem ainda que não basta o chão ser plano onde o tripé está apoiado. Dependendo da cabeça de tripé usada os objetos tridimensionais perto do tripé podem ser tapados pela base da cabeça, impossibilitando que sejam fotografados na posição original do conjunto. Cabeças automatizadas, como a Merlin/Orion e as da Kolor tem a base bem larga e têm mais chance de cair nesse problema.

Entendendo Melhor

Pontos de Controle

"Pontos de Controle" são pontos usados na maioria das ferramentas para montagem de panorâmicas. Com eles é possível atingir 3 objetivos:

  1. marcar que ponto de uma imagem corresponde a que ponto de outra imagem, permitindo o posicionamento entre duas imagens,
  2. marcar linhas verticais e/ou horizontais, permitindo o correto alinhamento da imagem, posicionando-a corretamente em pé em relação ao horizonte,
  3. marcar linhas em imagens indicando que uma linha numa imagem corresponde à outra linha na outra imagem, permitindo o posicionamento correto.

Nem todas as ferramentas possuem todos esses tipos de pontos de controle, mas a grande maioria, senão todas, possui o primeiro tipo.

Esses três objetivos são atingidos por três tipos diferentes de pontos de controle que podem ser marcados nas imagens, os "Pontos de Controle Normais", "Linhas Verticais" ou "Linhas Horizontais" e as "Linhas". Em seguida apresento em maiores detalhes como marcá-los e quando eles podem ser úteis.

Pontos de Controle Normais

Esses pontos são os mais comuns, normalmente chamados apenas de "Pontos de Controle". É bem possível montar panoramas apenas com estes, sem usar nenhum outro tipo de ponto de controle. O inverso já não é verdade, criar um panorama sem pontos de controle entre imagens é extremamente difícil.

Estes pontos são marcados entre duas imagens adjacentes, ou seja, duas imagens que possuem alguma sobreposição. Eles indicam justamente onde está, numa das imagens, um ponto correspondente da outra imagem. Esses pontos vão permitir que a ferramenta consiga reposicionar as imagens no espaço e distorcê-las adequadamente para um perfeito encaixe.

A figura abaixo mostra a aba de "Pontos de Controle" com uma imagem de cada lado do painel. As imagens são adjacentes e têm uma boa área de sobreposição.

Pontos de Controle normais na aba Pontos de Controle do Hugin

Nas imagens são mostrados os pontos numerados. O ponto 1 na imagem da esquerda corresponde ao ponto 1 na imagem da direita e assim por diante. Há ainda uma lista dos pontos de controle, mostrada no painel logo abaixo das imagens. O número do ponto de controle corresponde aos números mostrados nas imagens. Clicando numa linha na lista de pontos colocará um ponto em foco e o mesmo será mostrado em destaque nos painéis, com uma pequena janela de zoom ao lado de cada um, como mostra a figura abaixo.

Ponto de Controle em foco mostrando zoom

Esse pequeno quadrado com um zoom exagerado nos permite conferir com alto grau de refinamento a posição do ponto de controle. Vamos ver então como definir esses pontos de controle.

Definindo pontos de controle normais automaticamente

Método 1: via assistente

A primeira aba do Hugin nos permite montar o panorama de modo automático. O botão "2. Alinhar...", como já vimos, vai fazer uma série de coisas, dentre as quais criar os pontos de controle entre as imagens. Através deste botão serão criados pontos de controle normais e linhas verticais, que veremos mais adiante.

Esse método pode falhar por diversos motivos.


  1. Falta de memória. Neste caso há algumas opções:
    1. Executar o alinhamento em uma máquina com mais memória
    2. Colocar mais memória na máquina
    3. Usar o Método 2, proposto a seguir, o que implica em perder outras funções executadas automaticamente pelo botão "2. Alinhar..."
    4. Usar o Mẽtodo Auxiliar proposto a seguir antes de alinhar
  2. Bug em máquinas com vários processadores
  3. Há um bug conhecido que ocorre no hugin em algumas situações. Ainda não foi resolvido pois ainda não se conseguiu identificar exatamente como e quando ele ocorre, mas é possível identificar que ele ocorreu e aplicar uma solução de contorno.

    1. na janela que o Hugin mostra a execução da detecção de pontos observe se há uma mensagem com o texto "bad allocation" no meio, como o exemplo abaixo. Isso provavelmente aparecerá no meio de muitas outras informações, então procure com atenção.
    2.  --- Analyze Images ---
       i0 : Analyzing image...
       i1 : Analyzing image...
       i2 : Analyzing image...
       i3 : Analyzing image...
       i4 : Analyzing image...
       An error happened while loading image : caught exception: bad
       allocation
       An error happened while loading image : caught exception: bad
       allocation
      
    3. para resolver, vá no menu Arquivo / Preferências,
    4. na janela que se abre, vá na aba "Detectores de Pontos de Controle"
    5. Selecionando detector de pontos de controle
    6. o primeiro disponível deve ser também o que você está usando na detecção, supondo que você nunca mudou isso. Marque ele e clique à direita no botão Editar
    7. na janela que se abre, no campo Argumentos, coloque o argumento que indica que o programa deve usar apenas um núcleo de processador: "--ncores 1", como mostra a figura abaixo. Não importa se os argumentos que estiverem lá forem outros diferentes da figura. Na dúvida coloque este que indiquei no início do campo.
      Indicando o uso de apenas um processador
    8. clique no botão OK nesta janela e em seguida na anterior.
  4. Sobreposição inadequada ou cena inadequada
  5. Em algumas cenas o programa pode ter muita dificuldade em encontrar pontos de controle. Por exemplo, em fotos consecutivas que mostrem apenas paredes brancas ou apenas folhas de árvores ou algum padrão repetitivo. Fotos do céu também podem cair neste problema. Nesses casos o posicionamento manual, usando a aba Mover/Arrastar da janela de Pré-visualização Rápida pode ser uma boa opção. Veja mais detalhes sobre como fazer isso na seção correspondente. Quanto à sobreposição inadequada, ou seja, muito pequena, ou você também posiciona manualmente ou terá que optar por fotografar novamente. Tanto para esse problema quanto no caso da cena inadequada, pode ser que o uso de uma lente com maior ângulo de visão ajude muito, mas certamente vai baixar a resolução. Uma outra ideia é usar a imagem de mais baixa resolução apenas para posicionar as imagens de maior resolução e podemos inclusive usar pontos de controle pra isso.

Método 2: via aba "Imagens"

Em muitos casos a geração automática de pontos de controle falha por falta de memória no computador. Uma das maneiras de tentar resolver isso é usar o Método auxiliar, explicado mais adiante. Usando ou não o método auxiliar, o procedimento sugerido aqui também já reduz a necessidade de memória e processamento e se mantém o mesmo com ou sem o que sugiro lá.

Suponho aqui que o Hugin já está aberto e as imagens já estão carregadas:

  1. vá na aba Imagens e selecione as duas primeiras imagens,
  2. Solicitando a criação de PC entre duas imagens
  3. em seguida clique no botão "Criar pontos de controle" lá embaixo, como mostrado na figura,
  4. uma janela extra se abrirá, mostrando o progresso do processo de definição dos pontos de controle e ao fim deste outra janela mostrará quantos pontos de controle foram adicionados,
  5. Sucesso em definir PCs
  6. após dar OK nessa janela é possível observar os pontos de controle criados na aba "Imagens".
  7. Pontos de controle vistos na aba "Imagens"
  8. é preciso agora selecionar a segunda e terceira imagens e repetir o processo até marcar pontos entre todas as imagens adjacentes,

Não se esqueça de fechar o círculo horizontal repetindo o processo para a primeira e última imagem, caso esteja fazendo uma foto que abrange 360o. Se, por exemplo, as imagens das figuras acima correspondessem a 6 imagens feitas na horizontal, uma imagem feita para cima e outra para baixo, totalizando as 8 imagens, teríamos que fechar o círculo horizontal criando pontos de controle entre as imagens 0 e 5. Além disso as imagens 6 e 7 provavelmente poderiam ter pontos de controle com várias outras ao mesmo tempo e teríamos que fazer a seleção de modo a considerar isso. Na prática, mesmo se a imagem zenith ou nadir fizerem sobreposição com todas as imagens horizontais não é necessário criar pontos de controle entre todas elas. Criar entre duas imagens opostas já posiciona correta e satisfatoriamente essas fotos. No mesmo exemplo então bastaria criar pontos da imagem 6 com as imagens 0 e 3 ou outro par oposto qualquer mais adequado.

Claro que tudo pode variar de acordo com a cena e a sobreposição realizada. Vale um teste e visualização para verificar se os pontos criados são suficientes.

Método 3: via linha de comandos

Este método é mais interessante para aqueles que usam sistemas Unix, mas pode servir também para os muitos que desejem automatizar a montagem de panoramas. A partir do momento em que você faz muitos panoramas automatizar a montagem começa a ser um desejo. Aprendendo a usar os comandos para cada etapa você estará se tornando apto a montar scripts que automatizem o processo.


Método auxiliar: criando arquivo de pontos chave

O processo de detecção de pontos de controle é pesado e exige bastante processamento e memória. A parte mais crítica é a definição dos pontos chave de cada imagem. Esses pontos chave podem ser entendidos como pontos candidatos a pontos de controle. No processo automático de detecção de pontos de controle o programa inicialmente analisa as imagens e define os pontos chave (key points) de cada uma individualmente. Em seguida compara os pontos chave de uma imagem com os de todas as outras, discernindo quais são idênticos e elegendo-os como pontos de controle. O problema é que esse processo de definição dos pontos chave é pesado e normalmente o Hugin vai tentar usar todos os processadores e/ou núcleos de processadores que seu computador tiver e isso vai aumentar ainda mais o uso de memória e processamento, pois ele vai tentar fazer isso simultaneamente pro máximo de imagens possível.

Podemos deixar o Hugin um pouco de lado para fazer a criação desses pontos chave para uma imagem de cada vez, aliviando o computador e diminuindo a probabilidade de erro no processo. Ao final do que sugiro aqui teremos um arquivo de pontos chave criado para cada imagem do projeto do Hugin e poderemos então continuar depois com quaisquer dos métodos mencionados acima.

Se você usa Windows é necessário verificar se a instalação do Hugin está como é preciso.

  1. é preciso inicialmente ter um projeto do Hugin salvo, no mínimo com as imagens carregadas
    1. se você já tem um projeto com imagens, salve-o com o nome projeto.pto
    2. se você ainda não tem um projeto
      • abra o hugin
      • carregue suas imagens
      • salve o projeto com o nome projeto.pto
  2. saiba o número de imagens que você tem no projeto, aqui vamos supor como exemplo um projeto com 10 imagens
  3. baixe o arquivo que vai fazer a criação dos pontos chave e salve-o na mesma pasta do arquivo projeto.pto
    • se você usa Windows baixe o arquivo cria_keys.bat,
    • se você usa um Unix (Linux, BSD, Mac OS X) baixe o arquivo cria_keys.sh.
  4. edite o arquivo cria_keys eliminando as linhas desnecessárias e execute o script
    1. se você usa Windows
      • vá no Windows Explorer, na pasta onde se encontra o arquivo cria_keys.bat,
      • clique com o botão direito do mouse sobre o arquivo e escolha a opção "Editar",
      • o arquivo será aberto num editor de texto,
      • selecione e apague as linhas extras correspondentes às imagens que você não tem. O arquivo tem uma linha de comando para cada imagem e criei um arquivo que pode processar até 300 imagens (0 a 299). No nosso exemplo temos 10 imagens, então tenho que apagar as linhas a partir da linha que se refere à décima primeira imagem, que é a linha que contém o trecho "-k 10", apago então tudo dali pra baixo. A dica pra isso é posicionar o cursor no início dessa linha e clicar Shift + Ctrl + End e em seguida Delete
      • salve o arquivo e feche o editor,
      • de volta ao Windows Explorer, duplo clique com o botão esquerdo do mouse sobre o arquivo, executando-o
    2. se você usa um Unix (Linux, BSD, Mac OS X)
      • abra o arquivo cria_keys.sh no seu editor de textos favorito
      • selecione e apague as linhas extras correspondentes às imagens que você não tem. O arquivo tem uma linha de comando para cada imagem e criei um arquivo que pode processar até 300 imagens (0 a 299). No nosso exemplo temos 10 imagens, então tenho que apagar as linhas a partir da linha que se refere à décima primeira imagem, que é a linha que contém o trecho "-k 10",
      • salve o arquivo e feche o editor,
      • abra um terminal de comandos,
      • vá até a pasta onde está o arquivo cria_keys.sh:
      •  cd pasta/onde/esta/o/arquivo
        
      • execute o script com o seguinte comando:
      •  sh cria_keys.sh
        
      • quando terminar pode fechar o terminal de comandos
  5. neste ponto verifique se na pasta do projeto foram criados um arquivo *.key para cada imagem do projeto.pto,
  6. com estes arquivos criados você pode retornar finalmente ao método que estava seguindo antes.

Se você não encontrar os arquivos *.key ou verificou um erro na execução do script, uma última alternativa é tentar limitar a execução a uma única CPU ou núcleo de processador por vez. Para isso use alternativamente os arquivos abaixo no lugar dos que sugeri antes. Não se esqueça de repetir o processo de apagar as linhas excedentes.

Checando pontos de controle criados automaticamente

Definindo pontos de controle normais manualmente

Em seguida apresento meu fluxo de trabalho para a criação de pontos de controle normais manualmente.

Na aba Pontos de Controle:

desativo "auto refinamento", "auto adicionar" e "auto estimar"

  • coloco um par de imagens no painel, uma na esquerda e a outra na direita
  • clico num ponto numa delas e ele dá um zoom na imagem
  • clico no ponto correspondente na outra imagem e ele dá o zoom sem marcar o ponto
  • clico novamente no ponto exato e ajusto a posição nas duas imagens (não precisa ser preciso)
  • clico em refinamento (tem um bug que as vezes deixa esse botão desativado - basta usar a tecla "f" no teclado)
  • clico no botão Adicionar (ou tecla "a" no teclado)

Marco 3 pontos e depois navego direto pro próximo par adjacente pelas setinhas pra direita ou esquerda que ficam no topo entre as imagens e repito.

Pontos de Controle Linhas Verticais e Horizontais

As retas horizontais e verticais vão propiciar o correto alinhamento da foto panorâmica, evitando que linhas horizontais ou verticais do mundo real fiquem inclinadas. Um vértice encontro de duas paredes, o horizonte no mar, um poste, um prédio, o usuário vai esperar que essas coisas estejam em suas posições corretas.

Uma reta é definida por dois pontos. Diferentemente de um ponto de controle normal, visto no tópico anterior, as retas são definidas em uma só imagem. Pra marcar os dois pontos que definem a reta desejada, seja ela horizontal ou vertical, é necessário colocar a mesma imagem nos dois painéis, de modo a marcar um da reta em cada painel.

Em geral, se a orientação da imagem já estiver correta, o programa vai discernir corretamente se a reta cadastrada é horizontal ou vertical, mas é bom sempre dar uma conferida e corrigir, se necessário. Meu fluxo de trabalho para criar retas desses tipos é o seguinte:

Na aba de pontos de controle:

  • Seleciono uma imagem no painel da esquerda
  • Seleciono a mesma imagem no painel da direita
  • Visualizo a reta que desejo marcar e clico numa extremidade dela num dos painéis (o Hugin dará um zoom no ponto clicado)
  • No outro painel clico na outra extremidade dela (o Hugin dará um zoom no ponto clicado)
  • Faço possíveis ajustes finos de posicionamento usando o zoom automático feito pela ferramenta
  • Clico em "Adicionar" para confirmar a adição do ponto (reta) de controle (ou clico no atalho de teclado "a")
  • Na listagem dos pontos de controle confiro se o tipo de reta foi corretamente classificado e corrijo se necessário

Pontos de Controle Linhas

As linhas genéricas, que não são nem horizontais nem verticais, são usadas de forma ligeiramente diferente no Hugin. Não faz sentido criar uma linha genérica em apenas uma imagem, por exemplo. Já uma linha horizontal ou vertical poderia ser criada apenas uma vez sem problemas, ajudando no nivelamento da panorâmica. As linhas genéricas servem para conectar linhas entre duas imagens diferentes e que não se encontraram na costura, possivelmente por falta de pontos de controle normais que propiciassem isso. Um caso típico pode ocorrer com um poste, por exemplo. Ele pode aparecer sozinho em mais de uma foto e atrás dele só ter céu. No céu não haverão pontos de controle confiáveis e o próprio poste pode também não ter marcas que sirvam como pontos pra costurar corretamente duas imagens. Nesse caso poderíamos usar uma linha genérica, definida nas duas imagens como a mesma linha, de modo a fazer o Hugin posicionar corretamente o poste.

Como as outras linhas, uma linha genérica também é definida em apenas uma imagem e é definida por dois pontos. O processo é parecido:

  • Colocamos a mesma imagem nos dois painéis
  • Marcamos um ponto de um dos extremos da linha num painel
  • Marcamos outro ponto do outro extremo da linha no outro painel
  • Clicamos em "Adicionar" ou usamos o atalho de teclado "a" para confirmar a adição da linha

Normalmente a linha será automaticamente classificada como horizontal ou vertical. O segredo está no que fazer após adicionar a linha:

  • Vamos lá embaixo no "modo" da linha e trocamos de horizontal ou vertical para "Adicionar nova linha"

Pronto. A nova linha será criada inicialmente como "Linha 3" e estará a partir daí disponível junto com a "horizontal" e "vertical" para classificar uma próxima linha inserida. Não faz sentido criar uma nova linha apenas uma vez. Depois de criá-la é necessário ir em outra imagem e cadastrá-la novamente para que o Hugin possa tentar uni-las na otimização.

Lembre-se que essa linha é própria de um objeto e todas as "Linha 3" criadas em diferentes imagens devem corresponder à mesma linha de fato no mundo real, pois assim é que o Hugin vai agir, ele vai tentar sobrepô-las na costura. Caso você queira criar outras é só adicionar outra e elas serão numeradas sequencialmente: "Linha 4", "Linha 5" e assim por diante. Pra alinhar vários postes, por exemplo, seria necessário criar uma linha para cada um.

Confesso que uso esse recurso bem raramente. Num panorama bem fotografado em situações mais comuns dificilmente elas são necessárias.

Otimização

Máscaras

Janela de Pré-Visualização Rápida

Procedimentos Complementares

Como encontrar o ponto sem erro de perspectiva (SEP)

um pré-requisito importante para fazer uma foto panorâmica da esfera completa é fotografar girando em torno do ponto SEP. Pra isso é imprescindível uma cabeça de tripé adequada, seja um modelo comercial ou um feito por você mesmo. De posse de uma cabeça dessas, ajustável, temos que posicionar, testar e reposicionar a câmera até que ela esteja posicionada de modo a girar em torno do eixo onde se encontra o ponto SEP.

1. O modo mais fácil

Felizmente as pessoas menos egoístas compartilham seus dados e existe a chance de você já encontrar as medidas de onde se encontra o ponto SEP da sua câmera/lente na internet. Um local que tenta reunir estes dados é o wiki do Panotools:

Entrance Pupil Database - PanoTools.org Wiki

Como a página está em inglês, seguem algumas dicas:

  • A tabela Tripod Mount Measurements mostra as distâncias entre furo para encaixe no tripé e o ponto SEP.
  • As medidas C e H já podem ser usadas diretamente pra posicionar a câmera na cabeça.

Image:EPDB-off-center.jpg Image:EPDB-height.jpg‎

  • A medida L1 deve ser somada à medida da lente, disponível na tabela Entrance Pupil Measurements, mais abaixo

Image:EPDB-length1.jpg Image:EPDB-length2.jpg

Com essas medidas em mãos, basta então posicionar a máquina na sua cabeça panorâmica usando elas.

Uma cabeça artesanal sem a câmera, ilustrando as medidas:

Notem que nem essa cabeça artesanal nem algumas comerciais, como a mostrada abaixo, suportam o uso da medida 'C'.

Pela tabela na base de dados podemos perceber que ela, na imensa maioria dos casos, é zero. Isso significa que na maior parte das câmeras o furo para encaixe no tripé está alinhado com o eixo central da lente.

Algumas cabeças seguram a câmera abraçando a lente. São cabeças com um anel (ring) que deve envolver a lente em torno do local onde se encontra o ponto SEP. Veja um exemplo:

Note, porém, que essa cabeça só permite o giro horizontal em torno do eixo do ponto SEP. O giro vertical fica um pouco deslocado, mas em algumas situações isso pode ser irrelevante, como com o uso de uma grande angular numa cena com céu em cima.

2. O chute mais fácil

Se você possui uma grande angular em uma DSLR então possivelmente o ponto SEP está na altura do anel dourado (ou de outra cor) que circunda sua lente lá na frente dela. Pode ser que isso não seja verdade sempre, mas eu já verifiquei isso em algumas lentes diferentes, como Opteka (Samyang), algumas Sigmas e Canon.

Se esse for seu caso, posicione a câmera dessa forma em sua cabeça panorâmica e faça os testes sugeridos no próximo passo, onde mostro como localizar o ponto SEP.

3. Métodos para encontrar o ponto SEP

Existem muitas maneiras complicadas e simples de chegar ao ponto SEP. Este site, por exemplo, mostra algumas e esse outro mostra outras. Vou falar aqui dos que gostei.

Antes de iniciar, vale ressaltar que a medida desconhecida ou mais difícil é a medida L2, mencionada acima. Todas as outras podem ser facilmente obtidas, pois referem-se ao centro da lente. É essa medida que vamos variar em todos os métodos para encontrar o ponto SEP, as demais já devem ter sido obtidas e usadas para posicionar a câmera, caso contrário os métodos podem falhar.

No caso de cabeças artesanais, por exemplo, é importante verificar se o L da base está realmente com 90º de angulação. Pra garantir isso é bom comprar uma peça pronta ao invés de dobrar uma barra.

3.1. Usando uma folha de papel, fita e clipe

Esse método eu bolei na busca de uma forma bem simples de encontrar a medida correta e precisa, principalmente para os casos em que pretendemos construir nossa cabeça ou que pretendemos girar de alguma outra forma que mereça o conhecimento do local exato do ponto SEP.

Fiz uma página em meu blog e um pequeno vídeo de quase 10 minutos. Vale a pena checar essa opção hein!

3.2. Olhando a lente de frente

Esse método serve apenas para uma câmera reflex. Nesses modelos, ao olhar de frente para a câmera, como se ela fosse nos fotografar, é possível ver a entrada da pupila da lente. Tem que ter luminosidade atrás da câmera para que isso aconteça e nada obstruindo o visor.

Com a câmera na cabeça panorâmica temos que ter um referencial fixo, uma linha, um objeto, que nos permita olhar para a lente enquanto giramos o conjunto câmera+lente+cabeça panorâmica. O objetivo é que, ao girar, a íris da lente não mude de posição, como na figura abaixo:

Câmera bem posicionada

O mais normal é que num primeiro momento o giro faça o ponto branco da pupila se deslocar de um lado para o outro, a não ser que você dê muita sorte ou que você use o melhor chute, como sugerido acima para algumas situações em que isso é possível. Veja o giro fora do ponto SEP:

Câmera mal posicionada

Imagens gentilmente cedidas por John Houghton

No caso acima a câmera esta atrás do ponto SEP. É preciso chegá-la mais pra frente e repetir o teste. Naturalmente você não precisa fotografar ou filmar o conjunto pra ver isso, pode colocar tudo, por exemplo, dentro do box do banheiro ou outra porta de vidro (portaria do prédio, etc) e marcar uma linha no vidro pra poder verificar o conjunto. Talvez precise é de um ajudante :)

3.3. A fita na janela

Este procedimento consiste em usar dois objetos, um perto da câmera e um longe, e fazer duas fotos com a câmera em posições angulares diferentes, comparando o resultado.

O objeto perto sugerido é uma fita colada num vidro de uma janela e o objeto longe é qualquer coisa na cena externa. O melhor é que a câmera esteja bem próxima da janela e que a cena externa esteja bem longe.

  • Você bota então a câmera no tripé com sua cabeça panorâmica
  • Faz uma foto com a fita de um lado do quadro
  • Gira a câmera e faz outra foto com a fita do outro lado do quadro

As duas fotos ficam assim:

Fotos com a fita na janela

Com uma foto sobre a outra é possível ver a situação em que a câmera não está bem posicionada:

Câmera mal posicionada

Repetindo o teste até um bom posicionamento, a imagem final deve ficar assim:

Câmera bem posicionada

Esse posicionamento preciso pode ser feito uma única vez e facilitará a montagem. Quanto mais preciso for, menos erros de perspectiva (parallax errors) acontecerão e menos ajustes serão necessários.

Imagens gentilmente cedidas por John Houghton

Como Definir os Parâmetros da Lente

Dependendo de sua câmera e lente o arquivo gerado pode não conter as informações necessárias para que o Hugin saiba alguns valores de que precisa. Nesse caso é preciso "calibrar" a sua lente. Realmente não sei por que chamaram esse processo de calibragem da lente, pois você não faz nada nela, você vai na verdade descobrir valores como o campo horizontal e vertical da imagem, distância focal e fator de corte da máquina. Pra isso basta seguir os passos a seguir, retirados do tutorial original em inglês do próprio site do Hugin.

Veja também que se você já conseguiu finalizar alguma panorâmica completa com as fotos de um conjunto máquina+lente, basta abrir o arquivo do Hugin usado para isso e salvar os parâmetros de lente das imagens usadas.

Dicas de configurações do Hugin

Tem alguns ajustes que talvez ajudem no hugin (versão 2012.0.0):

  • Abra as preferências a partir do menu Arquivo / Preferências
  • Pra lentes olho de peixe vá na aba "Editor de Pontos de Controle" e ative "Ativar procura de rotação"
  • No mesmo lugar coloque o ângulo de início como -180, ângulo de parada como 180 e passos 30 (ou mais)
  • Pra evitar problemas de falta de memória, que vai causar a parada do processo automático e encontro de pontos apenas de algumas imagens vá na aba "Detectores de Pontos de Controle"
  • O "Hugin's CPFind" é o que deve estar marcado. Clique no botão Editar.
  • Em "Argumentos" acrescente "-n 1", deixando, por exemplo, assim "--multirow -n 1 -o %o %s". Isso vai limitar o uso de apenas um processador. Pode demorar mais, mas é mais seguro.
  • Pra aumentar o uso de memória na montagem vá na aba "Programas" e dentro do "Enblend" no campo "Argumentos Padrão" coloque "-m XXXX" onde XXXX é o tanto de megabytes de memória que o programa poderá usar antes de começar a usar o disco. Por exemplo, se tiver um computador com 8GB de memória pode botar ali "-m 7000".
  • Ainda na aba "Programas", nas opções do "Nona" desmarque "Criar imagens recordadas por padrão". Isso vai facilitar muito se quiser trabalhar com camadas pra corrigir os erros.

Outros Tipos de Uso do Hugin

Mosaico

Mosaico de Rua

Fachadas de prédios de uma rua.

Grafite num muro comprido - plano = mais um uso da correção de perspectiva (ex: lateral de um prédio alto)

Juntando Imagens Planas

Correção de Perspectiva

vários tipos de perspectiva usadas no desenho técnico, arquitetura e talvez outras disciplinas afins. Perspectiva cônica, isométrica, projeção cilíndrica, etc. A que mais se assemelha à realidade é possivelmente a perspectiva cônica com três pontos de fuga:

As vezes é interessante transformar uma imagem de modo a deixar as linhas verticais realmente verticais. Isso é ainda mais relevante talvez quando vamos, por exemplo, juntar várias fotos frontais de um prédio muito largo, mas também pode ser usado numa única foto. A imagem seguinte, por exemplo, não está ruim, mas podemos transformá-la, mudando um pouco sua composição.

Foto original de alguns prédios
Linhas dos 3 pontos de fuga

Podemos deixar as linhas verticais realmente verticais e talvez também escolher uma das horizontais para deixá-las horizontais. Provavelmente se deixarmos as do ponto de fuga da esquerda horizontais a imagem irá se distorcer muito e ficar ruim, já as da direita são boas candidatas. Uma opção que deve deixar a imagem mais natural talvez seja apenas ajustar as linhas verticais.

Perspectiva alterada, 2 pontos de fuga
Perspectiva alterada, 1 ponto de fuga

Naturalmente a foto é distorcida para se fazer tais ajustes e pode ficar com proporções diferentes. Pode ser necessário cortar algumas partes e para evitar alguns cortes devemos considerar a possibilidade de pintar algumas partes, como no caso da última foto, que após a distorção ficou assim:

Pré-visualização do ajuste no Hugin

Essa é a tela de pré-visualização rápida do Hugin. O corte foi feito manualmente, de modo a deixar o canto esquerdo superior preto, onde a imagem original não alcançou. Depois de gerada a figura foi só copiar uns trechos do céu para preencher ali com a ferramenta clone.

Essa distorção poderia também ser feita no GIMP, Photoshop ou outro editor avançado que possua uma ferramenta de correção de perspectiva, mas pra quem já está familiarizado com o Hugin a vantagem é a garantia de que as linhas ficarão realmente verticais e horizontais. Nos editores isso é menos preciso, uma vez que o ajuste é feito visual e manualmente.

Vamos ver então como fazer isso no Hugin com uma imagem que ilustra talvez uma situação onde o ajuste seria mais necessário realmente. A foto abaixo foi feita por uma criança de 3 anos usando uma grande angular, de modo a não cortar nada que interessasse.

Foto original a ser ajustada

Não só poderemos numa única operação corrigir a distorção da lente grande angular como também deixar as linhas verticais realmente verticais. Claro que vamos aproveitar pra tirar os dedos da foto.

  • Abra o Hugin, se já não o fez
  • Na tela inicial clique no botão "1. Carregar Imagens..."
Hugin: botão carregar imagens
  • Na janela que se abre selecione o arquivo desejado
  • Dependendo do arquivo, se ele não trouxer as informações EXIF adequadas, o Hugin ainda abrirá a janela abaixo
Hugin: calibrando a lente
  • Neste caso essa informação é pouco relevante, mas se você souber pode preencher
    • A lente que foi usada nessa foto, por exemplo, é uma olho de peixe que preencheu todo o frame da foto, então o tipo que preencho é o "Olho de peixe full-frame"
    • Sei também que ela tem 6.5mm de distância focal (é uma grande angular olho de peixe)
    • O fator de corte dessa máquina pode ser encontrado pela Internet e é 1.63
    • Com essas informações o Hugin preenche o resto

(incompleto)

Produção de conteúdo para planetários

A cúpula de um planetário é naturalmente um local onde a projeção de uma foto 360o se encaixa bem. Muito conteúdo para visualização em planetários é produzido diretamente em computadores e não com imagens ou vídeos reais. Com a era digital essa situação está mudando. Existem equipamentos multi câmera ou lentes específicas que permitem a produção mais direta do conteúdo, mas os conceitos da fotografia imersiva podem também ser usados. Algumas lentes olho de peixe tem até um pouco mais de 180o de campo de visão. Considerando que a cúpula de um planetário é metade de uma esfera, nos basta produzir conteúdo com 180o. Lá pelo ano 2000 conheci uma lente usada para produção de conteúdo Ipix que produzia uma foto da esfera completa com apenas 2 fotos. Hoje é possível encontrar lentes chamadas super fish eye, capazes de produzir fotos ou vídeos da hemi-esfera de uma só vez.

Procurando pela Internet por vídeos 360o é possível encontrar alguns exemplos de fabricantes que vendem equipamentos compostos por diversas câmeras, capazes de produzir fotos ou vídeos que vão além da hemi-esfera, permitindo maior flexibilidade na produção desse tipo de conteúdo. Uma das primeiras empresas a oferecer esse tipo de equipamento a preços bem gordos foi a Immersive Media Company. Um vídeo deles que foi bem divulgado foi produzido logo após o terremoto do Haiti, em 2010. Em 2011 o grupo de fotógrafos do site Airpano sondou a empresa e obteve um orçamento de 63 mil dólares pela câmera e equipamento complementar e ainda com um prazo de entrega de alguns meses, como pode ser visto neste artigo do referido site (em inglês). Eles então partiram para uma experiência de produção própria de seus vídeos, montando uma estrutura com cinco câmeras, cujo resultado pode ser visto no mesmo link.

A produção de conteúdo para planetários, pelo que pude perceber, tem uma diferença notória da produção de fotografias imersivas que vão muito além da produção de um simples vídeo imersivo. A diferença inicial está no paradigma da interação. O espectador de um vídeo 360 na Internet interage ativamente com o que vê. Escolhe para onde olha, aproxima e afasta a imagem, pode parar o vídeo e/ou o áudio. Ele tem algum controle do que vê e ouve. Num planetário a interação é totalmente passiva. No máximo o usuário pode escolher para onde olhar, mas a ordem do que acontece está totalmente fora de seu controle. A consequência mais imediata disso é que isso faz com que a produção desse tipo de conteúdo seja mais complexa, passando por vários outros tipos de preparações e produções audiovisuais. Na prática, para produzir um conteúdo bacana para a cúpula de um planetário você vai provavelmente ter que aprender, além da fotografia panorâmica:

  • como planejar um conteúdo audiovisual,
  • como gravar e editar áudio,
  • como gravar e editar vídeo,
  • como encaixar tudo isso e sincronizar.

Para se ter uma noção do que estou falando vale uma olhada em outro material que tenho preparado sobre editoração de vídeos com o Kdenlive.

Computação gráfica

Indo um pouco além, a possibilidade de produção desse tipo de conteúdo com fotos e vídeos 360 não precisa deixar de lado a computação gráfica. Não pretendo entrar nessa ceara por aqui (pelo menos por enquanto), mas existem ferramentas de software livre capazes de produzir conteúdo de excelente qualidade através de modelagem 3D. O Blender é essa ferramenta. Existe há muitos anos e é mais do que capaz de produzir excelentes vídeos de animação. Na página do projeto é possível acessar alguns exemplos deles. O conteúdo criado no Blender pode gerar os quadros de uma animação com fundo transparente, permitindo o encaixe de objetos numa foto ou vídeo 360 feitos de uma cena real. Fica aí a ideia.

Um aspecto importante em relação ao Blender é que ele não é uma ferramenta considerada muito amigável. Sinceramente não sei se alguma ferramenta de modelagem 3D como essa tem como ser muito amigável. Já usei o 3D Studio e existe também o Maya, ambas ferramentas comerciais. Existe ainda o Sketchup, mais voltado para arquitetura, que era do Google mas acho que foi para a empresa Trimble. O lance é que essas ferramentas tem muitas possibilidades e é difícil colocar todas as funções numa interface gráfica. Até onde sei os grandes estúdios de animação fazem muito trabalho direto com programação em computação gráfica - sem interfaces gráficas auxiliares. O Blender seguiu o caminho de uso de atalhos de teclado. É natural que o usuário tenha dificuldades para aprender todos esses atalhos no início, mas acredite, depois que você os memorizar o seu trabalho terá muito mais agilidade do que teria se fosse acessar essas funções via menu gráfico. Para esse aprendizado inicial você pode consultar tutoriais diversos que existem em sites como o youtube ou vimeo. Pesquisando um pouco sobre o assunto encontrei também um site de cursos online do Allan Brito. Ele escreveu alguns livros sobre o Blender em português publicados pela editora Novatec. Em seu site oferece vários cursos de Blender a preços bem acessíveis e um curso básico gratuito que achei muito bom.

Ideias para a produção audiovisual

Manter se possível a produção do conteúdo com 360x180 graus pode dar flexibilidade de "mobilidade da câmera" na pós-edição.

Usar uma foto 360 como cenário e encaixar vídeo(s) em ponto(s) específico(s). Podemos com isso renderizar os vídeos sincronizados ao final. Podemos sincronizar os vídeos no editor de vídeo antes da costura. Pode ser necessário o uso de claquete tanto em filmagens simultâneas como independentes. Nas simultâneas pode haver dificuldade de claquete aparecer nos múltiplos vídeos - ideias: flash, laser associados a algum áudio (mesmo que vocal).

Notar a necessidade de encaixar os vídeos no cenário, o que pode ser feito via fusão suavizada entre as imagens, o que o Hugin faz usando o enblend, mas pode também se usar o multiblend, ou ainda via processos como chroma key. Outras opções são o uso de máscaras alpha borradas, seja no kdenlive seja via imagemagick - até por que a saída final, pelo que vi até o momento, é feita em quadros separados, viabilizando o processamento via scripts.

Formato final para a cúpula

Alternativas

http://webuser.fh-furtwangen.de/~dersch/mp/MotionPanoramas.html

Apêndice A - Instalações

Instalando o Panotools::Script

Primeiro é necessário instalar o Perl, uma linguagem de programação interpretada na qual a ferramenta é escrita.

Linux/Unix

Na maioria dos Unixes o perl já está presente. Caso não seja seu caso, veja como instalar pacotes na sua distribuição e instale o perl. Depois dele instalado basta instalar o Panotools::Script através do comando cpan do perl:

 cpan Panotools::Script

Escolha as opções automáticas e vá confirmando as opções. É necessário estar conectado à internet.

Windows

Um que já usei, testei e que vem com o comando cpan que precisamos é o Strawberry Perl
  • Finalizada a instalação, abra um terminal de comandos: Menu Iniciar / Executar
  • Na janela de execução digite "cmd" e dê ENTER
  • Na janela de terminal que se abre execute
 cpan Panotools::Script
  • Escolha as opções automáticas e vá confirmando as opções. É necessário estar conectado à internet.

Glossário

Equiretangular
tipo de projeção com proporção 2x1 a partir da qual se constrói o panorama esférico; um planisfério da Terra é uma projeção equiretangular.
Fator de corte - crop factor
Factor de conversão (por vezes também referido como Multiplicador de Distância Focal (Focal Length Multiplier)
HFoV - Horizontal Field of View
Campo de visão horizontal. Representa o ângulo, em graus, da horizontal da imagem. A orientação da imagem é relevante. Normalmente para fotos panorâmicas imersivas a câmera é colocada na vertical. O HFOV da imagem será a medida angular do menor lado da imagem. O HFOV pode se referir tanto a cada imagem individual quanto a um panorama final montado. Numa esférica o HFOV é 360º.
Nadir
Ponto localizado para baixo, na vertical, em relação a um ponto de vista. Normalmente aqui é em relação ao ponto de onde a foto foi feita.
Sensor APS-C
Sensor da grande maioria das máquinas digitais atuais; herdado do antigo formato APS em filme, existem algumas variantes com tamanhos ligeiramente diferentes.
Sensor full frame
sensor de 24x36mm, como os antigos negativos/slides em filme chamados de 35mm
Zenith
Ponto localizado para cima, na vertical, em relação a um ponto de vista. Normalmente aqui é em relação ao ponto de onde a foto foi feita.

Referências Externas

Dispositivos "One Shot"

Fabricantes de dispositivos / adaptações multi-câmera:

Ferramentas pessoais
Anúncio