目录

  • 一、OpenCV简介
  • 二、OpenCV在不同平台的配置
    • 1.window使用opencv
      • (1)添加环境变量
      • (2)创建项目
    • 2. linux搭建opencv的环境
      • (1)添加环境变量
      • (2)创建项目
      • (3)安装ffmpeg库

一、OpenCV简介

基于C++图像处理框架
图像–视觉效果(像素的显示)
内存–数据存储(像素数据的存储RGB, YUV)
算法–对图像像素处理 比如把一张彩色图像–>灰度图

依赖平台:
window下 基于Qt5.12.0
ubuntu下 基于ubuntu16.04 编译器gcc 5.4.0
arm平台 基于ubuntu16.04环境下交叉编译的 编译器 arm-linux-gcc/g++ 5.4.0

二、OpenCV在不同平台的配置

1.window使用opencv

(1)添加环境变量

把运行库依赖添加到环境变量中(window下环境变量–重启qtcreator)
F:\cc_code\video\004\OpencvForQt\opencv64\x64\mingw\bin
在系统环境变量中添加(可能需要重启系统/qtcreator)

在当前工程中添加变量

注:在当前工程中添加就只能在本工程中使用

(2)创建项目

创建一个Qt工程OpencvForQt

在工程文件中添加头文件路径, 和库路径

#添加opencv的库路径
#LIBS += F:/cc_code/video/004/OpencvForQt/opencv64/x64/mingw/lib/libopencv_world344.dll.a
LIBS += $$PWD/opencv64/x64/mingw/lib/libopencv_world344.dll.a
#添加opencv的头文件路径
INCLUDEPATH += F:/cc_code/video/004/OpencvForQt/opencv64/include
INCLUDEPATH += F:/cc_code/video/004/OpencvForQt/opencv64/include/opencv
INCLUDEPATH += F:/cc_code/video/004/OpencvForQt/opencv64/include/opencv2

若使用OpenCV4.0及以上版本,由于OpenCV4.0取消了所有的C语言接口部分,故路径配置不需要添加最后一级文件目录名为“opencv”的路径,即需要添加的路径如下:

#添加opencv的库路径
#LIBS += F:/cc_code/video/004/OpencvForQt/opencv64/x64/mingw/lib/libopencv_world344.dll.a
LIBS += $$PWD/opencv64/x64/mingw/lib/libopencv_world344.dll.a
#添加opencv的头文件路径
INCLUDEPATH += F:/cc_code/video/004/OpencvForQt/opencv64/include
INCLUDEPATH += F:/cc_code/video/004/OpencvForQt/opencv64/include/opencv2

在主函数中添加代码

#include "opencvforqt.h"
#include <QApplication>
#include <opencv2/opencv.hpp>
#include <opencv2/imgcodecs.hpp>
using namespace  cv;int main(int argc, char *argv[])
{QApplication a(argc, argv);OpencvForQt w;w.show();Mat image = imread("./my.jpg");imshow("myimage", image);waitKey(30);return a.exec();
}

注:将my.jpg添加到当前项目运行文件夹中

2. linux搭建opencv的环境

(1)添加环境变量

放在系统配置文件中

sudo vim /etc/bash.bashrcexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/opencv_pc/lib//添加到文件最后面

把opencv的库路径添加到环境变量LD_LIBRARY_PATH

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/opencv_pc/lib

注:仅当前项目可用

(2)创建项目

用qtcreator在linux共享目录下创建一个工程OpencvLinux

在工程文件中添加库路径和头文件路径, 库名

LIBS += -L/opt/opencv_pc/lib    -lopencv_calib3d \-lopencv_core \-lopencv_dnn \-lopencv_face \-lopencv_features2d \-lopencv_flann \-lopencv_highgui \-lopencv_imgcodecs \-lopencv_imgproc \-lopencv_ml \-lopencv_objdetect \-lopencv_photo \-lopencv_shape \-lopencv_stitching \-lopencv_superres \-lopencv_videoio \-lopencv_video \-lopencv_videostab
INCLUDEPATH += /opt/opencv_pc/include
INCLUDEPATH += /opt/opencv_pc/include/opencv
INCLUDEPATH += /opt/opencv_pc/include/opencv2

在主函数中添加opencv代码

#include "opencvlinux.h"
#include <QApplication>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char *argv[])
{QApplication a(argc, argv);OpencvLinux w;Mat mat = imread("./my.jpg");imshow("image",mat);waitKey(1);w.show();return a.exec();
}

(3)安装ffmpeg库

如果要使用opencv中的摄像头要安装ffmpeg

sudo apt-get install  ffmpeg

例:

#include "opencvlinux.h"
#include <QApplication>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char *argv[])
{QApplication a(argc, argv);OpencvLinux w;VideoCapture cap(0); //摄像头对象Mat image;cap>>image; //获取摄像头一帧数据Mat mat = imread("./my.jpg");imshow("my.jpg",mat);imshow("image",image);//显示数据waitKey(1);w.show();return a.exec();
}

OpenCV简介及不同环境的配置相关推荐

  1. [OpenCV] -- win7下配置OpenCV的Qt开发环境

    http://blog.csdn.net/qiurisuixiang/article/details/8665278 编译.配置OpenCV的工程相当曲折,编译OpenCV不下5次,一开始还以为是自己 ...

  2. 配置OpenCV的Qt开发环境

    QT&openCV系列!链接:http://www.cnblogs.com/emouse/category/449213.html 本文链接:http://blog.csdn.net/qiur ...

  3. VS2010 + OpenCV 2.4.1 环境配置

    VS2010 + OpenCV 2.4.1 环境配置 (Windows 7 x64 中文旗舰版:Visual Studio 2010 中文旗舰版:OpenCV2.4.1.) 1.用户环境变量(或系统环 ...

  4. android安装python opencv_Python、C++、Android OpenCV 开发环境的配置

    在 Mac 上折腾了一下 OpenCV 的配置,分别配置了 Python .C++ 和 Android 上的开发环境,中间还遇到点坑,简要记录一下. OpenCV 的安装 OpenCV 的安装有两种方 ...

  5. OpenCV安装及其开发环境配置(C++)

    目录 第一章 Opencv安装及其环境变量配置 1.1下载并安装OpenCV 1.2 OpenCV环境变量配置 第二章 Visual Studio 2019 编译器下载安装 第三章 OpenCV开发环 ...

  6. linux tbb 安装_Linux环境下配置Google Test、TBB、OpenMP和OpenCV

    最近逐渐把开发环境从Windows转到Linux下,原因是Visual Studio提供的环境太庞大,总感觉看不到全貌,并且对于C++11的支持实在是太慢了.而在Linux下,有非常大的选择空间,编辑 ...

  7. android python opencv_Python、C++、Android OpenCV 开发环境的配置

    在 Mac 上折腾了一下 OpenCV 的配置,分别配置了 Python .C++ 和 Android 上的开发环境,中间还遇到点坑,简要记录一下. OpenCV 的安装 OpenCV 的安装有两种方 ...

  8. 超详干货!Linux 环境变量配置全攻略

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|机器学习实验室 Linux环境变量配置 在自定义安装软件 ...

  9. MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决

    MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 一.简介 MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发.发布并支持的.有以下特点: MySQL是 ...

最新文章

  1. JAVA那点破事!并发、IO模型、集合、线程池、死锁、非阻塞、AQS....
  2. 30~60k | 小鹏汽车3D视觉感知工程师/专家招聘(社招)
  3. linux i2c 设备 操作说明
  4. linux 擦脚印工具,linux一步一脚印---rm命令
  5. (转) Android生成签名文件并用其对apk文件进行签名
  6. java中string类_Java中String类浅谈
  7. c语言调用shell命令一 popen使用以及获取命令返回值
  8. Learn Blockchains by Building One
  9. 程序员的自我反省-十条原则
  10. C# WinForm开发系列 - Excel
  11. [C#] Direct2D 学习笔记 (一)vb.net转换为c#
  12. 配置多个git账号_一台电脑,两个及多个git账号配置
  13. 35岁遭遇互联网公司无情裁员,面试屡屡碰壁,原因竟是……
  14. vivo手机解锁工具_vivo正式官宣APEX 2020概念手机!或将实现全面屏指纹解锁
  15. 浅谈MySQL存储引擎选择 InnoDB还是MyISAM
  16. Java实现FastDFS文件上传、查询、下载和删除
  17. 在Anylogic建立自己的智能体
  18. B2B、B2C、BOS系统都指哪些?
  19. DICOM图像像素值、灰度值与CT值
  20. Unity webGl 鼠标手指触屏控制相机围绕物体 360度旋转

热门文章

  1. 重庆市电信公司一百二十年简史
  2. 设计模式取舍之道:代码复杂度权衡
  3. POJ 1061 青蛙的约会 (扩展欧几里得)
  4. 数据增强-albumentations与imgaug使用方法
  5. mysql sql语句优化面试_面试不要一把梭了,这才是SQL优化的正确姿势
  6. 名帖91 宋徽宗赵佶 楷书《千字文》
  7. 伤心........
  8. 产品升级|1月解锁50多项新功能
  9. Vue指令-禁止输入特殊字符
  10. zookeeper not connected