आप copyMakeBorder() . का उपयोग करके किसी दिए गए चित्र में बॉर्डर जोड़ सकते हैं विधि, यह विधि निम्नलिखित मापदंडों को स्वीकार करती है -
-
स्रोत और गंतव्य छवियों का प्रतिनिधित्व करने वाली दो मैट ऑब्जेक्ट।
-
गंतव्य (आउटपुट) छवि का प्रतिनिधित्व करने वाली कक्षा Mat की एक वस्तु।
-
चार पूर्णांक चर, चित्र की सभी 4 दिशाओं में सीमाओं की लंबाई का प्रतिनिधित्व करते हैं।
-
सीमा के प्रकार का प्रतिनिधित्व करने वाला एक पूर्णांक चर जिसका उपयोग किया जाना है।
उदाहरण
आयात करें javafx.scene.Scene आयात करें org.opencv.highgui.HighGui;import org.opencv.imgcodecs.Imgcodecs;सार्वजनिक वर्ग AddingBorders एप्लिकेशन का विस्तार करता है {सार्वजनिक शून्य प्रारंभ (स्टेज चरण) IOException फेंकता है {// OpenCV कोर लाइब्रेरी लोड हो रहा है System.loadLibrary(Core.NATIVE_LIBRARY_NAME); स्ट्रिंग फ़ाइल ="डी:\\छवियां\\cat.jpg"; मैट स्रोत =Imgcodecs.imread (फ़ाइल); // गंतव्य छवि को संग्रहीत करने के लिए एक खाली मैट्रिस बनाएं। मैट डीएसटी =नया मैट (src.rows (), src.cols (), src.type ()); // सीमाओं को जोड़ना Core.copyMakeBorder(src, dst, 20, 20, 20, 20, Core.BORDER_CONSTANT); // मैट्रिक्स को 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); स्टेज.सेटटाइटल ("सीमाएँ जोड़ना"); स्टेज.सेटसीन (दृश्य); मंच पर शो(); } सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग आर्ग []) {लॉन्च (तर्क); }}इनपुट इमेज
आउटपुट
निष्पादित करने पर, उपरोक्त प्रोग्राम निम्नलिखित विंडो उत्पन्न करता है -