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

查看网站流量天津网站建设icp备

查看网站流量,天津网站建设icp备,ccd设计公司很厉害吗,wordpress主题导入Demoface_recognition 介绍 face_recognition 是一个非常流行的 Python 库#xff0c;专门用于人脸识别任务。它基于 dlib 库和 HOG#xff08;Histogram of Oriented Gradients#xff09;特征以及深度学习模型#xff0c;提供了简单易用的接口来进行人脸检测、面部特征点定位…face_recognition 介绍 face_recognition 是一个非常流行的 Python 库专门用于人脸识别任务。它基于 dlib 库和 HOGHistogram of Oriented Gradients特征以及深度学习模型提供了简单易用的接口来进行人脸检测、面部特征点定位和人脸识别。face_recognition 库由 Adam Geitgey 开发旨在简化人脸识别任务使其更加容易上手。 主要功能 人脸检测 检测图像中的人脸位置。支持使用 HOG 特征或 CNN卷积神经网络进行人脸检测。 面部特征点定位 检测人脸上的关键特征点如眼睛、鼻子、嘴巴等。 人脸识别 提取人脸的特征向量128维并用于比较不同人脸之间的相似度。支持从图像或视频中识别特定的人脸。 它和opencv关系 face_recognition 和 OpenCV 是两个独立的计算机视觉库但它们在功能上有一些重叠并且经常一起使用来完成复杂的视觉任务。下面简要介绍两者的联系 联系 尽管 face_recognition 和 OpenCV 各有侧重但在实际应用中它们经常被组合起来使用以发挥各自的优势 图像预处理通常情况下我们会先使用 OpenCV 对图像进行预处理比如调整大小、灰度化、去噪等。这些预处理步骤有助于提高后续人脸识别的准确率。人脸检测与识别预处理后的图像可以传递给 face_recognition 库来执行人脸检测和识别。face_recognition 可以高效地完成这些任务并返回人脸位置、面部特征点等信息。结果可视化最后我们可以再次利用 OpenCV 来对识别结果进行可视化处理例如在图像上画出人脸框、标注识别到的名字等。 检测人脸 face_recognition.face_locations(img, number_of_times_to_upsample1, modelhog)功能检测图像中的人脸位置。参数 img图像的 NumPy 数组。number_of_times_to_upsample图像上采样的次数用于提高检测精度。model使用的模型可以是 hog默认或 cnn。 返回一个列表每个元素是一个 (top, right, bottom, left) 的元组表示人脸的位置 import face_recognition import cv2 #加载图片 image cv2.imread(../face_train_images/ldh.jpg) #读取人脸位置 face_locations face_recognition.face_locations(image) print(face_locations)for (top, right, bottom, left) in face_locations:# 画出人脸区域cv2.rectangle(image, (left, top), (right, bottom), (0, 255, 0), 2) # 显示结果 cv2.imshow(Detected Faces, image) cv2.waitKey(0) cv2.destroyAllWindows()切割人脸 import face_recognition import cv2 #加载图片 image cv2.imread(../face_train_images/ldh.jpg) #读取人脸位置 face_locations face_recognition.face_locations(image) print(face_locations)for (top, right, bottom, left) in face_locations:# 画出人脸区域cv2.rectangle(image, (left, top), (right, bottom), (0, 255, 0), 2)qg_image image[top:bottom,left:right] # 显示结果 cv2.imshow(Detected Faces, qg_image) cv2.waitKey(0) cv2.destroyAllWindows()提取人脸特征 face_recognition.face_encodings(img, known_face_locationsNone, num_jitters1, modelsmall)功能提取图像中人脸的特征向量。参数 img图像的 NumPy 数组。known_face_locations人脸位置的列表如果为 None则自动检测人脸位置。num_jitters对每个人脸进行多次编码以提高精度。model使用的模型可以是 small 或 large默认。 返回一个列表每个元素是一个 128 维的特征向量。 import face_recognition import cv2 #加载图片 image cv2.imread(../face_train_images/ldh.jpg) #读取人脸位置 face_locations face_recognition.face_locations(image) #提取人脸特征码 face_encodings face_recognition.face_encodings(image)[0] print(face_encodings) 计算人脸的欧几里得距离 import face_recognition import cv2 import numpy as np #加载图片 image1 cv2.imread(../face_train_images/ldh.jpg) #读取人脸位置 face_locations1 face_recognition.face_locations(image1) #提取人脸特征码 face_encodings1 face_recognition.face_encodings(image1)[0]#加载图片 image2 cv2.imread(../face_train_images/4.jpg) #读取人脸位置 face_locations2 face_recognition.face_locations(image2) #提取人脸特征码 face_encodings2 face_recognition.face_encodings(image2)[0]# 计算两个人脸编码之间的欧几里得距离。 distance np.linalg.norm(face_encodings1 - face_encodings2) print(distance) 欧几里得距离 ​ 欧几里得距离Euclidean distance是一种测量两个点之间直线距离的方式常用于数学、物理学和计算机科学中的各种应用包括机器学习中的数据点距离计算。它是基于欧几里得几何的概念通常用于计算空间中两点之间的距离。 应用 数据分析: 欧几里得距离常用于计算数据点之间的距离例如在聚类算法如K均值聚类中。计算机视觉: 在人脸识别等任务中欧几里得距离用于计算特征向量之间的相似度。优化: 在路径规划和优化问题中计算两点之间的欧几里得距离可以帮助寻找最短路径。 欧几里得距离的意义 距离越小相似度越高 特征向量相似当欧几里得距离越小说明两个特征向量之间的差异越小即这两个人脸在特征空间中很接近。因此这两个图像可能是同一个人或者相似度很高。相同身份的概率大在许多人脸识别系统中如果计算出的距离小于某个设定的阈值则系统会认为这两个面孔属于同一个人。 距离阈值 匹配判断通常系统会设置一个阈值来判断两个特征向量是否属于同一身份。如果计算出的距离小于这个阈值则认为两张图片中的人脸是相同的如果距离大于阈值则认为是不同的身份。误识别率设置的阈值会影响系统的误识别率假阳性和假阴性率。距离阈值的选择需要根据具体应用场景进行调整。 计算人脸匹配程度 face_recognition.compare_faces(known_face_encodings, face_encoding_to_check, tolerance0.6) 功能比较已知人脸特征向量和待检测人脸特征向量判断是否匹配。 参数 known_face_encodings已知人脸特征向量的列表。face_encoding_to_check待检测的人脸特征向量。tolerance匹配的阈值范围是 0.0 到 1.0值越小表示匹配要求越高。 返回一个布尔值列表表示待检测人脸特征向量是否与已知人脸特征向量匹配 import face_recognition import cv2 #提取已知人脸图片 known_image image1 cv2.imread(../face_train_images/ldh.jpg) #提取提取已知人脸图片的人脸特征码 face_encodings1 face_recognition.face_encodings(known_image)[0] #提取未知人脸图片 unknown_image image1 cv2.imread(../face_train_images/1.jpg) #提取未知人脸图片的人脸特征码 face_encodings2 face_recognition.face_encodings(unknown_image) #计算是否匹配 results face_recognition.compare_faces([face_encodings1], face_encodings2[0],tolerance0.5) print(results) 注意 提取提取已知人脸图片的人脸特征码要获取下标未 0 的数值 提取未知人脸图片的人脸特征码 不获取小标 在计算匹配的时候传入到函数的参数已知人脸图片的人脸特征码 获取放入到列表中未知获取下标未0 图片预处理 如果对图片进行 import face_recognition import cv2 import numpy as np #加载图片 image1 cv2.imread(../face_train_images/ldh.jpg) # 使用 OpenCV 进行图像预处理 gray_image1 cv2.cvtColor(image1, cv2.COLOR_BGR2GRAY) #使用高斯滤波去除噪声 gs_img1 cv2.GaussianBlur(gray_image1,(3,3),0)image1 cv2.cvtColor(gs_img1,cv2.COLOR_GRAY2BGR) #读取人脸位置 face_locations1 face_recognition.face_locations(image1) #提取人脸特征码 face_encodings1 face_recognition.face_encodings(image1)[0]#加载图片 image2 cv2.imread(../face_train_images/1.jpg) # 使用 OpenCV 进行图像预处理 gray_image2 cv2.cvtColor(image2, cv2.COLOR_BGR2GRAY) #使用高斯滤波去除噪声 gs_img2 cv2.GaussianBlur(gray_image2,(3,3),0)image2 cv2.cvtColor(gs_img2,cv2.COLOR_GRAY2BGR) #读取人脸位置 face_locations2 face_recognition.face_locations(image2) #提取人脸特征码 face_encodings2 face_recognition.face_encodings(image2)[0]# 计算两个人脸编码之间的欧几里得距离。 distance np.linalg.norm(face_encodings1 - face_encodings2) print(distance) #
http://www.eeditor.cn/news/123152/

