国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01

這篇具有很好參考價(jià)值的文章主要介紹了【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

歡迎關(guān)注『OpenCV DNN @ Youcans』系列,持續(xù)更新中
【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01


本系列從零開(kāi)始,詳細(xì)講解使用 Flask 框架構(gòu)建 OpenCV DNN 模型的 Web 應(yīng)用程序。

將OpenCV DNN模型部署到Web端,不需要安裝任何依賴,只需要訪問(wèn)Web地址就可以訪問(wèn)和運(yùn)行應(yīng)用程序。

面向Python程序的Web框架可以用于部署應(yīng)用程序。Web框架使開(kāi)發(fā)者可以專注于應(yīng)用程序的核心算法和業(yè)務(wù)邏輯,而不必具體處理底層細(xì)節(jié),例如協(xié)議、套接字或進(jìn)程和線程管理。


1. 面向Python程序的Web框架

Web 框架主要用于網(wǎng)站開(kāi)發(fā),為開(kāi)發(fā)者實(shí)現(xiàn)業(yè)務(wù)邏輯提供了一套通用方法,可以實(shí)現(xiàn)數(shù)據(jù)的交互和業(yè)務(wù)功能的完善。

開(kāi)發(fā)者在基于Web框架實(shí)現(xiàn)業(yè)務(wù)邏輯時(shí),可以專注于應(yīng)用程序的核心算法和業(yè)務(wù)邏輯,而不必具體處理底層細(xì)節(jié),例如協(xié)議、套接字或進(jìn)程和線程管理。在進(jìn)行數(shù)據(jù)緩存、數(shù)據(jù)庫(kù)訪問(wèn)、數(shù)據(jù)安全校驗(yàn)等方面,不需要自己重新實(shí)現(xiàn)。

Python的開(kāi)發(fā)速度和靈活性使其可以很容易地快速建立和運(yùn)行網(wǎng)站。,Python在web框架中提供了大量的選擇和自由度。

Django
Django是一個(gè)免費(fèi)的、開(kāi)源的全棧Python Web 開(kāi)發(fā)框架,開(kāi)發(fā)快速、代碼較少、可擴(kuò)展性強(qiáng)。Django 采用 MTV(Model、Template、View)模型組織資源,框架功能豐富,模板擴(kuò)展選擇最多,適合大型網(wǎng)站開(kāi)發(fā)。Django的學(xué)習(xí)曲線相對(duì)陡峭,靈活度較差。

Flask
Flask 是一個(gè)Python 編寫(xiě)的Web微框架,讓我們可以用Python語(yǔ)言快速實(shí)現(xiàn)Web服務(wù)。只提供Web服務(wù)器支持,不提供全棧開(kāi)發(fā)支持。Flask 非常輕量、學(xué)習(xí)簡(jiǎn)單,適合小微原型系統(tǒng)的開(kāi)發(fā)。

Bottle
Bottle 是一個(gè)用于 Python 的快速、簡(jiǎn)單和輕量級(jí)的 WSGI 微型網(wǎng)絡(luò)框架。它作為單個(gè)文件模塊分發(fā),除了 Python 標(biāo)準(zhǔn)庫(kù)之外沒(méi)有任何依賴項(xiàng)。支持干凈和動(dòng)態(tài)的 URL。

Flask 是非全??蚣?,F(xiàn)lask 具有以下依賴項(xiàng):

  1. Werkzeug WSGI 工具包: WSGI 實(shí)用程序庫(kù)
  2. Jinja2:模板引擎

Django 和 Flask 均可用于部署開(kāi)發(fā)計(jì)算機(jī)視覺(jué)和深度學(xué)習(xí)應(yīng)用程序,但 Flask 的學(xué)習(xí)曲線更平滑,且 Flask 專注于極簡(jiǎn)主義。


2. Flask 框架的安裝與使用

2.1 Flask 安裝

為了使用 Flask 構(gòu)建計(jì)算機(jī)視覺(jué) Web 應(yīng)用程序,首先進(jìn)行安裝:

$ pip3 install flask

安裝完成后,通過(guò)控制臺(tái)命令cmd或 Anaconda Prompt (miniconda)進(jìn)入命令行進(jìn)行測(cè)試。

$ python

>>> import  flask
>>> print(flask.__version__)
2.3.1

【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01


2.2 Flask 框架例程

使用Flask框架編寫(xiě)一個(gè)顯示“Hello Flask!”的web程序,介紹如何配置、調(diào)試Flask框架。

(1)新建一個(gè)Flask項(xiàng)目,項(xiàng)目的文件樹(shù)如下。

---項(xiàng)目文件名\
    |---static\
    |---templates\
    |--- server.py

