public static ImageFiliter GetFiliterFromString(string name) { ImageFiliter ifilter = new ImageFiliter(); switch (name) { case "OrderedDithering": ifilter = ImageFiliter.OrderedDithering; break; case "Threshold": ifilter = ImageFiliter.Threshold; break; case "ThresholdWithCarry": ifilter = ImageFiliter.ThresholdWithCarry; break; case "BayerDithering": ifilter = ImageFiliter.BayerDithering; break; case "FloydSteinbergDithering": ifilter = ImageFiliter.FloydSteinbergDithering; break; case "BurkesDithering": ifilter = ImageFiliter.BurkesDithering; break; case "JarvisJudiceNinkeDithering": ifilter = ImageFiliter.JarvisJudiceNinkeDithering; break; case "SierraDithering": ifilter = ImageFiliter.SierraDithering; break; case "StuckiDithering": ifilter = ImageFiliter.StuckiDithering; break; case "Convolution": ifilter = ImageFiliter.Convolution; break; default: ifilter = ImageFiliter.Threshold; break; } return(ifilter); }
public static ImageFiliter GetFiliterFromIndex(int index) { ImageFiliter ifilter = new ImageFiliter(); switch (index) { case 0: ifilter = ImageFiliter.OrderedDithering; break; case 1: ifilter = ImageFiliter.Threshold; break; case 2: ifilter = ImageFiliter.ThresholdWithCarry; break; case 3: ifilter = ImageFiliter.BayerDithering; break; case 4: ifilter = ImageFiliter.FloydSteinbergDithering; break; case 5: ifilter = ImageFiliter.BurkesDithering; break; case 6: ifilter = ImageFiliter.JarvisJudiceNinkeDithering; break; case 7: ifilter = ImageFiliter.SierraDithering; break; case 8: ifilter = ImageFiliter.StuckiDithering; break; case 9: ifilter = ImageFiliter.Convolution; break; default: ifilter = ImageFiliter.OrderedDithering; break; } return(ifilter); }
public static Bitmap ApplyFiliter(ImageFiliter imgFilter, Bitmap bmp, byte Value, byte Value2) { Bitmap newImage = null; //ContrastCorrection filter2 = new ContrastCorrection(1.0); //newImage = filter2.Apply(bmp); if (imgFilter != ImageFiliter.None) { IFilter filter3 = Grayscale.CommonAlgorithms.Y; newImage = filter3.Apply(bmp); if (imgFilter == ImageFiliter.Threshold) { IFilter filter = null; if (Value == 0) filter = new Threshold(); else filter = new Threshold(Value); newImage = filter.Apply(newImage); //IterativeThreshold filter = new IterativeThreshold(Value2, Value); //// apply the filter // newImage = filter.Apply(newImage); } if (imgFilter == ImageFiliter.ThresholdWithCarry) { IFilter filter = new ThresholdWithCarry(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.OrderedDithering) { IFilter filter = new OrderedDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.BayerDithering) { IFilter filter = new BayerDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.FloydSteinbergDithering) { IFilter filter = new FloydSteinbergDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.BurkesDithering) { IFilter filter = new BurkesDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.JarvisJudiceNinkeDithering) { IFilter filter = new JarvisJudiceNinkeDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.SierraDithering) { IFilter filter = new SierraDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.StuckiDithering) { IFilter filter = new StuckiDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.Convolution) { // create filter //OtsuThreshold filter = new OtsuThreshold(); //// apply the filter //filter.ApplyInPlace(newImage); //// create filter //IterativeThreshold filter = new IterativeThreshold(0); //// apply the filter //newImage = filter.Apply(newImage); int[,] kernel = { { -2, -1, 0 }, { -1, 1, 1 }, { 0, 1, 2 } }; // create filter Convolution filter = new Convolution(kernel); // apply the filter filter.ApplyInPlace(newImage); } newImage = BitmapTo1Bpp(newImage); } else newImage = BitmapTo1Bpp(bmp); //轉換成 1bit bps return newImage; }
public static Bitmap ApplyFiliter(ImageFiliter imgFilter, Bitmap bmp, byte Value) { return ApplyFiliter(imgFilter, bmp, Value, 0); }
public static Bitmap ApplyFiliter(ImageFiliter imgFilter, Bitmap bmp) { return ApplyFiliter(imgFilter, bmp, 0); }
public static ImageFiliter GetFiliterFromString(string name) { ImageFiliter ifilter = new ImageFiliter(); switch (name) { case "OrderedDithering": ifilter = ImageFiliter.OrderedDithering; break; case "Threshold": ifilter = ImageFiliter.Threshold; break; case "ThresholdWithCarry": ifilter = ImageFiliter.ThresholdWithCarry; break; case "BayerDithering": ifilter = ImageFiliter.BayerDithering; break; case "FloydSteinbergDithering": ifilter = ImageFiliter.FloydSteinbergDithering; break; case "BurkesDithering": ifilter = ImageFiliter.BurkesDithering; break; case "JarvisJudiceNinkeDithering": ifilter = ImageFiliter.JarvisJudiceNinkeDithering; break; case "SierraDithering": ifilter = ImageFiliter.SierraDithering; break; case "StuckiDithering": ifilter = ImageFiliter.StuckiDithering; break; case "Convolution": ifilter = ImageFiliter.Convolution; break; default: ifilter = ImageFiliter.Threshold; break; } return ifilter; }
public static ImageFiliter GetFiliterFromIndex(int index) { ImageFiliter ifilter = new ImageFiliter(); switch (index) { case 0: ifilter = ImageFiliter.OrderedDithering; break; case 1: ifilter = ImageFiliter.Threshold; break; case 2: ifilter = ImageFiliter.ThresholdWithCarry; break; case 3: ifilter = ImageFiliter.BayerDithering; break; case 4: ifilter = ImageFiliter.FloydSteinbergDithering; break; case 5: ifilter = ImageFiliter.BurkesDithering; break; case 6: ifilter = ImageFiliter.JarvisJudiceNinkeDithering; break; case 7: ifilter = ImageFiliter.SierraDithering; break; case 8: ifilter = ImageFiliter.StuckiDithering; break; case 9: ifilter = ImageFiliter.Convolution; break; default: ifilter = ImageFiliter.OrderedDithering; break; } return ifilter; }
public static Bitmap ApplyFiliter(ImageFiliter imgFilter, Bitmap bmp, byte Value, byte Value2) { Bitmap newImage = null; //ContrastCorrection filter2 = new ContrastCorrection(1.0); //newImage = filter2.Apply(bmp); if (imgFilter != ImageFiliter.None) { IFilter filter3 = Grayscale.CommonAlgorithms.Y; newImage = filter3.Apply(bmp); if (imgFilter == ImageFiliter.Threshold) { IFilter filter = null; if (Value == 0) { filter = new Threshold(); } else { filter = new Threshold(Value); } newImage = filter.Apply(newImage); //IterativeThreshold filter = new IterativeThreshold(Value2, Value); //// apply the filter // newImage = filter.Apply(newImage); } if (imgFilter == ImageFiliter.ThresholdWithCarry) { IFilter filter = new ThresholdWithCarry(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.OrderedDithering) { IFilter filter = new OrderedDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.BayerDithering) { IFilter filter = new BayerDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.FloydSteinbergDithering) { IFilter filter = new FloydSteinbergDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.BurkesDithering) { IFilter filter = new BurkesDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.JarvisJudiceNinkeDithering) { IFilter filter = new JarvisJudiceNinkeDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.SierraDithering) { IFilter filter = new SierraDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.StuckiDithering) { IFilter filter = new StuckiDithering(); newImage = filter.Apply(newImage); } else if (imgFilter == ImageFiliter.Convolution) { // create filter //OtsuThreshold filter = new OtsuThreshold(); //// apply the filter //filter.ApplyInPlace(newImage); //// create filter //IterativeThreshold filter = new IterativeThreshold(0); //// apply the filter //newImage = filter.Apply(newImage); int[,] kernel = { { -2, -1, 0 }, { -1, 1, 1 }, { 0, 1, 2 } }; // create filter Convolution filter = new Convolution(kernel); // apply the filter filter.ApplyInPlace(newImage); } newImage = BitmapTo1Bpp(newImage); } else { newImage = BitmapTo1Bpp(bmp); } //轉換成 1bit bps return(newImage); }
public static Bitmap ApplyFiliter(ImageFiliter imgFilter, Bitmap bmp, byte Value) { return(ApplyFiliter(imgFilter, bmp, Value, 0)); }
public static Bitmap ApplyFiliter(ImageFiliter imgFilter, Bitmap bmp) { return(ApplyFiliter(imgFilter, bmp, 0)); }