
Tensorflow
文章平均质量分 74
子为空
这个作者很懒,什么都没留下…
展开
-
YOLOv3源码阅读之七:data_utils.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:35:44 · 1350 阅读 · 0 评论 -
Faster R-CNN源码阅读之七:Faster R-CNN/lib/rpn_msr/anchor_target_layer_tf.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数的主要目的是产生anchors并结合gt boxes(ground truth boxes)给这些anchors进行标记labels(前景还是背景),然后生成这些anchors的权重信息,并产生bbox的RPN网络回归结果目标。...原创 2018-08-21 14:54:36 · 966 阅读 · 0 评论 -
Faster R-CNN源码阅读之六:Faster R-CNN/lib/fast_rcnn/bbox_transform.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数都是与anchors的变换相关,包括正向变换,反向变换。 二、代码以及注释 # -*- coding:utf-8 -*-# -----------------------------------------------...原创 2018-08-21 09:50:57 · 1162 阅读 · 1 评论 -
Faster R-CNN源码阅读之十二:写在最后
写在最后 毫无疑问,Faster RCNN(以及Faster RCNN的各种变体)作为当前目标检测方面的先锋,在这方面确实贡献巨大。下一步计划对one-stage的目标检测方法进行学习。由于给的源码中,关于数据准备的代码过于复杂,不具有一定的普适性,实际上,完全可以根据自己的项目工程进行数据准备代码的编写,即简单又直观,因此,在这里就省略了数据准备方面的代码的分享,还请各位大佬们原谅! ...原创 2018-08-23 16:55:21 · 502 阅读 · 0 评论 -
Faster R-CNN源码阅读之十一:Faster R-CNN预测demo代码补完
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 这里对之前使用Faster R-CNN的demo进行预测时候的代码进行补完。二、代码和注释 文件目录:Faster-RCNN/lib/fast_rcnn/test.pydef im_detect(sess, net, im, box...原创 2018-08-23 16:42:32 · 1526 阅读 · 1 评论 -
Faster R-CNN源码阅读之十:Faster R-CNN/lib/fast_rcnn/train.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数的主要目的是训练整个Faster R-CNN网络。 二、代码以及注释 # coding=utf-8# --------------------------------------------------------#...原创 2018-08-23 16:08:14 · 1202 阅读 · 1 评论 -
Faster R-CNN源码阅读之九:Faster R-CNN/tools/train_net.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数的训练Faster RCNN网络的主入口,并通过命令行等传入以下必要的配置信息,然后开始训练网络。二、代码以及注释 #!/usr/bin/env python# coding=utf-8# -----------...原创 2018-08-22 14:15:00 · 837 阅读 · 0 评论 -
Faster R-CNN源码阅读之五:Faster R-CNN/lib/rpn_msr/proposal_layer_tf.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数的主要目的是通过将估计的边界框变换应用于一组常规框(称为“anchors”)来输出目标检测proposals。二、代码以及注释 # -*- coding:utf-8 -*-# --------------------...原创 2018-08-19 16:18:25 · 910 阅读 · 0 评论 -
Faster R-CNN源码阅读之八:Faster R-CNN/lib/rpn_msr/proposal_target_layer_tf.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数的主要目的是根据所传入的参数rpn rois和gt boxes等信息对rois尽心采样,并确定每一个roi的labels标签和bbox回归目标。二、代码以及注释 # coding=utf-8# -----------...原创 2018-08-22 10:50:25 · 753 阅读 · 0 评论 -
Faster R-CNN源码阅读之四:Faster R-CNN/lib/rpn_msr/generate_anchors.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数主要都是与anchor的生成相关,即给定纵横比和尺寸等一定的参数,生成符合条件的若干个anchor(s)。 二、代码以及注释# -*- coding:utf-8 -*-# -----------------------...原创 2018-08-18 20:40:04 · 852 阅读 · 0 评论 -
Faster R-CNN源码阅读之三:Faster R-CNN/lib/networks/VGGnet_test.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数和类的主要目的是定义Faster R-CNN中基于VGG16的网络结构。二、代码以及注释 # -*- coding:utf-8 -*-import tensorflow as tffrom networks.n...原创 2018-08-18 20:27:21 · 681 阅读 · 0 评论 -
Faster R-CNN源码阅读之二:Faster R-CNN/lib/networks/factory.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数的主要目的是根据所传入的参数选择特定的test网络结构或者train网络结构。 二、代码以及注释 # -*- coding:utf-8 -*-# --------------------------------...原创 2018-08-18 20:20:45 · 689 阅读 · 0 评论 -
Tensorflow深度学习之二十九:tf.ones_like()和tf.zeros_like()
一、简介 Creates a tensor with all elements set to 1.Given a single tensor (tensor), this operation returns a tensor of the same type and shape as tensor with all elements set to 1. Optionally, you can...原创 2018-09-08 20:30:12 · 33574 阅读 · 0 评论 -
Tensorflow深度学习之三十:tf.where()
一、简介 Return the elements, either from x or y, depending on the condition.If both x and y are None, then this operation returns the coordinates of true elements of condition.The coordinates are retu...原创 2018-09-08 21:13:24 · 1647 阅读 · 0 评论 -
Tensorflow深度学习之三十一:tf.nn.top_k()
一、简介 def top_k(input, k=1, sorted=True, name=None)Finds values and indices of the k largest entries for the last dimension.If the input is a vector (rank=1), finds the k largest entries in th...原创 2018-09-09 17:18:48 · 13184 阅读 · 0 评论 -
YOLOv3源码阅读之六:train.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:34:49 · 2308 阅读 · 0 评论 -
YOLOv3源码阅读之五:nms_utils.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:34:03 · 1894 阅读 · 2 评论 -
YOLOv3源码阅读之四:layer_utils.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:32:58 · 1093 阅读 · 0 评论 -
YOLOv3源码阅读之三:model.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:32:04 · 2089 阅读 · 0 评论 -
YOLOv3源码阅读之二:get_kmeans.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:30:40 · 1575 阅读 · 4 评论 -
YOLOv3源码阅读之一:test_single_image.py
一、YOLO简介 YOLO(You Only Look Once)是一个高效的目标检测算法,属于One-Stage大家族,针对于Two-Stage目标检测算法普遍存在的运算速度慢的缺点,YOLO创造性的提出了One-Stage。也就是将物体分类和物体定位在一个步骤中完成。YOLO直接在输出层回归bounding box的位置和bounding box所属类别,从而实现one-stage。 ...原创 2019-09-03 15:29:27 · 1590 阅读 · 0 评论 -
Tensorflow深度学习之三十五:tf.image.draw_bounding_boxes
一、函数定义tf.image.draw_bounding_boxes( images, boxes, name=None) Draw bounding boxes on a batch of images. 在一个batch的每一张图片上绘制边界框。 Outputs a copy of images but draws on top of the pix...原创 2018-12-09 18:17:12 · 1512 阅读 · 2 评论 -
Tensorflow深度学习之三十四:tf.Graph.finalize()
一、tf.Graph.finalize()tf.Graph.finalize()# 有时候也可以使用下面的方式# tf.get_default_graph().finalize() Finalizes this graph, making it read-only. 结束当前的计算图,使之成为只读。 After calling g.finalize(), no new o...原创 2018-11-19 16:11:54 · 4613 阅读 · 1 评论 -
Tensorflow深度学习之三十三:tf.scatter_update
dsadsadsada原创 2018-11-13 16:48:11 · 1682 阅读 · 1 评论 -
Tensorflow深度学习之三十二: tf.scatter_nd_update
一、tf.scatter_nd_update 函数定义:tf.scatter_nd_update( ref, indices, updates, use_locking=True, name=None) Applies sparse updates to individual values or slices in a Variable....原创 2018-11-13 14:34:29 · 7065 阅读 · 0 评论 -
Tensorflow深度学习之二十八:tf.cond
一、简介 def cond(pred, # 谓词,可以理解为判断条件 true_fn=None, # 当谓词为真(True)时返回的函数 false_fn=None, # 当谓词为假(False)时返回的函数 strict=False, # name=None, fn1=None, ...原创 2018-09-07 14:43:30 · 1853 阅读 · 0 评论 -
Faster R-CNN源码阅读之一:Faster R-CNN/lib/networks/network.py
一、介绍 本demo由Faster R-CNN官方提供,我只是在官方的代码上增加了注释,一方面方便我自己学习,另一方面贴出来和大家一起交流。 该文件中的函数和类的主要目的是产生一个基类,并在类中封装好需要的方法,以后生成网络时可以直接调用已经封装好的方法。二、代码以及注释 # -*- coding:utf-8 -*-import numpy as npimport...原创 2018-08-18 20:17:13 · 1703 阅读 · 0 评论 -
Faster R-CNN源码阅读之零:写在前面
写在前面 最近在补Faster R-CNN的相关知识,在阅读Faster R-CNN的代码(TensorFlow实现)。将自己阅读过的代码加上注释,贴出来方便大家学习。我会尽量从底层代码向高层代码逐渐说明,以方便后面的代码阅读。 由于本人还在学习,难免会有些错误,如果大家发现了出错的地方,还请不吝指出。 Faster R-CNN论文地址:Faster R-CNN G...原创 2018-08-18 20:13:45 · 1238 阅读 · 0 评论 -
Tensorflow深度学习之二十七:tf.nn.conv1d
一、conv1d 在NLP领域,甚至图像处理的时候,我们可能会用到一维卷积(conv1d)。所谓的一维卷积可以看作是二维卷积(conv2d)的简化,二维卷积是将一个特征图在width和height两个方向上进行滑窗操作,对应位置进行相乘并求和;而一维卷积则是只在width或者说height方向上进行滑窗并相乘求和。 以下是Tensor Flow中关于tf.nn.conv1d的API注解...原创 2018-08-02 15:07:07 · 23361 阅读 · 0 评论 -
Tensorflow深度学习之十六:placeholder的注解和reshape函数
import tensorflow as tf# 定义一个placeholder,用于输入数据x = tf.placeholder(dtype=tf.float32, shape=[3,4], name="x")# 定义另外一个变量y = tf.Variable(tf.truncated_normal(shape=[4,5], mean=0.0, stddev=1.0, dtype=t原创 2017-08-16 22:35:43 · 5029 阅读 · 0 评论 -
Tensorflow深度学习之十二:基础图像处理之二
首先放出原始图像:1、图像的翻转import tensorflow as tfimport cv2# 这里定义一个tensorflow读取的图片格式转换为opencv读取的图片格式的函数# 请注意:# 在tensorflow中,一个像素点的颜色顺序是R,G,B。# 在opencv中,一个像素点的颜色顺序是B,G,R。# 因此,我们循环遍历每一个像素点,将第0位的颜色和第2位的颜色数值换一下原创 2017-08-02 21:03:38 · 4882 阅读 · 0 评论 -
Tensorflow深度学习之十一:基础图像处理
OpenCV是一个十分强大的视觉库,tensorflow也提供了十分强大的图片处理函数,下面是一个简单的例子来说明使用tensorflow和opencv两个工具进行深度学习程序的设计。首先是使用的原始图片:import tensorflow as tfimport cv2# 这里定义一个tensorflow读取的图片格式转换为opencv读取的图片格式的函数# 请注意:# 在tensorflo原创 2017-08-02 20:31:23 · 6289 阅读 · 0 评论 -
Tensorflow深度学习之十四:Tensorflow变量管理
声明:本篇文章参考《Tensorflow实战Google深度学习框架》一书Tensorflow提供了通过变量名称来创建或者获取一个变量的机制。通过这个机制,在不同的函数中可以直接通过变量的名字来使用变量,而不需要将变量通过参数的形式到处传递。Tensorflow中通过便令名称获取变量的机制主要是通过tf.get_variable和tf.variable_scope函数实现的。除了tf.原创 2017-08-09 10:33:47 · 1053 阅读 · 1 评论 -
Tensorflow深度学习之十五:VGG16模型的简单自主实现
VGG16模型是一种十分强大的分类模型,如下是VGG模型的结构,在这里我们实现的是D列,即VGG16。图中,conv3-64表示该层卷积核的大小为3x3,有64个卷积核,conv3-128等则以此类推。如下是实现VGG16模型的Tensoflow代码:(注:由于VGG16模型深度达到16层,是一种十分庞大的模型,训练十分消耗时间和计算机资源,因此,这里我们只模拟网络的构建以及随机生成一张图片进行预测原创 2017-08-16 17:44:01 · 22219 阅读 · 8 评论 -
Tensorflow深度学习之十三:基础图像处理之三
首先放出原图:1、处理标注框import tensorflow as tfimport cv2# 这里定义一个tensorflow读取的图片格式转换为opencv读取的图片格式的函数# 请注意:# 在tensorflow中,一个像素点的颜色顺序是R,G,B。# 在opencv中,一个像素点的颜色顺序是B,G,R。# 因此,我们循环遍历每一个像素点,将第0位的颜色和第2位的颜色数值换一下即可原创 2017-08-08 21:41:53 · 2587 阅读 · 0 评论 -
Tensorflow深度学习之八:再探CNN解决mnist手写数字识别问题
前几天碰到的第二个深度学习的程序就是CNN(卷积神经网络)解决mnist手写数字的识别问题,但是碍于个人能力,很多地方不是很理解,现在学习了一些基本的概念之后,重新将加了注释的源代码贴上,与大家分享,基本上每一条语句都标注了注释,很多参数的设置也有相应的说明。 (本人也是最近刚刚接触Tensorflow,如有相关概念理解错误,还请大家不吝指出。)from tensorflow.example原创 2017-07-22 16:54:57 · 1231 阅读 · 0 评论 -
Tensorflow深度学习之五:激活函数
激活函数的作用在神经网络中,激活函数的作用是能够给神经网络加入一些非线性因素,使得神经网络可以更好地解决较为复杂的问题。 我们尝试引入非线性的因素,对样本进行分类。在神经网络中也类似,我们需要引入一些非线性的因素,来更好地解决复杂的问题。而激活函数恰好就是那个能够帮助我们引入非线性因素的存在,使得我们的神经网络能够更好地解决较为复杂的问题。常见的激活函数有Sigmoid,Relu,tanh等。原创 2017-07-18 17:08:50 · 6829 阅读 · 0 评论 -
Tensorflow深度学习之四:placeholder和Session
本文简单介绍了一下Tensorflow中的placeholder的使用方法。(由于本人最近刚刚接触Tensorflow,对其中的概念若有解释错误,还请不吝指出。)import tensorflow as tf#Tensorflow默认会话sess = tf.InteractiveSession()#建立两个矩阵变量w1和w2#tf.random_normal(shape,#原创 2017-07-18 14:49:25 · 4251 阅读 · 0 评论 -
Tensorflow深度学习之三:基础概念篇(矩阵相乘)
Tensorflow中有很多地方需要用到矩阵相乘,这里通过一个小程序讲解一下矩阵相乘中所涉及的基本概念。(由于本人刚刚接触Tensorflow,有些概念讲解若有错误,请不吝指出。)import tensorflow as tf#Tensorflow默认会话sess = tf.InteractiveSession()#建立两个矩阵变量w1和w2#tf.random_normal(shape,原创 2017-07-18 12:43:07 · 5144 阅读 · 4 评论 -
Tensorflow深度学习之七:再谈mnist手写数字识别程序
之前学习的第一个深度学习的程序就是mnist手写字体的识别,那个时候对于很多概念不是很理解,现在回过头再看当时的代码,理解了很多,现将加了注释的代码贴上,与大家分享。(本人还是在学习Tensorflow的初始阶段,如果有什么地方理解有误,还请大家不吝指出。)from tensorflow.examples.tutorials.mnist import input_data# 下载mnist数据集至当原创 2017-07-21 11:24:53 · 1686 阅读 · 0 评论