कन्वर्ट टू () org.opencv.core.Mat . की विधि वर्ग 4 मापदंडों को स्वीकार करता है:मैट (खाली मैट्रिक्स), rtype (पूर्णांक), अल्फा (पूर्णांक), बीटा (पूर्णांक), एक ही क्रम में।
-
चमक बढ़ाने के लिए - आपको बीटा मान को 0 से घटाकर -255 (अल्फ़ा मान 1 रखते हुए) करना होगा।
-
चमक कम करने के लिए - आपको बीटा मान को 0 से बढ़ाकर 255 (अल्फ़ा मान 1 रखते हुए) करना होगा।
-
कंट्रास्ट बढ़ाने के लिए - आपको अल्फा मान को 1 से बढ़ाकर 100 करना होगा (बीटा मान 0 रखते हुए)।
-
कंट्रास्ट कम करने के लिए - आपको अल्फा मान को 1 से घटाकर 0 करना होगा (बीटा मान 0 रखते हुए)।
उदाहरण
अल्फा बीटा मानों को बदलने के लिए दो स्लाइड बार के साथ एक JavaFX प्रोग्राम निम्नलिखित है।
आयात करें javafx.beans.value.ObservableValue;import javafx.embed.swing.SwingFXUtils;import javafx.geometry.Insets;import javafx.scene.Scene;import javafx.scene.control.Label;import javafx.scene.control.Slider;import javafx.scene.image.ImageView;import javafx.scene.image.WritableImage;import javafx.scene.layout.VBox;import javafx.stage.Stage;import javax.imageio.ImageIO;import org.opencv.core.Core;import org.opencv.core.Mat;import org.opencv.core.MatOfByte;import org.opencv.imgcodecs.Imgcodecs;सार्वजनिक वर्ग AlphaBetaValuesJavaFX एप्लिकेशन का विस्तार करता है {डबल कंट्रास्ट =1; निजी अंतिम int rtype =-1; डबल अल्फा =1; डबल बीटा =0; स्लाइडर स्लाइडर1; स्लाइडर स्लाइडर2; मैट स्रोत =शून्य; सार्वजनिक शून्य प्रारंभ (चरण चरण) IOException फेंकता है {// OpenCV कोर लाइब्रेरी लोड हो रहा है System.loadLibrary(Core.NATIVE_LIBRARY_NAME); स्ट्रिंग फ़ाइल ="डी:\\छवि\\lamma2.jpg"; src =Imgcodecs.imread (फ़ाइल); लिखने योग्य छवि लिखने योग्य छवि =लोड इमेज (src); // छवि दृश्य सेट करना ImageView छवि दृश्य =नया छवि दृश्य (लिखने योग्य छवि); imageView.setX(50); imageView.setY(25); imageView.setFitHeight(400); imageView.setFitWidth(550); imageView.setPreserveRatio (सच); लेबल लेबल 1 =नया लेबल ("अल्फा मान"); // स्लाइडर स्लाइडर सेट करना 1 =नया स्लाइडर (0.1, 3, 1); स्लाइडर1.सेटशो टिकलेबल (सच); स्लाइडर1.सेटशो टिकमार्क (सच); स्लाइडर1.सेटमेजरटिक यूनिट (1); स्लाइडर1.सेटब्लॉकइन्क्रिमेंट(0.05); // लेबल लेबल सेट करना लेबल 2 =नया लेबल (); लेबल लेबल 3 =नया लेबल ("बीटा मान"); // स्लाइडर स्लाइडर सेट करना 2 =नया स्लाइडर (-100, 100, 0); स्लाइडर2.सेटशो टिकलेबल (सच); स्लाइडर2.सेटशो टिकमार्क (सच); स्लाइडर2.सेटमेजरटिकयूनीट(25); स्लाइडर2.सेटब्लॉकइन्क्रिमेंट(10); // लेबल लेबल सेट करना लेबल 4 =नया लेबल (); // स्लाइडर स्लाइडर 1 के लिए श्रोता। वैल्यूप्रॉपर्टी ()। एड लिस्टनर (नया चेंजलिस्टर <नंबर> () {सार्वजनिक शून्य बदल गया (अवलोकन योग्य मूल्य संख्या> अवलोकन योग्य, संख्या पुराना मान, संख्या नया मूल्य) {कोशिश करें {label2.setText ("α- मान:"+ newValue); अल्फा =newValue.doubleValue (); मैट डेस्ट =नया मैट (src.rows (), src.cols (), src.type ()); src.convertTo (dest, rtype, alpha, बीटा); imageView.setImage(loadImage(dest)); } पकड़ें (अपवाद ई) { System.out.println (""); }}}); स्लाइडर2.valueProperty().addListener(new ChangeListenerइनपुट इमेज
आउटपुट