Image input output in Java
<p>In this code I have taken an image as input and output the same image. As far I know if two images are same then their PSNR value will be inf. So I calculate their PSNR value using MATLAB but it shows 48.05 that means those image are not same. But I read and write the same image, why this is happening. How can I fix it?</p>

<pre><code>public class ImageProcessing {

     BufferedImage image = null;
     int width;
     int height;

     public ImageProcessing() {

         // Input the image
         try {
             File input = new File("image0.jpg");
             image = ImageIO.read(input);
             width = image.getWidth();
             height = image.getHeight();


             /*int count = 0;
             for (int i = 0; i &lt; height; i++) {
                 for (int j = 0; j &lt; width; j++) {
                     count++;
                     Color c = new Color(image.getRGB(j, i));
                     System.out.println("S.No: " + count + " Red: " + c.getRed() + "  Green: " + c.getGreen() + " Blue: " + c.getBlue());
                 }
             }*/
         } catch (Exception e) {
             System.out.println("Error: " + e);
         }

         // Output the image
         try {
             File input = new File("image1.jpg");
             ImageIO.write(image, "jpg", input);
             System.out.println("Writing complete.");
         } catch (Exception e) {
             System.out.println("Error: " + e);
         }
     }

     public static void main(String[] args) {
         // TODO code application logic here
         System.out.println("System Start");

         ImageProcessing obj = new ImageProcessing();
     }
 }
</code></pre>