计算机视觉与图像处理学习笔记(二)win32+mingw+opencv搭建

来源:互联网 发布:html编程语言 编辑:程序博客网 时间:2024/05/18 00:00

本来是想接着第二章学习的,但是感觉理论性有点强,了解基本概念后还是从Opencv来,遇到问题再切换。

关于opencv的下载与配置参考:

http://opencv.org/downloads.html

http://wiki.opencv.org.cn/index.php/Codeblocks_MinGW_openCV                                          codeblocks下

配置的过程真是困难重重,许多教程就是睁着眼睛说瞎话,我配置的主要流程如下:

1.下载解压opencv;


2.下载安装cmake;

由于最新版本的opencv只有vs10,vs11,vs12,所以需要用cmake自己制作mingw版本的opencv库。

详细原因见:http://blog.csdn.net/goomaple/article/details/45649305


3.使用cmake调用mingw去编译下载下来的OpenCV源码,详细步骤参见上一步的博客链接。

这里遇到的主要问题是在configure的时候无法通过,要注意mingw版本和opencv版本的一致,我刚开始就是因为mingw版本太老搞了好久。还有就是路径不要包含中文。最后如果在mingw32-make的时候发现'BTNS_AUTOSIZE' was not declared in this scope这种错误,需要在mingw的bin文件夹下修改commctrl.h文件。

详细修改方法见:http://stackoverflow.com/questions/27663558/opencv-win8-1-mingw32-source-code-error-tbbuttoninfo-was-not-declared-in-this

我发现网上的许多教程在这一步都有意无意的带过许多重要细节,并不敢确信“写”这些教程的人真的是原创的文章。


4.做到这里成功用mingw编译了opencv库,后面就是按照网上的传统教程进行下去,主要是环境变量的设置和库的添加,并没有遇到太大的困难。


配置完opencv,测试第一个程序:参考了http://blog.csdn.net/poem_qianmo/article/details/19809337这篇文章里的测试程序。

#include<iostream>#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>using namespace cv;int main(){    // 读入一张图片(游戏原画),可自己设置路径    Mat img=imread("C:\\Users\\Administrator\\Desktop\\psb.jpg");    // 创建一个名为 "游戏原画"窗口    namedWindow("游戏原画");    // 在窗口中显示游戏原画    imshow("游戏原画",img);    // 等待60000 ms后窗口自动关闭    waitKey(60000);}
最后效果如图


说实话,用mingw学习opencv的人本来就少,配置的过程中也看了很多博客、论坛什么的,之所以看了这么多,就是因为很多作者并不负责,不知从哪里拉了一段过来就说自己原创,导致我们这些初学者实践起来并不是这么回事,走了很多弯路。

希望大家都能从这篇文章中受益。

转载注明出处: http://blog.csdn.net/accepthjp/




1 0
原创粉丝点击