【发布时间】:2011-01-26 12:47:30
【问题描述】:
我正在尝试学习着色器以在我的 iPhone 应用程序中实现一些东西。到目前为止,我已经理解了简单的示例,例如将彩色图像制作为灰度、阈值等。大多数示例都涉及简单的操作,其中处理输入图像像素 I(x,y) 会导致对同一像素的颜色进行简单修改
但是,卷积呢?例如,最简单的例子是高斯滤波器,
其中输出图像像素O(x,y)不仅取决于I(x,y),还取决于周围的8个像素。
O(x,y) = (I(x,y)+ surrounding 8 pixels values)/9;
通常,这不能使用单个图像缓冲区来完成,否则输入像素会随着过滤器的执行而改变。我怎样才能用着色器做到这一点?另外,我应该自己处理边界吗?或者有一个内置函数或检查无效像素访问的东西,如I(-1,-1)?
提前致谢
PS:我会很慷慨(阅读:给很多分);)
【问题讨论】: