Windows 10环境下STGCN与OpenPose 1.5.0的GPU部署实战

张开发
2026/4/11 2:30:09 15 分钟阅读

分享文章

Windows 10环境下STGCN与OpenPose 1.5.0的GPU部署实战
1. 环境准备搭建STGCN与OpenPose的GPU开发环境在Windows 10上部署STGCN和OpenPose 1.5.0首先要搞定基础环境。我去年给公司做行为识别项目时就踩过不少坑这里把最稳妥的配置方案分享给大家。关键是要注意版本匹配——PyTorch 1.2.0和Python 3.5.2这个组合现在看起来有点老但这是保证STGCN稳定运行的必要条件。先装Anaconda3作为环境管理器建议下载2020年左右的版本比如Anaconda3-2020.02新版本可能会引发依赖冲突。创建环境时用这个命令conda create --name pytorch1.2.0 python3.5.2OpenPose 1.5.0的安装有个隐藏坑点官方提供的Python API在Windows下经常找不到动态链接库。实测有效的解决方案是编译完成后把build/bin里的所有.dll文件复制到build/x64/Release将整个models文件夹也复制到build目录最后设置环境变量PATH包含OpenPose的Release目录路径2. 依赖安装解决那些令人头疼的版本冲突激活环境后PyTorch的安装要注意wheel文件命名规则。以我的RTX 2070显卡为例正确的安装命令应该是pip install torch-1.2.0cu92-cp35-cp35m-win_amd64.whl pip install torchvision-0.4.0cu92-cp35-cp35m-win_amd64.whl这里cu92表示CUDA 9.2如果你的显卡驱动支持CUDA 10要对应修改版本号。遇到经典的PILLOW_VERSION报错时别急着升级Python版本。我试过至少三种解决方案最有效的是pip uninstall pillow pip install pillow5.2.0ffmpeg的安装必须用conda而不是pip因为pip源里的1.4版本会导致视频解析失败conda install -c conda-forge ffmpeg3. 模型部署那些官方文档没告诉你的细节STGCN需要两个关键模型文件st_gcn.kinetics.pt主模型pose_iter_440000.caffemodelOpenPose的COCO模型存放路径有讲究主模型放在st-gcn/models目录下COCO模型要放在st-gcn/models/pose/coco注意这个路径是相对于项目根目录的有个容易忽略的点OpenPoseDemo.exe的路径不能包含中文和空格。我遇到过路径中有1.5.0字样导致API调用失败的情况后来把文件夹重命名为纯英文就解决了。4. 实战测试让模型真正跑起来的技巧修改demo_old.py时要注意Windows和Linux的路径差异# 原代码 openpose {}/examples/openpose/openpose.bin.format(self.arg.openpose) # 修改为 openpose {}/OpenPoseDemo.exe.format(self.arg.openpose)运行测试视频时建议先用静态图片测试。把jpg文件改后缀为mp4放在resource/media下用这个命令测试python main.py demo_old --openpose E:/openpose/build/x64/Release --video test.mp4如果遇到CUDA内存不足可以尝试在demo_old.py里调小--batch_size参数。我的GTX 1060 6G显卡设置batch_size8能稳定运行。最后提醒大家整个过程最耗时的不是模型推理而是OpenPose的姿态估计。实测一段10秒的视频在i7-9700KRTX 2070的机器上要处理近2分钟。可以考虑先用OpenPose批量处理视频生成关键点数据再用STGCN进行分析这样效率能提升3-5倍。

更多文章