【Mathematica】怎么实现图像的波浪式变形?

2025-10-23 00:53:00

1、准备一张图片,500*500的。

【Mathematica】怎么实现图像的波浪式变形?

2、预先看一下动画效果。

【Mathematica】怎么实现图像的波浪式变形?

3、看代码,如下图。相当于把像素{x,y}变到了下面的位置上:

{x + 0.01*Sin[10*Pi*y+ n],y+ 0.01*Sin[12*Pi*x+ n]}

其中,n是参数变量,结余0到2Pi之间。

【Mathematica】怎么实现图像的波浪式变形?

4、增加某个方向上的震动频率:

{x + 0.01*Sin[36*Pi*y+ n],y+ 0.01*Sin[12*Pi*x+ n]}

【Mathematica】怎么实现图像的波浪式变形?

5、在第四步的基础上,增加震动幅度:

{x + 0.1*Sin[36*Pi*y+ n],y+ 0.01*Sin[12*Pi*x+ n]}

【Mathematica】怎么实现图像的波浪式变形?

6、一般的,增加频率,就需要减少振幅:

{x + 0.005*Sin[36*Pi*y+ n],y+ 0.01*Sin[12*Pi*x+ n]}

【Mathematica】怎么实现图像的波浪式变形?

7、增加振幅,就需要减少频率:

{x + 0.1*Sin[5*Pi*y+ n],y+ 0.01*Sin[12*Pi*x+ n]}

【Mathematica】怎么实现图像的波浪式变形?

8、如果把变换过程变成:

{x + 0.01*Sin[10*Pi*x+ n],y+ 0.01*Sin[12*Pi*y+ n]}

就有如下的动画。

【Mathematica】怎么实现图像的波浪式变形?

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