2017CS231n学习笔记——计算机视觉的概述
本节课主要讲述了cs231n课程的背景和计算机视觉的历史,也主要介绍了目前很重要的一个计算机视觉数据集——IMAGENET。
更多内容参考我的AI学习之路
课程简介
这门课程是由stanford大学计算机视觉李飞飞以及她的学生制作的,也叫做CS231n,是偏专业性的深度学习+计算机视觉课程。
目前计算机视觉越来越火,因为互联网中大量的信息都是通过图像或者视频来传播的,在计算机视觉中也涉及到了各个学科的内容,比如机器学习、信息检索、系统架构、图形学、算法、神经学、图像处理、自然语言处理、机器人等等。
计算机视觉的历史和发展
从微生物进化,到照相机,再到生物学对视觉的研究,1963年计算机视觉发表了第一篇论文《Block world》,其中视觉世界被简化为简单的几何形状。1966年MIT暑期开启了一个视觉项目,之后很多的视觉科学家开始加入到视觉研究中。David Marr在70年代写了一本视觉很有影响的书《VISION》,描述了视觉的抽象过程:构建草图、形成2.5D的分层、构建3D模型。70年代另一个非常重要的工作是提出一个通过简单的方块连接世界的问题。
60年代到70年代,解决物体识别非常困难,因为没有样本。1997年Berkeley的Jitendra Malik和他的学生Jianbo Shi完成了图像的分割Normalized Cut。。2001年Viola&Jones研究了Face Detection,Paul Viola基于AdaBoost进行实时面部检测,后来直接应用到了照相机中。。1999年 David Lowe剔除SIFT算法,用于物体的识别。。2006年Schmid&Ponce剔除空间金字塔 Spatial Pyramid Matching 。2005年Dalal&Triggs剔除HOG,histogram of gradients HoG。2009年Felzenswlb McAllester Ramanan剔除肢体模型
2006年,公开了一个数据集用于专门测试物体识别算法,PASCAL,Visual Object Challenge,有20个物体类别。同时,普林斯顿和斯坦福开始着手做了另一个数据集——IMAGENET,里面包含了22K个类别,14M的图片。每个图片中会包含很多物品,如果输出最大概率的5个物品,其中包含正确物品,就认为是识别成功,以此来衡量准确性。2012年IMAGENET的错误率明显下降,因为使用了卷积神经网络,从此深度学习开始大放光彩。
不过卷积网络实际上是90年代就提出的:
计算机视觉常用的数据集
PASCAL
PASCAL从2005年开始到2012年,每年都会推出一个新的数据集,这些数据除了05和06,其他的都是20个分类。
其中提供了几个方向的数据集:图像分类、图像分割、动作分类、人体主要部位识别等等。
IMAGENET
这个数据集是普林斯顿和斯坦福发起的,每年都会举办一次比赛——超越 ILSVRC,Beyond ImageNet Large Scale Visual Recogition Challenge。不过2017年貌似是最后一届了。
IMAGENET比赛中每年都会公开Top5的错误率,在2015年已经达到了3.57%,这些主要都是由于深度学习的发展,尤其是2012年的卷积网络,也使得深度学习开始流行起来。
也是在这个比赛中,各种深度学习网络模型出现:AlexNet,GoogleNet,ResNet等等。
2017CS231n学习笔记——计算机视觉的概述的更多相关文章
- OGG学习笔记01-基础概述
OGG学习笔记01-基础概述 OGG(Oracle Golden Gate),最近几年在数据同步.容灾领域特别火,甚至比Oracle自己的原生产品DataGuard还要风光,主要是因为其跨平台.跨数据 ...
- spring学习笔记(一) Spring概述
博主Spring学习笔记整理大部分内容来自Spring实战(第四版)这本书. 强烈建议新手购入或者需要电子书的留言. 在学习Spring之前,我们要了解这么几个问题:什么是Spring?Spring ...
- Flink学习笔记:Connectors概述
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...
- JDBC学习笔记(1)——JDBC概述
JDBC JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据.JDBC代表Java数据库连接. JDBC库中所包含的API任务通常与数据库使用: 连接到数 ...
- Python学习笔记 :01概述
Python基础 首先推荐学习Python基础的教程和书籍 视频教程推荐南京大学张莉老师在cousera上的教程用Python玩转数据 入门教程<Python基础教程> 数据挖掘教程< ...
- Spring学习笔记之Spring概述
概述 Spring是一个java应用最广的开源框架,它是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Deve ...
- ASP.NET MVC4学习笔记之总体概述
断断续续使用ASP.NET MVC框架也有一年多了,也算积累了一些经验,唉,一直想写一些笔记好好总结一下,人太懒不想动笔,今天终于决定开始.希望自己能坚持下去. 这篇文章大体介绍ASP.NET MVC ...
- XML学习笔记(1)--XML概述
XML基本概念 XML—extensible Markup Language(可扩展标记语言) XML最基本的三个概念 1)XML语言---描述事物本身(可扩展) 2)XSL语言---展现事物表现形式 ...
- java核心技术学习笔记之一程序设计概述
Java 核心技术之一程序设计概述 一. Java语言的特点 简单行 :取经于C++,排除了C++不常用的指针.结构等,增加垃圾回收. 面向对象:与C++不同是单继承,但是可以继承多接口.完全面向 ...
随机推荐
- Delphi RTTI的应用(一)
1.获取DbgrdiEH 某一个选项的属性.加载到ComBox procedure TForm1.FormCreate(Sender: TObject); var PropInfo: PPropInf ...
- SSH登录启用Google二次身份验证
一般来说,使用ssh远程登录服务器,只需要输入账号和密码,显然这种方式不是很安全.为了安全着想,可以使用GoogleAuthenticator(谷歌身份验证器),以便在账号和密码之间再增加一个验证码, ...
- STL里的内存池实现
这个貌似有点复杂,解决的主要问题 就是 减少 内存分配次数,减少用户态核心态切换中断次数,提高运行速度,预分配 和线程池一个道理,预分配 ////////////////////自由链表 union ...
- ArcGIS自定义工具箱-字段分割
ArcGIS自定义工具箱-字段分割 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 目的:用指定分割符分割字段, 用例:湖南省长沙市=>湖南/长沙 数据源: 使 ...
- python3安装xadmin出现 UnicodeDecodeError: 'gbk' codec can't decode byte 0xa4 in position 3444: illegal multibyte sequence
python3的环境安装xadmin时,直接pip install xadmin出现 Downloading xadmin-0.6.1.tar.gz (1.0MB) 100% |███████████ ...
- NYOJ737石子合并(二)-(区间dp)
题目描述: 有N堆石子排成一排,每堆石子有一定的数量.现要将N堆石子并成为一堆.合并的过程只能每次将相邻的两堆石子堆成一堆,每次合并花费的代价为这两堆石子的和,经过N-1次合并后成为一堆.求出 ...
- 引用计数——深拷贝&浅拷贝
下面是用代码实现: private: char *data; size_t use_count; public: //构造函数 String_rep() { if(str == NULL) { dat ...
- Java16-java语法基础——异常
Java16-java语法基础——异常 一.异常概念 1.异常:应用程序在运行过程中出现的错误或非正常的意外情况,即虚拟机的通常操作中可能遇到的异常,是一种常见的运行错误. 2.原因:数组越界.空指针 ...
- java【基础】多态
new 接口就会发生很有意思的现象 public class InerClassDemo { public static void main(String[] args) { // TODO Auto ...
- RNA-seq差异表达基因分析之TopHat篇
RNA-seq差异表达基因分析之TopHat篇 发表于2012 年 10 月 23 日 TopHat是基于Bowtie的将RNA-Seq数据mapping到参考基因组上,从而鉴定可变剪切(exon-e ...