public void EdgeDetect() { new Thread(() => { this.undoRedo.PushToUndoStack((Bitmap)this.model.Image.Clone()); this.undoRedo.ClearRedoStack(); ConvFilters.EdgeDetectConvolution(this.model.Image, 2, 0); this.view.RedrawInvoker(); }).Start(); }
public void Sharpen() { new Thread(() => { this.undoRedo.PushToUndoStack((Bitmap)this.model.Image.Clone()); this.undoRedo.ClearRedoStack(); ConvFilters.Sharpen(this.model.Image, (int)this.filterParam); this.view.RedrawInvoker(); }).Start(); }
public SeamCarving(Bitmap b) { this.edge = (Bitmap)b.Clone(); this.m_bitmap = (Bitmap)b.Clone(); //SimpleFilters.GrayscaleMarshaling(this.edge); //SimpleFilters.EdgeDetectHorizontalUnsafe(this.edge); this.energyMap = new int[this.m_bitmap.Height, this.m_bitmap.Width]; this.bitmapMatrix = new Pixel24b[this.m_bitmap.Height, this.m_bitmap.Width]; BasicFilters.GrayscaleMarshal(this.edge); ConvFilters.EdgeDetectConvolution(this.edge, 1, 0); }