//train point in certain viewport (generate training set and train neural network) private void trainPoint(BaseTypes.viewport vprt,Bitmap bmp, ref NeuralNetwork Ann, int hls, int ovs, int hlc, iActivationFunction af, double tr, int tic, int miw, int maw) { trainingSet=new ArrayList(); switch (vprt) { case BaseTypes.viewport.XY: { trainingSet=(ArrayList)(generateTrainingSet(BaseTypes.viewport.XY,bmp).Clone()); //create new neural network object Ann = new NeuralNetwork((int)Math.Pow((xyRadius*2),2),hls, ovs,hlc,af); //initialize weights Ann.DrawWeights(miw, maw); //train network trainNetwork(trainingSet,ref Ann,tr,tic); break; } case BaseTypes.viewport.XZ: { trainingSet=(ArrayList)(generateTrainingSet(BaseTypes.viewport.XZ,bmp).Clone()); //create new neural network object Ann = new NeuralNetwork((int)Math.Pow((xzRadius*2),2),hls, ovs,hlc,af); //initialize weights Ann.DrawWeights(miw, maw); //train network trainNetwork(trainingSet,ref Ann,tr,tic); break; } case BaseTypes.viewport.YZ: { trainingSet=(ArrayList)(generateTrainingSet(BaseTypes.viewport.YZ,bmp).Clone()); //create new neural network object Ann = new NeuralNetwork((int)Math.Pow((yzRadius*2),2),hls, ovs,hlc,af); //initialize weights Ann.DrawWeights(miw, maw); //train network trainNetwork(trainingSet,ref Ann,tr,tic); break; } } }