
P 图功能与 OpenGL
玩过 P 图软件的朋友一定对这个功能有所了解,P 图我们可以简单地看做把一个区域的像素按照某一方向进行移动,产生一定形变效果,基于这个原理,我们可以手动实现瘦脸、长腿、瘦腰、大眼、丰胸等等一系列效果,从而达到美颜、美型的目的。

我们将一个区域的像素移走以后,那么用什么来填充这个被"掏空"的区域呢?答案是, OpenGL 自带插值功能会使用周围的像素对被"掏空"的区域进行插值填充。
回想下 OpenGL 纹理贴图,将图像贴到相对大的区域,就会产生拉伸的效果,贴到相对更小的区域就会产生挤压的效果,这都是借助于 OpenGL 的双线性插值算法实现。
对纹理贴图不了解的同学可以移步:
本文介绍了如何利用 OpenGL 实现 Android 上的图片修图功能,通过控制像素的移动和OpenGL的双线性插值算法,可以实现瘦脸、长腿等形变效果。文章详细讲解了原理,并提到了生成更多网格以实现特定区域的形变,最后提供了相关项目的参考链接和作者的联系方式。
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



