top of page

Computer Science Projects

Here are the computer science projects I realized during my years at Ecole Polytechnique and Columbia University.

Computer Science Demo Reel 2023

Gabor Noise

Image Synthesis

Gabor Noise

Implemented the 'Procedural Noise using Sparse Gabor Convolution' by A. Lagae and Al. introducing a new procedural noise.

Body and Cloth Animation, a Choreography

Computer Animation

Body and Cloth Animation, a Choreography

Created all of the user interface and generated the animation starting from a woman 3D model to create a dance animation loop. It also included some cloth physically based animation.

Variational Shape Approximation

Digital Representations and Analysis of Shapes

Variational Shape Approximation

Implemented the 'Variational Shape Approximation' by D. Cohen-Steiner, P. Alliez & M. Desbrun, introducing a new way to approximate shapes.

Raytracing

Image Synthesis

Raytracing

A rendering engine programmed from scratch in C++ using raytracing method with the Phong shading model, in addition to refraction and reflection rays. The simple geometries (sphere, planes, triangle, etc..) are computer generated. (Source files: Copyright (C) 2022 by Hadi Fadaifard)

Cloth Simulation

Computer Animation

Cloth Simulation

Physical model of a cloth with spring forces and computation of the contacts with spheres and cylinders.

Linear Blend Skinning

Computer Animation

Linear Blend Skinning

Computed the skinning around different skeletons according to the movement using Linear Blend Skinning.

Refocus application

Image Analysis and Computer Vision

Refocus application

Refocus system using different focus images, measuring focus using modified Laplacian filter and choosing best focus image in Matlab. (Image source: https://www.cs.columbia.edu/CAVE/projects/focalsweep/)

Augmented Reality

Image Analysis and Computer Vision

Augmented Reality

Automatic generation of 3D shapes on pre-filmed or live filmed surfaces, using AR pipelines on OpenCV in C++.

Generation of an Animated Forest

Computer Animation

Generation of an Animated Forest

Procedural generation of a forest terrain and animal animations in C++ using OpenGL and VCL.

3D Shapes Generation with Bezier Curves

Digital Representations and Analysis of Shapes

3D Shapes Generation with Bezier Curves

Generated 3D hair shapes using Bezier Curves on the normal circular sections.

Surface Subdivision

Digital Representations and Analysis of Shapes

Surface Subdivision

Subdivided a spherical mesh using the loop subdivision as well as an adapted method for spheres.

Line detetection

Image Analysis and Computer Vision

Line detetection

Line detection using Hough transform in Matlab. (Image source: https://boardgamegeek.com/image/113720/checkers)

Sphere Collision

Computer Animation

Sphere Collision

Generated randomized falling spheres and simulated their collisions with other spheres and with the box walls around using a physically based model.

Panorama Maker

Image Analysis and Computer Vision

Panorama Maker

Matching the features of two pictures to create a panorama applying RANSAC homography.

Point Cloud Alignment and Normal Estimation

Digital Representations and Analysis of Shapes

Point Cloud Alignment and Normal Estimation

Point alignment using Iterative Closest Point (ICP) and normal estimation using Principal Component Analysis (PCA).

Canny Edge Detector

Image Analysis and Computer Vision

Canny Edge Detector

Implemented a canny edge detector to draw the edges of a given picture.

Free Form Deformation (FFD)

Computer Animation

Free Form Deformation (FFD)

Implemented an interactive FFD for several different 3D geometric shapes.

Motion tracking

Image Analysis and Computer Vision

Motion tracking

Motion tracking using color histograms matches in Matlab. (Source video: https://www.youtube.com/watch?v=e_WBuBqS9h8&t=1568s)

Facial Expression Blend Shapes

Computer Animation

Facial Expression Blend Shapes

Programmed linear blend shapes to move from one facial expression to another.

Graph Drawing Challenge 2021

Algorithmic Geometry

Graph Drawing Challenge 2021

Offered a solution to the Graph Drawing Challenge 2021, aimed at finding the optimal graph drawing to minimize a certain graph metric.

Data Visualization of the GDC Data Portal

Data Visualization

Data Visualization of the GDC Data Portal

Visualization of the cancer data available on the GDC Portal using javascript and the D3 module.

Manual Deformers

Computer Animation

Manual Deformers

Implemented local deformers such as translating, twisting and scaling, orthogonally to the view or the geometry.

Bouncing Spheres

Computer Animation

Bouncing Spheres

Physically based simulation of bouncing spheres.

Tweet Success Prediction using Machine Learning

Machine and Deep Learning

Tweet Success Prediction using Machine Learning

Kaggle competition to predict the number of retweets of a collection of covid-related tweets using Python.

Performance Optimization for Computer Vision and Natural Language Processing

Machine and Deep Learning

Performance Optimization for Computer Vision and Natural Language Processing

Optimized performance of two different models: the VGGNet for visual recognition, and the LSTM for sentiment analysis.

Spotify Song Popularity Prediction

Machine and Deep Learning

Spotify Song Popularity Prediction

Built and compared different models to predict if a song will be popular.

Grocery Shopping Website

Data Visualization

Grocery Shopping Website

Implemented a website to do grocery shopping online using our own designed database. The project required some SQL queries, and some Python/HTML programming to code a Flask app.

UI design of the ChoreoStudio dancer's app

Data Visualization

UI design of the ChoreoStudio dancer's app

Designed a mobile application from scratch. The app was designed to help dancers create their choreographies. We mainly used Figma for the UI design, and we started a quick working prototype using JavaScript.

bottom of page