## Wednesday, January 22, 2020

### Gaussian Blur operation

In Gaussian Blur operation, the image is convolved with a Gaussian filter instead of the box filter. The Gaussian filter is a low-pass filter that removes the high-frequency components are reduced.
You can perform this operation on an image using the Gaussianblur()method of the imgproc class. Following is the syntax of this method −
```GaussianBlur(src, dst, ksize, sigmaX)
```
This method accepts the following parameters −
• src − A Mat object representing the source (input image) for this operation.
• dst − A Mat object representing the destination (output image) for this operation.
• ksize − A Size object representing the size of the kernel.
• sigmaX − A variable of the type double representing the Gaussian kernel standard deviation in X direction.

## Example

The following program demonstrates how to perform the Gaussian blur operation on an image.
```import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Size;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;

public class GaussianTest {
public static void main(String args[]) {

// Reading the Image from the file and storing it in to a Matrix object
String file ="C:/EXAMPLES/OpenCV/sample.jpg";

// Creating an empty matrix to store the result
Mat dst = new Mat();

// Applying GaussianBlur on the Image
Imgproc.GaussianBlur(src, dst, new Size(45, 45), 0);

// Writing the image
Imgcodecs.imwrite("E:/OpenCV/chap9/Gaussian.jpg", dst);
System.out.println("Image Processed");
}
}```
Assume that following is the input image sample.jpg specified in the above program. ## Output

On executing the program, you will get the following output −
```Image Processed
```
If you open the specified path, you can observe the output image as follows − 