成都网站开发建设公司,广州网站建设优化,做gif的网站,龙岩网站建设teams熊掌号最近做了一个跌倒检测demo#xff0c;使用的是lightweight_openposefullconnection#xff0c;这篇文章是以应用为主#xff0c;已经在GitHub上开源啦#xff0c; 源码openpose_fall_detect 为什么使用lightweight_openpose#xff0c;在此之前跑了很多模型哈#xff0c;…最近做了一个跌倒检测demo使用的是lightweight_openposefullconnection这篇文章是以应用为主已经在GitHub上开源啦 源码openpose_fall_detect 为什么使用lightweight_openpose在此之前跑了很多模型哈包括C3D、R3D、R21D、yolo、alphapose、STGCN、openpose等以上模型有时间了再和大家分享综合来说lightweight_openpose速度快比以上提到的模型都快精度也很不错接下来谈一谈这个项目的模型及怎么实现的。 lightweight_openpose VS openpose 这个轻量级的openpose相比openpose有哪些改进呢先看看openpose的原始结构 接下来谈谈对openpose的改进改进一backboneVGG19 to mobilev1改进二把生成keypoints和PAFs的两个网络合并成一个改进三把7x7的卷积换成3x3和1x1的卷积块为保持视野使用dil2的空洞卷积 经过以上改进速度相比原openpose快了很多精度和原openpose相差很小
大致知道了如何改进的openpose理论不多说接下来谈谈怎么利用lightweight_openposefullconnection实现跌倒识别
一、 lightweight_openpose用来识别骨骼二、 把骨骼图片传入全连接层全连接层对骨骼进行判断输出骨骼状态fall or normal发现精度还可以进一步提高就是使用宽高比进行辅助判断跑出来的效果确实好了很多。
关于lightweight_openpose可以参考其论文Lightweight OpenPose 及其github相关代码
关于全连接层的训练很简单首先生成训练集和测试集直接利用lightweight_openpose生成后保存就好我已经对源码做了部分修改在pose.py文件中添加了保存功能在demo文件调用时可以设置is_save True 骨骼生成完后创建test与train文件夹作为训练集与测试集在test和train文件夹下创建fall与normal文件夹把相应的骨骼图片放进去就好如下图 之后训练就可以啦几个小时就可以训练好 以下附几张效果图
为了方便操作项目中添加了一个简单的GUI操作界面入口文件为fall_down_detector.py 权重文件下载地址 链接https://pan.baidu.com/s/1QB8j7bXsmpEpfc4d3HkUIg 提取码5d6o
任何程序错误以及技术疑问或需要解答的请扫码添加作者VX