C# 基于OpenCv的视觉工作流-章57-人脸识别

C# 基于OpenCv的视觉工作流-章57-人脸识别

本章目标:
一、算法解释;
二、模型训练;
三、人脸识别;

章49-人脸检测是识别图像中人脸的位置,本章进一步深入,对识别的人脸具体是谁进行识别。人脸识别算法有多种,本文介绍LBPHFaceRecognizer‌经典算法,先进行模型训练,再进行识别。

一、算法解释

二、模型训练

1、创建识别器

var recognizer = LBPHFaceRecognizer.Create(

radius=1, # LBP 圆形邻域半径

neighbors=8, # 邻域采样点数

grid_x=8, # 水平网格数

grid_y=8, # 垂直网格数

threshold: double.PositiveInfinity); #预测阈值

2、训练模型

recognizer.Train(matList, indexList);

说明:参数1,为图像列表;

参数2,为各图像对应的姓名列表;

以下为训练的模型文件,如下图

三、人脸识别

1、检测人脸

先检测出人脸的位置,用章49-人脸检测实现

2、读取模型

LBPHFaceRecognizer recognizer = LBPHFaceRecognizer.Create();

recognizer.Read(autoModelUrl);

说明:参数为保存的模型路径

3、图像预处理

遍历取得的人脸图像,进行预处理,使图像尺寸与模型训练时的尺寸一致,用Cv2.Resize算子实现。

4、识别

int predictedLabel = -1;

double confidence = 0.0;

recognizer.Predict(faceMat, out predictedLabel, out confidence);

说明:参数1,为输入的人脸图像;

参数2,为输出的姓名;

参数3,为输出的置信度;

5、对识别结果进行显示处理

效果如下

参考链接

https://www.bilibili.com/video/BV1mM4y1B7Zc/?spm_id_from=333.788.videopod.episodes\&vd_source=3f9438f03abb9d3e91fda0640164d626\&p=8

"VisionTool 探迹"免费视觉工具

下载地址:https://pan.baidu.com/s/11tktKOSnepLNIEqNbvnv6w?pwd=qv5i

"VisionTool Halcon"付费视觉工具(淘宝可搜)

对应系列文章"C# 基于Halcon的视觉工作流",欢迎前往阅读。

上述内容需要一定的技术功底,本章至此已结束,欢迎阅读下章,谢谢!

相关推荐
AI智图坊几秒前
甩手图省事的技术原理:如何用“商品锁定”机制解决AI作图的一致性难题
大数据·人工智能·计算机视觉·ai作画·aigc·ai写作
m0_547486661 分钟前
《深度学习理论及实践》全套PPT课件(北京邮电大学)
人工智能·深度学习
V哥AI增长10 分钟前
旅游行业AI搜索机制:从SEM到GEO引用源迁移实证
人工智能·旅游
Bruce_Liuxiaowei12 分钟前
驴滑块拼图游戏:从19世纪的纸片谜题到数学博弈论
人工智能·算法
MartinYeung516 分钟前
[论文学习]MAC:多智能体宪章学习
人工智能·学习·macos
一直C17 分钟前
Linux系统编程|信号进阶 + SystemV IPC(消息队列、共享内存)
linux·c语言·开发语言·算法·青少年编程·vim
hopsky19 分钟前
《大模型应用开发 动手做 AI Agent》核心内容详细解读
人工智能
图王大胜20 分钟前
万物演化论00(序章) 从宇宙到AI
人工智能·ai·宇宙·演化·文明·生命科学
Json____20 分钟前
AI智能化进销存管理系统
人工智能·管理系统·进销存·wwwoop.com
乃嘿仔21 分钟前
AI热点日报 | 2026年8月29日
人工智能