コード例 #1
0
        public static Bitmap cargarImagen(int pixel)
        {
            OpenFileDialog open = new OpenFileDialog();

            open.Filter = "Image Files(*.jpg; *.jpeg; *.bmp; *.png)|*.jpg; *.jpeg; *.bmp; *.png";

            if (open.ShowDialog() == DialogResult.OK)
            {
                Bitmap         resizedImage = resizeImage(pixel, pixel, PadImage(new Bitmap(open.FileName)));
                SingletonCache singleton    = SingletonCache.Instance;
                singleton.objetivo = new Imagen("objetivo" + open.FileName.Split('.')[1], resizedImage);
                // display image in picture box
                return(resizedImage);
            }
            return(null);
        }
コード例 #2
0
        public static void crearEstadisticas()
        {
            SingletonCache singleton = SingletonCache.Instance;

            singleton.stats = new Statistic();
            singleton.stats.distanciaManhattan = singleton.DistManChecked;
            singleton.stats.distanciaPropia    = singleton.DistGChecked;
            singleton.stats.histogramaColor    = singleton.histColorChecked;
            singleton.stats.histogramaForma    = singleton.histFormaChecked;
            singleton.stats.porcCruces         = singleton.porcCruses.ToString();
            singleton.stats.porcMenosApto      = singleton.porcMenosApt.ToString();
            singleton.stats.porcMutacion       = singleton.porcMutacion.ToString();
            singleton.stats.tamPoblacion       = singleton.tamPoblacion.ToString();
            singleton.stats.seleccionDivina    = singleton.trampa;
            singleton.stats.resolucionImagen   = singleton.objetivo.image.Width + "X" + singleton.objetivo.image.Width;
            singleton.stats.numeroIteraciones  = singleton.cantidadItereaciones.ToString();
            singleton.stats.generaciones       = new List <Individuo>(singleton.tamPoblacion / 10);
        }
コード例 #3
0
        public static void generarImagenAleatoria(int cantidad, int pixel)
        {
            //random number

            Random         rand = new Random();
            int            width = pixel, height = pixel;
            Bitmap         bmp       = new Bitmap(width, height);
            SingletonCache singleton = SingletonCache.Instance;
            List <Imagen>  poblacion = new List <Imagen>(cantidad);
            int            a         = rand.Next(256);
            int            r         = rand.Next(256);
            int            g         = rand.Next(256);
            int            b         = rand.Next(256);

            while (cantidad > 0)
            {
                //create random pixels
                for (int y = 0; y < height; y++)
                {
                    for (int x = 0; x < width; x++)
                    {
                        //generate random ARGB value
                        r = rand.Next(256);
                        g = rand.Next(256);
                        b = rand.Next(256);

                        //set ARGB value
                        bmp.SetPixel(x, y, Color.FromArgb(r, g, b));
                    }
                }
                poblacion.Add(new Imagen("" + cantidad, bmp));
                cantidad--;
            }

            singleton.poblacion = poblacion;
        }