F.grid_sample采样
简而言之,该函数就是可以根据自己定义的坐标,按照指定的采样方式,对一张图进行采样。(采样的方式可以是最近邻的,也可以是双线性的,还有bicubic)
输入要求是4维或5维,我们以4维举例,假设输入为input(N_in,C_in,H_in, W_in),再定义grid(N_in, H_out, W_out, 2);grid就是我们要采样的各个点,其最后一个维度2就是坐标, H_out, W_out定义了采样后输出的结果图的大小,最后的输出为output(N_in,C_in,H_out, W_out)
也就是说,采样是在各个通道上单独进行的,比如输入是512个通道,则每一个通道都按照grid的坐标进行采样,所以是不会改变通道数的,但是会改变大小,因为我们把一张图看作是连续的,那么我们可以对其进行无穷尽的采样。
比如:
a为:
grid坐标为:
结果为:
但有个参数要注意,align_corners,它决定了对原图的坐标该怎么设置,这对后面的采样有影响,参考自:pytorch中的grid_sample() (icode9.com)
其他参考:(4条消息) F.grid_sample_北落师门XY的博客-CSDN博客_f.grid_sample
grid_sample()函数及双线性采样 - 知乎 (zhihu.com)
F.grid_sample采样相关推荐
- 在PyTorch中进行双线性采样:原理和代码详解
↑ 点击蓝字 关注视学算法 作者丨土豆@知乎 来源丨https://zhuanlan.zhihu.com/p/257958558 编辑丨极市平台 在pytorch中的双线性采样(Bilinear Sa ...
- opencv和pytorch中的warp操作函数:cv2.warpAffine, torch.nn.functional.grid_sample, cv2.warpPerspective
关于图像的warp操作是指利用一个旋转缩放矩阵对图像进行操作. 常见的操作有,平移,绕某个点旋转,缩放. opencv中有getRotationMatrix2D,warpAffine, getAffi ...
- torch.grid_sample
文章目录 基本例子讲解 两种align_corners设置下的函数行为 查询矩阵有重复元素 参考: 双线性插值的理论 Pytorch grid_sample解析 PyTorch中grid_sample ...
- 弹性变形与采样,旋转,形变场可视化
文章目录 采样 (更新)旋转 变形场可视化 变形与可视化实例 STN(Spatial Transformer Network) Dense Deformation(Elastic deformatio ...
- 接受拒绝采样(Acceptance-Rejection Sampling)
我们所说的抽样,其实是指从一个概率分布中生成观察值(observations)的方法.而这个分布通常是由其概率密度函数(PDF)来表示的.而且, 即使在已知PDF的情况下,让计算机自动生成观测值也不是 ...
- python 下采样和上采样
前言 由于工作数据量较大,训练模型很少直接单机python,一般都采用SparkML,最近把SparkML的工作使用python简单的写了一下,先写个上下采样,最终目的是为了让正负样本达到均衡(有人问 ...
- 领悟《信号与系统》之 采样定理
采样定理 采样定理 一.采样定理结论 二.奈奎斯特间隔和频率计算公式及例题: 三.信号自然采样(脉冲采样) 四.信号理想采样(冲激采样) 采样定理 连续时间信号也叫模拟信号.在一定条件之下,模拟信号可 ...
- MC采样(随机投点法)——附代码
1.MC采样(随机投点法)理论基础 在数学上,一般用蒙特卡罗方法去估计 一些不能求解的积分值. ~~~~~~~~~~~~~~~~ 核心思想:面积占比.积分值在理论上可以 ...
- fft之后求模值和相位_50Hz交流信号经ADC在一个周期采样有限个点后,怎么用FFT变换求得有效值、幅值和相位等?...
FFT是离散傅立叶变换的快速算法,可以将一个信号变换 到频域.有些信号在时域上是很难看出什么特征的,但是如 果变换到频域之后,就很容易看出特征了.这就是很多信号 分析采用FFT变换的原因.另外,FFT ...
- 如何理解接受拒绝采样(Acceptance-Rejection Sampling)【非原创】
一.简单介绍 接受拒绝采样用于在已知目标分布 f ( x ) f(x) f(x)的情况下,获得服从 f ( x ) f(x) f(x)分布的随机样本. 具体做法如下: 选择辅助采样分布Y,其概率密度函 ...
最新文章
- MySQL数据库导入或者同步大量数据时数据丢失解决方案
- Tensorflow矩阵过大问题的解决
- JDK、J2EE、J2SE、J2ME的区别
- php memcache测试,PHP 监控memcache
- vue+elementUI 显示表格指定列合计数据
- deepin Linux vscode 配置C++环境
- 本田2022年新车将搭载谷歌Automotive OS
- 微信朋友圈内容能删除吗?
- 使用开源库 Objective-C RegEx Categories 处理正则表达式
- Linux-删除文件空间不释放问题解决
- oracle查询小时差,ORACLE小时段 Connect By的查询,感觉还是有点难度的。
- Java程序员 面试如何介绍项目经验?
- 什么叫0day和warez
- 【雕虫小技第10篇】scratch编程技巧之源码素材快速导出为png或者svg格式
- The Bean Validation API is on the classpath but no implementation could be found 项目启动报错解决
- 2019暑期在校培训总结
- size_t_梁斌_新浪博客
- Unreal Engine 4 渲染目标(Render Target)教程 之 实现雪地足迹(上)
- 采用开盘价交易的方法
- Hbuildx 使用vue打包的App实现微信分享功能
热门文章
- tensorflowpython32_Python tensorflow.python.framework.dtypes 模块,float32() 实例源码 - 编程字典...
- tornodo异步请求
- 大数据分析,主要运用了哪些关键技术?
- c语言weak void,浅尝辄止5-C语言-weak symbol
- 你离成为程序员的梦想仅一“证”之遥
- vue 跳转html页面,vue项目实现页面的跳转
- 房屋租赁合同中“天价违约金”的约定是否有效?
- 大二〕一直在寻找 生而为人的意义(转载)
- 实战—深圳链家租房数据分析
- MSF之meterpreter权限维持