如何从mat对象获取Integer数组,反之亦然

时间:2018-06-18 19:00:00

标签: java opencv

我试过这个1代码,但我不确定是不是

这是我尝试过的代码:

"no-unused-vars": 0,

我也想知道如何从整数数组中获取mat?

2 个答案:

答案 0 :(得分:1)

分配数组后,

byte imageInByte[] = new byte[originalImage.total() * originalImage.channels()];

您可以从C ++ / JNI复制数组,

originalImage.get(0, 0, imageInByte);

使用C ++ / JNI更新数组

originalImage.put(0, 0, imageInByte);

答案 1 :(得分:0)

Mat mRgb = Imgcodecs.imread("test.jpg");
MatOfInt iRgb = new MatOfInt(CvType.CV_32S);// middle type
mRgb.convertTo(iRgb, CvType.CV_32S);// 复制mRgb的数据到 iRgb
int[] dataArray = new int[(int)(iRgb.total()*iRgb.channels())];
iRgb.get(0,0, dataArray);// iRgb数据 int[]