private void contrastButtonClick(object sender, RoutedEventArgs e) { if (imageHandler != null) { // TODO Background worker new Thread(() => { int contrast = 50; ContrastFilter filter = new ContrastFilter(contrast); imageHandler.ApplyFilter(image => filter.ApplyFilter(image)); Application.Current.Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle, new Action(() => { filteredImage.Source = BitmapLoader.loadBitmap(imageHandler.getFiltered()); })); }).Start(); } }
private Bitmap RenderImage() { if (!contrastStretchCB.Checked) { ContrastFilter filter = new ContrastFilter(valueTrackBar.Value); return(filter.ApplyFilter(new List <Bitmap>() { originalBitmap })); } else { ContrastStretchFilter filter = new ContrastStretchFilter(); return(filter.ApplyFilter(new List <Bitmap>() { originalBitmap })); } }