資料介紹
描述
目錄:
一、簡(jiǎn)介
2. 使用的硬件
3. 使用的軟件
4. 編程語言
5. 工作流程
6. 障礙
使用 WizFi360 開發(fā)板設(shè)置 ARDUCAM
電報(bào) API 連接
設(shè)置 YOLOV5
7.輸出
八、結(jié)論
9. 參考資料
一、簡(jiǎn)介:
Smarter Surveillance System 項(xiàng)目旨在使用 WizFi360 板、Arducam Mini 2MP Plus 和 PIR 傳感器創(chuàng)建智能監(jiān)控?cái)z像頭。該系統(tǒng)旨在使用 PIR 傳感器檢測(cè)運(yùn)動(dòng)并使用 Arducam 相機(jī)捕捉人的圖像。然后將捕獲的圖像發(fā)送到在后臺(tái)運(yùn)行的 Flask 服務(wù)器,以使用對(duì)象檢測(cè)算法 YOLOv5 進(jìn)行處理。構(gòu)建更智能的監(jiān)控系統(tǒng)的第一步是收集必要的硬件組件。對(duì)于這個(gè)項(xiàng)目,我們將使用 WizFi360 板、Arducam Mini 2MP Plus 和 PIR(被動(dòng)紅外線)傳感器。這些組件將協(xié)同工作以檢測(cè)運(yùn)動(dòng)、捕獲圖像并將其發(fā)送到 Flask 服務(wù)器進(jìn)行處理。WizFi360 開發(fā)板是一款功能強(qiáng)大的物聯(lián)網(wǎng)模塊,可提供 WiFi 連接并支持各種無線協(xié)議,如 TCP/IP、HTTP、FTP 和 SSL/TLS。它有一個(gè)板載處理器,可以使用 Arduino IDE 輕松編程,使其成為物聯(lián)網(wǎng)應(yīng)用的理想選擇。
Arducam Mini 2MP Plus 是一款分辨率為 2 兆像素的小型相機(jī)模塊。它支持多種接口,包括SPI、I2C和UART,可以輕松連接到WizFi360板。PIR 傳感器是一種運(yùn)動(dòng)檢測(cè)傳感器,可檢測(cè)移動(dòng)物體發(fā)出的紅外輻射的變化。它通常用于安全系統(tǒng),可以檢測(cè)到幾米遠(yuǎn)的運(yùn)動(dòng)。如果在捕獲的圖像中檢測(cè)到人,系統(tǒng)會(huì)向 Telegram 頻道發(fā)送通知,表明有人在禁區(qū)內(nèi)。通知包括檢測(cè)到的圖片,允許快速響應(yīng)和操作。總體而言,Smarter Surveillance System 是一種創(chuàng)新且高效的方式,可以利用最新的可用技術(shù)來監(jiān)控和保護(hù)禁區(qū)。
2. 使用的硬件:
WizFi360-EVB-Pico
跳線
ARDUCAM 迷你 2MP 加
紅外傳感器
3. 使用的軟件和服務(wù):
YOLOv5
AURDINO IDE
燒瓶問
4. 編程語言
5. 工作流程:
設(shè)置硬件組件
第一步是設(shè)置硬件組件。使用 SPI 接口將 Arducam Mini 2MP Plus 相機(jī)模塊連接到 WizFi360 板。將 PIR 傳感器連接到 WizFi360 板的數(shù)字引腳之一。將電源連接到 WizFi360 板上。
配置 WizFi360 開發(fā)板
配置WizFi360開發(fā)板連接WiFi網(wǎng)絡(luò)。使用 Arduino IDE 對(duì)電路板進(jìn)行編程,以與 Arducam 相機(jī)模塊和 PIR 傳感器通信。設(shè)置電路板以在 PIR 傳感器檢測(cè)到運(yùn)動(dòng)時(shí)捕獲圖像。
捕捉圖像
當(dāng) PIR 傳感器檢測(cè)到運(yùn)動(dòng)時(shí),WizFi360 板會(huì)觸發(fā) Arducam 相機(jī)模塊捕捉圖像。捕獲的圖像保存在 WizFi360 板的內(nèi)存中。
將圖像發(fā)送到 Flask 服務(wù)器
WizFi360 板被編程為使用 HTTP POST 請(qǐng)求將捕獲的圖像發(fā)送到 Flask 服務(wù)器。Flask 服務(wù)器在后臺(tái)運(yùn)行,等待接收?qǐng)D像。
使用 YOLOv5 處理圖像
一旦 Flask 服務(wù)器收到圖像,它就會(huì)使用 YOLOv5 算法處理圖像。YOLOv5 是一種目標(biāo)檢測(cè)算法,可以高精度地實(shí)時(shí)檢測(cè)目標(biāo)。Flask 服務(wù)器被編程為在捕獲的圖像上運(yùn)行 YOLOv5 算法以檢測(cè)圖像中是否有人。
向 Telegram 發(fā)送通知
如果在圖像中檢測(cè)到人,F(xiàn)lask 服務(wù)器會(huì)生成通知并將其發(fā)送到 Telegram 頻道。該通知包括一條消息,指示有人在受限區(qū)域,以及檢測(cè)到的圖像。
采取行動(dòng)
一旦在電報(bào)頻道上收到通知,就可以采取適當(dāng)?shù)男袆?dòng),例如提醒安全人員或發(fā)出警報(bào)。
6. 障礙:
1. 使用 WizFi360 開發(fā)板設(shè)置 ARDUCAM
下面顯示了帶有 Arducam 的 WizFi360 的整體設(shè)置。下面還給出了引腳配置:
WizFi360 是一款緊湊而強(qiáng)大的 Wi-Fi 模塊,可提供與物聯(lián)網(wǎng) (IoT) 設(shè)備的無縫連接。它具有低功耗 ARM Cortex-M4 微控制器和支持 IEEE 802.11 b/g/n 協(xié)議的高性能 Wi-Fi 收發(fā)器。憑借其內(nèi)置的安全功能和易于使用的軟件開發(fā)套件,WizFi360 是創(chuàng)建智能互聯(lián)物聯(lián)網(wǎng)應(yīng)用程序的理想解決方案。另一方面,PIR(被動(dòng)紅外線)傳感器是一種運(yùn)動(dòng)傳感器通過感應(yīng)紅外輻射水平的變化來檢測(cè)運(yùn)動(dòng)。它通常用于安全系統(tǒng)、自動(dòng)照明和其他需要運(yùn)動(dòng)檢測(cè)的應(yīng)用。PIR 傳感器被稱為“無源”,因?yàn)樗鼈儽旧聿话l(fā)射任何能量;相反,它們檢測(cè)其他物體發(fā)出的能量,
結(jié)合使用時(shí),WizFi360 和 PIR 傳感器可以創(chuàng)建功能強(qiáng)大且智能的物聯(lián)網(wǎng)應(yīng)用程序,從而實(shí)現(xiàn)對(duì)運(yùn)動(dòng)檢測(cè)系統(tǒng)的遠(yuǎn)程監(jiān)控和控制。例如,PIR 傳感器可以檢測(cè)房間內(nèi)的移動(dòng)并向 WizFi360 模塊發(fā)送信號(hào),然后該模塊可以向智能手機(jī)應(yīng)用程序發(fā)送通知或觸發(fā)警報(bào)。WizFi360 還可用于控制 PIR 傳感器的靈敏度和工作模式,使其成為適用于廣泛物聯(lián)網(wǎng)應(yīng)用的靈活且可定制的解決方案。
ArduCam為 Raspberry Pi Pico 提供文檔和源代碼 SPI Camera ,它也使用 SPI0。為避免沖突,該項(xiàng)目將 SPI1 用于 ArduCam OV2640 模塊。ArduCam OV2640 模塊需要 CS、MOSI、MISO、SCLK 引腳用于 SPI 連接,SDA、SCL 引腳用于 I2C 連接。該項(xiàng)目修改了 ArduCam 的源代碼以使用 SPI1。
ArduCam OV2640 的 Pico 引腳配置
1. CS --> GPIO 13
2. MOSI --> GPIO 11
3. 味噌 --> GPIO 12
4. SCLK --> GPIO 10
5.SDA --> GPIO 8
6. SCL --> GPIO 9
代碼說明
WizFi_Flask 服務(wù)器/WizFi_CamPost.ino
setup():該函數(shù)在Arduino板子上電或復(fù)位時(shí)調(diào)用一次。它以 115200 的波特率初始化串行通信,并通過調(diào)用 ArduCam_setup() 函數(shù)初始化 ArduCAM 模塊。
loop():這個(gè)函數(shù)在setup()函數(shù)之后被重復(fù)調(diào)用。它使用 ArduCAM 模塊捕獲圖像,使用 Wi-Fi 模塊將圖像數(shù)據(jù)發(fā)送到服務(wù)器,然后等待一段時(shí)間再重復(fù)該過程。
ArduCam_setup():此函數(shù)通過將 CS 引腳設(shè)置為輸出并初始化用于 I2C 通信的 Wire 庫來初始化 ArduCAM 模塊。
ArduCam_sendImg():此函數(shù)使用 ArduCAM 模塊捕獲圖像并將圖像數(shù)據(jù)存儲(chǔ)在 img_buf 數(shù)組中。然后它調(diào)用 http_postData() 函數(shù)將圖像數(shù)據(jù)發(fā)送到服務(wù)器。
http_postData(字節(jié) *buf,uint32_t 長(zhǎng)度):
此函數(shù)使用 Wi-Fi 模塊將圖像數(shù)據(jù)發(fā)送到服務(wù)器。它首先檢查客戶端是否連接到服務(wù)器,如果沒有,它會(huì)在放棄之前嘗試重新連接幾次。然后,它將圖像數(shù)據(jù)作為負(fù)載發(fā)送到服務(wù)器的 HTTP POST 請(qǐng)求。有效負(fù)載包括圖像的文件名和內(nèi)容類型。最后,它在關(guān)閉連接之前等待服務(wù)器的響應(yīng)。
buffer_transfer(byte *bptr, size_t len):此函數(shù)以多個(gè)大小為 max_transfer(此代碼中為 1024 字節(jié))的塊向服務(wù)器發(fā)送數(shù)據(jù)緩沖區(qū),以防止緩沖區(qū)溢出。
client:WiFiClient類的這個(gè)對(duì)象,用于與服務(wù)器建立連接,發(fā)送/接收數(shù)據(jù)。
2. 設(shè)置電報(bào) API
打開 Telegram 并搜索 BotFather 用戶。
開始與 BotFather 對(duì)話并輸入 /newbot。
按照提示為您的機(jī)器人命名和用戶名。
創(chuàng)建機(jī)器人后,BotFather 將向您發(fā)送一條包含機(jī)器人令牌的消息。令牌是一長(zhǎng)串字符,可唯一標(biāo)識(shí)您的機(jī)器人,并且需要對(duì) API 請(qǐng)求進(jìn)行身份驗(yàn)證。
將機(jī)器人的令牌保存在安全的地方,因?yàn)槟鷮⑿枰褂盟c Telegram Bot API 進(jìn)行交互。
有關(guān)更多信息,請(qǐng)單擊鏈接。
3. 設(shè)置 YOLO
YOLOv5(You Only Look Once version 5)是由 Ultralytics 開發(fā)的一種最先進(jìn)的實(shí)時(shí)對(duì)象檢測(cè)算法。YOLOv5 通過引入新的模型架構(gòu)和訓(xùn)練過程建立在其前輩的成功之上,從而顯著提高了準(zhǔn)確性和速度。該架構(gòu)由骨干網(wǎng)絡(luò)(CSPDarknet53)、頸部網(wǎng)絡(luò)(SPP)和頭部網(wǎng)絡(luò)(YOLOv5)組成。CSPDarknet53 網(wǎng)絡(luò)使用一種新穎的跨階段局部網(wǎng)絡(luò)來增強(qiáng)層之間的信息流,從而改進(jìn)特征表示。SPP 網(wǎng)絡(luò)結(jié)合了空間金字塔池化,這使得網(wǎng)絡(luò)能夠更好地捕獲不同尺度的對(duì)象。YOLOv5 頭部網(wǎng)絡(luò)使用錨框和分類和回歸層來檢測(cè)和定位圖像中的對(duì)象。
腳步:
安裝Git:如果您的系統(tǒng)上沒有安裝Git,請(qǐng)從官方網(wǎng)站下載并安裝它: https: //git-scm.com/downloads。
克隆 YOLOv5 存儲(chǔ)庫:打開終端窗口并導(dǎo)航到要存儲(chǔ) YOLOv5 代碼的目錄。然后運(yùn)行以下命令:
git 克隆https://github.com/ultralytics/yolov5.git
安裝依賴項(xiàng):導(dǎo)航到“yolov5”目錄并運(yùn)行以下命令來安裝 YOLOv5 所需的依賴項(xiàng):
pip install -r requirements.txt
下載預(yù)訓(xùn)練的權(quán)重:YOLOv5 需要預(yù)訓(xùn)練的權(quán)重來執(zhí)行對(duì)象檢測(cè)。您可以通過運(yùn)行以下命令從官方 YOLOv5 網(wǎng)站下載權(quán)重:
wget https://github.com/ultralytics/yolov5/releases/download/v5.0/yolov5s.pt
測(cè)試 YOLOv5:您可以通過運(yùn)行以下命令來測(cè)試 YOLOv5:
python detect.py --weights yolov5s.pt --img 640 --conf 0.4 --source 0
運(yùn)行上述步驟后,下載此 github 存儲(chǔ)庫中給出的 main.py 程序。它包含用于從 Arducam 捕獲圖像的程序,將它們發(fā)送到 Yolo 模型進(jìn)行檢測(cè),最后如果在圖像中檢測(cè)到一個(gè)人,則將檢測(cè)到的圖片的通知發(fā)送到電報(bào) API。
代碼說明
主程序
此代碼是一個(gè) Flask 服務(wù)器應(yīng)用程序,它以 JPEG 格式的圖像作為輸入并使用 YOLOv5 模型執(zhí)行對(duì)象檢測(cè)。然后對(duì)檢測(cè)到的對(duì)象進(jìn)行分類,如果在圖像中檢測(cè)到人,則會(huì)將一條消息與圖像一起發(fā)送到 Telegram 聊天組。
該代碼首先導(dǎo)入必要的庫并初始化 Flask 應(yīng)用程序。然后,它會(huì)為圖像文件設(shè)置上傳目標(biāo)并使用令牌初始化 Telegram 機(jī)器人。調(diào)用 YOLOv5 模型的 detect 模塊中的 run 函數(shù)來執(zhí)行目標(biāo)檢測(cè)。如果檢測(cè)到有人,則會(huì)將一條消息連同圖像一起發(fā)送到 Telegram 聊天組。
在上傳功能中,服務(wù)器檢查傳入的請(qǐng)求是否為 POST 請(qǐng)求,內(nèi)容類型是否為 JPEG 格式的圖像。如果是,它將圖像保存到一個(gè)文件并設(shè)置一個(gè)標(biāo)志,指示應(yīng)該執(zhí)行對(duì)象檢測(cè)。然后創(chuàng)建一個(gè)單獨(dú)的線程來運(yùn)行 detect_person 函數(shù),該函數(shù)調(diào)用 run 函數(shù)來執(zhí)行對(duì)象檢測(cè)。如果檢測(cè)到有人,則調(diào)用send_telegram_message函數(shù)向Telegram聊天群發(fā)送消息。
7.輸出
整個(gè)項(xiàng)目的輸出如下圖所示:
八、結(jié)論:
總之,使用 Arducam、WizFi360、YOLOv5 和 Telegram Bot 開發(fā)的智能監(jiān)控系統(tǒng)在安全和監(jiān)控領(lǐng)域顯示出巨大的潛力。通過集成這些技術(shù),系統(tǒng)可以實(shí)時(shí)有效地檢測(cè)并提醒用戶任何人的存在,從而降低犯罪活動(dòng)的可能性。
Arducam 和 WizFi360 的組合提供了可靠穩(wěn)定的圖像捕獲和傳輸,而 YOLOv5 被證明是一種準(zhǔn)確高效的物體檢測(cè)模型。此外,Telegram Bot 的集成允許快速輕松地通知檢測(cè)到的人的存在,使系統(tǒng)能夠?qū)θ魏螡撛诘陌踩{做出快速響應(yīng)??傮w而言,智能監(jiān)控系統(tǒng)的成功開發(fā)強(qiáng)調(diào)了利用先進(jìn)技術(shù)增強(qiáng)公共安全和安全的重要性。安全。
?
- 氣體檢測(cè)裝置開源分享
- TempGuard溫度監(jiān)控和異常檢測(cè)系統(tǒng)開源
- 機(jī)房動(dòng)環(huán)監(jiān)控系統(tǒng)基礎(chǔ)功能說明 2次下載
- 【STM32項(xiàng)目】- 人體檢測(cè)(體溫、心率、心跳、跌倒檢測(cè))
- 基于ARM11的嵌入式肺癌氣體檢測(cè)系統(tǒng)控制軟件設(shè)計(jì)
- NDIR氣體檢測(cè)器解決方案和PID氣體檢測(cè)器解決方案
- 智能家居監(jiān)控系統(tǒng)整合溫度與紅外人體傳感器的功能和操作說明 6次下載
- 人體檢測(cè)傳感器的管腳,電路示意圖詳細(xì)概述(免費(fèi)下載) 86次下載
- 車載視頻監(jiān)控的人體檢測(cè)及跟蹤算法 1次下載
- 氣體檢測(cè)所必需的智能傳感器 20次下載
- 甲烷氣體檢測(cè)系統(tǒng)的設(shè)計(jì) 23次下載
- 光纖CO氣體檢測(cè)系統(tǒng)的研究 1次下載
- 基于HOG的快速人體檢測(cè)方法 53次下載
- Linux動(dòng)態(tài)擴(kuò)展MPEG-4智能視頻監(jiān)控系統(tǒng)
- 一種具有人工情感的智能控制系統(tǒng)研究
- 紅外氣體檢測(cè)儀的工作原理 紅外氣體檢測(cè)儀的使用方法 2362次閱讀
- 網(wǎng)絡(luò)監(jiān)控工具有哪些 網(wǎng)絡(luò)監(jiān)控用幾芯網(wǎng)線 1174次閱讀
- 醫(yī)療應(yīng)用中液體檢測(cè)解決方案 856次閱讀
- 基于STM32單片機(jī)的CO(一氧化碳)氣體檢測(cè)報(bào)警通風(fēng)系統(tǒng)仿真設(shè)計(jì) 2791次閱讀
- 基于安信可Rd-03+STM32制作人體檢測(cè)雷達(dá)燈 1042次閱讀
- 100行Python實(shí)現(xiàn)人體膚色檢測(cè) 704次閱讀
- 基于阿里云物聯(lián)網(wǎng)平臺(tái)的智能燈光控制系統(tǒng)設(shè)計(jì) 4365次閱讀
- 基于單片機(jī)和傳感器實(shí)現(xiàn)數(shù)字人體心率檢測(cè)儀的應(yīng)用方案 3567次閱讀
- 基于單片機(jī)和LM1893芯片實(shí)現(xiàn)教室電器智能節(jié)能系統(tǒng)的設(shè)計(jì) 3793次閱讀
- 具有漏水監(jiān)控功能的智能水表的原理及設(shè)計(jì) 5240次閱讀
- 電壓檢測(cè)器、監(jiān)控器和高級(jí)監(jiān)控各種功能介紹:第1部分 5094次閱讀
- 監(jiān)控系統(tǒng)故障檢測(cè)及處理 6808次閱讀
- 基于智能手機(jī)的人體跌倒檢測(cè)系統(tǒng) 3459次閱讀
- 基于DSP的智能視頻監(jiān)控終端設(shè)計(jì) 2125次閱讀
- 人體接觸應(yīng)用中的電容檢測(cè) 2476次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論