Med Raspberry Pi Camera-modulen kan du ta bilder och spela in videor med din Raspberry Pi. Modulen kräver inte mycket ström för att fungera, och 5V-strömförsörjningen som du använder för att driva din Raspberry Pi räcker för att köra både kameramodulen och Raspberry Pi.
Raspberry Pi-kameramodulen finns med olika kameraupplösningar. För närvarande finns det tre Raspberry Pi-kameramoduler tillgängliga: (1) Kameramodul V2 med en 8-megapixel Sony IMX219 kamerasensor, (2) Pi NoIR Camera V2, som också har en 8-megapixel Sony INX219 kamerasensor men inte har ett infrarött filter, och (3) Raspberry Pi högkvalitativ kamera, som använder 12.3-megapixel Sony IMX477-sensor.
I den här artikeln visar vi dig hur du ansluter Raspberry Pi-kameramodulen till Raspberry Pi och hur du tar bilder och spelar in videor med kameramodulen. Vi kommer att använda Raspberry Pi Camera Module V2 i den här artikeln, men de andra kameramodulerna fungerar på samma sätt.
För att följa den här artikeln behöver du följande:
- en Raspberry Pi 3 eller Raspberry Pi 4 med nätverksanslutning;
- en Raspberry Pi-kameramodul;
- en mikro-USB (Raspberry Pi 3) eller USB Type-C (Raspberry Pi 4) nätadapter;
- ett 16 GB eller 32 GB microSD-kort med Raspberry Pi OS; och
- en bärbar eller stationär dator för VNC-åtkomst till fjärrskrivbord eller SSH-åtkomst till Raspberry Pi.
NOTERA: I den här artikeln kommer vi att fjärransluta till Raspberry Pi via VNC eller SSH med den huvudlösa installationen av Raspberry Pi. Om du inte vill komma åt din Raspberry Pi på distans via SSH eller VNC måste du ansluta en bildskärm, ett tangentbord och en mus till din Raspberry Pi.
För att lära dig hur du flashar Raspberry Pi OS-bilden på ett microSD-kort, se hur man installerar och använder Raspberry Pi Imager. Om du behöver hjälp med att installera Raspberry Pi OS på din Raspberry Pi, läs Så här installerar du Raspberry Pi OS på Raspberry Pi 4. Om du behöver hjälp med den huvudlösa installationen av Raspberry Pi, kolla in hur man installerar och konfigurerar Raspberry Pi OS på Raspberry Pi 4 utan extern bildskärm.
Hårdvaruinställning
De Raspberry Pi Camera V2 kameramodulpaketet levereras med dokumentationen och kameramodulen.
Kameramodulen ska gå in i CAMERA CSI-kontakt, som visas i bilden nedan. Raspberry Pi CAMERA CSI-kontakt ska ha en tunn plastfilm fäst vid den för skydd. Ta bort den tunna plastfilmen från CAMERA CSI-kontakt.
När den tunna plastfilmen har tagits bort från CAMERA CSI-kontakt, det ska se ut som på bilden nedan.
De CAMERA CSI-kontakt är låst som standard. För att ansluta Raspberry Pi kameramodul till CAMERA CSI-kontakt, du måste först låsa upp den. För att låsa upp CAMERA CSI-kontakt, dra den svarta delen som visas på bilderna nedan för att lyfta den.
Bandkabeln till Raspberry Pi Camera-modulen ska sättas in i CAMERA CSI-kontakt.
Sätt i bandkabeln till Raspberry Pi-kameramodulen i CAMERA CSI-kontakten. Se till att bandkabelns stift är vända framåt, som visas på bilden nedan.
Skjut försiktigt in bandkabeln i CSI-kontakten. Se till att stiften är delvis synliga, som visas på bilden nedan.
Skjut ner den svarta hållaren på CSI-kontakten för att låsa bandkabeln på plats.
När bandkabeln är låst till CSI-kontakten ska den se ut som bilden visar nedan.
Kameramodulen har en tunn plastfilm fäst vid kamerans lins som standard för att skydda linsen från oavsiktlig skada. Innan du använder kameran måste du dock ta bort plastfilmen.
När den tunna plastfilmen har tagits bort från kameran ska den se ut som den som visas i bilden nedan. Nu är kameran redo att ta foton och spela in videor.
Slår på Raspberry Pi
När kameramodulen är ansluten till Raspberry Pi ansluter du strömkabeln till Raspberry Pi och slår på den.
Konfigurera Raspberry Pi kameramodul
För att ta bilder och spela in videor med Raspberry Pi-kameramodulen måste du aktivera den från konfigurationsprogramvaran Raspberry Pi. Starta kommandoradsverktyget Raspberry Pi Configuration med följande kommando:
$ sudo raspi-config
Välj Gränssnittsalternativ och tryck
Välj Kamera och tryck
Välj
Tryck
Välj
Välj
När din Raspberry Pi startar bör Raspberry Pi-kameramodulen vara aktiverad.
Skapa en projektkatalog
Skapa en projektkatalog för att organisera dina projektfiler ~ / arbete med följande kommando:
$ mkdir ~ / arbete
När projektkatalogen har skapats navigerar du till projektkatalogen enligt följande:
$ cd ~ / arbete
Ta bilder från kommandoraden
Du kan ta bilder från Raspberry Pi-kameran från kommandoraden med raspistill kommandoradsprogram. raspistill levereras förinstallerat med Raspberry Pi OS.
Att ta en bild från Raspberry Pi-kameran och spara den som en ny fil bild1.jpg, kör följande kommando:
$ raspistill -o image1.jpg
Som du kan se en ny bildfil bild1.jpg Har skapats.
$ ls -lh
Som du kan se har Raspberry Pi Camera-modulen tagit en bild.
Den högsta stödda bildupplösningen för min Raspberry Pi Camera V2 8-megapixelkamera är 3280 × 2464 pixlar.
Att ta en bild med en lägre upplösning (i.e., 1024× 768 pixlar), kör följande kommando:
$ raspistill -w 1024 -h 768 -q 100 -o image2.jpg
Som du kan se har en ny bild tagits.
$ ls -lh
Den nya bilden har en upplösning på 1024× 768 pixlar.
Du kan vända bilden vertikalt med -vf flagga enligt följande:
$ raspistill -vf -o image3.jpg
Som du kan se har bilden vänt vertikalt.
Du kan också vända bilden horisontellt med -hf flagga enligt följande:
$ raspistill -hf -o image4.jpg
Som du kan se har bilden vänt horisontellt.
Spela in videor från kommandoraden
Du kan spela in videor med Raspberry Pi-kameran från kommandoraden med hjälp av raspivid kommandoradsprogram. raspivid kommer förinstallerat på Raspberry Pi OS.
Att spela in en video med Raspberry Pi-kameran och spara den som en ny fil video1.h264, kör följande kommando:
$ raspivid -o video1.h264NOTERA: Videofilnamnet måste sluta med .h264 (H264 videoförlängning).
Ett kort videoklipp har spelats in och sparats som video1.h264, som visas på skärmdumpen nedan.
Bilden nedan visar den video som spelats in med Raspberry Pi Camera-modulen som spelas.
Du kan spela in en video med en specifik upplösning (t.ex.g., 1024 × 768 pixlar) enligt följande:
$ raspivid -w 1024 -h 768 -o video2.h264
Bilden nedan visar att en ny video med en upplösning på 1024 × 768 pixlar har spelats in.
$ ls -lh
I bilden nedan spelas videon med en upplösning på 1024 × 768 pixlar i VLC Media Player.
Som med raspistill kommandot i programmet kan du använda -vf och den -hf alternativ för att vända inspelad video vertikalt respektive horisontellt.
Arbeta med Raspberry Pi Camera med Python
I det här avsnittet visar jag dig hur du tar bilder och spelar in videor med Raspberry Pi Camera-modulen med hjälp av Python-programmeringsspråket. Först tar vi bilder med Raspberry Pi Camera-modulen med Python.
Skapa ett Python-skript ex01.py i projektkatalogen enligt följande:
$ nano ex01.py
Skriv sedan in följande rader med kod i ex01.py fil. När du är klar trycker du på
Här importerar rad 1 PiCamera modul från picamera bibliotek, och rad 2 importerar sova funktion från tid bibliotek. I rad 4, en ny PiCamera objekt skapas och en referens till objektet lagras i kamera variabel.
Kameran start_preview () metoden används för att öppna ett förhandsgranskningsfönster innan du tar en bild. Du kan bara se förhandsgranskningsfönstret om du är ansluten till din Raspberry Pi via en extern bildskärm. De sova() funktionen används för att vänta 5 sekunder innan du tar bilden. Förhandsgranskningsfönstret visas under det antal sekunder som tillhandahålls. Kameran fånga() metoden används för att ta en bild med Raspberry Pi-kameramodulen och spara den som bild5.jpg fil. När bilden har tagits behövs inte längre kameraförhandsgranskningsfönstret och kameran stop_preview () metoden används för att stänga kamerans förhandsgranskningsfönster.
Springa det ex01.py Python-skript enligt följande:
$ python3 ex01.py
Som du kan se visas förhandsgranskningsfönstret för kameran. Förhandsgranskningsfönstret hjälper dig att justera kameramodulen korrekt medan du tar bilder.
Som du kan se har en ny bild sparats som bild5.jpg.
Du kan också ta bilder med en specifik upplösning (t.ex.g., 1024 × 768 pixlar) med hjälp av ett Python-skript. För att göra det, skapa först ett nytt Python-skript ex02.py som följer:
$ nano ex02.py
Skriv följande kodrader i ex02.py Python-skriptfil. Koden in ex02.py är oftast densamma som koden i ex01.py, men kameran upplösning egenskap används i rad 5 för att ställa in upplösningen. Tryck
Springa det ex02.py Python-skript enligt följande:
$ python3 ex02.py
Förhandsgranskningsfönstret för kameran ska visas.
Som du kan se har en ny bild med upplösning 1024 × 768 pixlar tagits med hjälp av ex02.py.
Du kan också ta flera bilder med Python-programmeringsspråket. För att göra det, skapa en Python-skriptfil som heter ex03.py i projektkatalogen enligt följande:
$ nano ex03.py
Skriv in följande kodrader i ex03.py Python-skriptfil. När du är klar trycker du på
Koden är mestadels densamma som i ex02.py Python-skript, men koden som används för att fånga bilden finns i en för slinga. De för loop går 5 gånger i det här exemplet och det fördröjs 10 sekunder innan en bild tas. Därför, ex03.py tar 5 bilder med tio sekunders mellanrum.
Springa det ex03.py Python-skript enligt följande:
$ python3 ex03.py
Som du kan se, ex03.py tog 5 bilder med Raspberry Pi Camera-modulen.
Du kan också spela in videor med din Raspberry Pi-kamera med Python-programmeringsspråket. För att göra det, skapa ett nytt Python-skript ex04.py som följer:
$ nano ex04.py
Skriv in följande kodrader i ex04.py Python-skript. När du är klar trycker du på
Här importerar rad 1 PiCamera från picamera bibliotek, rad 3 initialiserar PiCamera, och rad 4 ställer in kamerans upplösning på 640 × 480 pixlar. Rad 6 startar kameraförhandsgranskningen så att du kan se vad Raspberry Pi-kameramodulen spelar in och rad 7 startar inspelningen och sparar inspelningen till video3.h264. Kom ihåg att filnamnet måste sluta med .h264 förlängning.
Linje 8 används för att spela in videon i 120 sekunder., och rad 9 används för att stoppa inspelningen. När inspelningen är klar används rad 10 för att stoppa kameraförhandsvisningen, eftersom vi inte längre behöver den.
Springa det ex04.py Python-skript enligt följande:
$ python3 ex04.py
Som du kan se spelas videon in och sparas i filen video3.h264.
Som du kan se spelas den inspelade videon upp.
Konvertera H264-videofiler till MP4
Som standard sparas de videor som spelats in av Raspberry Pi Camera-modulen i H264-format. Det vanligaste formatet är dock MP4-formatet. I det här avsnittet visar vi dig hur du konverterar en H264-video till MP4-videoformat på Raspberry Pi OS med hjälp av gpac kommandoradsprogram. Detta program kommer inte förinstallerat på Raspberry Pi OS, men det finns i det officiella paketförvaret för Raspberry Pi OS.
Uppdatera först APT-paketets förvarscache med följande kommando:
$ sudo apt uppdatering
Att installera gpac, kör följande kommando:
$ sudo apt installera gpac
För att bekräfta installationen, tryck på Y och tryck sedan på
Nu, gpac bör installeras.
Att konvertera en video3.h264 fil till MP4, kör följande kommando:
$ MP4BOX - lägg till video3.h264 video3.mp4
H264-videon konverteras till MP4-format.
Vid denna tidpunkt har videon konverterats till MP4.
Nu bör en ny MP4-fil ha skapats i projektkatalogen, som visas på skärmdumpen nedan.
$ ls -lh
Som du kan se spelas den konverterade MP4-filen på VLC Media Player.
Slutsats
I den här artikeln visade vi dig hur du ansluter Raspberry Pi-kameramodulen till Raspberry Pi och hur du tar bilder och spelar in videor från kommandoraden med hjälp av Raspberry Pi-kameramodulen och Python-programmeringsspråket.