Exemplo n.º 1
0
 public void FirstTime()
 {
     this.Dispatcher.Invoke(() =>
     {
         if (stage == CaptureStage.Identify)
         {
             stage                      = CaptureStage.FirstTime;
             MainLabel.Text             = "Eres nuevo";
             Button1Label.Text          = "Si";
             Button1Label.Visibility    = Visibility.Visible;
             Button1.Visibility         = Visibility.Visible;
             Button2Label.Text          = "No";
             Button2Label.Visibility    = Visibility.Visible;
             Button2.Visibility         = Visibility.Visible;
             BottomPanel.Visibility     = Visibility.Visible;
             BottomPanelText.Visibility = Visibility.Visible;
             BottomPanelText.Text       = "Pienso que no te conozco. ¿Es la primera vez que te veo?";
             BottomPanel.SetValue(Grid.RowProperty, 2);
             BottomPanelText.SetValue(Grid.RowProperty, 2);
             Button1Label.SetValue(Grid.RowProperty, 3);
             Button1.SetValue(Grid.RowProperty, 3);
             Button2Label.SetValue(Grid.RowProperty, 3);
             Button2.SetValue(Grid.RowProperty, 3);
         }
     });
 }
Exemplo n.º 2
0
 public void Matched(int subject)
 {
     this.Dispatcher.Invoke(() =>
     {
         if (stage == CaptureStage.Identify)
         {
             stage = CaptureStage.Matched;
             IdentityImage.Source       = capture.GetIdentityBitmap(subject, 0);
             IdentityImage.Visibility   = Visibility.Visible;
             MainLabel.Visibility       = Visibility.Collapsed;
             Button1Label.Text          = "Si";
             Button1Label.Visibility    = Visibility.Visible;
             Button1.Visibility         = Visibility.Visible;
             Button2Label.Text          = "No";
             Button2Label.Visibility    = Visibility.Visible;
             Button2.Visibility         = Visibility.Visible;
             BottomPanel.Visibility     = Visibility.Visible;
             BottomPanelText.Visibility = Visibility.Visible;
             BottomPanelText.Text       = "Pienso que ya te conozco. ¿Eres tu la persona de esta foto?";
             BottomPanel.SetValue(Grid.RowProperty, 2);
             BottomPanelText.SetValue(Grid.RowProperty, 2);
             Button1Label.SetValue(Grid.RowProperty, 3);
             Button1.SetValue(Grid.RowProperty, 3);
             Button2Label.SetValue(Grid.RowProperty, 3);
             Button2.SetValue(Grid.RowProperty, 3);
         }
     });
 }
Exemplo n.º 3
0
        private void PersonLeaveAnimation()
        {
            stage                      = CaptureStage.Idle;
            Button1Label.Text          = "Empezar";
            Button1Label.Visibility    = Visibility.Collapsed;
            Button1.Visibility         = Visibility.Collapsed;
            Button2Label.Text          = "No";
            Button2Label.Visibility    = Visibility.Collapsed;
            Button2.Visibility         = Visibility.Collapsed;
            BottomPanel.Visibility     = Visibility.Collapsed;
            BottomPanelText.Visibility = Visibility.Collapsed;
            BottomPanelText.Text       = "Ubícate para que tu cabeza se alinee con la imagen. Presiona continuar cuando hayas terminado.";
            SmallLabel.Text            = "Levanta tu mano y presiona el boton para empezar.";
            SmallLabel.Visibility      = Visibility.Collapsed;
            MainLabel.Text             = "Hola!\n¿Ya me conoces?";
            MainLabel.Visibility       = Visibility.Visible;
            VideoCapture.Visibility    = Visibility.Collapsed;
            TemplateImage.Visibility   = Visibility.Collapsed;
            IdentityImage.Visibility   = Visibility.Collapsed;
            ImgReference.Visibility    = Visibility.Collapsed;
            ImgReferenceBG.Visibility  = Visibility.Collapsed;
            BottomPanel.SetValue(Grid.RowProperty, 3);
            BottomPanelText.SetValue(Grid.RowProperty, 3);
            Button1Label.SetValue(Grid.RowProperty, 3);
            Button1.SetValue(Grid.RowProperty, 3);
            Button2Label.SetValue(Grid.RowProperty, 3);
            Button2.SetValue(Grid.RowProperty, 3);

            string[] fromGradient = { "#ffd52941", "#ffe45f42", "#ffee894c", "#fff6b061", "#fffcd581" };
            string[] toGradient   = { "#ff1f719b", "#ff238aad", "#ff33a3bc", "#ff4cbcc9", "#ff6bd5d3" };
            UIAnimations.GradientAnimation(1.0, fromGradient, toGradient, BGCanvas);
        }
