public void ImageShouldApplyGrayscaleFilterAll <TPixel>(TestImageProvider <TPixel> provider, GrayscaleMode value) where TPixel : struct, IPixel <TPixel> { using (Image <TPixel> image = provider.GetImage()) { image.Mutate(x => x.Grayscale(value)); byte[] data = new byte[3]; System.Span <TPixel> span = image.Frames.RootFrame.GetPixelSpan(); for (int i = 0; i < span.Length; i++) { span[i].ToXyzBytes(data, 0); Assert.Equal(data[0], data[1]); Assert.Equal(data[1], data[2]); } image.DebugSave(provider, value.ToString()); } }
public void ImageShouldApplyGrayscaleFilterAll <TPixel>(TestImageProvider <TPixel> provider, GrayscaleMode value) where TPixel : struct, IPixel <TPixel> { using (Image <TPixel> image = provider.GetImage()) { image.Mutate(x => x.Grayscale(value)); var rgb = default(Rgb24); System.Span <TPixel> span = image.Frames.RootFrame.GetPixelSpan(); for (int i = 0; i < span.Length; i++) { span[i].ToRgb24(ref rgb); Assert.Equal(rgb.R, rgb.B); Assert.Equal(rgb.B, rgb.G); } image.DebugSave(provider, value.ToString()); } }