Projects

Chill - Meet and Movie Date

Chill - Meet and Movie Date

Chill is an android app, which aims to connect people based on their common interests in movies and tv shows.

The app is hosted on Google cloud, it uses a NoSQL database as a backend and it grew organically to 500 users in the first 2 weeks.

European Training Foundation Database

European Training Foundation Database

Architectured and developed a full-stack web application for the European Training Foundation (ETF). The purpose of the app is to store, organize and manipulate their data, perform validations and verifications on them and build reports for internal or external use.

The user is able to add, edit or delete data from the browser using an excel-like table, create reports based on selected filters and build interactive visualizations such as Pie Charts, Bar Charts and Maps.

Simulation of Robotic Arm

Simulation of Robotic Arm

The goal of the project was to study the behaviour of a 4-dof robotic arm.

The arm is simulated using Matlab and the Corke’s Robotic Toolbox, in order to solve its Forward and Inverse Kinematics, form the Dynamics and control it to move in a certain path (using Feedforward Torque Control).

Go to Project
Differential Wheeled Robot

Differential Wheeled Robot

Programming of a 2-wheeled robot equipped with a STM32 Nucleo-64 development board, an ultrasonic sensor and accelerometer. The robot was able to follow a pre-defined path, while detecting and avoidinf obstacles.

Go to Project
Master Thesis

Master Thesis

As part of my thesis during my MEng degree in Electrical and Computer Engineering , we developed a Computer Vision library that allows the user to recognize objects in images using deep learning. To accomplish that, the user/developer can define his own neural network architecture and train his own images on it.

The system supports fully connected and convolutional neural networks , which we implement in C++ from scratch. To speed up the training, we decided use parallelization and execute the training in GPU, which we programmed with the OpenCL library. Also OpenCV was used to parse and read the images and do all the necessary preprocessing of the dataset.

Go to Project
Robot motion planning

Robot motion planning

The goal of the project was to simulate a 2D robot (a car for example) and develop a motion planning system in a predefined environment with obstacles.

The robot can have 2 or 3 degrees of freadom and can move hotizontally, vertically or rotate itself. Using computational geometry techniques such as voronoi diagramm and delauny triangulation, we were able to define the environment and detect the obstacles. Afterwards, we found the shortest route to the destination by constructing the viibility graph and perform a local search to move across the graph nodes.

The whole process was simulated and animated with an in-house library for computer graphics .

Go to Project
Source code analysis library

Source code analysis library

To measure the quality and the robustness of web apps, we built a library to analyze the source code , both on the frontend and the backend and create automatic reports. The system extracts wide-used metrics such as Cyclomatic Complexity, Halstead effort and Maintainability index and present them in reports with charts and tables for better comprehension and exploration of the code.

The calculation of the metrics is performed with R, as the source code is parsed and analyzed using text processing methods. The metrics and insights for all the diferrent files are merged to a single report, which include pie charts, bar charts and other intuitive graphs. Currently the library supports Javascipt and PHP.