我有一个16UC1类型的cv::Mat对象,它基本上包含kinect设备的深度值,我尝试了几种方法,例如使用

    cout << depthMat.at<uchar>(0,0) << endl;
    cout << depthMat.at<char>(0,0) << endl;
    cout << depthMat.at<double>(0,0) << endl;

等等,但是所有这些都给出了模棱两可的结果。知道如何在linux环境中的eclipse c++ / opencv中访问这些16位值。

最佳答案

只需将代码更改为

cout << depthMat.at<unsigned short>(0,0) << endl;

关于c++ - 访问cv::Mat_16UC1的各个元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21473005/

10-14 12:35