既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
本文只做一些在计算机视觉中应用的简单介绍,童叟无欺。
一、图像分类
a. 通用图像分类
将不同图片按照内容进行分类
b. 特定图像分类
特定识别人脸、某种动物、汽车等
1.1 人脸验证
下面是两种典型的人脸识别损失函数
1.1.1 DeepID2
上图左侧两个人比较像,都是侧脸,所以箭头短一点,下方一个是侧脸一个是正脸,而且光照也不相同,所以箭头长一点。我们希望经过训练后,上方的两张图片离得远一点(因为这是两个不同的人),而下方的图片近一些(同一个人)。
目标:当i,j身份相同时,
足够小,否则
其中
损失:
(一个minibatch至 少包含2个样本,
为标签。)
1.1.2 FaceNet
随计算一个人得图片做为Anchor,然后选择和他同一个人的图片和不同的人的图片做训练。 其它同上。
目标:
其中 a>0
损失:
(一个minibatch至 少包含3个样本)
1.1.3 人脸验证的其它损失函数
- SphereFace: Deep Hypersphere Embedding for Face Recognition, CVPR 2017
- NormFace: L2 Hypersphere Embedding for Face Verification, ACM MM 2017
- ArcFace: Additive Angular Margin Loss for Deep Face Recognition, CVPR 2019
二、物体检测
任务:找出图片中的物体和每个物体所在的位置。
怎么做这个任务?
找到包含物体的区域,用一个多分类器进行物体分类
怎么知道哪些区域包含物体?
找到很多候选区域,用一个二分类器进行区域分。
2.1 候选区域(Region Proposals)
指可能包含物体的区域、感兴趣区域 (Region of interest, ROI)。
挑选候选区域的多种选择
2.1.1 (C+1)-类的分类
上面提到简单检测物体的思路:
- 找到很多候选区域,用一个二分类器进行区域分类。
- 找到包含物体的区域,用一个多分类器(Softmax、SVM等)进行物体分类。
另外一种方法:
- 设有C个类别,加一个“背景”类
- 对每个区域用一个多分类器进行(C+1)-类的分类
- 对每个区域用(C+1)个二分类器进行分类
2.1.2 R-CNN
把每个候选框的图片剪贴出来,变成相同尺寸,经过一个同样的CNN进行一个二分类。这里用的上面提到的C+1类方法。SVM解决二分类问题。至于Bbox reg 用于解决回归问题,坐标定位。
步骤:
- 训练(或下载)ImageNet分类模型(如AlexNet)
- 针对检测微调(fine-tune)
- 提取特征
- 每个类别训练一个二分类SVM来为候选区域的特征进行分类
- 对每个类别,训练一个线性回归模型,将特征映射到一组偏移量,用以校正那些稍微有些误 差的候选区域
R-CNN有什么问题吗?
测试慢
- 需要对每个ROI跑一个完整的CNN前向过程。
非“端到端”过程
- 找候选区域, SVM和回归器基于CNN的特征进行处理。
- SVM和回归器不能更新CNN的特征。
更好的想法?
先在整张图上跑一个CNN的前向过程,然后将每个ROI映射到特征图上。
2.1.3 Fast R-CNN
即先把整张图做一个神经网络,先把特征取好,想要什么特征就取什么特征。
感兴趣区域池化(RoI Pooling)
可见上面提取的图片大小是不同的,这里做一下池化。
结果:
Fast R-CNN问题:
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
67216745)]
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!