极智项目 | 实战静默活体人脸检测

欢迎关注我的公众号 [极智视界],获取我的更多经验分享

大家好,我是极智视界,本文来介绍 实战静默活体人脸检测。

本文介绍的 实战静默活体人脸检测,提供完整的可以一键执行的项目工程源码,获取方式有两个:

(1) 本文工程项目资源下载,链接:download.csdn.net/download/we...

(2) 【推荐 】加入我的知识星球「极智视界」,星球内有超多好玩的项目实战源码下载,链接:t.zsxq.com/0aiNxERDq

活体检测技术的首要任务是鉴别计算机视觉系统前方的人脸是真实的还是伪造的。伪造的人脸可能涵盖各种表现形式,包括但不限于打印在纸上的照片、电子设备的屏幕显示、硅胶面具,以及立体的3D人像等。目前,主要的活体检测解决方案可以划分为配合式活体检测和非配合式活体检测,也称为静默活体检测。在配合式活体检测中,用户需要按照系统的提示执行特定的生物特征活动,然后系统会对这些生物特征活动进行监测和验证。这些生物特征活动可能包括眨眼、摇头、或者其他生物特征的反应。这种方法需要用户的积极互动,以确保人脸的真实性。与之相对,非配合式活体检测,或静默活体检测,是在用户无需特定生物特征互动或介入的情况下直接进行活体验证。系统通过分析人脸的生物特征,例如皮肤反应、眼动,以及其他生理指标,来判断人脸的真实性。这种方法更加强调用户的便捷性,因为用户不需要采取额外的操作来完成验证过程。

在拿到本项目的代码后,进行环境的配置,

ini 复制代码
# 使用Anaconda3来管理py环境, 安装Anaconda3的过程略过

# 创建虚拟环境
conda create -n silent_facedet_py37 python=3.7

# 激活虚拟环境
conda activate silent_facdedet_py37

# 安装依赖
pip install -r requirements.txt

然后即可一键执行,直接一键执行项目中的 run_det.sh就可,run_det.sh内容如下,

bash 复制代码
#!/bin/bash 

python test.py --device_id 0 \
               --model_dir "./resources/silentdet_models" \
               --image_name "001.jpg"

这样其实能看到本项目的几个传参,可以通过 --image_name 来修改传入的图片, 检测结果是否为活体会在控制台打印,图片检测结果会同时存放在 images/sample 同级目录下。具体的执行检测的传参代码部分如下,

ini 复制代码
...
if __name__ == "__main__":
    desc = "test"
    parser = argparse.ArgumentParser(description=desc)
    parser.add_argument(
        "--device_id",
        type=int,
        default=0,
        help="which gpu id, [0/1/2/3]")
    parser.add_argument(
        "--model_dir",
        type=str,
        default="./resources/silentdet_models",
        help="model_lib used to test")
    parser.add_argument(
        "--image_name",
        type=str,
        default="002.jpg",
        help="image used to test")
    args = parser.parse_args()
    test(args.image_name, args.model_dir, args.device_id)

下面展示几个检测效果,

FakeFace:

FakeFace:

RealFace:

若你不满足于直接使用 (直接采用这里提供的训练的好的模型进行活体人脸检测),也可以采用自己的训练集进行训练。项目内也提供了训练脚本,不过需要自己准备训练数据集,按 datasets/README.md 的目录结构进行组织

训练的传参,

python 复制代码
...
def parse_args():
    """parsing and configuration"""
    desc = "Silence-FAS"
    parser = argparse.ArgumentParser(description=desc)
    parser.add_argument("--device_ids", type=str, default="1", help="which gpu id, 0123")
    parser.add_argument("--patch_info", type=str, default="1_80x80",
                        help="[org_1_80x60 / 1_80x80 / 2.7_80x80 / 4_80x80]")
    args = parser.parse_args()
    cuda_devices = [int(elem) for elem in args.device_ids]
    os.environ["CUDA_VISIBLE_DEVICES"] = ','.join(map(str, cuda_devices))
    args.devices = [x for x in range(len(cuda_devices))]
    return args

主要是 --patch_info 需要解释一下,这个 patch_info 是采用多尺度模型融合的方法,采用原图喝扩展图的数据,具体的,

  • 原图直接resize到 (w,h);
  • 扩展图的由来:先对原图做人脸检测,然后对人脸框图按一定的scale进行扩展,设置这个scale分别为1、2.7、4;
  • 最后将上面这四张图打成patch,成为一个patch_info,

images 目录下放置了一张 patch_demo.jpg 的patch示例图片供参考,如下,

好了,以上分享了 实战静默活体人脸检测,并提供完整的项目源码。希望我的分享能对你的学习有一点帮助。


【公众号传送】

《极智项目 | 实战静默活体人脸检测》

畅享人工智能的科技魅力,让好玩的AI项目不难玩。邀请您加入我的知识星球, 星球内我精心整备了大量好玩的AI项目,皆以工程源码形式开放使用,涵盖人脸、检测、分割、多模态、AIGC、自动驾驶、工业等。不敢说会对你学习有所帮助,但一定非常好玩,并持续更新更加有趣的项目。 t.zsxq.com/0aiNxERDq

相关推荐
ZZY_dl2 小时前
训练数据集(三):真实场景下采集的课堂行为目标检测数据集,可直接用于YOLO各版本训练
人工智能·yolo·目标检测
yiersansiwu123d3 小时前
AI伦理治理:在创新与规范之间寻找动态平衡
人工智能
华清远见成都中心3 小时前
成都理工大学&华清远见成都中心实训,助力电商人才培养
大数据·人工智能·嵌入式
爱好读书3 小时前
AI生成er图/SQL生成er图在线工具
人工智能
CNRio3 小时前
智能影像:AI视频生成技术的战略布局与产业变革
人工智能
六行神算API-天璇3 小时前
架构思考:大模型作为医疗科研的“智能中间件”
人工智能·中间件·架构·数据挖掘·ar
搞科研的小刘选手4 小时前
【ISSN/ISBN双刊号】第三届电力电子与人工智能国际学术会议(PEAI 2026)
图像处理·人工智能·算法·电力电子·学术会议
wumingxiaoyao4 小时前
AI - 使用 Google ADK 创建你的第一个 AI Agent
人工智能·ai·ai agent·google adk
拉姆哥的小屋4 小时前
从混沌到秩序:条件扩散模型在图像转换中的哲学与技术革命
人工智能·算法·机器学习
Sammyyyyy4 小时前
DeepSeek v3.2 正式发布,对标 GPT-5
开发语言·人工智能·gpt·算法·servbay