/// <summary> /// متد سازنده <c>FaceRecognitionService</c> /// </summary> public FaceRecognitionService() { m_cascadeClassifier = new CascadeClassifier(@"data/haarcascade_frontalface_default.xml"); ///[Initializing EigenFaceRecognizer] double l_threshold; if (Settings.Default.EigenFaceRecognizerThresholdInfinity) { l_threshold = double.PositiveInfinity; } else { l_threshold = Settings.Default.EigenFaceRecognizerThreshold; } m_faceRecognizer = new EigenFaceRecognizer(Settings.Default.EigenFaceRecognizerNumComponents, l_threshold); trainFaceRecognizer(); ///[Initializing EigenFaceRecognizer] Settings.Default.EigenFaceRecognizerThreshold = 2; ///[Initializing Settings] this.FRSSettings = new FRSSettings() { CascadeClassifierMaxSize = Settings.Default.CascadeClassifierMaxSize, CascadeClassifierMinSize = Settings.Default.CascadeClassifierMinSize, CascadeClassifierScaleFactor = Settings.Default.CascadeClassifierScaleFactor, CascadeClassifierMinNeighbours = Settings.Default.CascadeClassifierMinNeighbours, EigenFaceRecognizerThreshold = Settings.Default.EigenFaceRecognizerThreshold, EigenFaceRecognizerThresholdInfinity = Settings.Default.EigenFaceRecognizerThresholdInfinity, EigenFaceRecognizerNumComponents = Settings.Default.EigenFaceRecognizerNumComponents, }; ///[Initializing Settings] }
/// <summary> /// ذخیره سازی تنظیمات /// </summary> /// <param name="settings"></param> public void SetSettings(FRSSettings settings) { ///[Set settings] this.FRSSettings = settings; Settings.Default.EigenFaceRecognizerThreshold = settings.EigenFaceRecognizerThreshold; Settings.Default.EigenFaceRecognizerThresholdInfinity = settings.EigenFaceRecognizerThresholdInfinity; Settings.Default.EigenFaceRecognizerNumComponents = settings.EigenFaceRecognizerNumComponents; Settings.Default.CascadeClassifierMaxSize = settings.CascadeClassifierMaxSize; Settings.Default.CascadeClassifierMinNeighbours = settings.CascadeClassifierMinNeighbours; Settings.Default.CascadeClassifierScaleFactor = settings.CascadeClassifierScaleFactor; Settings.Default.CascadeClassifierMinSize = settings.CascadeClassifierMinSize; Settings.Default.Save(); ///[Set settings] }
/// <summary> /// ذخیره سازی تنظیمات /// </summary> /// <param name="settings"></param> public void SetSettings(FRSSettings settings) { Channel.SetSettings(settings); }