Instalar
OpenCv en Processing y en otras plataformas es un poco latoso, al
menos para gente con poca experiencia en programación.
Este
resumen busca primero ser una anotación pra no olvidar y al tiempo
es la memoria abierta para los otros.
Condiciones
del sistema
Windows7
a 64 bits
Processing
1.5.1
OpenCv-2.3.1
precompilado para windows
Una
reseña, OpenCv es una biblioteca abierta de visión computacional,
esto significa que los algoritmos que se implementaron en esta
biblioteca, sirven para que el ordenador pueda reconocer ciertas
cosas, esto es a grosos modo ya que también hay algoritmos que
sirven para modificar las imágenes de tal forma que este procesos de
reconocimiento de elementos primitivos como lineas, diagonales,
esquinas y puntos etc. sea posible por el ordenador, lo mismo aplica
para imágenes de video, que si lo recordamos están compuestas en
realidad por una secuencia de imágenes fijas, entonces lo que hace
el proceso de visión es que aplica sus algoritmos a cada una de las
imágenes al tiempo que las va adquiriendo.
OpenCV
esta hecha para programarse con C o C++ para usarla con Processing es
necesario usar una biblioteca que nos deja usarla esta es JavaCVPro
en esta caso la versión 5.
Los
pasos a seguir son los siguientes:
1.-
Lo primero es descargar y descomprimir la versión 1.5.1 de
processing http://processing.org/download/
2.-
Despues descargar la version 2.3.1 de OpenCV e instalarla
directamente en C: o el nombre que tenga nuestra unidad pero en la
raíz del sistema.
3.-
Para poder usar opencv hay que descargar algunas otras bibliotecas
(opencvpro y gsvideo y nyar4psg). Por partes primero GSVideo que
substituirá a la bibliotec nativa de video de processing. Instalar
GSVideo http://gsvideo.sourceforge.net/
Nt.
Si se pretende usar como un servidor Kinect y OpenCV al parecer lo
mejor es instalar la version para 32 bits de SimpleOpenNI, por que
para que esta funcione con la de 64 hay que bajar la ultima version
de JDK y substituirla por el modulo de Java de Pricessing,
(C:processing\java) y si se hace esto esto ya no funcionan las
bibliotecas de video.
Ya
que es necesaria para algunas de las funciones de JavaCVPro
Nt2.
En algunos de los sitios mencionan que también es importante
instalar JavaCv y Javacpp, lo que a mi me paso es que estas
bibliotecas estropeaban todo, las he retirado y siguen corriendo los
ejemplos de processing ó mejor dicho ahora si corren los ejemplos.
5.-
Después de instalar todo esto hay que instalar JavaCVPro
5 http://www.mon-club-elec.fr/mes_downloads/javacvPro-0.5.zip estas
se pueden instalar en C:processing/modes/java/libraries ó en las
libraries de terceros que son las que uno pone en la carpeta
libraries donde sea que este ubicada nuestra carpeta de sketches.
La carpeta donde van nuestros sketches se elije desde las porpiedades
de processing.
Al
parecer es mejor en esta ultima carpeta ya que si cambiamos la
versión de processing no perderíamos nuestras librerías ni habría
que estarlas rescatando.
6.-
Una vez instalado todo lo anterior viene la parte chinguanguenchona
(la mas delicada), hay que modificar las variables del entorno de
Windows.
Para
hacer esto hay que dar clic derecho sobre el icono de computer y en
el menú contextual ir a propiedades, después ir a configuración
avanzada del sistema y después a variables del entorno.
Una
vez allí hay que modificar las variables:
INCLUDE
%OPENCV%\build\include
LIB
%OPENCV%\build\x86\vc10\lib;
OPENCV
C:\OpenCV-2.3.1\build\x86\vc10
CLASSPATH
C:\Program
Files\OpenNI\Bin64\org.OpenNI.jar;C:\Program Files
(x86)\QuickTime\QTSystem\QTJava.zip; C:\OpenCV-2.3.1\build\x86\vc10\bin\opencv_core_231.dll;
C:\OpenCV-2.3.1\build\x86\vc10\bin\opencv_highgui231.dll;
C:\OpenCV-2.3.1\build\x86\vc10\bin\opencv_contrib231.dll;
C:\OpenCV-2.3.1\build\x86\vc10\bin\opencv_ffmpeg.dll;
PATH
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program
Files\WIDCOMM\Bluetooth Software\;C:\Program Files\WIDCOMM\Bluetooth
Software\syswow64;C:\PROGRA~2\PICC;C:\PROGRA~2\PICC;C:\Program
Files\Intel\WiFi\bin\;C:\Program Files\Common
Files\Intel\WirelessCommon\;C:\Program Files (x86)\Common Files\Roxio
Shared\DLLShared\;C:\Program Files (x86)\Common Files\Roxio
Shared\10.0\DLLShared\;C:\Program Files\OpenNI\Bin64;C:\Program
Files\PrimeSense\NITE\bin64;C:\Program
Files
(x86)\QuickTime\QTSystem\;C:\OpenCV-2.3.1\build\x86\vc10\bin\;C:\OpenCV-2.3.2\build\common\tbb\ia32\vc10\
QTJava
C:\Program
Files (x86)\QuickTime\QTSystem\QTJava.zip
En
Azul están marcadas las esenciales para OpenCv, obviamente cada cual
tiene que modificar las rutas para que coincidan con los directorios
que manejan en su PC.
Nt3.
No usar los programas que andan en los sitios que nos ayudan a
instalar "OpenCV" para modificar el classpath y el path del
entorno de windows, es mas latoso hacerlo a mano pero es mas seguro.
//////////////////////////////
Una
vez realizado esto, reiniciar la computadora, y abrir un ejemplo de
JavaCvPro en processing y correrlo.
Esperamos
que todo funcione, cruzas los deditos, sostenemos el aire y después
gritamos¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
Las
referencias a las que recurrí para ir resolviendo este problema son:
Nt4.
Las referencias están puestas en orden de importancia, cualquier
duda prácticamente la referencia del mon-club-elec es perfecta solo
agregamos las partes del path de las variables del entorno que se
encuentran en la discusión del foro de mas adelante.
May
the Force be with you¡¡¡¡¡¡¡¡¡ you will need. He :P
La
referencia a
JavaCVPro: http://www.mon-club-elec.fr/pmwiki_reference_lib_javacvPro/pmwiki.php
La
guia paso a
paso: http://robottini.altervista.org/processing-and-opencv-2-3-1-how-to-install-in-win-7
Referencias
para entender el path, classpath y demás de windows que hay que
modificar necesariamente para usar el opencv:
No hay comentarios:
Publicar un comentario