Skip to content
View guilhem0908's full-sized avatar
🏠
Working from home
🏠
Working from home

Block or report guilhem0908

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
guilhem0908/README.md

Guilhem Carmouze, robotics engineering student: 3D Gaussian Splatting, 360° vision, robot navigation

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

Skills

3D vision Gaussian Splatting 3DGRUT Splatfacto COLMAP OpenCV Equirectangular geometry
Robotics & navigation ROS 2 Humble MuJoCo DISCOVERSE A* path planning Kachaka API Robot kinematics
Machine learning PyTorch NumPy SciPy Video diffusion
Software & tooling Python C C++ TypeScript JavaScript
Git Linux Docker Singularity HPC (PBS) pytest
Spoken languages French (native) · English (professional) · Spanish (basic)

How I work

  • 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.

Engineering school: UPSSITECH, Robotic and Interactive Systems (SRI)

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).

Projects at school

Top-down view of a cone track with the car, its field-of-view sector and the driven line 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
A small four-wheel robot next to its live LiDAR scan and the map built from it 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

Research internship at AIST, Japan (April to August 2026)

Creation of a 360° navigation dataset using 3D Gaussian Splatting, Computer Vision Research Team, Artificial Intelligence Research Center. Read the case study.

The same 360° panorama twice: on the left the raw 3D Gaussian render, full of artefacts; on the right the repaired output

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.

Side projects

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.

Target, render, error and projected ellipses of a small Gaussian-splat scene microsplat
3D 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.
Two replays of a factory floor: robots gridlocked in a corridor on the left, flowing on the right amr-traffic-lab
Usine 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.
A pinhole camera footprint drawn on an equirectangular panorama, next to the extracted view erpkit
A 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.
A projected Gaussian on an equirectangular image with two approximating ellipses and error maps gaussian-projection-bench
How 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.

Popular repositories Loading

  1. BlobChessTest BlobChessTest Public archive

    Archived: pygame rendering skeleton for a chess variant (2024).

    Python

  2. esp32-wifi esp32-wifi Public

    Connected roller shutter: Flask relay server and pygame remote-control client for an ESP32 (school project, 2024).

    Python

  3. TP_Git TP_Git Public archive

    Archived: Git lab exercise (2024).

  4. TP_Git_2024 TP_Git_2024 Public archive

    Archived: Git lab exercise (2024).

    Shell

  5. LesGaulois LesGaulois Public archive

    Archived: introductory Java labs (UPSSITECH coursework, 2025).

    Java

  6. PFR PFR Public

    Colour-ball detector in pure C11, no vision library: RGB thresholds, largest connected component, centre and radius. Part of the UPSSITECH Projet Fil Rouge.

    Python