图像处理
纸上得来终觉浅~
周围的人都比你厉害,你才会慢慢变强
展开
-
Cascade-RCNN
论文链接:https://arxiv.org/abs/1712.00726代码链接:https://github.com/zhaoweicai/cascade-rcnn特点:级联不同IOU阈值(界定正负样本)的输出,使不同IOU值检测与其相对应的IOU值的目标Cascade RCNN的中心思想:使用不同的IOU阈值划分正负样本,让每一个stage的detector都专注于检测...转载 2019-10-15 15:03:27 · 433 阅读 · 0 评论 -
全卷积神经网络图像分割(U-net)
Unet网络结构很多分割网络都是基于FCNs做改进,包括Unet。由于网络结构像U型,所以叫Unet网络。Unet包括3部分:下采样:特征提取、池化实现 上采样:每上采样一次,就和特征提取部分对应的通道数相同尺度融合,做多尺度预测,但是融合之前要将其crop。 softmax:输出类别数量的特征图后,使用激活函数softmax将特征图转换为概率图个人认为改进FCN之处有:...原创 2019-10-12 16:59:23 · 2123 阅读 · 0 评论 -
语义分割评估指标MIOU
1、MIOU定义Mean Intersection over Union(MIoU,均交并比):为语义分割的标准度量。其计算两个集合的交集和并集之比,在语义分割的问题中,这两个集合为真实值和预测值。在每个类上计算IoU,之后平均。计算公式如下:i表示真实值,j表示预测值,p_{ij}pij表示将i预测为j。2、直观理解MIoU:计算两圆交集(橙色部分)与两圆并...转载 2019-10-12 14:52:00 · 7231 阅读 · 3 评论 -
图像处理之双线性插值计算
首先,在X方向上进行两次线性插值计算,然后在Y方向上进行一次插值计算。直接整理一步计算:f(i+u,j+v) = (1-u)(1-v)f(i,j) + (1-u)vf(i,j+1) + u(1-v)f(i+1,j) + uvf(i+1,j+1)...转载 2019-10-12 13:53:06 · 700 阅读 · 0 评论 -
NMS原理及代码实现
1、NMS原理Non-Maximum-Suppression(非极大值抑制):当两个box空间位置非常接近,就以score更高的那个作为基准,看IOU即重合度如何,如果与其重合度超过阈值,就抑制score更小的box,因为没有必要输出两个接近的box,只保留score大的就可以了。应用:在目标检测过程中,(Faster-RCNN / YOLOv2)采用NMS来消除冗余的boxes,最终...转载 2019-10-12 13:09:38 · 2300 阅读 · 2 评论 -
神经网络训练技巧
1、数据增强2、数据预处理3、学习率衰减4、在预训练模型上微调5、用relu激活函数代替sigmoid6、正则化(L1正则、L2正则、dropout)7、注意类别不均衡数据(用带权重的损失函数、batch-size balanced sampling)8、resize图片:center-crop(原图短边等于网络输入size,长边等比例缩放)9、多任务学习multi...原创 2019-09-01 17:28:51 · 308 阅读 · 0 评论 -
LBP算法(人脸识别特征提取)
LBP(Local Binary Patterns,局部二值模式)是提取局部特征作为判别依据的。LBP方法显著的优点是对光照不敏感,但是依然没有解决姿态和表情的问题。不过相比于特征脸方法,LBP的识别率已经有了很大的提升。在[1]的文章里,有些人脸库的识别率已经达到了98%+。1、LBP特征提取最初的LBP是定义在像素3x3邻域内的,以邻域中心像素为阈值,将相邻的8个像素的灰度值与其...转载 2019-08-22 14:44:41 · 7941 阅读 · 0 评论 -
人脸识别算法DeepFace论文解读
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/hh_2018/article/details/80576290参考地址:https://blog.csdn.net/guoyunfei20/article/details/78196286论文题目:DeepFace: Clos...转载 2019-08-22 15:08:25 · 5411 阅读 · 0 评论 -
人脸识别算法FaceNet论文解读
版权声明:本文为CSDN博主「张雨石」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/stdcoutzyx/article/details/46687471参考文章:https://www.cnblogs.com/lijie-blog/p/10168073.html参考文章:https://blog....转载 2019-08-22 17:10:49 · 1913 阅读 · 0 评论 -
图像分类算法DenseNet论文解读
论文名称:Densely Connected Convolutional Networks论文地址:https://arxiv.org/pdf/1608.06993.pdf如果说ResNet扩展了网络的深度,GoogLeNet扩展了网络的宽度,那么DenseNet就是利用特征图的重用。一、论文解读1、DenseNet介绍传统的具有L层的卷积网络在每一层和它的下一...原创 2019-08-21 22:30:15 · 1520 阅读 · 0 评论 -
GoogLeNet Inception v1-v4 简单对比
本文只对Inception的4个版本做了简单对比,详细内容参考:https://blog.csdn.net/qq_32172681/article/details/999773041、inception v1inception v1提出了inception模块,用1*1卷积实现通道降维和增维,增加了网络深度和宽度。2、inception v2inception v2...原创 2019-08-21 21:11:29 · 403 阅读 · 0 评论 -
图像分类算法GoogLeNet论文解读(Inception v1、v2、v3、v4)
[v1] Going Deeper with Convolutions, 6.67% test error, http://arxiv.org/abs/1409.4842[v2] Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift, 4.8% test error...转载 2019-08-21 17:49:31 · 3612 阅读 · 0 评论 -
对抗神经网络CycleGAN论文解读
论文题目:Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks论文地址:https://arxiv.org/pdf/1703.10593.pdf本文提出了一种在没有成对图像的情况下,学习将图像从源域x转换为目标域y的方法。它使用两个镜像对称的GAN,构成了一个环形网络,两个GAN...原创 2019-08-16 16:30:14 · 1983 阅读 · 0 评论 -
图像分类算法ResNet论文解读
论文名称:Deep Residual Learning for Image Recognition论文地址:https://arxiv.org/pdf/1512.03385.pdf代码地址:https://github.com/tensorflow/tensorflow/blob/master/tensorflow/contrib/slim/python/slim/nets/resnet_...原创 2019-08-21 13:14:09 · 3913 阅读 · 0 评论 -
常用论文地址整理
1、目标检测R-CNN: https://arxiv.org/abs/1311.2524Fast R-CNN: https://arxiv.org/abs/1504.08083Faster R-CNN: https://arxiv.org/abs/1506.01497Mask R-CNN: https://arxiv.org/abs/1703.068702、对抗生成网络...原创 2019-08-25 15:00:57 · 633 阅读 · 0 评论 -
目标检测算法Faster R-CNN论文解读
论文题目:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks论文地址:https://arxiv.org/abs/1506.01497代码地址:https://github.com/endernewton/tf-faster-rcnn或者https://github.com/dB...原创 2019-08-12 17:08:20 · 1907 阅读 · 0 评论 -
2018年视觉所有干货博文的分类汇总
https://blog.csdn.net/jacke121/article/details/85568966转载 2019-08-22 17:39:58 · 101 阅读 · 0 评论 -
one-stage和two-stage目标检测算法
AI 科技评论按:本文作者 Ronald,首发于作者的知乎专栏「炼丹师备忘录」,AI 科技评论获其授权转发。目前目标检测领域的深度学习方法主要分为两类:two stage 的目标检测算法;one stage 的目标检测算法。前者是先由算法生成一系列作为样本的候选框,再通过卷积神经网络进行样本分类;后者则不用产生候选框,直接将目标边框定位的问题转化为回归问题处理。正是由于两种方法的差异,在性能上...转载 2019-08-26 22:41:31 · 8880 阅读 · 2 评论 -
RCNN、Fast RCNN、Faster RCNN对比
RCNN、Fast RCNN、Faster RCNN详解参考以下文章:RCNN:https://blog.csdn.net/qq_32172681/article/details/99105617Fast RCNN:https://blog.csdn.net/qq_32172681/article/details/99194233Faster RCNN:https://blog.csd...原创 2019-08-27 10:26:17 · 5763 阅读 · 1 评论 -
空洞卷积(dilated convolution)理解
Dilated/Atrous Convolution(中文叫做空洞卷积或者膨胀卷积) 或者是 Convolution with holes 从字面上就很好理解,是在标准的 convolution map 里注入空洞,以此来增加 reception field。相比原来的正常convolution,dilated convolution 多了一个 hyper-parameter 称之为 dilati...转载 2019-10-09 13:05:05 · 1147 阅读 · 0 评论 -
卷积和反卷积实现
卷积卷积计算过程如下:将输入矩阵X展开成:3025*363将权重矩阵W展开成:96*363卷积操作就是权重矩阵乘以输入矩阵np.dot(W,X):[96,363]*[363,3025] = [96,3025],再reshape成[55,55,96]反卷积卷积的前向和反向计算分别是:C和CT反卷积的前向和反向计算分别是:CT和(CT)T...转载 2019-10-09 11:23:57 · 244 阅读 · 1 评论 -
深度学习中图像预处理为什么要减去均值?
在图片进行训练前,都要将图像减去imagenet的均值,为什么要有这一步呢?查阅了很多网上的资料,发现去均值是为了对图像进行标准化,可以移除图像的平均亮度值 (intensity)。很多情况下我们对图像的照度并不感兴趣,而更多地关注其内容,比如在对象识别任务中,图像的整体明亮程度并不会影响图像中存在的是什么物体。这时对每个数据点移除像素的均值是有意义的。而另一个资料显示在每个样本上减去数据...转载 2019-10-09 10:24:08 · 1809 阅读 · 0 评论 -
将车辆数据集kitti转换为VOC格式(车辆检测)
Kitti数据集的下载只需要一个图片集(12G)和标注文件即可(data_object_image_2.zip、data_object_label_2.zip)。下载地址:http://dataset.f3322.net:666/share/kitti/1、VOC格式数据集介绍由于faster-rcnn使用的是VOC格式的数据集,所以我们要将kitti数据集的格式改成VOC的格式...转载 2019-09-12 16:59:53 · 6209 阅读 · 2 评论 -
下载coco数据集
1、下载 training, validation, test data 和VOCdevkit(pip install)wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tarwget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCt...原创 2019-09-12 12:17:50 · 1488 阅读 · 0 评论 -
记录把电脑内存用炸的一次经历~
我一共有12568张图片数据,长度为1600,宽度为256,因为标签数据使用Run-length encoding进行编码,为了对标签数据进行预处理,每个数据需要用1600*256的int32数组来保存,我一次性处理,使用了12568*1600*256*4 = 20591411200 = 19G的内存,而我的电脑是8G,所以MemoryError啦,代码如下:于是,我改成,每次处理完一张图...原创 2019-09-05 16:43:31 · 343 阅读 · 0 评论 -
PyramidROIAlign代码实现
def log2_graph(x): """Implementation of Log2. TF doesn't have a native implementation.""" return tf.log(x) / tf.log(2.0)class PyramidROIAlign(KE.Layer): """Implements ROI Pooling on m...原创 2019-09-03 10:38:48 · 772 阅读 · 1 评论 -
滑动窗口在原图上滑动的裁剪结果代码实现
def clip_boxes_graph(boxes, window): """ boxes: [N, (y1, x1, y2, x2)] window: [4] in the form y1, x1, y2, x2 """ # Split wy1, wx1, wy2, wx2 = tf.split(window, 4) y1, x1, y...原创 2019-09-03 10:34:13 · 1246 阅读 · 0 评论 -
交并比IOU计算代码实现
def overlaps_graph(boxes1, boxes2): """Computes IoU overlaps between two sets of boxes. boxes1, boxes2: [N, (y1, x1, y2, x2)]. """ # 1. Tile boxes2 and repeat boxes1. This allows us t...原创 2019-09-03 10:32:15 · 806 阅读 · 0 评论 -
YOLO1、YOLO2、YOLO3对比
YOLO详解参见地址:YOLO1:https://blog.csdn.net/qq_32172681/article/details/99418000YOLO2:https://blog.csdn.net/qq_32172681/article/details/99482044YOLO3:https://blog.csdn.net/qq_32172681/article/details...原创 2019-08-27 17:40:26 · 10992 阅读 · 0 评论 -
目标检测算法SSD论文解读
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/jy001227801/article/details/80388192参考链接:https://blog.csdn.net/a8039974/article/details/77592395论文题目:SSD: Single ...转载 2019-08-15 14:13:27 · 2617 阅读 · 0 评论 -
图像分类算法VGGNet论文解读
论文名称:VeryDeepConvolutional Networks ForLarge-Scale Image Recognition论文地址:https://arxiv.org/pdf/1409.1556.pdfVGGNet的主要贡献是,研究了卷积网络深度对大规模图像识别中卷积网络精度的影响,使用3×3卷积滤波器,将网络深度推至16-19层,显著地提高了分类性能。...原创 2019-08-20 15:17:13 · 1094 阅读 · 0 评论 -
图像识别模型代码解析
本文对21个项目第三章图像识别模型的主要源码进行解析,已在代码中注释。一共三个文件:1、创建自己的数据集 satellite.pyfrom __future__ import absolute_importfrom __future__ import divisionfrom __future__ import print_functionimport osimport ...原创 2019-07-06 14:34:30 · 1332 阅读 · 0 评论 -
CycleGAN 与非配对图像转换
本文介绍CycleGAN原理以及在tensorflow中实现。一、CycleGAN 的原理cGAN 和对应的 pix2pix 模型,都能够解决一类“图像翻译 ”问题 。 但是 pix2pix 模型要求训练样本必须是“严格成对”的,这种样本往往比较难以获得,CycleGAN 不必使用成对样本也可以进行“图像翻译”。CycleGAN与 pix2pix的不同点在于,它可以利用不成对数据训练...原创 2019-06-24 16:22:35 · 2668 阅读 · 0 评论 -
词嵌入
所谓词嵌入,通俗来讲,是指将一个词语(word)转换为一个向量 (vector)表示, 所以词嵌入有时又被叫作“word2vec"。在CharRNN中,输入序列数据的每一步是一个字母 。 具体来说,先对这些字母使用了独热编码再输入到 RNN 中,在实际应用中 , 每一步只输入一个字母显然是不太合适的 , 更加高效的方法是每一步输入一个单词 。如果还继续使用独热表示,那么每一步输入的向量维数会非常大...原创 2019-06-27 11:01:14 · 17271 阅读 · 2 评论 -
将图像转换为文字
所谓 Image Caption,是指从图片中自动生成一段描述性文字。要完成 Image Caption,机器不仅要能检测出图像中的物体,而且要理解物体之间的相互关系,最后还要用合理的语言表达出来。本文介绍 Image Caption 的几篇经典的论文,接着会介绍 Google 公司官方的 TensorFlow 实现 。一、 Image Caption 技术概述1、Encoder-D...原创 2019-07-02 14:28:56 · 3182 阅读 · 0 评论 -
cGAN和pix2pix
本文会介绍cGAN和pix2pix,并在 TensorFlow 中使用 pix2pix 模型。一、cGAN原理使用GAN可以无监督生成全新的图片,比如使用GAN生成MNIST数字,虽然可以生成数字,但是不能生成确定的数字。如果希望控制生成的结果,例如生成数字1,此时就要用到cGAN了。cGAN 的全称为 Conditional Generative Adversarial Net...原创 2019-06-23 15:56:12 · 2416 阅读 · 0 评论 -
序列分类问题
其中一种 RNN 结构为:N vs 1。这种结构的输入为序列,输出为类别, 因此可以解决序列分类问题。 常见的序列分类问题有文本分类 、 时间序列分类 、 音频分类。本文用tensroflow制作一个简单的序列分类器。一、Nvs1 的 RNN结构x1,x2,...,Xt为输入的数据, Y 为最终的分类 。 在不同的问题中,输入 数据 x 有不同的含义,如:(1)对于文本分类,每...原创 2019-06-26 14:15:53 · 3658 阅读 · 0 评论 -
RNN与CharRNN
本文学习循环神经网络(RNN)以及相关的项目,首先会介绍 RNN 经典的结构,以及它的几个变体 。 接着将在 TensorFlow 中使用经典的结构实现一个有趣的项目: CharRNN。 Char RNN 可以对文本的字符级概率进行建模,从而生成各种类型的文本 。一、RNN 的原理1、经典 RNN 的结构RNN 的英文全称是 Recurrent Neural Networks,即...原创 2019-06-26 11:00:11 · 1363 阅读 · 0 评论 -
神经网络机器翻译技术NMT
本文会首先介绍神经网络机器翻译(Neural Machine Translation )技术的原理,再介绍如何使用 TensorFlow NMT 训练一个中英翻译引擎。一、Encoder -- Decoder模型的原理Encoder-Decoder 模型是使用神经网络进行机器翻译的基本方法,一般也称作 Seq2Seq 模型 。原始的 N VS N RNN结构要求输入序列和输出序列等长...原创 2019-07-01 15:31:13 · 4553 阅读 · 0 评论 -
人脸识别算法MTCNN论文解读
论文名称:Joint Face Detection and Alignment using Multi-task Cascaded Convolutional Networks论文地址:https://www.lao-wang.com/wp-content/uploads/2017/07/1604.02878.pdf1、MTCNN原理MTCNN,Multi-task con...原创 2019-06-20 18:34:52 · 2204 阅读 · 0 评论