对“ cv :: optflow :: createOptFlow_DualTVL1()”的未定义引用

时间:2019-03-11 23:32:37

标签: opencv go

我已经从https://github.com/hybridgroup/gocv成功安装了gocv软件包,并且正在尝试运行包装在Go项目中C库中的C ++代码。但是,当我尝试调用cv::optflow::createOptFlow_DualTVL1()方法时似乎出现了问题。我收到未定义的参考错误。我不知道为什么,因为在optflow.hpp文件中有一种叫做createOptFlow_DualTVL1()

的方法

这是我的main.go文件:

package main

/*
#cgo LDFLAGS: -L/usr/local/lib -lopencv_core -lopencv_video -lopencv_videoio -lopencv_highgui -lopencv_tracking -lopencv_optflow
#include "dense_flow.h"
*/
import (
       "C"
       "gocv.io/x/gocv"
)

func main(){

}

注意:dense_flow.h是我声明了CalculateT4VL1()函数的地方,该函数调用createOptFlow_DualTVL1()文件中的dense_flow.cpp

操作系统和版本:Ubuntu 18.04

使用的OpenCV版本:4.0.0

使用的GoCV版本:0.18

Go版本:1.12

1 个答案:

答案 0 :(得分:1)

此光流从contrib模块导入。 您需要高级导入(https://github.com/hybridgroup/gocv/tree/master/contrib):“ gocv.io/x/gocv/contrib”