Computer Vision & C++ Engineer (Non AI)
Location: Plano, Texas (onsite only)
Job Type: Full time
Job Description:
Key Skills: Computer Vision, Image Processing, C++
- 7–10+ years of experience in computer vision, image processing, or scientific/medical imaging software development.
- Proven experience delivering performance‑critical C++ algorithmic solutions.
- Strong expertise in classical computer vision and image processing (non‑ML).
- Advanced proficiency in C++ (C++14/17 or newer).
- Hands‑on experience with Intel IPP and/or Intel MKL.
- Proficiency in Python for prototyping and validation.
- Solid understanding of:
Signal processing concepts
- Numerical optimization
- Performance profiling and optimization techniques
Domain Knowledge (Preferred)
- Experience with OCT, retinal imaging, or biomedical image processing.
- Familiarity with retinal anatomy (ILM, RNFL) and segmentation challenges.
- Meets or exceeds all segmentation accuracy requirements defined per retinal region.
- Achieves ≤ 5 seconds execution time per OCT cube on target hardware.
- Stable segmentation across scan variations and pathological cases.
- Clean, maintainable, and well‑documented C++ solution accepted at solution milestone.
- This role is responsible for the design, development, optimization, and validation of a non‑AI Retinal Nerve Fiber Layer (RNFL) and ILM segmentation algorithm for Swept‑Source OCT (SS‑OCT) data.
- The engineer will own the full technical lifecycle—from classical image‑processing algorithm design and prototyping to high‑performance C++ implementation using Intel IPP/MKL, ensuring accuracy, robustness, and runtime compliance on specified hardware.
Key Responsibilities:
- Algorithm Design & Prototyping
- Design and implement classical (non‑AI) image processing algorithms to segment ILM and RNFL outer boundaries from SS‑OCT volumes.
Develop a robust segmentation pipeline using techniques such as:
- Noise reduction and filtering
- Edge detection and gradient analysis
- Thresholding and morphological operations
- Contour detection / boundary tracking
- Generate per‑A‑scan confidence scores (0–1) reflecting segmentation reliability.
- Ensure anatomical continuity and consistency of layer boundaries across neighbouring A‑scans.
- Prototype and validate algorithms using Python (NumPy/OpenCV) on diverse datasets, including healthy and glaucomatous cases.
Optimization & Accuracy Tuning:
Tune algorithm parameters to meet region‑specific accuracy requirements (ONH, fovea, peripheral, global).
- Validate segmentation accuracy against customer‑provided ground truth annotations.
- Handle variations in scan size (12×12 mm, 15×15 mm) and imaging conditions.
- C++ Solution Development & Performance Engineering
- Translate validated prototypes into production‑grade C++ code.
Optimize implementation using Intel IPP and MKL libraries for:
- SIMD/vectorization
- Multithreading
- Memory‑efficient processing of 3D OCT volumes
- Ensure execution time ≤ 5 seconds per OCT cube on Intel Core i5, 16 GB RAM reference hardware.
- Maintain functional parity between Python prototype and final C++ solution.
Testing, Validation & Documentation:
- Support creation of algorithm‑level test cases and performance benchmarks.
- Assist in analyzing test results and resolving accuracy or runtime gaps.
Author or contribute to:
- Algorithm Design Documentation
- Developer/API documentation
- Build and configuration instructions