public void applyEdgeDetectionHomogenity()
        {
            Parameter dlg = new Parameter();

            dlg.nValue = 0;

            if (DialogResult.OK == dlg.ShowDialog())
            {
                Bitmap image;
                if (imageModel.getFilteredImage() != null)
                {
                    image = imageModel.getFilteredImage();
                }
                else
                {
                    image = imageModel.getBaseImage();
                }

                this.undoBuffer.push(image);

                if (FilterController.EdgeDetectHomogenity(image, (byte)dlg.nValue))
                {
                    imageModel.setFilteredImage(image);
                    baseView.setBaseImageFromBitmap(image);
                    imageModel.setCIEImage(setCIEImage(image));
                    RGBModel[,] rgbImage = convertToRGB(imageModel.getCIEImage());
                    histogramView.setBaseImage(imageModel.getFilteredImage());
                    channelView.setFilteredChannelImages(image, setRedChannel(rgbImage), setGreenChannel(rgbImage), setBlueChannel(rgbImage));
                }
                else
                {
                    throw new Exception();
                }

                this.redoBuffer.clearBuffer();
            }
        }