Estoy empezando a trabajar en un proyecto de visión computacional, por lo que me es indispensable usar OpenCV y un lenguaje en el que pueda programar. Para el proyecto usaré el poderoso C++ y para mejor comodidad usaré un IDE (Code Blocks).
En este post, mostraré cómo instalar OpenCV, el IDE de C++ (Code Blocks) y a configurar un proyecto de prueba.
En este post, mostraré cómo instalar OpenCV, el IDE de C++ (Code Blocks) y a configurar un proyecto de prueba.
ESPECIFICACIONES
- El sistema operativo que uso actualmente es Ubuntu 16.04.
- Instalaré Code Blocks 13.12.
- Descargaré e instalaré OpenCV 3.3.1.
Asumo que el que lea y ponga en práctica este post tiene conocimientos básicos de linux y su terminal.
Comenzaremos por actualizar los repositorios del sistema con
ᐳ sudo apt-get updateᐳ sudo apt-get upgrade
Ahora instalaremos C++ y Code Blocks, esta instalación es muy corta y no requiere de mucho conocimiento.
INSTALAR CODE BLOCKS
- Instalaremos C++ con el comando
ᐳ sudo apt-get install g++
- Instalaremos Code Blocks con el comando
ᐳ sudo apt-get install codeblocks
INSTALACIÓN DE OPENCV
- Instalar las dependencias con los siguientes comandos
ᐳ sudo apt-get install –assume-yes build-essential cmake gitᐳ sudo apt-get install –assume-yes pkg-config unzip ffmpeg qtbase5-dev python-dev python3-dev python-numpy python3-numpyᐳ sudo apt-get install –assume-yes libopencv-dev libgtk-3-dev libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-devᐳ sudo apt-get install –assume-yes libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-devᐳ sudo apt-get install –assume-yes libv4l-dev libtbb-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-devᐳ sudo apt-get install –assume-yes libvorbis-dev libxvidcore-dev v4l-utils vtk6ᐳ sudo apt-get install –assume-yes liblapacke-dev libopenblas-dev libgdal-dev checkinstall - Descargar y extraer OpenCV (3.3.1) para Linux
-
Descargar OpenCV del siguiente link, a la fecha actual la última versión es la 3.3.1.
-
Colocaré el archivo comprimido en el directorio “Documentos”.
-
Vamos al directorio "Documentos" con el comando.ᐳ cd Documentos
-
Extraeré el archivo comprimido con el comando.ᐳ sudo unzip opencv-3.3.1.zip
-
- Crear un directorio de compilación
-
Una vez descomprimido el archivo ingresamos al directorio “opencv-3.3.1”, creamos un nuevo directorio llamado “build” e ingresamos a él.ᐳ cd opencv-3.3.1ᐳ sudo mkdir buildᐳ cd build
-
Corremos los siguientes comandos.ᐳ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D FORCE_VTK=ON -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_CUBLAS=ON -D CUDA_NVCC_FLAGS="-D_FORCE_INLINES" -D WITH_GDAL=ON -D WITH_XINE=ON -D BUILD_EXAMPLES=ON ..ᐳ make -j $(($(nproc) + 1))
-
- Instalar OpenCV usando Cmake
ᐳ sudo make install
ᐳ sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
ᐳ sudo ldconfig
ᐳ sudo apt-get update - Reiniciar la máquina
ᐳ pkg-config --modversion opencv
Y tendremos el siguiente resultado.
Ahora que tenemos ya instalado Code Blocks y OpenCV pasaremos a crear un proyecto de prueba en Code Blocks y a configurarlo para conectar OpenCV con el proyecto.
CONFIGURAR CODE BLOCKS CON OPENCV
- Crear un nuevo proyecto en Code Block.
- Configurar el proyecto
-
Ingresamos a Project build options en Project -> Build options...
-
Configurar los Compiler Flags del proyecto en general.
-
Compilar las opciones del Debug.
-
En Linker settings del debug debemos de linkear a las siguientes librerías.
- Y finalmente se configura el Release, cuyos Compiler Flags deben quedar de la siguiente manera.
-
- Prueba
-
Colocaremos una imagen llamada "lena.jpg" en la raíz del proyecto.
-
Hacemos clic en el botón "Build and Run"
-
Resultado
-
Fuentes
https://github.com/BVLC/caffe/wiki/OpenCV-3.3-Installation-Guide-on-Ubuntu-16.04
http://jc-info.blogspot.pe/2010/01/configurar-opencv-20-codeblocks.html
http://jc-info.blogspot.pe/2010/01/configurar-opencv-20-codeblocks.html
No hay comentarios.:
Publicar un comentario