0.OpenCV框架

reference:

https://docs.opencv.org/4.1.2/

 

基本使用

1.图片和视频,读写(2,8)

2.OpenCV基本数据类型(3)

3.OpenCV大型数据类型及操作:图像,数组(4,5)

4.绘图和注释(6)

 

重要理论

1.SVD分解(7)

2.滤波和卷积(10)

  • 阈值
  • 平滑(中值、高斯、双边滤波)
  • 导数,梯度,拉普拉斯变换
  • 图像形态学:膨胀,腐蚀
  • 卷积

 

3.图像变换(11)

  • 拉伸、收缩、扭曲、旋转
  • 映射
  • 图像修复,去噪
  • 直方图均衡化

4.图像分析(12)

  • 离散傅里叶变化
  • 积分图
  • Canny边缘检测
  • Hough变换(线,圆)
  • 距离变换(有、无标记)
  • 分割

5.直方图和模板(13)

  • 直方图信息:物体的颜色分布、物体的边缘梯度模板、以概率的形式表达物体位置的估计
  • 直方图归一化、二值化、直方图比较、
  • 反向投影:计算像素和直方图模型中像素吻合度
  • 模板匹配、方差匹配——》高度结构化的图片

 5.1 应用

  • 手势识别:匹配直方图模型
  • 通过帧与帧之间边缘和颜色的统计量是否有巨大变化,判断视频中场景的变换
  • 兴趣点邻域特征组成的直方图来辨识兴趣点,进行目标识别
  • 提取视频中颜色、边缘直方图序列,可以判断视频是否拷贝自网络

 

常见应用

1.轮廓(14)

  • 查找轮廓:cv::findContours()
  • 绘制轮廓:cv::drawContours()
  • 联通区域分析
  • 多边形轮廓逼近:cv::approxPolyDP()——Douglas-Peucker算法
  • 轮廓长度:cv::arcLength()
  • 矩形包围框:cv::boundingRect()
  • 最小矩形框:cv::minAreaRect()
  • 最小包围圈minEnclosingCircle()、椭圆边框fitEllipse()、轮廓最佳拟合线fitLine()、凸包convexHull()

1.1 几何学测试

  • 检测点是否落在多边形内:pointPolygonTest()
  • 检测轮廓是否为凸:isContourConvex()
  • 比较轮廓:轮廓矩,中心矩位移不变性、归一化的中心矩缩放不变性、Hu不变矩的旋转不变性、形状场景法(形状场景距离、Hausdorff距离)

 

2.背景提取(15)

 

3.关键点检测,过滤,跟踪(16)

4.跟踪算法(17)

  • 光流
  • Mean-shift和Camshift

5.相机模型与标定(18)

  • 透镜畸变
  • 矫正映射

6.投影与三维视觉(19)

 

人工智能

1.OpenCV 的机器学习算法StatModel

2.目标检测

  • Latent SVM
  • Bag of Words

 

posted @ 2019-11-23 13:21  寒江小筑  阅读(188)  评论(0编辑  收藏  举报