private void intensitySaturationToolStripMenuItem_Click(object sender, EventArgs e) { cipFormIntensitySaturation form = new cipFormIntensitySaturation(this.picBoxModifyed.Image,this.GetCurrentRaster()); if (form.ShowDialog()==DialogResult.OK) { int intensity = form.GetIntensity(); int saturation = form.GetSaturation(); if (form.IsRGB()) { if (!backgroundWorkerCip.IsBusy) { ImageFilter filter = new Cip.Filters.IntensityChanger(intensity); backgroundWorkerCip.RunWorkerAsync(filter); this.CalculateHistogram(); } } else { if (!backgroundWorkerCip.IsBusy) { ImageFilter filter = new Cip.Filters.HsiCorrectionFilter(intensity, saturation); backgroundWorkerCip.RunWorkerAsync(filter); this.CalculateHistogram(); } } } }
public void ReDraw() { this.levelIntensity = trackBarIntensity.Value; this.levelSaturation = trackBarSaturation.Value; Raster newRaster; if (this.IsRGB()) { IntensityChanger filter = new Cip.Filters.IntensityChanger(this.levelIntensity); newRaster = filter.ProcessWithoutWorker(raster); } else { HsiCorrectionFilter filter = new Cip.Filters.HsiCorrectionFilter(this.levelIntensity, this.levelSaturation); newRaster = filter.ProcessWithoutWorker(raster); } newRaster.ShowFilter(this.pBoxPreview); }