Thursday, October 21, 2010

Instalando OpenCV 2.1 no Ubuntu 10.10

Ubuntu 10.10
OpenCV 2.1


Status:
  • 2011.12.10 - Alterando procedimento para Ubuntu 11.04 e OpenCV-2.3.1.a.
  • 2011.07.26 - Corrigido procedimento de instalacão no Ubuntu 10.10. Exemplos em Python estão funcionando.
  • 2011.06.18 - Criado exemplo de wsrest_face_detect com get retornando dados xml da posicao e tamanho das faces detectadas, e gravando cada face num arquivo.
  • 2011.03.07 - Instalado e funcionando os exemplos em C (facedetect=+-600ms) e em Python (facedetect=+-400ms).

ToDo:
  • 2011.06.18 - Ver possibilidade de retornar a imagem no get junto com o xml.

Instalacão:
  • sudo apt-get install build-essential pkg-config libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev python-opencv  libgtk2.0-dev libcv-dev libhighgui-dev
  • wget https://launchpad.net/ubuntu/+source/gtk+2.0/2.22.0-0ubuntu1/+build/1977449/+files/libgtk2.0-dev_2.22.0-0ubuntu1_i386.deb
  • wget https://launchpad.net/ubuntu/+source/gtk+2.0/2.24.4-0ubuntu2/+build/2437921/+files/libgtk2.0-dev_2.24.4-0ubuntu2_i386.deb
  • cd /opt
  • wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.1/OpenCV-2.1.0.tar.bz2
  • sudo tar xvf OpenCV-2.1.0.tar.bz2
  • cd OpenCV-2.1.0

  • Ubuntu 11.04:
  • wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/...../OpenCV-2.3.1a.tar.bz2
  • Problema: O OpenCV2.3.1 foi instalado manualmente (p/fontes) em cima do OpenCV-2.1 nativo do ubuntu natty. Funcionaram alguns exemplos do opencv (c e python), aparentemente os problemas estavam relacionados com a interface gráfica e com o acesso as imagens das câmeras. Workaround: desinstalar opencv2.1 e apagar pasta opencv2.3, reiniciar, reinstalar opencv2.1 nativo do natty (synaptic libcv2.1 libcv2.1-dev libcv-dev libhighgui2.1 libhighgui-dev), testar o opencv (mesmo problema), reinstalar o opencv2.1 pelos fontes (deu erro no make em ), reinstalar opencv2.3.1 e testar (funcionou! n sei como ou porquê).

  • sudo cmake -D BUILD_PYTHON_SUPPORT=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D BUILD_NEW_PYTHON_SUPPORT=ON . (verifique se FFMPEG = 1)
  • sudo make (zzz.)
  • sudo make install

  • ### Ignorar linha abaixo para o Ubuntu 11.04
  • sudo mv /usr/local/lib/python2.6/site-packages/cv.so /usr/local/lib/python2.6/dist-packages/cv.so

  • sudo nano /etc/ld.so.conf.d/opencv.conf (new file with this content: /usr/local/lib)
  • sudo ldconfig
  • sudo gedit /etc/bash.bashrc
  • Acrescente no final do arquivo o conteúdo das duas linhas abaixo:
  • PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
  • export PKG_CONFIG_PATH
Compilando exemplos em C:
  • cd /opt/OpenCV-2.1.0/samples/c
  • sudo chmod +x build_all.sh
  • sudo ./build_all.sh
Testando exemplos em C:
  • cd /opt/OpenCV-2.1.0/samples/c
  • ./facedetect --cascade="/opt/OpenCV-2.1/data/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg
  • ./facedetect --cascade="/opt/OpenCV-2.1/data/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5
Testando exemplos em Python:
  • synaptic (python-opencv python-dev)
  • cd /opt/OpenCV-2.1.0/samples/python
  • copiar pasta "OpenCV"/data para "OpenCV"/samples
  • ./facedetect.py 0
  • ./motempl.py (contorno e movimento)
  • ./laplace.py (contorno)

Links: