自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Michael’s Blog

不做复制粘贴的傀儡

原创 ATSS论文详解

《Bridging the Gap Between Anchor-based and Anchor-free Detection via Adaptive Training Sample Selection》发表于CVPR2020代码地址:https://github.com/sfzhang15/ATSS现有目标检测的主流算法中,主要分为两阶段和一阶段。而一阶段的算法中,又分为基于anchor和anchor-free的算法。在FCOS(一种anchor-free的目标检测算法,想详细了解请看《FCOS算

2020-05-26 22:59:57 300

原创 《FCOS: Fully Convolutional One-Stage Object Detection》论文详解

《FCOS: Fully Convolutional One-Stage Object Detection》发表于ICCV2019代码地址:https://github.com/tianzhi0549/FCOS/这篇文章主要是觉得现有的基于anchor的目标检测器存在一些缺点:检测结果对于anchor的大小,尺度比例,数量比较敏感即使认真的调好的上述参数,检测器对于GT变化较大,特别是小物体效果较差为了获得较高的召回率,基于anchor的检测器需要大量的anchoranchor会涉及一些复杂的

2020-05-26 10:02:29 116

原创 《Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression》论文详解

现在在物体检测领域,通常会使用IoU(Intersection over Union)来作为一个很重要的度量指标。但是很多时候在训练网络时,采用的是l2-norm来回归检测框的,文章认为采用l2-norm来训练模型而使用IoU来衡量模型好坏,这两者之间似乎存在着某种不匹配的关系。举个例子,如下图所示,【图】现假设采用左上角右下角的坐标来表示一个矩形框,即(x1,y1,x2,y2)(x_1,y...

2020-03-31 21:39:11 106

原创 《Double-Head RCNN: Rethinking Classification and Localization for Object Detection》论文详解

原文链接《Double-Head RCNN: Rethinking Classification and Localization for Object Detection》这篇文章灵感来源于18年COCO 物体检测冠军也就是旷世的团队,他们发现在做实例分割任务时使用卷积来得到BoundingBox比使用全连接得到结果要好。文章认为全连接对于空间位置是敏感的,而卷积对于物体信息的提取效果更好,所...

2020-02-23 18:21:48 1301 5

原创 HOG特征计算流程

HOG特征是在文章《Histograms of Oriented Gradients for Human Detection》中提出,看文章标题可知,该文章是为了行人检测提出的,不过后来也用于其它方向,比如特征点检测等。该文中行人检测大概分为以下几步:输入图像(行人的图像)采用Gamma矫正法对输入图像进行颜色空间的标准化;目的是调节图像的对比度,降低图像局部的阴影和光照所造成的影响,同时...

2020-01-28 20:22:45 163

原创 如何使用git合并多次提交

在为代码添加一个新功能的时候你会怎么做?(从git的操作顺序来说)如果是我的话,顺序如下:先是使用git checkout -b ,来新建一个新的分支,然后开始按照自己提前思考好的逻辑加入新代码写好这个功能并调试好后,使用git add 、git commit提交代码但之后当你或者同事review代码,或者测试测出bug时,你又需要改代码并且将改后的代码提交,这样就造成了一个功能多次提...

2020-01-18 13:17:36 695

原创 《EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks》论文详解

论文地址:https://arxiv.org/pdf/1905.11946.pdfGitHub实现地址:https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet这篇工作中的网络结构基本采用的是mobilenet的结构,关于mobilenet的详情可以查看mobilenet-v1和mobilenet-v2...

2019-12-19 23:31:44 281

原创 mobilenet-v1和mobilenet-v2详解

最近efficientnet和efficientdet在分类和检测方向达到了很好的效果,他们都是根据Google之前的工作,mobilenet利用nas搜索出来的结构。之前也写过《轻量级深度学习网络概览》,里面提到过mobilenetv1和mobilenetv2的一些思想。下面基于slim mobilenet的实现版本来具体讲讲他们的结构一、mobilenet-v1mobilenet-v1创新...

2019-12-18 22:51:38 403

原创 《Gliding vertex on the horizontal bounding box for multi-oriented object detection》算法详解

《Gliding vertex on the horizontal bounding box formulti-oriented object detection》是华中科大白翔老师的新作,发表于2019年11月21号。该文章是用来做物体检测的,有意思的是发挥了白翔老师在OCR方面的特长。一般的物体检测都是使用一个非旋转矩形来表示一个物体,文章认为对于长条形的物体(例如斜着的中文句子,航拍的船舶...

2019-12-17 20:05:26 1539 5

原创 【译】梯度下降优化算法概览(gradient descent optimization algorithms)

之前一直想总结一下深度学习中常用的梯度下降算法的,后来发现有人做了,那好吧,直接翻译吧。一、变量的更新方法1.1 Batch gradient descent这种变量的更新方法是利用整个数据集的数据,也就是一个batch来计算出损失函数的梯度,进而来更新网络中的参数θ\thetaθ,公式如下:θ=θ−η⋅∇θJ(θ)\theta = \theta -\eta\cdot\nabla_{\th...

2019-11-21 20:23:05 81

原创 git revert的使用

本文假设读者知道git的基本原理。git revert命令其实非常好理解,就是revert的含义,该命令会重新进行一次新的提交,只是提交的内容是会退某一次提交。下面举例来说明。有一个仓库,仓库的提交记录和文件分别如下图所示,该仓库有三次提交,每次分别向仓库添加了1.txt,2.txt和3.txt,三个文件。通过git log可以查看以前的所有提交内容,并且提交时的版本号,分别如下三图所...

2019-10-24 08:27:09 111

原创 Scale-Aware Trident Networks for Object Detection论文详解

《Scale-Aware Trident Networks for Object Detection》发表于ICCV2019的一篇图片检测的文章。代码地址:https://github.com/TuSimple/simpledet/tree/master/models/tridentnet文章的主要思路是解决多尺度物体检测的问题。目前一种很常用的解决多尺度物体检测的方法是采用fpn的结构,然后...

2019-10-09 22:37:43 207

原创 Feature Selective Anchor-Free Module for Single-Shot Object Detection论文详解

《Feature Selective Anchor-Free Module for Single-Shot Object Detection》发表于CVPR2019文章认为现有的anchor的检测方式,为了解决多尺度的问题,容易引入人为的一些规则,这样会导致检测结果不是最优的,比如常用的fpn结构,按照待检测物体的大小规定某些层检测一定大小区域的物体。为了解决这种问题,文章提出了一种anchor...

2019-10-01 21:53:35 139

原创 CenterNet: Keypoint Triplets for Object Detection论文详解

《CenterNet: Keypoint Triplets for Object Detection》发表于CVPR2019代码地址:https://github.com/Duankaiwen/CenterNet它是之前一篇《CornerNet: Detecting Objects as Paired Keypoints》文章的改进版,与CornerNet相同的是它们都是one-stage的方...

2019-09-22 11:57:39 237

原创 CornerNet: Detecting Objects as Paired Keypoints论文详解

《CornerNet: Detecting Objects as Paired Keypoints》发表于ECCV2018代码地址:https://github.com/princeton-vl/CornerNet文章认为采用anchor进行目标检测的方式有两个不好的地方:第一,为了确保anchor能够尽可能的覆盖的所有的标注框,往往需要大量的anchor,而其中只有少部分是真正有效的,这样会...

2019-09-14 16:49:48 192

原创 Focal Loss for Dense Object Detection论文详解

《Focal Loss for Dense Object Detection》发表于ICCV2017代码地址:caffe2实现:https://github.com/facebookresearch/Detectronkeras实现:https://github.com/fizyr/keras-retinanet文章思路:作者思考,目前two-stage的检测方法能够达到较高的精度,而on...

2019-07-25 21:13:18 326

原创 SENet(Squeeze-and-Excitation Networks)论文详解

《Squeeze-and-Excitation Networks》这篇文章在17年就发布在axiv上了,最近一次修改是2019年五月,最近看用的人还是蛮多的,可能是因为效果好而且使用简单吧。该网络其实可以理解为一个网络中的插件,可以和各种网络配合,如最基础的卷积层,resnet,inception等等。下面来看看它的实现原理。一、SE块(SQUEEZE-AND-EXCITATION BLOCK...

2019-06-27 14:12:03 777

转载 由dead relu引发的思考——正则化算法漫谈

最近看到这篇文章还是蛮有意思的分析的,特此转载记录一下。原文链接,本文章经过作者同意转载,禁止二次转载,需要转载请联系原作者一、简介模型的调整是一项很细致的任务,仅仅通过输出结果来调整,并不能够了解到模型的内部缺陷。我将通过这篇文章来介绍一下我的一次调试过程,解决dead relu节点的问题,最终修复了模型的缺陷。一些名词解释:Dead Relu:在训练过程中,由于一次梯度更新的幅度过...

2019-06-21 17:32:24 140

翻译 【译】理解LSTM(通俗易懂版)

循环神经网络(Recurrent Neural Networks)人对一个问题的思考不会完全从头开始。比如你在阅读本片文章的时,你会根据之前理解过的信息来理解下面看到的文字。在理解当前文字的时候,你并不会忘记之前看过的文字,从头思考当前文字的含义。传统的神经网络并不能做到这一点,这是在对这种序列信息(如语音)进行预测时的一个缺点。比如你想对电影中的每个片段去做事件分类,传统的神经网络是很难通过...

2019-05-23 13:07:49 1176

原创 PSENet(Shape Robust Text Detection with Progressive Scale Expansion Network)论文详解

《Shape Robust Text Detection with Progressive Scale Expansion Network》,2018年7月发表于arxiv,代码地址:https://github.com/whai362/PSENet目前该仓库没有给出源码,只有一些原理图和实验结果这篇文章是在看云从科技的一篇叫Pixel-Anchor的文章的时候看到的,因为他给出的数据效果不错...

2019-02-18 21:18:53 5193 17

转载 【转】一文打尽目标检测NMS——精度提升篇

众所周知,非极大值抑制NMS是目标检测常用的后处理算法,用于剔除冗余检测框,本文将对可以提升精度的各种NMS方法及其变体进行阶段性总结。总体概要:对NMS进行分类,大致可分为以下六种,这里是依据它们在各自论文中的核心论点进行分类,这些算法可以同时属于多种类别。分类优先:传统NMS,Soft-NMS (ICCV 2017)定位优先:IoU-Guided NMS (ECCV 2018)加权平均:Weighted NMS (ICME Workshop 2017)方差加权平均:Softer-NMS (

2020-07-29 21:44:03 50

原创 《R-FCN: Object Detection via Region-based Fully Convolutional Networks》论文详解

《R-FCN: Object Detection via Region-based Fully Convolutional Networks》作者公布的代码地址(caffe版):https://github.com/daijifeng001/r-fcn这篇文章主要目的还是想再在fasterrcnn的基础上,加快物体检测的速度,但是网络加速时需要注意,物体检测其实是有两个目标的,一个是检测一个是...

2020-04-29 21:56:04 88

原创 Precise Detection in Densely Packed Scenes论文详解

《Precise Detection in Densely Packed Scenes》是发表在2019cvpr上的文章并且有源码。代码地址:https://github.com/eg4000/SKU110K_CVPR19这篇文章的目的是对于一些人为的密集场景的物体进行检测定位。如下图所示,在一些商店的货架上待售商品摆放密集。使用一些SOTA的方法如RetinaNet,会出现检测框重叠的问题,...

2019-12-17 20:07:32 1016 2

原创 GN-Group Normalization

此篇文章也是凯明大神的作品,Group Normalization下面简称GN,是一种可以用来代替Batch Normalization(BN)的一种正则方法。一、为什么要提出GNBN全称Batch Normalization,它是从batch维度对网络提取的特征进行归一化的一种处理。正是因为它是从batch维度进行特征归一化的,那么这种操作严重依赖于batchsize。当batchsize过...

2019-06-19 19:24:20 254

原创 C3AE: Exploring the Limits of Compact Model for Age Estimation

这篇文章是提出新的浅层网络来做人脸年龄估计的任务。文章主要是利用小的浅层网络来处理低分辨率的图片,创新的点到不是很大,但是值得引人思考的是,对于一些低分辨率的图片是否可以不去用重量级的网络以及一些经典的连接就可以取得很好的效果。文章分为三点去展开第一是研究了一下mobilenet和shufflenet中的depth-wise卷积和标准的卷积在低分辨率图像任务中,是否真正能够减小网络参数。第...

2019-06-15 12:32:09 777

原创 PMTD(Pyramid Mask Text Detector)论文详解

《Pyramid Mask Text Detector》,在2019年3月28日上传到arxiv网站,这篇文章真是把ICDAR MLT2017和ICDAR2015数据库刷出了新高,在两个库的f值分别达到80.13%和89.33%。文章思想:把文字检测当作图像分割来做,采用在分割上获得不错效果的Mask R-CNN方法,但是直接使用该方法有一些缺点如下:监督过于简化,目前文字检测常用的还是用四...

2019-04-01 11:14:18 1648

原创 CRNN算法详解

《An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition》,是比较老的一篇文章了,在2015年6月发表在arxiv上,但是该方法还是被广泛运用。文章思想:文章认为文字识别是对序列的预测方法,所以采用了对序列预测...

2019-03-26 17:49:35 18273 12

转载 【转】深入理解Batch Normalization批标准化

Batch Normalization作为最近一年来DL的重要成果,已经广泛被证明其有效性和重要性。虽然有些细节处理还解释不清其理论原因,但是实践证明好用才是真的好,别忘了DL从Hinton对深层网络做Pre-Train开始就是一个经验领先于理论分析的偏经验的一门学问。本文是对论文《Batch Normalization: Accelerating Deep Network Training by...

2019-03-13 15:52:18 146

原创 tensorflow使用笔记

1. 运行训练代码时报如下错误could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERRORcould not destroy cudnn handle: CUDNN_STATUS_BAD_PARAM可能是显存问题解决办法:使用allow_growth控制GPU的内存分配,代码如下config = tf.ConfigProto()...

2019-02-25 12:54:16 118

原创 OpenCV踩坑之findContours

调用方式如下:_, contours0, hierarchy = cv2.findContours(im, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)错误如下:ValueError: need more than 2 values to unpack因为在服务器上运行同样代码不会报错,在本地却报上述错误,后来查了一下opencv版本,发现服务器...

2019-02-01 13:04:43 266

原创 TextBoxes与TextBoxes++算法详解

这是两篇文章,因为这两篇文章大部分是相同的所以写一块了。TextBoxes《TextBoxes: A Fast Text Detector with a Single Deep Neural Network》发表于AAAI2017github地址:https://github.com/MhLiao/TextBoxes这篇文章是借鉴SSD的网络用于文字检测,创新也不是太大。还有一点要清楚的...

2019-01-30 15:12:25 2484 1

原创 轻量级深度学习网络概览

调研了一下最近的一些轻量级网络,列举并简单介绍各个网络的设计思路PVANET2016年1月在arxiv网站第一次提交文章地址:https://arxiv.org/abs/1608.08021代码链接:https://github.com/sanghoon/pva-faster-rcnn文章目的是减少网络计算量加快网络的速度,文章采用C.Relu(类似于一个对称的Relu函数)和incep...

2019-01-17 17:23:30 1623

原创 CTPN(Detecting Text in Natural Image with Connectionist Text Proposal Network)算法详解

《Detecting Text in Natural Image with Connectionist Text Proposal Network》,发表在ECCV2016,算是一个使用比较多效果较好的较为经典的一个文字检查算法了,CVPR2017年中的一篇名为SegLink的文章灵感也来自于此。代码地址:https://github.com/tianzhi0549/CTPN,这是其中的一个作者提...

2019-01-09 20:30:34 429

原创 关于CTPN论文实现cpu版本的编译问题

《Detecting Text in Natural Image with Connectionist Text Proposal Network》,发表在ECCV2016,算是一个使用比较多效果较好的较为经典的一个文字检查算法了。本人目前也在阅读该论文tensorflow版本的代码,该代码的仓库名称为ext-detection-ctpn,github下载地址:https://github.co...

2019-01-08 11:45:31 445

原创 tensorflow mac和Linux上的简便安装

基于VirtualEnv的安装首先, 安装所有必备工具:# 在 Linux 上:$ sudo apt-get install python-pip python-dev python-virtualenv# 在 Mac 上:$ sudo easy_install pip # 如果还没有安装 pip$ sudo pip install --upgrade virtualenv接下...

2019-01-08 11:38:41 123

原创 PixelLink: Detecting Scene Text via Instance Segmentation算法详解

PixelLink: Detecting Scene Text via Instance Segmentation,该文章发表在AAAI2018上,代码地址:https://github.com/ZJULearning/pixel_link该篇文章灵感来自于图像分割算法和之前CVPR2017的SegLink,看过SegLink和EAST这两篇文章的话,这篇文章其实很容易理解。在介绍文章思想之前...

2018-12-31 11:10:11 486

原创 SegLink(Detecting Oriented Text in Natural Images by Linking Segments)算法详解

《Detecting Oriented Text in Natural Images by Linking Segments》是和EAST同年的一篇发表在CVPR2017的OCR论文。代码地址:https://github.com/bgshih/seglink,这是该文章其中一个作者提供的tensorflow版本代码,网上还有其他实现(我看的是pixellink作者的一个实现https://git...

2018-12-30 12:07:11 1025

原创 SWT(Detecting Text in Natural Scenes with Stroke Width Transform)算法详解

《Detecting Text in Natural Scenes with Stroke Width Transform》,这是微软公司的一篇发表于CVPR2010的文章,使用传统方法来检测自然场景中的文本。代码地址:https://github.com/aperrau/DetectText因为算是一个比较经典的文章,所以看完记录一下。当然github还有其他版本的实现代码,上面的代码几乎和原...

2018-12-27 20:48:43 1463

翻译 Learn OpenCV之Rotation Matrix To Euler Angles

本文要介绍的是3×33 \times 33×3的旋转矩阵与欧拉角(Euler Angles)之间的相互转换方法。本文其实和OpenCV关系不大,但是译者曾经花了一些时间解决自己在这部分知识上的困扰,看见原博客写的还不错,决定还是记录一下一个旋转矩阵能表示三个角度自由度,即绕着三维的坐标轴的三个坐标做旋转,数学家们对三个自由度使用了不同的表示方式,有用三个数字表示、有用四个数字表示的、还有用3×...

2018-12-27 10:34:47 1157

翻译 Learn OpenCV之WarpTriangle

这篇文章将讲述的是如何将一个图片内的三角形内容映射到另一个图片内的不同形状的三角形内。在图形学的研究中,研究者常常进行三角形之间的变换操作,因为任意的3D表面都可以用多个三角形去近似表示。同样的,图片也可以分解成多个三角形来表示。但是在OpenCV中并没有一个直接可以将三角形转换为另一个三角形的函数。...

2018-12-25 19:52:01 294

提示
确定要删除当前文章?
取消 删除