最近有好几个客户反映将OAK程序从x86电脑上移植到树莓派或者jetson平台上,深度图的帧率会严重降低的问题。我们社群里的用户一杰经过多天验证和测试给了我们一个解决办法,感谢一杰的无私分享!
之前有相关的问题,我们一直从这几个方面进行排查:
- 树莓派解码和显示图片的性能,关闭显示和降低显示分辨率可以明显增加帧率;
- 是否连接在了树莓派的usb2.0接口上,或者用了usb2.0的数据线,因为传输带宽问题,降低了帧率;
- 是否树莓派或者jetson的usb接口供电不足,提高树莓派外接供电到4A以上,或者给OAK相机外接供电。
如果之前的问题都尝试了,还有问题,可以尝试一下我们社群一位朋友提供的办法。
原本在树莓派上运行只有3到4帧的深度图,通过修改一下参数,让帧率能稳定在26帧左右。
- 将左右相机传感器的输出帧率从60帧降到30帧
- 关闭setDisparityShift
setDisparityShift的好处是增加近距离特征点的搜索匹配范围,在只有50cm以内的近距离物体,没有远距离测量需求的短量程能提高精度,大量程没什么用处,所以全量程测量可以注释掉这行,程序运行采用默认的参数。
修改这两项能够有效提高在嵌入式平台上的深度图运行帧率,有差不多问题的朋友们可以尝试一下。