Mediapipe 计算人体腿与右手的角度显示到输出图片 示例python程序
以下是使用 Mediapipe 计算人体腿与右手的角度,并将结果显示到输出图片的 Python 示例程序:
import cv2
import mediapipe as mp
import math
mp_drawing = mp.solutions.drawing_utils
mp_pose = mp.solutions.pose
# 初始化 Mediapipe 的姿势估计模型
pose = mp_pose.Pose()
# 读取输入图片
image = cv2.imread('input.jpg')
# 将输入图片转换为 RGB 格式
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# 运行姿势估计模型,获取关键点坐标
results = pose.process(image_rgb)
# 绘制关键点
if results.pose_landmarks is not None:
mp_drawing.draw_landmarks(
image, results.pose_landmarks, mp_pose.POSE_CONNECTIONS)
# 获取右膝、右踝和右手腕的坐标
right_knee = results.pose_landmarks.landmark[mp_pose.PoseLandmark.RIGHT_KNEE]
right_ankle = results.pose_landmarks.landmark[mp_pose.PoseLandmark.RIGHT_ANKLE]
right_wrist = results.pose_landmarks.landmark[mp_pose.PoseLandmark.RIGHT_WRIST]
# 计算腿与右手的角度
angle = math.degrees(math.atan2(right_wrist.y - right_ankle.y, right_wrist.x - right_ankle.x) -
math.atan2(right_knee.y - right_ankle.y, right_knee.x - right_ankle.x))
# 在输出图片上显示角度值
cv2.putText(image, "Angle: {:.2f}".format(angle), (50, 50),
cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)
# 显示输出图片
cv2.imshow('Output', image)
cv2.waitKey(0)
该程序首先初始化了 Mediapipe 的姿势估计模型,并读取了输入图片。然后将输入图片转换为 RGB 格式,并运行姿势估计模型,获取关键点坐标。接着绘制关键点,并从中获取右膝、右踝和右手腕的坐标。然后计算腿与右手的角度,并在输出图片上显示角度值。最后显示输出图片
原文地址: https://www.cveoy.top/t/topic/cJyU 著作权归作者所有。请勿转载和采集!