- 浏览: 224703 次
- 性别:
- 来自: 淄博
最新评论
文章列表
opencv计算机视觉学习笔记八
- 博客分类:
- opencv
第九章 基于opencv的神经网络简介
1 人工神精网络ann
2 人工神精网络的结构
输入层
网络的输入数目
如动物有体重,长度,牙齿三个属性,网络则需要三个输入节点
中间层
输出层
与定义的类别数相同,如定义了猪,狗,猫 ...
第八章 目标跟踪
1检测目标的移动
基本的运动检测,示例代码如下:
import cv2
import numpy as np
# 捕获摄像头图像
camera = cv2.VideoCapture(0)
#
es = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (10, 10))
kernel = np.ones((5, 5), np.uint8)
background = None
while (True):
ret, frame = camera.read()
# 将第一帧设为图像的背景
- 2016-12-18 12:36
- 浏览 1414
- 评论(0)
第七章 目标检测与识别
梯度直方图histogram of oriented gradient
图像金字塔 image pyramid
滑动窗口 sliding window
1 目标检测与识别
AHOG描述符
每个单元包含八个直方图即八个方向(n,nw,w,sw,s,se,e,ne)
尺度 检测目标可能位于较大图像中
位置 检测图像可能位于图像的任意位置
可以使用图像金字塔或是滑动窗口解决
非最大抑制
支持向量机
Svm算法,对于带有标签的训练数据,通过一个优化的超平面对这些数据进行分类
B 检测人
示例代码如下;
#!/usr/bin/env ...
- 2016-12-18 12:34
- 浏览 1357
- 评论(0)
第六章 图像检索以及基于图像描述符的搜索
通过提取特征进行图像的匹配与搜索
1 特征检测算法
常见的特征和提取算法:
Harris 检测角点
Sift 检测斑点(blob) 有专利保护
Surf 检测斑点 有专利保护
Fast 检测角点
Brief 检测斑点
Orb 带方向的fast算法和具有旋转不变性的brief算法
特征的定义
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2016/12/5 12:30
# @Author : Retacn
# @Site : 检测图像的角点
# @File : ...
- 2016-12-13 12:48
- 浏览 1236
- 评论(0)
第五章 人脸检测和识别
1 haar级联的概念
2 获取haar级联数据
在opencv源码中data/haarcascades目录下存放了用于人脸检测的xml文件.用于检测静止图像,视频和摄像头中的人脸
用于人脸眼睛 鼻子和嘴的跟踪
haarcascade_profileface
haarcascade_smile
haarcascade_russian_plate_number
haarcascade_upperbody
haarcascade_righteye_2splits
3 使用opencv进行人脸检测
3.1 静态图像中的人脸检测
示例代码如下: ...
- 2016-12-13 12:48
- 浏览 706
- 评论(0)
第四章 深度估计和分割
1 捕获深度摄像头的帧
深度图 灰度 每个像素都是摄像头到物体表面的距离 毫米
点云图 彩色 每种颜色对应一个维度空间 米
视差图 灰度 每个像素代表物体表面的立体视差 近大远小
有效深度掩模一个给定像素的深度信息是否有效
2 从视差图中得到掩模
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2016/12/1 10:16
# @Author : Retacn
# @Site : 深度摄像头数据的处理
# @File : depth.py
# @Software: PyCharm
__ ...
- 2016-12-13 12:45
- 浏览 1421
- 评论(0)
第三章 Opencv3处理图像
1 不同色彩空间的转换
计算机视觉中三种常见的色彩空间:
灰度
BGR
HSV(hue色调 saturation饱合度 value黑暗程度)
2 傅里叶变换
快速傅里叶变换fft
离散傅里叶变换dft
高通滤波器heigh passfilter
检测图像的某个区域,根据像素和周围像素的亮度差值来提升该像素亮度的滤波器
示例代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2016/11/29 12:23
# @Author : Retacn
# @Site ...
- 2016-12-13 12:44
- 浏览 1070
- 评论(0)
第二章 处理文件 摄像头和图形用户界面
1 基本i/o脚本
读写图像文件
示例代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2016/11/27 12:22
# @Author : Retacn
# @Site : 读/写图像文件
# @File : imageReadWrite.py
# @Software: PyCharm
import cv2
imp ...
- 2016-12-13 12:42
- 浏览 779
- 评论(0)
21 opencv的轮廓
常用函数:
def findContours(image, #二值单通道图像
mode, #轮廓的检测方式
method, #轮廓的近似办法
contours=None, #要绘制的边缘数组
hierarchy=None, #轮廓个数
offset=None)#轮廓点的偏移量
Mode的检测模式有:
Cv2.RETR_EXTERNAL #得到最外面的轮廓
CV_RETR_LIST
CV_RETR_TREE
method轮廓的近似方法
CV_CHAIN_APPROX_NONE #所有边界点都会被存储
CV_CHAIN_APPROX_SIMP ...
- 2016-12-13 12:39
- 浏览 357
- 评论(0)
20
图像金字塔
高斯金字塔
拉普拉斯金字塔
所用函数:
def
pyrDown(src,
#输入图像
dst=None,
#输出图像
- 2016-11-21 16:34
- 浏览 370
- 评论(0)
19 canny边缘检测
函数原型:
def
Canny(image,
#单通道输入图像
threshold1,
#第一个阈值
threshold2,
#第二个阈值
edges=None,
- 2016-11-21 16:34
- 浏览 285
- 评论(0)
18
图像梯度
图像梯度
图像边界
常用函数
cv2.Sobel()cv2.Scharr()cv2.Laplacian()
1 Sobel算子和
- 2016-11-21 16:33
- 浏览 363
- 评论(0)
17
形态学转换
形态学操作:
腐蚀
膨胀 开运算 闭运算
常用函数:
cv2.erode()cv2.dilate()cv2.morphologyEx()
- 2016-11-21 16:32
- 浏览 476
- 评论(0)
16
图像平滑
通过低通滤波器对图像进行模糊
通过自定义滤波器对图像进行卷积
def
filter2D(src,
#输入图像
ddepth,
#图像深度
kernel,
#卷积核,
- 2016-11-21 16:32
- 浏览 250
- 评论(0)
15
图像阈值
当像素高于阈值时,给这个像素一个新值(可以是白色),否则给它另一种颜色
不同的阈值方法:
cv2.THRESH_BINARY#黑白二值(二值阈值化)
cv2.THRESH_BINARY_INV#黑白二值反转(反转二值阈值化)
- 2016-11-21 16:31
- 浏览 475
- 评论(0)