首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >android人脸检测中如何检查人脸的活性

android人脸检测中如何检查人脸的活性
EN

Stack Overflow用户
提问于 2016-07-15 12:42:57
回答 1查看 2.3K关注 0票数 1

我正在创建一个用于考勤系统的android应用程序,在这个应用程序中,我会在检测到脸后立即捕捉到照片。我可以做到这一点,但只有一个问题,这个系统可以伪造员工的照片,因为现在没有活性检查。

代码语言:javascript
运行
复制
mCamera.setFaceDetectionListener(new Camera.FaceDetectionListener(){
    @Override
    public void onFaceDetection(final Camera.Face[]faces,Camera camera){
        if(faces!=null&&faces.length>0){
            try{
                if(lastCaptureTiume+10000<=System.currentTimeMillis()){

                    mCamera.takePicture(null,null,jpegCallback);
                    lastCaptureTiume=System.currentTimeMillis();
                }
            }
            catch(Exception e)
            {
            }
        }
    });
}

在jpegCallback上,我正在检查脸部并裁剪它以进行进一步的处理。

我搜索了一些样本来寻找活性,但没有运气,如果有人知道我如何实现活性,请帮助。

EN

回答 1

Stack Overflow用户

发布于 2016-07-15 12:54:29

您可以顺序拍摄多张图片,并查看它们是否以不明显的方式改变(例如,不平移或旋转)。

问题是,如果你担心玩这个系统,现在向系统展示一张图片是可行的,没有什么能阻止别人向系统展示平板电脑或电子书阅读器,智能到足以显示一个简短的动画。

如果有可能的话,拍一张完整的照片也许会更有成效,可能是从不同的POV拍摄的。这一切都取决于android应用程序的运行位置(例如自动徽章展位)。如果它在与会者的电话上运行,而你想确认他的身份,恐怕你不能。

使用Android version 5,您可以尝试使用z扫描面部.快速聚焦在几个平面上,间隔5厘米。如果面部附着在一个三维头骨上,你会“看到”一个集中的区域从鼻子向外向外运动。除非你有一些面容平平的与会者。你必须在任意距离下进行两三次聚焦,这样人就不能离开摄像机进行补偿。要估计聚焦,可以尝试在图像中使用局部方差。

当然,这将限制您的应用程序将兼容的模型。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38396435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档