Tensorflow——用openpose进行人体骨骼检测
https://blog.csdn.net/eereere/article/details/80176007
参考资料
code:https://github.com/ildoonet/tf-pose-estimation
paper:https://arxiv.org/pdf/1611.08050.pdf
Mark的教学视频:https://www.youtube.com/watch?v=nUjGLjOmF7o
(视频里特别详细,从conda环境,安装tensorflow,到最后的run)
需要的软件
python3
tensorflow 1.3.0+(作者说要1.4.1,我的cuda是8.0,只能用1.3.0)
opencv3, protobuf, python3-tk
0)准备工作
下载code:https://github.com/ildoonet/tf-pose-estimation
activate 你的环境
打开 tf-pose-estimation-master文件夹
1)安装必要的requirements
pip3 install -r requirements.txt
在安装ast时会报错: FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users.....
不用管,Python已经有ast了
所以把ast删掉,再pip install一遍
2)运行
检测图像:
python src/run.py --model=mobilenet_thin --resolution=432x368 --image=×××.jpg
①整个人都没有检测到
②左腿没有检测到
③整个人都检测到了
检测本地视频:
python src/run_video.py --model=mobilenet_thin --resolution=432x368 --video=child.mp4
加了几句代码就可以将视频保存到本地
fourcc = cv2.VideoWriter_fourcc('M', 'P', '4', '2')
outVideo = cv2.VideoWriter('save.avi',fourcc,fps,size)
if (cap.isOpened()== False):
print("Error opening video stream or file")
while(cap.isOpened()):
ret_val, image = cap.read()
humans = e.inference(image)
image = TfPoseEstimator.draw_humans(image, humans, imgcopy=False)
#logger.debug('show+')
cv2.putText(image,
"FPS: %f" % (1.0 / (time.time() - fps_time)),
(10, 10), cv2.FONT_HERSHEY_SIMPLEX, 0.5,
(0, 255, 0), 2)
cv2.imshow('tf-pose-estimation result', image)
outVideo.write(image)
fps_time = time.time()
if cv2.waitKey(1) == 27:
break
从抖音上下载了一个短视频,下面是检测结果,视频检测的结果还是非常好的
但是事实检测FPS仍然有些慢
Tensorflow——用openpose进行人体骨骼检测的更多相关文章
- 用华为HMS ML kit人体骨骼识别技术,Android快速实现人体姿势动作抓拍
你有没有过这种体验,拍照时对着镜头,脑子一片空白.表情僵硬.手和脚无处安放,最后拍出来的照片很是奇怪.拍照软件中的固定姿势抓拍功能可以帮助你:选择一个你想要的姿势模板,当你摆出同款姿势时,软件会进 ...
- Python人体肤色检测
代码地址如下:http://www.demodashi.com/demo/12967.html Python人体肤色检测 概述 本文中的人体肤色检测功能采用 OpenCV 库实现, OpenCV是一个 ...
- openpose模型在AI challenge人体骨骼关键点检测的表现
因为之前正好看了CMU在CVPR2017上的论文<Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields>, ...
- 基于 TensorFlow 在手机端实现文档检测
作者:冯牮 前言 本文不是神经网络或机器学习的入门教学,而是通过一个真实的产品案例,展示了在手机客户端上运行一个神经网络的关键技术点 在卷积神经网络适用的领域里,已经出现了一些很经典的图像分类网络,比 ...
- tensorflow利用预训练模型进行目标检测(四):检测中的精度问题以及evaluation
一.tensorflow提供的evaluation Inference and evaluation on the Open Images dataset:https://github.com/ten ...
- tensorflow利用预训练模型进行目标检测(三):将检测结果存入mysql数据库
mysql版本:5.7 : 数据库:rdshare:表captain_america3_sd用来记录某帧是否被检测.表captain_america3_d用来记录检测到的数据. python模块,包部 ...
- tensorflow利用预训练模型进行目标检测(二):预训练模型的使用
一.运行样例 官网链接:https://github.com/tensorflow/models/blob/master/research/object_detection/object_detect ...
- TensorFlow + Keras 实战 YOLO v3 目标检测图文并茂教程
运行步骤 1.从 YOLO 官网下载 YOLOv3 权重 wget https://pjreddie.com/media/files/yolov3.weights 下载过程如图: 2.转换 Darkn ...
- tensorflow利用预训练模型进行目标检测(一):安装tensorflow detection api
一.tensorflow安装 首先系统中已经安装了两个版本的tensorflow,一个是通过keras安装的, 一个是按照官网教程https://www.tensorflow.org/install/ ...
随机推荐
- 【pwnable.tw】 starbound
此题的代码量很大,看了一整天的逻辑代码,没发现什么问题... 整个函数的逻辑主要是红框中两个指针的循环赋值和调用,其中第一个指针是主功能函数,第二个数组是子功能函数. 函数的漏洞主要在main函数中, ...
- Oralce给字段追加字符,以及oracle 给字段替换字符
追加字符 update table_name t set t.DIST_NAME = t.DIST_NAME || '市' where PROD_NAME='爱立信' table_name :表名 ...
- NOIp2018普及组初赛试卷
第二十四届全国青少年信息学奥林匹克联赛初赛(普及组C++语言试题)
- spring boot 2.18
@SpringBootAppliction: 标注在某个类,则是springboot的主配置类,springboot就运行这个类的main方法启动springboot; @SpringBootConf ...
- Android框架模式
参考大佬写的文章:https://www.jianshu.com/p/f17f5d981de7 1.MVC模式 Model:模型层,负责处理数据的加载或存储 View:视图层,负责界面数据的展示,与和 ...
- DateTimePicker控件在WinXP下的BUG
如图,通过图示的按钮改变datetimepicker的值 ,弹出MessageBox, datetimePicker重新获得焦点后,自动重复点击按钮. 解决办法: new Thread(() => ...
- [转]SparkSQL – 有必要坐下来聊聊Join
转载自网易范欣欣http://hbasefly.com Join背景介绍 Join是数据库查询永远绕不开的话题,传统查询SQL技术总体可以分为简单操作(过滤操作-where.排序操作-limit等), ...
- Day 25:XML解析
XML解析 xml文件除了给开发者看,更多的情况使用程序读取xml文件的内容.这叫做xml解析 XML解析方式(原理不同) DOM解析 SAX解析 XML解析工具 DOM解析原理: JAXP (ora ...
- redis主从遇到的问题
rendis安装 主从切换 Redis的HA方案 Redis高可用架构(1)—Keepalive+VIP 还是配置的问题 从一直无法连接上主 redis.conf配置 # Examples:# 1 ...
- 《动手学深度学习》系列笔记—— 1.2 Softmax回归与分类模型
目录 softmax的基本概念 交叉熵损失函数 模型训练和预测 获取Fashion-MNIST训练集和读取数据 get dataset softmax从零开始的实现 获取训练集数据和测试集数据 模型参 ...