1

I am working with the Raspberry Pi camera and need some help regarding the python script. I need to capture a set of 5 images continuously every 5 minutes interval until I want it to stop. This set of images will be captured with increment in the shutter speed.

Right now, I only have the script written for capturing 5 images.

from picamera import PiCamera
from time import sleep
camera=PiCamera()
camera.resolution=(1024, 768)
camera.start_preview(fullscreen=False, window=(100,200,500,600))
camera.capture_sequence(['image%02d.jpg' % i for i in range (5)]) 

Please let me know how to set of images continuously with range of shutter speed. Thanks in advance.

Dougie
5,38111 gold badges22 silver badges30 bronze badges
asked Sep 20, 2019 at 18:01
0

3 Answers 3

3

If I've understood correctly, you want to capture 5 images, each with a different shutter speed, wait five minutes, and then repeat. In that case, capture_sequence isn't applicable as it would capture all frames with the same shutter speed.

In that case, the code you want should look something like this:

from picamera import PiCamera
from time import sleep
camera=PiCamera()
camera.resolution=(1024, 768)
camera.start_preview(fullscreen=False, window=(100,200,500,600))
at = 1 # keep track of the current image
while True:
 for shutterspeed in range(250,1500,250): # use shutterspeeds of 250, 500, 750, 1000, and 1250 microseconds, set this to the range of values you're interested in
 camera.shutter_speed = shutterspeed # set the shutter speed to this many microseconds
 sleep(2) # documentation suggests a short 2 second delay for the sensor to adjust
 camera.capture('image%05d.jpg' % at) # save the image in the current folder with 5 leading zeros in the filename
 at = at + 1 # increment the image number
 sleep(5*60) # wait 5 minutes
camera.stop_preview()
answered Sep 20, 2019 at 22:42
2
  • Hey, Thank you for your response. I have tried this script and it captures only one image after every 5 minutes. But I would like to capture 5 sets of images, each with different shutter speed, wait for minutes and then repeat to capture another 5 set of images. Thanks. Commented Sep 23, 2019 at 18:20
  • You should get 5 images every 5 minutes. ls -ltr for me clearly shows image00001.jpg to image00005.jpg taken at 11:19 and image00006.jpg to image00010.jpg taken at 11:24. The images may not look very different though due to the shutterspeeds being so similar. Try changing for shutterspeed in range(250,1500,250) to for shutterspeed in range(500,4500,500) for a wider range of shutter speeds, which should give more different images. Commented Sep 24, 2019 at 11:28
1

I'm trying also to do some HDR images to acquire at the end a whole 8 or super8 film. Every picture of the film will be acquired with different stops. Here the code that I have already tested and that works fine:

from picamera import PiCamera
from time import sleep
from fractions import Fraction
camera = PiCamera()
camera.rotation = 180
camera.resolution = (3280,2464)
camera.framerate= 1/1
sleep(1)
camera.capture('img_0.jpg')
exposure = camera.exposure_speed
camera.exposure_mode = 'off'
i=1
while i < 4:
 camera.shutter_speed = exposure * 2**i
 sleep(1)
 camera.capture('img_plus_'+str(i)+'.jpg')
 camera.shutter_speed = int (exposure / 2**i)
 sleep(1)
 camera.capture('img_minus'+str(i)+'.jpg')
 i+=1

First I take an image at EV0 and I save the exposure_speed so that I know the EV0 value. After that, I change the shutter_speed so that I have under- and over-exposed pictures

Regards

Gian Carlo

answered Sep 25, 2019 at 10:58
1

The task could be run every five minutes using cron.

Save your script as (e.g) /home/pi/mycapture.py

crontab -e

Then add

*/5 * * * * python /home/pi/mycapture.py

You would need a date/time stamp in the filename to avoid overwriting.

Dougie
5,38111 gold badges22 silver badges30 bronze badges
answered Sep 24, 2019 at 22:37

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.