0

I am trying to write a program in Go Programming Language that is using OpenVINO DNN models in order to perform inference. In order to do that I've followed instructions from this GITHUB link: https://github.com/hybridgroup/gocv/tree/master/openvino

I have installed OpenVINO and 3rd party libraries that go with it, this includes OpenCV which is located in ~/intel/openvino_{version}/opencv directory.

Thing is whenever I try to execute following command:

go run -tags openvino ./cmd/version/main.go

I get this output:

 runtime/cgo
/usr/bin/ld: cannot find -lHeteroPlugin
/usr/bin/ld: cannot find -lMKLDNNPlugin
/usr/bin/ld: cannot find -lmyriadPlugin
/usr/bin/ld: cannot find -linference_engine
/usr/bin/ld: cannot find -lclDNNPlugin
/usr/bin/ld: cannot find -lopencv_pvl
collect2: error: ld returned 1 exit status

So I tried to set my CGO_LDFLAGS like this:

CGO_LDFLAGS=-L/opencv/lib -L/deployment_tools/inference_engine/lib/intel64 -lpthread -ldl -ldliaPlugin -lHeteroPlugin -lMKLDNNPlugin -lmyriadPlugin -linference_engine -lclDNNPlugin -lopencv_core -lopencv_pvl -lopencv_videoio -lopencv_imgproc -lopencv_highgui -lopencv_imgcodecs -lopencv_objdetect -lopencv_features2d -lopencv_video -lopencv_dnn -lopencv_calib3d

But when I do that I am getting:

bash: -L/deployment_tools/inference_engine/lib/intel64: No such file or directory

Even though ~/intel/openvino/deployment_tools/inference_engine/lib/intel64 does exitst on my system.

Stefan Radonjic
  • 1,449
  • 4
  • 19
  • 38

1 Answers1

1

Updated (Feb/25/2020)

As of 2019 R3.334, OpenVINO SDK started supporting GoCV again.




Old message

Check this out:

https://github.com/hybridgroup/gocv/issues/491

The recent version of openvino dropped the support of pvl so that there is no libpvl or something like that.

You can try one older version of it but there is no future.

  • I am sorry for late response. Are you saying that installing recent version of OPENVINO will fix the issue? Because in this guide I see you had to workaround it a lot and still did not find adequate solution, correct? – Stefan Radonjic Sep 04 '19 at 18:11
  • 1
    @StefanRadonjic, Opposite. As my comment as you can see there (https://github.com/hybridgroup/gocv/issues/491#issuecomment-516607015), the latest version of OpenVINO doesn't support PVL, which offers some feature for GoCV so that we cannot really use GoCV with OpenVINO anymore. – Seongjun Kim Sep 05 '19 at 19:06
  • Aha, I understand. So in order to us GoCv with OpenVino I just have to follow your instructions on the issue and avoid using the latest version? Thank you for yur help btw. – Stefan Radonjic Sep 06 '19 at 18:06
  • 1
    @StefanRadonjic, Mostlikely, openvino_2019.1.144 would work because that version generates **libopencv_pvl.so** and you can just follow the normal instruction intriduced in GoCV's website. – Seongjun Kim Sep 06 '19 at 19:13
  • @StefanRadonjic, It seems like GoCV and OpenVino started working together again (though I didn't check it yet). Please check this out https://github.com/hybridgroup/gocv/commit/9faa6a86b25221c0195d775a6b516f973b760179#diff-864a6fce7f45a0c59a4b6b029a0fd78e – Seongjun Kim Oct 29 '19 at 21:30