Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
阿飞的客栈
Mask_RCNN
提交
c329f256
M
Mask_RCNN
项目概览
阿飞的客栈
/
Mask_RCNN
与 Fork 源项目一致
从无法访问的项目Fork
通知
7
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
Mask_RCNN
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c329f256
编写于
11月 12, 2017
作者:
W
Waleed Abdulla
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove proposals zero padding
上级
547f1f70
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
10 addition
and
9 deletion
+10
-9
model.py
model.py
+10
-9
未找到文件。
model.py
浏览文件 @
c329f256
...
...
@@ -449,11 +449,12 @@ def detection_targets_graph(proposals, gt_boxes, gt_masks, config):
with
tf
.
control_dependencies
(
asserts
):
proposals
=
tf
.
identity
(
proposals
)
# Remove proposals zero padding
non_zeros
=
tf
.
cast
(
tf
.
reduce_sum
(
tf
.
abs
(
proposals
),
axis
=
1
),
tf
.
bool
)
proposals
=
tf
.
boolean_mask
(
proposals
,
non_zeros
)
# Remove zero padding
proposals
,
_
=
trim_zeros_graph
(
proposals
,
name
=
"trim_proposals"
)
gt_boxes
,
non_zeros
=
trim_zeros_graph
(
gt_boxes
,
name
=
"trim_gt_boxes"
)
gt_masks
=
tf
.
gather
(
gt_masks
,
tf
.
where
(
non_zeros
)[:,
0
],
axis
=
2
,
name
=
"trim_gt_masks"
)
# TODO: Remove zero padding from gt_boxes and gt_masks
# Compute overlaps matrix [rpn_rois, gt_boxes]
# 1. Tile GT boxes and repeate ROIs tensor. This
...
...
@@ -2392,16 +2393,16 @@ def unmold_image(normalized_images, config):
# Miscellenous Graph Functions
############################################################
def
trim_zeros_graph
(
boxes
):
def
trim_zeros_graph
(
boxes
,
name
=
None
):
"""Often boxes are represented with matricies of shape [N, 4] and
are padded with zeros. This removes zero boxes.
boxes: [N, 4] matrix of boxes.
TODO: use this function to reduce code duplication
non_zeros: [N] a 1D boolean mask identifying the rows to keep
"""
area
=
tf
.
boolean_mask
(
boxes
,
tf
.
cast
(
tf
.
reduce_sum
(
tf
.
abs
(
boxes
),
axis
=
1
),
tf
.
bool
))
non_zeros
=
tf
.
cast
(
tf
.
reduce_sum
(
tf
.
abs
(
boxes
),
axis
=
1
),
tf
.
bool
)
boxes
=
tf
.
boolean_mask
(
boxes
,
non_zeros
,
name
=
name
)
return
boxes
,
non_zeros
def
batch_pack_graph
(
x
,
counts
,
num_rows
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录