

- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to implement Gaussian blur in OpenCV using Java?
You can blur an image by filtering it using a low-pass filter, this removes high frequency content (noise, edges) from an image.
Gaussian Blurring is one of the blurring techniques provided by OpenCV, it is highly efficient in removing the noise of an image. This replaces the central element with the average of all the pixels in the kernel area.
You can filter/blur an image by this technique using the GaussianBlur() method, this method accepts −
Two Mat objects representing the source and destination images.
A Size object representing the size of the kernel.
A variable of the type double representing the Gaussian kernel standard deviation in the X direction.
Example
import java.awt.Image; import java.awt.image.BufferedImage; import java.io.IOException; import javafx.application.Application; import javafx.embed.swing.SwingFXUtils; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.image.ImageView; import javafx.scene.image.WritableImage; import javafx.stage.Stage; import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.Size; import org.opencv.highgui.HighGui; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; public class GausianBlurExample extends Application { public void start(Stage stage) throws IOException { //Loading the OpenCV core library System.loadLibrary( Core.NATIVE_LIBRARY_NAME ); String file ="D:\\Images\\elephant.jpg"; Mat src = Imgcodecs.imread(file); //Creating destination matrix Mat dst = new Mat(src.rows(), src.cols(), src.type()); //Applying GaussianBlur on the Image Imgproc.GaussianBlur(src, dst, new Size(15, 15), 0); //Converting matrix to JavaFX writable image Image img = HighGui.toBufferedImage(dst); WritableImage writableImage= SwingFXUtils.toFXImage((BufferedImage) img, null); //Setting the image view ImageView imageView = new ImageView(writableImage); imageView.setX(10); imageView.setY(10); imageView.setFitWidth(575); imageView.setPreserveRatio(true); //Setting the Scene object Group root = new Group(imageView); Scene scene = new Scene(root, 595, 400); stage.setTitle("Gaussian Blur Example"); stage.setScene(scene); stage.show(); } public static void main(String args[]) { launch(args); } }
Input Image
Output
On executing, the above program generates the following output −
- Related Questions & Answers
- How to implement blur (averaging) in OpenCV using Java?
- How to implement Bilateral blur in OpenCV using Java?
- How to implement Median blur in OpenCV using Java?
- Blurring an image using the OpenCV function Gaussian Blur()
- Applying Gaussian Blur to an image using the Pillow library
- Blurring an image using the OpenCV function blur()
- OpenCV Python Program to blur an image?
- How to blur an image using Node Jimp blur() function?
- How to draw polylines in OpenCV using Java?
- How to blend to images using OpenCV Java?
- How to declare OpenCV Mat object using Java?
- How to draw a polygon in OpenCV using Java?
- How to draw a line in OpenCV using Java?
- How to draw an ellipse in OpenCV using Java?
- How to draw a rectangle in OpenCV using Java?
Advertisements