CUDA C 纹理提取Texture Fetching

一.参数曲面的纹理

使用纹理指定参数曲面属性。


二.CUDA C 纹理获取开发

用于计算纹理函数,根据纹理引用的各种属性返回的值的公式(请参见纹理和曲面内存)。
绑定到纹理引用的纹理表示为

N
texels for a one-dimensional texture,
N x M
texels for a two-dimensional texture,
N x M x L
texels for a three-dimensional texture.

使用非规格化纹理坐标x、y和z,或纹理内存中描述的规格化纹理坐标x/N、y/M和z/L获取。假设坐标在有效范围内。纹理内存解释了如何根据寻址模式将超出范围的坐标重新映射到有效范围。

  1. 最近邻采样

在这种过滤模式下,纹理获取返回的值是
tex(x)=T[i]
for a one-dimensional texture,
tex(x,y)=T[i,j]
for a two-dimensional texture,
tex(x,y,z)=T[i,j,k]
for a three-dimensional texture,
where i=floor(x), j=floor(y), and k=floor(z).

图1显示了N=4的一维纹理的最近邻采样。

对于整数纹理,可以选择将纹理提取返回的值重新映射到[0.0,1.0]。

图1. 最近邻采样过滤模式。四个纹理的一维纹理的最近邻采样。

  1. 线性滤波

在这种过滤模式下(仅适用于浮点纹理),纹理提取返回的值是
tex(x)=(1−α)T[i]+αT[i+1]
for a one-dimensional texture,
tex(x,y)=(1−α)(1−β)T[i,j]+α(1−β)T[i+1,j]+(1−α)βT[i,j+1]+αβT[i+1,j+1]
for a two-dimensional texture,
tex(x,y,z)
=
(1−α)(1−β)(1−γ)T[i,j,k]+α(1−β)(1−γ)T[i+1,j,k]+

(1−α)β(1−γ)T[i,j+1,k]+αβ(1−γ)T[i+1,j+1,k]+

(1−α)(1−β)γT[i,j,k+1]+α(1−β)γT[i+1,j,k+1]+

(1−α)βγT[i,j+1,k+1]+αβγT[i+1,j+1,k+1]

for a three-dimensional texture,

where:

i=floor(xB), α=frac(xB), xB=x-0.5,
j=floor(yB), β=frac(yB), yB=y-0.5,

k=floor(zB), γ=frac(zB), zB=z-0.5,

线性滤波

α、β和γ以9位定点,8位小数(精确表示为1.0)格式存储。

图2说明了N=4的一维纹理的线性过滤。

图2. 线性滤波模式。钳位寻址模式下四个纹理一维纹理的线性滤波。

  1. 查表

为了确保TL(0)=T[0]和TL(R)=T[N-1)/R)x+0.5,可以将x跨越区间[0,R]的表查找TL(x)实现为TL(x)=tex((N-1)/R)+0.5。

图3说明了使用纹理过滤从N=4的一维纹理实现R=4或R=1的表查找。

图3. 使用线性过滤的一维表格查找

