Portfolio · Robotics, Vision & Embedded AI Engineer

Hoang Long DUONG

Autonomous Robotics · Computer Vision · Embedded AI

Final-year engineering student at UPSSITECH in Robotic and Interactive Systems. Specialized in computer vision, image processing and 3D, multi-sensor perception, autonomous navigation and embedded systems. R&D experience in modeling, simulation and ROS 2 integration.

Based in Toulouse, FR
Project 001
2026

Visual navigation of an urban drone without GNSS

R&D Internship · Astek Research Network · Toulouse, France

In dense urban environments, GNSS (GPS) signals suffer significant degradation due to the urban canyon effect and multipath, making classic geolocation unreliable. This research project aims to evaluate the performance of a multi-lateral-camera perception device embedded on a micro-drone, using building facades as visual references to geolocate without relying on GPS. I conducted the state of the art, formalized the scientific challenges, developed the analytical modeling of two position estimation approaches, then designed a Python numerical simulator with a Monte-Carlo sensitivity analysis. Experimental validation is carried out on real images and video streams of urban scenes.

Simulation Results The Monte-Carlo analysis validated the model's consistency with theory: the gap between simulated results and the theoretical behavior remains < 5% over the entire studied range. The parametric study highlights the model's sensitivity to its various parameters, enabling a significant reduction of position estimation error under operational conditions.

Stack
  • Python
  • NumPy
  • SciPy
  • OpenCV
  • Matplotlib
  • Monte-Carlo
  • Geometric modeling

Technical details subject to confidentiality (C2 · Controlled Distribution).

Project 002
2025 — 2026

Perception & Embedded AI for Autonomous Vehicle

PGE Project · autOCampus · Toulouse, France

Development of a connected autonomous vehicle (VACOP) integrating multi-sensor perception, precise localization, dynamic mapping and 5G teleoperation, on an NVIDIA Jetson Orin NX 16 GB embedded platform. As a member of the Perception team, I contributed to the integration of a real-time AI inference pipeline — object detection, drivable-area segmentation, traffic-light classification — optimized with TensorRT FP16, and to the prototyping of a ROS 2 node for LiDAR-Camera fusion for 3D obstacle estimation, sent to the Nav2 planner. Fully containerized architecture with Docker and inter-module communication via ROS 2 Humble.

Stack
  • Python
  • C++
  • ROS 2 Humble
  • YOLO
  • TwinLiteNet
  • TensorRT
  • PyTorch
  • OpenCV
  • Nav2
  • NVIDIA Jetson
  • Docker
Project 003
2026

Autonomous Drone Perception & Mission — YOLOv8 + PX4 + TensorRT

Personal project · github.com/longduongups/drone-yolo-tensorrt

End-to-end development of an embedded perception pipeline and an autonomous target-tracking mission for a quadrotor drone. The YOLOv8 pipeline (n/s/m variants) was converted to TensorRT FP16 to leverage the embedded GPU, then benchmarked against the ONNX FP32 baseline. The autonomous mission, implemented in Python with PX4, ROS 2 and MAVSDK, chains 7 phases: takeoff, rotational search scan, centering via PID visual servoing (yaw), bounding-box-area-controlled approach, hover, 360° orbit around the target, return and landing. Validation in Gazebo simulation (Sonoma Raceway environment) with pedestrian detection. Fully dockerized architecture, CSV logs for post-mission analysis.

TensorRT Benchmark Results The conversion to TensorRT FP16 delivers x2.57 to x3.94 speedups on inference time compared to ONNX FP32, with a final latency below 20 ms across all YOLOv8 variants (n/s/m) — a threshold compatible with real-time visual servoing onboard a drone.

Stack
  • Python
  • PX4
  • ROS 2
  • MAVSDK
  • YOLOv8
  • TensorRT FP16
  • ONNX
  • PyTorch
  • OpenCV
  • Gazebo
  • Docker
  • Visual Servoing (IBVS)
  • PID
Project 004
2026 Benchmark in progress

Autonomous Navigation — SLAM + Nav2 + ROS 2 Humble

Personal project · ROS 2 Humble + Gazebo Harmonic

