Scharr toán tử để phát hiện cạnh cho phép bạn tìm các cạnh trong một hình ảnh nhất định theo cả hướng ngang và dọc.
Scharr () phương thức của lớp Imgproc áp dụng Scharr thuật toán phát hiện cạnh trên hình ảnh đã cho. Phương thức này chấp nhận -
-
Hai đối tượng Mat đại diện cho hình ảnh nguồn và hình ảnh đích.
-
Một biến số nguyên đại diện cho độ sâu của hình ảnh.
-
Hai biến kép để giữ các đạo hàm x và y.
Ví dụ
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(); } }
Hình ảnh đầu vào
Đầu ra
Khi thực thi, chương trình trên tạo các cửa sổ sau -
Scharr - x:0 &y:1 -
Scharr - x:1 &y:0 -