在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何將Raspberry Pi相機(jī)用作Bash腳本的一部分?

電子設(shè)計(jì) ? 來源:電路城 ? 作者:電路城 ? 2021-04-28 09:41 ? 次閱讀

Raspberry Pi相機(jī)非常有趣。它可用于傻瓜照片,定格動(dòng)畫和計(jì)算機(jī)視覺項(xiàng)目。

為了介紹如何將相機(jī)用作Bash腳本的一部分,我們將使用帶有按鈕的相機(jī),該按鈕將為圖像選擇一個(gè)隨機(jī)濾鏡。這些濾鏡中的一些可以增強(qiáng)圖像,有些可以將其更改為卡通,其他則可以產(chǎn)生藝術(shù)效果。

在The Pi Cast的最新一集中,我們使用Python創(chuàng)建了該項(xiàng)目的版本。在這里,您可以看到官方Raspberry Pi相機(jī)可能產(chǎn)生的所有圖像效果。

Bash終端是我們的編程環(huán)境,它是引入功能強(qiáng)大的腳本語(yǔ)言的好方法,該腳本語(yǔ)言經(jīng)常被其他語(yǔ)言所忽視。

我們?cè)谠擁?xiàng)目中使用了Raspberry Pi 4,但也可以使用運(yùn)行最新Raspberry Pi OS的任何其他Raspberry Pi模型來創(chuàng)建該項(xiàng)目。

對(duì)于此項(xiàng)目,您將需要:

? 任何樹莓派

? 任何Raspberry Pi攝像頭模塊(盡管沒有USB網(wǎng)絡(luò)攝像頭)

? 最新的Raspberry Pi操作系統(tǒng)

? 面包板

? 2x公對(duì)母跳線

? 一個(gè)按鈕

設(shè)置Raspberry Pi相機(jī)

如果您已經(jīng)熟悉如何設(shè)置Pi相機(jī)模塊,則可以跳過。這些步驟將適用于所有Raspberry Pi相機(jī)模塊(包括第三方模塊)。

關(guān)閉Raspberry Pi的電源

1.輕輕向上提起塑料鎖,打開攝像頭端口

2.插入帶狀連接器,使藍(lán)色卡舌面向USB /以太網(wǎng)端口。

3.合上連接器上的鎖,并輕輕拉動(dòng)它以確保其就位。

4.打開Raspberry Pi的電源,然后轉(zhuǎn)到“首選項(xiàng)” 》》“ Raspberry Pi配置”。

5.單擊“接口”選項(xiàng)卡中“攝像機(jī)”的“啟用”按鈕。

6.單擊確定,然后重新啟動(dòng)Pi。

7.打開終端,然后鍵入以下命令以快速拍照以測(cè)試相機(jī)。

$ raspistill -o test.jpg

經(jīng)過五秒鐘后,將拍攝圖像并將其另存為test.jpg。在繼續(xù)之前,使用文件管理器檢查圖像是否正確。

接線按鈕

一個(gè)有時(shí)被稱為“瞬時(shí)開關(guān)”的按鈕將用于觸發(fā)我們的項(xiàng)目。為此,我們需要通過面包板將按鈕連接到Raspberry Pi的GPIO。

1.將按鈕插入面包板,使支腿越過面包板的中央通道。

2.將公對(duì)母跳線的公端與面包板上按鈕的左上腿放在同一列中。將另一端連接 到Raspberry Pi的3.3V引腳。這是離Micro SD卡插槽最近的插針。

3.以與以前相同的方式,將按鈕的右上角連接到Raspberry Pi的GPIO 17(左列的六個(gè)引腳)。

為Raspberry Pi隨機(jī)圖像編寫代碼

編寫B(tài)ash代碼是在計(jì)算機(jī)上編寫任務(wù)腳本的好方法。Bash是一種功能強(qiáng)大的腳本語(yǔ)言,可以自動(dòng)執(zhí)行許多任務(wù)。通過Raspberry Pi,我們還可以使用它與GPIO交互。

1.啟動(dòng)Geany(從菜單中)并創(chuàng)建一個(gè)名為random-art.sh的新文件,并記住經(jīng)常保存。

2.輸入第一行代碼,這將告訴代碼在哪里可以找到Bash解釋器。

#!/bin/bash

