gpt4 book ai didi

java - 将JPG图像转换为Mat opencv UnsupportedOperationException

转载 作者:太空宇宙 更新时间:2023-11-03 23:17:40 25 4
gpt4 key购买 nike

我正在尝试将缓冲图像转换为矩阵,但它抛出了一个我以前从未见过的 UnsupportedOperationException

public static Mat readMatImage(String path) {
Mat mat = null;
BufferedImage image;
try {
image = ImageIO.read(new FileInputStream(path));
mat = new Mat(image.getHeight(), image.getWidth(), CvType.CV_8UC3);
byte[] data = ((DataBufferByte) image.getRaster().getDataBuffer()).getData();
System.out.println(data[data.length - 1]);
mat.put(0, 0, data);
} catch (IOException e) {
e.printStackTrace();
}
return mat;
}
Exception in thread "main" java.lang.UnsupportedOperationException: Provided data element number (4000000) should be multiple of the Mat channels count (3)   

最佳答案

我认为您应该考虑您的读取图像类型,因为您的图像必须是单 channel 和 8 位才能将其转换为 mat 元素。如果您的图像是 RGB,请尝试将其转换为二值图像。

关于java - 将JPG图像转换为Mat opencv UnsupportedOperationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36588206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com