SOLVED 树莓派V4L2驱动下的帧率问题
- 
					
					
					
					
 你好,我在树莓派下使用V4L2驱动可以正确获取图像。但想设置帧率上出现的问题。我希望希望设置相机的帧率为15FPS,曝光时间为1/15秒。那么通过I2C工具设置参数mshutter的值为0x4b,对应的曝光时间应该为1/15秒。但是通过测试,获取帧的时间还是在33-40毫秒左右。参数lowlight尝试设置0x00或者0x01没有改善。 
 请问是哪里还需要设置吗?
 谢谢
- 
					
					
					
					
 @max 
 你好,
 这个问题的确存在,实际上的帧率是15fps,但是会上传到上位机30fps。其中一半是重复帧。
 这个是由于硬件的输出时序的限制,所以采用低照度模式的时候,树莓派端的软件,建议丢掉重复的帧。
- 
					
					
					
					
 你好,请问如何丢掉重复帧? 
 是设置nodf参数吗?
- 
					
					
					
					
 @max 
 你好,我说的丢重复帧是指的您的软件获取图像之后丢掉。 nodf理论上可以,但是要特殊的情况才行,比如摄像头是配置为4b的情况,nodf隔一个丢一个。
- 
					
					
					
					
 尝试以下参数: 
 lowlight : 0x00 -> 固定帧率30FPS
 mshutter: 0x4b -> 曝光时间1/15 秒
 nodf: 0x01 -> 丢掉1帧
 hdver: 0x03结果:无法获取图像。 
 如果把nodf设置为0,就正常获取图像,然而帧率不是15FPS
- 
					
					
					
					
 @max 
 可能是v4l2driver模式的问题,说实话这个方法我们并没有测试过。 理论上用veye_raspicam模式应该是没问题的。
- 
					
					
					
					
 @veye_xumm 好的,只能软件丢掉一帧了。 
 另外,请问mshutter参数与lowlight参数的关系是如何的?
 例如,mshutter设置我0x4b,曝光时间是1/15秒。当lowlight分别是0x00(Fixed frame rate (25/30))与0x01(1/2*(FRAME RATE))时,实际的曝光时间与通过V4L2驱动获取的帧率分别是多少?
- 
					
					
					
					
 @max 
 lowlight只有在自动曝光模式下生效。你一旦设置mshutter为手动,lowlight就不生效了。
