Skip to content
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

[QST] cupyx.skimage.registration #181

Open
swelborn opened this issue Dec 5, 2021 · 5 comments
Open

[QST] cupyx.skimage.registration #181

swelborn opened this issue Dec 5, 2021 · 5 comments
Assignees
Labels
question Further information is requested

Comments

@swelborn
Copy link

swelborn commented Dec 5, 2021

Hello, I recently hacked the phase_cross_correlation function in skimage.registration to enable cupy for my particular application.

After that, I found that @grlee77 did something similar but for many of skimage's functions on the cupyimg repo, and that the project had been ported here. Looks like I didn't have to do all that work....

I think it is great what you all are doing here, package looks really nice. Unfortunately, though, for my particular application, I don't want users to have to go through the windows installation process documented here. For the average user, installing cuda is difficult enough.

Are there plans to continue adding cupyx.scipy.ndimage support for the modules not currently on the PR upstream list here?

Thanks again,
Sam

@swelborn swelborn added the question Further information is requested label Dec 5, 2021
@grlee77
Copy link
Contributor

grlee77 commented Dec 14, 2021

I think it is great what you all are doing here, package looks really nice. Unfortunately, though, for my particular application, I don't want users to have to go through the windows installation process documented here. For the average user, installing cuda is difficult enough.

As far as I know, there are no updates in terms of Windows support aside from what is discussed in that issue.

Are there plans to continue adding cupyx.scipy.ndimage support for the modules not currently on the PR upstream list here?

We will probably continue to slowly add things on a case-by-case basis. Much of these are more work to add as they rely on compiled C code that needs to be rewritten for CUDA. A couple of functions we would like to prioritize are scipy.ndimage.distance_transform_edt and a watershed transform. Are there other specific functions that you are interested in?

We will also at some point update the API of the existing implementations to match the newly released scikit-image 0.19.

@swelborn
Copy link
Author

Thanks for your reply @grlee77. My application uses image registration using phase cross correlation.

For now I have just added a folder into my repo which users would install manually. Other option would be to add my own forked skimage repository with that module altered for the purposes of my application, but would be nicer to not have to do either of these things and have your package as a requirement.

For reference, my docs can be found here. It is version 0.0.1, just getting it off the ground.

@fakedrake
Copy link

I also need scipy.ndimage.distance_transform_edt to the end of applying watershed segmentation. Just to register my interest.

@srepmub
Copy link

srepmub commented Sep 5, 2022

same here, distance_transform_edt would be very useful! :P

@grlee77
Copy link
Contributor

grlee77 commented Sep 6, 2022

same here, distance_transform_edt would be very useful! :P

Hi @srepmub and @fakedrake, This is now available in release 22.08 and newer via cucim.core.operations.morphology.distance_transform_edt. I have a couple of PRs ready to submit for the upcoming 22.10 that add support for the sampling kwarg and further improve performance. I can see about also submitting this upstream to CuPy since it is part of the SciPy API.

@caryr35 caryr35 added this to cucim Nov 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
Status: No status
Development

No branches or pull requests

4 participants