Flexibiliteten hos Raspberry Pi känner inga gränser, och precis när du tror att du har uppnått allt möjligt kommer något annat. Detta kan vara tack vare en bra idé som du eller någon annan hade, eller inspirerad av en nyligen släppt del av expansionshårdvara för enheten.
En av de första expansionerna du bör köpa till Raspberry Pi är kameramodulen. Med en dedikerad kontakt kan kameran användas för en mängd olika uppgifter. Låt oss ta en titt på dem.
Först: Aktivera kameran
Börja med att se till att du har anslutit din Raspberry Pi-kamera till minidatorn. Starta sedan enheten och logga in (vi antar att du använder standard Raspberry Pi OS, Raspbian). Skriv in på kommandoraden
sudo raspi-config
Välj i menyn Aktivera kamera.
Härifrån väljer du Gör det möjligt, sedan Avsluta och Ja för att starta om.
Ta ett foto
När din Pi startar om, logga in igen och skriv in vid uppmaningen
raspistill –o image.jpg
Detta kommer att fånga din första bild, som du kommer att kunna se i GUI. Om du inte redan använder Terminal från GUI, bör du byta till detta genom att använda kommandot
startx
Efterföljande kommandon kan köras i Terminal och resultaten kontrolleras i Raspbian-filhanteraren. Du kan ta hur många bilder du vill med det här kommandot, men observera att filnamnet, image.jpg, måste ändras med varje iteration av kommandot, för att undvika att skriva över föregående bild.
Låt oss bli lite mer avancerade och instruera Pi:n att ta ett tidsinställt foto efter en enda knapptryckning.
Börja med att installera Python-stödet för kameran.
sudo apt-get install python-picamera python3-picamera
När du är klar, gå in
sudo idle &
Detta kommer att starta Python-miljön. Python dyker upp regelbundet i Raspberry Pi-tutorials, och är ett förvånansvärt lätt språk att komma till rätta med. För mer hjälp med detta föreslår vi att du kollar våra fem bästa webbplatser för att lära dig Python, och besöker Lynda.com om du är intresserad av att ta dina Python-färdigheter vidare.
Gå till Arkiv > Nytt fönster för att öppna en textredigerare och ange följande kod:
import time
import picamera
with picamera.PiCamera() as camera:
camera.start_preview()
time.sleep(0)
camera.capture('/home/pi/Desktop/image.jpg')
camera.stop_preview()
Använda sig av Arkiv > Spara för att spara ditt arbete, döp det till något som timedsnap.py. När du är redo att köra skriptet, gå till Kör > Kör modul, eller bara tryck på F5.
Vi kan använda samma skript – med vissa modifieringar – för att använda Raspberry Pi-kameramodulen för andra projekt.
En PiCamera med en timer
Samma skript kan återanvändas med en liten justering för att skapa en kamera med en tidsinställd nedräkning, en stor fördel för alla selfie-besatta snappers. Låt oss inse det, det här är en Raspberry Pi, så du kan förmodligen hitta något sätt att montera fodralet och kameran på en selfie-pinne och gå ut offentligt med det.
För att lägga till en 5 sekunders nedräkning, ändra raden
time.sleep(0)
till
time.sleep(5)
När du är klar, kom ihåg att spara och tryck på F5 för att börja nedräkningen. Säg omelett!”
Spela in video med din Raspberry Pi-kamera
Att ta stillbilder är en sak, men hur är det med video? Precis som med en smartphonekamera eller vanlig skrivbordswebbkamera (vilket är i princip vad Pi-kameran är, bara utan höljet) kan du också spela in video.
I kommandotolken, ändra skriptet enligt följande:
import time
import picamerawith picamera.PiCamera() as camera:
camera.start_preview()
camera.start_recording('/home/pi/Desktop/video.h264')
time.sleep(30)
camera.stop_recording()
camera.stop_preview()
Du kommer att märka att jag har ställt in time.sleep() värde till 30, vilket betyder att skriptet börjar spela in, vänta i 30 sekunder och stoppa sedan. Spara det här skriptet som videocapture.py, och tryck på F5 för att köra.
Lägg märke till användningen av camera.start_recording() fungera. Detta sparar materialet som en fil som heter video.h264, ett högupplöst videoklipp som du kan öppna från Raspbian-skrivbordet. Det bästa sättet att göra detta är att bläddra till skrivbordsmappen (eller vilken sökväg du har valt i skriptet ovan), tryck på F4 för att öppna terminalen och ange
omxplayer video.h264
Lägg till ett passande batteri för Raspberry Pi och en display, så har du en kompakt videokamera!
Time-lapse fotografering
Time-lapse-fotografering har ökat i popularitet med explosionen av smartphonekameror under de senaste åren, vilket gör det som en gång var provinsen för specialistfotografer tillgängligt för nästan alla.
Nackdelen med att använda en smartphone för den sortens fotografering är uppenbar; det är tidskrävande och är en resurs som du kan behöva för att, ja, ringa och ta emot telefonsamtal. Raspberry Pi med tillhörande kamera är ett bra alternativ, och med ett batteri anslutet kan det visa sig vara lika portabelt och mångsidigt som en Android- eller iPhone-app, och är mer vettigt än att bara använda din Pi som en time-lapse-utlösare för en DSLR.
Innan du fortsätter, installera ffmpeg:
sudo apt-get install ffmpeg
Använd sedan detta Python-skript för att fånga time lapse-bilderna:
import time
import picamera
VIDEO_DAYS = 1
FRAMES_PER_HOUR = 60
FRAMES = FRAMES_PER_HOUR * 24 * VIDEO_DAYS
def capture_frame(frame):
with picamera.PiCamera() as cam:
time.sleep(2)
cam.capture('/home/pi/Desktop/frame%03d.jpg' % frame)
# Capture the images
for frame in range(FRAMES):
# Note the time before the capture
start = time.time()
capture_frame(frame)
# Wait for the next capture. Note that we take into
# account the length of time it took to capture the
# image when calculating the delay
time.sleep(
int(60 * 60 / FRAMES_PER_HOUR) - (time.time() - start)
)
Du har skapat en samling bilder inspelade under en 60-minutersperiod med det här skriptet. För att se bilderna som en film, kompilera bilderna enligt följande:
ffmpeg -y -f image2 -i /home/pi/Desktop/frame%03d.jpg -r 24 -vcodec libx264 -profile high -preset slow /home/pi/Desktop/timelapse.mp4
Du kan köra videon i din Raspberry Pi med ett Terminal-kommando:
omxplayer timelapse.mp4
Videon kommer sedan att spelas upp i helskärm. Det kan se ut ungefär så här…
Säkerhetskameran Raspberry Pi
Vi har tidigare undersökt hur man bygger ett säkerhetssystem för hemwebbkamera med din Raspberry Pi, med en handledning som föregick den utbredda tillgängligheten av Pi:s dedikerade kamera. Saker och ting har förstås förändrats sedan dess, men du kan använda samma principer och mjukvara för att förvandla Pi till en mycket mer kompakt säkerhetskameralösning. I teorin kan du övervaka vad som kommer och går in och ut ur ditt hus för under 100 $ med en eller flera Raspberry Pi-säkerhetskameror.
Vi har gett dig fem användningsområden för din Raspberry Pi-kameramodul, men vi tror att du kanske kan lägga till i listan. Hur använder du din? Berätta för oss i kommentarerna.
Om författaren
Christian Cawley (1562 publicerade artiklar)
Biträdande redaktör för säkerhet, Linux, gör-det-själv, programmering och teknisk förklarad, och riktigt användbar podcastproducent, med lång erfarenhet av skrivbords- och mjukvarustöd. Christian är en bidragsgivare till tidningen Linux Format och är en Raspberry Pi-pyssare, en Lego-älskare och en fan av retrospel.
Mer från Christian Cawley
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!
Klicka här för att prenumerera
