mirror of
https://github.com/opencv/opencv.git
synced 2026-07-21 19:33:03 +04:00
dc0a276edc
features2d: add missing KAZE DIFF_CHARBONNIER support #28324 ### Description This PR fixes the missing implementation for `DIFF_CHARBONNIER` diffusivity type in KAZE feature detector. ### Changes - Added `charbonnier_diffusivity()` call for `DIFF_CHARBONNIER` type in `Create_Nonlinear_Scale_Space()` - Added proper error handling for unsupported diffusivity types ### Problem When using KAZE with `DIFF_CHARBONNIER` diffusivity type, keypoint coordinates were not computed at subpixel level, because the code lacked the specific handling for this diffusivity mode. ### Solution The `charbonnier_diffusivity()` function already exists in `nldiffusion_functions.cpp`, it just wasn't being called. This PR adds the missing `else if` branch to call it, matching the pattern already implemented in `AKAZEFeatures.cpp`. Fixes #27134 ### Pull Request Readiness Checklist - [x] I agree to contribute to the project under Apache 2 License. - [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another copyleft license. - [x] The PR is proposed to the proper branch. - [x] There is a reference to the original bug report and related work - [ ] There is accuracy test, performance test and test data in opencv_extra repository, if applicable - [ ] The feature is well documented and sample code can be built with the project CMake