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++不同是单继承,但是可以继承多接口.完全面向 ...
随机推荐
- postgresql数据库varchar、char、text的比较
名字 描述character varying(n), varchar(n) 变长,有长度限制character(n), char(n) 定长,不足补空白text 变长,无长度限制简单来说,varcha ...
- 使用List需要注意的点
目录 1. 概述 2. Arrays.asList(); 2-1. 产生不可操作的集合 2-2. 需要传入对象数组而不是基本类型数组 3. arrayList.subList(); 3-1. subL ...
- 常用的stm32库函数
//初始化的方式:先定义初始化机构体.再打开时钟使能.在对每一组GPIO口进行初始化. GPIO_InitTypeDef LED_GPIO; RCC_APB2PeriphClockCmd(RCC_AP ...
- TCP/UDP 常用端口列表
计算机之间依照互联网传输层TCP/IP协议不同的协议通信,都有不同的对应端口.所以,利用短信(datagram)的UDP,所采用的端口号码不一定和采用TCP的端口号码一样.以下为两种通信协议的端口列表 ...
- cdnbest独立主控配置自定义错误页面
注:自定义错误的域名最好配置ssl,不配碰到有使用ssl的域名,错误码显示就会有问题 (1)登陆管理后台点区域列表-->配置-->错误url 解析一个域名到你的cdn主控,然后输入这个ur ...
- Socket 多线程编程
前面一片学习了TCP/IP的基础网络编程,并给出了简单的服务端与客户端通信交互的例子.还介绍了UPC的通信例子. 这次学习TCP/IP的多线程编程.因为涉及到TCP/IP一般都是多线程,服务端会一直监 ...
- stark组件开发之分页
""" 分页组件 """ class Pagination(object): def __init__(self, current_page ...
- 杨其菊201771010134《面向对象程序设计(Java)》第三周学习总结
<面向对象程序设计(Java)>第三周学习总结 第一部分:理论知识 这周课程没有新进度,由于感觉对基础语法的不熟悉,复习了一遍前三章的细碎知识,学到一些之前不知道的原理: 1.计算机高级语 ...
- Linux mail 查看
Linux 下查看mail的命令参数: 一般系统收到邮件都会保存在“/var/spool/mail/[linux username]"文件中,在Linux中输入mail,就进入了收件箱,并显 ...
- 主机性能监控之wmi 获取磁盘信息
标 题: 主机性能监控之wmi 获取磁盘信息作 者: itdef链 接: http://www.cnblogs.com/itdef/p/3990541.html 欢迎转帖 请保持文本完整并注明出处 仅 ...