码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • linux 编译安装 opencv 和指定 opencv_contrib 库


    1. 下载 opencv 和对应版本的 opencv_contrib 库

    • opencv:https://opencv.org/releases/
    • opencv_contrib:https://github.com/opencv/opencv_contrib

    2. 使用 cmake 编译 opencv 和指定 opencv_contrib 库

    # 在 opencv 源码文件夹下创建并进入 build 文件夹
    cd /home/usr/opencv-4.7.0  # 请切换为你的 opencv 源码路径
    mkdir build && cd build
    
    cmake -DOPENCV_EXTRA_MODULES_PATH=/home/usr/opencv_contrib-4.x/modules/aruco -DBUILD_opencv_legacy=OFF /home/usr/opencv-4.7.0
    
    make install
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    其中 -DOPENCV_EXTRA_MODULES_PATH 参数用于指定具体opencv_contrib库路径。如果需要安装多个指定 opencv_contrib 库,则用双引号和分号来提供多个 opencv_contrib 库路径,如:

    cmake -DOPENCV_EXTRA_MODULES_PATH="/home/usr/opencv_contrib-4.x/modules/xfeatures2d;/home/usr/opencv_contrib-4.x/modules/aruco" -DBUILD_opencv_legacy=OFF /home/usr/opencv-4.7.0
    
    • 1

    3. opencv-3.x 注意事项

    实测发现对于 opencv-3.2.0 直接使用 -DOPENCV_EXTRA_MODULES_PATH="" 来指定编译一部分额外子模块的话,会报错:

    No extra modules found in folder: XXX
    
    • 1

    需要用 -DOPENCV_EXTRA_MODULES_PATH="" 指定整个 opencv_contrib 的目录,然后使用 -DBUILD_opencv_=OFF 来关闭不需要的额外子模块的编译,就是比较麻烦,例如:

    cmake -DOPENCV_EXTRA_MODULES_PATH="/home/usr/opencv_contrib-3.2.0/modules" -DBUILD_opencv_legacy=OFF -DBUILD_opencv_aruco=OFF -DBUILD_opencv_dnn=OFF /home/usr/opencv-3.2.0
    
    • 1

    4. More

    记录 opencv-3.2.0 在 gcc-7 下编译不报错的命令

    cmake -DENABLE_PRECOMPILED_HEADERS=OFF ..
    
    • 1
  • 相关阅读:
    综合OA管理系统源码 OA系统源码
    SSH动漫论坛的设计与实现
    Python 图形化界面基础篇:使用框架( Frame )组织界面
    axios请求响应拦截器的应用
    洛谷P4767 [IOI2000]邮局(决策单调DP,四边形不等式优化)
    RuoYi-Vue新建模块
    什么是负载均衡集群?
    el-date-picker 有效时间精确到时分秒 且给有效时间添加标记
    高级开发要会高效Java
    Java错题归纳day10
  • 原文地址:https://blog.csdn.net/weixin_43667077/article/details/133239486
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号