我曾经遇到过使用Vision Framework进行真实的人脸检测的问题。下面是苹果的链接。
https://developer.apple.com/documentation/vision/tracking_the_user_s_face_in_real_time
字符串我使用上面链接中提供的演示代码。我明白了,照相机可以从**打印的照片或护照照片中识别人脸。这不是真实的脸照片。**我如何知道这不是真实的脸在相机使用视觉框架?
z6psavjg1#
可以使用https://developer.apple.com/documentation/arkit/arfacegeometry这将创建人脸的3D网格。3D网格将具有不同的值(例如,顶点,triangleIndices),在其拓扑中与2D图片进行比较。
vmjh9lq92#
下面是一个项目link在这里,我使用了相机API来进行人脸检测和眨眼。您可以根据您的要求检查和定制。
**更新:**这里是另一个使用MLKit link进行活性检查的项目
kd3sttzy3#
Apple Vision框架一直在处理“2D请求”。它仅适用于RGB通道。如果您需要处理3D表面,则必须实现基于深度原则的LiDAR扫描仪API。它可以让你区分照片和真实的脸。我认为Vision + RealityKit是您的最佳选择,因为您可以在Vision的第一阶段检测面部(2D或3D),然后使用LiDAR,很容易找出多边形面的法线是否指向同一方向(2D表面)或不同方向(3D头部)。
Vision + RealityKit
3条答案
按热度按时间z6psavjg1#
可以使用https://developer.apple.com/documentation/arkit/arfacegeometry
这将创建人脸的3D网格。3D网格将具有不同的值(例如,顶点,triangleIndices),在其拓扑中与2D图片进行比较。
vmjh9lq92#
下面是一个项目link
在这里,我使用了相机API来进行人脸检测和眨眼。您可以根据您的要求检查和定制。
**更新:**这里是另一个使用MLKit link进行活性检查的项目
kd3sttzy3#
Vision + RealityKit
Apple Vision框架一直在处理“2D请求”。它仅适用于RGB通道。如果您需要处理3D表面,则必须实现基于深度原则的LiDAR扫描仪API。它可以让你区分照片和真实的脸。
我认为
Vision + RealityKit
是您的最佳选择,因为您可以在Vision的第一阶段检测面部(2D或3D),然后使用LiDAR,很容易找出多边形面的法线是否指向同一方向(2D表面)或不同方向(3D头部)。