Detect, recognize, extract and analyze objects from photos and video
We develop custom software that identifies objects in photos and videos.
Development of custom software programs for:
Which Object Recognition Approach Is Right for You?
Traditional Image Processing Approach
This approach is most appropriate if the object you want to identify has specific, distinctive attributes that are easily identified. Also, the object should be distinct from the background.
For example, identifying a part in a metal shop based on its shape and the location of holes for screws. Or identifying a PC board using the placement of components as well as their shapes and other patterns. Or identifying Lego pieces using their colors, shapes, and the number of rows and columns of embossed circles present. This approach uses predefined rules to classify an object into one group or another. The parameters used by these rules are fixed and do not change which means the algorithm does not "learn" from previous experience for use when it encounters new images.
Machine Learning Approach
This approach is most appropriate when the variations in the visual appearance of a particular object are diverse (even after camera perspective corrections are performed) and a large number of sample images is available to learn from. For example, recognition of specific faces, plants and animals where a very high number of parameters are used to create a complete and a definitive identification. The sample images used for learning need to be representative of both the object and the environment in which the object will be recognized.
This approach is based mainly on statistics. For this reason, the choice of samples used for learning will have a major impact on its accuracy.
Hybrid Approach
When aspects of both approaches come into play, a hybrid approach is called for.
For example when an image processing algorithm updates the parameters from its rules, according to new sets of images, it adapts to new data by learning. Another example is that of a machine learning algorithm that combines multiple features extracted using various image processing techniques to produce the best result.
Identify and track faces and objects in video
Our technology identifies faces and objects in video. Frame by frame, it records the x, y coordinates of its findings and displays a bounding box around the found face or object.
As an implementation of Recognition Technology, our software learns to recognize a face or object using an initial training set of sample images. As it analyzes this training set, it computes factors that are likely to make the face or object unique and uses these factors to create a learning profile of the item for future recognition.
To improve its accuracy, our solution also uses Tracking Technology and User Assistance where the user has the option to correct mistakes.
The software tracks each item it finds in the video. It uses the findings in one frame to identify faces or objects in the next and previous frames even if the object's appearance changes slightly from frame to frame. For example, when a person turns his head or smiles.
When the initial, automated detection completes, the user has the option to confirm the findings. If any errors are found, the user can correct them with an easy-to-use interface.
The results of Tracking and User Assistance allow the system to update its learning profile for future use.
By combining Recognition Technology, Tracking Technology, and User Assistance, our solutions identify and track faces and objects in video with a very high degree of accuracy over what Recognition Technology can accomplish alone.