CUDA C 纹理提取Texture Fetching相关推荐

  1. cuda 纹理内存texture使用时显示不是模板解决办法

    按教程使用纹理内存texture时显示 texture不是模板. 网上找了半天,只知道这个报错是VS没有识别的问题,运行起来并没有实质性影响. 但是一条红线在这画着总觉得很别扭,于是就想取消它,最终给 ...

  2. 初识OpenGL (-)纹理过滤(Texture Filtering)

    1. OpenGL需要知道怎样将纹理像素(Texture Pixel,也叫Texel)映射到纹理坐标. 纹理坐标 不依赖于分辨率(Resolution),它可以是任意浮点值, 给模型顶点设置的那个数组 ...

  3. 【OpenCV】纹理提取

    求一幅图的纹理特征图 原图 (1)转为灰度图 cvtColor(src_img, gray_img, CV_BGR2GRAY); (2)获得LBP模板并赋值 LBP纹理提取代码 /* CV:LBP A ...

  4. OpenCV Gabor滤波器实现纹理提取与缺陷分析

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 一:Gabor滤波器介绍 Gabor滤波器是OpenCV中非常强大 ...

  5. python图像纹理提取_提取图像的颜色、纹理特征(传统算法)

    Python-Image-feature-extraction Python实现提取图像的纹理.颜色特征,包含快速灰度共现矩阵(GLCM).LBP特征.颜色矩.颜色直方图.1044197988/Pyt ...

  6. 对数据集使用GLCM(灰度共生矩阵)进行纹理提取

    对数据集使用GLCM(灰度共生矩阵)进行纹理提取 1.研究背景 2.方法原理 3.程序流程 4.结果结论 1.研究背景 图像的特征提取是图像的识别和分类.基于内容的图像检索.图像数据挖掘等研究内容的基 ...

  7. 【OpenGL】OpenGL入门之纹理(Texture)

    目录 纹理 纹理环绕方式 纹理过滤 多级渐远纹理(Mipmap) 加载与创建纹理 stb_image.h 生成纹理 应用纹理 纹理单元 参考 纹理   在此之前,我们已经可以为每个顶点添加颜色来增加图 ...

  8. gabor小波滤波器的在纹理提取、图像匹配上的作用

    1.作用:Gabor小波可以方便的提取图像在各个尺度和方向上的纹理信息,同时在一定程度上降低了图像中光照变化和噪声的影响. 其对光照不敏感的例子: 注意:其对图像的旋转也具有一定的适应性.其出现特征提 ...

  9. Threejs纹理对象Texture阵列、偏移、旋转(纹理动画)

    纹理对象Texture阵列.偏移.旋转 本文是Three.js电子书的8.4节 8.1节给大家提到过纹理对象Texture,简单的说纹理对象Texture就是包含一张图片的对象,纹理对象Texture ...

最新文章

  1. 弹性盒子 flex-direction
  2. 10.利用STM32定时器的PWM输出功能,直接获取PWM波形。
  3. 中科院院士指出“万物互联”只是开始,“万物控制”是物联网下一个挑战
  4. Spring中Bean的作用域都有哪些?
  5. HDU 1874 最直接的最短路径问题
  6. RapidMiner Studio for Mac - 可视化综合数据平台
  7. [转载] python判断字符串中包含某个字符串_干货分享| Python中最常用的字符串方法
  8. 【学亮IT手记】Ajax跨域问题精讲--jQuery解决跨域操作
  9. 软件质量保障之代码走查
  10. 手机html送礼,送给家中“老顽童”的好礼物!这些手机的远程功能你会用嘛?...
  11. 内核获取网络设备的网桥接口
  12. 近端梯度法(proximal gradient)
  13. 三种升糖之王,糖友尽量少碰
  14. 正交设计——实战【转】
  15. 用python画七巧板_用turtle画一个七巧板
  16. Latex【Error】Reference:Something‘s wrong--perhaps a missing \item. \end{thebibliography} 参考文献报错
  17. Oracle数据库的冷备份和热备份
  18. 法国ICD|开启我人生辉煌的下一站
  19. 幼儿园计算机课件制作评比表,幼儿园多媒体课件的设计、制作与评价.ppt
  20. 爱情树代码的修改(MAC)

热门文章

  1. 大数据学习01——配置虚拟机节点相关网络
  2. 由动态规划计算编辑距离引发的思考
  3. python 实现桶排序
  4. centos 非root用户(普通用户)替换yum安装软件方法
  5. 两个月番茄组长的收获总结
  6. PyTorch学习之六个学习率调整策略
  7. Megengine量化
  8. 多目标跟踪:CVPR2019论文阅读
  9. HarmonyOS UI开发 DirectionalLayout(定向布局) 的使用
  10. python 保存内容到记事本里面