Skip to content

Update FastCV DSP Initialization, De-initialization, and Memory Operation for Linux and Android#95

Closed
quic-apreetam wants to merge 15 commits intoopencv:fastcv/4.xfrom
CodeLinaro:5thPost
Closed

Update FastCV DSP Initialization, De-initialization, and Memory Operation for Linux and Android#95
quic-apreetam wants to merge 15 commits intoopencv:fastcv/4.xfrom
CodeLinaro:5thPost

Conversation

@quic-apreetam
Copy link

This PR updates the FastCV DSP initialization, de-initialization, and memory operation functions for both Linux and Android.
The fastcvDsp.h file has also been updated and should be referred to for DSP-related operations.

@asmorkalov asmorkalov self-requested a review May 7, 2025 09:03
asmorkalov added a commit to opencv/opencv that referenced this pull request May 21, 2025
Update hash for the fastcv libs for both Linux and Android #27340

Replaces #27290
Updated libs PR: opencv/opencv_3rdparty#95

### 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
@asmorkalov
Copy link

Integrated manually.

@asmorkalov asmorkalov closed this May 21, 2025
asmorkalov pushed a commit to opencv/opencv_contrib that referenced this pull request Jun 6, 2025
Add FastCV DSP Initialization, QcAllocator and FastCV DSP Extension APIs #3931

Merge with opencv/opencv#27290

**Detailed Description**

This PR introduces FastCV DSP Extension APIs within the '**cv::fastcv::dsp**' namespace.
The following APIs have been added:

1. **fcvdspinit**: Initializes the FastCV DSP environment.
2. **fcvdspdeinit**: Deinitializes the FastCV DSP environment.
3. **sumOfAbsoluteDiffs**: Computes the sum of absolute differences of an image against an 8x8 template.
4. **thresholdOtsu**: Binarizes a grayscale image using Otsu's method.
5. **FFT**: Computes the 1D or 2D Fast Fourier Transform of a real-valued matrix.
6. **IFFT**: Computes the 1D or 2D Inverse Fast Fourier Transform of a complex-valued matrix.
7. **canny**: Applies the Canny edge detector to an 8-bit grayscale image.
8. **filter2D**: Applies a generic 2D filter to an image.

The **QcAllocator** has been added to manage memory allocations on Qualcomm's Chipsets. This allocator ensures that matrices are allocated using the Qualcomm hardware memory allocator, providing efficient DSP operations.

Requires updated binary from: opencv/opencv_3rdparty#97
Requires binary from opencv/opencv_3rdparty#95

Lib Hash Update: opencv/opencv#27403

### 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
dbouron pushed a commit to criteo-forks/opencv_contrib that referenced this pull request Jun 23, 2025
Add FastCV DSP Initialization, QcAllocator and FastCV DSP Extension APIs opencv#3931

Merge with opencv/opencv#27290

**Detailed Description**

This PR introduces FastCV DSP Extension APIs within the '**cv::fastcv::dsp**' namespace.
The following APIs have been added:

1. **fcvdspinit**: Initializes the FastCV DSP environment.
2. **fcvdspdeinit**: Deinitializes the FastCV DSP environment.
3. **sumOfAbsoluteDiffs**: Computes the sum of absolute differences of an image against an 8x8 template.
4. **thresholdOtsu**: Binarizes a grayscale image using Otsu's method.
5. **FFT**: Computes the 1D or 2D Fast Fourier Transform of a real-valued matrix.
6. **IFFT**: Computes the 1D or 2D Inverse Fast Fourier Transform of a complex-valued matrix.
7. **canny**: Applies the Canny edge detector to an 8-bit grayscale image.
8. **filter2D**: Applies a generic 2D filter to an image.

The **QcAllocator** has been added to manage memory allocations on Qualcomm's Chipsets. This allocator ensures that matrices are allocated using the Qualcomm hardware memory allocator, providing efficient DSP operations.

Requires updated binary from: opencv/opencv_3rdparty#97
Requires binary from opencv/opencv_3rdparty#95

Lib Hash Update: opencv/opencv#27403

### 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants