Example #1
0
        private void Window_Loaded_1(object sender, RoutedEventArgs e)
        {
            const string baseUri = @"C:\Users\Dmitry\Pictures\DPSI\";

            _knowledgeImages[0] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "A")));

            _width        = _knowledgeImages[0].PixelWidth;
            _height       = _knowledgeImages[0].PixelHeight;
            _pixelsNumber = _width * _height;

            _knowledgeImages[1] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "C")));
            _knowledgeImages[2] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "K")));
            _knowledgeImages[3] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "A2")));
            _knowledgeImages[4] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "C2")));
            _knowledgeImages[5] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "K2")));
            _knowledgeImages[6] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "A3")));
            _knowledgeImages[7] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "C3")));
            _knowledgeImages[8] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "K3")));

            for (int i = 0; i < NumberOfImages; i++)
            {
                _knowledgeMatrix[i] = GetImageVector(BitmapConverter.BitmapImage2Bitmap(_knowledgeImages[i]));
            }

            W = new double[_pixelsNumber, NumberOfClasses];
            for (int i = 0; i < _pixelsNumber; i++)
            {
                for (int j = 0; j < NumberOfClasses; j++)
                {
                    W[i, j] = 1;
                }
            }

            InitFrequency();

            Y = new double[NumberOfClasses];

            StartLearning();

            var learningResults = new List <LearningResult>();

            for (int i = 0; i < _knowledgeImages.Length; i++)
            {
                learningResults.Add(new LearningResult
                {
                    Image        = _knowledgeImages[i],
                    ClassNumnber = RecognizeClass(_knowledgeImages[i])
                });
            }

            var learningResultsWindow = new LearningResultsWindow(learningResults);

            learningResultsWindow.Show();
        }
Example #2
0
        private void Window_Loaded_1(object sender, RoutedEventArgs e)
        {
            const string baseUri = @"C:\Users\Dmitry\Pictures\DPSI\";
            _knowledgeImages[0] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "A")));

            _width = _knowledgeImages[0].PixelWidth;
            _height = _knowledgeImages[0].PixelHeight;
            _pixelsNumber = _width * _height;
            
            _knowledgeImages[1] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "C")));
            _knowledgeImages[2] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "K")));
            _knowledgeImages[3] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "A2")));
            _knowledgeImages[4] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "C2")));
            _knowledgeImages[5] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "K2")));
            _knowledgeImages[6] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "A3")));
            _knowledgeImages[7] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "C3")));
            _knowledgeImages[8] = new BitmapImage(new Uri(string.Format("{0}{1}.png", baseUri, "K3")));
            
            for (int i = 0; i < NumberOfImages; i++)
            {
                _knowledgeMatrix[i] = GetImageVector(BitmapConverter.BitmapImage2Bitmap(_knowledgeImages[i]));
            }

            W = new double[_pixelsNumber, NumberOfClasses];
            for (int i = 0; i < _pixelsNumber; i++)
            {
                for (int j = 0; j < NumberOfClasses; j++)
                {
                    W[i, j] = 1;
                }
            }

            InitFrequency();

            Y = new double[NumberOfClasses];

            StartLearning();

            var learningResults = new List<LearningResult>();
            for(int i = 0; i < _knowledgeImages.Length; i++)
            {
               learningResults.Add(new LearningResult
                   {
                       Image = _knowledgeImages[i],
                       ClassNumnber = RecognizeClass(_knowledgeImages[i])
                   }); 
            }

            var learningResultsWindow = new LearningResultsWindow(learningResults);
            learningResultsWindow.Show();
        }