Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java OpenCV लाइब्रेरी का उपयोग करके नेगेटिव इमेज को पॉजिटिव इमेज में कैसे बदलें?


नेगेटिव इमेज को पॉजिटिव में बदलने के लिए −

  • ImageIO.read() मेथड का उपयोग करके आवश्यक इमेज पढ़ें।

  • इमेज की ऊंचाई और चौड़ाई प्राप्त करें।

  • नेस्टेड फॉर लूप का उपयोग करके इमेज में प्रत्येक पिक्सेल को पार करें।

  • getRGB() मेथड का उपयोग करके पिक्सेल मान प्राप्त करें।

  • एक पिक्सेल से प्रत्येक मान को पुनर्प्राप्त करने के लिए आपको प्रत्येक रंग की शुरुआती स्थिति में राइट शिफ्ट करने की आवश्यकता है यानी अल्फा के लिए 24, लाल के लिए 16 आदि और 0Xff के साथ बिटवाइज़ AND ऑपरेशन करें। यह वेरिएबल को मास्क करता है जिससे अंतिम 8 बिट्स रह जाते हैं और बाकी सभी बिट्स को अनदेखा कर दिया जाता है।

  • लाल, हरे और नीले मानों को 255 से घटाकर नए मानों की गणना करें।

  • ARGB को उनकी संबंधित स्थितियों में लेफ्ट शिफ्ट करके और बिटवाइज़ OR का उपयोग करके उन्हें जोड़कर एक पिक्सेल को पुनर्निर्मित करें।

  • setRGB() मेथड का उपयोग करके नए पिक्सेल मान सेट करें।

उदाहरण

import java.io.File; import java.io.IOException; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class Negative2Color {    public static void main(String args[])throws IOException {       // इमेज पढ़ रहा है       File file= new File("D:\\Images\\cat_neg.jpg");       BufferedImage img = ImageIO.read(file);       for (int y = 0; y < img.getHeight(); y++) {          for (int x = 0; x < img.getWidth(); x++) {             // एक पिक्सेल की सामग्री प्राप्त कर रहा है             int p = img.getRGB(x,y);             // पिक्सेल मान से A R G B मान प्राप्त कर रहा है             int a = (p>>24)&0xff;             int r = (p>>16)&0xff;             int g = (p>>8)&0xff;             int b = p&0xff;             // RGB को 255 से घटा रहा है             r = 255 - r;             g = 255 - g;             b = 255 - b;             // नया RGB मान सेट कर रहा है             p = (a<<24) | (r<<16) | (g<<8) | b;             img.setRGB(x, y, p);          }       }       // संशोधित इमेज सेव कर रहा है       file = new File("D:\\Images\\negative_positive.jpg");       ImageIO.write(img, "jpg", file);       System.out.println("Done...");    } }

इनपुट

Java OpenCV लाइब्रेरी का उपयोग करके नेगेटिव इमेज को पॉजिटिव इमेज में कैसे बदलें?

आउटपुट

Java OpenCV लाइब्रेरी का उपयोग करके नेगेटिव इमेज को पॉजिटिव इमेज में कैसे बदलें?


  1. Java OpenCV लाइब्रेरी का उपयोग करके रंगीन इमेज को नीली/हरी/लाल इमेज में कैसे बदलें? Java OpenCV लाइब्रेरी का उपयोग करके रंगीन इमेज को नीली/हरी/लाल इमेज में कैसे बदलें?

    Imgproc क्लास की cvtColor() मेथड इमेज के रंग को एक से दूसरे में बदलती है। यह मेथड तीन पैरामीटर्स स्वीकार करती है −src − स्रोत को दर्शाने वाला एक मैट्रिक्स ऑब्जेक्ट।dst − गंतव्य को दर्शाने वाला एक मैट्रिक्स ऑब्जेक्ट।code − गंतव्य इमेज के रंग को दर्शाने वाला एक पूर्णांक मान।रंगीन इमेज को ग्रेस्केल में

  1. Java OpenCV लाइब्रेरी का उपयोग करके रंगीन इमेज को ग्रेस्केल में कैसे बदलें? Java OpenCV लाइब्रेरी का उपयोग करके रंगीन इमेज को ग्रेस्केल में कैसे बदलें?

    Imgproc क्लास की cvtColor() मेथड इमेज के रंग को एक से दूसरे में बदलती है। यह मेथड तीन पैरामीटर्स स्वीकार करती है −src − स्रोत को दर्शाने वाला एक मैट्रिक्स ऑब्जेक्ट।dst − गंतव्य को दर्शाने वाला एक मैट्रिक्स ऑब्जेक्ट।code − गंतव्य इमेज के रंग को दर्शाने वाला एक पूर्णांक मान।रंगीन इमेज को ग्रेस्केल में

  1. Java OpenCV लाइब्रेरी का उपयोग करके इमेज कैसे लिखें? Java OpenCV लाइब्रेरी का उपयोग करके इमेज कैसे लिखें?

    OpenCV लाइब्रेरी का उपयोग करके आप इमेज प्रोसेसिंग ऑपरेशन कर सकते हैं जैसे इमेज फ़िल्टरिंग, ज्यामितीय इमेज ट्रांसफॉर्मेशन, कलर स्पेस रूपांतरण, हिस्टोग्राम, आदि।इमेज लिखनाजब भी आप Imgcodecs क्लास की imread() मेथड का उपयोग करके इमेज की सामग्री पढ़ते हैं, तो परिणाम मैट्रिक्स ऑब्जेक्ट में पढ़ा जाता है।आप