Exemplo n.º 4
0
 private void OnNoButton(object sender, RoutedEventArgs e)
 {
     if (stage == CaptureStage.Matched)
     {
         stage = CaptureStage.BadMatch;
         results.Mark(true, false);
         IdentityImage.Visibility   = Visibility.Collapsed;
         MainLabel.Visibility       = Visibility.Visible;
         MainLabel.Text             = "Perdon por confundirte. ¿Es la primera vez que te veo?";
         BottomPanel.Visibility     = Visibility.Collapsed;
         BottomPanelText.Visibility = Visibility.Collapsed;
         Button1.SetValue(Grid.RowProperty, 3);
         Button1Label.SetValue(Grid.RowProperty, 3);
         Button2.SetValue(Grid.RowProperty, 3);
         Button2Label.SetValue(Grid.RowProperty, 3);
     }
     else if (stage == CaptureStage.Register)
     {
         stage = CaptureStage.End;
         MainLabel.Visibility       = Visibility.Visible;
         MainLabel.Text             = "Muchas gracias por visitarme!";
         Button1Label.Visibility    = Visibility.Collapsed;
         Button1.Visibility         = Visibility.Collapsed;
         Button2Label.Visibility    = Visibility.Collapsed;
         Button2.Visibility         = Visibility.Collapsed;
         BottomPanel.Visibility     = Visibility.Collapsed;
         BottomPanelText.Visibility = Visibility.Collapsed;
     }
     else if (stage == CaptureStage.FirstTime || stage == CaptureStage.BadMatch)
     {
         stage = CaptureStage.End;
         if (stage == CaptureStage.FirstTime)
         {
             results.Mark(false, false);
         }
         MainLabel.Visibility       = Visibility.Visible;
         MainLabel.Text             = "Lo siento :(";
         Button1Label.Visibility    = Visibility.Collapsed;
         Button1.Visibility         = Visibility.Collapsed;
         Button2Label.Visibility    = Visibility.Collapsed;
         Button2.Visibility         = Visibility.Collapsed;
         BottomPanel.Visibility     = Visibility.Visible;
         BottomPanelText.Visibility = Visibility.Visible;
         BottomPanelText.Text       = "Entrenare de nuevo para mejorar. Vuelve pronto!";
         BottomPanel.SetValue(Grid.RowProperty, 3);
         BottomPanelText.SetValue(Grid.RowProperty, 3);
     }
 }
Exemplo n.º 5
0
 private void OnStartButton(object sender, RoutedEventArgs e)
 {
     if (stage == CaptureStage.Tracking)
     {
         stage = CaptureStage.Capture;
         SmallLabel.Visibility = Visibility.Collapsed;
         Button1.SetValue(Grid.RowProperty, 2);
         Button1Label.SetValue(Grid.RowProperty, 2);
         Button1Label.Text          = "Continuar";
         BottomPanel.Visibility     = Visibility.Visible;
         BottomPanelText.Visibility = Visibility.Visible;
         VideoCapture.Visibility    = Visibility.Visible;
         TemplateImage.Visibility   = Visibility.Visible;
         MainLabel.Visibility       = Visibility.Collapsed;
     }
     else if (stage == CaptureStage.Capture)
     {
         stage = CaptureStage.Identify;
         MainLabel.Visibility = Visibility.Visible;
         MainLabel.Text       = "Identificando...";
         int sbj = capture.NewSubjectIdentify();
         CaptureData(0, true);
         faceId.Identify(sbj);
         TemplateImage.Visibility   = Visibility.Collapsed;
         VideoCapture.Visibility    = Visibility.Collapsed;
         BottomPanel.Visibility     = Visibility.Collapsed;
         BottomPanelText.Visibility = Visibility.Collapsed;
         Button1.Visibility         = Visibility.Collapsed;
         Button1Label.Visibility    = Visibility.Collapsed;
     }
     else if (stage == CaptureStage.Matched)
     {
         stage = CaptureStage.End;
         results.Mark(true, true);
         IdentityImage.Visibility = Visibility.Collapsed;
         MainLabel.Visibility     = Visibility.Visible;
         MainLabel.Text           = "Genial!";
         Button1Label.Visibility  = Visibility.Collapsed;
         Button1.Visibility       = Visibility.Collapsed;
         Button2Label.Visibility  = Visibility.Collapsed;
         Button2.Visibility       = Visibility.Collapsed;
         BottomPanelText.Text     = "Me alegra volver a verte. Muchas gracias por ayudarme a aprender.";
     }
     else if (stage == CaptureStage.BadMatch)
     {
         AskToRegister();
     }
     else if (stage == CaptureStage.FirstTime)
     {
         results.Mark(false, true);
         AskToRegister();
     }
     else if (stage == CaptureStage.Register)
     {
         stage = CaptureStage.Demo;
         MainLabel.Visibility      = Visibility.Collapsed;
         TemplateImage.Visibility  = Visibility.Collapsed;
         BottomPanelText.Text      = "Imagenes de guia apareceran en la pantalla, por cada una intenta imitar la orientación de la cabeza mostrada en la imagen. Presiona continuar para empezar las capturas.";
         ImgReference.Visibility   = Visibility.Visible;
         ImgReferenceBG.Visibility = Visibility.Visible;
         Button2.Visibility        = Visibility.Collapsed;
         Button2Label.Visibility   = Visibility.Collapsed;
         BottomPanel.SetValue(Grid.RowProperty, 3);
         BottomPanelText.SetValue(Grid.RowProperty, 3);
         Button1Label.SetValue(Grid.RowProperty, 2);
         Button1.SetValue(Grid.RowProperty, 2);
         Button2Label.SetValue(Grid.RowProperty, 2);
         Button2.SetValue(Grid.RowProperty, 2);
         VideoCapture.Visibility  = Visibility.Visible;
         TemplateImage.Visibility = Visibility.Visible;
         DemoReel();
     }
     else if (stage == CaptureStage.Demo)
     {
         stage            = CaptureStage.RegisterCaptures;
         subjectToProcess = capture.NewSubjectRegistry();
         CaptureData(0, false);
         currentCapture             = 1;
         Button1.Visibility         = Visibility.Collapsed;
         Button1Label.Visibility    = Visibility.Collapsed;
         BottomPanel.Visibility     = Visibility.Collapsed;
         BottomPanelText.Visibility = Visibility.Collapsed;
         TemplateImage.Visibility   = Visibility.Collapsed;
         ImgReference.Source        = (ImageSource)FindResource("Ref_1");
         Task.Delay(3000).ContinueWith(t => NextCapture());
     }
 }