Files
change_cloth/check_img_body.py
2025-07-22 21:47:05 +08:00

39 lines
1.5 KiB
Python

import cv2
import mediapipe as mp
# def is_thigh_visible(image_path):
# # 初始化MediaPipe Pose模型
# mp_pose = mp.solutions.pose
# pose = mp_pose.Pose(static_image_mode=True, min_detection_confidence=0.5)
# # 读取图像
# image = cv2.imread(image_path)
# image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# # 进行姿态估计
# results = pose.process(image_rgb)
# if not results.pose_landmarks:
# return False # 未检测到人体
# # 获取关键点
# landmarks = results.pose_landmarks.landmark
# # 检查髋部和膝盖之间的关键点(大腿部分)
# # MediaPipe关键点索引:
# # 23: 左髋, 24: 右髋
# # 25: 左膝, 26: 右膝
# # 检查左大腿是否可见(髋部和膝盖之间)
# left_hip_visible = landmarks[mp_pose.PoseLandmark.LEFT_HIP.value].visibility > 0.6
# left_knee_visible = landmarks[mp_pose.PoseLandmark.LEFT_KNEE.value].visibility > 0.6
# left_thigh_visible = left_hip_visible and left_knee_visible
# # 检查右大腿是否可见
# right_hip_visible = landmarks[mp_pose.PoseLandmark.RIGHT_HIP.value].visibility > 0.6
# right_knee_visible = landmarks[mp_pose.PoseLandmark.RIGHT_KNEE.value].visibility > 0.6
# right_thigh_visible = right_hip_visible and right_knee_visible
# return left_thigh_visible and right_thigh_visible
# print(is_thigh_visible("/home/szlc/code/ComfyUI/change_cloth/static/imgs/fc74eded_00001_.jpg"))