Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@asmorkalov
Copy link
Contributor

@asmorkalov asmorkalov commented Jul 18, 2024

The xxxApprox to implement HAL functions with less bits for arithmetic of FP.

The hint was introduced in #25792 and #25911

Pull Request Readiness Checklist

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

  • I agree to contribute to the project under Apache 2 License.
  • 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 asmorkalov changed the title Added xxxApprox overloads for YUV color conversions in HAL and AlgorithmHint to cvtColor WIP: Added xxxApprox overloads for YUV color conversions in HAL and AlgorithmHint to cvtColor Jul 18, 2024
@asmorkalov
Copy link
Contributor Author

Perf statistics for Jetson tk1 (ARMv7 NEON) and jetson orin:
perf-cvtcolor.zip
Looks like the HAL makes sense for old v7 chips only.

@asmorkalov asmorkalov changed the title WIP: Added xxxApprox overloads for YUV color conversions in HAL and AlgorithmHint to cvtColor Added xxxApprox overloads for YUV color conversions in HAL and AlgorithmHint to cvtColor Jul 25, 2024
@param isCbCr if set to true write output in YCbCr format
Convert from BGR, RGB, BGRA or RGBA to YUV or YCbCr.
*/
inline int hal_ni_cvtBGRtoYUVApprox(const uchar * src_data, size_t src_step, uchar * dst_data, size_t dst_step, int width, int height, int depth, int scn, bool swapBlue, bool isCbCr) { return CV_HAL_ERROR_NOT_IMPLEMENTED; }
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why 'Approx' is in the function name? Why not pass algorithm hint as a parameter?

Copy link
Contributor Author

@asmorkalov asmorkalov Jul 30, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The existing API is already used in 3rd party HAL like Carotene, KleidiCV and some other. So we need to in
introduce new API anyway. The solution just follows current HAL design.

@asmorkalov asmorkalov added this to the 4.11.0 milestone Aug 6, 2024
@asmorkalov
Copy link
Contributor Author

@opencv-alalek Could you update ABI complience checker on BuildBot?

@asmorkalov asmorkalov merged commit 49459d4 into opencv:4.x Aug 6, 2024
@asmorkalov asmorkalov mentioned this pull request Aug 6, 2024
fengyuentau pushed a commit to fengyuentau/opencv that referenced this pull request Aug 15, 2024
Added xxxApprox overloads for YUV color conversions in HAL and AlgorithmHint to cvtColor opencv#25932

The xxxApprox to implement HAL functions with less bits for arithmetic of FP.

The hint was introduced in opencv#25792 and opencv#25911

### 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
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
thewoz pushed a commit to CobbsLab/OPENCV that referenced this pull request Feb 13, 2025
Added xxxApprox overloads for YUV color conversions in HAL and AlgorithmHint to cvtColor opencv#25932

The xxxApprox to implement HAL functions with less bits for arithmetic of FP.

The hint was introduced in opencv#25792 and opencv#25911

### 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
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] 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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants