OpenGL ES 利用抠图算法实现人像留色
人像留色的原理
现在人像分割技术就像当初的人脸检测算法一样,称为广泛使用的基础算法。
今天本文介绍的人像留色其实就是三年前某 AI 巨头利用 video 分割技术展示的应用场景:人体区域保留彩色,人体区域之外灰度化。所以人像留色的关键技术在于高精度高性能的分割算法。
首先利用分割算法获取到人像的 mask 图(灰度图),其中人像区域的灰度值大于 0 ,非人像区域的灰度值等于 0 。在 shader 中,首先对 mask 图采样判断采样点是否位于人像区域,然后分别进行不同的处理。
获取人像 mask 图
那么如何获取人像 mask 图?Github 上已经有很多大神开源了相关的分割或者抠图算法。
这里推荐 3 个比较受欢迎的开源项目