3. 使用echo命令,我們將值寫入兩個(gè)文件。第一個(gè)使能GPIO 17,第二個(gè)將GPIO 17設(shè)置為輸入,默認(rèn)情況下該輸入為關(guān)閉(0)。

echo “17” 》 /sys/class/gpio/export

echo “in” 》 /sys/class/gpio/gpio17/direction

4. 輸入一個(gè)用于存儲(chǔ)此項(xiàng)目中所有可能的圖像效果的數(shù)組。總共有20種效果,每種效果在數(shù)組中都有自己的位置,這使我們的代碼可以根據(jù)隨機(jī)數(shù)選擇特定的效果。

array[0]=“none”

array[1]=“negative”

array[2]=“solarise”

array[3]=“sketch”

array[4]=“denoise”

array[5]=“emboss”

array[6]=“oilpant”

array[7]=“hatch”

array[8]=“gpen”

array[9]=“pastel”

array[10]=“watercolour”

array[11]=“film”

array[12]=“blur”

array[13]=“saturation”

array[14]=“colourswap”

array[15]=“washedout”

array[16]=“posterise”

array[17]=“colourpoint”

array[18]=“colourbalance”

array[19]=“cartoon”

5.創(chuàng)建一個(gè)名為size的變量以存儲(chǔ)陣列中的效果數(shù)。此變量將存儲(chǔ)命令的輸出(通過{}),該命令檢查數(shù)組的長(zhǎng)度。

size=${#array[@]}

6.使用while true循環(huán)不斷運(yùn)行代碼的下一部分。

while true; do

7.創(chuàng)建另一個(gè)變量index,該變量將存儲(chǔ)一個(gè)介于零和數(shù)組長(zhǎng)度(在本例中為20)之間的隨機(jī)數(shù)。

index=$(($RANDOM % $size))

8. 打印隨機(jī)選擇的圖像效果以進(jìn)行調(diào)試。

echo ${array[$index]}

9.檢查連接到GPIO 17的按鈕的當(dāng)前狀態(tài),并將其保存到變量data中。如果未按下,它將具有默認(rèn)狀態(tài)off,即0。按下時(shí),該值將變?yōu)閛n,即1。這是我們相機(jī)項(xiàng)目的觸發(fā)器。

data=“$(cat /sys/class/gpio/gpio17/value)”

10.使用條件測(cè)試來檢查存儲(chǔ)在數(shù)據(jù)變量中的值。如果值為1,則已按下按鈕。

if [ ${data} = “1” ]; then

11.按下按鈕后,下一步將創(chuàng)建一個(gè)時(shí)間戳并將其保存到名為TIME的變量中。

TIME=$(date +“%Y-%m-%d_%H%M%S”)

12.使用圖像效果拍照,然后使用時(shí)間戳記作為文件名保存圖像。

raspistill -ifx ${array[$index]} -o $TIME.jpg

13.關(guān)閉條件循環(huán),然后關(guān)閉while true循環(huán)。

fi

done

保存代碼。

完整的代碼:

#!/bin/bash

echo “17” 》 /sys/class/gpio/export

echo “in” 》 /sys/class/gpio/gpio17/direction

array[0]=“none”

array[1]=“negative”

array[2]=“solarise”

array[3]=“sketch”

array[4]=“denoise”

array[5]=“emboss”

array[6]=“oilpant”

array[7]=“hatch”

array[8]=“gpen”

array[9]=“pastel”

array[10]=“watercolour”

array[11]=“film”

array[12]=“blur”

array[13]=“saturation”

array[14]=“colourswap”

array[15]=“washedout”

array[16]=“posterise”

array[17]=“colourpoint”

array[18]=“colourbalance”

array[19]=“cartoon”

size=${#array[@]}

while true; do

index=$(($RANDOM % $size))

echo ${array[$index]}

data=“$(cat /sys/class/gpio/gpio17/value)”

if [ ${data} = “1” ]; then

TIME=$(date +“%Y-%m-%d_%H%M%S”)

raspistill -ifx ${array[$index]} -o $TIME.jpg

fi

done

運(yùn)行代碼

要使代碼可執(zhí)行,請(qǐng)打開終端并導(dǎo)航到包含代碼的文件夾。輸入此命令。

$ chmod +x random-art.sh

要運(yùn)行命令,請(qǐng)?jiān)诮K端類型中

