天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當(dāng)前位置:主頁(yè) > 論文百科 > 教案模板 >

樹莓派+Flask實(shí)現(xiàn)視頻流媒體WEB服務(wù)器

發(fā)布時(shí)間:2018-11-14 16:38

在這個(gè)項(xiàng)目中我們將主要學(xué)習(xí)兩個(gè)模塊。

  • 流式傳輸視頻
  • 將視頻集成到Web服務(wù)器上
  • 樹莓派+Flask實(shí)現(xiàn)視頻流媒體WEB服務(wù)器

    材料清單

    1、樹莓派V3 X1
    2、樹莓派3 B型帶NoIR夜間相機(jī) X1
    3、DHT22溫度傳感器 X1
    4、DHT22相對(duì)濕度傳感器 X1
    5、電阻4K7歐姆 X1

    在這個(gè)項(xiàng)目中,我使用的是夜間相機(jī),你也可使用普通的樹莓派相機(jī)(或任何USB相機(jī))來替代。DHT22為可選。在教程中,我將演示如何將視頻流傳輸?shù)絎EB頁(yè)面,并用傳感器來顯示歷史數(shù)據(jù)。

    安裝攝像機(jī)

    樹莓派+Flask實(shí)現(xiàn)視頻流媒體WEB服務(wù)器


    1、關(guān)閉樹莓派,將相機(jī)安裝在其特定端口上,如下所示:

    樹莓派+Flask實(shí)現(xiàn)視頻流媒體WEB服務(wù)器


    2、打開你的樹莓派并轉(zhuǎn)到樹莓派配置工具的主菜單上,并確認(rèn)相機(jī)接口是否開啟:
    如果你需要開啟它,請(qǐng)按[確定]并重新啟動(dòng)你的樹莓派。

    樹莓派+Flask實(shí)現(xiàn)視頻流媒體WEB服務(wù)器


    做一個(gè)簡(jiǎn)單的測(cè)試來驗(yàn)證一切是否正常:

    raspistill -o /Desktop/image.png

    你會(huì)看到,在到你樹莓派桌面上會(huì)出現(xiàn)一個(gè)圖像圖標(biāo)。 點(diǎn)擊打開它。 如果出現(xiàn)圖像,說明已準(zhǔn)備好流式傳輸視頻!如果你想獲得更多關(guān)于相機(jī)的信息,可點(diǎn)擊燝etting started with picamera.。

    安裝FLASK

    有好幾種方法可以流式傳輸視頻。我認(rèn)為最好的(也是“更輕松”)方法是使用Miguel Grinberg開發(fā)的Flask。有關(guān)Flask如何執(zhí)行此操作的詳細(xì)說明,請(qǐng)參閱他的精彩教程:flask-video-streaming-revisited。

    在我這個(gè)教程中:Python Web服務(wù)器將借助Flask和樹莓派。我們要更詳細(xì)地了解了Flask是如何工作、如何實(shí)現(xiàn)Web服務(wù)器以及從傳感器上捕獲數(shù)據(jù)并在網(wǎng)頁(yè)上顯示其狀態(tài)。在本教程中的第一部分就是發(fā)送到我們前端的數(shù)據(jù)的視頻流。

    創(chuàng)建一個(gè)Web服務(wù)器環(huán)境:
    首先要做的是在你的樹莓派上安裝Flask。 如果沒有,,去終端并輸入:

    sudo apt-get install python3-flask

    當(dāng)你開始一個(gè)新項(xiàng)目時(shí),最好的辦法就是創(chuàng)建一個(gè)文件夾來保存你的文件。 例如:
    回到主頁(yè),到你的工作目錄:

    cd Documents

    新建文件夾,例如:

    mkdir camWebServer

    按照上面的命令,創(chuàng)建一個(gè)名為“camWebServer”的文件夾,并在這里保存我們的python腳本:

    /home/pi/Document/ camWebServer

    現(xiàn)在,在這個(gè)文件夾上,我們將創(chuàng)建兩個(gè)子文件夾:靜態(tài)的CSS、最終的JavaScript文件以及HTML文件的模板。 轉(zhuǎn)到你的新創(chuàng)建的文件夾:

    cd camWebServer

    并創(chuàng)建2個(gè)新的子文件夾:

    mkdir static

    mkdir templates

    最終的目錄“樹”,如下所示:

    ├── Documents ├── camWebServer ├── templates └── static

    完成!讓我們?cè)趧?chuàng)建好的的環(huán)境下,用Python Web 服務(wù)器應(yīng)用程序來流式傳輸視頻。

    創(chuàng)建視頻流媒體服務(wù)器

    樹莓派+Flask實(shí)現(xiàn)視頻流媒體WEB服務(wù)器


    首先,下載Miguel Grinberg的樹莓派相機(jī)軟件包:camera_pi.py并將其保存在創(chuàng)建的目錄camWebServer上。 這是我們項(xiàng)目的核心,Miguel的安裝包相當(dāng)?shù)牟诲e(cuò)。
    現(xiàn)在,使用Flask,讓我們調(diào)整原始的Miguel的web服務(wù)器應(yīng)用程序(app.py),創(chuàng)建一個(gè)特定的python腳本來渲染我們的視頻。 我們可以命名為appCam.py:

    from flask import Flask, render_template, Response # Raspberry Pi camera module (requires picamera package, developed by Miguel Grinberg) from camera_pi import Camera app = Flask(__name__) @app.route('http://shumeipai.nxez.com/') def index(): """Video streaming home page.""" return render_template('index.html') def gen(camera): """Video streaming generator function.""" while True: frame = camera.get_frame() yield (b'--frame\r\n' b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n') @app.route('/video_feed') def video_feed(): """Video streaming route. Put this in the src attribute of an img tag.""" return Response(gen(Camera()), mimetype='multipart/x-mixed-replace; boundary=frame') if __name__ == '__main__': app.run(host='0.0.0.0', port =80, debug=True, threaded=True)

    以上腳本將你的攝像機(jī)視頻流式傳輸?shù)絠ndex.html頁(yè)面上,如下所示:



    本文編號(hào):2331725

    資料下載
    論文發(fā)表

    本文鏈接:http://sikaile.net/wenshubaike/jajx/2331725.html


    Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

    版權(quán)申明:資料由用戶5aaf5***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com