You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As elucidated in the erosion source code from #1, it would make sense that masked pixels should not be taken into account when doing erosion as their values cannot be trusted. However, DIALS itself does not appear to take the mask into account in this step.
I have included the code that would do this, however it is currently commented out in order to match DIALS' results. I am not sure if this is intentional on DIALS' part or a bug, but it is something to keep in mind.
The text was updated successfully, but these errors were encountered:
Implement extended dispersion spotfinding
Implement a GPU-based version of the extended dispersion spotfinding
algorithm. This builds on regular dispersion by making two passes.
This allows for the detection of fainter spots by using the first pass
to detect candidate spots and exclude them from the background
calculation in the second pass.
Extended dispersion spotfinding is unavoidably slower than regular
dispersion by the fact that it requires two passes. However, the
performance gained through massively parallel processing on the GPU
should make this a viable option, when needed, even for fast feedback.
Create several CUDA kernels to perform the extended dispersion
spotfinding algorithm (`threshold.cu`, `erosion.cu`).
Refactor the dispersion kernel to share code with extended dispersion.
Move common code to `cuda_common.hpp`.
Create basic test script for extended dispersion spotfinding.
Add an `--algorithm` argument to `spotfinder.cc` along with the
necessary code to parse it, allowing for algorithm selection at runtime.
Add new files to the CMakeLists.txt file to include them in the build.
See also: #12, #13, #14
As elucidated in the erosion source code from #1, it would make sense that masked pixels should not be taken into account when doing erosion as their values cannot be trusted. However, DIALS itself does not appear to take the mask into account in this step.
See: https://github.com/dials/dials/blob/main/src/dials/algorithms/image/threshold/local.h
I have included the code that would do this, however it is currently commented out in order to match DIALS' results. I am not sure if this is intentional on DIALS' part or a bug, but it is something to keep in mind.
The text was updated successfully, but these errors were encountered: