关于人脸的前景提取,目前做的最成熟的就是remove.bg了,商用的效果确实逆天了。大家可以看看这张图,
这张图人脸提取的难点就是头发丝是否处理的丝滑,重点要看两侧及头顶的发丝,看看remove.bg处理后的无底效果
“外国的月亮就是圆”,商用的服务确实厉害,不过价格上不太亲民。在问过gpt之后,它给了一个建议,可以偿试PaddleSeg,地址为https://github.com/PaddlePaddle/PaddleSeg/blob/release/2.8/contrib/PP-HumanSeg/README_cn.md。仔细阅读之后,发现这个开源的框架真的还不错,“授人以鱼不如授人以渔”。从模型的准备,训练,评估,预测,导出,部署,使用。一个不少,step by step。当然,现在只是用它的模型测试了一下。目前有两个模型,一个是肖像分割 ,另个一个是通用人像分割。这里抄一下肖像分割模型:
肖像分割模型
针对手机视频通话、Web视频会议等实时半身人像的分割场景,PP-HumanSeg发布了自研的肖像分割模型。该系列模型可以开箱即用,零成本直接集成到产品中。
PP-HumanSegV1-Lite肖像分割模型,分割效果较好,模型体积非常小,模型结构见链接。
PP-HumanSegV2-Lite肖像分割模型,对比V1模型,推理速度提升45.5%、mIoU提升3.03%、可视化效果更佳,核心在于:
更高的分割精度:使用PaddleSeg推出的超轻量级分割模型(链接),具体选择MobileNetV3作为骨干网络,设计多尺度特征融合模块(Multi-Scale Feature Aggregation Module)。
更快的推理速度:减小模型最佳输入尺寸,既减少了推理耗时,又增大模型感受野。
更好的通用性:使用迁移学习的思想,首先在大型通用人像分割数据集上预训练,然后在小型肖像分割数据集上微调。
具体调用还是python来处理,我只贴一下效果图。
相比较商用的实现,效果确实差了一个层次。下一步考虑将该功能发布成http服务,估计要好好学习一下Flask,WSGI了。