Go安装OpenCV库(gocv)常见问题

Go安装OpenCV库(gocv)常见问题

gocv是OpenCV4在Go中的绑定,使用它可以在Go里做图像处理。

 Windows安装官方介绍:https://gocv.io/getting-started/windows/

其中gocv库提供的win_build_opencv.cmd为安装过程命令:

  1. 下载opencv-4.5.0.zip并解压到C:\opencv
  2. 下载opencv_contrib-4.5.0.zip并解压到C:\opencv
  3. cmake
  4. mingw32-make
  5. mingw32-make install

编译好后,添加C:\opencv\build\install\x64\mingw\bin到环境变量。

常见问题:

1. mingw32-make过程中断,编译失败

  • 可能是由于多线程编译时有的依赖库还没有生成造成的
  • 解决办法:反复执行mingw32-make

2. Python的影响

  • 如果你的电脑装了Python,且环境变量添加了Python安装目录,可能会出现链接错误,这是因为有些lib依赖库按环境变量在Python目录中找到了,而这些库与编译不匹配。
  • 解决办法:环境变量去掉Python目录,更简单的办法是把Python目录改名,编译完成后再改回来。

3. fatal error: boostdesc_bgm.i: No such file or directory

  • 采用的是源码编译的方式,所以可以查看 build 文件夹下的日志文件 CMakeDownloadLog.txt,在日志文件CMakeDownloadLog.txt中搜索 boostdesc_bgm.i 关键词 (不是在文件夹中搜索), 发现这个文件下载失败了。
  • 解决办法:下载所有缺失文件,放在 opencv_contrib/modules/xfeatures2d/src/ 路径下即可。

    链接:https://pan.baidu.com/s/1_nipZrmFPGkYma1NpgCq4A
    提取码:t2r5

  • 总共缺了以下几个文件,都需要拷贝:

    • boostdesc_bgm.i
    • boostdesc_bgm_bi.i
    • boostdesc_bgm_hd.i
    • boostdesc_lbgm.i
    • boostdesc_binboost_064.i
    • boostdesc_binboost_128.i
    • boostdesc_binboost_256.i
    • vgg_generated_120.i
    • vgg_generated_64.i
    • vgg_generated_80.i
    • vgg_generated_48.i

执行完以上步骤后,重新在C:\opencv\build\目录下执行mingw32-make和mingw32-make install即可。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119513.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 加载本地cifar10 数据集

    加载本地cifar10 数据集defload_CIFAR10(ROOT):”””loadallofcifar”””xs=[]ys=[]forbinrange(1,6):f=os.path.join(ROOT,’data_batch_%d’%(b,))X,Y=load_CIFAR_batch(f)xs.append(X)y…

    2022年6月22日
    32
  • NOTIFYICONDATA结构

    NOTIFYICONDATA结构//农机调度项目代码NOTIFYICONDATAm_notifyData;m_notifyIcon.ChangeIcon(IDI_PAUSE,_T("监控终端server已暂停&quot

    2022年7月3日
    27
  • Java程序设计(基础)- 基本语法

    Java程序设计(基础)- 基本语法

    2021年7月21日
    51
  • calendar类的方法_unsafe类常用方法

    calendar类的方法_unsafe类常用方法概念java.util.Claendar日历类,抽象类,在Date类后出现的,替换掉了很多Date类中的方法,该类将所有的可能用到的时间信息封装为静态成员变量,通过类名.静态成员变量获取时间字段值获取方式由于Calendar类是一个抽象类,语言敏感性,Calendar类并不是直接创建对象来获取时间属性值,而是通过静态方法创建,返回子类对象。静态方法如下:publicstaticCalendargetInstance();使用默认时区和默认的语言环境获取一个对象…

    2022年9月23日
    4
  • 死磕带通滤波器

    死磕带通滤波器带通滤波器的作用与陷波器类似,带通滤波器在数字电源控制领域有重要作用。比如在三相LCL逆变器的谐振抑制控制方面,通过带通滤波器可以提取谐振点附近的频谱做进一步的控制策略。在有源电力滤波器利用带通滤波器可以提取电网信号的基波频率从而做进一步的控制。带通滤波器传递函数带通滤波器的传递函数是:h(s)=AwoBss2+Bs+wo2h(s)=\frac{Aw_oBs}{s^2+Bs+w_o^2}h(s)=s2+Bs+wo2​Awo​Bs​其中,wow_owo​是带通的“中心频率”,也就是想要通过频率

    2022年6月7日
    44
  • gradle下载太慢_苹果6网络慢怎么解决

    gradle下载太慢_苹果6网络慢怎么解决由于网络的原因,有些地方连接下载Gradle没问题,有些地方就不行,所以需要想办法解决先说下载,打开文件gradle-wrapper.properties文件,修改distributionUrl把services.gradle.org改成downloads.gradle-dn.com当然这方法可能有些地方不行,实在不行就上代理吧再说Gradle下载jar包慢,在build.gradle文件的repositories{}内添加上阿里的仓库当然,如果添加了阿里仓库还不行的话只能找其他方

    2025年7月31日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号