当前位置: 首页 > news >正文

企业网站的基本类型包括网站建设国家和行业标准

企业网站的基本类型包括,网站建设国家和行业标准,手机端开发工具,哪里可以免费建网站简介#xff1a;本项目主要使用python语言#xff0c;主要的模块库有os#xff0c;opencv-python#xff0c;opencv-contrib-python。项目主要分为三个部分#xff0c;人脸录入#xff0c;训练数据#xff0c;实现人脸的识别。本博客包含源代码#xff0c;以及各个功能…简介本项目主要使用python语言主要的模块库有osopencv-pythonopencv-contrib-python。项目主要分为三个部分人脸录入训练数据实现人脸的识别。本博客包含源代码以及各个功能模块需求分析的详细解释当然本项目只是简单的实现人脸识别可以在此基础上扩展。 一项目功能及流程分析 我们项目的主要功能也就是最终的实现效果是当我们打开摄像头后在摄像头里会出现我的人脸头像且对我的人脸进行识别在画面中能够框出我的人脸部分并显示出画面中人脸的姓名。 项目主要包含以下三个大的模块人脸录入、训练数据、人脸识别。 主要用到的模块 os为操作系统的访问提供相关功能的支持处理文件和目录opencv-python计算机视觉和机器学习软件库opencv-contrib-pythonopencv 的扩展模块 1、人脸录入模块。 主要目的通过人脸录入模块去得到人脸的数据然后通过已知数据去训练模型得到人脸的姓名标签和人脸的一一对应关系那么进行人脸的识别时就能根据训练的数据去识别画面中的人脸是谁了能够在画面中显示出它的名字。 主要功能首先能打开摄像头找到框出人脸的部分且我们要对人脸部分截取保存因为我们是训练姓名和人脸一一对应所有别忘了保存图片的时候让用户输入姓名为了减小图片大小我们可以将截取的图片转化成灰度图片不需要彩色的。步骤如下 打开摄像头。输入人脸对应的姓名。检测画面中的人脸部分。保存人脸图片。灰度图片不需要彩色 2、数据训练模块。 主要目的通过保存的数据使用模块自带的训练器训练得到姓名和人脸的一一对应关系。 主要功能读取文件的 图片和姓名开始训练数据训练结束将数据保存。步骤如下 读取保存的全部灰度图片和姓名。训练数据。保存数据。 3、人脸识别模块。 主要目的根据所训练的数据能够在我们打开摄像头的时候标记出画面中的人脸部分且在画面中显示人脸的姓名。 主要功能能够打开摄像头能够框出画面中的人脸部分能够识别画面中的人脸并在画面中显示人脸的姓名。步骤如下 打开摄像头。检测人脸部分框出人脸。进行人脸识别在画面中显示人脸姓名。 二项目具体实现代码及结果演示 1、建立项目文件 我们将本项目中用到一些路径定义为宏保存到python文件中命名为hong,py。将人脸灰度照片保存到文件夹中建立文件夹data。训练数据也需要保存到文本里面新建文本文件命名为Training_data。新建三个python文件分别用于三个模块的具体实现。项目目录如下 宏文件源代码供参考 INPUT_FACE_WINDOWS_NAME input_face BGR_GREEN (0, 255, 0) BGR_RED (0, 0, 255) FACE_MIN_SIZE (60, 60) # 保存图片的路径 IMG_SAVE_PATH ./data # 级联人脸特征检测器 FACE_CLASSIFIER_PATH D:/python_project/Lib/site-packages/cv2/data/haarcascade_frontalface_alt2.xmlTRAIN_DATA_SAVE_PATH ./Training_dataFACE_RECOGNITION_WINDOW_NAME Face recognition FONT_SCALE 0.75 # 字体比例 TEXT_THICKNESS 1 # 线条粗细 GRAPH_THICKNESS 12、人脸录入模块代码实现。 import cv2 as cv from hong import * import osdef img_extract_faces(img): # 将人脸图片转为灰度gray cv.cvtColor(img, cv.COLOR_BGR2GRAY) # 转成灰度图像face_classifier cv.CascadeClassifier(FACE_CLASSIFIER_PATH) # 加载级联检测器人脸特征分类器return face_classifier.detectMultiScale(gray, minSizeFACE_MIN_SIZE), graydef get_image_name(name): # 获取图片的命名名字格式1.lihua.jpg# 1.lihua.jpg 格式。如果文件中没有则加入如果已有则替换# 把读出来的图片名称用字典存然后用name去字典里面找有没有。f os.listdir(IMG_SAVE_PATH) # os.listdir(IMG_SAVE_PATH)返回目标路径里的文件列表if len(f) 0: # 文件列表f的长度为0则表示没有图片编号为1name_number 1else: # 说明原文件有人脸照片如果出现相同人脸姓名替换成新的没有编号为最大值max.name.jpg加入进去。name_map {f.split(.)[1] : int(f.split(.)[0]) for f in os.listdir(IMG_SAVE_PATH)}name_number name_map[name] if name in name_map else max(name_map.values())1# return IMG_SAVE_PATH str(name_number) . name .jpgreturn str(name_number) . name .jpgdef save_face(faces, img, name): # 保证只有一个人脸出现在画面中if len(faces) 0:print(没有检测到人脸请调整)if len(faces) 1:print(检测到多个人脸请调整)x, y, w, h faces[0]# 保存人脸部分保存到文件夹格式为 1.李华.jpg 格式。如果文件中没有则加入如果已有则替换cv.imwrite(./data/ get_image_name(name), img[y: y h, x: x w])print(录入成功按 q 键退出)def main():# 人脸录入部分是为了得到人脸的数据然后后面对人脸进行训练。# 人脸数据信息主要有三个部分。1、人脸图片。 2、人脸名字。 3、编号编号需要和名字需要统一。以为训练数据是拿序号和人脸进行比对# 1、人脸图片打开摄像头、只取人脸部分、给用户实时展示人脸的画面把人脸框出来、保存和退出# 2、人脸名字。用户输入# 3、编号。文件名称记录# 打开摄像头cap cv.VideoCapture(0)if not cap.isOpened():print(连接摄像头失败)# 输入人脸的名字name input(请输入姓名)if name :print(姓名不能为空请重新输入)print(姓名输入完成按 s 保存按 q 退出。)# 循环读取摄像头的每一帧画面,然后识别画面中的人脸识别后只保存人脸部分作为训练数据。while True:ret, frame cap.read()if not ret:print(读取失败)break# 检测人脸且提取人脸部分。这部分直接使用一个函数封装起来。faces, gray img_extract_faces(frame)# 框出人脸for x, y, w, h in faces:cv.rectangle(imgframe, pt1(x, y), pt2(xw, yh),colorBGR_GREEN, thickness1)cv.imshow(INPUT_FACE_WINDOWS_NAME, frame)# 保存和退出k cv.waitKey(1)if k ord(s):# 保存图像只需保存灰度图像save_face(faces, gray, name)elif k ord(q):break# 释放内存cap.release()cv.destroyAllWindows()if __name__ __main__:main() 运行imput_face.py录入人脸 点击英文的s键即可保存人脸到data文件中如下图所示 3、训练数据模块代码实现。 import cv2 as cv import os from hong import * import numpy as npdef main():# 获取图片完整路径image_paths [os.path.join(IMG_SAVE_PATH, f) for f in os.listdir(IMG_SAVE_PATH)]# 遍历列表中的图片faces [cv.imread(image_path, 0) for image_path in image_paths]# 获取训练对象img_ids [int(f.split(.)[0])for f in os.listdir(IMG_SAVE_PATH)]recognizer cv.face.LBPHFaceRecognizer_create()recognizer.train(faces, np.array(img_ids))print(faces, np.array(img_ids))# 保存文件recognizer.write(TRAIN_DATA_SAVE_PATH)if __name__ __main__:main()运行train.py文件训练data文件夹里面的数据  4、人脸识别模块代码实现。 通过摄像头识别人脸LBPH识别器训练的数据和当前的人脸图片得到编号。编号和人脸的对应关系标记人脸和名字并展示画面创建识别器加载训练数据读取文件构造编号和人脸的关系打开摄像头循环取每帧画面人脸检测且提取人脸部分遍历人脸进行识别框出人脸部分且实时展示画面画面上带有 关闭摄像头和窗口import os import cv2 as cv from cv2 import face from hong import * from train import * from imput_face import img_extract_facesdef get_color_text(confidence, name):if confidence 85:return BGR_RED, unknownreturn BGR_GREEN, namedef main():# 创建识别器recognizer cv.face.LBPHFaceRecognizer_create()recognizer.read(TRAIN_DATA_SAVE_PATH)# 读取文件构造编号和人脸的关系。以字典的形式保存编号和人脸名字的关系name_map {int(f.split(.)[0]): f.split(.)[1] for f in os.listdir(IMG_SAVE_PATH)}# 打开摄像头cap cv.VideoCapture(0)if not cap.isOpened():print(连接摄像头失败)print(按q退出)# 循环取每帧画面while True:ret, frame cap.read()if not ret:print(读取失败)break# 人脸检测且提取人脸部分。faces, gray img_extract_faces(frame)# 遍历人脸进行识别for x, y, w, h in faces:img_id, confidence recognizer.predict(gray[y: yh, x: xw])# 返回图片编号和置信度。置信度为两张图片的相似程度# 框出人脸且实时展示画面color, text get_color_text(confidence, name_map[img_id])cv.putText(imgframe, texttext, org(x, y),fontFacecv.FONT_HERSHEY_SIMPLEX, fontScaleFONT_SCALE,colorcolor, thicknessTEXT_THICKNESS)cv.circle(imgframe, center(xw//2, yh//2),radiusw // 2,colorcolor, thicknessGRAPH_THICKNESS)cv.imshow(FACE_RECOGNITION_WINDOW_NAME, frame)if cv.waitKey(1) ord(q):break# 关闭摄像头释放空间cap.release()cv.destroyAllWindows()if __name__ __main__:main()运行face_recognition.py文件进行人脸识别 项目介绍到这里感谢阅读
http://wiki.neutronadmin.com/news/179556/

