OpenCV - Toán tử Scharr
Scharr cũng được sử dụng để phát hiện các dẫn xuất thứ hai của một hình ảnh theo hướng ngang và dọc. Bạn có thể thực hiện thao tác scharr trên một hình ảnh bằng phương phápscharr(). Sau đây là cú pháp của phương thức này:
Scharr(src, dst, ddepth, dx, dy)
Phương thức này chấp nhận các tham số sau:
src - Một đối tượng của lớp Mat đại diện cho hình ảnh nguồn (đầu vào).
dst - Một đối tượng của lớp Mat đại diện cho hình ảnh đích (đầu ra).
ddepth - Một biến số nguyên đại diện cho độ sâu của hình ảnh (-1)
dx- Một biến số nguyên biểu diễn đạo hàm x. (0 hoặc 1)
dy- Một biến số nguyên biểu diễn đạo hàm y. (0 hoặc 1)
Thí dụ
Chương trình sau đây trình bày cách áp dụng scharr cho một hình ảnh nhất định.
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class ScharrTest {
public static void main( String[] args ) {
// Loading the OpenCV core library
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
// Reading the Image from the file and storing it in to a Matrix object
String file ="E:/OpenCV/chap16/sobel_input.jpg";
Mat src = Imgcodecs.imread(file);
// Creating an empty matrix to store the result
Mat dst = new Mat();
// Applying Box Filter effect on the Image
Imgproc.Scharr(src, dst, Imgproc.CV_SCHARR, 0, 1);
// Writing the image
Imgcodecs.imwrite("E:/OpenCV/chap16/scharr_output.jpg", dst);
System.out.println("Image processed");
}
}
Giả sử rằng sau đây là hình ảnh đầu vào scharr_input.jpg được chỉ định trong chương trình trên.
Đầu ra
Khi thực hiện nó, bạn sẽ nhận được kết quả sau:
Image Processed
Nếu bạn mở đường dẫn được chỉ định, bạn có thể quan sát hình ảnh đầu ra như sau:
Thêm các phái sinh scharr
Khi chuyển các giá trị khác nhau đến các tham số cuối cùng (dx và dy) (trong số 0 và 1), bạn sẽ nhận được các đầu ra khác nhau -
// Applying scharr on the Image
Imgproc.Scharr(src, dst, -1, 1, 1);
Sau đây là bảng liệt kê các giá trị khác nhau cho các biến dx và dy của phương pháp scharr() và kết quả đầu ra tương ứng của chúng.
Dẫn xuất X | Dẫn xuất Y | Đầu ra |
---|---|---|
0 | 1 |
|
1 | 0 |
|