网站中的ppt链接怎么做的百度浏览器网页
2026/4/6 5:59:26 网站建设 项目流程
网站中的ppt链接怎么做的,百度浏览器网页,开发一个应用程序,电商跟开网店是一样吗MediaPipe Pose部署教程#xff1a;Windows/Linux双平台适配说明 1. 引言 1.1 学习目标 本文将带你从零开始部署基于 Google MediaPipe 的人体骨骼关键点检测系统#xff0c;支持 Windows 与 Linux 双平台运行。通过本教程#xff0c;你将掌握#xff1a; 如何在本地环…MediaPipe Pose部署教程Windows/Linux双平台适配说明1. 引言1.1 学习目标本文将带你从零开始部署基于 Google MediaPipe 的人体骨骼关键点检测系统支持 Windows 与 Linux 双平台运行。通过本教程你将掌握如何在本地环境快速搭建 MediaPipe Pose 推理服务WebUI 的配置与访问方式跨平台兼容性处理的关键技巧实际图像输入的处理流程与结果可视化方法最终实现一个无需联网、不依赖外部 API、纯 CPU 运行、毫秒级响应的人体姿态估计系统。1.2 前置知识为顺利跟随本教程请确保具备以下基础基础 Python 编程能力熟悉pip安装熟悉命令行操作CMD / Terminal了解基本的 HTTP 概念如端口、URL 访问无需深度学习背景或 GPU 环境本方案专为轻量级 CPU 部署设计。1.3 教程价值与市面上多数依赖 ModelScope 或云 API 的“伪本地”方案不同本文提供的部署方式✅完全离线运行模型已内嵌于 MediaPipe 包中启动即用✅跨平台通用Windows 10/Linux 均可一键部署✅免编译安装所有依赖可通过 pip 直接安装✅自带 WebUI无需前端开发经验即可使用图形界面上传图片并查看结果适合用于健身动作识别、舞蹈教学分析、人机交互原型开发等场景。2. 环境准备2.1 系统要求平台操作系统Python 版本最低配置WindowsWindows 10 / 11 (64位)3.8 - 3.114GB RAM, i5 处理器LinuxUbuntu 20.04 / CentOS 73.8 - 3.114GB RAM, x86_64 架构⚠️ 注意不支持 Python 3.12 及以上版本MediaPipe 尚未完全兼容。2.2 安装 Python 与 pipWindows 用户前往 https://www.python.org/downloads/ 下载 Python 3.11.x 安装包勾选Add Python to PATH后完成安装。验证安装python --version pip --versionLinux 用户以 Ubuntu 为例sudo apt update sudo apt install python3 python3-pip -y创建软链接可选sudo ln -s /usr/bin/python3 /usr/local/bin/python sudo ln -s /usr/bin/pip3 /usr/local/bin/pip验证python --version pip --version2.3 创建虚拟环境推荐避免污染全局包环境建议使用venv创建隔离环境python -m venv mediapipe_pose_env source mediapipe_pose_env/bin/activate # Linux # 或 mediapipe_pose_env\Scripts\activate # Windows激活后提示符前应出现(mediapipe_pose_env)标识。3. 核心模块解析与部署实践3.1 技术栈概览本项目基于以下核心技术构建MediaPipe PoseGoogle 开源的姿态估计框架提供 BlazePose 模型Flask轻量级 Web 框架用于构建图像上传接口OpenCV图像处理库负责读取、绘制和编码图像Jinja2模板引擎渲染 HTML 页面展示结果整体架构如下[用户浏览器] ↓ (HTTP POST) [Flask Web Server] ↓ (调用模型) [MediaPipe Pose Inference] ↓ (返回33个关键点) [OpenCV 绘制骨架] ↓ (编码为 JPEG) [返回带骨骼图的图像]3.2 安装核心依赖执行以下命令安装所需库pip install mediapipe opencv-python flask numpy pillow✅ 所有包均支持 CPU 推理无需 CUDA 或 GPU 驱动。验证 MediaPipe 是否正常工作import mediapipe as mp print(mp.__version__)输出类似0.10.9即表示安装成功。3.3 实现 WebUI 服务创建项目目录结构mediapipe_pose/ ├── app.py ├── templates/ │ └── index.html ├── static/ │ └── style.css └── uploads/1. 编写 Flask 主程序 (app.py)# app.py import os from flask import Flask, request, render_template, send_from_directory import cv2 import numpy as np import mediapipe as mp app Flask(__name__) UPLOAD_FOLDER uploads os.makedirs(UPLOAD_FOLDER, exist_okTrue) app.config[UPLOAD_FOLDER] UPLOAD_FOLDER mp_pose mp.solutions.pose mp_drawing mp.solutions.drawing_utils pose mp_pose.Pose(static_image_modeTrue, model_complexity1) app.route(/, methods[GET, POST]) def index(): if request.method POST: file request.files.get(image) if not file: return 请上传一张图片, 400 # 读取图像 img_stream np.frombuffer(file.read(), np.uint8) image cv2.imdecode(img_stream, cv2.IMREAD_COLOR) # 转换为 RGB rgb_image cv2.cvtColor(image, cv2.COLOR_BGR2RGB) results pose.process(rgb_image) # 绘制骨架 annotated_image image.copy() if results.pose_landmarks: mp_drawing.draw_landmarks( annotated_image, results.pose_landmarks, mp_pose.POSE_CONNECTIONS, landmark_drawing_specmp_drawing.DrawingSpec(color(0, 0, 255), thickness2, circle_radius3), # 红点 connection_drawing_specmp_drawing.DrawingSpec(color(255, 255, 255), thickness2) # 白线 ) # 保存结果 output_path os.path.join(app.config[UPLOAD_FOLDER], result.jpg) cv2.imwrite(output_path, annotated_image) return send_from_directory(os.getcwd(), uploads/result.jpg, mimetypeimage/jpeg) return render_template(index.html) if __name__ __main__: app.run(host0.0.0.0, port5000, debugFalse)2. 创建前端页面 (templates/index.html)!-- templates/index.html -- !DOCTYPE html html head titleMediaPipe 姿态检测/title style body { font-family: Arial; text-align: center; margin: 40px; } .upload-box { border: 2px dashed #ccc; padding: 20px; margin: 20px auto; width: 400px; } img { max-width: 100%; margin: 10px 0; } /style /head body h1‍♂️ AI 人体骨骼关键点检测/h1 div classupload-box form methodPOST enctypemultipart/form-data input typefile nameimage acceptimage/* requiredbrbr button typesubmit上传并分析/button /form /div {% if result %} h3检测结果/h3 img src{{ result }} altSkeleton {% endif %} /body /html3.4 启动服务在项目根目录运行python app.py服务将在http://localhost:5000启动。点击平台提供的 HTTP 按钮如 CSDN 星图镜像环境即可打开 WebUI。4. 使用说明与结果解析4.1 操作步骤详解启动服务后浏览器自动跳转至 WebUI 页面点击“选择文件”上传一张包含人物的 JPG/PNG 图像点击“上传并分析”等待 1~2 秒页面将返回一张新图像显示红点33 个关键点位置如肩、肘、膝、踝等白线骨骼连接关系依据人体解剖结构4.2 关键点说明共 33 个区域包含关键点示例面部左右眼、鼻尖、嘴上肢肩、肘、腕、手部关键点躯干髋、脊柱、胸骨下肢膝、踝、脚跟、脚尖完整列表参考MediaPipe 官方文档 - Pose Landmarks4.3 输出图像格式保存路径uploads/result.jpg格式JPEG与原图分辨率一致可直接下载或集成到其他系统中进行后续分析如角度计算、动作分类5. 跨平台适配要点5.1 Windows 与 Linux 兼容性处理虽然代码本身是跨平台的但在实际部署中需注意以下差异问题点Windows 解决方案Linux 解决方案路径分隔符使用os.path.join()自动适配同左权限问题无特殊限制确保uploads/目录可写chmod -R 755 uploadsOpenCV GUI 问题若报错cv2.imshow()改用matplotlib服务器环境通常禁用 GUI仅做图像保存端口占用检查防火墙设置使用netstat -tuln \| grep 5000查看占用5.2 Docker 化建议可选进阶若需进一步提升稳定性与可移植性可封装为 Docker 镜像# Dockerfile FROM python:3.11-slim WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . EXPOSE 5000 CMD [python, app.py]构建并运行docker build -t mediapipe-pose . docker run -p 5000:5000 -v ./uploads:/app/uploads mediapipe-pose6. 总结6.1 核心收获回顾通过本文我们完成了✅ 在 Windows 与 Linux 平台上成功部署 MediaPipe Pose 服务✅ 实现了基于 Flask 的 WebUI 图像上传与结果展示✅ 掌握了 33 个关键点的检测与可视化绘制方法✅ 理解了跨平台部署中的常见问题及解决方案该系统具备高精度、低延迟、零依赖、易扩展四大优势非常适合教育、健身、安防等领域的小型化 AI 应用开发。6.2 下一步学习建议进阶方向 1结合angle calculation实现健身动作标准度评分进阶方向 2接入摄像头实现实时视频流姿态追踪进阶方向 3导出关键点坐标为 JSON 或 CSV用于数据分析获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询