इमेज को नेगेटिव में बदलने का एल्गोरिदम
प्रत्येक पिक्सेल के लाल, हरे, नीले मान प्राप्त करें
प्रत्येक रंग मान को 255 से घटाएं और उन्हें नए रंग मानों के रूप में सेव करें।
संशोधित रंगों से एक नया पिक्सेल मान बनाएं।
नए मान को पिक्सेल पर सेट करें।
Java में कार्यान्वयन
ImageIO.read() मेथड का उपयोग करके आवश्यक इमेज पढ़ें।
इमेज की ऊंचाई और चौड़ाई प्राप्त करें।
नेस्टेड फॉर लूप का उपयोग करके इमेज में प्रत्येक पिक्सेल को पार करें।
getRGB() मेथड का उपयोग करके पिक्सेल मान प्राप्त करें।
उपरोक्त पुनर्प्राप्त पिक्सेल मान को पैरामीटर के रूप में पास करके एक Color ऑब्जेक्ट बनाएं।
getRed(), getGreen() और getBlue() मेथड्स का उपयोग करके कलर ऑब्जेक्ट से लाल, हरे, नीले मान प्राप्त करें।
एल्गोरिदम में निर्दिष्ट अनुसार नए लाल, हरे और नीले मानों की गणना करें।
नए RGB मानों को पैरामीटर के रूप में पास करके एक नया Color ऑब्जेक्ट बनाएं।
पिक्सेल प्राप्त करें
setRGB() मेथड का उपयोग करके नए पिक्सेल मान सेट करें।
उदाहरण
import java.io.File; import java.io.IOException; import java.awt.Color; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class Color2Negative { public static void main(String args[])throws IOException { // इमेज पढ़ रहा है File file= new File("D:\\Images\\car3.jpg"); BufferedImage img = ImageIO.read(file); for (int y = 0; y < img.getHeight(); y++) { for (int x = 0; x < img.getWidth(); x++) { // एक पिक्सेल के मान प्राप्त कर रहा है int pixel = img.getRGB(x,y); // पिक्सेल मान से Color ऑब्जेक्ट बना रहा है Color color = new Color(pixel, true); // R G B मान प्राप्त कर रहा है int red = color.getRed(); int green = color.getGreen(); int blue = color.getBlue(); // नेगेटिव में बदलने के लिए RGB को 255 से घटा रहा है red = 255-red; green = 255-green; blue = 255-blue; // नया Color ऑब्जेक्ट बना रहा है color = new Color(red, green, blue); int newPixel = color.getRGB(); // इमेज पर नया Color ऑब्जेक्ट सेट कर रहा है img.setRGB(x, y, newPixel); } } // संशोधित इमेज सेव कर रहा है file = new File("D:\\Images\\negative_image.jpg"); ImageIO.write(img, "jpg", file); System.out.println("Done..."); } }इनपुट

आउटपुट
