py-faster-rcnn代码】的更多相关文章

看了py-faster-rcnn上的issue,原来大家都遇到各种问题. 我要好好琢磨一下,看看到底怎么样才能更好地把GPU卡发挥出来.最近真是和GPU卡较上劲了. 上午解决了g++的问题不是. 然后下午我就想我要解决掉yml加载不上的问题.就是easydict版本太低了,可以改代码,也可以从新安装.conda install -c verydeep easydict. 参考:https://github.com/rbgirshick/py-faster-rcnn/issues/201 还有一个…
转自http://www.infocool.net/kb/Python/201611/209696.html#原文地址 第一步,准备 从train_faster_rcnn_alt_opt.py入: 初始化参数:args = parse_args() 采用的是Python的argparse 主要有–net_name,–gpu,–cfg等(在cfg中只是修改了几个参数,其他大部分参数在congig.py中,涉及到训练整个网络). cfg_from_file(args.cfg_file) 这里便是代用…
这段时间看了不少论文,回头看看,感觉还是有必要将Faster rcnn的源码理解一下,毕竟后来很多方法都和它有相近之处,同时理解该框架也有助于以后自己修改和编写自己的框架.好的开始吧- 这里我们跟着Faster rcnn的训练流程来一步一步梳理,进入tools\train_faster_rcnn_alt_opt.py中: 首先从__main__入口处进入,如下: 上图中首先对终端中的命令行进行解析,获取相关的命令参数:然后利用mp.Queue()创建一个多线程的对象,再利用get_solvers…
主要参考文章:1,从编程实现角度学习Faster R-CNN(附极简实现) 经常是做到一半发现收敛情况不理想,然后又回去看看这篇文章的细节. 另外两篇: 2,Faster R-CNN学习总结      这个主要是解释了18, 36是怎么算的 3,目标检测中region proposal的作用? 主要研究了两个版本的 pytorch 代码,第一篇文章作者的实现,以及其提及的最简实现 两个实现我都深入看了并且修改了. Faster R-CNN是两阶段检测:rpn + fast rcnn.rpn最前面…
上一篇我们说完了AnchorTargetLayer层,然后我将Faster rcnn中的其他层看了,这里把ROIPoolingLayer层说一下: 我先说一下它的实现原理:RPN生成的roi区域大小是对应与输入图像大小(而且每一个roi大小都不同,因为先是禅城九种anchors,又经过回归,所以大小各不同),所以在ROIPoolingLayer层中,先将每一个roi区域映射到经过conv5的feature map上,然后roi对应于feature map上的这一块区域再经过pooling操作映射…
接着上篇的博客,咱们继续看一下Faster RCNN的代码- 上次大致讲完了Faster rcnn在训练时是如何获取imdb和roidb文件的,主要都在train_rpn()的get_roidb()函数中,train_rpn()函数后面的部分基本没什么需要讲的了,那我们再回到训练流程中来: 这一步训练的网络结构见下图: 训练的第一步就这么完成了(RPN网络使用gt_roidb训练完成),还有,这里的train_rpn()函数中有涉及到train_net()函数,即用来训练得到网络模型,我会在训练…
紧接着之前的博客,我们继续来看faster rcnn中的AnchorTargetLayer层: 该层定义在lib>rpn>中,见该层定义: 首先说一下这一层的目的是输出在特征图上所有点的anchors(经过二分类和回归): (1)输入blob:bottom[0]储存特征图信息,bottom[1]储存gt框坐标,bottom[2]储存im_info信息: (2)输出blob:top[0]存储anchors的label值(fg是1,bg是0,-1类不关心),top[1]存储的是生成的anchors…
os.environ["CUDA_VISIBLE_DEVICES"]=2 # 设置使用的GPU tfconfig=tf.ConfigProto(allow_soft_placement=True) # 如果分类的GPU没有,允许tf自动分配设备 tfconfig=tf.gpu_options.allow_growth=True # Gpu 按需增加 sess=tf.Session(config=tfconfig) 定义resnet 类 class resnetv1(Network):#…
1.faster_rcnn_end2end训练 1.1训练入口及配置 def train(): cfg.GPU_ID = 0 cfg_file = "../experiments/cfgs/faster_rcnn_end2end.yml" cfg_from_file(cfg_file) if not False: # fix the random seeds (numpy and caffe) for reproducibility np.random.seed(cfg.RNG_SEE…
真是好事多磨啊,计算机系统依然是14.04,而cuda依然是8.0,唯一不同的是时间不一样,下载的各种库版本有差别,GPU的driver不一样. 但是这样就出问题了,py-faster rcnn的lib库编译时总是提示错误. 网上搜了开始的相关帖子都提示说是gcc的版本问题,但是我后来问了一下在原来单位的同事,gcc的版本也没问题,版本和原来用的一样.后来我把cython卸载(0.26.1),从新安装旧版本(0.19.1)依然同样的错误,我没有继续追究版本问题.昨天看到github上的一个帖子说…