Skip to content

added 16-bit support to fastNlMeansDenoising and updated tests#26831

Merged
asmorkalov merged 3 commits intoopencv:4.xfrom
shyama7004:fix-denoising.cpp
Jan 29, 2025
Merged

added 16-bit support to fastNlMeansDenoising and updated tests#26831
asmorkalov merged 3 commits intoopencv:4.xfrom
shyama7004:fix-denoising.cpp

Conversation

@shyama7004
Copy link
Copy Markdown
Contributor

Fixes : #26582

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

@shyama7004
Copy link
Copy Markdown
Contributor Author

@asmorkalov, apologies for the disturbance. If you have some time, could you please take a look at PR #26366 and share your feedback? Let me know if there's anything that needs improvement.

@asmorkalov asmorkalov self-assigned this Jan 28, 2025
@asmorkalov asmorkalov added this to the 4.12.0 milestone Jan 28, 2025
@asmorkalov
Copy link
Copy Markdown
Contributor

I reviewed the tests and they are very cryptic. I propose simpler solution: run denosing twice for the same 8bit image and 16-bit converted from 8 bit. Also I think, you can multiply 8bit input by some value, e.g.128 and denoised image should be the same as 8bit, but multiplied with the same value 128.

@shyama7004
Copy link
Copy Markdown
Contributor Author

I was about to commit :(

@asmorkalov
Copy link
Copy Markdown
Contributor

@shyama7004 I replaced your test with u8 vs u16 test. It's more practical rather than random input test. I'll merge the PR as soon as CI is green.

@asmorkalov asmorkalov merged commit bb798d1 into opencv:4.x Jan 29, 2025
29 of 30 checks passed
@shyama7004 shyama7004 deleted the fix-denoising.cpp branch January 29, 2025 13:47
@asmorkalov asmorkalov mentioned this pull request Feb 19, 2025
NanQin555 pushed a commit to NanQin555/opencv that referenced this pull request Feb 24, 2025
Added 16-bit support to fastNlMeansDenoising and updated tests opencv#26831

Fixes : opencv#26582

### 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
- [ ] 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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fastNlMeansDenoisingMulti does not support 16 bit values

2 participants