Morphological Operations with CUDA


I’m looking for morphological operations implemented using CUDA. I was thinking about using GpuCV but that project seems to not be active anymore. The information I found states that it only supports CUDA 1.1. I would like to use something that is somewhat more future safe.

I wounder if anyone knows of any good CUDA library with morphological erosion, dilation, reconstruction and geodesic distance transform? Or if someone already has implemented one or more of these with CUDA and is willing to share the source code that would also be great.

I have searched without any success, don’t know if I haven’t searched good enough or if there doesn’t exist any public solutions. I hope someone can help me, else I guess I need to implement them my self :unsure:


I believe that some of these operations are implemented in the Nvidia Performance Primitives.


Ohh, hadn’t seen that library, guess my searching skills need to be improved :) Thank you! It includes Erode and Dilate which is perfect. If anyone has any information about where I can find some of the other operations I would really appreciate the help.

Where to find these dilate and erode operations & how to use them ?

You have to link against some NPP dlls. NPP is included with the Cuda toolkit.
The usage of the NPP follows the usage pattern of the IPP library, so you can take
as an baseline.
Or you use OpenCV, example at