做毕设的一点体会
在解决人体跟踪算法时,属于工程问题,为了解决遮挡问题我反复读取csv文件,但是导致程序运行过慢,为了解决此问题我就采用了多线程方法略微改变了速度。
多线程并不是提速的关键问题,为了提速应该减少csv文件的读取。
分析结束跟踪时间 267.42538046836853(单线程)
分析结束跟踪时间 258.360303401947(2线程)
分析结束跟踪时间 262.426705121994(4线程)
为了减少读取csv和人体匹配时间,也为了减少出现的人数,我提高了连接人体的阈值,只有人体的关键点高于5才能作为一个pose类。避免了噪音导致新出现的人体,只识别一个肢体作为一个人的序号,导致出现多人使程序慢。因为有跟踪算法所以不需要少的关键点。
分析结束跟踪时间 38.452234983444214
用字典存储每个人的最后一帧关键点,如果距离过远直接不读取csv文件。
分析结束跟踪时间24.753849744796753s。
由此看出i/o是制约计算机性能的一个主要因素。
因为系统不断调优如果把文档定死就会导致,文档描述跟系统不符合。