из-за моей текущей работы с OpenVino я должен использовать OpenCV. Я должен преобразовать std :: vector в массив cv :: Mat. Мой примерный код выглядит так:
std::vector<float> inputvector(10*10,1.1111);
cv::Mat image = cv::Mat(10,10,CV_32FC1);
for(int i=0;i<10;i++)
{
for (int j=0;j<10;j++)
{
image.at<float>(i,j) = inputvector.at(10*i+j);
}
}
Теперь я должен обернуть мои данные с помощью Blob :: Ptr без выделения новой памяти:
Blob::Ptr imgBlob = wrapMat2Blob(image);
В последней строке выше я получаю следующее сообщение об ошибке из механизма логического вывода OpenVINO:
Doesn't support conversion from not dense cv::Mat
Я не понимаю этого, так как мой массив 10 * 10 содержит значение 1.1111 в каждой позиции. Может кто-нибудь объяснить это? Спасибо!