Image recognition software, or computer vision, allows applications to understand images or videos. This software takes images as input, and a computer vision algorithm provides an output, such as a label or bounding box.
Some other aspects of image recognition include image restoration, object recognition, and scene reconstruction. These capabilities are typically embedded inside intelligent applications.
Image recognition software can be used by data scientists to train image recognition models, as well as by developers looking to add image recognition features to other software. The type of user would determine the format in which this software is accessed, whether that be via a machine learning library or framework, an API or SDK, or an end-to-end platform.
This type of software should be distinguished from related forms of software. For example, although data science and machine learning platforms frequently provide tools for training computer vision models, they are broadly focused and not solely geared toward image recognition.
In addition, while image recognition is technically a form of machine learning (ML), the machine learning category is focused on tools, such as software, APIs, SDKs, and frameworks, that provide other ML capabilities like recommendation engines and pattern recognition. Further, software that is specifically designed for the recognition of text can be found in the optical character recognition (OCR) category.
Although many image recognition solutions are multipurpose and allow for the recognition of various types of images and objects, some have particular focuses.
These focuses include logo detection, facial recognition, object detection, and explicit content detection. In addition, some of these products can only handle image files, while others can handle videos as well.
Finally, while most of these tools work in the cloud (i.e., one must send the image to the cloud to be processed), some provide the ability for image processing on the edge or on the device.
To qualify for inclusion in the Image Recognition category, a product must:
Provide a deep learning algorithm specifically for image recognition
Connect with image data pools to learn a specific solution or function
Consume the image data as an input and provide an output
Provide image recognition capabilities to other applications, processes, or services