Comments 19
Крутая вещь и интересная реализация! Спасибо!
А в теории к домашней автоматизации можно прикрутить для создания отчета "пока вас не было дома": в дверь звонил вот этот человек два раза и еще проходили люди несли что-то, а детские санки в коридоре никто не трогал. Как вариант?
curl -X POST -F 'image=@./detect-app/data/pic.jpg' http://127.0.0.1:8080/ddetect
Все время ошибка что буфер пуст.
cv2.error: OpenCV(4.2.0) /io/opencv/modules/imgcodecs/src/loadsave.cpp:730: error: (-215:Assertion failed) !buf.empty() in function 'imdecode_'
Пробовал и так и сяк:
POST http://127.0.0.1:8080/ddetect
Content-Type: image/jpeg
< ./detect-app/data/pic.jpg
Запрос на `/` выдаёт ожидаемое `DNN REST Service`.
curl -X POST -F «file=@cat.jpg» 192.168.1.243:8001/ddetect --output a.jpg
PS: Хабр меняет просто кавычку " на <<
И ещё — какое поколение i7 го (у меня ноут с третим i7 лежит, у которого производительность вроде как на маке с пятым i5 вроде)
Про поколение I7 не в курсе, лет 5 ему уже.
Малинку специально покупал 4ю, чтобы со стиком и ссд попробовать, но так пока не дошли руки (ссд попоробовал — быстро работает).
Про процессор спросил, поскольку почему-то не завелся на моем ноуте этот стик (под Ubuntu, устройство не нашлось чтобы intel openvino-вскими сэмпл-программами поиспользовать — буду еще смотреть позже).
У стика главная фича — асинхронное исполнение, не ждать пока данные отправяться, посчитаются и вернуться, а делать параллельно ещё запуск. Можно так и до x2 получить: https://github.com/opencv/opencv/pull/14516
Про неработающий стик на унубту — проверьте udev rules:
$ cat /etc/udev/rules.d/97-myriad-usbboot.rules
SUBSYSTEM=="usb", ATTRS{idProduct}=="2150", ATTRS{idVendor}=="03e7", GROUP="users", MODE="0660", ENV{ID_MM_DEVICE_IGNORE}="1"
SUBSYSTEM=="usb", ATTRS{idProduct}=="2485", ATTRS{idVendor}=="03e7", GROUP="users", MODE="0660", ENV{ID_MM_DEVICE_IGNORE}="1"
SUBSYSTEM=="usb", ATTRS{idProduct}=="f63b", ATTRS{idVendor}=="03e7", GROUP="users", MODE="0660", ENV{ID_MM_DEVICE_IGNORE}="1"
Вместо Bare metal/VPS или кластера, попробуйте serverless computing. На каждый реквест будет спинится отдельная виртуальная машина.
Может не сработать, но в теории должно быть быстро (но скорее всего дорого).
Вы что имеете в виду?
Аmazon lambda?
UPD: Я тут подумал, подгружать модель с OpenCV будет тяжело для serverless :/
Видео с облачным детектором объектов на Raspberry Pi