cs231n学习笔记(一)计算机视觉及其发展史
在网易云课堂上学习计算机视觉经典课程cs231n,觉得有必要做个笔记,因为自己的记性比较差,留待以后查看。
每一堂课都对应一个学习笔记,下面就开始第一堂课。
这堂课主要是回顾了计算机视觉的起源及其后来的发展,有助于学者理清计算机视觉的研究主题和发展脉络。
首先介绍了计算机视觉的相关领域,因为它不仅仅关乎计算机科学,还涉及生物,物理,工程等等学科,是一门综合性很强的学科。
接着从物种大爆炸讲起
推测生物有了视觉后极大地扩张了活动区域,带来了生物的蓬勃发展。
接着讲计算机视觉在近现代的发展,这里省略,直接跳到近些年有重要意义的学术成果。
2001年Viola&Jones推出人脸识别算法haar检测器
1999年David Lowe推出sift特征算法
2005年和2009年分别出现HOG特征算法和DPM算法
除了算法上的改进,数据规模的增大也是推动计算机视觉发展的主因,甚至到了深度学习时代,是各种数据集推动着算法的演化。
以下分别是PASCAL VOC和ImageNet,PASCAL 包含20类物体,而ImageNet则有惊人的22000类物体,图片数量达到1千4百万张。
那么计算机视觉究竟要解决哪些问题,比较重要的几个问题包括图像分类,
目标识别,图像描述,图像分割,场景理解等,其中,场景理解可以说是终极目标,
自然也是最具挑战性的问题。
回到这门课本身,CNN对于计算机视觉有何帮助,可以说进入人工智能时代,CNN就是解决计算机视觉的全部。不过CNN的出现可是有些年头了,早在1998年,Lecun就成功地利用CNN来识别邮政数字了,不过直到2012年Alexnet的出现引发了这一潮流。下面左图就是二者的网络结构,可以看出并没有大的改变,所以不得不归功于今时今日计算机的性能和数据集的出现。右图是在ImageNet数据集上的历年冠军,从2012年往后,基本就是CNN的天下了。
最后是一些基本要求吧,python,线性代数,微积分,还有CS229(机器学习)的基本知识,都要掌握。
cs231n学习笔记(一)计算机视觉及其发展史的更多相关文章
- 【转】cs231n学习笔记-CNN-目标检测、定位、分割
原文链接:http://blog.csdn.net/myarrow/article/details/51878004 1. 基本概念 1)CNN:Convolutional Neural Networ ...
- CS231n学习笔记-图像分类笔记(上篇)
原文地址:智能单元 图像分类:所谓图像分类问题,就是已有固定的分类标签集合,然后对于输入的图像按照标签类别,将其打上标签. 下面先介绍一下一个简单的图像如何利用计算机进行分类: 例子:以下图为例,图像 ...
- CS231n学习笔记-图像分类笔记(下篇)
原文地址:智能单元 K-Nearest Neighbor分类器 大家可能注意到了,为什么只用最相似的一张图片的标签来作为测试图像的标签呢?这不是很奇怪吗!是的,使用K-Nearest Neighbor ...
- cs231n学习笔记(二)图像分类
图像分类可说是计算机视觉中的基础任务同时也是核心任务,做好分类可为检测,分割等高阶任务打好基础. 本节课主要讲了两个内容,K近邻和线性分类器,都是以猫的分类为例. 一. K近邻 以猫的分类为例,一张含 ...
- 斯坦福CS231n学习--初识
课程主页:CS231n: Convolutional Neural Networks for Visual Recognition 关注其:Course Project主页 视频学习:云课堂 斯坦福C ...
- Python学习笔记—Python基础1 介绍、发展史、安装、基本语法
第一周学习笔记: 一.Python介绍 1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...
- 【cs231n】神经网络学习笔记3
+ mu) * v # 位置更新变了形式 对于NAG(Nesterov's Accelerated Momentum)的来源和数学公式推导,我们推荐以下的拓展阅读: Yoshua Bengio的Adv ...
- 【cs231n】神经网络学习笔记1
神经网络推荐博客: 深度学习概述 神经网络基础之逻辑回归 神经网络基础之Python与向量化 浅层神经网络 深层神经网络 前言 首先声明,以下内容绝大部分转自知乎智能单元,他们将官方学习笔记进行了很专 ...
- CS231n课程笔记翻译9:卷积神经网络笔记
译者注:本文翻译自斯坦福CS231n课程笔记ConvNet notes,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客和猴子翻译完成,堃堃和李艺颖进行校对修改. 原文如下 内容列 ...
随机推荐
- HashMap源码阅读与解析
目录结构 导入语 HashMap构造方法 put()方法解析 addEntry()方法解析 get()方法解析 remove()解析 HashMap如何进行遍历 一.导入语 HashMap是我们最常见 ...
- Knowledge Point 20180506 深究Java的跨平台特性
本章主题:从骨子里看Java的跨平台;本文内容部分摘自https://www.cnblogs.com/roger-yu/p/5827452.html 有过基础Java知识的开发人员都知道Java是跨平 ...
- 推荐一个Oracle数据库学习网站
推荐一个我个人的Oracle数据库学习网站,比较系统性的整理,会持续更新的网站.网址: Oracle基础教程: http://www.oraclejsq.com/article/010100110.h ...
- 19-3-13Python中的函数
def:关键字.定义.声明一个函数. def make():定义函数'make' *注:定义后的函数不调用是不执行的 函数的调用: 函数名+()==函数的调用 def addnum(): a = in ...
- css动画Demo---水波动画和边框动画
先上效果图: 水波动画: 边框动画: 1.水波动画 实现代码 <!DOCTYPE html> <html lang="en"> <head> & ...
- python面试题之基础
一.基础语法 1. 输入与输出 1.1 代码中要修改不可变数据会出现什么问题? 抛出什么异常? (2018-3-29-lxy) 代码不会正常运行,抛出 TypeError 异常. 1.2a=1,b=2 ...
- maven添加本地jar
maven有时需要添加了一些本地jar,记录下流程 1.在项目名下创建一个文件夹,起名为lib吧,放要的jar放进去 2.然后打开jar在的路径,打开命令窗口,执行 mvn install:insta ...
- Python学习:19.Python设计模式-单例模式
一.单例模式存在的意义 在这里的单例就是只有一个实例(这里的实例就像在面向对象的时候,创建了一个对象也可以说创建了一个实例),只用一个实例进行程序设计,首先我们可以了解一下什么时候不适合使用单例模式, ...
- C# 对DataTable的简单操作
//更改列名 dt.Columns["原来的列名"].ColumnName="新的列名"; //移除列 dt.Columns.Remove("列名&q ...
- spark执行命令 监控执行命令
#!/bin/bash #/usr/hdp/current/flume-server/bin/flume-ng agent -c conf/ -f /usr/hdp/current/flume-ser ...