因为VS太大,而且在公司使用需要license。所以选择了Dev-cpp,虽然作为IDE来说简单上手快,但是对opencv的支持很少,遇到各种安装配置问题都没有人分享,尝试了两天终于放弃。最后选择了Codeblocks,相比于VS小巧,相比于vscode有集成IDE,相比于Dev-cpp,其opencv支持资源更多一些。下面从小白的角度总结一下安装配置过程(完全不懂编译等概念,所以表述不专业)。

一. Opencv编译,顺序不要反了

  1. 如果安装了anaconda,opencv编译时有些资源会自动搜索anaconda环境,所以我没有把anaconda加入环境变量中;
  2. 安装codeblocks,并将bin添加到环境变量中;
  3. 安装Cmake,并将bin添加到环境变量中;
  4. 下载opencv.exe,解压后将opencv/build/x64/bin添加到环境变量中;
  5. 打开Cmake,选择opencv/source并自创一个opencv编译文件夹,如opencv/opencv/build/x64/MinGW;
  6. configure时选择codeblocks compiler,选择codeblock/MinGW/bin下的gcc.exe和g++.exe,点击确定;
  7. 如果Cmake主界面出现红色提示,按照网上搜到的Opencv Cmake配置方法,勾选相应需要编译的库和参数(注意如果只是opencv起步学习,hdf不需要装,之前因为hdf配置折腾了很久,很影响学习进度)。其中,需要将opencv_contrib路径下的modules路径添加到;OPENCV_EXTRA_MODULES_PATH这一项中,opencv_contrib文件可以在github上下载相应版本,也可参照本文最后提供的几个链接中的提供的信息下载;
  8. 进入此文件夹,使用命令mingw32-make -j5编译文件后,若提示dll缺失,打开cmakecachelog.txt中所有download行,前一个字符串是目标文件,后一个字符串是下载链接,手动下载dll文件后替换目标文件,再次在Cmake界面点击configure直至Cmake主界面无红色错误后,点击generate后,再执行mingw32-make -j5命令;【高能预警,此步骤各种bug,从20%->50%->70%->99%,其中最折腾的就是我在Cmake勾选了hdf,导致hdf5相关的编译不停出现问题补补修修两三天,还是没弄好。建议如果是初学opencv,可以先在网上搜一下有些参数和库是不是必要的,非必要可以日后熟悉后再添加,以免影响学习进度和热情。我还去掉了导致99%报错的一个选项,忘记叫什么了,最后也不影响使用。如果你是跟我一样连编译和链接都还不懂得小白,建议不要纠结于100%完美,先用起来再慢慢优化】
  9. 使用命令mingw32-make install,成功后可以在opencv/build/x64/MinGW(之前创建的编译文件夹)中找到install文件夹;
  10. 接着就是如下跟codeblocks的对接了,如果以上都没太多问题了,下面基本就没什么问题了;

二. codeblocks配置opencv方法参考

  1. 这篇写的挺好的,详细且正确https://blog.csdn.net/lwplwf/article/details/77369930
  2. 重点是将编译好的install文件夹下的include文件夹、x64/mingw/bin、x64/mingw/lib三个文件夹拷贝到CodeBlocks新建的opencv文件夹里
  3. 辅助参考一下这篇
    https://www.cnblogs.com/yongjiuzhizhen/p/4930284.html
  4. 测试一下结果,无法上传图片,最后能显示lena那张经典照片
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>using namespace cv;int main(int argc, char *argv[])
{Mat img = imread("D:\\lena.jpg", 0);if(img.empty())return -1;imshow("tst", img);waitKey(0);return 0;
}

三. 问题

  1. cmake的作用
  2. 下载opencv exe还是opencv source?
  3. mingw32-make -j后面的数字怎么选择
    看过最多的是j1,但是我j1出错了,改成j5就好了,后面看到有人说还有用j4,j7的,具体可以参考一下下载的opencv_contrib的README.md中推荐用j几,数字代表编译时线程数量

四. 配置参考链接
https://www.itread01.com/content/1550641530.html
https://docs.opencv.org/master/d5/de5/tutorial_py_setup_in_windows.html
https://packages.msys2.org/package/mingw-w64-i686-opencv?repo=mingw32
https://repo.msys2.org/mingw/x86_64/
not-https://repo.msys2.org/mingw/i686/
https://support.hdfgroup.org/ftp/HDF5/releases/

