Constrained Motion Planning for Active 3D Reconstruction
Continuous constrained motion planning for active viewpoint selection using Expansion-GRR on a UR10 manipulator.
This project explores constrained motion planning for active viewpoint selection, enabling a robot manipulator to capture multiple views of an object for 3D reconstruction. Rather than planning independent camera poses, the robot generates a continuous trajectory that keeps the camera oriented toward the object throughout execution, producing smooth motion while satisfying kinematic constraints.
To generate these trajectories, I implemented Expansion-GRR (Global Redundancy Resolution), which computes smooth, continuous configuration-space paths corresponding to a desired workspace trajectory. Compared to MoveIt’s computeCartesianPath, Expansion-GRR produced significantly more reliable joint-space trajectories without discontinuities, making it well suited for constrained visual inspection tasks.
The resulting trajectories were first validated in PyBullet before being executed on a real UR10 manipulator equipped with an Intel RealSense D435 RGB-D camera. Images collected along the trajectory were converted into point clouds and registered using the Iterative Closest Point (ICP) algorithm to reconstruct a complete 3D model of the object from multiple viewpoints.
Highlights
- Implemented constrained motion planning for active viewpoint selection using Expansion-GRR
- Generated continuous joint-space trajectories while maintaining camera orientation toward the target object
- Compared Expansion-GRR against MoveIt’s Cartesian path planner for constrained trajectory generation
- Executed planned trajectories in both PyBullet simulation and on a real UR10 manipulator
- Collected RGB-D observations using an Intel RealSense D435 camera
- Reconstructed a complete 3D model by registering multiple point clouds using ICP