faster-RCNN 加入新的Ground Truth
出于project的需要,不仅要detect和classify对象,还希望建立不同class的对象之间的关系,进行所谓的pair-matching。
需要完成以下几步:
1. dataset中label的增加:
在自定义的dataset类中,方法_load_XXX_annotation(self, index) 增加 gt_pair 这个annotation:
./lib/datasets/bar_noGroup.py:172: gt_pair = np.zeros((num_objs), dtype=np.int32) # for pair-matching algorithm
./lib/datasets/bar_noGroup.py:198: gt_pair[ix] = int(obj.find('ind_class'))
./lib/datasets/bar_noGroup.py:207: 'gt_pair': gt_pair,
2.
lib/layer_utils/proposal_target_layer.py:21:def proposal_target_layer(rpn_rois, rpn_scores, gt_boxes, gt_texts, gt_pair, _num_classes):
lib/layer_utils/proposal_target_layer.py:49: labels, texts, pair, rois, roi_scores, bbox_targets, bbox_inside_weights = _sample_rois(
lib/layer_utils/proposal_target_layer.py:50: all_rois, all_scores, gt_boxes, gt_texts, gt_pair, fg_rois_per_image,
lib/layer_utils/proposal_target_layer.py:60: return rois, roi_scores, labels,texts, pair, Variable(bbox_targets), Variable(bbox_inside_weights), Variable(bbox_outside_weights)
lib/layer_utils/proposal_target_layer.py:107:def _sample_rois(all_rois, all_scores, gt_boxes, gt_texts, gt_pair, fg_rois_per_image, rois_per_image, num_classes):
lib/layer_utils/proposal_target_layer.py:119: pair = [gt_pair[i] for i in gt_assignment]
lib/layer_utils/proposal_target_layer.py:120: print('pair:')
lib/layer_utils/proposal_target_layer.py:121: print(pair)
lib/layer_utils/proposal_target_layer.py:153: pair = [pair[i] for i in keep_inds]
lib/layer_utils/proposal_target_layer.py:167: return labels, texts, pair, rois, roi_scores, bbox_targets, bbox_inside_weights
3.
lib/nets/network.py:215: rois, roi_scores, labels,texts,pair, bbox_targets, bbox_inside_weights, bbox_outside_weights = \
lib/nets/network.py:217: rois, roi_scores, self._gt_boxes, self._gt_texts, self._gt_pair, self._num_classes)
lib/nets/network.py:222: self._proposal_targets['pair'] = pair
lib/nets/network.py:228: if (k != 'texts') and (k != 'pair'):
lib/nets/network.py:293: pair_targets = self._proposal_targets['pair']
lib/nets/network.py:294: #print(pair_targets)
lib/nets/network.py:522: def forward(self, image, im_info, gt_boxes=None, gt_texts=None, gt_pair=None, mode='TRAIN'):
lib/nets/network.py:534: self._gt_pair = gt_pair
lib/nets/network.py:601: blobs['gt_texts'], blobs['gt_pair'])
lib/nets/network.py:610: blobs['gt_texts'], blobs['gt_pair'])
lib/nets/network.py:629: blobs['gt_texts'], blobs['gt_pair'])
4.
lib/roi_data_layer/minibatch.py:50: blobs['gt_pair'] = [roidb[0]['gt_pair'][i] for i in gt_inds]
faster-RCNN 加入新的Ground Truth的更多相关文章
- Faster R-CNN利用新的网络结构来训练
前言 最近利用Faster R-CNN训练数据,使用ZF模型,效果无法有效提高.就想尝试对ZF的网络结构进行改造,记录下具体操作. 一.更改网络,训练初始化模型 这里为了方便,我们假设更换的网络名为L ...
- AI佳作解读系列(二)——目标检测AI算法集杂谈:R-CNN,faster R-CNN,yolo,SSD,yoloV2,yoloV3
1 引言 深度学习目前已经应用到了各个领域,应用场景大体分为三类:物体识别,目标检测,自然语言处理.本文着重与分析目标检测领域的深度学习方法,对其中的经典模型框架进行深入分析. 目标检测可以理解为是物 ...
- faster rcnn讲解很细
https://blog.csdn.net/bailufeiyan/article/details/50749694 https://www.cnblogs.com/dudumiaomiao/p/65 ...
- 第三十一节,目标检测算法之 Faster R-CNN算法详解
Ren, Shaoqing, et al. “Faster R-CNN: Towards real-time object detection with region proposal network ...
- faster rcnn相关内容
转自: https://zhuanlan.zhihu.com/p/31426458 faster rcnn的基本结构 Faster RCNN其实可以分为4个主要内容: Conv layers.作为一种 ...
- 论文阅读笔记二十七:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks(CVPR 2016)
论文源址:https://arxiv.org/abs/1506.01497 tensorflow代码:https://github.com/endernewton/tf-faster-rcnn 室友对 ...
- faster rcnn 详解
转自:https://zhuanlan.zhihu.com/p/31426458 经过R-CNN和Fast RCNN的积淀,Ross B. Girshick在2016年提出了新的Faster RCNN ...
- [转]CNN目标检测(一):Faster RCNN详解
https://blog.csdn.net/a8039974/article/details/77592389 Faster RCNN github : https://github.com/rbgi ...
- Faster R-CNN论文详解 - CSDN博客
废话不多说,上车吧,少年 paper链接:Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks ...
随机推荐
- Saber-图集
PS:狙击手
- gbase安装教程
一.安装前的准备工作 1.对网卡进行配置 [root@gbase8a ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADD ...
- bugku 白哥的鸽子
首先下载之后发现是一个txt 然后更改一下后缀名发现这是一张jpg 图片然后看一下属性然后用hxd分析一下 看看有没有zip 发现没有 然后拖到地下然后发现有一串密码有些问题 然后查一下发现是 栏杆密 ...
- Java进阶学习(4)之继承与多态(上)
继承 媒体资料库的设计 代码复制是质量不良的表现 不具有可扩展性和可维护性 继承 子类父类关系 子类继承了什么 先定义初始化,后构造器 子类和父类的关系 子类有变量和父类变量相同时,父类变量隐藏 父类 ...
- 生成树计数模板 spoj 104 (不用逆元的模板)
/* 这种题,没理解,只是记一记如何做而已: 生成树的计数--Matrix-Tree定理 题目:SPOJ104(Highways) 题目大意: *一个有n座城市的组成国家,城市1至n编号,其中一些城市 ...
- github,gitlab的区别
链接:https://blog.csdn.net/Xiamen_XiaoHong/article/details/83655447 总而言之:gitlab最优
- APP项目下载及运行
1.首先下载Git 2.再下载安装node.js 3.dos窗口下载node.js依赖jar包 执行命令:npm install 4.从Git上down项目 5.运行项目 在项目根目录下 右键 打开 ...
- 关于mybatis中sql映射文件模糊查询的使用
1.从前台传递一个String类型的参数到后台进行查询,如果牵涉到模糊查询会报错,应该把参数封装到对象中再进行传递然后进行模糊查询 2.一个查询框,多个查询条件 <if test="c ...
- Angular 使用 frame 加载网络资源显示路径不安全问题
Angular 使用 frame 加载网络资源显示路径不安全问题 做项目的时候,angular 使用 frame 加载网络pdf文件的时候出现 unsafe value 问题,路径不安全.解决办法. ...
- 理解Javascript的原型和原型链
前言 本文2088字,阅读大约需要13分钟. 总括: 结合实例阐述了原型和原型链的概念并总结了几种创建对象的方法,扩展原型链的方法. 参考文章:The Secret Life of Objects,继 ...