1
0
mirror of https://github.com/opencv/opencv_contrib.git synced 2025-10-20 12:55:15 +08:00
Files
pratham-mcw 06fc7ad743 Merge pull request #3980 from pratham-mcw:opt-arm64-adaptive-manifold-unroll
ximgproc: optimize Adaptive Manifold function for ARM64 #3980

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [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 license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch

- This PR introduces an ARM64-specific performance optimization in AdaptiveManifoldFilter::h_filter by applying loop unrolling.
- The optimization is guarded with #if defined(_M_ARM64) to ensure it only affects ARM64 builds.
- The optimization does not affect accuracy and maintains the same numerical behavior as the original scalar implementation.

Performance Improvements :

- The optimization significantly improves the performance of adaptive Manifold function on Windows ARM64 targets.
- The table below shows timing comparisons before and after the optimization:
<img width="1098" height="219" alt="image" src="https://github.com/user-attachments/assets/6cab9147-8ba0-4582-bdc6-e1f57989da86" />
2025-10-13 11:33:42 +03:00
..
2025-09-25 17:25:47 +03:00

Extended Image Processing

  • Structured Forests
  • Edge Boxes
  • Domain Transform Filter
  • Guided Filter
  • Adaptive Manifold Filter
  • Joint Bilateral Filter
  • Superpixels
  • Graph segmentation
  • Selective search from segmentation
  • Paillou Filter
  • Fast Line Detector
  • Deriche Filter
  • Pei&Lin Normalization
  • Ridge Detection Filter
  • Binary morphology on run-length encoded images
  • Ellipse Detector