Con OpenCV 3.0 se pueden encontrar bordes en imágenes, detectar rostros, seguir objetos, etcétera, en una aplicación. Esto antes era un trabajo de muchos meses si había que implementarlo de cero, pero con esta biblioteca de funciones las cosas se han simplificado notablemente. En las versiones anteriores e OpenCV había quejas sobre lo difícil que era implementar las funciones, o bien, que la documentación era oscura y difícil de seguir. Hoy en día con la versión 3.0, mucho de este problema se ha aligerado notablemente.
OpenCV 3.0 tiene unos 2500 algoritmos que pueden usarse en sus proyectos de programación. Se puede usar desde C++, C, Java, Python e incluso MatLab. Corre bajo Windows, Android y Mac OS. También permite ahora usar los GPUs, que pueden acelerar los procesos con ayuda de CUDA y OpenCL, pero hay que advertir que aún esto es un trabajo que no está siquiera terminado. Hay sin embargo, cosas que pueden acelerar los procesos en los GPUs.
Entre muchas de las funciones que pueden usarse están:
- Detección de texto,
- Algoritmos de fotografía computacional (HDR, inpainting, edge-aware filters, superpixels, …)
- Seguimiento de objetos y algoritmos de flujo óptico
- Nuevas características, incluyendo descripciones de líneas KAZE/AKAZE
- Optimización en general (programación lineal, hill climbing)
- Soporte mejorado para Python, incluyendo Python 3.0, así como muchos tutoriales sobre como usar OpenCV con Python
Hay también mejoras por parte de la comunidad de código abierto:
- Módulo de visión inspirado en la biología
- Módulo de registro de imágenes, entre otros
Hay que reconocer que OpenCV es un esfuerzo comunitario que ha permitido introducir a muchos programadores a estos esquemas de reconocimiento visual, de forma que se ha enriquecido el interés por el tema y se ha evitado tener que lidiar con software propietario, en donde los algoritmos usados no están disponibles. Hoy en día OpenCV es responsable de progreso en robótica, fotografía computacional, procesamiento de imágenes médicas e incluso, en la posibilidad de usar todo esto hasta en una Raspberry Pi.
Referencias: