Wednesday, February 27, 2013

For the last year, I have been working on my free time on an augmented reality app for decorating your house:






Read more here:

vuPad website

or just go ahead and download it:

App Store (iPad only for now)



Friday, June 3, 2011

Examining the Preconditioned Conjugate Gradient in Cloth Simulation

Description


High quality cloth simulation is based on implicit methods. A variety of methods have been proposed to solve the linear systems of equations, with the conjugate gradient and multi-grid being the most commonly used. In this technical report we examine the preconditioned conjugate gradient method . More precisely, we analyze the quality of different preconditioning schemes that have been proposed for cloth simulation as well as a novel preconditioning scheme that was recently proposed for the Poisson problem.
Additionally, we examine parallelization options for those preconditioners that produced the best results in the first part of our analysis and discuss advantages and limitations of each option

Video Demonstration




In the video, it can be seen that Incomplete Poisson outperforms Block Jacobi as a preconditioner

Monday, March 28, 2011

Real-time human tongue simulator

New entry in the blog!!

I just finished a real-time human tongue simulator.  This was partially my work as well as the work of a fellow PhD student , Alex Rickett.

The objective here was to simulate the human tongue as close as possible to the real thing while under the requirement of fast, real-time simulation. As you can see in the following video, the results are pretty good, especially for the main movements of the tongue (left-right,up-down etc).

The secondary "intrinsic" muscles are harder to model and are in fact a subject of discussion among the research community. Thus, smaller , intricate movements as that of the tip of the tongue are not perfectly controlled yet.

The user is able to use the sliders to control the different muscles in the tongue.



The modelling of the tongue muscles is shown below

The project was built using BulletPhysics in C++ with OpenGL.

See more in the project page :

Wednesday, March 23, 2011

Kinect Based face detection and expression recognition (in progress)

My most recent project is to create a robust face detection and facial expression recognition algorithm using the Kinect's depth sensor and RGB camera.

The idea behind it is that while face detection has been studied extensively in the recent years, it never reached a point of robustness suitable for everyday use. The problem is that doing face recognition using only RGB cameras the result depends greatly on environmental conditions and mainly lighting.

Kinect on the other hand offers an accurate depth sensor in addition to the RGB camera. The depth sensor works with IR light and is totally independent of lighting conditions. It may even be possible to recognize a face in total darkness!!!

Below are some screenshots of this work.

Depth Sensing:


Depth Based Segmentation





 PCA on a captured 6D vector (depth, x,y location and RGB components of a user)




Face Data Extraction:


The work is being done using OpenNI and matlab, although in the future it will be implemented entirelly in c++.

My first openGL animation

The following is my first effort to create a graphics animation for my Computer Graphics class. It was done in OpenGL and it was ranked among the top animation videos for the quarter.

Some facts about this animation:  

> It was done in under 2 weeks from scratch.
> I implemented my own physics engine to detect collisions and calculate how to throw the ball, how to jump etc.
> The animation is not programmed frame by frame. Instead , since I gave every player instructions how to jump, pass, shoot, or defend, I simply give the "actors" commands.


Tuesday, March 22, 2011

Imagine Cup 2009, Greek Finals winner

This is my team's project for the 2009 Microsoft ImagineCup Competition that got us first place in Greece and a chance to represent Greece in the worldwide finals that took place in Cairo,Egypt.


Our project is named “Ai.D” (Artificial Intelligence Doctor) and it is an automatic malaria diagnosis program for remote rural areas. It captures automatically images from blood samples through a connected microscope then analyzes them in real time to determine the probability of malaria infection.

The main algorithm is a graph based segmentation algorithm coupled with a trained neural network to classify infected cells according to their color and shape.

The final presentation of my team's project in Cairo :


                                       AiD imagineCup 2009 Cairo Presentation
           


It included a station to capture, analyze and transmit data as well as a desktop client application and a windows mobile app.






The project was implemented in under 3 months using C#,C++ in Visual Studio 2008. SQL server 2008 was used as well asp.net for some parts of the project.

Modelling Elastic Behavior

This is the result of a University project in Scientific Computing.It was done in C++ and OpenGL. The elastic behavior of the rod was approximated with Finite Element methods.