当前位置: 首页 > news >正文

《如何使用MinGW-w64编译OpenCV和opencv_contrib》

《如何使用MinGW-w64编译OpenCV和opencv_contrib》

在这里插入图片描述

在Windows环境下使用MinGW编译OpenCV和opencv_contrib是一个常见需求,尤其是对于那些希望使用GCC工具链而非Visual Studio的开发者。下面我将详细介绍这个过程。

准备工作

首先需要安装和准备以下工具和库:

  1. MinGW(建议使用MinGW-w64)
  2. CMake(3.18或更高版本)
  3. Python(可选,但推荐安装)
  4. Git(用于获取源码)

下载源码

首先需要获取OpenCV和opencv_contrib的源码:

# 创建一个工作目录
mkdir opencv_build && cd opencv_build# 下载OpenCV源码
git clone https://github.com/opencv/opencv.git
cd opencv
git checkout 4.x  # 选择你需要的版本,这里以4.x为例
cd ..# 下载opencv_contrib源码(注意版本要与OpenCV一致)
git clone https://github.com/opencv/opencv_contrib.git
cd opencv_contrib
git checkout 4.x  # 与上面选择的版本保持一致
cd ..

配置CMake

创建一个构建目录,然后使用CMake配置项目:

mkdir build && cd build# 使用CMake配置项目
cmake -G "MinGW Makefiles" ^
-DCMAKE_BUILD_TYPE=Release ^
-DCMAKE_INSTALL_PREFIX=C:/opencv ^
-DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules ^
-DBUILD_opencv_world=ON ^
-DBUILD_SHARED_LIBS=ON ^
-DWITH_FFMPEG=ON ^
-DWITH_OPENMP=ON ^
-DBUILD_TESTS=OFF ^
-DBUILD_PERF_TESTS=OFF ^
-DBUILD_EXAMPLES=OFF ^
../opencv

编译和安装

配置完成后,执行编译和安装:

# 编译项目
mingw32-make -j$(nproc)# 安装OpenCV
mingw32-make install

环境配置

编译安装完成后,需要配置环境变量:

  1. 添加C:/opencv/bin到系统PATH环境变量
  2. 在项目中正确设置包含目录和库目录

可能遇到的问题及解决方案

  1. 缺少依赖库:编译时可能会提示缺少某些依赖库,如FFmpeg、TBB等。需要安装这些库并在CMake配置中指定路径。

  2. 编译错误

http://www.xdnf.cn/news/881317.html

相关文章:

  • JAVA开发工具——IntelliJ IDEA
  • Python Rio 【图像处理】库简介
  • 【图像处理3D】:点云图是怎么生成的
  • Unity VR/MR开发-VR设备与适用场景分析
  • Unity VR/MR开发-VR开发与传统3D开发的差异
  • 在 Vue 的template中使用 Pug 的完整教程
  • 高敏感应用如何保护自身不被逆向?iOS 安全加固策略与工具组合实战(含 Ipa Guard 等)
  • 从内核到应用层:Linux缓冲机制与语言缓冲区的协同解析
  • 数据集-目标检测系列- 猴子 数据集 monkey >> DataBall
  • 数字孪生在建设智慧城市中可以起到哪些作用或帮助?
  • Go语言底层(三): sync 锁 与 对象池
  • 结合Jenkins、Docker和Kubernetes等主流工具,部署Spring Boot自动化实战指南
  • 如何通过外网访问内网?哪个方案比较好用?跨网远程连接网络知识早知道
  • 在Docker里面运行Docker
  • Windows11:解决近期更新后无法上网的问题
  • .net ORM框架dapper批量插入
  • 案例分享--汽车制动卡钳DIC测量
  • PDF 转 HTML5 —— HTML5 填充图形不支持 Even-Odd 奇偶规则?(第二部分)
  • 智慧赋能:新能源汽车充电桩应用现状与管理升级方案
  • 矩阵分解相关知识点总结(二)
  • Playwright 测试框架 - Java
  • 【缺陷】温度对半导体缺陷电荷态跃迁能级的影响
  • React 样式方案与状态方案初探
  • AiPy实战:10分钟用AI造了个音乐游戏!
  • c++ 通过XOR自己实现一个对称分组加密算法
  • 谷歌披露威胁组织攻击方式:伪造Salesforce数据加载器实施钓鱼攻击
  • 使用 uv 工具快速部署并管理 vLLM 推理环境
  • [10-1]I2C通信协议 江协科技学习笔记(17个知识点)
  • 网站首页菜单两种布局vue+elementui顶部和左侧栏导航
  • 为什么需要自动下载浏览器驱动?