Ocronet.Dynamic.Recognizers.Lenet.LenetClassifier.CreateClassesFromDataset C# (CSharp) Method

CreateClassesFromDataset() private method

private CreateClassesFromDataset ( IDataset ds ) : int[]
ds Ocronet.Dynamic.IOData.IDataset
return int[]
        private int[] CreateClassesFromDataset(IDataset ds)
        {
            // create class list from dataset
            SortedDictionary<int, int> keymap = new SortedDictionary<int, int>();
            for (int i = 0; i < ds.nSamples(); i++)
            {
                if (!keymap.ContainsKey(ds.Cls(i)))
                    keymap.Add(ds.Cls(i), 1);
                else
                    keymap[ds.Cls(i)]++;
            }
            int[] classes = new int[keymap.Count];
            keymap.Keys.CopyTo(classes, 0);

            // show class counts
            Console.WriteLine("Classes counts:");
            string showline = "";
            int ishow = 0;
            for (int i = 0; i < keymap.Count; i++)
            {
                ishow++;
                if (classes[i] >= 32)
                    showline += String.Format("{0,-9}", String.Format("{0}[{1}]", (char)classes[i], keymap[classes[i]]));
                else
                    showline += String.Format("{0,-9}", String.Format("{0}[{1}]", classes[i], keymap[classes[i]]));
                if (ishow % 8 == 0)
                {
                    Console.WriteLine(showline);
                    showline = "";
                }
            }
            Console.WriteLine(showline);
            return classes;
        }