将uint64_t转换为cv :: mat

时间:2018-04-18 20:57:53

标签: opencv type-conversion uint64 opencv-mat

我有什么:

 std::vector<cv::KeyPoint> keypoints;
    uint64_t* desc = new uint64_t[8 * keypoints.size()];    
    cv::Mat test = (keypoints.size(), 8, CV_8UC1, desc);

这不起作用。我错过了什么?

错误讯息是: 没有合适的构造函数可以从“uint64_t *”转换为“cv :: Mat”和“无法初始化类型为cv :: Mat的局部变量测试,其中lvalue类型为unsigned long long” 谢谢

1 个答案:

答案 0 :(得分:0)

调用cv::Mat构造函数的语法不正确,请尝试:

cv::Mat test(keypoints.size(), 8, CV_8UC1, desc);