基于OpenCV的人脸识别目录
前言
环境利用
模块使用
模块介绍
模块安装问题:
OpenCV简介
安装OpenCV模块
OpenCV的基本使用
阅读
[范例]读图
运行结果如下:
图像灰度转换
[示例]将图像转换为灰度
运行结果如下:
画一张图
【范例】绘图
运行结果如下:
总结
前言
我们身边的人脸识别包括车站检票、人脸监控、无人超市、支付宝刷脸支付、上班打卡、手机人脸解锁等。
人脸检测是人脸识别系统的关键部分之一。其目的是检测任何给定中包含的一张或多张面孔。它是人脸识别、表情识别等下游任务的基础。人脸识别是通过采集包含人脸的图像或视频数据,并对人脸特征信息进行比对分析,实现身份识别的生物识别技术。它是人脸识别系统的核心组成部分。
随着人工智能的不断发展,机器学习技术变得越来越重要。很多人已经开始学习机器学习。本文介绍了机器学习的基本内容。本文介绍了OpenCVZ中的简单图像处理。
python3.9pycharm
opencv-python
opencv关于OpenCv
Opencv是一个开源的跨平台计算机视觉库,内部实现了图像处理和计算机视觉中的许多常见算法。对于Python来说,引用opencv库时,需要写成importcv2。其中,cv2是opencv的C++命名空间名称。用它来表示调用C++开发的opencv的接口。
目前,人脸识别有很多比较成熟的方法。这里调用了OpenCv库,OpenCV提供了三种人脸识别方法,分别是LBPH方法、EigenFishfaces方法、Fisherfaces方法。本文采用LBPH方法。在OpenCV中,可以使用函数cv2.face.LBPHFaceRecognizer_create()生成LBPH识别器实例模型,然后应用cv2.face_FaceRecognizer.train()函数完成训练,最后使用cv2.face_FaceRecognizer.pdict()函数即可完成人脸识别。
CascadeClassifier是Opencv中用于人脸检测的级联分类器。您可以同时使用Haar和LBP功能。Haar特征是反映图像灰度变化的特征,利用像素子模块计算差异。分为三类:边缘特征、线性特征、中心特征和对角线特征。
如果安装python第三方模块:win+R,输入cmd,点击确定,输入安装命令pipinstallmodulename回车
点击pycharm中的Terminal,输入安装命令
安装失败的原因:失败-:pip不是内部命令解决方案:设置环境变量
故障2:发生大量红报告。解决方案:由于网络链路超时,需要切换镜像源。
清华大学:阿里云:中国科学技术大学华中科技大学技术:山东科技大学:豆瓣:例如:pip3install-模块名称
失败三:cmd显示已经安装,或者安装成功,但是仍然无法导入到pycharm中。解决方案:可能安装了多个python版本。卸载一个就行了,或者可以用pycharmpython解释器设置不正确。
OpenCV简介
OpenCV的全称是OpenSourceComputerVisionLibrary,是一个跨平台的计算机视觉库。
OpenCV由Intel公司发起和开发,并获得BSD许可,可用于商业和研究领域。
在域内免费使用。OpenCV可用于开发实时图像处理、计算机视觉和模式识别程序。这个流程
该库还可以使用Intel的IPP进行加速。
OpenCV是用C++语言编写的,其主界面也是C++语言,但还是保留了很多C语言的内容
语言界面。该库还具有广泛的Python、Java和MATLAB/OCTAVE接口。这些字
该语言的API接口函数可以通过在线文档获取。现在还提供对C#、Ch、Ruby和GO的支持。
OpenCV已经支持python模块。您可以直接使用pip安装它们。命令如下:
pip安装opencv-python
OpenCV基本使用
显示图像是OpenCV最基本的操作之一,imshow()函数可以实现该操作。如果你用过的话
对于其他GUI框架背景,很自然地调用imshow()来显示图像。imshow()函数有两个参数:
显示图像的帧名称和要显示的图像本身。直接调用imshow()函数图像确实会显示出来,但是
它会消失。要确保始终显示在窗口上,请使用waitKey()函数。waitKey()函数的参数是
等待键盘触发的时间,单位毫秒,其返回值为-1
图像=cv2.imread(图像路径)
导入cv2为cvimg=cv.imread('1.png')cv.imshow('输入图像',img)cv.waitKey(0)cv.destroyAllWindows()
我们首先读取图像,其中“1.png”是相对路径。注意读取图像的路径不能包含汉字,否则无法读取数据。我们发现如果不加waitkey,程序运行后会一闪而过。因此,waitKey(0)的作用就是等待键盘输入。
OpenCV中有数百种方法用于在不同颜色空间之间进行转换。目前,计算机视觉有以下三种方法
常用的色彩空间:灰度、BGR、HSV。
(1)灰度颜色空间通过去除颜色信息将其转换为灰度。灰度颜色空间对于中间处理特别有效。(2)BGR和蓝、绿、红色彩空间。每个像素由一个三元数组表示,分别代表蓝、绿、红三种颜色。Web开发人员可能熟悉另一个类似的色彩空间:RGB。它们仅在颜色顺序上有所不同。HSV,H是色调,S是饱和度,V代表暗度。灰度转换的目的是减少图像转换为灰度的计算强度。示例如下:
导入cv2为cvimg=cv.imread('1.png')cv.imshow('输入图像',img)gray_img=cv.cvtColor(img,code=cv.COLOR_BGR2GRAY)cv.imshow('gray_image',gray_img)cv.waitKey(0)cv.destroyAllWindows()cv.imwrite('gray_lena.jpg',gray_img)
OpenCV强大的体现之一就是可以任意编辑和处理图像。下面这个
该函数的最后一个参数指定画笔的大小。
导入cv2为cvimg=cv.imread('1.png')x,y,w,h=50,50,80,80cv.rectangle(img,(x,y,x+w,y+h),颜色=(0,255,0),厚度=2)#color=BGRcv.circle(img,center=(x+w//2,y+h//2),半径=w//2,颜色=(0,0,255),thickness=2)cv.imshow('结果',img)cv.waitKey(0)cv.destroyAllWindows()
总结
随着人工智能的不断发展,机器学习技术变得越来越重要。很多人已经开始学习机器学习。本文介绍了机器学习的基本内容。介绍OpenCV中的图像处理。我们学习了如何安装模块,以及读取图像和图像处理。在下一篇文章中,我们将介绍Haar的概念以及如何检测和视频中的人脸。
大家好,今天小编关注到一个比较有意思的话题,就是关于学电脑支架气囊的问题,于是小编就整理了4个相关介绍学电脑支架气囊的解答,让我们一起看看吧。北汽u5plus气…
大家好,今天小编关注到一个比较有意思的话题,就是关于邯郸学电脑安装的问题,于是小编就整理了2个相关介绍邯郸学电脑安装的解答,让我们一起看看吧。邯郸银行网上银行电…
大家好,今天小编关注到一个比较有意思的话题,就是关于学电脑图像处理的问题,于是小编就整理了5个相关介绍学电脑图像处理的解答,让我们一起看看吧。图形与图像的区别是…
大家好,今天小编关注到一个比较有意思的话题,就是关于学图像算法电脑的问题,于是小编就整理了3个相关介绍学图像算法电脑的解答,让我们一起看看吧。图像处理学习难度怎…
我最近购买了一台MacBookPro2019电脑,想要安装双系统。因为i9处理器只能安装win10系统,所以给大家分享一下具体方法.21-08-15最近mac系…
2024-05-20 16:58:59
2024-05-20 16:47:00
2024-05-20 16:33:12
2024-05-20 16:20:29
2024-05-20 15:49:58
大家好,今天小编关注到一个比较有意思的话题,就是关于温州健康餐培训机构的问题,于…
大家好,今天小编关注到一个比较有意思的话题,就是关于培训学校教师简历的问题,于是…