引言
torch.meshgrid()、torch.clamp()
torch.meshgrid()
x1 ,y1 = torch.meshgrid(x,y)
参数是两个,第一个参数我们假设是x,第二个参数假设就是y
输出的是两个tensor,size就是x.size * y.size(行数是x的个数,列数是y的个数)
具体输出看下面
注意:两个参数的数据类型要相同,要么都是float,要么都是int,否则会报错。
torch.clamp()
torch.clamp(input, min, max, out=None) → Tensor
- 1
将输入input张量每个元素的夹紧到区间 [min,max][min,max],并返回结果到一个新张量。
操作定义如下:
| min, if x_i < min
y_i = | x_i, if min <= x_i <= max
| max, if x_i > max
- 1
- 2
- 3
参数:
- input (Tensor) – 输入张量
- min (Number) – 限制范围下限
- max (Number) – 限制范围上限
- out (Tensor, optional) – 输出张量
示例:
tensor.clamp()
tensor.clamp(min, max, out=None) → Tensor
- 1
跟上面是一样的作用,tensor就是input
参数:
- min (Number) – 限制范围下限
- max (Number) – 限制范围上限
- out (Tensor, optional) – 输出张量
示例:
</div><div id="content_views" class="markdown_views prism-tomorrow-night">
<!-- flowchart 箭头图标 勿删 -->
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
</svg>
<h3><a name="t0"></a><a name="t0"></a><a id="_0"></a>引言</h3>
最近在看mmdetection源码,遇到了torch.meshgrid()、torch.clamp()这两个函数,觉得这两个函数用处很大,所以来记录一下。
torch.meshgrid()
x1 ,y1 = torch.meshgrid(x,y)
参数是两个,第一个参数我们假设是x,第二个参数假设就是y
输出的是两个tensor,size就是x.size * y.size(行数是x的个数,列数是y的个数)
具体输出看下面
注意:两个参数的数据类型要相同,要么都是float,要么都是int,否则会报错。
torch.clamp()
torch.clamp(input, min, max, out=None) → Tensor
- 1
将输入input张量每个元素的夹紧到区间 [min,max][min,max],并返回结果到一个新张量。
操作定义如下:
| min, if x_i < min
y_i = | x_i, if min <= x_i <= max
| max, if x_i > max
- 1
- 2
- 3
参数:
- input (Tensor) – 输入张量
- min (Number) – 限制范围下限
- max (Number) – 限制范围上限
- out (Tensor, optional) – 输出张量
示例:
tensor.clamp()
tensor.clamp(min, max, out=None) → Tensor
- 1
跟上面是一样的作用,tensor就是input
参数:
- min (Number) – 限制范围下限
- max (Number) – 限制范围上限
- out (Tensor, optional) – 输出张量
示例:
</div>