Этот вопрос касается того, чтобы все работало в .Net для обнаружения объектов Tensorflow. Поскольку я нахожусь в .Net, я использую оболочку EmguCV для своих вызовов OpenCV. Что касается Tensorflow, то и в .Net есть множество обёрток.
Хотя мой вопрос общий, он может быть конкретным .Net, но я так не думаю. Из Emgu или OpenCV я использую VideoCapture для чтения кадров из видеоисточника. Каждый кадр представляет собой мат, который также может быть легко преобразован в изображение OpenCV. Однако для обнаружения объекта Tensorflow требуется некоторый массив изображений, который, как подозревают, является массивом NumPy, в качестве входных данных.
Я нашел много примеров и примеров кода, но большинство из них связано с наличием изображения, такого как jpeg, в файловой системе и чтением его. Не многие имеют отношение к наличию OpenCV Mat или Image и преобразованию этого во входной массив для Tensorflow.
Специально для используемой оболочки Tensorflow, Tensorflow.Net, она на самом деле принимает нечто, называемое FeedItem, как показано здесь Tensorflow.Net , и снова этот пример считывается в файл изображения.
Я пытался понять это. Я попытался взять свойство Mat и Image Data, которое является байтовым массивом, и преобразовать его в массив NumPy, но оно не работает. Я получаю исключения о том, что что-то с зубчатыми массивами не поддерживается.
Итак, кто-нибудь знает, как правильно и эффективно преобразовать эти типы данных изображения в NumPy или что-то, что я могу подать на вход Tensorflow?
Спасибо!