public void Copy(RgbImage image) { if (Size != image.Size) { throw new ArgumentException(); } for (var i = 0; i < Size; i++) { Red[i] = image.Red[i]; Blue[i] = image.Blue[i]; Green[i] = image.Green[i]; } }
public void Score(RgbImage model) { if (Image.Size != model.Size) { throw new ArgumentException(); } float diff = 0; for (var y = 0; y < model.Height; y++) { for (var x = 0; x < model.Width; x++) { diff += (float)Math.Abs(Image.GetPixelRgbValue(x, y) - model.GetPixelRgbValue(x, y)) / 255; } } Difference = diff; }
public ImageCandidate(RgbImage model) { Image = new RgbImage(model.Width, model.Height); }