कटाव और फैलाव दो बुनियादी रूपात्मक संक्रियाएं हैं। जैसा कि नाम का तात्पर्य है, रूपात्मक संचालन संचालन का समूह है जो छवियों को उनके आकार के अनुसार संसाधित करता है।
अपरदन संचालन के दौरान, छवि सीमाओं से अतिरिक्त पिक्सेल हटा दिए जाते हैं, कटाव प्रक्रिया के दौरान हटाए गए पिक्सेल की कुल संख्या उपयोग किए गए संरचना तत्व के आयामों पर निर्भर करती है।
आप erode() . का उपयोग करके किसी छवि पर अपरदन कार्रवाई कर सकते हैं Imgproc वर्ग की विधि, यह विधि स्रोत, गंतव्य और कर्नेल का प्रतिनिधित्व करने वाली तीन मैट ऑब्जेक्ट है।
उदाहरण
आयात करें javafx.scene.Scene आयात करें org.opencv.core.Size; आयात करें {// ओपनसीवी कोर लाइब्रेरी लोड हो रहा है System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // छवि डेटा पढ़ना स्ट्रिंग फ़ाइल ="डी:\\ छवियां \\ lamma2.jpg"; मैट स्रोत =Imgcodecs.imread (फ़ाइल); // गंतव्य मैट्रिक्स बनाना मैट डीएसटी =नया मैट (src.rows (), src.cols (), src.type ()); // कर्नेल मैट्रिक्स ऑब्जेक्ट तैयार करना मैट कर्नेल =Imgproc.getStructuringElement(Imgproc.MORPH_RECT, new Size((2*2) + 1, (2*2)+1)); // इमेज Imgproc.erode (src, dst, कर्नेल) पर अपरदन लागू करना; // मैट्रिक्स को JavaFX लिखने योग्य छवि में कनवर्ट करना छवि img =HighGui.toBufferedImage(dst); WritableImage writableImage=SwingFXUtils.toFXImage((BufferedImage) img, null); // छवि दृश्य सेट करना ImageView छवि दृश्य =नया छवि दृश्य (लिखने योग्य छवि); imageView.setX(10); imageView.setY(10); imageView.setFitWidth(575); imageView.setPreserveRatio (सच); // दृश्य वस्तु सेट करना समूह रूट =नया समूह (छवि दृश्य); दृश्य दृश्य =नया दृश्य (रूट, 595, 400); स्टेज.सेटटाइटल ("क्षरण उदाहरण"); स्टेज.सेटसीन (दृश्य); मंच पर शो(); } सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग आर्ग []) {लॉन्च (तर्क); }}इनपुट इमेज
आउटपुट
निष्पादित करने पर, उपरोक्त प्रोग्राम निम्नलिखित आउटपुट उत्पन्न करता है -