WHAT & WHY
I have two Myriad X devices, the first belongs to the OAK-D and the second belongs to an edge processing compute unit. I’m running several models concurrently and hence would to accelerate processing by leveraging both Myriads ie use OAK-D for processing and the second Myriad as well via openvino
HOW
I read an RGB image from the OAK-D and want to process it on the Myriad in the edge device through OpenVino. My pipeline is as follows: Load model using OpenVino and assign second myriad -> Start depthai pipeline -> get RGB frame -> infer on OpenVino
The Myriad X devices are MYRIAD.1.4-ma2480 and MYRIAD.3.1-ma2480 though I’m unsure which Myriad belongs to the OAK-D. Tried assigning either to the OpenVino, using the line below, where device is either “MYRIAD.1.4-ma2480” or “MYRIAD.3.1-ma2480”
SegExecutable = OpenVinoIE.load_network(network=SegNetwork, device_name=device)
CURRENT BEHAVIOUR
Using MYRIAD.1.4-ma2480, I get a Myriad initialisation error
SegExecutable = OpenVinoIE.load_network(network=SegNetwork, device_name=device)
File "ie_api.pyx", line 367, in openvino.inference_engine.ie_api.IECore.load_network
File "ie_api.pyx", line 379, in openvino.inference_engine.ie_api.IECore.load_network
RuntimeError: Can not init Myriad device: NC_ERROR
Using MYRIAD.3.1-ma2480, the depthai pipeline is unable to find the device ma2480. Did a check via dai.XLinkPlatform(0).X_LINK_MYRIAD_X.value and found that it’s actually looking for device 2480
File "inference.py", line 391, in inference_on_stream
with dai.Device(pm.p) as device:
RuntimeError: Failed to find device (ma2480), error message: X_LINK_DEVICE_NOT_FOUND
QUESTIONS
- How can I tell which Myriad X belongs to the OAK-D?
- I’m assuming MYRIAD.3.1-ma2480 belongs to OAK-D, hence there is a conflict when I assign it to the OpenVino network. If so, any idea how can I initialise MYRIAD.1.4-ma2480 to use it in my network, FYI, if I set device=“CPU” everything works but it’s awfully slow.