我正在关注 OpenIMAJ 教程,当我运行以下代码时:
import java.io.IOException;
import java.net.URL;
import org.openimaj.image.ImageUtilities;
import org.openimaj.image.MBFImage;
import org.openimaj.image.colour.ColourSpace;
import org.openimaj.image.colour.RGBColour;
public class App {
public static void main( String[] args ) throws IOException {
MBFImage image = ImageUtilities.readMBF(new URL("http://dl.dropbox.com/u/8705593/sinaface.jpg"));
System.out.println(image.colourSpace);
}
}
我得到以下异常:
Exception in thread "main" java.io.IOException: org.apache.sanselan.ImageReadException: Can't parse this format.
at org.openimaj.image.ExtendedImageIO.read(ExtendedImageIO.java:189)
at org.openimaj.image.ExtendedImageIO.read(ExtendedImageIO.java:238)
at org.openimaj.image.ImageUtilities.readMBF(ImageUtilities.java:381)
at somefolder.App.main(App.java:37)
Caused by: org.apache.sanselan.ImageReadException: Can't parse this format.
at org.apache.sanselan.Sanselan.getImageParser(Sanselan.java:621)
at org.apache.sanselan.Sanselan.getBufferedImage(Sanselan.java:1260)
at org.apache.sanselan.Sanselan.getBufferedImage(Sanselan.java:1163)
at org.apache.sanselan.Sanselan.getBufferedImage(Sanselan.java:1136)
at org.openimaj.image.ExtendedImageIO.read(ExtendedImageIO.java:187)
... 3 more
有谁知道我该如何解决这个问题?谢谢。
编辑:如果我下载图像并从文件系统中读取它,它就可以工作。不过,我想了解为什么从 URL 读取不起作用。