news 2026/5/31 4:47:52

【Python-MediaPipe 0.10.31】新版使用技巧-人脸坐标

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Python-MediaPipe 0.10.31】新版使用技巧-人脸坐标

MediaPipe-python库封装使用函数

MediaPipe更新后,旧版本的语句无法使用,于是笔者网罗资源(实际上是榨干AI),拼凑了人脸坐标的使用方法。

旧版本代码代码如下:
引用其他博主代码(已在代码块中注明

importcv2importmediapipeasmp mp_face_mesh=mp.solutions.face_mesh mp_draw=mp.solutions.drawing_utils face_mesh=mp_face_mesh.FaceMesh()cap=cv2.VideoCapture(0)whilecap.isOpened():success,frame=cap.read()ifnotsuccess:continueframe_rgb=cv2.cvtColor(frame,cv2.COLOR_BGR2RGB)results=face_mesh.process(frame_rgb)ifresults.multi_face_landmarks:forface_landmarksinresults.multi_face_landmarks:mp_draw.draw_landmarks(frame,face_landmarks)cv2.imshow('MediaPipe Face Mesh',frame)ifcv2.waitKey(1)&0xFF==ord('q'):breakcap.release()cv2.destroyAllWindows()———————————————— 版权声明:本文为CSDN博主「萧鼎」的原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/liaoqingjian/article/details/145708736

新版本(0.10.31)代码如下:

需要配合一个face_landmarker.task文件使用,可以在文章顶部的face.zip里解压

importnumpyasnpimportcv2importmediapipeasmp MEDIAPIPE_MODEL_PATH="./models/face_landmarker.task"# 坐标模型加载自动化defload_mediapipe_model():try:mp_vision=mp.tasks.vision base_options=mp.tasks.BaseOptions(model_asset_path=MEDIAPIPE_MODEL_PATH)options=mp_vision.FaceLandmarkerOptions(base_options=base_options,running_mode=mp_vision.RunningMode.IMAGE,num_faces=1,output_face_blendshapes=False)returnmp_vision.FaceLandmarker.create_from_options(options)exceptExceptionase:raiseRuntimeError(f"加载MediaPipe模型失败:{e}")# 获取人脸坐标点468个点defget_mediapipe_468_points(img,mp_detector):img_rgb=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)mp_img=mp.Image(image_format=mp.ImageFormat.SRGB,data=img_rgb)results=mp_detector.detect(mp_img)ifnotresults.face_landmarks:returnNoneimg_h,img_w=img.shape[:2]returnnp.array([[int(lm.x*img_w),int(lm.y*img_h)]forlminresults.face_landmarks[0]])# 绘图defdraw_landmarks(img,points):""" 绘制所有关键点+数字编号(避免重叠) :param img: 原始OpenCV图像 :param points: (len(points),2)的关键点坐标数组 :return: 绘制后的图像 """img_copy=img.copy()# 遍历所有81个点foridxinrange(len(points)):p=points[idx].astype(int)# 绘制关键点圆圈(绿色,半径2)cv2.circle(img_copy,(p[0],p[1]),2,(0,255,0),-1)# 调整数字标注位置,避免重叠(根据点的位置微调偏移)offset_x=3ifidx%2==0else-15# 奇偶点左右偏移offset_y=5ifidx<40else-8# 上下部分上下偏移# 绘制数字编号(白色字体,黑色描边增加可读性)# 黑色描边# cv2.putText(img_copy, str(idx), (p[0]+offset_x, p[1]+offset_y),# cv2.FONT_HERSHEY_SIMPLEX, 0.35, (0, 0, 0), 2)# # 白色字体# cv2.putText(img_copy, str(idx), (p[0]+offset_x, p[1]+offset_y),# cv2.FONT_HERSHEY_SIMPLEX, 0.35, (255, 255, 255), 1)returnimg_copy# main模式if__name__=='__main__':# 读取图像img_path='your_img.jpg'img=cv2.imread(img_path)ifimgisNone:raiseValueError(f"图片读取失败:{img_path}")# 加载模型mp_detector=load_mediapipe_model()# 获取人脸坐标mp_468=get_mediapipe_468_points(img,mp_detector)# 绘制人脸坐标fromvisiual_utilsimportdraw_landmarksifmp_468isnotNone:img_point=draw_landmarks(img,mp_468)cv2.imwrite('output.jpg',img_point)# 释放资源mp_detector.close()

原图:

得到结果图如下:

最后附上一张坐标点分布图

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 14:38:38

导师严选9个AI论文软件,助你轻松搞定本科生毕业论文!

导师严选9个AI论文软件&#xff0c;助你轻松搞定本科生毕业论文&#xff01; AI 工具助力论文写作&#xff0c;轻松应对学术挑战 在当前的学术环境中&#xff0c;越来越多的本科生开始借助 AI 工具来提升论文写作的效率与质量。尤其是面对 AIGC 率控制、语义通顺等关键问题时&a…

作者头像 李华
网站建设 2026/5/28 21:22:22

怎么找出一篇论文的研究问题——实用技巧与方法解析

刚开始做科研的时候&#xff0c;我一直以为&#xff1a; 文献检索就是在知网、Google Scholar 里反复换关键词。 直到后来才意识到&#xff0c;真正消耗精力的不是“搜不到”&#xff0c;而是—— 你根本不知道最近这个领域发生了什么。 生成式 AI 出现之后&#xff0c;学术检…

作者头像 李华
网站建设 2026/5/28 22:14:30

震惊!这家胶片定制厂竟让照片“活”过来,背后真相揭秘!

震惊&#xff01;这家胶片定制厂竟让照片“活”过来&#xff0c;背后真相揭秘&#xff01;在数字影像泛滥的今天&#xff0c;一张能够“呼吸”、仿佛承载着时光温度的实体照片&#xff0c;显得尤为珍贵。近期&#xff0c;一家专注于胶片定制与影像艺术化处理的工厂&#xff0c;…

作者头像 李华
网站建设 2026/5/28 15:33:40

如何搜索硕士论文:实用方法与资源指南

刚开始做科研的时候&#xff0c;我一直以为&#xff1a; 文献检索就是在知网、Google Scholar 里反复换关键词。 直到后来才意识到&#xff0c;真正消耗精力的不是“搜不到”&#xff0c;而是—— 你根本不知道最近这个领域发生了什么。 生成式 AI 出现之后&#xff0c;学术检…

作者头像 李华
网站建设 2026/5/30 13:21:04

C# 基于OpenCv的视觉工作流-章11-高斯滤波

C# 基于OpenCv的视觉工作流-章11-高斯滤波 本章目标&#xff1a; 一、高斯滤波&#xff1b;一、高斯滤波&#xff1b; 高斯滤波以卷积计算&#xff08;章6腐蚀有介绍&#xff09;为基础&#xff0c;核心是通过设置卷积核的数值&#xff0c;使数值分布符合高斯分布(正态分布)。O…

作者头像 李华