Пример #1
0
        private void BtnPredict_Click(object sender, EventArgs e)
        {
            Frame = Capture.QueryFrame();
            var imageFrame = Frame.ToImage <Gray, byte>();

            if (imageFrame != null)
            {
                var faces        = FaceDetection.DetectMultiScale(imageFrame, 1.3, 5);
                var userDetected = new List <string>();

                foreach (var face in faces)
                {
                    var processImage = imageFrame.Copy(face).Resize(ProcessImageWidth, ProcessImageHeight, Inter.Cubic);
                    var resultEigen  = EigenFaceRecognizer.Predict(processImage);

                    if (resultEigen.Label != -1)
                    {
                        userDetected.Add(DataStoreAccess.GetUsername(resultEigen.Label));
                    }
                    else
                    {
                        userDetected.Add("Unknown");
                    }
                }

                lbResult.Text = string.Join(",", userDetected);
            }
        }
        private void TestRecognize_Click(object sender, RoutedEventArgs e)
        {
            _recognizer = new JAVSFacialRecognizer();

            byte[] face        = StreamConverter.ImageToByte(_imageFace.ToBitmap());
            int    foundUserId = _recognizer.RecognizeUser(face);

            ResultsString = _dataClient.GetUsername(foundUserId);
            NotifyPropertyChanged("ResultsString");
        }