Image Processing - on a Smartphone
As a key element for a new product, our customer needed a system for feature extraction from images. This system should be as simple and inexpensive as possible for the users, preferably using their smartphone and the camera integrated in it. The customer itself did not have image processing or signal processing resources for such a development.
At the end of the iterative innovation project, the customer received an app that allows the user to extract the desired features using the smartphone camera, easily and quickly. And he got a development environment which makes the efficient adaptation to new requests of the users possible, especially their validation.
The phases that led from the pure idea to the app were the following:
Since the basic feasibility of the product idea was not clear yet, a functional prototype was first implemented on the PC using minimum effort. This prototype was able to process stored images and showed that the function could be realized in principle. The first solution was extended for batch tests, so that the algorithms and their parameters could be tested and optimized on hundreds of real images.
The next step was to demonstrate the implementation in the mobile phone. First, the computational effort for the algorithm was estimated and it was verified that a smartphone is fast enough. In the demonstrator, the PC still calculated the algorithms, but it received the images from a smartphone via WLAN and returned the results to it for presentation. Once the user experience was thus clarified, the performance of the overall algorithm was optimized, validated again in a batch process, and then implemented as an app for Android and iOS.
Expertise and Technologies
The test environment on the PC is designed for fast changes using OpenCV and Python. The app is implemented in C# using Xamarin for Android and iOS, with the core algorithm optimized for fast turnaround time using OpenCV and C++.