Mudanças entre as edições de "Doppia"

De LCAD
Ir para: navegação, pesquisa
 
(37 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
 
[[category:Doppia]]
 
[[category:Doppia]]
 
== Manual de instalação do projeto Doppia ==  
 
== Manual de instalação do projeto Doppia ==  
 
=== Introdução ===
 
;Baixar:
 
  
 
=== Baixando o projeto Doppia ===
 
=== Baixando o projeto Doppia ===
 
<div style='text-align: justify'>
 
<div style='text-align: justify'>
Para baixar o Doppia, basta acessar o link do projeto https://bitbucket.org/rodrigob/doppia e navegar até a sessão "Downloads" ou clicar diretamente [https://bitbucket.org/rodrigob/doppia/get/6a510bea9c97.zip]
+
Para baixar o Doppia, basta acessar o link do projeto https://bitbucket.org/rodrigob/doppia e navegar até a sessão "Downloads" ou clicar diretamente [https://bitbucket.org/rodrigob/doppia/get/6a510bea9c97.zip neste link]
 
</div>
 
</div>
  
;Instalar:
+
;Pré-requisitos:
 +
<ul>
 +
<li>Sistema operacional Linux (testado com sucesso na distribuição Ubuntu (versões 12.04.x e 14.04);</li>
 +
<li>Compilador GCC versão 4.5 ou superior;</li>
 +
<li>Unidade de processamento gráfico (GPU) com suporte a plataforma CUDA (versão 2.0 ou superior);</li>
 +
<li>Coleção de bibliotecas boost (no Ubuntu: sudo apt-get install libboost-all-dev e em seguida sudo ldconfig para definir os paths das bibliotecas recentemente instaladas);</li>
 +
<li>Biblioteca SDL - Simple DirectMedia Layer (no Ubuntu: sudo apt-get install libsdl1.2-dev);
 +
<li>Biblioteca Google Protocol Buffers (acesse http://code.google.com/p/protobuf/downloads/list para baixar e instalar);</li>
 +
<li>Biblioteca OpenCV preferencialmente na versão 2.4 ou superior (para instalar, acesse http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation).
 +
<br/>
 +
PS: Use CUDA enable caso possua GPU com suporte a CUDA;</li>
 +
<li>Bibliotecas libjpeg e libpng (no Ubuntu: sudo apt-get install libjpeg-dev libpng12-dev);</li>
 +
<li>CMake (no Ubuntu: sudo apt-get install cmake);</li>
 +
</ul>
 +
<br/>
  
=== Instalando a MAE ===
+
=== Instalando o projeto Doppia ===
 
<div style='text-align: justify'>
 
<div style='text-align: justify'>
Nesta seção descreveremos o roteiro de instalação passo-a-passo da MAE nos ambientes testados até então (Windows Xp, Windows 7, Ubuntu, Fedora). No entanto acreditamos que seja possível instalá-la em qualquer sistema LINUX/WINDOWS seguindo os passos aqui citados, porém algumas diferenças na instalação entre distribuições diferentes podem surgir, ficando a cargo do usuário resolvê-las.  
+
<ul>
 +
<li>Ao descompactar o projeto, no diretório raíz, existe um script chamado generate_protocol_buffer_files.sh que corrige possíveis erros de diferentes versões do Google Protocol Buffers. Execute-o: source generate_protocol_buffer_files.sh;</li>
 +
<li>Regenerar todos os arquivos .proto do projeto Doppia para a versão do Google Protocol Buffers instalada, através do comando: protoc --cpp_out=. <nome_do_arquivo>.proto.
 +
<br/>
 +
Note que stixels.proto utiliza plane3d.proto. Para solucionar o problema copie os arquivos ../ground_plane/plane3d.p* para o diretório ../src/stereo_matching/stixels/;</li>
 +
<li>Adicione a linha de código #include <google/protobuf/io/coded_stream.h> no cabeçalho do arquivo ~/src/helpers/data/DataSequence.hpp</li>
 +
<li>Módulo ground_estimation: incluir os links opencv_core opencv_imgproc opencv_calib3d no arquivo CMakeList.txt (linha 129) na tag ${opencv_LIBRARIES} opencv_legacy;</li>
 +
<li>Módulo object_detection: incluir o seguinte trecho de código no cabeçalho do arquivo ~/src/objects_detection/SoftCascadeOverIntegralChannelsFastStage.hpp:
 +
<br/>
 +
#if defined(__CUDACC__) // NVCC
 +
<br/>
 +
#define NEW_ALIGN(n) __align__(n)
 +
<br/>
 +
#elif defined(__GNUC__) // GCC
 +
<br/>
 +
    #define NEW_ALIGN(n) __attribute__((aligned(n)))
 +
<br/>
 +
#else
 +
<br/>
 +
    #error "Define NEW_ALIGN macro for your compiler!"
 +
<br/>
 +
#endif
 +
<br/>
 +
e substitua __align__(N) por NEW_ALIGN(N);
 +
</li>
 +
<li>Módulo object_detection: incluir o link opencv_gpu na tag ${opencv_LIBRARIES} (linha 250) do arquivo CMakeList.txt em ~/src/applications/object_detection;</li>
 +
<li>Módulo object_detection: adicionar a tag ${CUDA_LIBRARIES} -L/usr/local/cuda-XX/lib (para sistemas 64 bits, use o path -L/usr/local/cuda-XX/lib64) -lcudart no arquivo CMakeList.txt (adicionar abaixo da linha 250) em ~/src/applications/object_detection;</li>
 +
</ul>
 
</div>
 
</div>

Edição atual tal como às 08h36min de 20 de maio de 2014

Manual de instalação do projeto Doppia

Baixando o projeto Doppia

Para baixar o Doppia, basta acessar o link do projeto https://bitbucket.org/rodrigob/doppia e navegar até a sessão "Downloads" ou clicar diretamente neste link

Pré-requisitos
  • Sistema operacional Linux (testado com sucesso na distribuição Ubuntu (versões 12.04.x e 14.04);
  • Compilador GCC versão 4.5 ou superior;
  • Unidade de processamento gráfico (GPU) com suporte a plataforma CUDA (versão 2.0 ou superior);
  • Coleção de bibliotecas boost (no Ubuntu: sudo apt-get install libboost-all-dev e em seguida sudo ldconfig para definir os paths das bibliotecas recentemente instaladas);
  • Biblioteca SDL - Simple DirectMedia Layer (no Ubuntu: sudo apt-get install libsdl1.2-dev);
  • Biblioteca Google Protocol Buffers (acesse http://code.google.com/p/protobuf/downloads/list para baixar e instalar);
  • Biblioteca OpenCV preferencialmente na versão 2.4 ou superior (para instalar, acesse http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation).
    PS: Use CUDA enable caso possua GPU com suporte a CUDA;
  • Bibliotecas libjpeg e libpng (no Ubuntu: sudo apt-get install libjpeg-dev libpng12-dev);
  • CMake (no Ubuntu: sudo apt-get install cmake);


Instalando o projeto Doppia

  • Ao descompactar o projeto, no diretório raíz, existe um script chamado generate_protocol_buffer_files.sh que corrige possíveis erros de diferentes versões do Google Protocol Buffers. Execute-o: source generate_protocol_buffer_files.sh;
  • Regenerar todos os arquivos .proto do projeto Doppia para a versão do Google Protocol Buffers instalada, através do comando: protoc --cpp_out=. <nome_do_arquivo>.proto.
    Note que stixels.proto utiliza plane3d.proto. Para solucionar o problema copie os arquivos ../ground_plane/plane3d.p* para o diretório ../src/stereo_matching/stixels/;
  • Adicione a linha de código #include <google/protobuf/io/coded_stream.h> no cabeçalho do arquivo ~/src/helpers/data/DataSequence.hpp
  • Módulo ground_estimation: incluir os links opencv_core opencv_imgproc opencv_calib3d no arquivo CMakeList.txt (linha 129) na tag ${opencv_LIBRARIES} opencv_legacy;
  • Módulo object_detection: incluir o seguinte trecho de código no cabeçalho do arquivo ~/src/objects_detection/SoftCascadeOverIntegralChannelsFastStage.hpp:
    #if defined(__CUDACC__) // NVCC
    #define NEW_ALIGN(n) __align__(n)
    #elif defined(__GNUC__) // GCC
    #define NEW_ALIGN(n) __attribute__((aligned(n)))
    #else
    #error "Define NEW_ALIGN macro for your compiler!"
    #endif
    e substitua __align__(N) por NEW_ALIGN(N);
  • Módulo object_detection: incluir o link opencv_gpu na tag ${opencv_LIBRARIES} (linha 250) do arquivo CMakeList.txt em ~/src/applications/object_detection;
  • Módulo object_detection: adicionar a tag ${CUDA_LIBRARIES} -L/usr/local/cuda-XX/lib (para sistemas 64 bits, use o path -L/usr/local/cuda-XX/lib64) -lcudart no arquivo CMakeList.txt (adicionar abaixo da linha 250) em ~/src/applications/object_detection;