Sobel ऑपरेटर एज डिटेक्शन के लिए आपको दिए गए इमेज में क्षैतिज और ऊर्ध्वाधर दोनों दिशाओं में एज खोजने की अनुमति देता है।
Imgproc क्लास का Sobel() मेथड दिए गए इमेज पर Sobel एज डिटेक्शन एल्गोरिदम लागू करता है। यह मेथड स्वीकार करता है -
स्रोत और गंतव्य इमेजेज का प्रतिनिधित्व करने वाले दो Mat ऑब्जेक्ट्स।
इमेज की गहराई का प्रतिनिधित्व करने वाला एक इंटीजर वेरिएबल।
x और y डेरिवेटिव्स को रखने के लिए दो डबल वेरिएबल्स।
उदाहरण
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 SobelEdgeDetection {
public static void main(String args[]) {
// OpenCV कोर लाइब्रेरी लोड करना
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
String file = "D:\\Images\\win2.jpg";
Mat src = Imgcodecs.imread(file);
// गंतव्य इमेज के लिए एक खाली मैट्रिक्स बनाना
Mat dst = new Mat();
// x:0 y:1 मानों के साथ Sobel डेरिवेटिव लागू करना
Imgproc.Sobel(src, dst, -1, 0, 1);
HighGui.imshow("Sobel - x:0 & y:1", dst);
HighGui.waitKey();
// x:1 y:0 मानों के साथ Sobel डेरिवेटिव लागू करना
Imgproc.Sobel(src, dst, -1, 1, 0);
HighGui.imshow("Sobel - x:1 & y:0", dst);
HighGui.waitKey();
// x:1 y:1 मानों के साथ Sobel डेरिवेटिव लागू करना
Imgproc.Sobel(src, dst, -1, 1, 1);
HighGui.imshow("Sobel - x:1 & y:1", dst);
HighGui.waitKey();
}
}
आउटपुट
उपरोक्त प्रोग्राम निष्पादित करने पर निम्नलिखित विंडोज उत्पन्न करता है -
Sobel - x:0 & y:1 - 
Sobel - x:1 & y:0 - 
Sobel - x:1 & y:1 - 