我目前正在使用 Project Tango 平板电脑进行机器人避障。我想创建一个 z 值矩阵,就像它们出现在 Tango 屏幕上一样,这样我就可以使用 OpenCV 来处理矩阵。当我说 z 值时,我的意思是每个点到 Tango 的距离。但是,我不知道如何从 TangoXyzIjData 中提取 z 值并将这些值组织到矩阵中。这是我到目前为止的代码:
public void action(TangoPoseData poseData, TangoXyzIjData depthData) {
byte[] buffer = new byte[depthData.xyzCount * 3 * 4];
FileInputStream fileStream = new FileInputStream(
depthData.xyzParcelFileDescriptor.getFileDescriptor());
try {
fileStream.read(buffer, depthData.xyzParcelFileDescriptorOffset, buffer.length);
fileStream.close();
} catch (IOException e) {
e.printStackTrace();
}
Mat m = new Mat(depthData.ijRows, depthData.ijCols, CvType.CV_8UC1);
m.put(0, 0, buffer);
}
有谁知道如何做到这一点?我真的很感激帮助。