我试图用Go编程语言编写一个程序,该程序使用OpenVINO DNN模型来执行推理。为此,我遵循了GITHUB链接中的指示:https://github.com/hybridgroup/gocv/tree/master/openvino
我已经安装了OpenVINO及其随附的第三方库,其中包括位于~/intel/openvino_{version}/opencv
目录中的OpenCV。
每当我尝试执行以下命令时,事情就会出现:
go run -tags openvino ./cmd/version/main.go
我得到以下输出:
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
因此,我尝试将 CGO_LDFLAGS 设置如下:
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
但是当我这样做时,我得到:
bash: -L/deployment_tools/inference_engine/lib/intel64: No such file or directory
即使
~/intel/openvino/deployment_tools/inference_engine/lib/intel64
确实在我的系统上退出了。 最佳答案
更新(2020年2月25日)
从2019 R3.334开始,OpenVINO SDK再次开始支持GoCV。
旧讯息
看一下这个:
https://github.com/hybridgroup/gocv/issues/491
最新版本的openvino放弃了对pvl的支持,因此没有libpvl或类似的东西。
您可以尝试使用一个较旧的版本,但是没有 future 。