The Image Recognition System
Description
The system is an innovative augmented reality application that recognizes visual objects and enables consumers to find information about what they see on a TV screen, billboards, or anywhere else right in the moment. Users can simply scan an image and the system will provide all the information about advertised goods or services.
The customer
The system is an innovative augmented reality application that recognizes visual objects and enables consumers to find information about what they see on a TV screen, billboards, or anywhere else right in the moment. Users can simply scan an image and the system will provide all the information about advertised goods or services.
The need
The legacy application API was outdated with a complicated business logic and bad user experience. In addition, the system transferred such data as a session id and user credentials with each query, which posed security vulnerability. The customer needed a smart middle ware that would connect the old API with today’s rich applications. Altoros was to suggest a scalable, high-load, and fast solution that would provide a quick search through a large database of different media content.
The challenges
The legacy outdated API created a lot of challenges. To design a connector that would allow for integrating new applications with the system, the developers were to investigate the business logic of the solution and its architecture. Being developed long ago, the API featured slow complicated queries/calls. The team also had to solve a compatibility issue. The data is stored in the system in the JSON format and then converted to the XML format to be displayed to users. In addition, some data contained CDATA sections. They had to be shown but this feature was not supported by the JSON format.
The solution
To improve availability and performance of the system, the team suggested dividing the stored data into two groups and keep images separately from the text descriptions. The indexed text data is stored in a new database with a fast search. Altoros’s engineers also helped to setup and manage a computing cluster that was hosted in the Profitbricks virtual environment. This SaaS solution was selected because of its live vertical scaling feature.
The outcome
Currently the system is being tested under different types of tasks to identify the maximum load it can deal with. If necessary, a number of improvements will be made to reach a response time of 1 second for 1,000 concurrent users.
Technology stack
Server platform
Ubuntu 12.04.2
Programming languages
Java
Technologies
Java Servlets, Mongo Java Driver, Jackson JSON Processor, Jackson FasterXML, HTTPUnit, XMLUnit
Databases
MongoDB
Client Platform/Application Server
Apache Tomcat 7
Development Environment
Ubuntu 12.04, Eclipse IDE, Jenkins
Contact us
Jan-Terje Nordlien
Daglig leder
jan-terje@altoros.no+47 21 92 93 00Altoros Norge AS
Org.nr.: 894 684 992
Tordenskiolds gate 2,
0160 Oslo