Our current technical expertise covers various aspects of computer vision area: image stitching, video analysis, image processing (image filtering, geometric image transformation, feature and object detection, motion analysis and object tracking), computational photography, etc. Also, we are experts in optimizing and parallelizing the code in order to better use the hardware resources.
To facilitate video manipulation and analysis, at frame level, we developed a custom library over ffmpeg library.
One of the subfields of computer vision is Object Detection and Counting. For these kinds of projects, we’ve developed custom algorithms and even used different algorithms from OpenCV library.
We used Haar classifiers and classic image processing algorithms to implement objects detections and measurements functionalities in different projects. Also we used optical flow techniques for features tracking over video frames to implement functionalities like object recognition and tracking from video input.
General computer vision projects were developed using C++ programming language for the back-end modules and C# (using Windows Presentation Foundation) for the front-end modules.
The field of computer vision has a broad spectrum of potential applications and the evolution of it and its benefits is quite astounding to watch. Some examples of the applications of object detection and counting algorithms that we developed are:
- Counting cells from images acquired by microscope;
- Counting logs loaded in trucks (the pictures being taken from the back of the truck);
- Counting pipes from stacks of pipes;
- Counting and tracking pigs from video streaming;
- Counting fish from live video acquired by sub-aquatic camera.
All of these products helped the end user to save time and money and get better cost-efficient results in their business process. The key to success in the field of computer vision applications is both the proper understanding of client's needs and providing the good technical solution for it.