OpenCV计算机视觉

OpenCV计算机视觉_第1张图片

其中core、highgui、imgproc是最基础的模块,该课程主要是围绕这几个模块展开的,分别介绍如下:

  • core模块实现了最核心的数据结构及其基本运算,如绘图函数、数组操作相关函数等。
  • highgui模块实现了视频与图像的读取、显示、存储等接口。
  • imgproc模块实现了图像处理的基础方法,包括图像滤波、图像的几何变换、平滑、阈值分割、形态学处理、边缘检测、目标检测、运动分析和对象跟踪等。

对于图像处理其他更高层次的方向及应用,OpenCV也有相关的模块实现

  • features2d模块用于提取图像特征以及特征匹配,nonfree模块实现了一些专利算法,如sift特征。
  • objdetect模块实现了一些目标检测的功能,经典的基于Haar、LBP特征的人脸检测,基于HOG的行人、汽车等目标检测,分类器使用Cascade Classification(级联分类)和Latent SVM等。
  • stitching模块实现了图像拼接功能。
  • FLANN模块(Fast Library for Approximate Nearest Neighbors),包含快速近似最近邻搜索FLANN 和聚类Clustering算法。
  • ml模块机器学习模块(SVM,决策树,Boosting等等)。
  • photo模块包含图像修复和图像去噪两部分。
  • video模块针对视频处理,如背景分离,前景检测、对象跟踪等。
  • calib3d模块即Calibration(校准)3D,这个模块主要是相机校准和三维重建相关的内容。包含了基本的多视角几何算法,单个立体摄像头标定,物体姿态估计,立体相似性算法,3D信息的重建等等。
  • G-API模块包含超高效的图像处理pipeline引擎
# Windows下安装OpenCV,指定版本号
pip install -i http://pypi.douban.com/simple --trusted-host pypi.douban.com opencv-python==3.4.2.17
    
# OpenCV贡献库安装(社区维护库)
pip install opencv-contrib-python==3.4.2.17    

# Pycharm安装opencv失败的解决方案:
在依赖包仓库中添加镜像:
https://pypi.tuna.tsinghua.edu.cn/simple/   清华大学镜像库
http://mirrors.aliyun.com/pypi/simple/      阿里云镜像库
http://pypi.douban.com/simple/              豆瓣镜像库
    
# 验证opencv
import cv2
cv2.__version__
# 能正常显示版本号即认为安装成功

# 安装多个第三方库
pip install numpy pandas wheel jupyter notebook

OpenCV计算机视觉_第2张图片

  • img[0,0]:访问图像 img 第0行第0列像素点的 BGR 值。图像是 BGR 格式的,得到的数值为[0,0,255]。
  • img[0,0,0]:访问图像 img 第0行第0列第0个通道的像素值。图像是BGR格式的,所以第0个通道是B通道,会得到B通道内第0行第0列的位置所对应的值0。
  • img[0,0,1]:访问图像 img 第0行第0列第1个通道的像素值。图像是BGR格式的,所以第1个通道是G通道,会得到G通道内第0行第0列的位置所对应的值0。
  • img[0,0,2]:访问图像img第0行第0列第2个通道的像素值。图像是BGR格式的,所以第2个通道是R通道,会得到R通道内第0行第0列的位置所对应的值255。

OpenCV计算机视觉_第3张图片

  • 目标分类:整个图像,输入图像,输出类别。
  • 目标定位:单框框出来,不做分类。
  • 目标检测:画框分类
  • 目标分割
    • 语义分割:对每个像素进行分类,同类别会被分到一起。
    • 实例分割:不同的物体分别分类

深度学习三驾马车

  • 算力:CPU、GPU、FPGA
  • 海量数据
  • 算法

OpenCV计算机视觉_第4张图片

OpenCV计算机视觉_第5张图片

OpenCV计算机视觉_第6张图片

OpenCV计算机视觉_第7张图片

OpenCV计算机视觉_第8张图片

  • 目标检测

    • 两阶段方法:提取候选框——>筛选目标,例:R-CNN、SPP-Net、Fast R-CNN、Faster R-CNN
    • 单阶段方法:直接检测目标,例:YOLO、SSD、R-FCN
  • CS231n:李飞飞人工智能入门课

    http://cs231n.stanford.edu/

  • CS229:机器学习公开课

  • CS224:自然语言处理公开课

OpenCV计算机视觉_第9张图片

OpenCV计算机视觉_第10张图片

OpenCV计算机视觉_第11张图片

  • 人体姿态检测经典模型

    • OpenPose 卡内基梅隆大学/卷积神经网络
    • DeepCut
    • RMPE(AlphaPose)
    • Mask RCNN
  • 边缘计算(Edge Computing)

    • 与云计算相比,实时,不需要先上传云再进行计算,本地计算。

Cut

  • RMPE(AlphaPose)

  • Mask RCNN

  • 边缘计算(Edge Computing)

    • 与云计算相比,实时,不需要先上传云再进行计算,本地计算。

你可能感兴趣的:(计算机视觉,计算机视觉,人工智能,opencv,算法)