public static Bitmap LaplacianOfGaussianFilter(this Bitmap sourceBitmap)
        {
            Bitmap resultBitmap = EdgeFilters.ConvolutionFilter(sourceBitmap,
                                                                Matrix.LaplacianOfGaussian, 1.0, 0, true);

            return(resultBitmap);
        }
        public static Bitmap Laplacian3x3Filter(this Bitmap sourceBitmap,
                                                bool grayscale = true)
        {
            Bitmap resultBitmap = EdgeFilters.ConvolutionFilter(sourceBitmap, Matrix.Laplacian3x3, 1.0, 0, grayscale);

            return(resultBitmap);
        }
        public static Bitmap KirschFilter(this Bitmap sourceBitmap,
                                          bool grayscale = true)
        {
            Bitmap resultBitmap = EdgeFilters.ConvolutionFilter(sourceBitmap,
                                                                Matrix.Kirsch3x3Horizontal,
                                                                Matrix.Kirsch3x3Vertical,
                                                                1.0, 0, grayscale);

            return(resultBitmap);
        }
        public static Bitmap Laplacian5x5OfGaussian5x5Filter1(this Bitmap sourceBitmap)
        {
            Bitmap resultBitmap = EdgeFilters.ConvolutionFilter(sourceBitmap,
                                                                Matrix.Gaussian5x5Type1, 1.0 / 159.0, 0, true);

            resultBitmap = EdgeFilters.ConvolutionFilter(resultBitmap,
                                                         Matrix.Laplacian5x5, 1.0, 0, false);

            return(resultBitmap);
        }