Various industries apply image analysis software to identify people and objects, assess quality and possible damage, grade and sort products and derive other meaningful information from images and videos.
We develop custom image analysis solutions tailored to specific needs of our customers and address a wide range of image processing tasks in manufacturing, healthcare, retail, etc.
Looking for specific conditions in digital imaging data: detecting regions of interest for further analysis, distinguishing objects from the background.
Labeling or classifying objects in digital images based on one or several object classes: people, vehicles, electronic components, etc.
Recognizing individual features of an object and classifying it with more precision: identifying individual people, specific vehicles, animal species, device models, etc.
Identifying a specific person’s face. Facial recognition has a variety of applications, from retailers recognizing their customers in order to provide them exclusive services to high-level security systems identifying suspects and trespassers.
Application examples include assessing the level of a customer’s satisfaction, allowing a smart camera to shoot a photo at the right moment, etc.
Checking for surface defects, foreign materials, discoloration, absence of components, etc. See our automated visual inspection page to find out more details.
Classifying objects according to their quality (e.g., grading fruits and vegetables) and then sorting them accordingly.
Using an optical system to count similar objects on the production line or in a warehouse.
Identifying damage issues in complex electronic devices, vehicles, etc.
Assisting diagnosticians in reading plane X-ray images, CT-, PET- and MRI-scans, ultrasound scans (including 3D and 4D), isotope scans, etc. Enhancing clinical images, measuring organ dimensions and blood flow, detecting pathological signs and suggesting a diagnosis. For more details, see our page on medical image analysis.
Producing 3D models from 2D data (e.g., medical scans)
Reading texts and number sequences (printed and handwritten).
Identifying behavior anomalies and alarms in surveillance videos, counting people traversing a passage./p>
Indexing visual databases.
Image analysis software will locate the region of interest automatically (e.g., detect a barcode on a parcel or a road sign on a wayside).
Image preprocessing will remove unnecessary noise and enhance image quality.
We use SIFT and other state-of-the-art feature detection algorithms that are rotation-invariant to some reasonable extent.
Training artificial neural networks with a sufficient amount of data, we can solve many classification challenges, including a large number of categories to classify.
Depending on our customer’s specific problem, our consultants will suggest the most appropriate solution based on one of the following approaches or their combination.
This approach will be a perfect choice if it’s possible to determine a limited set of strict rules. Usually, this would be the case when the visual data amount is small and their variability is low, for example, when the task is to detect and read a barcode stripe pattern.
Shows excellent performance within a narrow domain.
Doesn’t require big datasets.
Performance can be easily validated.
Explicability – we can clearly see every decision step right in our code.
Easy debugging.
Requires explicit knowledge about all possible appearances of objects to analyze.
Poor generalization: rules should be highly specific in each particular case.
Labor-intensive development: each rule should be programmed explicitly, which takes time and effort.
Machine learning is particularly good at analyzing big and unstructured data, because it doesn’t need any explicit rules to be programmed. Instead, it uses big datasets to derive all the rules on its own.
Deals better with complex objects and tasks.
Doesn’t require explicit knowledge.
Easier scalability.
Lower operational cost.
Requires large image datasets.
Implementation can be more complicated.
‘Black-box’ problem – all the rules are hidden in the complex inner structure of an algorithm (e.g., deep neural network) and are difficult to extract.
We look at a problem as a whole, considering all the nuances that might affect an image analysis system’s performance. Our experts will be eager to help you choose the most appropriate solution and avoid possible pitfalls to achieve the best results.
A consultation will cover:
Camera and lighting selection
Process optimization
Integration with other IT systems (ERP, POS, etc.)
Clarify requirements in detail
Create a proof of concept
Develop a prototype
Implement the solution
Provide support and maintenance
Programming languages:
C++
MATLAB/Octave
R
Python
Objective-C
Libraries and frameworks:
OpenCV 2.x, 3.x
Caffe
tesseract-ocr
MatConvNet
Numpy
Platforms:
Linux
Windows
Mac OS
Android
Tell our consultants about your image analysis challenge and we will work to get you the solution you need.
We’d love to stay in touch. Describe the digital challenge you’ve faced, and we’ll get back to you with a solution we can offer.