Robotics and perception
Connecting sensing and estimation to a physical system that must act under timing and hardware constraints.
Projects
- 5-inch Carbon-Fiber FPV DroneA 5-inch carbon-fiber quadcopter I designed and built. I sized its propulsion and power from thrust, weight, and current calculations, configured and tuned Betaflight (PID loops, flight modes, GPS features, return-to-home), and evaluated GPS accuracy, RF link quality, and flight performance under GNSS jamming and IMU/GNSS integration constraints.
- 360° Spherical Panorama StitchingA CPU-only Python and OpenCV pipeline that turns handheld phone video or stills into an equirectangular panorama and generates a Three.js viewer.
- Thermal Super-ResolutionAn IMDN-derived single-channel thermal super-resolution pipeline trained with thermal-specific objectives and optimized for deployment on NVIDIA Jetson hardware.
- Smart Interactive Desk (BEMO)A prototype that combines computer vision, ESP32 control, motorized height and tilt, immediate LED feedback, and a dashboard for longer-term patterns.
- Upstream fixes to Betaflight, PX4, and OpenFrontBug fixes contributed to three upstream open-source projects: a Redpine CC2500 debug-mode fix and a W25M flash read fix in Betaflight, an EKF2 range-height reset fix in PX4, and two HUD fixes in OpenFront.
Writing
- Engineering a five-inch FPV drone from first principlesBuilding a five-inch FPV drone is an exercise in coupled constraints: every part you choose changes what the others have to do.
- Building a 360° panorama stitcher from a phone sweepA phone video, a pure-rotation camera model, and a stubborn question: how much of a 360° reconstruction pipeline can be made explicit instead of hidden behind a stitching API?
- Adapting super-resolution to thermal imageryUpscaling a thermal frame is not the same problem as enlarging an RGB photograph, especially when the result must run beside the rest of a perception stack.
- Connecting posture estimation to a motorized deskA posture-aware desk closes a physical loop between vision, control, and motion.
- What small upstream fixes teach about firmwareFive pull requests to Betaflight, PX4, and OpenFront, and the habit they share: make the mechanism explicit before touching the code.