public static void FloydSteinbergDitheringAndSave(string sourceFilePath, byte[,] sourceImage) { byte[,] resultImage = ImageHalftoning.FloydSteinbergDithering(sourceImage); string newFilePath = ProbA3.NewFilePath(sourceFilePath, "FloydSteinbergDithering"); Utility.SaveGrayscaleImage(resultImage, newFilePath); Console.WriteLine($"Floyd-Steinberg dithering done and saved to \'{newFilePath}\'"); }
public static void ErrorDiffusionDitheringDefaultAndSave(string sourceFilePath, byte[,] sourceImage) { byte[,] resultImage = ImageHalftoning.ErrorDiffusionDitheringDefault(sourceImage); string newFilePath = ProbA3.NewFilePath(sourceFilePath, "ErrorDiffusionDitheringDefault"); Utility.SaveGrayscaleImage(resultImage, newFilePath); Console.WriteLine($"Error diffusion dithering done and saved to \'{newFilePath}\'"); }
public static void RandomDitheringAndSave(string sourceFilePath, byte[,] sourceImage) { byte[,] resultImage = ImageHalftoning.RandomDithering(sourceImage, new Random()); string newFilePath = ProbA3.NewFilePath(sourceFilePath, "RandomDithering"); Utility.SaveGrayscaleImage(resultImage, newFilePath); Console.WriteLine($"Random dithering done and saved to \'{newFilePath}\'"); }
public static void JarvisJudiceNinkeDitheringAndSave(string sourceFilePath, byte[,] sourceImage) { byte[,] resultImage = ImageHalftoning.JarvisJudiceNinkeDithering(sourceImage); string newFilePath = ProbA3.NewFilePath(sourceFilePath, "JarvisJudiceNinkeDithering"); Utility.SaveGrayscaleImage(resultImage, newFilePath); Console.WriteLine($"Jarvis, Judice & Ninke dithering done and saved to \'{newFilePath}\'"); }
public static void Main(string[] args) { Console.Write("Input image file name: "); string fileName = Console.ReadLine(); byte[,] sourceImage = Utility.LoadGrayscaleImage(fileName); ProbA3.BayerDitheringAndSave(fileName, sourceImage); ProbA3.SpiralDitheringAndSave(fileName, sourceImage); ProbA3.HalftoneDitheringAndSave(fileName, sourceImage); ProbA3.RandomDitheringAndSave(fileName, sourceImage); ProbA3.ErrorDiffusionDitheringDefaultAndSave(fileName, sourceImage); ProbA3.FloydSteinbergDitheringAndSave(fileName, sourceImage); ProbA3.JarvisJudiceNinkeDitheringAndSave(fileName, sourceImage); ProbA3.StuckiDitheringAndSave(fileName, sourceImage); ProbA3.BurkesDitheringAndSave(fileName, sourceImage); ProbA3.SierraDitheringAndSave(fileName, sourceImage); ProbA3.TwoRowSierraDitheringAndSave(fileName, sourceImage); ProbA3.SierraLiteDitheringAndSave(fileName, sourceImage); Console.ReadKey(); }