項(xiàng)目默認(rèn)配置建立static和templates目錄,static目錄用來(lái)存放靜態(tài)資源,例如圖片、js、css文件等,templates目錄存放模板文件。網(wǎng)站邏輯保存在Python程序文件server.py中。

# server.py
from flask import Flask  # 導(dǎo)入 Flask 包

app = Flask(__name__)  # 用當(dāng)前腳本名稱實(shí)例化Flask對(duì)象

@app.route('/')  # 將函數(shù)綁定到指定URL
def hello():
    return 'Hello Flask!'

if __name__ == '__main__':
    app.run()  # 啟動(dòng)一個(gè)本地開(kāi)發(fā)服務(wù)器,激活該網(wǎng)頁(yè)

例程首先創(chuàng)建 Flask 類的實(shí)例,作為Web服務(wù)器的網(wǎng)關(guān)接口(Web Server Gateway Interface, WSGI)。然后,route()裝飾器用于指定URL的觸發(fā)函數(shù),將觸發(fā)函數(shù)綁定到指定URL。最后,函數(shù)返回在瀏覽器中顯示的內(nèi)容。

(2)運(yùn)行Python程序。

運(yùn)行程序server.py,在控制臺(tái)顯示如下的消息,表明Web服務(wù)器已啟動(dòng)。

$ python server.py

* Serving Flask app 'server'
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on http://127.0.0.1:5000/
(Press CTRL+C to quit)

(3)在瀏覽器中訪問(wèn)http://127.0.0.1:5000/。
這將對(duì)服務(wù)器發(fā)送GET請(qǐng)求,該請(qǐng)求將返回相應(yīng)的消息:

127.0.0.1 - - [26/Apr/2023 21:42:13] “GET / HTTP/1.1” 200 -
127.0.0.1 - - [26/Apr/2023 21:42:13] “GET /favicon.ico HTTP/1.1” 404 -

【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01


2.3 綁定IP和端口

雖然flask命令可以啟動(dòng)一個(gè)本地服務(wù)器,但是每次程序修改后都需要手動(dòng)重啟服務(wù)器。將應(yīng)用對(duì)象的debug屬性設(shè)為T(mén)rue,可以啟用Debug模式。

app.run(debug=True)

在Debug模式下,修改應(yīng)用代碼之后服務(wù)器會(huì)自動(dòng)重啟,當(dāng)應(yīng)用出錯(cuò)時(shí)還會(huì)提供一個(gè)調(diào)試器。重新運(yùn)行Python程序,在控制臺(tái)將顯示如下的消息。

* Serving Flask app 'server2'
* Debug mode: on 

* Restarting with stat
 * Debugger is active!
 * Debugger PIN: 110-148-621

Flask默認(rèn)的綁定IP為127.0.0.1,端口為5000。通過(guò)設(shè)置參數(shù)host可以自定義IP地址,設(shè)置參數(shù)port可以自定義端口。

app.run(host=‘0.0.0.0’)

重新運(yùn)行Python程序,在控制臺(tái)將顯示如下的消息。

 * Running on all addresses (0.0.0.0)
 * Running on http://127.0.0.1:5000
 * Running on http://192.168.3.249:5000

這樣就可以從局域網(wǎng)內(nèi)的其他設(shè)備執(zhí)行請(qǐng)求。例如,從連接局域網(wǎng)的手機(jī)訪問(wèn)IP地址:http://192.168.3.249:5000,將對(duì)服務(wù)器發(fā)送GET請(qǐng)求,并在手機(jī)瀏覽器中顯示網(wǎng)頁(yè)內(nèi)容。

【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01


2.4 Flask路由

Web框架使用路由技術(shù)直接訪問(wèn)所需的頁(yè)面,而無(wú)需從主頁(yè)導(dǎo)航。

Flask中使用route()裝飾器將應(yīng)用程序的URL綁定到函數(shù),可以實(shí)現(xiàn)路由訪問(wèn)。例如:@app.route('/hello')將URL/hello規(guī)則綁定到hello_world()函數(shù)。

@app.route('/hello')
def hello_world():
   return 'hello world'

用戶訪問(wèn) http://localhost:5000/hello,將在瀏覽器中顯示hello_world()函數(shù)的輸出。
application對(duì) 象的add_url_rule()函數(shù)也可用于將URL與函數(shù)綁定,如上例所示,使用route()裝飾器的目的也由以下表示:

def hello_world():
   return 'hello world'
app.add_url_rule('/', 'hello', hello_world)

通過(guò)向規(guī)則參數(shù)添加變量部分,可以動(dòng)態(tài)構(gòu)建URL。此變量部分標(biāo)記為<converter:variable_name>。它作為關(guān)鍵字參數(shù)傳遞給與規(guī)則相關(guān)聯(lián)的函數(shù)。
例如,在下面的例程中,route()裝飾器的規(guī)則參數(shù)包含附加到URL’/hello’的<name>。

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello world!'

