自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 网络安全笔记

第三章 信息收集和网络扫描枚举服务枚举是一类程序,允许用户从一个网络中收集某一类的相关系;DNS枚举可以帮助用户收集如用户名,计算机名,IP地址等,可以使用DNSenum工具。要进行SNMP枚举,用户需要使用SnmpEnum工具,,允许用户分析网络内部SNMP信息传输。whois工具可以用来查询域名注册信息,也可以进行信息反查子域名查询www.searchdns.netcraft.comDNS区域传送指的是一台备用服务器使用主服务器刷新自己的域,这为允许中的DNS服务提供了一定的冗余度,其目

2022-02-26 14:59:56 6842

原创 GAN(生成对抗网络) and CGAN(条件生成对抗网络)

前言GAN(生成对抗网络)是2014年由Goodfellow大佬提出的一种深度生成模型,适用于无监督学习、监督学习。但是GAN进行生成时是不可控的,所以后来又有人提出可控的CGAN(条件生成对抗网络)。本文内容摘自原论文要点以及部分个人理解。原论文链接如下:Generative Adversarial NetsConditionalGenerativeAdversarialNetsGANIntroduce在以往的模型发展中,判别模型的发展是非常成功的,但是生成模型则没有那么大的影响,这是因为有

2020-06-24 14:43:24 3966

原创 编译原理(三):算符分析法

自下而上的语法分析过程一、基本思想从输入串开始,朝着文法的开始符号进行最左归约, 直到到达文法的开始符号为止。主要是进行移进或归约操作,采用最左归约。二、基本过程从输入串开始,朝着文法的开始符号进行归约,直到 到达文法的开始符号为止的过程。三、自下而上分析的PDA自左至右把输入串的符号一个一个移进栈,在移 进过程中不断查看栈顶符号串,一旦形成某个句型的 句柄时,就将此句柄用相应的产生式左部替换(归 约),若再形成句柄,就继续替换,直到栈顶不再形 成句柄为止。然后继续移进符号,重复上面的

2020-06-24 12:01:01 1306

原创 论文笔记:Efficient Graph-Based Image Segmentation

前言Graph-Based Segmentation 是经典的图像分割算法,作者Felzenszwalb也是提出DPM算法的大牛。该算法是基于图的贪心聚类算法,实现简单,速度比较快,精度也还行。不过,目前直接用它做分割的应该比较少,毕竟是99年的跨世纪元老,但是很多算法用它作垫脚石,比如Object Propose的开山之作《Segmentation as Selective Search for Object Recognition》就用它来产生过分割(oversegmentation)。还有的语义分割

2020-06-07 21:21:12 801

原创 论文笔记:Selective Search for Object Recognition

abstract论文发布于2012年,主要是用于解决目标坚持任务中候选框该如何选择的问题该算法大大减少了穷举法选择出来的候选框数目,这可以机器学习算法更powerfulintroduction图片本质上是可以分成各个层次。比如说图1,碗里盛的有食物,而碗又站在桌子上images are intrinsically hierarchical: In Figure 1a the salad and spoons are inside the salad bowl, which in tur

2020-06-07 15:55:21 315

原创 论文笔记:Very Deep Convolutional Networks for Large-Scale Image Recognition

前言论文:Very Deep Convolutional Networks for Large-Scale Image Recognition一、INTRODUCTION作者在这篇论文中提出了如何解决卷积网络深度的问题。作者先是固定好模型的其他部分参数,然后通过增加一些卷积层来逐渐增大网络的深度,而且作者的卷积层使用的是非常小的卷积核In this paper, we address another important aspect of ConvNet architecture design

2020-05-30 14:05:56 340

原创 论文笔记:Histograms of Oriented Gradients for Human Detection(Hog特征)

前言这篇论文提出了大名鼎鼎的HOG特征Abstract使用SVM作为分类器,实现行人检测adopting linear SVM based human detec- tion as a test caseHOG特征提取非常非常好we show experimentally that grids of Histograms of Oriented Gradient (HOG) descriptors sig- nificantly outperform existing feature se

