Computer Vision Tools for programmers
For application developers, especially mobile app developers, finding the correct vision library is not an easy task. A usual to-go is OpenCV library, a comprehensive and robust computer vision library that can run on most platforms, including Linux, Windows, Mac OS, Android, and iOS. OpenCV is a SwissTool for computer vision. It includes an army of widely-used computer vision algorithms for simple tasks such as color conversion to complicated processing such as face recognition. However, as a SwissTool, OpenCV can be slow for a lot of computer vision tasks. Particularly, for mobile devices, OpenCV has too much footprint to satisfy the real-time latency requirements. Besides, it may also contain the particular algorithm you want.
Here I put together a list of OpenCV alternatives that can facilitate building you computer vision applications.
Library | CPU | GPU Support | Mobile Oriented | Comments |
---|---|---|---|---|
OpenCV | yes | no | cuda api, limited functions | |
dlib | yes | no | no | |
openVX | yes | no | yes | |
openGL | no | yes | ||
GPUImage | no | yes | ||
Accelerated CV | ||||
Armadillo |