相关文章:

  • 兰州企业网站制作网站上面的内容里面放照片怎么做的
  • 免费网站在线观看人数在哪wordpress 发布慢
  • 制作网页与网站开发网站视频怎么做的好处
  • wordpress 社交网站吗2018建设一个网站需要什么
  • dw做的网站建筑工程信息网站
  • 公司门户网站是什么手机和电脑网站分开做
  • 临沂专业网站建设设计公司智慧团建网站登录密码
  • 网站怎么做友链为什么搜索不到刚做的网站
  • 江西省城乡建设培训中心网站温州网站建设设计
  • 深圳住房和建设局网站全景看房信盈达嵌入式培训多少钱
  • 影视视频网站怎么做网站建设报价
  • 电子邮箱网站注册哈尔滨市公共资源交易中心
  • 风中有朵雨做的云电影网站网站建设工程师职责说明书
  • 郑州网站模板1核2g 做网站
  • 网站建设的公河南省今天刚刚人事调整最新
  • 网站子站建设中国建设行业峰会网站
  • 移动商务网站开发课程山西利用模板建站
  • 济南国迅网站建设公司怎么样百度网站优化
  • 福建省闽侯县建设局网站制造业小程序网站开发
  • 企业网站推广方案wordpress客户端 接口
  • 百度网站收录提交入口在哪photoshop基础入门教程
  • 营销型公司网站如何帮人做网站赚钱
  • 建立网站的流程网页特效源码网站
  • 惠州住房和建设局网站房地产怎么做网站推广
  • 吉祥物设计网站wordpress站点目录
  • wordpress多站点不同主题新媒体seo培训
  • 孝感网站开发优搏好免费微信快速开发平台
  • 网站运营和维护都是干什么的外贸英文网站搭建的公司
  • 企业营销网站建设公司哪家好wordpress汉字注册
  • 南阳建网站公司做网站如何保证询盘数量