到目前为止,我进行了一些研究: - 我使用Google Vision API检测各种面部标记。 以下是https://developers.google.com/vision/introduction
的参考资料这里是示例代码的链接,用于获取面部地标。它使用相同的Google Vision API。这是参考链接:https://github.com/googlesamples/ios-vision
我已经浏览了互联网上的各种博客,其中MSQRD基于谷歌的云计算愿景。这是指向它的链接:https://medium.com/@AlexioCassani/how-to-create-a-msqrd-like-app-with-google-cloud-vision-802b578b30a0
对于Android这里的参考: https://www.raywenderlich.com/158580/augmented-reality-android-googles-face-api
有多个付费SDK完全填满了目的。但它们的价格很高。所以无法负担得起。 例如:
有可能有人认为这个问题重复: Face filter implementation like MSQRD/SnapChat
但该线程差不多是1.6岁,没有正确答案。
我已经阅读了这篇文章: https://dzone.com/articles/mimic-snapchat-filters-programmatically-1
它描述了实现预期结果的所有必要步骤。但他们建议使用自己制作的SDK。
根据我的研究,没有足够好的材料可以完全填满所需的结果,例如 MSQRD面部过滤器。
另外一个Github存储库周围有相同的实现,但它没有提供相同的大量信息。 https://github.com/rootkit/LiveFaceMask
现在我的问题是:
如果我们使用Google Vision API(或甚至使用 DiLib),我如何在它上面添加2d或3d模型。这是哪种格式 需要这样做需要一些X,Y坐标与顶点 计算。
注意:我已经阅读了Googles" GooglyEyesDemo"这增加了 在眼睛上预览图层。它基本上增加了一个面部视图。所以我 不想在其上添加UIView一维预览图层。图片 附件供参考:
https://developers.google.com/vision/ios/face-tracker-tutorial
创建模型:我还想知道如何为live创建模型 像MSQRD这样的过滤器。我欢迎任何软件或格式建议。 希望我所做的研究能够帮助其他人和其他人 经验帮助我达到预期的效果。如果有的话,让我知道 需要更多细节。**
由于 哈利
答案 0 :(得分:0)
在Android中,Canvas类用于绘制此类3D / 2D模型或IOS的核心图形。 您所能做的就是检测面部组件,获取它们的位置点并在它们上面绘制图像。 Consider going through this
答案 1 :(得分:-1)
您需要预测x,y,z坐标(查看this演示),使用x,y预测,然后查找通用3d模型和参数的参数。相机将提供最接近的当前x,y投影。