@app.route('/user')
def hello_user():
    return 'Hello user!'

@app.route('/hello/<name>')
def hello_name(name):
    return 'Hello %s!' % name

if __name__ == '__main__':
    app.run(host='0.0.0.0')

如果在瀏覽器中輸入http://localhost:5000/hello/youcans作為URL,則’youcans’ 將作為參數(shù)提供給 hello_name()函數(shù)。該請(qǐng)求將返回相應(yīng)的消息:

 * Running on all addresses (0.0.0.0)
 * Running on http://127.0.0.1:80
 * Running on http://192.168.3.249:80
Press CTRL+C to quit
127.0.0.1 - - [27/Apr/2023 09:06:27] "GET /hello/youcans HTTP/1.1" 200 -
127.0.0.1 - - [27/Apr/2023 09:06:27] "GET /favicon.ico HTTP/1.1" 404 -

【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01

【本節(jié)完】
下節(jié)內(nèi)容:使用OpenCV+Flask部署Web應(yīng)用程序。


歡迎關(guān)注『OpenCV DNN @ Youcans』系列,持續(xù)更新中

版權(quán)聲明:
youcans@xupt 原創(chuàng)作品,轉(zhuǎn)載必須標(biāo)注原文鏈接:
【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01 (https://blog.csdn.net/youcans/article/details/130785571)

Copyright 2023 youcans, XUPT
Crated:2023-05-20

文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-464677.html

到了這里,關(guān)于【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 05

    【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 05

    歡迎關(guān)注『OpenCV DNN @ Youcans』系列,持續(xù)更新中 本系列從零開(kāi)始,詳細(xì)講解使用 Flask 框架構(gòu)建 OpenCV DNN 模型的 Web 應(yīng)用程序。 本節(jié)介紹用 Flask 構(gòu)建流媒體服務(wù)器,向服務(wù)器發(fā)送請(qǐng)求可以播放本地視頻文件。 本例程使用Flask框架構(gòu)建一個(gè)視頻流服務(wù)器,通過(guò)OpenCV讀取本地視頻

    2024年02月07日
    瀏覽(64)
  • 【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 02

    【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 02

    歡迎關(guān)注『OpenCV DNN @ Youcans』系列,持續(xù)更新中 【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 01 【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 02 本系列從零開(kāi)始,詳細(xì)講解使用 Flask 框架構(gòu)建 OpenCV DNN 模型的 Web 應(yīng)用程序。 本節(jié)介紹使用OpenCV+Flask將計(jì)算機(jī)視覺(jué)應(yīng)用程序部署到Web端。 我們

    2024年02月11日
    瀏覽(20)
  • 【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 08

    【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 08

    歡迎關(guān)注『OpenCV DNN @ Youcans』系列,持續(xù)更新中 本系列從零開(kāi)始,詳細(xì)講解使用 Flask 框架構(gòu)建 OpenCV DNN 模型的 Web 應(yīng)用程序。 上節(jié)介紹使用Flask框架構(gòu)建一個(gè)視頻流服務(wù)器,通過(guò)OpenCV捕獲攝像頭的實(shí)時(shí)畫(huà)面,使用人臉檢測(cè)級(jí)聯(lián)分類器進(jìn)行人臉識(shí)別,并在視頻圖像中標(biāo)記檢測(cè)到

    2024年02月09日
    瀏覽(40)
  • 【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 07

    【OpenCV DNN】Flask 視頻監(jiān)控目標(biāo)檢測(cè)教程 07

    歡迎關(guān)注『OpenCV DNN @ Youcans』系列,持續(xù)更新中 本系列從零開(kāi)始,詳細(xì)講解使用 Flask 框架構(gòu)建 OpenCV DNN 模型的 Web 應(yīng)用程序。 本節(jié)介紹使用Flask框架構(gòu)建一個(gè)視頻流服務(wù)器,通過(guò)OpenCV捕獲攝像頭的實(shí)時(shí)畫(huà)面,使用人臉檢測(cè)級(jí)聯(lián)分類器進(jìn)行人臉識(shí)別,并在視頻圖像中標(biāo)記檢測(cè)到

    2024年02月13日
    瀏覽(42)
  • 基于視頻技術(shù)與AI檢測(cè)算法的體育場(chǎng)館遠(yuǎn)程視頻智能化監(jiān)控方案

    基于視頻技術(shù)與AI檢測(cè)算法的體育場(chǎng)館遠(yuǎn)程視頻智能化監(jiān)控方案

    一、方案背景 近年來(lái),隨著居民體育運(yùn)動(dòng)意識(shí)的增強(qiáng),體育場(chǎng)館成為居民體育鍛煉的重要場(chǎng)所。但使用場(chǎng)館內(nèi)的器材時(shí),可能發(fā)生受傷意外,甚至牽扯責(zé)任賠償糾紛問(wèn)題。同時(shí),物品丟失、人力巡邏成本問(wèn)題突出,體育場(chǎng)館在給居民提供運(yùn)動(dòng)場(chǎng)地的同時(shí),還需特別關(guān)注場(chǎng)館內(nèi)

    2024年02月07日
    瀏覽(18)
  • opencv系列(1)--使用opencv和Qt6做一個(gè)視頻監(jiān)控器人臉識(shí)別

    這個(gè)程序是自己的下班之后,看看那個(gè)壞東西想來(lái)偷看我的電腦。我就隨手做的一個(gè)程序。 1.能都顯示攝像頭的內(nèi)容。 2.如果有人進(jìn)入攝像頭。 3.利用opencv的模型識(shí)別人臉,識(shí)別到了就保存到自己的電腦里面。 4.并把他的照片顯示到界面上一段時(shí)間,告訴他,偷窺有罪。 5.程

    2024年02月11日
    瀏覽(22)
  • 安防監(jiān)控視頻AI智能分析網(wǎng)關(guān)V4離崗檢測(cè)算法配置步驟來(lái)啦

    安防監(jiān)控視頻AI智能分析網(wǎng)關(guān)V4離崗檢測(cè)算法配置步驟來(lái)啦

    我們的AI邊緣計(jì)算網(wǎng)關(guān)硬件 —— 智能分析網(wǎng)關(guān)目前有5個(gè)版本:V1、V2、V3、V4、V5,每個(gè)版本都能實(shí)現(xiàn)對(duì)監(jiān)控視頻的智能識(shí)別和分析,支持抓拍、記錄、告警等,每個(gè)版本在算法模型及性能配置上略有不同。硬件可實(shí)現(xiàn)的 AI 檢測(cè)包括:人臉結(jié)構(gòu)化數(shù)據(jù)、車輛結(jié)構(gòu)化數(shù)據(jù)、場(chǎng)景檢

    2024年02月07日
    瀏覽(17)
  • opencv dnn模塊 示例(19) 目標(biāo)檢測(cè) object_detection 之 yolox

    opencv dnn模塊 示例(19) 目標(biāo)檢測(cè) object_detection 之 yolox

    YOLOX是曠視科技在2021年發(fā)表,對(duì)標(biāo)YOLO v5。YOLOX中引入了當(dāng)年的黑科技主要有三點(diǎn),decoupled head、anchor-free以及advanced label assigning strategy(SimOTA)。YOLOX的性能如何呢,可以參考原論文圖一如下圖所示。YOLOX比當(dāng)年的YOLO v5略好一點(diǎn),并且利用YOLOX獲得當(dāng)年的Streaming Perception Challenge第一

    2024年02月06日
    瀏覽(21)
  • 樹(shù)莓派利用python-opencv使用CSI攝像頭調(diào)用監(jiān)控視頻

    樹(shù)莓派利用python-opencv使用CSI攝像頭調(diào)用監(jiān)控視頻

    目錄 一、安裝python-opencv。 二、使用工具Xshell7和MobaXterm 三、連接并打開(kāi)CSI攝像頭 3.1連線如圖所示: 3.2打開(kāi)攝像頭 四、編寫(xiě)攝像頭代碼調(diào)用攝像頭 ? ? ? ? 一定要選擇配置好的安裝python-opencv,不要去配置安裝,然后還cmake編譯,沒(méi)有必要基本上安裝過(guò)程都會(huì)報(bào)2-3個(gè)錯(cuò)誤,還

    2023年04月17日
    瀏覽(29)
  • 【教程】視頻匯聚/視頻監(jiān)控管理平臺(tái)EasyCVR錄像存儲(chǔ)功能如何優(yōu)化?具體步驟是什么?

    【教程】視頻匯聚/視頻監(jiān)控管理平臺(tái)EasyCVR錄像存儲(chǔ)功能如何優(yōu)化?具體步驟是什么?

    視頻云存儲(chǔ)/安防監(jiān)控EasyCVR視頻匯聚平臺(tái)基于云邊端智能協(xié)同,支持海量視頻的輕量化接入與匯聚、轉(zhuǎn)碼與處理、全網(wǎng)智能分發(fā)、視頻集中存儲(chǔ)等。視頻監(jiān)控系統(tǒng)EasyCVR拓展性強(qiáng),視頻能力豐富,具體可實(shí)現(xiàn)視頻監(jiān)控直播、視頻輪播、視頻錄像、云存儲(chǔ)、回放與檢索、智能告警

    2024年02月07日
    瀏覽(26)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包