[an error occurred while processing this directive]
por Katja Socher <katja(at)linuxfocus.org>
Sobre o autor:
Katja é a editora germânica de LinuxFocus. Ela gosta de Tux,
filmes & fotografia e o mar. A sua página pessoal
encontra-se aqui:
http://www.tuxgraphics.org.
Traduzido para Português por:
Vinicius Gama Pinheiro <vinicius(at)im.ufba.br>
Conteúdo:
|
Criando visões panorâmicas usando Hugin, Enblend e Gimp
Abstrato:
Neste artigo eu te mostrarei como criar uma figura panorâmica
usando Hugin, Enblend e Gimp.
_________________ _________________ _________________
|
Criando visões panorâmicas usando Hugin, Enblend e
Gimp
Sempre me impressiono quando vejo uma imagem mostrando uma
visão panorâmica. Ainda não tenho uma câmera com uma função
específica para criação de panoramas. Mas isto não é
necessário. Com Linux tudo é possível e você pode criar ótimas
visões panorâmicas usando Hugin, Enblend e o Gimp.
Hugin "costura" as imagens em uma só e às vezes o que ele
produz sozinho já é satisfatório. Na maioria das vezes,
contudo, você terá que realizar melhorias. Enblend tenta obter
resultados que disfarçam e ocultam os possíveis pontos de
junção entre as imagens. Finalmente, para dar um toque final na
imagem, utilizamos o Gimp. As versões utilizadas para este
artigo são Hugin 0.4 Pre, Enblend 1.3 e Gimp 2.0.
Escolhendo suas imagens
Ok, vamos ver como isso funciona. Aqui vemos um grupo de
imagens de Montreal tiradas a partir do Mont Royal em abril
deste ano.
Eu te direi os passos que segui para fazer uma imagem
panorâmica dele, e assim você pode aplicar os mesmo passos nos
seus próprios trabalhos.
Primeiro eu criei um novo diretório e coloquei as imagens que
queria utilizar dentro dele. Isto não é realmente necessário
mas eu acho mais fácil dessa forma. Até onde eu sei você não
pode ordenar suas imagens com Hugin mas tem que adicioná-las na
ordem correta.
Escolha suas imagens cuidadosamente já que a qualidade da
imagem final depende muito delas. Tenha certeza de que essas
imagens foram tiradas a partir de uma mesma distância para que
os objetos que aparecem em imagens distintas tenham o mesmo
tamanho. Além disso as imagens precisam se sobrepor o
suficiente (recomenda-se sobreposição entre 20-30%).
Hugin
Ok, depois de escolhido as imagens você precisa iniciar o
Hugin e adicionar as imagens sobre a seção "Imagens". Clique em
"Add individual images" e escolha o diretório que contenhas
suas imagens. Se você as colocou dentro de um diretório
separado você pode selecionar todas elas de uma só vez
pressionando a tecla ctrl enquanto clica em cada uma das
imagens. Ou então você pode selecioná-las individualmente. Você
terá uma prévia da imagem ao selecioná-la. Dessa forma poderá
verificar se está realmente selecionando as imagens corretas.
Algumas vezes é bom definir uma das imagens para ser uma âncora
de posição clicando primeiro na imagem e depois em "Anchor this
image for position". Essa imagem será uma espécie de base para
o alinhamento das outras imagens em torno dessa âncora.
Agora mude para "Cameras and Lens". Selecione uma das imagens.
Em muitos casos os campos de "Design Parameters" já estarão
automaticamente preenchidos. Senão você precisará preencher os
"degrees of views" com um número em torno de 40 (Hugin preenche
este campo com o valor 41.112 no meu caso). Isto é o grau de
visão que a maioria das cameras "normais" estão utilizando. Os
tipos de lentes geralmente são "Normal (rectlinear)" e os
valores de comprimento focal são preenchidos com 12.48 e o
fator "crop" com 3.8. Dessa forma você terá alguns valores caso
sua câmera não seja detectada. Se você tem uma câmera especial
consulte seu manual ou "brinque" um pouco com valores
diferentes.
Depois disso vá para a seção "Control Points". Este é o lugar
onde você vai dispender mais tempo. Certifique-se de que as
opções "auto fine tune" e "auto add" estão selecionadas. Dessa
forma Hugin te ajudará a definir os pontos de controle e
corrigí-los um pouco caso seja necessário.
No topo você pode ver uma lista com o número das imagens.
Selecione 0 na esquerda e 1 na direita para ver as primeiras
duas imagens. Clique num ponto relevante da imagem na esquerda,
depois procure pelo mesmo ponto na imagem da direita e clique.
Caso o segundo clique esteja fora da região adequada o Hugin
irá pedir para você clicar novamente. Geralmente você
necessitará de 3 ou 4 pontos. Hugin os utiliza para ver onde as
duas imagens se sobrepõem. Se as imagens forem muito complexas
talvez sejam necessários mais pontos de controle. Depois de
clicar nesses pontos pode ser que você tenha um texto do tipo
"found corresponding point, mean xcorr coefficient: 0.987115".
Infelizmente um novo ponto nem sempre melhora esse valor, e
você talvez queira deletar um ponto selecionando-o na lista de
pontos e clicando em "delete". Para selecionar bons pontos de
controle no Hugin tente selecionar pontos brilhantes e/ou bem
destacados que apresentam bastante contraste. Além disso evite
pontos muito próximos das beiras e cantos das imagens, e se
você tiver um panorama com objetos no plano de frente
recomenda-se evitar selecionar esses objetos para evitar efeito
de paralaxe. Você pode também aumentar o foco na imagem para
selecionar os pontos mais precisamente.
Antes de continuar com o próximo par de imagens (1 e 2) vá para
"Optimizer", deixe a seleção no padrão "Optimize positions
(pairwise...)" e clique em "Optimize now!". Depois retorne para
a seção "Control Points" e repita todo o procedimento (clique
na imagem 1 da esquerda e na imagem 2 da direita para
selecionar o próximo par, etc.) até que você tenha trabalhado
por todas as imagens. Depois de ter otimizado (com
"Optimize...") o último par vá para a seção "Stitcher".
Vamos começar por baixo. Aqui você precisa decidir qual
formato de imagem utilizar para o arquivo de saída. Se você não
quiser utilizar Enblend você pode escolher jpg, png ou tiff. Se
você quiser realçar suas imagens com Enblend mais tarde, o que
será geralmente o normal, você precisa escolher a opção
"multiple tiff". Dessa forma você não gera uma imagem final
apenas, mas tantas imagens finais quanto o número de imagens
selecionadas para compor o panorama.
Depois você precisa escolher o "Stitching engine". Por padrão
o campo está com a opção "PTStitcher" mas se você não possui o
PTStitcher instalado escolha a opção "nona".
Clique em "Calculate Optimal Size" e em "Calculate Field of
View". Estamos quase lá.
Antes de apertar "Stitch now" você apenas precisa decidir se a
saída deverá ser no estilo retilíneo ("rectilinear"),
cilíndrico ("cylindrical") ou equiangular ("equirectangular").
Se você está compondo apenas duas imagens juntas então
"rectilinear" será a escolha correta; se você possui muitas
imagens mas sem formar uma visão de 360 graus, "cylindrical"
será provavelmente a escolha correta, e para uma visão de 360
graus escolha "equirectangular". O fato é que se você fizer a
escolha errada aqui Hugin poderá encerrar com um erro (se você
quiser uma visão equiangular enquanto as entradas só permitem
uma visão retilínea por exemplo) ou o resultado pode sair um
pouco estranho aos olhos (se o resultado deveria ser cilíndrico
e você escolheu retilíneo, por exemplo).
Depois de clicar em "Stitch now" Hugin pede que você
especifique o nome do arquivo de saída e aí as imagens de saída
começam a serem geradas. Isto pode levar algum tempo, e aí você
pode tomar um cafezinho enquanto liga pra sua avó.
As imagens ficarão parecidas com essa:
Enblend
Agora é hora do Enblend fazer a sua parte do trabalho.
Enblend trabalha diretamente a partir do shell, então abra um
terminal e digite
enblend -v -o output.tif input1.tif input2.tif...
onde saida.tif especifica o arquivo onde você quer que o
resultado final seja salvo, e entrada1.tif especifica o
primeira imagem de entrada etc.
Depois de entrar o comando, aproveite e tome um segundo
cafezinho e, de novo, ligue para algum parente ou talvez até
dois, já que essa parte realmente toma bastante tempo. Bem, é
claro que se você possui apenas 2 figuras será relativamente
rápido, mas com mais figuras isto é realmente lento. Porém o
resultado definitivamente vale a pena...
O Gimp
Se você visualizar sua imagem agora verá que já possui uma
visão panorâmica. Ainda precisamos do Gimp para dar um toque
final. Com Hugin e Enblend a imagem gerada fica com alguns
espaços vazios nas beiradas. Se você não conhece muito bem o
Gimp ou não quer perder muito tempo aqui, pode simplesmente
selecionar a parte da imagem que não possui nenhum espaço vazio
com a ferramenta de seleção retangular , clicar com o botão direito na
imagem em Edit-->Copy e depois em File-->New. Um novo
arquivo se abre, então vá em Edit-->Paste e depois em
File-->Save para salvar a nova imagem.
Mas frequentemente é também possível preencher os espaços
vazios utilizando a ferramenta de clonagem em combinação com a
ferramenta de borrar . Você primeiro aplica
a ferramenta de clonagem cuidadosamente. É sempre bom trabalhar
com uma cópia (Image-->Duplicate) já que você pode querer
desfazer suas alterações especialmente se você ainda não possui
muita experiência com essa ferramenta. Se você selecionou a
ferramenta de clonagem, clique com o mouse na área que precisa
ser clonada enquanto segura a tecla Ctrl. Depois solte a tecla
e clique com o mouse na área que você quer preencher. Agora vá
preenchendo como se tivesse usando um pincel. Algumas vezes
você obterá uma aparência mais natural se você definir a área
de clonagem várias vezes.
Finalmente, para homogeneizar a área pintada de forma mais
detalhada clique na ferramenta de borrar e a utilize com o
mouse sobre as suturas ainda visíveis entre a imagem original e
a nova área criada, até ficar satisfeito. Agora salve a sua
imagem. Talvez você queira preencher só algumas lacunas e
cortar fora as outras.
O panorama está pronto. Você ainda pode tentar melhorar a
qualidade da sua imagem utilizando as ferramentas que eu
descrevi em meu artigo Photo magic
Gimp
Aqui está o panorama final de Montreal:
Aproveite e invente! E como sempre, divirta-se!
Referências
-
O sítio do Hugin é: http://hugin.sourceforge.net/
Lá você pode fazer o download do Hugin e achar alguns
tutoriais bastante úteis.
A instalação do Hugin é um pouco complexa porque depende de
alguns pacotes que não são padrões.
A melhor solução é provavelmente instalar um dos pacotes
rpm pré-compilados encontrados em
http://bugbear.blackfish.org.uk/~bruno/panorama-tools/
Para usar PTStitcher você precisa do pacote
panorama-tools-nonfree. Ou então continue com a opção
"nona".
Para aqueles que gostariam de instalar a partir do
código fonte são necessárias as seguintes dependências:
- Hugin é uma interface para o panotools então você
precisa das ferramentas do panotools disponíveis em
http://panotools.sourceforge.net/ As ferramentas do
panotools, também chamadas de panorama-tools, possuem as
seguintes dependências: jdk-1.3.1 (disponíveis em
www.javasoft.com) e as seguintes bibliotecas que
geralmente fazem parte da maioria dos sistemas linux:
libjpeg, libtiff, libpng, zlib.
- wxGTK GUI em http://www.wxwindows.org/
- fftw Fast Fourier Transform library em
http://www.fftw.org/
- boost development library em http://boost.org/
- vigra computer vision library em
http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/
Vigra é necessário para o stitcher 'nona'.
Finalmente você precisa do Hugin, claro, que pode ser
baixado em http://hugin.sourceforge.net/
- Enblend está disponível em http://www-cad.eecs.berkeley.edu/~mihal/enblend/
Você pode baixar Enblend aí e pode também aprender mais sobre
como ele faz o que faz.
A instalação do Enblend é no estilo "selecione e
prossiga".
- O Gimp provavelmente estará instalado no seu computador
já que ele acompanha a maioria das distribuições.
Provavelmente você já terá trabalhado com ele muitas vezes.
Mas de qualquer forma o sítio é http://www.gimp.org
- E finalmente, se você está interessado em ler mais os
meus artigos, estão todos disponíveis na minha página (com
novo design) em http://www.tuxgraphics.org
Aqui você sempre achará versões atualizadas deste artigo em
inglês.
Forma de respostas para este artigo
Todo artigo tem sua própria página de respostas. Nesta página você pode enviar um comentário ou ver os comentários de outros leitores:
2004-10-21, generated by lfparser version 2.50