人脸识别/车牌识别完整方法分类详解
目录人脸识别完整方法分类详解(传统算法 + 机器学习 + 深度学习,配套 OpenCV)一、传统手工特征人脸识别(无深度学习,OpenCV 原生)1. Eigenfaces 特征脸(主成分 PCA)2. Fisherfaces 费舍尔脸(LDA 线性判别)3. LBPH 局部二值模式直方图4. HOG + SVM 人脸检测(配套前置步骤)二、传统相关滤波 / 手工特征进阶方案(工程过渡方案)三、浅层机器学习人脸识别四、深度学习人脸识别(当前工业主流,精度碾压传统)1. 经典轻量 / 通用人脸特征网络2. 配套人脸检测深度学习网络(前置步骤)3. 深度学习完整流水线深度学习方案优缺点五、特殊细分人脸识别方案各类方法对比选型层级归类总结车牌识别(LPR)完整方案详解,分传统机器视觉方案 + 深度学习工业方案,搭配 OpenCV C++ 部署说明一、传统机器视觉方案(无深度学习,纯 OpenCV 函数,老旧低端设备)1. 图像预处理2. 车牌定位(传统方法)3. 字符分割4. 字符识别(传统机器学习)传统方案优缺点二、深度学习车牌识别(当前主流,OpenCV DNN 加载 ONNX 推理)路线 1:两步拆解方案(灵活稳定,工业最常用)步骤 1:车牌检测网络(定位车牌矩形框)步骤 2:车牌字符识别网络(CRNN)路线 2:端到端一体化车牌识别(轻量化)路线 3:超分增强辅助三、完整工程标准流程(深度学习落地)四、关键配套功能五、传统方案 vs 深度学习方案对比六、OpenCV C++ 部署关键点七、选型建议人脸识别完整方法分类详解(传统算法 + 机器学习 + 深度学习,配套 OpenCV)人脸识别整套流程分为:人脸检测(找人脸框)+ 人脸对齐 + 人脸特征提取 + 人脸比对识别,下面按技术代际划分全部主流方案。一、传统手工特征人脸识别(无深度学习,OpenCV 原生)1. Eigenfaces 特征脸(主成分 PCA)原理采集大量人脸图片,用 PCA 降维,把所有人脸映射到一组标准 “特征脸” 基向量;任意人脸可由特征脸加权组合表示。 识别时:待测人脸投影到特征脸空间,计算与库内人脸的欧式距离,距离最小即为匹配。流程 人脸灰度图 → PCA 训练得到特征脸、平均脸 → 人脸投影 → 距离匹配优缺点 ✅ 简单、运算快、早期人脸识别标配 ❌ 对光照、姿态、遮挡极其敏感;人脸差异大时识别失效归属:无监督降维 + 距离匹配,无需训练分类器2. Fisherfaces 费舍尔脸(LDA 线性判别)原理PCA 只做降维,不区分类别;LDA 线性判别分析优化目标:同类人脸距离更近、不同类人脸更远。 先 PCA 降维,再 LDA 提取区分性特征,比 Eigenfaces 识别精度大幅提升。优缺点 ✅ 区分能力强,同类聚集、异类分离;光照鲁棒优于特征脸 ❌ 人脸样本过少时容易过拟合;姿态、遮挡依旧脆弱OpenCV 支持:cv::face::FisherFaceRecognizer,保存模型 yml3. LBPH 局部二值模式直方图核心原理LBP 算子提取人脸局部纹理,将人脸分小块,每块统计 LBP 纹理直方图,拼接成特征;依靠局部纹理抵抗轻微光照变化。优势:不用对齐完整人脸、不用灰度归一化,对明暗变化适应性最好。优缺点 ✅ 速度快、小样本可用、光照鲁棒;嵌入式低配设备首选传统算法 ❌ 大角度侧脸、口罩遮挡识别崩溃OpenCV 接口:cv::face::LBPHFaceRecognizer,yml 模型存储人脸库特征以上三种统称传统统计人脸识别,全部在opencv_contrib/face模块,属于传统机器学习方案。4. HOG + SVM 人脸检测(配套前置步骤)HOG 提取人脸梯度特征,SVM 二分类判断区域是否人脸,只做人脸检测,不做人脸身份识别。二、传统相关滤波 / 手工特征进阶方案(工程过渡方案)SIFT/SURF/ORB 特征匹配 提取人脸关键点描述子,暴力匹配 / FLANN 匹配判断是否同一人; 缺点:人脸关键点少、极易受表情、角度干扰,几乎不再用于人脸识别。LBP+SVM:提取全局 LBP 纹理,训练 SVM 多分类识别人脸身份。三、浅层机器学习人脸识别K 近邻 KNN:人脸特征向量直接 KNN 距离分类SVM 多分类:将 Eigen/LBP 特征送入 SVM 训练多分类器识别人全部依赖手工特征,复杂场景精度低,现已淘汰。四、深度学习人脸识别(当前工业主流,精度碾压传统)思路:卷积神经网络学习人脸高维特征,输出固定长度特征向量(128/256 维),比对向量余弦距离判断是否同一人。1. 经典轻量 / 通用人脸特征网络FaceNet 提出三元组损失 (Triplet Loss),直接优化人脸向量距离;奠定深度学习人脸识别基础,输出 128 维特征。ArcFace(主流商用) 加入角度间隔损失,类内压缩、类间拉大间隔,识别精度极高,门禁、考勤、安防通用;导出 ONNX 可 OpenCV DNN 推理。InsightFace 系列(MobileFaceNet、RFB、LResNet) 轻量化模型,适配嵌入式、手机端,速度快、精度高,项目最常用。CenterFace、SphereFace:改进损失函数,提升区分度。2. 配套人脸检测深度学习网络(前置步骤)先检测人脸框,再识别身份:MTCNN:三段 CNN,同时人脸检测 + 关键点对齐(5 点眼睛鼻子嘴角)RetinaFace、Ultra-Light-Face-Det:轻量实时人脸检测,适合嵌入式YOLO-Face:YOLO 系列改造,高速人脸检测,导出 ONNX 用 OpenCV 部署