相关文章:

  • 网站建设会计网站开发的费用属于什么科目
  • 做综合医院网站洛阳网站建设seo
  • 公司网站建设与维护方案国外知名设计网站
  • 辽宁省住房建设厅网站寿县移动公司网站建设
  • 成都红酒网站建设wordpress博客搬家
  • 工信部网站备案系统登录wordpress配置京东云
  • 网站建设技术合同模板下载河北网站推广
  • 房地产项目网站建设方案花店网站开发设计的项目结构
  • 17网站一起做网店登录网站标题的作用
  • 菏泽北京网站建设wordpress错误怎么解决方法
  • 永嘉营销网站建设网站建设步骤电脑
  • 电商建设网站哪家好大良营销网站建设服务
  • 昆明网站关键字优化ghost vs wordpress
  • 慈利县建设局网站微信商城系统哪找
  • 网站建设的公司工作室抚顺外贸网站建设
  • 开发一套电商网站多少钱photoshop做网站设计
  • 无锡企业网站制作价格培训网站项目ppt怎么做
  • 新网站制作怎么样百度怎么优化排名
  • 牡丹江0453免费信息网站国家信用信息公示系统官网
  • 可以用自己的电脑做网站主机做网站都需要什么资料
  • 美术馆网站的建设流程淘宝网站建设模板免费下载
  • 承德网站制作的流程个人网页设计需求分析怎么写
  • 如何制作企业网站策划公司怎么找客户
  • 常平网站关于产品网站建设的问题
  • 网址查询网站线上营销推广渠道
  • 上海建网站公司百度爱采购推广平台
  • 利用模板如何制作网站wordpress前端验证
  • 网站建设综合实训ppt怎么到国外网站去接模具订单做
  • 镭拓网站建设成都网站建设贴吧
  • 关于加强网站建设和管理的通知社交做的最好的网站有哪些