Exemplo n.º 1
0
        public TrainingWindow()
        {
            InitializeComponent();
            BDelete.IsEnabled             = false;
            BUpdate.IsEnabled             = false;
            isEditingXML                  = false;
            listdata                      = TrainingData.Deserialize(IMAGES_PATH);
            CBInterpolation.ItemsSource   = Enum.GetValues(typeof(Emgu.CV.CvEnum.Inter));
            CBInterpolation.SelectedIndex = 0;
            CBGender.ItemsSource          = Enum.GetValues(typeof(GenderEnum));
            CBGender.SelectedIndex        = 0;
            foreach (TrainingData data in listdata)
            {
                switch (data.label)
                {
                case GenderEnum.MALE:
                    male++;
                    break;

                case GenderEnum.FEMALE:
                    female++;
                    break;

                default:
                    break;
                }
            }
            TBGenderCount.Text = string.Format("Male: {0} Female: {1}", male, female);
            currentData        = new TrainingData();
            Photo.Stretch      = Stretch.Fill;
            pathIndex          = 0;
            FaceRecognizer fr = new EigenFaceRecognizer(16, 123);

            if (File.Exists(TRAINING_PATH))
            {
                fr.Load(TRAINING_PATH);
            }
            GenderClassifier.threshold = 100;
            _genderClassifier          = new GenderClassifier {
                classifier       = new CascadeClassifier("Classifiers\\haarcascade_frontalface_alt2.xml"),
                faceRecognizer   = fr,
                recognizerHeight = MainWindow.recognitionHeight,
                recognizerWidth  = MainWindow.recognitionWidth
            };
        }
Exemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();
            Loaded += MainWindowLoaded;

            Closing += MainWindowClosing;

            ExcelManager.CreateSingleton(ConfigurationManager.AppSettings["DemographicsLocation"]);

            Configuration confg = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

            if (confg.AppSettings.Settings["Width"] == null || !int.TryParse(confg.AppSettings.Settings["Width"].Value, out recognitionWidth))
            {
                recognitionWidth = 120;
                confg.AppSettings.Settings.Add(new KeyValueConfigurationElement("Width", recognitionWidth.ToString()));
                confg.Save(ConfigurationSaveMode.Modified);
                ConfigurationManager.RefreshSection("appSettings");
            }
            if (confg.AppSettings.Settings["Height"] == null || !int.TryParse(confg.AppSettings.Settings["Height"].Value, out recognitionHeight))
            {
                recognitionHeight = 120;
                confg.AppSettings.Settings.Add(new KeyValueConfigurationElement("Height", recognitionHeight.ToString()));
                confg.Save(ConfigurationSaveMode.Modified);
                ConfigurationManager.RefreshSection("appSettings");
            }
            if (confg.AppSettings.Settings["DemographicsLocation"] == null)
            {
                string path = @"..\demo.xlsx";
                ExcelManager.CreateSingleton(path);
                confg.AppSettings.Settings.Add(new KeyValueConfigurationElement("DemographicsLocation", path.ToString()));
                confg.Save(ConfigurationSaveMode.Modified);
                ConfigurationManager.RefreshSection("appSettings");
            }
            else
            {
                ExcelManager.CreateSingleton(ConfigurationManager.AppSettings["DemographicsLocation"]);
            }

#if ON_TOP
            StatusValue.Text = "Debugging!";
            Activated       += MainWindowActive;
            Deactivated     += MainWindowHidden;
#else
            StatusValue.Text = "Release";
#endif
            mouseController = new KinectMouseController();

            FaceRecognizer fr = new EigenFaceRecognizer(14, 123);
            fr.Load(TrainingWindow.TRAINING_PATH);

#if SHOW_CAMERA
            imgViewer = new ImageViewer();
            imgViewer.Show();
#endif
            GenderClassifier.threshold = 50D;
            _genderClassifier          = new GenderClassifier {
                classifier       = new CascadeClassifier(CLASSIFIER_PATH),
                faceRecognizer   = fr,
                recognizerWidth  = recognitionWidth,
                recognizerHeight = recognitionHeight
            };

            areaOfInterest = new Rectangle(CROPPED_X, CROPPED_Y, CROPPED_WIDTH, CROPPED_HEIGHT);
        }