位置: IT常识 - 正文

基于OpenCV的人脸识别(基于opencv的人脸检测算法)

编辑:rootadmin
基于OpenCV的人脸识别

推荐整理分享基于OpenCV的人脸识别(基于opencv的人脸检测算法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:基于opencv的人脸识别原理,opencv 人脸,基于opencv的人脸性别识别论文,基于opencv的人脸检测算法,基于opencv的人脸识别,基于opencv的人脸识别,基于opencv的人脸识别毕业设计,基于opencv的人脸识别,内容如对您有帮助,希望把文章链接给更多的朋友!

目录

🥩 前言

🍖 环境使用

🍖 模块使用

🍖 模块介绍

🍖 模块安装问题:

🥩 OpenCV 简介

🍖 安装 OpenCV 模块

🥩 OpenCV 基本使用

🍖 读取图片

🍗 【示例】读取图片

🍗 运行结果如下:

🍖 图片灰度转换

🍗【示例】将图片灰度

🍗 运行结果如下:

 🍖 画图

🍗【示例】画图

🍗 运行结果如下:

🥩 总结

🥩 前言

我们身边的人脸识别有车站检票,监控人脸,无人超市,支付宝人脸支付,上班打卡,人脸解锁手机。

人脸检测是人脸识别系统组成的关键部分之一,其目的是检测出任意给定图片中的包含的一个或多个人脸,是人脸识别、表情识别等下游任务的基础。人脸识别是通过采集包含人脸的图像或视频数据,通过对比和分析人脸特征信息从而实现身份识别的生物识别技术,是人脸识别系统的核心组件。

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。我们本文介绍简单的OpenCVZ中图像的处理。

🍖 环境使用python 3.9pycharm🍖 模块使用opencv-python🍖 模块介绍opencv

关于OpenCv Opencv是一个开源的的跨平台计算机视觉库,内部实现了图像处理和计算机视觉方面的很多通用算法,对于python而言,在引用opencv库的时候需要写为import cv2。其中,cv2是opencv的C++命名空间名称,使用它来表示调用的是C++开发的opencv的接口。

目前人脸识别有很多较为成熟的方法,这里调用OpenCv库,而OpenCV又提供了三种人脸识别方法,分别是LBPH方法、EigenFishfaces方法、Fisherfaces方法。本文采用的是LBPH(Local Binary Patterns Histogram,局部二值模式直方图)方法。在OpenCV中,可以用函数cv2.face.LBPHFaceRecognizer_create()生成LBPH识别器实例模型,然后应用cv2.face_FaceRecognizer.train()函数完成训练,最后用cv2.face_FaceRecognizer.predict()函数完成人脸识别。

CascadeClassifier,是Opencv中做人脸检测的时候的一个级联分类器。并且既可以使用Haar,也可以使用LBP特征。其中Haar特征是一种反映图像的灰度变化的,像素分模块求差值的一种特征。它分为三类:边缘特征、线性特征、中心特征和对角线特征。

🍖 模块安装问题:如果安装python第三方模块:基于OpenCV的人脸识别(基于opencv的人脸检测算法)

win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车

在pycharm中点击Terminal(终端) 输入安装命令

安装失败原因:失败一: pip 不是内部命令

                解决方法: 设置环境变量

失败二: 出现大量报红 (read time out)

                解决方法: 因为是网络链接超时, 需要切换镜像源

清华:https://pypi.tuna.tsinghua.edu.cn/simple    阿里云:https://mirrors.aliyun.com/pypi/simple/    中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/    华中理工大学:https://pypi.hustunique.com/    山东理工大学:https://pypi.sdutlinux.org/    豆瓣:https://pypi.douban.com/simple/    例如:pip3 install -i https://pypi.doubanio.com/simple/ 模块名失败三: cmd里面显示已经安装过了, 或者安装成功了, 但是在pycharm里面还是无法导入

                解决方法: 可能安装了多个python版本 (anaconda 或者 python 安装一个即可) 卸载一个就好,或者你pycharm里面python解释器没有设置好。

🥩 OpenCV 简介

        OpenCV 的全称是 Open Source Computer Vision Library,是一个跨平台的计算机视觉库。

OpenCV 是由英特尔公司发起并参与开发,以 BSD 许可证授权发行,可以在商业和研究领

域中免费使用。OpenCV 可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程

序库也可以使用英特尔公司的 IPP 进行加速处理。

        OpenCV 用 C++语言编写,它的主要接口也是 C++语言,但是依然保留了大量的 C 语

言接口。该库也有大量的Python、Java and MATLAB/OCTAVE(版本 2.5)的接口。这些语

言的 API 接口函数可以通过在线文档获得。如今也提供对于 C#、Ch、Ruby、GO 的支持。

🍖 安装 OpenCV 模块

        OpenCV 已经支持 python 的模块了,直接使用 pip 就可以进行安装,命令如下:

pip install opencv-python

🥩 OpenCV 基本使用🍖 读取图片

        显示图像是 OpenCV 最基本的操作之一,imshow()函数可以实现该操作。如果使用过其

他 GUI 框架背景,就会很自然第调用 imshow()来显示一幅图像。imshow()函数有两个参数:

显示图像的帧名称以及要显示的图像本身。直接调用 imshow()函数图像确实会显示,但随

即会消失。要保证图片一直在窗口上显示,要通过 waitKey()函数。waitKey()函数的参数为

等待键盘触发的时间,单位为毫秒,其返回值是-1(表示没有键被按下)

image = cv2.imread(imagepath)

🍗 【示例】读取图片import cv2 as cvimg=cv.imread('1.png') cv.imshow('input image',img)cv.waitKey(0) cv.destroyAllWindows()

         我们首先是读取我们的图片,在这里"1.png"是相对路径,注意读取图片的路径不能有中文,不然数据读取不出来。我们发现我们不加waitkey,程序运行之后就会一闪而过,所以,waitKey(0) 的作用就是等待键盘的输入。

🍗 运行结果如下:

🍖 图片灰度转换

        OpenCV 中有数百种关于在不同色彩空间之间转换的方法。当前,在计算机视觉中有三

种常用的色彩空间:灰度、BGR、以及 HSV(Hue,Saturation,Value)。

(1)灰度色彩空间是通过去除彩色信息来将其转换成灰阶,灰度色彩空间对中间处理特别有效,比如人脸识别。(2)BGR 及蓝、绿、红色彩空间,每一个像素点都由一个三元数组来表示,分别代表蓝、绿、红三种颜色。网页开发者可能熟悉另一个与之相似的颜色空间:RGB 它们只是颜色顺序上不同。(3)HSV,H(Hue)是色调,S(Saturation)是饱和度,V(Value)表示黑暗的程度(或光谱另一端的明亮程度)。

        灰度转换的作用就是:转换成灰度的图片的计算强度得以降低。示例如下:

🍗【示例】将图片灰度import cv2 as cvimg=cv.imread('1.png')cv.imshow('input image',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 的强大之处的一个体现就是其可以对图片进行任意编辑,处理。 下面的这个

函数最后一个参数指定的就是画笔的大小。

🍗【示例】画图import cv2 as cvimg=cv.imread('1.png')x,y,w,h=50,50,80,80cv.rectangle(img,(x,y,x+w,y+h),color=(0,255,0),thickness=2) #color=BGRcv.circle(img,center=(x+w//2,y+h//2),radius=w//2,color=(0,0,255),thickness=2)cv.imshow('result image',img)cv.waitKey(0)cv.destroyAllWindows()🍗 运行结果如下:

🥩 总结

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。介绍OpenCV中图像的处理。我们学习了如何安装模块,以及读取图片和图片的处理。下一篇,我们将介绍Haar的概念,以及如何对图片和视频中进行人脸检测。

本文链接地址:https://www.jiuchutong.com/zhishi/299267.html 转载请保留说明!

上一篇:Vue 原理整理(vue3 原理)

下一篇:[进阶] list 过滤 stream 的lambda进阶操作, 这一篇就够了(list集合过滤)

  • 12306买卧铺怎么选上下铺(12306买卧铺怎么选择)

    12306买卧铺怎么选上下铺(12306买卧铺怎么选择)

  • iphone11怎么进行分屏操作(iphone11怎么进行照片分类)

    iphone11怎么进行分屏操作(iphone11怎么进行照片分类)

  • vivo x27的智能锁屏怎么取消(vivo门锁)

    vivo x27的智能锁屏怎么取消(vivo门锁)

  • 荣耀20青春版对比华为nova4e(荣耀20青春版对比华为畅享10s)

    荣耀20青春版对比华为nova4e(荣耀20青春版对比华为畅享10s)

  • 朋友圈怎么只让一个人看(朋友圈怎么只让自己看到)

    朋友圈怎么只让一个人看(朋友圈怎么只让自己看到)

  • 抖音刷到的视频是随机的吗(抖音刷到的视频找不到了怎么办)

    抖音刷到的视频是随机的吗(抖音刷到的视频找不到了怎么办)

  • 手机QQ浏览器闪退打不开了怎么办(手机qq浏览器闪退怎么解决)

    手机QQ浏览器闪退打不开了怎么办(手机qq浏览器闪退怎么解决)

  • wifi6向下兼容吗(wifi6向下兼容wifi4吗)

    wifi6向下兼容吗(wifi6向下兼容wifi4吗)

  • 苹果11屏幕一会亮一会暗怎么回事(苹果11屏幕一会暗一会亮)

    苹果11屏幕一会亮一会暗怎么回事(苹果11屏幕一会暗一会亮)

  • 电脑响是怎么回事(电脑zz响)

    电脑响是怎么回事(电脑zz响)

  • 腾讯会议开了视频其他人会看得到吗(腾讯会议开了视频)

    腾讯会议开了视频其他人会看得到吗(腾讯会议开了视频)

  • 华为p40长截屏怎么操作(华为p40长截屏怎么截?)

    华为p40长截屏怎么操作(华为p40长截屏怎么截?)

  • 手机充电用完了充还是随时充(手机充电用完了充好还是有一点再充好)

    手机充电用完了充还是随时充(手机充电用完了充好还是有一点再充好)

  • 药丸屏是什么意思(药丸屏太难看)

    药丸屏是什么意思(药丸屏太难看)

  • 宽带自带wifi吗(宽带有wifi吗)

    宽带自带wifi吗(宽带有wifi吗)

  • 微信只能发不能收是怎么回事(微信只能发不能收信息)

    微信只能发不能收是怎么回事(微信只能发不能收信息)

  • 苹果11充满电闪电不消失(苹果充满电闪电会消失吗)

    苹果11充满电闪电不消失(苹果充满电闪电会消失吗)

  • 苹果8原装充电器多少w(苹果8原装充电器多少A)

    苹果8原装充电器多少w(苹果8原装充电器多少A)

  • 艺术字的环绕位置在哪(艺术字环绕方式)

    艺术字的环绕位置在哪(艺术字环绕方式)

  • vivox30是全面屏吗(vivox30pro全面屏怎么设置)

    vivox30是全面屏吗(vivox30pro全面屏怎么设置)

  • 为什么淘宝代付不了(为什么淘宝代付是灰色的)

    为什么淘宝代付不了(为什么淘宝代付是灰色的)

  • 微博怎么删除兴趣主页(微博怎么删除兴趣标签)

    微博怎么删除兴趣主页(微博怎么删除兴趣标签)

  • 手机在线和4g在线怎么设置(手机在线和4g在一起)

    手机在线和4g在线怎么设置(手机在线和4g在一起)

  • wegame登录验证码白屏(wegame登录验证码显示不出来)

    wegame登录验证码白屏(wegame登录验证码显示不出来)

  • 华为p30pro来电闪光灯怎么设置(华为p30pro来电闪灯哪设置)

    华为p30pro来电闪光灯怎么设置(华为p30pro来电闪灯哪设置)

  • win10重置电脑要多久(win10重置电脑需要重装系统吗)

    win10重置电脑要多久(win10重置电脑需要重装系统吗)

  • 什么是本期应纳税所得额
  • 股权转让主要交什么税
  • 销项负数的分录怎么做
  • 运输费全额抵扣什么意思
  • 更正个税申报需要做账吗
  • 报表净利润是亏损可弥补数吗
  • 出口港杂费是什么费用
  • 过次页的金额怎么来的
  • 取得高新技术企业证书
  • 固定资产盘盈盘亏的会计科目
  • 附加税的计税依据是实缴增值税
  • 土地使用权作为固定资产的情况
  • 发票已开款项未入账有什么影响?
  • 代收电费可以开发票吗
  • 差额征税条件
  • 行政事业单位国有资产处置收入包括
  • 库存现金进行清查
  • 小规模企业低值易耗品摊销方法
  • 费用提多了利润少了所得税是如何调整?
  • 显卡功耗天梯图2023最新版
  • 跨年怎么冲销发票
  • 关于幼儿园会没课程的会刊
  • 防伪税控开票系统技术维护费
  • 捐赠固定资产入账价值
  • 免租期房产税增值税如何计算
  • 反射调用set方法
  • macwifi配置
  • 计提五险一金的分录怎么写
  • 单反镜头直径越大是不是就越好
  • php 堆排序
  • 个体工商户年报逾期怎么办
  • php实现递归
  • PHP自定义函数返回两个数中大的那个
  • 解决掉发的有效方法
  • html表格用法
  • jdbc连接mysql的url怎么写
  • python 元类 详解
  • 递延收益为什么是递延所得税资产
  • 旅行社差额征税税率5%
  • 航天信息发票怎么抵扣
  • 企业代收水电费算不算收入
  • 营业收入净额是利润表的哪个数
  • 公司缴纳残保金的标准
  • 个人所得税的计算公式方法Excel
  • 哪些合同不需要缴纳印花税的通知
  • 应付账款尾款怎么处理
  • 年报资本负债表怎么看
  • 固定资产采购需要走什么流程
  • 装载机如何计提折旧费用
  • 多计的人工成本怎么做账
  • 税盘的服务费
  • 对存在标的资产的亏损合同,企业应首先对标的资产
  • 新成立公司会计要做哪些事情
  • 审计真实性认定
  • 建账前应考虑什么问题
  • centos配置网络地址
  • linux命令i
  • win8系统如何查看文件浏览痕迹记录
  • win单击变双击
  • win10系统设置锁屏密码
  • win8系统怎么重新安装系统
  • js 列表
  • Node.js中的全局变量有哪些
  • javascript的理解
  • bootstrap 可编辑下拉检索
  • unity游戏开发常用技术
  • insmod: init_module 'hello.ko' failed (Exec format error)
  • python怎么制作
  • unity ugui ngui
  • Python出现keyerror
  • 摩托车的消费税率
  • 供热企业税收优惠政策执行情况
  • 河北省电子税务局官网app
  • 取消税控盘服务费
  • 查国税发票验证码怎么查
  • 宝宝早教一般选什么课程
  • 为什么进了网页不能登录
  • 罗湖税务局在哪
  • 浙江国地税联合税务局
  • 税务发票定额
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设