Ejemplo n.º 1
0
        public GenerationResponse(Core.ImageGenetic imageGenetic)
        {
            Images = new List <object>();
            var state = imageGenetic.CurrentState;

            var pngImages = state.PopulationAptitudes;

            foreach (var image in pngImages)
            {
                string encodedImage = Convert.ToBase64String(image.Item2);
                var    x            = new { Aptitude = image.Item1, Image = encodedImage };
                Images.Add(x);
            }

            Generations    = state.Generations;
            Done           = state.Done;
            TimedOut       = state.TimedOut;
            SecondsElapsed = state.SecondsElapsed;
        }
Ejemplo n.º 2
0
        static void Main(string[] args)
        {
            /*var x = ImageGenetic.Core.ImageProcessing.FromRGBToHSL(255, 0, 0);
            *  var y = ImageGenetic.Core.ImageProcessing.FromRGBToHSL(255, 255, 0);
            *  var z = ImageGenetic.Core.ImageProcessing.FromRGBToHSL(0, 0, 255);*/
            //Console.WriteLine("{0} {1} {2}", x.Item1, y.Item1, z.Item1);
            //int resolution = 1024;

            var proc = new Core.ImageGenetic(10, 100);

            proc.Start();
            int i = 0;

            foreach (var image in proc.PopulationBitmaps)
            {
                image.Save("test-" + proc.Aptitudes[i] + "-" + image.GetHashCode() + ".png");
                i++;
            }
            Console.WriteLine("done");
        }
Ejemplo n.º 3
0
 public Generation(GenerationParameters parameters)
 {
     time       = DateTimeOffset.UtcNow;
     generation = new Core.ImageGenetic(parameters.PopulationSize, parameters.ResolutionSquare, parameters.MinimalAptitude, parameters.TimeoutMinutes);
 }
Ejemplo n.º 4
0
 public Generation(int populationSize = 10, int resolutionSquare = 50, double minimalAptitude = 0.99, int timeoutMinutes = 1)
 {
     time       = DateTimeOffset.UtcNow;
     generation = new Core.ImageGenetic(populationSize, resolutionSquare, minimalAptitude, timeoutMinutes);
 }