Конвертировать uint64_t в cv::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 ответ

Решение

Ваш синтаксис для вызова cv::Mat неверный конструктор, попробуйте:

cv::Mat test(keypoints.size(), 8, CV_8UC1, desc);
Другие вопросы по тегам