
Continuamos a experimentar o Raspberry Pi, equipado com duas câmeras ao mesmo tempo. Deixe-me lembrá-lo de que todos os jogos ocorrem em torno do Raspberry Pi Compute Module 3 Lite, inserido no berço StereoPi.
Em análises anteriores, instalamos câmeras em paralelo e trabalhamos com um efeito estéreo. Aqui, a abordagem é exatamente o oposto: as câmeras olham em direções diferentes, mas são equipadas com lentes grande angulares (200 graus). E vamos colar o panorama esférico de 360 graus!
Introdutório
Distração: como não há co-autoria de artigos sobre Habré, mencionarei o texto principal. Esse experimento foi realizado em conjunto, comigo - com ferro e experimentos em campo, e com a
@Gol - a parte do software.
Vamos começar do final: aqui está o
resultado, na verdade o panorama .
Então, desta vez, tente fazer um panorama esférico. Em vão, ou algo assim, temos duas câmeras a bordo. Obviamente, era possível conectar duas câmeras a framboesas comuns, no modo de multiplexação (uma câmera funciona e depois a outra, escolhendo a certa através do GPIO). Mas, então, os quadros serão filmados sequencialmente e, se houver movimento, isso não será muito estressante. É verdade que, quando há um disparo "simultâneo" de duas câmeras estéreo de duas câmeras, também não há sincronização, estupidamente dois raspistill são lançados simultaneamente. Mas há mais chances de que os objetos na borda não se espalhem muito. Você também pode gravar vídeo com duas câmeras ao mesmo tempo e costurá-lo em um panorama de vídeo esférico. Mas então tentarei de alguma forma. Primeiro, você precisa lidar com os panoramas das fotos.
Ferro
Temos o
StereoPi , existem duas câmeras com lente olho de peixe (200 graus). Aqui estão as câmeras:
RPi Camera (M) WaveShareTemos duas câmeras pop-to-pop:

Tiramos fotos das duas câmeras. Idealmente - ao mesmo tempo, mas é possível e por sua vez. raspistill para nos ajudar. Temos essas duas fotos:
Tamanho grande
Tamanho grandePanorama de grampos
Surgiu então o problema - como criar automaticamente uma imagem com uma projeção equidistante dessas duas imagens fiscais, que quase todos os visualizadores de panorama comem. Quero fazer a conversão diretamente a bordo do aparelho de som, sem usar um software panorâmico especial.
Após muita pesquisa, o projeto de
360 câmeras foi encontrado, de onde os scripts foram tomados como base.
Mas primeiro, ainda precisamos usar um programa panorâmico separado para preparar um modelo para conversão. O programa se chama Hugin, você pode baixá-lo aqui
http://hugin.sourceforge.net/download/1. Então, baixado, instalado, lançado.
2. Selecione a opção "Simples" no menu "Interface".

3. Clique no botão "Baixar imagens ..." e adicione nossos dois arquivos (21.jpg e 21-2.jpg).

4. Defina o “Tipo de lente” - “Circular VyrvyGlaz”. A distância focal é de 1,2 mm e o multiplicador da distância focal é de 7,6x. E na guia "Projeção", verifique se há um campo de visão de 360 x 180 e "Equidistante". Por padrão, deve ser assim.

5. Clique no botão "2. Alinhar ... ". A busca por pontos de controle começará; deve haver algo em torno de 10 a 13 pontos. O panorama já está começando a parecer um panorama.

6. Agora, o mais importante é salvar o projeto, pois precisamos dele para a colagem automática subsequente de todos os panoramas subsequentes gravados com essas duas de nossas câmeras olho de peixe. Arquivo -> Salvar como -> nome do arquivo stereopi-template.pto
7. Volte para a guia "Assistant" (se de repente saímos de lá) e clique em "Create panorama ...". Uma janela adicional será aberta, selecione a altura 1944 lá, a largura em si será calculada. O formato LDR (formato de imagem de saída) está definido como JPEG. Qualidade - o que você quiser, por padrão - 90. Ainda não tocamos nas correções. Clique em OK Defina o nome do arquivo com o resultado. E clique em "Salvar".

8. Mais algumas janelas serão abertas, em uma das quais o log do processo será exibido.

9. Como resultado, temos algo parecido com isto:
Tamanho grandeEsta é a projeção equidistante necessária do nosso panorama esférico!
Levamos costura a bordo
Mas são todas as letras!
Queremos não tomar banho de vapor com todas as fotos, precisamos automatizar esse processo. Para isso, precisaremos do arquivo do projeto, que salvamos na etapa 6. Pegamos o arquivo do projeto (eu o tenho
stereopi-template.pto ) e o
copiamos para o aparelho de som.
Copiamos o script de colagem
stereopi-stich.sh, que precisa de dois parâmetros de entrada - os nomes dos arquivos de fotos de peixes que precisam ser colados em uma projeção equidistante.
Mas primeiro você precisa instalar todo o software necessário no aparelho de som. Basta baixar esse script e executá-lo no steropix.
installer.shAgora execute o script de colagem:
O processo leva cerca de 50 segundos. Seria necessário procurar oportunidades de otimização, mas até agora não é ruim.
O resultado é um arquivo
Tamanho grandeIsso é tudo! Colocamos automaticamente duas pescarias em um equidistante! E com o mesmo script, você pode colar todas as imagens subseqüentes, o principal é que o posicionamento mútuo de nossas câmeras não muda muito, caso contrário, a colagem desaparecerá.
Agora você precisa reproduzi-lo em algum lugar do site. Para visualizar nosso panorama no site, você precisa de um player panorâmico.
IMHO, o melhor reprodutor interno de panoramas - KRPano. Pode tirar fotos e vídeos. Sim, pago. Eu já comprei uma licença há cinco anos, mas o player foi criado em um flash e o HTML5 não conseguiu. E agora ele sabe como, mas você precisa comprar uma licença novamente.
Você pode baixar o
meu arquivador , onde você tem tudo o que precisa para
ver isso . O mais nishtyak - pequeno planeta (escolha do modo de visualização - clique com o botão direito do mouse).

Esperamos que nosso experimento seja interessante não apenas para você, mas também útil como receita. Obrigado pela atenção!
Links úteis:
Projeção EquiretangularMuita teoria sobre pesca e projeção equidistanteSoftware para visualização de panoramasManual grande para colagem automáticaBrianBock / câmera 360