/// <summary> /// Release the unmanaged memory associated with this EigenFaceRecognizer /// </summary> protected override void DisposeObject() { if (_sharedPtr == IntPtr.Zero) { FaceInvoke.cveEigenFaceRecognizerRelease(ref _sharedPtr); } base.DisposeObject(); }
/// <summary> /// Create an EigenFaceRecognizer /// </summary> /// <param name="numComponents">The number of components</param> /// <param name="threshold">The distance threshold</param> public EigenFaceRecognizer(int numComponents = 0, double threshold = double.MaxValue) { _ptr = FaceInvoke.cveEigenFaceRecognizerCreate(numComponents, threshold, ref _faceRecognizerPtr, ref _basicFaceRecognizerPtr, ref _sharedPtr); }