使用 Unity3D 进行人脸识别

2022-09-13  本文已影响0人  BlueSocks

概述

这个项目是AR和人脸跟踪的应用。这是一个在支持 arcore 的设备上运行的 android 应用程序。它映射出用户的面部并对其进行跟踪。此应用程序中添加了一些过滤器,用户可以从中切换。用户可以使用底部的按钮录制正在进行的会话的视频。存储的会话将存储在本地设备存储中,并且可以通过图库或文件管理器进行访问。
项目链接:github.com/om2137/FaceRec

使用的组件:

Unity

Unity3D 是一个强大的跨平台 3D 引擎和用户友好的开发环境。Unity 用于为移动、桌面、Web 和控制台制作游戏以及 3D 和 AR/VR 应用程序。

AR Foundation

AR Foundation 允许您在 Unity 中以多平台方式使用增强现实平台。

ARCore

ARCore XR 插件包通过 Unity 的多平台 XR API 支持 ARCore。

NatCorder

NatCorder 是 Unity3D 中适用于 iOS 和 Android 的轻量级、易于使用、功能齐全的视频录制 API。

它是如何工作的?

它使用来自 ARFoundation 的 ARCore 包进行人脸识别和跟踪。在层次结构中,AR Session Origin 内部有 ARCamera,它使用相机脚本。该相机在脚本的帮助下跟踪正在进行的会话中的面部。

AR Session Origin 具有三个主要组件,将在脸上进行的交换过滤器,一个采用预制件并管理人脸的 AR 人脸管理器,以及一个带摄像头的会话来源。

在层次结构中,在 AR Session Origin 之后,有一个画布组件,其中有一个换脸按钮和一个录制按钮。换脸按钮只是在应用于脸部的过滤器之间循环,换脸按钮在换脸的按钮部分采用 AR Session Origin。

为了录制 NatCroder,层次结构中有一个 ReCm,它采用用于相机的 ReCm 脚本。这在画布组件中的 RecordButton 中。如图 4 所示。

架构和项目文件

                                                            图 1 架构
                                                                 图2
                                                                 图3
                                                                图4
                                                              图5

最终结论及相关链接

因此,这是一个非常小的 AR 项目,它可以识别人脸,然后绘制出有助于跟踪的人脸。然后应用存储在项目中的过滤器来面对过滤器并使用按钮在过滤器之间切换,然后使用记录按钮记录所需的会话。

上一篇 下一篇

猜你喜欢

热点阅读