Image processing ImageMagick中的旋转映射
是否有一种基于ImageMagick中的映射旋转图像的方法? 这个问题类似于置换贴图,但不是基于贴图中的亮度/色度扭曲和变形形状,而是基于贴图旋转图像 例如:如果我有一个图案,然后对其应用色度/亮度贴图形状,它将旋转图案,并根据与中点的亮度/色度差(50%)输出它 像这样: 我的任务是创建一组相当复杂的形状,并分别从色度/亮度的不同角度将图案映射到它们 这是我必须编写的某种自定义插件,还是在IM6中有一种简单的方法可以做到这一点Image processing ImageMagick中的旋转映射,image-processing,imagemagick,imagemagick-convert,node-imagemagick,Image Processing,Imagemagick,Imagemagick Convert,Node Imagemagick,是否有一种基于ImageMagick中的映射旋转图像的方法? 这个问题类似于置换贴图,但不是基于贴图中的亮度/色度扭曲和变形形状,而是基于贴图旋转图像 例如:如果我有一个图案,然后对其应用色度/亮度贴图形状,它将旋转图案,并根据与中点的亮度/色度差(50%)输出它 像这样: 我的任务是创建一组相当复杂的形状,并分别从色度/亮度的不同角度将图案映射到它们 这是我必须编写的某种自定义插件,还是在IM6中有一种简单的方法可以做到这一点 非常感谢 ImageMagick没有内置的功能,但由于-fx参数
非常感谢 ImageMagick没有内置的功能,但由于
-fx
参数,您可以自己编写。以下命令将通过应用的遮罩顺时针旋转源图像:
convert input.png rotationmap.png -fx \
'rs=-6.28318531;
p{
cos(v*rs)*(i-w/2.0)-sin(v*rs)*(j-h/2.0)+w/2.0,
sin(v*rs)*(i-w/2.0)+cos(v*rs)*(j-h/2.0)+h/2.0
}' output.png
使用#202020
填充旋转贴图以旋转45度,例如:
hexval = (rotation_deg / 360) * 255
或者做些更愚蠢的事情(其实玩起来很有趣):
注意事项:
- 抄近路只是无限期地重复
- 旋转贴图需要与源图像大小相同
- 没有重新采样,结果可能会变得模糊或尖锐
-fx
参数没有直接重采样,但基本插值是:。我已经测试了一些,mesh
似乎给出了不错的结果,尽管它们之间的差异非常小。或者,你可以把你自己的插值材料放入公式中。