人体行为识别(骨架提取),搭建openpose环境,VS2019(python3.7)+openpose
这几天开始接触人体行为识别,经过多方对比后,选择了现在最热的人体骨架提取开源库,openpose。
下面就不多说了,直接开始openpose在win10下的配置:
需求如下:1. VS2019 据说VS2015以上的版本就可以,VS201x主要是为了通过cMake生成的.sln文件生成可执行exe文件、dll文件,和一些程 序运行所必需的文件,下载VS2019 community版本就可以,有微软账号(免费申请)就可以免费用;
2. Python3.7+Pycharm 想要在Python环境下运行的需要安装这两个,当然也可以是其他的组合,不过还是推荐最新版本的,而且 Pycharm真的很棒;
3.cmake-3.15.3-win64-x64 https://cmake.org/download/ 打开官方网站下载即可,选择最新版本的,这个版本可以生成VS2019的 文件,VS2017。。。。也可以选旧版本的,不过这个向下兼容,下载最新的就可以;
4.cudnn(最新)+cuda(最新) 这两个怎么装百度一下就可以了,很简单,但是推荐在装好VS201x后安装,不然可能会出现一些 问题,不会的可以留言问我;
5.openpose 在GitHub上下载最新的openpose源文件,网址如下https://github.com/CMU-Perceptual-Computing-Lab/openpose。
以上差不多就是配置openpose所必须的东西了,接下来是具体的步骤:
1.假设你已经装好了VS2019,Python3.7+Pycharm,cudnn(最新)+cuda(最新);然后两个下载并解压好的Cmake和OpenPose(我这里为openpose-master,不同的下载方式可能还会有不同的命名方式,不过都无伤大雅)源文件如下图红色下划线所指:
2.文件路径如下,打开cmake-gui.exe;
打开cmake-gui.exe如下,按照我所用红色下划线标注的填写,对应的路径修改为自己的,如果你跟我一样放在A盘,并且文件名都一样就可以 不用改,build_pan_20190913可以改成别的名字;
3.需要在Python中运行的,在这里打勾:
需要下载全部动作识别模型文件的,在找到这些选项打勾,默认只选BODY_25,这个模型识别关节点最多,有20多个,而且是标准CUDA运行 的,后面的COCO,MPI各有不同的优缺点,建议下载:
没有下载或者下载不成功也可以先通过Cmake编译以后再下载,路径如下,双击getModels.bat即可
4.回到Cmake,先点Configure,结束而且成功后再点Generate,此过程费时非常长,建议点完Configure后去吃个饭,回来可能就快好了。。
5.然后在如下图所示中会有这样一个文件:
如果你已经装好了VS201x,可以直接双击打开,之后会这样显示:
这里改成我这样,用Release模式:
然后生成解决方案,快捷键Ctrl+Shift+B,至此,所有配置完毕。
解决方案管理器中目录如下,打开示例程序,如果你的显卡足够好(显存需要4GB左右)而且有摄像头,可以直接按F5运行。
如果不行,就需要改一下东西,来让电脑运行起来(openpose需要的资源真的非常多):
1.显存不够就会报错:error == cudaSuccess (2 vs. 0) out of memory ,这个意思就是显存不够了,这时我们就需要修改头文件,鼠标放在flags.hpp上,按F12跳转到flag.hpp,如下:
修改 net_resolution, "-1x368",只需要修改368的数值就可以显著的降低显存使用率,但是相应的会降低准确度,我这里改成了-1x256,基本上2GB显存就可以运行了。
2.如果没有摄像头,就会报错找不到摄像头,这时我们就需要修改让程序打开视频文件,修改这个参数为视频文件位置,注意是程序里是反斜杠,相应的你需要在这个目录下放入视频文件,我这里完整目录为A:\openpose-master\examples\media\dance.mp4:
3.如果你需要不用body_25,而用coco或者MPI,相应可以更改 model_pose 这个参数,还有更多的可以更改的参数,自己读一读后面的注释就可以了。
经过一番配置,具体的运行结果如下:
可以看出来帧数真的很低啊,不过识别度真的非常高,接下来就可以愉快的玩耍了!!!
人体行为识别(骨架提取),搭建openpose环境,VS2019(python3.7)+openpose的更多相关文章
- 初识python 之 离线搭建pyhive环境(含python3安装)
系统版本: centos6.5 python版本:python3.6.8 相关包存放目录:software 注意:以下操作需要用到root权限 安装python3 root操作 cd /lzh/sof ...
- opencv+opencv_contrib 人脸识别和检测 python开发环境快速搭建(30分钟)图文教程
很多朋友为了学习python.ML(机器学习).DL(深度学习).opencv等花费了大量时间配置安装环境(一个朋友花了4天时间才配置好)各种搜索.下载.安装配置,出问题等. 市面上的配置资料很多,选 ...
- 一、React Native 搭建开发环境(1)(Mac OS - IOS项目)
React Native是Facebook推出的一个开发IOS和安卓APP的技术.至于更多的详情,这里不再描述,大家可以自行百度它的定义. 目的: 由于我想在一台电脑上同时开发IOS和Android两 ...
- Tesseract识别图片提取文字&字库训练
文中测试了3.0和4.0两个版本.发现3.0识别效率不准确,需要训练词库.4.0识别效率就比较高了,而且支持结果生成pdf.txt等格式.所以推荐使用4.0版本. 这个工具可以用在爬虫的时候获取验证码 ...
- 如何使用eclipse搭建maven环境以及常见的错误
这篇博客适合零基础学习maven,搭建maven以及运行项目,常见的错误,我会在结尾写出说明白,看是否和大家的错误一样,或者文章的括号注释部分也会写出一些注意点. 第一步:就是下载maven,以及配置 ...
- 深入浅出Docker(五):基于Fig搭建开发环境
概述 在搭建开发环境时,我们都希望搭建过程能够简单,并且一劳永逸,其他的同事可以复用已经搭建好的开发环境以节省开发时间.而在搭建开发环境时,我们经常会被复杂的配置以及重复的下载安装所困扰.在Docke ...
- 一、React Native 搭建开发环境(1)(Mac OS - IOS项目篇)
React Native是Facebook推出的一个开发IOS和安卓APP的技术.至于更多的详情,这里不再描述,大家可以自行百度它的定义. 原因:由于我想在一台电脑上同时开发IOS和Android两个 ...
- 带你一步一步搭建TypeScript环境
今天继续来更新,本篇文章我们讲环境搭建,主要分享一些环境搭建的学习资源及安装步骤,解决一些安装时可能会出现的问题.下面就让我们一起进入学习第一步,搭建TypeScript环境:一. 环境搭建1.1. ...
- python学习之正则表达式,StringIO模块,异常处理,搭建测试环境
python正则表达式 引入一个强大的匹配功能来匹配字符串 import re 正则表达式的表示类型raw string类型(原生字符串类型) r'sa\\/sad/asd'用r转为raw strin ...
随机推荐
- http客户端-性能比较系列-第二篇-多线程
系列文章: 单线程性能测试:https://www.cnblogs.com/victor2302/p/11077208.html 多线程性能测试:https://www.cnblogs.com/vic ...
- java中的异常 try catch
1.学习异常的原因? 如果没有异常处理机制,那么程序的一点小问题,都会导致[程序终止运行].实际开发中显然是不可能的,所以异常对于程序来说是非常重要的. 2.处理异常的方式: A ...
- Python连载30-多线程之进程&线程&线程使用举例
一.多线程 1.我们的环境 (1)xubuntu 16.04(2)anaconda(3)pycharm(4)python 3.6 2.程序:一堆代码以文本的形式存入一个文档 3.进程:程序运行的一个状 ...
- RedHat 6.5换源
https://wenku.baidu.com/view/5b87fb42c77da26924c5b03b.html
- 使用flash2print 代替 printflash 将office文档 转为flash 在页面中播放
前一些日子公司需求把用户上传的一些word等 文档 能像百度文库那样 显示给用户, 但是如果是直接显示office文档的话就需要 些控件的支持 .非常的不友好,所以 一开始我就想能不能转成pdf 来 ...
- 关于python中str数据类型的内置常用方法(函数)总结
str基本数据类型常用功能 center(self,width,fllchar=none) 内容居中,width表示总长度,fllchar表示空白处默认为 ...
- odoo添加顶部按钮实现自定义方法
一.效果图 自定义添加顶部按钮,实现自定义方法. 二.实现过程 1.需要用到三个文件,tree_view_button.js.tree_view_odoo.xml.base.xml三个文件,文件目录如 ...
- 《Java 8 in Action》Chapter 8:重构、测试和调试
我们会介绍几种方法,帮助你重构代码,以适配使用Lambda表达式,让你的代码具备更好的可读性和灵活性.除此之外,我们还会讨论目前比较流行的几种面向对象的设计模式, 包括策略模式.模板方法模式.观察者模 ...
- UVA10831题解
Gerg's Cake Gerg is having a party, and he has invited his friends. p of them have arrived already, ...
- 计时器(CocosCreator)
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 在游戏中,经常会涉及到计时的功能,主要是倒计时.倒计时通常用在某项活动距离结束的剩余时间以及距离开始某项活动开始的时 ...