Syntax error Java example demonstrating Scharr edge detection in OpenCV.

Java example demonstrating Scharr edge detection in OpenCV.



The Scharr operator for edge detections allows you to find the edges in a given image in both horizontal and vertical directions.

The Scharr() method of the Imgproc class applies the Scharr edge detection algorithm on the given image. This method accepts −

  • Two Mat objects representing the source and destination images.

  • An integer variable representing the depth of an image.

  • Two double variables to hold the x and y derivatives.

Example

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class ScharrEdgeDetection {
   public static void main(String args[]) {
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      String file ="D:\Images\win2.jpg";
      Mat src = Imgcodecs.imread(file);
      //Creating an empty matrix for the destination image
      Mat dst = new Mat();
      //Applying Scharr derivative with values x:1 y:0
      Imgproc.Scharr(src, dst, Imgproc.CV_SCHARR, 0, 1);
      HighGui.imshow("Scharr - x:0 & y:1 ", dst);
      //Applying Scharr derivative with values x:1 y:0
      Imgproc.Scharr(src, dst, Imgproc.CV_SCHARR, 1, 0);
      HighGui.imshow("Scharr - x:1 & y:0 ", dst);
      HighGui.waitKey();
   }
}

Input Image

Output

On executing, the above program generates the following windows −

Scharr - x:0 & y:1 − 

Scharr - x:1 & y:0 − 

Updated on: 2020-04-13T11:14:27+05:30

258 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements