![570fb775c1c0bafc18487bde20fa18a2.png](https://i-blog.csdnimg.cn/blog_migrate/bae719ed298c0716cb980baef4ca7a3f.jpeg)
本文同步发表在我的微信公众号“计算摄影学”,欢迎扫码关注
![7561c8b934e824b2158a653b8a899b84.png](https://i-blog.csdnimg.cn/blog_migrate/5acf17eb52b2c171e5c9366bb2f5e9c3.png)
你有没有想过,下面这个视频中的特效应该如何实现?
![dd92f3e7302fb2f74cb2d5068e24b5a6.png](https://i-blog.csdnimg.cn/blog_migrate/04d5adb04c35f6a358119a14ef72f840.jpeg)
【转载请注明来源与作者】
这个效果叫做面部变形(Face Morph),这里面将要用到一种叫做扭曲(Image Warp)的图像变换技术。在3. 数码相机内的图像处理-基本图像滤波中,我讲过基本的图像处理包括如下两大类,当时我重点介绍了图像的滤波类操作。
- 改变图像的像素值, 我们称为滤波(Filtering)
- 改变图像的像素位置,我们称为扭曲(Warping)
![6d9705efe685e4ce0d295cb2493c4589.png](https://i-blog.csdnimg.cn/blog_migrate/ee325a9ec8839c391d0b9d4e0c187068.jpeg)
而今天这篇文章则会给大家讲解2D图像的扭曲类操作。
1. 基本图像扭曲变换
2D图像的变换有多种,包括平移、旋转、比例缩放、仿射变换、透视变换、柱状变换等,如下图所示:
![a91eebc9da5ddb5b7bfdb54551e4c634.png](https://i-blog.csdnimg.cn/blog_migrate/ffe51408d568be21f208bcaade86735e.jpeg)
我们来看看一种称之为Scaling的缩放变换,下面从图1到图2就是一次Scaling变换
![1ebf545fbee6c8ca0ded133786811bde.png](https://i-blog.csdnimg.cn/blog_migrate/08f169a55f2a09e8e50ee4f7a2857ea4.png)
![cf570a455e1bdbce5ee07e52c3d6e36a.png](https://i-blog.csdnimg.cn/blog_migrate/b77de140003c38d9db2819e268260018.jpeg)
如果用数学表达式表达,那么上述变换是:
![3496411c97534d86264609a0846db397.png](https://i-blog.csdnimg.cn/blog_migrate/3ddabf19e4738e8e2eb86d2685e73471.png)
如果我们对上述公式略加改造,变为: