opencv环境搭建及例程使用

opencv环境搭建及例程使用

opencv简介

OpenCV是开源、高度优化的计算机视觉库,目前,在众多图像相关领域都会使用Opencv进行处理。Opencv有很多现成的图像处理函数可以帮助我们快速实现相关工程算法落地,并且效率和稳定性均有较好的保障。尤其近来,深度学习得到了大力的推广,在高版本的OpenCV中也集成了深度学习的相关功能,因此选择OpenCV作为研究或者部署的图像处理工具再适合不过。

总体描述

  • OpenCV是一个基于C/C++语言的开源图像处理函数库
  • 其代码都经过优化,可用于实时处理图像
  • 具有良好的可移植性
  • 可以进行图像/视频载入、保存和采集的常规操作
  • 具有低级和高级的应用程序接口(API)
  • 提供了面向Intel IPP高效多媒体函数库的接口,可针对你使用的Intel CPU优化代码,提高程序性能(译注:OpenCV 2.0版的代码已显着优化,无需IPP来提升性能,故2.0版不再提供IPP接口)

功能

  • 图像数据操作(内存分配与释放,图像复制、设定和转换)
  • 图像/视频的输入输出(支持文件或摄像头的输入,图像/视频文件的输出)
  • 矩阵/向量数据操作及线性代数运算(矩阵乘积、矩阵方程求解、特征值、奇异值分解)
  • 支持多种动态数据结构(链表、队列、数据集、树、图)
  • 基本图像处理(去噪、边缘检测、角点检测、采样与插值、色彩变换、形态学处理、直方图、图像金字塔结构)
  • 结构分析(连通域/分支、轮廓处理、距离转换、图像矩、模板匹配、霍夫变换、多项式逼近、曲线拟合、椭圆拟合、狄劳尼三角化)
  • 摄像头定标(寻找和跟踪定标模式、参数定标、基本矩阵估计、单应矩阵估计、立体视觉匹配)
  • 运动分析(光流、动作分割、目标跟踪)
  • 目标识别(特征方法、HMM模型)
  • 基本的GUI(显示图像/视频、键盘/鼠标操作、滑动条)
  • 图像标注(直线、曲线、多边形、文本标注)

1.安装

1.1 opencv-python安装

pip3 install opencv-python

1.2 从源码安装

1.2.1 安装cmake
sudo apt-get install cmake
1.2.2 安装依赖环境
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
1.2.3 下载opencv

opencv官网:https://opencv.org/releases/
(可以直接下载源码包并解压,或者使用git下载)

1.2.4 构建可执行文件
  1. 在opencv文件夹下面新建build文件夹
mkdir build
  1. 进入build文件夹,创建可执行文件
sudo cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/usr/local ..
1.2.5 进行编译
sudo make 
1.2.6 进行安装
sudo make install
1.2.7 配置环境

打开/etc/ld.so.conf,在文件末尾添加内容

 /usr/loacal/lib

执行命令sudo ldconfig使修改生效

打开/etc/bash.bashrc,在文件末尾添加内容

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

执行命令source /etc/bash.bashrc使修改生效

1.2.8 安装完成检验
pkg-config opencv4 --modversion

1.3 运行例程

1.3.1 例程目录

opencv例程在<opencv-root>/samples/cpp/

视频处理例程
颜色跟踪: camshiftdemo
点跟踪: lkdemo
动作分割: motempl
边缘检测: laplace

图像处理例程
边缘检测: edge
图像分割: pyramid_segmentation
形态学: morphology
直方图: demhist
距离变换: distrans
椭圆拟合: fitellipse
1.3.2 编译例程(以视频边缘检测laplace为例)
g++ laplace.cpp -o laplace -I /usr/local/include/opencv4 -L /usr/local/lib -lm -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_videoio

运行程序

./laplace
1.3.3 将摄像头连接到ubuntu虚拟机

笔记本摄像头

1.3.4 安装cheese
sudo apt install cheese
sudo apt install webcam

安装成功后,输入命令cheese就可以在Ubuntu虚拟机中启动摄像头

注意事项:
如果出现Ubuntu中启动摄像头成功,但Ubuntu中的摄像头软件一直黑屏,可更改usb设备接入。如将usb1.1 更改为usb2.0,usb2.0更改为usb3.0,usb3.0更改为usb2.0。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值