【发布时间】:2011-08-26 21:05:03
【问题描述】:
你知道这样的浮雕效果是否可以用编程包来完成。有人可以提出一些建议
【问题讨论】:
标签: php image-processing imagemagick image-manipulation gd
你知道这样的浮雕效果是否可以用编程包来完成。有人可以提出一些建议
【问题讨论】:
标签: php image-processing imagemagick image-manipulation gd
【讨论】:
看起来标签已经为您解决了......这看起来就像是在ImageMagick的小巷里。
查看here 了解一些优秀的 PHP ImageMagick 水印示例。
【讨论】:
像这样的简单效果通常是使用卷积核实现的,其中图像从源转换为新副本。每个新像素都被计算为其源像素和源图像中相邻像素子集的线性组合(即加权和)。
例如,您可以(抽象地)定义一个内核,例如:
0 0 0
0 9 -3
0 -3 -3
这里,矩阵的中心表示对于要计算的每个新像素值应用于相应源像素的权重。周围的值表示在求和以计算新像素的总值之前应应用于相应相邻像素的权重。
在实践中,这可能用于创建具有以下伪代码的新浮雕图像:
for y in source.height:
for x in source.width:
newImage[x,y] = source[x,y]*9
+ source[x+1,y]*-3
+ source[x,y+1]*-3
+ source[x+1,y+1]*-3
有一些明显的实现细节被遗漏了,例如如何处理图像的边缘(一种选择是假设图像围绕其边缘镜像),以及实际应用任意系数矩阵而不是硬-如上所述对加权和进行编码。希望这至少能传达出操作的核心是多么简单。
【讨论】:
与GD:
IMG_COLOR_TRANSPARENT IMG_FILTER_EMBOSS 过滤器 - imagefilter()
【讨论】: