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

凉山州建设局网站py怎么做网站

凉山州建设局网站,py怎么做网站,运维兼职平台,口碑营销相关案例目录 思路分析 整体代码 效果展示 总结 在当今计算机视觉领域,人脸识别和分析技术得到了广泛应用。无论是安全验证、社交媒体应用,还是美学研究,人脸特征的提取和分析都是关键技术之一。在这篇博客中,我们将深入探讨一个有趣的…

目录

思路分析

整体代码

效果展示

总结


        在当今计算机视觉领域,人脸识别和分析技术得到了广泛应用。无论是安全验证、社交媒体应用,还是美学研究,人脸特征的提取和分析都是关键技术之一。在这篇博客中,我们将深入探讨一个有趣的项目:实时面部对称性分析。通过使用Python语言、OpenCV库和dlib库,实现一个能够实时检测人脸并评估其对称性的程序。

思路分析

  • 导入库

    • 使用cv2处理图像和视频流,dlib用于人脸检测和特征点提取,numpy进行数值计算,PIL用于绘制中文文本。
  • 加载模型

    • 使用dlib加载人脸检测器和特征点预测器,特征点预测器利用68个关键点来定位人脸特征。
  • 定义对称性计算函数

    • calculate_symmetry函数计算左右眼中心与鼻子的距离,进而评估面部的对称性。对称性分数是左右鼻子距离的差值,值越小表示越对称。
  • 文本绘制函数

    • draw_text函数将OpenCV图像转换为PIL图像,利用PIL绘制中文文本,避免OpenCV不支持中文的问题。
  • 摄像头初始化

    • 使用cv2.VideoCapture(0)打开默认摄像头。
  • 实时视频处理循环

    • 循环读取摄像头帧,将每帧转换为灰度图像以进行人脸检测。
    • 检测到人脸后,提取特征点并计算对称性分数。
    • 根据分数分类对称性状态,并在图像上绘制特征点和状态信息。
  • 帧率计算

    • 计算每帧处理的时间,以便显示实时帧率。
  • 显示结果

    • 使用cv2.imshow显示处理后的图像,用户可以通过按下“q”键退出。
  • 释放资源

    • 结束时释放摄像头和关闭所有窗口。

整体代码

import cv2
import dlib
import numpy as np
import time
from PIL import Image, ImageDraw, ImageFont# 加载人脸检测器和特征点预测器
detector = dlib.get_frontal_face_detector()
predictor = dlib.shape_predictor("./model/shape_predictor_68_face_landmarks.dat")def calculate_symmetry(landmarks):left_eye = landmarks[36:42]right_eye = landmarks[42:48]nose = landmarks[30]left_eye_center = np.mean(left_eye, axis=0)right_eye_center = np.mean(right_eye, axis=0)left_nose_distance = np.linalg.norm(left_eye_center - nose)right_nose_distance = np.linalg.norm(right_eye_center - nose)symmetry_score = abs(left_nose_distance - right_nose_distance)return symmetry_scoredef draw_text(image, text, position, font_size=30):# 将OpenCV图像转换为PIL图像pil_image = Image.fromarray(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))draw = ImageDraw.Draw(pil_image)font = ImageFont.truetype("simhei.ttf", font_size)  # 使用黑体字体draw.text(position, text, font=font, fill=(255, 255, 255, 0))return cv2.cvtColor(np.array(pil_image), cv2.COLOR_RGB2BGR)# 初始化摄像头
cap = cv2.VideoCapture(0)while True:start_time = time.time()  # 记录开始时间ret, frame = cap.read()if not ret:breakgray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)# 检测人脸faces = detector(gray)for face in faces:landmarks = predictor(gray, face)landmarks = np.array([[p.x, p.y] for p in landmarks.parts()])# 计算对称性symmetry_score = calculate_symmetry(landmarks)# 对称性分类if symmetry_score < 5:symmetry_status = "完全对称"elif symmetry_score < 10:symmetry_status = "较为对称"elif symmetry_score < 15:symmetry_status = "不太对称"else:symmetry_status = "高度不对称"# 可视化特征点for (x, y) in landmarks:cv2.circle(frame, (x, y), 2, (0, 255, 0), -1)# 在图像上显示对称性分数和状态frame = draw_text(frame, f'对称性分数: {symmetry_score:.2f}', (10, 30))frame = draw_text(frame, f'状态: {symmetry_status}', (10, 60))# 计算并显示FPSfps = 1 / (time.time() - start_time)frame = draw_text(frame, f'帧率: {fps:.2f}', (10, 90))# 显示图像cv2.imshow("haha", frame)if cv2.waitKey(1) & 0xFF == ord('q'):break# 释放摄像头和窗口
cap.release()
cv2.destroyAllWindows()

效果展示

 

 

总结

      我们构建了一个实时面部对称性分析系统,利用计算机视觉技术将面部特征的对称性可视化。希望这篇博客能够激发大家对计算机视觉的兴趣,并鼓励更多的探索与实践。如果你对该项目有任何疑问或建议,欢迎在评论区留言讨论!让我们一起在计算机视觉的世界中不断前行。

http://www.yayakq.cn/news/410898/

相关文章:

  • 赫章网站建设做婚纱摄影网站
  • 网站怎么做友情链接ps可以在哪个网站上做兼职
  • 网站的大图标怎么做的中国城投建设集团有限公司网站
  • 茶网站设计素材下载凡科建站代理商
  • 万网怎么建设网站湖南住房与城乡建设厅网站
  • 凯里网站建设百度联盟项目看广告挣钱
  • 橙 建网站网站建设有哪些特点
  • wordpress常规选项seo主管的seo优化方案
  • 台山网站建设公司邯郸品牌商标vi设计策划公司
  • 网站之间如何交换友情链接建设网站最好的
  • 做网站 租服务器国际采购平台有哪些
  • 手机网站制作费用多少门户网站开发简历
  • seo网站是什么网代理加盟
  • 开彩票网站做私庄青岛seo网站建设
  • 请别人做网站需要注意什么问题wordpress 教育 演示
  • 网站在哪做百度电话人工服务
  • 城市建设档案馆网站昆明制作手机网站
  • 河南省教育厅官方网站师德建设个人网站备案的好处
  • 网站开发专业分析信誉好的做网站
  • 深圳市门户网站建设多少钱wordpress ality
  • 智盈中心网站建设上海网站建设价格
  • 丹阳网站建设机构php做的网站好不好
  • 六安网站建设公司OA网站建设分析
  • 专科网站开发就业方向以下区域不属于官方网站
  • 网站信息备案查询校园网站建设材料
  • 网站建设有哪些分工分受欢迎的唐山网站建设
  • 专业网站建设电wordpress 商店模板
  • 企业网站做电脑营销淘宝客网站建设平台
  • 电商网站的建设背景公司邮箱怎么查询
  • 百度推广 做网站基于营销导向的企业网站建设研究