想在qt中安装opencv编写图像识别程序。
下载opencv
试下载github以及官网上安装包,按照一些文章安装均未成功,缺少文件,准备用brew命令行下载,但是本机mac没有brew,故先下载brew。
下载安装brew
按照一些文章均未成功,如下方法成功了:命令行粘贴以下内容
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
似乎是国人自己写的程序,棒!作者 https://zhuanlan.zhihu.com/p/111014448
安装成功后可以用如下命令检验: brew -v
下载安装cmake
命令:brew install cmake
检验:cmake --version
下载安装opencv
命令:brew install opencv
qt使用opencv
在pro文件里加上opencv路径
INCLUDEPATH += /usr/local/include/opencv4 /usr/local/include/opencv4/opencv2 LIBS += /usr/local/lib/libopencv_*
参考:https://blog.csdn.net/scien2011/article/details/52830794
测试
在程序中成功添加opencv头文件
#include <opencv2/opencv.hpp>
#include <opencv2/calib3d.hpp>
在程序中成功使用opencv显示图片
#include <QCoreApplication> #include <opencv2/opencv.hpp> #include <opencv2/calib3d.hpp> using namespace std; using namespace cv; int main() { Mat image, image_gray; image = imread("/Users/haha/qtprojects/pic/1.jpeg"); imshow("orig", image); waitKey(0); }
记录问题:
问题1:
error: (-215:Assertion failed) size.width>0 && size.height>0 in function ‘imshow'
解决:文件不存在,或者路径错误,建议检查文件路径,路径命令 pwd
问题2:(其他测试代码,非本文内容)
CV_BGR2GRAY未声明的标识符
解决:加上引用
#include <opencv2imgproc ypes_c.h>
问题3:(同上)
未定义标识符CV_HAAR_SCALE_IMAGE
解决:
换成CASCADE_SCALE_IMAGE,目前版本的opencv已经没有CV_HAAR_SCALE_IMAGE