本项目是阿里云视觉智能开放平台的人脸1:N的开源替代,项目中使用的模型均为开源模型,项目支持opensearch(1.x版本支持milvus和proxima)向量存储库,并具有较高的自定义能力。
项目使用纯Java开发,免去使用Python带来的服务不稳定性。
1:N是通过采集某人的人像后,从海量的人像数据底库中找到与当前使用者人脸数据相符合的图像,通过数据库的比对找出"你是谁",常见的办公楼宇的人脸考勤门禁、社区门禁、工地考勤、会签等等场景。
M:N 是通过计算机对场景内所有人进行面部识别并与人像数据库进行比对的过程。M:N作为一种动态人脸比对,其使用率非常高,能充分应用于多种场景,例如公共安防,迎宾,机器人应用等。
欢迎大家贡献代码,如果你觉得项目还不错,请给个star。
1、spring boot
2、onnx
2、PCN
在线文档:文档-2.1.0
swagger文档:启动项目且开启swagger,访问:host:port/doc.html, 如 http://127.0.0.1:8080/doc.html
<dependency>
<groupId>com.visual.face.search</groupId>
<artifactId>face-search-client</artifactId>
<version>2.1.0</version>
</dependency>
使用restful接口:文档-2.1.0
1、配置环境变量:FACESEARCH_VOLUME_DIRECTORY,指定当前的挂载根路径,默认为当前路径
2、对opensearch的挂载目录进行赋权:
新建目录:${FACESEARCH_VOLUME_DIRECTORY:-.}/volumes-face-search/opensearch/data
目录赋权:chmod 777 ${FACESEARCH_VOLUME_DIRECTORY:-.}/volumes-face-search/opensearch/data
3、使用opensearch作为向量搜索引擎
docker-compose -f docker-compose-opensearch.yml --compatibility up -d
4、服务访问:
opensearch自带的可视化工具:http://127.0.0.1:5601
facesearch的swagger文档: http://127.0.0.1:56789/doc.html
1、java版本最低为:11;安装maven编译工具。安装docker。
2、克隆项目
git clone https://gitee.com/open-visual/face-search.git
3、项目打包
cd face-search && sh scripts/docker_build.sh
参数 | 描述 | 默认值 | 可选值 |
---|---|---|---|
VISUAL_SWAGGER_ENABLE | 是否开启swagger | true | |
SPRING_DATASOURCE_URL | 数据库地址 | ||
SPRING_DATASOURCE_USERNAME | 数据库用户名 | root | |
SPRING_DATASOURCE_PASSWORD | 数据库密码 | root | |
VISUAL_ENGINE_OPENSEARCH_HOST | OPENSEARCH地址 | ||
VISUAL_ENGINE_OPENSEARCH_PORT | OPENSEARCH端口 | 9200 | |
VISUAL_ENGINE_OPENSEARCH_SCHEME | OPENSEARCH协议 | https | |
VISUAL_ENGINE_OPENSEARCH_USERNAME | OPENSEARCH用户名 | admin | |
VISUAL_ENGINE_OPENSEARCH_PASSWORD | OPENSEARCH密码 | admin | |
VISUAL_MODEL_FACEDETECTION_NAME | 人脸检测模型名称 | InsightScrfdFaceDetection | PcnNetworkFaceDetection,InsightScrfdFaceDetection |
VISUAL_MODEL_FACEDETECTION_BACKUP_NAME | 备用人脸检测模型名称 | PcnNetworkFaceDetection | PcnNetworkFaceDetection,InsightScrfdFaceDetection |
VISUAL_MODEL_FACEKEYPOINT_NAME | 人脸关键点模型名称 | InsightCoordFaceKeyPoint | InsightCoordFaceKeyPoint |
VISUAL_MODEL_FACEALIGNMENT_NAME | 人脸对齐模型名称 | Simple106pFaceAlignment | Simple106pFaceAlignment,Simple005pFaceAlignment |
VISUAL_MODEL_FACERECOGNITION_NAME | 人脸特征提取模型名称 | InsightArcFaceRecognition | InsightArcFaceRecognition,SeetaFaceOpenRecognition |
2.1.0 测试用例:face-search-test测试用例-FaceSearchExample
钉钉交流群(已解散)
关注微信公众号回复:钉钉群
微信交流群
关注微信公众号回复:微信群
微信公众号:关注一下,是对我最大的支持
HeX
的开源此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. Open source ecosystem
2. Collaboration, People, Software
3. Evaluation model