图像比较失败| java

图像比较失败| java,java,Java,知道我哪里做错了吗?它是否正在获取URL并传递它?任何帮助都将不胜感激 url不工作HTTP响应代码:403表示您没有访问该图像的权限。是的,我可以获取吗?或者我是唯一一个能够访问它的人,:(@Thomas,谢谢你的信息和支持,感谢:)。让我试试其他的图片谢谢,它很管用。顺便说一句,一个简单的疑问是,为什么我不能访问未经授权的图像,而同时我可以通过我的浏览器获取该图像? import java.awt.image.BufferedImage; import javax.imageio.I

知道我哪里做错了吗?它是否正在获取URL并传递它?任何帮助都将不胜感激

url不工作<代码>HTTP响应代码:403表示您没有访问该图像的权限。是的,我可以获取吗?或者我是唯一一个能够访问它的人,:(@Thomas,谢谢你的信息和支持,感谢:)。让我试试其他的图片谢谢,它很管用。顺便说一句,一个简单的疑问是,为什么我不能访问未经授权的图像,而同时我可以通过我的浏览器获取该图像?
    import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import java.io.IOException;
import java.net.URL;
public class Imagecompare
{
    public static void main(String args[])
      {
        BufferedImage img1 = null;
        BufferedImage img2 = null;
        try {
          URL url1 = new URL("http://www.desktopid.com/wp-content/uploads/2015/05/Apple-logo-Free-Desktop-Wallpapers.jpg");
          URL url2 = new URL("http://www.desktopid.com/wp-content/uploads/2015/05/Apple-logo-Free-Desktop-Wallpapers.jpg");
          img1 = ImageIO.read(url1);
          img2 = ImageIO.read(url2);
        } catch (IOException e) {
          e.printStackTrace();
        }
        int width1 = img1.getWidth(null);
        int width2 = img2.getWidth(null);
        int height1 = img1.getHeight(null);
        int height2 = img2.getHeight(null);
        if ((width1 != width2) || (height1 != height2)) {
          System.err.println("Error: Images dimensions mismatch");
          System.exit(1);
        }
        long diff = 0;
        for (int y = 0; y < height1; y++) {
          for (int x = 0; x < width1; x++) {
            int rgb1 = img1.getRGB(x, y);
            int rgb2 = img2.getRGB(x, y);
            int r1 = (rgb1 >> 16) & 0xff;
            int g1 = (rgb1 >>  8) & 0xff;
            int b1 = (rgb1      ) & 0xff;
            int r2 = (rgb2 >> 16) & 0xff;
            int g2 = (rgb2 >>  8) & 0xff;
            int b2 = (rgb2      ) & 0xff;
            diff += Math.abs(r1 - r2);
            diff += Math.abs(g1 - g2);
            diff += Math.abs(b1 - b2);
          }
        }
        double n = width1 * height1 * 3;
        double p = diff / n / 255.0;
        System.out.println("diff percent: " + (p * 100.0));
      }

}
> javax.imageio.IIOException: Can't get input stream from URL!
    at javax.imageio.ImageIO.read(Unknown Source)
    at imager.Imagecompare.main(Imagecompare.java:16)
Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://www.desktopid.com/wp-content/uploads/2015/05/Apple-logo-Free-Desktop-Wallpapers.jpg
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at java.net.URL.openStream(Unknown Source)
    ... 2 more
Exception in thread "main" java.lang.NullPointerException
    at imager.Imagecompare.main(Imagecompare.java:21)