Beispiel #1
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public static org.neuroph.core.data.DataSet createFromFile(String labelPath, String imagePath, int sampleCount) throws java.io.IOException
        public static DataSet createFromFile(string labelPath, string imagePath, int sampleCount)
        {
            List <MNISTImage> mnistImages = MNISTImage.loadDigitImages(labelPath, imagePath);
            DataSet           dataSet     = createDataSet(mnistImages, sampleCount);

            return(dataSet);
        }
Beispiel #2
0
        // TODO; remove sampleCount param its ame as  list count
        private static DataSet createDataSet(List <MNISTImage> imageList, int sampleCount)
        {
            int     pixelCount = imageList[0].Size;
            int     totalSize  = 1024;
            DataSet dataSet    = new DataSet(totalSize, 10);

            for (int i = 0; i < sampleCount; i++)
            {
                MNISTImage dImage = imageList[i];
                double[]   input  = new double[totalSize];
                double[]   output = new double[10];
                for (int j = 0; j < 10; j++)
                {
                    output[j] = 0;
                }

                for (int j = 0; j < totalSize; j++)
                {
                    input[j] = 0;
                }

                output[dImage.Label] = 1;
                sbyte[] imageData = dImage.Data;
                int     k         = 66;
                for (int j = 0; j < pixelCount; j++)
                {
                    if ((imageData[j] & 0xff) > 0)
                    {
                        input[k++] = 255;
                    }
                    else
                    {
                        k++;
                    }
                    if (j % 28 == 27)
                    {
                        k += 4;
                    }
                }
                DataSetRow row = new DataSetRow(input, output);
                dataSet.addRow(row);
            }
            dataSet.setColumnName(1024, "0");
            dataSet.setColumnName(1025, "1");
            dataSet.setColumnName(1026, "2");
            dataSet.setColumnName(1027, "3");
            dataSet.setColumnName(1028, "4");
            dataSet.setColumnName(1029, "5");
            dataSet.setColumnName(1030, "6");
            dataSet.setColumnName(1031, "7");
            dataSet.setColumnName(1032, "8");
            dataSet.setColumnName(1033, "9");

            return(dataSet);
        }