-
Notifications
You must be signed in to change notification settings - Fork 54
Create half Gaussian kernel #206
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
Conversation
…erate half of a Gaussian kernel
|
This will affect the Python bindings, because of the introspection method that disambiguates overloaded functions, you need to explicitly give all function parameters. See |
…ol in CreateGauss, udate pydip signature for CreateGauss
That one is done, but now I clearly see why that probably not a good idea to change public function signature. Now that I understand the problem a bit better it seem that other files may need to be updated as well:
|
Don’t worry, I can fix these files tonight when I’m back home. Some of them are auto-generated. |
Thank you! Let me know if I can help. Unit testing on DipLib is still a bit of a mystery for me but I created a quick test file |
|
@VisualFox Did you see the PR I made to your PR on your fork? It fixes the docstring stuff. |
no sorry totally missed that, going to check it. Thank you! |
Merge is done, committed and pushed. Now waiting for Github automatic testing. Thank you very much for your help and the PR (that was a funny work around) |
|
Thank you very much for your help, time and your work on DipLib |
|
@VisualFox Thank you for improving the project. Your contributions are more than welcome! |
Rational:
I needed a way to generate half of a Gaussian (and/or its derivative) for implementing a line integral convolution. I can currently use CreateGauss and discard the second half of the kernel but that seem a bit waste given that internally DipLib generate half of a Gaussian anyway.
I'm very aware that a niche use case. So feel free to discard it (as using CreateGauss works). In reality it's mostly a personal excuse to start contributing to DipLib.
Implementation notes:
Additional notes:
I understand the need to hide implementation detail, yet MakeGaussian (and now MakeHalfGaussian) seem quite stable and that will be my preferred way to generate a full (or half) Gaussian kernel as I don't need any of the extra features that CreateGauss bring.