Summary
opencv_contrib's rgbd module is not wrapped in OpenCvSharp at all, but compiles cleanly with the project's existing dependency set (needs opencv_geometry + opencv_ptcloud, both already wrapped; OpenGL/opencv_viz interop is optional-only). It's the single largest genuinely-buildable net-new module found during the OpenCV 5.x coverage audit that started from closing the geometry/segment.hpp gap (#2000/#2001), so it gets its own tracking issue rather than being folded into the smaller net-new-modules issue.
Baseline: opencv_contrib @ 755e506 (pinned submodule commit on main).
Surface
linemod — template-matching detection pipeline
KinFu volumetric-fusion family — 4 Algorithm-derived classes, each with a Params struct
Suggested approach
Same shape as the recently-wrapped ptcloud classes (VolumeSettings/Volume) — CvPtrObject-based algorithm-class pattern with a create() factory per class, per .github/copilot-instructions.md's "Adding a new OpenCV class wrapper" checklist. Given the size (5 classes total, each with a non-trivial Params struct), this is realistically a multi-PR effort:
linemod::Detector + Modality family (smallest independent unit)
kinfu::KinFu (the base/simplest volumetric class)
dynafu::DynaFu / colored_kinfu::ColoredKinFu / large_kinfu::LargeKinfu (each shares most of its shape with KinFu, so these should go faster once the first one establishes the pattern)
Notes
Effort: large overall (multi-class family); each individual class is roughly medium-to-large on its own once the shared Params-struct pattern is established by the first PR.
Summary
opencv_contrib'srgbdmodule is not wrapped in OpenCvSharp at all, but compiles cleanly with the project's existing dependency set (needsopencv_geometry+opencv_ptcloud, both already wrapped; OpenGL/opencv_vizinterop is optional-only). It's the single largest genuinely-buildable net-new module found during the OpenCV 5.x coverage audit that started from closing thegeometry/segment.hppgap (#2000/#2001), so it gets its own tracking issue rather than being folded into the smaller net-new-modules issue.Baseline:
opencv_contrib@755e506(pinned submodule commit onmain).Surface
linemod — template-matching detection pipeline
linemod::Detector— the core template-matching detector (addTemplate,match,read/write, template persistence)linemod::Modality+ concrete modalities (ColorGradient,DepthNormal) — feature-extraction strategies the detector composesKinFu volumetric-fusion family — 4
Algorithm-derived classes, each with aParamsstructkinfu::KinFu— the base real-time dense-SLAM reconstruction pipelinedynafu::DynaFu— non-rigid (deformable-scene) variantcolored_kinfu::ColoredKinFu— color-aware variantlarge_kinfu::LargeKinfu— large-scale-scene variantSuggested approach
Same shape as the recently-wrapped
ptcloudclasses (VolumeSettings/Volume) —CvPtrObject-based algorithm-class pattern with acreate()factory per class, per.github/copilot-instructions.md's "Adding a new OpenCV class wrapper" checklist. Given the size (5 classes total, each with a non-trivialParamsstruct), this is realistically a multi-PR effort:linemod::Detector+Modalityfamily (smallest independent unit)kinfu::KinFu(the base/simplest volumetric class)dynafu::DynaFu/colored_kinfu::ColoredKinFu/large_kinfu::LargeKinfu(each shares most of its shape withKinFu, so these should go faster once the first one establishes the pattern)Notes
Effort: large overall (multi-class family); each individual class is roughly medium-to-large on its own once the shared
Params-struct pattern is established by the first PR.