我试图用图片阅读图片 打开CV / Java中的Highgui.imread方法但它返回一个空矩阵,虽然我确保图像的路径是正确的。
public static void main(String[] args) {
// TODO Auto-generated method stub
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
File fileName1 = new File("learning_image.jpeg");
File fileName2 = new File("test_image.jpeg");
Mat learningImage = Highgui.imread(fileName1.getAbsolutePath(),Highgui.CV_LOAD_IMAGE_GRAYSCALE );
Mat testImage = Highgui.imread(fileName2.getAbsolutePath(),Highgui.CV_LOAD_IMAGE_GRAYSCALE );
System.out.println("learningImage size (cols,rows) "+learningImage.size());
System.out.println("testImage size (cols,rows) "+testImage.size());
}
输出为: -
learningImage size(cols,rows)0x0
testImage大小(cols,rows)0x0
答案 0 :(得分:1)
"函数imread从指定文件加载图像并返回它。如果无法读取图像(由于文件丢失,权限不正确,格式不受支持或无效),该函数返回一个空矩阵(Mat :: data == NULL)。"
由于支持jpeg,我会检查权限问题,丢失或损坏的文件。
请参阅: http://docs.opencv.org/modules/highgui/doc/reading_and_writing_images_and_video.html