PyTorch中的grid_sample函数详解
创作时间:
作者:
@小白创作中心
PyTorch中的grid_sample函数详解
引用
CSDN
1.
https://blog.csdn.net/weixin_42392454/article/details/141608192
grid_sample是PyTorch提供的重要函数,主要用于图像处理中的采样操作。它允许通过给定的采样坐标从输入张量中获取相应的值。当采样坐标包含小数时,grid_sample会使用插值方法计算出对应的值。
函数签名
torch.nn.functional.grid_sample(input, grid, mode='bilinear', padding_mode='zeros', align_corners=True)
参数说明
input:这是一个形状为(N, C, H_in, W_in)的4D张量,其中N是批次大小,C是通道数,H_in和W_in分别是输入特征图的高度和宽度。
grid:这是一个形状为(N, H_out, W_out, 2)的4D张量,表示目标位置的网格。最后一维表示每个位置的(x, y)坐标,值的范围通常在[-1, 1]之间,其中-1对应左/上边界,1对应右/下边界。
mode:指定插值方式,有两个选项:
- 'bilinear'(默认):使用双线性插值。
- 'nearest':使用最近邻插值。
- padding_mode:当采样点超出输入特征图边界时指定填充方式,有三个选项:
- 'zeros'(默认):超出边界的点填充为0。
- 'border':超出边界的点采用边界值填充。
- 'reflection':超出边界的点使用对称填充。
- align_corners:这个参数影响坐标网格的解释方式:
- True:采样网格的边缘点直接对齐到原始特征图的像素格上。
- False:采样网格的边缘点直接对齐到原始特征图的像素格的角点上。
插值方法详解
grid_sample提供两种插值方式:
- mode='bilinear'(默认):
- 进行双线性插值(bilinear interpolation)。当坐标包含小数时,grid_sample会根据周围的像素值来计算出精确的采样结果。这意味着,如果采样点的坐标(即displacement)落在像素之间,grid_sample会根据四个相邻像素的值进行加权平均,生成插值结果。
- 具体来说,如果采样点(x, y)对应的坐标在(i, j)和(i+1, j+1)之间,双线性插值会计算如下:
其中,Δx和Δy是坐标的小数部分,V_{i,j}是像素值。value = (1 - Δx)(1 - Δy) \cdot V_{i,j} + Δx(1 - Δy) \cdot V_{i+1,j} + (1 - Δx)Δy \cdot V_{i,j+1} + ΔxΔy \cdot V_{i+1,j+1}
- mode='nearest':
- 采用最近邻插值(nearest-neighbor interpolation)。如果采样坐标包含小数,grid_sample会取最近的整数位置对应的像素值。
grid坐标范围处理
grid的取值范围是[-1, 1],在函数内部会进行尺度的复原:
real ix = THTensor_fastGet4d(grid, n, h, w, 0);
real iy = THTensor_fastGet4d(grid, n, h, w, 1);
// normalize ix, iy from [-1, 1] to [0, IH-1] & [0, IW-1]
ix = ((ix + 1) / 2) * (IW-1);
iy = ((iy + 1) / 2) * (IH-1);
热门推荐
如何破除年轻人“以贷养贷”的恶性循环?
无锡房地产市场7月首周成交平淡,二手房均价触及年内低点
房屋备案号与预售许可证的关联及重要性分析
青衫湿透 王实甫《西厢记》中的人物
男孩聪明有才华的字,代表沉稳睿智的男孩名字
南通大学重点学科名单及简介
慢阻肺、哮喘新疗法正在井喷,生物制剂助力难治性阻塞性肺部疾病
“笠”字的读音、意义及其在传统文化中的重要性探讨
籍贯会随着户口迁移更改吗
Verilog跨时钟域处理之脉冲同步电路详解
一次献血400ml,会对身体造成影响吗?丨健康总动员
win11电脑夜间模式护眼吗?效果如何?
孔雀的英文怎么说
小红书最近流行吃木薯,但《甄嬛传》里不是说它有毒吗?
街子古镇:千年农耕与佛教文化交融的地方
解读道家思想,洞悉自然,追求无为
述评:运动员退役,人生“新起点”如何开启?
如何与外星人交流的数学问题?
种植荔枝需要什么条件?
关于甲流,你需要知道的九件事
哈登与韦德:得分之争
家务劳动能代替运动吗
乳胶漆怎么调配加水加多少
索尼宣称PS2销量已达1.6亿台,荣膺史上销量最高的游戏主机称号
良姜的功效与作用、禁忌和食用方法
唐朝后期的"牛李党争"到底是什么?缘何而起?
干燥季节饮用的汤品,沙参麦冬橄榄瘦肉汤,利咽润喉、清热生津,也适合四季饮用
胰腺炎是这么引起的
科学管理减少西瓜畸形果率
被别人冤枉了该怎么办呢