Final-year robotics engineering student at UPSSITECH (University of Toulouse), in the Systèmes Robotiques et Interactifs programme: five years of automatic control, real-time software and AI applied to robots that perceive, decide and act. I work on 3D Gaussian Splatting, 360° vision and robot navigation, and was a research intern at AIST in Tsukuba, Japan, in 2026.
Looking for a 6-month end-of-studies internship from March 2027 in robotics, 3D vision or autonomous navigation.
Portfolio · CV · LinkedIn · Email
| 3D vision |
|
| Robotics & navigation |
|
| Machine learning |
|
| Software & tooling |
|
| Spoken languages | French (native) · English (professional) · Spanish (basic) |
- Written communication. Twelve dated weekly notes and a handover guide, public in
artifixer-360-pipeline. - Working in English. Four months in a Japanese research lab, and a 29-page internship report, all in English.
- Rigour and honesty. I wrote my own acceptance gates, then published the run that failed them with its diagnosis.
- Teamwork. A team of six on the Fil Rouge robot, and the Formula Student driverless team. My repositories state my part and credit teammates by name.
- Transparency about AI. The report's appendix and my side-project READMEs both state where AI tools were used.
A five-year engineering programme of the University of Toulouse (Diplôme d'ingénieur, Master's level, CTI-accredited, EUR-ACE label), taught by researchers from LAAS-CNRS and IRIT. It trains engineers to develop and deploy complete robotic systems, with all the software their autonomy needs.
| What the programme builds | In practice |
|---|---|
| A three-part core | Automatic control, real-time computing and artificial intelligence. |
| The perception, decision, action loop | Multi-sensor perception, decision-making and learning, motion planning and sensorimotor control. |
| Interaction | Multimodal human-robot interaction: image, sound, text, dialogue. |
| Every kind of robot | Industrial arms, mobile robots, humanoids; service, exploration and agricultural robotics. |
| A team project every year | Projet Fil Rouge in the first year of the cycle, a study and research project in the second, and a final-year large-scale project in which the class works as a contractor answering an industrial client's specification. |
| Industry 4.0 | The programme names the smart factory (Usine 4.0) among its main target sectors. My final-year team project is on Usine 4.0 (in progress, 2026 to 2027). |
TLSe Racing, Formula Student driverless (2025 to 2026)I built the 2D simulator and tooling: sensor model, track loader, viewer. Teammates wrote the planners. TLSe_Racing_Driverless · PathPlanning |
Projet Fil Rouge (2024 to 2025)A real mobile robot built by a team of six. My part: the web Bluetooth HMI, the camera stream and the ball-centring control. Before that, a colour-ball detector in pure C, written with a classmate. PFR2 (team repository) · PFR |
Creation of a 360° navigation dataset using 3D Gaussian Splatting, Computer Vision Research Team, Artificial Intelligence Research Center. Read the case study.
| Repository | What it does |
|---|---|
| artifixer-360-pipeline | Plain pinhole video to repaired 360° video: a world-locked rig of 14 views, depth-aware multi-view diffusion consensus and geometry-locked distillation, built on NVIDIA ArtiFixer (+23,602 lines, 119 new tests). Temporal warp error 0.037 to 0.020 on the reference run; the full 154-frame run failed my own acceptance gates, and the repository documents why. |
| nav_3dgs_pano | Navigation and panoramic rendering inside a 3DGS scene (DISCOVERSE, MuJoCo): occupancy grid, A*, feathered cubemap-to-equirectangular stitching. |
| KachakaNavigation | ROS 2 Humble robot-side interface for a visual navigation model on the Kachaka robot: stale-frame checks, clamped velocity, dead-man timer. |
Personal studies from October 2026 that extend themes of my internship and team work. They were built with AI assistance, and every number in their READMEs is reproduced by a script in the repository.
microsplat3D Gaussian Splatting from scratch: a NumPy reference rasteriser, a differentiable PyTorch twin, and tests that pin every equation. 33.6 dB PSNR on held-out views of a ray-traced scene. |
amr-traffic-labUsine 4.0 intralogistics: how many mobile robots can an aisle take before it jams? The reservation-based traffic manager never gridlocked in 600 simulated one-hour runs. |
erpkitA tested geometry toolkit for 360° images. It measures what stitching costs: six 1024 px faces at 96° sample the sphere 1.41 times more coarsely than a 4096×2048 panorama. |
gaussian-projection-benchHow wrong is the splat? EWA linearisation against the unscented transform through pinhole, fisheye and equirectangular cameras, measured against a Monte-Carlo reference. |
Four more, each with one measured result:
- splat-navmap: on 10 synthetic flats with moderate modelled defects, at an opacity threshold of 0.5, 28.8% of A* paths enter real geometry with centre counting and 1.6% with footprint accumulation (centre counting's own best threshold, 0.3, gives 1.8% but leaves 4.9% of pairs unreachable).
- cone-ekf-slam: EKF-SLAM on simulated Formula Student cone tracks; nearest-neighbour association picks a wrong cone in 17 of 50 runs at 4 m of sensor range, in 1 of 50 at 15 m.
- usine40-cell-pipeline: a simulated Industry 4.0 production cell (personal study, separate from the class project) through OPC UA, MQTT, PostgreSQL and Grafana; the stored OEE matches the simulator's event log when no sample is lost, and a 60 s broker outage at QoS 0 breaks 45 of 240 windows.
- visual-quality-gate: PaDiM and PatchCore as a quality gate. With a threshold aimed at 5% false rejects on five MVTec AD categories (3 seeds), PatchCore WR50-10% refused 10.5% of good parts and let 6.3% of defective ones through; PaDiM stayed at 4.7% false rejects but let 38.4% through.







