-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add unsharp mask feature and gallery example #2642
base: main
Are you sure you want to change the base?
Conversation
Hello @YueHazelZheng! Thanks for submitting the PR.
|
Maybe it is just me, but wouldn't be better to call it "adaptive_unsharp_mask"? I would rename the function in the PR to reflect that it implements an adaptive version, A general nD implementation of the traditional unsharp_mask could be:
It might be a good idea to clip the image, and/or enforce the same output type as the input was.
The clipping, type conversion, etc., is a question which should be decided for both versions. (And obviously, the build errors must be fixed before further actions.) |
@dvolgyes Do you happen to have a good reference citation? I think trying to find one is what led to the discovery of this paper, and its subsequent implementation. |
Well, the problem is that unsharp masking is really really old technique, analog version dating back to the 1930s. So even in the 1970s, there are articles about the application but not on the original method. Most of the time it is just in the middle of the book, not even in a dedicated chapter, so you could cite On Page 274, section 5.10.2: Example citation could be: Jayaraman, S., Esakkirajan, S., & Veerakima, T. (2009). Digital image processing, ed iii., page 274 Similarly, on page 174-175, see equation 6.38. Another nice here, see page 104, section 5.7: And so on. Almost every intro-level digital image processing book has it. |
@dvolgyes I agree with your comments above. Also, I have an excellent person in mind who could lead this heroic work nudge nudge ;) |
I have no idea how could I change somebody else's PR. |
@dvolgyes This section of the user guide is relevant: Additionally, some functions take a
|
Description
This PR addresses issue #2477 and adds an unsharp mask feature, including a gallery example. Efficiency still needs to be improved and ideas for unit tests are appreciated.
Checklist
[It's fine to submit PRs which are a work in progress! But before they are merged, all PRs should provide:]
./doc/examples
(new features only)[For detailed information on these and other aspects see scikit-image contribution guidelines]
References
This PR implements the following paper: http://ieeexplore.ieee.org/abstract/document/826787/
For reviewers
later.
doc/release/release_dev.rst
.