jacquard version 2.0 OpenCV. Mejora realizada por Victor Suarez.
Versión 2 del programa Jacquard2 el cual permite a partir de una tarjeta perforada generar unas imagenes. En esta nueva versión se ha modificado la detección delos agujeros de la librería Simple CV por Opencv. Ademas se ha hecho una refactorización del código para que sea más legible.
Para más info consultar la anterior versión.
Novedades de esta versión:
Este proyecto, tiene 2 ramas. La rama principal o master, que contiene la versión compatible con python 2.7; además de los siguientes requisitos.
- pygame 1.9.3 -> Solo para Python 2.7; no añadir en Python 3.x.
- pillow 4.1.0
- Opencv 2.4.3
NOTA: Se ha añadido un fichero requeriments.txt para ayudar a la instalación de las dependencias. Para instalarlo con PIP:
$ pip install -r requeriments.txt
Como funciona:
Para ejecutar el programa, simplemente ejecutar:
$ python main.py
Según esta creado este proyecto se permiten utilizar distintas camaras ya sea en la propia RAspberry o una webcam. Para cambiar del tipo de camara, observar las clases dentro del fichero pymientoCamera.py en el cual hay 4 clases:
- PymientoCamera: Clase abastracta que no se puede utilizar se debe usar para implementar nuevas camras.
- WebcamPymientoCamera: Clase que permite utilizar una camara web de un ordenador de escritorio (o webcam por USB).
- FakeCamPymientoCamera: Clase que implementa una camara falsa. Sirve como depuración ya que siempre devolvera el mismo fichero.
- PiCameraPymientoCamera: Clase que implementa la camara de la Raspberry Pi. NOTA: Esta clase viene comentada; descomentar tanto la clase como el import para usar en Raspberry Pi.
Para cambiar la clase a utilizar, cambiarlo en el fichero main.py en la linea 33:
camera = FakeCamPymientoCamera('tarjeta2.jpg')
Asignando el objeto camera a la correspondiente clase;(Nota: la clase debe heredar de PymientoCamera.
ejemplo:
camera=PiCameraPymientoCamera()
Para poder crear la versión compatible con opencv3 y python 3, se debe utilizar la rama llamada python3 la cual configurará el proyecto y librerías para este entorno.
Ver archivo configuración.md