Unity利用OpenCV人脸识别库实现2D真人换装

12 篇文章 58 订阅 ¥99.90 ¥99.00

软件开发插件;OpenCv,DlibFaceLandmarkDetector,FaceMaskExample,对此有疑问可以访问前两篇文章;Unity版本为2018.4.36;有技术的可以自己封装一下获取摄像头的函数,反正我不会,用的Opencv封装好的。发现2019以后的版本有点卡,2019之前的挺好,相芯科技的那套封装的特别好,有需要的可以去了解学习下。这里是上线前录屏。没有美颜效果,。美颜接了相芯科技的SDK。以下是参考效果;
请添加图片描述
1:思路分析,首先通过OpenCV获取人脸特侦点的人脸范围:Rect =>size;以下脚本单独挂载一个Quad物体上;主要函数:InterceptImg(),截取人脸区域的图片,该插件人脸特侦点只含人脸眉毛以下耳朵之间的特征,并非全部的人脸头像,我这里将返回的特侦点外扩一点,方便截取全部人脸信息。OnDetectfacePoint()该函数主要是人脸识别并返回特侦点;

using System;
using System.Collections
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 17
    评论
使用Unity结合OpenCV进行图片人脸识别合成是一种常见的应用场景。首先,我们需要导入OpenCVUnity项目中。可以使用Unity的插件系统或者第三方的OpenCVUnity插件来实现。 接下来,根据项目需求,我们可以使用Unity的游戏对象来创建一个平面,作为展示图片人脸识别合成的背景。然后,利用Unity的渲染纹理功能,将OpenCV处理过的图像合成到该平面上。 图片人脸识别通常需要使用OpenCV提供的人脸检测功能。在Unity中,可以使用OpenCVUnity插件提供的接口来调用OpenCV的人脸检测算法,获取到检测到的人脸位置信息。 接着,我们可以利用Unity的纹理功能将需要合成的人脸图像加载到游戏对象上,并根据得到的人脸位置信息进行缩放、旋转和偏移等操作,使得合成的人脸图像能够与背景平面中的人脸位置对齐。 最后,通过Unity的摄像机设置,可以调整摄像机的视角和位置,以便实现更好的展示效果。我们可以添加一些特效,如光照效果、模糊等,使得合成的结果看起来更加真实。 总结起来,通过Unity结合OpenCV,我们可以实现图片人脸识别合成的效果。在Unity中,我们可以利用OpenCV提供的人脸检测功能,结合Unity的渲染纹理和摄像机设置,使得合成的效果更加逼真。使用Unity的开发环境,可以方便地进行设计和调试,并且还可以添加各种特效来增加合成图像的艺术效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有点朦

您的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值