Opencv+Windows+Codeblocks+C++安装笔记,花了三天终于在公司各种限制条件下成功打开图片相关推荐

  1. ROS2——Windows上的安装笔记

    1 安装说明 关于ROS2在Win10系统上的安装,请参考docs.ros.org – Installing ROS 2 on Windows 这里我们使用基于conda的编译版本RoboStack来 ...

  2. ROS2——Windows上的安装笔记(legacy)

    1 使用CMD命令进行安装(使用管理员模式) 记得需要使用管理员模式: 1.1 备注:不要使用PowerShell进行安装 因为PS不支持call命令: 2 Installing prerequisi ...

  3. 如何在 Windows 10 上安装华为模拟器eNSP?保姆级的教程来喽,附安装包下载

    由于最新版本的 eNSP不再包含必备组件 VirtualBox 和 WinPcap,为了使安装生效,我们需要 预先安装这些组件.在这篇文章中,我将向您介绍如何在 Windows 10 中安装 eNSP ...

  4. pip install安装系列之Pytorch、TorchVision、PyQt、OpenCV、gdcm包安装,Windows远程桌面Ubuntu16.04记录,Linux下安装google浏览器汇总

    目录 1.Anaconda各版本下载地址 2.Torch,Torchvision 3.PyQt4/5,OpenCV的安装 4.win10安装tensorflow 5.Windows7远程桌面Ubunt ...

  5. 【PDF软件篇】Windows最强大的PDF笔记编辑软件-Drawboard PDF旧版本安装教程

    [PDF软件篇]Windows最强大的PDF笔记编辑软件-Drawboard PDF旧版本安装教程 需要做PDF笔记的强烈推荐Drawboard PDF,软件运行速度很快,不限制笔记编辑次数,上手简单 ...

  6. python3下载安装windows教程-Python3入门笔记(1) —— windows安装与运行

    Python的设计哲学是"优雅"."明确"."简单".这也是我喜欢Python的理由之一 Python的安装: 点击导航栏的 Downloa ...

  7. 在windows中python安装sit-packages路径位置 在Pycharm中导入opencv不能自动代码补全问题

    一.在windows中python安装sit-packages路径位置 C:\Users\shl\AppData\Local\Programs\Python\Python36\Lib\site-pac ...

  8. 【从零学习OpenCV 4】Windows系统中安装OpenCV 4

    本文首发于"小白学视觉"微信公众号,欢迎关注公众号 本文作者为小白,版权归人民邮电出版社所有,禁止转载,侵权必究! 经过几个月的努力,小白终于完成了市面上第一本OpenCV 4入门 ...

  9. 笔记:Windows用户如何安装使用内网穿透?

    笔记:Windows用户如何安装使用内网穿透? 将本地80端口下的web网站发布到公网可访问: 1. 安装内网穿透工具 1.1 Windows系统 1.2 Linux系统 1.2.1 安装 1.2.2 ...

最新文章

  1. ADO.net 中数据库连接方式
  2. 电子产品设计流程_产品设计“学习、就业、留学”全攻略
  3. [CH Round #61] 取数游戏
  4. dsa java_将Java转换为python DSA签名
  5. oracle下载(转载)
  6. 一个测试工程师面试官的真实分享!个人超赞同!
  7. 如何选择合适的加密芯片
  8. dojo——AMD(一、AMD中class使用)
  9. python必背代码-Python高手必修课:如何让 Python 代码更易读,推荐收藏
  10. 如何使用SetTimer MFC
  11. 《嵌入式 – GD32开发实战指南》第10章 串口通信
  12. 南阳师范计算机与信息技术学院,刘军(计算机与信息技术学院)老师 - 南阳师范学院 - 院校大全...
  13. 免费书签管理工具:浏览器书签杂乱的整理方法
  14. 【钉钉-场景化能力包】自有OA审批助力费控报销
  15. 随机存储器(RAM),只读存储器(ROM),高速缓存(CACHE),内存,硬盘,CPU
  16. Dynamic Knowledge Graph Completionwith Jointly Structural and Textual Dependency
  17. Arduino 8x8点阵怦然心动
  18. html div全屏遮罩层,div遮罩层_Jquery全屏遮罩层DIV的实现代码
  19. html2canvas+jsPDF实现横向打印iframe中的内容
  20. TVS瞬态抑制二极管和ESD静电二极管的区别

热门文章

  1. 算法竞赛入门第二版解题报告
  2. HDU2093 考试排名
  3. Tomcat 配置安装
  4. 快速使用wordpress
  5. 你需要掌握的三种编程语言
  6. 利用OpenCV的findContours作轮廓检测
  7. 现在的编译器还需要手动展开循环吗_一例 Go 编译器代码优化 bug 定位和修复解析...
  8. Ubuntu10 上安装Vmware Tools注意
  9. 大理大学日常作业计算机基础知识,大理学院成人高等教育计算机应用基础课程作业题及答案...
  10. 鸿蒙系统第五批公测,鸿蒙系统即将迎来二轮公测,nova机型增添其中