。/random-art.sh

按下按鈕觸發(fā)代碼以選擇隨機(jī)圖像效果并拍照!
責(zé)任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 連接器
    +關(guān)注

    關(guān)注

    99

    文章

    15233

    瀏覽量

    139334
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    8146

    瀏覽量

    270932
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7632

    瀏覽量

    90213
  • 相機(jī)
    +關(guān)注

    關(guān)注

    4

    文章

    1434

    瀏覽量

    54488
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Protel99se 安裝好了,一部分ddb文件能打開一部分pcb格式打不開

    Protel99se 安裝好了,一部分ddb文件能打開,一部分pcb格式打不開,該怎么辦
    發(fā)表于 12-21 20:14

    保護(hù)您的 IP 核——第一部分軟 IP——前言

    保護(hù)您的 IP 核——第一部分軟 IP——前言 隨著全球化硬件設(shè)計(jì)和制造過程的激增以及IP供應(yīng)商之間的競(jìng)爭(zhēng),IP盜版/假冒、虛假所有權(quán)等威脅正在加劇。因此,保護(hù)?? IP 核設(shè)計(jì)的要求及其代表的專有
    發(fā)表于 02-23 11:59

    ISDB放送標(biāo)準(zhǔn)中的一部分

    ISDB放送標(biāo)準(zhǔn)中的一部分,是日本的番組表顯示相關(guān)的。
    發(fā)表于 11-16 18:52 ?2次下載

    作為其最新教育推動(dòng)的一部分 微軟Immersive Reader引入了虛擬現(xiàn)實(shí)

    作為其最新教育推動(dòng)的一部分,微軟Immersive Reader引入虛擬現(xiàn)實(shí)。 該公司在BETT UK上展示了用于VR的Immersive Reader,展示了用戶如何將Immersive Reader工具與他們的VR頭顯配合
    發(fā)表于 01-23 16:08 ?1006次閱讀

    有時(shí)你需要點(diǎn)收獲第一部分

    有時(shí)你需要點(diǎn)收獲第一部分
    發(fā)表于 04-20 10:31 ?1次下載
    有時(shí)你需要<b class='flag-5'>一</b>點(diǎn)收獲第<b class='flag-5'>一部分</b>

    一部分、硬件設(shè)計(jì)

    一部分、硬件設(shè)計(jì)我把個(gè)硬件系統(tǒng)分為五個(gè)單元:電源單元、單片機(jī)單元、輸入單元、輸出單元、通信單元。如下圖:
    發(fā)表于 12-09 12:36 ?16次下載
    第<b class='flag-5'>一部分</b>、硬件設(shè)計(jì)

    Raspberry Pi Bash Shell 腳本簡(jiǎn)介

      拋開潛在的麻煩不談,Bash 可以是個(gè)非常強(qiáng)大的工具,讓您可以自動(dòng)執(zhí)行各種任務(wù)。在即將發(fā)表的文章中,我展示如何使用 Bash 腳本
    的頭像 發(fā)表于 08-15 15:08 ?1448次閱讀
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> <b class='flag-5'>Bash</b> Shell <b class='flag-5'>腳本</b>簡(jiǎn)介

    為提高效率——如何將雙向功率流集成到UPS設(shè)計(jì)中(第一部分

    為提高效率——如何將雙向功率流集成到UPS設(shè)計(jì)中(第一部分
    發(fā)表于 11-01 08:27 ?0次下載
    為提高效率——<b class='flag-5'>如何將</b>雙向功率流集成到UPS設(shè)計(jì)中(第<b class='flag-5'>一部分</b>)

    Raspberry Pi和傳感器制作“可自動(dòng)營(yíng)造舒適空間的裝置” 第四部分?劇終篇

    第1回:用Raspberry Pi和傳感器制作“可自動(dòng)營(yíng)造舒適空間的裝置” 第一部分第2回:用Raspberry Pi和傳感器制作“可自動(dòng)營(yíng)
    的頭像 發(fā)表于 02-24 10:17 ?1002次閱讀
    用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>和傳感器制作“可自動(dòng)營(yíng)造舒適空間的裝置” 第四<b class='flag-5'>部分</b>?劇終篇

    Raspberry Pi和傳感器制作“可自動(dòng)營(yíng)造舒適空間的裝置” 第二部分

    大家好,我是吉田!我們這次要?jiǎng)?chuàng)作款讓家中更舒適、讓在家辦公更高效的設(shè)備,本文是第二部分。第一部分介紹了制作綱要和所需部件。這次我們實(shí)際連接Bluetooth傳感器和
    的頭像 發(fā)表于 03-01 11:15 ?748次閱讀
    用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>和傳感器制作“可自動(dòng)營(yíng)造舒適空間的裝置” 第二<b class='flag-5'>部分</b>

    通過Twython在Raspberry Pi上發(fā)推文!(第2部分

    歡迎來到通過“Twython”在Raspberry Pi上發(fā)推文的第2部分。和上次樣,我們遵循Ras
    的頭像 發(fā)表于 03-01 10:19 ?923次閱讀
    通過Twython在<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>上發(fā)推文!(第2<b class='flag-5'>部分</b>)

    使用Raspberry Pi 3自制智能相框和日歷—第二部分

    本教程的第二部分將帶您完成構(gòu)建智能相框和日歷的框架、連接PIR運(yùn)動(dòng)傳感器和控制相框幻燈片顯示向日歷顯示的過渡這些步驟。該項(xiàng)目繼續(xù)使用本教程的使用Raspberry Pi 3自制智能相
    的頭像 發(fā)表于 02-24 17:51 ?1687次閱讀
    使用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 3自制智能相框和日歷—第二<b class='flag-5'>部分</b>

    使用Raspberry Pi 3自制智能相框和日歷—第一部分

    該項(xiàng)目將使用具有Raspbian Jessie操作系統(tǒng)的Raspberry Pi 3 B型進(jìn)行構(gòu)建。我指導(dǎo)您完成Raspberry Pi
    的頭像 發(fā)表于 02-24 17:08 ?1563次閱讀
    使用<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 3自制智能相框和日歷—第<b class='flag-5'>一部分</b>

    基于Raspberry Pi的DIY無人機(jī)第3部分–FPV設(shè)置指南

    本文是我們Raspberry Pi四軸飛行器系列的最后一部分。有關(guān)本教程的其他部分,請(qǐng)參考《DIYRaspberry Pi無人機(jī):機(jī)械構(gòu)造–
    的頭像 發(fā)表于 02-24 17:46 ?5856次閱讀
    基于<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>的DIY無人機(jī)第3<b class='flag-5'>部分</b>–FPV設(shè)置指南

    FPGA立體相機(jī)設(shè)置-第一部分

    電子發(fā)燒友網(wǎng)站提供《FPGA立體相機(jī)設(shè)置-第一部分.zip》資料免費(fèi)下載
    發(fā)表于 06-29 09:27 ?0次下載
    FPGA立體<b class='flag-5'>相機(jī)</b>設(shè)置-第<b class='flag-5'>一部分</b>
    主站蜘蛛池模板: 免费拍拍视频 | 国产小视频免费 | 色黄视频 | 天天射天天搞 | 色综合天天五月色 | 在线视频一区二区三区 | 欧美一级特黄啪啪片免费看 | 日本高清在线3344www | 91大神视频网站 | 日本在线观看成人小视频 | 亚洲一二三区在线观看 | 色视频www在线播放国产人成 | 五月天婷婷在线视频 | 天天射日 | 在线看欧美成人中文字幕视频 | 黄色网在线看 | 女人午夜啪啪性刺激免费看 | 91精品国产色综合久久不卡蜜 | 国产精品视频一区二区三区 | 黄色有码视频 | 国模极品一区二区三区 | 精品久久久久久午夜 | 我要看黄色一级毛片 | 国产精品久久国产三级国不卡顿 | 日本高清加勒比 | 久久青草国产精品一区 | 日本大片免费一级 | 都市激情综合网 | eeuss影院www影院夜场 | 欧美性久久 | 人人爽人人爱 | 狼人 成人 综合 亚洲 | 人人爱人人爽 | 天天做天天爱天天干 | 亚洲午夜精品一区二区 | 天堂资源站 | 天天射天天干天天插 | 男人的天堂网在线 | h在线国产 | 久久久久久久综合狠狠综合 | 成人性视频网站 |