3D Computer Vision Engineer

c3 · PropTech / Real Estate

Job description

At c3 we're building a spatial intelligence data layer. We're a startup based in the UK, and are building an engineering team to focus on research and development of our proprietary models. Ideally we are looking for someone with: Multi-session SLAM / map merging / long-term localization / 3D registration experience Ideal past experience: Autonomous-driving mapping, warehouse/robot localization, AR persistent maps, LiDAR map differencing, construction progress monitoring, digital twins, or long-term robotics localization. Requirements * Strong background in 3D computer vision and geometric perception: point clouds, meshes, depth maps, coordinate transforms, registration, visibility/occlusion reasoning, and spatial change detection. * Hands-on experience with real RGB-D / LiDAR / depth-sensor data. You should have dealt with noisy depth, incomplete scans, moving objects, partial overlap, and sensor/calibration errors. * Strong understanding of 3D registration, including ICP variants, robust/global registration, geometric descriptors, RANSAC/TEASER++-style approaches, and failure detection. * Experience solving multi-session or temporal mapping problems: comparing the same physical environment captured at different times. * Familiarity with SLAM / visual-inertial odometry. You should understand accumulated drift, scale error, loop closure, and how errors in scan generation propagate downstream. * Strong Python and PyTorch skills, with experience building production-quality evaluation and inference pipelines. * Experience with learned feature matching such as LightGlue, SuperGlue, LoFTR, or equivalent is useful, particularly for cross-scan registration. * Experience with synthetic data generation / simulation for augmentation and controlled failure-case generation. * Robotics, autonomous systems, mapping, AR/VR, drones, or defence perception experience is highly relevant. * Fluent English. * Kyiv-based preferred; hybrid or remote considered. What you will do * Build a robust scan0 -> scan1 registration pipeline that aligns mostly-static structure while remaining insensitive to moved furniture and other transient objects. * Handle partial overlap, occlusion, missing observations, drift, and scale differences between scans. * Build temporal change detection that distinguishes: * object removed / added, * object moved, * surface or condition changed, * area unchanged, * area not observable / insufficient evidence. * Develop visibility and free-space reasoning so that “not seen” is not incorrectly classified as “gone.” * Build multi-stage registration using geometric and learned features, followed by robust local refinement. * Define confidence / failure detection for registration and comparison results rather than forcing a result from bad scans. * Develop condition/defect classification and severity scoring once geometric correspondence is sufficiently reliable. * Create synthetic perturbations and generated training/evaluation data covering known failure modes. * Own evaluation against ground truth, including registration success rate, false positive/negative change detection, localization accuracy, and uncertainty calibration. * Evaluate alternative scene representations, including 3D Gaussian Splatting, NeRFs, TSDFs, occupancy/SDF representations, where they materially improve temporal comparison.

Skills

  • python
  • pytorch

Languages

EN

Apply

Open this job in our interactive board to apply, save it, or sign up for matched alerts on similar roles.

View & apply