Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Why No CUDA version of findContours?

A while back I remember reading that there was an effort to implement as many CUDA versions of functions as possible, even if the CUDA version was not faster than a CPU version. This was so that results from one CUDA operation would not have to be transferred back to the CPU for some small operation and then transferred back to the GPU. Transferring to/from the CPU/GPU chews up a lot of time.

For example,, if you run the CUDA version of Canny on an image, because there is no CUDA version of findContours, you would then have to transfer back to the CPU to run findContours. Then, if you wanted to do another CUDA operation on the result of findContours, you would then have to transfer back to the GPU.

Was CUDA support of this kind abandoned?

Having a CUDA version of findContours would be very helpful and findContours is a very common function after Canny.