在OpenCV中将“BufferedImage”转换为“Mat”
2022-09-01 07:13:31
如何将 a 转换为 in ?BufferedImage
Mat
OpenCV
我正在使用JAVA包装器(不是JavaCV)。由于我是新手,我在理解工作原理方面遇到了一些问题。OpenCV
OpenCV
Mat
我想做这样的事情。(根据Ted W.的回答):
BufferedImage image = ImageIO.read(b.getClass().getResource("Lena.png"));
int rows = image.getWidth();
int cols = image.getHeight();
int type = CvType.CV_16UC1;
Mat newMat = new Mat(rows, cols, type);
for (int r = 0; r < rows; r++) {
for (int c = 0; c < cols; c++) {
newMat.put(r, c, image.getRGB(r, c));
}
}
Highgui.imwrite("Lena_copy.png", newMat);
这不起作用。 只是一张具有正确尺寸的黑色图片。Lena_copy.png