示例#1
0
    public void LoadInputImage(int n)
    {
        string    filename   = inputNames[n];
        int       numY       = (int)Mathf.Sqrt(numInputs);
        Texture2D texture    = Resources.Load <Texture2D>(filename);
        int       inputLayer = 0;

        for (int nx = 0; nx < texture.width; nx++)
        {
            for (int ny = 0; ny < texture.height; ny++)
            {
                Color  color = texture.GetPixel(nx, ny);
                int    index = nx * numY + ny;
                NNnode node  = nodeLayers[inputLayer][index];
                node.output = 1f - color.grayscale;
                node.Update();
            }
        }
        string lastChar     = filename.Substring(filename.Length - 1, 1);
        string possibilites = "0123456789";

        if (possibilites.Contains(lastChar))
        {
            float correctAnswer = float.Parse(lastChar);
            UpdateOutputLayerWithCorrectAnswer(correctAnswer);
        }
    }
示例#2
0
 public void UpdateNodes()
 {
     for (int layer = 0; layer < nodeLayers.Length; layer++)
     {
         for (int n = 0; n < nodeLayers[layer].Count; n++)
         {
             NNnode node = nodeLayers[layer][n];
             node.Update();
         }
     }
 }