我正在尝试NCSDK
在 macOS 上运行 Movidius。在 macOS 上使用 NCSDK 需要 VirtualBox 和 docker,因为这个 U 盘必须在 Ubuntu16.04 上运行并且它支持Tensorflow
和Caffe
. 我已经使用这个 Dockerfile 在 docker 上成功编译了 NCSDK。然后我docker-machine
像往常一样创建了一个并附加到 virtualbox:
$ docker-machine create --driver virtualbox linux
$ eval $(docker-machine env linux)
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
linux * virtualbox Running tcp://192.168.99.100:2376 v17.12.1-ce
$ docker-machine env linux
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/loretoparisi/.docker/machine/machines/linux"
export DOCKER_MACHINE_NAME="linux"
# Run this command to configure your shell:
# eval $(docker-machine env linux)
我已将设备插入 VirtualBox,因此在运行docker
图像时
docker run --rm -it movidius bash
我可以看到连接的设备:
movidius@macos:~/ncsdk/examples/apps/hello_ncs_cpp$ lsusb
Bus 001 Device 005: ID 03e7:2150
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
其中 03e7 是此处的 linux 设备 ID 列表中预期的英特尔设备:
03e7 Intel
2150 Myriad VPU [Movidius Neural Compute Stick]
所以我应该制作并运行:
cd examples/apps/hello_ncs_cpp/ \
make hello_ncs_cpp \
make run
但我明白了
cd cpp; ./hello_ncs_cpp; cd ..
Error - Could not open NCS device.
mvncStatus value: -6
尝试python
示例时出现相同的错误
movidius@macos:~/ncsdk/examples/apps/hello_ncs_py$ python hello_ncs.py
Error - Could not open NCS device.
查看 python 代码,我可以看到设备已被正确枚举:
# get a list of names for all the devices plugged into the system
ncs_names = fx.EnumerateDevices()
if (len(ncs_names) < 1):
print("Error - no NCS devices detected, verify an NCS device is connected.")
quit()
# get the first NCS device by its name. For this program we will always open the first NCS device.
dev = fx.Device(ncs_names[0])
print(ncs_names[0])
因为我可以看到1
设备名称。dev.OpenDevice()
打印我得到的 api 的错误堆栈跟踪:
mvncStatus.ERROR
Traceback (most recent call last):
File "hello_ncs.py", line 43, in <module>
dev.OpenDevice()
File "/usr/local/lib/python2.7/dist-packages/mvnc/mvncapi.py", line 147, in OpenDevice
raise Exception(Status(status))
Exception: mvncStatus.ERROR
Error - Could not open NCS device.
我还尝试使用该docker
选项连接设备但--device
没有成功,例如:
docker run --rm -it --net=host --privileged --device=/dev/usb/hiddev4
如此处所述。
[更新] 我知道最新版本的 Microsoft Windows 和 Microsoft Surface 笔记本电脑上存在相同的驱动程序问题。