codeblocks配置opencv4.1.1

使用VS配置opencv较为容易,可直接使用官方提供的文件配置即可,而VS太过臃肿,比较喜欢Code Blocks这种较轻的IDE,于是便想动手搞一个。
了解过后才知道要再Code Blocks里配置opencv,就必须自己编译,与时经过前前后后将近一个星期、科学上网听满嘴咖喱味的老哥提供的教程,反复排错后终于搞定了。

opencv4.1.1源码下载后经cmake与codebooks编译后的链接配置源文件见:https://download.csdn.net/download/hxm_520/18802146

codeblocks自行下载安装,注意配置好编译器,建议下载mingw版,省的配置,不要下载mingw-32bit后缀版本的,貌似opencv不支持32位编译(待求证)。

下面开始配置:
1 解压Opencv411_codeblocks-mingw_install.rar至D:\,这里解压路径随意我放在根目录下了顺便给文件夹改了个名字为OCV411_CDB,具体随意,记住就行

2 添加环境变量
右击此电脑-属性-高级系统设置-(系统变量)path-编辑-浏览,找到D:\OCV411_CDB\x64\mingw\bin,一路点确定即可。
codeblocks配置opencv4.1.1_第1张图片
3 配置codeblocks
3.1 打开codeblocks,设置-编译器设置(compiler settings)-全局编译器设置-链接器设置-添加-浏览(见下图),然后全选D:\OCV411_CDB\x64\mingw\lib下的.a 文件,确认即可
codeblocks配置opencv4.1.1_第2张图片
codeblocks配置opencv4.1.1_第3张图片
3.2 继续点击搜索目录-编译器-添加,将D:\OCV411_CDB\include与D:\OCV411_CDB\include\opencv2依次添加进去即可。
codeblocks配置opencv4.1.1_第4张图片
3.3 继续点击搜索目录-链接器-添加,将D:\OCV411_CDB\x64\mingw\lib文件夹添加进去即可。
codeblocks配置opencv4.1.1_第5张图片
4 测试安装效果
4.1 普通测试
#include
#include
#include

using namespace cv;

int main(int argc, char *argv[])
{
//图片路径自己更改
//注意目录分隔符要使用”\“或”//",否则程序不识别并报错
Mat img = imread(“D:\lp\opencv-4.1.1\samples\data\lena.jpg”);
if(img.empty())
return -1;
namedWindow( “testshow”, WINDOW_FREERATIO );
imshow(“testshow”, img);
waitKey(0);
return 0;
}
运行效果

4.2 contrib包测试
SURF特征检测算法具有专利保护,只能用于学习与研究,不可用于商业用途

#include “opencv2/opencv.hpp”
#include “xfeatures2d.hpp”
#include
#include

using namespace std;
using namespace cv;
using namespace xfeatures2d;

int main()
{ //图片路径自主更改,注意更改分隔符
Mat img=imread(“D:\lp\opencv-4.1.1\samples\data\lena.jpg”);
if(!img.data)
{
cout<<“请确认图像路径是否正确!”< return -1;
}

  Ptr surf=SURF::create(500,4,3,true,false);

  vector Keypoints;
  surf->detect(img,Keypoints);

  Mat imgAngel;
  img.copyTo(imgAngel);

  drawKeypoints(img,Keypoints,img,Scalar(255,255,255));

  drawKeypoints(img,Keypoints,imgAngel,Scalar(255,255,255),DrawMatchesFlags::DRAW_RICH_KEYPOINTS);

  imshow("不含角度和大小的结果",img);
  imshow("含有角度和大小的结果",imgAngel);
  waitKey(0);
  return 0;

}
运行效果

至此,结束,欢迎有问题再评论区讨论!

刚开始写博客,望各位海涵!

你可能感兴趣的:(opencv,计算机视觉,编译器)