人员摔倒识别 yolov5视频识别老人跌倒检测_燧机科技suiji的博客-爱代码爱编程
人员摔倒识别yolov5视频识别老人跌倒检测是基于视频的检测方法,通过判断前后帧的人体关键点的坐标变化来判断人是否摔倒,使用openpose或者mmpose进行摔倒检测有两个问题。
第一,后处理算法比较复杂,openpose和其他关键点检测模型只是给出人体各个器官的点位坐标,比如引体向上计数,可以通过判断头部节点与肘部节点的坐标进行判断计数,对于摔倒,可以通过判断视频前后帧的头部,腰部等关节点进行检测,判断是否摔倒。
基于yolov5的方法的优点在于不需要老人佩戴额外的设备,也不局限于某一个房间,只要在有摄像头的地方就可以进行检测和使用,另外由于机器学习和深度学习的发展,准确性上也得到了大幅提升。mmpose不同于yolo,SSD等目标检测模型,在视频中进行关节点检测的速度要小于目标检测,即使在边缘计算的盒子上进行部署,也很难对人群进行大规模的关键点检测和判断,因此关键点检测常用于智能运动检测等小规模人群场景,图上所示是先使用yolo进行预判断,再进行mmpose检测判断,节约了一定的资源。
import matplotlib.pyplot as plt
from scipy import stats
x = [5,7,8,7,2,17,2,9,4,11,12,9,6]
y = [99,86,87,88,111,86,103,87,94,78,77,85,86]
slope, intercept, r, p, std_err = stats.linregress(x, y)
def myfunc(x):
return slope * x + intercept
mymodel = list(map(myfunc, x))
plt.scatter(x, y)
plt.plot(x, mymodel)
plt.show()
const app = Vue.createApp({
data() {
return { count: 4 }
}
})
const vm = app.mount('#app')
document.write(vm.$data.count) // => 4
document.write("<br>")
document.write(vm.count) // => 4
document.write("<br>")
// 修改 vm.count 的值也会更新 $data.count
vm.count = 5
document.write(vm.$data.count) // => 5
document.write("<br>")
// 反之亦然
vm.$data.count = 6
document.write(vm.count) // => 6