搞到一套计算机视觉终极入门“姿势”!
AI 显然是最近几年非常火的一个新技术方向,从几年前大家认识到 AI 的能力,到现在产业里已经在普遍的探讨 AI 如何落地了。
我们可以预言未来在很多的领域,很多的行业,AI 都会在里边起到重要的作用。
随着AI的不断持续火热,越来越多的人才涌入进来,但我发现一个行业现象:人才短缺,工程师过剩。
目前在商业中有所应用,而且能够创收的只有搜索推荐和计算机视觉,因此,这两个方向的人力缺口很大,尤其是计算机视觉。
前两年校招时可以看到,互联网、IT、生物医药、汽车安防等等行业,几乎都会有计算机视觉的岗位。
所以,很多其他方向的同学开始纷纷转向,随着大潮流投入计算机视觉这个方向,为什么这么多人投入计算机视觉方向?我认为有以下几个原因:
入门容易
模型成熟
人才缺口大
热度高,名气大
其他的暂且不说,就着重的说一下入门容易和模型成熟这两点。
目前入门CV的常用套路就是:
看吴恩达《机器学习》《深度学习》课程,学一点机器学习的知识。
读几篇CV模型的文章,了解一下经典的Alexnet、R-CNN系列、YOLO等。
在github上找几个tensorflow、pytorch实现上述模型的开源代码。
下载VOC、ImageNet、COCO、kaggle等数据集。
按照开源代码中的Readme准备一下数据集,跑一下结果。
但好多初学者学了两个月、跑了几次结果后就认为已经入行CV了,其实不然,这里面有一个需要注意的问题:计算机视觉属于图像处理的范畴,而很多人却把它当成机器学习来看待。
然而实际上几乎80%的CV的从业者都没有从头至尾深入的学习图像处理方面的知识。
现在有了深度学习,不需要人为提取特征了,所以很多人不再关注图像底层的信息,而是直接越过这个根基去搭建模型,我觉得这是一个误区。
不同领域的图像,例如OCT、MR、遥感、自然图像等等,有着巨大的特征差异,对这些特征差异性都不了解,怎么在搭建模型之后对精度进行提升和改进呢?怎么在原来模型的基础上做一些改变呢?
因此,我认为好好学习一下图像预处理、后处理的知识对CV有着至关重要的作用,例如图像去噪、分割、增强、增广等等。
然而网上很多教程也比较碎片,鉴于此,整理一套卷积神经网络、目标检测、OpenCV,从检测模型教学逐步深入,帮你轻松掌握目标检测,轻松提升CV算法核心能力。
(资料内容过多,仅截取部分)
第一章:机器学习与计算机视觉
计算机视觉简介
技术背景
了解人工智能方向、热点
计算机视觉简介
cv简介
cv技能树构建
应用领域
机器学习的数学基础
线性与非线性变换
概率学基础
熵
kl散度
梯度下降法
计算机视觉与机器学习基础
图像和视频
图像的取样与量化
滤波
直方图
上采样
下采样
卷积
直方图均衡化算法
最近邻差值
单/双线性差值
特征选择与特征提取
特征选择方法
filter等
特征提取方法:PCA、LDA、SVD等
边缘提取
Canny
Roberts
Sobel
Prewitt
Hessian特征
Haar特征
相机模型
小孔成像模型
相机模型
镜头畸变
透视变换
计算机视觉与机器学习进阶
聚类算法
kmeans
层次聚类
密度聚类
谱聚类
坐标变换与视觉测量
左右手坐标系及转换
万向锁
旋转矩阵
四元数
三维计算机视觉
立体视觉
多视几何
SIFT算法
三维计算机视觉与点云模型
PCL点云模型
spin image
三维重构
SFM算法
图像滤波器
直通滤波
体素滤波
双边滤波器
条件滤波
半径滤波
图像增加噪声与降噪
OpenCV详解
OpenCV算法解析
线性拟合
最小二乘法
RANSAC算法
哈希算法
DCT算法
汉明距离
图像相似度
第二章:深度学习与计算机视觉
神经网络
深度学习与神经网络
深度学习简介
基本的深度学习架构
神经元
激活函数详解(sigmoid、tanh、relu等)
感性认识隐藏层
如何定义网络层
损失函数
推理和训练
神经网络的推理和训练
bp算法详解
归一化
Batch Normalization详解
解决过拟合
dropout
softmax
手推神经网络的训练过程
从零开始训练神经网络
使用python从零开始实现神经网络训练
构建神经网络的经验总结
深度学习开源框架
pytorch
tensorflow
caffe
mxnet
keras
优化器详解(GD,SGD,RMSprop等