卷积神经网络
文章平均质量分 59
hh_2018
这个作者很懒,什么都没留下…
展开
-
人脸识别之DeepFace、DeepID以及FaceNet网络的区别
前面几篇博客介绍了目前基于深度学习比较常用的神经网络,并且在准确度方面都已经超越了人眼的效果。本篇博客就主要从表面介绍一下他们之间的区别。之所以是表面主要是因为目前只是从理论的层面来比较他们之间的差异。随着后续的使用可能再对差异进行补充。一、模型:DeepFace:在实现时需要使用3D对齐技术,然后将对齐的结果送入一个9层网络进行处理。整个训练过程前两个卷积层采用了共享卷积核,后三个卷积采...原创 2018-06-05 18:33:23 · 21994 阅读 · 0 评论 -
基于深度学习框架的超分辨率问题一之基本模型架构
目前在调研基于深度学习的观点对超分辨率问题的解决,对于其中的一些方法进行了一个大概的综述,现将其总结如下:SRCNN模型架构SRCNN是深度学习用在超分辨率上的开山之作。首先将图片通过插值的方式放大到需要变换的尺寸。然后再将放大后的图片放入到一个3层的卷积神经网络中,最终输出一个较为清晰的图片。其对应的3层卷积网络结构如下:上述网络层次比较简单但是效果已经能够远远超过传统的方式...原创 2018-12-12 22:00:42 · 1727 阅读 · 1 评论 -
卷积神经网络之Inception Net
Goole Inception Net 首次出现在ILSVRC 2014 的比赛上,并且取得了当时比赛的第一名,当年的第二名是被VGGNet取得的。并且当时的Inception Net被称为Inception V1。inception V1是一个22层的结构(卷积层),如果加上池化层大概有27层。在Inception网络中最基本的结构被称为Inception model。我们可以通过Inc...原创 2018-07-19 12:08:45 · 5243 阅读 · 0 评论 -
tensorflow及tensorboard中MNIST数据解释及实现
一、MNIST数据:MNIST数据是tensorflow内置的一组手写数字的图片样例数据,其数据的格式是gz压缩格式。图片如下:对于上述图片,tensorflow中存在对应的input_data将图片转为对应的字节流的形式读入,并提供了各种API将数据转换为对应的张量参与运算。具体数据的读取以及API接口的使用不做多的介绍。有兴趣的可以看一下对应的源码(mnist.py)。MNIS...原创 2018-04-02 15:41:14 · 1261 阅读 · 0 评论 -
使用tensorflow中的object_detection
tensorflow中存在许多内置的模型,可以用来进行图片的识别。下面将介绍一下使用object_detection进行物体识别需要的环境。配置环境:1. 通过proto将对应的.proto文件变成.py文件。2. 首先将tensorflow_slim模块加入到环境变量中,然后打开cmd窗口,输入python, 然后输入import slim 若是不报错则证明可以环境已经导入3....原创 2018-04-08 11:30:53 · 4078 阅读 · 1 评论 -
Tensorflow之调用object_detection中的API识别视频
上一篇博文主要介绍了如何使用object_detection进行图片的识别。本文将在上一篇的基础上介绍一下如何进行视频的识别。视频识别主要是将视频分为一帧一帧的图片,然后对图片进行识别。本文主要分为对摄像头拍摄的内容直接识别和对一段视频文件的识别。1. 采用VideoCapture对视频进行处理的方法: 首先需要依赖于opencv里面包含的视频处理方式。所以需要在python中...原创 2018-04-10 21:23:00 · 5339 阅读 · 8 评论 -
tensorflow识别音频文件
该文章纯属转载 概述 随着深度学习的广泛应用和Tensoflow的开源,移动端的模型应用层出不穷。本文介绍了笔者在搭建过程中的一些心得,希望可以帮助到你们。 Mac端Tensorflow CPU版本的安装 如果你现在用的没有太好的GPU,可以安装CPU only的Tensorflow。Linux、Mac系统可以安装Tensorflow的python2和python3版本,Windows系统...转载 2018-04-24 21:02:42 · 2201 阅读 · 0 评论 -
Tensorflow的android demo编译
最近在研究tensorflow模型的移动端。在编译安卓的代码的时候遇到了许多坑点,现总结如下:移动端编译有两种方式:第一,通过AAR从Jcenter中编译,此时只需要在build.gradle中将nativeBuildSystem改为none即可。然后将tensorflow/tensorflow/example/android导入android studio中运行即可。此时根据配置文件会自动下...原创 2018-04-24 21:50:13 · 708 阅读 · 0 评论 -
Tensorflow移动端之如何将自己训练的MNIST模型加载到Android手机上
本篇文章主要依托于官方demo,在官网demo上进行修改来体现如何在一个常规的app上加入深度学习的模型。因为对于在app中加入对应的模型也只是将app搜集的数据导入模型并进行处理,处理完之后将结果返回给app并进行后面的操作。其中只有处理的过程会涉及tensorflow,而本文主要介绍tensorflow处理的过程。所以需要依附于具体的app。一、环境准备 要想在安卓手机上运行...原创 2018-04-25 13:13:42 · 1530 阅读 · 0 评论 -
人脸检测之MTCNN代码实现
上一篇博客介绍了MTCNN网络的原理,这篇博客介绍一个代码的实现。对应的MTCNN网络目前也有写好的代码,大家可以在代码链接 上下载代码,然后进行识别。对于下载后的代码主要有以下的说明。1. 该代码中的包含了已经训练好的模型,模型的数据存储在.npy文件中。2. 代码工程中主要关注detect_face.py和facedetect_mtcnn.py即可,其中detect_face.py...原创 2018-05-23 15:28:09 · 6994 阅读 · 2 评论 -
人脸检测之MTCNN中的NMS方法
前两篇博客主要介绍MTCNN的原理和实现的方法,这篇博客介绍一下在实现过程中的一个主要的思想NMS。NMS又称为非极大值抑制方法。是用来处理重叠边框的。在检测的过程中往往会根据不能的维度特征产生不同的窗口,并且每个窗口都会进行是否是人脸的判断,这样就会导致一张人脸上会存在窗口的重叠。而NMS的方法就是要在重叠的框中选出最优的框来标记人脸。减少框的数量。具体如下;其实现原理如下: 1...原创 2018-05-23 16:11:38 · 3154 阅读 · 0 评论 -
人脸识别之facenet原理
facenet是谷歌提出的一种新的人脸识别的方法,该方法在LFW数据集上的准确度已经达到了99.6%,目前是该数据集上检测的最好记录。关于facenet的官方介绍看链接论文地址 。 facenet 不同于传统的CNN方法。传统的CNN先通过网络进行处理,然后将处理后的结构利用SVM方法进行分类。该方法是直接通过学习将特征变为欧式平面上的一个点,然后通过比较点之间的距离来进行判断。在模型的训...原创 2018-05-23 18:25:40 · 10442 阅读 · 0 评论 -
人脸识别之facenet代码实现
上一篇博文介绍了facenet的原理,这篇讲解一下代码的实现,对于facenet的代码目前也有写好的部分。具体见链接facenet代码实现 。大家可以通过git直接下载代码,然后运行里面的validata_on_lfw.py。输入对应的lfw数据的路径就可以检测模型对lfw数据的准确度。 validata_on_lfw.py中,主要是通过data/pairs.txt对lfw进行分对读取。并标记...原创 2018-05-23 21:33:02 · 35258 阅读 · 4 评论 -
人脸识别之DeepFace模型
之前了解过了DeepID和FaceNet网路结构,但根据一些博客的说法DeepFace是深度学习用在人脸识别领域的奠基之做,所以也看了一下DeepFace的理论,现在主要将自己的理解梳理一下,如理解有误希望能及时指出。首先还是给出文章的地址,想看文章的朋友可以点击链接下载文章地址。 该文章介绍了整个方法的流程以及实验的结果。DeepFace在进行人脸识别的过程中采用的是检测——对齐——提取——...原创 2018-06-05 12:06:19 · 34655 阅读 · 9 评论 -
卷积计算过程中的减少计算量的优化方式
大卷积转化为小卷积:根据VGG的思想,对于大的卷积核可以转换为多个相同卷积串联的方式来减少。具体如下: 由图可以看出一个5X5的卷积核可以换成两个3X3的卷积,此时参数的个数由25变成了18(2X3X3),同理对于一个7X7的卷积核可以变成3个3X3的卷积,此时参数量由49变成了27。所以此时得到相同的效果使用了更少的参数。假设输入的特征大小是M,N,那...原创 2019-03-20 21:26:50 · 7324 阅读 · 2 评论