/// <summary>
 /// Finds the edges on the input <paramref name="src"/> and marks them in the output image edges using the Canny algorithm.
 /// </summary>
 /// <param name="src">Input image</param>
 /// <param name="edges">Image to store the edges found by the function</param>
 /// <param name="stream">Use a Stream to call the function asynchronously (non-blocking) or null to call the function synchronously (blocking).</param>
 public void Detect(IInputArray src, IOutputArray edges, Stream stream = null)
 {
     using (InputArray iaSrc = src.GetInputArray())
         using (OutputArray oaEdges = edges.GetOutputArray())
             CudaInvoke.cudaCannyEdgeDetectorDetect(_ptr, iaSrc, oaEdges, stream);
 }