The purpose of my thesis is to create a client-server architekture in which the client is an universal tool for the applications of the cv4sensorhub project at my university department, and even for other external applications. And where the server is contributing to the cv4sensorhub project, is a sample to communication with the universal client and a demonstration of its benefits and functionality, while being a standalone component for a complex image processing task.
The client is based ont he Android platform and communicates with an endpoint that follows the RESTful architectural style. It is able to call the built-in camera application of the Android system and take photos with it. It is also able to send the taken picture with an user-chosen filename, or send an image picked from the file system, bot has a HTTP request. The image is sent as MIME Multipart format and the response comes as a JSON data structure, which is displayed after appropriate processing.
The purpose of the server is to examine the similarity of two images to a predetermined extent, in viewpoints according to the purpose. Accordingly, it performs an image processing operation that uses MSER region-recognition algorithm, and then prepares and stores descriptors based on the outcome of the algorithm. In case of a new received image, it compares the newly built descriptor with the already stored ones, and then examines the similarity between them. in response to the request, it returns the filenames associated with similar images and the polar coordinates of the regions found on the new image.