2020-05-29 00:33:54 1359

原创 编译原理(二):语法分析程序(自动求First集、Follow集、预测分析表)

一、简介语法分析任务识别由词法分析得出的单词序列是否是给定文法的句子语法分析理论基础上下文无关文法和下推自动机自上而下语法分析的方式反复使用不同产生式进行推导以谋求与输入符号 串相匹配二、算法1.消除左递归问题:什么是左递归 ?答:文法存在产生式P →Pa,则是直接左递归,文法存在产生式P →Pa ,P →Aa, A→Pb,则是间接左递归。消除直接左递归的方法本质上就是将左递归转换为右递归...

2020-05-26 16:40:57 4281

原创 论文笔记:Understanding the difficuty of training deep feedforward neural networks

前言

2020-05-23 21:33:45 326 1

原创 JNI编程:JAVA调用C++代码

一、简介JNI是Java Native Interface的缩写,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他编程语言,只要调用约定受支持就可以了。使用java与本地已编译的代码交互,通常会丧失平台可移植性。但是,有些情况下这样做是可以接受的,甚至是必须的。例如,使用一些旧的库,与硬件、操作系统进行交互,或者为了提高程序的性能。JNI标准至少要保证本地代码能工作在任何Java 虚拟机环境。二、正文1.在JAVA中定义

2020-05-22 01:28:43 1672 1

原创 编译原理(一):实现词法分析程序

前言本文仅是作为个人学习笔记,对知识进行总结。基本概念1. 语法任何语言程序都可以看成是一定字符集(字母表) 上的字符串;语法使得这串字符形成一个形式上正确的程序。语法=词法规则+语法规则其中词法规则规定了字母表中哪些字符串是单词符号。其中语法规则规定了如何从单词符号来形成语法单位语法单位有表达式、子句、语句、函数、过程、程序2. 字母表、符号串、句子、语言字母表是符号的非空有穷集合符号是语言中最基本的不可分割的单位符号串是由字母表中的符号组成句子是是字母表上符合某种

2020-05-21 00:03:08 4562 2

原创 论文笔记:Batch Normalization(论文刨析)

前言论文地址:Batch Normalization一、概述在训练传统的神经网络模型时,因为每一层的参数不一样,所以导致每一层输入数据的分布不一样。这就需要我们谨慎的使用非常小的学习率来更新参数,所以模型训练要耗费大量时间。作者为了解决这一问题,提出了Batch Normalization,简言之就是对每一层的输入都进行归一化(实际操作起来还需要一些别的处理),使用了Batch Norma...

2020-05-19 13:55:26 342

原创 论文笔记:Dropout(全方位刨析Dropout)

前言之前就已经学习过dropout,并且实现且使用过,但总感觉对其中的一些细节掌握的不是太好,所以找来了Dropout的原论文来读一下。论文地址:Dropout: A Simple Way to Prevent Neural Networks from Overfitting概述:当我们训练一个比较大、参数比较多的模型的时候,我们往往都需要用各种手段去解决过拟合问题。Dropout的就是用...

2020-05-06 13:32:53 2295

原创 论文笔记:Maxout NetWorks

Description(概述)maxout是Goodfellow设计的一种类似于dropout的网络结构,该网络结构可以更容易的被优化,并且效果也相当可观。maxout模型通常是一个简单的前馈神经网络,可以用在多层感知机里,也也可以用在卷积神经网络里。Detail(细节)如果我们用在前馈神经网络中某层中使用maxout,那么给定输入x∈Rdx∈\mathbb{R^d}x∈Rd,那么该层的输...

2020-05-05 01:31:39 691

原创 论文笔记:BahdanauAttention和LuongAttention(注意力机制详解)

前言近日,阅读了两篇与attention机制相关的论文,本文记录论文中一些要点,方便日后回顾,也为需要了解attention机制的朋友们提供一些参考。两篇论文提出的attention机制都是基于机器翻译,实际上我们再论文地址NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATEEffective App...