Integration of a complete SLAM + Autonomous Navigation stack on ROS 2 Humble and Gazebo Harmonic. SLAM Toolbox provides real-time mapping with loop closures and automatic map correction, while Nav2 orchestrates autonomous frontier exploration and navigation on a saved map via AMCL localization. Wheel odometry + IMU fusion is performed via EKF (robot_localization) for robust state estimation. In-depth system debugging solved the ROS 2 / Gazebo clock desynchronization through NVIDIA Prime offload activation (RTX 4060), cmd_vel topic routing via twist_mux, and fine-tuning of Nav2's inflation_radius for narrow-corridor environments. A comparative benchmark of the 3 Nav2 controllers (DWB, MPPI, RPP) across 7 Gazebo environments is currently in progress.

Stack
  • ROS 2 Humble
  • Nav2
  • SLAM Toolbox
  • AMCL
  • EKF (robot_localization)
  • DWB
  • MPPI
  • RPP
  • twist_mux
  • Gazebo Harmonic
  • Python
  • C++
  • NVIDIA Prime
Project 005
April — August 2025

Automated 3D Morphological Analysis Pipeline

Internship · Vectory3 · Voorburg, Netherlands

Development of an automated pipeline to determine the optimal garment size from a body 3D scan produced by a proprietary scanner. My main contribution focused on designing a Blender add-on in Python for automatic model calibration, detection of an anatomical region of interest, and extraction of morphological measurements (height, width, circumferences, volume) via dedicated geometric algorithms. In parallel, I set up the end-to-end AWS cloud integration: storage of scans on S3, automatic triggering via Lambda, Blender execution on EC2 and persistence of measurements in DynamoDB. Applications: custom textiles, technical lingerie, adaptive clothing.

Stack
  • Python
  • Blender API
  • 3D mesh processing
  • AWS S3
  • AWS Lambda
  • AWS EC2
  • DynamoDB (NoSQL)
Project 006
2026

Intelligent Cooking Assistant — Voice Interaction & Generative AI

Integration Project · UPSSITECH · 5th year SRI (Interaction minor) · Toulouse, France

Design of a conversational cooking assistant combining Rasa for dialogue management (NLU), the OpenAI API for personalized recipe generation, and a Streamlit web interface with two-way voice interaction (Speech-to-Text + Text-to-Speech) for hands-free use. My contribution, within a team of 4 students, covers the entire chain: NLU pipeline design (intents, slots, entities, stories), integration of Python actions on the Action Server side for recipe generation via OpenAI, development of the voice-interaction module and Streamlit interface, and multi-service orchestration.

Stack
  • Python 3.8
  • Rasa 2.8
  • OpenAI API (GPT)
  • Streamlit
  • Speech-to-Text
  • Text-to-Speech
  • NLU / NLP
  • uv / pyproject.toml
Project 007
Nov 2024 — April 2025

Inflat3D — Posture Monitoring with IMU Sensors

Research Project (TER) · UPSSITECH & Vectory3 · Toulouse, France

Design of an embedded system for real-time back-posture monitoring, as part of a research project (TER) supervised by Vectory3, within a broader project of a pneumatic device that automatically corrects posture (medical application, personal assistance). My contribution focuses on the measurement and interaction side: integration of two IMU sensors (Arduino Nano 33 BLE / IoT) with Bluetooth Low Energy communication, real-time angular deviation calculation between sensors, Python GUI (Tkinter) with visual simulation and alerts, SQLite persistence and development of a Streamlit web application for deferred session visualization.

Stack
  • Python
  • C++ (Arduino)
  • Arduino Nano 33 BLE / IoT
  • IMU (accelerometer + gyroscope)
  • Bluetooth Low Energy (BLE)
  • Bleak
  • Tkinter
  • Matplotlib
  • NumPy
  • Streamlit
  • SQLite
Project 008
Sept 2023 — May 2024

Autonomous Mobile Robot — Explorer & Visual Tracking

Capstone Project · UPSSITECH · 1st year SRI · Toulouse, France

Complete design and development of an autonomous mobile robot capable of exploring its environment, tracking colored objects using computer vision and obeying voice commands, as part of the 1st year Capstone Project. The robot combines real-time LiDAR mapping, OpenCV visual tracking, voice recognition, manual control via a web interface and real-time video streaming. Full-stack architecture: Angular frontend, Flask backend, Raspberry Pi + Arduino for low-level control. Team contribution across the entire chain, from mechatronics to user interface.

Stack
  • Python
  • TypeScript
  • Angular
  • Flask
  • OpenCV
  • Raspberry Pi
  • Arduino
  • LiDAR
  • Audio processing