PlaneMylinder中有一个选项可以扭曲imageMagick来制作像下面的图像吗?

当我使用Plane2Cylinder失真时,我得到了如下图像。 但我希望效果像第二张图像。 请仔细检查我的代码。

local nelem = 1 -- number of args local arg = ffi.new("const double[?]", nelem, {100}) -- local methos = ffi.new("const int", 15) return handle_result(self, lib.MagickDistortImage(self.wand,13, nelem, arg, 1)) ffi.cdef([[ typedef void MagickWand; typedef void PixelWand; MagickBooleanType MagickDistortImage(MagickWand *wand, DistortMethod method, const size_t, const double *args, const MagickBooleanType bestfit); 

在此处输入图像描述 在此处输入图像描述

更新:对于fred的脚本我使用下面的命令

 bash -x ./cylinderize.sh -m vertical -r 366.34955984688 -l 188.179 -w 16.6667 -p 23.428692808745 -n 96.097053534591 -e 1.75 -a 0 -v background -b none -f none -o -86-80.8315 single_color.png single_color.j.png 

下面是我修改过的图片。

在此处输入图像描述

更多的评论而不是答案。

  1. 看起来失真参数只有视野值设置(100),但缺少中心X和Y值。

  2. Plane2Cylinder只是所需失真的一半。 主题(马克杯)不是一个完美的圆柱体,因此需要应用额外的轻微失真(可能是透视)来匹配足够的音高。