在Raspberry Pi中,定义的camera.shutter与查询的camera.exposure_speed不匹配。
picamera API文档-PiCamera API document指出:
曝光速度-
检索相机的当前快门速度。
查询时,此属性返回当前使用的快门速度
通过相机。如果您将shutter_speed设置为非零值,则
曝光速度和快门速度应相等。但是,如果
shutter_speed设置为0(自动),则可以读取实际的快门
此属性使用的速度。该值以整数形式返回
代表微秒数。这是一个只读属性。
尽管有上述说明,但在将shutter_sepeed定义为10秒后,exposure_speed返回0-两个可变项不相等。 如下面的代码所示:
` 从picamera导入PiCamera 用PiCamera(分辨率=(1024,768),framerate =分数(1,6),sensor_mode = 3)作为相机:
exp_sec=int('10')
camera.shutter_speed=exp_sec*10**6 # micros
sleep(30)
print('camera_shutter_speed='+str(camera.shutter_speed))
print('camera_exposure_speed:'+str(camera.exposure_speed))
camera.iso=1600 #100-1600
camera.exposure_mode='off' # lock all setting parameters
fn_png=str(time.strftime("%Y-%m-%d-%H-%M-%S"))+'.png
camera.capture(fn_png, format='png')'
作为回应:
>>>
===== RESTART: /home/pi/Documents/test_scripts/cap_one_image.py =====
made new direc
it is time to take a shot
0
camera_shutter_speed=9999959
camera_exposure_speed= 0
最后两个不相等,这没有任何意义。有什么想法吗?
答案 0 :(得分:1)
IIRC,直到您在请求的camera.exposure_speed
设置下拍摄图像的 之后,shutter_speed
属性才会更新。
如果您尝试在捕获后打印设置,那行得通吗?
exp_sec=int('10')
camera.shutter_speed=exp_sec*10**6 # micros
sleep(30)
print('camera_shutter_speed='+str(camera.shutter_speed))
print('camera_exposure_speed:'+str(camera.exposure_speed))
camera.iso=1600 #100-1600
camera.exposure_mode='off' # lock all setting parameters
fn_png=str(time.strftime("%Y-%m-%d-%H-%M-%S"))+'.png'
camera.capture(fn_png, format='png')
print('camera_shutter_speed='+str(camera.shutter_speed))
print('camera_exposure_speed:'+str(camera.exposure_speed))