本节课主要讲述了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学习笔记——计算机视觉的概述的更多相关文章

  1. OGG学习笔记01-基础概述

    OGG学习笔记01-基础概述 OGG(Oracle Golden Gate),最近几年在数据同步.容灾领域特别火,甚至比Oracle自己的原生产品DataGuard还要风光,主要是因为其跨平台.跨数据 ...

  2. spring学习笔记(一) Spring概述

    博主Spring学习笔记整理大部分内容来自Spring实战(第四版)这本书.  强烈建议新手购入或者需要电子书的留言. 在学习Spring之前,我们要了解这么几个问题:什么是Spring?Spring ...

  3. Flink学习笔记:Connectors概述

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  4. JDBC学习笔记(1)——JDBC概述

    JDBC JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据.JDBC代表Java数据库连接. JDBC库中所包含的API任务通常与数据库使用: 连接到数 ...

  5. Python学习笔记 :01概述

    Python基础 首先推荐学习Python基础的教程和书籍 视频教程推荐南京大学张莉老师在cousera上的教程用Python玩转数据 入门教程<Python基础教程> 数据挖掘教程< ...

  6. Spring学习笔记之Spring概述

    概述   Spring是一个java应用最广的开源框架,它是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Deve ...

  7. ASP.NET MVC4学习笔记之总体概述

    断断续续使用ASP.NET MVC框架也有一年多了,也算积累了一些经验,唉,一直想写一些笔记好好总结一下,人太懒不想动笔,今天终于决定开始.希望自己能坚持下去. 这篇文章大体介绍ASP.NET MVC ...

  8. XML学习笔记(1)--XML概述

    XML基本概念 XML—extensible Markup Language(可扩展标记语言) XML最基本的三个概念 1)XML语言---描述事物本身(可扩展) 2)XSL语言---展现事物表现形式 ...

  9. java核心技术学习笔记之一程序设计概述

    Java 核心技术之一程序设计概述 一.   Java语言的特点 简单行 :取经于C++,排除了C++不常用的指针.结构等,增加垃圾回收. 面向对象:与C++不同是单继承,但是可以继承多接口.完全面向 ...

随机推荐

  1. threading.local()源码分析

    前段时间写了个多线程的程序,了解到Python中有个与众不同的thread.local()方法,可以创建一个全局对象,各个线程可以用这个全局对象保存各自的局部变量,而在使用时不受其他线程的影响.于是抽 ...

  2. Java语法 [开发环境搭建]

    自行百度. https://www.baidu.com 自行必应 https://cn.bing.com

  3. spring的ioc与aop原理

    ioc(反向控制) 原理:    在编码阶段,既没有实例化对象,也没有设置依赖关系,而把它交给Spring,由Spring在运行阶段实例化.组装对象.这种做法颠覆了传统的写代码实例化.组装对象.然后一 ...

  4. Codeforces Round #436 A. Fair Game

    题意:给你n张卡片,上面写有数字,两个人选择两个数字,把相同数字的卡片都拿走,问能不能拿走所有的卡片并且两个人拿的卡片书相同. Examples Input 411272711 Output YES1 ...

  5. 使用JavaMail发送邮件-从FTP读取图片并添加到邮件正文发送

    业务分析: 最近工作需要,需要从FTP读取图片内容,添加到邮件正文发送.发送邮件正文,添加附件采用Spring的MimeMessageHelper对象来完成,添加图片也将采用MimeMessageHe ...

  6. [Solution] 973. K Closest Points to Origin

    Difficulty: Easy Problem We have a list of points on the plane. Find the K closest points to the ori ...

  7. 语义分割之Dual Attention Network for Scene Segmentation

    Dual Attention Network for Scene Segmentation 在本文中,我们通过 基于自我约束机制捕获丰富的上下文依赖关系来解决场景分割任务.       与之前通过多尺 ...

  8. 20175314 《Java程序设计》第一周学习总结

    20175314 <Java程序设计>第一周学习总结   教材学习内容总结       除了学院统一购买的<Java 2 实用教程(第5版)>我还在网上买了一本<Head ...

  9. JVM参数类型

    java -version看版本号(混合模式) java -Xint -version  解释执行 java -Xcomp -version 编译执行 XX参数是不稳定的用来JVM调优和DeBug B ...

  10. Apache无法正常启动(配置多个监听端口)

    Apache监测多个端口配置: 1.conf->extra->httpd-vhosts.conf  检查配置项是否写错 2.http.conf listen端口是否监听正确 3.环境变量中 ...