2020-05-02 17:45:50 3525

原创 手撕系列:原生python实现卷积神经网络

前言之前就一直想不调用框架,实现一个CNN和RNN,实现这两种网络的主要难度就在于反向传播,对与CNN来说反向传播也要涉及到卷积,对于RNN来说反向传播会涉及到沿时间序列进行传播,也就是BPTT。在此过程中遇到不少困难,踩了不少坑,所以写此博文总结一下。实现卷积神经网络我们这里要实现的卷积神经网络是Lenet-5模型,其模型结构图如下其网络结构用语言描述的话,就是:输入层->卷积...

2020-04-25 15:32:38 5763 6

原创 tensorflow简便安装过程

一、安装速度慢解决这个问题很简单,因为pip内置的镜像网站是国外的,所以下载起来很慢,我们可以使用国内的镜像网站。  清华:https://pypi.tuna.tsinghua.edu.cn/simple  阿里云:http://mirrors.aliyun.com/pypi/simple/  中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple...

2020-04-15 16:16:14 330

原创 卷积神经网络之快速卷积算法(img2col、Winograd、FFT)

前言最近几天尝试着不用框架写一个卷积神经网络,后来代码写完之后发现运行的速度实在是太慢,分析了一下发现主要的时间都花在了卷积层上。于是查找各种资料,学习了两种现在主流的快速卷积算法,写此文主要记录一下其中的要点,在学习过程中遇到的问题。FFT如果学过或者了解过信号的,你肯定肯定,空间域中矩阵的卷积运算,实际上等价于频率域中两个矩阵对应元素相乘,关于怎么进行快速傅里叶变换,我之前的文章已经讲述...

2020-04-10 19:01:03 19028 1

原创 干货!以不一样的方式解析反向传播算法

