website/projects/index.html
2023-09-06 09:50:15 +02:00

527 lines
23 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="/css/franklin.css">
<link rel="stylesheet" href="/css/basic.css">
<link rel="icon" href="/assets/favicon.png">
<title>Projects</title>
<meta name="description" content="Laurent Fainsin's personnal website">
<meta property="og:title" content="Projects">
<meta property="og:description" content="Laurent Fainsin's personnal website">
<meta property="og:url" content="https://laurent.fainsin.bzh/">
</head>
<body>
<header>
<div class="blog-name"><a href="/">Laurent Fainsin</a></div>
<nav>
<ul>
<li><a href="/">Whoami</a></li>
<li><a href="/projects">Projects</a></li>
</ul>
<img src="/assets/hamburger.svg" id="menu-icon" alt="menu-icon" />
</nav>
</header>
<!-- Content appended here -->
<div class="franklin-content"><p>Here is a non-exhaustive list of my projects. <br />Most of them are in French 🇫🇷 🥖 🥐.</p>
<h1 id="professional_projects"><a href="#professional_projects" class="header-anchor">Professional projects</a></h1>
<h2>Safran (Internship), <small><span class="year">March 2023 - September 2023</span></small></h2>
<img src="https://git.fainsin.bzh/ENSEEIHT/projet-fin-etude-rapport/media/branch/master/assets/aube.jpg">
<p>Making diffusion models go brrrr.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/Safran">💾</a>
</span>
<h2>REVA - IRIT (Internship), <small><span class="year">August 2022 - September 2022</span></small></h2>
<img src="/assets/projects/reva-irit.png">
<p>Fine-tuned a state of the art Deep Learning model &#40;<a href="https://arxiv.org/abs/1703.06870v3">Mask R-CNN</a>&#41; to detect spherical markers in images for Photometric Stereophography calibration. Built using the <a href="https://www.pytorchlightning.ai/">Pytorch Lightning</a> framework, exported to <a href="https://onnx.ai/">ONNX</a> format, deployed to production in <a href="https://github.com/alicevision/AliceVision/">AliceVision</a> and <a href="https://github.com/alicevision/meshroom">Meshroom</a> with <a href="https://onnxruntime.ai/">ONNXRuntime</a>. This internship concluded with a small publication.</p>
<span class="icons">
<a href="https://git.inpt.fr/fainsil/pytorch-reva/">💾</a>
</span>
<h1 id="personnal_projects"><a href="#personnal_projects" class="header-anchor">Personnal projects</a></h1>
<h2>Personal Infrastructure, <small><span class="year">2015-2023</span></small></h2>
<p>All my dotfiles for my nixOS systems &#40;laptop &#43; servers&#41;.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/Laurent/infrastructure">💾</a>
</span>
<h2>B00 plays GBA, <small><span class="year">2021-2023</span></small></h2>
<p>Using tools such as <a href="https://websockets.readthedocs.io/en/stable/">websocket</a>, <a href="https://redis.io/">redis</a>, <a href="https://www.docker.com/">docker</a>, <a href="https://en.wikipedia.org/wiki/Real-Time_Messaging_Protocol">rtmp</a>, <a href="https://github.com/mgba-emu/mgba">mgba</a> and gluing it all together with <a href="https://en.wikipedia.org/wiki/Python_&#40;programming_language&#41;">Python</a>, we get a collaborative emulator inspired from <a href="https://en.wikipedia.org/wiki/Twitch_Plays_Pok&#37;C3&#37;A9mon">TwitchPlaysPokemon</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/Laurent/booplaysgba">💾</a>
</span>
<h2>Personal Website, <small><span class="year">2022-2023</span></small></h2>
<p>Simple static website built with <a href="https://franklinjl.org/">Franklin.jl</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/Laurent/personal-website">💾</a>
<a href="https://laurent.fainsin.bzh/">🌐</a>
</span>
<h2>Personnal website (old), <small><span class="year">2020-2022</span></small></h2>
<p>Simple website built with the static site generator <a href="https://www.11ty.dev/">11ty.js</a>. Made with <a href="https://mozilla.github.io/nunjucks/">Nunjucks</a>, <a href="https://sass-lang.com/">SCSS</a>, <a href="https://developer.mozilla.org/fr/docs/Web/JavaScript">Javascript</a>, <a href="https://yarnpkg.com/">Yarn</a> and autodeployed with a <a href="https://git.inpt.fr/fainsil/personnal-website-old/-/pipelines">GitLab pipeline</a>.</p>
<span class="icons">
<a href="https://git.inpt.fr/fainsil/personnal-website-old/">💾</a>
<a href="https://fainsil.users.inpt.fr/">🌐</a>
</span>
<h2>INP-net (president), <small><span class="year">2021-2022</span></small></h2>
<p>Active member of my school&#39;s group computer association which provides many services to over 5,000 students in 6 schools each year.</p>
<span class="icons">
<a href="https://git.inpt.fr/inp-net/">💾</a>
<a href="https://www.bde.inp-toulouse.fr/clubs/inp-net/">🌐</a>
</span>
<h2>net7 (treasurer), <small><span class="year">2021-2022</span></small></h2>
<img src="https://www.bde.enseeiht.fr/clubs/net7/images/net7-2022.jpg">
<p>Active member of my school&#39;s computer association which provides many services to over 1,000 students each year.</p>
<span class="icons">
<a href="https://git.inpt.fr/net7/">💾</a>
<a href="https://www.bde.enseeiht.fr/clubs/net7/">🌐</a>
</span>
<h2>Toulouse Hacking Convention (volunteer), <small><span class="year">April 2022</span></small></h2>
<img src="/assets/projects/thc_2022.jpg">
<p>The Toulouse Hacking Convention &#40;or THCon&#41; is a cybersecurity conference that brings together hobbyists, professionals and researchers. Personnaly helped to set up and tear down the equipment for the 2 day event, also assisted in the hardware CTF organization after the event.</p>
<span class="icons">
<a href="https://22.toulousehackingconvention.fr/">🌐</a>
</span>
<h2>Capitole du Libre (volunteer), <small><span class="year">April 2022</span></small></h2>
<img src="/assets/projects/cdl_2022.jpg">
<p>Weekend dedicated to free software through hundreds of conferences, many workshops for experts and the general public. The event welcomed 1500 participants in 2019 and in 2022. Admission to the event was free. Personnaly helped with the &quot;nix install party&quot; at the event and promoted free software and introduced attendees to GNU&#43;Linux.</p>
<span class="icons">
<a href="https://capitoledulibre.org/">🌐</a>
</span>
<h2>Git micro-training, <small><span class="year">October 2022</span></small></h2>
<img src="/assets/projects/formation-git.png">
<p>Git micro-training for the INP-net association, taught to ~50 students.</p>
<span class="icons">
<a href="https://git.inpt.fr/inp-net/formations/-/blob/master/git/2022-2023/">💾</a>
<a href="https://git.inpt.fr/inp-net/formations/-/raw/master/git/2022-2023/slides.pdf?inline=false">📜</a>
</span>
<h2>Markdown micro-training, <small><span class="year">October 2022</span></small></h2>
<p>Markdown micro-training for the INP-net association, taught to ~50 students.</p>
<span class="icons">
<a href="https://git.inpt.fr/inp-net/formations/-/tree/master/markdown/2022-2023">💾</a>
<a href="https://git.inpt.fr/inp-net/formations/-/raw/master/markdown/2022-2023/slides.pdf?inline=false">📜</a>
</span>
<h2>Git micro-training (old), <small><span class="year">November 2021</span></small></h2>
<p>Git micro-training for the INP-net association, taught to ~30 students.</p>
<span class="icons">
<a href="https://git.inpt.fr/inp-net/formations/-/raw/master/git/2021-2022/">💾</a>
<a href="https://git.inpt.fr/inp-net/formations/-/raw/master/git/2021-2022/support.pdf?inline=false">📜</a>
</span>
<h1 id="school_projects"><a href="#school_projects" class="header-anchor">School projects</a></h1>
<h2>Reinforcement learning, <small><span class="year">December 2022</span></small></h2>
<img src="/assets/projects/rl.png">
<p>Praticums in Julia about the fundamentals of reinforcement learning, implemented simple algorithms like the Value Iteration Algorithm &#40;VIA&#41; and the Policy Iteration Algorithm &#40;PIA&#41;.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-reinforcement-learning">💾</a>
<a href="https://n7.laurent.fainsin.bzh/TP-reinforcement-learning/">📜</a>
</span>
<h2>Deep Learning Project 2, <small><span class="year">January 2023</span></small></h2>
<img src="https://camo.githubusercontent.com/5ab5e0c019cdd8129b4450539231f34dc028c0cd64ba5d50db510d1ba2184160/68747470733a2f2f312e62702e626c6f6773706f742e636f6d2f2d2d764834504b704539596f2f586f3461324259657276492f414141414141414146704d2f766146447750584f79416f6b4143385868383532447a4f67457332324e68625877434c63424741735948512f73313630302f696d616765342e676966">
<p>Built in Python a Semi-Supervised Contrastive Learning model to classify animals.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-intelligence-artificielle-multimedia">💾</a>
<a href="https://n7.laurent.fainsin.bzh/projet-intelligence-artificielle-multimedia/">📜</a>
</span>
<h2>Distributed Systems and Algorithms, <small><span class="year">January 2023</span></small></h2>
<div class="iframe-wrap"><iframe src="https://raft.github.io/raftscope/index.html"></iframe></div>
<p>Studied and presented the <a href="https://raft.github.io/">Raft Consensus Algorithm</a> and its implementations.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-systemes-algorithmes-repartis">💾</a>
<a href="https://n7.laurent.fainsin.bzh/projet-systemes-algorithmes-repartis/">📜</a>
</span>
<h2>Parallel Computing, <small><span class="year">December 2022</span></small></h2>
<p>Practicums in C to learn about parallel computing with <a href="https://www.open-mpi.org/">OpenMPI</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-calcul-parallele">💾</a>
<a href="https://n7.laurent.fainsin.bzh/TP-calcul-parallele/">📜</a>
</span>
<h2>Digital Audio, <small><span class="year">December 2022</span></small></h2>
<img src="https://n7.laurent.fainsin.bzh/projet-audionumerique/figs/archi_alternative.png">
<p>Praticums in Python about voice and music processing.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-audionumerique">💾</a>
<a href="https://n7.laurent.fainsin.bzh/projet-audionumerique/">📜</a>
</span>
<h2>Compression & Streaming, <small><span class="year">December 2022</span></small></h2>
<img src="/assets/projects/csi.webp">
<p>Praticums in matlab about compression and streaming technologies. Mainly JPEG, JPEG-2000 and MPEG2.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-compression-streaming-interaction-video">💾</a>
</span>
<h2>Augmented computer Vision, <small><span class="year">December 2022</span></small></h2>
<p>Project in Python to control a virtual avatar from its camera. Used OpenPose and OpenCV.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-transversal">💾</a>
</span>
<h2>Augmented Reality, <small><span class="year">November 2022</span></small></h2>
<p>Praticums in C&#43;&#43; about augmented reality technologies, using openGL to track a checkerboard and display a 3D model on top of it.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-augmented-reality">💾</a>
</span>
<h2>Computer Vision, <small><span class="year">November 2022</span></small></h2>
<img src="/assets/projects/vision.webp">
<p>Praticums in matlab about computer vision, more precisely about detection of homologous points for matching, for mosaique stitching.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-vision">💾</a>
</span>
<h2>Inverse problems for 3D, <small><span class="year">November 2022</span></small></h2>
<img src="/assets/projects/PI3D.webp">
<p>Praticums in matlab about inverse problems for 3D, implemted various methods like structure from motion &#40;sfm&#41;, multiple view stereovision &#40;mvs&#41;, shape from shading &#40;sfs&#41;, photometric stereo &#40;ps&#41;.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-probleme-inverse-3D">💾</a>
<a href="https://n7.laurent.fainsin.bzh/projet-probleme-inverse-3D/">📜</a>
</span>
<h2>Deep Learning Project, <small><span class="year">May 2022</span></small></h2>
<img src="https://git.fainsin.bzh/ENSEEIHT/projet-reseaux-profond/raw/branch/master/docs/demo_datas.gif">
<p>A simple <a href="https://en.wikipedia.org/wiki/Convolutional_neural_network">CNN</a> <a href="https://en.wikipedia.org/wiki/Computer_vision#Recognition">image classifier</a>, trained on a custom dataset, to recognize car models in <a href="https://sideswipe.rocketleague.com/">Rocket League Sideswipe</a>. Built using <a href="https://en.wikipedia.org/wiki/Python_&#40;programming_language&#41;">Python</a>, <a href="https://www.tensorflow.org/">Tensorflow</a>, <a href="https://keras.io/">Keras</a> and <a href="https://developer.android.com/studio/command-line/adb">adb</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-reseaux-profond">💾</a>
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-reseaux-profond/src/branch/master/docs/rapport2.md">📜</a>
</span>
<h2>Geometric Modeling, <small><span class="year">May 2022</span></small></h2>
<video controls autoplay loop><source src="https://n7.laurent.fainsin.bzh/projet-modelisation-geometrique/full_show.webm"></video>
<p>Built a camera travelling system using <a href="https://en.wikipedia.org/wiki/Composite_B&#37;C3&#37;A9zier_curve">B-splines</a> and <a href="https://en.wikipedia.org/wiki/Slerp">Slerps</a>, in <a href="https://www.minecraft.net/">Minecraft</a> by coding a <a href="https://en.wikipedia.org/wiki/Java_&#40;programming_language&#41;">Java</a> plugin for <a href="https://www.spigotmc.org/">SpigotMC</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-modelisation-geometrique">💾</a>
<a href="https://n7.laurent.fainsin.bzh/projet-modelisation-geometrique/">📜</a>
</span>
<h2>Audio-Visual Data Processing, <small><span class="year">June 2022</span></small></h2>
<img src="https://n7.laurent.fainsin.bzh/TP-traitement-audio-visuel/content/TP6/exo2_clean.webp">
<p>End of semester report on numerous practical works in <a href="https://en.wikipedia.org/wiki/MATLAB">Matlab</a>. Wrote the report using <a href="https://github.com/fonsp/Pluto.jl">Pluto.jl</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-traitement-audio-visuel">💾</a>
<a href="https://n7.laurent.fainsin.bzh/TP-traitement-audio-visuel/">📜</a>
</span>
<h2>Functional programming and language translation, <small><span class="year">2021</span></small></h2>
<img src="/assets/projects/compiler.png">
<p>Wrote a simple compiler, including the Lexical &amp; Syntax analyzer, the Abstract Syntax Tree Generator, the Target Code Generator.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-traduction-langage">💾</a>
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-traduction-langage/raw/branch/master/rapport.pdf">📜</a>
</span>
<h2>Minishell, <small><span class="year">May 2021</span></small></h2>
<video controls autoplay loop><source src="/assets/projects/minishell.webm"></video>
<p>Implementation of a basic <a href="https://en.wikipedia.org/wiki/Shell_&#40;computing&#41;">shell program</a> in <a href="https://en.wikipedia.org/wiki/C_&#40;programming_language&#41;">C</a>, capable of launching programs, <a href="https://en.wikipedia.org/wiki/Pipeline_&#40;Unix&#41;">piping</a> their streams and sending them <a href="https://en.wikipedia.org/wiki/Signal_&#40;IPC&#41;">signals</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-systeme-exploitation-centralise">💾</a>
</span>
<h2>Numerical Optimization, <small><span class="year">2021</span></small></h2>
<video controls autoplay loop><source src="/assets/projects/optinum.webm"></video>
<p>Studied &#40;complicated&#41; numerical optimization methods in <a href="https://julialang.org/">Julia</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-optimisation-numerique-2">💾</a>
</span>
<h2>Pagerank, <small><span class="year">December 2020</span></small></h2>
<img src="/assets/projects/pagerank.png">
<p>Implementation of an iterative algorithm in <a href="https://en.wikipedia.org/wiki/Ada_&#40;programming_language&#41;">Ada</a> to compute the <a href="https://en.wikipedia.org/wiki/PageRank">pagerank</a> of a given network as quickly and efficiently as possible.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-programmation-imperative">💾</a>
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-programmation-imperative/raw/branch/master/doc/rapport.pdf">📜</a>
</span>
<h2>Graphs, <small><span class="year">January 2022</span></small></h2>
<img src="/assets/projects/graph.png">
<p>Studied <a href="https://en.wikipedia.org/wiki/Compartmental_models_in_epidemiology">Compartmental models in epidemiology</a> using <a href="https://julialang.org/">Julia</a> and <a href="https://github.com/JuliaGraphs/Graphs.jl">Graphs</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-graphes">💾</a>
</span>
<h2>Sagittarius, <small><span class="year">May 2021</span></small></h2>
<video controls autoplay loop><source src="/assets/projects/sagittarius.mp4"></video>
<p>From an object oriented programming project in <a href="https://en.wikipedia.org/wiki/Java_&#40;programming_language&#41;">Java</a>, a little 2D turn-based game inspired by <a href="https://gprosser.itch.io/sagittarius">a game under the same name by George Prosser</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-programmation-orientee-objet">💾</a>
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-programmation-orientee-objet/raw/branch/master/docs/iteration3/rapport3.pdf">📜</a>
</span>
<h2>Rendering Engine, <small><span class="year">April 2022</span></small></h2>
<video controls autoplay loop><source src="/assets/projects/rendu.webm"></video>
<p>Built a minimal renderer using <a href="https://en.wikipedia.org/wiki/Java_OpenGL">Java OpenGL &#40;JOGL&#41;</a> and GLUT.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-rendu">💾</a>
</span>
<h2>Image processing, <small><span class="year">April 2022</span></small></h2>
<img src="/assets/projects/TI.png">
<p>Applied image processing techniques, like <a href="https://en.wikipedia.org/wiki/K-means_clustering">k-means</a> and <a href="https://en.wikipedia.org/wiki/Mean_shift">meanshift</a>, to images.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-traitement-image">💾</a>
</span>
<h2>WebApp, <small><span class="year">June 2022</span></small></h2>
<img src="/assets/projects/webapp.png">
<p>Inspired by <a href="https://reddit.com/r/place">r/place</a>, this &#40;poc&#41; webapp allows several people to buy and sell pixels on a grid. Built using <a href="https://www.wildfly.org/">Wildfly</a>, <a href="https://mariadb.org/">MariaDB</a>, <a href="https://www.docker.com/">Docker</a>, <a href="https://gradle.org/">Gradle</a>, <a href="https://en.wikipedia.org/wiki/Jakarta_EE">J2EE</a> and the <a href="https://en.wikipedia.org/wiki/Representational_state_transfer">REST principles</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-application-web">💾</a>
</span>
<h2>ISP Modeling, <small><span class="year">May 2020</span></small></h2>
<img src="/assets/projects/ISP.svg">
<p>Simulation of an internet ISP network, configuration of different servers for <a href="https://en.wikipedia.org/wiki/Routing_Information_Protocol">routing</a>, <a href="https://en.wikipedia.org/wiki/Network_address_translation">NAT</a>, <a href="https://en.wikipedia.org/wiki/DHCPD">DHCP</a>, <a href="https://en.wikipedia.org/wiki/BIND">DNS</a>, <a href="https://en.wikipedia.org/wiki/Apache_HTTP_Server">WEB</a>, <a href="https://en.wikipedia.org/wiki/Vsftpd">FTP</a>...</p>
<span class="icons">
</span>
<h2>Telecommunication, <small><span class="year">2020</span></small></h2>
<img src="/assets/projects/telecom.png">
<p>Impact of a frequency selective propagation channel and introduction to equalization.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-telecommunications">💾</a>
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-telecommunications/raw/branch/master/rapport.pdf">📜</a>
</span>
<h2>Distributed Data Project, <small><span class="year">2021</span></small></h2>
<img src="https://www.researchgate.net/profile/Alexei-Iliasov/publication/4174610/figure/fig1/AS:668921854181395@1536494806575/Linda-agents-communicate-by-exchanging-tuples-of-data-using-a-shared-tuple-space.png">
<p>Built a <a href="https://en.wikipedia.org/wiki/Tuple_space">Tuple-Space</a> in <a href="https://en.wikipedia.org/wiki/Java_&#40;programming_language&#41;">Java</a>.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-donnees-reparties">💾</a>
<a href="https://git.fainsin.bzh/ENSEEIHT/projet-donnees-reparties/raw/branch/main/docs/RAPPORT.pdf">📜</a>
</span>
<h2>Operations Research, <small><span class="year">2021</span></small></h2>
<p>Bunch of exercise, studied <a href="https://en.wikipedia.org/wiki/GNU_Linear_Programming_Kit">GLPK</a>, <a href="https://jump.dev/">Jump.jl</a>, <a href="https://en.wikipedia.org/wiki/Dynamic_programming">Dynamic Programming</a>, <a href="https://en.wikipedia.org/wiki/Memoization">Memoization</a>...</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-recherche-operationnelle">💾</a>
</span>
<h2>Data analysis, <small><span class="year">February 2021</span></small></h2>
<p>Practicums in Matlab about color space representation, parametric modeling, and Bayesian classification. Exercises include analyzing color correlations, estimating model parameters, and classifying images of flowers.</p>
<span class="icons">
<a href="https://git.fainsin.bzh/ENSEEIHT/TP-analyse-donnees">💾</a>
</span>
<div class="page-foot">
Last modified: July 01, 2023. Website built with
<a href="https://github.com/tlienart/Franklin.jl">Franklin.jl</a>.
</div>
</div><!-- CONTENT ENDS HERE -->
</body>
</html>