小白一枚,刚使用open cv踩了一些坑,仅此记录
-
opencv下载
下载就不多说了,在github可以下载,本人使用opencv4.4
推荐一篇安装opencv的博客https://www.jianshu.com/p/3d4c55bf0926
-
项目引入opencv
vs -> c++ -> 常规->附加包含目录引入opecv头文件目录
vs -> 链接器 -> 常规 -> 附加库目录引入opencv lib目录
vs -> 链接器 -> 常规 -> 附加依赖项引入opencv lib最后一条需要注意,若debug模式引入带d的lib,我这里是debug模式,引入如下lib
-
项目中使用cv
首先引入头文件#include <opencv2/opencv.hpp>
当然这里的写法不绝对,可以用绝对路径,也可以去掉前面的opencv2
读取图片:
使用cv::imread
具体使用方法就不絮叨了注意接下来踩坑了
写了如下代码cv::Mat src1 = cv::imread("D:/model0-Sc-0-12.bmp", 0); cv::imshow( "result", src1);
没觉的有什么问题
显示就是会崩溃
排查问题发现src1.empty()为false,即非空,这就很奇怪了,发现这里使用了斜杠“/”,突然想到用反斜杠尝试一次
果然问题解决了,读取路径有问题,并没有找到该图,但是cv将src1初始化了,所以非空
到此,结束