前言今天看了一下午的反向传播算法,看了众多博文、书籍,现在来总结一下。前置知识如果想要弄明白反向传播算法,那么你得有一些微积分的基础,以及知道什么Chain rule,即链式法则。链式法则主要用于对复合函数求导,比如有一个函数z=f(x)z=f(x)z=f(x)和一个复合函数u=h(z)u=h(z)u=h(z)那么根据链式法则,就有如下等式dudx=dudzdzdx\frac{d...

2020-04-02 23:35:59 372

原创 手撕系列:原生python实现汽车牌照识别

前言这几天一直在做一个车牌识别的小程序,除了python中numpy作为操作像素的工具,其他部分均为自己实现,也算是检验自己,并锻炼自己的编码能力了。文章中的算法仅为实现,效率不一定好,希望有大佬可以指点。机器学习算法中只贴出了最主要的一部分,关于一些数学计算函数实现,由于太多就不贴了。问题想要实现一个车牌识别的程序,我们要处理的一个最最基本的问题就是要对车牌进行定位,定位出来车牌之后,还...

2020-03-25 23:04:56 1571 5

原创 图像处理之高通滤波及低通滤波

本文需要用到傅里叶变换的知识,如果还不了解,请点击这里频域滤波的基本过程如果想对图像进行滤波的话,基本的步骤如下:使用(−1)x+y(-1)^{x+y}(−1)x+y乘以原来的图像,其中x、yx、yx、y是原图像的像素点的坐标。对第一步得到的数据的进行离散傅里叶变换F(u,v)F(u,v)F(u,v)使用某个滤波器H(u,v)乘以第三步得到的F(u,v)F(u,v)F(u,v)对第三...

2020-03-19 10:01:38 40213 2

原创 傅里叶变换、离散傅里叶变换(DFT)、快速傅里叶变换(FFT)详解

复数傅里叶级数连续傅里叶级变换傅里叶变换的性质离散傅里叶变换(DFT)从前面我们已经知道,非周期连续函数傅里叶变换如下F(ω)=∫−∞+∞f(t)e−iωtdtF(\omega)=\int ^{+\infty}_{-\infty}f(t)e^{-i\omega t}dt F(ω)=∫−∞+∞​f(t)e−iωtdt单位冲激函数的傅里叶变换如下$$$$快速傅里叶变换(FTT...

2020-03-16 17:58:27 15858 2

原创 图像处理之图像细化

一、图像的细化基础概念细化技术:把一个平面区域简化成图的结构形状表示法骨架:一种细化的结构,它是目标重要的拓扑描述,具有很广泛的应用,再图像识别或者数据压缩时候,经常要用到细化结构。减少数据的冗余量,去掉没用用的信息细化算法:采取逐次去除边界的方法来进行的,不能破环图像的连通性通常我们会定义一个规则,来判断哪个点可以删除,哪个点不能删除。在细化图像的过程中,应该满足两个条件:在细化...

2020-03-10 15:06:38 9218 6

原创 图像的形态处理学

一、形态学的基本概念基本思想:用一定形态的结构元素去度量和提取图像中的对应形状,从而达到分析和识别的目的。适用范围:图像的分割、特征抽取、边界检测作用:这门学科在计算机文字识别,计算机显微图像分析,医学图像处理,工业检测等方面都取得了非常成功的应用。形态学方法已成为图像应用领域工程技术人员的必备工具。目前,有关数学形态学的技术和应用正在不断地研究和发展。主要的数学基础:集合论结构元素:形...

2020-03-09 19:45:14 931

原创 JAVA中的IP多播与UDP通信

基础理论知识IP地址的分类IP地址分为A类地址、B类地址、C类地址、D类地址、E类地址。其中D类地址为多播地址。IP多播IP多播所传送的分组需要使用多播IP地址。我们知道在互联网中每一台主机都必须有一个全球唯一的IP地址,那么如果我们想接收到某个特定的多播组的分组该怎么办呢?显然,这个多播组数据报的目的地址肯定不能写入这台主机的IP地址,因为此时可能有成千上万台电脑等着接收这个多播数据报...

2020-03-08 00:24:46 640

原创 图像的测量之投影与纹理

一、投影水平投影有什么作用呢?可以起到一个定位的作用,比如说,我们想要定位车牌号。我们把图像处理之后,用垂直投影,可以很快的对其进行定位以即分割水平投影的实现步骤图像二值化,物体为黑,背景为白。循环各行,依次判断每一列的像素是否为黑,统计所有黑像素的个数。设该行共有M个黑像素,则把该行从第一列到第M列设置为黑垂直投影的实现步骤图像二值化,物体为黑,背景为白。循环各列,依次判断...

2020-03-07 21:05:39 570 1

原创 图像分割之图像测量

图像测量算法图像简介在二值图像中,相互连接的黑像素的集合成为一个黑区域。通过对图像内每个区域进行标记操作,求得区域的数量。每个像素存放的是这个区域的标号,而不是其灰度值。这样的话,只需要统计标号的数量就可以知道其面积。标记准则从左到右,从上到下逐个像素扫描,且初始标号为0若该点的左上、正上、右上及左前都不为物体,则对标号进行加1操作优先级依次为:右上、正上、左上、左(逐渐递减)如果...

2020-03-06 20:57:17 882

原创 图像的分割之轮廓提取算法

目标物体的轮廓提取轮廓提取法边界跟踪法区域增长法区域分裂合并法一、轮廓提取法对于二值图像的轮廓提取,我们可以采用掏空内部点法,如果原图中有一点为黑,且它的8个相邻的点都为黑,则将该点删除。对于非二值图像,要先进行二值处理掏空内部点法实现如下 def GetOutLine(self): img=np.copy(self.Img) for y ...

2020-03-05 22:14:56 13441 3

原创 图像的阈值分割(一)

一、图像分割图像分割就是将图像分为一些有意义的区域,然后可以对这些区域进行描述,相当于提取出某些目标区域的特征。图像分割的基础是像素间的相似性和跳变性。通常,我们对图像进行分割,分割的小区域是某种意义下具有共同属性的像素的连通集合。各区域类某种性质,如灰度、纹理有相似性。区域内部是连通,无过多小孔。并且有明显边界。图像分割的四种不同的基本方法边缘检测:检测出边缘,再将边缘像素连接,构成边...

2020-03-04 22:06:41 6994

原创 图像锐化的基本方法

图像锐化处理目的:突出图像的细节,或者增强被模糊了的细节,增强图像边缘,便于提取目标物体的边界图像边缘的特点:在边缘上的灰度变化比较平缓,而在边缘两侧灰度变化较快,梯度值较大。通常是局部不连续的,且亮度变化最显著的部分。锐化的基本方法微分运算在数学上对于离散的数据,使用差分来定义一元函数f(x)f(x)f(x)的一阶微分,公式如下∂f∂x=f(x+1)−f(x)\frac{\pa...

2020-03-03 16:26:36 12351

原创 图像的平滑处理

一、图像的平滑处理基本概念图像在获取、传输的过程中,可能会受到干扰的影响,会产生噪声,噪声是一种出错了的信号,噪声会造成图像粗糙,需要我们对图像进行平滑处理。图像去噪是一种信号滤波的方法,目的就是为了保留有用的信号。噪声的基本特点就是灰度值不相关、空间位置都是随机的平滑的目的1. 模糊:在提取大目标之前,去除太小的细节。将目标内的小间断点连接起来2.消除噪声:改善图像质量,降低干扰。...

2020-03-02 21:40:07 11171 2

原创 图像的灰度变换

一、图像的灰度变换图像的灰度变换就是按照一定的变换关系,逐点改变原图像中每一个像素灰度值的方法。是图像增强技术处理技术中一个非常基础、直接的空间域图像处理的方法。目的就是改善画质。灰度变换有线性变换、非线性变换、分段线性变换线性变换变换公式如下g(x,y)=T[f(x,y)]=a∗f(x,y)+bg(x,y)=T[f(x,y)]=a*f(x,y)+bg(x,y)=T[f(x,y)]=a...

2020-03-02 13:56:54 3653

原创 图像的几何变换

一、图像的几何变换几何变换的一般形式图像如果要进行几何变换的话,一般来说是借助矩阵工具来进行,因为我们可以通过矩阵很轻松的实现基变换。其一般形式如下[x1y1]=T[x0y0]=[abcd][x0y0]\begin{bmatrix}x_1\\ y_1\end{bmatrix}=T\begin{bmatrix}x_0\\ y_0\end{bmatrix}=\begin{bm...

2020-03-01 15:42:23 549

原创 图像的缩放算法以及python实现

一、图像缩放算法最邻近插值法这种方法是图像缩放算法中最简单的一种了。优缺点也十分明显,算法速度快,但缩放效果很差,放的太大就会照成马赛克现象,放的太小会造成严重的失真现像。下面先来进行介绍算法步骤假设现在有一个3*3的图像,其数据如下[134231132312144121232123]\begin{bmatrix}134 & 231 &13 \\ 23 & ...

2020-02-29 22:09:24 4719 1

原创 图像的灰度化及用python实现

一、灰度化灰度化定义在R、G、B图像模型中,当R=G=B(三种颜色分量值相同时),则此时彩色表示一种灰度颜色,其中R=G=B的值叫做灰度值,在灰度图像中,灰度值也可以称为亮度值。灰度值范围0-255灰度化的方法对于一副彩色图像来说,灰度化一般有四种常用方法,分别为分量法 最大值法 平均值法 加权平均法。1.分量法该方法最为简单,即在R、G、B三种颜色分量中,任意选取一种颜色作为灰度值...

2020-02-28 18:53:30 9237

原创 BMP文件分析及用python读取

一、BMP文件分析1. 什么是BMP(位图)?常见的图像文件格式有:BMP、JPG(JPE,JPEG)、GIF等。BMP图像文件(Bitmap-File)格式是Windows采用的图像文件存储格式,在Windows环境下运行的所有图像处理软件都支持这种格式。Windows 3.0以后的BMP文件都是指设备无关位图(DIB,device-independent bitmap)。BMP位图文件默...

2020-02-28 00:12:23 18628 7

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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