/// <summary> /// Creates a vertical or horizontal Scharr operator. /// </summary> /// <param name="srcDepth">Source image depth.</param> /// <param name="srcChannels">Source image channels.</param> /// <param name="dstDepth">Destination array depth.</param> /// <param name="dstChannels">Destination array channels.</param> /// <param name="dx">Order of the derivative x.</param> /// <param name="dy">Order of the derivative y.</param> /// <param name="scale">Optional scale factor for the computed derivative values. By default, no scaling is applied. </param> /// <param name="rowBorderMode">Pixel extrapolation method in the vertical direction. For details, see borderInterpolate.</param> /// <param name="columnBorderMode">Pixel extrapolation method in the horizontal direction.</param> public ScharrFilter( DepthType srcDepth, int srcChannels, DepthType dstDepth, int dstChannels, int dx, int dy, double scale = 1.0, CvEnum.BorderType rowBorderMode = BorderType.Default, CvEnum.BorderType columnBorderMode = BorderType.NegativeOne) { _ptr = CudaInvoke.cudaCreateScharrFilter( CvInvoke.MakeType(srcDepth, srcChannels), CvInvoke.MakeType(dstDepth, dstChannels), dx, dy, scale, rowBorderMode, columnBorderMode); }