/// <summary> /// Create a umat header for the specific ROI /// </summary> /// <param name="umat">The umat where the new UMat header will share data from</param> /// <param name="rowRange">The region of interest</param> /// <param name="colRange">The region of interest</param> public UMat(UMat umat, Emgu.CV.Structure.Range rowRange, Emgu.CV.Structure.Range colRange) : this(UMatInvoke.cveUMatCreateFromRange(umat.Ptr, ref rowRange, ref colRange), true) { }
/// <summary> /// Create a GpuMat from the specific region of <paramref name="mat"/>. The data is shared between the two GpuMat /// </summary> /// <param name="mat">The matrix where the region is extracted from</param> /// <param name="colRange">The column range.</param> /// <param name="rowRange">The row range.</param> public GpuMat(GpuMat mat, Emgu.CV.Structure.Range rowRange, Emgu.CV.Structure.Range colRange) : this(CudaInvoke.GetRegion(mat, ref rowRange, ref colRange), true) { }
internal extern static IntPtr cveUMatCreateFromRange(IntPtr mat, ref Emgu.CV.Structure.Range rowRange, ref Emgu.CV.Structure.Range colRange);
/// <summary> /// Create a CudaImage from the specific region of <paramref name="image"/>. The data is shared between the two CudaImage /// </summary> /// <param name="image">The CudaImage where the region is extracted from</param> /// <param name="colRange">The column range. Use MCvSlice.WholeSeq for all columns.</param> /// <param name="rowRange">The row range. Use MCvSlice.WholeSeq for all rows.</param> public CudaImage(CudaImage <TColor, TDepth> image, Emgu.CV.Structure.Range rowRange, Emgu.CV.Structure.Range colRange) : this(CudaInvoke.GetRegion(image, ref rowRange, ref colRange), true) { }