OCR for handwritten digits (Development)
A local cosmetics retailer had a set of predefined printed forms that were used by their sellers to request the products they needed to fulfill their client's orders. These forms had a column where the quantity requested of each product was provided, and that number was handwritten (since the forms were preconfigured, the code of the product was known in advance). The complete system consisted of a scanning module which provided the images that were later processed by the OCR and, in some cases, sent to manual validation if the confidence level was not high enough. The user interface was written in VB6 and the OCR part was C++ based.
Phone calls analysis system (Development)
Based on the information provided by local phone companies, the system consisted on an importation module that was able to recognize several input formats and feed the database of phone calls. Using the time, origin, destination and location of the call, the system provided several tools to analyze the behavior of a given person. The first versions were written in VB6, but a new Web based Java version was created.
Product sales data mining application (Development)
Data mining project for Telecom, which consisted on two main modules: data recollection, and analysis and statistics.
The objective of the system was to provide a platform to enhance the plans offered by the company, based on usage and income levels of clients.
Dashboard for Verizon (Development)
Skin deceases detection (prototype) (Development)
Applying Independent Component Analysis (ICA), it is possible to extract pure signals from sources which have these signals merged. The typical example is having three people speaking in a room with the microphones located in different places. Even though the recorded signal of each microphone will contain the merged voices, applying ICA over the three recordings, the voice of each independent person can be extracted. Of course noise will always be an issue, but the results are really good.
For this project, potential clients had a set of photographs of their skin taken, which were later analyzed by the software. The process was based on a paper that stated that, since images have three channels (red, green, blue), information related to melanin and hemoglobin distribution can be extracted from them. Based on those extracted signals and several image processing algorithms, statistics were presented to the dermatologist.
The software was written in C++ using some functions from OpenCV, and the GUI was created using Delphi 7.
Automated reports generation tool (Development)
The SISA project has a reporting/statistics module which is based on PL/SQL. The structure of the reports is mostly fixed, but the tables involved and the processing criteria is not. The structure of the report was similar to an OLAP cube, and forced the implementation of 30-100 PL/SQL functions for each report. Because of this, the reports aspect of the project was always out of sync with the rest of the system. The tool I created provided a user interface that allowed a technical user to choose the fields that were involved in the report, the logic that was to be applied and some extra options. Using this information, all the functions and configuration files were automatically generated, reducing the development time drastically.
The application consisted of an AngularJS based client, and a Java/Velocity back-end.