| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 计算机视觉与图像处理学习笔记之人脸识别的三种方法 -> 正文阅读 |
|
[人工智能]计算机视觉与图像处理学习笔记之人脸识别的三种方法 |
? ? ? ? 人脸检测是指在图像中完成人脸定位的过程,而人脸识别是在人脸检测的基础上进一步判断人的身份,OpenCV提供了三种人脸识别的方法:EigenFaces(特征脸)、FisherFaces(人鱼脸)、Local Binary Patterns Histograms,LBPH(局部二进制编码直方图)。 1、EigenFaces EigenFaces人脸识别的基本步骤: (1)调用cv2.face.EigenFaceRecognizer_create()方法创建EigenFaces识别器; (2)调用识别器的train()方法以便使用已知图像训练模型; (3)调用识别器的predict()方法以便使用未知图像进行识别,确认其身份。 用到的函数: recognizer=cv2.face.EigenFaceRecognizer_create([num_components[,threshold]]) recognizer.train(src, labels) label, confidence = recognizer.predict(testimg) 参数说明:testimg为未知人脸图像 代码如下:
?注意:读取图像时必须转换为灰度图; ? ? ? ? ? ? 所有的用于训练的已知人脸图像和用于测试的未知人脸图像的尺寸必须一致(程序中已体现这一点,可以根据自己的实际和需要设置尺寸); ? ? ? ? ? ??recognizer = cv2.face.EigenFaceRecognizer_create()函数中的face来自于OpenCV的贡献库,所以需要安装opencv-contrib-python,并且要与opencv-python的版本一致,否则程序会报错。 下面分别是用与训练图像数组完全一样和完全不一样的图片下的结果: ?2、FisherFaces FisherFaces人脸识别的基本步骤: (1)调用cv2.face.FisherFaceRecognizer_create()方法创建FisherFaces识别器; (2)调用识别器的train()方法以便使用已知图像训练模型; (3)调用识别器的predict()方法以便使用未知图像进行识别,确认其身份。 ?代码与EigenFaces类似,只要将创建识别器 ?recognizer=cv2.face.EigenFaceRecognizer_create()改为recognizer=cv2.face.FisherFaceRecognizer_create()即可。 3、LBPH LBPH算法处理图像的基本原理: ? ? ? ? 取像素x周围(邻域)的8个像素与其比较,像素值比像素x大的取0,否则取1。将8个像素对应的0、1连接得到一个8为二进制数,将其转换为十进制数,作为像素x的LBP值; ? ? ? ? 对图像的所有像素按相同的方法进行处理,得到整个图像的LBP图像,该图像的直方图就是图像的LBPH。 LBPH人脸识别的基本步骤: (1)调用cv2.face.LBPHFaceRecognizer_create()方法创建LBPH识别器; (2)调用识别器的train()方法以便使用已知图像训练模型; (3)调用识别器的predict()方法以便使用未知图像进行识别,确认其身份。 用到的函数: recognizer=cv2.face.LBPHFaceRecognizer_create([,radius[,neighbors[,grid_x[,grid_y[,threshold]]]]]) recognizer.train(src, labels) label, confidence = recognizer.predict(testimg) 参数说明:testimg为未知人脸图像 代码实现:
? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 4:21:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |