I am a Senior AI and Computer Vision Engineer with a PhD and more than eight years of research and production machine-learning experience. I have led end-to-end perception development for robotic pick-and-place systems deployed in UPS and Australia Post operations, covering dataset strategy, synthetic RGB-D generation, model architecture, 3D geometric verification, distributed training, evaluation, and TensorRT-optimized inference.
My work sits at the intersection of robotics perception, 3D vision, and multimodal AI. I build systems for detection, segmentation, 6-DoF pose estimation, point-cloud and camera-LiDAR fusion, neural rendering, generative modeling, and safe offline reinforcement learning. I also develop RAG and tool-calling systems for grounded engineering support. My research has been published at CVPR, ECCV, ICCV, NeurIPS, AAAI, WACV, and ACCV.
Note: I update this website periodically, so some recent work may not yet be included.
I built an auditable vision-language system for deciding whether a scientific figure supports, contradicts, or does not address a claim. ClaimLens masks the words that differ between paired counterfactual claims, asks one symmetric visual question, reuses the same VLM measurement for both claims, and computes the final verdict in deterministic host code.
On 300 frozen held-out claims, ClaimLens was statistically tied with a direct Qwen3-VL-8B baseline on accuracy (59% vs 57%; paired 95% CI for the difference: −6.3 to +10.0 points). It improved NEUTRAL recall from 46% to 71% and exact-triplet accuracy from 17% to 29%, while SUPPORT recall fell from 69% to 48%. The complete traces also exposed and quantified a comparator-scoping bug instead of hiding it.
I audited a recurring failure mode in geometry-aware Gaussian splatting: strong held-out renders do not necessarily imply accurate extracted surfaces. The study evaluates published PGSR, MILo, and TSGS baselines together with controlled RayOT, GaugeSplat, TraceSplat, VP0, and first-surface diagnostics under separate image and geometry acceptance gates.
On DTU Scan 24, a local TSGS reproduction produced the strongest rendering metrics (23.480 dB PSNR, 0.0987 LPIPS), while published MILo had the best measured control geometry (2.431 mm Chamfer). The TSGS run did not reproduce its authors' reported geometry target, and none of the trained project interventions passed both gates; these negative results are preserved as an auditable artifact.
I built a CPU-only synthetic calibration systems prototype for cameras mounted on upper-arm, forearm, and wrist links. The system compares five classical AX=XB solvers, rejects unobservable robot motion, jointly refines multiple camera extrinsics with robust losses, estimates camera–robot timestamp offsets, and monitors mechanical mount drift.
On held-out robot trajectories, robust joint calibration reduced fused grasp-point error from 2.19 mm to 0.88 mm under 8% gross observation outliers. Time-aware calibration reduced grasp error from 19.78 mm to 2.80 mm under camera–robot timestamp mismatch. Medium and large mount drift were detected in 100% of trials with 0% false alarms.
I extended a learned dense-SLAM backend into a metric, uncertainty-aware interior reconstruction system. The pipeline diagnoses scene-dependent scale failure, anchors translation scale from RGB-D motion without ground-truth poses, fuses metric TSDF geometry, and extracts floor, ceiling, perimeter walls, internal planes, and visibility-supported opening hypotheses.
On TUM Freiburg1 Desk, RGB-D scale anchoring reduced repeated TSDF surface RMSE by 52.2%, from 4.405 cm to 2.106 cm. On Freiburg1 Room, the system recovered a 5.599 × 4.347 × 2.898 m structured envelope. The same confidence policy accepted Room and abstained on the partial Desk sequence instead of hallucinating unsupported room geometry.
I built a hybrid outdoor 3D reconstruction pipeline that combines feed-forward camera and depth prediction with classical geometric refinement and adaptive multiview fusion. On a 12-view ETH3D Courtyard subset, bundle adjustment reduced VGGT camera translation RMSE from 3.87 cm to 1.27 cm.
The dense fusion stage uses cross-view support, conflict, occlusion, and confidence to remove unsupported geometry. It reduced median point-to-scan error from 10.26 cm to 6.96 cm and improved precision within 5 cm from 29.1% to 38.7%, while retaining 99.1% of the raw 20 cm F1 score.
I built an offline reinforcement learning benchmark to study a practical failure mode in sequential decision systems: stable or smooth offline training does not necessarily translate to strong closed-loop behavior at rollout time. The project compares Behavior Cloning (BC), Implicit Q-Learning (IQL), and Conservative Q-Learning (CQL) on MuJoCo locomotion and manipulation tasks.
YOLOv8+ extends the Ultralytics framework with a new pose-segment task that jointly performs object detection, instance segmentation, and pose estimation in a single forward pass. Instead of maintaining separate models or multi-stage pipelines, I modified the training and inference stack to support a unified multitask perception workflow.
The project required coordinated changes across the model head, dataset handling, collate logic, loss design, metrics, and export pipeline. I also extended the workflow to support deployment-oriented export formats including ONNX, TorchScript, and TensorRT, making the project both a modeling contribution and a practical systems integration effort.
This project addressed a practical deployment gap in multi-task perception systems. While TensorRT conversion for Detectron2 instance segmentation is more commonly available, support for joint instance segmentation and keypoint pose estimation is far less documented. I built a deployment workflow that preserved boxes, masks, and keypoints together in a TensorRT-based inference pipeline.
The work required coordinated changes across model export, ONNX graph generation, keypoint-aware output handling, tensor I/O binding, inference, and visualization. The result was a practical conversion path for deploying a Mask R-CNN model that jointly performs segmentation and pose estimation instead of dropping keypoints during optimization.
This project focuses on controllable 3D face generation for applications such as virtual avatars, facial expression transfer, and synthetic data generation. While existing 3D generative models can produce compact representations of facial shape and appearance, they often lack fine control over subtle expressions.
I developed a 3D face generative framework that decouples identity and expression, enabling granular expression control while preserving identity. The model combines a supervised autoencoder with adversarial training to generate high-quality 3D faces in both shape and texture, and supports learning from either holistic expression labels or Action Unit labels.
This project explores a practical framework for safe offline-to-online reinforcement learning in vision-based robotic manipulation. The policy starts from offline demonstrations with image observations and robot proprioception, then adapts online under strict safety constraints instead of relying on unrestricted exploration.
The method combines visual scene encoding, actor-critic learning, a behavioral-cloning prior, and uncertainty-aware action filtering. A critic ensemble estimates both value and uncertainty, while a safety module regularizes the actor toward dataset-supported behavior offline and filters risky actions during deployment. Online adaptation then gradually relaxes these constraints, enabling cautious improvement under distribution shift.
Built an interactive annotation and segmentation tool around Segment Anything to support fast mask creation through point prompts, bounding-box prompts, and manual polygon annotation.
The system includes undo, clear, brush, and save functionality, supports iterative visual feedback during annotation, and exports results in COCO format for downstream training pipelines. I also added Detectron2-based visualization to validate the resulting masks and annotations directly on top of the source images.
Built a custom multimodal 3D detection research branch on top of MMDetection3D / BEVFusion for nuScenes mini. I replaced the stock BEV fusion block with a reliability-aware fusion module and added an object-level refinement head that samples local fused-BEV context around coarse proposals to predict residual corrections for 3D box geometry and motion.
The project involved architecture design, framework-level integration, training/debugging, and qualitative 3D visualization of predicted boxes and point clouds. It was framed as a targeted systems improvement: diagnose where fusion helps semantics more than localization, then modify the model to address that gap directly.
Built a custom unified training framework that combines Gaussian Splatting (GS) with an image-conditioned Signed Distance Function (SDF) branch for novel view synthesis. The system uses a shared trainable encoder, a GS rendering branch, and a geometry-aware SDF branch trained jointly in a single optimization loop.
A key insight from the project was that, for CO3D-style data, GS should remain the primary rendering backbone, while the SDF branch is more effective as a geometry prior / regularizer than as a standalone vanilla DeepSDF pipeline. The result was a working hybrid research prototype with promising novel-view rendering behavior and a practical step toward more unified 3D world models.
I revisited a set of graph-learning prototypes as a controlled benchmark spanning transductive node classification and molecular regression. Instead of presenting a single favorable checkpoint, I standardized GCN, graph-attention, and transformer-style models under validation-selected early stopping and repeated every experiment across three deterministic seeds.
On Cora, GCN and GAT reached the same 0.802 mean test accuracy, while GCN used approximately half the trainable parameters and showed lower seed variance. On ESOL, GCN produced the strongest mean out-of-scaffold result at 1.450 RMSE, but its run-to-run variance exposed a real generalization risk. The practical lesson is that model selection should follow graph structure, data regime, and uncertainty—not architectural complexity alone.
I organized a set of human-analysis prototypes into an artifact-backed research history spanning representation learning, sparse facial geometry, semantic interpretation, input-quality gating, domain alignment, dense 3D reconstruction. The central question is how recognition systems remain useful when observation quality, pose, sensor modality, and execution constraints change.
One archived face-quality experiment reports patch-wise attention producing the lowest divergence from verifier-derived score distributions: KL 466.01 versus 772.32 without attention, a 39.7% reduction. The repository also preserves seven dense meshes with 43,867 vertices and 86,906 faces each, plus a bounded, smoke-tested pose CLI. Historical results are labeled separately from current validation so the evidence remains useful without overstating reproducibility.
I reframed a collection of weakly supervised prototypes around one systems question: when should indirect supervision be solved with distribution alignment, and when is a simpler representation safer? A benchmark now separates rerunnable evidence from historical dataset-dependent work and evaluates document geometry and unpaired color transfer with explicit baselines, deterministic seeds, and numerical residuals.
On seven archived scripts, a weighted-centroid baseline outperformed compressed Sinkhorn OT: 100% versus 71.4% nearest-neighbor group agreement and 1.55× versus 1.07× group separation. For unpaired palette transfer, low-regularization OT reduced palette JSD from 0.401 to 0.274—a 31.8% reduction versus mean/std matching—but edge correlation fell from 0.996 to 0.854. The engineering outcome is an operating-point decision: add alignment capacity only when its fit benefit justifies the structure it changes.
I reorganized a broad generative-model archive around a systems contract: fidelity, coverage, controllability, conditional adherence, and temporal stability can fail independently. A deterministic method now measures versioned outputs, exposes failure cases, and labels training-dependent claims historical when datasets or checkpoints are missing.
Conditional WGAN-GP outputs reached 97.5% ± 4.5% leave-one-checkpoint consistency. Across 24 Pix2Pix pairs, median condition-edge recall was 94.9%, but background color spill reached 31.4% in the worst archived case. Across 44 StyleGAN control sequences, illumination edits were smoother than pose: roughness 0.424 versus 0.929 and consecutive edge continuity 0.994 versus 0.930. The result is not an architecture leaderboard; it is an evaluation framework aligned to the generative-system contract.