opencv/modules/imgproc
天音あめ cbcfd772ce
Merge pull request #26958 from amane-ame:pyramids_hal_rvv
Add RISC-V HAL implementation for cv::pyrDown and cv::pyrUp #26958

This patch implements `cv_hal_pyrdown/cv_hal_pyrup` function in RVV_HAL using native intrinsics, optimizing the performance for `cv::pyrDown`, `cv::pyrUp` and `cv::buildPyramids` with data types `{8U,16S,32F} x {C1,C2,C3,C4,Cn}`.

Tested on MUSE-PI (Spacemit X60) for both gcc 14.2 and clang 20.0.

```
$ ./opencv_test_imgproc --gtest_filter="*pyr*:*Pyr*"
$ ./opencv_perf_imgproc --gtest_filter="*pyr*:*Pyr*" --perf_min_samples=300 --perf_force_samples=300
```

<img width="1112" alt="Untitled" src="https://github.com/user-attachments/assets/235a9fba-0d29-434e-8a10-498212bac657" />


### 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
- [ ] The PR is proposed to the proper branch
- [ ] 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
      Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake
2025-03-04 15:41:15 +03:00
..
doc Merge pull request #25616 from savuor:rv/yuv_docs 2024-05-25 13:12:03 +03:00
include/opencv2 Merge pull request #26836 from chacha21:thresholding_compute_threshold_only 2025-01-24 14:25:21 +03:00
misc add some functions and tests 2024-12-01 23:17:35 +03:00
perf Remove useless C headers 2025-01-13 16:34:28 +01:00
src Merge pull request #26958 from amane-ame:pyramids_hal_rvv 2025-03-04 15:41:15 +03:00
test Merge pull request #26926 from MaximSmolskiy:fix-getPerspectiveTransform-for-singular-case 2025-03-02 12:44:39 +03:00
CMakeLists.txt fix FFmpeg wrapper build 2024-12-26 12:15:46 +00:00