Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
FluidDoc
提交
58dfa539
F
FluidDoc
项目概览
PaddlePaddle
/
FluidDoc
通知
7
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
23
列表
看板
标记
里程碑
合并请求
111
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
FluidDoc
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
23
Issue
23
列表
看板
标记
里程碑
合并请求
111
合并请求
111
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
58dfa539
编写于
9月 25, 2019
作者:
W
wangguanzhong
提交者:
GitHub
9月 25, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refine api_cn, test=document_preview (#1255)
* refine api_cn, test=document_preview
上级
85829977
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
138 addition
and
164 deletion
+138
-164
doc/fluid/api_cn/layers_cn/anchor_generator_cn.rst
doc/fluid/api_cn/layers_cn/anchor_generator_cn.rst
+15
-20
doc/fluid/api_cn/layers_cn/bipartite_match_cn.rst
doc/fluid/api_cn/layers_cn/bipartite_match_cn.rst
+11
-14
doc/fluid/api_cn/layers_cn/box_clip_cn.rst
doc/fluid/api_cn/layers_cn/box_clip_cn.rst
+8
-18
doc/fluid/api_cn/layers_cn/box_coder_cn.rst
doc/fluid/api_cn/layers_cn/box_coder_cn.rst
+31
-20
doc/fluid/api_cn/layers_cn/box_decoder_and_assign_cn.rst
doc/fluid/api_cn/layers_cn/box_decoder_and_assign_cn.rst
+12
-15
doc/fluid/api_cn/layers_cn/clip_by_norm_cn.rst
doc/fluid/api_cn/layers_cn/clip_by_norm_cn.rst
+6
-5
doc/fluid/api_cn/layers_cn/clip_cn.rst
doc/fluid/api_cn/layers_cn/clip_cn.rst
+1
-5
doc/fluid/api_cn/layers_cn/collect_fpn_proposals_cn.rst
doc/fluid/api_cn/layers_cn/collect_fpn_proposals_cn.rst
+11
-13
doc/fluid/api_cn/layers_cn/distribute_fpn_proposals_cn.rst
doc/fluid/api_cn/layers_cn/distribute_fpn_proposals_cn.rst
+13
-12
doc/fluid/api_cn/layers_cn/maxout_cn.rst
doc/fluid/api_cn/layers_cn/maxout_cn.rst
+9
-16
doc/fluid/api_cn/layers_cn/prelu_cn.rst
doc/fluid/api_cn/layers_cn/prelu_cn.rst
+9
-8
doc/fluid/api_cn/layers_cn/roi_align_cn.rst
doc/fluid/api_cn/layers_cn/roi_align_cn.rst
+12
-18
未找到文件。
doc/fluid/api_cn/layers_cn/anchor_generator_cn.rst
浏览文件 @
58dfa539
...
...
@@ -8,22 +8,26 @@ anchor_generator
**Anchor generator operator**
为Faster RCNN算法生成anchor,输入的每一位产生N个anchor,N=size(anchor_sizes)*size(aspect_ratios)。生成anchor的顺序首先是aspect_ratios循环,然后是anchor_sizes循环。
**该OP仅支持CPU**
参数:
- **input** (Variable) -
输入特征图,格式为NCHW
- **anchor_sizes** (
list|tuple|float) - 生成anchor的anchor大小,以绝对像素的形式表示,例如:[64.,128.,256.,512.]。若anchor的大小为64,则意味着这个anchor的面积等于64**2
。
- **aspect_ratios** (
list|tuple|float) - 生成anchor的高宽比,例如[0.5,1.0,2.0]
- **variance** (list|tuple
) - 变量,在框回归delta中使用。默认:[0.1,0.1,0.2,0.2]
- **stride** (list|tuple
) - anchor在宽度和高度方向上的步长,比如[16.0,16.0]
- **offset** (float
) - 先验框的中心位移。默认:
0.5
- **name** (str
) - 先验框操作符名称。默认:None
- **input** (Variable) -
维度为[N,C,H,W]的4-D Tensor。数据类型为float32或float64。
- **anchor_sizes** (
float32|list|tuple,可选) - 生成anchor的anchor大小,以绝对像素的形式表示,例如:[64.,128.,256.,512.]。若anchor的大小为64,则意味着这个anchor的面积等于64**2。默认值为None
。
- **aspect_ratios** (
float32|list|tuple,可选) - 生成anchor的高宽比,例如[0.5,1.0,2.0]。默认值为None。
- **variance** (list|tuple
,可选) - 变量,在框回归delta中使用,数据类型为float32。默认值为[0.1,0.1,0.2,0.2]。
- **stride** (list|tuple
,可选) - anchor在宽度和高度方向上的步长,比如[16.0,16.0],数据类型为float32。默认值为None。
- **offset** (float
32,可选) - 先验框的中心位移。默认值为
0.5
- **name** (str
,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
返回:
- Anchors(Varibale): 输出anchor,布局[H,W,num_anchors,4] , ``H`` 是输入的高度, ``W`` 是输入的宽度, ``num_anchors`` 是输入每位的框数,每个anchor格式(未归一化)为(xmin,ymin,xmax,ymax)
- Variances(Variable): anchor的扩展变量布局为 [H,W,num_priors,4]。 ``H`` 是输入的高度, ``W`` 是输入的宽度, ``num_priors`` 是输入每个位置的框数,每个变量的格式为(xcenter,ycenter,w,h)。
- 表示输出anchor的Tensor,数据类型为float32或float64。维度为[H,W,num_anchors,4]。 ``H`` 是输入的高度, ``W`` 是输入的宽度, ``num_anchors`` 是输入每位的框数,每个anchor格式(未归一化)为(xmin,ymin,xmax,ymax)
- 表示输出anchor的Tensor,数据类型为float32或float64。维度为[H,W,num_priors,4]。 ``H`` 是输入的高度, ``W`` 是输入的宽度, ``num_priors`` 是输入每个位置的框数,每个变量的格式为(xcenter,ycenter,w,h)。
返回类型:Variable
返回类型:Anchors(Variable),Variances(Variable)
**代码示例**:
...
...
@@ -37,13 +41,4 @@ anchor_generator
aspect_ratios=[0.5, 1.0, 2.0],
variance=[0.1, 0.1, 0.2, 0.2],
stride=[16.0, 16.0],
offset=0.5)
offset=0.5)
\ No newline at end of file
doc/fluid/api_cn/layers_cn/bipartite_match_cn.rst
浏览文件 @
58dfa539
...
...
@@ -5,7 +5,8 @@ bipartite_match
.. py:function:: paddle.fluid.layers.bipartite_match(dist_matrix, match_type=None, dist_threshold=None, name=None)
该算子实现了贪心二分匹配算法,该算法用于根据输入距离矩阵获得与最大距离的匹配。对于输入二维矩阵,二分匹配算法可以找到每一行的匹配列(匹配意味着最大距离),也可以找到每列的匹配行。此算子仅计算列到行的匹配索引。对于每个实例,匹配索引的数量是输入距离矩阵的列号。
该OP实现了贪心二分匹配算法,该算法用于根据输入距离矩阵获得与最大距离的匹配。对于输入二维矩阵,二分匹配算法可以找到每一行的匹配列(匹配意味着最大距离),也可以找到每列的匹配行。此算子仅计算列到行的匹配索引。对于每个实例,匹配索引的数量是
输入距离矩阵的列号。**该OP仅支持CPU**
它有两个输出,匹配的索引和距离。简单的描述是该算法将最佳(最大距离)行实体与列实体匹配,并且匹配的索引在ColToRowMatchIndices的每一行中不重复。如果列实体与任何行实体不匹配,则ColToRowMatchIndices设置为-1。
...
...
@@ -14,20 +15,19 @@ bipartite_match
注意:此API是一个非常低级别的API。它由 ``ssd_loss`` 层使用。请考虑使用 ``ssd_loss`` 。
参数:
- **dist_matrix** (变量)- 该输入是具有形状[K,M]的2-D LoDTensor。它是由每行和每列来表示实体之间的成对距离矩阵。例如,假设一个实体是具有形状[K]的A,另一个实体是具有形状[M]的B. dist_matrix [i] [j]是A[i]和B[j]之间的距离。距离越大,匹配越好。
- **dist_matrix** (Variable)- 维度为:math:`[K,M]`的2-D LoDTensor,数据类型为float32或float64。它是由每行和每列来表示实体之间的成对距离矩阵。例如,假设一个实体是具有形状[K]的A,另一个实体是具有形状[M]的B. dist_matrix [i] [j]是A[i]和B[j]之间的距离。距离越大,匹配越好。注意:此张量可以包含LoD信息以表示一批输入。该批次的一个实例可以包含不同数量的实体。
- **match_type** (str,可选)- 匹配方法的类型,应为'bipartite'或'per_prediction'。默认值为None,即'bipartite'。
- **dist_threshold** (float32,可选)- 如果match_type为'per_prediction',则此阈值用于根据最大距离确定额外匹配的bbox,默认值为None,即0.5。
- **name** (str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
注意:此张量可以包含LoD信息以表示一批输入。该批次的一个实例可以包含不同数量的实体。
返回:
- **match_type** (string | None)- 匹配方法的类型,应为'bipartite'或'per_prediction'。[默认'二分']
。
- **dist_threshold** (float | None)- 如果match_type为'per_prediction',则此阈值用于根据最大距离确定额外匹配的bbox,默认值为0.5
。
- matched_indices(Variable)- 维度为[N,M]的2-D Tensor, 数据类型为int32。 N是批量大小。如果match_indices[i][j]为-1,则表示B[j]与第i个实例中的任何实体都不匹配。否则,这意味着在第i个实例中B[j]与行match_indices[i][j]匹配。第i个实>例的行号保存在match_indices[i][j]中
。
- matched_distance(Variable)- 维度为[N,M]的2-D Tensor, 数据类型为float32,。 N是批量大小。如果match_indices[i][j]为-1,则match_distance[i][j]也为-1.0。否则,假设match_distance[i][j]=d,并且每个实例的行偏移称为LoD。然后match_distance[i][j]=dist_matrix[d]+ LoD[i]][j]
。
返回: 返回一个包含两个元素的元组。第一个是匹配的索引(matched_indices),第二个是匹配的距离(matched_distance)。
**matched_indices** 是一个2-D Tensor,int类型的形状为[N,M]。 N是批量大小。如果match_indices[i][j]为-1,则表示B[j]与第i个实例中的任何实体都不匹配。否则,这意味着在第i个实例中B[j]与行match_indices[i][j]匹配。第i个实例的行号保存在match_indices[i][j]中。
返回类型:Tuple
**matched_distance** 是一个2-D Tensor,浮点型的形状为[N,M]。 N是批量大小。如果match_indices[i][j]为-1,则match_distance[i][j]也为-1.0。否则,假设match_distance[i][j]=d,并且每个实例的行偏移称为LoD。然后match_distance[i][j]=dist_matrix[d]+ LoD[i]][j]。
返回类型: 元组(tuple)
**代码示例**
...
...
@@ -37,7 +37,4 @@ bipartite_match
x = fluid.layers.data(name='x', shape=[4], dtype='float32')
y = fluid.layers.data(name='y', shape=[4], dtype='float32')
iou = fluid.layers.iou_similarity(x=x, y=y)
matched_indices, matched_dist = fluid.layers.bipartite_match(iou)
matched_indices, matched_dist = fluid.layers.bipartite_match(iou)
\ No newline at end of file
doc/fluid/api_cn/layers_cn/box_clip_cn.rst
浏览文件 @
58dfa539
...
...
@@ -5,7 +5,7 @@ box_clip
.. py:function:: paddle.fluid.layers.box_clip(input, im_info, name=None)
将
box
框剪切为 ``im_info`` 给出的大小。对于每个输入框,公式如下:
将
检测框
框剪切为 ``im_info`` 给出的大小。对于每个输入框,公式如下:
::
...
...
@@ -14,7 +14,7 @@ box_clip
xmax = max(min(xmax, im_w - 1), 0)
ymax = max(min(ymax, im_h - 1), 0)
其中im_w和im_h是
从
im_info计算的:
其中im_w和im_h是
通过
im_info计算的:
::
...
...
@@ -23,13 +23,13 @@ box_clip
参数:
- **input
(variable)** – 输入框,最后一个维度为4
- **im_info
(variable)** – 具有(高度height,宽度width,比例scale)排列的形为[N,3]的图像的信息。高度和宽度是输入大小,比例是输入大小和原始大小的比率
- **name
(str)** – 该层的名称。 为可选项
- **input
** (Variable) – 维度为[N_1, N_2, ..., N_k, 4]的多维Tensor,其中最后一维为box坐标维度。数据类型为float32或float64。
- **im_info
** (Variable) – 维度为[N, 3]的2-D Tensor,N为输入图片个数。具有(高度height,宽度width,比例scale)图像的信息,其中高度和宽度是输入大小,比例是输入大小和原始大小的比率。数据类型为float32或float64。
- **name
** (str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
返回:
剪切后的tensor
返回:
表示剪切后的检测框的Tensor或LoDTensor,数据类型为float32或float64,形状与输入检测框相同
返回类型:
Variable
返回类型:Variable
**代码示例**
...
...
@@ -41,14 +41,4 @@ box_clip
name='boxes', shape=[8, 4], dtype='float32', lod_level=1)
im_info = fluid.layers.data(name='im_info', shape=[3])
out = fluid.layers.box_clip(
input=boxes, im_info=im_info)
input=boxes, im_info=im_info)
\ No newline at end of file
doc/fluid/api_cn/layers_cn/box_coder_cn.rst
浏览文件 @
58dfa539
...
...
@@ -40,22 +40,23 @@ Bounding Box Coder
参数:
- **prior_box** (Variable) - 张量,默认float类型的张量。先验框是二维张量,维度为[M,4],存储M个框,每个框代表[xmin,ymin,xmax,ymax],[xmin,ymin]是先验框的左顶点坐标,如果输入数图像特征图,则接近坐标原点。[xmax,ymax]是先验框的右底点坐标
- **prior_box_var** (Variable|list|None) - 支持两种输入类型,一是二维张量,维度为[M,4],存储M个prior box。另外是一个含有4个元素的list,所有prior box共用这个list。
- **target_box** (Variable) - LoDTensor或者Tensor,当code_type为‘encode_center_size’,输入可以是二维LoDTensor,维度为[N,4]。当code_type为‘decode_center_size’输入可以为三维张量,维度为[N,M,4]。每个框代表[xmin,ymin,xmax,ymax],[xmin,ymin]是先验框的左顶点坐标,如果输入数图像特征图,则接近坐标原点。[xmax,ymax]是先验框的右底点坐标。该张量包含LoD信息,代表一批输入。批的一个实例可以包含不同的实体数。
- **code_type** (string,默认encode_center_size) - 编码类型用目标框,可以是encode_center_size或decode_center_size
- **box_normalized** (boolean,默认true) - 是否将先验框作为正则框
- **name** (string) – box编码器的名称
- **axis** (int) – 在PriorBox中为axis指定的轴broadcast以进行框解码,例如,如果axis为0且TargetBox具有形状[N,M,4]且PriorBox具有形状[M,4],则PriorBox将broadcast到[N,M,4]用于解码。 它仅在code_type为decode_center_size时有效。 默认设置为0。
- **prior_box** (Variable) - 维度为[M,4]的2-D Tensor,M表示存储M个框,数据类型为float32或float64。先验框,每个框代表[xmin,ymin,xmax,ymax],[xmin,ymin]是先验框的左顶点坐标,如果输入数图像特征图,则接近坐标原点。[xmax,ymax]是先验框的右底点坐
标
- **prior_box_var** (list|Variable|None) - 支持三种输入类型,一是维度为:math:`[M,4]`的2-D Tensor,存储M个先验框的variance,数据类型为float32或float64。另外是一个长度为4的列表,所有先验框共用这个列表中的variance,数据类型为float32或float64。为None时不参与计算。
- **target_box** (Variable) - 数据类型为float,double的Tensor或者LoDTensor,当code_type为‘encode_center_size’,输入是二维LoDTensor,维度为[N,4],N为目标框的个数,目标框的格式与先验框相同。当code_type为‘decode_center_size’,输>入为3-D Tensor,维度为[N,M,4]。通常N表示产生检测框的个数,M表示类别数。此时目标框为偏移量。
- **code_type** (str) - 编码类型用目标框,可以是encode_center_size或decode_center_size,默认值为`encode_center_size`
- **box_normalized** (bool) - 先验框坐标是否正则化,即是否在[0, 1]区间内。默认值为true
- **name** (str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
- **axis** (int32) – 在PriorBox中为axis指定的轴broadcast以进行框解码,例如,如果axis为0,TargetBox具有形状[N,M,4]且PriorBox具有形状[M,4],则PriorBox将broadcast到[N,M,4]用于解码。仅在code_type为decode_center_size时有效。默认值为0
返回:
- 表示解码或编码结果的Tensor或LoDTensor。数据类型为float32或float64。
- ``code_type`` 为 ``‘encode_center_size’`` 时,形状为[N,M,4]的编码结果,N为目标框的个数,M为先验框的个数。
- ``code_type`` 为 ``‘decode_center_size’`` 时,形状为[N,M,4]的解码结果,形状与输入目标框相同。
- ``code_type`` 为 ``‘encode_center_size’`` 时,形为[N,M,4]的输出张量代表N目标框的结果,目标框用M先验框和变量编码。
- ``code_type`` 为 ``‘decode_center_size’`` 时,N代表batch大小,M代表解码框数
返回类型:output_box(Variable)
返回类型:Variable
**代码示例**
...
...
@@ -63,21 +64,31 @@ Bounding Box Coder
.. code-block:: python
import paddle.fluid as fluid
prior_box = fluid.layers.data(name='prior_box',
# For encode
prior_box_encode = fluid.layers.data(name='prior_box_encode',
shape=[512, 4],
dtype='float32',
append_batch_size=False)
target_box = fluid.layers.data(name='target_box',
target_box_encode = fluid.layers.data(name='target_box_encode',
shape=[81,4],
dtype='float32',
append_batch_size=False)
output_encode = fluid.layers.box_coder(prior_box=prior_box_encode,
prior_box_var=[0.1,0.1,0.2,0.2],
target_box=target_box_encode,
code_type="encode_center_size")
# For decode
prior_box_decode = fluid.layers.data(name='prior_box_decode',
shape=[512, 4],
dtype='float32',
append_batch_size=False)
target_box_decode = fluid.layers.data(name='target_box_decode',
shape=[512,81,4],
dtype='float32',
append_batch_size=False)
output
= fluid.layers.box_coder(prior_box=prior_box
,
output
_decode = fluid.layers.box_coder(prior_box=prior_box_decode
,
prior_box_var=[0.1,0.1,0.2,0.2],
target_box=target_box,
target_box=target_box
_decode
,
code_type="decode_center_size",
box_normalized=False,
axis=1)
axis=1)
\ No newline at end of file
doc/fluid/api_cn/layers_cn/box_decoder_and_assign_cn.rst
浏览文件 @
58dfa539
...
...
@@ -7,7 +7,7 @@ box_decoder_and_assign
边界框编码器。
根据
prior_box
来解码目标边界框。
根据
先验框
来解码目标边界框。
解码方案为:
...
...
@@ -26,22 +26,22 @@ box decode过程得出decode_box,然后分配方案如下所述:
参数:
- **prior_box** (Variable) - (Tensor,默认Tensor <float>)框列表PriorBox是一个二维张量,形状为[N,4],它包含N个框,每个框表示为[xmin,ymin,xmax,ymax], [xmin,ymin]是anchor框的左上坐标,如果输入是图像特征图,则它们接近坐标系的原点。 [xmax,ymax]是anchor框的右下坐标
- **prior_box_var** (Variable) - (Tensor,默认Tensor <float>,可选)PriorBoxVar是一个二维张量,形状为[N,4],它包含N组variance。 PriorBoxVar默认将所有元素设置为1
- **target_box** (Variable) - (LoDTensor或Tensor)此输入可以是形状为[N,classnum * 4]的2-D LoDTensor。它拥有N个框的N个目标
- **box_score** (变量) - (LoDTensor或Tensor)此输入可以是具有形状[N,classnum]的2-D LoDTensor,每个框表示为[classnum],其中含有各分类概率值
- **box_clip** (FLOAT) - (float,默认4.135,np.log(1000. / 16.))裁剪框以防止溢出
- **name** (str | None) - 此算子的自定义名称
- **prior_box** (Variable) - 维度为[N,4]的2-D Tensor,包含N个框,数据类型为float32或float64。每个框表示为[xmin,ymin,xmax,ymax], [xmin,ymin]是anchor框的左上坐标,如果输入是图像特征图,则它们接近坐标系的原点。 [xmax,ymax]是anchor框的右下坐标
- **prior_box_var** (Variable) - 维度为[N,4]的2-D Tensor,包含N组variance。数据类型为float32或float64。 prior_box_var默认将所有元素设置为1
- **target_box** (Variable) - 维度为[N,classnum * 4]的2-D Tensor或LoDTensor,拥有N个目标框,数据类型为float32或float64。
- **box_score** (Variable) - 维度为[N,classnum]的2-D Tensor或LoDTensor,拥有N个目标框,数据类型为float32或float64。表示每个框属于各分类概率值。
- **box_clip** (float32) - 裁剪框以防止溢出,默认值为4.135(即np.log(1000. / 16.))
- **name** (str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
返回:
返回:两个变量:
- 表示解压检测框的Tensor或LoDTensor,数据类型为float32,float64。维度为[N,classnum * 4],N个prior_box解码得到的N个目标框的结果。
- 表示输出最佳检测框的Tensor或LoDTensor,数据类型为float32,float64。维度为[N,4],N个prior_box解码后得到目标框,再选择最佳非背景类的目标框结果。
- decode_box(Variable):( LoDTensor或Tensor)op的输出张量,形为[N,classnum * 4],表示用M个prior_box解码的N个目标框的结果,以及每个类上的variance
- output_assign_box(Variable):( LoDTensor或Tensor)op的输出张量,形为[N,4],表示使用M个prior_box解码的N个目标框的结果和BoxScore的最佳非背景类的方差
返回类型:
decode_box(Variable), output_assign_box(Variable)
返回类型:
Tuple
**代码示例**
...
...
@@ -60,6 +60,3 @@ box decode过程得出decode_box,然后分配方案如下所述:
decoded_box, output_assign_box = fluid.layers.box_decoder_and_assign(
pb, pbv, loc, scores, 4.135)
doc/fluid/api_cn/layers_cn/clip_by_norm_cn.rst
浏览文件 @
58dfa539
...
...
@@ -16,13 +16,14 @@ ClipByNorm算子
参数:
- **x** (Variable)-
(Tensor)
clip_by_norm运算的输入,维数必须在[1,9]之间。
- **max_norm** (float)- 最大范数值。
- **name** (
basestring | None)- 输出的名称
。
- **x** (Variable)-
多维Tensor或LoDTensor,数据类型为float32。
clip_by_norm运算的输入,维数必须在[1,9]之间。
- **max_norm** (float
32
)- 最大范数值。
- **name** (
str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None
。
返回:
(Tensor)clip_by_norm操作后的输出和输入(X)具有形状(shape)
.
返回:
表示为输出Tensor或LoDTensor,数据类型为float32。和输入(X)具有相同的形状
.
返回类型: Variable
返回类型:Variable
**代码示例:**
...
...
doc/fluid/api_cn/layers_cn/clip_cn.rst
浏览文件 @
58dfa539
...
...
@@ -25,14 +25,10 @@ clip算子限制给定输入的值在一个区间内。间隔使用参数"min"
**代码示例:**
.. code-block:: python
import paddle.fluid as fluid
input = fluid.layers.data(
name='data', shape=[1], dtype='float32')
reward = fluid.layers.clip(x=input, min=-1.0, max=1.0)
doc/fluid/api_cn/layers_cn/collect_fpn_proposals_cn.rst
浏览文件 @
58dfa539
...
...
@@ -5,24 +5,26 @@ collect_fpn_proposals
.. py:function:: paddle.fluid.layers.collect_fpn_proposals(multi_rois, multi_scores, min_level, max_level, post_nms_top_n, name=None)
连接多级RoIs(感兴趣区域)并依据multi_scores选择N个RoIs。此操作执行以下步骤:
**该op仅支持LoDTensor输入**。
连接多级RoIs(感兴趣区域)并依据multi_scores选择N个RoIs。此操作执行以下步骤:
1、选择num_level个RoIs和scores作为输入:num_level = max_level - min_level
2、连接num_level个RoIs和scores。
3、
整理scores
并选择post_nms_top_n个scores。
4、通过scores中的选定
指数
收集RoIs。
5、通过对应的batch_id重新
整理RoIs
。
3、
对scores排序
并选择post_nms_top_n个scores。
4、通过scores中的选定
位置
收集RoIs。
5、通过对应的batch_id重新
对RoIs排序
。
参数:
- **multi_ros** (list) – 要收集的RoIs列表
- **multi_ros** (list) – 要收集的RoIs列表
,列表中的元素为[N, 4]的2-D LoDTensor, 数据类型为float,double,其中N为RoI的个数。
- **multi_scores** (list) - 要收集的FPN层的最低级
- **max_level** (int) – 要收集的FPN层的最高级
- **post_nms_top_n** (int) – 所选RoIs的数目
- **name** (str
|None) – 该层的名称(可选项)
- **name** (str
,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
返回:选定RoIs的输出变量
返回:表示选定具有高分数的RoIs的LoDTensor,数据类型为float32或float64,同时具有LoD信息,维度为[M, 4],其中M为post_nms_top_n。
返回类型:Variable
返回类型:变量(Variable)
**代码示例**
...
...
@@ -37,14 +39,10 @@ collect_fpn_proposals
for i in range(4):
multi_scores.append(fluid.layers.data(
name='score_'+str(i), shape=[1], dtype='float32', lod_level=1))
fpn_rois = fluid.layers.collect_fpn_proposals(
multi_rois=multi_rois,
multi_scores=multi_scores,
min_level=2,
max_level=5,
post_nms_top_n=2000)
doc/fluid/api_cn/layers_cn/distribute_fpn_proposals_cn.rst
浏览文件 @
58dfa539
...
...
@@ -5,7 +5,7 @@ distribute_fpn_proposals
.. py:function:: paddle.fluid.layers.distribute_fpn_proposals(fpn_rois, min_level, max_level, refer_level, refer_scale, name=None)
在 Feature Pyramid Networks(FPN)模型中,需要将所有proposal分配到不同的FPN级别,包括proposal的比例,引用比例和引用级别
。 此外,为了恢复proposals的顺序,我们返回一个数组,该数组表示当前proposals中的原始RoIs索引。 要计算每个RoI的FPN级别,公式如下:
**该op仅支持LoDTensor输入**。在 Feature Pyramid Networks(FPN)模型中,需要依据proposal的尺度和参考尺度与级别将所有proposal分配到不同的FPN级别中
。 此外,为了恢复proposals的顺序,我们返回一个数组,该数组表示当前proposals中的原始RoIs索引。 要计算每个RoI的FPN级别,公式如下:
.. math::
roi\_scale &= \sqrt{BBoxArea(fpn\_roi)}\\
...
...
@@ -15,16 +15,20 @@ distribute_fpn_proposals
参数:
- **fpn_rois** (
variable) - 输入fpn_rois,第二个维度为
4。
- **min_level** (int) - 产生proposal最低级别FPN层。
- **max_level** (int) - 产生proposal最高级别FPN层。
- **refer_level** (int) - 具有指定比例的FPN层的引用级别。
- **refer_scale** (int) - 具有指定级别的FPN层的引用比例。
- **name**
(str | None) - 此算子的名称
。
- **fpn_rois** (
Variable) - 维度为[N,4]的2-D LoDTensor,其中N为检测框的个数,数据类型为float32或float6
4。
- **min_level** (int
32
) - 产生proposal最低级别FPN层。
- **max_level** (int
32
) - 产生proposal最高级别FPN层。
- **refer_level** (int
32
) - 具有指定比例的FPN层的引用级别。
- **refer_scale** (int
32
) - 具有指定级别的FPN层的引用比例。
- **name**
(str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None
。
返回:
返回一个元组(multi_rois,restore_ind)。 multi_rois是分段张量变量的列表。 restore_ind是具有形状[N,1]的2D张量,N是总rois的数量。 它用于恢复fpn_rois的顺序。
返回:
返回类型: tuple
- multi_rois(List)- 长度为(max_level-min_level+1)的列表,其中元素为Variable,维度为[M, 4]的2-D LoDTensor,M为每个级别proposal的个数,数据类型为float32或float64。表示每个FPN级别包含的proposals。
- restore_ind(Variable)- 维度为[N,1]的Tensor,N是总rois的数量。数据类型为int32。 它用于恢复fpn_rois的顺序。
返回类型:Tuple
**代码示例**:
...
...
@@ -40,6 +44,3 @@ distribute_fpn_proposals
max_level=5,
refer_level=4,
refer_scale=224)
doc/fluid/api_cn/layers_cn/maxout_cn.rst
浏览文件 @
58dfa539
...
...
@@ -22,16 +22,19 @@ maxout
- Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks: https://arxiv.org/pdf/1312.6082v4.pdf
参数:
- **x** (Variable) -
(tensor) maxout算子的输入张量。输入张量的格式为NCHW。其中N为 batch size ,C为通道数,H和W为feature的高和宽
- **groups** (
INT
)- 指定将输入张量的channel通道维度进行分组的数目。输出的通道数量为通道数除以组数。
- **name** (
basestring|None) - 输出的名称
- **x** (Variable) -
维度为[N,C,H,W]的4-D Tensor,其中N为 batch size ,C为通道数,H和W为特征图的高和宽。数据类型为float32。maxout算子的输入张量。
- **groups** (
int32
)- 指定将输入张量的channel通道维度进行分组的数目。输出的通道数量为通道数除以组数。
- **name** (
str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
返回:Tensor,maxout算子的输出张量。输出张量的格式也是NCHW。其中N为 batch size,C为通道数,H和W为特征的高和宽。
返回类型:out(Variable)
返回:表示为输出的Tensor,数据类型为float32。输出维度也是NCHW。其中N为 batch size,C为通道数,H和W为特征的高和宽。
返回类型:Variable
**代码示例**:
.. code-block:: python
import paddle.fluid as fluid
...
...
@@ -40,13 +43,3 @@ maxout
shape=[256, 32, 32],
dtype='float32')
out = fluid.layers.maxout(input, groups=2)
doc/fluid/api_cn/layers_cn/prelu_cn.rst
浏览文件 @
58dfa539
...
...
@@ -20,14 +20,17 @@ prelu
参数:
- **x** (Variable)-
输入为Tensor
。
- **mode** (str
ing
) - 权重共享模式。
- **param_attr** (ParamAttr
|None) - 可学习权重 :math:`[\alpha]` 的参数属性,可由ParamAttr创建
。
- **name**
(str | None)- 这一层的名称(可选)。如果设置为None,则将自动命名这一层
。
- **x** (Variable)-
多维Tensor或LoDTensor,数据类型为float32
。
- **mode** (str) - 权重共享模式。
- **param_attr** (ParamAttr
,可选) - 可学习权重 :math:`[\alpha]` 的参数属性,可由ParamAttr创建。默认值为None,表示使用默认的权重参数属性。具体用法请参见 :ref:`cn_api_fluid_ParamAttr`
。
- **name**
(str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None
。
返回: 输出Tensor与输入shape相同。
返回类型: 变量(Variable)
返回: 表示激活输出Tensor或LoDTensor,数据类型为float32。与输入形状相同。
返回类型:Variable
**代码示例:**
...
...
@@ -41,5 +44,3 @@ prelu
x,mode,param_attr=ParamAttr(name='alpha'))
doc/fluid/api_cn/layers_cn/roi_align_cn.rst
浏览文件 @
58dfa539
...
...
@@ -12,20 +12,24 @@ Region of Interests align(直译:有意义、有价值选区对齐) 用于实
该运算通过 ``pooled_width`` 和 ``pooled_height`` 将每个推荐区域划分为等大小分块。位置保持不变。
在每个RoI
框中,四个常取样位置会通过双线性插值直接计算。输出为这四个位置的平均值从而解决不对齐
问题。
在每个RoI
分块中,分别取sampling_ratio个点(若为-1则取框内所有点),每个点通过双线性插值直接计算得到坐标。再对分块内取的点取平均值作为小框的坐标值。坐标对齐有误的
问题。
参数:
- **input** (Variable) – (Tensor) 该运算的的输入张量,形为(N,C,H,W)。其中 N 为batch大小, C 为输入通道的个数, H 特征高度, W 特征宽度
- **rois** (Variable) – 待池化的ROIs (Regions of Interest),形为(num_rois,4)的2D张量,lod level 为1。给定比如[[x1,y1,x2,y2], ...],(x1,y1)为左上点坐标,(x2,y2)为右下点坐标。
- **pooled_height** (integer) – (默认为1), 池化后的输出高度
- **pooled_width** (integer) – (默认为1), 池化后的输出宽度
- **spatial_scale** (float) – (默认为1.0),乘法性质空间标尺因子,池化时,将RoI坐标变换至运算采用的标度
- **sampling_ratio** (intger) – (默认为-1),插值格中采样点的数目。 如果它 <=0, 它们将自适应 ``roi_width`` 和 ``pooled_w`` , 在高度上也是同样的道理。
- **input** (Variable) – 维度为[N,C,H,W]的4-D Tensor,N 为batch大小, C 为输入通道的个数, H 特征高度, W 特征宽度。数据类型为float32或float64。
- **rois** (Variable) – 维度为[num_rois,4]2-D LoDTensor,数据类型为float32或float64。待池化的ROIs (Regions of Interest),lod level 为1。给定比如[[x1,y1,x2,y2], ...],(x1,y1)为左上点坐标,(x2,y2)为右下点坐标。
- **pooled_height** (int32,可选) – 池化后的输出高度,默认值为1。
- **pooled_width** (int32,可选) – 池化后的输出宽度,默认值为1。
- **spatial_scale** (float32,可选) – 乘法性质空间标尺因子,池化时,将RoI坐标变换至运算采用的标度,默认值为1.0。
- **sampling_ratio** (int32) – 插值格中采样点的数目。 如果它 <=0, 它们将自适应 ``roi_width`` 和 ``pooled_w`` , 在高度上也是同样的道理。默认值为-1
- **name** (str,可选) – 该参数供开发人员打印调试信息时使用,具体用法请参见 :ref:`api_guide_Name` ,默认值为None。
返回:表示RoI align输出的LoDTensor,数据类型为float32或float64,维度为 (num_rois, channels, pooled_h, pooled_w)
返回:一个形为 (num_rois, channels, pooled_h, pooled_w) 的四维张量
返回类型:Variable
**代码示例**
.. code-block:: python
...
...
@@ -42,13 +46,3 @@ Region of Interests align(直译:有意义、有价值选区对齐) 用于实
spatial_scale=0.5,
sampling_ratio=-1)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录