Mac 安装Qt5,QtCreator3.5 并使用OpenCV

来源:互联网 发布:电脑配件京东还是淘宝 编辑:程序博客网 时间:2024/04/30 02:42

最近要在mac运行一个Qt工程,需要使用OpenCV+ITK+VTK,搞了好久才搞定。我只想说,vtk+itk在mac上的资料真心少,虽然osx和linux的安装配置大体一样,但是就是那些许差异埋得坑真是磨人(特别是对于身为新手而言,泪奔啊´╮(╯﹏╰)╭ 。所以搞定之后打算好好写个博客记录自己踩过的坑,也供给他人提供经验少踩坑。

这篇博客主要记录Qt的安装,和如何在Qt上使用OpenCV。

环境:
- Mac OS X 10.11.2
- OpenCV3.0用源码cmake装的opencv.(How to install OpenCV on Mac)

Qt5与Qt Creator3.5下载安装

  1. Visit Qt Website and go to Download
    Qt官网提供了多种选择下载Qt框架,一般用于开发学习可直接选择Open source distribution under a LGPL or GPL license > Yes > Yes > Get started.
  2. 下载特定版本的Qt框架和QtCreator
    这里需要注意,Qt framework 和 Qt Creator是两个东西,前者是qt的核,后者相当于开发Qt的IDE。而官网下载一般把两者分开,供单独下载,而且默认推荐最新版本的qt框架(如果你并不需要最新版本独有的功能,还是下载前一个稳定版吧,因为有的时候最新版会缺胳膊少腿,别提有多坑了,来自被Qt5.6坑过的人的吐槽╮(╯﹏╰)╭,这里提供下载链接qt-opensource-mac-x64-clang-5.5.0.dmg,这是Qt一个套件,包含Qt框架和QtCreator。
  3. 把下载的dmg打开,一直下一步就OK了。

打开Qt Creator创建新工程

  1. 新建工程 > New Project
  2. 选择项目Application > Qt Widgets Application > next
  3. 工程名testOpenCV,工程路径
  4. 之后一直默认选择,创建完成。

工程创建之后的目录如下

☁  Qt  tree testOpenCVtestOpenCV├── main.cpp├── mainwindow.cpp├── mainwindow.h├── mainwindow.ui├── testOpenCV.pro└── testOpenCV.pro.user0 directories, 6 files

对新建工程配置OpenCV路径链接

工程中的testOpenCV.pro即为工程自动的配置文件,我们只需要在此文件上添加需要用的配置。

INCLUDEPATH +=/usr/local/includeLIBS +=-L/usr/local/lib -lopencv_imgproc -lopencv_core -lopencv_highgui -lopencv_imgcodecsSOURCES += main.cpp\        mainwindow.cpp

opencv安装路径一般在/usr/local/include 和 /usr/local/lib下。这里我只是构建简单的opencv例子,只用到四个链接库-lopencv_imgproc -lopencv_core -lopencv_highgui -lopencv_imgcodecs , 如果你要使用更高级的功能,需要添加相应的链接库,mac下的动态链接库后缀是.dylib,如libopencv_core.dylib,配置时需把lib 改成 -l,去掉.dylib。

编译运行例子

使用一个简单的图片显示例子,Mat, imread(),imshow(),修改mainwindow.cpp如下

#include "mainwindow.h"#include "ui_mainwindow.h"#include <opencv2/opencv.hpp>MainWindow::MainWindow(QWidget *parent) :    QMainWindow(parent),    ui(new Ui::MainWindow){    ui->setupUi(this);    cv::Mat inputImage = cv::imread("lena.jpg");//这里更改为你电脑的本地图片路径    if(!inputImage.empty())        cv::imshow("Display Image", inputImage);}MainWindow::~MainWindow(){    delete ui;}

最后可以编译运行了:Build the project (Build » Build Project or Ctrl+B) and run it (Build » Run or Ctrl+R).

运行结果
这里写图片描述

References:

  1. http://rodrigoberriel.com/2014/11/using-opencv-3-qt-creator-3-2-qt-5-3/

  2. https://youtu.be/kL0qfuLqB0U?list=PL6tlz3Oc-zFi9cMVoT9Q2RsM_xvQmCrJM

0 0