![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机视觉
ukuu
这个作者很懒,什么都没留下…
展开
-
卷积到底是如何操作的?1x1卷积?参数如何计算?
目录卷积到底是如何操作的filter的参数如何计算卷积的特性1x1的卷积核卷积到底是如何操作的1. 对于一个特征图(如灰度图) 卷积就是对应元素乘积的求和,然后在加上一个非线性函数。但是上面的例子只有一个输入channel和一个卷积核,当有很多channel和多个卷积核时,又改如何计算呢?2. 多个特征图如何和多个filter...原创 2018-08-23 10:31:59 · 5713 阅读 · 5 评论 -
一文看懂CNN经典网络的进化
目录LeNet(1998)AlexNet(2012)ZF Net (2013)VGG(2014)Network In Network(2014)Inception (GoogLeNet) (2015)ResNet(2015) DenseNet(2017)LeNet(1998)LeNet-5,这个开创性的模型很大程度上引...原创 2018-09-10 20:56:18 · 1842 阅读 · 0 评论 -
【目标检测】SSD算法—-模型结构的详解及Python源码分析
前言最近在研究SSD算法,感觉SSD是继Faster RCNN之后的最具有开创性的工作,SSD可以和Faster-RCNN的精度与Yolo的速度相媲美,现在很多公司还在应用SSD一类的算法,有必要好好钻研一下。因此准备写一些对SSD的算法理解,以及一些关键源码的分析。刚开始啃这一块,如果有问题,辛苦大家指出来。SSD模型结构先给出经典的网络结构图,以ssd300为例可以...原创 2018-09-03 20:01:54 · 9257 阅读 · 9 评论 -
【目标检测】SSD算法--损失函数的详解(tensorflow实现)
SSD的损失函数包含用于分类的log loss 和用于回归的smooth L1,并对正负样本比例进行了控制,可以提高优化速度和训练结果的稳定性。总的损失函数是分类和回归的误差的带权加和。α表示两者的权重,N表示匹配到default box的数量1 loc的损失函数:smooth L1 y_true:shape: (batch_size,n_boxes,4) ,最后一个维度...原创 2018-09-03 23:37:38 · 19698 阅读 · 2 评论 -
ResNet学习笔记
ResNet的提出随着网络的加深,出现了训练集准确率下降的现象,我们可以确定这不是由于Overfit过拟合造成的(因为过拟合的情况训练集应该准确率很高),对于这种深度网络的退化问题,限制了模型的深度。ResNet的出现解决了这一问题(对于是否解决了,也有人提出质疑),因此是继AlexNet之后的有一个里程碑。作者针对这个问题提出了一种全新的网络,叫深度残差网络,它允许网络尽可能的加深,其中...原创 2018-09-10 21:33:15 · 835 阅读 · 0 评论 -
Ubuntu下配置opencv及opencv_contrib
0 前言最近的项目需要,经常配置opencv,在window,ubuntu,以及阿里云服务器上都配置过,遇到过很多问题,这里记录一下,给后面的朋友指个路1 安装环境sudo apt-get install build-essentialsudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev lib...原创 2019-04-19 11:04:20 · 3638 阅读 · 1 评论 -
关于numpy中的axis和shape的一些思考
首先对于axis的理解对于高维的矩阵,对于新手来说,分析它的axis,可能会有些困难。但是不用担心,看完这篇帖子,你应该就明白了一句话,看axis就看是几级中括号最外侧的中括号是一级中括号,表示axis=0里面一层的中括号是二级中括号,表示axis=1在一级中括号的眼里(axis=0),他看不见两个二级中括号中间的内容。上式的在axis=0方向的和在二级...原创 2019-05-06 17:57:42 · 488 阅读 · 0 评论 -
BP神经网络--纯Python实现
RequirementsNumpy keras(只用来导入dataset) sklearn(只用来导入dataset)实现的功能是多分类任务,最后在mnist上实验了一下导入Mnist数据import numpy as npfrom keras.datasets import mnistfrom sklearn.preprocessing import OneHotEnco...原创 2018-09-02 20:02:41 · 942 阅读 · 0 评论 -
选择性搜索 Selective Search -- 算法详解+源码分析
目录1 前言2 Selective Search算法3 Python源码分析 1 前言 在目标检测时,为了定位到目标的具体位置,通常会把图像分成许多子块(sub-regions / patches),然后把子块作为输入,送到目标识别的模型中。selective search就是一种选择子块的启发式方法。 2 Selective Search算法 主要思路:输入一...原创 2018-08-04 16:48:21 · 13238 阅读 · 4 评论 -
R-CNN网络结构讲解
结构 第一步 : 生成候选区域 -- Selective Search(不理解可以看这里Selective Search)输入500x500的图片 数量:2000第二步:CNN提取区域特征图像处理 将候选框scale到227x227的大小 对区域进行些许扩大以包含少量上下文信息(将获得区域框向四周扩大一些) 训练: 有监督预训练:训练网络参数 样...原创 2018-08-16 22:29:48 · 10988 阅读 · 0 评论 -
SPPNet算法详解
1.RCNN的缺点 CNN要求输入图片尺寸具有统一的尺寸 不同尺度和长宽比的区域被变换到相同大小 裁剪会导致信息丢失或引入过多背景),缩放会导致物体变形 2.SPPNet结构应该是一目了然吧 3. 关于SPP的理解由于论文中用的基础网络ZF-5中含有全连接层,这就要求全连接层输入的尺寸必须一致,如RCNN中将每个区域框送入CNN网络前,需要调整为22...原创 2018-08-16 22:58:41 · 2295 阅读 · 0 评论 -
CNN卷积神经网络的前向传播
CNN的前向传播1. 输入层到卷积层的前向传播 假设输入的是RGB的彩色图像,因此输入X是3个矩阵,分别对应了R,G,B的矩阵。因为输入层是三个维度,因此卷积层一个filter的维度也是3.a表示当前层的输出,上标表示层数。σ表示激活函数,一般是Relu, *表示卷积操作,W表示卷积核可以发现,CNN和标准的BPNN的前向传播很相似,只是,CNN不只是矩阵的乘积...原创 2018-08-26 16:13:47 · 1791 阅读 · 0 评论 -
keras如何编写自定义的层
有时keras内置的层无法满足自己的要求时,就需要自己编写,比如自定义一个损失函数 1. 自定义层的框架结构Keras2的层应该具有的框架结构,要定制自己的层,你需要实现下面三个方法: build(input_shape):这是定义权重的方法,可训练的权应该在这里被加入列表`self.trainable_weights中。其他的属性还包括self.non_trainabe_...原创 2018-08-30 16:22:35 · 3469 阅读 · 1 评论 -
为何含有全连接层的网络,需要固定输入图片大小?
前言在图像识别,目标检测等任务中经常用到预训练的模型,比如在VGG16模型结构(除去最后一层)的基础上加上多个softmax层用来分类。在SSD中用预训练的VGG16和ResNet50作为特征提取层。 当你用到包含全连接层的预训练模型时,就需要固定固定输入图片的大小。池化层需要经过Flatten压扁之后,才能和全连接成相连。如上图,经过最后一个池化层和Flatten后的输出...原创 2018-08-28 14:23:05 · 12118 阅读 · 1 评论 -
一文看懂梯度下降算法的演化(含代码实现)
目录0 前言1 Gradient descent variants梯度下降的变体1.1 Batch gradient descent批量梯度下降,又名 Vanilla gradient descent1.2 Stochastic gradient descent 随机梯度下降1.3 Mini-batch gradient descent 小批量梯度下降2 SGD的缺点3...原创 2018-08-29 16:10:24 · 4693 阅读 · 4 评论 -
从查准率、查全率到ROC、AUC (含Python实现)
目录前言:先看一个经典的例子:1 查准率与查全率2 F1_score3 ROC及代码实现4 AUC 及代码实现4.1 AUC简介4.2 AUC的几何意义和概率意义4.3 AUC判断分类器(预测模型)优劣的标准:4.4 AUC的计算方法:前言:先看一个经典的例子:目的:设计一个分类器类分类患者的肿瘤是不是良性的数据集:我们有10000个样本,其中9...原创 2018-08-19 19:42:02 · 4989 阅读 · 0 评论 -
多任务学习算法及代码实现
目录多任务学习 :共享相关任务表征更多的应用举例网络结构keras实现多任务学习(硬共享机制)多任务学习需要准备的数据不太一样多任务学习 :共享相关任务表征定义:基于共享表示(shared representation),把多个相关的任务放在一起学习的一种机器学习方法。也就是说,基于某些层的参数共享,训练几个具有相似性的任务,然后给出每个任务的分类结果。举例:比...原创 2018-08-21 23:58:14 · 13315 阅读 · 6 评论 -
图像检索技术综述(从SIFT到CNN)
最近开始学习图像检索,看到一篇2015年写的不错的综述,介绍了从SIFT到CNN的技术发展。看到网上也有一些翻译版本,但是明显的机器翻译,直接复制粘贴,很多专有词汇没有翻译到位。所以为了自己学习,也为了方便后面的同学阅读,斗胆翻译了一下。这篇综述比较长,所以分为三个部分。本文是第一个部分,SIFT和CNN的综述SIFTMeets CNN:A Decade Survey of Instan...原创 2019-05-07 14:28:43 · 5154 阅读 · 0 评论