private void InitHopfieldModelFromTextData(string initDir)
        {
            var di    = new DirectoryInfo(initDir);
            var files = di.GetFiles("*.txt");

            size    = files.Length;
            xs      = new List <int[]>(size);
            classes = new List <string>(size);

            for (var i = 0; i < size; ++i)
            {
                var numbers = new List <int>();

                var rows = File.ReadAllLines(files[i].FullName);
                foreach (var line in rows)
                {
                    var splitted = line.Split(' ');
                    foreach (var word in splitted)
                    {
                        if (word != "")
                        {
                            numbers.Add(int.Parse(word));
                        }
                    }
                }

                xs.Add(numbers.ToArray());

                var className = Path.GetFileNameWithoutExtension(files[i].Name);
                classes.Add(className);
            }

            assotiatedMemory = new HopfieldModel(xs);
        }
        private int getSampleIndex(int[] y)
        {
            var ind            = 0;
            var minHammingDist = HopfieldModel.hammingDistance(xs[0], y);

            for (var i = 1; i < xs.Count; ++i)
            {
                var hd = HopfieldModel.hammingDistance(xs[i], y);
                if (hd < minHammingDist)
                {
                    ind            = i;
                    minHammingDist = hd;
                }
            }

            return(ind);
        }
        private void InitHopfieldModel(string initDir)
        {
            var di    = new DirectoryInfo(initDir);
            var files = di.GetFiles("*.jpg");

            size    = files.Length;
            xs      = new List <int[]>(size);
            classes = new List <string>(size);

            for (var i = 0; i < size; ++i)
            {
                var b           = new Bitmap(Image.FromFile(files[i].FullName));
                var bipolarized = SignalProcessor.bipolarize(b, Color.FromArgb(0, 0, 0), 50);

                xs.Add(bipolarized);

                var className = Path.GetFileNameWithoutExtension(files[i].Name);
                classes.Add(className);
            }

            assotiatedMemory = new HopfieldModel(xs);
        }