Picademy 5 Picamera Intro Workshop

Preview:

Citation preview

PYTHON PICAMERA

Introducing the camera boardand Python module

WHO'S THIS GUY?

Ben NuttallDevelopment & OutreachRaspberry Pi Education Team

@ben_nuttallben@raspberrypi.orggithub.com/bennuttall

CONNECT THE CAMERA

COMMAND LINE

RASPI CONFIG

$ sudo raspi­config

ENABLE CAMERA

ENABLE CAMERA

REBOOT

COMMAND LINE

$ ls

COMMAND LINE

$ raspistill ­o image1.jpg

COMMAND LINE

$ ls

BOOT TO DESKTOP

$ startx

OPEN FILE MANAGER

OPEN LXTERMINAL

OPEN IDLE AS ROOT USER

$ sudo idle3 &

FILE > NEW WINDOW

SAVE WITH Ctrl + S

TAKE A PICTURE WITH PYTHONfrom picamera import PiCamera

from time import sleep

with PiCamera() as camera:

    camera.start_preview()

    sleep(3)

    camera.capture('/home/pi/image2.jpg')

    camera.stop_preview()

SAVE & RUN

Ctrl + S

F5

ADD A GPIO BUTTON

ADD GPIO TO CODEfrom picamera import PiCamera

from time import sleep

import RPi.GPIO as GPIO

GPIO.setmode(GPIO.BCM)

GPIO.setup(17, GPIO.IN, GPIO.PUD_UP)

with PiCamera() as camera:

    camera.start_preview()

    GPIO.wait_for_edge(17, GPIO.FALLING)

    sleep(3)

    camera.capture('/home/pi/image2.jpg')

    camera.stop_preview()

ADD A LOOP

with PiCamera() as camera:

    camera.start_preview()

    GPIO.wait_for_edge(17, GPIO.FALLING)

    for i in range(5):

        sleep(3)

        camera.capture('/home/pi/image%s.jpg' % i)

    camera.stop_preview()

WHAT'S THE DIFFERENCE?

GPIO.wait_for_edge(17, GPIO.FALLING)

for i in range(5):

    sleep(3)

    camera.capture('/home/pi/image%s.jpg' % i)

for i in range(5):

    GPIO.wait_for_edge(17, GPIO.FALLING)

    camera.capture('/home/pi/image%s.jpg' % i)

    sleep(3)

WHAT CAN YOU DO?

WHAT CAN YOU DO?

Recommended