{"id":1456,"date":"2022-05-03T09:20:17","date_gmt":"2022-05-03T09:20:17","guid":{"rendered":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/?post_type=chapter&#038;p=1456"},"modified":"2022-05-10T12:54:28","modified_gmt":"2022-05-10T12:54:28","slug":"raspberry-pi-kaameramoodul","status":"web-only","type":"chapter","link":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/chapter\/raspberry-pi-kaameramoodul\/","title":{"raw":"Raspberry Pi kaameramoodul","rendered":"Raspberry Pi kaameramoodul"},"content":{"raw":"T\u00e4nases tunnis tutvume Raspberry Pi kaameramooduliga. Selle raames teeme Raspberry Pi kaameraga pilte, t\u00f6\u00f6tleme neid ning l\u00f5puks proovime luua ka rakendust, mis looks kaamerale kasutajaliidese.\r\n\r\nNB! Selles \u00f5ppematerjalis ei ole sisulist vahet, kas kasutada Raspberry Pi 4 v\u00f5i 3 seni kuni kasutad operatsioonis\u00fcsteemi Raspberry Pi OS-i mille esimeses peat\u00fckkis <span style=\"text-align: initial;font-size: 1em\">paigaldasime mis baseerub Debain 11.3 versioonil. Kui sa ei ole kindel milline Debiani versiooni sinu Raspberry Pi-le paigaldatud on siis kirjuta k\u00e4sureale k\u00e4sk <\/span><code style=\"text-align: initial;background-color: #ffffff\">cat \/etc\/debian_version <\/code><span style=\"text-align: initial;font-size: 1em\">kui ilmub rida 11.3 oled \u00f5ige versiooni peal.<\/span>\r\n<h2>Rapsberry Pi kaamera \u00fchendamine<\/h2>\r\nRaspberry Pi kaameramoodul on varustatud lintkaabliga, mis tuleb \u00fchendada Raspberry Pi-ga. Selle jaoks l\u00fclita Raspberry Pi esmalt v\u00e4lja, otsi \u00fcles Rapsberry Pi keskel olev kaamera \u00fchenduskoht ning t\u00f5sta selle peal olev kattev osa ettevatlikult \u00fchenduse eest \u00e4ra. Seej\u00e4rel sisest kaamera nii:\r\n\r\n[caption id=\"attachment_1474\" align=\"alignnone\" width=\"225\"]<img class=\"wp-image-1474 size-medium\" style=\"font-family: Lora, serif;font-size: 1em;font-weight: normal\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-225x300.jpg\" alt=\"\" width=\"225\" height=\"300\" \/> Raspberry Pi 3 koos \u00fchendatud kaameraga[\/caption]\r\n\r\n[caption id=\"attachment_1473\" align=\"alignnone\" width=\"225\"]<img class=\"wp-image-1473 size-medium\" style=\"font-size: 1em;font-family: Lora, serif;font-weight: normal\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-225x300.jpg\" alt=\"\" width=\"225\" height=\"300\" \/> Raspberry Pi 4 koos \u00fchendatud kaameraga[\/caption]\r\n\r\n&nbsp;\r\n\r\nKui olema kaamera f\u00fc\u00fcsiliselt Raspberry Pi-ga \u00fchendanud siis l\u00fclitame Raspberry Pi sisse. Selle jaoks \u00fchendame Raspberry Pi vooluv\u00f5rku taaskord.\r\n\r\nKui oleme Raspberry Pi t\u00f6\u00f6le saanud siis avame terminali ning sisestame sinna k\u00e4su: <code>sudo raspi-config<\/code> millega saab Raspberry Pi konfiguratsiooni redigeerida. Kui oleme konfiguratsiooni men\u00fc\u00fcm lahti teinud siis j\u00e4rgmise sammuna peame lubama kaamera mooduli, selle jaoks mine Interface Options -&gt; Legacy Camera ning k\u00fcsimusele \"Would you like to enable legacy camera support\" vali vastusevariant Yes v\u00f5i Jah. Seej\u00e4rel men\u00fc\u00fcst lahkudest k\u00fcsib Raspberry Pi, et kas soovid teha kohe restarti ning teeme restardi kohe \u00e4ra.\r\n\r\nJ\u00e4\u00e4b \u00fcle katsetada, kas meie kaamera hakkas t\u00f6\u00f6le. Selle jaoks avame taaskord terminali ning proovime teha kaameraga pilti. Kasutame k\u00e4sku <code>raspistill -o Desktop\/pilt.jpg<\/code> mille peale peaks avanema kaamera eelvaade ning kolme sekundi p\u00e4rast tegema pilti. Kontrolli, kas t\u00f6\u00f6laua kausta tekkis pilt.\r\n<h2>Pythoni koodiga kaamera juhtimine<\/h2>\r\nJ\u00e4rgnevalt proovime teha kaameraga pilti kasutades Pythoni koodi. Selle jaoks avame \u00fclemisest vasakust men\u00fc\u00fcst Programmeerimine -&gt; Thonny Python IDE.\r\n\r\nKatsetamiseks loome sellise programmi, mis k\u00e4ivitamisel kuvab meile viieks sekundiks ekaanile praegust kaamerapilt. P\u00e4rast seda viit sekundit l\u00fclitatakse programm v\u00e4lja. Nii saame lihtsalt kontrollida kuidas kaamerapilt v\u00e4lja n\u00e4eb.\r\n\r\nKaamera n\u00f5uab selle juhtimiseks teeki nimega picamera ning sealt seest spetsifiiliselt PiCamera moodulit. Seega kui soovime luua Pythoni programmi, mis kaamerat kontrolliks siis peame alustama oma koodi reaga <code>from picamera import PiCamera<\/code> millega me selle teegi enda programmi laeme.\r\n\r\nJ\u00e4rgmiseks tekib k\u00fcsimus kuidas teha nii, et kaamerapilti n\u00e4idatakse ainult viis sekundit, mitte igavesti. Selleks paigaldame teise teegi nimega time ja sealt spetsiifilisemalt sleep teegi reaga: <code>from time import sleep<\/code>\r\n\r\nJ\u00e4rgmiseks loome uue objekti, mis hakkab meie programmis kujutama kaamerat ning mille abil me kaamerat kontrollida saame. Kaamera objekti saab luua n\u00e4iteks reaga: <code>kaamera = PiCamera()\u00a0<\/code>\r\n\r\nJ\u00e4rgnevalt \u00fctleme kaamerale, et ta hakkaks meile eelvaadet kuvama reaga: <code>kaamera.start_preview()<\/code>\r\n\r\nSeej\u00e4rel peame \u00fctlema mitu sekundit me tahame, et eelvaadet n\u00e4idataks enne selle sulgemist. Seega anname tervele programmile k\u00e4su mitte midagi teha viis sekundit reaga: <code>sleep(5)<\/code>\r\n\r\nK\u00f5ige l\u00f5puks sulgeme eelvaate reaga: <code>kaamera.stop_preview()<\/code>\r\n\r\nKokku peaks meie programm v\u00e4lja n\u00e4gema selline:\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\">from picamera import PiCamera\r\nfrom time import sleep\r\n\r\nkaamera = PiCamera()\r\n\r\nkaamera.start_preview()\r\nsleep(5)\r\nkaamera.stop_preview()<\/pre>\r\n<h2>Pyhoniga pildistamine ja piltidele efektide lisamine<\/h2>\r\nPythoni koodi abil saab juhtida kaamerat ka pilti tegema ja selle pildi seadeid muutma. Lisaks sellele on v\u00f5imalik kaamerat ka videot salvestama panna. Esmalt vaatame kuidas muuta eelmises osas loodud programmi nii, et see teeks p\u00e4rast eelvaadet ka pilti ning salvestaks selle meie Raspberry Pi peale.\r\n\r\nSee on tegelikult v\u00e4ga lihtne, sest piisab ainult sellest, et p\u00e4rast viit sekundit ootamist annaksime kaamerale k\u00e4su pilt teha ning see salvestada. Kaamerale pildistamine k\u00e4sk on n\u00e4iteks: <code>kaamera.capture('pilt.jpg')<\/code> kus kaamera on PiCamera objekt, mille oleme eelnevalt loonud, <code>capture<\/code> on k\u00e4sk millega pilt tehakse ja see salvestatakse ning 'pilt.jpg' on faili nimi, mida salvestatakse. Siinjuures on oluline salvestada pilt l\u00f5puga .jpg, sest see annab operatsioonis\u00fcsteemile m\u00e4rku, et salvestatud faili n\u00e4ol on tegemist pildifailiga.\r\n\r\nLisa eelnevalt loodud programmile koodirida, millega pilt salvestatakse. Pane programm t\u00f6\u00f6le. Kas pilt tehti \u00e4ra? Kas leiad ka kuhu pilt salvestati? Pilt salvestati samasse kohta, kuhu olid varasemalt salvestanud oma Pythoni programmi.\r\n\r\nProovime n\u00fc\u00fcd pilti pisut muuta. Esmalt v\u00f5iksime muuta kaamera heledust ja tumedust. Selle jaoks saab kaamera heledust muuda, kui seadistame p\u00e4rast kaamera eelvaate algust selle heledustaseme. Katsetame seda nii, et lisame \u00fche koodirea p\u00e4rast kaamera eelvaate k\u00e4ivitamist, milleks on n\u00e4iteks <code>kaamera.brightness = 20<\/code>. Kaamera heledustase on 0 ja 100 vahel. Vaikimisi on see seadistatud 50 peale. Lisa see rida oma programmi ja katseta, kas pilt on tumedam? Proovi n\u00fc\u00fcd seadistada pilt hoopis heledamaks, kas toimis?\r\n\r\nJ\u00e4rgmisena proovime lisada pildile m\u00f5nda efekti, mida Raspberry Pi kaamera puhul on mitmeid aga esmalt proovime lisada negatiivi efekti, kus v\u00e4rvid on p\u00f6\u00f6ratud tagurpidi. Selle jaoks saame lisada programmile rea, kus m\u00e4\u00e4rame kaamerale efekti n\u00e4iteks nii: <code>kaamera.image_effect = 'negative'<\/code>. Antud rida peaks asuma taaskord p\u00e4rast seda, kui oleme k\u00e4ivitanud kaamera eelvaate.\r\n\r\nProovi m\u00f5nda muud efekti ka sellest nimekirjast: <code>negative, <\/code><code>solarize, <\/code><code>sketch, <\/code><code>denoise, <\/code><code>emboss, <\/code><code>oilpaint, <\/code><code>hatch, <\/code><code>gpen, <\/code><code>pastel, <\/code><code>watercolor, <\/code><code>film, <\/code><code>blur, <\/code><code>saturation, <\/code><code>colorswap, <\/code><code>washedout, <\/code><code>posterise, <\/code><code>colorpoint, <\/code><code>colorbalance, <\/code><code>cartoon, <\/code><code>deinterlace1, <\/code><code>deinterlace2<\/code>.\r\n\r\nV\u00f5i v\u00f5id proovida hoopis sellist koodi, mis n\u00e4itab sulle k\u00f5ik v\u00f5imalikud efektid ette ning tutvustab neid ka nimepidi:\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\">camera.start_preview()\r\nfor effect in camera.IMAGE_EFFECTS:\r\n    camera.image_effect = effect\r\n    camera.annotate_text = \"Efekt: %s\" % effect\r\n    sleep(3)\r\ncamera.stop_preview()<\/pre>\r\n<h2>Pythoniga video salvestamine<\/h2>\r\nPythoniga on v\u00f5imalik ka v\u00e4ga lihtsalt videot salvestada. Piisab vaid sellest, et Pi kaamerale anda k\u00e4sk salvestamise alustamiseks ning ka selle l\u00f5peatamiseks. Salvestamise alustamiseks on k\u00e4sk n\u00e4iteks <code>kaamera.start_recording('video.h264')<\/code> kus kaamera on meie eelnevalt loodud Raspberry Pi kaamera objekt ning 'video.h264' on salvestamise faili nimi. Kas oskad juba pakkuda milline v\u00f5iks olla k\u00e4sk salvestamise l\u00f5petamiseks? See on loomulikult <code>kaamera.stop_recording()<\/code>.\r\n\r\nSarnaselt piltide tegemisele saame ka video salvetamisel lisada erinevaid efekte. Katseta erinevate efektide lisamisega ka video salvestamisel.","rendered":"<p>T\u00e4nases tunnis tutvume Raspberry Pi kaameramooduliga. Selle raames teeme Raspberry Pi kaameraga pilte, t\u00f6\u00f6tleme neid ning l\u00f5puks proovime luua ka rakendust, mis looks kaamerale kasutajaliidese.<\/p>\n<p>NB! Selles \u00f5ppematerjalis ei ole sisulist vahet, kas kasutada Raspberry Pi 4 v\u00f5i 3 seni kuni kasutad operatsioonis\u00fcsteemi Raspberry Pi OS-i mille esimeses peat\u00fckkis <span style=\"text-align: initial;font-size: 1em\">paigaldasime mis baseerub Debain 11.3 versioonil. Kui sa ei ole kindel milline Debiani versiooni sinu Raspberry Pi-le paigaldatud on siis kirjuta k\u00e4sureale k\u00e4sk <\/span><code style=\"text-align: initial;background-color: #ffffff\">cat \/etc\/debian_version <\/code><span style=\"text-align: initial;font-size: 1em\">kui ilmub rida 11.3 oled \u00f5ige versiooni peal.<\/span><\/p>\n<h2>Rapsberry Pi kaamera \u00fchendamine<\/h2>\n<p>Raspberry Pi kaameramoodul on varustatud lintkaabliga, mis tuleb \u00fchendada Raspberry Pi-ga. Selle jaoks l\u00fclita Raspberry Pi esmalt v\u00e4lja, otsi \u00fcles Rapsberry Pi keskel olev kaamera \u00fchenduskoht ning t\u00f5sta selle peal olev kattev osa ettevatlikult \u00fchenduse eest \u00e4ra. Seej\u00e4rel sisest kaamera nii:<\/p>\n<figure id=\"attachment_1474\" aria-describedby=\"caption-attachment-1474\" style=\"width: 225px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1474 size-medium\" style=\"font-family: Lora, serif;font-size: 1em;font-weight: normal\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-225x300.jpg\" alt=\"\" width=\"225\" height=\"300\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-225x300.jpg 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-768x1024.jpg 768w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-1152x1536.jpg 1152w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-1536x2048.jpg 1536w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-65x87.jpg 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-350x467.jpg 350w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_151046-scaled.jpg 1920w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><figcaption id=\"caption-attachment-1474\" class=\"wp-caption-text\">Raspberry Pi 3 koos \u00fchendatud kaameraga<\/figcaption><\/figure>\n<figure id=\"attachment_1473\" aria-describedby=\"caption-attachment-1473\" style=\"width: 225px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1473 size-medium\" style=\"font-size: 1em;font-family: Lora, serif;font-weight: normal\" src=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-225x300.jpg\" alt=\"\" width=\"225\" height=\"300\" srcset=\"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-225x300.jpg 225w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-768x1024.jpg 768w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-1152x1536.jpg 1152w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-1536x2048.jpg 1536w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-65x87.jpg 65w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-350x467.jpg 350w, https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-content\/uploads\/sites\/21\/2022\/05\/20220503_125230-scaled.jpg 1920w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><figcaption id=\"caption-attachment-1473\" class=\"wp-caption-text\">Raspberry Pi 4 koos \u00fchendatud kaameraga<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>Kui olema kaamera f\u00fc\u00fcsiliselt Raspberry Pi-ga \u00fchendanud siis l\u00fclitame Raspberry Pi sisse. Selle jaoks \u00fchendame Raspberry Pi vooluv\u00f5rku taaskord.<\/p>\n<p>Kui oleme Raspberry Pi t\u00f6\u00f6le saanud siis avame terminali ning sisestame sinna k\u00e4su: <code>sudo raspi-config<\/code> millega saab Raspberry Pi konfiguratsiooni redigeerida. Kui oleme konfiguratsiooni men\u00fc\u00fcm lahti teinud siis j\u00e4rgmise sammuna peame lubama kaamera mooduli, selle jaoks mine Interface Options -&gt; Legacy Camera ning k\u00fcsimusele &#8220;Would you like to enable legacy camera support&#8221; vali vastusevariant Yes v\u00f5i Jah. Seej\u00e4rel men\u00fc\u00fcst lahkudest k\u00fcsib Raspberry Pi, et kas soovid teha kohe restarti ning teeme restardi kohe \u00e4ra.<\/p>\n<p>J\u00e4\u00e4b \u00fcle katsetada, kas meie kaamera hakkas t\u00f6\u00f6le. Selle jaoks avame taaskord terminali ning proovime teha kaameraga pilti. Kasutame k\u00e4sku <code>raspistill -o Desktop\/pilt.jpg<\/code> mille peale peaks avanema kaamera eelvaade ning kolme sekundi p\u00e4rast tegema pilti. Kontrolli, kas t\u00f6\u00f6laua kausta tekkis pilt.<\/p>\n<h2>Pythoni koodiga kaamera juhtimine<\/h2>\n<p>J\u00e4rgnevalt proovime teha kaameraga pilti kasutades Pythoni koodi. Selle jaoks avame \u00fclemisest vasakust men\u00fc\u00fcst Programmeerimine -&gt; Thonny Python IDE.<\/p>\n<p>Katsetamiseks loome sellise programmi, mis k\u00e4ivitamisel kuvab meile viieks sekundiks ekaanile praegust kaamerapilt. P\u00e4rast seda viit sekundit l\u00fclitatakse programm v\u00e4lja. Nii saame lihtsalt kontrollida kuidas kaamerapilt v\u00e4lja n\u00e4eb.<\/p>\n<p>Kaamera n\u00f5uab selle juhtimiseks teeki nimega picamera ning sealt seest spetsifiiliselt PiCamera moodulit. Seega kui soovime luua Pythoni programmi, mis kaamerat kontrolliks siis peame alustama oma koodi reaga <code>from picamera import PiCamera<\/code> millega me selle teegi enda programmi laeme.<\/p>\n<p>J\u00e4rgmiseks tekib k\u00fcsimus kuidas teha nii, et kaamerapilti n\u00e4idatakse ainult viis sekundit, mitte igavesti. Selleks paigaldame teise teegi nimega time ja sealt spetsiifilisemalt sleep teegi reaga: <code>from time import sleep<\/code><\/p>\n<p>J\u00e4rgmiseks loome uue objekti, mis hakkab meie programmis kujutama kaamerat ning mille abil me kaamerat kontrollida saame. Kaamera objekti saab luua n\u00e4iteks reaga: <code>kaamera = PiCamera()\u00a0<\/code><\/p>\n<p>J\u00e4rgnevalt \u00fctleme kaamerale, et ta hakkaks meile eelvaadet kuvama reaga: <code>kaamera.start_preview()<\/code><\/p>\n<p>Seej\u00e4rel peame \u00fctlema mitu sekundit me tahame, et eelvaadet n\u00e4idataks enne selle sulgemist. Seega anname tervele programmile k\u00e4su mitte midagi teha viis sekundit reaga: <code>sleep(5)<\/code><\/p>\n<p>K\u00f5ige l\u00f5puks sulgeme eelvaate reaga: <code>kaamera.stop_preview()<\/code><\/p>\n<p>Kokku peaks meie programm v\u00e4lja n\u00e4gema selline:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\">from picamera import PiCamera\r\nfrom time import sleep\r\n\r\nkaamera = PiCamera()\r\n\r\nkaamera.start_preview()\r\nsleep(5)\r\nkaamera.stop_preview()<\/pre>\n<h2>Pyhoniga pildistamine ja piltidele efektide lisamine<\/h2>\n<p>Pythoni koodi abil saab juhtida kaamerat ka pilti tegema ja selle pildi seadeid muutma. Lisaks sellele on v\u00f5imalik kaamerat ka videot salvestama panna. Esmalt vaatame kuidas muuta eelmises osas loodud programmi nii, et see teeks p\u00e4rast eelvaadet ka pilti ning salvestaks selle meie Raspberry Pi peale.<\/p>\n<p>See on tegelikult v\u00e4ga lihtne, sest piisab ainult sellest, et p\u00e4rast viit sekundit ootamist annaksime kaamerale k\u00e4su pilt teha ning see salvestada. Kaamerale pildistamine k\u00e4sk on n\u00e4iteks: <code>kaamera.capture('pilt.jpg')<\/code> kus kaamera on PiCamera objekt, mille oleme eelnevalt loonud, <code>capture<\/code> on k\u00e4sk millega pilt tehakse ja see salvestatakse ning &#8216;pilt.jpg&#8217; on faili nimi, mida salvestatakse. Siinjuures on oluline salvestada pilt l\u00f5puga .jpg, sest see annab operatsioonis\u00fcsteemile m\u00e4rku, et salvestatud faili n\u00e4ol on tegemist pildifailiga.<\/p>\n<p>Lisa eelnevalt loodud programmile koodirida, millega pilt salvestatakse. Pane programm t\u00f6\u00f6le. Kas pilt tehti \u00e4ra? Kas leiad ka kuhu pilt salvestati? Pilt salvestati samasse kohta, kuhu olid varasemalt salvestanud oma Pythoni programmi.<\/p>\n<p>Proovime n\u00fc\u00fcd pilti pisut muuta. Esmalt v\u00f5iksime muuta kaamera heledust ja tumedust. Selle jaoks saab kaamera heledust muuda, kui seadistame p\u00e4rast kaamera eelvaate algust selle heledustaseme. Katsetame seda nii, et lisame \u00fche koodirea p\u00e4rast kaamera eelvaate k\u00e4ivitamist, milleks on n\u00e4iteks <code>kaamera.brightness = 20<\/code>. Kaamera heledustase on 0 ja 100 vahel. Vaikimisi on see seadistatud 50 peale. Lisa see rida oma programmi ja katseta, kas pilt on tumedam? Proovi n\u00fc\u00fcd seadistada pilt hoopis heledamaks, kas toimis?<\/p>\n<p>J\u00e4rgmisena proovime lisada pildile m\u00f5nda efekti, mida Raspberry Pi kaamera puhul on mitmeid aga esmalt proovime lisada negatiivi efekti, kus v\u00e4rvid on p\u00f6\u00f6ratud tagurpidi. Selle jaoks saame lisada programmile rea, kus m\u00e4\u00e4rame kaamerale efekti n\u00e4iteks nii: <code>kaamera.image_effect = 'negative'<\/code>. Antud rida peaks asuma taaskord p\u00e4rast seda, kui oleme k\u00e4ivitanud kaamera eelvaate.<\/p>\n<p>Proovi m\u00f5nda muud efekti ka sellest nimekirjast: <code>negative, <\/code><code>solarize, <\/code><code>sketch, <\/code><code>denoise, <\/code><code>emboss, <\/code><code>oilpaint, <\/code><code>hatch, <\/code><code>gpen, <\/code><code>pastel, <\/code><code>watercolor, <\/code><code>film, <\/code><code>blur, <\/code><code>saturation, <\/code><code>colorswap, <\/code><code>washedout, <\/code><code>posterise, <\/code><code>colorpoint, <\/code><code>colorbalance, <\/code><code>cartoon, <\/code><code>deinterlace1, <\/code><code>deinterlace2<\/code>.<\/p>\n<p>V\u00f5i v\u00f5id proovida hoopis sellist koodi, mis n\u00e4itab sulle k\u00f5ik v\u00f5imalikud efektid ette ning tutvustab neid ka nimepidi:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\">camera.start_preview()\r\nfor effect in camera.IMAGE_EFFECTS:\r\n    camera.image_effect = effect\r\n    camera.annotate_text = \"Efekt: %s\" % effect\r\n    sleep(3)\r\ncamera.stop_preview()<\/pre>\n<h2>Pythoniga video salvestamine<\/h2>\n<p>Pythoniga on v\u00f5imalik ka v\u00e4ga lihtsalt videot salvestada. Piisab vaid sellest, et Pi kaamerale anda k\u00e4sk salvestamise alustamiseks ning ka selle l\u00f5peatamiseks. Salvestamise alustamiseks on k\u00e4sk n\u00e4iteks <code>kaamera.start_recording('video.h264')<\/code> kus kaamera on meie eelnevalt loodud Raspberry Pi kaamera objekt ning &#8216;video.h264&#8217; on salvestamise faili nimi. Kas oskad juba pakkuda milline v\u00f5iks olla k\u00e4sk salvestamise l\u00f5petamiseks? See on loomulikult <code>kaamera.stop_recording()<\/code>.<\/p>\n<p>Sarnaselt piltide tegemisele saame ka video salvetamisel lisada erinevaid efekte. Katseta erinevate efektide lisamisega ka video salvestamisel.<\/p>\n","protected":false},"author":34,"menu_order":6,"template":"","meta":{"pb_show_title":"on","pb_short_title":"","pb_subtitle":"","pb_authors":[],"pb_section_license":""},"chapter-type":[],"contributor":[],"license":[],"class_list":["post-1456","chapter","type-chapter","status-web-only","hentry"],"part":1419,"_links":{"self":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/1456","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/users\/34"}],"version-history":[{"count":19,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/1456\/revisions"}],"predecessor-version":[{"id":1502,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/1456\/revisions\/1502"}],"part":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/parts\/1419"}],"metadata":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapters\/1456\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/media?parent=1456"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/pressbooks\/v2\/chapter-type?post=1456"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/contributor?post=1456"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/lisamoodulid\/wp-json\/wp\/v2\/license?post=1456"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}