繁体   English   中英

使用 GPU 着色器(glsl、hlsl,而不是 CUDA)的常用快速边缘检测算法是什么?

[英]what are the common used fast Edge Detection Algorithm using GPU shader(glsl, hlsl, not CUDA)?

使用 GPU 着色器(glsl、hlsl,而不是 CUDA)的最快边缘检测算法是什么?

  1. 只是片段着色器,只是图像处理,不管图像是彩色的还是灰色的
  2. 具有普通缓冲区和深度缓冲区的颜色缓冲区。

使用卷积矩阵的简单边缘检测器(由 x 偏导):

-1 +1

和(由 y 偏导):

-1
+1

您可以使用标准管道执行此操作,无需计算着色器:

  1. 渲染覆盖屏幕/图像/任何内容的矩形

    以输入图像作为纹理

  2. 在片段着色器中计算边缘(一阶推导)

    因此,对于每个片段获取相应的 2(如果在一步中完成两个推导,则为 3)纹素计算结果颜色和 output

两种偏导有时会组合在一起,一个进入一个颜色通道,另一个进入下一个颜色通道......

如果你在 2D 中执行此操作,你还可以使用深度缓冲区来获取 3D position 并在 z 轴上进行部分推导......

这种方法很快,因为 GPU 只使用非常简单的着色器渲染单个矩形

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2023 STACKOOM.COM