1.图像分类 • 2.神经网络原理 • 1.卷积神经网络介绍 • 2.利用caffe搭建深度网络做图像分类

挑战:光照变化+形变。类内变化。

标签、预测函数,泛化能力。

如何提高泛化能力?需要用图像特征来描述图像。

颜色特征:直方图。

形状特征:PCA降维。

局部特征细节、纹理。

SIFT特征:局部,4*4区域的16格内,每个格子内算8维梯度,拼成128维特征。用于检测匹配。

HOG:检测目标形状。用于检测、跟踪。

LBP:对区域编码,适合处理人脸,对称的均匀的。可以有效捕捉响应。

Harr:滤波器。边缘。

VLFeat - Home http://www.vlfeat.org/

SVM分类:

最大化间隔:

CNN特征:大量图像中学习出来的特征。Imagenet1000类。

神经网络做图像分类:

CS231n Convolutional Neural Networks for Visual Recognition http://cs231n.github.io/convolutional-networks/

神经网络搭建:

神经网络的基本单元:神经元

激励函数:

卷积层:

卷积滤波的计算:

Stride = 1, pad =2,

输出的尺寸=(输入尺寸+2*pad-kernel_size)/stride + 1

卷积层可视化:

卷积提取的特征为什么有效果。传统的只是表层特征,深层特征无法获得。

池化层(pooling layer):平均池化、最大池化。特征亚采样。

特征表达更加紧凑,同时具有位移不变性。

全连接层:全连接权重是W。

损失函数:

• SIGMOID_CROSS_ENTROPY_LOSS

• SOFTMAX_LOSS

• EUCLIDEAN_LOSS

• Contrastive loss

• Triplet Loss

不同的task对应着不同的loss

交叉熵损失函数(SIGMOID_CROSS_ENTROPY_LOSS):

Sigmoid函数把负无穷到正无穷压缩到-1~+1。应用于二分类问题。

Softmax 损失函数(SOFTMAX_LOSS):多分类问题

欧式距离损失函数(EUCLIDEAN_LOSS):

对比损失函数(Contrastive loss):用于图像分类、检索。

训练 Siamese 网络,用来计算两个图像之间的相似度,image match。输入两张图。

Triplet loss:三元,输入三张图。

http://blog.csdn.net/tangwei2014/article/details/46788025

训练网络、测试

http://caffe.berkeleyvision.org/tutorial/forward_backward.html

Caffe 实现一个图像分类任务 • 安装教程 :

• Windows环境:http://www.cnblogs.com/trantor/p/4570097.html

• Linux环境:http://www.cnblogs.com/denny402/p/5067265.html

CV2——学习笔记-图像分类的更多相关文章

  1. CS231n学习笔记-图像分类笔记(下篇)

    原文地址:智能单元 K-Nearest Neighbor分类器 大家可能注意到了,为什么只用最相似的一张图片的标签来作为测试图像的标签呢?这不是很奇怪吗!是的,使用K-Nearest Neighbor ...

  2. CS231n学习笔记-图像分类笔记(上篇)

    原文地址:智能单元 图像分类:所谓图像分类问题,就是已有固定的分类标签集合,然后对于输入的图像按照标签类别,将其打上标签. 下面先介绍一下一个简单的图像如何利用计算机进行分类: 例子:以下图为例,图像 ...

  3. OpenCV之Python学习笔记

    OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...

  4. OpenCV 学习笔记 07 目标检测与识别

    目标检测与识别是计算机视觉中最常见的挑战之一.属于高级主题. 本章节将扩展目标检测的概念,首先探讨人脸识别技术,然后将该技术应用到显示生活中的各种目标检测. 1 目标检测与识别技术 为了与OpenCV ...

  5. OpenCV图像处理学习笔记-Day1

    OpenCV图像处理学习笔记-Day1 目录 OpenCV图像处理学习笔记-Day1 第1课:图像读入.显示和保存 1. 读入图像 2. 显示图像 3. 保存图像 第2课:图像处理入门基础 1. 基本 ...

  6. [DL学习笔记]从人工神经网络到卷积神经网络_1_神经网络和BP算法

    前言:这只是我的一个学习笔记,里边肯定有不少错误,还希望有大神能帮帮找找,由于是从小白的视角来看问题的,所以对于初学者或多或少会有点帮助吧. 1:人工全连接神经网络和BP算法 <1>:人工 ...

  7. opencv2.4.13+python2.7学习笔记--使用 knn对手写数字OCR

    阅读对象:熟悉knn.了解opencv和python. 1.knn理论介绍:算法学习笔记:knn理论介绍 2. opencv中knn函数 路径:opencv\sources\modules\ml\in ...

  8. Deep learning with Python 学习笔记(10)

    生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...

  9. OpenCV 学习笔记 04 深度估计与分割——GrabCut算法与分水岭算法

    1 使用普通摄像头进行深度估计 1.1 深度估计原理 这里会用到几何学中的极几何(Epipolar Geometry),它属于立体视觉(stereo vision)几何学,立体视觉是计算机视觉的一个分 ...

随机推荐

  1. Elasticsearch 入门,基本概念和操作

    基本概念 Node 与 Cluster Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例. 单个 Elastic 实例称为一个节点(nod ...

  2. 软工作业-----Alpha版本第一周小结

            软工作业-----Alpha版本第一周小结   Part1.第一周周计划记录 姓名 学号 周前计划安排 每周工作记录 自我打分 yrz(队长) 1417 1.进行任务分析 2.任务分配 ...

  3. 小知识——c++关于指针的理解

    参考文章: 简介: 指针可以简化c++编程,在一些任务中没有指针是无法完成的(动态内存分配) 使用 & 可以获得变量在内存中的地址: eg: #include <iostream> ...

  4. React 之 render props 的理解

    1.基本概念 在调用组件时,引入一个函数类型的 prop,这个 prop定义了组件的渲染方式. 2.回调渲染 回顾组件通信的几种方式 父-> 子 props 子-> 父 回调.消息通道 任 ...

  5. 调试错误,请回到请求来源地,重新发起请求。 错误代码 insufficient-isv-permissions 错误原因: ISV权限不足,建议在开发者中心检查对应功能是否已经添加

    接人H5手机网站支付宝支付时,已经将表单发给页面了,支付宝响应调试错误,请回到请求来源地,重新发起请求.错误代码 insufficient-isv-permissions 错误原因: ISV权限不足, ...

  6. TCP单线程实现并发

    服务端 from gevent import monkey;monkey.patch_all() import socket from gevent import spawn server = soc ...

  7. Vue中使用markdown

    markdown 是什么?? 1) 使用marked解析markdown文字 这个就只是解析markdown文字,并不能编辑,倒是可以从数据库中读取markdown文字进行解析,另外代码高亮还要另外解 ...

  8. LightOJ - 1078-Integer Divisibility(同余)

    链接: https://vjudge.net/problem/LightOJ-1078 题意: If an integer is not divisible by 2 or 5, some multi ...

  9. element案例大杂烩

    修改表头字体粗细? <el-table :data="list" header-row-class-name="tableHead"> 自定义即可 ...

  10. 银川区域赛现场赛 Pot!!【线段树】

    给定两个操作: MULTIPLY L R x  区间里都乘以一个数x MAX L R : 计算区间内一个2,3,5,7个数最大值. 思路:维护4个最大值.蓝瘦. /** 有 n 个数和 5 种操作 a ...