OpenCV - Operator Sobel
Menggunakan sobel operation, Anda dapat mendeteksi tepi gambar dalam arah horizontal dan vertikal. Anda dapat menerapkan operasi sobel pada gambar menggunakan metode inisobel(). Berikut adalah sintaks dari metode ini -
Sobel(src, dst, ddepth, dx, dy)
Metode ini menerima parameter berikut -
src - Objek kelas Mat mewakili gambar sumber (masukan).
dst - Objek kelas Mat mewakili gambar tujuan (keluaran).
ddepth - Variabel integer yang mewakili kedalaman gambar (-1)
dx- Variabel integer yang mewakili turunan x. (0 atau 1)
dy- Variabel integer mewakili turunan y. (0 atau 1)
Contoh
Program berikut menunjukkan cara melakukan operasi Sobel pada gambar tertentu.
import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class SobelTest {
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 sobel on the Image
Imgproc.Sobel(src, dst, -1, 1, 1);
// Writing the image
Imgcodecs.imwrite("E:/OpenCV/chap16/sobel_output.jpg", dst);
System.out.println("Image processed");
}
}
Asumsikan bahwa berikut ini adalah gambar input sobel_input.jpg ditentukan dalam program di atas.
Keluaran
Saat menjalankan program, Anda akan mendapatkan output berikut -
Image Processed
Jika Anda membuka jalur yang ditentukan, Anda dapat mengamati gambar keluaran sebagai berikut -
sobel Varian
Saat meneruskan nilai yang berbeda ke parameter terakhir (dx dan dy) (antara 0 dan 1), Anda akan mendapatkan keluaran yang berbeda -
// Applying sobel on the Image
Imgproc.Sobel(src, dst, -1, 1, 1);
Tabel berikut mencantumkan berbagai nilai untuk variabel dx dan dy metode Sobel() dan keluarannya masing-masing.
Derivatif X. | Turunan Y | Keluaran |
---|---|---|
0 | 1 |
|
1 | 0 |
|
1 | 1 |
|